Открытый API PHM для прогнозного обслуживания мостового крана
Открыт API-интерфейс PHM для прогнозного обслуживания мостовых кранов — выполнена интеграция с 30 MES-платформами. Эксплуатационные данные, накопленные системой прогнозного обслуживания (PHM) мостового крана, только тогда превращаются из изолированного инструмента оповещения в полноценный центр данных, интегрированный в производственное планирование, когда они синхронизированы с цеховой системой управления производством (MES) и вышестоящей управленческой платформой.
Эксплуатационные данные, накопленные системой прогнозного обслуживания (PHM) мостового крана, только тогда превращаются из изолированного инструмента оповещения в полноценный центр данных, интегрированный в производственное планирование, когда они синхронизированы с цеховой системой управления производством (MES) и вышестоящей управленческой платформой. Компания Келуде Тяжёлая Промышленность официально открыла RESTful API-интерфейс системы PHM для мостовых кранов. На момент публикации завершена интеграция и совместная отладка с 30 MES-платформами, охватывающая три основных типа систем: металлургические MES, MES для дискретного производства и складские WMS. После открытия API данные о текущем состоянии крана, события оповещения и рекомендации по техническому обслуживанию могут напрямую передаваться в существующую производственную платформу заказчика — оператору больше не нужно переключаться между несколькими системами. В данной статье рассматриваются четыре аспекта: техническая спецификация API, процесс интеграции, типовые сценарии применения и результаты совместной отладки.
Архитектура PHM API и модель данных
Открытый PHM API соответствует спецификации OpenAPI 3.0, построен на архитектурном стиле RESTful и поддерживает два формата сериализации данных: JSON и Protocol Buffers. API разделён на пять категорий интерфейсов по типу ресурсов, охватывающих все ключевые возможности системы PHM мостового крана.
Интерфейс текущего состояния оборудования (Realtime Status API): обеспечивает мгновенный запрос текущего рабочего состояния крана. Основные конечные точки: GET /api/v1/crane/{craneId}/status (возвращает текущие эксплуатационные параметры — координаты X/Y моста крана, высоту подъёма, скорость передвижения, ток двигателя, состояние тормоза, показания ограничителя перегрузки и др., всего 36 полей, частота обновления — 1 секунда), GET /api/v1/crane/{craneId}/health (возвращает оценку состояния оборудования — индекс состояния от 0 до 100, рассчитанный на основе многопараметрической интеграции, обновляется каждые 5 минут) и GET /api/v1/crane/{craneId}/alerts (возвращает список необработанных оповещений с возможностью фильтрации по классу серьёзности и типу события).
Интерфейс исторических данных (History API): обеспечивает пакетный запрос эксплуатационных данных и истории оповещений. Конечные точки: GET /api/v1/crane/{craneId}/timeseries (запрос исторических данных временных рядов по заданным параметрам за указанный период, максимальный период непрерывного экспорта — 30 дней, период дискретизации настраивается: 1 секунда / 10 секунд / 1 минута), GET /api/v1/crane/{craneId}/alerts/history (запрос списка исторических событий оповещения: время возникновения, время снятия, тип, класс серьёзности и статус обработки) и GET /api/v1/crane/{craneId}/maintenance (запрос записей о техническом обслуживании: тип, дата, содержание и исполнитель). Интерфейс исторических данных используется преимущественно для формирования отчётов OEE и планирования графиков технического обслуживания в системе MES.
Интерфейс push-уведомлений (Alert Webhook API): позволяет MES-платформе подписаться на события оповещения системы PHM через Webhook. Заказчик настраивает правила push-уведомлений в веб-интерфейсе PHM (указывает URL, порог класса серьёзности и частоту отправки). При возникновении нового события оповещения система PHM автоматически отправляет POST-запрос на настроенный Webhook URL; тело запроса — данные события в формате JSON. Webhook поддерживает механизм повтора: при неудачной первой отправке повтор через 30 секунд, максимум 3 попытки; при трёхкратном сбое — уведомление администратора по электронной почте для ручной обработки. Медианная задержка push-уведомления — 5 секунд (от обнаружения аномалии системой PHM до получения сообщения MES заказчика).
Интерфейс управления оборудованием (Device Management API): обеспечивает операции CRUD с базовой информацией о кранах. Поддерживаются: добавление нового устройства (POST /api/v1/crane — автоматическая генерация уникального идентификатора и начальных параметров конфигурации), обновление конфигурации устройства (PATCH /api/v1/crane/{craneId} — изменение порогов оповещения, частоты дискретизации и других параметров), запрос списка устройств (GET /api/v1/cranes — фильтрация по цеху, типу оборудования и рабочему состоянию) и удаление устройства (DELETE /api/v1/crane/{craneId} — требуется повторное подтверждение). Интерфейс управления оборудованием позволяет MES заказчика автоматически регистрировать новый кран в системе PHM без ручного входа в веб-интерфейс PHM.
Интерфейс моделей и диагностики (Model API): обеспечивает управление диагностическими моделями ИИ и запрос результатов диагностики. Конечные точки: GET /api/v1/model/{modelId}/info (запрос информации о диагностической модели — номер версии, дата развёртывания, поддерживаемые модели кранов и показатели точности), POST /api/v1/crane/{craneId}/diagnose (запуск немедленной диагностики указанного крана с возвратом состояния подсистем и рекомендуемых мер по техническому обслуживанию) и GET /api/v1/crane/{craneId}/diagnose/history (запрос списка исторических диагностических отчётов). Model API позволяет системе диспетчеризации MES заказчика активно проверять состояние крана перед планированием производства, исключая назначение задач оборудованию с неудовлетворительным состоянием.
Техническое решение интеграции и сертификация безопасности
Аутентификация в PHM API выполняется по протоколу OAuth 2.0 с использованием потока учётных данных клиента (Client Credentials Grant). При первичной интеграции MES-система заказчика получает идентификатор клиента (client_id) и секретный ключ (client_secret) через портал разработчика PHM, после чего запрашивает маркер доступа (access_token) через конечную точку POST /oauth/token. Срок действия маркера по умолчанию — 24 часа; после истечения требуется обновление через refresh_token. Ограничения частоты запросов: интерфейс текущего состояния — не более 6000 запросов в час (в среднем ~1,67 запроса в секунду), интерфейс исторических данных — не более 360 запросов в час; для интерфейсов push-уведомлений и диагностики ограничений нет. Время отклика интерфейса на 99-м процентиле — менее 500 мс (без учёта медленных сетей передачи данных).
Передача данных защищена шифрованием TLS 1.3. API-шлюз развёрнут на Alibaba Cloud API Gateway с поддержкой WAF (межсетевой экран веб-приложений) и защиты от DDoS-атак. В журнале запросов фиксируются временная метка, идентификатор клиента, путь запроса, код состояния ответа и время ответа; срок хранения журналов — 180 дней. Заказчик может самостоятельно просматривать статистику вызовов API через портал разработчика (суточное количество вызовов, процент успешных запросов, среднее время ответа и другие показатели). Платформа предоставляет песочницу (sandbox), в которой заказчик может разрабатывать и отлаживать интеграцию на имитационных данных, после чего переключаться на производственную среду. Данные песочницы полностью изолированы от производственной среды и не влияют на реальные данные оборудования.
Ход интеграции и охват MES-платформ
На момент публикации завершена совместная отладка API с 30 MES-платформами, охватывающая четыре отраслевых сегмента: металлургическая промышленность (12 платформ), тяжёлое машиностроение (8), механическая обработка (6) и складская логистика (4). Интегрированные MES-системы включают: популярные отечественные MES (например, Yonyou U8+MES, Kingdee Cloud Galaxy MES, DigiWin MES и др. — 14 платформ), отраслевые MES (металлургические, алюминиевой обработки, судостроительные и др. — 10 платформ) и собственные разработки MES (цеховые системы управления крупных предприятий — 6 платформ).
При интеграции данных PHM в системы MES различных производителей используются три основные модели: встраивание панели предупреждений (в панель мониторинга оборудования системы MES встраивается список предупреждений PHM, что позволяет оператору видеть предупреждения о состоянии мостового крана без переключения на систему PHM — эту модель выбирают около 70% клиентов), автоматическое создание заявок на техническое обслуживание (при получении предупреждения PHM система MES автоматически инициирует процесс создания заявки на ТО, автоматически заполняя информацию об оборудовании, описание предупреждения и рекомендуемый план обслуживания — эту модель выбирают около 45% клиентов) и интеграция состояния оборудования с планированием (модуль планирования MES при назначении задач на подъём и транспортировку автоматически запрашивает оценку состояния оборудования PHM и назначает срочные задачи кранам с наивысшей оценкой — эту модель выбирают около 20% клиентов). Все три модели могут использоваться совместно и не конфликтуют друг с другом.
Средний срок проведения совместного тестирования составляет 3–5 рабочих дней (от получения документации API у производителя MES до завершения сквозной проверки данных); самый быстрый из производителей MES завершил интеграцию за 2 рабочих дня. Типичные проблемы, выявляемые на этапе совместного тестирования, включают: превышение лимита частоты запросов к API (решается регулировкой интервала опроса в системе MES; рекомендуется устанавливать период опроса для интерфейса реального времени не менее 5 секунд), проблемы синхронизации данных (несоответствие часовых поясов между временем предупреждения PHM и временем заявки MES — решается одновременным возвратом времени UTC и локального времени в данных предупреждения) и истечение срока действия сертификата у получателя Webhook (решается автоматическим мониторингом действительности сертификатов через API Gateway с предупреждением за 30 дней).
Типовые сценарии применения и фактические результаты
В качестве примера рассмотрим металлургическое предприятие, уже подключённое к PHM API. На предприятии эксплуатируется 5 мостовых кранов. До внедрения API информация о предупреждениях крана была доступна только после ручного входа администратора оборудования в веб-интерфейс PHM; при обнаружении предупреждения администратор вручную заполнял бумажную заявку на ТО и передавал её ремонтной бригаде. Среднее время от возникновения предупреждения до выдачи заявки составляло 45 минут. После интеграции API события предупреждений PHM автоматически передаются в систему MES предприятия через Webhook. Система MES автоматически создаёт заявки на ТО в зависимости от класса предупреждения (заявки класса Warning автоматически назначаются дневной ремонтной смене, заявки класса Critical немедленно уведомляют дежурного инженера). Время создания заявки сократилось до менее 10 секунд. Статистика за 6 месяцев после внедрения показала: среднее время реагирования на внеплановую остановку крана (от момента отказа до прибытия ремонтного персонала на объект) сократилось с 85 до 22 минут, а потери производственной мощности из-за внеплановых остановок снизились примерно на 62%.
Открытие API также обеспечило базу данных для постоянного совершенствования системы PHM: модель прогнозирования оценки состояния крана использует данные о результатах ТО, передаваемые из системы MES (подтверждение соответствия отказа предупреждению PHM, фактически заменённые компоненты и затраченное время на ремонт), для итеративного обучения, что повышает точность раннего предупреждения примерно на 1,5 процентных пункта каждый квартал. На следующем этапе планируется открыть следующие интерфейсы данных: данные об энергопотреблении крана (реальное и суммарное потребление электроэнергии двигателями моста, тележки и подъема для сравнительного анализа и оптимизации энергоэффективности) и статистика подъёмно-транспортных операций (среднесуточное количество подъёмов, распределение массы грузов и продолжительность работ для каждого крана для анализа эффективности производственного планирования). Планируется завершить интеграцию с 50 производителями MES до конца года.
Часто задаваемые вопросы (FAQ)
В: Взимается ли дополнительная плата за вызовы PHM API? Каков бесплатный лимит?
О: PHM API от Келуде Тяжёлая Промышленность является дополнительной функцией платформы удаленной эксплуатации и технического обслуживания мостового крана и предоставляется бесплатно клиентам, подписавшимся на сервис по эксплуатации и техническому обслуживанию. Объём вызовов API включён в годовую стоимость обслуживания платформы и отдельно не тарифицируется. Бесплатный лимит составляет: 100 000 вызовов API в день на один мостовой кран (включая все интерфейсы, суммарно для интерфейсов реального времени и исторических данных). Превышение лимита тарифицируется из расчёта 10 рублей за каждые 10 000 вызовов. Согласно фактическим данным подключённых клиентов, среднесуточное количество вызовов API на один кран в зависимости от модели использования составляет: только панель предупреждений — около 500–3000 вызовов/день; панель предупреждений + заявки на ТО — около 3000–8000 вызовов/день; панель предупреждений + заявки на ТО + интеграция с планированием — около 8000–25000 вызовов/день. У подавляющего большинства клиентов среднесуточное количество вызовов находится в пределах бесплатного лимита.
В: Какие гарантии доступности и качества обслуживания API предоставляются?
О: Соглашение об уровне обслуживания (SLA) для API: месячная доступность не ниже 99,5% (на основе статистики доступности API Gateway Alibaba Cloud), среднее время отклика API не превышает 500 мс (99-й процентиль). Если месячная доступность окажется ниже гарантированного уровня, клиент может запросить компенсацию в размере 10% стоимости услуг за соответствующий месяц. API-шлюз развёрнут в двух зонах доступности: Alibaba Cloud East China 2 (Шанхай) и North China 2 (Пекин), с поддержкой автоматического переключения при отказе между зонами. Платформа ежеквартально публикует журнал обновлений API; об изменениях параметров интерфейсов сообщается за 30 дней, что обеспечивает достаточное время для адаптации систем MES клиентов. Соответствует требованиям ГОСТ Р ИСО/МЭК 17788-2016 «Информационные технологии. Облачные вычисления. Общие положения и терминология».
В: Какими техническими компетенциями должен обладать производитель MES для интеграции с PHM API?
О: Интегратор должен обладать базовыми навыками интеграции RESTful API: поддержка HTTPS-связи (TLS 1.2 и выше), аутентификация по протоколу OAuth 2.0 с использованием учётных данных клиента, разбор и обработка данных в формате JSON. Рекомендуемый состав команды разработчиков: 1 бэкенд-разработчик (знаком с протоколом HTTP и обработкой данных JSON; на разработку интеграции требуется около 2–3 рабочих дней) и 1 инженер по внедрению (отвечает за согласование с администратором оборудования на объекте пороговых значений предупреждений и настройку политикТолкание; требуется около 1 рабочего дня). Платформа предоставляет полную документацию API (включая примеры кода и SDK для Python, Java и C#) и группу технической поддержки в мессенджере (время отклика в рабочее время < 30 минут).
В: Поддерживает ли модель данных PHM API пользовательские расширенные поля?
О: Да. В каждом ответе API предусмотрен объект extensions (расширенные поля) типа JSON Object, по умолчанию возвращающий пустое значение. Клиенты могут загружать значения расширенных полей через веб-интерфейс PHM (например, внутренний номер оборудования клиента, наименование цеха, номер заявки MES и т. д.). Данные расширенных полей возвращаются вместе со стандартным ответом API. Максимальное количество пар «ключ-значение» — 20; длина ключа — не более 64 символов, длина значения — не более 512 символов. Конфигурация расширенных полей вступает в силу немедленно, без перезапуска API-сервиса. Типичный сценарий использования: клиент сопоставляет внутренний код крана в своей системе MES с расширенным полем, обеспечивая автоматическое сопоставление кодов оборудования в двух системах.