Отправка тревожных SMS по событиям на GPIO (Сухой контакт) в роутере RTUx68

Отправка тревожных SMS по событиям на GPIO (Сухой контакт) в роутере RTUx68

Роутеры серии RTUx68 имеют 4 универсальные линии GPIO, которые могут работать в трех режимах:

  • АЦП - измерение напряжения (до 50В на один канал)
  • Сухой контакт - сигнал замыкания/размыкания
  • Открытый коллектор - управление питанием внешних подключенных устройств

В данной статье рассмотрим способ реализации отправки тревожных SMS по замыканию/размыканию Сухого контакта.

Поскольку готового решения для реализации такой функции нет, был разработан bash-скрипт, который считывает состояние входа (путем отслеживания напряжения) и сравнивает его с пороговым значением напряжения (3585мВ). Если значение напряжения выше порогового - контакт разомкнут и наоборот. Отталкиваясь от состояния, роутер отправляет соответствующее SMS на указанный номер телефона.

Также, дополнительным функционалом скрипта является отправка SMS, если СК замкнут в течение длительного времени (по умолчанию - 1 минута).


1. Скачивание скрипта

Необходимо скачать скрипт по ссылке - sms_IO1.sh.


2. Изменение номера телефона

В текстовом редакторе необходимо изменить номер телефона для отправки SMS (вместо <номер> указать номер в произвольном формате).



3. Подключение к роутеру через WinSCP

Подключаемся к роутеру через WinSCP, создаем какую-нибудь пользовательскую директорию (например, /etc/userscript) и переносим туда файл со скриптом.


4. Включение службы управления по SMS

Далее, переходим в web-интерфейс, Сервисы -> Управление по SMS и включаем службу.



5. Добавление скрипта в автозапуск

Переходим в терминал SSH, открываем файл /etc/rc.local с помощью редактора nano и добавляем наш скрипт в автозапуск:



6. Выдача прав на исполнение скрипта

Выдаем права на исполнение скрипта командой:

chmod +x /etc/userscript/sms_IO1.sh

7. Проверка работы скрипта

Можем проверить работу скрипта. Для этого вводим команду для запуска скрипта и воспроизводим замыкание и размыкание контакта на входе:

/etc/userscript/sms_IO1.sh