Option D esphome-panasonic-ac dokumentiert — ESP32 UART an CN-WLAN/CN-CNT für lokale Klimadaten ohne Comfort Cloud; Kauf Z25-XKE bestätigt.
199 lines
8.3 KiB
Markdown
199 lines
8.3 KiB
Markdown
# Klima-Monitoring — Leistung + Raumtemperaturen
|
||
|
||
**Stand:** 02.07.2026 · **Datendrehscheibe:** CT 143 (Raspi-Broker) · **Grafana:** https://grafana.orbitalo.net/d/klima-bewertung/klimatisierung
|
||
|
||
## Ziel
|
||
|
||
Die Klimatisierung des Hauses **bewertbar** machen:
|
||
|
||
- **Läuft die Klima gerade?** → Shelly-Leistung (W)
|
||
- **Kühlt sie das Haus?** → Raumtemperaturen über Zeit (esp-satellite-Knoten)
|
||
- **Verteilt sie gut?** → Vergleich Flur (Klima-Zone) vs. entfernte Räume
|
||
|
||
Später zwei getrennte Anlagen:
|
||
|
||
| Anlage | Standort | Shelly-Prefix | Status |
|
||
|--------|----------|---------------|--------|
|
||
| Alte Split-Klima | Flur obere Etage | `klima_flur_oben` | Shelly PM Mini Gen3 geplant |
|
||
| Panasonic | Flur unten | `klima_flur_unten` | vorbereitet (Telegraf + Grafana) |
|
||
|
||
## Architektur
|
||
|
||
```
|
||
Shelly PM Mini Gen3 (pro Anlage)
|
||
│ MQTT JSON: <prefix>/status/pm1:0 (apower, voltage, current, aenergy.total)
|
||
▼
|
||
mosquitto CT143 :1883 (192.168.178.36, allow_anonymous)
|
||
▼
|
||
Telegraf klima.conf → InfluxDB DB `sensors`, Measurement `power`
|
||
│
|
||
ESP-Satelliten (+/temp) ──► Telegraf satellites.conf → Measurement `temperature`
|
||
│
|
||
▼
|
||
Grafana Dashboard „Klimatisierung“ (UID: klima-bewertung)
|
||
├─ Leistung (W) pro Klima
|
||
├─ Korrelation Leistung ↔ Flur-Temperatur (oben/unten)
|
||
├─ Raumtemperaturen Wohnbereich (24h)
|
||
└─ kWh/h aus Shelly-Zähler (energy_wh_total Differenz)
|
||
```
|
||
|
||
**Kein ioBroker** für dieses Monitoring — gleiche Linie wie Raum-Satelliten (Telegraf-only).
|
||
|
||
## Panasonic Flur unten — lokale UART-Anbindung (Option D)
|
||
|
||
Für die geplante **Panasonic KIT-Z25-XKE** (CS-Z25XKE / CU-Z25XKE, Etherea): Serien-WiFi geht nur in die Comfort Cloud. **Lokale Gerätedaten** per ESP32 und Open-Source-Komponente [esphome-panasonic-ac](https://github.com/DomiStyle/esphome-panasonic-ac).
|
||
|
||
| Thema | Details |
|
||
|---|---|
|
||
| **Prinzip** | ESP32 ersetzt Panasonic-WLAN-Modul (DNSK-P11) oder hängt an CN-CNT (CZ-TACG1) |
|
||
| **Schnittstelle** | UART 9600 8E1 — **Level-Shifter 5V↔3,3V Pflicht** |
|
||
| **Daten** | Modus, Solltemp, Status, ggf. Außentemp; Steuerung lokal |
|
||
| **Fork neuere Etherea** | [beebop5/esphome-panasonic-ac](https://github.com/beebop5/esphome-panasonic-ac) |
|
||
| **Homelab-Pfad** | ESPHome MQTT → mosquitto CT143 → Telegraf → InfluxDB → Grafana `klima-bewertung` |
|
||
| **Ergänzung** | Shelly PM (`klima_flur_unten`) für Leistung/COP — siehe Abschnitt Shelly oben |
|
||
|
||
```
|
||
ESP32 (ESPHome panasonic_ac, type: wlan|cnt)
|
||
│ MQTT: klima_panasonic/* (Prefix noch festzulegen)
|
||
▼
|
||
mosquitto CT143 → Telegraf → InfluxDB sensors → Grafana
|
||
```
|
||
|
||
**Vor Einbau prüfen:** Stecker CN-WLAN und/oder CN-CNT am Innengerät-Board (Foto). Details und Kaufentscheidung: `homelab-brain/smart-home/BAUFORTSCHRITT.md` §5.
|
||
|
||
|
||
## Hardware: Shelly PM Mini Gen3
|
||
|
||
| Eigenschaft | Wert |
|
||
|-------------|------|
|
||
| Typ | Stromzähler **ohne Relais** (nur messen) |
|
||
| Max. Messstrom | 16 A / ~3840 W @ 230 V |
|
||
| Einbau | In Reihe in die Zuleitung (Festanschluss) |
|
||
| MQTT | nativ (Gen3), JSON auf `status/pm1:0` |
|
||
|
||
### Shelly MQTT-Einstellungen
|
||
|
||
| Parameter | Wert |
|
||
|-----------|------|
|
||
| Server | `192.168.178.36:1883` |
|
||
| Username/Password | leer (allow_anonymous) |
|
||
| TLS | aus |
|
||
| **MQTT Prefix** | `klima_flur_oben` bzw. `klima_flur_unten` |
|
||
| Status/RPC over MQTT | **an** |
|
||
|
||
Erwartetes Topic und Payload:
|
||
|
||
```
|
||
Topic: klima_flur_oben/status/pm1:0
|
||
JSON: {"voltage":244.1,"current":5.88,"apower":1442,"aenergy":{"total":3709.99},...}
|
||
```
|
||
|
||
## Telegraf
|
||
|
||
**Repo (Quelle der Wahrheit):** `orbitalo/homelab-brain` → `infra/telegraf/klima.conf`
|
||
**Laufort:** CT 143 → `/etc/telegraf/telegraf.d/klima.conf`
|
||
|
||
Routing über `satellites.conf`-Output:
|
||
- **namepass** enthält `power` → schreibt nach DB `sensors`
|
||
- `openwb.conf`-Output **namedrop** `power` → keine Dopplung nach `iobroker`
|
||
|
||
### InfluxDB Schema (DB `sensors`)
|
||
|
||
| Measurement | Tags | Felder | Quelle |
|
||
|-------------|------|--------|--------|
|
||
| `power` | `node`, `geraet` | `watt`, `voltage`, `current`, `energy_wh_total` | Shelly `apower`, `aenergy.total` |
|
||
| `temperature` | `node` | `value` | `<raum>/temp` |
|
||
|
||
**power-Tags:**
|
||
|
||
| node | geraet | Anlage |
|
||
|------|--------|--------|
|
||
| `klima_flur_oben` | `split_ac` | Split-Klima Flur oben |
|
||
| `klima_flur_unten` | `panasonic` | Panasonic Flur unten (folgt) |
|
||
|
||
## Grafana
|
||
|
||
| Dashboard | UID | URL |
|
||
|-----------|-----|-----|
|
||
| **Klimatisierung** | `klima-bewertung` | https://grafana.orbitalo.net/d/klima-bewertung/klimatisierung |
|
||
| Satelliten-Temperaturen | `satelliten-temps` | https://grafana.orbitalo.net/d/satelliten-temps/satelliten-temperaturen |
|
||
|
||
**Provisioning:** `/etc/grafana/provisioning/dashboards/klima-bewertung.json`
|
||
**Git-Kopie:** `homelab-brain/infra/grafana/klima-bewertung.json`
|
||
|
||
### Panels
|
||
|
||
1. **Klima-Leistung (W)** — alle `power`-Nodes dynamisch
|
||
2. **Aktuelle Leistung** — letzter Watt-Wert
|
||
3. **Flur oben: Leistung vs. Temperatur** — Dual-Achse (`klima_flur_oben` + `flur_oben/temp`)
|
||
4. **Flur unten: Leistung vs. Temperatur** — (`klima_flur_unten` + `flur_unten/temp`, Panasonic folgt)
|
||
5. **Raumtemperaturen Wohnbereich** — flur_oben, flur_unten, wohnstube, schlafzimmer, gaestezimmer, kueche, trockenraum
|
||
6. **Übersichtstabelle** — aktuell / min / max / mittel
|
||
7. **Klima-Verbrauch kWh/h** — aus `energy_wh_total`-Differenz
|
||
|
||
### Bewertungslogik (Interpretation)
|
||
|
||
| Beobachtung | Bedeutung |
|
||
|-------------|-----------|
|
||
| Shelly > 500 W **und** Raumtemps fallen | Klima kühlt inkl. Haus |
|
||
| Shelly > 500 W **und** nur Flur fällt | schlechte Verteilung / zu große Last |
|
||
| Shelly ≈ 0 **und** Temps fallen | natürliche Abküllung (Nacht) |
|
||
| Shelly > 500 W **und** nichts fällt | keine Wirkung / zu warm draußen |
|
||
|
||
Raum-Sensoren allein reichen **nicht** — erst mit Shelly-Leistung ist die Kausalität klar.
|
||
|
||
## Raum-Sensoren (Kontext)
|
||
|
||
Relevante esp-satellite-Knoten für Klima-Bewertung:
|
||
|
||
| node | Raum | Hinweis |
|
||
|------|------|---------|
|
||
| `flur_oben` | Flur oben | direkt an Klima-Zone |
|
||
| `flur_unten` | Flur unten | später Panasonic-Zone |
|
||
| `wohnstube` | Wohnstube | Verteilung prüfen |
|
||
| `schlafzimmer` | Schlafzimmer | entfernter Raum |
|
||
| `gaestezimmer` | Gästezimmer | |
|
||
| `kueche` | Küche | oft wärmer |
|
||
| `trockenraum` | Trockenraum | |
|
||
|
||
**Stand 24.06.2026:** DS18B20-Umbau von Board-Lötung auf Kabel abgeschlossen für flur_unten, schlafzimmer, gaestezimmer, trockenraum (~8–10 °C Korrektur). Details: [ct-esp-satellite.md](../container/ct-esp-satellite.md).
|
||
|
||
## Verifikation
|
||
|
||
```bash
|
||
# MQTT: Shelly-Daten (nach Einbau)
|
||
ssh pve-mu-3 'pct exec 143 -- mosquitto_sub -h localhost -t "klima_flur_oben/#" -W 5 -v'
|
||
|
||
# InfluxDB: Leistung
|
||
ssh pve-mu-3 'pct exec 143 -- influx -database sensors -execute \
|
||
"SELECT last(watt) FROM power WHERE node='"'"'klima_flur_oben'"'"'"'
|
||
|
||
# InfluxDB: Raumtemps
|
||
ssh pve-mu-3 'pct exec 143 -- influx -database sensors -execute \
|
||
"SELECT last(value) FROM temperature GROUP BY node"'
|
||
```
|
||
|
||
## Deploy / Wiederherstellung
|
||
|
||
```bash
|
||
# Von homelab-brain auf CT143 (via pve-mu-3):
|
||
pct push 143 infra/telegraf/klima.conf /etc/telegraf/telegraf.d/klima.conf
|
||
pct push 143 infra/telegraf/satellites.conf /etc/telegraf/telegraf.d/satellites.conf
|
||
pct push 143 infra/telegraf/openwb.conf /etc/telegraf/telegraf.d/openwb.conf
|
||
pct push 143 infra/grafana/klima-bewertung.json /etc/grafana/provisioning/dashboards/klima-bewertung.json
|
||
pct exec 143 -- chown root:grafana /etc/grafana/provisioning/dashboards/klima-bewertung.json
|
||
pct exec 143 -- systemctl restart telegraf
|
||
pct exec 143 -- systemctl restart grafana-server
|
||
```
|
||
|
||
## Verwandte Doku
|
||
|
||
- [CT 143 — Raspi-Broker](../container/ct-143-raspi-broker.md) — Telegraf, Grafana, mosquitto
|
||
- [ESP-Satellite](../container/ct-esp-satellite.md) — Raumtemperatur-Knoten
|
||
- `homelab-brain/infra/telegraf/README.md` — Telegraf-Architektur + Routing
|
||
|
||
## History
|
||
|
||
- **02.07.2026** — Option D dokumentiert: ESPHome UART (esphome-panasonic-ac) für Panasonic Z25XKE; Empfehlung D + Shelly C.
|
||
- **24.06.2026** — Klima-Monitoring geplant und vorbereitet: Telegraf `klima.conf`, Grafana-Dashboard `klima-bewertung`, Topics `klima_flur_oben` + `klima_flur_unten`. Shelly PM Mini Gen3 für Split-Klima Flur oben folgt physisch. Panasonic Flur unten vorbereitet.
|
||
- **24.06.2026** — DS18B20-Umbau Raum-Satelliten (Kabel statt Board-Lötung) für flur_unten, schlafzimmer, gaestezimmer, trockenraum abgeschlossen — Temperaturbasis für Klima-Bewertung korrigiert.
|