Bolt Hold bolthold Сбер ID
Превращаю AI-идеи в работающие инженерные системы
Рейтинг
30
№ 135 597 в каталоге
Отзывы
0
Профессионализм
-/10
Коммуникация
- /10
Город
Москва
Опыт работы
6 лет
На сайте с
2026 года
Юридический статус
ИП

PLC Web — браузерная среда проектирования и симуляции PLC-программ

Используемые навыки Docker Compose FastAPI PostgreSQL Python Разработка бэкенда

Описание

Разработка веб-платформы для визуального проектирования, проверки и симуляции программ промышленных контроллеров.

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

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

В проекте я отвечаю за системную архитектуру, Python backend, модель данных, API, валидацию PLC-схем и интеграцию симулятора.

Решение

Я спроектировал архитектуру платформы, разделённую на визуальный редактор, backend-сервисы, систему хранения проектов и движок симуляции.

Основные компоненты решения:

— графический редактор схем на базе React Flow;
— Python backend на FastAPI;
— типизированные API-контракты через Pydantic;
— хранение проектов и пользовательских данных в PostgreSQL/Supabase;
— библиотека функциональных блоков и поддерживаемого оборудования;
— модель PLC-проекта на основе узлов, портов и соединений;
— проверка совместимости типов входов и выходов;
— обнаружение некорректных соединений и ошибок структуры схемы;
— серверный движок симуляции логики проекта;
— импорт, экспорт и версионирование PLC-проектов.

В backend была разработана единая модель графа:

ProjectGraph → Nodes → Ports → Connections

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

Для проекта также заложена архитектура автоматической вставки преобразователей типов, корпоративных рабочих пространств, приватных библиотек блоков, истории изменений и AI-помощника для работы со схемами.

Результат

Создан рабочий MVP веб-редактора PLC-схем с Python backend, библиотекой блоков, API оборудования, системой валидации и базовым движком симуляции.

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

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

Проект развивается как универсальная браузерная среда для разработки PLC-программ, совместной работы инженеров и накопления корпоративных библиотек решений.

Мой вклад включает продуктовую и техническую архитектуру, проектирование доменной модели, разработку Python/FastAPI backend, API-контрактов, валидатора схем и интеграцию движка симуляции.

Работа выполнена в соавторстве

Ильдар Кхафизов. Фронтендер и КИПиА-инженер. Проект его идея. Отвечал за то как он будет выглядеть

Оценили проект:

Другие проекты

Все проекты →
Инженерия и Проектирование Разработка электроники и embedded-прошивки для IoT-устройства
Разработка электроники и embedded-прошивки для IoT-устройства
20
Веб-разработка и IT AI-система автоматизированного минибара для гостиниц
AI-система автоматизированного минибара для гостиниц
26
Веб-разработка и IT ML-модуль для анализа девелоперских участков и объектов недвижимости
ML-модуль для анализа девелоперских участков и объектов недвижимости
14
Веб-разработка и IT CV/ML-система распознавания товаров для автоматизированного минибара
CV/ML-система распознавания товаров для автоматизированного минибара
24