DWD OpenData: Unterschied zwischen den Versionen
JensB (Diskussion | Beiträge) (Abbildung Weblink) |
JensB (Diskussion | Beiträge) K (Bezug zum amtlichen Gemeindeschlüssel) |
||
Zeile 96: | Zeile 96: | ||
* Wettervorhersage | * Wettervorhersage | ||
Für die Wettervorhersage muss der Stationscode ermittelt werden. Dazu den [https://www.dwd.de/DE/leistungen/met_verfahren_mosmix/mosmix_stationskatalog.pdf MOSMIX Stationskatalog] herunterladen, öffnen und die gewünschte Station heraussuchen. Einen Teil der deutschen Stationen kann man auch der [https://www.dwd.de/DE/derdwd/messnetz/bodenbeobachtung/messnetzkarte_boden.pdf Bodenmessnetzkarte] entnehmen. | Für die Wettervorhersage muss der Stationscode ermittelt werden. Dazu den [https://www.dwd.de/DE/leistungen/met_verfahren_mosmix/mosmix_stationskatalog.pdf MOSMIX Stationskatalog] herunterladen, öffnen und die gewünschte Station heraussuchen. Einen Teil der deutschen Stationen kann man auch der [https://www.dwd.de/DE/derdwd/messnetz/bodenbeobachtung/messnetzkarte_boden.pdf Bodenmessnetzkarte] entnehmen. Den ermittelten Stationscode kann man dann entweder für eine Einzelabfrage als Parameter für das Kommando ''get forecast'' verwenden oder für die automatische Aktualisierung als Attribut ''forecastStation'' hinterlegen. | ||
* Wetterwarnungen | * Wetterwarnungen | ||
Für die Wetterwarnungen muss die Warnzelle ermittelt werden. Dazu [https://www.dwd.de/DE/leistungen/opendata/help/warnungen/cap_warncellids_csv.csv | Für die Wetterwarnungen muss die Warnzelle ermittelt werden. Dazu [https://www.dwd.de/DE/leistungen/opendata/help/warnungen/cap_warncellids_csv.csv Warnzellen-ID Katalog] herunterladen, öffnen und die gewünschte Warnzelle heraussuchen. Unterstützt werden Gemeinden (beginnen mit 8), Landkreise (beginnen mit 1 oder 9) oder Küste (beginnen mit 5). Die Warnzellen-ID kann man dann entweder für eine Einzelabfrage als Parameter für das Kommando ''get alerts'' verwenden oder für die automatische Aktualisierung als Attribut ''alertArea'' hinterlegen. Die Warnzellen-ID ist ab der 2. Stelle identisch mit den ersten Ziffern des amtlichen Gemeindeschlüssels. Man kann z.B. den Namen von Gemeinde oder Landkreis bei den [https://www.statistik-bw.de/Statistik-Portal/gemeindeverz.asp Statistischen Ämtern des Bundes und der Länder] eingeben, den amtlichen Gemeindeschlüssels ermitteln und dann mit vorangestellter 1, 8 oder 9 im Warnzellen-ID Katalog des DWD nach einem Eintrag mit exakter oder weitgehender Übereinstimmung suchen. Wem das zu kompliziert vorkommt, kann bei mehrdeutigen Gemeinde- bzw. Landkreisbezeichnungen auch versuchen auszuprobieren, welche die richtige Wanrzellen-ID ist. | ||
Um das Modul mit Vorhersage und Wetterwarnungen zu nutzen, kann z.B. folgendes in die [[Konfiguration]] eingetragen werden: | Um das Modul mit automatisch Aktualisierung von Vorhersage und Wetterwarnungen zu nutzen, kann z.B. folgendes in die [[Konfiguration]] eingetragen werden: | ||
<pre> | <pre> |
Version vom 13. Mai 2018, 10:27 Uhr
DWD_OpenData | |
---|---|
Zweck / Funktion | |
Daten vom DWD OpenData Server abrufen | |
Allgemein | |
Typ | Gerätemodul |
Details | |
Dokumentation | EN / DE |
Support (Forum) | Unterstützende Dienste/Wettermodule |
Modulname | 55_DWD_OpenData.pm |
Ersteller | JensB |
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref! |
Der Deutsche Wetterdienst (DWD) stellt Wetterdaten über den Open Data Server zur Verfügung. Die Verwendung dieses Dienstes und der vom DWD zur Verfügung gestellten Daten unterliegt den auf der OpenData Webseite beschriebenen Bedingungen. Einen Überblick über die verfügbaren Daten findet man in der Tabelle OpenData_weather_content.xls.
Anwendung
Aufgrund der unterschiedlichen vom DWD bereitgestellten Datenformate benötigt das Modul zur Dekodierung je nach gewünschtem Funktionsumfang zusätzliche Perl-Module, die nicht standardmäßig vorinstalliert sind und je nach Systemkonfiguration nachinstalliert werden müssen. Außerdem unterstützt das Modul Zeitzonen, um z.B. die Wettervorhersage internationaler Stationen in Ortszeit darstellen zu können. Hierfür sind je nach Systemkonfiguration weitere Einstellungen erforderlich. Auch die Sprache der Wochentage für die Wettervorhersage ist frei wählbar. Je nach Systemkonfiguration ist aber die Standardsprache u.U. auf Englisch eingestellt, was weitere Anpassungen der Systemkonfiguration erforderlich macht.
Vorbereitung
Im folgenden wird z.T. von einem System mit Rasbian oder Debian mit System-V Startsystem ausgegangen. Auf anderen Betriebssystemen und auf Systemen mit System-D müssen die Installationsschritte ggf. angepasst werden.
1. Für die Wettervorhersage:
Installation des Perl-Moduls Text::CSV_XS in Version 0.40 oder höher über die System-Kommandozeile mit
sudo apt-get install libtext-csv-xs-perl
oder mit CPAN.
2. Für die Wetterwarnungen:
Installation des Perl-Moduls XML::LibXML über die System-Kommandozeile mit
sudo apt-get install libxml-libxml-perl
oder mit CPAN.
3. Falls man einen eigenen Internet-Proxy nutzt:
Die Konfiguration des Proxies für FHEM erfolgt z.B. durch Eintrag von
attr global proxy <myProxyHost>:<myProxyPort>
in die Konfiguration, wobei myProxyHost durch den Namen oder die IP-Adresse des Proxy-Servers ersetzt werden muss und für myProxyPort der Port des Proxy-Servers eingetragen werden muss (oft 3128).
4. FHEM Uhrzeit und Zeitzone:
Durch Eingabe von
{localtime()}
in die FHEM-Kommandozeile überprüfen, ob die FHEM-Uhrzeit plausibel ist. Ist dies nicht der Fall sollten die Uhrzeit auf Systemebene überprüft werden und ggf. die Systemeinstellungen angepasst werden. Ermitteln der Bezeichnung der eigenen Zeitzone über die System-Kommandozeile mit
tzselect
und diese Bezeichnung in die Datei /etc/timezone eintragen und
export TZ=`cat /etc/timezone`
der Datei /etc/profile hinzufügen und dann das System neu starten. Nun muss die Zeitanzeige in FHEM korrekt sein.
5. FHEM Sprache:
Durch Eingabe von
{localtime()}
in die FHEM-Kommandozeile überprüfen, in welcher Sprache der Wochentag angezeigt wird. Stimmt die Sprache nicht, dann auf der System-Kommandozeile
dpkg-reconfigure locales
eingeben und aus der Liste z.B. de_DE.UTF-8 zusätzlich auswählen. Mit Eingabe von
locale -a
auf der System-Kommandozeile überprüfen, ob die ausgewählte Sprache nun zur Verfügung steht. Durch Hinzufügen von z.B.
export LANG=de_DE.UTF-8
in die Datei /etc/init.d/fhem (irgendwo zwischen start und perl) und anschließendem Neustart von FHEM wird die Sprache für FHEM eingestellt. Nun muss die Wochentagsanzeige in FHEM korrekt sein.
6. Für den Weblink:
Installation des Perl-Moduls DateTime über die System-Kommandozeile mit
sudo apt-get install libdatetime-perl
oder mit CPAN.
Define
siehe Commandref.
Attributes
siehe Commandref.
Anwendungsbeispiele
Beispiel zur Modul-Einrichtung
- Wettervorhersage
Für die Wettervorhersage muss der Stationscode ermittelt werden. Dazu den MOSMIX Stationskatalog herunterladen, öffnen und die gewünschte Station heraussuchen. Einen Teil der deutschen Stationen kann man auch der Bodenmessnetzkarte entnehmen. Den ermittelten Stationscode kann man dann entweder für eine Einzelabfrage als Parameter für das Kommando get forecast verwenden oder für die automatische Aktualisierung als Attribut forecastStation hinterlegen.
- Wetterwarnungen
Für die Wetterwarnungen muss die Warnzelle ermittelt werden. Dazu Warnzellen-ID Katalog herunterladen, öffnen und die gewünschte Warnzelle heraussuchen. Unterstützt werden Gemeinden (beginnen mit 8), Landkreise (beginnen mit 1 oder 9) oder Küste (beginnen mit 5). Die Warnzellen-ID kann man dann entweder für eine Einzelabfrage als Parameter für das Kommando get alerts verwenden oder für die automatische Aktualisierung als Attribut alertArea hinterlegen. Die Warnzellen-ID ist ab der 2. Stelle identisch mit den ersten Ziffern des amtlichen Gemeindeschlüssels. Man kann z.B. den Namen von Gemeinde oder Landkreis bei den Statistischen Ämtern des Bundes und der Länder eingeben, den amtlichen Gemeindeschlüssels ermitteln und dann mit vorangestellter 1, 8 oder 9 im Warnzellen-ID Katalog des DWD nach einem Eintrag mit exakter oder weitgehender Übereinstimmung suchen. Wem das zu kompliziert vorkommt, kann bei mehrdeutigen Gemeinde- bzw. Landkreisbezeichnungen auch versuchen auszuprobieren, welche die richtige Wanrzellen-ID ist.
Um das Modul mit automatisch Aktualisierung von Vorhersage und Wetterwarnungen zu nutzen, kann z.B. folgendes in die Konfiguration eingetragen werden:
define DWD DWD_OpenData attr DWD alertArea 111000000 attr DWD forecastStation 99810 attr DWD forecastDays 3 attr DWD forecastWW2Text 1
Weitere Details zur Installation und Konfiguration finden sich in der Commandref.
Beispiel für die Einrichtung eines Weblinks
Zur graphischen Darstellung der Vorhersage und der Wetterwarnungen steht ein Weblink zur Verfügung.
Die Datei DWDODweblink.pm herunterladen, in das Modulverzeichnis fhem/FHEM kopieren, irgendwo hinter package main in die Datei 99_myUtils.pm (nicht verwechseln mit 99_Utils.pm!) den Eintrag
eval "use DWDODweblink;";
hinzufügen und FHEM neu starten. Nun kann in die Konfiguration z.B. folgendes eingetragen werden:
define DWDweblink weblink htmlCode { DWDOD_AsHtmlH("DWD", 4, 0) }
Weitere Details zur Installation und Konfiguration finden sich am Ende der Datei DWDODweblink.pm, die man dazu mit einem Texteditor öffnen sollte, da Weblinks nicht in der Commandref aufgeführt werden.
Hier ein Ausschnitt aus der Darstellung des Weblinks mit FHEMWEB: