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

kman_solar

Das ist es!
Ich muss die Werte genau andersrum setzen. Crazy. Und das ist mit einer neuen Version weg?
Ich mach mal das Update auf dem GoE.

und sage dann bescheid ;-)

Bjoernar


kman_solar

Das war es. Jetzt klappt es.
Demnach muss die Version mindestens 051.4 sein, sonst klappt die Logik nicht wie sie soll.

Besten Dank.

Gruß
Thorsten

PS: Jetzt geh ich erstmal Sonne tanken :-)

Bjoernar

Hier noch mein doif das für mich die Steuern übernimmt.

Der Wert vom Überschuss ist ein Durchschnittswer
t der letzten 5min. ohne den Strom vom go-e

Bisher steuere ich damit nur ein Dummy da mein ev noch nicht da ist.

Aber vielleicht hilft es dir.


([AC_Einspeisung:Einspeisung__W_5min] >= 4140) {
   use Math::Round qw/round/;
   my $Temp = (ReadingsVal("AC_Einspeisung","Einspeisung__W_5min",0)/690);
   $Temp = POSIX::floor($Temp);
   $Temp = Math::Round::round($Temp);
   $Temp = 6 if($Temp < 6);
   $Temp = 16 if($Temp > 16);
   fhem("setreading goe1_Power A $Temp");
   fhem("setreading goe1_Power P 3");
}

DOELSEIF ([AC_Einspeisung:Einspeisung__W_5min] >= 1200) {
   use Math::Round qw/round/;
   my $Temp = (ReadingsVal("AC_Einspeisung","Einspeisung__W_5min",0)/230);
   $Temp = POSIX::floor($Temp);
   $Temp = Math::Round::round($Temp);
   $Temp = 6 if($Temp < 6);
   $Temp = 16 if($Temp > 16);
   fhem("setreading goe1_Power A $Temp");
   fhem("setreading goe1_Power P 1");
}

DOELSE (
   setreading goe1_Power A 0,
   setreading goe1_Power P 0
)


kman_solar

Schau ich mir an.


ich habe auch eine Ladestrategie entwickelt, dazu nutze ich die Photovoltaik-, Akku- und Autowerte und gleiche das minütlich ab.
Schick ich dir später auch mal


Thorsten

Bjoernar


kman_solar

#246
Ich hab in die myutils eine Funktion eingebaut:
PV: 4,45kwPeak, 9,6kw Akku, Twingo ZE 22kW, GoECharger
Ist aber noch nicht ganz rund :-), klappt aber mit 1Phase super

##Beladung des ZE Renault mit myGoECharger
sub beladen($$$){
my ($ZE, $GoE, $myAkku) = @_;
my $curr_amp_calc = 10;


#state: "finished" "ready_no_car" ,,charging"  "waiting_for_car"
###################

      ##1.Beladung Fz im Normalbeladungsfall bei 90% ?
      ##oder
      ##2.Beladung soll min 60% im Auto haben
      ##  UND SoC_Akku soll nicht unter 50% sein
      ##################################################

if (    (ReadingsVal("$GoE", "state", 0 ) eq "charging") &&
      ( (ReadingsVal("$ZE", "batteryLevel", 0) >= 90) ||      ##1.
        ((ReadingsVal("$ZE", "batteryLevel", 0 ) >= 60) &&    ##2.
         (ReadingsVal("$myAkku", "SData_SoC", 0) <= 50)))
   )
      ##dann stoppen
       {
        fhem("set $GoE off")
       }

      ##b1. bei über 80% SoC kompletten Überschuss ins Auto
      ##################################################
elsif ( (ReadingsVal("$GoE", "state", 0 ) eq "charging") &&
        (ReadingsVal("$myAkku", "SData_SoC", 0 ) >= 80)
      )
        {
         $curr_amp_calc = 2 + (ReadingsVal("$GoE", "amp_current", 0 )) + ((ReadingsVal("$myAkku", "U_PPV", 0 ) - ReadingsVal("$myAkku", "U_HOUSE", 0 ))/230);
         if ($curr_amp_calc >= 16) {
            fhem("set $GoE amp_current 16")}
         elsif ($curr_amp_calc < 8){
            fhem("set $GoE amp_current 8")}
         else {
            fhem("set $GoE amp_current $curr_amp_calc")}
        }


      ##b2. Zwischen 50% und 80% SoC nur teilweise ins Auto
      ##################################################
elsif ( (ReadingsVal("$GoE", "state", 0 ) eq "charging") &&
        (ReadingsVal("$myAkku", "SData_SoC", 0 ) < 80) &&
        (ReadingsVal("$myAkku", "SData_SoC", 0 ) >= 50))
       {
        ##345 entspricht 2/3 der Leistung (oder 1,5 mal 230 ;-)
        $curr_amp_calc = 1 + (ReadingsVal("$GoE", "amp_current", 0 )) +
                         ((ReadingsVal("$myAkku", "U_PPV", 0 ) - ReadingsVal("$myAkku", "U_HOUSE", 0 ))/345);
         if ($curr_amp_calc < 8)
             {fhem("set $GoE amp_current 8")}
         elsif ($curr_amp_calc >= 16)
             {fhem("set $GoE amp_current 16")}         
         else
             {fhem("set $GoE amp_current $curr_amp_calc")}
       
       }


      ##wenn eh keine Sonne und kein Akku, dann Max-Ladestrom einstellen
      ##################################################
elsif (ReadingsVal("$GoE", "state", 0 ) eq "charging")
        {
         fhem("set $GoE amp_current 16")
##TODO: hier noch 3-phasig + Vorauswahl manuell am GoE implementieren
##      ggf eigenen elsif Zweig
        }



      ##Auto dran,Autoakku unter 60%, aber startet noch nicht
      ##################################################
if (((ReadingsVal("$GoE", "state", 0 ) eq "waiting_for_car") || (ReadingsVal("$GoE", "state", 0 ) eq "finished")) &&
        (ReadingsVal("$ZE", "batteryLevel", 0 ) < 60)) ##todo elsif machen
        {
         fhem("set $GoE on")
        }

      ##Standard-Ladewert einstellen, wenn kein Auto dran
      ##################################################
if ((ReadingsVal("$GoE", "state", 0 ) eq "ready_no_car") && ((ReadingsVal("$GoE", "amp_current", 0 ) ne 10) ||           (ReadingsVal("vorAuswahl", "state", 0 ) ne 1_10)))
        {
         fhem("set $GoE amp_current 10");
         fhem("set vorAuswahl 1_10") ##kann weg, wenn single_force_phase implementiert ist
        }



###dummy log###
fhem("set curr_amp $curr_amp_calc");


}##sub

