EVSE-WB Modbus - Register nicht beschreibbar

Fragen und Antworten zur Hardware
Antworten
elektrodude
Beiträge: 33
Registriert: Do 26. Nov 2020, 19:58

EVSE-WB Modbus - Register nicht beschreibbar

Beitrag von elektrodude »

Hallo,

ich bin gerade dabei mit einer EVSE-WB über Modbus zu kommunizieren.
Hierzu verwende ich einen USB/UART Adapter der an RX/TX der EVSE-WB angeschlossen ist.
Als Code verwende ich das Beispiel aus der EVSE-WB Anleitung.
Das Lesen von Registern klappt auch, das Schreiben jedoch nicht (hier auf Register 2003 soll eine "0" geschrieben werden).
Es kommt auch keine Fehlermeldung, aber Wert bleibt beim default Wert stehen ("1").

Habt ihr eine Idee?

#!/usr/bin/python3
from pymodbus.client.sync import ModbusSerialClient
client = ModbusSerialClient(method = "rtu", port="/dev/ttyUSB0", baudrate=9600, stopbits=1, bytesize=8, timeout=1)
client.write_register(2003,0,unit=1)
# read back register
rq = client.read_holding_registers(2003,1,unit=1)
print(rq.registers)

aiole
Beiträge: 1003
Registriert: Di 12. Mai 2020, 10:54

Re: EVSE-WB Modbus - Register nicht beschreibbar

Beitrag von aiole »

???
https://openwb.de/forum/viewtopic.php?f=8&t=5874
Wir nutzen leider kein Python.

elektrodude
Beiträge: 33
Registriert: Do 26. Nov 2020, 19:58

Re: EVSE-WB Modbus - Register nicht beschreibbar

Beitrag von elektrodude »

meine vermutung war eher, dass man bei der evse-wb noch den schreibzugriff aktivieren muss oder so. kann das sein?
modbus musste ich ja auch erst über den taster aktivieren...

aiole
Beiträge: 1003
Registriert: Di 12. Mai 2020, 10:54

Re: EVSE-WB Modbus - Register nicht beschreibbar

Beitrag von aiole »

nicht, dass ich wüsste

elektrodude
Beiträge: 33
Registriert: Do 26. Nov 2020, 19:58

Re: EVSE-WB Modbus - Register nicht beschreibbar

Beitrag von elektrodude »

Hier schein jemand, genau das gleiche Problem zu haben:
https://forum-raspberrypi.de/forum/thre ... ben-nicht/

Allerdings nicht gelöst :-(

Gibt es eigentlich für die EVSE-WB Platine einen offiziellen Support?

elektrodude
Beiträge: 33
Registriert: Do 26. Nov 2020, 19:58

Re: EVSE-WB Modbus - Register nicht beschreibbar

Beitrag von elektrodude »

Nachtrag: als Feedback auf den write Befehl bekomme ich den Modbus Fehlercode 01 (Illegal Function).

Das deutet darauf hin, dass der Slave im falschen Zustand ist. Gibt es da wirklich keine zusätzlichen Einstellungen für das schreiben?

Leider ist in der EVSE-WB Doku im Beispiel nur der Lesezugriff gezeigt, nicht jedoch das Schreiben.

elektrodude
Beiträge: 33
Registriert: Do 26. Nov 2020, 19:58

Re: EVSE-WB Modbus - Register nicht beschreibbar

Beitrag von elektrodude »

Problem selbst gelöst: Die EVSE-WB unterstützt offensichtlich nur das Schreiben von mehreren Bytes = Function Code 16 (nicht einzelne Bytes = function code 6).

D.h. man muss den pymodbus Befehl client.write_registers verwenden (mit "s" hinten).

Wäre schon sinnvoll, sowas in der Doku zu erwähnen...

Antworten