Zum Hauptinhalt springen
Data Connectors · Wetter

DWD Weather

Der Node lädt die MOSMIX-Punktvorhersage des Deutschen Wetterdienstes (DWD) für eine oder mehrere Wetterstationen, interpoliert die Werte auf den aktuellen Zeitpunkt und gibt sie als flache WeatherObserved- und WeatherForecast-Objekte aus. Stationen wählen Sie bequem über eine Karte mit Adresssuche und Umkreisfilter.

  • Datenquelle
  • Triggerbasiert
  • WeatherObserved
Node-Typ
hypertegrity-dwd-weather
Paket
@htag/node-red-contrib-hypertegrity-weather
Eingänge / Ausgänge
1 / 2
Datenquelle
DWD Open Data, MOSMIX_L (KMZ je Station)

Wofür Sie den Node verwenden​

Der DWD stellt mit MOSMIX stündlich aktualisierte Punktvorhersagen für mehr als 5 000 Stationen weltweit frei zur Verfügung. Der DWD-Weather-Node bringt diese Daten ohne eigene KML-Verarbeitung in einen Node-RED-Flow. Er übernimmt das Herunterladen der komprimierten Datei, das Entpacken, das speicherschonende Parsen und die Umrechnung in metrische Einheiten.

Typische Einsatzfälle sind:

  • Aktuelle Wetterlage für eine Kommune als WeatherObserved-Objekt in einen NGSI-LD Context Broker übernehmen.
  • Stundenweise Vorhersagen für Dashboards, Bewässerungssteuerungen oder Energieprognosen bereitstellen.
  • Mehrere Stationen in einem Node bündeln, zum Beispiel alle Stationen eines Landkreises.
  • Spezielle MOSMIX-Elemente wie Windböen, Sonnenscheindauer oder Globalstrahlung gezielt mit ausgeben.

So funktioniert der Node​

1

Auslösen

Eine eingehende Nachricht startet den Abruf. Der Node fragt den DWD nicht von selbst ab.

2

Herunterladen und parsen

Für jede konfigurierte Station wird die KMZ-Datei MOSMIX_L_LATEST geladen, entpackt und als Datenstrom gelesen. Der Stationskatalog wird einmal täglich aktualisiert.

3

Interpolieren

Die stündlichen Vorhersagewerte werden linear auf den aktuellen Zeitpunkt beziehungsweise auf jede Vorhersagestunde interpoliert.

4

Ausgeben

Ausgang 1 erhält je Station ein WeatherObserved-Objekt, Ausgang 2 ein Array von WeatherForecast-Objekten.

Ergebnis: Flache Wetterobjekte in metrischen Einheiten, die direkt in den NGSI-LD Builder geführt werden können.

Der Node ist triggerbasiert. Kombinieren Sie ihn mit einem Inject-Node, der in einem festen Intervall auslöst. Da der DWD die MOSMIX_L-Dateien stündlich erneuert, ist ein Intervall von 60 Minuten sinnvoll. Für jede Station wird bei jedem Auslösen die vollständige KMZ-Datei heruntergeladen; laufende Downloads derselben Station werden nicht parallel gestartet.

Für Ausgang 1 interpoliert der Node die MOSMIX-Werte auf die aktuelle Uhrzeit und gibt das Ergebnis als WeatherObserved aus.

Konfiguration​

Der Bearbeitungsdialog ist in drei Registerkarten unterteilt. Auf den Registerkarten Wetter Beobachtung und Wetter Vorhersage wählen Sie Stationen über eine Karte aus: Adresse oder Stadt suchen, Umkreis zwischen 5 und 100 km einstellen, Liste filtern, einzelne Stationen anklicken oder alle sichtbaren übernehmen. Alternativ tragen Sie Stations-IDs manuell ein. Die Karte bezieht die Stationsliste über den konfigurierten Stationskatalog und die Adresssuche über den Nominatim-Dienst von OpenStreetMap.

Registerkarte „Wetter Beobachtung“​

