Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Modbus liefert nur Nullen

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Modbus liefert nur Nullen

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      Michael 3 last edited by Michael 3

      Modbus Adapter verbindet sich mit RS485 RTU Schnittstellen, liefert aber nur NULL-Werte
      Master: IOBroker, Modbus Adapter V3.4.9., RPi4, ttyUSB0, USB Stecker zu RS485, AbschlussR=2x120 Ohm
      Slave: SDM630 Stromzähler
      RTU: 9600-8N1

      Diagnose: Modbus adapter grün!, Objekte werden im 1000ms Takt upgedated (blinken grün)m Werte sind aber alle 0!
      Am Zähler wird das Telefonsymbol gezeigt, Bestätigung für die bestehende RS485 Verbindung zum Master

      Ich habe schon alle verschiedenen Formate (Float, bs, ws, ...) ausprobiert.

      Mit dem ModbusTestprogramm am PC (mbus.exe) zeigt er die richtigen (plausible) Werte für die Register, bei Float reversed
      Die Leitung, Adapter, Zähler, RS485 scheint offensichtlich zu funktionieren.

      Mir ist aufgefallen, dass in allen Dokus die ich finden kann, die Input-Register mit 3x.xxx beginnen, die holdingRegister mit 4x.xxx. Laut einigen Foren sollte man die Datenregister aber unter HoldingRegister eingeben... das hat bei mir nichts gebracht. Ich habe die Werte nun mit den vollen Registern unter InputRegister eingegeben. (zB 30.001 für die VOLT auf L1)
      Wenn ich die gleichen Register in die HoldingRegister Tabelle eingebe, ändert sich komischerweise nichts, außer, dass die Objekte nun unter "holdingRegister" angelegt werden...

      Egal: Ich bin jedenfalls am Ende meiner (ohnehin schon geringen) Weisheit angelangt...
      Ich brauch halt die Werte, und keine NULLEN....

      Whats the trick ???

      Meine letzte Hoffnung setze ich auf den stromversorgten USB Anschluss, den ich hoffentlich heute in der Post habe...
      Vielleicht machen ja die USB Ports am RPi4 bei USB-Platte und USB.to.RS485 schlapp...

      Gruss
      Michael.
      a190aa79-e366-4312-ae93-c6933be4234d-image.png
      80306e6a-2240-4d37-bef8-99e6d992b380-image.png
      8dafec5d-cad5-496a-b7cf-10961ba92eb6-image.png

      Homoran Glasfaser 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @Michael 3 last edited by

        @michael-3
        was bitte ist deine Konfiguration?

        der Zähler am Slave, aber Adapter und USB am Master?

        M 2 Replies Last reply Reply Quote 0
        • M
          Michael 3 @Homoran last edited by

          @homoran :
          der Slave ist ein SDM630 ModBus Stromzähler mit RS484 Schnittstelle (A,B,GND), die communication ist dort mit 9600-8N1 eingestellt.
          der "Takt" kommt mE vom Master, mit 1000ms (siehe Screenshot IOB/ModBus Adapter), auch am Master (IOB) ist die gleiche comm eingestellt (siehe oben)

          die DatenRegister kommen aus dem Handbuch des Stromzählers, die Daten sind alle am PC mit dem gleichen USB2RS485 Stecker geprüft worden.

          Welche Konfiguration meinst Du genau?

          M Homoran 2 Replies Last reply Reply Quote 0
          • M
            Michael 3 @Homoran last edited by

            @homoran :
            e6852c9e-73d9-4916-9d72-dde464d9ee58-image.png

            1 Reply Last reply Reply Quote 0
            • M
              Michael 3 @Michael 3 last edited by

              @michael-3 ich meinte natürlich RS485 !!

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @Michael 3 last edited by

                @michael-3 sagte in Modbus liefert nur Nullen:

                Welche Konfiguration meinst Du genau?

                die Hardwarestruktur

                Sind Master und Slave zwei ioBroker Hosts im Multihost Modus?

                M W M 2 Replies Last reply Reply Quote 0
                • M W
                  M W @Homoran last edited by

                  @homoran :

                  Nein! Ganz easy.

                  Ich habe einen Rpi4, auf dem läuft IOB, mit dem Modbus Adapter. Instanz-0 ( auch nur einer), = Master.

                  Im USB Port des RPi4 steckt ein (physischer) adapter USB auf RS485. Dieser ist als Schnittstelle im Modbus Adapter (software) definiert: seriell 9600-8N1 (siehe Bild oben). Der USB Stecker hat 3 Anschlüsse (A+, B-, Gnd) die Verbindung läuft, der port wird gefunden und er verbindet sich mit der Gegenstelle (Instanz=grüne Ampel, Telefonsymbol auf dem Stromzöhler)

                  Völlig getrennt davon, hängt ein SDM630 Stromzähler im Schrank. = Slave. Dieser hat eine interne Modbus-RS485 Schnittstelle (Anschlüsse A+\B-, Gnd) über die er hunderte von Daten überträgt… ich habe nur 17 ausgewählt, (siehe oben).

                  Die beiden RS485 Points sind verkabelt und mit Endwiderständen 120 Ohm versehen, wie man das halt so macht…

                  Die Datenregister sind im Modbusadapter (IOB) definiert…. Siehe oben Bild.

                  Problem:
                  Im IOB werden nur nullen in die Objekte (inputregister) eingelesen.
                  Bild oben…

                  Hardware:
                  1 RPi4B 8GB, 500GB SSD(boot)
                  1 SDM630
                  1 USB2RS485 Stecker
                  Kabel….
                  Mehr ist es nicht..

                  Software:
                  IOB,
                  Modbus Adapter,

                  Getestet habe ich den Aufbau wie folgt getestet:
                  Anstelle des RPi wurde der USB Adapter in meinen PC gesteckt, dort läuft eine Testsoftware zur Prüfung der RS485 Verbindung (mbus.exe)
                  Ich kann dort jeden Wert aus dem SDM630 auslesen, stecke ich es wieder in der RPi, stehen nullen in den objekten des Modbusadapters…
                  Die nullen blinken /1000ms - was mir zeigt, das die Verbindung steht, der Master Daten abfragt, aber anscheinend nichts bekommt…

                  1 Reply Last reply Reply Quote 1
                  • Glasfaser
                    Glasfaser @Michael 3 last edited by

                    @michael-3 sagte in Modbus liefert nur Nullen:

                    8dafec5d-cad5-496a-b7cf-10961ba92eb6-image.png

                    Du hast überall Float (Big Endian Word Smap ) ist aber laut anderen Thread´s

                    Float (Big Endian )

                    https://forum.iobroker.net/topic/29903/gelöst-stromzähler-b-g-sdm630-modbus-rs-485-usb-mqtt/107

                    M 3 Replies Last reply Reply Quote 1
                    • M
                      Michael 3 @Glasfaser last edited by

                      @glasfaser

                      Jetzt bin ich total verwirrt...

                      Das hatte ich schon x-mal ausprobiert.. und heute: es geht!
                      Aber ich habe auch die Alias Häkchen gesetzt, und... keine Ahnung.
                      Mit meiner anderen Software muss ich Float Swapped eingeben.. keine Ahnung wer-da-wie-rum swapped.

                      ABER: nun Vollcrash....

                      Ich hatte gestern nebenbei auch auf die letzte Version des Modbus Adapters aktualisiert.

                      Vorher konnte ich nach Veränderungen bei den Objekten diese im IOB löschen, und beim Aktualisieren der Instanz wurden diese wieder neu (frisch!, das war der Plan) angelegt.

                      Jetzt tut er das auf einmal nicht mehr... und ich habe überhaupt keine Objekte mehr - alles weg --- und ich bekomme nichts mehr zurück... ich lege neue an, nix!

                      bei mir ist nichts reproduzierbar... mal tut er dies, dann wieder das... check ich nicht.

                      H 1 Reply Last reply Reply Quote 0
                      • M
                        Michael 3 @Glasfaser last edited by

                        @glasfaser

                        jetzt ist es total zerstört--- !

                        einmal "Mehrere Geräte-IDs" Häkchen gesetzt, und dann wieder gelöscht....

                        JETZT springt die Ampel nach 2-3 sek. wieder auf Gelb...

                        als Objekte hat er nur einen Teil, nicht alle hinterlegtem Register, angelegt, diese sind aber jetzt zT schwarz, die anderen rot, welche und warum .... keine Ahnung....

                        Muss ich den adapter jetzt deinstallieren und wieder neu installieren? bringt das was?

                        1 Reply Last reply Reply Quote 0
                        • M
                          Michael 3 @Homoran last edited by

                          @homoran

                          siehe bitte meine Nachrichten weiter unten...

                          Der Modbus Adapter (letzte Aktualisierung gestern) generiert nicht reproduzierbare Ergebnisse.
                          Gestern hat die Comm noch funktioniert, es war wohl tatsächlich der Datentyp (Float -"ungeSwapped") egal.
                          Geändert: dann legt er keine Objekte mehr an, sodass plötzlich alle DAten komplett weg sind.
                          Dann sind plötzlich wieder Objekte da (aber nicht alle, nur ein paar, ca 40% "schwarz" und Rest "rot")
                          Und nun geht der Modbus Adapter sogar auf Gelb -> Tod!

                          Das einzige was ich geändert hatte war:

                          • Haken bei "Mehrere Geräte IDs": ich wollte die "1" wieder sehen...
                          • Datentyp Float (ohne swap)
                          • Die Objekte im IOB gelöscht, da diese bisher dann beim Neustart der Instanz neu (mglw zusätzlich) generiert wurden..

                          Ich habe den Adapter nun neu installiert. Dann macht er das wieder (alte weg, neue Objekte anlegen)

                          Die neue Editierfunktion TSV funktionierte bei mir nun leider auch nicht so recht, sodass ich die Werte leider alle neu abtippen musste.. egal...

                          Der ERSTE Wert mit dem Register 30001 wird nur beim Start der Instanz einmal gelesen, alle anderen werden im vorgegebenen Takt (zB 1000ms) gelesen.

                          Somit blinken bei mir alle Objekte nun schön fröhlich mit ihren Werten... nur L1 Volt (Reg 30001) bleibt schwarz mit dem ersten Wert von 230 Volt... und wird nicht aktualisiert.

                          Gruss und vielen Dank schonmal an die Community!

                          Michael.

                          PS: ich habe gerade erst gesehen, dass ich wohl 2 accounts habe, eines auf dem Handy (M W) und dieses auf dem PC (M)--- das muss ich mal korrigieren.

                          1 Reply Last reply Reply Quote 0
                          • M
                            Michael 3 @Glasfaser last edited by

                            @glasfaser :

                            Hurra, es läuft !
                            Vielen Dank für den Tip mit dem Data-Typ!
                            Jetzt wird (ohne das ich etwas getan habe) auch nach ca. 1Stunde der erste Wert ausgelesen..

                            Mit diesen Einstellungen funktioniert es nun!

                            Ein SDM630-Modbus Stromzähler kann in den IO Broker eingelesen werden...

                            Vielen Dank!

                            Gruss und schönes Wochende.
                            Michael.

                            1 Reply Last reply Reply Quote 0
                            • H
                              herr_kuschel @Michael 3 last edited by

                              @michael-3 Hallo, wie ist es inzwischen weitergegangen?
                              Ich habe ein ähnliches Problem. Er hat einmal ausgelesen (einen von einem Wert, den ich wissen will) und dann nicht mehr..
                              Gruß

                              M Glasfaser 2 Replies Last reply Reply Quote 0
                              • M
                                Michael 3 @herr_kuschel last edited by

                                @herr_kuschel sagte in Modbus liefert nur Nullen:

                                @michael-3 Hallo, wie ist es inzwischen weitergegangen?
                                Ich habe ein ähnliches Problem. Er hat einmal ausgelesen (einen von einem Wert, den ich wissen will) und dann nicht mehr..
                                Gruß

                                Hallo,
                                bei mir hat final geholfen, den modbus.adapter zu löschen und dann neu zu installieren.
                                Die Eingangs-Register habe ich dann manuell neu angelegt.

                                Dann lief es, seither absolut save und fehlerfrei...

                                H 1 Reply Last reply Reply Quote 0
                                • H
                                  herr_kuschel @Michael 3 last edited by

                                  @michael-3 danke für den Tipp.
                                  Hat bei mir leider nichts gebracht.
                                  Ich werde weiter ausprobieren..

                                  1 Reply Last reply Reply Quote 0
                                  • Glasfaser
                                    Glasfaser @herr_kuschel last edited by Glasfaser

                                    @herr_kuschel sagte in Modbus liefert nur Nullen:

                                    Ich habe ein ähnliches Problem. Er hat einmal ausgelesen (einen von einem Wert, den ich wissen will) und dann nicht mehr..

                                    Das heißt ,du du fragst erstmal nur ein Registeradresse ab ?

                                    Was kommt im Log , weil es jetzt nicht mehr geht ( Stelle auf die Log-Stufe Debug ) ?

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate
                                    FAQ Cloud / IOT
                                    HowTo: Node.js-Update
                                    HowTo: Backup/Restore
                                    Downloads
                                    BLOG

                                    846
                                    Online

                                    31.6k
                                    Users

                                    79.4k
                                    Topics

                                    1.3m
                                    Posts

                                    modbus adapter sdm630 modbus rtu zähler usb to rs485
                                    5
                                    16
                                    1296
                                    Loading More Posts
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                    The ioBroker Community 2014-2023
                                    logo