Erstens das Prinzip deresp8266 veröffentlicht Nachrichten über mqtt, und das WeChat-Applet abonniert Nachrichten über mqtt. Nachdem das Applet abonniert hat, kann es von esp8266 gesendete Nachrichten in Echtzeit empfangen. Zweitens Temperatur- und FeuchtigkeitstestHier kommt der Port D4 zum Einsatz. Diese Demo wurde mit Arduino IDE entwickelt. Weitere Informationen zur ESP8266-Umgebungskonfiguration von Arduino IDE finden Sie unter: Umgebungskonfiguration: Klicken Sie hier, um zu springen Installieren der Bibliothek Dieses Beispiel verwendet eine sehr einfache und leicht zu verwendende Simple-DHT-Sensorbibliothek, die mit ESP8266 funktioniert. Die Bibliothek kann einfach über den Arduino IDE-Bibliotheksmanager installiert werden. Testverfahren: #include <SimpleDHT.h> // für DHT11, // VCC: 5V oder 3V // Masse: Masse // DATEN: 2 int pinDHT11 = D4; EinfachDHT11 dht11(pinDHT11); void setup() { Seriell.begin(115200); } void schleife() { // mit der Arbeit beginnen... Serial.println("==================================="); Serial.println("Beispiel DHT11..."); // ohne Samples lesen. Byte-Temperatur = 0; Byte Luftfeuchtigkeit = 0; int err = SimpleDHTErrSuccess; wenn ((err = dht11.read(&temperature, &humidity, NULL)) != SimpleDHTErrSuccess) { Serial.print("Lesen von DHT11 fehlgeschlagen, Fehler="); Serial.println(Fehler);Verzögerung(1000); zurückkehren; } Serial.print("Beispiel OK: "); Serial.print((int)temperature); Serial.print(" *C, "); Serial.print((int)humidity); Serial.println(" H"); // Die Abtastrate von DHT11 beträgt 1 Hz. Verzögerung (1500); } Wenn es normal funktioniert, gibt der serielle Port normal aus, wie in der folgenden Abbildung gezeigt: Drittens: Temperatur und Luftfeuchtigkeit in die Cloud übertragenWenn Temperatur und Luftfeuchtigkeit im vorherigen Schritt gelesen und ausgegeben werden können, können die Daten basierend auf der vorherigen Version in die Cloud hochgeladen werden. Es wurde eine Schaltflächensteuerung hinzugefügt und die Daten werden mit # umschlossen, sodass die App die Daten mithilfe von Zeichenfolgentrennung trennen kann, #23#80#on, also #Temperatur#Feuchtigkeit#Schaltflächenstatus. Das Miniprogramm übernimmt den Wert gemäß der mit # segmentierten Zeichenfolge zur Anzeige. Wenn die hochgeladenen Daten nicht nur Temperatur und Luftfeuchtigkeit sind, können Sie nach dem #-Zeichen weiterhin &msg=#23#80#data1#data2#data3#data4#\r\n hinzufügen. Wenn die App die Zeichenfolge aufteilt, muss sie entsprechend den hochgeladenen Daten aufgeteilt werden. Laden Sie die aktualisierte Version herunter: Klicken Sie hier, um https://cloud.bemfa.com/zip/mqtt/dht11_led.zip herunterzuladen. Was muss geändert werden :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::3s::::::333:33333333333333333333ag33333333333333333333333333333 es333333333333333333333333333333 es33 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann dann dann dann aber33333333333333333333 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 dann3 dann3 aber3 dann3 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann nichtie dasen aber aber abersossoss aberstens aberstensss aberten aber abers :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::3s::::::333:33333333333333333333ag33333333333333333333333333333 es333333333333333333333333333333 es33 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann dann dann dann aber33333333333333333333 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 dann3 dann3 aber3 dann3 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann nichtie dasen aber aber abersossoss aberstens aberstensss aberten aber abers ::::::::::: Erstellen Sie zwei neue Themen in der Bafa MQTT-Geräte-Cloud-Konsole. Der Themenname ist beliebig. Beispielsweise wird temp004 zum Übertragen von Temperatur und Luftfeuchtigkeit und led002 zum Steuern von LEDs verwendet. In diesem Beispiel werden temp004 und led002 verwendet. Wenn Sie den Beispielcode verwenden, sollten Sie ihn in Ihren eigenen Themennamen ändern, der aus Buchstaben, Zahlen oder einer Kombination aus Buchstaben und Zahlen bestehen kann. UID ist der private Schlüssel des Benutzers, der nach der Registrierung und Anmeldung bei der Buffa Maker Cloud Console abgerufen werden kann. Hinweis: Erstellen Sie ein Thema in der MQTT-Gerätecloud. Nach der Anmeldung können Sie die UID Ihres privaten Schlüssels in der Konsole sehen, wie in der Abbildung dargestellt: Der WLAN-Name ist der WLAN-Name Ihres Routers. Dabei muss die Groß- und Kleinschreibung beachtet werden. Wenn Sie ihn falsch eingeben, können Sie keine Verbindung zum Netzwerk herstellen. Im Beispiel werden alle drei Sekunden Daten hochgeladen: long now = millis(); //Aktuellen Zeitstempel abrufen if (now - lastMsg > timeval) { //Wenn 3 s erreicht sind, Daten hochladen lastMsg = now; // ohne Samples lesen. Byte-Temperatur = 0; Byte Luftfeuchtigkeit = 0; int err = SimpleDHTErrSuccess; wenn ((err = dht11.read(&temperature, &humidity, NULL)) != SimpleDHTErrSuccess) { Serial.print("Lesen von DHT11 fehlgeschlagen, Fehler="); Serial.println(Fehler); Verzögerung(1000); zurückkehren; } String msg = "#" + (String)temperatur + "#" + (String)feuchtigkeit + "#" + ledstatus; //Datenpaket#Temperatur#Feuchtigkeit#Schalterstatus# client.publish(dhttopic, msg.c_str()); //Daten hochladen} Wenn der Router Netzwerkzugriff hat, werden die Daten automatisch hochgeladen. Sie können die Webseite in der Bafa MQTT-Geräte-Cloud aktualisieren, um die hochgeladenen Daten anzuzeigen. Wie in der folgenden Abbildung dargestellt: Die Daten werden beim Hochladen mit # gekapselt. 27 ist die Temperatur, 24 die Luftfeuchtigkeit und „Aus“ ist der Status des hochgeladenen Lichts. Viertens: Entwicklung des WeChat-AppletsRegistrieren Sie ein Miniprogrammkonto auf der öffentlichen WeChat-Plattform, holen Sie sich die Miniprogramm-App-ID und klicken Sie rechts auf - Entwicklung -> Entwicklungsverwaltung -> Entwicklungseinstellungen ----> Entwickler-ID. Sie können sehen, dass es so aussieht: wx34a2063de5cec04b. Es wird beim Importieren des folgenden Projekts verwendet. Klicken Sie rechts auf Entwicklung –> Entwicklungsverwaltung –> Entwicklungseinstellungen ----> Serverdomänenname. Klicken Sie beim unten stehenden Serverdomänennamen auf „Ändern“ und fügen Sie die Domänennamen https://api.bemfa.com und wss://bemfa.com zum zulässigen Domänennamen der Anforderung bzw. zum zulässigen Socket-Domänennamen hinzu. Speichern und senden Sie anschließend. Wie unten gezeigt. Laden Sie die WeChat-Entwicklertools herunter und installieren Sie sie. Diese können von Baidu heruntergeladen werden. Laden Sie das Demoprogramm herunter. Download-Adresse: Zum Herunterladen klicken Öffnen Sie die WeChat-Entwicklertools, das Miniprogrammprojekt und importieren Sie das Projekt. Wählen Sie das gerade heruntergeladene und entpackte Demoprogramm im Verzeichnis aus, tragen Sie die AppID Ihres Miniprogramms in AppID ein und klicken Sie anschließend unten auf „Importieren“. Wie unten gezeigt. Dieses Beispielprogramm ist sehr einfach. Sie können es weiterentwickeln und verschiedene Funktionen hinzufügen, Hintergründe hinzufügen, Farben optimieren usw. Wenn Sie es einfach verwenden möchten, müssen Sie nur die UID- und Themeninformationen in der Datei /pages/index/index.js nach Ihren eigenen Wünschen ändern. Die UID und das Thema hier müssen mit der UID und dem Thema übereinstimmen, die von esp8266 ausgefüllt wurden. Hier gibt es zwei Themen, eines zur Übertragung von Temperatur und Luftfeuchtigkeit und das andere zur Steuerung der LED. Wie unten gezeigt. Daten: { uid:"4d9ec352e0376f2110a0c601a2857225",//Benutzerschlüssel, erhalten von der BAFAC Cloud Console ledtopic:"led002",//LED-Thema steuern, erstellt von der MQTT-Konsole dhttopic:"temp004",//Temperatur- und Feuchtigkeitsthema übertragen, erstellt von der Konsole device_status:"offline",//Zeichenfolge, die anzeigt, ob die LED online ist, standardmäßig offline ledOnOff:"off", geprüft: false, //Der Status der LED. Die Standard-LED ist aus. wendu:"", //Temperaturwert, der Standard ist leer. shidu:"", //Feuchtigkeitswert, der Standard ist leer. ledicon:"/utils/img/lightoff.png", //Zeigt den Status des LED-Symbols an. Standardmäßig wird das Statussymbol des Clients geschlossen: null, //mqtt-Client, der Standard ist leer}, Nachdem die Änderung abgeschlossen ist, drücken Sie Strg+S, um die Änderungen zu speichern. Sie können zum Debuggen auf die Schaltfläche auf dem linken Bildschirm klicken, wie unten gezeigt. Die Konsole kann die Debuginformationen des Applets anzeigen. Standardmäßig werden alle 3 Sekunden automatisch Daten vom Server angefordert, um die Statusinformationen von esp8266 zu überprüfen. Klicken Sie auf die Schaltfläche „Öffnen“ oder „Schließen“, um den Debugging-Assistenten für die serielle Schnittstelle des esp8266 zu öffnen und zu prüfen, ob esp8266 den Befehl empfangen hat. Wenn esp8266 im ersten Schritt mit dem Internet verbunden wurde, kann es Informationen empfangen. Wenn die Schnittstelle und weitere Funktionen entwickelt sind. Sie können auf die Schaltfläche „Hochladen“ über dem WeChat-Entwicklertool klicken, wie unten gezeigt. Nachdem der Upload erfolgreich war, melden Sie sich bei der öffentlichen WeChat-Plattform an, bei der Sie sich gerade registriert haben. Im Abschnitt Versionsverwaltung können Sie das gerade hochgeladene Miniprogramm sehen. Senden Sie es zur Überprüfung. Normalerweise wird es nach etwa einem Tag genehmigt. Melden Sie sich nach der Überprüfung bei der öffentlichen WeChat-Plattform an und senden Sie es zur Veröffentlichung ab. Wenn Sie es selbst verwenden, fügen Sie bitte eine Anmeldeüberprüfungsfunktion hinzu, z. B. um zu überprüfen, ob eine bestimmte Zeichenfolge korrekt ist usw. Andernfalls können andere es nach dem Start des Miniprogramms nach Belieben steuern. Dies ist das Ende dieses Artikels über WeChat-Applet + mqtt, esp8266 Temperatur- und Feuchtigkeitsmessung. Weitere verwandte Inhalte zum WeChat-Applet esp8266 Temperatur- und Feuchtigkeitsmessung finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder weiter in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
Kürzlich musste ich einen Player in eine Webseite ...
Vorwort Im Internet gibt es zahlreiche Informatio...
<meta http-equiv="x-ua-kompatibel" co...
Vorwort: Das Jahr neigt sich dem Ende zu. Ist es ...
Vorwort Ich habe vor kurzem eine kleine Demo gesc...
Bei der Verwendung von MySQL werden häufig Trigge...
Ich wurde am frühen Morgen durch einen Anruf gewe...
In diesem Artikel wird das MySQL-Sicherungsskript...
Vorwort Aufgrund von Bandbreitenbeschränkungen un...
<button>-Tag <br />Definition und Verw...
Nachteile von Tabellen 1. Tabellen nehmen mehr Byt...
Installieren Sie nginx Beachten Sie, dass Sie ngi...
Inhaltsverzeichnis Ich habe vor Kurzem React gele...
Die Gesamtarchitektur von MySQL ist in die Server...
Dieser Artikel stellt Ihnen ein einfaches HTML-Ap...