Autor Thema: Modul für DWD Open Data  (Gelesen 182412 mal)

Offline jensb

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 763
    • GitHub Projekte
Antw:Modul für DWD Open Data
« Antwort #780 am: 15 April 2021, 20:07:41 »
Dann waren's schon mal 3.

Es gibt bei dem Projekt mehrere Aufgaben, bei denen Hilfe willkommen ist. Bitte melden, wer sich berufen fühlt. Die Arbeit steckt aus meiner Sicht vor allem in Punkt 2 (liegt wohl ohnehin bei mir) und in Punkt 4. Aber ohne dass Punkt 1 nicht klar ist, kann es nicht los gehen. Hier ein grober Überblick:

  • Spezifikation
    • Wie sollen die neuen Readings genau aufgebaut werden? = Wie soll die Indizierung der Readings erfolgen? Per Spaltenindex? Tageweise, ähnlich dem DWD-Modul?
    • Welche zusätzlichen Funktionen/Attribute werden vielleicht benötigt?
  • Coding
    • Trennung von Daten und Darstellung
  • Testen
  • Doku
    • Modulhilfe
    • Wiki
FHEM 6.1 - RPi 4 Raspbian 10 + PiTFT - OPi Zero Armbian 5.35
EnOcean, LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, Stromzähler (ES-Fer), Gaszähler - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433 (Oregnon) - Bluetooth

Offline somansch

  • Full Member
  • ***
  • Beiträge: 396
Antw:Modul für DWD Open Data
« Antwort #781 am: 12 September 2021, 22:35:56 »
Ich habe im Moment eine Wettervorhersage für die nächsten 3, 6 bzw. 9 Stunden per "OpenWeather", da dort die stündlichen readings aktuell in Relation zur aktuellen Zeit erzeugt werden, also "hfc1_xxx" ist die Vorhersage für die nächste Stunde, "hfc3_xxx" in 3 Stunden usw. Leider sind die dortigen Daten nicht sehr zuverlässig, würde also gern auf DWD für diese Anzeige umsteigen.
Nun liefert DWD ja die stündlichen Vorhersagedaten in absoluter Form, also "fc0_1" entspricht heute 1:00Uhr. Wie könnte ein cleveres userreading aussehen, welches an Hand der aktuellen Zeit entsprechende relative readings erzeugt?

Hat jemand eine Idee?

Danke vorab
Andreas

Offline ch.eick

  • Hero Member
  • *****
  • Beiträge: 2781
Antw:Modul für DWD Open Data
« Antwort #782 am: 13 September 2021, 10:45:51 »
Ich habe im Moment eine Wettervorhersage für die nächsten 3, 6 bzw. 9 Stunden per "OpenWeather", da dort die stündlichen readings aktuell in Relation zur aktuellen Zeit erzeugt werden, also "hfc1_xxx" ist die Vorhersage für die nächste Stunde, "hfc3_xxx" in 3 Stunden usw. Leider sind die dortigen Daten nicht sehr zuverlässig, würde also gern auf DWD für diese Anzeige umsteigen.
Nun liefert DWD ja die stündlichen Vorhersagedaten in absoluter Form, also "fc0_1" entspricht heute 1:00Uhr. Wie könnte ein cleveres userreading aussehen, welches an Hand der aktuellen Zeit entsprechende relative readings erzeugt?
Hallo Andreas,
Du kannst im usereading auch mit Perl arbeiten und somit Dir auch beliebige Zeiten berechnen. Aus dem Stunden Wert kannst Du Dir den reading Namen generieren.

- Sobald DWD die readings aktualisiert triggert das das userreadung.
- mit der Abfrage von "time"  bekommst Du die aktuelle Uhrzeit.
- Die ist der Pointer zum DWD reading der betreffenden Stunde
- Das schreibst Du dann in hfc1_xxx oder hfc3_xxx, so wie Du es brauchst.

VG
    Christian
RPI4; Docker; CUNX; Eltako FSB61NP; 230V zentral verschaltet; SamsungTV H-Serie; DLNARenderer; TV.pl;  Sonos; Vallox; Luxtronik; 2x FB7490; Stromzähler mit DvLIR; wunderground; clever-tanken; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP

Offline StefanStrobel

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1863
Antw:Modul für DWD Open Data
« Antwort #783 am: 09 Januar 2022, 13:31:05 »
Hallo Jens,

ich habe gerade das Wiki zum Modul angeschaut um selbst auch mal Wettervorhersagen in meine Fhem-Installation einzubauen.
Gleich bei der Einleitung zur Zeitzone komme ich aber ins Grübeln.
Da steht:

Zitat
4. 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 ...

in https://perldoc.perl.org/functions/localtime steht aber:
Zitat
In scalar context, localtime returns the ctime(3) value:
my $now_string = localtime;  # e.g., "Thu Oct 13 04:54:34 1994"
This scalar value is always in English, and is not locale-dependent.

das bedeutet doch, dass auch bei korrekter Einstellung der Variablen TZ und LANG etc. die Ausgabe von {localtime()} immer auf englisch sein wird oder?
Ist der Absatz im Wiki falsch bzw. eine Altlast oder hab ich da was übersehen?

Gruss
   Stefan



Offline jensb

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 763
    • GitHub Projekte
Antw:Modul für DWD Open Data
« Antwort #784 am: 09 Januar 2022, 14:41:10 »
Hallo Stefan,

danke für den Hinweis, die Beschreibung in der Wiki ist meiner Meinung nach falsch. Ein Blick in die Modulhilfe zeigt, was eigentlich unter 4. in die Wiki gehört:

{$ENV{LANG}}
Einverstanden? Ist vermutlich ein Copy&Past Bug.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 10 + PiTFT - OPi Zero Armbian 5.35
EnOcean, LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, Stromzähler (ES-Fer), Gaszähler - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433 (Oregnon) - Bluetooth

Offline StefanStrobel

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1863
Antw:Modul für DWD Open Data
« Antwort #785 am: 10 Januar 2022, 20:21:23 »
Super, vielen Dank!

Gruss
    Stefan

Offline jhohmann

  • Full Member
  • ***
  • Beiträge: 184
Antw:Modul für DWD Open Data
« Antwort #786 am: 09 Februar 2022, 16:41:34 »
Hallo,
keine Ahnung, woran das folgende liegt oder ob es schon länger da ist.
Ich bekomme, wenn ich mir die Daten meines DWD Devices über einen DWD_OpenData_Weblink anschauen will, im Log immer vier Stacktraces.
2022.02.09 16:27:50 1: PERL WARNING: Use of uninitialized value in subroutine entry at ./FHEM/99_Utils.pm line 21.
2022.02.09 16:27:50 1: eval: { DWD_OpenData_Weblink::AsHtmlH("DWD_weblink_Generator") }
2022.02.09 16:27:50 1: stacktrace:
2022.02.09 16:27:50 1:     main::__ANON__                      called by ./FHEM/99_Utils.pm (21)
2022.02.09 16:27:50 1:     main::time_str2num                  called by ./FHEM/99_DWD_OpenData_Weblink.pm (728)
2022.02.09 16:27:50 1:     DWD_OpenData_Weblink::PrepareForecastData called by ./FHEM/99_DWD_OpenData_Weblink.pm (1119)
2022.02.09 16:27:50 1:     DWD_OpenData_Weblink::GetForecastHtmlH called by ./FHEM/99_DWD_OpenData_Weblink.pm (1253)
2022.02.09 16:27:50 1:     DWD_OpenData_Weblink::AsHtmlH       called by (eval 186821) (1)
2022.02.09 16:27:50 1:     (eval)                              called by fhem.pl (1163)
2022.02.09 16:27:50 1:     main::AnalyzePerlCommand            called by ./FHEM/98_weblink.pm (106)
2022.02.09 16:27:50 1:     main::weblink_FwFn                  called by ./FHEM/01_FHEMWEB.pm (3377)
2022.02.09 16:27:50 1:     main::FW_devState                   called by ./FHEM/01_FHEMWEB.pm (1863)
2022.02.09 16:27:50 1:     main::FW_makeDeviceLine             called by ./FHEM/01_FHEMWEB.pm (2037)
2022.02.09 16:27:50 1:     main::FW_showRoom                   called by ./FHEM/01_FHEMWEB.pm (1185)
2022.02.09 16:27:50 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (598)
2022.02.09 16:27:50 1:     main::FW_Read                       called by fhem.pl (3898)
2022.02.09 16:27:50 1:     main::CallFn                        called by fhem.pl (776)
Das ganze passiert bei 99_DWD_OpenData_Weblink.pm im Block (hier letzte Zeile, entspricht Zeile 728):
    my $date = ::ReadingsVal($d, "fc0_date", "?");
    my $hourPrefix = "fc0_".$index;
    my $time = ::ReadingsVal($d, $hourPrefix."_time", "");
    my $epoch = ::time_str2num($date.' '.$time);
 
Datum und Uhrzeit setzen sich dann z.B. so zusammen: "2022-02-11 01:00".
Wenn ich bei der Umrechnung den Aufruf so abändere: "time_str2num($date.' '.$time.'.00')", also einfach die Sekunden ergänze, kommt kein Abbruch.
Sind da von DWD die Sekunden abgeschnitten worden?
Man könnte die Sekunden hier einfach immer zusätzlich auch wenn sie geliefert würden ergänzen.
Bei {time_str2num('2022-02-11 01:00:00:00')} wird der letzte Abschnitt :00 einfach von der Umrechnung ignoriert.
Ober man müsste noch eine Längenprüfung einbauen, wenn man es sauber machen will. Wenn die Uhrzeit nur fünfstellig ist, dann ergänze um ':00'.

Hier auch mal als Beispiel die Readings von meinem DWD:
     2022-02-09 16:30:06   a_count         0
     2022-02-09 16:30:06   a_state         updated
     2022-02-09 16:30:06   a_time          2022-02-09 16:30:05
     2022-02-09 04:00:05   fc0_0_DD        205
     2022-02-09 04:00:05   fc0_0_FX1       20
     2022-02-09 04:00:05   fc0_0_Neff      82
     2022-02-09 04:00:05   fc0_0_R600      12.00
     2022-02-09 04:00:05   fc0_0_RR6c      0.00
     2022-02-09 04:00:05   fc0_0_SunUp     0
     2022-02-09 04:00:05   fc0_0_TTT       5.40
     2022-02-09 04:00:05   fc0_0_time      01:00
     2022-02-09 04:00:05   fc0_0_ww        3
     2022-02-09 04:00:05   fc0_0_wwd       Bewölkung zunehmend
     2022-02-09 10:00:05   fc0_1_DD        199
     2022-02-09 10:00:05   fc0_1_FX1       28
     2022-02-09 10:00:05   fc0_1_Neff      88
     2022-02-09 10:00:05   fc0_1_R600      3.00
     2022-02-09 10:00:05   fc0_1_RR6c      0.00
     2022-02-09 10:00:05   fc0_1_RRhc      0.10
     2022-02-09 10:00:05   fc0_1_Rh00      4
     2022-02-09 10:00:05   fc0_1_SunUp     0
     2022-02-09 10:00:05   fc0_1_TTT       5
     2022-02-09 10:00:05   fc0_1_time      07:00
     2022-02-09 10:00:05   fc0_1_ww        3
     2022-02-09 10:00:05   fc0_1_wwd       Bewölkung zunehmend
     2022-02-09 16:00:05   fc0_2_DD        221
     2022-02-09 16:00:05   fc0_2_FX1       32
     2022-02-09 16:00:05   fc0_2_Neff      75
     2022-02-09 16:00:05   fc0_2_R600      6.00
     2022-02-09 16:00:05   fc0_2_RR6c      0.00
     2022-02-09 16:00:05   fc0_2_SunUp     1
     2022-02-09 16:00:05   fc0_2_TTT       8.70
     2022-02-09 16:00:05   fc0_2_time      13:00
     2022-02-09 16:00:05   fc0_2_ww        3
     2022-02-09 16:00:05   fc0_2_wwd       Bewölkung zunehmend
     2022-02-09 16:00:05   fc0_3_DD        212
     2022-02-09 16:00:05   fc0_3_FX1       20
     2022-02-09 16:00:05   fc0_3_Neff      51
     2022-02-09 16:00:05   fc0_3_R600      2.00
     2022-02-09 16:00:05   fc0_3_RR6c      0.00
     2022-02-09 16:00:05   fc0_3_RRhc      0.00
     2022-02-09 16:00:05   fc0_3_Rh00      11
     2022-02-09 16:00:05   fc0_3_SunUp     0
     2022-02-09 16:00:05   fc0_3_TTT       6.10
     2022-02-09 16:00:05   fc0_3_time      19:00
     2022-02-09 16:00:05   fc0_3_ww        1
     2022-02-09 16:00:05   fc0_3_wwd       Bewölkung abnehmend
     2022-02-09 10:00:05   fc0_Tg          2.90
     2022-02-09 16:00:05   fc0_Tn          5.30
     2022-02-09 16:00:05   fc0_Tx          10.3
     2022-02-09 16:00:05   fc0_date        2022-02-09
     2022-02-09 16:00:05   fc0_weekday     Mi
     2022-02-09 16:00:05   fc1_0_DD        202
     2022-02-09 16:00:05   fc1_0_FX1       11
     2022-02-09 16:00:05   fc1_0_Neff      43
     2022-02-09 16:00:05   fc1_0_R600      1.00
     2022-02-09 16:00:05   fc1_0_RR6c      0.00
     2022-02-09 16:00:05   fc1_0_SunUp     0
     2022-02-09 16:00:05   fc1_0_TTT       3.10
     2022-02-09 16:00:05   fc1_0_time      01:00
     2022-02-09 16:00:05   fc1_0_ww        1
     2022-02-09 16:00:05   fc1_0_wwd       Bewölkung abnehmend
     2022-02-09 16:00:05   fc1_1_DD        212
     2022-02-09 16:00:05   fc1_1_FX1       20
     2022-02-09 16:00:05   fc1_1_Neff      70
     2022-02-09 16:00:05   fc1_1_R600      3.00
     2022-02-09 16:00:05   fc1_1_RR6c      0.00
     2022-02-09 16:00:05   fc1_1_RRhc      0.00
     2022-02-09 16:00:05   fc1_1_Rh00      3
     2022-02-09 16:00:05   fc1_1_SunUp     0
     2022-02-09 16:00:05   fc1_1_TTT       1.70
     2022-02-09 16:00:05   fc1_1_time      07:00
     2022-02-09 16:00:05   fc1_1_ww        3
     2022-02-09 16:00:05   fc1_1_wwd       Bewölkung zunehmend
     2022-02-09 16:00:05   fc1_2_DD        224
     2022-02-09 16:00:05   fc1_2_FX1       35
     2022-02-09 16:00:05   fc1_2_Neff      81
     2022-02-09 16:00:05   fc1_2_R600      37.00
     2022-02-09 16:00:05   fc1_2_RR6c      0.00
     2022-02-09 16:00:05   fc1_2_SunUp     1
     2022-02-09 16:00:05   fc1_2_TTT       5.70
     2022-02-09 16:00:05   fc1_2_time      13:00
     2022-02-09 16:00:05   fc1_2_ww        3
     2022-02-09 16:00:05   fc1_2_wwd       Bewölkung zunehmend
     2022-02-09 16:00:05   fc1_3_DD        222
     2022-02-09 16:00:05   fc1_3_FX1       33
     2022-02-09 16:00:05   fc1_3_Neff      86
     2022-02-09 16:00:05   fc1_3_R600      70.00
     2022-02-09 16:00:05   fc1_3_RR6c      0.50
     2022-02-09 16:00:05   fc1_3_RRhc      0.50
     2022-02-09 16:00:05   fc1_3_Rh00      82
     2022-02-09 16:00:05   fc1_3_SunUp     0
     2022-02-09 16:00:05   fc1_3_TTT       5.60
     2022-02-09 16:00:05   fc1_3_time      19:00
     2022-02-09 16:00:05   fc1_3_ww        61
     2022-02-09 16:00:05   fc1_3_wwd       durchgehend leichter Regen
     2022-02-09 16:00:05   fc1_Tg          -2.10
     2022-02-09 16:00:05   fc1_Tn          1.40
     2022-02-09 16:00:05   fc1_Tx          7.30
     2022-02-09 16:00:05   fc1_date        2022-02-10
     2022-02-09 16:00:05   fc1_weekday     Do
     2022-02-09 16:00:05   fc2_0_DD        250
     2022-02-09 16:00:05   fc2_0_FX1       20
     2022-02-09 16:00:05   fc2_0_Neff      86
     2022-02-09 16:00:05   fc2_0_R600      85.00
     2022-02-09 16:00:05   fc2_0_RR6c      1.60
     2022-02-09 16:00:05   fc2_0_SunUp     0
     2022-02-09 16:00:05   fc2_0_TTT       3.40
     2022-02-09 16:00:05   fc2_0_time      01:00
     2022-02-09 16:00:05   fc2_0_ww        61
     2022-02-09 16:00:05   fc2_0_wwd       durchgehend leichter Regen
     2022-02-09 16:00:05   fc2_1_DD        255
     2022-02-09 16:00:05   fc2_1_FX1       28
     2022-02-09 16:00:05   fc2_1_Neff      73
     2022-02-09 16:00:05   fc2_1_R600      66.00
     2022-02-09 16:00:05   fc2_1_RR6c      0.60
     2022-02-09 16:00:05   fc2_1_RRhc      2.20
     2022-02-09 16:00:05   fc2_1_Rh00      93
     2022-02-09 16:00:05   fc2_1_SunUp     0
     2022-02-09 16:00:05   fc2_1_TTT       1.90
     2022-02-09 16:00:05   fc2_1_time      07:00
     2022-02-09 16:00:05   fc2_1_ww        61
     2022-02-09 16:00:05   fc2_1_wwd       durchgehend leichter Regen
     2022-02-09 16:00:05   fc2_2_DD        278
     2022-02-09 16:00:05   fc2_2_FX1       35
     2022-02-09 16:00:05   fc2_2_Neff      64
     2022-02-09 16:00:05   fc2_2_R600      50.00
     2022-02-09 16:00:05   fc2_2_RR6c      0.00
     2022-02-09 16:00:05   fc2_2_SunUp     1
     2022-02-09 16:00:05   fc2_2_TTT       4.80
     2022-02-09 16:00:05   fc2_2_time      13:00
     2022-02-09 16:00:05   fc2_2_ww        2
     2022-02-09 16:00:05   fc2_2_wwd       Bewölkung unverändert
     2022-02-09 16:00:05   fc2_3_DD        282
     2022-02-09 16:00:05   fc2_3_FX1       24
     2022-02-09 16:00:05   fc2_3_Neff      46
     2022-02-09 16:00:05   fc2_3_R600      29.00
     2022-02-09 16:00:05   fc2_3_RR6c      0.00
     2022-02-09 16:00:05   fc2_3_RRhc      0.10
     2022-02-09 16:00:05   fc2_3_Rh00      55
     2022-02-09 16:00:05   fc2_3_SunUp     0
     2022-02-09 16:00:05   fc2_3_TTT       1.80
     2022-02-09 16:00:05   fc2_3_time      19:00
     2022-02-09 16:00:05   fc2_3_ww        1
     2022-02-09 16:00:05   fc2_3_wwd       Bewölkung abnehmend
     2022-02-09 16:00:05   fc2_Tg          -0.30
     2022-02-09 16:00:05   fc2_Tn          0.90
     2022-02-09 16:00:05   fc2_Tx          6.20
     2022-02-09 16:00:05   fc2_date        2022-02-11
     2022-02-09 16:00:05   fc2_weekday     Fr
