
![]() |
![]() |
![]() |
![]() |
Mein smartes System zur Wetter- und Temperaturüberwachung: Von Arduino bis zum Home Server
Ich habe ein eigenes, vielseitiges System zur Überwachung der Wetter- und Temperaturdaten in meiner Wohnung und im Freien entwickelt. Im Herzen dieses Systems arbeiten ein Arduino Mega und mehrere ESP8266 (NodeMCU)-Module zusammen, um präzise Messwerte zu erfassen und bereitzustellen.
Der Arduino Mega: Die zentrale Messstation
Mein Arduino Mega bildet die Basis für die Datenerfassung. Er ist mit verschiedenen Sensoren ausgestattet, um eine breite Palette von Umweltdaten zu sammeln:
- DS18B20: Für präzise Temperaturmessungen.
- DHT11: Erfasst Temperatur und Luftfeuchtigkeit.
- BMP180: Misst Luftdruck und ebenfalls Temperatur.
Um die erfassten Daten effizient zu verarbeiten und bereitzustellen, ist ein Keyestudio W5100 Ethernet Shield an den Arduino Mega angeschlossen. Dieses Shield ermöglicht es dem Arduino, sich nahtlos in mein Heimnetzwerk zu integrieren. Sekündlich werden die Sensordaten auf einer SD-Karte gespeichert, während gleichzeitig über die Ethernet-Schnittstelle eine XML-Datei bereitgestellt wird. Mein Home Server ruft diese XML-Datei alle fünf Minuten ab, speichert die Daten in einer MySQL-Datenbank und leitet sie an meinen MQTT-Server weiter.
Du kannst die verschiedenen Versionen meiner Arduino-Software auf meiner GitHub-Seite finden:
- Version 2.0.2: Erfasst alle Daten als CSV auf SD-Karte und stellt XML via LAN bereit. Link zu GitHub
- Version 2.1.2.1: Bietet dieselben Funktionen wie 2.0.2, ergänzt um die Ansteuerung von bis zu sechs LEDs (im Skript wird aktuell eine angesteuert). Link zu GitHub
Die ESP8266 (NodeMCU): Smarte Sensoren in der Wohnung
Meine im Haus verteilten ESP8266-Module sorgen für zusätzliche Messpunkte in verschiedenen Räumen. Früher habe ich hierfür eigene Skripte verwendet, die ebenfalls XML-Dateien im Heimnetzwerk bereitstellten. Mittlerweile setze ich auf die flexible Firmware ESP Easy, die mir zwei Hauptfunktionen ermöglicht:
- HTTP GET: Die gesammelten Daten werden an ein PHP-Skript auf meinem Server übergeben.
- MQTT: Die Daten werden direkt an meinen MQTT-Server übermittelt.
Das Skript für die ESPs findest du ebenfalls auf GitHub: Link zum ESP-Skript
Verarbeitung und Visualisierung der Messdaten
Alle gesammelten Messdaten, einschließlich der Daten eines Feinstaubsensors, werden von meinem Home Server (ein HP 260G2 DM/8184 mit Debian 10) empfangen und in einer MySQL-Datenbank gespeichert. Zusätzlich werden die Daten des Arduino Mega und des Feinstaubsensors an einen MQTT-Server gesendet. Von dort werden sie von meinem Smart-Home-Steuerungssystem ioBroker übernommen.
Über eine spezielle API sind die aktuellen Messdaten auch direkt auf meiner Webseite verfügbar, sodass du jederzeit einen Überblick über die Umgebungsbedingungen erhalten kannst: Aktuelle Messdaten auf meiner Webseite
Offizielle Links und weitere Informationen
Möchtest du mehr über mein Projekt erfahren oder die Daten selbst erkunden? Hier sind einige nützliche Links:
- Meine Wetterdaten-Seite: https://weather-data.philipp-lindner.de/
- Feinstaubsensor auf openSenseMap: https://opensensemap.org/explore/5c3640ee2c801000195ef39b
- Außensensor-Daten auf openSenseMap: https://opensensemap.org/explore/5c37640d5380fd0019cf72fd
- Diskussion in meinem Forum: https://www.kichan-forum.any64.de/forum/index.php?thread/13-wetterstation-mit-arduino-und-esp/
Dieses Projekt ist ein großartiges Beispiel dafür, was man mit Arduino, ESP und ein wenig Programmierkenntnissen erreichen kann. Ich freue mich immer über Feedback und Austausch!
Shot URL: https://anic.iot64.de/ph/L3BhZ2VzL2RlL3Byb2pla3RlL3dldHRlcnN0YXRpb24tbWl0LWFyZHVpbm8tdW5kLWVzcC5waHA=
Lade Social Media Links...