Modul für Steuerung einer Go-ECharger Wallbox [= go-e oder go-echarger]

Begonnen von LR66, 16 April 2020, 19:50:12

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

Wenn man die Wallbox alle paar Sekunden mit den Daten über die Leistung der Solaranlage versorgt, macht sie das automatisch.

LG

pah

Chris_XXX

Wie mach ich denn das? Hab ich bisher noch nicht gehört.


Prof. Dr. Peter Henning

Hm. Schon mal etwas gehört von Code-Tags?? Das sind die lustigen kleinen Bildchen über dem Editierfeld.

"Amperezahl", soso. Wie schön, dass wir heute einen sonnigen Tag mit relativ angenehmer Gradzahl haben...

LG

pah

Rainer S.

Zitat von: Rainer S. am 12 Mai 2024, 10:21:38Hallo,

habe heute festgestellt, dass ich die Stromstärke des Go-eChargers (Hardwareversion des Go-e: V2, Firmware: 042.0) über FHEM nicht mehr steuern kann. ON/OFF geht. Über die Go-e APP geht das. Ich weiß, dass das schon funktioniert hat und ich habe das häufiger verwendet. Jetzt geht es nicht mehr.

Hat sich da etwas geändert? Muss ich etwas in FHEM ändern?

P:S: GOeCHARCHER Version 0.2.8

Definition:

defmod Wallbox GoECharger 192.***********
attr Wallbox devStateIcon disabled.*:ev-station@darkgrey not_allowed.*:ev-station@white ready_no_car.*:ev-station@blue charging.*:ev-station@darkorange waiting_for_car.*:ev-station@pink finished.*:ev-station@lime error.*:ev-station@red
attr Wallbox event-on-change-reading .*
attr Wallbox event-on-update-reading state
attr Wallbox eventMap /allow_charging 1:on/ /allow_charging 0:off/
attr Wallbox group Wallbox
attr Wallbox interval 60
attr Wallbox kW_measured_corr_value 1.00
attr Wallbox room Garage
attr Wallbox stateFormat state\
KW_charging_measured kW\
amp_current A\
kWh_charged_last kWh\
kWh_charged_total kWh\
allow_charging
attr Wallbox used_api_keys default
attr Wallbox webCmd on:off


Konfiguration:
- Raspberry Pi (3) mit EnOcean Pi
- komplette Hausinstallation von Eltako (EnOcean)
- 1-Wire Temperatursensoren
- mehrere Shelly 1

Eckat

Hallo,

ja, ich habe eine Phasenumschaltung für die PV-Überschuss-Steuerung implementiert.

Was in dem ersten theoretischen Ansatz ganz einfach und logisch ist, war in der Praxis gar nicht so einfach.
Einige Fallstricke die mir auf Anhieb einfallen:
  • Änderung des Ladestroms wird nicht schlagartig umgesetzt. Aufruf dauert einen Moment und dann wird das zwischen Auto und Wallbox ausgehandelt (können es beide), um dann den Strom "langsam" hochzufahren. Als Trigger für ein doif später notify zur Überprüfung ob bei geändertem Hausverbrauch oder PV-Erzeugung eine Änderung nötig ist, habe ich das Problem gehabt, dass das sich teilweise "überholte", also schon wieder eine auslösende Änderung auftrat, bevor der Ladestrom vollständig geändert wurde.
  • Das Problem tritt bei der Phasenumschaltung noch stärker auf, da die Umschaltung in der Praxis (intern im go-eCharger) ja so läuft: aktuelle Ladung beenden, kurzer Sleep, Phasen umschalten, Ladung wieder starten. Das dauert so ca. 20 - 30 Sekunden. Ist aber nötig, da es einige Onboard-Lader in den Autos gibt, die kaputt gehen, wenn bei bestehender Ladung die Phasen umgeschaltet werden.
  • Sowas triviales wie, das bei der Berechnung des PV-Überschusses man die aktuelle Ladung mit berücksichtigen muss. Ist logisch, da sonst der Hausverbrauch (ohne Ladung) um diesen Wert höher ist und die Ladung ständig gestoppt und gestartet wird.
  • Wie man zu den Werten PV-Erzeugung, Hausverbrauch, aktuelle Ladeleistung und daraus errechnetem PV-Überschuss kommt, ist auch nicht ganz so einfach und hängt stark von den verbauten Geräten ab (Wechselrichter, Smartmeter, Speicher, Wallbox ...). Bei mir ist es etwas blöd, das ich seinen SMA Wechselrichter und Smartmeter mit einer Tesla Powerwall 2 zusammen habe. Aus den Schnittstellen muss ich mir das zusammen suchen und errechnen, da aus keiner der API's alle nötigen Werte kommen. Das ist dann in Kombination mit unterschiedlichen Aktualisierungsintervallen schon eine Herausforderung gewesen.
  • Dazu kommt dann das ich 2 Wallboxen habe und nicht das integrierte Lastmanagement nutzen kann, da das dann mit den von extern über die API gesteurten Ladeströmen nicht funktioniert. Insgesamt ist die Installation aber aktuell so, das beide zusammen nur 11 kW ziehen dürfen. Reicht mir auch vollkommen und der Netzbetreiber würde auch für sehr wenig Geld den Hausanschluss aufstocken, aber dann müsste die Verteilung größtenteils neu gemacht werden.

