Автоматизация управления шлагбаумов КПП

Больше
1 мес. 2 нед. назад #1 от ArtGenerator
ArtGenerator создал эту тему: Автоматизация управления шлагбаумов КПП
Рассмотрим решение практической задачи по автоматизации управления шлагбаумов КПП...

Рассмотрим решение практической задачи по автоматизации управления шлагбаумов КПП с помощью MP712m Laurent-5

Рассмотрим решение следующей практической задачи автоматизации управления шлагбаумов КПП:

Необходима следующая логика работы автоматики КПП на ВЪЕЗД на территорию.

 

 

 

На въезде установлены 2 шлагбаума, чтобы отсекать «паровозик». Перед шлагбаумом №1 стоит светофор. Начальное состояние – горит зелёный, приглашая машины на ВЪЕЗД.

Машина подъезжает к шлагбауму №1 на ВЪЕЗД. Наезжает на петлю №1, контроллер переключает светофор с зелёного на красный. Следующие машины останавливаются на СТОП-ЛИНИИ.

Номер считывается видеокамерой и обрабатывается на внешнем сервере (софт распознавания автомобильных номеров). Считаем, что номер в белом списке. Машина находится на токовой петле. Шлагбаум №2 закрыт. Между шлагбаумами нет другой машины.

Идет сигнал от нашей системы на контроллер Laurent-5, который учитывает, что машина на петле перед шлагбаумом №1 и замкнут контакт, что номер допускается на территорию, шлагбаум №2 закрыт.

Машина проезжает к шлагбауму №2, который закрыт. Светофор горит красным. Как только машина пересекает датчик под стрелой, шлагбаум самостоятельно закрывается за машиной, отсекая «паровоз» из следующих машин.

Машина находится между двух закрытых шлагбаумов. В этот момент происходит установление статусов: машина перед шлагбаумом №2 = петля дает сигнал, шлагбаум №1 закрыт. Если всё так, то идёт команда на открытие шлагбаума №2.

Контроллер ожидает проезда машины через токовую петлю №3 на территорию и закрывает шлагбаум № 2. По статусам датчиков фиксируется, что машины нет между шлагбаумов, шлагбаумы закрыты, тогда контроллер дает команду на светофор = загорается зелёный, приглашая следующую машину на ВЪЕЗД. Контроллер переводится в начальный режим и ожидает ТС перед шлагбаумом №1. Алгоритм повторяется.

Автоматизация управления шлагбаумов КПП

Иллюстрация КПП на котором нужно автоматизировать процесс управления шлагбаумами с помощью системы CAT модуля Laurent-5

Такую задачу автоматизации можно легко решить с помощью модуля MP712m Laurent-5 и системы автономных логических правил CAT.

1. Аппаратные ресурсы

Определимся с аппаратными ресурсами модуля Laurent-5, которые будем задействовать для контроля и управления системой.

Элемент КПП

Ресурс модуля

Пояснения

Зеленый светофор Реле RELE_1 Включением реле будем "зажигать" зеленый светофор, выключением
- соответственно, гасить зеленый цвет
Красный светофор Реле RELE_2 Аналогично
Шлагбаум №1 Реле RELE_3 Короткое включение реле (на 2 сек) будет инициировать поднятие
шлагбаума (при этом считаем что шлагбаум закрывается
самостоятельно)
Шлагбаум №2 Реле RELE_4 Короткое включение реле (на 2 сек) будет инициировать поднятие
шлагбаума если он закрыт и спровоцирует его закрытие если он
открыт (считаем что у этого шлагбаума закрытие автоматически не
выполняется, нужно в явном виде подать команду управления).
Токовая петля №1 Входная
оптоизолированная
линия IN_1
Высокий уровень сигнала (логическая 1) означает, что над петлей
находится автомобиль, низкий (логический 0) - автомобиля нет
Токовая петля №2 IN_2 Аналогично
Токовая петля №3 IN_3 Аналогично
Датчик открытия
шлагбаума №1
IN_4 Если шлагбаум открыт - на линии будет высокий логический уровень
сигнала, лог. 0 - если закрыт
Датчик открытия
шлагбаума №2
IN_5 Аналогично

 

Всю логику управления создадим, используя связки логических правил CAT: событие (+дополнительные условия) → реакция. Эти связки хранятся в энергонезависимой памяти модуля (т.е. не пропадут при сбросе питания) и будут выполняться автономно без участия пользователя.

Заходим в WEB панель управления модулем (по умолчанию, IP = 192.168.0.101, логин / пароль: admin / Laurent), переходим в раздел CAT.

Автоматизация управления шлагбаумов КПП

2. Исходное состояние

Первым делом, создадим правило (событие) по которому система должна устанавливаться в исходное состояние, а именно: в том случае если на всех «петлях» нет автомашины и оба шлагбаума закрыты – то следует погасить красный светофор и включить зеленый, тем самым приглашая автомобили на въезд.

Решим эту часть задачи с помощью события «таймер» по системному времени – будем раз в секунду проверять все названные условия и, если они выполняются, – производить управление огнями светофора через реле.

Автоматизация управления шлагбаумов КПП

Настроим событие так что бы оно «пыталось» выполняться (если и другие условия будут выполнены, см. далее) каждую секунду (время с момента старта модуля по модулю 1):

Автоматизация управления шлагбаумов КПП

А вот и дополнительные условия – нам нужно что бы на всех задействованных входах от датчиков (линии IN_1 - IN_5) не было сигнала (т.е. шлагбаумы закрыты, машины над петлями нет).

Автоматизация управления шлагбаумов КПП

Теперь реакция – задаем ее в виде списка Ke-команд. В частности, включаем 1-ое реле (загорается зеленый светофор), выключаем красный (RELE_2).

Полный список всех Ke-команд, поддерживаемых модулем, можно найти в соответствующем документе Описание Ke-команд управления.

Автоматизация управления шлагбаумов КПП

В данной логике есть некоторая тонкость – если условия для срабатывания оставить в таком виде, то событие начнет срабатывать многократно (а именно каждую секунду) до тех пор, пока не появится машина в зоне КПП (ведь все датчики в исходном состоянии, когда нет автомобиля, будут давать логический ноль на выходе).

В данном конкретном случае это не является проблемой (систему это не перегрузит, т.к. трудоемких операций в рамках реакции не производится – просто производится управление реле).

Однако, в том случае, если было бы нужно, чтобы реакция по данному событию была выполнена единожды (до следующего заезда машины на КПП), то нужно ввести дополнительные команды. В частности, можно выключить обработку данного события после его срабатывания с помощью Ke-команды $KE,CAT,x,SET,OFF (где x – ID события CAT). И включать данное событие, как только одна из петель сработает, чтобы система вновь могла вернуться в исходное состояние.

Автоматизация управления шлагбаумов КПП

Условимся для упрощения изложения, что дополнительное управление работой 1-го события (возвращающего систему в исходное состояние) производится не будет.

Для удобства на следующем шаге создания CAT события присвоим символическое имя данному логическому правилу.

Автоматизация управления шлагбаумов КПП

Все, событие создано. По умолчанию, сразу после создания CAT событие будет выключено. Его следует включить соответствующей «кнопочкой» в панели управления.

Автоматизация управления шлагбаумов КПП

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

Автоматизация управления шлагбаумов КПП

3. Появление автомобиля

А вот собственно и автомобиль заезжает на 1-ую токовую петлю и останавливается перед шлагбаумом в ожидании того, что его пропустят. Соответственно, на входе контроллера Laurent-5 IN_1 появляется высокий уровень сигнала. Давайте обработаем это событие с помощью CAT.

Автоматизация управления шлагбаумов КПП

Будем реагировать на изменение уровня сигнала на линии IN_1 с низкого на высокий.

Автоматизация управления шлагбаумов КПП

Реакция – нужно погасить зеленый и включить красный светофор. А также нам нужно как-то проинформировать софт распознавания автомобильных номеров о том, что появилась машина в зоне видимости видеокамеры, и нужно определить номер, проверить его по базе и, если доступ разрешен, подать сигнал на контроллер Laurent-5 о том, что машину можно запускать.

Есть несколько разных способов передать данные от Laurent-5 на внешний софт (сервер) – например, отправить данные с помощью команды $KE,PUT через TCP сервер или TCP клиент. А можно вызвать URL ссылку (отправить GET запрос) по HTTP. Предположим, что софт анализа автономеров поддерживает работу через GET HTTP запросы. Предположим, что WEB сервер находится на машине с IP = 192.168.0.200 и при обращении к скрипту event.php с параметром cmd=NEW_CAR производится инициирование процесса распознавания.

Автоматизация управления шлагбаумов КПП

4. Открываем 1-ый шлагбаум

Итак, подъехала машина и встала перед первым закрытым шлагбаумом над токовой петлей #1. Мы включили красный сигнал светофора и отправили информационное сообщение на софт распознавания автомобильных номеров. Предположим, что номер в белой базе, и теперь нам нужно пропустить машину за 1-ый шлагбаум. Об этом внешний софт должен как-то сообщить Laurent-5, а он, в свою очередь, открыть 1-ый шлагбаум, но только при выполнении ряда условий: машина все еще над 1-ой токовой петлей, оба шлагбаума закрыты.

Для этого добавим еще одно CAT событие, которое будет пытаться выполняться каждую секунду, но только при выполнении ряда дополнительных условий:

  • с 1-ой петли (линия IN_1) есть сигнал (машина над ним)
  • оба шлагбаума закрыты (линии IN_4 и IN_5 - логический ноль)
  • дополнительный триггер – значение программной переменной VAR_1 должно быть равно, например, 10.

Первые три условия сейчас выполняются. А вот последнее условие ( VAR_1 == 10), которое как раз пока и не позволяет событию сработать, и будет тем «спусковым крючком» который «нажмет» софт распознавания номеров отправив на Laurent-5 команду установки значения для переменной VAR_1, например, так же через GET HTTP запрос.

Автоматизация управления шлагбаумов КПП

В качестве реакции на событие (+ выполнение всех дополнительных условий) откроем 1-ый шлагбаум, замкнув контакты RELE_3 на 2 секунды. А также сбросим значение переменной VAR_1 в ноль, т.е. деактивируем событие (чтобы оно не выполнялось много раз подряд) до тех пор, пока внешний софт снова не решит дать «добро» на открытие 1-го шлагбаума.

Автоматизация управления шлагбаумов КПП

В итоге в списке событий должно появиться вот такое.

Автоматизация управления шлагбаумов КПП

Итак, машина над 1-ой токовой петлей, софт проверил номер и готов пустить машину через 1-ый шлагбаум. Как он это может сделать? Опять же, есть варианты отправки команд через TCP (как сервер или клиент). А можно и GET HTTP запросом (вызвать URL ссылку) с параметрами. В частности, нужно установить значение программной переменной VAR_1 равным 10 что будет триггером для срабатывания CAT события.

Предположим что у модуля Laurent-5 IP = 192.168.0.101, пароль доступа Laurent (по умолчанию). Тогда достаточно выполнить следующий HTTP запрос на стороне софта распознавания автономеров:

http://192.168.0.101/cmd.cgi?psw=Laurent&cmd=VAR,1,SET,10

5. Между двух шлагбаумов

Итак, теперь машина находится между двух закрытых шлагбаумов над токовой петлей #2. Второй шлагбаум закрыт по умолчанию, а первый закроется сам автоматически после проезда автомашины. Необходимо теперь открыть второй шлагбаум, но при условии того, что первый закрылся (что бы «паровозом» не проехало несколько машин), а машина действительно перед вторым шлагбаумом (токовая петля 2 выдает высокий логический сигнал).

Создадим еще одно событие CAT по таймеру, вызываемому каждую секунду и срабатывающее при дополнительных условиях: токовая петля 2 выдает сигнал (над ней автомашина) на линию модуля IN_2, и оба шлагбаума закрыты (на линиях IN_4 и IN_5 логический ноль).

Автоматизация управления шлагбаумов КПП

В качестве реакции подадим управляющий сигнал на 2-ой шлагбаум через RELE_4, включив его контакты на 2 секунды.

Автоматизация управления шлагбаумов КПП

В списке CAT событий добавляется еще одно, вновь созданное для автоматизации открытия 2-ого шлагбаума.

Автоматизация управления шлагбаумов КПП

6. Закрываем 2-ой шлагбаум

Итак, второй шлагбаум открыт, и автомашина проезжает вперед, покидая токовую петлю 2 и заезжая на токовую петлю 3. При необходимости можно обработать событие заезда на 3-ю петлю по изменению уровня сигнала на линии IN_3. В данной статье этот момент пропустим и обработаем только момент покидания автомашиной 3-ей петли, т.е. момент, когда нужно закрывать 2-ой шлагбаум.

Создаем новое событие CAT по изменению уровня сигнала на входной оптоизолированной линии IN_3 с высокого уровня (автомашина над петлей) на низкий уровень (машина покинула петлю).

Автоматизация управления шлагбаумов КПП

Ставим дополнительное условие – шлагбаум 2 должен быть открыт (высокий уровень сигнала на датчике открытия на линии IN_5):

Автоматизация управления шлагбаумов КПП

Реакция – отправка команды через RELE_4 на закрытие шлагбаума (закрывается так же как и закрывается). Результат:

Автоматизация управления шлагбаумов КПП

7. Финал

Как только машина покинет 3-ю петлю и будет закрыт 2-ой шлагбаум, сойдутся все условия для события CAT c ID=1 которое занимается возвращением КПП в исходное состояние для ожидания следующей автомашины.

Мастер Кит

Источник

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Работает на Kunena форум