
Part Production Cell — MES & OEE
OpenPLC, Ignition Perspective и SQLite: порядок в событиях, KPI и причинах простоев.
Этот кейс не столько про экраны, сколько про операционную ясность. Система несколько лет использовалась на БелАЭС, поэтому редизайн должен был учитывать реальные привычки инженеров, накопленную обратную связь и технические ограничения.
Я работал с логикой мониторинга, обозначениями состояний, визуализацией 3D-хранилищ и поведением компонентов, чтобы инженер мог быстро считать статус системы и не терять контекст.
Практическая цель — снизить когнитивную нагрузку, сделать нештатные состояния заметнее и поддержать более быстрые решения в среде с высокой ответственностью.

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

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

Здесь сосредоточен основной сценарий. Реактор и бассейн выдержки получил новые компоненты. Виджеты с активной зоной и бассейном растянул на максимум, чтобы сразу было видно состояние. Правая панель осталась статичной. Легенда заняла всё оставшееся пространство и всегда под рукой.
Следующим в очереди было хранилище свежего топлива. Оно уже существовало в системе, поэтому я подгонял новый экран под текущие компоненты. Старался не ломать привычный паттерн и сохранить логику отображения.
Дальше — хранилище отработанного топлива. В прошлой системе его не было вовсе. Проектировал с нуля. Опирался на чертежи и базу компонентов, чтобы экран сразу ложился в общий визуальный язык.
Активная зона и два хранилища уже протестированы и работают. Дальше встал вопрос остальных типов хранилищ. Задача — спроектировать их с нуля. Основная сложность была в 3D. Нужно не просто показать объём, а продумать понятное взаимодействие. Чтобы инженер сразу понимал, где он находится и что происходит.

Сначала добавил уровни. Теперь сразу видно, сколько бочек или контейнеров стоит по высоте. За каждым уровнем закрепил цвет. Так стало проще ориентироваться.
Дальше появилась проблема. В некоторых хранилищах капсулы разной высоты. Вид сверху этого не показывал. Добавил боковой вид, чтобы видеть реальные размеры рядом.
Следующий шаг — связать оба вида. Продумать, как пользователь между ними переключается. И как действия в одном виде отражаются в другом. Важно было не потерять контекст.
Выводы:

OpenPLC, Ignition Perspective и SQLite: порядок в событиях, KPI и причинах простоев.

OpenPLC и Ignition: ladder-логика, Structured Text state machine, обратная связь датчиков и проверяемые циклы.

OpenPLC, Modbus TCP и Ignition: от ladder-логики до проверяемого операторского сценария.