- Hardware-Anforderungen
- Konfigurieren von XBee-Modulen mit XCTU
- Programmieren und Testen der XBee-Kommunikation mit Arduino
In früheren Tutorials haben wir das ZigBee-Protokoll und seine Architektur sowie die drahtlose Kommunikation zwischen zwei Xbee-Modulen kennengelernt. In diesem Tutorial werden wir nun das XBee-Modul mit dem Arduino Uno-Board verbinden. Der mit der Arduino-Karte verbundene XBee fungiert als Empfänger und kommuniziert drahtlos mit anderen XBee-Modulen, die über eine Explorer-Karte seriell mit dem Laptop verbunden sind. So können erkunden weiter für Arduino drahtlose Kommunikation mit XBee.
Hardware-Anforderungen
- 1 x Arduino Uno
- 2 x XBee Pro S2C-Module (jedes andere Modell kann verwendet werden)
- 1 x Xbee Explorer Board (optional)
- 1 x Xbee Breakout Board (optional)
- USB-Kabel
- LEDs
Konfigurieren von XBee-Modulen mit XCTU
Wie wir in früheren Tutorials erfahren haben, kann das XBee-Modul als Koordinator, Router oder Endgerät fungieren, muss jedoch so konfiguriert werden, dass es im gewünschten Modus funktioniert. Bevor wir die XBee-Module mit Arduino verwenden können, müssen wir diese Module mit der XCTU-Software konfigurieren.
Um das XBee-Modul mit dem Laptop zu verbinden, wird ein USB-zu-Seriell-Konverter oder eine speziell entwickelte Explorer-Karte verwendet. Schließen Sie einfach das XBee-Modul an die Explorer-Karte an und schließen Sie es mit einem USB-Kabel an den Laptop an.
Wenn Sie keine Konverter- oder Explorer- Karte haben, kann eine Arduino- Karte als USB-zu-Seriell-Gerät verwendet werden, das problemlos mit dem XBee und dem Laptop kommunizieren kann. Laden Sie einfach eine leere Skizze in das Arduino-Board hoch und jetzt kann es sich wie ein USB-zu-Seriell-Konverter verhalten.
Die Anschlüsse für die Verbindung des ZigBee-Moduls mit Arduino sind im Schaltplan dargestellt.
Verbindungen:
- Tx (Pin2) von XBee -> Tx von Arduino Board
- Rx (Pin3) von Xbee -> Rx von Arduino Board
- Gnd (Pin10) von Xbee -> GND von Arduino Board
- Vcc (Pin1) von Xbee -> 3,3 V von Arduino Board
Hier in diesem Tutorial wird eine Explorer-Karte verwendet, um die XBee-Module zu konfigurieren.
Laden Sie die XCTU-Software von diesem Link herunter und installieren Sie sie. Öffnen Sie die XCTU-Software nach dem Herunterladen und Installieren und stellen Sie sicher, dass Ihr XBee-Modul ordnungsgemäß angeschlossen ist. Überprüfen Sie den COM-Anschluss der Arduino-Karte im Geräte-Manager.
Schritt 1: - Klicken Sie nun auf die Schaltfläche Suchen. Dies zeigt Ihnen alle mit Ihrem Laptop verbundenen HF-Geräte. In unserem Fall wird nur ein XBee-Modul angezeigt.
Schritt 2: - Wählen Sie den seriellen Anschluss der Explorer-Karte / Arduino-Karte und klicken Sie auf Weiter.
Schritt 3: - Stellen Sie im nächsten Fenster die USB-Anschlussparameter wie unten gezeigt ein und klicken Sie auf Fertig stellen.
Schritt 4: - Wählen Sie das erkannte Gerät aus und klicken Sie auf Ausgewähltes Gerät hinzufügen . Durch diesen Vorgang wird Ihr XBee-Modul zum XCTU-Dashboard hinzugefügt.
Schritt 5: - In diesem Fenster können Sie jetzt Ihr XBee-Modul konfigurieren. Verwenden Sie entweder AT-Befehle oder geben Sie die Daten manuell ein. Wie Sie sehen können, wird auf der linken Seite R angezeigt, was bedeutet, dass sich Xbee im Router-Modus befindet. Wir müssen es zum Koordinator für den Senderteil machen.
Aktualisieren Sie zunächst die Firmware, indem Sie auf Firmware aktualisieren klicken.
Schritt 6: - Wählen Sie die Produktfamilie Ihres Geräts aus, die auf der Rückseite des XBee-Moduls verfügbar ist. Wählen Sie den unten hervorgehobenen Funktionssatz und die Firmware-Version aus und klicken Sie auf Aktualisieren.
Schritt 7: - Jetzt müssen Sie ID-, MY- und DL-Daten angeben, um eine Verbindung mit anderen XBee herzustellen. ID bleibt für beide Module gleich. Nur der Datenaustausch zwischen MY und DL, dh MY für den Empfänger XBee, wird DL des Senders XBee (Koordinator) und DL für den Empfänger XBee wird MY des Senders XBee. Machen Sie CE als Koordinator und klicken Sie dann auf die Schaltfläche Schreiben. Wie nachfolgend dargestellt.
ATDL |
BEI MEINEM |
||
XBee 1-Koordinator |
|||
XBee 2-Endgerät |
Schritt 8: - Nachdem Sie die obigen Daten in das Senderteil geschrieben haben, stecken Sie sie aus der Explorer-Karte und stecken Sie sie in das zweite XBee-Modul. Wiederholen Sie den gleichen Vorgang wie oben. Nur die Änderungen betreffen DL, MY und CE. Da wir den zweiten XBee als Endgerät erstellen, wählen Sie im Dropdown-Menü CE das Endgerät aus und klicken Sie auf die Schaltfläche Schreiben.
Schritt 9: - Jetzt können unsere XBee-Module mit der Arduino-Karte verbunden werden. Wir werden den Sender XBee mit dem Laptop und den Empfänger XBee mit der Arduino-Karte verbinden. Geben Sie dann dem Empfängerteil mit dem Laptop Befehle.
Schaltplan für Empfängerteil:
Verbindungen:
- Tx (Pin2) von XBee -> Rx von Arduino Board
- Rx (Pin3) von Xbee -> Tx von Arduino Board
- Gnd (Pin10) von Xbee -> GND von Arduino Board
- Vcc (Pin1) von Xbee -> 3,3 V von Arduino Board
Wenn Sie die Arduino-Karte verwenden, um den Sender ZigBee mit dem Laptop zu verbinden, sind die Verbindungen dieselben wie für die Programmierung des ZigBee.
Programmieren und Testen der XBee-Kommunikation mit Arduino
Jetzt schreiben wir einen Code für den Empfänger Arduino, um die LED einzuschalten, wenn der Empfängerteil 'a' empfängt, und die LED zu blinken, wenn er 'b' empfängt, für andere Zeichen bleibt die LED AUS.
Code ist einfach und leicht verständlich. Wir werden nur die eingehenden Zeichen mit der Funktion Serial.available () überprüfen und dieses Zeichen mit Serial.read () in einer Variablen speichern. Funktion und stimmen Sie es mit 'a' und 'b' ab. Wenn die Übereinstimmung korrekt ist, führen Sie die in der Bedingung angegebene Aufgabe aus. Der vollständige Code für den Empfängerteil ist am Ende angegeben. Laden Sie den Code im Empfängerteil Arduino hoch. Entfernen Sie vor dem Hochladen die Tx- und Rx-Kabel von XBee.
Jetzt machen wir uns alle daran , unseren Sender und Empfänger zu testen. Um dem Senderteil Befehle zu erteilen, verwenden wir das Konsolenterminal von XCTU. Klicken Sie auf das Konsolensymbol neben der Einstellungsoption. Klicken Sie dann auf die Schaltfläche Öffnen, um den XBee mit dem Laptop zu verbinden.
Geben Sie 'a' in das Konsolenprotokoll ein. Sie werden sehen, dass die LED 2 Sekunden lang leuchtet und danach 'b' eingibt, damit die LED 5 Mal blinkt.
Sie können den Sender XBee auch an die Arduino-Karte anschließen. Ändern Sie einfach den Empfängercode ein wenig. Verwenden Sie anstelle der Funktion Serial.read () die Funktion Serial.println (), um die Zeichen zu senden.
Überprüfen Sie das unten angegebene Demonstrationsvideo.
Dieses XBee-Arduino-Setup kann verwendet werden, um viele nützliche drahtlose Anwendungen wie das Hausautomationssystem, den Chatraum usw. zu erstellen.