Einbinden Kostal KSEM

Wenn mehr als ein Gerät an den Raspberry angeschlossen werden sollen. Z.B. ein Regler und ein Wechselrichter oder mehrere Wechselrichter. Das Maximum sind 6 Geräte pro Raspberry Pi.

Moderator: Ulrich

Lothar
Beiträge: 9
Registriert: Mi 20. Okt 2021, 08:28
Hat sich bedankt: 1 Mal

Re: Einbinden Kostal KSEM

Beitrag von Lothar »

Hallo Ullrich,

Bin immer noch auf dem Stand das meine beiden WR sichtbar sind und auch korrekte Daten zeigen . Die Batterie wird auch korrekt angezeigt aber den KSEM hab ich wohl immer noch nicht richtig eingebunden.
In der Anzeige sehe ich spannung und strom vom WE1 , WE2 und der Batterie.
Die erechnete Leistung wird nicht angezeigt.
Unter gesamte Energie wird No data angezeigt,
Netzbezug und Einspeisung wird ebenfalls no Data gezeigt.
Habe ein Dashboard aus Zähler und Relais dazu verwendet.
Ich denke ich brauche Unterstützung.

Gruss Lothar

Janniman
Beiträge: 148
Registriert: Mi 13. Okt 2021, 09:52
Hat sich bedankt: 9 Mal
Danksagung erhalten: 7 Mal

Re: Einbinden Kostal KSEM

Beitrag von Janniman »

Du hast doch im Post vorher gelesen, wie Ulrich das sieht: mache es selbst und wer es nicht kann, der hat Pech.
Anders kann ich den Kommentar von Ulrich leider nicht verstehen.

Ich habe zu dem Problem nie weiter nachgehakt, da Ulrich sicher Wichtigeres zu tun hat, als Einzelgeräte/Konstellationen zu supporten.

Außerdem wurde ja vom Ersteller der KSEM_math geschrieben, dass es einwandfrei funktioniert... nur eben bei uns nicht. Der Ersteller der KSEM_math mag/kann wohl aber sein Wissen nicht weiter teilen, oder ist so zufrieden mit seiner Lösung, dass er das Forum nicht mehr beachtet.

Vielleicht knie ich mich irgendwann dahinein, aber ich habe noch zu viele andere Baustellen. Somit bleibt mir nur, das Wissen der anderen zu kopieren und wenn möglich an meine Verhältnisse anzupassen.

Jan

Janniman
Beiträge: 148
Registriert: Mi 13. Okt 2021, 09:52
Hat sich bedankt: 9 Mal
Danksagung erhalten: 7 Mal

Re: Einbinden Kostal KSEM

Beitrag von Janniman »

Moin.
Ich habe mal etwas herumgespielt und hänge mal meine kostal_meter_math.php hier an, gleich vor der php.log Fehlermeldung. Es scheint also eines der erwarteten Eintragungen nicht zu geben.

Code: Alles auswählen

<?php
/*****************************************************************************
// Berechnung einzelner Werte um sie in einem Dashboard anzeigen zu können
//
*****************************************************************************/

// $Datenbank = Datenbank des Wechselrichters Measurement: Summen
// Hier wird der neueste Eintrag der Datenbank ausgelesen und im Array $DB1 gespeichert.
$Datenbank = "solaranzeige";
$Measurement = "Summen";
// $ch = curl_init('http://192.168.121.4/query?db='.$Datenbank.'&precision=s&q='.urlencode('select * from '.$Measurement.' order by time desc limit 1'));
$ch = curl_init('http://localhost/query?db='.$Datenbank.'&precision=s&q='.urlencode('select * from '.$Measurement.' order by time desc limit 1'));

// -------------- Namen des LOG-Eintrags geändert (diese plus zwei Zeilen) ------------
$funktionen->log_schreiben("-------------   Start  kostal_meter_math.php    --------------- ","|--",6);
$funktionen->log_schreiben("Zentraler Timestamp: ".$zentralerTimestamp,"   ",8);

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_TIMEOUT, 15); //timeout in second s
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 12);
curl_setopt($ch, CURLOPT_PORT, 8086);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$Ergebnis = array();

$Ergebnis["result"] = curl_exec($ch);
$Ergebnis["rc_info"] = curl_getinfo ($ch);
$Ergebnis["JSON_Ausgabe"] = json_decode($Ergebnis["result"],true,10);
$Ergebnis["errorno"] = curl_errno($ch);

if ($Ergebnis["rc_info"]["http_code"] == 200 or $Ergebnis["rc_info"]["http_code"] == 204) {
$Ergebnis["Ausgabe"] = true;
}


curl_close($ch);
unset($ch);


if (!isset($Ergebnis["JSON_Ausgabe"]["results"][0]["series"])) {
log_schreiben("Es fehlt die Datenbank solaranzeige mit dem Measurement Summen oder sie ist leer.","|- ",3);
log_schreiben("Fehler: ".$Ergebnis["JSON_Ausgabe"]["results"][0]["error"],"|- ",4);
}
else {
for ($h = 1; $h < count($Ergebnis["JSON_Ausgabe"]["results"][0]["series"][0]["columns"]); $h++) {
$DB1[$Ergebnis["JSON_Ausgabe"]["results"][0]["series"][0]["columns"][$h]] = $Ergebnis["JSON_Ausgabe"]["results"][0]["series"][0]["values"][0][$h];
}
log_schreiben("Datenbank: solaranzeige DB1 ".print_r($DB1,1)," ",10);
}

// Hier wurde die Datenbank "solaranzeige" Measurement "Summen" ausgelesen.
// Die Daten sind jetzt im Array $DB1[]
// Alle Daten des KOSTAL Smart Energy Meter sind im Array $aktuelleDaten[]

/*****************************************************************************/
// Jetzt wird die Berechnung gestartet
// Zur Überprüfung werden die Werte bei Tracelevel = 8 in die LOG Datei geschrieben.
/*****************************************************************************/

log_schreiben(" PV-Leistung: ".$DB1["AC_Leistung_Gesamt"],"",8);
log_schreiben(" Bezug: ".$aktuelleDaten["Active_powerP"],"",8);
log_schreiben(" Einspeisung: ".$aktuelleDaten["Active_powerM"],"",8);
log_schreiben(" Gesamtverbrauch: ".($DB1["AC_Leistung_Gesamt"]-$aktuelleDaten["Active_powerM"]+$aktuelleDaten["Active_powerP"]),"",8);

// So wird die Zusatz Query zusammengestellt.
// Alle Daten werden in die Datenbank des KOSTAL Smart Energy Meter in ein neues Measurement "Dashboard" geschrieben.
// Der Zeitstempel ist der 'zentrale Timestempel'
// Damit ist die Visualisierung in Grafana sehr einfach.
$aktuelleDaten["ZusatzQuery"] = "Dashboard Erzeugung=".$DB1["AC_Leistung_Gesamt"].",Bezug=".$aktuelleDaten["Active_powerP"];
$aktuelleDaten["ZusatzQuery"] .= ",Einspeisung=".$aktuelleDaten["Active_powerM"].",Gesamtverbrauch=".($DB1["AC_Leistung_Gesamt"]-$aktuelleDaten["Active_powerM"]+$aktuelleDaten["Active_powerP"]);
$aktuelleDaten["ZusatzQuery"] .= " ".$aktuelleDaten["zentralerTimestamp"];

?>
Nun die Fehlermeldung:

Code: Alles auswählen

Aus dem php.log:
[21-May-2023 14:23:18 Europe/Berlin] PHP Notice:  Undefined index: AC_Leistung_Gesamt in /var/www/html/kostal_meter_math.php on line 55
[21-May-2023 14:23:18 Europe/Berlin] PHP Notice:  Undefined index: AC_Leistung_Gesamt in /var/www/html/kostal_meter_math.php on line 58
[21-May-2023 14:23:18 Europe/Berlin] PHP Notice:  Undefined index: AC_Leistung_Gesamt in /var/www/html/kostal_meter_math.php on line 64
[21-May-2023 14:23:18 Europe/Berlin] PHP Notice:  Undefined index: AC_Leistung_Gesamt in /var/www/html/kostal_meter_math.php on line 65
Also hat der Ersteller der "kostal_meter_math.php" etwas bei sich hinzugefügt, was zumindest ich nicht in meiner Datenbank habe.
In einem Measurement (vermutlich in "Summen", da dies oben ausgelesen wird) eine Serie hinzuzufügen ginge ja, aber dies müsste, wenn es nur um "AC_Leistung_Gesamt" ginge, von woanders dies vorbefüllt werden. Wenn ja, woher? Es gibt bei mir kein "AC_Leistung_Gesamt", mit dem ja gerechnet wird, um dies in ein (bei mir nicht vorhandenes Measurement "Dashboard"), gespeichert zu werden. Dass dieses Measurement ("Dashboard") nicht angelegt wird ist ja klar, weil es keine gültigen Datensätze gibt.
Andererseits frage ich mich, warum dann diese Abfrage aus der kostal_meter_math nicht greift

Code: Alles auswählen

log_schreiben("Es fehlt die Datenbank solaranzeige mit dem Measurement Summen oder sie ist leer.","|- ",3);
log_schreiben("Fehler: ".$Ergebnis["JSON_Ausgabe"]["results"][0]["error"],"|- ",4);
Denn es können ja keine Daten kommen (da nicht vorhanden).

Für Profis sicher kein Problem, aber ich suche mir einen Wolf.

Jan

Lothar
Beiträge: 9
Registriert: Mi 20. Okt 2021, 08:28
Hat sich bedankt: 1 Mal

