Введение
Модуль «Логика», реализованный в устройствах NetPing, позволяет создавать простые алгоритмы автоматизации непосредственно на контроллере. Это дает возможность реализовывать различные сценарии управления инженерной инфраструктурой без использования программируемых логических контроллеров (ПЛК), внешних систем автоматизации и дополнительного программного обеспечения.
В этой статье рассмотрим два практических примера, реализованных специалистами технической поддержки NetPing:
- временная блокировка ручного управления шлагбаумом после его автоматического открытия;
- временное отключение датчика движения на время обслуживания серверной.
Оба решения построены исключительно на возможностях встроенного модуля «Логика».
Пример 1. Временная блокировка ручного управления шлагбаумом
Используемое устройство: NetPing Input+Relay v3.
Задача
На одном из объектов при распознавании номера система TRASSIR отправляет команду на контроллер NetPing, который через свое реле открывает шлагбаум.
После автоматического открытия оператор мог случайно нажать кнопку ручного управления. Поскольку кнопка была подключена параллельно контактам реле NetPing и воздействовала на ту же управляющую цепь, это нажатие могло привести к преждевременному закрытию шлагбаума.
Требовалось после срабатывания автоматики на некоторое время заблокировать возможность ручного управления, а затем автоматически восстановить работу кнопки.
Исходная конфигурация
На момент обращения устройство NetPing использовалось только для управления шлагбаумом по команде от системы Trassir.
В настройках было задействовано реле 1, используемое для управления шлагбаумом. Кнопка ручного управления была подключена непосредственно к управляющей цепи шлагбаума и не взаимодействовала с модулем «Логика».

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

Для удобства дальнейшей настройки рекомендуется присвоить используемым реле Памятки. В рассматриваемом примере реле 1 отвечает за управление шлагбаумом, а реле 4 — за временную блокировку кнопки ручного управления.

Настройка модуля «Логика»
Для реализации сценария необходимо включить модуль «Логика» и создать три правила:
| Вход | Условие | Выход | Действие |
| Реле 1 | = ВКЛ | Таймер/Счетчик 1 | Запустить с 0 |
| Реле 1 | = ВКЛ | Реле 4 | Включить |
| Таймер/Счетчик 1 | Достиг 10 | Реле 4 | Выключить |
При включении реле 1 одновременно запускается таймер и активируется реле 4, которое временно разрывает цепь кнопки ручного управления. После достижения таймером заданного значения реле 4 автоматически отключается, восстанавливая возможность ручного управления.
В приведенном примере время блокировки составляет 10 секунд. При необходимости его можно изменить в соответствии с требованиями конкретного объекта.

Как работает решение
- Устройство NetPing получает команду на открытие шлагбаума и включает реле 1.
- Одновременно запускается таймер и включается реле 4.
- Пока реле 4 включено, цепь кнопки ручного управления разомкнута, поэтому нажатия кнопки не влияют на работу шлагбаума.
- После окончания заданного интервала реле 4 автоматически отключается.
- Цепь кнопки восстанавливается, и ручное управление снова становится доступным.
Пример 2. Временная блокировка событий от датчика движения на время обслуживания
Используемое устройство: NetPing Server Solution 7/GSM.
Задача
Во время технического обслуживания серверной сотрудники постоянно перемещаются в зоне действия датчика движения. Каждое срабатывание приводит к регистрации события и отправке SMS- или e-mail-уведомления.
Отключать перед началом работ настройки рассылки недопустимо: после завершения обслуживания можно забыть восстановить их. Кроме того, изменение общих настроек уведомлений может затронуть другие датчики.
Требовалось предусмотреть возможность временно прекратить формирование повторных событий от датчика движения, не изменяя настройки уведомлений контроллера.
Решение с внешним тумблером
Для реализации сценария используются реле и две IO-линии устройства NetPing:
- к IO-линии 1 подключается сигнальный выход ALARM датчика движения;
- к IO-линии 3 подключается внешний тумблер;
- сигнальная линия между выходом ALARM датчика и IO-линией 1 проходит через нормально замкнутые контакты реле 2.
Питание датчика движения остается подключенным постоянно. Реле 2 коммутирует только его сигнальную линию.
В штатном режиме реле 2 выключено, поэтому его нормально замкнутые контакты соединяют выход ALARM датчика с IO-линией 1. Контроллер регистрирует изменения состояния датчика и формирует настроенные уведомления.
Перед началом обслуживания тумблер переводится в другое положение. Модуль «Логика» включает реле 2, нормально замкнутые контакты размыкаются, и сигналы датчика перестают поступать на IO-линию 1.
После окончания работ тумблер возвращается в исходное положение. Реле 2 выключается, а соединение между датчиком и входом контроллера восстанавливается.

