NEWS
[Frage] Realisierung Adapter UDP Keba Wallbox
-
@christian-kohlöffel Die Änderungen sind im neuen PR leider noch drin ...
-
@sneak-l8 Mann bin ich blöd. Sorry, das ist mein erster PR .....
-
@sneak-l8 Jetzt aber, hoffentlich
-
@christian-kohlöffel Leider nein. Schau mal im PR unter "Files changed". Das sind immer noch einige...
Und Du musst nicht jedes Mal einen neuen PR erstellen. Es reicht, wenn Du den Commit (und Push) machst. Dann wird der PR automatisch aktualisiert. -
@sneak-l8 OK, dann schaue ich nochmals ...
-
Hallo zusammen, Keba hat leider Ihre Homepage renoviert. Unter https://www.keba.com/de/emobility/service-support/downloads/downloads findet man die Firmware un nur noch, wenn man entweder "firmware" ins Suchfeld eingibt oder "mehr anzeigen" anklickt.
Daher schlägt derzeit der automatische Firmware-Check für die Keba c-Series fehl. Bei Keba habe ich nachgefragt, sie haben leider keine API, URL mit json-Daten der Downloads o.ä.
Die Navigation auf der Seite ist leider auch über JavaScript gelöst, das heißt, es reicht nicht, klassiche Seitenabrufe zu tätigen und Formularangeben zu füllen.
Hat da jemand einen Tipp für mich, wie ich da recht einfach rankomme? Es geht mir nur um die Versions-Nr. die beim Download der firmware angezeigt wird... -
@christian-kohlöffel So, hab mir jetzt mal Deinen PR angeschaut.
Was mir auffällt:
- Zeile 70: Die minimale Zeit zum Umschalten ist null. Setzt du die absichtlich erst beim Init? Ein cont ... = 300 würde doch reichen. Logging der Info sehe ich nicht für notwnedig, da es ja ein fester Wert ist.
- Zeile 1026: guter Gedanke, die aktuelle Stromstärke nur bei state ==3 (charging) zu holen und nicht über disabled zu prüfen => alten Code dan aber löschen und nicht kommentieren
- Zeile 1058: kleiner Tippfehler values => value
- Zeile 1065: auch wieder bitte alten Code raus
- Zeile 1206: alten Code bitte raus
- Zeile 1304/1307: die Log-Ausgaben sind eher noch vom Testen, oder?
- Zeile 1372: wenn Du den Wert unbedingt loggen willst, dann solltest Du ihn persistieren. Es könnte sein ,dass im Log ein anderer Wert steht, als der, der von der Funktion zurückgegeben wird, weil genau dazwischen, neue Daten von der Wallbox kamen.
- Zeile 1494/1576/1673: bitte Variable im lowerCamalCase schreiben (kleines s am Anfang)
- Zeile 1495: wenn noch kein Phase-Switch im State vermerkt ist, dann würde ich auch keinen aktuellen Wert setzen. Denn es fand ja kein Switching statt. Ich würde hier einfach false zurückgegeben.
- Zeile 1561 (alt Zeile 1436): warum hast Du da das ausschalten des 1p/3p-Switches deaktiviert? Mir geht es (gerade weil ich einen Öffner einsetze) darum, dass bei Ladepausen der Installationsschütz abgeschaltet wird und somit nicht unnötig daueraktiviert ist.
- Zeile 1673ff: hier wird jetzt nochmals geprüft, wie lange der Phase-Switch zurückliegt. wäre es dann nicht weiter oben obsolet? Ggfs. soltle man das dann in eine zentrale Funktion verlagern, so dass es dann auch für Zeile 1561 passen würde.
Aber insgesamt find ich die Änderung echt gut. Danke dafür!
Noch ne Frage dzu, dass Du die Prüfung auf stateWallBoxDisabled sehr oft entfernt hast: was ist der Hintergrund? Weil current eh null sein sollte, wenn die Wallbox disabled ist?
P.S. Danke fürs Kommentieren der Methoden!
-
@sneak-l8 sagte in [Frage] Realisierung Adapter UDP Keba Wallbox:
Zeile 70: Die minimale Zeit zum Umschalten ist null. Setzt du die absichtlich erst beim Init? Ein cont ... = 300 würde doch reichen. Logging der Info sehe ich nicht für notwnedig, da es ja ein fester Wert ist.
Ja, das hab ich gemacht falls es für andere Wallboxen doch noch andere Werte geben sollte. Könnte man aber auch fix machen
==> Vorschlag das lassen wir so ...@sneak-l8 sagte in [Frage] Realisierung Adapter UDP Keba Wallbox:
Zeile 1561 (alt Zeile 1436): warum hast Du da das ausschalten des 1p/3p-Switches deaktiviert? Mir geht es (gerade weil ich einen Öffner einsetze) darum, dass bei Ladepausen der Installationsschütz abgeschaltet wird und somit nicht unnötig daueraktiviert ist.
Ist aus meiner Sicht nicht nötig, da dies weiter unten, wenn der curr= 0 ist eh auch schon gemacht wird.
Zeile 1664 neu und darunter:
if (curr < getMinCurrent())
Klar, könnte man auch verlagern, hast du eine Vorschlag. Ich verstehe gerade nicht ganz was Dir vorschwebt ....Den Rest habe ich so umgesetzt und auch schon commitet ...
-
@christian-kohlöffel Hey, top! Ja, dassZeile 1561 unnötig ist, istm ir garn icht gleich aufgefallen.
Den anderen Punkt könenn wir auch gerne so lassen. Dann merge ich jetzt mal.
Danach deaktiviere ich mal noch kurz den Firmwre-Check für die c-Series, da er derzeit ja leider nicht mehr funktioniert (siehe Post weiter oben).
Edit: Version ist jetzt bei github -
Danke euch 2!
Ich werde die GH Version mal laden und diese Woche beobachten.
-
@darkiop @christian-kohlöffel Hab nochmal ne Version nachgeschoben, da ich gerade imemr wieder "stop charging for switch of phases" bekam, er aber nie weitermachte...
-
@sneak-l8 Ich lade mir die Version auch gleich mal runter. Morgen früh ist eh wieder laden angesagt ...
-
@christian-kohlöffel Ich hab gerade nochmal einen Fix gemacht. Bei regulateWallbox() hattest du die Ermittlung des oldValues begrenzt auf den Fall ,dass ein Fahrzeug angeschlossen ist. Hier bin ich wieder zurück auf "Wallbox enabled". Denn es geht ja um den Vergleich, um die Ladeleistung einen geänderten Wert hat, der an die Wallbox gesendet werdne muss. Und auch wenn das auto nicht angesteckt ist, kann eine Ladeleistung eingestellt sein, die dann auch erkannt werden muss.
Hatte bei mir sonst den Fall, dass das Fahrzeug beim Anstecken für ein paar Sekunden lädt, obwohl kein ausreichender Überschuss da ist.
-
@sneak-l8 Top Adapter danke!
Ich habe die Firmenwagen Wallbox KC-P30 nun mit der Phasenumschaltung über den X2 Kontakt laufen.
Die bestehende Ladeleistung der Batterie wird dies zum bestehenden Überschuss addiert und bestimmt den Wert Surplus.. soweit ok. Wenn nun die Batterien voll sind wird keine Batterieleistung zum bestehenden Überschuss hinzu addiert da ja keine Ladung vorhanden ist.
Wäre es nicht sinnvoll wenn bei einem SOC über dem eingestellten unteren minimum im Adapter, die maximale Abgabeleistung der Batterie den Überschuss der PV Anlage bis zur maximal mögliche Ladeleistung der Wallbox ergänzt...möglicher weise habe ich auch noch etwas nicht richtig eingestellt.... -
@keksn Da triffst du einen offenen Punkt. Ich hatte weiter oben im Thread mal ein paar Batterie-Ladeszenarien vorgeschlagen. Bisher kann man die Batterie nicht wirklich mit einbinden.
Allerdings wird eine Steuerung abhängig vom SoC (ich denke, Du meinst den des Fahrzeugs und nicht der Batterie?) schwierig. Der SoC kann von der Wallbox nicht ausgelesen werden. Das heißt, es müsste nun der SoC eines bestimmten Fahrzeugs gelesen werden. Es ist aber nirgends prüfbar, ob gerade dieses Fahrzeug gleaden wird oder ein anders (z.B. Gast).
Daher möchte ich diese Abhängigkeit ungern im Adapter implementieren. Ich kann aber die Lademodi als State anlegen. So kann man sie entweder generell über die Einstellungen oder dynamisch (z.B. über ein eigenes Skript, das den SoC berücksichtigt) über einen State regelbar machen. -
@sneak-l8 nein ich meine den SOC der Inverter Batterie. Wenn die Batterie voll geladen ist wäre es gut den Ladevorgang bei Überschussladung auch einzubinden(möglicherweise wahlweise). Um die 100% geladene Batterie zur Abgabe der Energie zu animieren müsste aber der Ladevorgang mit voller Leistung beginnend. Macht das die Regelung jetzt so ?
-
Hi @sneak-l8 , ich hab das Update nun schon mehrere Tage am Laufen und ich habe bisher keine Probleme feststellen können. Also
-
Hallo zusammen,
ich woillte nun das PV Laden einrichten, weiß aber nicht so genau was ich wo ein tragen muss.
Ich möchte einfach nur das wenn ich lade und der Verbrauch mehr als 500 Watt ausm Netz bezträgt, dass der Ladevorgng gestoppt wird.
In
alias.0.strom.stromzaehler.moment_verbrauch
steht der aktuelle Verbrauch in Watt also 1000,2500 oder halt -1500 etc
Aktuell habe ich eine PV Leistung von ca. 3500 Watt
Das Auto lädt mit 5500 Watt
Inkecontact.0.statistics.surplus
steht 2683, müsste hier nicht ein Negativer Wert stehen?
-
weiterhin ist mir aufgefallen, dass wenn ich mein Auto an die Wallbox anschließe und das laden starte dann klappt es, stoppe ich manuell das laden geht es auch, aber wenn ich dann wieder starten will geht das nicht.
kecontact.0.state bleibt auf 5 stehen.auch hat kecontact.0.automatic.pauseWallbox keine Auswirkung das Laden stoppt nicht
-
@malz1902
Der momentan_verbrauch ist positiv, wenn Du Strom aus dem Netz ziehst und negativ, wenn Du Strom einspeist. Richtig?Wenn Du eine nsurplus von 2.683W im Adapter stehen has,t dann sieht das doch ganz gut aus. Die PV liefert 3.500W und der Rest im Haus braucht dan gerade so ca. 900W. Alles plausibel.
Welchen Wallbox-Typ hast Du denn? Und was steht in den Logs?
Das wäre auch für Deine 2. Frage sehr interessant. Denn eigentlich funktionieren die States korrekt.
Beschreibe doch mal, was Du konkret tust. Stoppst Du das Laden über einen State im Adapter, über eine Fahrzeug-App? Was ist das für ein Auto? Sind da vielleicht Probleme mit Überschuss-Laden bekannt?
Und dann gib neben dder Info wann (Uhrzeit) Du was getan hast, das Log dazu. Im Optimalfall im Debug-Modus. Dann kann man sich das Anschauen. Sonst ist das eher ein Rätselraten.