Beladungssteuerung KACO/EnergyDepot Centurio Hybrid Wechselrichter

Hallo Herr Hummelsberger (KACO),

Es geht um eine Einbindung meines KACO/EnergyDepot Centurio Hybrid Wechselrichter in meine Hausautomatition (IPSymcon).
Ich würde die Ladesteuerung (Vorgabe der Beladeleistung) gerne selbst über IPSymcon erledigen.

“Um Wertvorgaben an den Primus zu setzten, müsste erstens eine Konfiguration im OpenEMS gesetzt werden, dass der Centurio nicht mehr im “Read-Only”-Modus eingebunden wird. Zweitens müsste dann der OpenEMS-Eigenverbrauchsoptimierungscontroller aktiviert werden. Dieser kann dann mit den Less/Greater-Channels von extern (z. B. aus PHP/IpSymcon) beschränkt werden.
Die Änderungen im OpenEMS kann auf dem Primus leider nur KACO selbst machen.”

Können Sie mir hierzu weiter helfen?

Mit freundlichen Grüßen

Auch wenn ich keinerlei Info und Antwort von seitens KACO seit Dezember 2018 erhalten habe, möchte ich anderen diese Infos zum Abrufen der Daten (hier im Beispiel mit IpSymcon) nicht vorenthalten:

<?php

$api_url = "http://"IP von Primus (Raspberry):8084/rest/channel/";

        // API-URL		            // Symcon-ID
$apis = array(
   "meter0/ActivePower"		  	     => 42437 ,
	"meter0/ActivePowerL1"		     => 30925 ,
	"meter0/ActivePowerL2" 		     => 31362 ,
	"meter0/ActivePowerL3" 		     => 15890 ,
	"meter0/Frequency"                   => 25781 ,
	"meter0/ReactivePower"               => 31485 ,
	"meter0/ReactivePowerL1"             => 12107 ,
   "meter0/ReactivePowerL2"                  => 18857 ,
   "meter0/ReactivePowerL3"                  => 38027 ,
// "meter0/ActiveProductionEnergy" =>  , (gibt keine Werte aus...)
// "meter0/ActiveConsumptionEnergy"=>  , (gibt keine Werte aus...)
	"meter1/ActivePower"                 => 53352 , //PV
	"ess0/Soc"		 	     => 57269 , //Batterie
   "ess0/ActivePower"                        => 45750 , //Batterie
	);

     foreach ($apis as $channel => $symcon_id) {
	// Werte über die Rest-API abfragen
	$curl = curl_init($api_url.$channel);
	curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($curl, CURLOPT_TIMEOUT,        60);
	$data = curl_exec($curl);
	curl_close($curl);
	if ($var = json_decode($data)) {
		// Hier nur weiter machen, wenn Antwort $data wirklich im JSON-Format ist...
		$wert = is_numeric($var->value) ? $var->value : 0;
		if ($channel ==  "ess0/ActivePower") $wert *= -1;           //Vorzeichen vertauschen
		// Übergabe an Symcon
	SetValueInteger($symcon_id, $wert);
	} else {
		//echo("Unerwartete Antwort $data von $api_url$channel erhalten");
		}
	}
	
?>
1 Like

Und hier das Script zum Setzten eines der Parameter:

<?php
//    ----    IPSymcon-Variable
$Power = GetValue (49527);
$curl = curl_init("http://IP:8084/rest/channel/ess0/SetActivePowerEquals");
// /channel/ess0/SetReactivePowerEquals");  // andere getestete mögliche Parameter
// /channel/ess0/SetActivePowerLessOrEquals"); // andere getestete mögliche Parameter 
// /channel/ess0/SetActivePowerGreaterOrEquals"); // andere getestete mögliche Parameter
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($curl, CURLOPT_TIMEOUT,        60);
        curl_setopt($curl, CURLOPT_POST,		   true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, 	   json_encode(array('value' => $Power, "type" => "INTEGER")));
        $antwort = curl_exec($curl);
        curl_close($curl);
    ?>
1 Like

Im Primus (Raspberry) unter “IP Primus”:8080/System/console (admin:admin) unter OSGi -> Log Service kann kontrolliert werden ob die Übergabe funktioniert oder es noch Fehlermeldungen gibt.

Viel Spass damit

Grüße Willi

Hallo,

ich war bis 27.05. in Elternzeit.
Falls Sie noch Fragen haben stehe ich gern zur Verfügung.

Mit freundlichen Grüßen
Andreas Hummelsberger

Hallo Herr Hummelsberger,

gibt es denn die Möglichkeit weitere Werte auszulesen, wie zum Beispiel die Spannungen von PV1 und PV2 sowie der Batterie? Über ETerm werden diese ja auch angezeigt…

Und die kWh Werte des Tages?

Wann ist die Notstromoption (Software) endlich fertig?

Mit freundlichen Grüßen

1 Like

Hallo zusammen,

ich bin bei meiner Suche auf diesen Beitrag gestoßen, weiß aber nicht, ob es bei mir weiterhilft. Ich möchte mit meinem KACO blueplanet hybrid eine Freigabe meiner Wallbox, ein einfaches Model mit reiner Freigabe über potentialfreien Kontakt, nach Akkuladestand durchführen. Akku ist ein BYD mit 13,8kWh. Kann ich auf diese Daten (Ladestand des Akkus) über OpenEMS zugreifen?

Grüße
Paul

Hallo Paul,

in der Doku steht beschrieben wie Du an die Werte kommst zum Auslesen.
https://docs.fenecon.de/de/_/latest/fems/apis.html
Es gibt auch die Möglichkeit ein Relaismodul anzuschließen und über FEMS dieses bei definierbaren Werten zu schalten.
https://docs.fenecon.de/de/_/latest/fems/fems-app/schwellwertsteuerung.html
https://fenecon.de/fems/fems-relais-2/

Grüße Willi

Hallo Willi,

das FEMS von Fenecon habe ich nicht, habe den Umrichter so gekauft. Ist allerdings auch angefragt, scheint aber nicht so einfach zu sein, da dies nicht direkt vertrieben wird…

Einen anderen Weg um ohne FEMS an die Werte zu kommen gibt es nicht oder? Ich hatte an einen Rasperry Pi gedacht um die Werte für den Akkustand auszulesen. Geht aber vermutlich weder über den KACO, noch über den BYD HVM oder hat hierzu jemand eine Idee?

Viele Grüße
Paul

Hallo Paul,

momentan ist es nur mit dem FEMS von Fenecon oder dem Hy-Control von KACO möglich den KACO Hybrid auszulesen.

Wenn Du aber nur den SOC (und noch einige interessante weitere Werte) auslesen möchtest, das nutze ich auch, schau mal hier:

https://www.photovoltaikforum.com/core/attachment/134240-readbyd-zip/

Grüße Willi

1 Like

Hallo Willi,

das hört sich sehr vielversprechend an, ich schaue es mir die Tage mal an. Habe bisher noch kein Netzwerk am BYD angeschlossen…

Danke!