Особенности построения радиосети Mesh Lite в частотном диапазоне 868 МГц

№ 3’2008
PDF версия
В статье рассматривается беспроводная сетевая топология Mesh Lite, разработанная французской компанией One RF Technology для радиочастотного диапазона 868 МГц. Описываются способы тонкой настройки узлов радиосети.

Российские разработчики радиоэлектронной аппаратуры уже имели возможность познакомиться с достоинствами и недостатками ISM радиочастотного диапазона 868 МГц в ранее опубликованных работах [1, 2, 3]. Кратко напомним, что основные преимущества радиоустройств данного частотного диапазона по сравнению с устройствами диапазона 2,4 ГГц — это повышенная дальность действия, объясняемая известной в радиофизике зависимостью величины затухания радиосигнала от его несущей частоты, и лучшая способность радиосигнала огибать препятствия на пути распространения. Главный недостаток — это низкая скорость обмена данными, реально достигающая нескольких десятков килобит в секунду.

В работах [1, 3] были рассмотрены радиомодули и радиомодемы французской фирмы One RF Technology. Данные устройства представляют особый интерес, поскольку отличаются поддержкой сетевой топологии Mesh Lite, являющейся оригинальной и не имеющей аналогов разработкой фирмы. В работе [3] описана терминология, основные принципы функционирования и примеры использования сетей Mesh Lite. А также рассмотрены вопросы поддержки данной сетевой топологии серийно выпускаемыми радиомодулями и радиомодемами фирмы One RF Technology.

Данная статья, по сути, продолжает и дополняет работу [3]. Поэтому читателю рекомендуется предварительно ознакомиться с ее содержанием.

Mesh Lite — это топология типа кластерное дерево (Claster Tree) с возможностью использования отдельных узлов сети в качестве ретрансляторов сообщений с целью увеличения зоны покрытия сети. Основная идея сети Mesh Lite была позаимствована из протокола сетей ZigBee с учетом отмеченных ранее особенностей работы в диапазоне 868 МГц (низкая скорость и большая дальность связи). К основным достоинствам сетей Mesh Lite можно добавить предельную простоту в настройке и использовании, возможность работы в нескольких разновидностях режима пониженного энергопотребления, а также высокую надежность. К недостаткам можно отнести незащищенность канала связи, поскольку введение в передаваемые сообщения сложного алгоритма шифрования неизбежно привело бы к еще большему снижению скорости обмена данными в сети.

Для разработчиков, желающих в максимально сжатые сроки освоить сетевую топологию Mesh Lite, фирма One RF Technology выпускает специальный демонстрационный набор Mesh Lite Demo Kit, состоящий из пяти плат (рис. 1).

Демонстрационный набор Mesh Lite Demo Kit

Основной частью каждой платы является радиомодуль [3] одного из двух семейств — Tiny One Pro или Tiny One Plus, поддерживающих сетевую топологию Mesh Lite. В наборе имеется одна плата, построенная на базе радиомодуля семейства Tiny One Pro, и 4 платы, в основу которых положены радиомодули семейства Tiny One Plus. Напомним, что основными отличиями данных двух семейств друг от друга являются: максимальная мощность излучения и число частотных каналов. Первое семейство позволяет устанавливать выходную мощность радиосигнала до 500 мВт и обладает одним каналом, второе — до 25 мВт и поддерживает 8 частотных каналов.

Внешний вид

Итак, в наборе Mesh Lite Demo Kit все платы содержат встроенное программное обеспечение, позволяющее им сразу же после включения питания объединиться в сеть и осуществлять обмен данными друг с другом. Плата на основе радиомодуля семейства Tiny One Pro имеет статус координатора сети. Как отмечалось в [3], координатор в сети Mesh Lite может быть только один. Помимо координатора в рассматриваемом наборе имеются два маршрутизатора (роутера), два конечных устройства [3] и снифер, который представляет собой модуль с USB-разъемом и служит для мониторинга сети с помощью ПК и передачи сигналов управления отдельным устройствам этой сети. В отличие от снифера сети ZigBee, данный снифер — это полноценный узел сети со статусом конечного устройства.

Статус конкретного узла сети задается файлом прошивки, загруженной в управляющий микроконтроллер данного узла. Фирма One RF Technology предоставляет большой набор файлов с «прошивками» для устройств сети Mesh Lite. Файлы данного набора можно классифицировать по следующим признакам:

  1. Статус устройства:
    • координатор;
    • маршрутизатор;
    • конечное устройство;
    • снифер.
  2. Семейство, к которому устройство принадлежит:
    • Tiny One Pro;
    • Tiny One Plus.
  3. Тип устройства:
    • Радиомодем — устройство в собственном корпусе, снабженное разъемами для подключения питания и внешних устройств для обмена данными (рис. 2а).
    • Плата — устройство без корпуса, но снабженное всеми необходимыми выводами и разъемами для обеспечения своего функционирования (рис. 2б).

Классификации 1 и 2 тривиальны. Классификация 3 обусловлена тем, что на платах и в радиомодемах используются различные типы преобразователей UART — RS232/485. Соответственно, эта особенность учитывается на уровне программного обеспечения.

При построении сети Mesh Lite прежде всего надо грамотно выбрать элементную базу. Для применения в условиях улицы подойдут радиомодемы в водонепроницаемом корпусе класса IP 67. Внутри помещения целесообразно использовать платы, серийный выпуск которых осуществляет фирма One RF Technology. К тому же платы, в отличие от модемов, снабжены специальным контейнером для батарейки типа «Крона» и выводами для подключения датчиков к аналоговым и цифровым входам/выходам, которые могут быть очень полезны при решении задач дистанционной телеметрии. По заявлениям разработчиков фирмы One RF Technology, каждая плата может автономно функционировать, питаясь от батарейки, до 5 лет при выходе в эфир в среднем 1 раз в 10 минут.

Любой российский разработчик может изготовить собственную плату, поддерживающую сетевую топологию Mesh Lite и наиболее полно отвечающую требованиям определенной задачи. Специально для таких целей фирма One RF Technology отдельно выпускает сравнительно недорогие радиомодули семейств Tiny One Pro и Tiny One Plus [1, 3] и предоставляет техническую документацию, содержащую рекомендации по монтажу и использованию дополнительных внешних компонентов.

В качестве координатора сети Mesh Lite целесообразно использовать радиомодем или плату семейства Tiny One Pro с выходной мощностью 500 мВт. Как отмечалось в [3], координатор сети — самое уязвимое звено. При выходе его из строя сеть утрачивает свою работоспособность. Поэтому рекомендуется содержать координатор по возможности в максимально безопасном и легкодоступном для ремонта месте.

Если сеть Mesh Lite используется для управления и мониторинга протяженных в пространстве объектов, таких как нефте- и газопроводы, маршрутизаторы сети также могут быть представлены устройствами семейства Tiny One Pro. В этом случае получаем разновидность сети Mesh Lite, получившую название BackBone (рис. 3).

Сеть BackBone

В качестве конечных устройств рекомендуется использовать платы или модемы семейства Tiny One Plus с максимальной мощностью излучения 25 мВт.

Определившись с элементной базой, можно приступить к загрузке в выбранные устройства соответствующего программного обеспечения (прошивки). Файлы «прошивок» следует выбирать, руководствуясь приведенной ранее классификацией. Загрузка «прошивки» выполняется через порт RS-232 либо USB, в зависимости от того, какой из них присутствует на перепрограммируемом устройстве. Для перевода устройства в режим смены «прошивки» необходимо при выключенном питании передвинуть переключатель PROG, обязательно имеющийся на любом устройстве независимо от его типа и семейства, в положение ON. Затем надо подключить устройство к ПК через соответствующий разъем и включить питание. Загрузка «прошивки» осуществляется с помощью специальной утилиты TinyTools.exe, запускаемой на ПК. В диалоговом окне данной утилиты следует предварительно установить флажок напротив пункта Serial. Это значит, что «прошивка» будет выполняться через COM-порт. Дальнейшие действия по загрузке «прошивки» тривиальны.

Установка флажка напротив пункта Radio активирует возможность смены прошивки устройства по радиоканалу. Эта возможность упомянута также в [3] и будет более подробно рассмотрена нами в одной из следующих работ.

По завершению процесса смены «прошивки» нужно выключить питание и передвинуть переключатель PROG в положение OFF. Теперь следует грамотно сконфигурировать перепрограммированное устройство. Для этого снова включаем питание устройства и в течение следующих нескольких секунд переводим переключатель PROG в положение ON.

Для настройки параметров будущего узла сети Mesh Lite удобно воспользоваться программой MeshManager.exe (рис. 4), с возможностями которой более подробно можно познакомиться в [4].

Рабочее окно программы MeshManager

С помощью кнопки «Открыть COM-порт» в рабочем окне программы подключаемся к устройству, которое мы собираемся конфигурировать. Далее, после нажатия на кнопку «Конфигурирование» на экране появляется окно Configuration Wizard (рис. 5).

Окно Configuration wizard

