Projekt 'Wetterstation'

Inhalt:


!!!!!! In Bearbeitung !!!!!!!!

Basisversion 9.4.2019

Realisierte Funktionen Basismodell 0:
- 4 Threads (3 Sensoren, 1 LED)
- Sensor DHT22 Temperatur-/Feuchtigkeit - Aussen mit Kabel
- Sensor DHT22 Temperatur-/Feuchtigkeit - Innen 1
- Sensor BMP280 Luftdruck (und Temperatur) - Innen 2
- 24h Minimum/Maximum-Anzeige
- Midnight reset: 00 - 01 Uhr, 24h Min/Max-Anzeige zu 0.0
- LED-Ansteuerung
- Buttons für Web-Zugriff
- Eingabefeld (nur Demo)
- VNC Uebertragung über Internet

Daten:
Stromverbrauch bei 5V: 0.25 A -> ca. 8.8 kWh/Jaht
Dies entspricht etwa Fr. 2.--/Jahr Stromkosten
Auslastung CPU: ca. 1%

Neue Software Revision 10.04.2019
mit Canvas: Tendenz
Download: basis0.py [32 KB]

Die Tendenz muss noch etwas verfeinert werden
(Toleranz +/-)

Bemerkung:
- Damit das Script läuft muss die Installationsanleitung beachtet werden, insbesondere erwartet das Programm ein Foto mit Namen 'werner.gif' im Programm-Ordner und ein Hilfsprogramm von Adafruit.

Kurze Beschreibung
Bei Programmbeginn starten 4 Threads (Teilprogramme), die unabhängig voneinander arbeiten. Diese sind einfach und linear ptogrammiert, was die Uebersichtlichkeit verbessern soll.

Thread 1: Abfrage Aussensensor DHT22
- Definition lokaler Variablen
- Auslesen Aussensensor via GPIO (Run 1)
- Ausgabe an Terminal und Display
- Delay
- Auslesen Aussensensor via GPIO (Run 2)
- Ausgabe an Terminal und Display
- Bestimmung des Trends
- Bestimmung des heutigen Maxima/Minima
- Rücksetzung um Mitternacht
- Speicherung der Daten mit Zeit in einem csv-File zwecks Realtime-Plotting

Thread 2: Abfrage Innensensor
- analog Aussensensor

Thread 3: Kurzes Abfrageintervall
- Diverses
- Ausbau

Thread 4: Luftdruckmessung
- Definition lokaler Variablen
- Auslesen des I2C Bus
- Kalkulationen von Druck und Temperatur
- Delay
- Ausgabe der Resultate
- Bestimmung des Trends
- Bestimmung des heutigen Maxima/Minima
- Rücksetzung um Mitternacht
- Delay

Thread 5: CPU Zemperatur (neu)
- Auslesen aus Pi
- Anzeige im Display (links unten)

csv File als Speicher für Temperatur und Zeit


Ausbau Basisversion 0

1. Subroutine 24h Minimal-/Maximalwerte Temperatur/Luftdruck
Verfeinerung des bestehenden Programms

2. Drahtlosverbindung für Aussen-Sensor (WLAN)
- WiFi Modul ESP8266
https://www.generationrobots.com/blog/de/homeautomation-mit-raspberry-pi-und-esp8266/
-

Weitere Ausbaumöglichkeiten
- Autostart via Crontab bei Stromausfall
- Gas-Sensor
- Relais zur Ansteuerung einer Heizung/Klimaanlage
- Option Touch-Screen Display
- Grafische Auswertung mit 'matplotlib'