actionbrowser.com
ESP8266 Daten übertragen im Wlan - Deutsch - Arduino Forum
= WL_CONNECTED) { (". "); delay(100);} intln("WLAN verbunden! "); intln("IP Addresse: "); intln(WiFi. localIP());} void loop() { if (! Esp8266 daten senden und empfangen youtube. nnect(server, serverport)) { intln("Verbindungsfehler"); return;} // Daten per GET senden String url = "/fhem? "; url += "INDEVICE="; url += "set%20MEINDEVICE%20on"; intln(url); (String("GET ") + url + " HTTP/1. 1\r\n" + "Host: " + server + "\r\n" + "Connection: close\r\n\r\n"); delay(50); // Server-Antwort ausgeben while(client. available()){ String antwort = adStringUntil('\r'); (antwort);} delay(1000);} Bewegungsmelder mit NodeMCU und FHEM Im nächsten Beispiel bauen wir das Skript etwas aus: Der NodeMCU (auf dem sich bei uns der ESP Chip befindet) überwacht einen Raum mit einem einfachen Infrarot-Bewegungssensor, zum Beispiel einem HC-SR501 (Tipp: in diesen Artikeln zeigen wir, wie man den Sensor mit einem Arduino und einem Raspberry Pi ausliest und anschließt! ). Registriert er eine Bewegung an Pin D4 (GPIO2 auf dem NodeMCU! ), schaltet er an Pin D5 (GPIO14) eine LED ein und sendet die Daten an FHEM: Dafür haben wir vorher in FHEM einen dummy "Bewegung" angelegt, der jetzt auf "on" oder "off" gesetzt wird: define Bewegung dummy Erkennt das ESP Board eine Bewegung, wird die interne Variable "bewegung" auf 100 gesetzt und zählt dann langsam herunter: Misst der Sensor in dieser Zeit keine neue Bewegung, wird die LED ausgeschaltet und der ESP sendet ein "set Bewegung off" an FHEM.
Der ESP Chip ist ein kleiner Funkchip, mit dem sich per WiFi / WLAN kommunizieren lässt: Auf einem NodeMCU oder Wemos Board lässt er sich auch mit der Arduino Software programmieren und verhält sich, bis auf eine veränderte Pin-Belegung, fast wie ein etwas schnellerer Arduino mit WLAN-Chip. Da die Boards mit etwa 6 Euro (zum Beispiel bei eBay oder bei Amazon) recht günstig sind, lassen sich sehr leicht eigenständige Sensoren bauen, die die Daten dann per Funk weitergeben und direkt mit der freien Smart-Home Software FHEM kommunizieren können. In unserem Beispiel verbindet sich der NodeMCU zunächst mit dem eigenen WLAN: Dafür muss man Passwort und den Namen des Netzwerkes (SSID) angeben. Anschließend sendet er die Daten per GET Befehl an FHEM und schaltet das Gerät "MEINDEVICE" an, in dem wir den Befehl "set MEINDEVICE on" an FHEM senden: #include "ESP8266WiFi. ESP8266 MQTT Tutorial für dein Smarthome | Smarthome Blogger. h" const char* server = "192. 168. 1. 1"; // FHEM Server const int serverport = 8083; const char* ssid = "MEINE_WLAN_SSID"; const char* passwort = "MEIN_WLAN_PASSWORT"; WiFiClient client; unsigned long bewegung = 0; void setup() { (9600); // Monitor starten intln(" "); ("Verbindungsaufbau mit: "); intln(ssid); (ssid, passwort); while (()!
Für dieses Projekt ist jedoch u. U. ein Downgrade der Boarddefinitionen auf 2. 4. 2 erforderlich. Dazu entfernen wir das Modul im Boardverwalter und intallieren es im Anschluss neu: Danach stehen die Boards wieder wie gewohnt zur Verfügung. Um mit verschiedenen Versionständen, der Definitionen und Librarys besser zurechtzukommen möchte ich dem etwas fortgeschrittenen Bastler an dieser Stelle PlatformIO nahe legen. Die benötigte Library für den SMTP-Versand gibt es hier zum Download. Diese können wir als * downloaden und in der Arduino-IDE unter Sketch -> Bibliothek einbinden -> hinzufügen. Esp8266 daten senden und empfangen in de. Der Anschließende Neustart der Arduino-IDE ist obligatorisch. Nach dem erfolgreichen Import steht uns in der IDE unter: "Datei -> Beispiele -> Beispiele aus eigenen Bibliotheken -> ESP8266SMTP -> " ein Beispiel zur Verfügung welches wir jedoch noch anpassen müssen. Da der ESP eine WiFi Verbindung benötigt um eine E-Mail senden zu können passen wir zuerst im Header die SSID und das W-Lan-Passwort an. Die nächsten notwendigen Anpassungen sind in der Void-Schleife zu finden: Tragen Sie im unteren Abschnitt ab tEmail Ihre jeweiligen Daten ein.