Прежде чем начать изменять параметры, отображенные в окне Configuration Wizard, рекомендуется нажать кнопку Load configuration from a radio module и получить текущие настройки конфигурируемого устройства.

Секция Module Type предназначена для задания статуса устройства. Напомним, что статус устройства задается типом «прошивки», и, несмотря на то, что все три пункта данной секции доступны для редактирования, изменить статус устройства таким способом не получится. При попытке загрузить в устройство параметры с неправильно заданным статусом, программа выдаст сообщение об ошибке.

Следующая секция — Идентификаторы (Identifiers) — позволяет задать набор необходимых для работы конфигурируемого устройства идентификаторов:

  • Идентификатор сети (Net ID). Допустимая длина — не более одного символа (байта). У всех устройств, объединенных в сеть, этот параметр должен быть одинаковым.
  • Идентификатор устройства (Module ID). Он может состоять из двух однобайтовых символов (поля LSB и MSB). Идентификатор устройства должен быть уникальным в пределах всей сети.
  • Получатель по умолчанию (Default Recipient). Тут указывается уникальный идентификатор устройства, которому будут передаваться данные в случае отсутствия инкапсуляции, то есть когда в передаваемом пакете данных отсутствует адрес получателя и прочая служебная информация [3].

Секция Временные параметры (Timing) состоит из нескольких разделов и актуальна только для устройств со статусом координатора или маршрутизатора.

Период сигнала маяка (Network Period)

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

Базовое время (Base Time)

В этом разделе можно выбрать значение базового времени, относительно которого будут вычисляться параметры временного окна для синхронного обмена данными между узлами сети Mesh Lite.

Длительность рабочего окна (Super Frame Duration, или S. F. Duration)

В этом поле задается коэффициент, который умножается на параметр Base Time. Таким образом можно определить длительность рабочего окна, в рамках которого устройства более низкого уровня иерархии, подчиненные данному устройству, смогут осуществлять синхронный обмен данными.

Положение рабочего окна (Position)

В этом поле задается очередность следования рабочего окна данного устройства относительно рабочих окон соседних устройств сети. Если положение рабочего окна не определено (введен 0), то оно будет автоматически задано координатором сети.

Секция Association позволяет выбрать способ регистрации в сети конфигурируемого устройства:

Тип (Type)

В этом разделе пользователь может задать алгоритм поиска главенствующего узла (родителя) для подключения к нему при входе в сеть. Auto+Historic означает, что данное устройство прежде всего будет пытаться подключиться к тому маршрутизатору, к которому оно было подключено при предыдущем входе в сеть. Если выбран пункт Auto, то поиск родителя будет проходить автоматически, исходя из критериев, описанных в [3, 5]. Если выбрать Fast, то подключение к сети будет происходить максимально быстро по первому принятому сигналу маяка. Пункт Manual заставит данное устройство подключаться только к узлу сети, уникальный идентификатор которого указан в разделе Parent ID (поля LSB и MSB).

Критерий (Criteria)

Здесь задается критерий, согласно которому конфигурируемое устройство будет вести поиск своего родителя для подключения к нему. При выбранном пункте High level поиск начнется с самого верхнего уровня иерархии сети, то есть прежде всего будет произведена попытка подключиться к координатору. При неудаче на роль родителя будет рассматриваться устройство более низкого уровня иерархии. И так далее. Критерий Deep, наоборот, подразумевает начало поиска родителя с самого нижнего уровня сетевой иерархии.

Подтверждение регистрации в сети (Asso Notification)

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

Автовосстановление (Auto Repair)

Установка флажка в этом пункте позволит конфигурируемому устройству инициировать автоматический поиск нового родителя при потере связи со старым.

Количество потерянных сигналов маяка (Max Failed Beacon). После того как установленное в данном поле количество сигналов маяка не будет принято, включится процедура автоматического восстановления сети (Auto Repair).

Идентификатор родителя (Parent ID)

Эти два поля (LSB и MSB) имеет смысл заполнять только в том случае, когда в разделе Type секции Association выбран пункт Manual. Тогда конфигурируемое устройство при входе в сеть будет подключаться только к родителю, уникальный идентификатор которого здесь указан.

Секция Управление буфером памяти (Payload) задает распределение встроенного в устройство буфера памяти. Данная секция доступна для редактирования, только если конфигурируемое устройство является координатором. Устройства более низкого статуса будут сконфигурированы в соответствии с настройками своего координатора автоматически. В зависимости от конкретного приложения пользователя встроенный буфер памяти может быть разбит на множество коротких или на небольшое число длинных сегментов. Все зависит от того, сколько пакетов данных и какой длины должны будут передаваться через узел сети единовременно (за время прохождения рабочего окна Super Frame). В данной секции можно выбрать три варианта разбиения встроенного буфера памяти: 18×14, 12×46 или 6×110 байт.

