Nelle lezioni precedenti abbiamo appreso molti esempi su come utilizzare il browser web nel PC per monitorare e controllare un dispositivo remoto tramite il protocollo HTTP. Questo protocollo HTTP presenta alcuni problemi. Innanzitutto, richiede l’esecuzione di un server web in Arduino, che ha una memoria limitata. Pertanto, le prestazioni sono lente e non stabili. In secondo luogo, può essere controllato solo in una direzione (dal PC al dispositivo remoto). Non è una connessione 100% Thing to Thing richiesta da molte applicazioni IoT.
In questa lezione discuteremo di come utilizzare due MEGA-Iot Shield per realizzare una comunicazione Things-to-Things tramite il protocollo UDP. Si prega di notare che se avete bisogno di fare esperimenti in questa lezione, è necessario acquistare due pezzi di Osoyoo Mega-IoT extension shields.
Per effettuare una comunicazione duplex tra due IoT, è necessario utilizzare un nuovo protocollo Internet chiamato UDP. UDP è comunemente utilizzato per la posta elettronica e per i servizi di telefonia IP. È un protocollo molto semplice che consente al dispositivo Internet di inviare dati a senso unico al dispositivo di destinazione. È sufficiente comunicare al software UDP l’indirizzo IP e il numero di porta per far sì che la destinazione riceva il messaggio.
1).Collegare la scheda di estensione MEGA-IoT di OSOYOO alla scheda avanzata di OSOYOO per la scheda MEGA2560:
Schritt 1 Installieren Sie die neueste IDE (Wenn Sie eine IDE-Version nach 1.1.16 haben, überspringen Sie bitte diesen
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.
Fase 3 Dopo aver installato la libreria, scaricare il codice principale dal seguente link, decomprimerlo e vedere una cartella chiamata “smarthome-lesson18”:
https://osoyoo.com/driver/smarthome/smarthome-lesson18.zip
Decomprimendo il file zip scaricato, si vedranno due sottocartelle in smarthome-lesson18: UdpSend e UDPreceive .
UdpSend deve essere installato nel dispositivo mittente OSOYOO Advanced Board for Arduino MEGA2560. Serve a inviare dati UDP (nel codice di esempio, il messaggio è “Come ti chiami?”).
UDPreceive deve essere installato sull’altra scheda avanzata OSOYOO per Arduino MEGA2560 che riceve i dati dal dispositivo mittente. Il suo scopo è mostrare il messaggio UDP in arrivo e inviare la risposta “il mio nome è alice” al dispositivo mittente).
Fase 4 Al termine delle operazioni sopra descritte, collegare la scheda OSOYOO MEGA2560 al PC con un cavo USB.
Passo 5 IDE: Scegliere il tipo di scheda e il tipo di porta corrispondenti al progetto.
Passo 6 Eseguire il codice di esempio per il dispositivo ricevitore in lesson 3, registrare l’indirizzo IP del dispositivo ricevente, che servirà nel passaggio successivo.
Passo 7 IDE: Fare clic su file – Apri per caricare UdpReceive.ino sul dispositivo Receiver.
Anmerkung: In der Skizze ist die Zeile 24,25 wie folgt zu finden:
char ssid[] = "******"; // your network SSID (name) char pass[] = "******"; // your network password
Sostituire ****** con il SSID e la password Wifi corretti, altrimenti il progetto non sarà in grado di connettersi a Internet.
Passo 8 IDE: Fare clic su file – Apri per caricare UdpSend.ino sul dispositivo mittente.
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.
È inoltre necessario modificare la riga 20 come segue (registrata al punto 6):
char remote_server[] = “192.168.50.102”; // replace receiver device ip address here
Se non si conosce l’indirizzo IP del dispositivo di ricezione, è necessario eseguire il codice di esempio per il dispositivo di ricezione in lesson 3
Aprire il monitor seriale del dispositivo mittente e visualizzare la seguente schermata:
Aprire il monitor seriale del ricevitore e visualizzare la seguente schermata:
È possibile visualizzare il messaggio del mittente “What’s your name?”
Ora tornate al monitor seriale del mittente e vedrete la seguente schermata:
Ora è possibile vedere il nuovo messaggio di risposta“I am Alice” che proviene dal dispositivo ricevitore.
DownLoad Url osoyoo.com