Navigation

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

    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 - Erste Schritte

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

      Danke für den Anschubser - ich war natürlich am falschen LAN Port :roll:

      Reicht das hier
      1534_bild_001.png

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

        @NightWatcher:

        Danke für den Anschubser - ich war natürlich am falschen LAN Port :roll:

        Reicht das hier `
        Nein. Ich brauche noch den Antwort.

        1 Reply Last reply Reply Quote 0
        • N
          NightWatcher last edited by

          Nochmal neu, um ein Zusammenhängendes Request und Response zu haben
          1534_bild_002.png
          1534_bild_003.png

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

            @NightWatcher:

            Nochmal neu, um ein Zusammenhängendes Request und Response zu haben `
            Float 25 = 0x41c80000

            0x41c8=16840 decimal

            D.h. wago liefert 0x000041C8

            Warum? Das passt nicht zu BigEndian und nicht für little endian.

            Ich kann natürlich Wago Float Format Implementieren….

            1 Reply Last reply Reply Quote 0
            • N
              NightWatcher last edited by

              Bahnhof :mrgreen: :lol: :twisted:

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

                @NightWatcher:

                Bahnhof :mrgreen: :lol: :twisted: `
                Update mal vom git und benutze floatsw
                48_2016-10-19_14_32_40-iobroker.admin.png

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

                  http://www.chipkin.com/how-real-floatin … -messages/

                  Ja das mit dem Little/BigEndian und Byte / Word Swap ist bei modbus etwas frickelig.

                  Da können in der freien Wildbahn alle möglichen Configurationen bei Devices vorkommen 😞

                  Bin ich froh das meine Lüftung nur 16 Bit Werte als Integer verarbeitet 😉

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

                    @tschombe:

                    http://www.chipkin.com/how-real-floatin … -messages/

                    Ja das mit dem Little/BigEndian und Byte / Word Swap ist bei modbus etwas frickelig.

                    Da können in der freien Wildbahn alle möglichen Configurationen bei Devices vorkommen 😞

                    Bin ich froh das meine Lüftung nur 16 Bit Werte als Integer verarbeitet 😉 `
                    Super. Danke. Habe implementiert.

                    1 Reply Last reply Reply Quote 0
                    • N
                      NightWatcher last edited by

                      Float (Big Endian Word Swap) funktioniert nun auf 13288

                      Die anderen Adressen sehen auch sehr gut aus. Habe das mal direkt geändert. Und protokolliere das nun mal in der mysql.

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

                        Damit kann ich sagen, dass die Entwicklung von modbus abgeschlossen ist.

                        Er kann Modbus TCP, RTU und RTU over TCP,

                        er kann BigEndian, LittleEndian, ByteSwap und WordSwap.

                        Man muss nur Adressierung mit Aliases noch checken.

                        1 Reply Last reply Reply Quote 0
                        • N
                          NightWatcher last edited by

                          Ich vermute noch nen kleines Problem beim Schreiben einer Variable des Typs Byte von ioBroker zur Wago.

                          Lesen geht ohne Probleme, aber beim schreiben macht er Blödsinn.

                          Ich gebe 1 in ioBroker ein und er setzt sich selbst auf 256. in der SPS bleibt es 0 (weil > 255 nicht geht)

                          Ich gebe 10 ein, er macht 2560.

                          Gehe ich noch mal in das Feld in ioBroker und klicke die 2560 an und verlasse das Feld wieder, steht 10 drinnen und wird auch korrekt zur SPS übertragen.

                          Wo habe ich da nen Denkfehler?!

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

                            @NightWatcher:

                            Ich vermute noch nen kleines Problem beim Schreiben einer Variable des Typs Byte von ioBroker zur Wago.

                            Lesen geht ohne Probleme, aber beim schreiben macht er Blödsinn.

                            Ich gebe 1 in ioBroker ein und er setzt sich selbst auf 256. in der SPS bleibt es 0 (weil > 255 nicht geht)

                            Ich gebe 10 ein, er macht 2560.

                            Gehe ich noch mal in das Feld in ioBroker und klicke die 2560 an und verlasse das Feld wieder, steht 10 drinnen und wird auch korrekt zur SPS übertragen.

                            Wo habe ich da nen Denkfehler?! `
                            Welches Typ hast du eingestellt? Registertyp? Variablentyp?

                            1 Reply Last reply Reply Quote 0
                            • N
                              NightWatcher last edited by

                              Ich habe es sowohl bei den Eingangsregistern, als auch Holdingregistern mit den Typen Signed/Unsigned 16 Bit (Big & Little) getestet.

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

                                @NightWatcher:

                                Ich habe es sowohl bei den Eingangsregistern, als auch Holdingregistern mit den Typen Signed/Unsigned 16 Bit (Big & Little) getestet. `
                                Bitte um Wireshark 🙂

                                1 Reply Last reply Reply Quote 0
                                • N
                                  NightWatcher last edited by

                                  Langsam simmer ja geübt ;.)

                                  ich habe den Wert 30 an der Adresse 12342 über ioBroker abgesetzt.
                                  1534_image_1.png

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

                                    @NightWatcher:

                                    Langsam simmer ja geübt ;.)

                                    ich habe den Wert 30 an der Adresse 12342 über ioBroker abgesetzt. `
                                    Das sieht verdammt richtig aus.

                                    Und wie sieht es aus mit Little endian 16?

                                    1 Reply Last reply Reply Quote 0
                                    • N
                                      NightWatcher last edited by

                                      Habe ich ja unter anderem auch getestet.

                                      Komisch ist eben das o.g. Verhalten.

                                      Ich habe gerade noch mal was getestet und per Wireshark aufgezeichnet.

                                      Bild 1 geht nicht (eingegeben 255) , Bild 2 geht (eingegeben 23070).

                                      Ankommen soll 255 in der Wago (bei zweitem kommt es auch als 255 an)

                                      EDIT: Wenn ich das Gerade so sehe, ist das Problem bei allen Registern. DWORDs z.B. kann nur auf gleiche Art und Weise überschreiben.
                                      1534_bild001.png
                                      1534_bild002.png

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

                                        Komisch, dass die Adresse 12343 ist.

                                        Bei mir geht es. 😞
                                        48_2016-10-19_21_44_00-iobroker.admin.png

                                        1 Reply Last reply Reply Quote 0
                                        • N
                                          NightWatcher last edited by

                                          In dem Fall habe ich es auch auf 12343 getestet, da ich sonst meiner Lebensgefährtin im Wohnzimmer das Licht ausgemacht hätte :mrgreen:

                                          Die Adresse stimmt, der Wert nur nicht. Evtl. erwartet hier die Wago wieder was anderes. Vielleicht ähnlich wie mit den anderen SWAP Typen, die du neu angelegt hast?

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

                                            @NightWatcher:

                                            In dem Fall habe ich es auch auf 12343 getestet, da ich sonst meiner Lebensgefährtin im Wohnzimmer das Licht ausgemacht hätte :mrgreen:

                                            Die Adresse stimmt, der Wert nur nicht. Evtl. erwartet hier die Wago wieder was anderes. Vielleicht ähnlich wie mit den anderen SWAP Typen, die du neu angelegt hast? `
                                            Swap bei int16 gibt es nicht. Nur big oder little endian.

                                            Du musst schon die richtige Adresse nehmen 12342. Und dann vermutlich little endian.

                                            Kannst du so eine aufzeichnen?

                                            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

                                            717
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            17
                                            159
                                            33445
                                            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