Seite 2 von 40
Re: Victron-Integration
Verfasst: Sa Mai 04, 2019 3:42 pm
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
Re: Victron-Integration
Verfasst: Sa Mai 04, 2019 3:48 pm
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.
Re: Victron-Integration
Verfasst: Sa Mai 04, 2019 4:04 pm
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
Re: Victron-Integration
Verfasst: Di Jun 18, 2019 8:02 am
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
Re: Victron-Integration
Verfasst: Di Jun 18, 2019 10:34 am
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
Re: Victron-Integration
Verfasst: Di Jun 25, 2019 8:11 am
von openWB
Bitte mal die probieren - mit Parametern wie die erste auch
Re: Victron-Integration
Verfasst: Di Jun 25, 2019 1:54 pm
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
Re: Victron-Integration
Verfasst: Di Jun 25, 2019 2:06 pm
von openWB
Hm, ist aber nen Venus oder Color GX?
Modbus TCP auch aktiviert?
Re: Victron-Integration
Verfasst: Di Jun 25, 2019 2:42 pm
von Koche
ja ist ein Venus GX
mit Loxone bekomme ich die daten
Re: Victron-Integration
Verfasst: Mo Jul 01, 2019 12:35 pm
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 (48.36 KiB) 9116 mal betrachtet
Der Gavazzi Zähler zählt die Werte korrekt und stellt sie im CCGX dar:
- CCGX_2.JPG (46.1 KiB) 9116 mal betrachtet
Die Übersicht funktioniert auch korrekt:
- CCGX_3.JPG (45.59 KiB) 9116 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