Update: Battery Optimizer v3.5.0 - Volle Ladung bis 100% SOC
## Hauptänderungen ### Removed - Sicherheitspuffer (20%) entfernt - führte zu unvollständiger Ladung - Reservekapazität (2 kWh) entfernt - Hardware hat eigene Puffer - Problem: Mehr Ladestunden geplant als nötig, aber tatsächliche Ladung begrenzt - Folge: Batterie erreichte nie 100% SOC ### Changed - Standardwert max_charge_power: 5000W → 8000W (+60%) - Standardwert price_threshold: 28ct → 25ct/kWh - Ladelogik vereinfacht: Direkte Berechnung ohne Puffer ### Fixed - Batterie lädt jetzt vollständig bis 100% SOC - Genauere Ladestunden-Berechnung - Bessere Kapazitätsnutzung: Volle Leistung in allen Stunden ## Projekt-Aufräumarbeiten ### Archiviert - Bugfix-Dokumentationen → archive/ - BUGFIX_TIMEZONE_v3.2.md - DIAGNOSE_LADE_PROBLEM.md - FIX_API_TIMING.md - FIX_CHARGING_CAPACITY.md - FIX_SOC_SPIKE_PROBLEM.md - FIX_SOC_SPIKE_REMOTE_MODE.md - SOC_CALIBRATION_GUIDE.md ### Entfernt - docs/ (Duplikate) - debug_log.txt, debug_schedule.py ### Neu - UPGRADE_TO_v3.5.0.md - Detaillierter Upgrade-Guide - PROJECT_SUMMARY_v3.5.0.md - Technische Zusammenfassung - pyscripts/ aktualisiert auf v3.5.0 ## Migration 1. Backup erstellen 2. Neue Skripte nach /config/pyscript/ kopieren 3. PyScript neu laden 4. Input Helper anpassen (8000W, 25ct) 5. Test durchführen Details: siehe UPGRADE_TO_v3.5.0.md --- Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
196
UPGRADE_TO_v3.5.0.md
Normal file
196
UPGRADE_TO_v3.5.0.md
Normal file
@@ -0,0 +1,196 @@
|
||||
# Upgrade Guide: v3.4.0 → v3.5.0
|
||||
|
||||
## Zusammenfassung
|
||||
|
||||
Version 3.5.0 entfernt die Software-Sicherheitspuffer, die verhinderten dass die Batterie vollständig bis 100% geladen wurde. Die Hardware (GoodWe) hat bereits eigene Schutzpuffer integriert, sodass zusätzliche Software-Reserven unnötig sind.
|
||||
|
||||
## Hauptänderungen
|
||||
|
||||
### Entfernte Features
|
||||
- **Sicherheitspuffer (20%)**: Führte zu unvollständiger Ladung
|
||||
- **Reservekapazität (2 kWh)**: Ebenfalls redundant
|
||||
|
||||
### Neue Standardwerte
|
||||
- **Ladeleistung**: 5000W → **8000W**
|
||||
- **Preisschwelle**: 28 ct/kWh → **25 ct/kWh**
|
||||
|
||||
### Verbesserungen
|
||||
- ✅ Batterie lädt jetzt vollständig bis 100% SOC
|
||||
- ✅ Genauere Berechnung der benötigten Ladestunden
|
||||
- ✅ Bessere Nutzung der verfügbaren Ladekapazität
|
||||
|
||||
## Upgrade-Schritte
|
||||
|
||||
### 1. Backup erstellen
|
||||
|
||||
```bash
|
||||
cd /config/pyscript
|
||||
cp battery_charging_optimizer.py battery_charging_optimizer.py.v3.4.0.backup
|
||||
```
|
||||
|
||||
### 2. Neues Skript kopieren
|
||||
|
||||
Kopiere die neue Version `battery_charging_optimizer.py` (v3.5.0) nach `/config/pyscript/`.
|
||||
|
||||
### 3. PyScript neu laden
|
||||
|
||||
In Home Assistant Developer Tools → Services:
|
||||
|
||||
```yaml
|
||||
service: pyscript.reload
|
||||
```
|
||||
|
||||
### 4. Input Helper aktualisieren (empfohlen)
|
||||
|
||||
#### Ladeleistung erhöhen (8000W)
|
||||
|
||||
In Home Assistant → Developer Tools → States:
|
||||
- Entity: `input_number.battery_optimizer_max_charge_power`
|
||||
- Neuer Wert: `8000`
|
||||
|
||||
Oder via UI:
|
||||
- Settings → Devices & Services → Helpers
|
||||
- Suche "Battery Optimizer Max Charge Power"
|
||||
- Setze auf 8000
|
||||
|
||||
#### Preisschwelle anpassen (25 ct/kWh)
|
||||
|
||||
In Home Assistant → Developer Tools → States:
|
||||
- Entity: `input_number.battery_optimizer_price_threshold`
|
||||
- Neuer Wert: `25`
|
||||
|
||||
### 5. Nicht mehr verwendete Helper entfernen (optional)
|
||||
|
||||
Diese Input Helper werden nicht mehr verwendet und können gelöscht werden:
|
||||
|
||||
- `input_number.battery_optimizer_reserve_capacity`
|
||||
- `input_number.battery_optimizer_safety_buffer`
|
||||
|
||||
**Hinweis**: Falls diese Helper nicht existieren, ist das kein Problem. Sie waren nur in v3.4.0 vorhanden.
|
||||
|
||||
### 6. Ersten Test durchführen
|
||||
|
||||
Warte auf die nächste automatische Berechnung (14:05 Uhr) oder starte manuell:
|
||||
|
||||
```yaml
|
||||
service: pyscript.calculate_charging_schedule
|
||||
```
|
||||
|
||||
Prüfe das Log:
|
||||
```bash
|
||||
tail -f /config/home-assistant.log | grep -i battery
|
||||
```
|
||||
|
||||
Erwartete Log-Ausgaben:
|
||||
```
|
||||
=== Batterie-Optimierung gestartet (v3.5.0 - Volle Ladung bis 100%) ===
|
||||
Verfügbare Ladekapazität: X.XX kWh (bis 100% SOC)
|
||||
🎯 Benötigte Ladestunden: N (bei 8000W pro Stunde)
|
||||
```
|
||||
|
||||
### 7. Ergebnis überprüfen
|
||||
|
||||
Prüfe nach der ersten Ladung:
|
||||
- Hat die Batterie 100% SOC erreicht?
|
||||
- Wurde in allen geplanten Ladestunden tatsächlich geladen?
|
||||
- Zeigt das Dashboard die korrekten Werte?
|
||||
|
||||
## Was ist anders?
|
||||
|
||||
### Vorher (v3.4.0)
|
||||
|
||||
```
|
||||
SOC: 50% → 5 kWh verfügbar
|
||||
- Reserve (2 kWh): → 3 kWh
|
||||
- Sicherheitspuffer (20%): → 3.6 kWh Planung
|
||||
→ Planung: 1 Stunde à 5000W (3.6 kWh theoretisch)
|
||||
→ Tatsächlich: nur 3 kWh geladen
|
||||
→ Ergebnis: 80% SOC statt 100%
|
||||
```
|
||||
|
||||
### Nachher (v3.5.0)
|
||||
|
||||
```
|
||||
SOC: 50% → 5 kWh verfügbar
|
||||
→ Planung: 1 Stunde à 8000W (5 kWh)
|
||||
→ Tatsächlich: 5 kWh geladen
|
||||
→ Ergebnis: 100% SOC ✅
|
||||
```
|
||||
|
||||
## Häufige Probleme
|
||||
|
||||
### "Batterie lädt immer noch nicht bis 100%"
|
||||
|
||||
**Mögliche Ursachen:**
|
||||
|
||||
1. **max_soc zu niedrig gesetzt**
|
||||
- Prüfe: `input_number.battery_optimizer_max_soc`
|
||||
- Sollte: `100`
|
||||
|
||||
2. **Alte Version noch aktiv**
|
||||
- Prüfe Log: Suche nach "v3.5.0" in den Log-Meldungen
|
||||
- Falls v3.4.0: PyScript neu laden
|
||||
|
||||
3. **Hardware-Limit erreicht**
|
||||
- GoodWe stoppt bei ~98-99% (normal)
|
||||
- Dies ist der Hardware-Schutz (gewollt)
|
||||
|
||||
### "Zu viele Ladestunden geplant"
|
||||
|
||||
Falls mehr Stunden geplant werden als nötig:
|
||||
- Prüfe `max_charge_power` Einstellung (sollte 8000W sein)
|
||||
- Bei 5000W werden mehr Stunden benötigt als bei 8000W
|
||||
|
||||
### "Fehler beim Laden des Skripts"
|
||||
|
||||
Falls PyScript-Fehler auftreten:
|
||||
1. Prüfe Syntax: `cd /config/pyscript && python3 -m py_compile battery_charging_optimizer.py`
|
||||
2. Prüfe Log: `/config/home-assistant.log`
|
||||
3. Stelle v3.4.0 Backup wieder her bei Bedarf
|
||||
|
||||
## Rollback (falls nötig)
|
||||
|
||||
Falls Probleme auftreten:
|
||||
|
||||
```bash
|
||||
cd /config/pyscript
|
||||
cp battery_charging_optimizer.py.v3.4.0.backup battery_charging_optimizer.py
|
||||
```
|
||||
|
||||
Dann PyScript neu laden.
|
||||
|
||||
## Support
|
||||
|
||||
Bei Problemen:
|
||||
- Prüfe CHANGELOG.md für Details
|
||||
- Prüfe Home Assistant Log
|
||||
- Erstelle Issue mit Log-Auszug
|
||||
|
||||
## Erwartetes Verhalten nach Upgrade
|
||||
|
||||
1. **Nächste Berechnung (14:05)**:
|
||||
- Log zeigt "v3.5.0"
|
||||
- Weniger Ladestunden geplant (wegen 8000W statt 5000W)
|
||||
- Keine Reserve-/Puffer-Meldungen mehr
|
||||
|
||||
2. **Erste Ladung**:
|
||||
- Volle 8000W Ladeleistung
|
||||
- Batterie erreicht 100% (oder Hardware-Limit ~98%)
|
||||
|
||||
3. **Dashboard**:
|
||||
- Status zeigt korrekte Anzahl Ladestunden
|
||||
- Energie-Anzeige passt zur Planung
|
||||
|
||||
## Weitere Optimierungen (optional)
|
||||
|
||||
Nach erfolgreichem Upgrade kannst du zusätzlich:
|
||||
|
||||
1. **min_soc senken**: Von 20% auf 10% (mehr nutzbare Kapazität)
|
||||
2. **Ladeleistung testen**: 8000W testen, ggf. auf 10000W erhöhen
|
||||
3. **Preisschwelle anpassen**: Je nach Tarifsituation 20-30 ct/kWh
|
||||
|
||||
---
|
||||
|
||||
**Version**: 3.5.0
|
||||
**Datum**: 2025-12-28
|
||||
**Author**: Felix
|
||||
Reference in New Issue
Block a user