Роутеры серии 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