Wetterstation

Überblick

Mit diesem Projekt wird eine kleine Wetterstation realisiert. Die Wetterstation soll Temperatur, Luftdruck und Luftfeuchtigkeit erfassen, aufzeichnen und als Grafik zur Anzeige bringen. Die von den Sensoren gelieferten Daten werden vom Raspberry Pi in einer Datei abgelegt. Ein Windows-Rechner erzeugt aus diesen Daten eine anschauliche Grafik.

 

Die dazu benötigten Programme, eines für den Raspberry Pi und eines für den Windows-Rechner, sind mit Java erstellt.

 

Hardware

Bei diesem Projekt wird folgende Hardware verwendet:

• 1 Raspberry Pi 3 Model B mit Raspbian Stretch

• 1 Weather Shield von Sparkfun

• Stiftleisten zum Einlöten in das Shield

• Diverse Leitungen

 

Weather Shield von Sparkfun

Mit dem Weather Shield von Sparkfun können Sie Luftdruck, Luftfeuchtigkeit, Helligkeit und Temperatur messen. Mit je einer grünen und einer blauen LED können Sie den Status anzeigen. Weitere Messungen, z. B. Windgeschwindigkeit und Niederschlag, sind optional möglich. Die dafür notwendigen Sensoren können an das Modul über Steckverbindungen angeschlossen werden.

Weitere Information zu dem Weather Shield erhalten Sie auf den Internet-Seiten von Sparkfun unter folgender Adresse:

https://www.sparkfun.com/products/12081

 

Auf dieser Seite finden Sie auch die Datenblätter für die Sensoren und den Stromlaufplan für das komplette Weather Shield.

Weather Shield

Auf dem Bild oben ist das Weather Shield ohne Stiftleisten und Anschlüsse zu sehen. Diese müssen Sie, je nach Bedarf, erst einlöten.

Weather Shield

Dieses Bild zeigt das Weather Shield mit Anschlüssen und zusätzlichen Sensoren bestückt.

 

Auf dem Weather Shield sind folgende Sensoren verbaut:

• HTU21D zur Messung der Luftfeuchtigkeit und der Temperatur

• MPL3115A2 zur Messung des Luftdrucks

• ALS-PT19 zur Messung der Helligkeit

 

Die Messgenauigkeiten der Sensoren sind:

• Luftfeuchtigkeit ± 2 %

• Luftdruck ± 50 Pa

• Temperatur ± 0,3 °C

Weitere Daten können Sie den Datenblättern der einzelnen Sensoren entnehmen.

 

Das Weather Shield kann mit 2 RJ11-Anschlüsse für den optionalen Anschluss von Wind- und Regensensoren bestückt werden. Außerdem kann ein 6-poliger GPS-Anschluss für ein optionales GP635T GPS-Modul angebracht werden.

Das Modul kann mit einer Versorgungsspannung von 3,3 V bis 16 V betrieben werden und verfügt über einen Spannungsregler sowie einen Signalübersetzer.

Beachten Sie, dass das Modul ohne Buchsen und Verbinder sowie optionale Sensoren geliefert wird. Diese Teile müssen Sie zusätzlich erwerben.

 

Stromlaufplan

Der Stromlaufplan zeigt das Weather Shield und die GPIO-Schnittstelle des Raspberry Pi mit ihren Verbindungen. Die Pin-Nummerierung der GPIO-Schnittstelle bezieht sich auf den Raspberry Pi 3 Model B. Die Schaltung ist ohne zusätzliche Stromversorgung aufgebaut. Da das Weather Shield nur wenig Strom benötigt, ist die Leistung der Stromversorgung des Rasperry Pi ausreichend.

Weather Shield

Das Weather Shield ist per I2C-Bus (Anschlüsse SDA und SCL) mit dem Raspberry Pi verbunden. Mit dieser Schaltung werden nicht alle Funktionen des Weather Shield genutzt. Die Ansteuerung der LEDs auf dem Weather Shield wäre z. B. eine weiter Funktion.

 

Software

Die Software für die Wetterstation ist mit Java geschrieben. Auf dem Raspberry Pi liest das Programm SensorenAuslesen.class die Sensoren aus und legt die Daten in der Datei Wetter_Werte.csv ab. Auf dem Windows-Rechner holt das Programm Wetterstation10.jar die Daten vom Raspberry Pi ab und zeigt diese in einer Grafik an.

 

Software Raspberry Pi

