Хенрик КИРКЕБИ (Henrik KIRKEBY) Мортен БРААТЕН (Morten BRAATHEN) Перевод: Максим ШАТУНОВ, Геннадий ШТРАПЕНИН, к. ф.-м. н.
Интеграция технологии ZigBee в электронные устройства
в свете решений Texas Instruments
Большинство современных электронных устройств содержит системы управления на микроконтроллерах (МК), и в ряде случаев возникает необходимость организации беспроводной связи составных частей или блоков устройства по принципу сети. До последнего времени разработчики радиоаппаратуры не располагали универсальным стандартом беспроводной связи маломощных малогабаритных микроконтроллерных устройств, в равной степени подходящим для промышленных, научных, бытовых и прочих прикладных систем управления и контроля.
Введение
Широко распространенные стандарты Bluetooth/IEEE 802.15.1 и WiFi/IEEE 802.11 не всегда удовлетворяют специфическим требованиям беспроводных систем, поскольку узлы сетей для них обычно не требуют больших скоростей передачи данных, но должны иметь низкую себестоимость и возможность длительно (годами) работать от малогабаритных и маломощных источников питания. Кроме того, сети для прикладных систем обязаны нормально функционировать при сравнительно больших расстояниях между сетевыми устройствами, иметь большое адресное пространство, системы адаптивной маршрутизации и другие возможности самостоятельного восстановления работоспособности сети.
Ранее беспроводные сети прикладных систем строились с использованием специализированных протоколов для маломощных радиотрансиверов общего применения. В настоящее время оптимальным решением для подобных задач является технология, базирующаяся на стандарте ZigBee/IEEE 802.15.4 и включающая все элементы беспроводной сети с встроенными функциями безопасности. Как и другие подобные технологии, стандарт ZigBee охватывает физический уровень (радио) PHY и доступ к среде передачи данных (medium access control — MAC). Отметим, что различные электронные устройства, в которых применяются проводные и инфракрасные каналы связи, а также собственные протоколы для радиоканалов, могут с успехом использовать технологию ZigBee/IEEE 802.15.4, поскольку ZigBee по сути является универсальным средством связи между оборудованием различных физических принципов действия и производителей. При этом примене-
ние ZigBee/IEEE 802.15.4 позволяет существенно уменьшить время разработки и развертывания аппаратуры за счет готового к использованию программного обеспечения (стека) и различных инструментов анализа сети. Последнее позволяет сконцентрироваться непосредственно на разработке самого устройства и в то же время повышает его коммерческий потенциал благодаря возможностям достижения быстрой связи и опознавания данного устройства оборудованием сторонних производителей. Все это делает целесообразным перевод не-ZigBee устройств на технологию ZigBee и активное применение данной технологии в новых разработках.
Технология ZigBee и ее основные преимущества при использовании во встраиваемых беспроводных сетях
Стандарт IEEE 802.15.4 поддерживает несколько радиодиапазонов ISM, однако нели-цензируемым во всем мире является только диапазон 2.4 ГГц. Для производителей техники это может рассматриваться как преимущество, поскольку позволяет снять ряд организационных вопросов, однако из-за того, что в диапазоне 2,4 ГГц функционирует огромное количество аппаратуры, работающей и в других стандартах, возникает проблема бесперебойной совместной работы множества различных устройств.
Стандарты IEEE 802.15.4 и ZigBee позволяют решить эту проблему путем использования PHY- и MAC-уровней стека ZigBee, как показано на рис. 1, а также некоторыми другими способами.
Самый низкий уровень PHY (радио) использует квадратурную модуляцию со сдвигом фазы (Quadrature phase-shift keying —
QPSK) с прямым распределением в спектре (Direct sequence spread-spectrum — DSSS). QPSK и DSSS хорошо известны как надежные технические методы, обеспечивающие высокую помехоустойчивость и очень малые потери данных в пакетах. Эти методы находят применение и во многих других приложениях от Wi-Fi/IEEE 802.11b до спутниковых систем, например, GPS, а также в цифровом телевизионном вещании.
На уровне MAC имеется специальная схема предотвращения коллизий (CSMA/CA), которая проводит проверку занятости канала перед первым выходом узла сети на передачу. Эта проверка осуществляется с помощью аппаратного обеспечения IEEE 802.15.4 — индикатора уровня принимаемого сигнала (RSSI). Только при условии, что канал свободен, узел сети инициирует передачу. Во всех других случаях передатчик будет предпринимать новые попытки связи через некоторые интервалы времени, причем длительность этих интервалов изменяется по случайному закону,
£ Л
Рис. 1. Структура ZigBee-стека
Путь рассылки сообщения о поиске маршрута
Ассоциация
'О'
0Ье9
PAN-координатор Маршрутизатор ^ у^рЫЗсти)
Рис. 2. Схема построения взаимосвязи между узлами сети и поиска маршрута
и, поскольку все узлы сети работают согласно данному алгоритму, взаимное помеховое влияние узлов друг на друга существенно снижается. В дополнение к RSSI функционирует индикатор качества соединения (Link quality indicator — LQI), который может использоваться для определения факта нарастания ошибок в принятых пакетах данных в результате ухудшения качества связи. LQI работает на базе пакетного контроля передачи, обеспечивая протоколам более высокого уровня информацию о состоянии каналов связи, по которым успешно передавалась пакетная информация.
Выше IEEE 802.15.4 MAC располагается протокол ZigBee, который также использует несколько стратегий снижения взаимного влияния устройств друг на друга. Когда запускается узел ZigBee, способный стать координатором сети (PAN), он проводит сканирование всех каналов и устанавливает тот канал, на котором была обнаружена наименьшая суммарная активность. Последующее функционирование ZigBee основывается на подтверждениях передачи пакетных данных, повторных передачах данных и системе адаптивной маршрутизации. Система адаптивной маршрутизации может обеспечивать альтернативные пути прохождения пакетов данных при наличии в действующей сети временно или постоянно отключенных (неисправных) узлов. Для поиска альтернативных путей прохождения пакета через сеть протокол ZigBee применяет алгоритм поиска маршрута, известный как вектор определения дистанции по требованию (On-demand distance vector — AODV). Наличие AODV делает систему гибкой, обеспечивая связь в случае повреждения узла сети или резкого ухудшения качества связи какого-либо ее участка. При обнаружении нескольких альтернативных путей связи с нужным узлом сети маршрутизатор ZigBee использует данные нескольких индикаторов, включая историю LQI для выбора оптимального пути прохождения пакета с наименьшей вероятностью повреждения данных.
Возможность маршрутизации ZigBee служит также и для другой важной цели — увеличения зоны покрытия. Типовая дальность связи внутри помещений для трансивера IEEE 802.15.4, примером которого может служить рассматриваемый далее CC2420, находится в диапазоне от 10 до 75 метров в зависимости от условий окружающей среды. Достижимая дальность связи существенно зависит от выходной мощности передатчика, наличия препятствий в среде передачи, например, железобетонных стен, и интерференционных помех от других устройств. Все указанные факторы могут существенно различаться внутри сети, например, в отдельных сегментах сети узлы могут иметь ограниченную выходную мощность, узлы другого сегмента находятся рядом с источниками интерференционных помех, мобильные узлы сети испытывают в некоторые моменты времени различные неблагоприят-
ные воздействия и т. п. Адаптивная маршрутизация позволяет сетевой архитектуре постоянно изменяться: осуществлять переназначение узлов сети сегментам в режиме реального времени и быстро подключать новое оборудование. Таким образом удается установить больше оптимальных путей между физически близко расположенными узлами сети, что улучшает условия передачи данных, уменьшает количество ретрансляций и обеспечивает снижение потребляемой мощности. И поскольку в результате работы протокола ZigBee формируется новая смешанная топология сети, наблюдается значительное увеличение зоны покрытия сетевой инфраструктуры по сравнению с простой топологией «звезда», в которой маршрутизация пакетов данных проводится через единственный центральный разветвитель (Hub).
На рис. 2 схематично показан алгоритм поиска маршрута. В начальный момент работы ассоциированные в сеть узлы формируют древовидную топологию, в которой координатор PAN является маршрутизатором с адресом 0000. Благодаря древовидной структуре узлы сети способны сами определять, где находится устройство с требуемым адресом путем отправки пакетов данных вверх и вниз по структуре дерева сети (таким образом происходит процесс древовидной маршрутизации ZigBee). Например, если узел 0007 намерен послать пакет данных физически близко расположенному к нему узлу 008e, как показано на рис. 2, то единственным известным на момент начальной инициализации путем будет путь через координатор PAN (то есть через три дополнительных узла). Однако путем отправки сообщения о поиске маршрута узел 0007 получает ответ о прямом маршруте от узла 008e, который находится в диапазоне рассылки сообщения о поиске маршрута, после чего между узлами 0007 и 008e устанавливается прямое соединение. При ис-
пользовании для поиска альтернативного прямого маршрута от узла 0007 к узлу 008e в сети генерируется меньше технологического трафика, что напрямую ведет к снижению энергопотребления всей сети в целом. Возможность поиска маршрута также позволяет протоколу ZigBee обеспечивать нечувствительность работы сети к неполадкам ее отдельных узлов. Например, если бы узел 008d был отключен, и система древовидной маршрутизации работала бы только на изменение адресов компонентов сети, то в этом случае узлы 008e, 008f и 0091 также были бы выключены из сети.
Обзор решений ZigBee/IEEE 802.15.4 от Texas Instruments
Как уже было отмечено выше, стандарты ZigBee и IEEE 802.15.4 предлагают решение, которое является ответом на различные и разносторонние требования современных разработчиков бытовых, промышленных и коммерческих приложений, которые используют для коммуникаций беспроводную связь. Тем не менее для эффективного внедрения технологии ZigBee разработчик должен обратить внимание на ряд важных вопросов.
Для успешной разработки системной архитектуры необходимо установить тесную связь между трансивером, совместимым с IEEE 802.15.4, микроконтроллером, стеком ZigBee и программным обеспечением пользователя. Традиционная аппаратная платформа для измерительных сетей содержит две микросхемы — микроконтроллер и РЧ-тран-сивер. Необходимыми дополнительными компонентами являются датчик — измеритель мощности, антенна и источник питания. Для увеличения дальности связи может быть использован дополнительный усилитель мощности РЧ. Тщательный отбор этих эле-
Стек Zig Bee
J С
Альтернативы аппаратных платформ
©
©
TMS470 (ARM 7)
}
©
Г" Типы узлов ZigBee J
Оконечные устройства ZigBee Простые датчики, выключатели, приводы и т. д. О О О о о
Сложные системы обработки данных или системы удаленного упр. медийным оборудованием о о о о о
Маршрутизаторы ZigBee Маршрутизация пакетов сети о о о о о
Координаторы ZigBee Установка и управление сетью о о о о о
Сетевые мосты ZigBee Связь между ZigBee/IEEE 802.15.4 и другими ^ сетевыми стеками (напр., TCP/IP, Bluetooth и т. д.) о о о о о
Г Общая стоимость узла Низкая Высокая
/~\п /~\ Не достаточно/слишком много ^—у ресурсов в некоторых случаях /~\Недостаточно/слишком много ресурсов в большинстве случаев
Рис. 3. Сравнение различных вариантов построения аппаратных платформ узлов сети ZigBee
Таблица. Типовое потребление тока различных вариантов оконечных устройств ZigBee при относительном уровне
излучаемой мощности в 0 дБм. В оценку заложено потребление МК и трансивера при минимальном времени, проведенном ими в активном режиме. Потребление энергии датчиком в оценке не участвует
Режим CC2430 (32 МГц) MSP430 (8 МГц) и CC2420 AVR (8 МГц) и CC2420
МК и трансивер в дежурном режиме, мкА 0,6 0,1 0,4
Дежурный режим, при включенном осцилляторе 32 кГц, мкА 0,9 1,6 9,0
МК в активном состоянии на полной скорости, трансивер в дежурном режиме, мА 7,0 4,0 8,0
Узел — оконечное устройство, время опроса 1с, мкА 271 238 281
Узел — оконечное устройство, время опроса 60 с, мкА 5,1 4,0 5,1
ментов является необходимым условием успешной работы аппаратной платформы ZigBee. Для снижения стоимости и занимаемого на печатной плате места самым выгодным вариантом является объединение трансивера и микроконтроллера в однокристальную систему.
Два подхода к выбору альтернативных аппаратных платформ проиллюстрированы на рис. 3 в колонках 1 и 2. Как ив любом встраиваемом приложении, выбор микроконтроллера является очень ответственным решением, поскольку вместе с надежной сетевой технологией, обеспечиваемой ZigBee/IEEE 802.15.4, появляется возможность существенно сократить время разработки, снизить количество компонентов, потребляемую мощность и латентность системы. Решение на двух интегральных микросхемах (ИМС) позволяет разработчику встраиваемых систем реализовать собственные предпочтения и использовать предыдущий опыт работы с микроконтрол-
лерами. Семейство сверхмалопотребляющих МК Texas Instruments (TI) MSP430 может с успехом применяться в приложениях ZigBee, поскольку обширный модельный ряд семейства MSP430 перекрывает большинство требований самых различных приложений благодаря широкому диапазону доступных серий этих МК с разными объемами памяти программ и данных, количеством линий ввода/вывода и встроенной в кристалл мощной цифро-аналоговой периферии. Кроме того, встроенные в МК периферийные модули существенно облегчают подключение датчиков, а готовое к использованию программное обеспечение значительно ускоряет процесс разработки. Великолепным решением для сверх-малопотребляющего конечного устройства Zigbee является пара ИМС MSP430 и CC2420. В таблице приведены некоторые типовые значения потребляемого тока для разных вариантов подключения ИМС CC2420 и однокристальной системы СС2430 на ядре 8051.
Однокристальная система CC2430 содержит микроконтроллерное ядро 8051, совместимый с IEEE 802.15.4 радиотрансивер и другие периферийные устройства. Применение CC2430 позволяет еще больше снизить стоимость и размеры узла сети по сравнению с решениями на других микроконтроллерах и однофункциональных микросхемах. Сеть также может быть дополнена специальным механизмом для определения местоположения узла.
Аппаратная платформа 3 (рис. 3) использует CC2430 в качестве контроллера сетевых протоколов, который обменивается данными с контроллером приложения посредством интерфейса RPC (Remote Procedure Call) через шину SPI или другой последовательный интерфейс. Несмотря на то, что такое решение увеличивает стоимость системы, оно позволяет выделить большинство ресурсов микроконтроллера приложения для выполнения задач самого приложения, оставив для внешних коммуникаций только последовательный интерфейс. Для корректного исполнения сетевых операций стек ZigBee предъявляет к микроконтроллеру определенные требования: для некоторых приложений, использующих аппаратные платформы 1 и 2, необходимо очень тщательное планирование совместного выполнения задач непосредственно самого приложения с обязательным учетом затрат времени на обработку сетевых операций ZigBee. Для современных приложений более привлекательной является аппаратная платформа 3. Хотелось бы отметить, что платформы 1 и 3 могут использоваться для создания узлов сети с различными требованиями в рамках одного сертификата ZigBee.
Аппаратные платформы 4 и 5 могут представлять интерес для таких приложений, как управление и мониторинг промышленного оборудования, предназначенного для эксплуатации в жестких условиях внешней среды, контроль состояния пациента в медицинских учреждениях, удаленное управление мультимедийными устройствами и т. п. Связь приложения с системой CC2430, используемой как контроллер протокола ZigBee, по интер-
фейсу RPC через шину SPI позволяет создавать устройства небольшого размера, а также позволяет выбрать оптимальный процессор для приложения из линейки продуктов Texas Instruments. По протоколу Zigbee можно подключать, например, многие современные системы промышленного контроля и управления (высокоточные контроллеры электродвигателей, клапанов и т. п.).
Снижению времени разработки и подготовки реализации готового продукта способствует доступность стандартных решений на уровне печатных плат, требующих минимальной доводки согласно условиям конкретного пользователя. Необходимо уделить особое внимание согласованию антенных цепей и их расположению на печатной плате (впрочем, это касается и любых других радиочастотных устройств). Стандартные решения, предлагаемые Texas Instruments, протестированы на соответствие заявленным техническим характеристикам и требованиям специальных норм и стандартов. Для облегчения перехода от прототипов к пилотным образцам разработчикам, не имеющим большого опыта проектирования радиочастотной аппаратуры, TI предоставляет готовые к использованию модули, для снижения стоимости аппаратной части выполненные по мезонинной технологии (плата над платой) со встроенной печатной антенной. Отметим, что применение печатной антенны с согласующим трансформатором позволяет уменьшить площадь платы более чем на 50%. Пример готового решения ZigBee с ИМС CC2420 Texas Instruments и внешним дополнительным усилителем мощности РЧ показан на рис. 4.
Программное обеспечение
Первым шагом в интегрировании ZigBee в конечные устройства является идентификация аппаратной платформы узла беспроводной сети. Следующей задачей является внедрение на выбранную платформу прикладного программного обеспечения совместно со стеком ZigBee (рис. 5). Подробно описанный интерфейс прикладного программирования позволяет без проблем осуществлять коммуникации между специфическими приложениями и стеком. Для эффективного переноса программного кода какого-либо приложения на специфический стек ZigBee опытные программисты встраиваемых приложений могут использовать хорошо известные программные интерфейсы.
Для более полного понимания особенностей, предлагаемых ZigBee, и быстрого приобретения необходимого опыта программирования Texas Instruments предлагает ZigBee Z-стек к различным типовым приложениям и шаблоны программного кода. Это позволяет сосредоточиться на прикладном программном обеспечении, а не на общих сете-
Приложение
ZigBee Z-Стек
Высокий уровень MAC (TIMAC)
Низкий уровень MAC (TIMAC)
OSAL
Layer
Аппаратная платформа
Рис. 5. Соотношение программного и аппаратного уровней ZigBee
вых проблемах. Простое ядро используемой операционной системы Operating System Abstraction Layer (OSAL) позволяет улучшить модульность и повысить степень выделения и обобщения свойств сети низкого уровня, физического доступа к данным и аппаратных проблем, тем самым обеспечивается оптимизированная среда реального времени для бытовых, промышленных и коммерческих устройств. Основные возможности операционной системы включают планирование задач с приоритетами, обработку событий, управление памятью и передачу сообщений. Программная модель используемой операционной системы совместима по функциям и подобна среде, используемой многими другими распространенными операционными системами, ориентированными на быстрые современные приложения, благодаря чему удается сравнительно легко объединить программные компоненты, предназначенные для приложе-
ний и аппаратных платформ и уменьшить аппаратную зависимость, не жертвуя при этом производительностью.
Сеть будет готова к установке и формированию, когда смонтирована законченная аппаратная платформа ZigBee, разработано прикладное программное обеспечение и прикладные устройства — координатор PAN и маршрутизаторы, а конечные устройства отображены на логические устройства ZigBee. На данном этапе для облегчения развертывания и ввода сети в эксплуатацию важным аспектом становится применение сетевых инструментальных средств анализа. Для визуализации устройств в сетевой среде предлагается очень много инструментальных средств от различных производителей. Обычно такие инструментальные средства включают функцию моделирования построения схемы размещения и планирования сетевого развертывания. Например, возможно (с использованием дополнительных измерительных приборов) предварительно разместить узлы сети в каком-либо здании, основываясь на измерении распространения радиоволн. Это упрощает последующее формирование сети и выбор оптимального размещения узлов. После того как сеть развернута и сформирована, ввод в действие — следующая основная задача разработчика сети. Эта задача включает в себя установку подключений между прикладными оконечными устройствами и устройствами ZigBee, в которых используются специфические приложения.
Доступны также инструментальные средства для наблюдения и фиксации сетевого трафика в режиме реального времени, а также для обслуживания, контроля и сетевой диагностики узла. Имеется возможность прово-
дить пассивное прослушивание пакетов в сети и их дополнительный анализ, получать визуальное представление сети, обзор и статистику сетевого трафика. Например, программа «Анализатор измерительных сетей» (Sensor Network Analyzer) компании Daintree (www.daintree.net) может извлекать и визуализировать взаимосвязи и пути маршрутизации в работающей сети, как показано на рис. 6, а также предоставляет много дополнительных возможностей исследования и визуализации сетей на основе стандарта ZigBee/IEEE 802.15.4.
После запуска и конфигурирования сеть готова к передаче данных прикладных программ. Со временем, как правило, появляется потребность обновления узлов в действующей сети, например, в связи с физическим расширением сети, внедрением в сеть новых устройств и датчиков, сменой конфигурации или другими обновлениями, а также для более эффективного обслуживания сети. Для этого устройства ZigBee от Texas Instruments содержат дополнительную функцию, названную «Загрузка по эфиру» (Over-the-air download — OAD), которая позволяет дистанционно модернизировать и программировать устройства по беспроводным интерфейсам.
Заключение
В заключение отметим, что в настоящее время беспроводные сетевые технологии
находятся в стадии активного развития, кроме того, постоянно вводятся новые стандарты и радиопротоколы. Серьезные усовершенствования конструкции микросхем радиотрактов и сокращение стоимости устройств позволяют создавать большие беспроводные сети контроля и управления, способные надежно функционировать в неблагоприятных условиях внешней среды при очень ограниченных программных ресурсах. Только в этом случае они могут успешно конкурировать с проводными системами.
Внедрение технологии ZigBee подтверждает, что перечисленные выше требования к беспроводным системам не являются непреодолимыми. Использованный для разработки компактного сетевого протокола стандарт IEEE 802.15.4 способен обеспечить любые потребности в беспроводных коммуникациях для устройств бытового, промышленного и коммерческого управления и контроля, даже если эти устройства имеют недостаточно вычислительных ресурсов. Дополнительным преимуществом ZigBee является наличие множества доступных средств и инструментов для быстрого развертывания и обслуживания сети. Последние разработки компании Texas Instruments — это инновационные решения, которые успешно доказывают, что ZigBee — беспроводная связь, которую легко и выгодно интегрировать в современные электронные устройства. ■