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.
    • 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
                                • E
                                  enricoh831 last edited by

                                  OK welchen Chip hast da drauf

                                  Gesendet von meinem Pixel mit Tapatalk

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

                                    who knows.

                                    Aber das ist aus dem Log:```
                                    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]
                                    Nachtrag: Habe noch folgenden Hinweis in meinen Unterlagen gefunden: Conrad Y-1081->RS485

                                    Zudem hatte ich davor mit raspicomm versucht und bin gescheitert. - Das war aber noch mit dem Python Crawler

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

                                      @ykuendig:

                                      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?? `

                                      Musst mal schauen ob das eventuell etwas mit dem Haken "verwende Aliase" zu tun hat.

                                      Kann gerade nicht genau sagen wie der heißt da kein Zugriff auf den Adapter.

                                      Gesendet von iPhone mit Tapatalk Pro

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

                                        Das Alias-Dingens muss bei mir raus. Das zerlegt die Adressen. Hab aber noch nicht gecheckt, wie?!

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

                                          Ok.

                                          Dann meinst z.b. "Holding Register" usw!?

                                          Das habe ich bei meinem Zaehler auch.

                                          Hatte da mal irgendwo in den unweiten des WWW ne Erklärung zu gefunden warum das manchmal "anders" abgefragt werden muss.

                                          Aber ich weiß nicht mehr wo das war [emoji20]

                                          Gesendet von iPhone mit Tapatalk Pro

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

                                            Das ist sowiso -pain in the ass-

                                            Mein Schneider Zähler hat so ein komisches Big-Endian Problem und will zudem die meisten Angaben in Float-Registern.

                                            Zu allem Übel haut das aber meine Adressen über den Haufen. Je nach Werkzeug (Programm) muss ich die Adressen schieben, damit die Werte richtig kommen.

                                            Z.B. steht in meinem Handbuch zum Thema Spannung auslesen: Register:3036 Action:R Länge:2 Typ:Float32 Einheit:V Beschreibung:Spannung L–N Mittel.

                                            Wenn ich nun das mit MinimalModbus(Python) lesen möchte, muss ich die Adresse 3036 verwenden. Jedoch bei bei PyModbus oder ioBroker.Modbus die Adresse 3035.

                                            Ich habe dann einfach mal von 3030..3040 eingerichtet und geschaut wo Werte um 235 zurückkommen -> Glück gehabt bei 3035

                                            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