Navigation

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

    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 Adresse gesucht

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

      ich habe einen China Stromzähler (DDS661) bei dem ich zwar mit Adresse 0x00 die Spannung, 0x13 dieStromstärke, 0x12 die Leistung und 0x100 den Zählerstand auslesen kann, da ich aber keine Doku finde weiß ich nicht wie ich die ID des Zählers ändern kann. Kennt jemand so einen Zähler und kann mir die Adresse für die ID sagen?

      Homoran 1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @WolfgangFB last edited by

        @wolfgangfb sagte in Modbus Adresse gesucht:

        ich habe einen China Stromzähler (

        Deswegen kaufe ich nur in D mit Support!

        aber ich hab mal für dich gegoogelt
        https://forum.arduino.cc/t/leistungsmesser-dds661-modbus-per-arduino-auslesen/1322943

        da ist das pdf in einem post

        W 1 Reply Last reply Reply Quote 0
        • W
          WolfgangFB @Homoran last edited by

          @homoran
          Danke! Die Seite kannte ich tatsächlich, habe aber den Teil mit der Anleitung übersehen. Mit dieser Anleitung hat es tatsächlich geklappt, die ID zu ändern (wobei mir nicht klar ist, warum man eine ID in IEEEE 754 Floating Point lesen/schreiben muss).

          Für alle die vor dem gleichen Problem stehen, hier die genaue Anleitung zum Ändern der ID:
          Ich verwende QModMaster um mit dem Energy Meter per USB<>RS485 Adapter zu kommuniziern.
          Ich musste zuerst den Treiber installieren. Ich habe mich an diese Anleitung gehalten:
          FT232 USB UART Treiber
          Wichtig: Schritt 2 wiederholen (steht aber explizit so in der Anleitung, ich habe es beim ersten mal aber überlesen)
          Einstellungen: Modbus Mode: RTU, beim DDS661 ist wichtig, dass die Parität "even" und nicht "no parity" ist. Also so wie der Zähler z.B. von Ali geliefert wird sind die Einstellungen 9600 Baud, 8 Dat Bit, 1 Stop Bit, Parität Even und RTS Disable.

          Um die aktuelle Modbus Slave ID zu lesen wählt man "Function Code" Read Holding Register (0x03), Start Address 9 (Hex, spielt aber bei Zalen kleiner als dezimal 10 keine Rolle, wichtig ist, dass da ein Offset von 1 ist, also Adresse 9 liest in Wirklichkeit 8). Dann auf "Scan" und im Bus Monitor sieht man "TX 01 03 00 08 00 02 xx xx" (Prüfsumme sehe ich jetzt nicht mehr) und bei RX: 01 03 04 3f 80 00 00 xx xx". Die Adresse ist 3f 80 00 00, die kann man z.B. auf IEEE 754 Konverter in Dezimaldarstellung umrechnen und erhält 1 (also die ID).
          Um die ID auf 2 zu ändern gibt man bei Function Code "Write multiple registers (0x10)", Start Address 9 ein und bei Number of Registers 2. Unter "Number of Registers" kann man jetzt im ersten Register "4000" und im zweiten "0000" eingeben (40000000 ist nach IEEE-754 "2", "3" wäre 40400000 etc.) und dann auf "Commands" Read/Write" und schon hat der Zähler die Slave Address 2.
          Um jetzt mit dieser neuen ID 2 z.B. die aktuelle Spannung zu ermitteln geht man auf "Read Input Register (0x04)", Start Address 1 (in Wirklichkeit also 0) und wieder Command "Read/Write", als Ergebnis erhält man "02 04 04 43 63 66 66 86 94" (Beispiel)
          02 ist die Slave Address, 04 = "Read Input Register" die nächste 04 ist die Anzahl der Bytes (2 Register, also 4 Byte", dann die Daten (43 63 66 66, nach IEEE-754 ist das 227.2 (Volt) und 86 94 ist die CRC Prüfsumme.
          Wenn jemand wissen möchte, wie man das z.B. mit Esp-Home in IO-Broker einbindet kann ich gerne auch den Code veröffentlichen.
          Auf jeden Fall bekommt man mit dem DDS661 für unter 10 Euro (mit einem ESP32 und TTL2RS485 Adapter sind es dann 13 Euro) einen Modbus RTU fähigen Stromzähler, den man in IO-Broker einbinden kann.

          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

          847
          Online

          31.7k
          Users

          79.9k
          Topics

          1.3m
          Posts

          2
          3
          179
          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