Почему единое время критично для MES и производственных данных
Если часы на контроллере, сервере MES и рабочем месте расходятся, правильные события складываются в неверную последовательность. Где искать причину и что проверять.
Дополнительный материал серии «MES от станка до отчёта»
MES соединяет события, которые возникают в разных точках: на оборудовании, в контроллере, на рабочем месте оператора и в смежных системах. Чтобы из них получилась достоверная последовательность, участники должны одинаково понимать время.
Если часы расходятся, каждое отдельное событие может быть правильным, а общая картина — нет. Остановка окажется раньше запуска, подтверждение выпуска — раньше завершения операции, а данные после восстановления связи перемешаются с текущими.
Почему время — часть производственных данных
Для отчёта важен не только факт, но и момент, к которому он относится. Время связывает сигнал оборудования с заказом, операцией, сменой и действиями пользователя. Без этой связи трудно определить продолжительность простоя, порядок операций и состояние задания на выбранный момент.
NTP помогает синхронизировать часы устройств и серверов, но сам по себе не делает данные достоверными. Сначала нужно определить, кто ставит временную метку и какая из систем считается источником времени для конкретного события.
Где появляются временные метки
Один производственный факт может пройти несколько узлов: контроллер зафиксировал сигнал, шлюз принял сообщение, MES сохранила его, оператор позже указал причину, а ERP получила подтверждённый итог. У каждого шага есть собственное время.
Для анализа обычно нужны как минимум две отметки: когда событие произошло и когда система его получила. Это особенно важно после обрыва связи, когда накопленные сообщения приходят одной пачкой.
Как выглядит ошибка
- длительность операции получается отрицательной или неправдоподобной;
- события одной смены попадают в соседнюю;
- причина простоя не совпадает с интервалом остановки;
- после восстановления связи старые сообщения выглядят как новые;
- MES и ERP показывают разный порядок одного процесса.
В такой ситуации исправлять только итоговый отчёт опасно. Сначала надо пройти путь записи от источника до получателя и сравнить временные метки на каждом участке.
Что согласовать до интеграции
- какое время хранится внутри систем и как показывается пользователю;
- кто ставит метку события — устройство, шлюз или сервер;
- откуда каждый узел получает точное время;
- что происходит при потере связи и повторной отправке;
- кто контролирует рассинхронизацию и где она фиксируется.
Эти правила должны входить в требования к интеграции. Иначе вопрос времени обнаружится уже после запуска — в момент, когда два технически исправных компонента начнут показывать разные версии одного производственного события.
Из опыта
Настраивал интеграции MES со смежными системами и разбирал повторяющиеся сбои. Проверку спорного отчёта полезно начинать не с его формулы, а с источника события, временной метки и пути данных до отчёта.