13.08.21

Прыгать с платформы запрещено

#Цифра
#ZIIoT Platform

Игорь Колобов, менеджер продукта в «Цифре», написал пост на Хабре о том, что такое цифровая промышленная платформа, каково её предназначение и функции, а также на примере нашей платформы ZIIoT (Zyfra Industrial Internet of Things Platform) — о принципах работы и внутреннем устройстве.

Acknowledgement: этот пост мы готовили вместе с Фёдором Арефьевым, который со мной и другими коллегами работает над развитием платформы и приложений для нее.

 

Что такое цифровая промышленная платформа

Сейчас самое модное понятие в промышленности — Индустрия 4.0. Оно описывает новый образ производства с высокой, а в идеале — полной, автоматизацией и управлением с помощью интеллектуальных систем. В основе работы этих интеллектуальных систем — достоверные и оперативные данные о производственных процессах. Это своего рода «нефть» для искусственных мозгов. Поэтому любому проекту по внедрению искусственного интеллекта предшествует проект по организации сбора промышленных данных. Идея промышленной цифровой платформы ZIIoT как раз в и заключается в централизованном сборе данных о производственных активах и использовании этих данных для создания интеллектуальных приложений и сервисов. Как сказал один наш клиент: «Собирайте данные, даже если пока не знаете, зачем они вам нужны. Когда дойдет дело до искусственного интеллекта, они вам пригодятся».

И тут у читателя может возникнуть резонный вопрос — не изобретаем ли мы велосипед, ведь для сбора промышленных данных уже есть большое количество систем класса MDC и MES.

Системы MDC собирают данные о промышленном оборудовании: сколько станки работали, сколько простаивали и по каким причинам, какой оператор в это время был у машины и какие действия совершал. Эта информация обрабатывается системой и предоставляется лицам, ответственным за управление производством, в виде схем, таблиц и графиков, а если на предприятии внедрена MES, то и туда.

MES позволяет осуществлять оперативное управление производством на уровне цеха: составлять производственные расписания, распределять и контролировать потребление ресурсов, отслеживать историю продукта, управлять производственными процессами, персоналом и документами и в автоматическом режиме анализировать производительность. Это своего рода промежуточное звено между ERP и АСУТП.

Большинство этих систем представляют собой монолитный продукт и не имеют в своем составе инструментов для разработки приложений.

Платформа — это, прежде всего, среда для сбора и управления данными, куда можно направить все данные со всех производственных подразделений и со всех ИТ-систем, которыми уже успело обзавестись предприятие, привести эти данные к единому формату, использовать их для управления предприятием централизованно и раздавать при необходимости различным промышленным приложениям для управления производством, созданным на базе этой платформы, а также в системы планирования. Для разработки этих промышленных приложений нужна среда. Если промышленное предприятие предпочитает создавать приложения самостоятельно, то весь инструментарий для разработки либо покупается у вендоров, либо создается самостоятельно. Оба варианта требуют инвестиций, а второй ещё и развития внутренних компетенций. Учитывая, что многие промышленные предприятия сегодня всё же смотрят в сторону собственной разработки, мы просто предусмотрели среду разработки в составе ZIIoT.

Таким образом, если описывать устройство промышленной платформы ZIIoT, то получится примерно следующая схема:

Рис. 1. Потоки данных на платформе

Рис. 1. Потоки данных на платформе

 

Архитектура платформы. Как устроен «дом» для данных

Две ключевые характеристики ZIIoT в плане архитектуры:

  • Комбинация собственных сервисов с open-source компонентами, что расширяет функциональность для получения синергетического эффекта. Например, Apache Cassandra, представляющая собой NoSQL базу данных, с помощью сервисов платформы становится средством управления временными рядами.
  • Микросервисная архитектура, что делает ИТ-ландшафт более устойчивым к сбоям и более гибким: новые функции можно добавлять без риска сломать всё решение. Таким образом, мы получаем единую технологическую платформу, но с изолированными функциональными блоками работы с данными и бизнес-логикой.

В ZIIoT больше сотни пользовательских и системных микросервисов, взаимодействие между которыми происходит через REST API. Все они поддерживают горизонтальное и вертикальное масштабирование, и при их развертывании применяется виртуализация, что позволяет платформе быть независимой от операционных систем клиентов.

Рис. 2. Функциональная архитектура ZIIoT

Рис. 2. Функциональная архитектура ZIIoT

 

Сервисы сгруппированы в 5 связанных между собой блоков (см. Рис. 2):

  1. Сервисы сбора и хранения отвечают за сбор производственных данных с локальных систем автоматизации, обработку потоков и пакетов данных, хранение временных рядов, событий и неструктурированных данных. Предусмотрены механизмы кластеризации и масштабирования коллекторов.
  2. Сервисы структурирования и обработки данных. Это блок для структуризации потоков разнообразных данных, поступающих из различных производственных систем и обычно содержащих тысячи параметров и миллионы значений. Здесь применяется объектная модель и поддерживается Business-to-Manufacturing Markup Language (B2MML) — язык разметки связи между бизнесом и производством, понятный всем системам при обмене данными. Благодаря этому платформа ZIIoT может взаимодействовать с другими приложениями: ERP, LIMS, MDM и пр. Если B2MML не поддерживается внешней информационной системой, на этот случай имеется набор готовых интерфейсов, позволяющих напрямую запрашивать данные в объектные модели из реляционных баз данных. Также есть возможность разрабатывать специфические интерфейсы, используя возможности сервисов сбора на базе Apache NiFi.
  3. Сервисы настройки и разработки пользовательских интерфейсов. Сюда входят все необходимые инструменты для создания пользовательского интерфейса платформы: дизайнеры мнемосхем, отчетов, бизнес-графики и витрин данных. Они доступны для использования в обычном веб-браузере. С их помощью в личном кабинете пользователи могут создать себе удобную рабочую среду под конкретные задачи.
  4. Сервисы разработки приложений. Их предназначение состоит в том, чтобы структурировать и автоматизировать процесс разработки, контроля качества и доставки решений до конечного пользователя. Сюда входят: среда управления требованиями, менеджер репозиториев исходного кода с системой контроля версий, система автоматизированной сборки приложений (CI), система для обеспечения непрерывной доставки (CD), программная платформа для управления документацией, набор анализаторов исходного кода (в частности, проверки качества кода, проверки зависимых библиотек и поиска уязвимостей). То есть, весь набор инструментов для быстрой разработки.
  5. Сервисы администрирования. Это набор инструментов для управления пользователями, доступом к ресурсам и сервисам, лицензиями, а также для управления программно-аппаратной инфраструктурой и мониторинга функциональности.

 