Re: Einbinden Kostal KSEM

Beitrag von Lothar »

So geht es mir auch.
Ich versuche nun tiefer einzusteigen.
Anstatt in Foren zu suchen ob jemand eine Lösung hat,
nutze ich die Zeit und lese mich tiefer ein.
Vielleicht hab ich Erfolg.
Schauen wir mal .....

Pol3cat
Beiträge: 28
Registriert: Di 21. Mär 2023, 09:37
Hat sich bedankt: 5 Mal
Danksagung erhalten: 2 Mal

Re: Einbinden Kostal KSEM

Beitrag von Pol3cat »

Hallo Zusammen,
ist hier jemand schon weiter gekommen und hat zwei Kostal-WR + KSEM mit einer fertigen _math Datei am laufen?
Mir fehlt es da an PHP Kenntnisse und scheitere daran....

Danke.
23.7kWp
30 Aleo LEO Black a 395W auf Ostseite
30 Aleo LEO Black a 395W auf Westseite
2x Plenticore plus 10.0 mit KSEM
im Betrieb seit 14.04.2023

Sunny73
Beiträge: 11
Registriert: Di 5. Sep 2023, 10:36
Wohnort: 83xxx
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Einbinden Kostal KSEM

Beitrag von Sunny73 »

Hallo zusammen,
erster Post und dann gleich ins Volle! 😎😂

Ich bekomme nächste Woche meine Anlage:
- KOSTAL plenticore 10 G2
- KOSTAL plenticore 5.5 G1
- KOSTAL KSEM

Nachdem ich vor Jahren mal meine Wetterstation an einem Raspi betrieben habe, bin ich über Euch hier gestolpert, weil ich mir dachte, dass wäre doch auch ein Projekt für die PV-Anlage. Und jetzt bin ich hier am Einlesen.

Aber bei allem was ich bisher so gelesen habe ist das wohl alles ohne Programmiererkenntnissen nur sehr schwer umzusetzen.

Macht mir bitte Hoffnung.

LG
Sunny
------------------------------------------------
14 kWp - 380 Watt Heckert
25 x Süd, 12 x Nord
- KOSTAL plenticore plus 10 G2
- KOSTAL plenticore plus 5.5 G1
(im Schwarm)
- KOSTAL KSEM

pv@lindenfeld.wf
Beiträge: 7
Registriert: Fr 4. Nov 2022, 18:22
Wohnort: Wolfenbüttel

Re: Einbinden Kostal KSEM

Beitrag von pv@lindenfeld.wf »

Hej, ich suche mir die Finger wund nach einem Dashboard für mein KSEM. Ich habe meinen PI neu aufgesetzt und hatte vorher nur den Senec Speicher drin. Der funktioniert jetzt auch noch gut. KSEM Daten habe ich auch in der influx. Nur würde ich gerne ein nettes Dashboard finden. Ciao Reiner
Reiner Brachvogel
rb@lindenfeld.wf
----------------------
13,5 kwp
Kostal Pico 20
Kostal Smart Meter
Kostal Enector Wallbox
Senec Batterie 10 kwh

Benutzeravatar
Ulrich
Administrator
Beiträge: 5502
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 152 Mal
Danksagung erhalten: 875 Mal
Kontaktdaten:

Re: Einbinden Kostal KSEM

Beitrag von Ulrich »

Im Verzeichnis "Zähler" gibt es ein allgemeines Dashbord für Zähler. Das heißt "SmartMeter" das sollte als Grundgerüst reichen. Den Rest musst du dann anpassen.
-----------------------------------------------------
Ulrich . . . . . . . . [Projekt Administrator]

pv@lindenfeld.wf
Beiträge: 7
Registriert: Fr 4. Nov 2022, 18:22
Wohnort: Wolfenbüttel

Re: Einbinden Kostal KSEM

Beitrag von pv@lindenfeld.wf »

Danke. Damit bekomme ich Netzbezug und Einspeisung hin. Hast Du ne Idee, wie ich die Daten der Kostal Wallbox da rein bekomme?
Reiner Brachvogel
rb@lindenfeld.wf
----------------------
13,5 kwp
Kostal Pico 20
Kostal Smart Meter
Kostal Enector Wallbox
Senec Batterie 10 kwh

Lothar
Beiträge: 9
Registriert: Mi 20. Okt 2021, 08:28
Hat sich bedankt: 1 Mal

Re: Einbinden Kostal KSEM

Beitrag von Lothar »

Hallo Zusammen,
Ich habe inzwischen aufgegeben den KSEM zu integrieren.
Habe inzwischen einen RASPI mit homeassistant aufgesetzt.
Dort lässt sich die ganze Kostal-Welt und mehr integrieren.

Antworten

Zurück zu „Multi-Regler-Version [ bis zu 6 Geräten an einem Raspberry Pi ]“