Victron-Integration

Anfragen zum Erstellen von Modulen, Fragen zu Modulen
ama
Beiträge: 70
Registriert: So Okt 14, 2018 7:38 pm

Re: Victron-Integration

Beitrag von ama »

Hallo snaptec,

also ich habe meine Victron Hardware auch noch nicht. Aber es gibt von Victron eine Raspberry Portierung des CCGX als Open Source. Diese habe ich mir mal geholt und auf nem Raspberry installiert. Die Software funktioniert einwandfrei, hat aber keine weitere Hardware dran (kein Gridmeter, Kein Victron Multi). Mein SMA Wechselrichter wird über Modbus TCP schon mal perfekt abgefragt - das CCGX zeigt die Solare Produktion mit allen Details der drei Phasen ohne weitere Config.

Damit habe ich Dein Modul mal probiert. Hier der Output:

pi@ladebox:/var/www/html/openWB $ sudo python victron.py 192.168.178.37 100
grid 2600, 2601, 2602
Traceback (most recent call last):
File "victron.py", line 17, in <module>
resp= client.read_holding_registers(2600,2,unit=mid)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/common.py", line 114, in read_holding_registers
return self.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/sync.py", line 10 6, in execute
raise ConnectionException("Failed to connect[%s]" % (self.__str__()))
pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] Failed to co nnect[ModbusTcpClient(192.168.178.37:502)]

Hilft das schon mal weiter, bis Jemand mit wirklicher Victron Hardware versuchen kann?

Danke AMA
openWB
Site Admin
Beiträge: 7901
Registriert: So Okt 07, 2018 1:50 pm

Re: Victron-Integration

Beitrag von openWB »

Das sagt nur aus das kein ModbusTCP teilnehmer antwortet.



Das Modul hat allerdings Ethernet und ModbusTCP.
Hier wäre dann ein tester gefragt der die Hardware hat.
Supportanfragen bitte NICHT per PN stellen.
Hardwareprobleme bitte über die Funktion Debug Daten senden mitteilen oder per Mail an support@openwb.de
ama
Beiträge: 70
Registriert: So Okt 14, 2018 7:38 pm

Re: Victron-Integration

Beitrag von ama »

Hallo snaptec,

in der Raspberry Portierung kann man auch einen Demo Modus aktiveren. Der simuliert dann Werte. Dazu habe ich auch das Modbus TCP Protokoll im Demo Mode aktiviert.#

Jetzt sieht die Antwort so aus:

pi@ladebox:/var/www/html/openWB $ sudo python victron.py 192.168.178.37 100
grid 2600, 2601, 2602
Traceback (most recent call last):
File "victron.py", line 17, in <module>
resp= client.read_holding_registers(2600,2,unit=mid)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/common.py", line 114, in read_holding_registers
return self.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/sync.py", line 107, in execute
return self.transaction.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 136, in execute
full=full
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 199, in _transact
packet = self.client.framer.buildPacket(packet)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/framer/socket_framer.py", line 212, in buildPacket
message.function_code)
struct.error: cannot convert argument to integer
Koche
Beiträge: 14
Registriert: Di Jun 18, 2019 7:05 am

Re: Victron-Integration

Beitrag von Koche »

Hallo,

ich bin neu hier, ich interesiere mich auch für die Integration der Victrone Produkte da ich Zeit 2017 so eine Anlage am Laufen habe. Zeit Montag besitze wir jetzt auch eine Hyundai Ioniq den ich an der OpenWB laden kann.

Wie kann ich mit meiner Anlage unterstützen das die Integration der Victrone Produke funktioniert, leider habe ich keine Programmiererfahrung und auch nicht so gute Linux Kenntnisse.

LG Michael
Koche
Beiträge: 14
Registriert: Di Jun 18, 2019 7:05 am

Re: Victron-Integration

Beitrag von Koche »

Hallo,

Ich habe jetzt die Datei victron.py.zip entpackt und die Datei ins Downloadorder kopiert und aus geführt.
Ich habe es auch mit 2 Unit ID einmal 100 und 242 versucht, mit der 100 Unit ID und 820 Adresse bekomme ich Werte in meiner Hausautomtisierung (loxone) auszulessen.
folgende Meldung bekomme ich bei Putty.

pi@openWB:~/Downloads $ sudo python victron.py 192.168.178.58 100
grid 2600, 2601, 2602
Traceback (most recent call last):
File "victron.py", line 17, in <module>
resp= client.read_holding_registers(2600,2,unit=mid)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/common.py", line 114, in read_holding_registers
return self.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/sync.py", line 106, in execute
return self.transaction.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 149, in execute
broadcast=broadcast
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 213, in _transact
packet = self.client.framer.buildPacket(packet)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/framer/socket_framer.py", line 212, in buildPacket
message.function_code)
struct.error: cannot convert argument to integer
pi@openWB:~/Downloads $