Raspberry Pi 4 - buster / EnOcean - Rollo+Licht, deCONZ - Licht+Sensoren, ZWave - CO Messung, HMCCU mit piVCCU - Heizung+Rollo
plus dovecot, minidlna
Hilfreich Hilfreich x 1 Liste anzeigen

Offline jensb

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 763
    • GitHub Projekte
Antw:Modul für DWD Open Data
« Antwort #787 am: 09 Februar 2022, 22:48:35 »
Hallo jhohmann,

danke für deine Analyse. Das ist wohl ein "alter Hund", um den sich noch keiner gekümmert hat.

time_str2num() erwartet Sekunden, aber die fc_xxx_time-Readings haben keine. Das Anhängen von ":00" ist also unbedingt erforderlich. Bleibt eher die Frage, warum es trotzdem funktioniert, aber die Antwort lautet dann wohl: es ist ja nur eine Perl-Warnung und kein Fehler.

Werde mir das noch einmal genau ansehen.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 10 + PiTFT - OPi Zero Armbian 5.35
EnOcean, LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, Stromzähler (ES-Fer), Gaszähler - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433 (Oregnon) - Bluetooth

Offline Navigator

  • Sr. Member
  • ****
  • Beiträge: 620
Antw:Modul für DWD Open Data
« Antwort #788 am: 15 Juni 2022, 19:31:12 »
Kann mir mal jemand sagen, welche Abkürzungen für die zu erwartenden Regenmengen stehen? Ich blick da nicht durch bei der MetElementDefinition.  :-[

Offline jensb

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 763
    • GitHub Projekte
Antw:Modul für DWD Open Data
« Antwort #789 am: 15 Juni 2022, 20:57:58 »
Auszug aus der Modulhilfe:
  • RR1c [kg/m2] - precipitation amount in the last hour
  • RR3c [kg/m2] - precipitation amount in the last 3 hours
  • RR6c [kg/m2] - precipitation amount in the last 6 hours
  • R600 [%] - probability of rain in the last 6 hours
  • RRhc [kg/m2] - precipitation amount in the last 12 hours
  • Rh00 [%] - probability of rain in the last 12 hours
  • RRdc [kg/m2] - precipitation amount in the last 24 hours
  • Rd00 [%] - probability of rain in the last 24 hours

precipitation steht für Niederschlagsmenge, [kg/m2] kann man grob auch als [mm/m2] betrachten

probability steht für Wahrscheinlichkeit

last ist ein relative Zeitbezug - bei einem Vorhersagewert vom z.B. 16.06.2022 12:00 für die letzten 12 Stunden ist also der Zeitraum 16.06.22 00:00 bis 12:00 gemeint
FHEM 6.1 - RPi 4 Raspbian 10 + PiTFT - OPi Zero Armbian 5.35
EnOcean, LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, Stromzähler (ES-Fer), Gaszähler - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433 (Oregnon) - Bluetooth

Offline Navigator

  • Sr. Member
  • ****
  • Beiträge: 620
Antw:Modul für DWD Open Data
« Antwort #790 am: 16 Juni 2022, 17:07:00 »
Danke, das hilft mir weiter. Also müsste  *fc1_3_RRhc*, 20:00 Uhr immer die Regenmenge für den nächsten  Tag von 8-20 Uhr sein, sehe ich das richtig?

Offline jensb

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 763
    • GitHub Projekte
Antw:Modul für DWD Open Data
« Antwort #791 am: 16 Juni 2022, 20:51:13 »
Ja, perfekt (fc1 ist "morgen", bei forecastResolution=6 ist "3"=18:00 UTC=20:00 Europe/Berlin und RRhc gilt für die vorherigen 12 Stunden).
FHEM 6.1 - RPi 4 Raspbian 10 + PiTFT - OPi Zero Armbian 5.35
EnOcean, LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, Stromzähler (ES-Fer), Gaszähler - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433 (Oregnon) - Bluetooth
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline dadoc

  • Sr. Member
  • ****
  • Beiträge: 955
Antw:Modul für DWD Open Data
« Antwort #792 am: 18 Juli 2022, 12:24:38 »
Hallo Jens,
auf der Suche nach einer Datenquelle für Wettervorhersagen in Spanien bin ich auf aemet.es gestoßen. Das entspricht wohl dem DWD, ist also staatlich und stellt Daten, XMLs, API(-Key) usw. kostenlos zur Verfügung, siehe https://opendata.aemet.es/centrodedescargas/inicio
Es gibt auch jede Menge Bespielimplementierungen, s. https://opendata.aemet.es/centrodedescargas/ejemProgramas?
Beispiel für eine direkt zugängliche XML-Datei im Anhang (für die Stadt Salamanca).
Ich kann nicht wirklich kompetent beurteilen, ob die opendata-Datenstruktur der vom DWD gleicht oder nicht - wäre es möglich, aemet.es als optionale Datenquelle in Dein Modul zu integrieren? Sehr gern helfe ich im Bereich meiner Möglichkeiten, d.h. übersetzen, Wiki-Ergänzungen, Testen o.ä.
Sonnige Grüße aus - Spanien ;)
Martin
Standort 1: FS20 mit CUL und FHEM auf Raspi. HM-Komponenten (Heizung, Rollladen, Schalter). HM IP über Raspimatic (testweise)
Standort 2: Homematic (Wired) über CCU2 und PocketHome HD
3 x Raspi3 mit piCorePlayer/Kodi für Multiroom Audio (+ Tablets/iPeng/iPods

Offline jensb

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 763
    • GitHub Projekte
Antw:Modul für DWD Open Data
« Antwort #793 am: 29 Oktober 2022, 20:20:01 »
Hallo Martin,

habe mir die Datenstruktur angesehen: Der Datenumfang deines Beispiels ist etwas kleiner als beim DWD, aber das Wichtigste ist dabei. Möglicherweise gibt es noch andere Daten, die man abrufen könnte. Die Datenstruktur ist mehr oder weniger selbsterklärend, wenn man ein bisschen Spanisch kann. Sie hat aber keinerlei Ähnlichkeit mit der vom DWD, auch wenn beide Datenquellen "opendata" im Namen tragen.

Eine Integration ins vorhandene DWD OpenData Modul wäre möglich (ist schließlich "Soft"-Ware), wobei allerdings nur ein Teil des vorhandenen Codes wiederverwendet werden könnte. Die Umsetzung bräuchte einige Stunden Programmieraufwand. Falls das für eine größere Anzahl von Users von Interesse wäre, würde ich mir das als längerfristige Aufgabe vornehmen. Alternativ biete ich an, dich oder einen anderen Entwickler zu unterstützen.

Es gibt für FHEM u.a. noch das Modul "Weather", das bereits modular angelegt ist. Ohne Programmieren wird es aber auch hier nicht gehen.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 10 + PiTFT - OPi Zero Armbian 5.35
EnOcean, LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, Stromzähler (ES-Fer), Gaszähler - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433 (Oregnon) - Bluetooth

Offline Aeternitas

  • Newbie
  • Beiträge: 1
Antw:Modul für DWD Open Data
« Antwort #794 am: 27 Dezember 2022, 14:22:55 »
Hi, ich bin neu bei FHEM und habe mit dem Wetterabruf vom DWD begonnen. Ich bekomme auch soweit das Widget (99_DWD_OpenData_Weblink.pm) mit der Vorhersage angezeigt. Der DWD liefert die Temperaturen mit einer Genauigkeit von zwei Stellen hinter dem Komma. Gibt es irgendwo eine Einstellung, wodurch die Temps auf eine oder keine Stelle gerundet werden können? "7.90 °C" sieht etwas merkwürdig aus.

Danke
Sebastian