Die Raspberry-Pi Webcam

Änderungen an der Hardware der Wetterstation (Webcam, Empfänger für WS-Sensoren, Satempfänger, ...)
enager
Site Admin
Beiträge: 79
Registriert: 05.10.2016, 11:33

Die Raspberry-Pi Webcam

Beitragvon enager » 05.10.2016, 20:01

Seit dem 15.08.2015 läuft die neue Webcam und liefert hervorragende Bilder. Daher hier nun eine ausführliche Beschreibung zum Bau dieser Webcam. Viel Spaß beim lesen.Verwendet wurden folgende Materialien:

    - 1x Raspberry Pi Modell B+
    - 1x Raspberry Pi Weitwinkelkamera
    - 1x 10m geschirmtes Netzwerkkabel
    - 1x 10m geschirmtes, 4 adriges Kabel (für die 5V Spannungsversorgung des Raspberry)
    - 1x Aluminiumgehäuse

Alle Materialien wurden bei Reichelt bestellt und waren bereits am nächsten Tag da. Damit begann dann das große Basteln.

Zu aller erst wurde eine Grundplatte zurecht gesägt, welche genau in das Alu-Gehäuse passt und auf welcher der Raspberry montiert wurde. Über den Raspberry ist noch eine zweite, kleinere Kunststoffplatte montiert, welche das Kameramodul hält.

Bild
Oben ist der Aufbau zu sehen. Angesteckt sind im Bild ein Funkempfänger für Maus und Tastatur, Netzwerk und HDMI. In diesem Testaufbau wurde der neue Raspberry Pi eingerichtet und das Kameramodul auf eine möglichst präzise Fokussierung geprüft.

Bild
Danach folgte auch schon die Montage im Alu-Gehäuse. Rechts daneben liegt der Gehäusedeckel, in welchem eine Scheibe aus einer alten 12V Halogenlampe eingeklebt wurde. Die graue Masse um das Loch herum ist Silikon mit welchem der Alu-Glas-Übergang wasserdicht gemacht wurde.

Die beiden Leitungen (Netzwerk + 5V) haben beide Schirmungen, welche mit dem Gehäuse verbunden wurden. Somit können auch die Kabel nicht als Sendeantenne für die pulsierenden Gleichspannungen des Raspberry dienen und die Empfangsqualität der QFH Antenne wird somit nicht beeinträchtigt.

Nun folgte ein recht anstrengender Schritt. Das fertige Gehäuse samt Raspberry und Kameramodul am Antennenmast zu montieren war ja noch einfach. Aber das Netzwerkkabel, als auch die 5V Versorgungsleitung mussten nun durch den Antennenmast, durch das Dach in die Wohnung verlegt werden. Da an dem Tag ohnehin schon Temperaturen über 30°C herrschten und auch noch eine drückende Schwüle vor lag, war diese Arbeit sehr schweißtreibend. Doch am Nachmittag war es dann endlich geschafft. Die Kamera war befestigt und die Kabel waren ins Wohnzimmer gezogen. Noch eben den Netzwerkstecker an das 10m Kabel angecrimpt und das 5V Netzteil mit der Versorgungsleitung verbunden und dann konnte ein erster Test Aufschluss darüber geben, ob denn auch alles funktioniert. Und siehe da, nach kurzer Zeit war der Raspberry über SSH erreichbar. Alles erledigt, alles funktioniert.

Bild
Alles fertig montiert am Mast der QFH-Antenne mit Blickrichtung nach West.

Da alles über den Banana-Pi läuft, welcher den Raspberry über Netzwerk und SSH steuert, musste jetzt nur noch das schon vorhandene Webcam-Steuerprogramm abgeändert werden. Die alten USB-Webcams wurden bisher alle mit dem Kommandozeilen-Programm „fswebcam“ angesprochen. Für das Raspberry-Kameramodul gibt es wieder ein eigenes Steuerprogramm namens „raspistill“ welches im Gegensatz zu „fswebcam“ leider keine Möglichkeit zur Einblendung von Texten bereit stellt. Dies muss nun nachträglich mit dem Programm „convert“, welches Bestandteil des Softwarepakets „ImageMagick“ ist, erledigt werden. Hier lasse ich nun zuerst am unteren Bildrand ein langes, aber schmales, blaues Rechteck mit roten Rahmen zeichnen. Auf dieses Rechteck werden danach der Titel, aktuelles Datum und Zeit, als auch die aktuellen Wetterdaten geschrieben, gespeichert und auf die Homepage geladen. Eine Kopie dieses aktuellen Bildes wird unter neuen Namen in den Videoordner gespeichert, woraus in der Nacht das Zeitraffervideo generiert wird.

Die Bilder werden im Minutentakt ausgelesen und für die Generierung des Zeitraffervideos bereit gestellt. Alle 3 Minuten wird das aktuellste dieser Bilder auf die Homepage geladen, welches dann unter dem Punkt „Webcam“ zu finden ist.

In der Nacht wird automatisch auf 6 Sekunden Langzeitbelichtung umgeschaltet. Hierfür werden die Daten der Wetterstation ausgewertet und in Abhängigkeit der Helligkeit sowie des Sonnenwinkels die Belichtungsparameter angepasst. Im Detail wird ab 0 Lux Helligkeit auf Langzeitbelichtung geschaltet. Die Dauer der Langzeitbelichtung wird so lange immer weiter erhöht, bis die Sonne 15° unter dem Horizont steht. Ab diesem Zeitpunkt wird so lange mit 6 Sekunden bei ISO 800 belichtet, bis die Sonne am folgenden Morgen die -15° Elevation wieder überschreitet. Seit dem Abend des 20.08.2015 wird in dieser Zeit, zudem auf ein Graustufenbild umgeschaltet. Dies wurde eingeführt, da die Automatik der Kamera nachts offenbar Probleme mit dem Weissabgleich hat und auch gerne mal sehr rot/blau/grün –stichige Bilder aufgezeichnet wurden.


Vergleich der neuen Raspberry Kamera gegenüber der alten „Hama Spy Protect“:


Sicht der Hama Spy Protect:
Bild
Zu sehen ist, dass der Sichtbereich doch erheblich eingeschränkt ist und man gerade vom Himmel, was für die Wetterbeobachtung ausschlaggebend ist, nicht viel sieht.

Im folgendem mal ein direkter Blickfeldvergleich zwischen Raspberry-Kamera und „Hama Spy Protect“:
Bild

Das schwarze Rechteck im Bild der Raspberry-Kamera zeigt den Bildbereich der „Hama Spy Protect“. Hier ist nun deutlich, dass sich die Investition in das Weitwinkelkameramodul, welches rund 10 Euro teurer ist, als das normale Standard-Kameramodul, mehr als lohnt. Denn ich gehe mal davon aus, dass auch das Raspberry-Standardkameramodul einen vergleichbaren Blickwinkel haben dürfte wie die Spy Protect Kamera.

Der Unterschied ist schon enorm. Und gerade bei der Wetterbeobachtung ist es nun mal wichtig, möglichst viel vom Himmel auf dem Bild zu haben, da sich ja an diesem das eigentliche Wettergeschehen abspielt.


Zum Abschluss sei noch etwas Wichtiges gesagt:

Die Webcam dient ausschließlich der Wetterbeobachtung. Sie wurde sehr gewissenhaft so ausgerichtet, dass in der Nähe befindliches Privateigentum nach Möglichkeit nicht oder nur sehr wenig davon auf den Bildern zu erkennen ist. Weiterhin werden auch Personen, sowie Kennzeichen von Fahrzeugen nicht erkennbar sein. Somit sollten keine Punkte gegeben sein, welche zu Rechtsstreitigkeiten Anlass geben könnten. Sollte dennoch jemand Einwände gegen den Betrieb oder die aktuelle Ausrichtung der Webcam haben, so verweise ich hiermit auf die im Impressum hinterlegte E-Mailadresse, worüber jederzeit Kontakt mit mir, dem Homepagebetreiber aufgenommen werden kann.




Update 02.10.2016:


Seit dem Bau dieser Raspberry-Pi Webcam wurde einiges geändert. Zeichnete die Webcam früher nur ein Bild pro Minute auf und gab es nur ein Zeitraffervideo pro Tag, so zeichnet die Webcam nun tagsüber mit 4 Bilder pro Minute auf und es gibt stündliche Zeitraffervideos. Auch wurde die Blickrichtung von einst West auf derzeit Nord geändert. Hier gibt es mehr sehenswerte Objekte im Bild (Windräder, welche bei aus Nord aufziehenden starken Niederschlag schon deutlich vor dem Niederschlag verschwinden) und durch Dächer und nahe Wiesen, sind im Winter auch bestehende Schneefelder besser zu sehen. Während früher in der Zeit von 0 Uhr bis 0:30 das Zeitraffervideo generiert wurde und die Webcamaufnahmen daher für diese Zeit pausierten, zeichnet die Webcam nun durchgehend von 0:00 Uhr bis 23:59 Uhr auf. Damit sind auch die Feuerwerksexplosionen des kommenden Jahreswechsel zu sehen.

Da ich immer wieder danach gefragt wurde, wie ich die Langzeitbelichtung realisiere, hier einfach die notwendige Codezeile dazu:

Code: Alles auswählen

raspistill –nopreview –ISO 800 –shutter 6000000 -ex verylong -awb auto -w 1280 -h 720 –ev -10 –brightness -100 -o /pfadzumspeichern/bild.jpg


Hier wird ISO 800 genutzt und die Belichtungszeit ist mit 6 Millionen Mikrosekunden (6 Sekunden) angegeben. In beiden Fällen ist dies das Maximum was mit dem 2015 erhältlichen Kameramodul machbar ist.

Der Rest wird mittels „convert“ (Teil des „Imagemagick“ Pakets für Linux) erledigt. Damit werden die blauen Flächen ins Bild gemalt und die Wetterdaten geschrieben. Das Wetterstationsprogramm generiert alle 3 Minuten eine Bashscript-Datei, welche danach auch gleich über den Shell-Befehl ausgeführt wird. Auf diese Weise findet die Bildaufzeichnung, als auch die Bildbearbeitung statt.

enager
Site Admin
Beiträge: 79
Registriert: 05.10.2016, 11:33

Re: Die Raspberry-Pi Webcam

Beitragvon enager » 08.08.2017, 20:21

Seit dem letzten Update ist wieder einmal viel Zeit ins Land gegangen und es hat sich fortwährend etwas verändert an der Webcam. Hardwareseitig hat sich nichts mehr getan, aber auch mit der Software kann man noch sehr vieles aus den Bildern der Webcam heraus holen.

Nachdem die Stunden-Zeitraffervideos für einige Zeit abgeschafft wurden, sind sie seit dem 05.08.2017 wieder da. Ich hatte die Stunden-Zeitraffervideos abgeschafft, da ich die Hoffnung hatte, dass die Satellitenbildaufzeichnung nicht mehr mitten drin abbricht, wenn der Banana-Pi während des Satellitenempfangs nicht mehr so stark ausgelastet ist. Letztlich hat sich nun gezeigt, dass die Satbild-Aufzeichnung vor allem durch FTP-Uploads abbricht. Durch Vermeidung von FTP-Uploads während des Satellitenempfangs und 2 Systemneustarts am Tag (13:49 und 23:49 Uhr), gelingen die Satellitenbilder nun nahezu jedes mal vollständig. Daher habe ich die Software so programmiert, dass die Stunden-Zeitraffervideos nur dann generiert werden, wenn zur gleichen Zeit kein Satellit aufgezeichnet wird. Kommt ein Satellit, so wird die Generierung des Zeitraffervideos um eine Stunde verzögert und das Video beinhaltet die vergangenen 120 Minuten.

Einen entscheidenden Schritt bin ich bei der Sonnenstandsberechnung gekommen. Diese hat auf den ersten Blick vielleicht nicht viel mit der Webcam zu tun, wird sie doch vorrangig zur Berechnung der Sonnenscheindauer heran gezogen, in dem ein Grenzwert berechnet wird, welchen die Helligkeit überschreiten muss, um 3 Sonnenscheinminuten zu generieren. Aber diese Sonnenstandsberechnung ermöglicht mir eine präzise Webcam-Belichtungssteuerung. Steht die Sonne tiefer als 3° unter dem Horizont, so wird auf Nachtmodus geschaltet und in Abhängigkeit des Sonnenstandes der ISO-Wert, als auch die Belichtungszeit errechnet. Diese Sonnenstandsberechnung lief Jahrelang recht ungenau. Abweichungen bis zu 30 Minuten haben sich ergeben. Im Mai habe ich mich nun erneut mit der Sonnenstandsberechnung beschäftigt und habe diese nun recht genau und präzise hinbekommen. So genau, dass seit dem 18.05.2017 sogar eine Sonnenstandskurve im Helligkeits- und Sonnenscheindiagramm zu finden ist. Seit dem stimmen auch die Belichtungsparameter der Webcam und überbelichtete Sonnenauf/untergänge sind seit dem Geschichte.

Des weiteren habe ich mich im Laufe des vergangenen Wochenendes der nachträglichen Bildbearbeitung mittels "convert" aus dem "Imagemagick"-Paket, welches es für Linux-Systeme gibt, beschäftigt. Mit dem Level-Befehl kann der Gamma-Wert des Webcambildes angehoben werden, wodurch Lichtschwache Objekte besser zu sehen sind. Hier einmal ein Vergleich:

Ausgangsbild, wie es die Rpi-Cam geliefert hat:
Bild

Gleiches Bild nach Anhebung des Gamma-Wertes auf 1,6:

Bild
Das Bildrauschen tritt zwar auch deutlich hervor, dafür ist auf dem Bild nun aber auch deutlich mehr erkennbar. Der große Wagen, welcher auf dem ersten Bild kaum zu erkennen ist, tritt auf dem zweiten Bild deutlich hervor.

Bei Vollmond kann es dann sogar so aussehen:
Bild
Davon, dass eigentlich dunkelste Nacht ist, die Sonne ihren Tiefstpunkt erreicht hat und im weiteren Verlauf der Nacht sich wieder dem Horizont nähert, sieht man nicht viel. Das Bild könnte auch während einer totalen Sonnenfinsternis entstanden sein.

Seit gestern ist auch ein Zeitrafferscript online. Hier können die Webcambilder des aktuellen Tages als eine Zeitrafferanimation abgespielt werden. Damit entfällt das warten, bis etwa 10 Minuten nach der letzten volle Stunde, das Zeitraffervideo der letzten Stunde online ist. Da die Stunden-Zeitraffervideos nur aus den Bildern am Tage generiert werden, gibt es keine Zeitraffervideos von der Nacht. Im Zeitrafferscript sind allerdings alle Bilder von 00:00-23:59 Uhr im Minutentakt aufrufbar. Damit kann man sich auch die Bilder der vergangenen Nacht anschauen, worauf man bisher bis zum nächsten Tag warten musste, bis diese Bilder im Zeitraffervideo des Vortages enthalten sind.

Alles in allem bin ich sehr zufrieden mit der Cam und was ich damit so zaubern kann.


Zurück zu „Stationshardware“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste