Navigation

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

    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 adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      starfish last edited by

      dann kann man die Sache ja abhaken … ist schon eine beachtliche Leistung von Bluefox, wenn man bedenkt, dass er die Geräte nicht vorliegen hat.

      1 Reply Last reply Reply Quote 0
      • S
        starfish last edited by

        dafür läufts bei mir nach dem update nicht mehr:

        host-odroid	2015-10-27 08:34:18	info	Restart adapter system.adapter.modbus.0 because enabled
        host-odroid	2015-10-27 08:34:18	error	instance system.adapter.modbus.0 terminated with code 6 (uncaught exception)
        TypeError:	2015-10-27 08:34:18	error	at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:134:20)
        TypeError:	2015-10-27 08:34:18	error	at Decoder. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
        TypeError:	2015-10-27 08:34:18	error	at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:301:8)
        TypeError:	2015-10-27 08:34:18	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:134:20)
        TypeError:	2015-10-27 08:34:18	error	at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
        TypeError:	2015-10-27 08:34:18	error	at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:220:12)
        TypeError:	2015-10-27 08:34:18	error	at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:295:6)
        TypeError:	2015-10-27 08:34:18	error	at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:623:35)
        TypeError:	2015-10-27 08:34:18	error	at /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:680:21
        TypeError:	2015-10-27 08:34:18	error	at /opt/iobroker/node_modules/iobroker.modbus/main.js:691:65
        TypeError:	2015-10-27 08:34:18	error	Cannot read property 'len' of undefined
        uncaught	2015-10-27 08:34:18	error	exception: Cannot read property 'len' of undefined
        modbus-0	2015-10-27 08:34:18	info	starting. Version 0.3.2 in /opt/iobroker/node_modules/iobroker.modbus
        

        versuch mal reboot

        reboot hat nichts gebracht …

        1 Reply Last reply Reply Quote 0
        • S
          starfish last edited by

          hab zum Testen mal ne neue modbus-instanz erzeugt. das hat nichts geändert. folgendes konnte ich feststellen:

          • ein holding register eintrag funktioniert nur, wenn zuvor ein input register definiert wurde.

          • bei den Objekten wird kein input-register folder erzeugt (siehe Bild unten)

          • die input-register daten werden aber bei den Ereignissen angezeigt.

          • bestimmte register, die vorher als holding-register eingetragen werden mussten funktionieren nur noch als input-register

          vielleicht helfen diese Angaben …(?)

          291_unbenannt.png

          Nachtrag 1: 20 Minuten später war der input-register folder da mitsamt den dazugehörigen datenpunkten, diesen Punkt kann man streichen.
          291_nach_20min.png

          leider wird in meiner Register-Liste nicht erwähnt, welche Register RO und welche RW sind. Aber irgendwie plausibel ist das schon, dass die gemessenen Netzspannungen RO sind, und deshalb in die Input-Registers gehören.

          Nachtrag 2: hab jetzt alle Datenpunkte in "Input Registers" gezügelt. Scheint mir logisch, und alles funktioniert wieder wie vorher.

          ( :lol: :lol: :lol: Geduld kostet nichts - ausser Nerven :lol: :lol: :lol:)

          1 Reply Last reply Reply Quote 1
          • Bluefox
            Bluefox last edited by

            @starfish:

            dafür läufts bei mir nach dem update nicht mehr:

            host-odroid	2015-10-27 08:34:18	info	Restart adapter system.adapter.modbus.0 because enabled
            host-odroid	2015-10-27 08:34:18	error	instance system.adapter.modbus.0 terminated with code 6 (uncaught exception)
            TypeError:	2015-10-27 08:34:18	error	at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:134:20)
            TypeError:	2015-10-27 08:34:18	error	at Decoder. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
            TypeError:	2015-10-27 08:34:18	error	at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:301:8)
            TypeError:	2015-10-27 08:34:18	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:134:20)
            TypeError:	2015-10-27 08:34:18	error	at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
            TypeError:	2015-10-27 08:34:18	error	at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:220:12)
            TypeError:	2015-10-27 08:34:18	error	at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:295:6)
            TypeError:	2015-10-27 08:34:18	error	at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:623:35)
            TypeError:	2015-10-27 08:34:18	error	at /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:680:21
            TypeError:	2015-10-27 08:34:18	error	at /opt/iobroker/node_modules/iobroker.modbus/main.js:691:65
            TypeError:	2015-10-27 08:34:18	error	Cannot read property 'len' of undefined
            uncaught	2015-10-27 08:34:18	error	exception: Cannot read property 'len' of undefined
            modbus-0	2015-10-27 08:34:18	info	starting. Version 0.3.2 in /opt/iobroker/node_modules/iobroker.modbus
            

            versuch mal reboot

            reboot hat nichts gebracht … `
            Ändere bitte die Zeile 691 in /opt/iobroker/node_modules/iobroker.modbus/main.js von

            `lastAddress = address + main.ac.inputRegs[i].len;` 
            auf
            `~~[code]~~lastAddress = address + main.ac.holdingRegs[i].len;` 
            
            Richtiger Fix kommt dann am Abend.[/i][/code][/i]
            
            1 Reply Last reply Reply Quote 0
            • S
              starfish last edited by

              hallo Bluefox, danke für die Antwort. Ich habe jetzt alles unter inputregisters eingereiht, was m.M. auch Sinn macht. So funktioniert alles im Moment.

              Unabhängig von Deinem Fix stellt sich jetzt die Frage nach dem RW bzw. RO der modbus-Register. Leider ist meine Tabelle diesbezüglich nicht klar. Aber Messwerte überschreiben ist eigentlich unlogisch, sodass input-registers passt. Anders verhält es sich bei akkumulierenden Zählern, die man dann und wann gern mal auf Null stellen möchte oder bei Ausgängen. Ich bin schon mal happy, dass es so läuft, wie es jetzt läuft.

              LG Beat
              3723_unbenannt3.png

              1 Reply Last reply Reply Quote 0
              • Bluefox
                Bluefox last edited by

                ist das nicht so:

                • RW - holding registers

                • RO - input registers

                ??

                1 Reply Last reply Reply Quote 0
                • S
                  starfish last edited by

                  ja, genau - deshalb sind meine messwerte jetzt alle in input registers. Schreiben musste ich noch nie, deshalb kann ich nichts dazu sagen. (ist das überhaupt schon implementiert?)

                  1 Reply Last reply Reply Quote 0
                  • Bluefox
                    Bluefox last edited by

                    > ist das überhaupt schon implementiert?
                    Ja. Muss gehen.

                    1 Reply Last reply Reply Quote 0
                    • S
                      starfish last edited by

                      so, jetzt habe ich 0.3.3 getestet, nun ist alles wieder wie vorher.

                      Unsigned long (32 bit bigEndian) für den Betriebsstundenzähler läuft auch, nur 64 bit float gibts glaub ich nicht. Im Radzio-tool ergibt dieses 64bit Register den richtigen Wert mit "64bit sw. floa" Das ist aber nicht so schlimm, weil dieser Parameter zusätzlich auf einer anderen Adresse in 32 bit float abgebildet wird. Ich wollte es nur der Vollständigkeit halber erwähnen. Sowohl beim 32bit als auch beim 64bit Register steht noch "overflow 1.0e+12 " in der Registertabelle.

                      1 Reply Last reply Reply Quote 0
                      • S
                        Stefnas last edited by

                        __<size size="85">Guten Tag,

                        wie kann ich den Modbus Adapter installieren? Stehe hier gerade auf dem Schlauch?

                        Danke

                        Gruß</size>__

                        hat sich bereits erledigt 😉

                        1 Reply Last reply Reply Quote 0
                        • S
                          Stefnas last edited by

                          so nachdem ich nun erfolgreich den Modbus Adapter zum laufen bekomme habe schaffe ich es nicht die Daten einzulesen…aus der Dokumentation des Herstellers sind für mich nur folgende Angaben ersichtlich:

                          Variabe: FA1_TEMP

                          Adresse: 23

                          Beschreibung: Aktuelle Kesseltemperatur

                          Ich schaffe es beim besten willen nicht an die Daten ranzukommen. Kann mir jemand sagen in welchem Register ich die Daten wie eintragen muss? Ich hab schon alles versucht 😞

                          1 Reply Last reply Reply Quote 0
                          • Bluefox
                            Bluefox last edited by

                            Wie hast du bis jetzt eingestellt? Ist modbus an?

                            Sieht man das in Log, dass modbus adapter verbunden ist?
                            48_img_015.png

                            1 Reply Last reply Reply Quote 0
                            • L
                              looxer01 last edited by

                              Es ist holding register. - auch nach rueckfrage bei oekofen. Aber das lesen funktioniert nur mit ReadWrite das ging zumindest bis letzte woche nicht mit dem Adapter.

                              Du kannst das mit der Software ananas testen.

                              1 Reply Last reply Reply Quote 0
                              • Bluefox
                                Bluefox last edited by

                                @looxer01:

                                Es ist holding register. - auch nach rueckfrage bei oekofen. Aber das lesen funktioniert nur mit ReadWrite das ging zumindest bis letzte woche nicht mit dem Adapter `
                                Was bedeutet "ReadWrite"? Das ist doch HOLDING Register.

                                Konnte man auch mit dem tool lesen?

                                http://en.radzio.dxp.pl/modbus-master-simulator/

                                1 Reply Last reply Reply Quote 0
                                • L
                                  looxer01 last edited by

                                  Nein mit radzio geht es nicht. Mit ananas kannst du R und W einstellen. Dann geht es

                                  1 Reply Last reply Reply Quote 0
                                  • Bluefox
                                    Bluefox last edited by

                                    @looxer01:

                                    Nein mit radzio geht es nicht. Mit ananas kannst du R und W einstellen. Dann geht es `
                                    Du stellst eigentlich nichts ein. Du sagst nur ob du die Werte liest oder auch schreibst.

                                    Und lesen ist nichts anders als READ_MULTIPLE_HOLDING_REGISTERS.

                                    Trotzdem währe es toll, wenn du mir eine Wireshark Aufzeichnung mit ioBroker und eine mit Ananas geben konntest.

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      starfish last edited by

                                      einen komischen Effekt habe ich, wenn ich die modbus objekte im history adapter aufzeichne, wird keine Grafik gezeichnet. Die Messwerttabelle wird aber schön brav geschrieben. Temperaturen von hm-rpc sehen in der history tabelle genau gleich aus, aber hier wird eine Grafik erstellt. Woran kann das liegen?

                                      Edit 29.10. sorry, Fehlalarm, heute morgen war die Grafik da Ich bin offenbar viel zu ungeduldig …

                                      1 Reply Last reply Reply Quote 0
                                      • L
                                        looxer01 last edited by

                                        Bin zur zeit gesch. unterwegs. Files liefere ich morgen

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          starfish last edited by

                                          @looxer01 / stefnas

                                          es handelt sich hier um function code 03 für read holding registers bzw. function code 04 für read input registers. Ich nehme an, dass Bluefox diese codes automatisch setzt mit der Auswahl der Register. Viel wichtiger scheint mir nebst der richtigen Adresse (inkl. Wahl Alias oder nicht) die Wahl des Zahlenformats, das ist oft schwierig, weil die Hersteller hier oft sehr ungenau sind (gerade die Ökofen Anleitung ist nicht sehr hilfreich). Da hilft z.B. das Radzio-tool, weil man damit die verschiedenen Formate sehr schnell testen kann. Auch ist damit eine Analyse der Struktur, bzw. Anzahl der Register pro Zahl möglich. (wenn ich Radzio richtig interpretiere bedeutet sw = swapped = BigEndian?)

                                          Voraussetzung ist natürlich, dass die Kommunikation auf der Slave-Seite (der Ofen in dem Fall) überhaupt eingeschaltet ist, die IP und der Port auch stimmt (sorry, etwas trivial, aber muss halt auch stimmen). ggf. ist auch die Device-ID noch einzustellen (bei mir war die irrelevant)

                                          Gruss

                                          starfish

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            Stefnas last edited by

                                            @Bluefox:

                                            Wie hast du bis jetzt eingestellt? Ist modbus an?

                                            Sieht man das in Log, dass modbus adapter verbunden ist? `

                                            Guten Morgen,

                                            vielen Dank für die Rückmeldungen. Ich bin soweit das laut LOG der modbus Adapter mit der Heizung verbunden ist. Sobald ich dann aber versuche eine Adresse auszulesen wird die Verbindung getrennt. Ich bin mir eben nicht ganz sicher Welcher Register hier im Detail genommen werden muss. Aber ich werde die Variante von looxer01 mal testen und berichten.

                                            Gruß

                                            Stefnas

                                            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

                                            932
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            modbus modbus adapter
                                            140
                                            970
                                            298716
                                            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