Интернет-магазин

Просмотр корзины
В корзине:

товаров - 0 шт.



Статьи / KA050 / Laurent-5G: Управление по SMS с обратной связью



§ 50. Laurent-5G: Управление по SMS с обратной связью

Дмитрий Иванов, 10 Ноября 2020


Рассмотрим решение следующей практической задачи:


Необходимо организовать управление реле модуля по SMS (включать / выключать). Дополнительно, нужно получить ответную SMS, подтверждающую факт приема команды и отражающую факт изменения состояния реле (обратная связь).



Задачу решим с помощью одного CAT события (программируемая логика). Но первым делом, настроим модуль Laurent-5G для работы в сети GSM.


Вопрос настройки модуля для GSM был уже рассмотрен в статье § 47. Laurent-5G: Автоматика GSM. Часть 1


Напомним вкратце последовательность действий. Считаем что SIM карта вставлена, GSM антенна подключена. В WEB интерфейсе заходим в раздел посвященный GSM.


Укажем PIN код установленной SIM карты. Вводим код и нажимаем на кнопку "Изменить". Данные сохранятся в энергонезависимой памяти. Далее, выбираем AUTO режим работы GSM модема - т.е. при наличии установленной SIM карты и корректном PIN коде модуль будет всегда пытаться выйти в сеть GSM и зарегистрироваться в ней.


Начинается процесс регистрации в сети:


Успех! GSM модем успешно зарегистрировался в сети и готов к приему / отправке SMS и звонков.


Последним шагом, добавим наш телефонный номер (на который должна прийти ответная SMS от модуля) в базу "белых" номеров. В дальнейшем по ID этого номера (в данном случае, ID=1) мы сможем автоматически отправлять SMS и совершать звонки с модуля при возникновении событий.




Теперь сформируем правило CAT по входящей SMS с некоторым конкретным текстом. Модуль, приняв такую SMS, выполнит управление реле и отправит в ответ обратную SMS в которой с помощью динамических переменных мы подставим текущее состояние реле (после операции управления).


Пусть текст входящей SMS будет равен VOROTA_ON (намекая о том, что данным действием через реле мы будем, например, управлять воротами).


Теперь реакция. Как обычно для модулей Laurent-5 / 5G задаем ее в виде списка Ke-команд управления. Первым шагом, например, включим 1-ое реле с помощью команды $KE,REL. Далее отправим SMS на номер в "белой" базе с ID=1 в которой отразим факт включения реле через динамическую переменную ~RL1~. При формировании текса SMS для отправки данная переменная будет заменена на текущее состояние реле.


$KE,REL,1,1
$KE,SMS,SND,1,C,RELE_1: ~RL1~~LF~Date: ~DT~~LF~Time: ~TM~

Все динамические переменные начинаются и заканчиваются символами ~ (Тильда). Немного пояснений по использованным переменным:


Динамическая переменная Пояснения
~RL1~

Динамическая переменная отвечающая за состояние реле (включено / выключено). Для 1-го реле следует использовать переменную ~RL1~, для 2-го: ~RL2~ и т.д.

~LF~

Перенос строки (хочется видеть SMS отформатированной, так что бы разные данные были на разных строках)

~DT~

Текущая дата (год, месяц, день) из RTC (часы реального времени)

~TM~

Текущее время в рамках дня (часы, минуты, секунды) из RTC (часы реального времени)


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



Присвоим на следующем шаге символическое имя для события:


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


Если теперь отправить SMS с текстом "VOROTA_ON" (регистр символом имеет значение) на номер SIM карты в модуле Laurent-5G как в скором времени мы услышим щелчок включения 1-го реле и получим SMS с подтверждением факта приема команды и текущим состоянием 1-го реле.


Факт обработки события так же можно наблюдать через увеличение счетчика срабатываний. На компактной панели справа можно увидеть так же факт изменения состояния 1-го реле:







© Дмитрий Иванов
10 Ноября 2020 года
http://www.kernelchip.ru



© KERNELCHIP 2006 - 2020