- Архитектура ZigBee:
- Передача данных в ZigBee
- Основы сети для маршрутизаторов Xbee и координатора
- Другая топология сети в ZigBee
- Прошивка Xbee
- Команды XBee AT:
Обычно многие люди путаются с двумя терминами XBee и ZigBee, большинство из них используют их как синонимы. Но на самом деле это не так; ZigBee - стандартный протокол для беспроводной сети. Хотя XBee - это продукт, который поддерживает различные протоколы беспроводной связи, включая ZigBee, Wi-Fi (модуль Wi-Fly), 802.15.4, модуль 868 МГц и т.д. Здесь мы в основном сосредоточены на модуле Xbee / Xbee-PRO ZB RF, который состоит из прошивки ZigBee.
Представьте себе калькулятор в компьютере, где сложные вычисления выполняются с удобным интерфейсом. Задача была бы очень сложной и утомительной, если бы было доступно только оборудование. Итак, на самом высоком уровне доступность программного обеспечения упрощает процесс решения проблем. Весь процесс делится на уровни программного обеспечения фактическим оборудованием, которое вызывается более высокими уровнями.
Мы даже используем концепцию слоев в повседневной жизни. Например, отправка курьера / письма на дом к другу, отправка электронной почты из одной точки мира в другую. Точно так же в большинстве современных сетевых протоколов даже используется концепция уровней для разделения различных программных компонентов на независимые модули, которые можно собрать разными способами. Чтобы получить глубокое понимание архитектуры Xbee, возможно, придется запачкать руки, но мы сделаем все для вас очень простым.
Начнем с некоторых основных терминов, таких как маршрутизация, предотвращение столкновений и подтверждение. Для понимания первого термина просто используйте его имя, «маршрут», что означает отслеживать или идентифицировать путь. В сети под маршрутизацией понимается направление данных от узла источника к узлу назначения. Когда два узла в сети пытаются передавать одновременно, возникает ситуация, называемая коллизией. Итак, как правило, метод множественного доступа с контролем несущей и предотвращением конфликтов (CSMA / CA) позволяет избежать конфликтов, вы можете узнать больше о CSMA по этой ссылке. В основном в нем узлы говорят так же, как человеческий разговор; они ненадолго проверяют, что никто не разговаривает, прежде чем начать передачу данных.
Когда приемник успешно принимает переданные данные, он подтверждает передатчик. Поток данных не должен перегружать радиоприемник. Любая принимающая радиостанция имеет ограниченную скорость обработки входящих данных и ограниченный объем памяти для хранения входящих данных.
Архитектура ZigBee:
В стеке ZigBee доступны четыре основных уровня: физический уровень, уровень доступа к среде передачи, сетевой уровень и уровень приложений.
Уровень приложения определяет различные объекты адресации, включая профили, кластеры и конечные точки. Вы можете увидеть слои стека ZigBee на рисунке выше.
Сетевой уровень: он добавляет возможности маршрутизации, которые позволяют пакетам радиочастотных данных проходить через несколько устройств (несколько «переходов») для маршрутизации данных от источника к месту назначения (одноранговый узел).
Уровень MAC управляет транзакциями радиочастотных данных между соседними устройствами (точка-точка). MAC включает в себя такие услуги, как повторная передача и управление подтверждением, а также методы предотвращения конфликтов.
Физический уровень: он определяет, как устройства подключаются к сети; он определяет выходную мощность, количество каналов и скорость передачи. Большинство приложений ZigBee работают в диапазоне ISM 2,4 ГГц со скоростью передачи данных 250 кбит / с.
Большинство семейств XBee имеют встроенные линии управления потоком, ввода-вывода, аналого-цифрового преобразования и индикаторы, которые можно настроить с помощью соответствующих команд. Аналоговые отсчеты возвращаются как 10-битные значения. Аналоговое показание масштабируется так, что 0x0000 представляет 0 В, а 0x3FF = 1,2 В. (Аналоговые входы на модуле не могут превышать 1,2 В)
Чтобы преобразовать показания A / D в мВ, сделайте следующее:
AD (мВ) = (показание A / D * 1200 мВ) / 1023
Передача данных в ZigBee
Вы можете назвать сеть как комбинацию программного и аппаратного обеспечения, которая способна отправлять данные из одного места в другое. Оборудование отвечает за передачу сигналов от одной точки сети к другой. Программное обеспечение состоит из наборов инструкций, которые позволяют работать так, как мы ожидаем.
Обычно передача данных пакетами ZigBee может осуществляться двумя способами: одноадресной и широковещательной.
Широковещательная передача:
Проще говоря, вещание означает информацию / программу, передаваемую по радио или телевидению. Другими словами, широковещательные передачи отправляются на многие или все устройства в сети. Широковещательные передачи по протоколу ZigBee распространяются по всей сети, так что все узлы принимают передачу. Для этого координатор и все маршрутизаторы, принимающие широковещательную передачу, повторно передают пакет три раза.
Одноадресная передача:
Одноадресная передача в ZigBee направляет данные от одного исходного устройства к другому целевому устройству. Целевое устройство может быть непосредственным соседом исходного устройства или может иметь несколько переходов между путями. Ниже на рисунке показан пример, поясняющий механизм распознавания надежности двунаправленной линии связи.
Основы сети для маршрутизаторов Xbee и координатора
Что вам нужно, чтобы добраться до дома друга? Вам просто нужен его адрес. Точно так же для отправки данных от одного модуля Xbee к другому вам понадобится его уникальный адрес. Как и у людей, у Xbee даже есть несколько адресов, каждый из которых играет определенную роль в сети. Существует два типа адресов: статический адрес (64-битный адрес) и динамический адрес (16-битный адрес).
Адреса:
64-битный адрес универсален; он закреплен производителем внутри модуля Xbee. Ни одно другое радио ZigBee на Земле не будет иметь такого же статического адреса, на задней панели каждого модуля xbee вы можете увидеть этот адрес, как показано ниже, и, в частности, верхняя часть адреса «0013A200» одинакова для каждого модуля xbee.
Когда устройство подключается к сети ZigBee, устройство получает 16-битный адрес, который должен быть уникальным локально. 16-битный адрес 0x0000 зарезервирован для координатора. Все другие устройства получают случайно сгенерированный адрес от маршрутизатора или устройства-координатора, разрешающего соединение. 16-битный адрес может измениться, когда два устройства имеют одинаковый 16-битный адрес или устройство покидает сеть и позже присоединяется (оно может получить другой адрес).
Идентификатор узла:
Нашему мозгу всегда легче запоминать строки, а не числа. Следовательно, каждому модулю Xbee в сети может быть назначен идентификатор узла. Идентификатор узла - это набор символов, то есть строк, которые могут быть более понятным для человека способом адресации узла в сети.
Персональные сети:
Сети, разработанные этими модулями Xbee, называются персональными сетями или PAN. Каждая сеть определяется уникальным идентификатором PAN (PAN ID). Этот идентификатор является общим для всех устройств в одной сети. ZigBee поддерживает как 64-битный, так и 16-битный PAN ID. Оба адреса PAN используются для однозначной идентификации сети. Устройства в одной сети ZigBee должны иметь одинаковые 64-битные и 16-битные идентификаторы PAN. Если несколько сетей ZigBee работают в пределах досягаемости друг друга, каждая из них должна иметь уникальный идентификатор PAN.
16-битный идентификатор PAN используется для адресации уровня MAC во всех передачах радиочастотных данных между устройствами в сети. Но из-за ограниченного адресного пространства 16-битного идентификатора PAN (65 535 возможных) существует вероятность того, что несколько сетей ZigBee (в пределах диапазона друг друга) могут иметь один и тот же 16-битный идентификатор PAN. Чтобы разрешить эти конфликты, ZigBee Alliance создал 64-битный PAN ID. ZigBee определяет три разных типа устройств: координатор, маршрутизатор и конечное устройство.
В каждой сети всегда требуется один координатор для взимания платы за настройку сети. Итак, он никогда не может уснуть. Он также отвечает за выбор канала и идентификатора PAN (как 64-битного, так и 16-битного) для запуска сети. Это может позволить маршрутизаторам и конечным устройствам подключаться к сети. Это может помочь в маршрутизации данных в сети.
В сети может быть несколько маршрутизаторов. Один маршрутизатор может получать сигналы от других маршрутизаторов / EP (конечных точек). Он также никогда не может уснуть. Он должен присоединиться к Zigbee PAN, прежде чем сможет передавать, получать или маршрутизировать данные. После присоединения он может разрешить маршрутизаторам и конечным устройствам присоединяться к сети. После присоединения он также может помочь в маршрутизации данных. Он может буферизовать пакеты данных RF для спящих конечных устройств.
Также может быть несколько конечных точек. Он может перейти в спящий режим для экономии энергии. Он должен присоединиться к ZigBee PAN, прежде чем он сможет передавать или получать данные, и он не может даже позволить устройствам присоединяться к сети. Это зависит от родителя для передачи / приема данных.
Поскольку конечное устройство может перейти в спящий режим, родительское устройство должно буферизовать или удерживать входящие пакеты данных до тех пор, пока конечное устройство не проснется и не получит пакеты данных.
Другая топология сети в ZigBee
Топология сети относится к способу проектирования сети. Здесь топология - это геометрическое представление взаимосвязи всех каналов связи и связывающих устройств (Координатор, Маршрутизатор и Конечные устройства) друг с другом.
Здесь у нас есть четыре основных топологических сетки: звезда, гибрид и дерево.
В топологии Mesh каждый узел связан друг с другом, кроме конечного устройства, поскольку конечные устройства не могут связываться напрямую. Чтобы обеспечить простую связь между двумя радиостанциями ZB, вам необходимо настроить один с прошивкой координатора, а другой с прошивкой маршрутизатора или конечной точки. Основное преимущество Mesh-сети состоит в том, что если одно из звеньев становится непригодным для использования, это не выводит из строя всю систему.
В топологии «звезда» каждое устройство имеет выделенное двухточечное соединение с центральным контроллером (координатором). Все устройства напрямую не связаны друг с другом. В отличие от ячеистой топологии, в звездообразной топологии одно устройство не может отправлять что-либо напрямую другому устройству. Координатор или концентратор предназначен для обмена: если одно устройство хочет отправить данные другому, оно отправляет данные координатору, который затем отправляет данные на устройство назначения.
Гибридная сеть - это те сети, которые содержат два или более типов стандартов связи. Здесь гибридная сеть представляет собой комбинацию звездообразной и древовидной сети, несколько конечных устройств подключены непосредственно к узлу координатора, а другим конечным устройствам требуется помощь родительского узла для получения данных.
В сети Tree маршрутизаторы образуют магистраль, а конечные устройства обычно сгруппированы вокруг каждого маршрутизатора. Это не сильно отличается от конфигурации ячеистой сети, за исключением того факта, что маршрутизаторы не связаны между собой, вы можете визуализировать эти сети, используя рисунок, показанный выше.
Прошивка Xbee
Модуль XBee Programmable оснащен процессором приложений Free scale. Этот процессор приложений поставляется с прилагаемым загрузчиком. Эта прошивка XBee ZV основана на стеке Embernet 3.xx ZigBee-PRO, модули XBee-Znet 2.5 могут быть обновлены до этой функциональности. Вы можете проверить прошивку с помощью команды ATVR, о которой мы поговорим позже в этой главе. Номера версий XBee будут иметь 4 значащих цифры. Номер версии также можно увидеть с помощью команды ATVR. Ответ возвращает 3 или 4 числа. Все числа шестнадцатеричные и могут иметь диапазон от 0 до 0xF. Версия отображается как «ABCD». Цифры ABC - это номер основной версии, а D - номер версии основного выпуска. API, обсуждаемый в главе 4, и AT-команды почти одинаковы для прошивок Znet 2.5 и ZB.
В телекоммуникациях вся команда Hayes представляет собой специфические для языка команды, разработанные для модема Hayes Smart Modem, 1981 г. Они представляли собой серию коротких слов для управления модемом, что в те дни упрощало общение и настройку модема.
XBee также работает в командном режиме и активировал AT-команды, что означает ВНИМАНИЕ, эти команды могут быть отправлены в XBee через терминалы. XBee и AT настроенные радиостанции XBee имеют два режима связи.
Прозрачный: радиомодуль только передает полученную информацию на удаленный радиоадрес, на который он был настроен. Данные, отправленные через последовательный порт, принимаются XBee как есть.
Команда: этот режим используется для связи с радио и настройки некоторых предварительно настроенных режимов, мы общаемся с модулями, находясь в этих режимах, и меняем конфигурацию.
Вы можете ввести +++ и подождать одну секунду, не нажимая никаких других кнопок, после этого должно появиться сообщение ОК в виде изображения терминала. По ОК XBee сообщает нам, что он провел в режиме КОМАНДА и готов получать сообщения конфигурации.
Команды XBee AT:
AT (TEST): это тестовая команда, чтобы проверить, отвечает ли модуль OK, поскольку ответ подтверждает то же самое.
ATDH: высокий адрес назначения. Чтобы настроить старшие 32 бита 64-битного адреса назначения, DL и DH вместе дают вам 64-битный адрес назначения.
ATDL: низкий адрес назначения. Это опять же для настройки младших 32 бит 64-битного адреса назначения.
ATID: эта команда изменяет PAN ID (PersThe ID составляет 4 шестнадцатеричных байта и может находиться в диапазоне от 0000 до FFFF.
ATWR: Пишите. Записывайте значения параметров в энергонезависимую память, чтобы изменения параметров сохранялись при последующих сбросах.
Примечание: после выдачи WR никакие дополнительные символы не должны отправляться в модуль до тех пор, пока
После получения ответа «ОК \ r».
ATRE (Restore Defaults): восстанавливает заводские настройки модуля, очень полезно, если модуль не отвечает.
Если вы хотите узнать больше о модулях ZigBee, то вот отличный ресурс от Digi.