question

onkel-markus avatar image
onkel-markus asked

ESS Mode 3 entladen funktioniert nicht

Ich habe einen Multiplus 48 3000 verbunden mit einem Cerbo und 3 Phylontec 3500C.

Alles ist im Cerbo sichtbar !

Die Anlage ist auf ESS gestellt, Mode 3 ist aktiviert, Verbindung mit Modbus TCP ist in Ordnung.

Schreibe ich in Register 37 den Wert 500 ( 500 Watt laden ) so werden meine Batterien geladen.

( Zeigt der Cerbo und die Batterien an )

Schreibe ich in Register 37 den Wert -500 und in Register 38 ( wie bschrieben n der Doku ) eine 1, so passiert gar nichts.2022-10-31-10-24-28-greenshot.jpgDas AC Power Meter ist mit meiner SPS verbunden und diese soll den Stromfluß des Victron steuern.2022-10-31-10-20-56-greenshot.jpgVersion des Multiplus

2022-10-31-10-21-45-greenshot.jpg

Version des Cerbo

Falls weitere Infos nötig sind, bitte hier schreiben.

Und vielen Dank für die Hilfe

Markus

ess discharging
1 comment
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

Matthias Lange - DE avatar image Matthias Lange - DE ♦ commented ·
@Onkel_Markus Verschoben in den Modification Bereich, für Mode 3 gibt es keinen offiziellen Support.
0 Likes 0 ·
7 Answers
onkel-markus avatar image
onkel-markus answered ·

Eigendlich Schade, weil in der Dokumenation angepriesen, für die Industrie eventuell wichtig und für mich ein Kaufgrund.

Da das Laden der Batterie ja via ESS Mode 3 funktioniert, dachte ich das Entladen würde nur an irgendeiner Nichtigkeit hängen bleiben....

Vielen Dank

Markus

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

muster nuster avatar image
muster nuster answered ·

Hallo, bin zufällig hier gelandet.

Ich fahre auch Mode 3 die Signale kommen aber über Nodered im iobroker.... Hier mal die Auflösung:


0 bis 32500 = 0-32500Watt laden

65535 bis 32501 = 1-32KW einspeisen.

Das hängt mit dem Datentyp zusammen, den du sendest...

Schreibe mal 65000 und du speist 500 Watt ein :)




2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

sebdehne avatar image
sebdehne answered ·

Ich benuzte auch ESS mode 3 und das funktioniert super. Modbus-TCP habe ich aufgegeben weil register 2704 den datentype uint16 hat und es nicht möghlich ist negativ -1 to schreiben. https://community.victronenergy.com/questions/168029/mqttdbus-mapping-for-maxchargepower-and-maxdischar.html?childToView=168686#answer-168686

Ich benuzte MQTT anstadt Modbus-TCP und das funktioniert viel besser. https://github.com/sebdehne/SmartHomeServer/blob/master/src/main/kotlin/com/dehnes/smarthome/victron/VictronService.kt#L170-L185


1 comment
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

regenwetter avatar image regenwetter commented ·

Das Register 2704 ist (nach der Tabelle die ich habe Rev. 43) auch nur für "ESS Mode 2".

Mit dem Register begrenzt man im ESS Mode 2 die Entladeleistung auf den Wert, den man dort in Watt vorgibt.

0 Likes 0 ·
muster nuster avatar image
muster nuster answered ·

@sebdehne daher habe ich oben ja auch geschrieben, dass man zum Einspeisen die Werte von 65535 rückwärts verwenden soll.

Sähe dann in Nodered als Modbusfeeder so aus:


msg.payload = {

value: 65535 - msg.payload,

'fc': 6,

'unitid': 227,

'address': 37,

'quantity': 1

}

return msg

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

sebdehne avatar image
sebdehne answered ·

@muster nuster Ja das habe ich auch schon probiert, aber das geht leider nicht, da det dataentype uint16 ist. Wenn du 65535 schreibts, dan heist das auch 65535. Das wird nicht in eine -1 umgewandelt.

Aber MQTT funktioniert super; Modbus-TCP is nicht nötwendig.

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

muster nuster avatar image
muster nuster answered ·

In der Frage ging es um ModbusTCP.

(Wir haben verstanden, dass MQTT auch eine Lösung ist, danke dafür! )

Ich fahre mein ESS selbst im Mode 3 und mache genau das was da oben steht ;)


Zur Erklärung: Der Datentyp Integer hält Daten von -32k bis 32k. Ein unsigned Integer 0-65k

https://www.arduino.cc/reference/de/


Wenn man in einen Integer nun Daten speichert die größer sind als sein Wertebereich, dann läuft dieser einfach über.

sprich:

0=0

1=1

2=2

...

...

32500=32500

32501= -32500

32502= -32499

...

...

65533 = -2

65534 = -1

65535 = 0



Wenn man das jetzt weiter treibt, dann wären

65536 = 1

65536 = 2

65536 = 3


Gruß und viel Erfolg




2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

muster nuster avatar image
muster nuster answered ·

Vielleicht noch ergänzend:

Der Datentyp zum Speichern der eingehenden Variable ist am Victron Fix.

Während der Sender stets alles mögliche zum MP senden kann, ist dieser nur in der Lage zw -32k und 32k Daten zu halten.

Das stellt man sich wie ein 3-Stelliges Zählwerk vor.

Wenn man da die Zahl 999 eingibt ist noch alles okay.

Wenn man die 1000 eingibt läuft es über und steht wieder bei 0 ...

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

Related Resources

Additional resources still need to be added for this topic