- ZigBee-Architektur:
- Datenübertragung in ZigBee
- Netzwerkgrundlagen für Xbee-Router und -Koordinatoren
- Unterschiedliche Netzwerktopologie in ZigBee
- Xbee-Firmware
- XBee AT-Befehle:
Im Allgemeinen werden viele Leute mit zwei Begriffen XBee und ZigBee verwechselt, die meisten verwenden sie austauschbar. Dies ist aber eigentlich nicht der Fall; ZigBee ist das Standardprotokoll für drahtlose Netzwerke. Während XBee ein Produkt ist, das verschiedene drahtlose Kommunikationsprotokolle unterstützt, einschließlich ZigBee, Wi-Fi (Wi-Fly-Modul), 802.15.4, 868 MHz-Modul usw. Hier konzentrieren wir uns hauptsächlich auf das Xbee / Xbee-PRO ZB RF-Modul, das besteht der ZigBee-Firmware.
Stellen Sie sich einen Taschenrechner im Computer vor, bei dem komplexe Berechnungen mit einer benutzerfreundlichen Oberfläche durchgeführt werden. Die Aufgabe wäre sehr schwierig und langwierig gewesen, wenn nur Hardware verfügbar gewesen wäre. Auf höchster Ebene erleichtert die Verfügbarkeit von Software den Problemlösungsprozess. Der gesamte Prozess wird durch die eigentliche Hardware, die von höheren Ebenen aufgerufen wird, in Schichten der Software unterteilt.
Wir verwenden sogar das Konzept der Schichten in unserem täglichen Leben. Senden Sie beispielsweise einen Kurier / Brief an das Haus Ihres Freundes und senden Sie eine E-Mail von einem Punkt der Welt zu einem anderen. In ähnlicher Weise verwenden die meisten modernen Netzwerkprotokolle sogar ein Konzept von Schichten, um verschiedene Softwarekomponenten in unabhängige Module zu trennen, die auf unterschiedliche Weise zusammengesetzt werden können. Man muss sich vielleicht die Hände schmutzig machen, um ein tiefes Verständnis der Xbee-Architektur zu erlangen, aber wir werden die Dinge für Sie sehr einfach machen.
Beginnen wir mit einigen grundlegenden Begriffen wie Routing, Kollisionsvermeidung und Bestätigung. Um den ersten Begriff zu verstehen, geben Sie einfach seinen Namen "Route" ein, was bedeutet, den Pfad zu verfolgen oder zu identifizieren. Im Netzwerk bedeutet Routing, den Daten vom Quellknoten zum Zielknoten eine Richtung zu geben. Wenn zwei Knoten im Netzwerk versuchen, gleichzeitig zu senden, wird eine Situation namens Kollision erstellt. Also, in der Regel Carrier Sense Multiple Access with Collision Avoidance (CSMA / CA) Technik zu vermeiden Kollision erfahren Sie mehr über CSMA diesen Link. Grundsätzlich sprechen die Knoten darin genauso wie menschliche Gespräche; Sie überprüfen kurz, ob niemand spricht, bevor sie Daten senden.
Immer wenn der Empfänger die gesendeten Daten erfolgreich empfängt, bestätigt er den Sender. Der Datenfluss darf das Empfängerfunkgerät nicht überfordern. Jedes empfangende Funkgerät hat eine begrenzte Geschwindigkeit, mit der es eingehende Daten verarbeiten kann, und einen begrenzten Speicher, in dem eingehende Daten gespeichert werden können.
ZigBee-Architektur:
Im ZigBee-Stack stehen vier Hauptschichten zur Verfügung: die physische Schicht, die Medienzugriffsschicht, die Netzwerkschicht und die Anwendungsschicht.
Die Anwendungsschicht definiert verschiedene Adressierungsobjekte, einschließlich Profile, Cluster und Endpunkte. Sie können die ZigBee-Stapelebenen in der obigen Abbildung sehen.
Netzwerkschicht: Es werden Routing-Funktionen hinzugefügt, mit denen RF-Datenpakete mehrere Geräte (mehrere "Hops") durchlaufen können, um Daten von der Quelle zum Ziel (Peer-to-Peer) zu leiten.
Die MAC-Schicht verwaltet HF-Datentransaktionen zwischen benachbarten Geräten (Punkt zu Punkt). Der MAC umfasst Dienste wie Übertragungswiederholungs- und Bestätigungsmanagement- und Kollisionsvermeidungstechniken.
Physische Schicht: Definiert, wie Geräte zu einem Netzwerk verbunden werden. Es definiert die Ausgangsleistung, die Anzahl der Kanäle und die Übertragungsrate. Die meisten ZigBee-Anwendungen arbeiten im 2,4-GHz-ISM-Band mit einer Datenrate von 250 kbit / s.
In den meisten XBee-Familien sind Flusssteuerungs-, E / A-, A / D- und Indikatorleitungen integriert, die mit entsprechenden Befehlen konfiguriert werden können. Analoge Abtastwerte werden als 10-Bit-Werte zurückgegeben. Der analoge Messwert ist so skaliert, dass 0x0000 0 V und 0x3FF = 1,2 V darstellt. (Die analogen Eingänge des Moduls dürfen nicht mehr als 1,2 V betragen.)
Gehen Sie wie folgt vor, um den A / D-Wert in mV umzuwandeln:
AD (mV) = (A / D-Messwert * 1200 mV) / 1023
Datenübertragung in ZigBee
Sie können ein Netzwerk als Kombination aus Software und Hardware aufrufen, die Daten von einem Ort zu einem anderen senden kann. Die Hardware ist dafür verantwortlich, die Signale von einem Netzwerkpunkt zu einem anderen zu übertragen. Software besteht aus Befehlssätzen, die es ermöglichen, wie erwartet zu arbeiten.
Im Allgemeinen kann die Datenübertragung durch ZigBee-Pakete auf zwei Arten erfolgen: Unicast und Broadcast.
Rundfunkübertragung:
In einfachen Worten bedeutet Rundfunk die Informationen / Programme, die per Radio oder Fernsehen übertragen werden. Mit anderen Worten, Broadcast-Übertragungen werden an viele oder alle Geräte im Netzwerk gesendet. Broadcast-Übertragungen mit dem ZigBee-Protokoll werden im gesamten Netzwerk so weitergegeben, dass alle Knoten die Übertragung empfangen. Um dies zu erreichen, senden der Koordinator und alle Router, die eine Broadcast-Übertragung empfangen, das Paket dreimal erneut.
Unicast-Übertragung:
Unicast-Übertragungen in ZigBee leiten Daten von einem Quellgerät zu einem anderen Zielgerät weiter. Das Zielgerät kann ein unmittelbarer Nachbar des Quellgeräts sein oder mehrere Sprünge dazwischen haben. Ein Beispiel ist unten in der Abbildung gezeigt, in der der Mechanismus zum Erkennen der Zuverlässigkeit der bidirektionalen Verbindung erläutert wird.
Netzwerkgrundlagen für Xbee-Router und -Koordinatoren
Was brauchst du, um das Haus deines Freundes zu erreichen? Sie brauchen nur seine Adresse. Ebenso benötigen Sie zum Senden der Daten von einem Xbee-Modul an ein anderes die eindeutige Adresse. Genau wie bei Menschen hat Xbee sogar mehrere Adressen, von denen jede eine bestimmte Rolle bei der Vernetzung spielt. Es gibt zwei Arten von Adressen: Statische Adresse (64-Bit-Adresse) und dynamische Adresse (16-Bit-Adresse).
Adressen:
Die 64-Bit-Adresse ist universell eindeutig. Es wird vom Hersteller im Xbee-Modul festgelegt. Kein anderes ZigBee-Radio auf der Erde hat dieselbe statische Adresse. Auf der Rückseite jedes xbee-Moduls sehen Sie diese Adresse wie unten gezeigt, und insbesondere der höhere Teil der Adresse „0013A200“ ist für jedes xbee-Modul gleich.
Ein Gerät erhält eine 16-Bit-Adresse, die lokal eindeutig sein sollte, wenn es einem ZigBee-Netzwerk beitritt. Die 16-Bit-Adresse 0x0000 ist für den Koordinator reserviert. Alle anderen Geräte erhalten eine zufällig generierte Adresse vom Router oder Koordinator, die den Join ermöglicht. Die 16-Bit-Adresse kann sich ändern, wenn festgestellt wird, dass zwei Geräte dieselbe 16-Bit-Adresse haben oder ein Gerät das Netzwerk verlässt und später beitritt (es kann eine andere Adresse erhalten).
Knoten-ID:
Für unser Gehirn ist es immer einfacher, sich Zeichenfolgen anstelle von Zahlen zu merken. Daher kann jedem Xbee-Modul in einem Netzwerk eine Knotenkennung zugewiesen werden. Die Knotenkennung besteht aus einer Reihe von Zeichen, dh Zeichenfolgen, mit denen ein Knoten in einem Netzwerk menschlicher angesprochen werden kann.
Persönliche Netzwerke:
Von diesen Xbee-Modulen entwickelte Netzwerke werden als Personal Area Networks oder PANs bezeichnet. Jedes Netzwerk wird mit einer eindeutigen PAN-ID (PAN ID) definiert. Diese Kennung ist allen Geräten desselben Netzwerks gemeinsam. ZigBee unterstützt sowohl eine 64-Bit- als auch eine 16-Bit-PAN-ID. Beide PAN-Adressen werden verwendet, um ein Netzwerk eindeutig zu identifizieren. Geräte im selben ZigBee-Netzwerk müssen dieselben 64-Bit- und 16-Bit-PAN-IDs verwenden. Wenn mehrere ZigBee-Netzwerke in Reichweite voneinander betrieben werden, sollte jedes über eindeutige PAN-IDs verfügen.
Die 16-Bit-PAN-ID wird verwendet, um die MAC-Schicht bei allen HF-Datenübertragungen zwischen Geräten in einem Netzwerk zu adressieren. Aufgrund des begrenzten Adressraums der 16-Bit-PAN-ID (65.535 Möglichkeiten) besteht jedoch die Möglichkeit, dass mehrere ZigBee-Netzwerke (in Reichweite voneinander) dieselbe 16-Bit-PAN-ID haben. Um diese Konflikte zu lösen, hat die ZigBee Alliance eine 64-Bit-PAN-ID erstellt. ZigBee definiert drei verschiedene Gerätetypen: Koordinator, Router und Endgerät.
In jedem Netzwerk ist immer ein Koordinator erforderlich, um das Netzwerk einzurichten. Es kann also niemals schlafen. Es ist auch für die Auswahl eines Kanals und einer PAN-ID (sowohl 64-Bit als auch 16-Bit) verantwortlich, um das Netzwerk zu starten. Es kann Routern und Endgeräten ermöglichen, sich dem Netzwerk anzuschließen. Es kann beim Weiterleiten von Daten in einem Netzwerk hilfreich sein.
In einem Netzwerk können mehrere Router vorhanden sein. Ein Router kann Signale von anderen Routern / EPs (End Points) empfangen. Es kann auch nie schlafen. Es muss einer ZigBee-PAN beitreten, bevor es Daten senden, empfangen oder weiterleiten kann. Nach dem Beitritt können Router und Endgeräte dem Netzwerk beitreten. Nach dem Beitritt kann es auch beim Weiterleiten von Daten helfen. Es kann RF-Datenpakete für schlafende Endgeräte puffern.
Es kann auch mehrere Endpunkte geben. Es kann in den Ruhemodus geschaltet werden, um Strom zu sparen. Es muss einer ZigBee-PAN beitreten, bevor es Daten senden oder empfangen kann, und es kann nicht einmal Geräten erlauben, sich dem Netzwerk anzuschließen. Das Senden / Empfangen von Daten ist vom Elternteil abhängig.
Da das Endgerät in den Ruhemodus wechseln kann, muss das übergeordnete Gerät eingehende Datenpakete puffern oder speichern, bis das Endgerät aufwacht und die Datenpakete empfängt.
Unterschiedliche Netzwerktopologie in ZigBee
Die Netzwerktopologie bezieht sich auf die Art und Weise, wie das Netzwerk entworfen wurde. Hier ist die Topologie eine geometrische Darstellung der Beziehung aller Verknüpfungen und Verknüpfungsgeräte (Koordinator-, Router- und Endgeräte) zueinander.
Hier haben wir vier grundlegende Topologie-Netze, Stern, Hybrid und Baum.
In der Maschentopologie erwartet jeder Knoten, der mit dem anderen Knoten verbunden ist, das Endgerät, da Endgeräte nicht direkt kommunizieren können. Um eine einfache Kommunikation zwischen zwei ZB-Funkgeräten zu ermöglichen, müssen Sie eines mit der Koordinator-Firmware und eines mit der Router- oder Endpunkt-Firmware konfigurieren. Der Hauptvorteil des Mesh-Netzwerks besteht darin, dass eine der Verbindungen nicht unbrauchbar wird, wenn sie unbrauchbar werden.
In einer Sterntopologie verfügt jedes Gerät über eine dedizierte Punkt-zu-Punkt-Verbindung zu einer zentralen Steuerung (Koordinator). Alle Geräte sind nicht direkt miteinander verbunden. Im Gegensatz zu einer Maschentopologie kann in der Sterntopologie ein Gerät nichts direkt an ein anderes Gerät senden. Der Koordinator oder Hub ist zum Austausch da: Wenn ein Gerät Daten an ein anderes senden möchte, sendet es die Daten an den Koordinator, der die Daten weiter an das Zielgerät sendet.
Hybrides Netzwerk sind solche Netzwerke, die zwei oder mehr Arten von Kommunikationsstandards enthalten. Hier ist das Hybridnetzwerk eine Kombination aus Stern- und Baumnetzwerk, nur wenige Endgeräte sind direkt mit dem Koordinatorknoten verbunden, und andere Endgeräte benötigen die Hilfe des übergeordneten Knotens, um die Daten zu empfangen.
Im Tree- Netzwerk bilden Router das Backbone und die Endgeräte, die im Allgemeinen um jeden Router gruppiert sind. Es unterscheidet sich nicht sehr von einer Mesh-Konfiguration, außer dass die Router nicht miteinander verbunden sind. Sie können diese Netzwerke anhand der oben gezeigten Abbildung visualisieren.
Xbee-Firmware
Das programmierbare XBee-Modul ist mit einem Free-Scale-Anwendungsprozessor ausgestattet. Dieser Anwendungsprozessor wird mit einem mitgelieferten Bootloader geliefert. Diese XBee ZV-Firmware basiert auf dem Embernet 3.xx ZigBee-PRO-Stack. XBee-Znet 2.5-Module können auf diese Funktionalität aktualisiert werden. Sie können die Firmware mit dem Befehl ATVR überprüfen, den wir später in diesem Kapitel behandeln werden. XBee-Versionsnummern haben 4 signifikante Ziffern. Eine Versionsnummer kann auch mit dem Befehl ATVR angezeigt werden. Die Antwort gibt 3 oder 4 Zahlen zurück. Alle Zahlen sind hexadezimal und können einen Bereich von 0-0xF haben. Eine Version wird als "ABCD" gemeldet. Die Ziffern ABC sind die Hauptversionsnummer und D ist die Versionsnummer der Hauptversion. Die in Kapitel 4 beschriebenen API- und AT-Befehle sind für die Znet 2.5- und ZB-Firmware nahezu identisch.
In der Telekommunikation ist der gesamte Hayes-Befehl ein sprachspezifischer Befehl, der für das Hayes-Modem Smart Modem entwickelt wurde. 1981 waren dies eine Reihe kurzer Wörter zur Steuerung des Modems, die die Kommunikation und Einrichtung eines Modems in jenen Tagen vereinfachten.
XBee arbeitet auch im Befehlsmodus und hat AT-Befehle ausgelöst, die für ACHTUNG stehen. Diese Befehle können über die Terminals XBee an XBee gesendet werden, und AT-konfigurierte XBee-Funkgeräte verfügen über zwei Kommunikationsmodi
Transparent: Das Funkgerät leitet die empfangenen Informationen nur an die entfernte Funkadresse weiter, für die es konfiguriert wurde. Die über die serielle Schnittstelle gesendeten Daten werden von XBee unverändert empfangen.
Befehl: Dieser Modus wird verwendet, um mit dem Radio zu sprechen und einige vorkonfigurierte Modi zu konfigurieren. In diesen Modi kommunizieren wir mit den Modulen und ändern die Konfiguration.
Sie können +++ eingeben und eine Sekunde warten, ohne andere Tasten zu drücken. Die Meldung OK sollte dann als Bild des Terminals angezeigt werden. Mit OK teilt uns der XBee mit, dass er im COMMAND-Modus verbracht hat und bereit ist, Konfigurationsnachrichten zu empfangen.
XBee AT-Befehle:
AT (TEST): Dies ist der Testbefehl, mit dem überprüft wird, ob das Modul mit OK antwortet, da die Antwort dies bestätigt.
ATDH: Zieladresse hoch. Um die oberen 32 Bits der 64-Bit-Zieladresse DL und DH zusammen zu konfigurieren, erhalten Sie eine 64-Bit-Zieladresse.
ATDL: Zieladresse niedrig. Dies wiederum zum Konfigurieren der unteren 32 Bit der 64-Bit-Zieladresse.
ATID: Dieser Befehl ändert die PAN-ID (PersDie ID besteht aus 4 Byte Hexadezimalzahl und kann von 0000 bis FFFF reichen
ATWR: Schreiben. Schreiben Sie Parameterwerte in den nichtflüchtigen Speicher, damit Parameteränderungen durch nachfolgende Zurücksetzungen erhalten bleiben.
Hinweis: Sobald WR ausgegeben wurde, sollten bis keine zusätzlichen Zeichen an das Modul gesendet werden
Nachdem die Antwort "OK \ r" empfangen wurde.
ATRE (Restore Defaults): Stellt die Werkseinstellungen des Moduls wieder her. Dies ist sehr nützlich, wenn das Modul nicht reagiert.
Wenn Sie mehr über ZigBee-Module erfahren möchten, finden Sie hier die großartige Ressource von Digi.