Как платформа работает с данными (пятью крупными мазками)

 

  1. Сначала осуществляется первичный сбор, валидация и обработка данных из локальных систем автоматизации, чаще всего с уровня АСУТП, после чего выполняется их сохранение в базу данных временных рядов (можно использовать функцию сжатия).
  2. Затем происходит структурирование данных. В зависимости от поставленных задач формируются объектные модели оборудования, персонала, материалов, процессов, операций и т.д.
  3. Все собранные с производства данные привязываются к конкретным объектам моделей через настроенные свойства. Например, если речь идет о каком-либо промышленном резервуаре, его свойством может быть уровень продукта, который измеряется уровнемером. Для этого резервуара в платформе в модели оборудования создается объект «резервуар» со свойством «уровень продукта», и все данные, поступающие с уровнемера, через привязку к тегу базы данных временных рядов (БДВР) становятся доступны из объектной модели. Далее доступ к текущим и архивным значениям осуществляется через объектную модель.
  4. Структурированные данные проходят обработку аналитическими инструментами платформы. Например, расчетный модуль по собранным с уровнемера на резервуаре данным и градуировочной таблице может вычислить объём продукта в резервуаре, а далее по заданной методике его массу.
  5. И, наконец, данные приводятся к необходимому потребителю виду и предоставляются в виде различных интерфейсов конечным пользователям или прикладным системам.

ZIIoT поддерживает любые решения на микросервисной платформенной архитектуре — их могут создавать как внутренние команды разработки, так и сторонние поставщики промышленных приложений. В настоящее время платформа поддерживает все основные продукты «Цифры» для различных отраслей. Компания находится в процессе формирования экосистемы платформы, в которую мы хотим объединить разработчиков решений, интеграторов, консультантов и операторов серверной и сетевой инфраструктуры. И это вырисовывает еще одну функцию цифровых промышленных платформ — они могут выступать связующим звеном между участниками рынка. Для партнеров — разработчиков (в том числе со стороны заказчиков) и интеграторов у нас предусмотрено обучение.

 

От теории к практике

В настоящее время у нас есть несколько внедрений платформы в машиностроении, металлургии, химпроме, нефтянке и горной добыче. В частности, она используется на Солнцевском угольном разрезе ВГК, где собирает данные со всех промышленных и ИТ-систем, а также техники, и на ее основе уже разрабатывается система прогнозной диагностики горного оборудования.

В машиностроении у нас есть проект, где на базе платформы реализовано AI-решение для предсказания успешности прохождения тестовых испытаний двигателей по первичным контрольным измерениям и многофакторный анализ причин полученных результатов испытаний. В озеро данных на платформу загружены исторические данные испытаний двигателей и в реальном времени поступают контрольные измерения всех узлов вместе с данными от испытательных стендов. Искусственный интеллект анализирует все контрольные измерения, на основе факторного анализа делает вывод о качестве сборки узлов будущих двигателей и сообщает вероятность успешности прохождения испытаний. На анализ факторов, определяющих неудачные испытания, уходит 20 минут вместо семи часов.

В нефтепереработке у нас был проект, где мы на платформе организовывали централизованный мониторинг загазованности. Конкретно, у предприятия есть ряд технологических установок, некоторые из которых осуществляют выбросы в окружающую среду. Величина этих выбросов законодательно регламентируется для защиты окружающей среды, и требуется непрерывный контроль и оперативное оповещение в ситуациях, когда уровень выбросов приближается к максимально допустимому, чтобы не допустить экологических последствий. Мониторинг работы установок до внедрения платформы выполнялся децентрализованно по каждой отдельной площадке, что усложняло обработку данных. С помощью платформы мы свели все данные с датчиков загазованности с этих установок в одно место, что ускоряет их обработку и передачу службам реагирования в случае отклонений. Благодаря этому время реагирования на ЧС сократилось на 30%, а вовлеченность персонала в процесс контроля загазованности уменьшилась на 90%, ложные срабатывания сократились на 20%.

По мере поступления новых кейсов, будем делиться, для решения каких задач платформу можно применять и с какими результатами. Если тема платформ для промышленности вам интересна, оставляйте вопросы в комментариях, а если очень интересна — присылайте резюме в наш HR.

Читайте блог Цифры на Хабре.

Смотрите также

Солнце и ветер — энергия для проектов цифровизации горной промышленности

VG Work&Safety Management — система оперативного управления работами и промбезопасностью

Docs-as-code — как подружить технического писателя и разработчика