Андрей Смирнов
Время чтения: ~22 мин.
Просмотров: 4

GSM модули для Ардуино: описание

GSM и GPRS модуль в проектах Ардуино позволяет подключаться к удаленным автономным устройствам через обычную сотовую связь. Мы можем отправлять команды на устройства и принимать информацию от него с помощью SMS-команд или через интернет-подключение, открытое по GPRS. В этой статье мы рассмотрим наиболее популярные модули для Arduino, разберемся с подключением и рассмотрим примеры программирования.

GSM GPRS в Arduino

Модули GSM GPRS

GSM модуль используется для расширения возможностей обычных плат Ардуино – отправка смс, совершение звонков, обмен данными по GPRS. Существуют различные виды модулей, наиболее часто используемые – SIM900, SIM800L, A6, A7.

Описание модуля SIM900

Модуль SIM900 используется в различных автоматизированных системах. С помощью интерфейса UART осуществляется обмен данными с другими устройствами. Модуль обеспечивает возможность совершения звонков, обмен текстовыми сообщениями. Работа модуля релизуется на компоненте SIM900, созданным фирмой SIMCom Wireless Solution.

Технические характеристики:

  • Диапазон напряжений 4,8-5,2В;
  • В обычном режиме ток достигает 450 мА, максимальный ток в импульсном режиме 2 А;
  • Поддержка 2G;
  • Мощность передачи: 1 Вт 1800 и 1900 МГц, 2 Вт 850 и 900 МГц;
  • Имеются встроенные протоколы TCP и UDP;
  • GPRS multi-slot class 10/8;
  • Рабочая температура от -30С до 75С.

С помощью устройства можно отслеживать маршрут  транспорта совместно с ГЛОНАСС или GPS устройством. Возможность отправки смс-сообщений используется в беспроводной сигнализации и различных охранных системах.

Описание модуля SIM800L

Модуль выполнен на основе компонента SIM800L и используется для отправки смс, реализации звонков и обмена данными  по GPRS. В модуль устанавливается микро сим карта. Устройство обладает встроенной антенной и разъемом, к которому можно подключать внешнюю антенну. Питание к модулю поступает от внешнего источника либо через DC-DC преобразователь. Управление осуществляется с помощью компьютера через  UART, Ардуино, Raspberry Pi или аналогичные устройства.

Технические характеристики:

  • Диапазон напряжений 3,7В – 4,2В;
  • Поддержка 4х диапазонной сети 900/1800/1900 МГц;
  • GPRS class 12 (85.6 кБ/с);
  • Максимальный ток 500 мА;
  • Поддержка 2G;
  • Автоматический поиск в четырех частотных диапазонах;
  • Рабочая температура от –30С до 75С.

Описание модуля A6

Модуль A6 разработан фирмой AI-THINKER в 2016 году. Устройство используется для обмена смс-сообщениями и обмена данными по GPRS. Плата отличается низким потреблением энергии и малыми размерами. Устройство полностью совместимо с российскими мобильными операторами.

Технические характеристики:

  • Диапазон напряжений 4,5 – 5,5В;
  • Питание 5В;
  • Диапазон рабочих температур от -30С до 80С;
  • Максимальное потребление тока 900мА;
  • GPRS Class 10;
  • Поддержка протоколов PPP, TCP, UDP, MUX.

Модуль поддерживает карты формата микросим.

Описание модуля A7

A7 является новейшим модулем от фирмы AI-THINKER. По сравнению со своим предшественником A6 имеет встроенный GPS, позволяющий упрощать конструкцию устройства.

Технические характеристики:

  • Диапазон рабочих напряжений 3,3В-4,6В;
  • Напряжение питания 5В;
  • Частоты 850/900/1800/1900 МГц;
  • GPRS Class 10: Макс. 85.6 кбит;
  • Подавление эха и шумов.

Устройство поддерживает микросим карты. Модуль поддерживает обмен звонками, обмен смс-сообщениями, передачу данных по GPRS, прием сигналов по GPS.

Где купить GSM модули для ардуино

Традиционно, прежде чем начать, несколько советов и полезных ссылок на продавцов Aliexpress.

Keyestudio-SIM900-font-b-GSM-b-font-GPRS-module-shields-for-font-b-Arduino-b-font.jpg_220x220.jpgОчень качественный модуль KEYES SIM900 GSM GPRS  Elecrow-GPRS-font-b-GSM-b-font-Shield-for-font-b-Arduino-b-font-SIM800C-Module.jpg_220x220.jpgМодуль SIM800C для ардуино от проверенного поставщика
SIM900-GPRS-font-b-GSM-b-font-Shield-Development-Board-Quad-Band-Module-For-font-b.jpg_220x220.jpgШилд для разработки, совместимый с Ардуино, на базе модуля SIM900 GPRS/GSM Недорогой модуль mini A6 GPRS GSM

Подключение GSM GPRS шилда к Arduino

В этом разделе мы рассмотрим вопросы подключения GSM – модулей к плате адуино. За основу почти во всех примерах берется Arduino Uno, но в большинстве своем примеры пойдут и для плат Mega, Nano и т.д.

Подключение модуля SIM800

Для подключения нужны плата Ардуино, модуль SIM800L, понижающий преобразователь напряжения, провода для соединения и батарея на 12В. Модуль SIM800L требует нестандартное для ардуино напряжение в 3,7В, для этого нужен понижающий преобразователь напряжения.

Распиновка модуля SIM800 приведена на рисунке.

Плату Ардуино нужно подключить к компьютеру через USB кабель. Батарею на 12 В подключить через преобразователь: -12В на землю Ардуино, от земли в преобразователь в минус, +12В в преобразователь в плюс. Выходы с модуля TX и RX нужно подключить к пинам 2 и 3 на Ардуино. Несколько модулей можно подключать к любым цифровым пинам.

Подключение модуля A6

Модуль A6 стоит дешевле, чем SIM900, и его очень просто подключать к Ардуино. Модуль питается напряжением 5В, поэтому для соединения не нужны дополнительно понижающие напряжение элементы.

Для подключения потребуются плата Ардуино (в данном случае рассмотрена Arduino UNO), GSM модуль А6, соединительные провода. Схема подключения приведена на рисунке.

Вывод RX с модуля GSM нужно подключить к TX на плате Ардуино, вывод TX подключить к пину RX на Ардуино. Земля с модуля соединяется с землей на микроконтроллере. Вывод Vcc на GSM модуле нужно соединить с PWR_KEY.

Подключение с помощью GSM-GPRS шилда

Перед подключением важно обратить внимание на напряжение питания шилда. Ток в момент звонка или отправки данных может достигать значений в 15-2 А, поэтому не стоит запитывать шилд напрямую от Ардуино.

Перед подключением к Ардуино нужно установить сим-карту на GSM-GPRS шилд. Также нужно установить джамперы TX и RX, как показано на рисунке.

Подключение производится следующим образом – первый контакт (на рисунке желтый провод) с шилда нужно соединить с TX на Ардуино. Второй контакт (зеленый провод) подключается к RX на Ардуино. Земля с шилда соединяется с землей с аруино. Питание на микроконтроллер поступает через USB кабель.

Макет соединения шилда и платы Ардуино изображен на рисунке.

Для работы потребуется установить библиотеку GPRS_Shield_Arduino.

Для проверки правильности собранной схемы нужно сделать следующее: соединить на Ардуино RESET и GND (это приведет к тому, что данные будут передаваться напрямую от шилда к компьютеру), вставить сим-карту в шилд и включить питание шилда.  Плату Ардуино нужно подключить к компьютеру и нажать кнопку включения. Если все соединено правильно, загорится красный светодиод и будет мигать зеленый.

Краткое описание взаимодействия через AT-команды

AT-команды – это набор специальных команд для модема, состоящий из коротких текстовых строк. Чтобы модем распознал поданную ему команду, строки должны начинаться с букв at. Строка будет восприниматься, когда модем находится в командном режиме. AT-команды можно отправлять как при помощи коммуникационного программного обеспечения, так и вручную с клавиатуры. Практические все команды можно разделить на 3 режима – тестовый, в котором модуль отвечает, поддерживает ли команду; чтение – выдача текущих параметров команды; запись – произойдет записывание новых значений.

Список наиболее используемых AT-команд:

  • AT – для проверки правильности подключения модуля. Если все исправно, возвращается OK.
  • A/ – повтор предыдущей команды.
  • AT+IPR? – получение информации о скорости порта. Ответом будет +IPR: 0 OK (0 в данном случае – автоматически).
  • AT+ICF? – настройка передачи. В ответ придет +ICF: бит, четность.
  • AT+IFC? – контроль передачи. Ответом будет +IFC: терминал от модуля, модуль от терминала (0 – отсутствует контроль, 1 – программный контроль, 2 – аппаратный).
  • AT+GCAP – показывает возможности модуля. Пример ответа – +GCAP:+FCLASS,+CGSM.
  • AT+GSN – получение IMEI модуля. Пример ответа 01322600XXXXXXX.
  • AT+COPS? – показывает доступные операторы.
  • AT+CPAS – состояние модуля. Ответ +CPAS: 0. 0 – готовность к работе, 3 – входящий звонок, 4 – голосовое соединение, 2 – неизвестно.
  • AT+CCLK? – информация о текущем времени и дате.
  • AT+CLIP=1 – включение/выключение АОН. 1 – включен, 0 – выключен.
  • AT+CSCB=0 – прием специальных смс-сообщений. 0 – разрешено, 1 – запрещено.
  • AT+CSCS= “GSM” – кодирование смс-сообщения. Можно выбрать одну из следующих кодировок: IRA, GSM, UCS2, HEX, PCCP, PCDN, 8859-1.
  • AT+CMEE=0 – получение информации об ошибке.
  • AT+CPIN=XXXX – ввод пин-кода сим-карты.
  • AT&F – сброс до заводских настроек.
  • AT+CPOWD=1 – срочное(0) или нормальное(1) выключение модуля.
  • ATD+790XXXXXXXX – звонок на номер +790XXXXXXXX.
  • ATA – ответ на вызов.
  • AT+CMGS=”+790XXXXXXXX”>Test sms – отправка смс-сообщения на номер +790XXXXXXXX.

В данном случае рассмотрены основные команды для модуля SIM900. Для разных модулей команды могут незначительно отличаться. Данные для модуля будут подаваться через специальную программу «терминал», которую нужно установить на компьютер. Также подавать команды модулю можно через монитор порта в Arduino IDE.

Скетчи для работы с модулем GSM

Отправка СМС на примере SIM900

Перед тем, как отправить сообщение, нужно настроить модуль. В первую очередь нужно перевести в текстовый формат передаваемое сообщение. Для этого существует команда AT+CMGF=1. Нужно перевести кодировку на GSM командой AT+CSCS=»GSM». Эта кодировка наиболее удобная, так как там символы представлены в ASCII коде, который легко понимает компилятор.

Затем нужно набрать смс-сообщение. Для этого посылается команда с номером абонента AT+CMGS=»+79XXXXXXXXX» r, в ответ предлагается набрать текст смс. Нужно выполнить отправку сообщения. По окончании требуется отправить код комбинации  Ctrl+Z, модуль позволит отправку текста адресату. Когда сообщение будет отправлено, вернется OK.

Взаимодействие с модулем основано на индексах, которые присваиваются каждому новому сообщению. По этому индексу можно указать, какое из сообщений удалить или прочитать.

Получение смс. Для чтения смс-сообщения используется команда AT + CNMI = 2,2,0,0,0. Когда на модуль придет текстовое сообщение, он отправит в последовательный порт +CMTI: «SM»,2 (в данном случае 2 – порядковый номер сообщения). Чтобы его прочитать, нужно отправить команду AT+CMGR=2.

Прием голосового звонка. В первую очередь для разговора нужно подключить к модулю динамик и микрофон. При получении звонка будет показан номер, с которого он совершен. Для осуществления работы нужно включить библиотеку GSM:

#include

Если сим-карта заблокирована, нужно ввести ее пин-код. Если пин-код не требуется, это поле нужно оставить пустым.

#define PINNUMBER “”

В setup() должна быть произведена инициализация передачи данных на компьютер. Следующим шагом будет создание локальной переменной, чтобы отследить статус подключения к сети. Скетч не будет запущен, пока сим-карта не подключена к сети.

boolean notConnected = true;

С помощью функции gsmAccess.begin() происходит подключение к сети. При установлении соединения вернется значение GSM_READY.

vcs.hangCall(); – функция, показывающая, что модем готов принимать звонки.

getvoiceCallStatus() – определяет статус скетча. Если кто-то звонит, она возвращает значение RECEIVINGCALL. Для записи номера нужно воспользоваться функцией retrieveCallingNumber(). Когда будет совершен ответ на звонок, вернется TALKING. Затем скетч будет ждать символа новой строки, чтобы прервать разговор.

Установить GPRS-соединение и отправить данные на удаленный сервер

Сначала нужно установить библиотеку SoftwareSerial, которая позволяет обеспечивать последовательную передачу информации и связать GSM-модуль и микроконтроллер Ардуино.

