Schlagwort-Archive: Wetterdaten

15.01. – 19.01.2020

jetzt geht es an die Hardware…

Nachdem ich zuletzt bereits Abfrage und Auswertung der Wetterdaten aus dem Internet realisieren konnte, musste ich mich nun um die Ansteuerung der LEDs kümmern. Zum Glück war mittlerweile der Großteil unseres Materials angekommen, sodass ich direkt mit den LED-Streifen arbeiten konnte, die wir für unser Projekt eingeplant hatten.

Nach einigen Startschwierigkeiten bezüglich der Ansteuerung und beim Anschließen des LED-Streifens (ich habe mich dann doch zu Testzwecken dazu entschieden, nicht gleich den richtigen sondern unseren kurzen Teststreifen zu verwenden) konnte ich mich damit auseinandersetzen, auf welche Weise einzelne LEDs auf dem Streifen ansteuerbar sind und wie dessen Farbe und Helligkeit angepasst werden kann.

Im Laufe der Arbeit mit dem LED-Streifen festigte sich bei mir zudem die Idee, das ursprüngliche Konzept insofern umzuwerfen, als das ich auf die einzelnen LEDs, die ich vorher zur Beleuchtung der Wettersymbole vorgesehen hatte, verzichten wollte. Stattdessen entschied ich, dass es einfacher und schöner wäre, alle LEDs in der Uhr als Teil des LED-Streifens zu realisieren. Weitere Entscheidungen, die sich erst während der Entwicklung festigten, war die Festlegung, wielang der eingebaute Temperaturstreifen sein sollte, aber dazu gleich mehr. Neue Ideen und Möglichkeiten, wie ein multifunktionales Wettersymbol, dass vier Symbole in sich vereint, entstanden ebenso bei der Programmierung und der Erforschung der Möglichkeiten des LED-Streifens.

Um unsere weitere exakte Planung zur Größe, Form, Anordnung und Zusammensetzung aller Komponenten zu einer richtigen Uhr besser zu managen, fertigten wir aus Papier ein 2D-Modell in Originalgröße an. Da die sichtbaren Komponenten (Uhrwerk, LED-Streifen, Display) nun alle vorhanden waren, konnten wir alle Teile des Modells präzise anfertigen. Dabei stellte sich heraus, dass eine der schwierigsten Komponenten der lange LED-Streifen zur Anzeige der Temperatur war. Wir hatten dabei die fixe Idee, dass jede LED auch genau für ein Grad Celsius stehen sollte, aber auch sicherlich Temperaturen von -15 bis +35 Grad problemlos darstellbar sein sollten. Da die LEDs in verschiedenen Farben leuchten können, entstand daher die Idee, sowol für positive als auch für negative Temperaturen die gleiche Skala zu verwenden, jedoch in einer anderen Farbe zu beleuchten. Auf diese Weise konnten wir die benötigte Länge halbieren. Schlussendlich kamen wir überein, dass es möglich ist, den Temperaturstreifen mit 35 LEDs (Temperaturen bis +/- 35°C) übereinander auf der Uhr unterzubringen, ebenso wie die drei Wettersymbole, das 7″ Display und die analoge Uhr.

Die exakte Ansteuerung der LEDs auf dem LED-Streifen anhand der Wetterdaten war aufgrund der Vorarbeit in Python aus der Vorwoche gut umzusetzen, sodass “nurnoch” die Feinheiten eingearbeitet werden mussten und zu einem guten Ergebnis führten.

Hier ein Beispiel des angesteuerten Streifens bei Gewitter mit Regen und +14 °C:

Ein Beispiel für starken Schneeregen bei 1°C:

Ein letztes Beispiel für klaren Himmel bei -7°:

Hier wird deutlich, dass die LEDs rechts später das enstsprechende Wettersymbol und links die LEDs das Thermometer, bzw. die Temperatur darstellen.

11.01. – 14.01.2020

endlich geht das Programmieren los…

Damit das Projekt jetzt richtig Fahrt aufnehmen kann, muss ich versuchen, mein Wissen über die abgefragten Wetterdaten in Python auszuwerten. Da die Daten im JSON-Format vorliegen, ist der Umgang mit diesen deutlich leichter als befürchtet. Python kann dabei leicht und schnell durch die verschachtelten Listen navigieren. Nach etwas Rumprobieren und Auswerten der verschiedenen Teile der Listen konnte ich dabei die für mich relevanten Daten wie Temperatur und WetterID recht einfach auslesen. Dabei ist die WetterID ein dreistelliger Dezimalwert, der genau die Wetterlage beschreibt. Beispielsweise steht 800 für klaren Himmel und 201 für Gewitter mit Regen. Die Temperatur wird direkt in Kelvin übermittelt.

Zu Beginn habe ich mich dabei ausschließlich auf die Auswertung der übermittelten Daten konzentriert, bevor ich mich mit der Ansteuerung der Hardware beschäftigen wollte. Dies hatte zum Vorteil, dass ich die Programmierung einfach am Computer machen konnte, wärend Henrike direkt am Raspberry Pi an ihrem Teil des Projekts arbeitete.

06.01. – 10.01.2020

Langsam wird es ernst…

Obwohl der Großteil unserer Teile noch nicht da ist, haben wir uns dazu entschlossen, mit der Entwicklung bereits zu beginnen. Zu diesem Zweck haben wir leihweise einen Raspberry Pi 3 A+ mit einer 16GB Speicherkarte bekommen. Wir haben daher damit begonnen, ein Betriebssystem auf den Pi zu spielen. Da es für Anfänger empfohlen ist, haben wir dabei zuerst das Einsteiger-Paket NOOBS verwendet, dass eine einfache Installation des Betriebssystems auf dem Pi ermöglicht. Als Ausgabegerät für den Pi haben wir unseren Fernseher genutzt und diesen per HDMI an den Pi angeschlossen. Dies funktioniert problemlos. Als Eingabegeräte konnte wir sowohl Maus als auch Tastatur an den Pi anschließen.

In dieser Woche hat Henrike auch erste Versuche unternommen, ihre Ideen zur automatischen Anzeige von Bildern mit dem Pi umzusetzen. Ebenso hat sie sich hauptsächlich mit der Installation und Einrichtung des Pi beschäftigt. Dazu mehr in ihrem Entwicklertagebuch.

Parallel habe ich versucht mich mit der “normalen” Installation von Rapsbian Buster auseinanderzusetzen, da ich noch nicht genau wusste, ob es funktionelle Unterschiede oder irgendwelche Nachteile bei der nachfolgenden Benutzung von NOOBS gab. Abgesehen von anfänglichen Schwierigkeiten mit den Downloads von Raspbian Buster, schien die Installation deutlich einfacher als befürchtet.

Schließlich befasste ich mich damit, wie ich Wetterdaten aus dem Internet abfragen konnte. In diesem Kontext stieß ich auf die Möglichkeit, die Wetterdaten via API direkt von https://openweathermap.org/ abzufragen. Diese Schnittstelle ist ausführlich dokumentiert und wurde auch schon in anderen Projekten genutzt. Um diese Wetterdaten zu bekommen, war zwar eine Registrierung auf der Webseite möglich, diese ist jedoch kostenlos. Der unbezahlte Zugang sichert einem 60 Abfragen in der Stunde zu, was für meine Zwecke ausreichen sollte. Es ist zudem möglich, sowohl das aktuelle Wetter, als auch eine Wetterprognose für einen beliebigen Ort zu bekommen.