Секция Контроль потока (Flow Control) позволяет задать уровень заполнения встроенного буфера памяти, при котором сигнал RTS порта COM будет переведен в верхнее состояние. Возможно всего два варианта: заполнение буфера наполовину (Half Buffer) и заполнение буфера полностью (Full Buffer). Встроенный буфер памяти используется для буферизации входящих и исходящих данных. Соответственно в первом случае (Half Buffer) одна половина буфера будет предназначена для хранения входящих, а другая — для исходящих данных. Во втором случае (Full Buffer) буфер будет заниматься входящими и исходящими данными поочередно. Во время эксплуатации сети Mesh Lite следует помнить, что данные, не поместившиеся в буфер по причине его переполнения, будут утеряны.

Секция LBT Mode, или Listen Before Talk Mode. Для повышения надежности передачи сообщений можно включить режим LBT (пункт High Reliability). При этом скорость передачи сообщения может снизиться, особенно в больших сетях с интенсивным трафиком. Если же сеть небольшая или в сети задействован один из режимов пониженного энергопотребления, то вероятность возникновения конфликтных ситуаций между узлами сети низка и режим LBT можно отключить (пункт High Speed).

Секция Пониженное энергопотребление (Low Power). В этой секции можно выбрать один из двух режимов пониженного энергопотребления сети Mesh Lite: с активным координатором (пункт Children Side) или со спящим координатором (пункт Total). Более подробно об этих двух режимах можно прочитать в [3, 5]. Пункт Disable соответствует отключению всех режимов пониженного энергопотребления. Дополнительно, в поле Wake Up Every: x beacon (s) задается периодичность выхода конфигурируемого устройства из режима пониженного энергопотребления. В качестве единицы времени x выбран период прохождения сигнала маяка (Network Period).

Секция Телеметрия (Telemetry) содержит конфигурацию цифровых и аналоговых входов/выходов конфигурируемого устройства. Для каждого входа/выхода (I/O N) номер N можно задать направление работы: вход (In) или выход (Out), а также разрешить или запретить генерацию прерывания при поступлении данных на этот вход/выход. Прерывание может быть разрешено, только если вход/выход сконфигурирован как вход (In). Прерывание заставляет устройство сразу же при поступлении данных на соответствующий вход отправить их узлу, уникальный идентификатор которого прописан в полях LSB и MSB раздела Default Recipient.

Примечания.

  1. Только I/O1, I/O3 и I/O4 могут быть аналоговыми входами.
  2. Прерывание можно разрешить только для I/O2, I/O5 и I/O6.

В нижнем правом углу окна Configuration Wizard автоматически формируется таблица со списком конфигурационных регистров и их значений, выставленных в соответствии с заданными пользователем настройками.

Описанный способ конфигурирования узла сети Mesh Lite нагляден, но он не является единственно возможным. Дело в том, что если узел сети находится в режиме конфигурирования (переключатель PROG в положении ON), то любые данные, передаваемые ему через COM-порт, будут расцениваться как конфигурационные команды. Чтобы грамотно выполнить настройку узла сети, не прибегая к помощи программы Mesh Manager, нужно знать адреса и назначение конфигурационных регистров, а также специальный набор команд, с помощью которых можно этими регистрами управлять. Описание конфигурационных регистров приведено в таблице 1.

Таблица 1. Описание конфигурационных регистров
Описание конфигурационных регистров

Команды управления конфигурационными регистрами имеют формат AT-команд, описанный в [3]. Следует обратить особое внимание на то, что все команды должны вводиться единой строкой, а не набираться по отдельным символам. Для этого удобно, например, воспользоваться командами Copy/Paste ОС Windows. В таблице 2 приведен полный список команд для доступа и редактирования конфигурационных регистров.

Таблица 2. Список команд
Список команд

После завершения настройки узла сети необходимо отключить его питание и перевести переключатель PROG в положение OFF. После включения питания узел автоматически начнет поиск сети и зарегистрируется в ней.

Рассмотрим форматы пакетов данных в сетях Mesh Lite. Любой передаваемый пакет данных в общем виде может быть представлен следующим образом:

Поле «Тип данных» занимает 1 байт и может быть одним из следующих:

  1. Data (0x65). Обычные данные.
  2. Telemetry (0x68). Запрос на проверку состояния аналоговых и цифровых входов/выходов.
  3. Ping (0x6A). Запрос на проверку связи.
  4. Hayes (0x6D). Конфигурационная AT-команда.

