Zigbee-модемы ETRX компании Telegesis
Технология Zigbee, предназначенная для построения беспроводных сетей сбора данных и управления, продолжает сегодня свое развитие. В прошедшем году появились первые реальные проекты с ее использованием. Ключевым моментом, обеспечивающим успех разработки в этой области, является наличие библиотек, реализующих стек протоколов ZigBee. Компания Ember предлагает сегодня в своих сетевых библиотеках не только полную реализацию первой версии спецификации Zigbee, но также большое количество дополнительных сервисов, обеспечивающих повышение надежности работы сети и расширение ее функциональных возможностей. Английская компания Telegesis выбрала технологию Ember в качестве основы для построения ZigBee-модемов ETRX. Благодаря встроенному программному обеспечению, эти модемы обеспечивают автоматическое формирование сети, маршрутизацию и ретрансляцию сообщений. На их базе можно быстро построить беспроводную систему сбора данных, управления или охранную систему.
Типы исполнений
Конструктивно модемы ETRX компании Telegesis имеют несколько исполнений (см. рис. 1). Две основные модели — ETRX1 и ETRX1HR — имеют компактные размеры (37,75×20,45 мм), предназначены для поверхностного монтажа и различаются типом используемой антенны. Так модем ETRX1 содержит интегрированную SMD-антенну, а модем ETRX1HR — разъем для подключения внешней антенны. Модемы ETRX1 имеют 8 цифровых линий ввода/вывода, два аналоговых входа и последовательный интерфейс UART.
Модем ETRX1CF выполнен в конструктиве компакт-флэш (рис. 1, в). Его удобно использовать в сочетании с карманным компьютером КПК в качестве центрального узла беспроводной системы сбора данных или управления.
Еще одной привлекательной возможностью для построения центрального узла системы является использование модема ETRX1USB (рис. 1, г), который имеет интерфейс USB для подключения к компьютеру. Однако, появление этой последней модели на рынке ожидается только осенью 2006 года.
Все модемы ETRX1 используют приемопередатчик ZigBee EM2420 фирмы Ember и микроконтроллер Atmega128L фирмы Atmel. Во второй половине 2006 года ожидается появление Zigbee-модема ETRX2, выполненного на базе однокристального решения Ember EM250. Модемы ETRX2 будут совместимы с модемами ETRX1 «снизу вверх» по назначению выводов и системе AT-команд, но их энергопотребление и стоимость снизятся, а радиус действия увеличится. В таблице 1 представлены сравнительные характеристики приемного и передающего трактов кристаллов EM2420 и EM250 компании Ember.
Версии стека компании Ember и совместимость со спецификацией ZigBee
Интеллектуальность модемов ETRX базируется на использовании сетевых библиотек, предоставляемых компанией Ember для реализации стека протоколов ZigBee.
Компания Ember на сегодняшний день предоставляет разработчикам две версии стека беспроводной сети: EmberZNet 2.1_tree (для реализации сетей с топологией типа «дерево») и EmberZNet 2.1_mesh (для реализации сетей с топологией «ячеистая сеть»). Библиотека EmberZNet 2.1_tree соответствует первой версии спецификации ZigBee. На ее базе могут быть построены устройства, реализующие единственный на сегодняшний день стандартный профиль ZigBee для реализации систем управления осветительным оборудованием (HCL — Home Control Lighting). Библиотека EmberZNet 2.1_mesh не соответствует этой спецификации, но содержит ряд преимуществ, расширяющих функциональные возможности сети и повышающих ее надежность. Компания Ember, являющаяся одним из основателей альянса ZigBee, принимает активное участие в разработке спецификации Zigbee и надеется, что идеи, заложенные в библиотеке EmberZNet 2.1 для ячеистой сети, найдут отражение в новой версии спецификации Zigbee.
Удастся ли компании Ember убедить альянс ZigBee в весомости своих предложений — покажет время. Но уже сегодня компания Telegesis для разработки программного обеспечения для своих модемов ETRX в качестве базовой основы выбрала библиотеку EmberZNet 2.1_mesh как наиболее жизнеспособную и обеспечивающую работу устройств с батарейным питанием и мобильных узлов.
Конфигурирование и управление работой модемов ETRX
Управление работой модемов осуществляется при помощи набора конфигурационных S-регистров и системы AT-команд. Конфигурационные регистры доступны по чтению и записи через последовательный проводной канал внешнему локальному процессору, а также через радиоканал удаленному процессору.
При локальном управлении внешний процессор при помощи AT-команд выполняет инициализацию модема, задавая значения конфигурационных S-регистров, и управляет работой модема в рабочем режиме, инициируя выполнение различных операций в беспроводной сети. Такими операциями могут быть формирование сети, присоединение к сети, выход из сети, проверка качества беспроводной связи узла с соседними узлами, передача широковещательных и адресных сообщений, поиск узла с заданным адресом, установка прямого соединения с удаленным узлом, переход в режим пониженного энергопотребления и т. д.
Модемы ETRX могут находиться под полным дистанционным управлением без использования какого-либо локального процессора. Для такого режима разработано несколько сценариев поведения модема. Выбор требуемого сценария удаленный процессор осуществляет так же, как и инициализацию модемов при помощи S-регистров. В число возможных сценариев работы модемов без внешнего процессора входят, например, такие алгоритмы, как «спит — просыпается — передает данные со своих входов — снова спит». Интересным сценарием является установление прямого удаленного соединения двух модемов. В этом случае модемы выходят из режима AT-команд, и начинают эмулировать прямое проводное соединение, т.е. весь поток данных, поступающий на вход последовательного канала одного модема, появляется на выходе последовательного канала удаленного модема и наоборот. Таким образом, координатор сети может последовательно подключаться к различным удаленным интерфейсам RS232 или RS485 и обмениваться данными с удаленными подсистемами, объединенными этими интерфейсами.
Типы узлов в сети
Сеть ZigBee, построенная на базе технологии Ember, может содержать следующие типы узлов: координатор (COO — Coordinator), маршрутизатор (FFD — Full Function Device), конечное устройство (SED — Sleepy End Device) и мобильное конечное устройство (MED — Mobile End Device). Задание типа узла осуществляется в модемах ETRX при помощи программирования конфигурационных S-рeгистров.
Координатор и маршрутизаторы образуют «костяк» сети, они обеспечивают маршрутизацию и ретрансляцию сообщений и поэтому всегда должны находиться в активном режиме. Конечные устройства не участвуют в процессе ретрансляции сообщений и поэтому могут время от времени терять связь со своим родительским узлом. Устройства типа «sleepy end device» теряют связь с сетью из-за перехода в режим пониженного энергопотребления. При этом все сообщения, которые передаются в сети на спящий узел, сохраняются (как в почтовом ящике) в буфере родительского узла. После пробуждения конечный узел считывает свою корреспонденцию. Мобильные конечные узлы теряют связь с родительским узлом по причине выхода из зоны действия родительского узла. Если в течение определенного времени мобильный узел не запрашивает информацию у родительского узла, то последний вычеркивает его из своих таблиц дочерних узлов и не хранит больше сообщения для этого узла. А сам мобильный узел начинает в этом случае поиск нового родителя.
В информационно-измерительных системах часто информация от удаленных модемов должна поступать на единый узел приема и обработки данных. В связи с этим для систем сбора данных, построенных на базе модемов ETRX, вводится еще один специальный тип узла — узел-сток (SINK). Такой узел должен быть в системе только один. Роль узла-стока может выполнять координатор или маршрутизатор. Для назначения узла на роль узла-стока необходимо выполнить соответствующие установки в основном функциональном S-регистре модема ETRX. В системе команд модемов ETRX имеются специальные команды поиска узла-стока и пересылки данных на этот узел.
Формирование беспроводной сети ZigBee
Согласно спецификации Zigbee, образование сети выполняет координатор. Удаленные маршрутизаторы и конечные устройства затем присоединяются к координатору. Принятые в сеть маршрутизаторы получают возможность в свою очередь присоединять к себе дополнительные узлы, осуществляя, таким образом, наращивание сети.
Все, что должен сделать разработчик системы, использующей модемы ETRX — это использовать команду образования сети AT+EN. В ответ на эту команду модем сканирует эфир, выбирает наименее загруженный канал, генерирует случайный PAN ID, проверяет, что сети с таким идентификатором на данном частотном канале еще не существует. Модем, на котором выполняется данная команда, автоматически становится координатором и остается координатором до исполнения команды выхода из сети AT+DASSL. Вместе с тем при помощи регистров S00 и S01 сохраняется возможность задать номер частотного канала и идентификатор сети вручную. Регистр маски частотного канала S00 имеет 16 разрядов по числу частотных каналов ZigBee в диапазоне 2,4 ГГц. Устанавливая соответствующий разряд в «0», программист запрещает сканирование данного канала. Таким образом, можно вручную запретить выбор некоторых, например, наиболее подверженных шумам каналов. Устанавливая в «1» только один разряд регистра S00, программист жестко задает номер канала, на котором координатор образует сеть. Регистр S01 по умолчанию содержит код 0×FFFF, который позволяет координатору при образовании сети генерировать случайный PAN ID. Загружая любой другой код в диапазоне от 0000 до 3FFF в регистр S01, программист жестко назначает требуемый идентификатор сети. Координатор, однако, не выполнит эту установку и перейдет на случайный PAN ID в случае, если определит, что сеть с заданным идентификатором уже существует.
Для подключения к сети существует несколько возможностей. Самый простой способ — это использование команды присоединения к сети AT+JN. В ответ на эту команду модем сканирует незамаскированные в регистре S00 каналы и запрашивает идентификаторы PAN ID от тех сетей, которые разрешают присоединение нового узла. Как только модем находит хотя бы один такой идентификатор, он присоединяется к данной сети. В случае, если существует вероятность, что на данной территории может существовать несколько сетей ZigBee и требуется управлять выбором сети, к которой необходимо осуществлять присоединение, то удобно использовать команды AT+PANSCAN (возвращает список всех сетей, разрешающих присоединение), AT+N (возвращает список параметров сети), AT+JPAN (присоединение к сети с заданным идентификатором PAN ID).
Также полезными могут быть команды, позволяющие управляющему процессору получать информацию о качестве беспроводной связи между узлами (AT+ESCAN, AT+LINKCHECK), о том, какие узлы присутствуют в сети (AT+SN, AT+REMSN) и о том, сколько промежуточных узлов находится между локальным узлом и удаленным адресатом. Эта информация может быть полезна, например, при решении задачи определения местоположения мобильного узла в сети.
Пересылка данных
После того, как сеть образована, узлы имеют возможность пересылать сообщения друг другу.
Сообщения могут быть широковещательными (AT+BCAST), адресными (AT+CCAST) и сообщениями, предназначенными для особого узла-стока данных SINK (AT+SCAST). Управляющий модемом ETRX процессор после посылки сообщения получает подтверждение об успешности или неуспешности выполненной операции. Для широковещательных сообщений полученное подтверждение гарантирует только успешность передачи данных в эфир, но не дает никакой информации о том, было ли сообщение получено адресатами. Подтверждения, получаемые в ответ на адресные сообщения, гарантируют получение сообщения получателем.
При передаче широковещательных сообщений имеется возможность указать максимальное число ретрансляций, ограничив тем самым зону распространения сообщения.
Все отсылаемые адресные сообщения нумеруются и поступающие на них подтверждения также содержат номер. Таким образом, модем, которому требуется послать несколько сообщений, может посылать их одно за другим, не дожидаясь подтверждений, которые он затем получит позже и благодаря наличию номеров сможет идентифицировать. При этом, однако, максимальное количество сообщений, ожидающих подтверждения не должно превышать 6, а максимальное количество адресатов, с которыми модем общается, не дожидаясь подтверждений, не должно превышать трех.
Безопасность данных
Модемы ETRX всегда осуществляют шифрование данных. В зависимости от установок основного функционального регистра S06, выбирается различный режим передачи ключей шифрования. Возможен режим, когда ключ для шифрования данных должен быть предварительно занесен в регистр S03 каждого узла сети. Другой вариант предполагает, что вновь присоединяемый узел может получить этот ключ от родительского узла или от координатора. В последнем случае координатор становится удостоверяющим центром (trust center) сети. В ячеистой сети, координатор имеет право покинуть сеть сразу после ее образования. Так узел-координатор может представлять собой PDA или LAPTOP, используемый для образования сети. Если он также будет сконфигурирован для работы в качестве удостоверяющего центра, то после его отключения никакой новый узел не сможет присоединиться к сети.
Конфигурационные регистры модемов ETRX (S03, S05, S09), которые обеспечивают шифрование передаваемых данных, защищены паролем. Их запись по радиоканалу возможна только в том случае, если удаленному узлу известен этот пароль.
Режимы энергопотребления
Энергопотребление модема ETRX в первую очередь зависит от того, какую роль в беспроводной сети выполняет узел, построенный на базе данного модема. Приемопередатчики координаторов и маршрутизаторов все время должны находиться в активном режиме. Незначительная экономия энергопотребления для этих узлов может осуществляться временным переводом процессорного ядра в один из спящих режимов. При этом усредненный по времени ток потребления при средней загрузке сети не превышает 23 мА.
Энергопотребление модемов ETRX, используемых для построения конечных узлов сети, зависит от выбранного режима пониженного энергопотребления. Всего для модемов ETRX существует четыре таких режима. В таблице 2 представлены усредненные значения токов потребления, измеренные при средней загрузке сети для различных энергосберегающих режимов конечных узлов.
Задание режима энергопотребления осуществляется при помощи конфигурационных регистров. Если модем работает под управлением локального процессора, то используются регистры S29, S2A. В случае, когда модем не имеет локального управляющего процессора, а работает по одному из сценариев, задаваемому регистрами S15-S28, то эти последние регистры и задают режимы энергопотребления, в которые модем переходит во время сна и во время пробуждения.
Отладочный комплект
Для того, чтобы быстро начать работу с модемами ETRX, компания Telegesis предлагает отладочный комплект ETRX1DVK, в который входят три платы с установленными модемами ETRX1 и простая терминальная программа «Telegesis Terminal». Одна из плат комплекта (рис. 2) имеет интерфейс RS232 для присоединения к компьютеру. Эту плату удобно использовать в качестве координатора сети. Две другие платы не имеют ни локального процессора, ни возможности присоединения к компьютеру. Их можно использовать в качестве удаленных узлов, работающих под управлением центрального координатора. На базе такого комплекта можно построить простейшую систему сбора данных за несколько минут.
Заключение
Основным достоинством модемов ETRX компании Telegesis является то, что они позволяют разработать конечное приложение (например, систему сбора данных, систему управления или охранную систему) в сжатые сроки. При использовании модемов ETRX инженер, во-первых, освобождается от необходимости разрабатывать высокочастотную часть узлов сети, а, во-вторых, при использовании AT-команд значительно уменьшается объем работы по созданию программного обеспечения для конечной системы.
Модемы ETRX могут быть также полезны разработчикам, которые в стремлении снизить стоимость своей системы, опираются не на готовые модемы, а на наборы микросхем. В этом случае модемы ETRX можно использовать как готовое отладочное средство, так как они предоставляют разработчику доступ к встроенному процессору. Таким образом, каждый программист, опираясь на сетевые библиотеки Ember, может разработать и загрузить в модемы ETRX свое собственное программное обеспечение.
- Материалы сайта www.telegesis.com /ссылка утрачена/
- Материалы сайта www.efo.ru/doc/Ember/Ember.pl?1005 /ссылка утрачена/
- Кривченко Т.И. Беспроводные сети компании Ember (ZiBee и EmberNet) для систем контроля и сбора данных. Беспроводные технологии N1, 2005.