Modbus Waveshare RS485 to ETH Umsetzer

NOTFORUS → Not for us → Die Antwort kommt von einer anderen GeräteID und ist nicht für diese Instanz gedacht.
Also kommt da keine Antwort vom dem Zäher.
Adresse wäre 1036 (040C als Int). Oder halt 31037 - 30001 = 1036
Hier steht bei welchen Befehl man was abziehen muss:

Quelle:

Michael

Moin Michael,

vielen Dank für die lichtgeschwindigkeitschnelle Antwort. Das mit der Adresse habe ich jetzt kapiert!!
Auf dem Bus hängt noch der SDM230 auf Adresse 1, der DS100 hat die Adresse 2. Ich hatte den SDM230 im Symcon zwar deaktiviert aber wer weiß …
Auf jeden Fall sieht die Antwort jetzt schon etwas anders aus allerdings werden keine Werte angezeigt sondern lediglich eine 0,00 ausgegeben. Die Antworten hängen auch stark von der Intervallzeit ab die ich jetzt auf 10ms gesetzt habe. Längere Zeiten rufen sporadisch wieder NOTFORUS hervor.
Es kommt was zurück aber leider kann ich das nicht interpretieren, weil ich den Satzaufbau nicht kenne. Die Erste Adresse (40C) sollte die Spannung sein, die zweite (418) der aktuelle Strom der vermutlich wirklich 0 ist weil keine Last dran hängt.
Was kann ich noch vergessen haben einzustellen?

Gruß - Ralph

NACHTRAG: ich habe jetzt mal von Float auf INT32 umgestellt und siehe da - jetzt werden zumindest Zahlen angezeigt. Heißt das jetzt, dass der DS100 nur mit INT Zahlen umgehen kann und ich die Werte die da rauskommen entsprechend umrechnen muss? Wenn ich den Wert für Spannung durch 1.000 teilen lasse sieht das Ergebnis zumindest plausibel aus …

Nachtrag2: jetzt habe ich´s kapiert, die anderen Werte scheinen auch zu kommen. Ich mache das mal fertig und stelle das Teil dann als Vorlage zur Verfügung.

Besten Dank nochmal für die Hilfe!

2 „Gefällt mir“

Wenn ich die Beiträge richtig interpretiere, dann hast du den DS100-00B über Waveshare angebunden, korrekt?

Ich habe vorhin ziemlich viel ausprobiert, aber Daten über Modbus bekomme ich nicht. S0 liefern beide.

Moin Ralph,

bist du damit irgendwie weiter gekommen?

EIn kleines bischen Erfolg hatte ich immerhin, es kommen Werte, aber die meisten sind Quatsch.

Wenn ich die folgenden Daten richtig interpretiere

dann sollten die Werte entsprechend der Konfiguration

etwas sinnvolles liefern, aber die Spannungen sind falsch und auch „Active Power“ kann nicht so hoch sein. Laut S0 Zähler liege ich bei ca. 580-
590 Watt, was passen sollte.

Nur die Frequenzen passen.

Vielleicht hat der kleine Drache @Nall-chan noch eine Idee, falls sich @netuser nicht meldet.

Mein Bauchgefühl sagt mir die Endianess (LSB, MSB) ist falsch. Dafür gibt es in der Symcon Instanz irgendwo einen Schalter.

Zudem hast du UINT32 ausgewählt, aber das sieht bzgl. Registergröße (eine Adresse hat 1 Wort, 2 Adressen also zwei Wörter = 16bit) aus. Würde spaßeshalber auch mal mit UINT16 als Typ probieren.

Ich empfehle immer Online Modbus RTU Parser & Modbus TCP Parser

Nachtrag: Ein Wort hat natürlich 2 Byte = 16 bit. Ich habe hier eben was falsches geschrieben.

Kann auch sein das die Adresse immer einer weniger sind. Also statt 1025, 1024 was ja Hex 400 ist.
Michael

Danke, das funktioniert bei den Spannungen, bei den Leistungen nicht so richtig. Ich teste morgen weiter, auch Tobias Ansatz.

Update
Bei der Leistung geht es auch, das UINT war natürlich falsch, es kann ja negative Werte geben und mit dem Register eins kleiner kommt etwas sinnvolles, auch passend zu den S0 Zählern.

Danke :smiley:

Moin Ralf,

sorry, habe den Post erst jetzt gesehen.
Bei mir laufen folgende Einstellungen, maßgeblich waren die korrekte Umrechnung der Adresse und die Tatsache, dass der DS100 nur INT ausgibt. Weitere Register habe ich bislang nicht ausgelesen weil noch nicht notwendig. Vielleicht mache ich mich irgendwann mal an die Kür :wink:

Gruß - Ralph

1 „Gefällt mir“

Ach ja, das sieht dann so aus …

Gruß - Ralph

1 „Gefällt mir“

Danke für eure Hinweise, ich bin ein großes Stück weiter und kann bei Interesse auch die Modbus JSON für den DS100 in en-de bereitstellen, aber sie ist nicht vollständig.

Der DS100-00B ist ein Zweirichtungszähler und über S0 bekomme ich auch getrennte Impulse. Aber in den Modbus Registern finde ich nichts wirklich passendes.

„active power“ über die Phasen und Combined liefert positiv bzw. negativ, was auch von den Werten her passt.

