Радиомодули MBee-868 от компании СМК: быстрый старт

27 мая 2016

телекоммуникациисистемы безопасностиучёт ресурсовпотребительская электроникаинтернет вещейСМКстатья868 МГц

Денис Бушунов, Николай Неудобнов (ООО «СМК»)

Применение готовых модулей может существенно облегчить задачу разработчика по обеспечению беспроводной передачи данных в формате «точка-точка» или «звезда». Рассмотрим преимущества использования законченных модулей и встроенного программного обеспечения на примере радиомодулей MBee 868 МГц отечественного производителя ООО «Системы, модули и компоненты».

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

Первый, сложный вариант – создание радиочасти «с чистого листа». Это выбор микросхемы трансивера, создание принципиальной схемы, выбор номиналов компонентов обвязки. Далее необходимо определить параметры радиоканала – модуляцию, скорость передачи данных, девиацию, выходную мощность, оптимальную полосу приемника и рассчитать 20…50 значений регистров для настройки микросхемы приемопередатчика. После выполнения радиочасти «в железе» нужно испытать свою плату на соответствие реальных ВЧ-характеристик тем параметрам, которые рассчитывали получить. Для проверки радио, к сожалению, не хватит привычного мультиметра и осциллографа – для измерений необходимо иметь высокочастотный сигнал-генератор, анализатор спектра и, возможно, векторный анализатор цепей. При разработке радиоканала «с нуля» не обойтись без нескольких циклов переразводки печатной платы и оптимизации компонентов – это подтвердит любой разработчик высокочастотных устройств. Когда, наконец, аппаратная часть заработает в соответствии с ожиданиями – наступает время написания программной части управления вашим радио. Минимальный набор софта будет включать в себя подпрограммы инициализации радио, подготовки пакета для передачи, калибровку PLL, прием-передачу пакета, вычитывание принятых данных и обработку ошибок приема (еще не придумали радио, работающее без ошибок!). Если вам нужно общаться по радио с множеством устройств — предстоит придумать логику обмена и, как минимум, организовать привязку узлов к своей сети и решить вопросы адресации и подтверждения доставки пакетов. Этим занимается промежуточный слой программного обеспечения (между драйвером радио и полезным приложением), обычно называемый сетевым стеком или просто стеком (например, стек 802.15.4 или стек 6LoWPAN). Вот теперь, наконец, можно приступить к разработке собственно приложения, так как передача данных по радиоканалу едва ли является конечной задачей какого-либо изделия. Радиоканал – это лишь некий интерфейс обмена данными, вспомогательная функция в общей логике работы изделия. Не будет преувеличением сказать, что для начинающего разработчика без ВЧ-измерительной техники вероятность успешного создания качественного радиочастотного устройства близка к нулю, если результат нужен в короткие сроки (менее 3…6 месяцев).

Второй, простой вариант – купить все перечисленное выше. Нет, никому не предлагается нанимать для разработки стороннюю компанию или искать миллион рублей для закупки базовых измерительных приборов (миллион — это реальная, далеко не завышенная цифра). Можно просто приобрести готовый радиомодуль, который включает в себя как гарантированно работающую аппаратную часть, так и базовый набор софта. В таком варианте работа с радиоканалом не представляет никакой сложности, и инженер может сосредоточиться исключительно на разработке своего собственного приложения. Если разработчик создает коммерческий продукт, который будет произведен тиражом лишь в сто единиц, то идти по пути создания радио из отдельных компонентов просто неразумно. Достаточно разделить стоимость разработки на количество изделий, чтобы понять, насколько они становятся «золотыми» при малом тираже.

Рис. 1. Радиомодули MBee

Рис. 1. Радиомодули MBee

Прекрасно понимая объективное противоречие между желанием иметь в составе изделия какой-либо радиоканал и сложностью его создания «с нуля», многие компании предлагают разработчикам готовые радиомодули. Одна из таких компаний – российский производитель ООО «Системы модули и компоненты» (ООО СМК), которая выпускает интересные SMD- и DIP-радиомодули с торговой маркой «MBee» для диапазонов 868 МГц и 2,4 ГГц (рисунок 1). Модули построены на базе систем-на-кристалле CC430, СС2530 и СС1350, которые включают в себя как радио, так и вычислительное ядро (микроконтроллер). Интересны эти модули, прежде всего, тем, что являются не только законченным и настроенным аппаратным решением, но и имеют в своем составе программный стек. Доступные с сайта производителя прошивки модулей (Firmware) реализуют разные режимы работы – от простейшей беспроводной системы «точка-точка» до сложной радиосети из сотен узлов с маршрутизацией пакетов и спящими батарейными устройствами.

Предлагаемый по умолчанию функционал может быть легко расширен под задачи конкретного заказчика – инженеры компании ООО «СМК» готовы модифицировать ПО модулей по техническому заданию.

Обзор радиомодулей ООО СМК и описание их возможностей можно найти в статьях [1] и [2], здесь же будет рассматриваться работа c модулями MBee-868-3.0 и MBee-868-2.0 с прошивками SerialExtender и Sensor Network.

Радиомодули MBee-868-x.x

Рис. 2. Радиомодуль MBee-868-3.0

Рис. 2. Радиомодуль MBee-868-3.0

Радиомодуль MBee-868-3.0-SMA-PLS10 (рисунок 2) построен на микросхеме Texas Instruments CC430, которая представляет собой микроконтроллер и приемопередатчик, размещенные на одном кристалле. Технические параметры радио довольно неплохи и фактически определяются примененной микросхемой CC430F5137:

  • рабочий диапазон частот: 779…928 МГц;
  • полное соответствие требованиям ГКРЧ;
  • выходная мощность передатчика (max): +12 дБм;
  • чувствительность приемника (max): -117 дБм;
  • скорость передачи данных: 0,6…500 кбит/с;
  • модуляция: 2-FSK, 2-GFSK, 4-FSK, MSK, OOK, ASK;
  • напряжение питания: 1,8…3,6 В;
  • потребляемый ток
  • в режиме передачи: до 65 мА;
  • в режиме приема: до 45 мА;
  • в дежурном режиме: 2,2 мкА;
  • в режиме сна: 1,2 мкА.

Дальность связи существенно зависит от окружающей обстановки – на открытом пространстве она может достигать единиц и даже десятков километров (для модуля с усилителем мощности), в железобетонном здании зона действия уменьшается до десятков метров (несколько этажей). Для работы на большей дальности можно использовать модуль MBee-868-2.0, который отличается лишь наличием дополнительного усилителя CC1190 (рисунок. 3). Радиомодули выпускаются в различных исполнениях: можно выбрать модуль MBee со штыревыми разъемами (шаг выводов 2 мм) либо в SMD-версии.

Рис. 3. Радиомодули MBee-868-2.0

Рис. 3. Радиомодули MBee-868-2.0

Программные возможности MBee-868-x.x

Если вам нужен беспроводной канал, и вы хотите максимально упростить процесс разработки — можно использовать модуль MBee-868-x.x совместно с одной из готовых бесплатных прошивок (Firmware), которые выложены на сайте производителя.

Самый простой вариант прошивки с точки зрения понимания логики работы и универсальности – это прошивка «Serial Extender», которая позволяет заменить соединение по последовательному интерфейсу UART на беспроводной канал. В этом случае вы используете модуль MBee-868-x.x в качестве сетевого процессора, то есть отдельного узла вашей системы, который отвечает за организацию беспроводной передачи данных. В этом случае вы не можете загрузить в модуль MBee свой код. Ваше приложение будет выполняться на внешнем отдельном микроконтроллере. Достоинством такого подхода является возможность выбора любого микроконтроллера для своего приложения. Это может быть ваш любимый 8-/16-/32-разрядный чип, начиная от шестивыводного PIC10 до Cortex-M4 c 512 кбайт Flash в корпусе 144LQFP. Вы сами определяете оптимальные для вашего приложения вычислительную мощность (тактовую частоту и разрядность), объем памяти и набор периферии.

Продвинутый разработчик может использовать радиомодуль MBee-868-x.x просто как аппаратную платформу для загрузки внутрь собственного приложения. В этом случае не потребуется никакой софт от компании «СМК» и предлагается максимальная свобода доступа к портам микроконтроллера СС430. Можно реализовать любой режим модуляции и радиопротокол. Для написания своей программы используется среда разработки IAR Embedded Workbench Kickstart или Code Composer Studio™ Integrated Development Environment for MSP Microcontrollers. В этом случае в вашем распоряжении имеется процессор c ядром MSP430, Flash-память 32 кбайт, ОЗУ 4 кбайт, мощный контроллер DMA, 6 каналов 12-разрядного АЦП, компаратор, сопроцессор AES-128, модуль CRC-16, два модуля USCI (UART, IrDA, SPI, I²C), 32-битный аппаратный умножитель, таймеры, до 30 линий ввода/вывода. Разводку портов CC430F5137 на выводы модуля можно найти в документации на сайте производителя.

Радиомодуль MBee-868-x.x как удлинитель UART

Рис. 4 Схема внешних подключений для модуля MBee-868-3.0

Рис. 4 Схема внешних подключений для модуля MBee-868-3.0

Самый простой вариант применения радиомодулей MBee-868-x.x – это использование их в качестве беспроводного UART. Этот функционал реализован в прошивке «Serial Extender», которую можно загрузить с сайта производителя www.sysmc.ru. В этом режиме вы реализуете передачу по беспроводному каналу, просто направляя данные на UART-порт вашего микроконтроллера на скорости 9600 бит/c (значение по умолчанию). Все остальные действия радиомодуль MBee выполняет самостоятельно. Схема включения модуля, приведенная на рисунке 4, включает необязательные элементы индикации и служебные кнопки. В простейшем случае для подключения модуля достаточно использовать всего четыре линии – TX, RX, питание и землю. Обмен по радио ведется между двумя модулями, один из которых имеет прошивку «ведущий» (Master RS232), другой – «ведомый» (Slave RS232). Пара модулей с одинаковыми прошивками (Master RS232 — Master RS232 или Slave RS232 — Slave RS232) не смогут связаться друг с другом.

Для работы в паре два модуля должны быть предварительно связаны между собой. Этот процесс выполняется автоматически при первом включении двух модулей с разными прошивками (Master RS232 <-> Slave RS232). Разумеется, в момент связывания модули должны быть в зоне радиовидимости, при этом в один момент времени могут быть включены только два несвязанных модуля. Процесс привязки происходит за пару секунд, если модули принимают сильный сигнал друг от друга. После обмена «приветственными» пакетами (в терминологии SimpliciTI это процедуры Link Join и Link Listen), модули сохраняют настройки для своей «пары» в энергонезависимой памяти. Индикацией успешного связывания служит появление «1» на выводе 35/25 – светодиод LED будет светиться. При дальнейшем включении-выключении питания модули будут автоматически восстанавливать связь друг с другом. Если вам нужно «отвязать» модули, то это можно сделать с помощью кнопки BUTTON1 – ее нужно быстро нажать четыре раза подряд (в течение не более 2 секунд).

Скорость работы UART можно менять в программе SysmcBootloader. При этом следует помнить, что скорость UART никак не влияет на скорость передачи данных по радиоканалу, которая фиксирована и равна 38400 бит/с. Модули с прошивкой “Serial Extender” работают на частоте 868,95 МГц.

При работе в качестве радиоудлинителя UART модули MBee ведут между собой достаточно «умный» диалог. Даже если ваш микроконтроллер не отправляет данные, модули каждые 3 секунды контролируют качество радиолинка, и при пропадании радиосигнала на выводе 35/25 установится уровень «0». По подключенному к этой линии светодиоду можно судить о наличии связи. Если он погас — это означает выключение удаленного модуля или наличие помех в эфире. При обмене полезными данными используется подтверждение доставки пакетов. Если пакет не доставлен (не получено подтверждение), то модуль-отправитель делает заданное количество переповторов. При желании пользователь может отключить эту функцию непосредственно в процессе работы. Даже если модуль не может передать данные по эфиру, например, из-за помех, он продолжает их сохранять в приемном буфере размером в 400 байт, тем самым создавая у внешнего МК иллюзию «прозрачности» канала.

Для проверки качества радиосвязи можно воспользоваться специальной командой «RSSI TEST REQUEST» (команда обязательно должна заканчиваться последовательностью 0x0d 0x0a). Данная команда должна быть отправлена в UART, как и основной поток данных. Строка команды не уходит по эфиру к удаленному узлу. После получения команды модуль отвечает локально – ответ приходит через UART. Выводятся три текстовые строки с параметрами качества радиоканала вида:

  • RSSI TEST ANSWER
  • Uplink RSSI = -50 дБм, LQI = 51
  • Downlink RSSI = -57 дБм, LQI = 51

Данная команда окажется крайне полезной на этапе размещения модулей на реальном объекте. Периодически отправляя эту команду и анализируя получаемые цифры, можно подобрать оптимальное расположение антенны по максимальному уровню RSSI. Чем меньше цифра RSSI по модулю, тем выше уровень принимаемого сигнала, то есть, при RSSI = -72 дБм обеспечивается более надежная связь по сравнению с RSSI = -85 дБм. Параметр LQI показывает, насколько сильны помехи в канале. В общем случае он не зависит от RSSI. Чем меньше значение LQI, тем проще приемнику демодулировать радиоданные.

Полное описание работы модулей в режиме “Serial Extender” можно найти в оригинальной документации производителя. По запросу производитель имеет возможность изменять отдельные параметры прошивки “Serial Extender”, которые недоступны для изменения самим пользователем.

Практический тест

Для практического знакомства с прошивкой Serial Extender два модуля MBee-868-2.0 были подключены к одному и тому же ПК с помощью переходников USB/UART. В качестве переходников использовались платы MB-USBridge v1.1 и MBeeKit USB Board 3.0. Последняя плата формально предназначена для других модулей MBee (на 2,4 ГГц), однако модуль MBee-868-2.0 работал с ней без проблем. На ПК были запущены две программы Terminal. C одного терминала отправлялась длинная строка каждую секунду в режиме автоматического повтора. В обратную сторону шли символы, которые просто набирались на клавиатуре, то есть, в каждом радиопакете уходил лишь один символ. На рисунке 5 приведен скриншот данного эксперимента.

Рис. 5. Работа модулей MBee c прошивкой Serial Extender

Рис. 5. Работа модулей MBee c прошивкой Serial Extender

Для разработчиков, желающих понять «внутреннюю кухню» работы модулей приводится рисунок 6. Здесь можно увидеть служебные пакеты, используемые синхрослова и настройки радио, с помощью которых можно запустить сниффер пакетов. Эта информация может пригодиться для целей отладки системы или поиска проблем на реальном объекте.

Рис. 6. Настройки радио

Рис. 6. Настройки радио

Построение сети «звезда» на базе MBee-S1G

Прошивка ”Serial Extender” позволяет создать радиоканал между двумя модулями по типу «точка-точка». Прошивка является простой в применении и оптимальной для двусторонней передачи любых последовательных данных. Для сбора информации с множества датчиков предусмотрена другая прошивка – “Sensor Network” («Локальная микросеть»), которая позволяет организовать в единую радиосеть до 30 модулей MBee-868-xxxx. Прошивка “Sensor Network” хоть и использует в качестве основы протокол SimpliciTI (Texas Instruments), но является существенно доработанным собственным проприетарным программным продуктом ООО «СМК». Эта прошивка реализует сеть с топологией «звезда», где данные передаются от множества сенсоров к центральному узлу сбора данных. Узлы в сети такого типа часто называют «Координатор» (Coordinator) для центрального узла и «Конечное устройство» (End Device) для периферийных узлов, непосредственно подключенных к датчикам. Термины “Coordinator” и “End Node” используются также в стандартах 802.15.4 и ZigBee, однако эти стандарты не имеют никакого отношения к модулям MBee-868-3.0. В сети «Локальная микросеть» существуют только два типа устройств «Координатор» и «Конечное устройство». Ретрансляция пакетов с помощью роутеров не предусмотрена. Основные параметры сети (идентификатор сети и адреса КУ) устанавливаются до установки модулей на реальном объекте. Эти параметры жестко прописываются в момент загрузки прошивки. В принципе, при наличии доступа к интерфейсу UART сетевые параметры можно изменить и в полевых условиях.

Главный узел (далее «Координатор») реализуется на модуле с прошивкой Coordinator. Узлы сети, подключаемые к счетчикам или датчикам (далее «Конечные устройства», КУ), должны иметь прошивку EndDevice. Названия узлов сети и их прошивок (Coordinator, EndDevice) соответствуют оригинальной документации и сайту производителя. Технические параметры сети приведены в таблице 1.

Таблица 1. Функционал и технические параметры узлов сети «Локальная микросеть»

  Координатор Конечное устройство
Файл прошивки Coordinator EndDevice
Количество на сеть 1 До 30
Функции Прием данных от КУ; сохранение данных от КУ в буферной памяти; передача данных на ПК (УСПД) по интерфейсу RS-485; отправка команд от ПК (УСПД) к КУ Подсчет импульсов; контроль цифровых входов; периодическая отправка данных Координатору; установка цифровых выходов по командам от Координатора; отправка служебной информации (температура и напряжение батареи)
Инициатор радиообмена НЕТ (при необходимости отправки команды КУ Инициатор всегда сначала ждет входящего пакета от КУ, чтобы попасть в окно приема) ДА (по таймеру или по сигналу на входе экстренной сигнализации)
Идентификатор микросети Единый для Координатора и Конечных устройств. Задается вручную при загрузке прошивки. Максимальное количество идентификаторов — 254 (0х01….0x1F).
Сетевой адрес Как правило, равен идентификатору микросети Индивидуальный для каждого КУ. Один байт со значением 0х01…0x1E
Приемник постоянно включен Да Нет
Режим сна Нет Да
Батарейное питание Нет Да
Светодиодная индикация активности приемника и передатчика Да Да
Проводной интерфейс UART (RS-485) Связь с устройством сбора данных (УСПД или ПК) по протоколу MODBUS RTU; обновление прошивки Только обновление прошивки
Радиочастотные параметры
Центральная частота

868,95 МГц

(возможно изменение по запросу)

Скорость передачи данных по эфиру, бит/с 38400
Тип модуляции 2GFSK
Выходная мощность передатчика 10 мВт (заводская установка). Для модулей с усилителем мощности может быть увеличена программно
Скорость передачи данных по эфиру, бит/с 38400
 
Сетевые параметры и формат данных Координатор Конечное устройство
Максимальное число сообщений в буфере отправки в сторону КУ – 30; максимальное число невычитанных по RS-485 сообщений от КУ – 30; количество полезных данных в пакете в сторону КУ – 10 байт; скорость UART (RS-485) по умолчанию – 9600 бит/с; аппаратное управление направлением передачи в линии RS-485 Интервал отправки сообщений – от 1 сек до 194 дней (5 минут по умолчанию); количество полезных данных в пакете в сторону КУ – 10 байт; передаваемые данные: два счетчика импульсов, нажатие системной кнопки, напряжение на входе АЦП, цифровой вход датчика экстренного события; принимаемые данные (команды от Координора): уровни на двух цифровых выходах, период отправки сообщений

Координатор

