Модуль передачи данных GM 9/18 — вариант решения проблем в области телеметрии и диспетчеризации


Введение

Задачи диспетчеризации удаленных объектов приобрели большое значение в современном мире. Тем не менее, сами объекты, которые требуется подключить к уже существующим или вновь создаваемым системам, зачастую расположены в труднодоступных местах. Установка проводной линии связи сопряжена с огромными затратами, да и обслуживание может влететь в копеечку. Таким образом, предпочтительным выбором будет какой-либо из видов беспроводной связи. Существуют разнообразные системы связи с использованием радиосигнала: от простейших схем с радиостанциями «Маяк» в качестве приемопередающего устройства до систем с множеством промежуточных ретрансляторов и узлов связи. Тем не менее, создание таких радиосетей требует серьезных вложений на закупку оборудования, лицензирование требуемых для работы диапазонов частот, найм специалистов по обслуживанию дорогостоящей техники.

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

Итого, вполне логичным решением в области телеметрии и диспетчеризации стало использование средств передачи данных через сотовые сети.

Коммуникационный модуль

По традиции, задачи промышленной автоматизации включают установку разнообразных контроллеров, имеющих дискретные и аналоговые входы и выходы. Кроме того, контроллеры обычно содержат один или несколько портов RS-485 (для объединения устройств в сети) или (реже) RS-232 (для использования внешних устройств, таких как модемы, или для соединения с компьютерной техникой). Подключение внешнего модема к уже существующей сети устройств на RS-485 сопряжено с определенными трудностями: модем — устройство неинтеллектуальное и адреса не имеющее. Приходится подключать еще одно устройство, имеющее как RS-485, так и RS-232 интерфейсы, и общаться уже с этим устройством по какому-либо протоколу. Довольно громоздко, не правда ли?

Рассмотрим другой вариант. На удаленной подстанции установлен электросчетчик (с интерфейсом RS-232). Требуется ежечасный отчет о расходе электроэнергии. Логичным решением стала бы установка интеллектуального контроллера, имеющего 2 порта RS-232 и внешний радиомодем. Тоже не самая простая схема.

Решение напрашивается само собой: объединить программируемый контроллер с GSM-модемом. Что и сделала компания Тэсс-Электроникс в своей линейке продуктов серии GM.

В настоящее время доступны две модификации модуля передачи данных: с внешним интерфейсом RS-485 (GM 9/18-485) и с внешним интерфейсом RS-232 (GM 9/18-232).

Технические характеристики модуля

  • Микроконтроллер Texas Instruments MSP430F149
  • Сотовый модуль Siemens TC-35
  • Интерфейс RS-232 или RS-485, скорость обмена до 115200 бит/с
  • Интерфейс JTAG для программирования микроконтроллера
  • Диапазон температур: при работе — от –20 до +55 градусов, при хранении — от –40 до 70 градусов
  • Класс защиты промышленных устройств: IP56
  • 8 дискретных входов типа «сухой контакт»
  • 8 аналоговых входов «токовая петля 4-20 мА» или «токовая петля 0-5 мА», погрешность измерения не более 0,1% от верхнего предела
  • 8 релейных выходов, коммутируемое напряжение не более 100В, коммутируемый ток не более 0.5А
  • вход внешней антенны (встроенная антенна отсутствует!)
  • выход питания +5В (для подключения внешних 5В-устройств)
  • напряжение питания от 9 до 30В, пиковая потребляемая мощность не более 10 Вт

Внутреннее строение модуля

Как видно из структурной схемы, основой модуля является управляющий микроконтроллер на базе процессора Texas Instruments MSP430F149, в который входят:

  • 60 Кб flash-памяти для хранения программы
  • 2 Кб ОЗУ (SRAM)
  • два последовательных асинхронных порта (один доступен через внешние интерфейсы модуля, второй занят взаимодействием с сотовым модемом)
  • 12-разрядный 8-канальный АЦП (время преобразования <10 мкс)
  • два 16-разрядных таймера с регистрами сравнения
  • модули компаратора
  • watchdog
  • модуль апаратного умножения
  • модуль контроля питания (поддерживаются несколько режимов функционирования)

Также непосредственно к микропроцессору подключены 32 Кб flash-памяти общего назначения и часы реального времени (RTC). В случае отсутствия внешнего питания часы работают от стандартной литиевой батарейки CR2032.

Вторым важнейшим элементом модуля является встроенный сотовый модем Siemens TC-35.

Характеристики модема:

  • среда передачи: сеть сотовой связи EGSM 900 — GSM 1800
  • GSM Phase II+
  • поддержка SIM-карт 3.3В/1.8В
  • передача голоса, факса и данных (скорость передачи данных до 9.600 бит/с)

Программирование

