Тестирование ПО ПЛК до выезда на объект: симуляция, FAT и SAT испытания

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

Все материалы

Почему важно тестировать ПО до выезда на объект?

При разработке АСУ ТП основная часть логики пишется в офисе, без подключения к реальному оборудованию. Классический риск: на площадке выясняется, что алгоритм не учитывает инерцию задвижки, блокировка срабатывает не в тот момент или оператор не может понять мнемосхему. Исправление на объекте стоит в разы дороже, требует остановки производства и создаёт нервотрёпку для всех участников.

Наш подход — тестировать прикладное ПО контроллера на всех этапах: от разработки до внедрения, используя симуляционную модель, которая живёт внутри самого проекта. Ниже — как это устроено технически.

Как устроена модель тестирование

Модель не рассчитывает процесс по уравнениям. Она делает то же, что реальное оборудование с точки зрения контроллера, — отвечает на команды теми же сигналами и с теми же задержками.

Контроллер дал команду на открытие задвижки: через секунду-две пропадает «закрыто», ещё через несколько секунд появляется «открыто» — модель просто выдерживает время хода. У насоса после команды приходит подтверждение пуска, разгоняется частота, растёт ток. Уровень в ёмкости поднимается при открытом приточном клапане и падает при работающем насосе. Продукт появляется на фотодатчике через то время, за которое физически доезжает от предыдущего узла. Температура при включённом нагреве плавно подходит к уставке и так же плавно снижается после отключения.

Алгоритмов работы три: выдержка времени, накопление (приход минус расход) и плавное приближение к значению. Этого хватает, чтобы воспроизвести поведение практически любого механизма на участке, и это заметно проще в разработке и сопровождении, чем полноценная математическая модель.

FAT тестирование

По завершении внутреннего тестирования мы всегда проводим FAT (Factory Acceptance Test) совместно с заказчиком. Стенд разворачивается на наших виртуальных машинах:

  • программный контроллер с рабочей версией ПО и активной симуляцией;

  • сервер и клиент SCADA в проектной конфигурации;

  • сетевая структура проекта;

  • при необходимости — эмуляция удалённых станций ввода-вывода и обмен с верхним уровнем.

Заказчик участвует очно или подключается удалённо. Работаем по согласованной программе и методике испытаний (ПМИ): заказчик своими руками управляет механизмами, отрабатывает блокировки, гоняет автоматические режимы и сверяет поведение системы с алгоритмами и техническим заданием.

На выходе — протокол и лист замечаний с классификацией по критичности. Замечания появляются всегда: часть — ошибки, часть — уточнения технологии, которые проявляются только тогда, когда человек, знающий процесс, видит логику в работе. Все замечания закрываются до выезда на объект.

SAT и пусконаладка

Для нашего класса объектов SAT в классическом виде смыкается с пусконаладкой на площадке. С момента загрузки программы в реальный контроллер начинается ПНР:

  • поканальная проверка ввода-вывода;

  • прозвонка цепей;

  • контроль направления вращения приводов;

  • калибровка аналоговых каналов;

  • опробование вхолостую и под нагрузкой.

Промежуточный этап — разворачиваем симуляционную модель непосредственно на площадке, с операторами, мастерами и технологами. На ней прогоняются штатные операции, аварийные ситуации и нестандартные режимы. Это одновременно:

  • приёмка теми, кто будет работать с системой каждый день: оператор находит то, что не видно из офиса — неудобную мнемосхему, избыточные подтверждения, недостающую индикацию;

  • обучение персонала в среде, где ошибка ничем не заканчивается.

После этого подключается реальный ПЛК.

Что получает заказчик от нашего подхода к тестированию

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

Готовы обсудить ваш проект?

Свяжитесь с нами - подберем оптимальное решение для ваших задач