Координатор выполняет функции сбора информации от всех КУ сети. Он также отправляет им управляющие команды, которые изменяют режим работы КУ или просто изменяют уровни на выходных портах КУ. Координатор не предполагает использования спящего режима, он должен быть включен постоянно. Координатор требует стационарного (сетевого) источника питания. Он имеет внешний интерфейс RS-485, через который можно получать данные на центральный компьютер. Сбор данных от одного или нескольких Координаторов можно производить также через промежуточный узел сбора данных (Шлюз, Концентратор, УСПД) с мощным процессором, Ethernet, Wi-Fi или GSM-модемом. Благодаря интерфейсу RS-485 и протоколу MODBUS RTU c адресным доступом на одну физическую линию можно подключить множество Координаторов, каждый из которых будет обслуживать собственную беспроводную сеть (рисунок 7). Например, при подключении к центральному компьютеру 10 Координаторов (на одной линии RS-485) можно собрать данные с 300 счетчиков.

Рис. 7. Организация сбора данных с нескольких беспроводных сетей

Рис. 7. Организация сбора данных с нескольких беспроводных сетей

Схема подключения внешних линий к модулю, выполняющему в сети функцию Координатора, приведена на рисунке 8.

Рис. 8. Подключение модуля MBee-868-3.0 в качестве Координатора

Рис. 8. Подключение модуля MBee-868-3.0 в качестве Координатора

Несмотря на то, что Координатор — это, по сути, главный узел в сети, он не является инициатором радиообмена. Координатор постоянно слушает эфир и принимает пакеты от конечных устройств в своей сети. Признаком «своего» пакета является идентификатор сети, единый для всех узлов. КУ передают пакеты с заданной пользователем периодичностью. Отправка данных разными КУ в сети не синхронизирована между собой, и пакеты для Координатора приходят в произвольные моменты времени. Именно поэтому невозможно переводить координатор в режим сна для снижения энергопотребления, так как требуется, чтобы приемник на Координаторе был постоянно включен. Если два конечных устройства передают пакеты одновременно, то Координатор не сможет принять их. Это нормальная ситуация в радиосети, где всегда существуют объективные причины для пропуска пакетов. Создать сеть с гарантией 100% доставки каждого пакета просто невозможно. Вероятность совпадения по времени пакетов от КУ возрастает с увеличением количества узлов сети. Длительность передачи одного пакета составляет единицы миллисекунд (менее 10). При отправке данных каждую секунду в сети из 30 КУ наложения пакетов будут происходить с большей вероятностью по сравнению с периодом просыпания в одну минуту.

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

Управляющий микроконтроллер ведет обмен с Координатором с помощью протокола MODBUS RTU по интерфейсу RS-485. Отправляемая команда, в общем случае, включает в себя адрес координатора, код команды, данные для конфигурации КУ и контрольную сумму CRC16.

Для расчета контрольной суммы вручную можно использовать калькулятор http://www.lammertbies.nl/comm/info/crc-calculation.html. Для модулей MBee правильное значение соответствует строке CRC-16 (Modbus) (рисунок 9).

Рис. 9. Интернет-калькулятор для вычисления CRC

Рис. 9. Интернет-калькулятор для вычисления CRC

Всего предусмотрено три команды управления — чтение числа принятых эфирных пакетов в буфере Координатора (S_RCRBL), чтение содержимого всех пакетов из буфера (S_RCRBD) и отправка команды конечному устройству (S_WEDCW). После приема каждой команды Координатор сразу же отправляет управляющему микроконтроллеру ответ, который включает в себя либо подтверждение о том, что команда принята к исполнению, либо запрошенные данные. Логика работы не предусматривает ситуаций, когда Координатор отправляет по RS-485 незапрашиваемые сообщения или ответ на команду приходит асинхронно, то есть, с некоторой непредсказуемой задержкой. Это существенно облегчает управляющему контроллеру взаимодействие с несколькими Координаторами, подключенными к единой физической линии RS-485.

