Новый GSM / GPRS модем Enfora SA-G GSM1308+
Технические характеристики модема GSM1308
Enfora SA-G GSM1308+ — внешний модем на базе модуля GSM0308, предназначенный для работы в диапазонах частот GSM 850/900/1800/1900 МГц. (Для европейских стран предназначен двухдиапазонный модем GSM1306+ (900/1800 МГц).)
Эта модель с 2008 года выпускается вместо хорошо известной модели GSM1208. Приведем основные отличия ее от старой модели:
- модуль нового поколения GSM0308 на базе нового однокристального чипа Texas Instruments “LoCosto”;
- уменьшено энергопотребление;
- уменьшены габариты (63,5×63,5×23,9 мм);
- расширен набор сервисных функций;
- диапазон питающих напряжений расширен до 40 В;
- пластмассовый корпус;
- снижена цена.
Вид модема GSM1308+ показан на рис. 1 и 2.
На передней панели размещены разъем SMA для внешней антенны, держатель SIM-карты с автоматическим выталкивателем и светодиодный индикатор режимов работы. На задней панели размещены RS-232 и интерфейс пользовательских вводов/выводов. Эти интерфейсы показаны на рис. 2. Последовательный интерфейс RS-232 (v24) выведен на стандартный 9-контактный разъем. Диапазон питающих напряжений расширен до 6–40 В. Это позволяет питать модем от бортовой сети как легковых, так и грузовых автомобилей. Для пользовательских вводов/выводов использован разъем Molex 43024-0800. На этот разъем выведены контакты для подключения питания, голосовой гарнитуры, два программируемых ввода/вывода и один вывод общего назначения. Модем предназначен для эксплуатации при температурах –35…+85 °С.
Общие технические характеристики модема соответствуют модулю GSM0308 и показаны в таблице. Из хост-протоколов следует помимо АТ-команд отметить UDP API, CMUX, PPP. Для удаленного управления модемом можно использовать АТ-команды через SMS или UDP. В модеме поддерживаются HCI API: PPP, UDP API, TCP API, UDP PAD, TCP PAD.
Модемы Enfora имеют мощный IP-ориентированный программный блок и позволяют обойтись базовыми настройками для реализации многих стандартных задач, которые при использовании продукции других фирм требуют разработки сложного ПО и аппаратного обеспечения.
Прикладное программное обеспечение модема GSM1308+
Отличительной чертой программного обеспечения являются встроенные блоки, позволяющие с помощью AT-команд решать прикладные задачи без внешнего микроконтроллера и написания специальных сложных управляющих программ. В число наиболее значимых опций Enabler входит функция UDP/TCP сборки-разборки пакетов (Packet Assembler/Disassembler, PAD), которая позволяет конвертировать, упаковывать и передавать данные с обычного последовательного интерфейса без специального протокола, необходимого внешнему устройству. Иными словами, PAD — это способ передачи данных от устройства «за модемом» через сеть IP/GSM/GPRS и далее до получателя. Необходимо подчеркнуть, что без функционала, подобного PAD, обойтись нельзя — либо он отрабатывается на внешнем контроллере (ПК), который подключен к простейшему GSM/GPRS-модему, либо используется готовый продукт типа Enfora.
Нужно отметить и другой важный программный продукт — Event Processing (обработка событий). В модемах Enfora предусмотрены широкие возможности по обработке событий. Модуль может быть запрограммирован таким образом, чтобы внешние события отслеживались модулем и вызывали бы определенного рода его ответные действия. В качестве событий могут быть использованы регистрация (потеря регистрации) в сети, режим питания, получение сообщения UDP или SMS, а также начальное состояние вводов/выводов общего назначения.
Благодаря наличию пользовательских вводов/выводов (GPIO) модем GSM1308 предоставляет разработчикам очень широкие возможности для решения самых разных прикладных задач без использования дополнительного оборудования.
Например, в зависимости от различных состояний GPIO модем может:
- перерегистрироваться в сети GSM/GPRS;
- контролировать сетевые события протокола IP (нет IP, первый IP, новый IP, нет IP при переключении, действующий IP при переключении);
- посылать сообщения SMS или UDP;
- использовать часы реального времени;
- использовать таймер событий;
- использовать счетчик событий.
В качестве примера применения пользовательских вводов/выводов можно привести вариант использования модема для контроля доступа в помещение по GSM/GPRS-каналу.
Пользовательские вводы/выводы могут быть запрограммированы на срабатывание герконовых датчиков, датчиков движения, аудио-датчиков, датчиков контроля температуры и т. д. При поступлении сигнала тревоги от внешних датчиков или при отклонении измеряемых параметров от заданных GSM1308 посылает пользователю SMS или UDP-сообщение через сеть GSM/GPRS. При необходимости включения/выключения электрических приборов на объекте пользователь со своего сотового телефона посылает управляющее SMS-сообщение. Получив сообщение, GSM1308 дает команду управляющему блоку на включение или выключение бытовых приборов.
Передача данных с помощью модема GSM1308+
Одной из наиболее часто встречающихся в беспроводной телеметрии задач является передача данных от различных датчиков на центральный диспетчерский пункт.
Модем GSM1308 представляет собой универсальное устройство, позволяющее работать в различных режимах передачи данных.
В стандартных телеметрических задачах устройства, к которым необходимо получить доступ, имеют интерфейс RS-232. При этом часто для работы используются только линии данных RXD и TXD, а также протоколы обмена Modbus, Bitbus и им подобные. В простейшем случае используется режим асинхронной передачи, 8 бит, без контроля четности, на скорости 9600 бит/с.
Как правило, само опрашиваемое оборудование не умеет управлять модемами. Поэтому в настройках модема в режиме автоматического ответа должны быть отключены реакции на DTR, RTS, сжатие данных, информационные сообщения, контроль передачи, коррекция ошибок и включен режим «прозрачного соединения». В таком режиме модем передает данные из порта RS-232 без какой-либо коррекции, не меняя размеры блоков и не добавляя специальной информации. Этот момент является ключевым для обеспечения бесперебойной работы протоколов типа Modbus.
В GSM1308 поддерживается прозрачный режим. Для этих целей используется команда
где A, B, C — параметры, задаваемые пользователем (A — скорость передачи, B — имя, C — выбор режима: прозрачный, непрозрачный или оба режима с предпочтением одному из двух).
В модемах Enfora можно использовать различные режимы передачи по последовательному порту (+ICF):
- 1 8 data, 2 stop, no parity;
- 2 8 data, 1 stop, 1 parity;
- 3 8 data, 1 stop, no parity;
- 4 7 data, 2 stop, no parity;
- 5 7 data, 1 stop, 1 parity;
- 6 7 data, 1 stop, no parity;
- <parity> 0 odd;
- 1 even;
- 2 mark;
- 3 space.
Это позволяет использовать модем с периферийными устройствами разных производителей.
Набор специализированных АТ-команд в продукции Enfora предоставляет разработчикам возможность существенно упростить процесс передачи данных как в режиме GSM, так и в режиме GPRS. Enfora предлагает стандартный набор механизмов для передачи данных по TCP/IP (PAD).
При работе с модемом Enfora возможны два метода передачи данных: с использованием PAD и внешнего управляющего устройства.
В случае режима PAD, когда в системе нет управляющего внешнего компьютера (ПК), упаковку данных в “IP–GPRS” производит сам модем GSM1308.
Функция PAD позволяет собирать/разбирать UDP/TCP-пакеты. Это может быть полезным при использовании модема в режиме PAD/TCP — passive/server. В этом случае модем ожидает соединения с центрального сервера, а после установления TCP-соединения модем принимает и передает данные. Здесь компьютер (ПК), выполняющий роль центрального сервера, подключен к Интернету (например, по коммутируемому соединению через обычный выделенный проводной канал).
Во втором, «классическом» случае (без использования режима PAD), упаковка и передача IP-трафика через GPRS-сеть инициируется внешним компьютером (ПК). При этом PPP-соединение с сетью оператора сотовой связи устанавливает внешний управляющий компьютер, подключенный к модему. Сам модем используется исключительно в виде радиоинтерфейса, через который реализуется подключение компьютера к сети оператора.
Работа модема GSM1308+ в непрерывном режиме без выключения питания
Благодаря программному приложению Event Processing (обработка событий) в модемах GSM1308 можно задать режим, обеспечивающий автоматическое подключение к сети GSM и GPRS, постоянный автоматический контроль состояния подключения и восстановление подключения к GSM и GPRS в случае потери соединения.
Специальные АТ-команды предназначены для мониторинга соединения через GSM/GPRS/IP и его активного восстановления при разрыве. При отсутствии трафика терминал будет посылать ping-пакет через заданный интервал времени на заданные IP-адреса ($Friend). Посылки ping-пакетов будут продолжаться до тех пор, пока какой-нибудь из указанных серверов не окажется в режиме online и не ответит на запрос. В случае, когда модем обнаруживает отсутствие связи в сети GSM/GPRS, он через заданный интервал времени начнет автоматическую перезагрузку. При этом происходит полная перезагрузка программного обеспечения терминала и соответственно автоматическое (корректное) завершение работы всех текущих процессов. После этого терминал самостоятельно возобновляет работу.
В ряде случаев у пользователей GSM/GPRS-оборудования возникает проблема «полного зависания» модемов. Это связано как с устройством модема, так и со спецификой работы операторов сетей мобильной связи. Для решения проблемы применяются различные методики. В одном случае используются сторожевые таймеры (Watchdog), которые перезагружают модем через определенный промежуток времени. В других случаях используются более сложные контроллеры, которые работают совместно с ПК и перезагружают модем по заданному алгоритму.
В программном блоке “Event Processing” в качестве выходного события можно использовать также команду на внешнее, исполнительное устройство, перезапускающее модем.
Российская фирма «Оликом» разработала простой контроллер, который выключает и снова включает питание модема в тех случаях, когда не срабатывает программный перезапуск. Этот случай характерен для ряда операторов GSM/GPRS-сетей, которые во время своих регламентных работ требуют на некоторое время обесточить SIM-карту.
Контроллер используется для работы с модемами, имеющими пользовательские вводы/выводы GPIO (GSM1308, GSM2208, GSM2238, SL-116, SL-308). Он предназначен для мониторинга состояния GSM/GPRS-связи и жесткого перезапуска в случае «полного зависания».
Контроллер выявляет случаи сбоя работы модема, отключает питание и через 5 секунд снова его включает.
Блок-схема контроллера показана на рис. 3.
На передней панели контроллера размещен разъем Molex, к которому подключается постоянное напряжение питания +5/30 В, и индикаторы режима работы (рис. 4).
На задней панели контроллера расположены кабели для подключения к разъему питания самого модема и к разъему модема с пользовательскими вводами/выводами (рис. 5).
Габариты контроллера — 58×30×30 мм, масса 50 г.
С завода изготовителя модемы GSM1308 поставляются с заводской настройкой.
Для принудительного восстановления связи в случаях потери регистрации в сети GSM/GPRS нужно с помощью программы Hyper Terminal ввести в модем дополнительные настройки.
После введения данных команд модем можно использовать совместно с контроллером RS01. Для этого нужно подключить модем к контроллеру в соответствии с рис. 6.
Для проверки работоспособности модема с контроллером нужно после того, как модем зарегистрируется в сети, отключить антенну. Через 38 с после потери связи контроллер отключит питание и снова его включит через 5 с.
Если теперь снова подключить антенну, то контроллер после восстановления связи переходит в спящий режим.
Следует отметить, что модем может работать как с контроллером, так и без него.
Восстановить заводские настройки можно с помощью команды AT&F.
Заключение
Характерной чертой фирмы Enfora является детальная техническая информация как для начинающих, так и для опытных пользователей. Общие сведения и инструкция пользователя для модема GSM1308 приведены в [1]. Информация о последовательном интерфейсе приведена в [2]. Требования к источнику питания даны в [3]. Подробное описание AT-команд можно найти в [4]. Варианты конфигурации модема для случаев использования с различными операционными системами даны в [5–10].
Информация, связанная с IP-событиями, (регистрация в сети, адреса и т. д.) приведена в [11–15]. Работа с SMS и электронной почтой описана в [16–19]. Вопросы о том, что такое PAD и как этим пользоваться, рассмотрены [20–22]. Прикладное ПО “Event tools” описано в [23]. Сведения о дополнительных возможностях модема можно найти в [24–26].
Для того чтобы начать работу с модемом, не требуется специальных навыков. Достаточно вставить в модем SIM-карту, подсоединить его к компьютеру через RS-232 и подать питание.
Для установки на ПК не нужен специальный драйвер, модем устанавливается как «Стандартный».
- Enfora GSM1308 Quad-Band SA-G+ User Manual.
- Enabler-G 3-Wire Serial Interface Requirements. GSM0000TN008.
- Enabler Power Supply Requirements. GSM0000TN009.
- GSM0308AT001 — Enfora IIIG Module AT Command Set Reference. GSM0308UG001.
- Enfora GSM-GPRS Family API Reference Application Notes. GSM0000AN002.
- Enabler-G PPP Configuration for Windows 2000. GSM0000AN003.
- Enabler-G PPP Configuration for Windows XP. GSM0000AN009.
- Enabler-G PPP Configuration for PocketPC 2002. GSM0000AN011.
- Anytime PPP API Access.
- Enabler-G PPP Negotiation Sequence. GSM0000TN006.
- Enabler-G Automated Network Connection Configuration and Use. GSM0000AN006.
- Enabler-G Module Status Query. GSM0000AN007.
- Enabler — G Status Reporting. GSM0000AN008.
- Dynamic IP Assignment Support. GSM0000AN01.
- Server Application Design Considerations for Dynamic IP.
- Enabler-G SMS Configuration and Use. GSM0000AN005.
- How to Send SMS Messages to an E-Mail Address. GSM0000AN017.
- Application Note: GSM0000AN022 Enfora® Mobile Tracker AT-Commands Over SMS.
- SMTP Mail Access via TCP PAD. GSM0000AN018.
- PAD Configuration and Use. GSM0000AN012.
- Network Transparency Configuration for PAD. GSM0000AN013.
- USNO NTP Network Time Service TCP PAD Technical Notes. GSM0000TN001.
- GSM0000AN015 – Event Monitor and Reporting Overview. GSM0000AN016.
- Enabler-G Sleep Mode Configuration and Use. GSM0000AN014.
- Enabler-G Data Circuit Switched Call Configuration and Use. GSM0000AN004.
- UDP Wakeup Message Header Decoding. GSM0000TN007.