Files
battery-charging-optimizer/legacy/v1/00_START_HIER.md

8.5 KiB

🚀 Batterie-Optimierung - Start-Paket

📦 Paket-Inhalt

Du hast nun ein vollständiges System zur intelligenten Batterieladung erhalten!

Konfigurationsdateien (3)

  • battery_optimizer_config.yaml - Input Helper & Templates
  • battery_optimizer_rest_commands.yaml - OpenEMS REST API
  • battery_optimizer_automations.yaml - 6 Automatisierungen

PyScript Module (2)

  • battery_charging_optimizer.py - Hauptalgorithmus (14 KB)
  • battery_power_control.py - Steuerungsfunktionen (3.6 KB)

Dashboard (1)

  • battery_optimizer_dashboard.yaml - Lovelace UI

Dokumentation (3)

  • README.md - Projekt-Übersicht (7.4 KB)
  • INSTALLATION_GUIDE.md - Installations-Anleitung (9 KB)
  • PHASE2_INFLUXDB.md - Roadmap für InfluxDB Integration (12 KB)

Quick-Start Checkliste

☑️ Vorbereitung (5 Min)

  • Home Assistant läuft
  • PyScript via HACS installiert
  • OpenEMS erreichbar (192.168.89.144)
  • Strompreis-Sensor aktiv (sensor.hastrom_flex_pro)
  • Forecast.Solar konfiguriert

☑️ Installation (15 Min)

  • battery_optimizer_config.yaml zu configuration.yaml hinzufügen
  • battery_optimizer_rest_commands.yaml einbinden
  • battery_optimizer_automations.yaml zu Automations hinzufügen
  • PyScript Dateien nach /config/pyscript/ kopieren
  • Home Assistant neu starten

☑️ Konfiguration (5 Min)

  • Input Helper Werte setzen (siehe unten)
  • Ersten Plan berechnen (pyscript.calculate_charging_schedule)
  • Plan im Input-Text prüfen
  • Optimierung aktivieren

☑️ Testing (10 Min)

  • Manuelles Laden testen (3kW für 2 Min)
  • Auto-Modus testen
  • Logs prüfen
  • Dashboard einrichten

☑️ Live-Betrieb (24h Monitoring)

  • Ersten Tag überwachen
  • Prüfen ob Plan um 14:05 Uhr erstellt wird
  • Prüfen ob stündlich ausgeführt wird
  • Batterie-Verhalten beobachten

🎯 Empfohlene Ersteinstellungen

# Nach Installation diese Werte setzen:

input_number:
  battery_optimizer_min_soc: 20        # %
  battery_optimizer_max_soc: 100       # %
  battery_optimizer_price_threshold: 28 # ct/kWh
  battery_optimizer_max_charge_power: 10000 # W
  battery_optimizer_reserve_capacity: 2     # kWh

input_select:
  battery_optimizer_strategy: "Konservativ (nur sehr günstig)"

input_boolean:
  battery_optimizer_enabled: true
  battery_optimizer_manual_override: false

🔧 Erste Schritte nach Installation

1. System-Check durchführen

# Entwicklerwerkzeuge → Dienste → Tab "YAML-Modus"

# REST Commands testen:
service: rest_command.set_ess_remote_mode
# → Prüfe in OpenEMS ob ESS in REMOTE ist

service: rest_command.set_ess_internal_mode  
# → Zurück auf INTERNAL

# Ersten Plan berechnen:
service: pyscript.calculate_charging_schedule
# → Prüfe input_text.battery_charging_schedule

# Logs prüfen:
# Einstellungen → System → Protokolle
# Suche nach "battery" oder "charging"

2. Manuellen Test durchführen

# Test 1: Laden mit 3kW
service: pyscript.start_charging_cycle
data:
  power_w: -3000

# Warte 2 Minuten, beobachte:
# - sensor.battery_power sollte ca. -3000W zeigen
# - sensor.battery_state_of_charge sollte steigen

# Test 2: Stoppen
service: pyscript.stop_charging_cycle

# ESS sollte wieder auf INTERNAL sein

3. Dashboard einrichten

# Lovelace → Bearbeiten → Neue Ansicht
# Titel: "Batterie-Optimierung"
# Icon: mdi:battery-charging

# Kopiere Inhalt aus battery_optimizer_dashboard.yaml

📊 Beispiel: Optimierung heute

Mit deinen aktuellen Strompreisen (07.11.2025):

Zeit Preis Aktion Grund
00:00 26.88 ct Laden Günstig, wenig PV
01:00 26.72 ct Laden Günstig, wenig PV
02:00 26.81 ct Laden Günstig, wenig PV
07:00 32.08 ct Auto Zu teuer
12:00 26.72 ct ⚠️ Auto Günstig, aber PV aktiv
17:00 37.39 ct Auto Sehr teuer

Ergebnis:

  • 3 Stunden laden (ca. 30 kWh)
  • Ø Ladepreis: 26.80 ct/kWh
  • Ersparnis vs. Durchschnitt: ~3 ct/kWh
  • Monatliche Ersparung: ca. 20-30 EUR (bei 20 kWh/Tag Netzbezug)

🎮 Wichtige Services

Täglich automatisch:

# Um 14:05 Uhr
pyscript.calculate_charging_schedule

Stündlich automatisch:

# Um xx:05 Uhr
pyscript.execute_current_schedule

Manuell nützlich:

# Neuen Plan berechnen
pyscript.calculate_charging_schedule

# Sofort laden starten
pyscript.start_charging_cycle:
  power_w: -10000  # 10kW

# Laden stoppen
pyscript.stop_charging_cycle

# Notfall: Alles stoppen
pyscript.emergency_stop

🛡️ Sicherheits-Features

Keep-Alive: Schreibt alle 30s die Leistung (verhindert Timeout) SOC-Grenzen: Respektiert Min 20% / Max 100% Reserve: Hält 2 kWh für Eigenverbrauch Manual Override: Pausiert Automatik für 4h Notfall-Stop: Deaktiviert alles sofort

📈 Monitoring & Optimierung

Zu beobachten in den ersten Tagen:

  1. Lädt das System zur richtigen Zeit?

    • Prüfe sensor.nächste_ladestunde
    • Vergleiche mit Strompreisen
  2. Funktioniert der Keep-Alive?

    • Batterie sollte durchgehend laden
    • Kein Wechsel zwischen Laden/Entladen
  3. Sind die Prognosen realistisch?

    • PV-Ertrag: Vergleiche Prognose vs. Ist
    • Verbrauch: Notiere typische Werte
  4. Stimmen die Einsparungen?

    • Lade zu günstigen Zeiten: Ja/Nein?
    • SOC morgens höher: Ja/Nein?

Anpassungen nach Testphase:

Zu konservativ? → Strategie auf "Moderat" ändern → Preis-Schwellwert erhöhen (z.B. 30 ct)

Zu aggressiv? → Reserve erhöhen (z.B. 3 kWh) → Schwellwert senken (z.B. 26 ct)

PV-Konflikt? → Warte auf Phase 2 (bessere PV-Verteilung) → Vorübergehend: Reserve erhöhen

🚨 Troubleshooting

Problem: System lädt nicht

Checkliste:

  1. input_boolean.battery_optimizer_enabled = ON?
  2. input_boolean.battery_optimizer_manual_override = OFF?
  3. Plan vorhanden? (input_text.battery_charging_schedule)
  4. Ist jetzt Ladezeit laut Plan?
  5. OpenEMS erreichbar? (http://192.168.89.144:8084)

Logs prüfen:

Einstellungen → System → Protokolle
Filter: "battery" oder "charging"

Problem: Laden stoppt nach kurzer Zeit

Ursache: Keep-Alive funktioniert nicht

Lösung:

  • Prüfe PyScript Logs
  • Prüfe ob pyscript.battery_charging_active = true
  • Manuell neu starten: pyscript.start_charging_cycle

Problem: Unrealistische Pläne

Ursache: PV-Prognose oder Parameter falsch

Lösung:

  • Prüfe Forecast.Solar Sensoren
  • Erhöhe Reserve-Kapazität
  • Wähle konservativere Strategie
  • Passe Preis-Schwellwert an

📞 Support & Feedback

Logs sammeln für Support:

1. Einstellungen → System → Protokolle
2. Filter: "battery"
3. Kopiere relevante Einträge
4. Plus: Screenshot der Input Helper
5. Plus: Inhalt von input_text.battery_charging_schedule

Wichtige Infos bei Problemen:

  • Home Assistant Version
  • PyScript Version
  • OpenEMS Version
  • Aktuelle Konfiguration (Input Helper Werte)
  • Fehlermeldungen aus Logs

🎯 Nächste Schritte

Kurzfristig (Woche 1):

  • System installieren
  • Testphase durchführen
  • Parameter optimieren
  • Dashboard einrichten

Mittelfristig (Woche 2-4):

  • Monitoring etablieren
  • Einsparungen messen
  • Feintuning Parameter
  • Evtl. Strategie anpassen

Langfristig (ab Monat 2):

  • Phase 2: InfluxDB Integration
  • Historische Verbrauchsanalyse
  • Machine Learning Prognosen
  • Erweiterte Features

🎓 Lernkurve

Tag 1-3: System verstehen, Parameter testen Woche 1: Erste Optimierungen, Feintuning Woche 2-4: Stabil laufender Betrieb Monat 2+: Erweiterte Features, KI-Integration

💡 Pro-Tipps

  1. Start konservativ: Besser zu wenig als zu viel laden
  2. Logs lesen: Die besten Hinweise kommen aus den Logs
  3. Klein anfangen: Teste erst mit 3kW statt 10kW
  4. Geduld haben: System braucht 1-2 Wochen zum Einspielen
  5. Dokumentieren: Notiere Änderungen und deren Effekte

Viel Erfolg!

Du hast jetzt ein professionelles Batterie-Management-System!

Geschätzte Einsparungen:

  • Pro Ladung: 2-5 ct/kWh
  • Pro Tag: 0.50-1.50 EUR
  • Pro Monat: 15-45 EUR
  • Pro Jahr: 180-540 EUR

ROI: System amortisiert sich selbst durch Einsparungen! 💰


Installation erstellt: 2025-11-07 Erstellt für: Felix's GoodWe/OpenEMS System Version: 1.0 Status: Production Ready

Bei Fragen oder Problemen: Prüfe zuerst die Logs und INSTALLATION_GUIDE.md!