Ich habe schon länger auf dem Plan, evtl. ein Modul o.ä. zu schreiben, bei dem man die Devices und Readings angeben kann und das das dann die Steuerung macht.
Aktuell fehlt mir aber dazu die Zeit.

Gruß, Carsten

PS: Bei gezielten Fragen zur Phasenumschaltung kann ich aber gerne helfen!  8)

Chris_XXX

Hi Carsten,

danke für deine Antwort. Tatsächlich schaut mein Setup ziemlich ähnlich aus. 2 Wallboxen, beide zusammen max. 11kw, Speicher (allerdings DIY). Ich triggere bei mir alles durch ein Smartmeter am Übergabepunkt.
Hast du unterschiedliche zweige für die Erhöhung bei 1phasig bzw. 3phasig gemacht? Bei 3phasig geht es bei 1A um mehr Leistung hoch als bei 1phasig.

VG
Christian

satprofi

Zitat von: Rainer S. am 12 Mai 2024, 13:13:31
Zitat von: Rainer S. am 12 Mai 2024, 10:21:38Hallo,

habe heute festgestellt, dass ich die Stromstärke des Go-eChargers (Hardwareversion des Go-e: V2, Firmware: 042.0) über FHEM nicht mehr steuern kann. ON/OFF geht. Über die Go-e APP geht das. Ich weiß, dass das schon funktioniert hat und ich habe das häufiger verwendet. Jetzt geht es nicht mehr.

Hat sich da etwas geändert? Muss ich etwas in FHEM ändern?

P:S: GOeCHARCHER Version 0.2.8

Definition:

defmod Wallbox GoECharger 192.***********
attr Wallbox devStateIcon disabled.*:ev-station@darkgrey not_allowed.*:ev-station@white ready_no_car.*:ev-station@blue charging.*:ev-station@darkorange waiting_for_car.*:ev-station@pink finished.*:ev-station@lime error.*:ev-station@red
attr Wallbox event-on-change-reading .*
attr Wallbox event-on-update-reading state
attr Wallbox eventMap /allow_charging 1:on/ /allow_charging 0:off/
attr Wallbox group Wallbox
attr Wallbox interval 60
attr Wallbox kW_measured_corr_value 1.00
attr Wallbox room Garage
attr Wallbox stateFormat state\
KW_charging_measured kW\
amp_current A\
kWh_charged_last kWh\
kWh_charged_total kWh\
allow_charging
attr Wallbox used_api_keys default
attr Wallbox webCmd on:off


So, ich hoffe, dass ist jetzt etwas besser. Wir können natürlich auch erst noch meine weiteren formellen Fehler ausmerzen, bevor wir uns um das Inhaltliche kümmern.

?payload=ama=

Diesen befehl verwendet? 0.42 benötigt ama statt amp
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

Eckat

Zitat von: Chris_XXX am 13 Mai 2024, 19:23:23Hi Carsten,

danke für deine Antwort. Tatsächlich schaut mein Setup ziemlich ähnlich aus. 2 Wallboxen, beide zusammen max. 11kw, Speicher (allerdings DIY). Ich triggere bei mir alles durch ein Smartmeter am Übergabepunkt.
Hast du unterschiedliche zweige für die Erhöhung bei 1phasig bzw. 3phasig gemacht? Bei 3phasig geht es bei 1A um mehr Leistung hoch als bei 1phasig.

VG
Christian

Hallo Christian,

habe das schon mehrfach umgebaut.
Aktuell rechne ich immer mit Leistung in Watt. Erst für die Ermittlung des PV-Überschuss und dann auch für die Ermittlung wie hoch die Ladeleistung sein darf.
Erst am Ende beim Einstellen der Stromstärke teile ich durch die Netzspannung um auf die Stromstärke zu kommen.
Das klappt ganz gut.

Das mit den größeren "Sprüngen" bei der Leistung im 3-phasigen Betrieb ist so.
Die Abgrenzung ob 1- oder 3-phasig geladen werden soll ist aber von der Normung abgenommen worden.
Typ2 kann Stromstärken ab 6 A in Schritten von 1 A, egal ob 1- oder 3-phasig.
Macht bei 1-phasigem Betrieb also 1 * 230 V * 16 A (für eine 11 kW Wallbox als Maximum) = 3.680 W.
Für 3-phasig sieht es so aus als Minimum: 3 * 230 V * 6 A = 4.140 W.
Das Minimum für 3-phasig liegt also über dem Maximum für 1-phasig.

Bei mir habe ich das Minimum von 4.140 W als Schwellwert für das Umschalten genommen. Liegt der Überschuss dazwischen, geht etwas in den Hausspeicher.

In der aktuellen Version bei mir habe ich auch zwei Schwellwerte definiert: Start-Ladeleistung-Prozent und Volle-Ladeleistung-Prozent.
Die Prozente beziehen sich auf den SoC der Tesla Powerwall 2.
Erst ab "Start-Ladeleistung-Prozent" fängt wenn überhaupt ein Ladevorgang an und erst bei dem Erreichen des SoC der Powerwall von "Volle-Ladeleistung-Prozent" wird der volle Überschuss ins Auto abgegeben.
Das führt dazu, dass morgens erst die Powerwall etwas aufgeladen wird, um z.B. Puffern zu können, wenn man morgens einen höheren Hausverbrauch hat, als die PV schon liefert.
Zwischen den beiden Werten "Start-Ladeleistung-Prozent" und "Volle-Ladeleistung-Prozent" errechne ich einen Faktor der linear den PV-Überschuss sozusagen "aufteilt" in einen Teil mit dem die Powerwall weiter geladen wird und einen anderen Teil mit dem schon das Auto geladen werden kann.
In der Praxis wird also die Powerwall auch noch weiter geladen, mit je steigendem SoC mit sinkender Leistung, bis der Wert "Volle-Ladeleistung-Prozent" erreicht ist. Dann geht der ganze PV-Überschuss ins Auto.

Mit dem Wert "Volle-Ladeleistung-Prozent" steuere ich übersetzt, wie viel SoC am Ende des Tages / am Ende der PV-Produktion in der Powerwall verbleibt um Nachts das Haus zu versorgen.

Planung für die Zukunft ist es noch, diesen Wert täglich zu ermitteln. Z.B. brauche ich mehr % on der Powerwall für die Nacht, je länger die Nächte sind (vielleicht Zeitraum zwischen Sonnenuntergang und Sonnenaufgang.

Gruß, Carsten

karpate

Hallo,
ich benutze Modul Version 0.2.8 und GoEcharger V3 mit Firmware 56.8.
Ist das ein bekannter Fehler oder jemand einen Tipp?

Vielen Dank und Gruß Ingo

2024.09.25 08:38:03 1: PERL WARNING: Use of uninitialized value $newreadingname in string eq at ./FHEM/46_GoECharger.pm line 841.
2024.09.25 08:38:03 1: stacktrace:
2024.09.25 08:38:03 1:    main::__ANON__                      called by ./FHEM/46_GoECharger.pm (841)
2024.09.25 08:38:03 1:    main::GoECharger_WriteReadings      called by ./FHEM/46_GoECharger.pm (818)
2024.09.25 08:38:03 1:    main::GoECharger_ResponseProcessing called by ./FHEM/46_GoECharger.pm (793)
2024.09.25 08:38:03 1:    main::GoECharger_ErrorHandling      called by FHEM/HttpUtils.pm (755)
2024.09.25 08:38:03 1:    main::__ANON__                      called by fhem.pl (783)

Das List des Devices sieht so aus:
Internals:
  DEF        192.xxx.xxx.xxx
  FUUID      612db84b-f33f-c7cb-8604-55c69042fc13ba5f
  HOST      192.xxx.xxx.xxx
  INTERVAL  30
  NAME      myGoE
  NOTIFYDEV  global
  NR        1258
  NTFY_ORDER 50-myGoE
  STATE      not_allowed
0.00 kW
  TYPE      GoECharger
  USED_API_KEYS al4 nrg lof fsp aho ec1 rn4 rne rc9 mcs sch rc5 rc6 car rc7 eca al2 stp alw cfi loa wst rnm eto cch mcc wss al5 txi ec8 wen dws rn9 nmo rc4 lot ecd rn6 rn5 lse uby r1x rn7 cbl tme err tmp tof amp lon ecr adi pha loe tds lop fwv rn1 rc8 rcd ec4 rbc cdi al1 al3 rna dto lom version mce lch ust rbt rcr mcp amt wak cid afi lbr rc1 rn8 azo ec9 wke ama ec5 dwo tma ec6 ast rca ec7 log sdp mck mcu upd sse
  VERSION    0.2.8
  eventCount 10974
  ActionQueue:
  OLDREADINGS:
  READINGS:
    2024-09-24 12:32:29  Http_lastRequestError http://192.xxx.xxx.xxx/status: empty answer received
    2024-09-25 09:20:47  Http_state      ready
    2024-09-25 09:20:47  KW_charging_measured 0.00
    2024-09-25 09:20:47  KW_preset_calculated 1.38
    2024-09-25 09:20:47  aWattar_zone    0
    2024-09-25 09:20:47  access_control_state access_open
    2024-09-25 09:20:47  allow_charging  0
    2024-09-25 09:20:47  amp_current    6
    2024-09-25 09:20:47  amp_lvl01      6
    2024-09-25 09:20:47  amp_lvl02      10
    2024-09-25 09:20:47  amp_lvl03      12
    2024-09-25 09:20:47  amp_lvl04      14
    2024-09-25 09:20:47  amp_lvl05      16
    2024-09-25 09:20:47  amp_max16A_adapter 1
    2024-09-25 09:20:47  amp_max_cable  20
    2024-09-25 09:20:47  amp_max_wallbox 16
    2024-09-25 09:20:47  ap_password    ********
    2024-09-25 09:20:47  byPrice_min_hrs_charge 0
    2024-09-25 09:20:47  byPrice_remain_hrs_start_charge 0.00
    2024-09-25 09:20:47  byPrice_till_oclock_charge 6
    2024-09-25 09:20:47  cable_lock_state_at_box while_car_present
    2024-09-25 09:20:47  car_state      4
    2024-09-25 09:20:47  clock_time      2509240920
    2024-09-25 09:20:47  cloud_disabled  0
    2024-09-25 09:20:47  daylights_time_offset 1
    2024-09-25 09:20:47  energy_card01  0
    2024-09-25 09:20:47  energy_card02  0
    2024-09-25 09:20:47  energy_card03  0
    2024-09-25 09:20:47  energy_card04  0
    2024-09-25 09:20:47  energy_card05  0
    2024-09-25 09:20:47  energy_card06  0
    2024-09-25 09:20:47  energy_card07  0
    2024-09-25 09:20:47  energy_card08  0
    2024-09-25 09:20:47  energy_card09  0
    2024-09-25 09:20:47  energy_card10  0
    2024-09-25 09:20:47  energy_sensors  ARRAY(0x5576160c3c90)
    2024-09-25 09:20:47  error          0
    2024-09-25 09:20:47  firmware        56.8
    2024-09-25 09:20:47  force_single_phase 1_Phase
    2024-09-25 09:20:47  gmt_time_offset 101
    2024-09-25 09:20:47  hardware        V3
    2024-09-25 09:20:47  id_card01      1
    2024-09-25 09:20:47  id_card02     
    2024-09-25 09:20:47  id_card03     
    2024-09-25 09:20:47  id_card04     
    2024-09-25 09:20:47  id_card05     
    2024-09-25 09:20:47  id_card06     
    2024-09-25 09:20:47  id_card07     
    2024-09-25 09:20:47  id_card08     
    2024-09-25 09:20:47  id_card09     
    2024-09-25 09:20:47  id_card10     
    2024-09-25 09:20:47  kWh_charged_last 0.0
    2024-09-25 09:20:47  kWh_charged_total 4999.7
    2024-09-25 09:20:47  led_brightness  100
    2024-09-25 09:20:47  led_color_chg  00FFFF
    2024-09-25 09:20:47  led_color_fin  00FF00
    2024-09-25 09:20:47  led_color_idle  0000FF
    2024-09-25 09:20:47  led_save_energy 1
    2024-09-25 09:20:47  load_mgmt_cloud 0
    2024-09-25 09:20:47  load_mgmt_curramp 0
    2024-09-25 09:20:47  load_mgmt_fallbckamp 0
    2024-09-25 09:20:47  load_mgmt_grp 
    2024-09-25 09:20:47  load_mgmt_grpamp 32
    2024-09-25 09:20:47  load_mgmt_minamp 6
    2024-09-25 09:20:47  load_mgmt_prio  50
    2024-09-25 09:20:47  load_mgmt_sec  6306414
    2024-09-25 09:20:47  name_card01    e208
    2024-09-25 09:20:47  name_card02    n/a
    2024-09-25 09:20:47  name_card03    n/a
    2024-09-25 09:20:47  name_card04    n/a
    2024-09-25 09:20:47  name_card05    n/a
    2024-09-25 09:20:47  name_card06    n/a
    2024-09-25 09:20:47  name_card07    n/a
    2024-09-25 09:20:47  name_card08    n/a
    2024-09-25 09:20:47  name_card09    n/a
    2024-09-25 09:20:47  name_card10    n/a
    2024-09-25 09:20:47  norway_mode    0
    2024-09-25 09:20:47  phases_available 111000
    2024-09-25 09:20:47  reboot_counter  134
    2024-09-25 09:20:47  reboot_timer    6313187739
    2024-09-25 09:20:47  sched_dbl_press 0
    2024-09-25 09:20:47  schedule        AAAAAAAAAAAAAAAA
    2024-09-25 09:20:47  serial_nr      065089
    2024-09-25 09:20:47  state          not_allowed
    2024-09-25 09:20:47  stop_at_num_kWh 16
    2024-09-25 09:20:47  stop_kWh_state_useless 0
    2024-09-25 09:20:47  temperature_tma_1 19.1
    2024-09-25 09:20:47  temperature_tma_2 23.8
    2024-09-25 09:20:47  unlocked_by_card 0
    2024-09-25 09:20:47  version        B
    2024-09-25 09:20:47  wifi_enabled    1
    2024-09-25 09:20:47  wifi_flags      2
    2024-09-25 09:20:47  wifi_state      3
    2024-09-25 09:20:47  wlan_key        ********
    2024-09-25 09:20:47  wlan_ssid      ********
Attributes:
  DbLogExclude .*
  devStateIcon disabled.*:electric_car_icon@darkgrey not_allowed.*:electric_car_icon@white ready_no_car.*:electric_car_icon@blue charging.*:electric_car_icon@darkorange waiting_for_car.*:electric_car_icon@pink finished.*:electric_car_icon@lime error.*:electric_car_icon@red
  event-on-change-reading .*
  event-on-update-reading state
  eventMap  /allow_charging 1:on/ /allow_charging 0:off/
  interval  30
  kW_measured_corr_value 1.00
  room      0_Keller,5_Garage
  stateFormat state
KW_charging_measured kW
  used_api_keys all
  webCmd    on:off
# Pi3 (BBB;FB7390)
# TCM310, CUL V4, HM-CFG-LAN,JeeLink,Tradfri,ESP32-Cam@MQTT: Wasseruhr

isy

Moin Ingo,
das ist bei mir auch so, stört aber nicht wirklich.
Ich denke, das Modul wird schon lange nicht mehr gepflegt.

Es gibt eine httpmod Funktion, die recht gut funktioniert und auch unterstützt wird.
https://forum.fhem.de/index.php?topic=136856.0

Ich habe die httpmod Def implementiert, nutze aber produktiv noch das obige Modul, halt mit seinen Bugs.

VG Helmut
Ein Weg wird erst zu einem Weg, wenn man ihn geht

Prof. Dr. Peter Henning

Das Modul wird in der Tat nicht mehr gepflegt, mittelfristig werden wir das aus der Distribution nehmen müssen.

Die HTTPMOD-Installation funktioniert sehr gut, allerdings sollte man dabei nicht auf den Thread, sondern auf das Wiki verweisen:

https://wiki.fhem.de/wiki/GoE_Charger

Betreffend das solare Überschussladen: Das ist prinzipiell auch schon implementiert, ebenfalls im Wiki beschrieben.

https://wiki.fhem.de/wiki/GoE_Charger#Solares_%C3%9Cberschussladen

Allerdings fehlt hier noch die automatische Umschaltung, die eine feinere Anpassung ermöglicht (z.B von 6A dreiphasig auf 16A einphasig). Dazu baue ich gerade ein entsprechendes FHEM-Modul, das auch die Einstellung solcher Grenzwerte wie "minimaler Speicherstand für die Hausversorung" ermöglicht. Ziel ist dabei, eine mindestens zu evcc gleichwertige Funktionalität zu erreichen.

Dauer noch etwas.

LG

pah

Mumpitz

Zitat von: Prof. Dr. Peter Henning am 25 September 2024, 11:07:43Das Modul wird in der Tat nicht mehr gepflegt, mittelfristig werden wir das aus der Distribution nehmen müssen.

Die HTTPMOD-Installation funktioniert sehr gut, allerdings sollte man dabei nicht auf den Thread, sondern auf das Wiki verweisen:

https://wiki.fhem.de/wiki/GoE_Charger

Betreffend das solare Überschussladen: Das ist prinzipiell auch schon implementiert, ebenfalls im Wiki beschrieben.

https://wiki.fhem.de/wiki/GoE_Charger#Solares_%C3%9Cberschussladen

Allerdings fehlt hier noch die automatische Umschaltung, die eine feinere Anpassung ermöglicht (z.B von 6A dreiphasig auf 16A einphasig). Dazu baue ich gerade ein entsprechendes FHEM-Modul, das auch die Einstellung solcher Grenzwerte wie "minimaler Speicherstand für die Hausversorung" ermöglicht. Ziel ist dabei, eine mindestens zu evcc gleichwertige Funktionalität zu erreichen.

Dauer noch etwas.

LG

pah

Hallo pah

Ich bekomme in den nächsten Tagen meinen Go- echarger geliefert. Darf ich fragen wie weit du mit dem Modul bist?
Kann ich irgendwie behilflich sein mit tests oder ähnlichem?

Muss allerdings sagen das meine Programmierkenntnisse beschränkt sind und das e-auto erst bestellt ist:-)

Prof. Dr. Peter Henning

#418
Oh, das wird noch ne Weile dauern, weil ich im Moment ziemlich viele Baustellen habe. Alle Details zur Einbindung des go-e inklusive solarer Überschussladung per HTTPMOD sind aber hier bereits dokumentiert: https://wiki.fhem.de/wiki/GoE_Charger.

Auch das Festlegen des minimalen Speicherstandes funktioniert wunderbar - derzeit manuell vor Beginn des Ladevorgangs. Funktionalität von evcc ist also vorhanden, nur derzeit noch nicht vollautomatisch.

LG

pah