Введение

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

Иногда причина проблемы кроется в некорректной логике ПЛК, написанной кем-то много лет назад, и проявившейся только сейчас. Сложность возрастает, если объект находится в постоянной эксплуатации, и проведение полноценной диагностики ограничено по времени или условиями.

Предыстория

К нам в компанию обратился клиент — представитель службы эксплуатации аэропорта уездного города N с запросом на устранение проблем в автоматическом режиме работы пассажирского посадочного моста.

Система управления позволяет заранее обучиться положениям моста для различных типов самолётов (учитывая высоту и расположение входной двери). Оператор выбирает тип самолёта, и мост должен автоматически занять нужное положение. Однако проблема в том, что мост либо не доезжает до заданной точки, либо переезжает её.

Проблему заметили недавно, поскольку ранее использовался преимущественно ручной режим и оператор при помощи джойстика выводил мост в нужное положение. Проведение тестов на реальном объекте возможно только в течение одного часа — мост активно используется в аэропорту.

Первичный анализ

После изучения доступной документации возникло предположение, что проблема связана с калибровкой инкрементальных энкодеров. Однако визит на объект и попытка калибровки не дали результата — вопросов оказалось больше, чем ответов.

Вызов сервисных специалистов производителя оказался невозможен.

Клиент предоставил запасные ПЛК и ЧМИ-панель для тестов, и работа переместилась в офис.

Сложности при моделировании

Логика ПЛК оказалась сложной: множество тригонометрических и иных выражений, разобраться в них мешало отсутствие необходимой документации и чертежей. Попытки симулировать работу системы через форсировку значений датчиков в анимационных таблицах показали, что параметры (углы, длины) взаимосвязаны, и изменение одного требует синхронного изменения других.

Кроме того, таймеры и защитные участки кода мешали пошаговому вводу значений — система ожидала строго определённые зависимости между параметрами и отклонения в них вызывали ошибки.

Решение: цифровой двойник

Так родилась идея создать цифровой двойник посадочного моста — виртуальную модель механической системы, позволяющую безопасно и гибко тестировать логику ПЛК в офисных условиях.

Цель: воспроизвести поведение системы без изменения оригинальной логики ПЛК, всё должно работать максимально приближённо к реальному объекту.

Реализация

Первоначально рассматривался вариант подключения второго ПЛК с зеркальными модулями ввода/вывода. Однако не оказалось достаточного количества необходимых модулей.

После изучения документации на ПЛК были найдены функции, позволяющие программно форсировать значения регистров модулей дискретных и аналоговых входов. Это позволило встроить дополнительную логику цифрового двойника внутрь основного ПЛК, не затрагивая оригинальный код.

Интерфейс взаимодействия между логикой цифрового двойника и оригинальной логикой реализован через регистры ввода/вывода, что обеспечило гибкость и масштабируемость.

Определившись с архитектурой системы моделирования, пришла очередь задач по механике, приводной технике, датчикам и т.д.

Профиль скорости колеса при движении без проскальзывания
Профиль скорости колеса при движении без проскальзывания
Движение двух колес. ПЛК рассчитывает необходимые уставки скоростей для левого и правого ЧРП.
Движение двух колес. ПЛК рассчитывает необходимые уставки скоростей для левого и правого ЧРП.
Виртуальная модель ЧРП поддерживает параметрируемый профиль скорости
Виртуальная модель ЧРП поддерживает параметрируемый профиль скорости

Выводы

Создание цифрового двойника позволило:

  • Безопасно тестировать и анализировать поведение системы без ограничений реального объекта

  • Выявить причины некорректной работы автоматического режима

  • Сэкономить время и ресурсы клиента

  • Выработать универсальное решение, применимое в различных областях науки и техники

Комментарии (6)


  1. Indemsys
    20.10.2025 20:26

    Но это же простая симуляция, а не двойник.
    Двойником это стало если бы снимались данные с частотников и с энкодеров и при их разноглассии с моделью выдавались бы сигналы на корректировку модели.
    Вот эта постоянно корректируемая модель и была бы двойником.


    1. Shevman Автор
      20.10.2025 20:26

      Спасибо за Ваш комментарий. Здесь система управления работает на реальном ПЛК. Это не симуляция логики, это реальная работа ПЛК, со всеми аппаратными тонкостями.


  1. Vadimu
    20.10.2025 20:26

    Как я понимаю, поскольку не описан итоговый результат и причины поведения, значит решить проблему так не удалось?!

    Но зато есть цифровой двойник. ))


    1. Shevman Автор
      20.10.2025 20:26

      Удалось, рампа торможения в ЧРП кем-то была изменена, в ПЛК путь рассчитывался с учетом настроек параметра DEC в момент пусконаладки.


  1. Vadimu
    20.10.2025 20:26

    Обычно, подобные проблемы решаются двумя вопросами.

    Когда в последний раз нормально работало?

    Кто-что менял за последующий период?

    А потом методичная проверка того, что поменялось. В 90% случаев проблема вскрывается.

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


    1. Shevman Автор
      20.10.2025 20:26

      Согласен, обычно, да. Но когда бардак в организации, и люди меняются концы тяжело найти.