Поле «Получатель» занимает 2 байта и состоит из LSB и MSB уникального идентификатора узла сети, которому адресуется сообщение. Поле «Содержание» представляет собой непосредственно передаваемые данные или команды.

Принимаемый пакет данных выглядит так:

Поле «Тип данных» может быть одним из следующих:

  1. Data (0x65). Обычные данные.
  2. Telemetry (0x69). Состояние аналоговых и цифровых входов/выходов.
  3. Pong (0x6B). Ответ на запрос проверки связи.
  4. Hayes (0x6E). Ответ устройства на AT-команду.

Поле «Отправитель» состоит из двух байтов и представляет собой LSB и MSB уникального идентификатора отправителя сообщения. Поле «Содержание» состоит из полезных данных. Максимальная длина поля «Содержание» в передаваемом и принимаемом сообщениях определяется конфигурацией встроенного в устройство буфера памяти (регистр Payload, адрес 330).

Терминальная часть программы MeshManager содержит все необходимые средства, чтобы наглядно для пользователя осуществлять обмен данными между узлами сети (раздел «Терминал» на рис. 4). В нижней части терминала программы MeshManager можно задать тип отправляемых данных (поле Type), адрес получателя (поле Recipient) и непосредственно содержательную часть передаваемого сообщения (поле Data). Отправка сообщения происходит при нажатии на кнопку Send. В большом черном окне с заголовком Terminal отображаются все принятые и отправленные пакеты в описанных ранее форматах.

Если подключенное к ПК устройство является снифером, то с помощью программы MeshManager можно отслеживать состав иерархии сети. Для этого достаточно нажать кнопку «Обновить информацию о сети» (рис. 4). Сразу после этого произойдет опрос всех устройств сети, ход выполнения которого будет отображаться в окне Terminal, и в окне «Индикатор состава сети» (Mesh Network Tree View) будет показана полная иерархия текущей сети.

Рассмотрим простой пример управления сетью. Если пользователь внес в сеть какие-либо изменения и желает заново произвести процесс образования сети, то надо с помощью снифера из программы MeshManager отправить координатору сети (поле Recipient = COORD) конфигурационную команду (поле Type = HAYES) ATC (поле Data = ATC). Эта команда заставит координатор очистить список своих подчиненных устройств. При успешном выполнении данной команды должен быть получен ответ OK. После этого следует перезагрузить координатор аппаратно простым выключением питания либо с помощью команды ATO. Через несколько секунд процесс регистрации устройств в сети завершится и, после нажатия на кнопку «Обновить информацию о сети», в окне «Индикатор состава сети» (Mesh Network Tree View) отобразится измененный состав иерархии сети.

На этом пока остановим рассмотрение возможностей сетевой топологии Mesh Lite и подведем итог. На основе изложенного материала можно сделать следующие выводы:

  1. Сети Mesh Lite — это значительно упрощенные аналоги сетей ZigBee для радиочастотного диапазона 2,4 ГГц. Из ZigBee позаимствована терминология, принципы построения и функционирования сети. Главная особенность сетевой топологии Mesh Lite в данном контексте — то, что координатор и маршрутизаторы (роутеры) сети могут находиться в спящем режиме.
  2. Сеть обладает минимумом настроек, но, тем не менее, может быть гибко адаптирована к широкому спектру задач.
  3. Несмотря на то, что сети Mesh Lite обладают способностью к автоматической настройке и восстановлению, при задании параметров каждого узла сети следует проявлять внимательность. Сеть не в состоянии проверить правильность ввода всех параметров. Некоторые некорректно заданные параметры могут вступать в противоречия друг с другом, что приведет к нарушению работоспособности сети. Например, период сигнала маяка координатора (Network Period) должен быть больше или равен сумме длительностей рабочих окон (Super Frame Duration) всех маршрутизаторов. Выполнение этого условия сеть не контролирует, поэтому оно остается на совести инженера, устанавливающего сеть.
Литература
  1. Кривченко Т. И. Радиомодули и радиомодемы компании One RF для диапазонов 433 и 868 МГц // Беспроводные технологии. 2007. № 2.
  2. Аникин А. П. Приемопередатчики PAN 2355 для частотного диапазона 868 МГц // Беспроводные технологии. 2007. № 4.
  3. Аникин А. П. Радиомодемы компании One RF Technology для диапазонов 434/868 МГц: основные режимы работы // Беспроводные технологии. 2008. № 1.
  4. Manual Mesh Manager v.1.2. Data sheet.
  5. Manual Mesh Lite v.1.3. Data sheet.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *