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

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Modbus adapter

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

      Hallo...
      nach langer Zeit habe ich heute mal den Modbus-Adapter upgedatet.
      Von 1.1.1 auf 3.0.0
      Seitdem läuft Modbus TCP nicht mehr.
      Adapter ist zwar grün, schmeiß aber die Meldung list of port undefined und meine SPS reagiert nicht mehr.
      Ist das Problem lösbar oder muss ich auf den alten Adapter zurück?

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

        Hallo,
        ich "kämpfe" auch schon ein paar Tage mit dem Modbus. Hier soll ein DHV 4013 Stromzähler abgefragt werden. Der erste USB-Adapter ging wegen ständiger Fehler zurück an Amazon. Der zweite lief so halbwegs. Der dritte läuft "zu Fuß" per Terminal und seriell per Node-Red. Mit dem Modbus- Adapter vom iobroker leider ständig Timeouts. 5 Register klappen, ab dem 6. hagelt es Fehler.

        Danach fängt sich der Port nicht mehr. Ich musste dann erst per USB-reset den USB - Seriell Adapter zurücksetzen. Das geht per Script, ist aber wohl nicht die feine englische Art.

        Unter Node-Red bekomme ich jetzt die gewünschten Werte übertragen. Dem Modbus-Adapter vom iobroker könnte eine Option, welche die Pause zwischen den Abfragen einstellbar macht, nicht schaden.

        1 Reply Last reply Reply Quote 0
        • F
          Farmer-cb last edited by Farmer-cb

          Hallo
          kämpfe gerade mit den Diskreten Eingängen
          möchte meine Ladestation (PhönixContact EM-CP-PP-ETH) per modbus-TCP abfragen
          Diskrete-Ausgänge Holding-Registers / Eingangsregister Abfragen funktionieren einwandfrei.
          Sobald ich bei Diskrete Eingänge etwas einstelle, bleibt der Adapter bei Gelb stehen
          Fehlermeldung:

          modbus.0	2019-08-04 16:36:10.914	warn	Poll error count: 5 code: {"errorCode":130,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}
          modbus.0	2019-08-04 16:36:09.910	warn	Poll error count: 4 code: {"errorCode":130,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}
          modbus.0	2019-08-04 16:36:08.905	warn	Poll error count: 3 code: {"errorCode":130,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}
          modbus.0	2019-08-04 16:36:07.901	warn	Poll error count: 2 code: {"errorCode":130,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}
          modbus.0	2019-08-04 16:36:06.897	warn	Poll error count: 1 code: {"errorCode":130,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}
          

          muss ich das noch irgendwo etwas einstellen????
          modbus1.jpg
          modbus2.jpg
          per qModMaster funktioniert die Abfrage

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

            Das deutet auf ein Adressproblem hin. Unter www.simplymodbus.ca findet sich folgender Hinweis:

            The data address received in the query is not an allowable address for the slave. More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02.
            

            Du versuchst anscheinend auf eine "verbotene" Adresse zuzugreifen.
            Hast du schon mal einen Mitschnitt mit Wireshark gemacht. Damit kann man recht gut sehen was ioBroker fragt und der Slave antwortet. Du kannst den Mitschnitt auch gerne hier posten und ich versuche zu helfen.

            Gruß
            Dolomiti

            F 1 Reply Last reply Reply Quote 0
            • F
              Farmer-cb @Dolomiti last edited by

              @Dolomiti
              wie kann es sein, wenn im qModMaster genau diese Adressen funktionieren.
              der Wireshark muss dann auf dem iobroker laufen oder

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

                Ich hatte an anderer Stelle auch schon mal das Problem, dass ich die Adresse +1 oder -1 eingeben musste. Manche Geräte/Programme fangen bei Null andere bei Eins an zu zählen.
                Es wäre zum mitschneidern am einfachsten, wenn Wireshark auf dem ioBroker laufen würde, ansonsten musst du einen Switch haben, der an einem Port alles mitsniffen kann. So habe ich es bisher gemacht.

                1 Reply Last reply Reply Quote 0
                • F
                  Farmer-cb last edited by

                  so wie es aussieht, habe ich den Fehler gefunden.
                  hier muss der Haken gesetzt sein:
                  6ae019b3-9ef3-4eb4-bc70-4374c1c2ba10-image.png

                  seitdem läuft es

                  Dank trotzdem

                  Flexer 1 Reply Last reply Reply Quote 0
                  • Flexer
                    Flexer @Farmer-cb last edited by Flexer

                    @Bluefox Mal eine Frage. Kann man diesen Wasserzähler damit auslesen? Habe diesen von den Stadtwerken bekommen.

                    Habe mal gelesen, dass man nur einen kompatiblen USB Stick zum empfangen der Daten benötigt. Ich frage mich nur wie ich das Hardwareseitig umsetze.

                    https://www.kamstrup.com/de-de/wasserzaehlerloesungen/intelligente-wasserzaehler/multical-21

                    1 Reply Last reply Reply Quote 0
                    • M
                      martin111 last edited by

                      Ich brauche wieder einmal eure Hilfe.

                      Will von ein CMI von TA die Analog Werte auslesen.
                      Da müsste ja im Iobroker Master als Typ im Adapter eingestellt werden, oder?

                      Nur bekomme ich keine Verbindung, wenn ich es so einstelle
                      Master.PNG

                      CMI.PNG

                      Stelle ich den Typ auf Slave, kann ich eine Verbindung herstellen, wenn ich die IP auf 0.0.0.0 ändere
                      Slave.PNG

                      Nur kommen keine Werte von der CMI an. Habe einen Punkt unter Eingangsregister, sowie Holding Registers angelegt.
                      Eingang.PNG
                      Holding.PNG

                      Übersehe ich was?

                      Unter Fhem kann ich per Modbus einwandfrei auf die CMI zugreifen.

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

                        Hallo.

                        Könnte mir mal bitte wer weiterhelfen.
                        Habe diesen Strom/Energyzähler :
                        http://www.algodue.com/uem80.html

                        verbunden habe ich ihn mit einem usb-485 adapter am raspberry.

                        Habe auch ein Datenblatt zu den Modbus, aber für mich ist das leider nur "Spanisch"
                        Am PC mit der Orginalen Software des Herstellers kann ich mir die Daten des Zählers ansehen.

                        Habe schon so ziemlich alle typen im Eingangs und Holding register durchprobiert aber leider ohne erfolg.

                        Hat irgendwer einen tipp für mich? würde mich sehr freuen
                        danke

                        Modbus parameter.PNG

                        UEC_UEM_Modbus-protocol_multilingual-manual-v006_EI.pdf

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

                          @martin111

                          Wieso im Modbus Adapter IP = 10.0.0.21 und darunter (denke ist FHEM) 10.0.0.6 ?

                          M 1 Reply Last reply Reply Quote 0
                          • wendy2702
                            wendy2702 @mike1976 last edited by

                            @mike1976

                            Du hast also von der Bezeichnung her wirklich den hier: UEM80-4D R for RS485 Modbus RTU/ASCII communication?

                            Kommuniziert die "Originale SW" des Herstellers auch über Modbus mit dem Zähler?

                            Mal etwas probiert bei z.B. Holding oder Eingangsregister einzutragen?

                            Stimmen die Kommunikations Einstellungen mit dem was im Zähler konfiguriert ist über ein ?

                            1 Reply Last reply Reply Quote 0
                            • M
                              martin111 @wendy2702 last edited by martin111

                              @wendy2702
                              Die 10.0.0.6 ist die Adresse vom IOB, die 10.0.0.21 ist die Adresse vom CMI.

                              Das zweite Bild ist von der CMI, dort ist die 10.0.0.6 eingetragen, damit die CMI weis wohin sie die Daten schicken soll

                              Fehler gefunden, man sollte auf der CMI Seite auch die richtige Adresse einstellen, hatte aus versehen eine 10 statt einer 1 stehen.
                              Läuft nun.
                              Aber ich muß den Modbus-Adapter auf Slave einstellen und die IP 0.0.0.0 verwenden, dann funktioniert es.

                              1 Reply Last reply Reply Quote 0
                              • M
                                mike1976 last edited by

                                @wendy2702
                                Ja habe den UEM80-4D R for Mudbus RTU/ASCII
                                Ja mit der Orginal SW kann ich die Daten auslesen am PC

                                Holding bzw Eingangsregister habe ich eingegenben.
                                bekomme aber immer:
                                modbus log.PNG

                                bin mir nicht sicher bezüglich der Adressen, aber wenn ich das Datenblatt richtig verstehe,
                                müsste bzw fängt er im register 0 an mit einem wort länge 2 wo der wert
                                "V1 • L-N voltage phase 1" hinterlegt sein muss. (also die Spannung von L1)
                                Modbus Eingangsregister.PNG

                                Kommunikation einstellungen müssten eigentlich passen.
                                9600 ist auch die Baud die am PC läuft
                                verbunden bin ich mit einem usb 485 Kabel
                                rs485.jpg

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

                                  Adresse 0 kann nicht sein.

                                  Versuche mal 4096

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    mike1976 last edited by

                                    @wendy2702 said in Modbus adapter:

                                    4096

                                    mir ist was anderes aufgefallen:
                                    modbus port.PNG

                                    sollte bei der port auswahl nicht /dev/ttyUSB0 für den adapter auftauchen?

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      mike1976 last edited by mike1976

                                      @wendy2702

                                      okay habe mal ein neues system aufgesetzt und siehe das es läuft.
                                      keine ahnung warum er beim alten system den dev/ttyUSB0 nicht gefunden hat.

                                      So aber nun würde mich mal interessieren wie du auf die adresse 4096 kommst die übringends funktioniert.
                                      auch drüber 4098, 4100, 4102,.... bekomme ich werte.
                                      Ich versteh im moment nur nicht den zusammenhang zu der aufgeführten liste bei der doku.

                                      Edit:
                                      Okay, sorry stand auf der Leitung sind ja Hex werte 1000HEX = 4096 Dezimal 🙂

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        Regmus last edited by

                                        Hallo zusammen,
                                        ich hatte bisher FHEM im Einsatz um meinem Stromzähler (ECS/Optec Stromzähler) über Modbus RTU auszulesen. Dort ging es aber auch nur mit dem Attribut "skipGarbage", welches eine 00 in der Antwort vom Zähler ignoriert. Wieso das der Zähler macht, weiß ich nicht, aber es scheint nicht wirklich Modbus-konform zu sein und ist auch nicht abzuschalten.

                                        Nun die Frage: Gibt es beim ioBroker Modbus Adapater etwas vergleichbares? Hab gefühlt alle Optionen in den Einstellungen durch, aber nichts bringt mir den richtigen Effekt. Bekomme aufgrund dieser 00 im Log immer CRC Fehler.
                                        Beispiel aus dem Log:
                                        2019-10-23 17:21:05.231 - error: modbus.1 Wrong CRC for frame: 0,1,3,2,255,16,248,120
                                        Die 0 am Anfang ist das Problem....

                                        Jemand ne Idee?

                                        Danke euch im Voraus!

                                        1 Reply Last reply Reply Quote 0
                                        • T
                                          TimoS. last edited by TimoS.

                                          EDIT: Beim nochmal durchlesen, hab ichs gefunden. Anwort vom 15.08.2019. "Nicht auf 16bit ausrichten" bringt die Lösung.


                                          Hallo zusammen. Ich habe ein Problem beim Auslesen von diskreten Eingängen (1bit). Adresse ist laut Beschreibung 205

                                          Beschreibung.PNG

                                          und ich bekomme mit einem anderen Programm auch die erwartete 1 angezeigt.

                                          Wert mit Modbus Poll ausgelesen funktioniert.PNG

                                          Frage ich nun unter dieser Adresse den Wert mit dem Modbus Adapter ab, bekomme ich keinen Wert und der Adapter geht auf Störung.

                                          205_diskreter_Eingang_funktioniert_nicht.PNG

                                          in objekte.PNG

                                          adapter fehler.PNG

                                          Andere Werte funktionieren problemlos. Beispiel Adresse 300 im Holding läuft.

                                          300_Holding_funktioniert.PNG

                                          Was mache ich falsch?

                                          Gruß

                                          Timo

                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            TimoS. last edited by

                                            Hallo, ich versuche gerade verzweifelt einen Wert in ein Register zu schreiben. Es hat scheinbar irgendwas mit dem Funktionscode FC16 bzw. FC6 zu tun. Das Gerät akzeptiert nur FC16. Getestet hab ich das mit dem Programm "Modbus Poll". Dort tritt der Fehler "illigal funktion" beim Versuch mit FC6 auf. Mit FC16 funktioniert es. Hier screenshots zu den Einstellungen in "Modbus Poll":

                                            Connection_Setup.PNG

                                            Modbus_poll.PNG

                                            Send_FC6_illigal.PNG

                                            Send_FC16_ok.PNG

                                            In ioBroker sehen meine Einstellungen so aus:

                                            Adapter_Konfiguration.PNG

                                            Holding_register_setup.PNG

                                            Angezeigt werden die Werte, beim Versuch zu schreiben wird der Wert rot und folgende Fehler im Log:

                                            Holding_register.PNG

                                            Log.PNG

                                            Habs mit Version 2.0.9 und 3.0.0 probiert. MaxLeseanforderungslänge hatte ich auch schon auf 1 gestellt (Hatte das irgendwo gelesen). Im ChangeLog der Version 0.3.9 steht, dass immer mit "Write Multiple Register" gearbeitet wird. Wurde das vielleicht irgendwann wieder geändert?

                                            Ich weiß nicht weiter. Kann einer von euch helfen?
                                            Gruß
                                            Timo

                                            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

                                            664
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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