Для отправки данных на сервер нужно отправить следующие команды:

AT+SAPBR=1,1 – открытие Carrier.

Следующие три команды связаны с установкой настроек подключения к сети.

AT+SAPBR=3,1,”APN”,”internet.mts.ru” – выбор оператора mts, имя точки доступа.

AT+SAPBR=3,1,”USER”,” mts ” – выбор пользователя mts.

AT+SAPBR=3,1,”PWD”,” mts ”

AT+SAPBR=1,1 – установка соединения.

AT+HTTPINIT – инициализация http.

AT+HTTPPARA=”URL”, – URL адрес.

AT+HTTPREAD – ожидание ответа.

AT+HTTPTERM – остановка http.

Если все выполнено правильно, в мониторе порта будут появляться строчки с АТ командами. Если отсутствует связь с модемом, то будет показывать по одной строке. При успешной установке GPRS-соединения  на модуле начнет мигать светодиод.

Аппаратная платформа Arduino используется для реализации множества электронных приборов и систем умного дома, включая GSM-извещатель охранной системы. Конструктор Arduino, в паре с простым и доступным языком программирования, позволит создать собственные типовые проекты умного дома, с применением GSM модуля. Содержание

Назначение и принцип работы

GSM-модуль (Global System for Mobile Communications) использует сеть телефонной связи оператора, для получения и передачи сигнала на удаленный объект управления. Например, с помощью СМС команд можно:

  • получать оповещение о состоянии объекта через используемые датчики;
  • узнавать о срабатывании сигнализации;
  • включать и выключать охранную систему.

С помощью GPRS, который также поддерживают GSM-модули, можно аналогичные команды обрабатывать через Internet. С помощью такого функционала можно организовать автономную сигнализацию на удаленном объекте. Датчики будут фиксировать изменение состояния, а по каналам связи будет транслироваться информация об этом на ваш смартфон. По сути, можно организовать Smart Home самостоятельно, постепенно добавляя в схему дополнительное комплектующее. Работает такое устройство на базе платы Arduino Uno. Никто не запрещает использовать платы Nano (mini-схема) или Mega если необходимо, но для удобства монтажа устройства минимальной комплектации, достаточно материнской платы Uno. За передачу GSM или GPRS отвечает модуль, который соединяется с основной платой. Он расширяет возможности Arduino UNO, позволяя принимать и совершать звонки, отправлять SMS, обмениваться данными через GPRS. На рынке представлены несколько версий отличных GSM-плат, которые можно сопоставлять и программировать через AT-команды на необходимый функционал.

Топ 6 самых популярных модулей

Представленные ниже модули – популярный продукт для монтажа систем автономной сигнализации и иных проектов, для передачи управляющего сигнала через сети мобильных операторов. Под модулем понимается изделие, состоящие из платы и элементов на ней (включая компонент, состоящий из чипсета и приемопередатчика). Компонент находятся под крышкой в едином форм-факторе (напоминает процессор для материнской платы компьютера). Распайка на плате расширения происходит через торцевые контактные ножки. Такая полноценная плата и называется модулем. Если на ней есть множество других элементов, ее иногда именуют шилд. Ниже будут приведены модули, такие как Neoway M590, A6 и A7, и прочие, представлены их характеристики.

SIM900

Разработанный компанией SIMCom Wireless Solution модуль SIM900 подключается и обменивается данными через распространенный физический протокол передачи данных UART. Подключение к ПК осуществляется через USB-UART преобразователь. Плата позволяет в двухстороннем режиме работать с сообщениями и звонками адресата. Спецификация:

  1. Диапазон частот EGSM900, DCS1800, GSM850, PCS1900.
  2. Напряжение 3,2-4,8 В.
  3. Сила тока в режиме простоя – 450 мА.
  4. Максимальный ток – 2 А.
  5. Канал связи до 14.4 кбит/с.
  6. Диапазон температур от -30 °C до +80 °C без искажения, и от -40 °C до +85 °C, с незначительным отклонением радиочастотных характеристик, с сохранением работоспособности.
  7. Вес 6,2 г.
  8. Размеры 24 x 24 x 3 мм.

У компонента есть модификации: 900B, 900D, 900TE-C, 900R 900X. У каждой модификации своя специфика. SIM900D дополнен блоком заряда аккумулятора, а в SIM900X введены новые режимы энергосбережения, что позволяет использовать модули в современных системах трекинга автомобилей, охранной и промышленной автоматики. Все модификации компонентов можно найти в едином форм-факторе SMT, с торцевыми контактами под пайку. Но, не исключены варианты нахождения в других форм факторах.

