NEWS
Per ModBus auf mehrere Geräte zugreifen (CHINT DTSU666)
-
Hallo zusammen,
ich habe es dank Forum geschafft meine Daten aus einer Sungrow PV auszulesen. Daten werden per ModBus TCP/RTU ausgelesen.
Der Wechselrichter fragt z.B. den Energie-Export an einem DTSU666 (Adresse 254) ab und ich habe noch einen zweiten DTSU an dem der Pool hängt. Den habe ich an der RJ485-Schnittstelle verbunden und mit Adresse 2 versehen.Eigentlich bin ich davon ausgegangen, dass ich beide Geräte über dieselbe Modbus-Instanz abfragen kann
Beim Modbusadapter ist "Mehrere Geräte-IDs" aktiviertIch mal testweise für beide DTSU Register angelegt
bekomme aber keine Werte geliefert.
Hat jemand ein Tip was ich noch einstellen kann/muss oder mach ich einen grundlegenden Fehler?Grüße
Gerd -
@norwegen60 sagte in Per ModBus auf mehrere Geräte zugreifen (CHINT DTSU666):
Beim Modbusadapter ist "Mehrere Geräte-IDs" aktiviert
und wie sind die Registerabfragen konfiguriert?
-
@homoran Meinst du die Allgemein-Einstellung?
Die muss ja stimmen sonst würde ich ja die Werte vom Sungrow nicht bekommen?oder die hier?
Hier habe ich mit verschiedenen Datentypen gespielt aber Werte blieben gelbDie Registeradressen selber habe ich aus DTSU666 Adressen
-
@norwegen60 sagte in Per ModBus auf mehrere Geräte zugreifen (CHINT DTSU666):
Hier habe ich mit verschiedenen Datentypen gespielt aber Werte blieben gelb
nimm mal ein einziges Register und geh mal mit der Adresse um 1 höher und niedriger.
-
@homoran @homoran Sorry für die Verzögerung aber zwischenzeitlich bekam ich mal gar keine Werte (und Arbeit musste auch noch sein)
Ich habe es mal mit den einfachen Werten probiert
und hier jedes mal bei allen die Typen
- Unsigned 8 Bit (Big Endian)
- Unsigned 8 Bit (Little Endian)
- Signed 8 Bit (Big Endian)
- Signed 8 Bit (Little Endian)
durchprobiert. Es blieben aber immer alle Werte gelb
Ich habe dann auch mal nur ein Wert von 5..7 durchgespielt und das mit allen obigen Typen. Trotzdem blieb der Wert auch immer gelb
-
@norwegen60 naja, dann bleibt och die Frage, ob dein neues Gerät wirklich die ID 2 hat.
Oft haben due dann ganz "eindeutige" IDs virgegeben, due auch nicht am Gerät verändert werden sollten. -
@homoran Das Gerät hat sicher 2. Die Adresse habe ich selber eingestellt.
Der Sungrow-Energiezähler hat 254. Auch den habe ich mal versucht anzusprechen, aber mit demselben Ergebnis -
Moin,
mit einer Instanz sollte das Problemlos klappen, Läuft bei mir mit Fronius WR + Zähler relativ problemlos.Ich würde mal einzeln testen. Also nicht WR + 2 Zähler auf einmal, sondern nur z.b. den Zähler 254 mit nur einem Wert.
Kannst dafür ja eine neue Instanz aufmachen & die andere solange deaktivieren.
Kannst du irgendwie testen, ob die Modbus/RTU Verbindung zwischen den Zählern und dem WR funktioniert?
Gibt für Sungrow meine ich eine APP, sieht man da beide Zähler mit sinnvollen werten?
Nicht das dort schon ein Problem existiert.
und was für ein Wechselrichter ist genau verbaut? -
@norwegen60 schau dir mal hier ModBus Register an.
würde fast behaupten das der WR dir die entsprechenden werte bereitstellt und du nicht
direkt auf die einzelnen ModBus/RTU Teilnehmer zugreifen kannst?EDIT:
vielleicht Hilft dir dieser Beitrag ebenfalls weiter. -
@rille06 Ich habe mal Geräte-Adresse 1 komplett raus geschmissen und nur adresse 254 (DTSU666) abgefragt
und das mit den gelb markierten Typen und mit den Offsets 5..7
Gem. der von mir gefundenen Offset-aNGABEN sollte Test-Offsets 6 sein
Antwort blieb immer orange und 0
Ich weiß, dass ein Teil der DTSU-Werte direkt aus Sungrow SH10RT ausgelesen werden können. Eigentlich geht es mir eher um den zusätzlichen DTSU. Den habe ich aber zunächst mal abgehängt um sicher zu gehen, dass der kein negativen Einfluss hat
[Edit]
Mit nur Adresse 254 bleibt auch modbus selber gelb
-
da bin ich mir mit dem Datentyp auch absolut unsicher, versuchs mal mit "8192" als float, da kommt notfalls nur Müll raus,
aber irgendwas sollte kommen.
Was sagt den der Log als Fehler?Ich würde zusätzlich noch alleine die Adresse 1 mit "5018" als "uint16be" factor 0,1 testen.
Dann ist zumindest klar, ob die Kommunikation zwischen Zähler 254 und Wechselrichter funktioniert.EDIT:
Hier bin ich gerade aus Zufall drauf gestoßen vllt hilft dir das. -
@rille06 Das sind ja ganz andere Adressen als die, sie ich gelinkt habe.
Habe es mal mit Adresse 0..7 und Typ Float (Big Endian) druchprobiert. Ergebnis ist das gleiche wie immer
Der Log sagt
-
@norwegen60
ich habe die Vermutung das du den Zähler so einfach nicht abfragen kannst.
Ich denke du kannst nur auf die Register vom Wechselrichter zugreifen bzw die Register die der WR via Modbus TCP zur Verfügung stellt,
aber nicht auf die direkten Adressen der Modbus RTU Verbindung.