====== FOREST_01 ====== ---- Dokmentation und Anleitung der Wetterstation FOREST_01 ---- Vorbereitung: * Anleitungen: [[https://teqqy.de/wetterstation-mit-dem-raspberry-pi/ |Teqqy, Wetterstation mit dem Raspberry Pi, 2018]] ; [[https://tutorials-raspberrypi.de/raspberry-pi-wetterstation-bauen-openhab2/ |Felix, Eigene Raspberry Pi Weterstation bauen mit OpenHab2]] * Nützliche Literatur:[[https://www.amazon.de/Raspberry-Pi-Handbuch-Einsteiger-Projekte/dp/198034910X/ref=pd_sbs_14_2/259-8444481-8819837?_encoding=UTF8&pd_rd_i=198034910X&pd_rd_r=1eac9b85-a871-11e9-8ac4-0b6f4507e574&pd_rd_w=jxToX&pd_rd_wg=Jsgs6&pf_rd_p=74d946ea-18de-4443-bed6-d8837f922070&pf_rd_r=NRYH0R164QTF0QA2DVSZ&psc=1&refRID=NRYH0R164QTF0QA2DVSZ |Michael Bonacina, Raspberry Pi: Handbuch für Einsteiger: Linux, Python und Projekte, 2. Auflage 2018]] ; [[https://www.amazon.de/Raspberry-Pi-umfassende-Handbuch-Aktuell/dp/3836265192/ref=pd_bxgy_14_img_3/262-7085916-6658918?_encoding=UTF8&pd_rd_i=3836265192&pd_rd_r=6a6bf411-4d16-4290-9e30-348e8ccb49b1&pd_rd_w=XPN0D&pd_rd_wg=oXHEZ&pf_rd_p=98c98f04-e797-4e4b-a352-48f7266a41af&pf_rd_r=W1S9YWKSBF3MVTH2HEPJ&psc=1&refRID=W1S9YWKSBF3MVTH2HEPJ |Michael Kofler, Charly Kühnast, Christoph Scherbeck, Raspberry Pi: Das umfassende Handbuch, Rheinwerk Computing 5. Auflage 2018]] * Messstation: [[https://www.amazon.de/Froggit-WH1080-Wetterstation-Touchscreen-Au%C3%9Fenmast/dp/B0757NC5DN/ref=sr_1_5?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=froggit+wetterstation+wh1080&qid=1563460104&s=gateway&sr=8-5 |Froggit WH1080 mit USB-Port]] * Raspberry Pi 3 Starterkit: [[https://www.amazon.de/ABOX-Raspberry-Ultimatives-Starterkit-aus-Schaltnetzteil/dp/B07DDCRFP6/ref=sr_1_7?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=3LSXJHMQWGH2O&keywords=raspberry+pi+3&qid=1565964613&s=gateway&sprefix=raspb%2Caps%2C360&sr=8-7 | ABOX Raspberry Ulitmatives Starterkit mit 32 GB SD]] * Bildschirm, Tastatur und Maus, LAN-Kabel besorgen Schritt 1: Installation von Rasperry Pi * Wetterstation und Raspberry Pi nach Anleitung zusammen bauen * Raspberry Pi starten, LAN-Kabel, Bildschirm, Maus und Tastatur anschließen und Betriebssystem auswählen: Raspian Vollversion auswählen ([[https://www.raspberrypi.org/downloads/|Alternative Rasperry Pi]] NOOBS auswählen, ist für Beginner geeignet oder direkt ein Betriebsystem auswählen) * Bei der Installation die IP-Adresse merken, wird später bei VNC nützlich sein. Außerdem kann man noch WLAN-Einstellungen vornehmen, ich bleibe jedoch bei einer LAN-Verbindung. *Editor auswählen. Falls man schon Erfahrung mit Linux-Systemen hat kann man folgenden Schritt überspringen: Den Shell-Editor Vim installlieren und den Vimtutor durcharbeiten, um ein Gefühl für diesen Editor zu bekommen, da er keine Oberfläche hat. Man kann zwar eine Oberfläche installieren, jedoch finde ich es ganz praktisch direkt in der Shell programmieren zu können. Dabei ist zu beachten, dass man Vim immer mit //sudo// vorangestellt öffnen sollte, da man sonst Probleme beim Speichern und Beenden bekommen kann. Eine Anleitung zum installieren und den ersten Befehlen findet man unter [[https://coders-home.de/vim-der-editor-unter-linux-178.html |Anleitung Vim]]. Hier sind noch [[https://piware.de/docs/vimref.txt| nützliche Befehle 1]] und [[https://chrm.info/dokus/vim-anleitung.txt|nützliche Befehle 2]] für Vim zum nachschlagen. Eine Alternative wäre den vorinstallierten NANO Editor zu verwenden, welcher einer Light-Version von Vim gleicht. Schritt 2: Einrichtung von der Wetterstation *Wetterstations-Basis per USB-Port an die Rasperry Pi anschließen. *Software für die Wetterstation installieren. Ich benutze die OpenSource Software [[http://www.weewx.com|Weewx]], welche mit Python 2 geschrieben worden ist, sie funktioniert nicht mit Python 3. Es gibt verschiedene Möglichkeiten Weewx zu installieren, jedoch funktionieren nicht alle so gut, ich musste schlussendlich Weewx 3 mal neu installieren. Der [[http://www.weewx.com/docs/usersguide.htm#dir-layout-table|Userguide]], sowie [[http://www.weewx.com/docs/usersguide.htm#installation_methods|Installation Methods]] sind generell sehr hilfreich, und sollten vorher sehr gut durchgelesen werden sowie. Ich empfehle für die Installation die [[http://www.weewx.com/docs/debian.htm| Anleitung Debian]] //Installing from DEB package// zu folgen. Es wird sich ein Fenster öffnen, in dem man Details zu der Wetterstation eingeben muss, wie Name; Höhe über dem Meeresspiegel oder auch Längen- und Breitengrade (Google Maps hilft). Wichtig ist die Einstellung für den Treiber, da dies eine WH1080 ist, muss man //FineOFFsetUSB// auswählen. Falls man eine andere Messstation verwendet, ist das kein Problem. Unter [[http://www.weewx.com/docs/hardware.htm|Hardware]] gibt es eine Tabelle mit den Herstellern und ihre jeweiligen Modellen, sowie die dazugehörigen Treibereinstellungen. * Nützliche Commands: Systemüberwachung: //tail -f /var/log/syslog//; Starten, Stoppen, Neustarten://sudo/etc/init.d/weewx start , sudo /etc/init.d/weewx stops, sudo /etc/init.d/weewx restart// {{ :ss19:weewx_befehle.png?500 |}}
Weewx Befehle
Schritt 3: Einstellungen * Weewx sollte nun alle Daten sammeln, bei Fehlern gibt es viele Foren im Internet, da die Software weitverbreitet ist. Um die Daten anschauen zu können folge dem Link im Browser deiner Raspberry Pi (Der Link ist unter //Verify// zu finden: [[http://www.weewx.com/docs/debian.htm| Anleitung Debian]]). Bei der Erstinstallation dauert es so um die 5 Minuten bis man die ersten Daten sehen kann. * FTP einrichten: Ich habe meine Daten auf einen Webserver übertragen lassen, dafür gibt es unter dem Weewx [[http://www.weewx.com/docs/usersguide.htm#dir-layout-table|Userguide]] eine gute Anleitung unter dem Abschnitt //Integrating with a webserver - If the server is on a different machine //. Dafür muss man jedoch zuerst FTP auf die Raspberry installieren. Es dauert jedoch eine Weile bis die Daten auf den Webserver geladen werden, da die Messstation nur alle 20-30 min Daten erhebt. //Reloaden// verkürzt diesen Schritt. Mit einem FTP-Client wie Filezilla ([[https://developer-blog.net/raspberry-pi-ftp-client/| Anleitung FTP Client]]) kann man die Datenordner sehen. Generell ist es gut unter der Systemüberwachung zu schauen, ob FTP's stattgefunden haben, da es manchmal zu Ausfällen kommt. Etwas ungenauer kann man das vereinfacht auch unter der Website nachschauen. Meine Website lautet: https://www.schauenburg.de/meteo/ Schritt 4: Skin * Skin einrichten: Von Weewx ist die voreingestellte Skin namens Seasons aktiv, falls man eine andere Oberfläche verwenden möchte gibt es diverse Skins im Internet zu finden, eine deutsche Skin wäre beispielsweise [[https://gitlab.ambhost.net/stimpy/template_rabenwetter |Rabenwetter]] oder einen englische Skin [[https://projects.neoground.com/neowx|NeoWx]], wobei man sich bei letzterer noch mit [[https://github.com/weewx/weewx/wiki/extensions|extensions]] auseinander setzten muss. Ich jedoch empfehle für den Anfang Seasons zu nutzen, da bei mir beide Skins zu Problemen geführt haben, da meine Messstation gewisse Parameter nicht besitzt. * Skin individualisieren: Unter //skin.conf// und allgemeiner unter //weewx.conf// kann man mit Vim Einstellungen vornehmen. Man sollte jedoch die jeweiligen Dateipfade beachten um an die jeweiligen Configurations herankommen zu können (Tabelle Layout ganz unten: [[http://www.weewx.com/docs/debian.htm| Anleitung Debian]]). Weewx ist dabei etwas unübersichtlich, da man zum Beispiel bei Übersetzungen in der //skin.conf// und auch der //weewx.conf// die Einstellungen für die Skin vorliegen hat, bis jetzt habe ich dabei noch kein System entdeckt, weshalb manche Einstellungen unter der //skin.conf// übernommen werden, manche jedoch zusätzlich noch in der //weewx.conf// verändert werden müssen. Nach einer Änderung in der //weewx.conf// muss man das System //restarten//, bei //skin.conf// reicht ein //reload// aus. Bei der Skin kann man viele Einstellungen vornehmen, wie zB. Übersetzen, Parameter verändern, Link einstellen, Farben ändern, Namen ändern etc, wobei man viele Dinge aktiviert in dem man einfach das //#// entfernt. Ich habe noch ein [[https://www.dwd.de/DWD/wetter/radar/radfilm_baw_akt.gif|Radar]]- und [[http://images.intellicast.com/WxImages/SatelliteLoop/hieusat_None_anim.gif|Satellitenbild]] eingefügt, das kann man unter der //skin.conf// unter //[Extras]// verändern. Die Smartphone-Skin aktiviert man unter der skin.conf unter dem Dateipfad ///etc/weewx/skins/Smartphone/skin.conf//. {{ :ss19:skin.png?500 |}}
Skin.conf mit Vim unter Seasons
Schritt 5: Überwachung *VNC: Damit man von überall auf die Wetterstation zugreifen kann, habe ich VNC eingerichtet. Dies ist sehr praktisch, da man zudem auf einen Bildschirm bei der Raspberry Pi verzichten kann, da diese ja mit der Messstation in der Natur stehen soll. *VNC auf der Rasperry Pi einrichten: Dafür habe ich [[https://www.realvnc.com/de/raspberrypi/|RealVNC]] ausgewählt . Dafür muss man zuerst bei der Rasperry Pi einen VNC-Server installieren und einrichten, zudem muss man sich einen Account anlegen, was jedoch für diese Ansprüche kostenlos ist. Eine gute Anleitung gibt es von [[https://www.realvnc.com/de/connect/docs/raspberry-pi.html#raspberry-pi-connect-direct|RealVNC]] oder von [[https://www.raspberrypi.org/documentation/remote-access/vnc/|Raspberry Pi]]. *VNC Viewer auf dem gewünschten Gerät installieren: VNC Viewer auf dem Computer installieren und IP-Adresse mit Port angeben (Standartport: 5900). Bei der Authentifizierung den Benutzer und das Passwort eingeben, welches man unter dem Client einstellen kann. *Fehleranalyse: Bei der VNC-Verbindung kann es zu vielen Problemen kommen. Zum einen ist da das Internet, es muss eine gute Verbindung herrschen, zudem funktioniert es nicht unter 5 Ghz, sonder nur unter 2,6 Ghz, das kann man unter den jeweiligen Netzwerkeinstellungen nachschauen. Außerdem bereit Windows 10 als VNC Viewer große Probleme, denn die Firewall lässt nicht mal mehr Pings durch. Dies kann man unter dem Windows Prompt nachprüfen. Um dies zu ändern, muss man zu den Firewall-Einstellungen. Unter dem Datei-Pfad //Systemsteuerung\System und Sicherheit\Windows Defender Firewall// kommt man auf die Oberfläche von //Windows-Firewall mit erweiterter Sicherheit//, man kann dann alle eingehende und aussgehende Programme zulassen, die man möchte. Gute Anleitungen sind hier: [[https://www.windowspro.de/wolfgang-sommergut/ping-windows-10-erlauben-gui-powershell-netsh-gpo|Windowspro]] und [[https://www.heimnetzwerk-und-wlan-hilfe.com/ping-abfragen-in-der-windows10-firewall-zulassen.html|Heimatnetzwerk und Wlan Hilfe]], jedoch musste ich sogar zwischenzeitlich meine Firewall deaktiveren, bis ich zur tatsächlichen Problemlösung kam. Über Pings habe ich die ganze Zeit überprüft, ob ich die gewünschte IP-Adresse erreichen kann, da man es so einfach überprüfen kann. Updates: Für die einzelnen Schritte und Aktualisierungen auch unter [[ss19:protokolle|Protokolle]] schauen.