Dieses Dashboard schätzt die stündliche Solar-PV-Erzeugung aus kurzwelliger Strahlung und Lufttemperatur von Wettermodellen. Es startet mit einer typischen Wohngebäude-Voreinstellung, damit kein vollständiges PV-Planungsformular nötig ist: Denver, eine 6-kW-DC-Anlage, eine Näherung für feste Neigung, 14% PV-Gesamtverluste, 96% Wirkungsgrad des Wechselrichters und ein DC/AC-Verhältnis von 1.2.
Die Prognose nutzt GFS, HRRR oder NBM über den Standard-Endpoint von GribStream /api/v2/[dataset]/timeseries. Die zentrale Wettergröße ist DSWRF an der Oberfläche, das NOAA-Feld für abwärts gerichtete kurzwellige Einstrahlung, kombiniert mit 2-m-Lufttemperatur für eine einfache temperaturbedingte Leistungsreduktion der Module. Das Dashboard hält den Prognosehorizont bei 24 oder 36 Stunden, damit die zurückgegebenen Datenzeilen bei den verfügbaren Modellen stündlich bleiben.
Die Mathematik ist absichtlich leichtgewichtig. Sie hilft, wettergetriebene Produktionsmuster zu vergleichen, vorgeschlagene Installationen schnell einzuschätzen und zu zeigen, wie GribStream Expressions Prognosefelder in Anwendungsmetriken verwandeln. Sie ist kein bankfähiges PV-Planungsmodell und ersetzt nicht PVWatts, SAM, Verschattungsmodellierung am Standort, gemessene Verschmutzung der Module oder ein professionelles Einstrahlungsmodell auf Modulebene.
Die Anlagengeometrie ist bewusst konservativ. Eine echte Berechnung von Neigung und Azimut braucht Sonnenstand, direkte Normalstrahlung, diffuse Horizontalstrahlung, Albedo, Modulausrichtung, Reihenabstände und Verschattung. Dieses Dashboard fragt nur DSWRF und 2-m-Temperatur von GribStream ab, deshalb legt es die Geometrieannahme als expliziten Multiplikator offen, statt falsche Präzision hinter einem Neigungsfeld zu verstecken.
Das Dashboard berechnet alle abgeleiteten Felder mit GribStream Expressions. Mit den Standardeinstellungen lauten die Gleichungen:
temp_c = temp_k - 273.15poa_wm2 = ghi_wm2 * 1.0800cell_temp_c = temp_c + (poa_wm2 / 800.0) * 25.0000temperature_factor = max(0, 1 + (-0.3500 / 100) * (cell_temp_c - 25.0))loss_factor = max(0, 1 - 14.0000 / 100)dc_power_kw = 6.0000 * poa_wm2 / 1000.0 * temperature_factor * loss_factorac_limit_kw = 6.0000 / 1.2000ac_power_kw = min(dc_power_kw * 96.0000 / 100, ac_limit_kw)hourly_energy_kwh = ac_power_kw, weil das Dashboard die Abfrage auf stündliche Zeilen begrenzt.Die wichtigsten Konstanten sind:
6.0000 ist die Standardgröße der DC-Anlage in kW. Sie ist vom Nutzer editierbar.1.0800 ist der Standardmultiplikator für die Anlagengeometrie: eine Näherung für feste Neigung auf horizontales DSWRF. Weitere Szenarien nutzen 1.0000, 0.9300 und 1.1800.800.0 W/m2 und 25.0000 °C bilden die einfache Schätzung der Zelltemperaturerhöhung. Es sind interne Werte, kein standortkalibriertes thermisches Modulmodell.-0.3500 ist der interne Leistungs-Temperaturkoeffizient in Prozent pro °C, angewendet relativ zur Referenztemperatur von 25.0 °C.14.0000 ist der Standardwert für nicht wetterbedingte Gesamtverluste. Er ist vom Nutzer auswählbar.1.2000 ist das standardmäßige DC/AC-Verhältnis; eine 6-kW-DC-Anlage hat also eine 5-kW-AC-Grenze. Er ist vom Nutzer auswählbar.96.0000 ist der interne Wirkungsgrad des Wechselrichters.1000.0 W/m2 normalisiert die Einstrahlung auf eine PV-Nennleistungsreferenz.Diese Konstanten machen die Prognose erklärbar und leicht variierbar, ersetzen aber kein Modul-Datenblatt, gemessenes Albedo, gemessene Modulverschmutzung, Verschattungsgeometrie oder einen vollständigen PVWatts/SAM-Modelllauf.
Dieses Beispiel nutzt die Standardkonfiguration für Denver mit GFS: 6 kW mit Näherung für feste Neigung. Das Dashboard füllt die numerischen Werte aus Grafana-Variablen und berechnet die PV-Schätzungen in einem standardmäßigen GribStream /timeseries API-Aufruf.
curl -X POST 'https://gribstream.com/api/v2/gfs/timeseries' \
-H 'Content-Type: application/json' \
-H 'Accept: text/csv' \
-H 'Authorization: Bearer [API_TOKEN]' \
-d '{
"fromTime": "2026-05-03T12:00:00Z",
"untilTime": "2026-05-05T00:00:00Z",
"minLeadTime": "0h",
"maxLeadTime": "36h",
"coordinates": [
{ "lat": 39.7392, "lon": -104.9903, "name": "Denver, CO" }
],
"variables": [
{ "name": "DSWRF", "level": "surface", "alias": "ghi_wm2" },
{ "name": "TMP", "level": "2 m above ground", "alias": "temp_k" }
],
"expressions": [
{ "expression": "temp_k - 273.15", "alias": "temp_c" },
{ "expression": "ghi_wm2 * 1.0800", "alias": "poa_wm2" },
{ "expression": "temp_c + (poa_wm2 / 800.0) * 25.0000", "alias": "cell_temp_c" },
{ "expression": "func.Max(0.0, 1 + (-0.3500 / 100.0) * (cell_temp_c - 25.0))", "alias": "temperature_factor" },
{ "expression": "func.Max(0.0, 1 - 14.0000 / 100.0)", "alias": "loss_factor" },
{ "expression": "6.0000 * poa_wm2 / 1000.0 * temperature_factor * loss_factor", "alias": "dc_power_kw" },
{ "expression": "6.0000 / 1.2000", "alias": "ac_limit_kw" },
{ "expression": "func.Min(dc_power_kw * 96.0000 / 100.0, ac_limit_kw)", "alias": "ac_power_kw" },
{ "expression": "ac_power_kw", "alias": "hourly_energy_kwh" },
{ "expression": "func.Max(0.0, (6.0000 - ac_power_kw) / 6.0000 * 100.0)", "alias": "unused_capacity_pct" }
]
}'
DSWRF ein horizontales Strahlungsfeld ist.Hintergrund und Referenzen: GribStream Expressions · GFS-Modellinventar · HRRR-Modellinventar · NBM-Modellinventar · NOAA GRIB2 shortwave radiation table · PVWatts V8 API · SAM irradiance definitions · Grafana variables.