FeldTypStandardBedeutung
NameTextleerAnzeigename des Nodes im Flow.
Manuelle ID(s) / Stationsauswahl (mosmixStation)Text, kommagetrenntleer, PflichtfeldDWD-Stations-IDs für Ausgang 1. Die Auswahl gilt auch für Ausgang 2, solange keine eigenen Vorhersagestationen festgelegt sind.

Registerkarte „Wetter Vorhersage“​

FeldTypStandardBedeutung
Vorausblick (lookAheadHours)Zahl0Zeitraum, für den stündliche Vorhersagen erzeugt werden. 0 bedeutet: keine Vorhersage, nur aktuelle Werte.
Einheit (lookAheadUnit)Auswahl Stunden / TageStundenEinheit des Vorausblicks. Tage werden intern mit 24 multipliziert.
Spezifische Stationen für Vorhersage verwenden (useForecastStation)KontrollkästcheninaktivAktiviert eine eigene Stationsauswahl für Ausgang 2.
Auswahl der Vorhersagestationen (forecastStation)Text, kommagetrenntleerStations-IDs für Ausgang 2. Nur wirksam, wenn das Kontrollkästchen aktiv ist.

Registerkarte „Erweitert“​

FeldTypStandardBedeutung
Topic (topic)TextleerWird in msg.topic beider Ausgänge gesetzt.
Detaillierte Vorhersageelemente (detailedElements)Auswahl je Station und Rolle{}Zusätzliche MOSMIX-Elemente, die der Ausgabe für eine bestimmte Station angehängt werden. Sie wählen zuerst „Station (weatherObserved)“ oder „Station (weatherForecast)“ und dann die Elemente aus der Liste, die der Node live aus der MOSMIX-Datei liest. Intern als JSON der Form STATION_observed beziehungsweise STATION_forecast → Elementliste gespeichert.
MOSMIX-URL (mosmixUrl)TextDWD-Open-Data-Vorlage, siehe untenURL-Vorlage für die Stationsdateien. Der Platzhalter {$station} wird durch die Stations-ID ersetzt.
Katalog-URL (catalogUrl)TextDWD-Stationskatalog, siehe untenStationskatalog mit Namen und Koordinaten. Wird höchstens alle 24 Stunden neu geladen.

Standardwerte der beiden URL-Felder:

MOSMIX-URL: https://opendata.dwd.de/weather/local_forecasts/mos/MOSMIX_L/single_stations/{$station}/kml/MOSMIX_L_LATEST_{$station}.kmz
Katalog-URL: https://www.dwd.de/DE/leistungen/met_verfahren_mosmix/mosmix_stationskatalog.cfg?view=nasPublication&nn=16102
Vorausblick wählen

MOSMIX_L enthält Vorhersagen für rund zehn Tage. Mit einem Vorausblick von 24 Stunden erzeugt der Node 24 Vorhersageobjekte je Station. Ein zu großer Wert führt zu dem Fehler „Keine Vorhersagen für zukünftige Termine gefunden“.

Eingang​

Der Eingang dient als Auslöser. Eine beliebige Nachricht startet den Abruf für alle konfigurierten Stationen. Zusätzlich wertet der Node zwei Eigenschaften im Payload aus.

EigenschaftTypBedeutung
msg.payloadbeliebigLöst den Abruf aus. Ist der Payload kein Objekt, wird er ignoriert.
msg.payload.actionTextweatherObserved bedient nur Ausgang 1, weatherForecast nur Ausgang 2. Ohne Angabe werden beide Ausgänge bedient.
msg.payload.lookAheadHoursZahlÜberschreibt den konfigurierten Vorausblick für diesen Aufruf, in Stunden.

Alle übrigen Eigenschaften der Eingangsnachricht werden auf die Ausgangsnachrichten übernommen; msg.topic wird durch das konfigurierte Topic ersetzt.

Ausgang​

Für jede Station sendet der Node eine eigene Nachricht. Beide Payloads sind flache Objekte, die sich an das Smart Data Model WeatherObserved beziehungsweise WeatherForecast anlehnen und ohne Umformung an den NGSI-LD Builder übergeben werden können.

Ausgang 1: WeatherObserved​

