ПАК «Конструктор состояний контроллера управления оборудованием»
В процессе разработки ПО для управления автомойкой (проект компании «БТП» теплые автомойки самообслуживания 100CARS), специалисты столкнулись с проблемой поиска решения для автоматизации ворот бокса, которые должны были выполнять целый комплекс задач: открывать и закрывать ворота бокса при въезде и выезде машины, озвучивать голосовые команды, аудиофайлы инструкций, включать и выключать свет, отправлять оповещения администратору на e-mail и в мобильное приложение и многое другое.
На рынке ПО не нашлось универсального решения под такую нестандартную задачу, поэтому контроллер решено было разработать самостоятельно.
Комплекс можно использоваться везде, где есть нестандартная задача автоматизации, условия и параметры, которой могут периодически меняться. ПАК «Конструктор состояний контроллера управления оборудованием» (далее Комплекс) предназначен для:
- визуального конструирования схемы состояний и входных условий перехода между состояниями;
- задания способов реакций состояний;
- обработки состояний портов ввода, управления состояниями портов вывода в соответствии со схемой перехода;
- запуска внешних команд и сохранения схемы состояний.
Комплекс представляет собой конструктор, который настраивается под различные практические задачи и потребности и может управлять состояниями аппаратного обеспечения (приводы, двигатели, воротные группы, технологии «умного дома» и т.д.), взаимодействующего с пользователем с помощью датчиков и исполнительных устройств.
Комплекс можно использовать для прикладных задач автоматизации и управления процессами в реальной сфере экономики, а также как тренажер для обучения робототехнике и схемотехнике.
Комплекс может интегрироваться с дополнительным ПО и внешними системами посредством интерфейса, без использования сложных интеграционных процессов.ПАК «Конструктор состояний контроллера управления оборудованием» предназначен для автоматизации производственных и обеспечивающих процессов.
С помощью контроллера можно автоматизировать и управлять следующими устройствами и процессами:
- системы освещения, вентиляции, отопления;
- устройства влажности и температуры воздуха;
- контроль утечки газа и воды на производстве;
- управление системами и постами безопасности на предприятии;
- управление сигналами оповещения,
сигнализацией на объектах;
- управление автоматическими воротами;
- устройства доступа в помещение, распознавания знаков и номеров;
- управление теплицей (системами полива, отопления, освещения)
- управление технологиями «умного дома» и т.д.
Назначение Комплекса:
- визуальное конструирование схемы состояний, входных условий перехода между состояниями, задание способов реакций состояний;
- обработка состояний портов ввода, управление состояниями портов вывода в соответствии со схемой перехода, запуск внешних команд;
- сохранение схемы состояний.
В Комплексе реализованы следующие возможности:
- задавать и конструировать условия работы действующего оборудования в различных состояниях, в соответствии с потребностями пользователя;
- наблюдать за процессом переключения состояний, состоянием входных и выходных портов действующего объекта;
- проводить тестирование, моделирование, настройку и отладку состояний и условий работы оборудования, без подключения к действующему объекту.
Необходимые исходные условия применения Конструктора для пользователя:
- описан процесс, который требуется автоматизировать;
- имеется одноплатный компьютер;
- наличие датчиков (входные устройства) и исполнительных устройств (выходные устройства: двигатели, другие контроллеры, лампы сигнализации и т.д.).
Программное обеспечение состоит из серверной части, запускаемой на одноплатном компьютере, и интерфейса пользователя, работающего в браузере.
Серверная часть, представляет собой приложение управления портами ввода/вывода и реализует взаимодействие между клиентом и сервером на базе http-протокола.
Интерфейс пользователя, представляет собой html-страницу с меню и активной зоной текущего компонента.
Серверная часть выполняет следующие функции:
- работает с портами ввода/вывода микрокомпьютера и обрабатывает переключение состояний;
- реагирует на изменение состояния в соответствии с заданными условиями в интерфейсе пользователя, в зависимости от изменения состояний портов ввода;
- хранит настройки схемы состояний.
Компоненты серверной части:
- Автомат обработки состояний: программный модуль, считывающий уровни сигнала портов ввода, хранящий значения переменных, параметры текущего состояния, отслеживающий изменения и переключение текущего состояния, запуск внешних команд.
- Внешние команды выполнения: список внешних команд и программ операционной системы с параметрами для запуска.
- Эмулятор состояний: режим работы без физического управления портами ввода/вывода.
Интерфейс пользователя предоставляет возможности:
- визуальной настройки входных условий и переходов между состояниями, в зависимости от условий (уровня сигнала портов ввода, значения переменных);
- настройки выходных параметров (уровни сигнала портов вывода, значения переменных, запуск внешних процессов, обработка таймаута);
- мониторинга состояний – работа с эмулятором состояний, без физического управления портами ввода/вывода.
Компоненты интерфейса пользователя:
Интерфейс пользователя представляет собой конструктор состояний для переключения текущего компонента и включает в себя:
- Порты;
- Переменные;
- Команды;
- Фразы;
- Состояния;
- Мониторинг состояний
Виды деятельности и функции Комплекса:
- создание и редактирование конфигурации системы;
- создание описания для физических портов;
- создание и описание списка переменных;
- создание и описание списка команд;
- создание и описание списка фраз;
- создание и редактирование списка состояний;
- просмотр состояния аппаратного обеспечения действующего объекта, возможность наблюдать за процессом переключения состояний, состоянием входных и выходных портов;
- мониторинг, тестирование и настройка состояний и условий работы оборудования без подключения к действующему объекту.Серверная часть: языки программирования: python 3, bash.
Интерфейс пользователя: языки программирования: JavaScript, html.
Операционная система: серверная часть linux arm 32/64 либо linux x86-64
Веб-сервер: встроенная в серверную часть библиотека flask.Разработали прототип, который, после успешных испытаний, преобразовали в решение, подходящее для практического использования. В данный момент создан аппарат, который подключается к системе управления и программирования для выполнения заданных функций. ПАК включен в единый реестр российских программ для ЭВМ и баз данных - Свидетельство о государственной регистрации №2022680571 от 02.11.2022.
ПАК включен в Единый реестр российских программ для электронных вычислительных машин и баз данных, запись в реестре №17043 от 24.03.2023г., ссылка на запись в реестре: https://reestr.digital.gov.ru/Проект направлен на решение актуальных задач Алтайского края по внедрению цифровых решений и программных комплексов в деятельность предприятий Алтайского края с целью повышения их эффективности, а именно:
- минимизация негативного влияния санкций и запретов на доступ к зарубежным технологиям за счет использования отечественного решения;
- снижение затрат бюджета предприятия на внедрение и сопровождение ПО за счет экономичной стоимости Комплекса, как готового решения;
- снижение ресурсоемкости внедрения и сопровождения Комплекса на предприятии за счет минимизации трудозатрат, отсутствию затрат на дополнительные серверные мощности, привлечение сторонних специалистов, приобретение специализированного ПО для настройки Комплекса;
- повышение производительности труда и эффективности процессов функционирования организаций за счет автоматизации основных и обеспечивающих процессов предприятия;
- экономия ресурсов, материалов и трудозатрат за счет автоматизации процессов.
Комплекс подходит для предприятий экономики, транспорта, социальной сферы и т.д., любых форм собственности, которым требуется оптимизировать и автоматизировать некритические, обеспечивающие процессы предприятия для сокращения трудозатрат и ресурсов.
Комплекс, применяемый для автоматизации бизнес-процессов предприятия, помогает экономить ресурсы, сократить временные затраты, повышает эффективность работы и обеспечивает конкурентное преимущество в условиях быстро меняющегося рынка.
Комплекс, применяемый для автоматизации процессов в домашнем хозяйстве (дом, подсобное хозяйство, теплицы, сад и пр.) дает возможность освободить время, которое раньше тратилось на рутинные бытовые процессы – все это повышает качество жизни, делает ее более благоустроенной и удобной.
В будущем, рынок потребителей, как юридических лиц, так и физических, будет только расти, поскольку сохраняется общая тенденция проникновения цифровых технологий и электронных сервисов во все сферы жизнедеятельности.
Комплекс может интегрироваться с дополнительным ПО и внешними системами посредством интерфейса, без использования сложных интеграционных процессов.
Данный комплекс может использоваться везде, где есть:
1) нестандартная задача автоматизации, условия и параметры которой могут периодически меняться;
2) автоматизацию нужно провести своими силами, без привлечения сторонних специалистов
3) с бюджетной стоимостью,
4) без приобретения специализированного ПО для настройки и сопровождения Комплекса.В настоящее время на рынке есть решения (программируемые контроллеры), которые создаются для автоматизации конкретных технологических процессов.
Главное преимущество нашего Комплекса в том, что пользователь может самостоятельно задавать и конструировать условия работы действующего оборудования в различных состояниях, моделировать варианты и ситуации, при изменении входных условий самостоятельно менять настройки, выходные параметры и состояния комплекса, и все это без подключения к действующему объекту. А после того, как заданы новые состояния, проводить тестирование и отладку состояний и условий работы оборудования на эмуляторе.
При этом пользователю не требуются специальные знания в области программирования, достаточно обладать знаниями в соответствующей предметной области (оборудование, для управления которым используется Комплекс), иметь навыки и опыт работы с браузерами, операционными системами, иметь представление о программировании, устройстве одноплатного компьютера, назначении портов ввода/вывода, иметь начальные знания схемотехники и электроники.
Соответственно предприятие может самостоятельно провести установку, настройку и отладку комплекса без дополнительных расходов на сторонние услуги.
Ключевые преимущества Комплекса:
- дает возможность автоматизировать уникальный процесс/технологию, если на рынке нет универсального контроллера под данную задачу, а цена разработки несопоставима с эффектом от внедрения;
- не требует специализированного ПО для настройки Комплекса;
- не требует затрат на высококвалифицированные кадры (программисты, разработчики контроллеров) в штате предприятия;
- имеет встроенный конструктор, с помощью которого можно самостоятельно смоделировать любые специфические процессы и состояния под свои задачи, проверить созданные состояния на эмуляторе, без подключения к действующему оборудованию;
- возможность удаленно управлять контроллером, с помощью функционала web-интерфейса пользователя: изменять логику работы оборудования, проверить и настроить новые состояния на эмуляторе, прежде чем подключать действующее оборудование;
- с помощью функционала web-интерфейса можно реализовать создание команд, с помощью которых интегрировать комплекс с любыми внешними системами без программирования и сложных интеграционных процессов.