Voraussetzungen für den Programmstart:

• Auf dem Raspberry Pi ist das Betriebssystem Raspbian Stretch installiert.

• Der Raspberry Pi ist mit dem Netzwerk und dem Internet verbunden.

• Die I2C-Schnittstelle ist aktiviert.

• Die Bibliothek pi4j ist installiert (Installation, siehe unten).

 

Die Bibliothek pi4j installieren Sie auf dem Raspberry Pi mit folgendem Befehl:

curl -s get.pi4j.com | sudo bash

Nach der Installation ist die Bibliothek pi4j im Ordner /opt/pi4j/lib zu finden.

 

Java SE Runtime Environment und Java Hotspot Client VM sind beim Betriebssystem Raspbian Stretch bereits enthalten. Die Java-Version zeigen Sie mit folgendem Befehl an:

java -version

 

Programmausführung vorbereiten:

Um das Programm SensorenAuslesen.class auf dem Raspberry Pi laufen zu lassen gehen Sie so vor:

• Erstellen Sie mit dem Dateimanager den Ordner /home/pi/pi-share.

• Kopieren Sie die Dateien SensorenAuslesen.class, Aufgabe.class, Dateioperationen.class,

Htu21d.class, Mpl3115a2.class, Wetter_Werte.csv und Wetter_konf.txt in diesen Ordner.

 

Die Datei Wetter_konf.txt enthält 2 Werte, die das Auslesen der Sensordaten steuern. Der erste Wert legt fest, in welchem Intervall die Sensoren ausgelesen werden. Der angegeben Wert ist ein Minutenwert. Mit dem zweiten Wert wird bestimmt, wie viele Messwerte in der Datei Wetter_Werte.csv gespeichert werden. Wenn in der Datei Wetter_Werte.csv die maximale Anzahl der Messwerte erreicht ist, wird der älteste Messwert mit dem neuen Messwert überschrieben.

 

Programm auf dem Raspberry Pi starten:

So starten Sie das Programm zum Auslesen der Sensordaten:

cd ~/pi-share

sudo java -classpath .:classes:/opt/pi4j/lib/'*' SensorenAuslesen

 

Daten dem Windows-Rechner zur Verfügung stellen:

Den Ordner mit den Wetterdaten soll dem Windows-Rechner zur Verfügung gestellt werden. Auf dem Windows-Rechner verbinden Sie anschließend diesen Ordner mit dem Laufwerksbuchstaben Z.

Auf dem Raspberry Pi müssen Sie dazu einen Samba-Server installieren, siehe Ordner für Windows-Rechner freigeben.

 

Software Windows-Rechner

Voraussetzungen für den Programmstart:

• Auf dem Windows-Rechner ist Java Runtime Environment installiert.

• Der Windows-Rechner ist mit dem Netzwerk verbunden.

 

Ordner mit Laufwerk verbinden

Auf dem Windows-Rechner (z. B. bei Windows 7) müssen Sie den Ordner pi-share, das sich auf dem Raspberry Pi befindet, mit dem Laufwerk Z verbinden. Das Java-Programm Wetterstation10.jar kann somit die Daten lesen und als Grafik anzeigen.

 

So verbinden Sie den Ordner pi-share mit einem Laufwerk:

• Öffnen Sie den Windows Explorer.

• Klicken Sie unter Netzwerk > RASPBERRYPI mit der rechten Maustaste auf den Eintrag Pi-Share.

• Wählen Sie aus dem Kontextmenü Netzlaufwerk verbinden.

Laufwerk verbinden

• Wählen Sie das Laufwerk Z:.

• Aktivieren Sie Verbindung mit andern Anmeldeinformationen herstellen.

• Klicken Sie auf Fertig stellen.

Das Anmeldefenster wird geöffnet.

 

• Geben Sie den Benutzernamen und das zugehörige Passwort ein (z. B. pi und raspberry).

• Schließen Sie den Dialog mit OK.

Sie Können jetzt vom Windows-Rechner aus per Laufwerksbuchstaben Z auf den Share-Ordner zugreifen.

 

Programm auf dem Windows-PC starten

• Kopieren Sie das Java-Programm Wetterstation10.jar auf die Festplatte des Windows-Rechners.

• Starten Sie die JAR-Datei mit einem Doppelklick.

• Mit einem Klick auf Kurven zeichnen werden die Wetterdaten grafisch dargestellt.

Wetterstation Programm