Подробное рассмотрение структуры и всех полей команд выходит за рамки данной статьи, эту информацию можно найти в документации на прошивку “Sensor Network”. Единственное, что нужно отметить – это логику отправки команд Координатору на изменение параметров конечных узлов беспроводной сети. Так как КУ большую часть времени находятся в спящем режиме с отключенным приемником, команда от управляющего контроллера не может быть тут же отправлена Координатором по эфиру. Сначала Координатор помещает команду в буфер команд. Это другой буфер, отдельный от буфера приема эфирных пакетов. Команда для КУ находится в буфере до момента просыпания КУ. При просыпании КУ отправляет Координатору по эфиру данные со своих подключенных датчиков и затем на короткое время включает приемник. Именно в этот момент Координатор отправляет команду конкретному КУ. В системе не предусмотрено подтверждение того, что команда была успешно принята КУ, поэтому для повышения вероятности доставки можно отправлять команду в сторону КУ несколько раз. Однако делать это нужно не чаще периода просыпания КУ, так как в буфере команд Координатора может храниться только одна команда для одного конкретного КУ (определяется адресом КУ в теле команды).

Конечное устройство

Прошивка “Sensor Network” предназначена в основном для сбора данных со счетчиков энергии, имеющих импульсный выход. Таким выходом, как правило, оснащаются счетчики расхода воды и электрической энергии. Число импульсов на таком выходе пропорционально объему потребленных ресурсов – в кубометрах воды или в ватт-часах электроэнергии. Поэтому две линии модуля предназначены для подсчета импульсов. Почему линий именно две? Потому что для учета горячей и холодной воды применяются разные счетчики. Если же подключать счетчик электроэнергии, то один модуль MBee сможет передавать данные об энергопотреблении от двух квартир. Следует помнить, что внутренние счетчики импульсов обнуляются при сбросе или отключении питания. Поэтому замена батарей в КУ приведет к потере ранее накопленного значения о расходе энергии. Это не является большой проблемой, так как главным хранилищем информации является не модуль КУ, а центральный узел сбора данных.

Рис. 10. Подключение модуля MBee-868-3.0 в качестве Конечного Устройства

Рис. 10. Подключение модуля MBee-868-3.0 в качестве Конечного Устройства

Кроме счетных входов CNT1 и CNT2 (рисунок 10), на КУ имеются следующие входы-выходы:

  • Reset – сброс модуля. Подача «0» равносильна возвращению модуля в состояние первого включения после прошивки. Разумеется, прошивка и все сетевые параметры остаются неизменными.
  • Цифровой вход M_SEN предназначен для подключения магнитного сенсора или датчика вскрытия. Подача «0» на этот вход может рассматриваться как обнаружение попытки вмешательства в работу счетчика с помощью сильного магнита или попытку вскрытия опломбированного корпуса. КУ сразу отправляет сообщение Координатору.
  • RF RX, RF TX – активность приемника и передатчика модуля. Можно подключить светодиоды для визуальной индикации процесса радиообмена.
  • BATTERY_SENSOR_ON – вспомогательная линия, которая используется при измерении напряжения питания батареи (вместе с выводом BATTERY_SENSOR).
  • BATTERY_SENSOR – линия входа АЦП. Стандартный вариант использования – измерение напряжения питания батареи (совместно с выходом BATTERY_SENSOR_ON). Использование двух линий позволяет избежать тока утечки батареи по измерительным цепям. Линии BATTERY_SENSOR и BATTERY_SENSOR_ON можно использовать для измерения любого напряжения при соответствующем выборе номиналов резисторов. Главное, чтобы на выводе 30/20 напряжение не превышало 2,5 В.
  • DIR_485 – управление внешней микросхемой-драйвером RS-485. Требуется только в том случае, если загрузка прошивки будет происходить с помощью интерфейса RS-485. Не используется при работе с линиями TX/RX с помощью переходника UART/USB.
  • DIO1 и DIO2 – цифровые выходы, значения которых можно менять дистанционно. Команды на изменения уровней отправляются через Координатор. Изменение уровней происходит только после того, как модуль КУ выйдет из режима сна. Максимальная задержка равна периоду сна, то есть может быть 1 с, 1 мин, 1 ч и так далее, в зависимости от установленного пользователем времени периодического пробуждения модуля. Максимальный ток выхода 1 мА не позволяет подключать напрямую к выходу реле или другую сильноточную нагрузку.
  • LED1 – служебный светодиод. Гаснет на время сна, светится, когда модуль пробуждается. Также отображает вход модуля в режим программирования (мигает).
  • BUTTON1 – служебная кнопка. С ее помощью можно перевести модуль в режим программирования (держать нажатой при сбросе) или вывести модуль из режима сна для отправки сообщения координатору в любой момент времени.

