Hallo Leute,
habe nun auch mittels Phoenix mein Lademanagemeng bzw. PV-Überschusssteuerung optimiert.
Da ich selbst da und dort gekämpft habe, gebe ich ein paar Infos weiter:
Modbus-tcp:
Habe es "zu Fuß" programmiert, also TCP Kommunikation - damit bin ich unabhängig von fertigen Funktionen.
Wie das geht kann man hier nachlesen:
http://www.simplymodbus.ca
Ist ja nur ein paar Bytes hin und herschicken.
Meine PV-Speicher-Anlage von Victron, sowie Fronius Wechselrichter haben Modbus TCP, also wenn man mal Modbus kann, ist das Schlimmste erledigt.
Wallbox: habe mich für eine Walli (mit Phoenix) entschieden, günstig, plug & play und wenn man ein RJ45 Kabel anschließt beginnt der Spaß:
Setup: Dip Switch 10 nach oben = Steuerung aktivieren
Drehschalter darf nicht auf "Dig" stehen.
Im Web-UI des Phoenix-Controllers: Config -> Register Enable Digital Communication -> disabled
Ich habe einen Schlüsselschalter, da hing ich eine Zeit lang.
Wenn der Schlüsselschalter auf "on" ist, lädt das Auto sofort.
Wenn der Schlüsselschalter auf "off" ist, dann kann man das Laden per UI oder Modbus starten / stoppen.
Ideal für mich: muss ich laden, dann Schlüssel auf "on", muss ich nicht laden aber will Überschüsse verwerten: Schlüssel auf "off".
Nun kann man per Web-UI die ersten Spielereien machen:
Status -> Status acc. IEC61851-1 (A-F)
A = kein Auto angesteckt, B = Auto angesteckt, C = Auto lädt
Status -> Actual Charge Current Setting: Ladestrom in A
Configuration -> Register Enable Charging: hier startet / stoppt man das Laden
Genau dasselbe geht nun per Modbus:
Unit = 180
Register 300 (=holding func=3): Ladestrom in Ampere, mind. 6, lesen / schreiben
Register 100 (=input func=4): Status (A, B, C) auslesen
Register 102 (=input func=4): Ladezeit auslesen (vielleicht hilfreich - geht sogar bei Status=B, Prognose - cool)
Register 400 (=coil func=1): lesen und schreiben, true = starten, false = stoppen
Wenn ich Überschüsse habe, checke ich ob ein Auto angesteckt ist (Status=B).
Wenn angesteckt, Laden starten mit 6 A.
Wenn weitere Überschüsse, und Auto lädt (Status=C):
Ladestrom auslesen und erhöhen.
Wenn die böse Wolke kommt, dasselbe:
Lädt ein Auto (Status=C), dann Ladestrom reduzieren
Ist der Ladestrom schon auf 6A herunter, dann Laden beenden.
Und damit der Schütz des Autos und / oder Ladebox nicht permanent was zu tun hat (ist glaube ich nicht so gut), habe ich eine Mindest-Laufzeit eingebaut.
Wurde das Laden mal gestartet, darf erst nach 30 Minuten gestoppt werden.
Diese Zeit wird wieder auf t+30 gesetzt, falls der Ladestrom erhöht wird.
Wurde das Laden mal gestoppt, ebenfalls erst dann das Laden wieder starten, wenn t+30 vergangen ist.
Die 30 Minuten hab ich von meiner Wärmepumpe abgekupfert, der Hersteller hat auch eine 30 Minuten Mindestlaufzeit eingebaut (ähnlicher Algorithmus). Ist glaube ich kein schlechter Wert.
Vielleicht hilft das jemandem, ich bin begeistert vom Phoenix Controller!
Grüße, mmm