Hallo zusammen
ich möchte gerne den o.g LBS erweitern und hatte schon Kontakt mit Stefan aufgenommen, der hat mir den ersten Hinweis gegeben. Der LBS ist unter
https://github.com/bluegaspode/edomi...002360_lbs.php zu sehen.
Die Spek. des Modbus vom Plenticore anbei hier:
https://www.kostal-solar-electric.co...pec_hybrid.pdf
Ich würde gerne das LBS erweitern damit ich hier das Battey Managment von Edomi aus steuern kann. Anschließend werde ich versuchen mit dem LBS Modbus TCP Master Write das jeweilige Setting vorzunehmen.
Jetzt habe ich den Ausgang versucht zu erweitern :
und soweiter. Ich habe es mal versucht zu ändern, aber dann funktionierten die anderen Ausgänge zum Teil nicht mehr (In DEF oben habe ich den Ausgang natürlich auch hinzu gefügt. )
Anbei noch die Bemerkung von Stefan:
What's worng?
Vielen Danke
Gruß
Kalla
ich möchte gerne den o.g LBS erweitern und hatte schon Kontakt mit Stefan aufgenommen, der hat mir den ersten Hinweis gegeben. Der LBS ist unter
https://github.com/bluegaspode/edomi...002360_lbs.php zu sehen.
Die Spek. des Modbus vom Plenticore anbei hier:
https://www.kostal-solar-electric.co...pec_hybrid.pdf
Ich würde gerne das LBS erweitern damit ich hier das Battey Managment von Edomi aus steuern kann. Anschließend werde ich versuchen mit dem LBS Modbus TCP Master Write das jeweilige Setting vorzunehmen.
PHP-Code:
// modbus doc https://www.photovoltaikforum.com/core/attachment/81082-ba-kostal-interface-modbus-tcp-sunspec-pdf/
$recData56 = $modbus->readMultipleRegisters(71, 56, 1);
$recData100 = $modbus->readMultipleRegisters(71, 100, 100);
$recData200 = $modbus->readMultipleRegisters(71, 200, 100);
$recData320 = $modbus->readMultipleRegisters(71, 320, 8);
$recData575 = $modbus->readMultipleRegisters(71, 575, 8);
//Anbei meine Ergänzung: Würde gerne die Register von 1024 - 1082 auslesen :Kapitel 3.4 in der Spek./
$recData1000 = $modbus->readMultipleRegisters(71, 1000, 82); // ob dies so Richtig weiß ich nicht genau: /
PHP-Code:
[a#60 = --- Battery --- ]
[a#61 = Act. state of charge (%) ]
[a#62 = Battery charge current (DC) setpoint, relative Note (W) ]
*/
readLogAndSaveFloat($id, 210, "Act. state of charge (%)", 61, $recData200, 200);
// Ergänzt /
readLogAndSaveFloat($id, 1028, "Battery charge current (DC) setpoint", 62, $recData1000, 1000);
Anbei noch die Bemerkung von Stefan:
HTML-Code:
die erste Hälfte is richtig, damit hast du schonmal zwei neue Ausgänge. das readLogAndSaveFloat kan so nicht klappen. Du hast weiter oben im Script diese $recData100, $recData200, .... welche den Modbus immer an einer bestimmten Stelle mit einer bestimmten Menge an Daten ausliest. https://github.com/bluegaspode/edomi...#L201C9-L201C9 in $recData200 sind genau 100 Bytes ab Stelle 200, das heißt, du kannst damit nur Register 200-299 auslesen. Im Grunde müsstest du eine neue Zeile dorthin machen: $recData1000 = $modbus->readMultipleRegisters(71, 1000, 68); um 68 Bytes ab Stelle 1000 zu lesen. dann müsste readLogAndSaveFloat($id, 1048, "Total DC discharge energy (DC-side) (Wh)", 62, $recData1000, 1000); funktionieren (auf geändert Variable und auch geänderten Startpunkt => 1000) achten. Mach mal wirklich einen Thread im Forum auf, verweise dort auch auf den SourceCode, damit Leute schnell einen Überblick bekommen: https://github.com/bluegaspode/edomi...002360_lbs.php Grüße Stefan
What's worng?
Vielen Danke
Gruß
Kalla