Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Modbus Adapter - Unterstützung für RTU over TCP

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    Modbus Adapter - Unterstützung für RTU over TCP

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

      Ah, das mit dem Wireshark und der Porteinstellung muss ich mir anschauen,

      DANKE für die Info.

      Mir ist aufgefallen das Wireshark auch RTU over TCP nicht kann, sprich er erkennt die

      Pakete nicht als Modbus-Pakete 😞

      Ich hab jetzt den Aufbau mit Port 502 gemacht, sollte ja kein Problem sein.

      Ich habe ein Zip-File mit den Tests beigefügt. Es steht alles im ReadMe.txt drin

      (falls was nicht läuft oder unverständlich sein sollte, bitte fragen)

      Danke auf jeden Fall schonmal für deine Mühe

      268_testrtuovertcp.zip

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

        @tschombe:

        Ah, das mit dem Wireshark und der Porteinstellung muss ich mir anschauen,

        DANKE für die Info.

        Mir ist aufgefallen das Wireshark auch RTU over TCP nicht kann, sprich er erkennt die

        Pakete nicht als Modbus-Pakete 😞

        Ich hab jetzt den Aufbau mit Port 502 gemacht, sollte ja kein Problem sein.

        Ich habe ein Zip-File mit den Tests beigefügt. Es steht alles im ReadMe.txt drin

        (falls was nicht läuft oder unverständlich sein sollte, bitte fragen)

        Danke auf jeden Fall schonmal für deine Mühe

        TestRTUoverTCP.zip `
        Du hast sehr geholfen.

        Ich habe implementiert und konnte mit dem Simulator kommunizieren.
        48_2016-10-19_17_00_03-modbus_slave_-_mbslav1.mbs.png

        1 Reply Last reply Reply Quote 0
        • T
          tschombe last edited by

          Wahnsinn!!!

          Das probiere ich heut abend gleich live aus wenn ich zu Hause bin.

          Kann ich mir da einfach die aktuelle Version des modbus Adapters von Github installieren

          oder muss ich irgendetwas beachten

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

            @tschombe:

            Wahnsinn!!!

            Das probiere ich heut abend gleich live aus wenn ich zu Hause bin.

            Kann ich mir da einfach die aktuelle Version des modbus Adapters von Github installieren

            oder muss ich irgendetwas beachten `
            Einfach vom git installieren

            1 Reply Last reply Reply Quote 0
            • T
              tschombe last edited by

              ähm, blöd gefragt, aber ich mach einfach ein

              npm install iobroker.modbus auf der Konsole (raspi)?

              Ich hab eine ältere Installation und werde die erstmal auf den aktuellsten Stand bringen

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

                @tschombe:

                ähm, blöd gefragt, aber ich mach einfach ein

                npm install iobroker.modbus auf der Konsole (raspi)?

                Ich hab eine ältere Installation und werde die erstmal auf den aktuellsten Stand bringen `

                cd  /opt/iobroker
                npm install https://github.com/ioBroker/ioBroker.modbus/tarball/master --production
                
                1 Reply Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators last edited by

                  Hast du den Pfad zu github?

                  dann gib ihn hier ein:
                  144_iobroker_github_install.jpg
                  Das Octocat Icon ist das dritte Icon oben links im Reiter Adapter

                  Gruß

                  Rainer

                  1 Reply Last reply Reply Quote 0
                  • T
                    tschombe last edited by

                    Danke, ich denke ich hab jetzt die aktuelle Version am laufen.

                    als Adapter-Version wird mir 0.4.1 angezeigt.

                    Die Kommunikation geht leider noch nicht, ich bin noch am prüfen woran es liegt.

                    Was mir aber schonmal aufgefallen ist:

                    • Der W&T COM-Server der bei mir die Umsetzung von TCP auf Seriell vor der Lüftungsanlage macht lässt immer nur

                    eine Verbindung zu einer Zeit zu. Wenn ich mit dem ModbusPoll Tool disconnecte sehe ich das in der Weboberfläche des COMServers,

                    wenn ich aber den modbus-Adapter von ioBroker deaktiviere, geht leider die Verbindung nicht weg, ich muss ioBroker komplett beenden

                    (iobroker stop) und neu starten (iobroker start)

                    Es wäre schön wenn der Disconnect beim deaktivieren der modbus-instanz erfolgen würde, sonst kann er sich nach z.B. einer Konfigurationsänderung

                    nicht mehr verbinden

                    Im Log sehe ich folgendes:

                    host-lxccuhost2	2016-10-19 23:17:20.948	info	stopInstance system.adapter.modbus.0 killing pid 1075
                    host-lxccuhost2	2016-10-19 23:17:20.947	info	stopInstance system.adapter.modbus.0
                    host-lxccuhost2	2016-10-19 23:17:20.942	info	object change system.adapter.modbus.0
                    
                    

                    Liegt es evtl daran das der Adapter-Prozess gekillt wird und sich somit nicht sauber abmelden kann?

                    1 Reply Last reply Reply Quote 0
                    • T
                      tschombe last edited by

                      Noch was fällt mir auf:

                      ich habe total häufig das Verhalten, das die modbus-Instanz rot ist und mir anzeigt:

                      Verbunden mit host: falsch

                      Lebenszeichen: falsch

                      Verbunden mit modbus: wahr

                      d.h. ich habe eine Verbindung zum Slave (zeigt mit auch der COMServer an), aber nicht zum host?

                      Habe eine SingleHost-Installation auf einem Raspi, im Log steht nix auffälliges:

                      modbus-0	2016-10-19 23:10:38.060	info	Connected to slave
                      modbus-0	2016-10-19 23:10:37.784	warn	Serial is not available
                      modbus-0	2016-10-19 23:10:37.729	info	starting. Version 0.4.1 in /opt/iobroker/node_modules/iobroker.modbus
                      host-lxccuhost2	2016-10-19 23:10:33.910	info	instance system.adapter.modbus.0 started with pid 1075
                      host-lxccuhost2	2016-10-19 23:10:33.856	info	"system.adapter.modbus.0" enabled
                      
                      

                      Zusatzinfo:

                      da ich ja immer iobroker komplett beende und neu starte wg. dem connect zum slave ist mir folgendes aufgefallen:

                      Nach dem start von iobroker wird der Adapter grün und bleibt es auch, so lange bis ich auf den Tab "Objekte" wechsle um mir

                      die Datenpunkte des modbus Adapters anschaue, wenn ich dann zurückwechsle auf "Instanzen" ist er rot…

                      1 Reply Last reply Reply Quote 0
                      • T
                        tschombe last edited by

                        Hi,

                        ich versuche gerade von der Arbeit aus nebenbei etwas zu testen und bin per VPN

                        zu mir nach Hause eingewählt. Hab hier eine ioBroker-Windows-Installation und wollt das

                        da mal testen, aber die Verbindung nach Hause scheint etwas zäh zu sein.

                        Mit ModbusPoll kann ich kommunizieren, aber mit dem adapter bekomme ich:

                        warn	Poll error count: 1 code: {"err":"timeout"}
                        
                        

                        Kann ich im Adapter einen Timeout einstellen?

                        Poll delay hab ich auf 5000 ms

                        Reconnect-Zeit auf 60000 ms

                        Pulsetime auf 5000

                        Max Lese Request-Länge: 20 register

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

                          @tschombe:

                          Hi,

                          ich versuche gerade von der Arbeit aus nebenbei etwas zu testen und bin per VPN

                          zu mir nach Hause eingewählt. Hab hier eine ioBroker-Windows-Installation und wollt das

                          da mal testen, aber die Verbindung nach Hause scheint etwas zäh zu sein.

                          Mit ModbusPoll kann ich kommunizieren, aber mit dem adapter bekomme ich:

                          warn	Poll error count: 1 code: {"err":"timeout"}
                          
                          

                          Kann ich im Adapter einen Timeout einstellen?

                          Poll delay hab ich auf 5000 ms

                          Reconnect-Zeit auf 60000 ms

                          Pulsetime auf 5000

                          Max Lese Request-Länge: 20 register `
                          Sieht so aus, als ob ich vergessen habe timeout in der Konfiguration-Dialog anzuzeigen.

                          Du kannst timeout momentan direkt im Objekt system.adapter.modbus.0 einstellen.

                          1 Reply Last reply Reply Quote 0
                          • T
                            tschombe last edited by

                            ok, danke für die Info, kannst du mir bitte kurz nen tip geben wie / wo ich das einstelle?

                            über die admin oberfläche oder in irgendeiner datei?

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

                              @tschombe:

                              ok, danke für die Info, kannst du mir bitte kurz nen tip geben wie / wo ich das einstelle?

                              über die admin oberfläche oder in irgendeiner datei? `
                              Admin. Reiter Objekte und dann auf Stift rechts klicken.

                              1 Reply Last reply Reply Quote 0
                              • T
                                tschombe last edited by

                                bei mir ist leider kein stift beim adapter 😢 😢 😢

                                habe nur admin adapter und modbus adapter im test laufen,

                                alles auf aktuellem stand, modbus vom github

                                268_capture.jpg

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

                                  @tschombe:

                                  bei mir ist leider kein stift beim adapter 😢 😢 😢

                                  habe nur admin adapter und modbus adapter im test laufen,

                                  alles auf aktuellem stand, modbus vom github

                                  Capture.JPG `
                                  Es ist auch nicht das Objekt, was ich genannt habe.

                                  Schalte bitte Experten Modus ein (das Knopf mit dem Person)

                                  1 Reply Last reply Reply Quote 0
                                  • T
                                    tschombe last edited by

                                    ah, cool, danke…

                                    Ich glaub ich hab jetzt das richtige objekt und finde da unter:

                                    native->params folgendes:

                                    {
                                      "type": "tcp",
                                      "bind": "192.168.2.20",
                                      "port": "502",
                                      "comName": "",
                                      "baudRate": "9600",
                                      "dataBits": "8",
                                      "stopBits": "1",
                                      "parity": "none",
                                      "deviceId": "1",
                                      "slave": "0",
                                      "showAliases": false,
                                      "directAddresses": false,
                                      "round": "2",
                                      "poll": "5000",
                                      "recon": "60000",
                                      "pulsetime": "5000",
                                      "maxBlock": "20",
                                      "disInputsOffset": "10001",
                                      "coilsOffset": "1",
                                      "inputRegsOffset": "30001",
                                      "holdingRegsOffset": "40001"
                                    }
                                    
                                    

                                    muss ich da etwas mit timeout einfügen?

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

                                      @tschombe:

                                      ah, cool, danke…

                                      Ich glaub ich hab jetzt das richtige objekt und finde da unter:

                                      native->params folgendes:

                                      {
                                        "type": "tcp",
                                        "bind": "192.168.2.20",
                                        "port": "502",
                                        "comName": "",
                                        "baudRate": "9600",
                                        "dataBits": "8",
                                        "stopBits": "1",
                                        "parity": "none",
                                        "deviceId": "1",
                                        "slave": "0",
                                        "showAliases": false,
                                        "directAddresses": false,
                                        "round": "2",
                                        "poll": "5000",
                                        "recon": "60000",
                                        "pulsetime": "5000",
                                        "maxBlock": "20",
                                        "disInputsOffset": "10001",
                                        "coilsOffset": "1",
                                        "inputRegsOffset": "30001",
                                        "holdingRegsOffset": "40001"
                                      }
                                      
                                      

                                      muss ich da etwas mit timeout einfügen? `
                                      Habe modbus erweitet. Bitte vom git updaten.

                                      1 Reply Last reply Reply Quote 0
                                      • T
                                        tschombe last edited by

                                        Super!!!!

                                        Was jetzt geht:

                                        • Timeout konfigurierbar, dadurch bekomme ich jetzt auch über VPN einen Connect!!!

                                        • Sauber Disconnect beim Disablen des Adapters, dadurch wird der Port meines COM-Servers frei!!!

                                        Habe gerade 2 Holding register gelesen (über VPN!!!),

                                        allerdings ist mein Adapter dann wieder auf Rot gesprungen:

                                        Verbunden mit host: falsch

                                        Lebenszeichen: falsch

                                        Verbunden mit modbus: wahr

                                        Nach dem start von iobroker wird der Adapter grün und bleibt es auch, so lange bis ich auf den Tab "Objekte" wechsle um mir

                                        die Datenpunkte des modbus Adapters anschaue, wenn ich dann zurückwechsle auf "Instanzen" ist er rot…

                                        hier das log dazu von der aktuellen Version (und der Adapter steht dank der neu entdeckten Expertenfunktion auf debug):

                                        inMem	2016-10-20 16:52:17.460	debug	message modbus.0.* modbus.0.info.pollTime val=61, ack=true, ts=1476975137459, q=0, from=system.adapter.modbus.0, lc=1476975137459
                                        inMem	2016-10-20 16:52:17.459	debug	message modbus.0.* modbus.0.holdingRegisters.1_value1 val=15, ack=true, ts=1476975137458, q=0, from=system.adapter.modbus.0, lc=1476975137458
                                        inMem	2016-10-20 16:52:17.457	debug	message modbus.0.* modbus.0.holdingRegisters.0_value0 val=0, ack=true, ts=1476975137457, q=0, from=system.adapter.modbus.0, lc=1476975137457
                                        inMem	2016-10-20 16:52:17.402	debug	message modbus.0.* modbus.0.info.connection val=true, ack=true, ts=1476975137398, q=0, from=system.adapter.modbus.0, lc=1476975137398
                                        modbus-0	2016-10-20 16:52:17.398	info	Connected to slave
                                        modbus-0	2016-10-20 16:52:14.215	info	starting. Version 0.4.2 in D:/GitHub/iobroker/node_modules/iobroker.modbus
                                        modbus-0	2016-10-20 16:52:14.191	debug	statesDB connected
                                        modbus-0	2016-10-20 16:52:14.186	debug	objectDB connected
                                        host-conentfst08	2016-10-20 16:52:13.587	info	instance system.adapter.modbus.0 started with pid 11132
                                        
                                        

                                        Vielleicht liegt es aber auch an der "magern" VPN Verbindung, ich teste auf jeden Fall heut abend nochmal im Heimnetzwerk

                                        1 Reply Last reply Reply Quote 0
                                        • T
                                          tschombe last edited by

                                          Hi,

                                          so, sitze jetzt zu Hause im Heimnetz und habe folgenden Testaufbau:

                                          Windows Notebook mit ioBroker-Installation (nur admin und modbus Adapter, aktuell aus github ) und Wireshark

                                          iobroker gestartet, modbus Adapter ist deaktiviert.

                                          Dann modbus Adapter aktiviert, modbus Adapter wird grün

                                          wechsel auf Objekte und zurück, modbus Adapter ist rot.

                                          (Verbunden mit host: falsch, Lebenszeichen: falsch, Verbunden mit modbus: wahr)

                                          Der Zustand bleibt dann so, kein neuer "Poll-Versuch" o.ä. des Adapters, keinerlei Logeinträge mehr.

                                          Im Anhang ein Zip-File mit dem zugehörigen Wireshark-Protokoll und dem ioBroker-Log.

                                          Kannst du da irgendetwas erkennen?
                                          268_diag1.zip

                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            tschombe last edited by

                                            um zwischenzeitlich irgendwie weiter zu kommen hab ich auf meinem Windows testsystem

                                            mal den modbus-slave Simulator im RTU over TCP Modus laufen lassen.

                                            Da verbindet sich der Adapter und bleibt auch auf grün, allerdings funktioniert das Schreiben

                                            der Werte nicht richtig. Teilweise werden die Werte nicht übernommen.

                                            Hier ein Auszug aus dem Log:

                                            inMem	2016-10-20 19:34:32.922	debug	message modbus.0.* modbus.0.holdingRegisters.1_value1 val=44, ack=true, ts=1476984872921, q=0, from=system.adapter.modbus.0, lc=1476984872921
                                            modbus-0	2016-10-20 19:34:31.895	error	Cannot write [0]: [object Object]
                                            inMem	2016-10-20 19:34:31.418	debug	message modbus.0.* modbus.0.holdingRegisters.1_value1 val=48, ack=false, ts=1476984871418, q=0, from=system.adapter.admin.0, lc=1476984871418
                                            inMem	2016-10-20 19:34:28.396	debug	message modbus.0.* modbus.0.holdingRegisters.0_value0 val=6, ack=true, ts=1476984868396, q=0, from=system.adapter.modbus.0, lc=1476984868396
                                            inMem	2016-10-20 19:34:26.892	debug	message modbus.0.* modbus.0.holdingRegisters.0_value0 val=8, ack=false, ts=1476984866891, q=0, from=system.adapter.admin.0, lc=1476984866891
                                            inMem	2016-10-20 19:34:22.419	debug	message modbus.0.* modbus.0.holdingRegisters.1_value1 val=44, ack=true, ts=1476984862418, q=0, from=system.adapter.modbus.0, lc=1476984862418
                                            inMem	2016-10-20 19:34:19.411	debug	message modbus.0.* modbus.0.holdingRegisters.0_value0 val=6, ack=true, ts=1476984859410, q=0, from=system.adapter.modbus.0, lc=1476984859410
                                            inMem	2016-10-20 19:33:56.363	debug	message modbus.0.* modbus.0.info.pollTime val=14, ack=true, ts=1476984836363, q=0, from=system.adapter.modbus.0, lc=1476984836363
                                            inMem	2016-10-20 19:33:56.362	debug	message modbus.0.* modbus.0.holdingRegisters.1_value1 val=55, ack=true, ts=1476984836362, q=0, from=system.adapter.modbus.0, lc=1476984836362
                                            inMem	2016-10-20 19:33:56.361	debug	message modbus.0.* modbus.0.holdingRegisters.0_value0 val=5, ack=true, ts=1476984836361, q=0, from=system.adapter.modbus.0, lc=1476984836361
                                            inMem	2016-10-20 19:33:56.358	debug	message modbus.0.* modbus.0.info.connection val=true, ack=true, ts=1476984836352, q=0, from=system.adapter.modbus.0, lc=1476984836352
                                            modbus-0	2016-10-20 19:33:56.348	info	Connected to slave
                                            modbus-0	2016-10-20 19:33:55.588	info	starting. Version 0.4.2 in D:/GitHub/iobroker/node_modules/iobroker.modbus
                                            modbus-0	2016-10-20 19:33:55.562	debug	statesDB connected
                                            modbus-0	2016-10-20 19:33:55.556	debug	objectDB connected
                                            host-conentfst08	2016-10-20 19:33:50.938	info	instance system.adapter.modbus.0 started with pid 16736
                                            
                                            

                                            Auch dazu hab ich mal einen Wireshark Mitschnitt generiert.

                                            Anscheinend verhält sich mein "Live" Device etwas anders als der Simulator 😞 😞 😞

                                            268_diag2.zip

                                            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

                                            631
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            60
                                            8363
                                            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