Entwicklungsprojekt

Raspberry Pi als Wetterstation nutzen

USB-Wetterdaten-Empfänger nutzen

In Elektronikmärkten und auch deren Online-Shops finden Sie Funkempfänger, die sich per USB-Anschluss mit einem PC verbinden lassen (> Kasten "Mehr Infos zu den Wetterstationen"). Die Empfänger erhalten die Daten per Funk von Sensoren und übermitteln diese dann an den PC.

Nehmen Sie die Sensoren und den Empfänger entsprechend der mitgelieferten Dokumentationen in Betrieb. Verbinden Sie dann den Empfänger per USB-Kabel mit dem Raspberry Pi. Versorgen Sie den kleinen Computer anschließend mit Strom, und lassen Sie das Betriebssystem starten. Die nachfolgenden Kommandos beziehen sich auf Raspbian, das alle Grundlagen für den Betrieb mitbringt.

Loggen Sie sich per SSH auf dem Raspberry ein oder schließen einen Monitor an, damit Sie sich als Benutzer auf dem Rechner anmelden können. Öffnen Sie eine Konsole, und geben Sie dort das Kommando ein:

sudo dmesg

Praxiseinsatz: Raspberry Pi als Wetterstation nutzen.
Praxiseinsatz: Raspberry Pi als Wetterstation nutzen.
Foto:

Sie erhalten damit eine Rückmeldung der Geräte, die am USB-Port ermittelt worden sind. Suchen Sie dort nach einem Eintrag, der auf den angeschlossenen Funkempfänger hindeutet, zum Beispiel "Wetterdatenempfänger" oder den Herstellernamen. Falls Sie hier keinen Eintrag finden, unterbrechen Sie die Verbindung erneut und stöpseln das Gerät erneut an, um zu sehen, ob es dann zu einer Meldung kommt. Schauen Sie auf den Seiten des Herstellers nach, ob es dort Hinweise gibt oder vielleicht sogar einen Treiber. Allerdings sollten tiefergehende Probleme eher die Ausnahme sein, da rein technisch ein solcher Empfänger recht einfach konstruiert ist.

Sofern das Kommando zeigt, dass die Verbindung mit dem Raspberry funktioniert, brauchen Sie ein Programm, das in der Lage ist, die übertragenen Daten auszulesen. Hier bietet sich Socat an. Es fragt die Schnittstellen ab und gibt auf der Konsole die Ergebnisse aus. Installieren Sie die Software mit:

sudo apt-get install socat

Um an die Messwerte zu gelangen, müssen Sie die Schnittstelle abfragen:

sudo socat /dev/ttyUSB1,b9600 STDOUT

In diesem Beispiel ist der Empfänger mit der Schnittstelle USB1 verbunden. Als Rückmeldung erhalten Sie zum Beispiel:

$1;1;;;- 0,9;;;17,6;;;;;75;;;59;;;;;;;;;0

Wenn auf den ersten Blick zunächst nichts zu passieren scheint, ist das kein Grund zur Besorgnis. Das Abfragen per Schnittstelle kann bis zur ersten Übertragung durchaus ein paar Minuten dauern. Das Ergebnis sieht auf den ersten Blick wenig aufregend aus, liefert aber die Grundlage für die weiteren Schritte. In Abhängigkeit der Software, mit der Sie die Daten auswerten oder aufbereiten wollen (> Kasten), wird der Funktionsaufruf in ein Script gepackt oder die Ausgabe in eine andere Datei umgeleitet, die sich dann automatisiert importieren lässt.