{
"id": "N5227",
"type": "WeatherObserved",
"location": {"type": "Point", "coordinates": [8.6821, 50.1109]},
"atmosphericPressure": 1013.2,
"temperature": 14.6,
"windDirection": 230,
"windSpeed": 3.4,
"relativeHumidity": 0.78,
"precipitation": 0.2,
"precipitationProbability": 0.35,
"observedAt": "2026-10-01T08:00:00.000Z",
"DD": 230,
"TTT": 287.75
}
FeldBedeutung
idDWD-Stations-ID.
typeWeatherObserved.
locationGeoJSON-Punkt [Länge, Breite] aus dem Stationskatalog. Fehlt die Station im Katalog, steht hier [0, 0].
atmosphericPressureReduzierter Luftdruck in hPa (MOSMIX PPPP, eine Nachkommastelle).
temperatureLufttemperatur 2 m über Grund in °C (MOSMIX TTT, eine Nachkommastelle).
windDirectionWindrichtung in Grad (MOSMIX DD).
windSpeedWindgeschwindigkeit in m/s (MOSMIX FF).
relativeHumidityRelative Luftfeuchte als Anteil 0–1, berechnet aus Temperatur und Taupunkt (TTT, Td).
precipitationNiederschlag der letzten Stunde in mm (MOSMIX RR1c, kg/m²). Fehlt der Wert, 0.
precipitationProbabilityNiederschlagswahrscheinlichkeit als Anteil 0–1 (MOSMIX wwP). Fehlt der Wert, 0.
observedAtZeitpunkt des Abrufs im ISO-8601-Format.
weitere FelderUnter „Detaillierte Vorhersageelemente“ gewählte MOSMIX-Elemente, benannt nach ihrem Code. Prozentwerte werden als Anteil 0–1 ausgegeben, alle anderen in der MOSMIX-Einheit (zum Beispiel Kelvin für TTT, Pa für PPPP).

Ausgang 2: WeatherForecast​

Der Payload ist ein Array mit einem Objekt je Vorhersagestunde, beginnend eine Stunde nach dem Abruf bis zum Ende des Vorausblicks. Die Felder entsprechen Ausgang 1; statt observedAt enthält jedes Objekt dateIssued mit dem Zeitpunkt, für den die Vorhersage gilt.

[
{
"id": "N5227",
"type": "WeatherForecast",
"location": {"type": "Point", "coordinates": [8.6821, 50.1109]},
"atmosphericPressure": 1012.8,
"temperature": 15.9,
"windDirection": 235,
"windSpeed": 3.9,
"relativeHumidity": 0.71,
"precipitation": 0,
"precipitationProbability": 0.12,
"dateIssued": "2026-10-01T09:00:00.000Z"
}
]

Ist der Vorausblick 0 und wird er nicht über msg.payload.lookAheadHours überschrieben, sendet Ausgang 2 nichts.

Beispiel-Flow​

Das Paket bringt einen Beispiel-Flow mit. Sie importieren ihn in Node-RED über Menü → Importieren → Beispiele → @htag/node-red-contrib-hypertegrity-weather → dwd-weather. Alternativ laden Sie die Datei dwd-weather.json herunter und importieren sie über Menü → Importieren.

Schritt 1

Inject

Ein Inject-Node löst den Abruf manuell oder in einem festen Intervall aus.

Schritt 2

DWD Weather

Der Node lädt die MOSMIX-Datei der Station N5227 und gibt zusätzlich die Elemente DD und TTT aus.

Schritt 3

Debug

Zwei Debug-Nodes zeigen WeatherObserved und WeatherForecast in der Seitenleiste an.