SIM800L

Основа модуля – компонент SIM800L с реализацией обмена данными по каналам GSM и GPRS с помощью дуплексного режима. В модуль устанавливается SIM-карта, есть встроенная антенна и выход под еще одну антенну. Питание на плату подается через преобразователь напряжения DC-DC. Еще, есть возможность подключиться к другому источнику питания. Интерфейс подключения – UART. Спецификация:

  1. Четырехдиапазонный сотовый терминал.
  2. Напряжение 3,8-4,2В.
  3. Ток в режиме ожидания – 0,7 мА. Предельный ток – 500 мА.
  4. Слот
  5. Поддержка 2G сети.
  6. Диапазон температур от -30 °C до +75 °C.

A6

Шилд A6 работает в сетях мобильной связи и позволяет принимать и передавать сигналы с помощью GSM и GPRS. Модуль, созданный компанией AI-THINKER несколько лет назад, успешно показал себя и пользуется популярностью в системах автоматики. ТТХ А6:

  1. Четырехдиапазонный сотовый терминал.
  2. Напряжение питания 5 В.
  3. Ток в спящем режиме – 3 мА.
  4. Ток режима ожидания – 100 мА.
  5. Ток режима соединения – 500 мА.
  6. Ток пиковой нагрузки – 2А.
  7. Разъем
  8. Скорость GPRS во время передачи сигнала 42,8 Кбит/сек.
  9. Температура от -30 °C до +80 °C.

A7

Новый модуль А7 отличается от предшественника тем, что в него встроен GPS. Это решение позволило упростить конструкцию платы. Основные параметры:

  1. Четырехдиапазонный сотовый терминал.
  2. Напряжение 3,3-4,6 В.
  3. Напряжение питания 5В.
  4. 10 Класс GPRS: канал передачи данных 85,6 кбит/с.
  5. Jammer эха и шумов.

Neoway M590

Модуль на основе компонента Neoway M590 позволяет принимать звонки, обмениваться данными и сообщениями. Имеет интерфейс подключения UART. Характеристики:

  1. Диапазон частот EGSM900, DCS1800.
  2. 10 Класс
  3. Напряжение 3,3-5 В.
  4. Пиковый ток 2 А.
  5. Рабочий ток 210 мА.
  6. Коммуникационный сигнал 3,3 В.
  7. Температура от -40 °C до +80 °C.

Подключая модуль к контроллеру, потребуется преобразователь 3,3 В -> 5 В.

GSM GPRS модуль SIM900

На базе модуля SIM900 разработали и успешно используют SIM900 GSM GPRS Shield, в качестве модуля для подключения к Arduino UNO. По сравнению с остальными платами, стоимость этой на порядок дороже, и она укомплектована множеством разъемов и контактов. Среди основных параметров:

  1. Подключается плата к Arduino Mega и UNO.
  2. Четыре рабочих частоты, как и в остальных платах.
  3. Низкое энергопотребление 1.5 А в спящем режиме.
  4. GPRS мульти-слот класса 10/8.
  5. Рабочие температуры от -40°C до +85 °C.

Схема сборки типового проекта Умного дома

Рассмотрим варианты подключения нескольких модулей GSM к платам Arduino. В качестве примера рассматриваются платы Arduino UNO и MEGA. Перед подключением модулей, вставьте соответствующего размера симку мобильного оператора в слот модуля. Далее, модуль соединяется с основной платой. Для этого нужно внимательно изучить инструкцию, определив распиновку модулей. После, подключив плату к питанию, с помощью переходника USB-UART контроллер подключается к компьютеру, через среду программирования Arduino IDE, или ее более комфортную альтернативу, прошивается и программируется AT-командами. Естественно, по мере увеличения функционала вашего проекта, к плате необходимо добавить датчики, реле, розетки и другие компоненты. Об этом вы можете почитать на других страницах сайта.

Аппаратная часть: составляющие

В зависимости от того, какой GSM-модуль будет использоваться, зависят и составляющие схемы. В основном это: микроконтроллер Arduino UNO, совместимый с платой GSM-модуль, DC-DC преобразователь понижающий (если коммуникационный сигнал ниже 5В), проводки и переходники для подключения.

SIM800L + Arduino UNO

Например, для подключения SIM800L к Arduino UNO, из-за малого напряжения в 3,8 В нужно подключить через преобразователь DC-DC. Распиновка модуля SIM800L выглядит так.

Подключение происходит в такой последовательности:

  1. Подключите Arduino UNO к компьютеру через порт USB.
  2. Источник питания на 12 В подключите через DC-DC.
  3. Минус с ИП на GND платы контроллера, и с GND в минус преобразователя.
  4. Плюс с ИП на плюс DC-DC.
  5. Плюс с DC-DC на плюс (Vcc) GSM модуля.
  6. Минус с земли преобразователя на GND модуля.
  7. RXD и TXD модуля соедините с пинами 2 и 3 Arduino UNO.

К любым digital pin (цифровые входы/выходы), если необходимо, можно соединять несколько модулей.

A6 + Arduino UNO

Так как GSM-модуль имеет стандартное напряжение питания, поэтому преобразователь в схеме не нужен. Подключать платы можно напрямую. Схема распиновки A6 на рисунке ниже.

Соединение происходит следующим образом:

  1. UART_RXD модуля к TX→1 микроконтроллера.
  2. UART_TXD модуля к RX ←0 микроконтроллера.
  3. GND контроллера с GND GSM-модуля.
  4. Пин VCC0 (питание) к кнопке питания на модуле PWR_KEY (power).

SIM900 Шилд + Arduino MEGA

Особенность платы в том, что при вызове устройства, сила тока достигает пикового предела в 2А. Поэтому, не подключайте питание напрямую. Прежде чем соединить, установите в слот сим карту и выставите TXD и RXD перемычку для слаботочной цепи, согласно картинке.

Далее, подключайте платы между собой:

  1. Желтым проводом соедините контакт TxD.
  2. Салатовым –
  3. Черным соедините GND плат.
  4. Через USB-порт соединить Микроконтроллер с ПК.

Чтобы удостовериться, что схема собрана верно, установите в IDE GPRS_Shield_Arduino. Проверка правильной отработки схемы выглядит так:

  1. На плате Arduino соедините RESET и землю, чтобы информация поступала от Shield к ПК.
  2. Установите SIM-карту в слот и дайте напряжение на модуль.
  3. Основную плату по USB соедините с ПК и нажмите кнопку «ON».
  4. При правильной работе схемы, зеленый светодиод будет мигать, а красный постоянно гореть.

Программная часть: скетчи и библиотеки

После разбора аппаратной части, нужно запрограммировать собранное устройство. С помощью текстовых короткого AT-кода, можно задавать устройству прямые команды. Они воспринимаются устройством во время нахождения программируемого устройства в командном режиме. Команды устройство считывает напрямую с клавиатуры или с помощью ПО, такого как IDE. Программу или ее аналоги доступны для устройств, работающих на Linux, MacOS, Windows, Android. Поэтому, задавать команды удаленно с телефона можно тоже.

На примере программирования модуля SIM900, можно рассмотреть настройку основных инструментов взаимодействия с будущим охранным проектом, сделанным своими руками.

Работа с СМС уведомлениями

Сперва настройте кодировку, с которой нет проблем у компилятора, а затем отправляйте СМС:

  1. Зайдите в IDE и выполните команду AT+CMGF=1 для перевода в текстовый формат сообщения.
  2. Затем, командой AT+CSCS=«GSM» выберите ASCII-кодировку.
  3. За набор сообщения отвечает команда AT+CMGS=«+79********».
  4. После команды введите текст мессенджа и отправьте его.
  5. Отправив SMS, нажмите CTRL+Z и устройство отправит SMS-сообщение на приемник.
  6. После правильного выполнения команд, вернется «ОК».

Чтобы получить сообщение, следуйте example:

  1. Отправьте команду AT + CNMI = 2,2,0,0,0, чтобы прочитать SMS.
  2. Обратной связью от порта будет +CMTI: «SM»,2 – двойка значит номер SMS в порядке очереди.
  3. Отправьте команду AT+CMGR=2 для чтения SMS.

Звонки

Естественно, пока к схеме не подключены микрофон и динамик, ни о каком приеме звонка и речи быть не может. Когда осуществиться звонок, будет выведен номер, с которого звонили. Чтобы далее работать со звонками:

  1. Загрузите библиотеку #include <gsm>.</gsm>
  2. Если на сим установлен PIN, то введите команду #define PINNUMBER “”, гв скобках пропишите его. В случае, если пин не установлен, оставьте скобки пустыми.
  3. Выполнив данную команду, следует узнать статус симки с подключением к сети с помощью boolean notConnected = true.
  4. Установить активацию с сетью можно через begin(). Если соединение готово к работе, в обратной связи покажется статус GSM_READY.

Выводы

Соорудить собственноручную автономную GSM-сигнализацию не составит большого труда для технически не подкованных людей, в вопросах электро и схемотехники. Прочитав инструкцию и ознакомившись с распиновкой схем, можно подключить микроконтроллер к отвечающему за GSM передачу данных модуль. Также, для подключения доступны разнообразные модели GSM модулей, которые в соответствии со своими характеристиками можно применять для различных задач и так называемых project-объектов. Касаемо программирования контроллеров, с этим тоже не возникнет проблем. С помощью библиотек, АТ-команд и скетчев, можно определять статус SIM-карты, получать и отправлять SMS сообщения, принимать звонки и тому прочее. Осуществляется это в среде программирования Arduino IDE или в аналогичных средах, установленных на удаленном устройстве, которыми могут быть как смартфон, так компьютер, что непосредственно подключен к программируемому устройству.

Подключение GSM-модуля

GSM_750.jpg

GSM-модуль предназначен для оперативного контроля и управления автозапуском.

Основные функции GSM-модуля:

  • Контроль за состоянием внешней сети.
  • Контроль за подключением потребителей к источнику напряжения.
  • Дистанционное включение и отключение системы автозапуска с помощью SMS-запроса.
  • Дистанционное управление пуском генератора.
  • Контроль за состоянием встроенного реле.
  • Контроль за температурой (датчик внутри GSM-модуля).
  • Контроль за балансом SIM-карты.

С помощью GSM-модуля, используя силовую часть автозапуска, можно включать и отключать потребителей от внешней сети. (Например, электроотопление в загородном доме с контролем температуры посредством SMS).

GSM-модуль оповещает администраторов системы SMS сообщением, состоящим из 4-х информационных полей, следующего вида:

Сеть подключена;Реле выкл.;Темп. 27С;Баланс: 51р.

SMS сообщение отправляется автоматически на телефон 1 администратора каждый раз при изменении режима питания потребителей (1 информационное поле). Если это изменение произошло на время менее 10 сек, SMS сообщение отправляться не будет.

1 информационное поле «Сеть подключена».

GSM-модуль контролирует сигналы наличия напряжения во входной сети и у потребителей, и в зависимости от наличия напряжения формирует информационное поле следующего вида:

Напряжение в сети Напряжение у потребителей Информационное поле
Нет Нет «Потребители обесточены»
Нет Да «Потребители подключены к генератору»
Да Нет «Сеть подключена»
Да Да «Потребители подключены к сети»

2 информационное поле «Реле выкл».

Информационное поле, показывающее состояние реле, встроенного в GSM-модуль. Для включения реле необходимо с телефона 1 или 2 администратора отправить SMS с текстом «1».

Для выключения реле — SMS с текстом «0». Красный светодиод отображает состояние реле. То есть не горит когда реле выключено и горит когда включено.

3 информационное поле «Темп. 27С».

Температура, встроенного в GSM-модуль термодатчика.

4 информационное поле «Баланс: 51р.».

Баланс СИМ-карты GSM-модуля.

Администраторы могут запросить у GSM-модуля состояние системы. Для этого нужно отправить пустую СМС с номера 1 или 2 администратора или просто сделать дозвон (модуль автоматом разорвёт соединение — т. е. будет занято). GSM-модуль, приняв пустую SMS/входящий дозвон, опросит состояние своих входов, запросит баланс, состояние реле и считает температуру и пришлёт SMS на номер администратора, который делал запрос.

Подключайте GSM-модуль при обесточенной системе.

Установка GSM-модуля.

Выходы и входы GSM-модуля показаны на рисунке:

GSM_750_2.jpg

GSM-модуль необходимо размещать вне металлических конструкций. Если Вас интересует контроль за температурой в определенном помещении, то модуль можно разместить в нем (проверьте наличие в помещении достаточного уровня сети сотового оператора!) Модуль соединяется с автозапуском 5-ю проводами. Провода могут быть любые (модуль потребляет около 500 мА).

Настройка GSM-модуля.

Необходимо приобрести SIM-карту сотового оператора и выбрать тариф. Так как общение с модулем происходит только посредством SMS сообщений, тариф выбирайте по их минимальной стоимости и отсутствию абонентской платы.

