VizSim. PLC

Прошивка для PLC семейства Schneider electric, позволяющая собирать искусственный датасет сигналов.

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

Особенности проекта: В процессе работы над проектом Kaspersky PlantSim, возникла необходимость генерировать датасет сигналов, протекающих между различными устройствами на предприятиях и заводах (реакторы, сепараторы, насосы и пр.) и программируемым логическим контроллером (ПЛК), который этими процессами управляет.
Для того, чтобы генерировать сигналы со стороны устройств, использовались их математические модели, которые можно было просимулировать в виртуальном времени (несколько месяцев работы целого завода можно посчитать за несколько часов реального времени). Использование математических моделей также позволяет генерировать обширный спектр сигналов, которые трудно получить от реальных устройств (например можно имитировать взрыв реактора и записывать сигналы сенсоров во время взрыва).
Для генерации сигналов, протекающих внутри управляющего устройства в проекте был использован реальный ПЛК фирмы Schneider electric. Для того, чтобы использовать математическую модель совместно с реальным устройством и совместить реальное и виртуальное время, потребовалось написать прошивку для ПЛК, в которой бы симулировалось виртуальное время (первоначально ПЛК приспособлены для работы только в реальном времени).

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

Команда проекта:
Dev: Екатерина Симонова
R&D: Вадим Кондаратцев

Сроки: 1 месяц