Beispiel-Flow als JSON anzeigen
[
{"id": "tab1", "type": "tab", "label": "dwd-weather", "disabled": false, "info": ""},
{"id": "inject1", "type": "inject", "z": "tab1", "name": "", "props": [{"p": "payload"}, {"p": "topic", "vt": "str"}], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "", "payloadType": "date", "x": 180, "y": 220, "wires": [["dwd1"]]},
{"id": "dwd1", "type": "hypertegrity-dwd-weather", "z": "tab1", "name": "", "mosmixStation": "N5227", "useForecastStation": false, "forecastStation": "", "lookAheadHours": "0", "lookAheadUnit": "hours", "topic": "", "mosmixUrl": "https://opendata.dwd.de/weather/local_forecasts/mos/MOSMIX_L/single_stations/{$station}/kml/MOSMIX_L_LATEST_{$station}.kmz", "catalogUrl": "https://www.dwd.de/DE/leistungen/met_verfahren_mosmix/mosmix_stationskatalog.cfg?view=nasPublication&nn=16102", "detailedElements": "{\"N5227_observed\":[\"DD\",\"TTT\"]}", "x": 380, "y": 220, "wires": [["debug1"], ["debug2"]]},
{"id": "debug1", "type": "debug", "z": "tab1", "name": "WeatherObserved", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "x": 650, "y": 200, "wires": []},
{"id": "debug2", "type": "debug", "z": "tab1", "name": "WeatherForecast", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "x": 650, "y": 240, "wires": []}
]

Im Beispiel ist der Vorausblick 0; Ausgang 2 bleibt daher leer, bis Sie einen Vorausblick eintragen.

Status und Fehler​

Nach einem erfolgreichen Abruf wird die Statusanzeige geleert.

AnzeigeBedeutung
Roter Ring „Download fehlgeschlagen“Die KMZ-Datei konnte nicht entpackt werden.
Roter Ring „Parsing fehlgeschlagen“Die enthaltene KML-Datei ist kein gültiges XML.
Roter Ring „HTTP-Anfrage fehlgeschlagen“Der DWD-Server antwortete mit einem Fehler oder war nicht erreichbar.
Warnung „MOSMIX-Anfrage für … fehlgeschlagen: …“Der Abruf einer Station ist gescheitert. Bei HTTP 404 lautet die Ursache „MOSMIX lieferte keine Daten (404) für …“; prüfen Sie die Stations-ID. Die übrigen Stationen werden weiter verarbeitet.
Fehler „Wetterdaten für … konnten nicht erstellt werden: …“Die Werte konnten nicht berechnet werden, zum Beispiel „Keine Vorhersagen für zukünftige Termine gefunden“, wenn die Datei zu alt oder der Vorausblick zu groß ist.

Warnungen erscheinen über node.warn in der Debug-Seitenleiste; Fehler werden über node.error gemeldet und können mit einem Catch-Node abgefangen werden. Im Bearbeitungsdialog melden Hinweise wie „DWD-Stationen konnten nicht geladen werden“ oder „Standort nicht gefunden“ Probleme der Kartenoberfläche.

Hinweise​

  • Nutzungsbedingungen: Die MOSMIX-Daten stehen unter der Datenlizenz Deutschland – Namensnennung – Version 2.0 (DL-DE/BY-2-0). Nennen Sie den DWD als Quelle, wenn Sie die Daten veröffentlichen.
  • Abrufhäufigkeit: Je Station und Auslösung wird eine KMZ-Datei von typischerweise mehreren hundert Kilobyte geladen. Ein Intervall von 60 Minuten reicht aus, da der DWD die Dateien stündlich aktualisiert.
  • Kein API-Schlüssel nötig: DWD Open Data ist frei zugänglich. Ein Proxy wird nicht gesondert konfiguriert; axios beachtet die Umgebungsvariablen HTTP_PROXY und HTTPS_PROXY.
  • Kontextspeicher: Der Node hält Vorhersagedaten und Stationskatalog nur im Arbeitsspeicher. Nach einem Neustart oder Deploy werden sie neu geladen.
  • Einheiten: Alle Hauptfelder sind metrisch (°C, hPa, m/s, mm). Zusätzliche MOSMIX-Elemente behalten ihre Originaleinheit, Temperaturen also Kelvin. Eine Übersicht der Elemente bietet die MOSMIX-Elementdefinition des DWD.
  • Externe Dienste im Editor: Die Kartenansicht lädt Kacheln von OpenStreetMap und nutzt Nominatim für die Adresssuche. Der Browser, in dem Sie den Node-RED-Editor öffnen, benötigt dafür Internetzugang.
  • Personenbezogene Daten: Die Ausgabe enthält nur Stationskennungen, Koordinaten und Wetterwerte.

Weiterführende Themen​

Referenzen​