Пример: программирование системы управления автоматическим шлагбаумом
Начнем с постановки задачи. Работу будем выполнять небольшими этапами, которые легко реализовать. Создание проекта с нуля займет от 30 до 60 минут.
Стрела шлагбаума имеет два конечных положения: полностью поднята (открыта) и полностью опущена (закрыта). Концевым датчикам соответствуют входы контроллера BarrierOpen и BarrierClosed.
Выходы контроллера BarrierUp и BarrierDown управляют двигателем подъема и опускания стрелы. Пользователь управляет шлагбаумом одной кнопкой (вход Action). Стрела поднимается или опускается в зависимости от текущего положения. Нажатие кнопки во время движения вызывает немедленную остановку.
Движение должно останавливаться при перегрузке привода (вход DriveOverload) и при повторном нажатии кнопки управления.
Контрольная лампа (Lamp) включается при начале движения и выключается через заданное время после его окончания. Система диагностики формирует флаг ошибки при перегрузке привода и при превышении допустимого времени движения.
При возникновении проблем движение немедленно прекращается. Контрольная лампа мигает до следующего нажатия кнопки управления.