Inhaltsverzeichnis:
- Schritt 1: Erstellen und richten Sie Ihre Thingspeak-Kanäle ein
- Schritt 2: Einrichten der Arduino IDE, Bibliotheken und Konfigurieren des BME280
- Schritt 3: Programmieren Sie den ESP8266 mit der Arduino IDE
- Schritt 4: Gehen Sie zurück zum Thingspeak, um einige Datenoptimierungen durchzuführen
- Schritt 5: Bearbeiten Sie die bereitgestellte HTML-Datei
Video: ESP8266 NodeMCU mit BME280 Messgeräten & Diagramm - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:21
Ausgefallene Messgeräte und Diagramme für Ihr ESP8266 NodeMCU-Entwicklungsboard mit BME280 Temperatur-, Feuchtigkeits- und Drucksensor. Thingspeak speichert alle Ihre Daten in der Cloud, damit Sie sie (hoffentlich) über Jahre hinweg jederzeit abrufen können. Die Anzeigen und das Diagramm werden aus den bei Thingspeak gespeicherten Daten befüllt und alle 5 Minuten automatisch aktualisiert.
Benötigte Artikel:
ESP8266 NodeMCU-Entwicklungsboard (3,79 $ von Banggood.com Hongkong)
Bosch BME280 (5,63 $ von Banggood.com Hongkong)
Steckbrett-Jumper (3,09 $ von Banggood.com Hong Kong)
Steckbrett (2,28 $ von Banggood.com Hongkong)
Stromversorgung, kostenlos, wenn Sie ein Micro-USB-Telefonladegerät haben
Micro-USB-Kabel, kostenlos, wenn Sie bereits eines haben
Arduino-IDE, kostenloser Download
Holen Sie sich die.ino- und. HTML-Codedateien hier
Schritt 1: Erstellen und richten Sie Ihre Thingspeak-Kanäle ein
1. Erstellen Sie ein kostenloses Thingspeak-Konto und einen neuen Kanal unter https://thingspeak.com, rufen Sie den Kanal "ESP8266-NodeMCU-12E-BME280" auf
2. Der neue Kanal sollte 3 Felder mit der Bezeichnung Temperatur Feuchte Druck in dieser bestimmten Reihenfolge aufweisen (Großschreibung des ersten Buchstabens beachten).
3. Notieren Sie sich Ihre neue "Kanal-ID" XXXXXX unter "Kanaleinstellungen"
4. Klicken Sie auf den Link "API Keys" und notieren Sie sich Ihre "API Write" und "Read API Keys" XXXXXXXXXXXXXXXX. Machen Sie dies auch unter Teilen zu einem öffentlichen Kanal.
5. Erstellen Sie einen zweiten Thingspeak-Kanal, der die "Heute" (seit Mitternacht) High Low-Daten enthält. Nennen Sie es "BME280 Daily High Low Data"
6. Dieser neue Kanal sollte 6 Felder mit der Bezeichnung Tmax Tmin Hmax Hmin Pmax Pmin in dieser bestimmten Reihenfolge haben (Großschreibung des ersten Buchstabens beachten).
7. Notieren Sie sich die "BME280 Daily High Low Data" "Channel ID", "Read" & "Write API Keys" genau wie in den obigen Schritten.
Schritt 2: Einrichten der Arduino IDE, Bibliotheken und Konfigurieren des BME280
8. Befolgen Sie die Anweisungen zur Installation des Arduino IDE & ESP8266-Kerns unter
9. Starten Sie die Arduino IDE, damit wir die vier benötigten Bibliotheken installieren können.
10. Sie benötigen die Bibliothek "Adafruit Unified Sensor Driver", installieren Sie diese im "Library Manager" in der Arduino IDE. Menüskizze Bibliothek einschließen Bibliotheken verwalten führen Sie eine Suche nach Typ = "Empfohlenes" Thema = "Sensoren" durch und geben Sie dann die Wörter Adafruit Unified Sensor Driver in das Suchfeld ein. Der gewünschte sagt "Adafruit Unified Sensor Driver by Adafruit"
11. Außerdem benötigen Sie die "Adafruit BME280 Library", die Sie im "Library Manager" in der Arduino IDE installieren. Menüskizze Bibliothek einschließen Bibliotheken verwalten Suchen Sie nach Typ = "Empfohlenes" Thema = "Sensoren" und geben Sie dann die Wörter Adafruit BME280 Bibliothek in das Suchfeld ein. Das gewünschte sagt "Adafruit BME280 Library by Adafruit"
12. Eine weitere Bibliothek, die Sie benötigen, ist Wire.h, installieren Sie sie im "Library Manager" in der Arduino IDE. Menü, Skizze Bibliothek einschließen Bibliotheken verwalten Führen Sie eine Suche nach Typ = "Beigetragen" Thema = "Signaleingang/-ausgang" durch und geben Sie dann das Wort Draht in das Suchfeld ein. Das gewünschte sagt "Wire Built-in by Arduino" Höchstwahrscheinlich am unteren Rand der Auswahl.
13. Eine weitere Bibliothek, ESP8266WiFi, installieren Sie sie im "Library Manager" in der Arduino IDE. Menü, Skizze Bibliothek einschließen Bibliotheken verwalten Führen Sie eine Suche nach Typ = "Beigetragen" Thema = "Kommunikation" durch und geben Sie dann das Wort ESP8266wifi in das Suchfeld ein. Das gewünschte sagt "ESP8266wifi Built-in von Ivan Grokhotkov"
14. Die I2C-Adresse für BME280 ist in der Datei Adafruit_BME280.h fest codiert (suchen Sie nach der Zeile #define BME280_ADDRESS 0x77) im Ordner Adafruit_BME280_Library. Die BME-Sensormodule von Adafruit sind fest verdrahtet, um die I2C-Adresse 0x77 zu verwenden. Der BME280 kann jedoch eine etwas andere I2C-Adresse (0x76) haben, wenn sein externer SDO-Pin geerdet ist. Wenn Sie Sensormodule eines Drittanbieters verwenden, stimmt deren Adresse wahrscheinlich nicht mit dem Standardwert in der Adafruit-Bibliothek überein. Die I2C-Adresse der meisten BME280-Sensormodule, die bei eBay oder Aliexpress erhältlich sind, lautet beispielsweise 0x76. Wenn Sie keine Antwort vom Sensor erhalten, der die Standardadresse in der Datei Adafruit_BME280.h verwendet, müssen Sie sie möglicherweise in 0x76 ändern.
BME280 & ESP8266 Anschlusspunkte. ESP8266 3.3V zu BME280 Vin, ESP8266 GND zu BME280 GND, ESP8266 D4 zu BME280 SCL, ESP8266 D3 zu BME280 SDA. 15. Öffnen Sie die bereitgestellte Datei ESP8266-NodeMCU-12E-BME280.html in einem Texteditor und geben Sie Ihre "ESP8266-NodeMCU-12E-BME280" (der erste von Ihnen erstellte Kanal) "Channel ID" & "Read API Key" für die Variablen key1 & chan1. Geben Sie auch den "Read API Key" und die "Channel ID" für "BME280 Daily High Low Data" (den zweiten von Ihnen erstellten Kanal) für key2 und chan2 ein. Geben Sie außerdem Ihren Zeitzonen-Offset von UTC ein. Wie bei -5 für mich. Alle Werte müssen innerhalb der bereitgestellten einfachen Anführungszeichen 'XXXXX' stehen. Speichern und beenden Sie den Texteditor.
Schließen Sie Ihren ESP8266 mit dem USB-Kabel an Ihren Computer an und wählen Sie dann Ihren seriellen Port als USB-Port aus.
Linux-Benutzer müssen möglicherweise den Besitz des USB-Ports ändern, um mit /dev/ttyUSB0 zu kommunizieren, wie in 'sudo chown yourusername /dev/ttyUSB0' oder was auch immer Sie als Port im Setup ausgewählt haben.
Schritt 3: Programmieren Sie den ESP8266 mit der Arduino IDE
16. Als nächstes programmieren wir den ESP8266. Schließen Sie ein USB-Kabel zwischen Ihrem ESP8266 und Ihrem Computer an.
Laden Sie die bereitgestellte Datei New_BME_Sensor.ino in die Arduino IDE. Ihr BME280-Sensor sollte an D3 (SDA) & D4 (SCL) am ESP8266 angeschlossen sein. Geben Sie Ihren "ESP8266-NodeMCU-12E-BME280" (der erste von Ihnen erstellte Kanal) "Write Key" "Wireless SSID" & "Password" in den richtigen Abschnitt der Skizze ein. Klicken Sie dann auf den Menüpunkt "Skizze" & "Hochladen". Nachdem Sie die Skizze (Fortschritt erreicht 100%) auf Ihren ESP8266 hochgeladen haben, können Sie den seriellen Monitor öffnen (das Symbol oben rechts sieht aus wie eine Lupe) und Ihre Daten alle 5 Minuten nach 5 Minuten ausdrucken. Die Daten werden in 5-Minuten-Intervallen an Thingspeak gesendet, so dass es einige Zeit dauern wird, bis Sie aussagekräftige Diagrammdaten haben, aber Sie sollten nach 5 Minuten Anzeigewerte haben.
Stellen Sie sicher, dass Sie vom BME280 im seriellen Monitor korrekte Messwerte erhalten.
Die erste Messung wird wahrscheinlich eine ungültige nan sein.
Warten Sie einige Minuten bis zum nächsten Messwert und überprüfen Sie, ob die Messwerte gut aussehen.
Schritt 4: Gehen Sie zurück zum Thingspeak, um einige Datenoptimierungen durchzuführen
17. Nun, während die Daten langsam auf Thingspeak hochgeladen werden, können wir einige Optimierungen vornehmen, um zusätzliche Daten aus dem hochzuladenden Inhalt zu erhalten. Gehen Sie zurück zur Thingspeak-Website und klicken Sie auf der Thingspeak-Kanalseite "BME280 Daily High Low Data" (der zweite von Ihnen erstellte Kanal) auf die grüne Schaltfläche "MATLAB Analysis". Vorlage "Benutzerdefiniert (kein Startercode)" auswählen
18. Benennen Sie die MATLAB-Analyse "Calculate Min Max Since Midnight".
19. Kopieren Sie den Code MATLAB Analysis.txt in den dafür vorgesehenen Platz. Geben Sie die "Kanal-ID" für "ESP8266-NodeMCU-12E-BME280" (den ersten von Ihnen erstellten Kanal) in "readChannelID" ein. Geben Sie die "BME280 Daily High Low Data" (den zweiten von Ihnen erstellten Kanal) ein. Schreiben Sie "Channel ID" & "Write Key" in writeNewChannelID bzw. writeAPIKey. Ich weiß, es klingt verwirrend (lesen Sie es noch einmal). Klicken Sie auf Speichern und ausführen. Wenn Sie es richtig gemacht haben und der Lesekanal öffentlich ist, werden keine Fehler angezeigt und die Werte werden erfolgreich gedruckt. Hinweis: Möglicherweise wird ein Fehler angezeigt, wenn noch keine Daten in diesen Kanal hochgeladen wurden. Trotz Fehler weiter. Wenn Sie möchten, können Sie auf Speichern und Ausführen klicken, um sicherzustellen, dass es nach dem Hochladen der Daten funktioniert.
20. Als nächstes müssen wir eine "Zeitsteuerung" erstellen, um diesen Code alle 5 Minuten auszulösen und unsere Daten werden in den Kanal "BME280 Daily High Low Data" (der zweite von Ihnen erstellte Kanal) geschrieben. Wählen Sie auf der Hauptseite von "BME280 Daily High Low Data" (der zweite von Ihnen erstellte Kanal) oben Apps aus. Wählen Sie unter Aktionen "TimeControl" und dann den grünen Button "New TimeControl". Nennen Sie es "Send High Low Temps ESP8266". Wählen Sie bei Bedarf Ihre Zeitzone aus und wählen Sie unter Häufigkeit "Wiederkehrend". Wählen Sie unter Wiederholung Minute aus. Alle 5 Minuten laufen lassen. Aktion sollte MATLAB Analysis sein und "Code to Execute" ist "Calculate Min Max Since Midnight". TimeControl speichern.
Schritt 5: Bearbeiten Sie die bereitgestellte HTML-Datei
Bearbeiten Sie die HTML-Dateien und suchen Sie nach Kommentaren, die "******** Change Me 1 of 8 *********" sagen. Ändern Sie diese nach Ihren Wünschen.
Anmerkungen:
Einige der Textfelder und das Wochendiagramm werden nicht korrekt ausgefüllt, bis Sie einen ganzen Tag und eine ganze Woche mit Daten für den 24-Stunden- und Wochenabschnitt und das Diagramm haben. Sobald Sie eine Menge Daten haben, können Sie mit dem Mausrad in die Diagramme hineinzoomen (Rechtsklick zum Zurücksetzen). Sie können auch ein viertes Messgerät (wie in den Screenshots zu sehen) von einem anderen Sensor von einem anderen Kanal haben, aber ich habe die relevanten Teile auskommentiert. Wenn Sie sich versiert fühlen, schließen Sie es an. Es gibt auch einige Timing-Probleme, die Sie beachten sollten. Sie werden wahrscheinlich nicht die absolut aktuellsten Daten haben, aber sie sollten immer weniger als 5 Minuten alt sein. Dies kommt davon, wenn die Zeitsteuerung ausgelöst wird, wenn die Daten vom ESP8266 gesendet wurden und wenn Sie die Webseite geladen / aktualisiert haben.
Öffnen Sie die bereitgestellte Datei ESP8266-NodeMCU-12E-BME280.html in Ihrem Webbrowser und Sie sollten die Anzeigen und das Diagramm ausgefüllt sehen.
Holen Sie sich die.ino- und. HTML-Codedateien hier
Empfohlen:
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Bewegungsaktivierte Cosplay Wings mit Circuit Playground Express - Teil 1: 7 Schritte (mit Bildern)
Bewegungsaktivierte Cosplay-Flügel mit Circuit Playground Express - Teil 1: Dies ist Teil 1 eines zweiteiligen Projekts, in dem ich Ihnen meinen Prozess zur Herstellung eines Paars automatisierter Feenflügel zeige. Der erste Teil des Projekts ist der Mechanik der Flügel, und der zweite Teil macht es tragbar und fügt die Flügel hinzu
So bauen Sie Ihr eigenes Anemometer mit Reed-Schaltern, Hall-Effekt-Sensor und einigen Schrott auf Nodemcu. - Teil 1 - Hardware: 8 Schritte (mit Bildern)
So bauen Sie Ihr eigenes Anemometer mit Reed-Schaltern, Hall-Effekt-Sensor und einigen Schrott auf Nodemcu. - Teil 1 - Hardware: EinführungSeit ich mit dem Studium von Arduino und der Maker-Kultur begonnen habe, habe ich gerne nützliche Geräte aus Schrott- und Schrottstücken wie Kronkorken, PVC-Stücken, Getränkedosen usw. gebaut. Ich liebe es, eine Sekunde zu geben Leben für jedes Stück oder jeden Kumpel
So erstellen Sie ein Diagramm in MS Excel 2016 – wikiHow
So erstellen Sie ein Diagramm in MS Excel 2016: Diese Schritt-für-Schritt-Anleitung erklärt, wie Sie ein Diagramm mit Microsoft Excel erstellen. Jeder Benutzer mit einem Datensatz und Zugriff auf das Excel-Programm kann ein Diagramm erstellen, indem er diese Anweisungen genau befolgt. Jede schriftliche Anweisung ist gem
$3 & 3 Steps Laptopständer (mit Lesebrille & Stiftablage): 5 Schritte
3 $ & 3 Steps Laptopständer (mit Lesebrille & Stiftablage): Dieser $ 3 & Der Laptopständer mit 3 Schritten kann innerhalb von 5 Minuten hergestellt werden. Es ist sehr stark, leicht und kann zusammengeklappt werden, um es überall hin mitzunehmen