nachdem ich erfolgreich meine Dimplex WP (System M) angeschlossen habe, wollte ich nun meine Wallbox von Schneider Electric anschliessen.
Ich hab nun ein paar Fragen, da die Franzosen von der Dokumentation es ein wenig anders machen als z.B. Dimplex. Damit aber auch die ganzen Sachen nicht verloren gehen, würde ich gerne den Thread dann immer nutzen um die Erfahrungen dann auch anderen zugänglich zu machen, die die Wallbox nutzen möchten.
Kommunikation läuft soweit, ich kann Werte auslesen. Da die Franzosen nicht angeben in welchem Bereich, nutze ich das Tool: CAS Modbus Scanner und schau mir die Werte an. Jetzt die knifflige Frage:
Um z.B. die Seriennummer auszulesen, soll ich WORD auslesen mit einer Länge von 26 Zeichen. Aber wie mach ich das mit der Loxone? Ich hab nur gesehen das ich als Datentyp 32bit angeben kann (also 2x WORD), muss ich dann 10 x Analogsensor mit 32bit anlegen oder geht das irgendwie anders in Loxone?
---
Ab hier meine Erkenntnis:
Zum Verbinden: IP Adresse der Box
Port: 502
Adresse: 247 (nicht 1 wie man annehmen könnte)
Folgende Adressen gibt es zum Auslesen (mehr kommen noch):
register | Parameter | Type | Size | Read/Write |
65 | LifeBit | word | 1 | Read/Write |
66 | Reboot | word | 1 | Read/Write |
67 | EVSE_Management | word | 1 | Read/Write |
68 | IMaxPLC | word | 1 | Read/Write |
69 | CurrentMonitoringMode | word | 1 | Read/Write |
70 | InstantCurrentGivenPhaseA | word | 1 | Read/Write |
71 | InstantCurrentGivenPhaseB | word | 1 | Read/Write |
72 | InstantCurrentGivenPhaseC | word | 1 | Read/Write |
73 | RFIDReader Polling Period | word | 1 | Read/Write |
74 | PLC Modbus TCP Server IP | word | 2 | Read/Write |
76 | PLC Modbus TCP Server DestAddr | word | 1 | Read/Write |
77 | Degraded mode configuration | word | 1 | Read/Write |
78 | EVSE IP address | word | 2 | Read/Write |
80 | EVSE IP Mask | word | 2 | Read/Write |
82 | EVSE IP gateway | word | 2 | Read/Write |
84 | EVSE IP DNS | word | 2 | Read/Write |
86 | RAZ count | word | 1 | Read/Write |
512 | Serialnumber | word | 26 | Read |
Update 19.1.2021:
Nachdem ich es nicht hinbekommen habe mit Logik zu realisieren, hab ich mir ein PicoC Programm geschrieben, Des Weiteren habe ich 3-4 mal mit der Hotline mich besprechen müssen, da die Firma Schneider Elektrik da ein wenig zaghaft ist mit den Infos. Also man muss erst auf ein Problem stossen, dann bekommt man wieder einen Fix. Also nun funktioniert erstmal alles, das Auto wird mit Überschuss Strom geladen. Hier die Schritte die notwendig sind:
a) Wallbox die Config auslesen als Datei und folgende Werte ändern:
degradedModeSetPointMono=6
degradedModeSetPointTri=6
monophasedLoadSheddingFloorValue=6
triphasedLoadSheddingFloorValue=6
Wenn man diese NICHT ändert, verweigert die Box das heruntersetzen auf 6A (ich glaube factory stehen die Tri auf 14).
b) Folgende Modbus Register "anzapfen", die brauchen wir:
Input:
6 CPW State
358 Station Aktuelle Gesamtleistung
Output:
67 IMaxPLC
150 Fernsteuerbefehlt
Hier das Pico C Program:
// write program here in PicoC #define AI1 0 #define AI2 1 #define AI3 2 #define AI4 3 #define AI5 4 #define AI6 5 #define AQ1 0 #define AQ2 1 #define AQ3 2 #define AQ4 3 #define Pause setoutput(AQ1, 4) #define Start setoutput(AQ1, 5) setoutput(AQ2, 6); //Initiere 6A an Wallbox float PVLeistung; //AI1 float WBLeistung; // float WBStatus; //AI2 float NetzLeistung; int FastCharge = 0; int FastChargeAmp = 6; int Active = 0; //Wallbox active? float Energy = 0; int EnergyCur = 0; while (TRUE) { PVLeistung = getinput(AI1); WBStatus = getinput(AI2); FastChargeAmp= getinput(AI3); FastCharge = getinput(AI4); //TRUE, else PV Mode NetzLeistung = getinput(AI5); //Solaredge liefert "-" für Netzbezug WBLeistung = getinput(AI6)*1000; if (WBStatus == 9 || WBStatus == 11) Active = TRUE; else Active = FALSE; if (Active) Energy = NetzLeistung + WBLeistung; else Energy = NetzLeistung; setoutput(AQ3, Energy); // Debug if (Energy >0) EnergyCur = Energy / 690; else EnergyCur = 0; setoutput(AQ4, EnergyCur); // Debug if (FastCharge) { setoutput(AQ2, FastChargeAmp); if (!Active) { setoutput(AQ1, 5); // Start sleeps(5); setoutput(AQ1, 0); } } else { if (EnergyCur>16) EnergyCur = 16; // Wir sind unter den 6A, leg die Box schlafen wenn aktiv if (Active) { if (EnergyCur <6) { setoutput(AQ1, 4); // Pause sleeps(5); setoutput(AQ1, 0); } setoutput(AQ2, EnergyCur); } else { if (EnergyCur >5) { setoutput(AQ2, EnergyCur); setoutput(AQ1, 5); // Start sleeps(5); setoutput(AQ1, 0); } } } sleeps(1); }
3) Die Ausgänge/Eingänge vom Pico C verknüpfen:
Der Schalter, schaltet um zwischen: "FAST Charge" = Lade sofort und "OFF" = Nutze überschüssige Energie aus PV (Achtung, 6a müssen mindestens frei sein das das Auto lädt).
AI1 = Wird nicht genutzt, ist vorgesehen für Future
AI2 = CPW State -> Modbus siehe oben
AI3 = Virtueller Eingang, da könnt ihr die Ampere einstellen die ihr gerne mit FastCharge geladen haben möchtet.
AI4 = Schalter
AI5 = Netzpunkt (Achtung SolarEdge Format = "-" Wir brauchen Strom vom Netz, "+" wir haben überschuss.
AI6 = 358 Modbus, was saugt der Kasten aktuell
AQ1 = Fernsteuerung Wallbox
AQ2 = IMaxPLC (Einstellen der Ampere an der Wallbox)
Bei Fragen.. posten
---
Kommentar