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

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Modbus adapter

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

      Hallo,

      erst mal nur auf die schnelle, in der Beschreibung sind die Adressen in Hex, im IOBroker brauchst du sie dezimal.

      In deinen Beispiel FE34 Datum/Uhrzeit entspricht Adresse 65076.

      Die Netzfrequenz sollte demnach bei Adresse 653 als float angezeigt werden.

      Sollte es noch nicht funktionieren melde dich noch einmal.

      Schöne Grüße

      ThomasD

      1 Reply Last reply Reply Quote 0
      • P
        peet last edited by

        Hallo zusammen,

        vielen Dank an alle die an ioBroker aktiv mitwirken, sieht sehr spannend aus.

        Ich möchte mein Haus mit einer Wago PFC100 750-8100 steuern, übergeordnet soll IOBroker über Modbus TCP mit der Wago kommunizieren.

        Ich habe bereits erfolgreich testweise ein Ausgang schalten können aber es läuft noch nicht so wie ich es mir vorstelle.

        Die Buttons werden über diskrete Ausgänge gesendet und Schalten indirekt die Ausgänge. Nun möchte ich den status der Ausgänge abfragen das gelingt mir nur über Eingangsregister. Ich würde aber stattdessen Diskrete Eingänge (also binär) verwenden.

        In der Wago habe ich verschiedene Einstellungen versucht, die schlägt mir dann auch Adressen vor z.B. wenn Variable RW als Coil deklariert ist, wird Adresse >=32768 vorgeschlagen, als RO wird >= 0 vorgeschlagen. Mit den diskreten Ausgängen und Register klappt das auch wunderbar.

        Könnt ihr mir bitte sagen was ich wo wie genau eintragen muss? Danke.

        Anbei als Screenshots meine Einstellungen:
        1921_bildschirmfoto_2017-01-21_um_00.37.38.png
        1921_bildschirmfoto_2017-01-21_um_00.37.55.png
        1921_bildschirmfoto_2017-01-21_um_00.38.05.png

        Und ein Auszug aus dem Wago Handbuch:
        1921_bildschirmfoto_2017-01-20_um_23.22.49.png

        1 Reply Last reply Reply Quote 0
        • C
          Christian L. last edited by

          Hallo ich habe auch meine Steuerung auf einer Industrie Modbus Variante aufgebaut.

          Möchte nun auch die den I/O Broker nach und nach einführen.

          Welcher Abfragezyklus ist damit möglich?

          Ich muss 6 32bit Register oder 12 16bit Register auslesen.

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

            @Christian L.:

            Hallo ich habe auch meine Steuerung auf einer Industrie Modbus Variante aufgebaut.

            Möchte nun auch die den I/O Broker nach und nach einführen.

            Welcher Abfragezyklus ist damit möglich? `
            Hängt von deinem Rechner ab und natürlich von deiner Steuerung.

            Sollte empirisch ermittelt werden. Ich kann mir gut vorstellen, dass IoB auf dem PC auch 50ms schaffen kann. (Bei deiner Menge)

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

              @peet:

              Hallo zusammen,

              vielen Dank an alle die an ioBroker aktiv mitwirken, sieht sehr spannend aus.

              Ich möchte mein Haus mit einer Wago PFC100 750-8100 steuern, übergeordnet soll IOBroker über Modbus TCP mit der Wago kommunizieren.

              Ich habe bereits erfolgreich testweise ein Ausgang schalten können aber es läuft noch nicht so wie ich es mir vorstelle.

              Die Buttons werden über diskrete Ausgänge gesendet und Schalten indirekt die Ausgänge. Nun möchte ich den status der Ausgänge abfragen das gelingt mir nur über Eingangsregister. Ich würde aber stattdessen Diskrete Eingänge (also binär) verwenden.

              In der Wago habe ich verschiedene Einstellungen versucht, die schlägt mir dann auch Adressen vor z.B. wenn Variable RW als Coil deklariert ist, wird Adresse >=32768 vorgeschlagen, als RO wird >= 0 vorgeschlagen. Mit den diskreten Ausgängen und Register klappt das auch wunderbar.

              Könnt ihr mir bitte sagen was ich wo wie genau eintragen muss? Danke.

              Anbei als Screenshots meine Einstellungen:

              Bildschirmfoto 2017-01-21 um 00.37.38.png

              Bildschirmfoto 2017-01-21 um 00.37.55.png

              Bildschirmfoto 2017-01-21 um 00.38.05.png

              Und ein Auszug aus dem Wago Handbuch:

              Bildschirmfoto 2017-01-20 um 23.22.49.png `

              WER hat schon WAGO im Betrieb??

              Geht das? Kann jemand How-To erstellen? Ich warte immer noch auf meinem Slave. Und es wird kein WAGO sein.

              Bitte Wissen teilen. 😄

              1 Reply Last reply Reply Quote 0
              • C
                Christian L. last edited by

                Auf was für einen Slave wartest du den?

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

                  @Christian L.:

                  Auf was für einen Slave wartest du den? `
                  http://www.ebay.de/itm/291616203435?_tr … EBIDX%3AIT

                  1 Reply Last reply Reply Quote 0
                  • P
                    peet last edited by

                    also ich habe jetzt ein HUB und Wireshark bersorgt. Leider werde ich daraus immer noch nicht schlau.

                    Egal wo ich was in der Variable steuer, es wird immer das gleiche gesendet.

                    Auszug Wireshark:
                    1921_bildschirmfoto_2017-01-27_um_23.40.39.png

                    Einstellung IOBroker:
                    1921_bildschirmfoto_2017-01-27_um_23.41.07.png

                    Einstellung Wago:
                    1921_bildschirmfoto_2017-01-27_um_23.47.15.png

                    Hat jemand eine Idee? Bitte um Hilfe.

                    Vielen Dank im voraus.

                    1 Reply Last reply Reply Quote 0
                    • P
                      peet last edited by

                      Ok das Problem mit den diskreten Eingängen hat sich erledigt. Ich verstehe zwar nich warum aber nachdem ich mit verschiedenen höheren Zahlen probiert habe, klappt das jetzt.

                      Haut jetzt alles wie es soll hin.

                      1 Reply Last reply Reply Quote 0
                      • Y
                        ykuendig last edited by

                        @wendy2702:

                        OK.

                        Nach dem ersten starten das ich das Device auswählen.

                        Modbus_RTU_Device.JPG

                        Wenn ich das gemacht habe, Speicher und beende kommt das im log:

                        ! ````
                        host.openmediavault 2017-01-17 14:55:27.723 info Restart adapter system.adapter.modbus.1 because enabled
                        host.openmediavault 2017-01-17 14:55:27.723 error instance system.adapter.modbus.1 terminated with code 0 (OK)
                        modbus.1 2017-01-17 14:55:27.715 info terminating
                        modbus.1 2017-01-17 14:55:27.695 error at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                        modbus.1 2017-01-17 14:55:27.695 error at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
                        modbus.1 2017-01-17 14:55:27.695 error at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:322:16)
                        modbus.1 2017-01-17 14:55:27.695 error at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/index.js:246:12)
                        modbus.1 2017-01-17 14:55:27.695 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/node_modules/component-emitter/index.js:134:20)
                        modbus.1 2017-01-17 14:55:27.695 error at Decoder. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
                        modbus.1 2017-01-17 14:55:27.695 error at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:332:8)
                        modbus.1 2017-01-17 14:55:27.695 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                        modbus.1 2017-01-17 14:55:27.695 error at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
                        modbus.1 2017-01-17 14:55:27.695 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:236:12)
                        modbus.1 2017-01-17 14:55:27.695 error at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:312:9)
                        modbus.1 2017-01-17 14:55:27.695 error at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:1253:35)
                        modbus.1 2017-01-17 14:55:27.695 error at /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:1365:21
                        modbus.1 2017-01-17 14:55:27.695 error at /opt/iobroker/node_modules/iobroker.modbus/main.js:1332:13
                        modbus.1 2017-01-17 14:55:27.695 error at clear (/opt/iobroker/node_modules/iobroker.modbus/main.js:1328:22)
                        modbus.1 2017-01-17 14:55:27.695 error at Object.main.start (/opt/iobroker/node_modules/iobroker.modbus/main.js:1740:25)
                        modbus.1 2017-01-17 14:55:27.695 error TypeError: Cannot read property 'on' of null
                        modbus.1 2017-01-17 14:55:27.694 error uncaught exception: Cannot read property 'on' of null
                        modbus.1 2017-01-17 14:55:27.693 error Cannot open port "/dev/ttyUSB1" [9600]: TypeError: Cannot read property 'complete' of undefined

                        >! Ich weiß nur nicht warum der Port nicht geöffnet werden kann.
                        >! Und wenn ich jetzt die Instanz wieder öffne, ist der Port Eintrag wieder weg bzw. nicht mehr sichtbar.
                        >! Im Log kommt ständig:
                        >! ````
                        openmediavault	2017-01-17 15:07:07.966	info	host.openmediavault Restart adapter system.adapter.modbus.1 because enabled
                        openmediavault	2017-01-17 15:07:07.966	error	host.openmediavault instance system.adapter.modbus.1 terminated with code 0 (OK)
                        modbus.1	2017-01-17 15:07:07.939	error	modbus.1 TypeError: Cannot read property 'on' of null at Object.main.start (/opt/iobroker/node_modules/iobroker.modbus/main.js:1740:25) at clear (/opt/iobroker/node_modules/iobroker.modbus/mai
                        modbus.1	2017-01-17 15:07:07.939	error	modbus.1 uncaught exception: Cannot read property 'on' of null
                        modbus.1	2017-01-17 15:07:07.937	error	modbus.1 Cannot open port "/dev/ttyUSB1" [9600]: TypeError: Cannot read property 'complete' of undefined
                        

                        Mal alle USB Devices abgezogen und nur den USB-RS485 Adapter angeschlossen.

                        Dann sehe ich das der ttyUSB0 wird. Aber auch wenn ich den als Port auswähle kommt die gleiche Fehlermeldung. `

                        Ich habe das gleiche Problem.

                        mein Log sieht so aus:

                        `host.raspi3	2017-02-01 01:46:15.092	info	Do not restart adapter system.adapter.modbus.0 because disabled or deleted
                        host.raspi3	2017-02-01 01:46:15.084	error	instance system.adapter.modbus.0 terminated with code 3 (Adapter disabled or invalid config)
                        host.raspi3	2017-02-01 01:45:50.362	info	"system.adapter.modbus.0" disabled
                        host.raspi3	2017-02-01 01:45:50.361	info	object change system.adapter.modbus.0
                        host.raspi3	2017-02-01 01:45:49.076	info	instance system.adapter.javascript.0 terminated with code 0 (OK)
                        javascript.0	2017-02-01 01:45:49.016	info	Adapter is disabled => stop
                        host.raspi3	2017-02-01 01:45:48.993	info	stopInstance system.adapter.javascript.0 killing pid 30477
                        host.raspi3	2017-02-01 01:45:48.992	info	stopInstance system.adapter.javascript.0
                        host.raspi3	2017-02-01 01:45:48.988	info	"system.adapter.javascript.0" disabled
                        host.raspi3	2017-02-01 01:45:48.987	info	object change system.adapter.javascript.0
                        host.raspi3	2017-02-01 01:45:41.861	info	Restart adapter system.adapter.modbus.0 because enabled
                        host.raspi3	2017-02-01 01:45:41.860	error	instance system.adapter.modbus.0 terminated with code 0 (OK)
                        modbus.0	2017-02-01 01:45:41.795	info	terminating
                        modbus.0	2017-02-01 01:45:41.750	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                        modbus.0	2017-02-01 01:45:41.750	error	at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
                        modbus.0	2017-02-01 01:45:41.750	error	at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:322:16)
                        modbus.0	2017-02-01 01:45:41.750	error	at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/index.js:246:12)
                        modbus.0	2017-02-01 01:45:41.750	error	at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/node_modules/component-emitter/index.js:134:20)
                        modbus.0	2017-02-01 01:45:41.750	error	at Decoder. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
                        modbus.0	2017-02-01 01:45:41.750	error	at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:332:8)
                        modbus.0	2017-02-01 01:45:41.750	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                        modbus.0	2017-02-01 01:45:41.750	error	at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
                        modbus.0	2017-02-01 01:45:41.750	error	at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:236:12)
                        modbus.0	2017-02-01 01:45:41.750	error	at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:312:9)
                        modbus.0	2017-02-01 01:45:41.750	error	at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:1253:35)
                        modbus.0	2017-02-01 01:45:41.750	error	at /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:1365:21
                        modbus.0	2017-02-01 01:45:41.750	error	at /opt/iobroker/node_modules/iobroker.modbus/main.js:1332:13
                        modbus.0	2017-02-01 01:45:41.750	error	at clear (/opt/iobroker/node_modules/iobroker.modbus/main.js:1328:22)
                        modbus.0	2017-02-01 01:45:41.750	error	at Object.main.start (/opt/iobroker/node_modules/iobroker.modbus/main.js:1740:25)
                        modbus.0	2017-02-01 01:45:41.750	error	TypeError: Cannot read property 'on' of null
                        modbus.0	2017-02-01 01:45:41.736	error	uncaught exception: Cannot read property 'on' of null
                        modbus.0	2017-02-01 01:45:41.720	error	Cannot open port "/dev/ttyUSB0" [9600]: TypeError: Cannot read property 'complete' of undefined
                        modbus.0	2017-02-01 01:45:40.406	info	starting. Version 0.4.7 in /opt/iobroker/node_modules/iobroker.modbus, node: v4.7.2
                        ...
                        ...
                        modbus.0	2017-02-01 01:44:25.958	info	List of port: [{"comName":"/dev/ttyAMA0"},{"comName":"/dev/ttyUSB0","manufacturer":"FTDI","serialNumber":"FTDI_FT232R_USB_UART_A603O55Y","pnpId":"usb-FTDI_FT232R_USB_UART_A603O55Y-if00-port0","vendor[/code]`
                        
                        Der rs-485 Adapter stammt aus dem Laden mit dem blauen C.
                        
                        Wie kann ich  mich nützlich machen, damit das Problem behoben werden kann?
                        
                        1 Reply Last reply Reply Quote 0
                        • wendy2702
                          wendy2702 last edited by

                          Bluefox wollte sich die Hardware besorgen und dann untersuchen. Glaube bis dahin können wir nicht viel machen außer einen Workaround zu nutzen.

                          Gesendet von iPhone mit Tapatalk Pro

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

                            Ich habe mir das auf einem PI installiert

                            http://mbus.sourceforge.net

                            Den USB-RS485 Adapter an den pi und das dann über den iobroker Modbus Adapter per TCP angesprochen.

                            Gesendet von iPhone mit Tapatalk Pro

                            1 Reply Last reply Reply Quote 0
                            • Y
                              ykuendig last edited by

                              Aha; verstehe die Idee. Muss ich am Abend testen…

                              Ich könnte auch vom pi die Daten an node-red senden oder per js vom alten python crawler pollen.

                              Ist eh etwas trickig, da ich 2 modbus Zähler hab. Das lässt sich aktuell noch nicht mit dem Adapter instanzieren.

                              Mal sehen wie's weiter geht. Habe nun gesehen, das auch schon ein SmartMeter Adapter gibt. 😮

                              Wenn der Modbus könnte ! oder man die zwei linken kann ... -> Es hört nie auf :lol:

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

                                Du kannst doch auch zwei Modbus Adapter installieren

                                Gesendet von iPhone mit Tapatalk Pro

                                1 Reply Last reply Reply Quote 0
                                • Y
                                  ykuendig last edited by

                                  Könnt ich schon; aber ob die dann mit dem einen USB-Adapter und dem einen Bus-Kabel so richtig klar kommen?? :roll:

                                  1 Reply Last reply Reply Quote 0
                                  • E
                                    enricoh831 last edited by

                                    Also wenn du das über mbusd von rs485 zu TCP machst kannst du jeder Instanz eine andere Id geben.und die einzeln abfragen.

                                    Hab so 3 slaves angesprochen. War bei mir aber instabil also mbusd ist ganz gerne Mal ausgestiegen.

                                    Und jede Instanz will ca 30mb RAM.

                                    Bei mir werden es 20-30 slaves wenn alles aus gebaut ist. Werde dann wohl 2-3 Pi nehmen. Dann ist auch nicht alles platt wenn Mal einer ausfällt.

                                    Gesendet von meinem Pixel mit Tapatalk

                                    1 Reply Last reply Reply Quote 0
                                    • Y
                                      ykuendig last edited by

                                      Leider kann ich das zZ noch nicht testen, da bei mir der modbus Adapter nicht läuft.

                                      Jedoch habe ich mir ein paar Gedanken dazu gemacht.

                                      Installieren von mehreren Instanzen des Adapters gegen die gleiche Schnittstelle macht womöglich Probleme.

                                      Möglicherweise ist das (mit @Bluefox 's Hilfe) auch nicht nötig. Der Adapter hat ev. eine kleine Designschwäche. -> :idea:

                                      Da die Client-Adresse mit der Connection nichts zu tun hat, sondern im modbus-Paket zur Adressierung verwendet wird, könnte mann diesen Parameter auch bei jedem einzelnen Datenpunkt einstellen. Somit wäre es möglich so viele Clients anzusprechen bis der Bus platzt (mit nur einer Instanz). Eine weitere Instanz wäre dann nur Nötig, wenn ein zusätzlicher USB-Adapter von Nöten wäre.

                                      1 Reply Last reply Reply Quote 0
                                      • E
                                        enricoh831 last edited by

                                        Endlich noch jemand der den Wunsch äußert das die ID bei den Registern jeweils festgelegt wird.

                                        Ich bin nicht allein….[emoji23]

                                        Gesendet von meinem Pixel mit Tapatalk

                                        1 Reply Last reply Reply Quote 0
                                        • Y
                                          ykuendig last edited by

                                          So: Modbus Adapter schein nun rudimentär zu laufen. Muss dann morgen etwas genauer schauen wieso die Register nicht gleich adressiert werden müssen wie im Handbuch vom Gerät??

                                          1 Reply Last reply Reply Quote 0
                                          • E
                                            enricoh831 last edited by

                                            Hast du ihn mit nem serial USB Adapter laufen ?

                                            Gesendet von meinem Pixel mit Tapatalk

                                            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

                                            543
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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