Navigation

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

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Modbus TCP Problem

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      bytec @Glasfaser last edited by

      @glasfaser

      Also aktuelle Einstellung im Bild werden 4 / 39 / 77 korrekt ausgelesen 88 kommt eine gelbe 0

      Laut dem Log steht bei 77 ja wieder 12 register ...

      Bildschirm­foto 2023-01-14 um 19.03.17.png

      2023-01-14 19:02:04.751	debug	Closing client on purpose.
      
      modbus.1
      2023-01-14 19:02:03.750	debug	Cleaning up request fifo.
      
      modbus.1
      2023-01-14 19:02:03.750	debug	Socket closed with error
      
      modbus.1
      2023-01-14 19:02:03.729	info	Disconnected from slave 192.168.0.56
      
      modbus.1
      2023-01-14 19:02:03.729	debug	Closing client on purpose.
      
      modbus.1
      2023-01-14 19:02:03.678	warn	Poll error count: 6 code: {"errorCode":132,"exceptionCode":1,"message":"ILLEGAL FUNCTION"}
      
      modbus.1
      2023-01-14 19:02:03.678	debug	Received pdu describes an error.
      
      modbus.1
      2023-01-14 19:02:03.627	debug	[DevID_1/inputRegs] Poll address 77 - 12 registers
      
      modbus.1
      2023-01-14 19:02:03.627	debug	[DevID_1/inputRegs/39] Calculation result = 34.5, type = number
      
      modbus.1
      2023-01-14 19:02:03.627	debug	[DevID_1/inputRegs/39] Formula = x / 10
      
      modbus.1
      2023-01-14 19:02:03.626	debug	[DevID_1/inputRegs/39] Input Value = 345
      
      modbus.1
      2023-01-14 19:02:03.626	debug	[DevID_1/inputRegs] Poll address 39 DONE
      
      modbus.1
      2023-01-14 19:02:03.589	debug	[DevID_1/inputRegs] Poll address 39 - 1 registers
      
      modbus.1
      2023-01-14 19:02:03.588	debug	[DevID_1/inputRegs/4] Calculation result = 29.3, type = number
      
      modbus.1
      2023-01-14 19:02:03.588	debug	[DevID_1/inputRegs/4] Formula = x / 10
      
      modbus.1
      2023-01-14 19:02:03.588	debug	[DevID_1/inputRegs/4] Input Value = 293
      
      modbus.1
      2023-01-14 19:02:03.588	debug	[DevID_1/inputRegs] Poll address 4 DONE
      
      modbus.1
      2023-01-14 19:02:03.555	debug	[DevID_1/inputRegs] Poll address 4 - 1 registers
      
      modbus.1
      2023-01-14 19:02:03.554	debug	[DevID_1] Poll start ---------------------
      
      modbus.1
      2023-01-14 19:02:02.504	warn	Poll error count: 5 code: {"errorCode":132,"exceptionCode":1,"message":"ILLEGAL FUNCTION"}
      
      modbus.1
      2023-01-14 19:02:02.504	debug	Received pdu describes an error.
      
      modbus.1
      2023-01-14 19:02:02.442	debug	[DevID_1/inputRegs] Poll address 77 - 12 registers
      
      modbus.1
      2023-01-14 19:02:02.442	debug	[DevID_1/inputRegs/39] Calculation result = 34.5, type = number
      
      modbus.1
      2023-01-14 19:02:02.442	debug	[DevID_1/inputRegs/39] Formula = x / 10
      
      modbus.1
      2023-01-14 19:02:02.442	debug	[DevID_1/inputRegs/39] Input Value = 345
      
      modbus.1
      2023-01-14 19:02:02.442	debug	[DevID_1/inputRegs] Poll address 39 DONE
      
      modbus.1
      2023-01-14 19:02:02.410	debug	[DevID_1/inputRegs] Poll address 39 - 1 registers
      
      modbus.1
      2023-01-14 19:02:02.409	debug	[DevID_1/inputRegs/4] Calculation result = 29.3, type = number
      
      modbus.1
      2023-01-14 19:02:02.409	debug	[DevID_1/inputRegs/4] Formula = x / 10
      
      modbus.1
      2023-01-14 19:02:02.409	debug	[DevID_1/inputRegs/4] Input Value = 293
      
      modbus.1
      2023-01-14 19:02:02.409	debug	[DevID_1/inputRegs] Poll address 4 DONE
      
      modbus.1
      2023-01-14 19:02:02.380	debug	[DevID_1/inputRegs] Poll address 4 - 1 registers
      
      modbus.1
      2023-01-14 19:02:02.380	debug	[DevID_1] Poll start ---------------------
      
      modbus.1
      2023-01-14 19:02:01.329	warn	Poll error count: 4 code: {"errorCode":132,"exceptionCode":1,"message":"ILLEGAL FUNCTION"}
      
      modbus.1
      2023-01-14 19:02:01.329	debug	Received pdu describes an error.
      
      modbus.1
      2023-01-14 19:02:01.273	debug	[DevID_1/inputRegs] Poll address 77 - 12 registers
      
      modbus.1
      2023-01-14 19:02:01.272	debug	[DevID_1/inputRegs/39] Calculation result = 34.5, type = number
      
      modbus.1
      2023-01-14 19:02:01.272	debug	[DevID_1/inputRegs/39] Formula = x / 10
      
      modbus.1
      2023-01-14 19:02:01.272	debug	[DevID_1/inputRegs/39] Input Value = 345
      
      modbus.1
      2023-01-14 19:02:01.272	debug	[DevID_1/inputRegs] Poll address 39 DONE
      
      modbus.1
      2023-01-14 19:02:01.240	debug	[DevID_1/inputRegs] Poll address 39 - 1 registers
      
      modbus.1
      2023-01-14 19:02:01.240	debug	[DevID_1/inputRegs/4] Calculation result = 29.3, type = number
      
      modbus.1
      2023-01-14 19:02:01.240	debug	[DevID_1/inputRegs/4] Formula = x / 10
      
      modbus.1
      2023-01-14 19:02:01.239	debug	[DevID_1/inputRegs/4] Input Value = 293
      
      modbus.1
      2023-01-14 19:02:01.239	debug	[DevID_1/inputRegs] Poll address 4 DONE
      
      modbus.1
      2023-01-14 19:02:01.206	debug	[DevID_1/inputRegs] Poll address 4 - 1 registers
      
      modbus.1
      2023-01-14 19:02:01.205	debug	[DevID_1] Poll start ---------------------
      
      modbus.1
      2023-01-14 19:02:00.154	warn	Poll error count: 3 code: {"errorCode":132,"exceptionCode":1,"message":"ILLEGAL FUNCTION"}
      
      modbus.1
      2023-01-14 19:02:00.154	debug	Received pdu describes an error.
      
      modbus.1
      2023-01-14 19:02:00.097	debug	[DevID_1/inputRegs] Poll address 77 - 12 registers
      
      modbus.1
      2023-01-14 19:02:00.096	debug	[DevID_1/inputRegs/39] Calculation result = 34.5, type = number
      
      modbus.1
      2023-01-14 19:02:00.096	debug	[DevID_1/inputRegs/39] Formula = x / 10
      
      modbus.1
      2023-01-14 19:02:00.096	debug	[DevID_1/inputRegs/39] Input Value = 345
      
      modbus.1
      2023-01-14 19:02:00.096	debug	[DevID_1/inputRegs] Poll address 39 DONE
      
      modbus.1
      2023-01-14 19:02:00.065	debug	[DevID_1/inputRegs] Poll address 39 - 1 registers
      
      modbus.1
      2023-01-14 19:02:00.064	debug	[DevID_1/inputRegs/4] Calculation result = 29.3, type = number
      
      modbus.1
      2023-01-14 19:02:00.064	debug	[DevID_1/inputRegs/4] Formula = x / 10
      
      modbus.1
      2023-01-14 19:02:00.064	debug	[DevID_1/inputRegs/4] Input Value = 293
      
      modbus.1
      2023-01-14 19:02:00.064	debug	[DevID_1/inputRegs] Poll address 4 DONE
      
      modbus.1
      2023-01-14 19:02:00.024	debug	[DevID_1/inputRegs] Poll address 4 - 1 registers
      
      modbus.1
      2023-01-14 19:02:00.024	debug	[DevID_1] Poll start ---------------------
      
      modbus.1
      2023-01-14 19:01:58.973	warn	Poll error count: 2 code: {"errorCode":132,"exceptionCode":1,"message":"ILLEGAL FUNCTION"}
      
      modbus.1
      2023-01-14 19:01:58.972	debug	Received pdu describes an error.
      
      modbus.1
      2023-01-14 19:01:58.924	debug	[DevID_1/inputRegs] Poll address 77 - 12 registers
      
      modbus.1
      2023-01-14 19:01:58.923	debug	[DevID_1/inputRegs/39] Calculation result = 34.5, type = number
      
      modbus.1
      2023-01-14 19:01:58.923	debug	[DevID_1/inputRegs/39] Formula = x / 10
      
      modbus.1
      2023-01-14 19:01:58.923	debug	[DevID_1/inputRegs/39] Input Value = 345
      
      modbus.1
      2023-01-14 19:01:58.923	debug	[DevID_1/inputRegs] Poll address 39 DONE
      
      modbus.1
      2023-01-14 19:01:58.890	debug	[DevID_1/inputRegs] Poll address 39 - 1 registers
      
      modbus.1
      2023-01-14 19:01:58.890	debug	[DevID_1/inputRegs/4] Calculation result = 29.3, type = number
      
      modbus.1
      2023-01-14 19:01:58.890	debug	[DevID_1/inputRegs/4] Formula = x / 10
      
      modbus.1
      2023-01-14 19:01:58.889	debug	[DevID_1/inputRegs/4] Input Value = 293
      
      modbus.1
      2023-01-14 19:01:58.889	debug	[DevID_1/inputRegs] Poll address 4 DONE
      
      modbus.1
      2023-01-14 19:01:58.857	debug	[DevID_1/inputRegs] Poll address 4 - 1 registers
      
      modbus.1
      2023-01-14 19:01:58.856	debug	[DevID_1] Poll start ---------------------
      
      modbus.1
      2023-01-14 19:01:57.804	warn	Poll error count: 1 code: {"errorCode":132,"exceptionCode":1,"message":"ILLEGAL FUNCTION"}
      
      modbus.1
      2023-01-14 19:01:57.803	debug	Received pdu describes an error.
      
      modbus.1
      2023-01-14 19:01:57.804	warn	Poll error count: 1 code: {"errorCode":132,"exceptionCode":1,"message":"ILLEGAL FUNCTION"}
      
      modbus.1
      2023-01-14 19:01:57.803	debug	Received pdu describes an error.
      
      modbus.1
      2023-01-14 19:01:57.744	debug	[DevID_1/inputRegs] Poll address 77 - 12 registers
      
      modbus.1
      2023-01-14 19:01:57.743	debug	[DevID_1/inputRegs/39] Calculation result = 34.5, type = number
      
      modbus.1
      2023-01-14 19:01:57.743	debug	[DevID_1/inputRegs/39] Formula = x / 10
      
      modbus.1
      2023-01-14 19:01:57.743	debug	[DevID_1/inputRegs/39] Input Value = 345
      
      modbus.1
      2023-01-14 19:01:57.742	debug	[DevID_1/inputRegs] Poll address 39 DONE
      
      modbus.1
      2023-01-14 19:01:57.711	debug	[DevID_1/inputRegs] Poll address 39 - 1 registers
      
      modbus.1
      2023-01-14 19:01:57.711	debug	[DevID_1/inputRegs/4] Calculation result = 29.3, type = number
      
      modbus.1
      2023-01-14 19:01:57.711	debug	[DevID_1/inputRegs/4] Formula = x / 10
      
      modbus.1
      2023-01-14 19:01:57.710	debug	[DevID_1/inputRegs/4] Input Value = 293
      
      modbus.1
      2023-01-14 19:01:57.710	debug	[DevID_1/inputRegs] Poll address 4 DONE
      
      modbus.1
      2023-01-14 19:01:57.673	debug	[DevID_1/inputRegs] Poll address 4 - 1 registers
      
      modbus.1
      2023-01-14 19:01:57.673	debug	Initialization of scale factors done!
      
      modbus.1
      2023-01-14 19:01:57.673	debug	[DevID_1] Poll start ---------------------
      
      modbus.1
      2023-01-14 19:01:57.672	info	Connected to slave 192.168.0.56
      
      modbus.1
      2023-01-14 19:01:57.541	debug	Initialize Objects for holdingRegs: []
      
      modbus.1
      2023-01-14 19:01:57.540	debug	Add inputRegisters.88_Rücklauf_oben: {"_id":"inputRegisters.88_Rücklauf_oben","type":"state","common":{"name":"","role":"value","type":"number","read":true,"write":false,"def":0,"unit":"°C"},"native":{"regType":"inputRegs","address":88,"deviceId":1,"type":"int16be","len":1,"offset":0,"factor":1}}
      
      modbus.1
      2023-01-14 19:01:57.540	debug	Add inputRegisters.77_Rücklauf_unten: {"_id":"inputRegisters.77_Rücklauf_unten","type":"state","common":{"name":"","role":"value","type":"number","read":true,"write":false,"def":0,"unit":"°C"},"native":{"regType":"inputRegs","address":77,"deviceId":1,"type":"int16be","len":1,"offset":0,"factor":1}}
      
      modbus.1
      2023-01-14 19:01:57.540	debug	Add inputRegisters.39_Vorlauf__oben: {"_id":"inputRegisters.39_Vorlauf__oben","type":"state","common":{"name":"","role":"value","type":"number","read":true,"write":false,"def":0,"unit":"°C"},"native":{"regType":"inputRegs","address":39,"deviceId":1,"type":"int16be","len":1,"offset":0,"factor":1}}
      
      modbus.1
      2023-01-14 19:01:57.540	debug	Add inputRegisters.4_Vorlauf_unten: {"_id":"inputRegisters.4_Vorlauf_unten","type":"state","common":{"name":"","role":"value","type":"number","read":true,"write":false,"def":0,"unit":"°C"},"native":{"regType":"inputRegs","address":4,"deviceId":1,"type":"int16be","len":1,"offset":0,"factor":1}}
      
      modbus.1
      2023-01-14 19:01:57.540	debug	Initialize Objects for inputRegs: [{"_address":4,"name":"Vorlauf unten","description":"","unit":"°C","type":"int16be","len":1,"factor":1,"offset":0,"formula":"x / 10","role":"value","room":"","cw":false,"isScale":false,"deviceId":1,"address":4,"id":"inputRegisters.4_Vorlauf_unten"},{"_address":39,"name":"Vorlauf oben","description":"","unit":"°C","type":"int16be","len":1,"factor":1,"offset":0,"formula":"x / 10","role":"value","room":"","cw":false,"isScale":false,"deviceId":1,"address":39,"id":"inputRegisters.39_Vorlauf__oben"},{"_address":77,"name":"Rücklauf unten","description":"","unit":"°C","type":"int16be","len":1,"factor":1,"offset":0,"formula":"","role":"value","room":"","cw":false,"isScale":false,"deviceId":1,"address":77,"id":"inputRegisters.77_Rücklauf_unten"},{"_address":88,"name":"Rücklauf oben","description":"","unit":"°C","type":"int16be","len":1,"factor":1,"offset":0,"formula":"","role":"value","room":"","cw":false,"isScale":false,"deviceId":1,"address":88,"id":"inputRegisters.88_Rücklauf_oben"}]
      
      modbus.1
      2023-01-14 19:01:57.539	debug	Initialize Objects for coils: []
      
      modbus.1
      2023-01-14 19:01:57.539	debug	Initialize Objects for disInputs: []
      
      modbus.1
      2023-01-14 19:01:57.479	info	starting. Version 5.0.11 in /opt/iobroker/node_modules/iobroker.modbus, node: v14.17.0, js-controller: 4.0.24
      
      modbus.1
      2023-01-14 19:01:57.375	debug	Plugin sentry Initialize Plugin (enabled=true)
      
      modbus.1
      2023-01-14 19:01:57.324	debug	States connected to redis: 127.0.0.1:9000
      
      modbus.1
      2023-01-14 19:01:57.267	debug	States create User PubSub Client
      
      modbus.1
      2023-01-14 19:01:57.266	debug	States create System PubSub Client
      
      modbus.1
      2023-01-14 19:01:57.259	debug	Redis States: Use Redis connection: 127.0.0.1:9000
      
      modbus.1
      2023-01-14 19:01:57.246	debug	Objects connected to redis: 127.0.0.1:9001
      
      modbus.1
      2023-01-14 19:01:57.244	debug	Objects client initialize lua scripts
      
      modbus.1
      2023-01-14 19:01:57.223	debug	Objects create User PubSub Client
      
      modbus.1
      2023-01-14 19:01:57.223	debug	Objects create System PubSub Client
      
      modbus.1
      2023-01-14 19:01:57.222	debug	Objects client ready ... initialize now
      
      modbus.1
      2023-01-14 19:01:57.204	debug	Redis Objects: Use Redis connection: 127.0.0.1:9001
      
      1 Reply Last reply Reply Quote 0
      • O
        oxident last edited by oxident

        Ich muss mich hier auch mal einhängen. Versuche verzweifelt, mein Victron-System per Modbus auszulesen. Fehlermeldung ist ähnlich wie hier oben:

        
        modbus.2 2023-01-15 09:28:45.667	debug	[DevID_100/inputRegs] Poll address 840 - 21 registers
        modbus.2 2023-01-15 09:28:45.666	debug	[DevID_100/inputRegs] Poll address 820 DONE
        modbus.2 2023-01-15 09:28:45.663	debug	[DevID_100/inputRegs] Poll address 820 - 3 registers
        modbus.2 2023-01-15 09:28:45.662	debug	[DevID_100] Poll start ---------------------
        

        Das abzufragende Gerät liefert mir eine Erklärung:
        916322ab-6773-4428-bcd8-d620ffb00280-image.png
        Demnach hat der Modbus-Adapter versucht, ab Adresse 840 direkt 21 Bytes/Adressen (?) abzufragen. Dies scheiterte dann daran, dass es Adresse 847 nicht gibt, was auch stimmt. Er sollte diese Adresse auch gar nicht abfragen:
        e790613b-7d0f-4e65-9f6d-588b9a297541-image.png

        Ich habe jedoch in den Einstellungen des Adapters keine Option gefunden, in der man das Auslesen ganzer Blöcke deaktivieren könnte.

        Oder bin ich da komplett auf dem Holzweg?

        K 1 Reply Last reply Reply Quote 0
        • K
          klassisch Most Active @oxident last edited by klassisch

          @oxident Ich frage auch 840 holding register des Gerätes 100 ab und bekomme keine Fehlermeldung.Ich habe 840 bis 846 eingetragen
          Ich habe allerdings nur einen kleinen single phase 800VA MP 1.
          Venus V2.80 29
          Modbus Adapter 5.0.11, gestern update, war aber auch vorher gut.
          Wie sehen Deine allgemeinen Einstellungen aus?

          O 1 Reply Last reply Reply Quote 0
          • O
            oxident @klassisch last edited by

            @klassisch Ich dachte mir schon dass es bestimmt Nutzer gibt, die damit Ihr Victron-System bedienen.

            Ich glaube, ich habe das Problem gefunden. In den Instanz-Einstellung war hinterlegt, dass er 10 Werte in einem Durchgang liest. Daran lag's wohl:

            c3d8d277-e81d-4f7d-88e8-1715be51087b-image.png

            B 1 Reply Last reply Reply Quote 1
            • B
              bytec @oxident last edited by

              @oxident

              Super das war es jetzt geht es auch bei mir.

              1 Reply Last reply Reply Quote 0
              • K
                klassisch Most Active last edited by

                Freut mich, daß es jetzt auch bei Euch geht. Hab aber nicht verstanden, woran es lag.

                Bei mir sieht es so aus:
                deeeda45-3379-4f7d-ac8d-c548dc441b73-grafik.png

                B 1 Reply Last reply Reply Quote 0
                • B
                  bytec @klassisch last edited by bytec

                  @klassisch

                  Also ich habe bei mir jetzt unter Max Leseanforderungslänge eine 1 bei Float und Integer eingetragen und seitdem werden alle Register in einer Instanz sauber ausgelesen.

                  Wahrscheinlich hat sich vorher wenn die Register nah beieinander waren etwas überlappt beim auslesen.

                  K 1 Reply Last reply Reply Quote 0
                  • K
                    klassisch Most Active @bytec last edited by

                    @bytec Also da, wo bei mir 100 (Float) und 128 (Integer) steht, steht bei Euch jetzt zwingend 1?
                    Aber bei mir scheint es zu gehen. Keine Fehlermeldung etc.
                    Man muß nicht alles verstehen, Hauptsache es läuft bei Euch jetzt.

                    B 1 Reply Last reply Reply Quote 0
                    • B
                      bytec @klassisch last edited by

                      @klassisch

                      ja genau da habe ich bei beiden eine 1 eingetragen so wie Oxident das vorgschlagen hat.

                      1 Reply Last reply Reply Quote 1
                      • O
                        oxident last edited by

                        @klassisch @bytec Ja, das war in der Tat das Problem. Ich fänd es ja auch sinniger, wenn der Adapter "in einem Rutsch" mehr lesen könnte, aber das scheint bei uns nicht zu klappen...

                        K 1 Reply Last reply Reply Quote 0
                        • K
                          klassisch Most Active @oxident last edited by

                          @oxident Habt Ihr Venus oder Cerbo GX? Bei mir läuft Venus auf einem alten Raspi. Reicht ja bei meinem Minimalsystem.

                          B O 2 Replies Last reply Reply Quote 0
                          • B
                            bytec @klassisch last edited by

                            @klassisch

                            Ich weder noch. Wir haben eine Nibe Anlage aber das hat glaube nicht wirklich mit der Anlage Ansich zu tun sondern wie der Adapter die Register ausliest und wenn er sie jetzt einzeln ausliest scheint das zu funktionieren.

                            1 Reply Last reply Reply Quote 0
                            • O
                              oxident @klassisch last edited by

                              @klassisch Cerbo ... weil ich den RS485-Adapter zum Akku beim Raspi nicht zum Laufen gebracht habe. Aber dort gab es die Probleme mit dem Bulkread auch.

                              Da das Problem von mir und @bytec irgendwie logisch erscheint frage ich mich echt, was bei Dir anders läuft. Mal blöd gefragt: Die Werte werden aber bei Dir auch regelmäßig aktualisiert und in der Venus-Console werden im Modbus-Bereich auch keine Fehler angezeigt?

                              K 1 Reply Last reply Reply Quote 0
                              • K
                                klassisch Most Active @oxident last edited by klassisch

                                @oxident
                                Bei mir sind keine Modbus Fehler hinterlegt
                                ea59d14e-b8b8-403f-a86b-4dd6e510e8c8-grafik.png

                                3015ef1a-27b4-42b6-906f-19fe0f02bd9a-grafik.png

                                Und ja, die Daten werden in ioBroker aktualisiert.
                                Habe gerade testweise das Laden des Akkus angestoßen und ich sehe, daß sich der Akkustrom ändert. 840 Spannung wird noch dauern (Edit, hat sich gerade geändert). Darf auch nicht zu lange laden. Der Netzbetreiber hat für heute ab 17:00 eine Strommangelwarnung "rot, Verbrauch reduzieren" ausgegeben.

                                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

                                912
                                Online

                                31.9k
                                Users

                                80.1k
                                Topics

                                1.3m
                                Posts

                                5
                                34
                                2151
                                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