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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    Modbus adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • 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
                                          • Y
                                            ykuendig last edited by

                                            Jepp. so ein ^noname?^Ding vom blauen C (CH).

                                            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

                                            733
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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