Gemäß LCD Anzeige am Zähler gibt es in kWh

  • Wirkleistung Gesamt (Total)
  • Wirkleistung Bezug (Import)
  • Wirkleistung Abgabe (Export)

auch im Modbus
grafik

Aber die Wirkleistung in Watt gibt es scheinbar im Modbus nicht getrennt, nur als negativ oder positiv.

Vergleichbar in Watt finde ich nur

  • Combined Forward Active demand
  • Combined Reverse Active Demand
  • Combined Active Demand

Die Werte sind aber „sonderbar“, werden immer aktualisiert, ändern sich aber sehr langsam.

Was genau sind das für Werte bzw. was bedeutet das „demand“ dabei?

Aktuell z.B.
grafik

grafik

DIe Doku findet sich beim Hersteller
https://stromzähler.eu/stromzaehler/drehstromzaehler/fuer-hutschiene-geeicht/246/sdm72dm-v2-mid-3-phasen-zweirichtungs-drehstromzaehler-mit-rs485-und-s0

Wie meinst du das? Die Momentanleistung kann nur positiv oder negativ sein, aber nicht beides gleichzeitig. Das ist also Physik und keine Limitierung des Zählers.

Über S0 bekomme ich die Impulse, die entsprechend vom IPS-868 umgerechnet werden
grafik

Deshalb war eigentlich meine Erwartung, dass ich von so einem Hightech-Zähler auch die aktuellen Werte zu Import, Export und Total bekomme.

Das scheint aber nicht so zu sein.

Dann muss ich sie mir aus den drei Phasen im Sinne von positiv bzw. negativ selber berechnen.

Ich verstehe deinen Gedankengang nicht. Also aus elektrotechnischer Sicht, meine ich.

Der Strom jeder Phase ist die Summe aus Bezug und Einspeisung, diese beiden Anteile des Momentanstroms kann man nicht getrennt messen. Das geht einfach physikalisch nicht, man kann nur den resultierenden Strom messen, auch mit den teuersten Labormessgeräten.

Der Zähler erzeugt Impulse für Export und Import, also scheint er es ja unterscheiden zu können.

Vom Modbus kann ich dann nur die Wirkleistung nehmen und mir die Werte für Import und Export selber berechnen.

Ich hatte es halt bisher so dargestellt und wollte jetzt „nur“ die Werte aus dem Modbus nehmen.

grafik

Zum Vergleichen sind die -65 W berechnet aus den anderen Werten, die -68 W ist die Wirkleistung vom Modbus. Die ist deutlich schneller aktuell, da die Berechnungen aufgrund langsamer Werte vom Impuls-Counter und Wechselrichter etwas dauern.

Und ich würde halt gern die 316 W Export und die 251 W Import wieder sehen und nicht nur die ± Wirkleistung.

Pro Phase lässt sich rein physikalisch nur ein summarischer Wert messen, das magst du mir (Dr.-Ing Elektrotechnik) vielleicht glauben.

Da der Zähler drei Phasen auswertet kann es durchaus einen (summarischen) Bezug auf zwei Phase geben bei gleichzeitiger (summarischer) Einspeisung auf der dritten Phase, das könnte man so messen. Aber wie gesagt, wie sich die Momentanleistung jeder Einzelphase zusammensetzt ist so nicht messbar.

Ich habe es nicht überprüft, ob die Zahlen stimmen.
Möchte aber behaupten mein Janitza ECS kann dass was Du Dir wünscht…
Kann Dir einen zum Testen zuschicken.

PDF findest Du hier in dem Beitrag.

Mein E-Technikstudium ist sehr lange her :innocent:.

Ich kann ja bei jeder Aktualisierung der Phasen jeweils die negativen und die positiven Werte zusammenrechnen und in eine neue Variable schreiben. Dann habe ich die Zahlen wieder.

Mir ist bisher auch nicht klar geworden, was

  • Combined Forward Active demand
  • Combined Reverse Active Demand
  • Combined Active Demand

Danke nein, Helmut, ich kann die Werte ja selber berechnen.

In deinem Beispiel gibt es Einzelwerte für Bezug und Einspeisung der Energie (Wh), für die Momentanleistung (W) steht dort auch nur ein Gesamtwert. Du hast bei deinen Beschriftungen allerdings an einigen Stellen Leistung und Energie verwechselt.

Ich würde das so verstehen:

  • Combined Forward Active demand = Bezug (Momentanwert)
  • Combined Reverse Active Demand = Einspeisung (Momentanwert)
  • Combined Active Demand = effektive Bezug nach Verrechnung mit Einspeisung (Momentanwert)

und das jeweils kombiniert über alle 3 Phasen.

Nun passt in deinem Beispiel der Wert von „Combined Active Demand = 24W“ nicht genau zu dem Wert von „Kombinierte Wirkleistung = 45W“, vielleicht sind die ausgewerteten Messungen geringfügig zeitversetzt und die Last schwankt um diese paar Watt . Oder es ist doch noch komplizierter.

genau, die sind nicht nur geringfügig zeitversetzt, ich habe aber nichts gefunden, woraus ich ableiten kann, ob die Werte über die letzte Minute oder was auch immer berechnet werden.

Ich rechne jetzt die WIrkleistungen L1-3 selber zusammen, dass scheint soweit zu passen und auch die Berechnung des „Hausverbrauchs“ mit der WR-Einspeisung führt zu sehr vergleichbaren Zahlen zu den Impulswerten.

Danke für die weiteren Erhellungen :slight_smile: .