nagelreo

Hallo,

ich habe seit ein paar Tagen einen go-eCharger V3 und auf meinem Rasp4 das Modul 46_GoECharger.pm V 0.2.5 installiert.
Das Laden inklusive Umschalten auf ein-/dreiphasig funktioniert problemlos, ist ein tolles Tool.
Dennoch habe folgende Fragen.

Gestern konnte ich das Laden beim Golf vom Bekannten testen. Funktioniert im Prinzip auch, aber nur mit 2 Phasen, max ca. 7 kW, konnte leider nicht viel ausprobieren. Im Modul wird unter phases_available 111000 angezeigt. In der go-e App schaut auch alles ok aus.
Gibt es dafür eine Erkärung?
Wo finde ich die icons zum devStateIcon?

Gruß
Rolf



Bjoernar


nagelreo

Hallo Bjoernar,

nach Auskunft vom Bekannten kann er 11 kW laden.

Gruß Rolf

Muschelpuster

Nein, ein Golf kann an AC nur 2-phasig laden. Bei seiner 35,8kWh-Batterie ist das ja auch nicht so ein Drama  ;)

Niels

https://ev-database.de/pkw/1087/Volkswagen-e-Golf
fhem @ ZBOX mit 1,6MHz Celeron, 4GB RAM & 120GB SSD mit Debian Bullseye # MiLight # Homematic via CCU3 # W&T WebIO # Rademacher DuoFern # ESPeasy # logdb@mysql # configdb@mysql # Shelly @ MQTT2 # go-eCharger mit PV-Überschussladung via DOIF

nagelreo

Danke,
das hätte ich auch selbst recherchieren können.

Bleibt noch meine Frage wo ich die Icons zum devStateIcons für das Modul 46_goecharger.pm. Mit den Hinwdisen meiner Recherche konnte ich nichts anfangen.

Gruß Rolf

Muschelpuster

fhem @ ZBOX mit 1,6MHz Celeron, 4GB RAM & 120GB SSD mit Debian Bullseye # MiLight # Homematic via CCU3 # W&T WebIO # Rademacher DuoFern # ESPeasy # logdb@mysql # configdb@mysql # Shelly @ MQTT2 # go-eCharger mit PV-Überschussladung via DOIF

kman_solar

Hier die Datei für die devstateicons.
Die lässt sich auf der GitHub Seite nicht einzeln downloaden. Einfach ins Verzeichnis kopieren (Ist auf der GitHub Seite erklärt wohin) und schon gehts.
Ich nutze zudem auch das electric_car_icon aus dem Standard für die Ereignisse, wo das Auto am Kabel mit der GoE verbunden ist.

Gruß
Thorsten

kman_solar

111000 bedeutet 3 Phasen angeklemmt (111) und 3 Phasen zum Laden bereit (000)
Wenn du einphasig lädst, wird daraus 111011, bei dreiphasig 111111 (etwas merkwürdig, aber so isses :-)

Gruß
Thorsten