Kaufen Sie von US Kaufen Sie von UK Kaufen Sie von DE Kaufen Sie von FR Kaufen Sie von IT Kaufen Sie von ES ここでご購入を!

In den vorangegangenen Lektionen haben wir viele Beispiele für die Verwendung eines Webbrowsers auf dem PC zur Überwachung und Steuerung eines entfernten Geräts über das HTTP-Protokoll kennen gelernt. Dieses HTTP-Protokoll hat einige Probleme. Erstens muss ein Webserver im Arduino laufen, der nur begrenzten Speicher hat. Daher ist die Leistung langsam und nicht stabil. Zweitens kann es nur in eine Richtung gesteuert werden (vom PC zur Steuerung des entfernten Geräts). Es ist keine 100%ige Thing-to-Thing-Verbindung, die von vielen IoT-Anwendungen benötigt wird.

In dieser Lektion werden wir besprechen, wie man zwei MEGA-Iot Shields verwendet, um eine Kommunikation von Ding zu Ding über das UDP-Protokoll zu ermöglichen. Bitte beachten Sie, dass Sie für die Experimente in dieser Lektion zwei Osoyoo Mega-IoT Extension Shields kaufen müssen.

Um eine Duplex-Kommunikation zwischen zwei IoT zu ermöglichen, müssen wir ein neues Internet-Protokoll namens UDP verwenden. UDP wird sehr häufig von E-Mail- und IP-Telefondiensten verwendet. Es ist ein sehr einfaches Protokoll, das es Internetgeräten ermöglicht, Daten in einer Richtung an ein Zielgerät zu senden. Sie müssen der UDP-Software nur die IP-Adresse und die Portnummer mitteilen, dann kann das Ziel die Nachricht erhalten.

Bitte stecken Sie zunächst das OSOYOO MEGA-IoT Extension Board in das MEGA2560 Board:

Hinweis: Schalten Sie den Akku aus oder ziehen Sie den Netzadapter ab, wenn Sie den Sketch-Code auf das OSOYOO Advanced Board für Arduino MEGA2560 hochladen.

Schritt 1 Installieren Sie die neueste IDE (Wenn Sie eine IDE-Version nach 1.1.16 haben, überspringen Sie bitte diesen Schritt). IDE herunterladen von https://www.arduino.cc/en/software, installieren Sie dann die Software.

Schritt 2 Installation der WifiEsp-Bibliothek (wenn Sie die WifiESP-Bibliothek installiert haben, überspringen Sie bitte diesen Schritt)

OSOYOO MEGA-IoT Erweiterung TX/RX Pin auf OSOYOO Advanced Board for MEGA2560 Board A9/A8 Pin standardmäßig. Im Sketch-Code müssen wir also den Software Serial Port verwenden, um mit dem ESP8266 zu kommunizieren (setzen Sie A9 als TX und A8 als RX im SoftwareSerial Objekt).

Um dieses Wifi-Shield in der IDE zu verwenden, müssen wir die WiFiEsp-Master-Bibliothek von folgendem Link herunterladen:
https://osoyoo.com/driver/WiFiEsp-master.zip

Öffnen Sie die IDE, klicken Sie auf Sketch – Include Library- Add .Zip library, um die oben genannten Zip-Dateien in die IDE zu laden.

Schritt 3 Nach der Installation der oben genannten Bibliothek, laden Sie bitte den Hauptcode von folgendem Link herunter, entpacken Sie ihn, Sie werden einen Ordner namens “smarthome-lesson18” sehen:

https://osoyoo.com/driver/smarthome/smarthome-lesson18.zip

Entpacken Sie die heruntergeladene Zip-Datei. Sie werden zwei Unterordner in smarthome-lesson18 sehen: UdpSend und UDPreceive .

UdpSend sollte im Sender OSOYOO Advanced Board für Arduino MEGA2560 Gerät installiert werden. Es dient dazu, UDP-Daten zu senden (im Beispielcode lautet die Nachricht “Wie ist dein Name?”

UDPreceive sollte auf dem anderen OSOYOO Advanced Board für Arduino MEGA2560 Gerät installiert werden, das Daten vom Sendergerät empfängt. Es soll eingehende UDP-Nachrichten anzeigen und die Antwort “my name is alice” an das Sendegerät zurücksenden).

Schritt 4 Nachdem die obigen Schritte abgeschlossen sind, schließen Sie das OSOYOO MEGA2560 Board mit dem USB-Kabel an den PC an.

Schritt 5 IDE: Wählen Sie den entsprechenden Boardtyp und Porttyp für Ihr Projekt.

UdpReceive.ino in das Empfangsgerät laden

Schritt 6 Bitte führen Sie den Beispielcode für das Empfängergerät in lesson 3, Bitte notieren Sie sich die IP-Adresse des Empfängergeräts, da Sie diese im folgenden Schritt benötigen.

Schritt 7 IDE: Klicken Sie auf Datei – Öffnen, um UdpReceive.ino in das Empfängergerät zu laden

Anmerkung: In der Skizze ist die Zeile 24,25 wie folgt zu finden:

char ssid[] = "******"; // your network SSID (name)
char pass[] = "******"; // your network password

Bitte ersetzen Sie ****** durch Ihre korrekte Wifi-SSID und Ihr Passwort, sonst kann Ihr Projekt keine Verbindung zum Internet herstellen.

Laden Sie UdpSend.ino in das Sendergerät.

Schritt 8 IDE: Klicken Sie auf Datei – Öffnen, um UdpSend.ino in das Sendegerät zu laden

Anmerkung: In der Skizze ist die Zeile 24,25 wie folgt zu finden:

char ssid[] = "******"; // your network SSID (name)char pass[] = "******"; // your network password

Bitte ersetzen Sie ****** durch Ihre korrekte Wifi-SSID und Ihr Passwort, sonst kann Ihr Projekt keine Verbindung zum Internet herstellen.

Außerdem müssen Sie Zeile 20 wie folgt ändern (in Schritt 6 erfasst):

char remote_server[] = “192.168.50.102”;  // replace receiver device ip address  here

Wenn Sie die IP-Adresse des Empfängergeräts nicht kennen, müssen Sie den Beispielcode für das Empfängergerät in lesson 3 

Öffnen Sie den seriellen Monitor des Absendergeräts und Sie sehen den folgenden Bildschirm:


Öffnen Sie den seriellen Monitor des Empfängers, dann sehen Sie folgenden Bildschirm:

Sie können die Nachricht des Absenders “What’s your name?” sehen.

Wenn Sie nun zum seriellen Monitor des Absenders zurückkehren, sehen Sie folgenden Bildschirm:

Jetzt sehen Sie eine neue Antwortnachricht “I am Alice” die vom Empfängergerät stammt.