Управление силовой нагрузкой через GPIO порты роутеров iRZ серии R4
Роутеры iRZ позиционируются как промышленное решение, поэтому в них предусмотрено наличие программно-управляемых портов GPIO для коммутации различной нагрузки.
GPIO (англ. general-purpose input/output, источник Википедия) расшифровывается как интерфейс ввода/вывода общего назначения – интерфейс для связи между компонентами компьютерной системы, к примеру микропроцессором и различными периферийными устройствами. Контакты GPIO могут выступать как в роли входа, так и в роли выхода – это, как правило, конфигурируется программно. Значения, принимаемые данными портами, могут быть либо 0, либо 1. Программное значение 0 означает низкий уровень напряжения на порту (как правило это 1 В и ниже), а программное значение 1 - высокий уровень напряжения на порту (5 В).
В роутерах серии R4 предусмотрено три порта GPIO. В указанной серии роутеров порты обладают стандартными для своего типа физическими характеристиками: напряжение высокого уровня не превышает 5 вольт, а ток - 25 мА.
Проблема:
Как задействовать данные порты для управления серьёзной нагрузкой? Так как стандартных токовых характеристик не хватает для управления нагрузкой через обычные реле.
Решение:
Для решения этого вопроса мы провели исследование, нашли подходящие реле и собрали на их основе схему подключения для управления нагрузкой 220v. Для этого были использованы последовательно два реле: твердотельное и электромагнитное.
Для данной задачи подошли позиции:
-
Finder 34.81.7.005.9024 - твердотельное реле
-
Finder 34.51.7.005.0010 - механическое реле
Для удобства использования у производителя есть сокет для монтирования реле на DIN рейку:
-
Finder socket type 93.01.7.024.
Ниже приведена электрическая схема подключения к роутеру.
На схеме указаны разъёмы реле и роутера. Напряжение 12v следует брать с разъёма блока питания роутера. Как видно из схемы, электромагнитное реле можно подключить в двух режимах: нормально разомкнутое (контакты 14 и 11) и нормальное замкнутое (контакты 11 и 12). Управляя напряжением на GPIO порту роутера, цепь будет замыкаться или размыкаться.
Для переключения данных портов из 0 значения в значение 1 и наоброт есть несколько способов.
Первый способ
WEB интерфейс роутера, раздел Tools → GPIO.
Для этого способа необходимо выбранный GPIO порт переключить в режим на выход:
-
Direction: OUT
А для переключения высокого или низкого уровня напряжения на выходе с данного порта служит поле Value:
-
LOW - низкий уровень, логический 0
-
HIGH - высокий уровень, логическая 1
Соответственно, подавая на порт значение 1, вы заставляете срабатывать первое реле и замыкаться, что приводит в свою очередь к срабатыванию второго реле, которое в свою очередь одни свои контакты замыкает, а другие - размыкает.
Второй способ
Примером можно привести возможность управления через SMS. Как работает управление при помощи SMS подробно описано в "Руководстве по настройке роутеров iRZ" в разделе Web-интерфейс → Services → SMS.
Пример управления через SMS
Есть прибор, который периодически необходимо перезагружать по питанию в силу каких-либо обстоятельств. Для этого нужно организовать питание данного прибора через электромагнитное реле из схемы выше, подключив прибор к клеммам нормально замкнутым. Переведя порт на роутере из положения 0 в положение 1 и вернув обратно, вызвать кратковременный разрыв цепи и, как следствие, перезагрузку по питанию прибора.
Для данного примера будем использовать первый GPIO порт. Его необходимо настроить в интерфейсе роутера в режим:
-
Direction: OUT
-
Value: LOW
Далее в разделе настроек Services → Command over SMS добавить правило, активировать его (поле Enable), указать ключевое слово, а в поле Command вписать команду:
gpio write 1 1 && sleep 1 && gpio write 1 0
На самом деле тут три команды, разделённые знаками &&, которые заставляют операционную систему роутера выполнять эти команды последовательно и только если предыдущая команда была выполнена успешно.
-
gpio write 1 1 - переводит порт 1 в значение 1, то есть высокий потенциал
-
sleep 1 - заставляет роутер ждать одну секунду, и только после этого выполнить третью команду. Является стандартной командой интерпретатора операционной системы роутера.
-
gpio write 1 0 - переводит первый порт назад в значение 0, то есть низкий потенциал.
Описание команд утилиты "gpio" есть в нашей базе знаний: Настройка GPIO в роутерах iRZ из консоли.