Загрузка прошивки и настройка параметров

Для загрузки прошивок используется программа “SysmcBootloader”. Для работы с программой модуль должен быть переведен в режим настройки. Для этого достаточно держать нажатой кнопку BUTTON1 (подать «0» на линию 36/26) в момент подачи питания или при нажатии на кнопку сброса. Признаком входа в служебный режим будет мигание светодиода, подключённого к выводу 35/25. Затем в интерфейсе программы выбираем правильный порт и жмем на кнопку «Опросить». В правом окне появится тип модуля и текущая прошивка (рисунок 11).

Рис. 11. Программа "SysmcBootloader"

Рис. 11. Программа «SysmcBootloader»

Для загрузки Firmware нужно воспользоваться меню «Файл\Открыть» и выбрать файл новой прошивки (расширение .smcbin), который будет отображаться в левой части окна. Процесс загрузки запускается кнопкой «Загрузить». Кнопка «Загрузить» в течение процесса загрузки меняется на кнопку «Отменить» (рисунок 12).

Рис. 12. Загрузка прошивки

Рис. 12. Загрузка прошивки

В меню «Модуль» находятся параметры, которые можно поменять — скорость последовательного порта, выходная мощность или настройка адреса.

Заключение

Модули MBee-868-x.x c прошивками “Serial Extender” и “Sensor Network” являются законченными функциональными узлами для организации потоковой передачи данных или построения сети сбора данных. Непосредственное подключение к счетчикам расхода энергии и возможность объединения на одной физической линии нескольких Координаторов позволяют в короткие сроки создавать системы АСКУЭ из сотен беспроводных узлов. Предлагаемый по умолчанию функционал может быть легко расширен под конкретный проект – инженеры компании ООО «СМК» готовы модифицировать ПО модулей по техническому заданию заказчика. Работа с модулями MBee исключает необходимость заниматься разработкой высокочастотных устройств. Надежность модулей и зрелость программного обеспечения подтверждены тысячами установок на ответственных объектах.

Литература

  1. Денис Бушунов (ООО «СМК»), Николай Неудобнов (ООО «СМК») «Модули MBee-868 в системах сбора показаний с приборов учета». Новости Электроники №8/2015.
  2. Александр Калачев (г. Барнаул). «Российский Интернет вещей: беспроводные ZigBee-модули диапазона 2,4 ГГц от компании СМК». Новости Электроники №3/2016.
  3. Денис Бушунов (ООО «СМК»), Николай Неудобнов (ООО «СМК»). «Радиомодули MBee от компании «Системы, модули и компоненты (СМК)». Новости Электроники №8/2015.
  4. http://sysmc.ru/.
•••

Наши информационные каналы

О компании Системы, модули и компоненты

Российская компания-разработчик ООО «Системы, модули и компоненты» (CMK) начала свою деятельность в 2007 году и специализируется на разработке маломощных беспроводных модулей для всех нелицензируемых диапазонов. Компания CMK имеет свой собственный штат инженеров, готовых оптимизировать свою продукцию под любое применение конечного изделия, при этом срок разработки не превышает двух – трех недель. Также на сайте производителя загружены и находятся в свободном доступе ряд стандартных прошивок п ...читать далее