NEWS
Stromzähler SDM630 + Growatt WR + Modbus RS485/TCP
-
Hallo,
ich habe einen Growatt MIC 1500TL-X WR und 2 Stromzähler, einmal einen SDM630 und einen SDM72DM-V2 (nur als Zähler für Erdgeschoss).
Der SDM72-DM kommuniziert mit einem Waveshare RS485 to Ethernet Modul und wird damit im Modbus Adapter angezeigt.
Der SDM630 hängt an der Smartmeter Schnittstelle (PIN 7+8) des WR zur Regelung der Einspeiseleistung.
Soweit so gut.Jetzt würde ich aber gerne noch die Daten des SDM630 im Modbus Adapter haben. Direkt an das Waveshare Modul kann ich den wohl nicht hängen, da der WR der Master ist. Zumindest hab ich das so gelesen.
Der WR hat aber auch noch eine RS485 Kommunikationsschnittstelle (Pin 4+5), könnte ich vllt da dran das Waveshare Modul als Master hängen und darüber den SDM630 als Slave erreichen? -
@coyote also grundsätzlich kannst du keine 2 master in so einem System seidenn du machst einen Splitter das geht würde ich aber in deiner Konstellation nicht empfehlen. Was du machen kannst ist den wr an sich auslesen vielleicht gibt dir ja Werte raus.
Schau Mal hier da gibt es schon einen Post -
@thebam der WR hängt schon über den Growatt WiFi Stick am Growatt Adapter, aber leider sind dort nur die WR Werte nicht die des SDM630. Der wird zwar in der App mit angezeigt und die Werte auch, aber der Growatt Adapter gibt da nichts aus. Weiß nicht ob das die API überhaupt her gibt.
Der WR hat aber ja 2 RS485 Schnittstellen, eine extra für Smartmeter und nochmal eine für "Kommunikation", zumindest steht es so im Handbuch. Und über diese Schnittstelle müsste man den WR abfragen können. Das will ich ja nicht, ich würde gerne an den SDM630 kommen, die Frage ist für mich, komme ich über diese RS485 vom WR an den SDM630.
Ich dachte mir halt, dass der WR an dieser Schnittstelle als Slave fungiert und ich so an den zweiten Slave (SDM630) komme. -
@coyote ich kenne das Modell nicht genug aber wenn du sagt die Werte sind in der App zu sehen denke ich das du sie über die Schnittstelle wahrscheinlich bekommst. Hast du Mal geschaut nach einer modbus Liste für den wr?
Ansonsten nimm doch einen USB zu rs485 Stick und probier das ganze Mal mit dem modbus scanner ob du da unter den Register etwas bekommen kannst. -
@thebam ich hab gestern mal getestet. Habe die zweite Schnittstelle des WR an das Waveshare bzw den SDM72 (erster Slave) geklemmt und im Modbus Adapter ein Register 30001 mit der Slave ID 2 (SDM630) eingetragen. Dann schmiert der Modbusadapter leider ab.
Heißt für mich, er kann nicht über die zweite Schnittstelle des WR den SDM630 der an der ersten Schnittstelle des WR hängt erreichen.
Die Liste des WR ist die hier: https://github.com/nygma2004/growatt2mqtt/blob/main/Growatt PV Inverter Modbus RS485 RTU Protocol v120.pdfDort finde ich auch nichts darüber. Trage ich im Modbus Adapter als Slave ID die 1 ein, läuft der Modbus Adapter. Slave ID 1 ist der WR. Also sollte ich den erreichen können, war aber ja nicht mein Ziel. Die Werte des WR hab ich ja im Growatt Adapter.
Aber zum Verständnis, kannst du mir sagen, was ich für eine Zahl im Modbus Adapter eintragen muss, sagen wir mal für Input Register 3093 Inverter Temperatur aus der Liste? Oder auch 4. PV1 Voltage. Wie wird das umgerechnet?Sehe leider gerade keine Möglichkeit, den SDM630 auszulesen. Hat vllt sonst noch jemand ne Idee? @Glasfaser @klassisch vielleicht?
-
@coyote sagte in Stromzähler SDM630 + Growatt WR + Modbus RS485/TCP:
Growatt MIC 1500TL-X WR
SDM630hier steht etwas dazu .... den SDM630 dir ID 2 geben ... so wie ich das überflogen habe .
im Beitrag ist auch einer wo man die Werte auch per FHEM sieht .https://www.photovoltaikforum.com/thread/168815-growatt-1500tlx-durch-smartmeter-steuern/
-
@glasfaser den Thread kenne ich. Mein SDM630 hat ja die Adresse 2 eingestellt bekommen. Ich versuche nochmal meine Konstellation zu erklären.
Das ist für die Einspeiseregelung:
WR (Master) -> Schnittstelle 1 (Smartmeter) -> SDM630 (Slave ID2)
Dann hab ich noch:
Waveshare (Master) -> SDM72DM (ID3)
Das läuft ja soweit alles.
Da ich den SDM630 jetzt nicht direkt an das Waveshare Modul hängen kann, sonst hätte ich ja 2 Master, dachte ich ich könnte über die zweite Schnittstelle des WR an den SDM630 kommen.Also:
Waveshare (Master) -> WR Schnittstelle 2 (WR Slave ID 1) -> SDM630 (Slave ID2)
Geht leider nicht, komme über den WR nicht zum SDM630
Deshalb meine Frage ob jemand noch eine andere Idee hat zum auslesen des SDM630 -
@coyote sagte in Stromzähler SDM630 + Growatt WR + Modbus RS485/TCP:
Register 300001
da ist eine 0 zu viel .
ist 30001
https://forum.iobroker.net/topic/29903/gelöst-stromzähler-b-g-sdm630-modbus-rs-485-usb-mqtt/107
-
@glasfaser Tippfehler, ist editiert
-
Hast du den WR auch mal neu rebooten lassen , nach deinen Modbus ID änderungen !?!?
-
@glasfaser nein, habe ja keine ID geändert gestern. Die IDs hatte ich direkt von Anfang an eingstellt. Wie gesagt, der WR spricht ja auch einwanfrei mit dem SDM 630. Komme nur nicht über den WR an den SDM630 an, anscheinend
-
@coyote
Mhhh....
im beigefügten Thread kann er ausgelesen werden !?Mir fällt gerade dazu nichts mehr ein ....
Ein reboot schadet nicht !?
-
@glasfaser sagte in Stromzähler SDM630 + Growatt WR + Modbus RS485/TCP:
Mhhh....
im beigefügten Thread kann er ausgelesen werden !?Echt? Dann muss ich den Thread nochmal komplett lesen, hab ich jetzt nicht gefunden
-
im Thread :
Nachtrag und aktuelles zu meinem SDM630v2, der mit dem Growatt WR kommunizieren soll: Habe gestern den SDM im Zählerschrank eingebaut, von der Reihenfolge als Allererstes Gerät im Zählerschrank, so ist das Wohnhaus mit dem Fi und der Fi für die Wallbox fürs eAuto hinter dem SDM nachgereiht. Das 2-polige Kabel habe ich am SDM angeschlossen und das andere Ende mit dem Adapter an Klemme 7 und 8. Dann habe ich noch auf dem SDM die Adresse auf "2" geändert. Auf dem WR habe ich auf "Electric Meter" umgestellt, sowie "Export Limit Settings" auf "Enable Meter" und "0 Percent". Das Hörersymbol erscheint im SDM, in der App des Growatt zeigt mir nun eine andere Ansicht, wo er mir aufsplittet, was vom Netz und was von der PV kommt. Scheint also zu funktionieren. Leider hat es gestern und heute sowie morgen geregnet, somit habe ich noch keinen PV Überschuß, das ich sagen könnte, es funktioniert sicher. Aber ich bin überzeugt, das es das tut.
-
@glasfaser ja, das funktioniert ja
Ich will ja die Daten vom SDM630 mit dem Waveshare auslesen, damit ich alle Daten im Modbus Adapter hab nicht in der Growatt App
-
@coyote du könntest mit einem 2. Waveshere die iobroker als getway anlegen.
Sprich einmal Sdm -> iobroker (master) modbus Adapter -> Javascript Adapter die Werte auf einen 2. Modbus Adapter (Slave) legen -> waveshere wieder auf rs485 und ab in den wrMit 2 werten habe ich das Mal getestet funktioniert Recht gut
-
@thebam hm, gar keine schlechte Idee und auch günstiger als einen zweiten SDM zu kaufen.
Heißt, mit Javascript die Werte aus der ersten Instanz, in die zweite Instanz "kopieren". Die zweite Instanz als Slave laufen lassen und das zweite Waveshare auch. Dann mit dem WR (Master) auf das zweite Waveshare Slave zugreifen. Richtig?EDIT: Kannst du mir vllt die Slave Einstellungen zeigen für die zweite Instanz?
-
@thebam was ich nicht weiß ist, ob der WR ein bestimmtes Gerät erwartet oder ob der das gar nicht wissen kann oder ob ihm das egal ist solange die richtigen Register Werte rein kommen. In nem anderen Forum steht nämlich dass der WR auf Adresse 1 einen SDM230 erwartet, daher muss man Adresse 2 am SDM630 einstellen, dann geht es auch mit dem dreiphasigen Gerät.
Zur Not halt mal Testen -
@coyote
Also ich habe das Mal getestet mit 2 iobroker Quasie also der 2. Als master wieder und auf dem 1. Dann 2 Instanzen wie du schon beschrieben hast. Hat einwandfrei funktioniert.
Der wr weiß nicht was hinten dran ist der schaut nur die ID, Baud rate und Register wenn das alles stimmt ist dem der Rest egal.
Ich glaube ich habe hier auch irgendwo die Register für das Gerät Mal gepostet gehabt. -
@thebam ok. Aber was genau muss ich denn im modbus Adapter einstellen bei der zweiten Instanz?
Nur TCP? Oder wie wird die Instanz eingestellt?Die Register hab ich, sind fast gleich mit dem SDM72DM den ich ja schon im modbus adapter laufen hab