Во избежание неоправданных затрат, необходимо с помощью меню телефона отключить информационные службы и рекламные каналы. Если возникли сложности с отключением рекламных или информационных каналов – обратитесь в абонентскую службу сотовой компании. По Вашей просьбе оператор, как правило, может проделать это дистанционно.

Вставьте SIM-карту в телефон и ПОЛНОСТЬЮ ОЧИСТИТЕ телефонную книгу SIM-карты. Далее Вам необходимо заполнить телефонную книгу следующим образом (это лучше делать на телефоне, который показывает номера ячеек сим-карты, т. к. крайне важен именно такой порядок заполнения ячеек):

В 1-ю ячейку SIM-карты необходимо ввести номер телефона 1 администратора. В поле «Имя» вводим слово «Админ 1» (или любое другое слово). В поле «Номер» вводим номер телефона администратора в формате: 89991234567 или +79991234567 (значения не имеет).

Во 2-ю ячейку SIM-карты необходимо ввести номер телефона 2 администратора. В поле «Имя» вводим слово «Админ 2» (или любое другое слово). В поле «Номер» вводим номер телефона администратора в формате: 89991234567 или +79991234567 (значения не имеет). Если планируется работа с одним администратором, то в эту ячейку необходимо ввести номер 1 администратора.

В 3-ю ячейку SIM-карты необходимо ввести команду запроса баланса сотового оператора. В поле «Имя» вводим слово «Баланс» (или любое другое слово). В поле «Номер» вводим команду запроса баланса (обычно это *100# или *102#).

Далее вытаскиваем SIM-карту из телефона и вставляем в GSM-модуль. Включаем питание системы.

При подаче питания загораются оба светодиода на 1 сек., затем гаснут на 1 сек. и зажигается красный светодиод в пол накала. Через некоторое время красный светодиод загорается в полный накал.

Далее красный гаснет и зажигается в пол накала зелёный (как правило на очень короткое время что можно не заметить), затем светодиоды вместе мигнут 2 или 3 раза. 2 раза в случае если указаны только номера администраторов а номер баланса не указан, 3 раза — если все три ячейки прописаны и прошло успешное их чтение. Далее контроллер сохраняет текущее состояние системы. Реле выключено (всегда после подачи питания). Рабочий режим — красный потушен, зелёный мигает. Если зелёный мигает равномерно — сеть не найдена. Если редко кратковременная вспышка — то сеть найдена и может происходить обмен по сети GSM.

Использование GSM-модуля для дистанционного управления пуском генератора.

GSM-модуль можно использовать для дистанционного пуска генератора. Режим «Управляемый пуск» активируется в настройках системы. Позволяет в отсутствие внешней сети пускать генератор с подключением нагрузки и останавливать при необходимости.

Использование GSM-модуля для дистанционного управления нагрузкой.

GSM-модуль можно использовать для дистанционного управления включением нагрузки. Т. к. силовая часть в автозапуске уже есть, то используя режим «Управление нагрузкой», можно организовать вкл/выкл нагрузки при наличии внешней сети. Это удобно использовать, например, для дистанционного управления электроотоплением на даче в зимний период, что позволит Вам приезжать в любое время в уже прогретый дом. С помощью термометра можно контролировать процесс нагрева.

Если Вы планируете использовать этот режим, необходимо переключить вход БП, подзаряжающего аккумулятор генератора с потребителей на входную сеть! Также необходимо проверить нормальную работу встроенной в генератор системы подзарядки аккумулятора, т. к. в отсутствии сети, подзарядка аккумулятора будет происходить только от встроенной системы.

Использование GSM-модуля для дистанционного отключения системы.

GSM-модуль можно использовать для дистанционного отключения/включения системы. Режим «Управляемое включение» активируется в настройках. Позволяет корректно выключать систему и снова включать при необходимости.

Подключение GSM-модуля к автозапуску изображено на схеме:

Shema_PRO_GSM.jpg

Если Вы хотите приобрести GSM-модуль: ЦЕНЫ и условия покупки

Используемые источники:

  • https://arduinomaster.ru/datchiki-arduino/gsm-gprs-modul-arduino/
  • https://future2day.ru/gsm-moduli-arduino/
  • http://www.xn--2-ctbiaj6cd.xn--p1ai/index.php/2015-11-22-02-26-54/podklyuchenie-gsm-modulya

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации