TeslaLogger icon indicating copy to clipboard operation
TeslaLogger copied to clipboard

Daten aus cFos Wallbox (cFos Charging Manager) auslesen und für Ladestatistik nutzen

Open Schimi1983 opened this issue 1 year ago • 19 comments

Hi,

wäre es möglich die cFos Wallbox (den Charging Manager) "anzuzapfen" und die Daten z.b. kWh, davon PV, etc für die Laedehistiroe zu nutzen?

Gerade in verbindung mit PV-Überschussladen würde das eine schöne statistik bedeuten... Der weg über nen Shelly 3EM ist da sehr fehlerbehaftet...

Ich würde da auch in rahmen der möglichkeiten unterstützen...

image

image

Schimi1983 avatar May 07 '23 17:05 Schimi1983

Gibt es da eine Schnittstelle und eine Beschreibung dazu?

Adminius avatar May 10 '23 21:05 Adminius

würde das schonmal was bringen?

https://www.cfos-emobility.de/de/cfos-charging-manager/documentation/mqtt.htm

habe ach mal beim hersteller angefragt

Schimi1983 avatar May 11 '23 10:05 Schimi1983

Ich schaue mir das nächste Woche mal an, aber dazu müsste ich mal auf das System drauf und brauche ein Mitschnitt ohne Ladung und mit Ladung. Ruf mich einfach nächste Woche mal an: https://www.impala64.de/blog/kontakt/

bassmaster187 avatar May 11 '23 13:05 bassmaster187

Gibt auch ein HTTP API: https://www.cfos-emobility.de/de/cfos-power-brain/http-api.htm

ThmsD avatar May 11 '23 13:05 ThmsD

@Schimi1983 @ThmsD Hilft mir mal die Sache zu verstehen: cFos ist eine Wallbox oder ein Device zum Steuern einer Wallbox? wenn ich mir die HTTP API anschaue, muss man meter1 oder meter2 angeben. Das weiß dann der User was meter1 oder meter2 ist, richtig? Mobusregister die man mitangeben muss, sind klar.

Adminius avatar Feb 23 '24 09:02 Adminius

so jetzt habe ich Zeit :-)

die cFos Wallbox ist eine Wallbox vergleichbar mit der OpenWB (https://shop.cfos-emobility.de/products/cfos-power-brain-wallbox-11kw)

es gibt auch noch den cFos charging Manager als windows version.... der ist im grunde auf allen wallboxen drauf und man kann den zum steuern anderer Wallboxen nutzen (ich vermute sowas wie evcc).... https://www.cfos-emobility.de/de/cfos-charging-manager/download.htm

evse ist die wallbox und meter1 müsste der integrierte Zähler sein... keter 3, 4 etc. kann man auch selbst integrieren oder weitere Modbus, etc. zähler einbinden (habe z.B. nen Shell3EM damit die wallbox selbst das PV-überschussladen steuert)

Ich habe die wallbox im iobroker über modbus eingebunden... und stuere Sie (wenn ich es mal brauche) über http befehle

Ich mach mal ne parr Screenshots, vielleicht helfen sie dir weiter:

evse über modbus (iobroker) image

S0-Zähler über modbus (ionroker) image

Screenshots der benutzeroberfläche: image

leider habe ich letztens die ladevorgänge resettet... sonst wäre hier eine anzeige... wieviel geladen wurde, wielange, wieviel über PV und netzbezug image

Schimi1983 avatar Feb 24 '24 09:02 Schimi1983

Ah, ok, also müsste man einen (nur Wallbox) oder 2 Meter (Wallbox+Netz= PV Anteil) auslesen. Klingt einfach, ich melde mich noch mal wenn ich mich eingelesen habe

Adminius avatar Feb 24 '24 09:02 Adminius

würde es auch begrüßen, wenn man die Effizienz mit Hilfe der cfos in Teslalogger einbauen könnte.

pseudoreal247 avatar Feb 29 '24 13:02 pseudoreal247

Ich brauche antworten (JSON) von diesen Endpoints (bitte die IP anpassen): http://192.168.2.111//cnf?cmd=get_dev_info http://192.168.2.111/cnf?cmd=modbus&device=meter1&read=8058 http://192.168.2.111/cnf?cmd=modbus&device=evse&read=8004 http://192.168.2.111/cnf?cmd=modbus&device=evse&read=8092

Adminius avatar Feb 29 '24 14:02 Adminius

Ich hoffe es bringt dich weiter :-)

get_dev_info.txt 8058.json 8004.json 8092.json

Schimi1983 avatar Feb 29 '24 17:02 Schimi1983

8058q.json

Schimi1983 avatar Feb 29 '24 18:02 Schimi1983

http://192.168.20.148/cnf?cmd=modbus&device=evse&read=8058q

gibt die insgesamt geladen kwh der Wallbox aus.... wenn du meter1 nimmst dann die gesamt kwh des modbus zählers (bei mir wohl unterschiedlioch da ich die box mal auf werkseinstellung zurück gesetzt habe

edit Samstag könnte ich mal schauen wie es aussieht wenn das Auto dabei geladen wird...

Schimi1983 avatar Feb 29 '24 18:02 Schimi1983

ashso, mann kann sich die Ladevorgänge auch als Excel laden von der benutzeroberfläche... sieht dann so aus ta_log.csv

da habe ich am 25.02 angeblich 0,3kWh (gerundet) von den 5,42kWh aus PV bezogen

image

Schimi1983 avatar Feb 29 '24 19:02 Schimi1983

so, die md=get_dev_info gefällt mir am besten, da sind auch die "externen" Zähler dabei, auch wenn cFos sagt, dass die API sich ohne Vorwarnung verändern kann, gehen wir mal dahin. Jetzt muss du mir noch mal helfen: Device M3, "EM3 am Hausanschluss" was ist das? Netzzähler? er hat "import": 9766409, [Wh] => 9766, 409 kWh, Ist das richtig? Device E1, "cFos Power Brain 11kW", das ist die Wallbox selbst, richtig? "import": 628277, [Wh] => 628,277 kWh, Ist das richtig? Device E1 hat auch noch unter evse -> "charging": false, schaue ob es auf true steht wenn das Auto lädt (am besten noch eine json beim Laden erzeugen)

M1 und M2 sind für uns egal nehme ich mal an, richtig? Ich nehme auch an, dass E1 immer die Wallbox ist, man kann also hardcoden, oder? M3 oder M2/M1 muss aber schon vergeben. Oder auch E1 flexibel machen?

Und noch was, ist irgendwo im cFos angegeben, dass M3 Netzzähler ist? Ich meine, woher soll cFos wissen, dass Solar 0.3kWh waren? da weiß man ja nur, wenn man den Netzzähler mitbrachtet. Ist das ""role": 3,? EDIT: role" : 0, // 0 = display, 1 = consumption, 2 = production, 3 = grid demand, 4 = vehicle consumption, 5 = storage

ich fange dann schon mal an :)

Adminius avatar Mar 01 '24 10:03 Adminius

Dann hole ich mal aus und hoffe alles beantworten zu können :-)

  • Device M3 ist ein Shelly 3EM (mir ist gar nicht aufgefallen das ich da nen dreher seit über 2 Jahren drin habe) der am Netzübergabepunkt direkt hinter dem Stromzähler den verbrauch (und einspeisung) misst. Dadurch weiss die Box wieviel bezogen bzw. wieviel eingespeist wird( um PV-überschuss laden zu ermöglichen) Wenn ich z.B. mit 11kw lade und bezug ist nur 2kw weiss die Box das 9Kw aus Solar kommen und regelt es entsprechend runter das es nach möglichkeit nur 0 W bezug sind. Der import ist richtig..., das ist aber nicht der import der Wallbox sondern des gesamten hauses seit letztem reset (oder einbau)

get_dev_info.txt während das Auto geladen hat

  • Device M4 ist auch nen Shelly 3EM der direkt vor der Wallbox misst. Dadurch erkennt die Wallbox wieviele Phasen benutzt werden und passt die PV-Überschuss regelung entsprechend an). Müsste aber ein spezialfall (spieltrieb und ich schalte mal eine bzw. zwei Phasen aus um besser die PV- Anlage auszunutzen) bei mir sein und sonst unnötig...

  • Device E1, das ist die Wallbox... import hast du richtig erkannt

  • M1 und M2 sind die integrierten Zähler eingänge... an M1 ist bei mir der Modbus zähler (ich vermute die neuen Versionen haben den auch so angeschlossen). Bei mir ist aber M4 als Zähler für die evse angegeben da der Modbus Zähler nicht einzelne Phasen erkennen kann... die neueren können das angeblich.

  • M3 als Netzzähler, siehe weiter oben... sollte erklären woraus die Box das herleitet... ""role":2", ist "Netzbezug", also ja, der Netzzähler am Hausanschluss

  • zum Thema "Solar", die box bietet auch die möglichkeit Wechselrichter oder Zähler am Wechselrichter einzubinden um da auch eine PV-Überschuss ladung zu ermögichen... da führen am ende mehrere wege nach "Rom".... Die idee sich an get_dev_info zu orientieren ist wahrscheinlich am besten... die zähler kann jeder user selber definieren und teilweise auch mit formeln verändern. die Wallbox ist recht mächtig/flexiebel... macht dadurch aber auch wahrscheinlich probleme :-)

Schimi1983 avatar Mar 01 '24 13:03 Schimi1983

"phases": 7, nicht schlecht :D

Danke, damit kann ich arbeiten, ich melde mich wieder die Tage

Adminius avatar Mar 01 '24 13:03 Adminius

Frag mich nicht wie der drauf kommt :-)

Es funzt alles wie es soll, aber ich bin mir sicher ich habe nur 3 Phasen :D

edit

könnte deswegen sein: image sind 7 verschiedene möglichkeiten und ich habe tatsächlich gerade alle 3 Phasen genutzt

Schimi1983 avatar Mar 01 '24 13:03 Schimi1983

Habe hier mal bei cfos die frage im Community bereich erstellt

https://www.cfos-emobility.de/network/antworten/ladevorgaenge-ueber-http-api-auslesen/#answer-1468

man kann auch die jungs direkt per mail (kontaktformular) anschrieben. Als ich nur aktiver war, haatte ich einiges mit denen zutun. waren sehr hilsbereit und haben sachen auch umgesetzt

Schimi1983 avatar Mar 01 '24 13:03 Schimi1983

@Schimi1983 wenn es released wird, bitte testen und Rückmeldung geben. ich habe zwar mit einem MockupServer entwickelt, aber reale Daten sind besser zum Testen ;)

Adminius avatar Mar 12 '24 14:03 Adminius

wenn ich die Ip adresse eingebe, dann kommt nur das im Log?

12.03.2024 16:55:54 : System.NullReferenceException: Object reference not set to an instance of an object. at TeslaLogger.WebServer.Admin_Wallbox (System.Net.HttpListenerRequest request, System.Net.HttpListenerResponse response) [0x002c2] in <2539df6baea14424abe174fc5256b02b>:0 12.03.2024 16:56:23 : Wallbox 12.03.2024 16:56:23 : Wallbox 12.03.2024 16:56:23 : Test Wallbox 12.03.2024 16:56:23 : System.NullReferenceException: Object reference not set to an instance of an object. at TeslaLogger.WebServer.Admin_Wallbox (System.Net.HttpListenerRequest request, System.Net.HttpListenerResponse response) [0x002c2] in <2539df6baea14424abe174fc5256b02b>:0 12.03.2024 16:56:32 : Wallbox 12.03.2024 16:56:32 : Test Wallbox 12.03.2024 16:56:32 : System.NullReferenceException: Object reference not set to an instance of an object. at TeslaLogger.WebServer.Admin_Wallbox (System.Net.HttpListenerRequest request, System.Net.HttpListenerResponse response) [0x002c2] in <2539df6baea14424abe174fc5256b02b>:0 12.03.2024 16:56:43 : Wallbox 12.03.2024 16:56:43 : Test Wallbox 12.03.2024 16:56:43 : System.NullReferenceException: Object reference not set to an instance of an object. at TeslaLogger.WebServer.Admin_Wallbox (System.Net.HttpListenerRequest request, System.Net.HttpListenerResponse response) [0x002c2] in <2539df6baea14424abe174fc5256b02b>:0 12.03.2024 16:56:45 : Wallbox

muss man sich vielleicht einloggen?

Schimi1983 avatar Mar 12 '24 15:03 Schimi1983

es gibt noch kein Release auch wenn cFos schon auswählbar ist ;)

Adminius avatar Mar 12 '24 16:03 Adminius

ok... dann hätte ich nicht sofort "aktualiesieren" müssen 🗡️ Ich warte und meld vollzug wenn es soweit ist :-)

Schimi1983 avatar Mar 12 '24 16:03 Schimi1983

So hat sich selber 2geupdated" :-)

beim auf "test" drücken, passiert nichts... nur im Log steht:

14.03.2024 21:20:13 : System.NullReferenceException: Object reference not set to an instance of an object. at TeslaLogger.WebServer.Admin_Wallbox (System.Net.HttpListenerRequest request, System.Net.HttpListenerResponse response) [0x002c2] in <2539df6baea14424abe174fc5256b02b>:0

Schimi1983 avatar Mar 14 '24 20:03 Schimi1983

Welche TL Version hast du nun? 1.57.9.0? Nur damit soll es gehen und die gibt es noch nicht. Oder selbst kompiliert? Was hast du in den Einstellungen eingetragen?

Adminius avatar Mar 14 '24 20:03 Adminius

ah f***... hätte genauer gucken sollen

1.57.8.0

gerade war aber das changelog zu sehen und es stand die 9.0 drin... dehlab habe ich nicht auf die installierte geguckt....

Ich sollte beim nächsten mal erstmal gucken :D

Schimi1983 avatar Mar 14 '24 20:03 Schimi1983

Change log haben wir vorbereitet und dann einen Bug gefunden, dadurch kleine Verzögerung...

Adminius avatar Mar 14 '24 21:03 Adminius

@Schimi1983 jetzt bis du dran ;)

Adminius avatar Mar 15 '24 11:03 Adminius

Was muss man denn als Param eingeben? Ich möchte, dass die Werte des Ladevorgangs und die effizienz im TL angezeigt werde?

pseudoreal247 avatar Mar 15 '24 12:03 pseudoreal247

nichts, nur die IP der Wallbox bzw. des Controllers

Adminius avatar Mar 15 '24 12:03 Adminius