Пожалуй, самым главным достоинством рассматриваемого модуля является возможность написания собственной программы для интегрированного микропроцессора. В комплект поставки входит преобразователь интерфейса LPT<—>JTAG, таким образом, через имеющийся на модуле разъем можно осуществить непосредственное подключение компьютера к устройству. Мало того! Используемый микропроцессор позволяет через этот самый интерфейс JTAG вести отладку непосредственно на процессоре! Обычно программы для контроллеров отлаживаются на специальных (довольно дорогостоящих) эмуляторах, и лишь после этого обнаруживается, что на самом устройстве программа неработоспособна. Отладка в системе (in-system debugging) происходит с использованием внутрисхемного эмулятора через JTAG-интерфейс.

Поставка

Коробка из серого картона выглядит весьма неказисто. Зато внутри лежит собственно устройство, техпаспорт, переходник LPT<—>JTAG, а также компакт-диск. На диске удобно расположилась интегрированная среда IAR Embedded Workbench (версия с ограничениями, впрочем, их можно обойти), включающая компилятор С/С++, ассемблер для MSP430, компоновщик (linker) и средство для отладки C-SPY. Кроме того, на диске расположена документация (руководство системного программиста и руководство по эксплуатации, гора документации по программированию микропроцессора MSP430, руководства по работе с модемами от Siemens), набор примеров программ для устройства, библиотеки базовых функций, две готовые прошивки (для работы с разными протоколами), тестовая программа для Windows (работает с первой прошивкой) и демонстрационная версия диспетчерской программы (работает со второй прошивкой).

Антенна со стандартным разъемом FME в комплект не входит, впрочем, стоимость такой антенны невелика (10-15 у.е.), и при заявке на покупку модуля спрашивают, нужна ли антенна и блок питания (который тоже поставляется отдельно).

Разбор полетов

Извлекаю устройство на свет. Выглядит довольно симпатично, но весит неприлично много для таких скромных размеров (170×108×40, масса — до 0,5 кг!). Встроенного блока питания нет, должен использоваться внешний. Имеющаяся литиевая батарея CR-2032 (в точности такая же, что стоит у большинства на материнских платах и используется для питания микросхем таймера при выключении компьютера из сети) может обеспечить автономное питание таймера микропроцессора в течение длительного времени, но не более того. Что, кстати, весьма логично: один лишь сотовый модуль может излучать мощность до 2 Вт. Вывод логичен: о надежности источника питания следует позаботиться как следует.

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

Но одной крестообразной отверткой не обойтись. Для подключения контактов требуется вторая, маленькая и плоская. Правда, я обошелся обычным ножом. Еще полминуты ушло на проталкивание проводов сквозь специальные разъемы (с резиновыми шторками внутри для защиты от влаги).

Итак, питание подано. Загорелся красный светодиод. Остальные не горят, значит, нет регистрации в сети GSM. Логично, требуется вставить SIM-карту. Держатель, простой и надежный, напоминает устанавливавшиеся в телефоны Motorola (например, серии CD 9x0).

Хотя в руководстве жирным шрифтом выделены слова «Установку и снятие SIM-карты следует производить при отключенном напряжении питания», все великолепно работает и «на горячую». Через некоторое время загорелись светодиоды регистрации и качества сигнала. Следует отметить, что при подключении самой обычной антенны без усиления (0 дБ) модуль превосходно работал во всех местах, где мне доводилось его испытывать. Экспериментируя, я поместил антенну внутрь пустого компьютерного корпуса. Качество сигнала упало до одного светодиода :, но прибор продолжал корректно отрабатывать сеансы связи. Учитывая, что стандартный FME-разъем позволяет непосредственно, без всяких переходников, подключать и антенны с усилением, проблем со связью вряд ли стоит ожидать.

К персональному компьютеру кабелем у меня были подключен телефон Ericsson R320s. Устанавливаю с диска из комплекта GM Test, программа прекрасно находит телефон как модем (хотя в списке поддерживаемых устройств указаны только модемы от Siemens). Нажимаю «Выполнить», слышу на колонках, как телефон добивается внимания устройства. Сеанс связи проходит успешно (главное — не забыть включить услугу «передача данных» у оператора). Все дискретные контакты в разомкнутом состоянии, на аналоговых какие-то случайные величины (как и предполагалось, датчики-то не подключены!). Потом я также пробовал Ericsson T39m через ИК-порт. Результат был в точности тем же.

Перепрограммирование

Пришло время устанавливать комплекты разработки. Инсталлируется все это одним большим setup'ом, который себя именует Flash Emulation Tool install. После этого можно копировать с диска пример готового проекта, пробовать его компилировать и убеждаться, что ничего не выходит из-за несовпадения путей. Проблема решается до смешного просто: создается новый проект, куда подключаются все C-файлы из старого (потом, к своему стыду, я обнаружил, что этот процесс был подробно описан в документации). Записываю с помощью отладчика C-SPY скомпилированный код в устройство, предварительно подключив его через прилагающийся переходник к параллельному порту компьютера. Загрузка осуществляется очень быстро, потому что размеры памяти в устройстве невелики. В принципе, теперь можно отключить устройство от компьютера. Включаю устройство, на вид ничего не изменилось, светодиоды ведут себя точно так же. Устанавливаю демонстрационную версию диспетчерской программы, настраиваю в точности как указано в справке («быстрый старт»). Работает!

Что бы еще такого сделать

И тут началось самое интересное. Гора документации по микропроцессору, по сотовому модулю и по поставляемым библиотекам функций. Глаза разбегаются. С чего начинать изучение — совершенно непонятно. Самым простым решением стала… простейшая трассировка имеющейся программы по шагам. Буквально через час я уже имел почти полное представление о большинстве функций и возможностей устройства. Некоторые из них оказались довольно неожиданными. Так, светодиоды — программно контролируемые (даже тот, который индицирует наличие питания, просто прошивки при старте первым делом включают этот светодиод). Информация о качестве сигнала и наличии регистрации получается с сотового модуля также программным путем (а значит, если вдруг я перепишу программу так, что она будет зависать, светодиоды обновляться перестанут). Можно перепрограммировать внутренний таймер устройства — тогда АЦП, стоящие на аналоговых входах, будут выдавать совершенно загадочные значения. Через порт I2C можно работать с отдельным внешним таймером (который заодно является и часами реального времени, и календарем — микросхема PCF8583T), а также с внешней flash-памятью последовательного доступа. В доставшемся мне экземпляре было установлено 32 Кб flash-памяти, но можно заказать устройства с практически любым требуемым объемом.

Можно выставить состояние герконовых реле (EDR3H1A). Например, чтобы включить или выключить с их помощью вентилятор. Особо эстетствующие типы могут написать такую программу, которая будет контролировать значение на аналоговом входе, звонить хозяину при превышении порогового значения и отключать вентилятор. Кстати, кроме стандартных 8 каналов АЦП есть еще дополнительных 4, из которых два выдают соответственно температуру самого микропроцессора и подаваемое на него напряжение питания (которое фактически всегда равно 3.0В — сказывается качественный источник).

Кроме стандартного набора коммуникационных сигналов, микропроцессор может программно управлять питанием сотового модуля. Например, если требуется аппаратно сбросить состояние и рестартовать его, достаточно лишь вызвать функцию из поставляемой библиотеки. Кстати, при сбое общего питания микропроцессор не сразу же отключается, а выдает аварийный сигнал — требование завершения работы.

Наконец, можно влезть в «святая святых» устройства: блок конфигурации, где хранится серийный номер, дата изготовления, версия аппаратной части и ПО модуля, а также точные значения токовых измерительных резисторов. Благо, сделать это совсем несложно — блок описан в документации, да еще и видится с помощью отладчика C-SPY.

Разборки

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

Кстати, в процессе разборки обнаружилась пара контактов для подключения внешнего 5В-устройства. В документации сказано, что эти контакты — источник питания для внешних устройств, ток нагрузки которых не превышает 0.1А. Тем не менее, подключенная к источнику связка резисторов, рассеивающая суммарно 2 Вт, не нарушала работы модуля (то есть ток в 0.4А устройству жить не мешает).

Выводы

Что же в итоге получилось? Довольно интересное микроконтроллерное устройство с широчайшими возможностями по программированию и отладке. Несмотря на то, что фирма-производитель ориентирует устройство на рынок промышленной телеметрии, ничто не мешает его применению в других целях. К примеру, для оснащения автомобилей противоугонными средствами: подключить GPS-приемник к порту RS-232 модуля и при срабатывании дискретного контакта, подключенного к датчику на двери, устройство отправляло бы короткое сообщение владельцу машины.

В планах производителя значится также выпуск устройства со встроенным модулем компании WaveCom (с поддержкой GPRS и массы других возможностей), а также различных внешних расширителей модуля (для увеличения количества подключаемых дискретных и аналоговых датчиков, обеспечения автономного питания и др.).

Достоинства:

  • широкие возможности программирования и отладки в системе
  • наличие интерфейсов расширения
  • первое устройство на рынке с подобной функциональностью

Недостатки:

  • отсутствие батарейного питания (батарея предназначена только для часов)
  • довольно высокая цена (на 10 августа — 395 вполне безусловных единиц при поставках от 10 штук)

 

Благодарим фирму Тэсс-Электроникс за предоставленное на тестирование оборудование.






Дополнительно

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.