Настройка IO-линий
IO-линии 1 и 3 необходимо перевести в режим «вход»:
- IO-линия 1 используется для приема сигнала от датчика движения;
- IO-линия 3 — для определения положения тумблера.
Для удобства настройки IO-линиям можно присвоить Памятки. В рассматриваемом примере используются названия motion и pushbutton.
Для IO-линии 1 активным состоянием задана лог.1, соответствующая тревоге датчика движения. Для IO-линии 3 активным состоянием задана лог.0.

Настройка реле
Для разрыва сигнальной линии используется реле 2. В штатном состоянии оно выключено, а его нормально замкнутые контакты соединяют выход ALARM датчика с IO-линией 1.
При включении реле контакты размыкаются, и передача сигнала от датчика на вход контроллера прекращается.
Для удобства реле можно присвоить понятное название.

Настройка модуля «Логика»
В разделе «Логика» необходимо активировать модуль и создать два правила:
| Вход | Условие | Выход | Действие |
| IO-линия 3 | = лог.0 | Реле 2 | Включить |
| IO-линия 3 | = лог.1 | Реле 2 | Выключить |
При установке на IO-линии 3 логического уровня 0 реле 2 включается и разрывает сигнальную линию датчика.
При установке логического уровня 1 реле 2 выключается, нормально замкнутые контакты восстанавливают соединение датчика с IO-линией 1.

Как работает решение
- В штатном режиме тумблер установлен в положение, при котором на IO-линии 3 фиксируется лог.1.
- Модуль «Логика» удерживает реле 2 в выключенном состоянии.
- Нормально замкнутые контакты реле соединяют выход ALARM датчика с IO-линией 1.
- При обнаружении движения контроллер регистрирует изменение состояния входа и формирует уведомление.
- Перед началом обслуживания тумблер переводится в другое положение, и на IO-линии 3 устанавливается лог.0.
- Модуль «Логика» включает реле 2, разрывая сигнальную линию датчика.
- После окончания обслуживания тумблер возвращается в исходное положение, реле 2 выключается, а передача сигнала от датчика движения на контроллер восстанавливается.
Управление без внешнего тумблера
Тот же сценарий можно реализовать без внешнего тумблера. Перед началом обслуживания реле 2 вручную включается через web-интерфейс устройства, а после завершения работ выключается.
В этом варианте модуль «Логика» для переключения реле не используется.
Необходимо учитывать особенность схемы: датчик движения в состоянии тревоги формирует логическую 1. После включения реле 2 и разрыва сигнальной линии на IO-линии 1 также фиксируется лог.1. Поэтому вход будет отображаться в состоянии тревоги, однако повторные срабатывания при движении формироваться не будут, поскольку состояние IO-линии больше не изменяется.
Заключение
Рассмотренные примеры показывают, что встроенный модуль «Логика» позволяет решать практические задачи автоматизации непосредственно средствами устройств NetPing, без использования дополнительных контроллеров или программного обеспечения.
С помощью нескольких простых правил можно реализовать сценарии, учитывающие особенности эксплуатации конкретного объекта: временно блокировать ручное управление оборудованием, отключать отдельные датчики на время обслуживания, выполнять задержки, взаимные блокировки и другие алгоритмы.
Если стандартных функций устройства недостаточно для решения вашей задачи, обратитесь в техническую поддержку NetPing. Во многих случаях требуемый сценарий можно реализовать с помощью встроенного модуля «Логика» без изменения аппаратной части системы.