README: gatherForecastData.py aufgenommen
Der fuenfte Prozess, der aktiv etwas abholt - im Bild, in der Tabelle der geschriebenen Tabellen und in der, die sagt, was wann startet. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -29,6 +29,7 @@ flowchart LR
|
||||
MGR["<b>solarManager.py</b><br/><small>gatherModbusData · gatherOpenDTUData<br/>gatherDTUBIData · gatherShellyEM3Data EG/UG<br/>gatherHeaterData · gatherSkodaData<br/>gatherBYDData · gatherWaterData<br/>charger_goE</small>"]
|
||||
WPB["<b>wattpilot_bruecke.py</b>"]
|
||||
WSB["<b>wsMQTTbridge.py</b>"]
|
||||
FCS["<b>gatherForecastData.py</b><br/><small>Open-Meteo</small>"]
|
||||
RAIN["<b>gatherRainData.py</b>"]
|
||||
|
||||
BROKER{{"<b>MQTT-Broker</b>"}}
|
||||
@@ -44,9 +45,11 @@ flowchart LR
|
||||
WPILOT -->|WebSocket| WPB
|
||||
STATION -->|WebSocket| WSB
|
||||
METEO -->|HTTPS| RAIN
|
||||
METEO -->|HTTPS| FCS
|
||||
|
||||
SOLARLOG -->|zisterne| MGR
|
||||
MGR -->|"EnergyFlow · skoda<br/>skoda_ladepunkte · byd<br/>byd_zellen"| SOLARLOG
|
||||
FCS -->|"weatherHours · weatherDays<br/>weatherTilted · weatherForecastLog"| SOLARLOG
|
||||
|
||||
MGR -->|"solarManager/#"| BROKER
|
||||
WPB -->|"wattpilot/#"| BROKER
|
||||
@@ -60,11 +63,11 @@ flowchart LR
|
||||
classDef skript fill:#fff6e5,stroke:#d0a548
|
||||
classDef speicher fill:#eaf5ee,stroke:#6fa981
|
||||
class WR,EM3,HEIZ,BYD,GOE,WPILOT,SKODA,STATION,METEO,VENTILE,HAUSGER quelle
|
||||
class MGR,WPB,WSB,RAIN skript
|
||||
class MGR,WPB,WSB,RAIN,FCS skript
|
||||
class BROKER,SOLARLOG speicher
|
||||
```
|
||||
|
||||
Vier Prozesse holen aktiv etwas ab. Alles andere meldet sich von selbst: die
|
||||
Fünf Prozesse holen aktiv etwas ab. Alles andere meldet sich von selbst: die
|
||||
Ventilsteuerungen, die Wallbox und jedes Gerät, das
|
||||
Home-Assistant-Discovery spricht, schreiben ohne Umweg auf den Broker. Für
|
||||
deren Messwerte ist also **kein Skript** zuständig — wer sie sucht, sucht am
|
||||
@@ -85,6 +88,19 @@ kurz danach — der Sammler klopft deshalb jede Sekunde an und bekommt so rund
|
||||
alle 100 Sekunden einen vollständigen Satz. Einzelheiten im Kopf des Moduls
|
||||
und, ausführlich, im Web-Repository unter `doku/byd.md`.
|
||||
|
||||
`gatherForecastData` holt alle zwanzig Minuten die Wettervorhersage von
|
||||
Open-Meteo und schreibt sie nach `solarLog` (`weatherHours`, `weatherDays`,
|
||||
`weatherForecastLog`, `weatherTilted`) — Grundlage des Meteogramms der
|
||||
Weboberfläche. Es ist der einzige Sammler, der nichts nach MQTT
|
||||
veröffentlicht: ein Meteogramm liest niemand im Sekundentakt.
|
||||
|
||||
**Es löscht nichts.** Die Tabellen sind zugleich ein Archiv — aus der
|
||||
Einstrahlung und `EnergyFlow_hourly.pv_kwh` soll später eine eigene
|
||||
Ertragsprognose gerechnet werden. `wetterarchiv_nachtragen.py` hat sie
|
||||
einmalig aus der ERA5-Schnittstelle von Open-Meteo bis zum 02.04.2022
|
||||
zurückgefüllt. Einzelheiten stehen im Web-Repository unter
|
||||
`doku/meteogramm.md`.
|
||||
|
||||
Die Zisterne fällt aus der Reihe — ihr Stand steht in `solarLog`, und
|
||||
`gatherWaterData` liest ihn von dort. Die Daten laufen also durch die
|
||||
Datenbank hindurch von einem Prozess zum nächsten.
|
||||
@@ -160,6 +176,7 @@ von Hand, wenn sich am Bestand etwas geändert hat.
|
||||
| `homeassistant/#` | die Geräte selbst | `device_discovery.py` |
|
||||
| **`solarLog`** | `solarManager.py` | `ajax/*.php`, `gatherWaterData` |
|
||||
| `byd`, `byd_zellen` (in `solarLog`) | `gatherBYDData.py`, alle 5 bzw. 15 Minuten | Web-Repo (`solarLog_byd.sql`) |
|
||||
| `weatherHours`, `weatherDays`, `weatherTilted`, `weatherForecastLog` (in `solarLog`) | `gatherForecastData.py`, alle 20 Minuten; nichts wird geloescht | Web-Repo (`solarLog_weather.sql`) |
|
||||
| **`homeMesh`** | `device_discovery.py`, Runner, Web-Editor | Runner, `ajax/*.php` |
|
||||
| `skoda.conf` | Einstellungen → Fahrzeug (`restricted/skodaKeys.php`) oder von Hand | `gatherSkodaData.py`, `ajax/skodaCmd.php` |
|
||||
|
||||
@@ -170,6 +187,7 @@ von Hand, wenn sich am Bestand etwas geändert hat.
|
||||
| `solarManager.py` | `startSolarServer.sh` (Aufgabenplaner, beim Hochfahren) |
|
||||
| `autoActions/autoaction_runner.py` | dito |
|
||||
| `gatherRainData.py` | dito |
|
||||
| `gatherForecastData.py` | dito |
|
||||
| `wsMQTTbridge.py` | `startMQTTbridge.sh` |
|
||||
| `wattpilot_bruecke.py` | `startWattpilotMQTT.sh` |
|
||||
| `autoActions/fetch_calendar.py` | Cronjob, einmal im Jahr |
|
||||
|
||||
Reference in New Issue
Block a user