pi@openWB:~/Downloads $ sudo python victron.py 192.168.178.58 242
grid 2600, 2601, 2602
Traceback (most recent call last):
File "victron.py", line 17, in <module>
resp= client.read_holding_registers(2600,2,unit=mid)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/common.py", line 114, in read_holding_registers
return self.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/sync.py", line 106, in execute
return self.transaction.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 149, in execute
broadcast=broadcast
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 213, in _transact
packet = self.client.framer.buildPacket(packet)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/framer/socket_framer.py", line 212, in buildPacket
message.function_code)
struct.error: cannot convert argument to integer
pi@openWB:~/Downloads $

Ich hoffe das ich weiter helfen kann und wir es schaffen

LG Michael
openWB
Site Admin
Beiträge: 7901
Registriert: So Okt 07, 2018 1:50 pm

Re: Victron-Integration

Beitrag von openWB »

Bitte mal die probieren - mit Parametern wie die erste auch
Dateianhänge
victron.py.zip
(1.09 KiB) 320-mal heruntergeladen
Supportanfragen bitte NICHT per PN stellen.
Hardwareprobleme bitte über die Funktion Debug Daten senden mitteilen oder per Mail an support@openwb.de
Koche
Beiträge: 14
Registriert: Di Jun 18, 2019 7:05 am

Re: Victron-Integration

Beitrag von Koche »

Hallo Snaptec

pi@openWB:~/Downloads $ sudo python victron.py 192.168.178.58 100
grid 2600, 2601, 2602
Traceback (most recent call last):
File "victron.py", line 17, in <module>
resp= client.read_input_registers(2600,2,unit=mid)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/common.py", line 125, in read_input_registers
return self.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/sync.py", line 10 6, in execute
return self.transaction.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 14 9, in execute
broadcast=broadcast
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 21 3, in _transact
packet = self.client.framer.buildPacket(packet)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/framer/socket_framer.py" , line 212, in buildPacket
message.function_code)
struct.error: cannot convert argument to integer
pi@openWB:~/Downloads $ sudo python victron.py 192.168.178.58 242
grid 2600, 2601, 2602
Traceback (most recent call last):
File "victron.py", line 17, in <module>
resp= client.read_input_registers(2600,2,unit=mid)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/common.py", line 125, in read_input_registers
return self.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/sync.py", line 106, in execute
return self.transaction.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 149, in execute
broadcast=broadcast
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 213, in _transact
packet = self.client.framer.buildPacket(packet)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/framer/socket_framer.py", line 212, in buildPacket
message.function_code)
struct.error: cannot convert argument to integer
pi@openWB:~/Downloads $


Grüße
openWB
Site Admin
Beiträge: 7901
Registriert: So Okt 07, 2018 1:50 pm

Re: Victron-Integration

Beitrag von openWB »

Hm, ist aber nen Venus oder Color GX?
Modbus TCP auch aktiviert?
Supportanfragen bitte NICHT per PN stellen.
Hardwareprobleme bitte über die Funktion Debug Daten senden mitteilen oder per Mail an support@openwb.de
Koche
Beiträge: 14
Registriert: Di Jun 18, 2019 7:05 am

Re: Victron-Integration

Beitrag von Koche »

ja ist ein Venus GX
mit Loxone bekomme ich die daten
Loxone.JPG
(78.46 KiB) 1696-mal heruntergeladen
ama
Beiträge: 70
Registriert: So Okt 14, 2018 7:38 pm

Re: Victron-Integration

Beitrag von ama »

Hallo snaptec,

seit heute ist mein ccgx mit dem Carlo Gavazzi Zähler angeschlossen. CCGX hat den Zähler gefunden und misst Bezug / Einspeisung korrekt auf 3 Phasen. Die Modbus ID des Zählers ist 30 (siehe Anhang):
CCGX_1.JPG
CCGX_1.JPG (48.36 KiB) 8544 mal betrachtet
Der Gavazzi Zähler zählt die Werte korrekt und stellt sie im CCGX dar:
CCGX_2.JPG
CCGX_2.JPG (46.1 KiB) 8544 mal betrachtet
Die Übersicht funktioniert auch korrekt:
CCGX_3.JPG
CCGX_3.JPG (45.59 KiB) 8544 mal betrachtet
Damit sollte ein Strom Bezugsmodul möglich sein.
Ich habe Dein bereitgestelltes Modul mit IP des CCGX aufgerufen und die Modbus ID 30 mitgegeben:
Hier das Ergebnis:
pi@ladebox:/var/www/html/openWB $ sudo python victron.py 192.168.178.46 30
grid 2600, 2601, 2602
Traceback (most recent call last):
File "victron.py", line 17, in <module>
resp= client.read_input_registers(2600,2,unit=mid)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/common.py", line 125, in read_input_registers
return self.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/client/sync.py", line 107, in execute
return self.transaction.execute(request)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 136, in execute
full=full
File "/usr/local/lib/python2.7/dist-packages/pymodbus/transaction.py", line 199, in _transact
packet = self.client.framer.buildPacket(packet)
File "/usr/local/lib/python2.7/dist-packages/pymodbus/framer/socket_framer.py", line 212, in buildPacket
message.function_code)
struct.error: cannot convert argument to integer

Gerne kann ich Dir auch einen Zugang bereitstellen, um selbst zu testen. Danke
AMA
Antworten