Modbus TCP Anzahl Register

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Gast

    Modbus TCP Anzahl Register

    Hallo

    Da ich hier neu bin, stelle ich mich kurz vor.

    Meine Name ist Rene, 31 Jahre alt, Elektrotechnikmeister
    Aktuell arbeite ich als Anlagenelektriker und Programmierer in einer größeren Firma im Bereich Instandhaltung/Retrofit.

    So, jetzt zu meinem Problem, wo ich wahrscheinlich schon die Antwort kenne, außer es gibt einen Workaround.

    Ich möchte einen kWh Zähler Siemens Sentron PAC2200 mit Modbus TCP auslesen.
    Was ich auch schon mache mit den Werten Spannung, Strom etc.
    Aber die kWh an sich werden als 64bit in der Doku von Siemens angegeben. Genauer gesagt steht da 64bit Double und 4 Register.
    Aktuell bekomme ich keine kWh Werte rein.

    Gibt es eine Möglichkeit, das der Miniserver 4 Register kann und ich die Funktion nicht finde??

    Vielen Dank im Voraus

  • Tico
    Lox Guru
    • 31.08.2016
    • 1035

    #2
    Ja, es ist möglich. Der Screenshot stammt von einem Fronius-Wechselrichter für die Solarproduktion. Es ist ein 64-Bit-Wert.

    Der 64-Bit-Wert wird als 16-Bit-Komponenten eingelesen. Dann wird er wieder zusammengesetzt, um den 64-Bit-Wert zu erhalten.

    Fronius veröffentlicht ihre Register als 510-513 (unsigned 64 bit), Einheiten Wh.
    Sie können dies als Leitfaden für die Anpassung an die Siemens Zählerregister verwenden.

    Beachten Sie, dass die IO-Adresse -1 aus veröffentlichten Tabellen ist. Für Fronius bedeutet das 509, 510, 511, 512.

    Sie können es auf 2 x 32bit Register weiter verfeinern, wenn Sie mit 4 x 16bit erfolgreich sind.

    1111111111111111 = 65535
    11111111111111111111111111111111 = 4294967295
    111111111111111111111111111111111111111111111111 = 281474976710655
    Ich spreche kein Deutsch. Gib Google Translate die Schuld, wenn ich unverständlich bin.

    Kommentar

    • Gast

      #3
      Hallo Tico

      Wahnsinnig. Wäre nie im Leben drauf gekommen, das es so gehen könnte.

      Vielen vielen Dank für den Tipp

      ich hoffe ich kann mich mal revanchieren.

      Kommentar

      • Tico
        Lox Guru
        • 31.08.2016
        • 1035

        #4
        Beim erneuten Lesen sehe ich, dass das Format 64bit doppelt ist. Das wird die Dinge verkomplizieren....

        Ich bin mir nicht sicher, ob das oben Gesagte jetzt funktioniert.

        Die ersten drei 16-Bit-Register können 48 Bit des Wertes analysieren. Das letzte Register ist ein Mix aus 4 Bits von Wert, Exponent und Vorzeichen.




        Möglicherweise müssen Sie jeden Registerausgang auf einen 'Binärdecoder'-Block legen. Dann, um den Wert neu zu erstellen..... Ich werde mich nach jemand anderem umsehen, der mir hilft zu antworten.
        Ich spreche kein Deutsch. Gib Google Translate die Schuld, wenn ich unverständlich bin.

        Kommentar

        • mecsolutions
          Smart Home'r
          • 04.12.2019
          • 30

          #5
          Hallo Rene

          Habe zwar nicht das gleiche Problem aber den gleichen Zähler wie du.
          Leider bekomme ich überhaupt keine Werte vom Zähler.
          Habe sogar die Modbus Vorlage von Loxone verwendet (PAC3100), nicht genau der gleiche Typ aber die Register sind die selben.

          Hast du noch etwas spezielles eingestellt das du Werte erhalten hast.
          Angeschlossen ist der Zähler aktuell nur auf L1 und N da ich keine 3x400V zum testen habe.
          Über den Webbrowser erhalte ich die Werte ohne Probleme.

          Was mir aufgefallen ist das man die Modbussadresse beim Zähler nicht definieren kann. Weder über das Display noch über die Siemens Power Config.
          Habe die Adressen 1, 2, 126 und 240 getestet bekomme aber keine Werte.
          Kann man die überhaupt verstellen oder ist es immer die 1. Denke nur wenn man mehrere solcher Zähler hätte dann müsste man immer einen neuen Modbus Server anlegen um immer die Adresse 1 verwenden zu können.

          Vielleicht hast du da eine zündende Idee.
          Vielen Dank und liebe Grüsse

          Klicke auf die Grafik für eine vergrößerte Ansicht  Name: Siemens PAC2200.PNG Ansichten: 0 Größe: 51,0 KB ID: 293295
          Zuletzt geändert von mecsolutions; 25.02.2021, 20:23.

          Kommentar


          • Gast
            Gast kommentierte
            Kommentar bearbeiten
            Hallo

            Hat das Sentron PAC 3100 Modbus TCP?? Weil bei Modbus TCP braucht man keine Adresse. Die wird nur bei Modbus RTU benötigt. Was ich gerade gesehen habe, das der 3100 nur Modbus RTU unterstützt.
            Hast du da andere Informationen oder hast die eine Modbus RTU Extension an deiner Loxone??

          • mecsolutions
            mecsolutions kommentierte
            Kommentar bearbeiten
            Servus

            Oh, das weiss ich gar nicht ob das 3100 RTU hat.
            Die Registeradressen passen mit denjenigen des 2200 mit TCP überein. (gem. Anleitung) Habe deshalb auch keine RTU Extension im Einsatz.
            Wie hast du das gelöst das du Daten empfängst, gemäss erstem Post hast du auch das TCP fähige Gerät.

            Sollte man mehrere Sentron im Einsatz haben müsste man ja dann für jedes einen Modbus Server erstellen, siehst du das auch so?
        • Gast

          #6
          Hallo

          ja die Register sind die selber, egal ob Modbus TCP oder RTU.
          Das Problem ist wahrscheinlich, das du „nur“ Modbus RTU hast, das ist ein 2 Draht Bussystem. Genaueres könnte ich dir sagen, wenn du mir die Artikelnummer von dem Sentron PAC 3100 gibst.
          Wenn dem so wäre, brauchst du eine RTU Extension.
          Zu dem Thema Adressen.
          Wenn man Modbus TCP nutzt mit dem Miniserver, muss man für jedes Gerät einen ModBus Server anlegen. Was ja kein Problem ist, da man die einmalig angelegten Variablen mit den Registern ja als Vorlage speichern kann, danach kann man so viele Geräte ins Loxone Projekt einfügen und muss lediglich die IP Adresse ändern.

          im Anhang noch ein paar Bilder meiner Konfig und da hab ich testweise eine mal eine Modbus RTU Extension eingefügt um mal zu schauen.

          wenn man über Modbus RTU sich verbinden will, also über die Extension, ist es kein Server sondern nur ein Modbusgerät und dort muss man sogar die Adresse einstellen.

          warum das auf den Pac3100 nicht geht zum einstellen erschließt sich mir nicht.

          habe schon diverse Sentron Pac 3200 und 2200 Klicke auf die Grafik für eine vergrößerte Ansicht

Name: 6A22040D-0626-4D8D-88E5-C55E832F7B66.jpeg
Ansichten: 2552
Größe: 4,79 MB
ID: 293324Klicke auf die Grafik für eine vergrößerte Ansicht

Name: 0BF421CF-A2BD-464D-8110-4B0650A87717.jpeg
Ansichten: 2475
Größe: 4,68 MB
ID: 293325Klicke auf die Grafik für eine vergrößerte Ansicht

Name: 87E26147-B63F-4B23-A46F-F1A6774E70AD.jpeg
Ansichten: 2423
Größe: 5,19 MB
ID: 293326Klicke auf die Grafik für eine vergrößerte Ansicht

Name: 919F1761-CCC6-477A-9D52-59AE9044A7AB.jpeg
Ansichten: 2455
Größe: 4,89 MB
ID: 293327Klicke auf die Grafik für eine vergrößerte Ansicht

Name: 9004B1F5-D5E4-403A-9CF3-D7A3E6297A35.jpeg
Ansichten: 2533
Größe: 5,00 MB
ID: 293328 an die Loxone angeschlossen, halt über Modbus TCP und hat immer funktioniert.

          Kommentar

          • mecsolutions
            Smart Home'r
            • 04.12.2019
            • 30

            #7
            Habe das PAC2200 mit Modbus TCP.
            Kenne den Unterschied schon zwischen RTU und TCP. In der Loxone Config ist das PAC3100 als Vorlage hinterlegt, darum habe ich das mal verwendet und die IP Adresse meines PAC2200 eingetragen.
            Aber mit deinen Bildern hast du mir bereits geholfen. Es lag tatsächlich am Modbusbefehl und an der ersten und zweiten Checkbox. (muss aktiviert sein)

            Somit kann man festhalten das über RTU andere Einstellungen in Bezug auf den Befehlstyp und die Checkboxen nötig sind als bei TCP.
            Auch passt das Register der Frequenz nicht mit der Loxone Vorlage überein, aber das ist ein Detail.

            Vielen Dank.

            Kommentar

            • Gast

              #8
              Hallo

              kein Problem. Schön das ich irgendwie helfen konnte.

              Kommentar

              • mecsolutions
                Smart Home'r
                • 04.12.2019
                • 30

                #9
                Hallo Rene

                Noch eine Frage, habe gesehen das du die kWh mit einem Register auslesen konntest. (Register 2801)
                Wo hast du die Infos über das Register gefunden? In der Anleitung bin ich leider nicht fündig geworden.

                Interessant wären für mich noch die folgenden Register:

                Import Tarif 1+2 Wh
                Export Tarif 1+2 Wh

                Habe die Lösung von Tico einmal ausprobiert, komme da aber auf keinen grünen Zweig.

                Kommentar

                • Gast

                  #10
                  Hallo

                  ja die erste Lösung hat mit den 64 Bit geht so nicht wirklich.
                  ich hab einfach im Modbus Handbuch des großen Bruders Pac 3200 das Register gefunden und probiert.

                  Link zur Anleitung: https://cache.industry.siemens.com/d...AC_Deutsch.pdf


                  Klicke auf die Grafik für eine vergrößerte Ansicht

Name: F0CA4EA6-5352-4878-9DEE-286D454902AC.png
Ansichten: 2426
Größe: 299,3 KB
ID: 293412

                  Kommentar

                  • mecsolutions
                    Smart Home'r
                    • 04.12.2019
                    • 30

                    #11
                    Perfekt, vielen Dank.
                    Ist ja immer einfach eine 2 davor, der Rest ist identisch....

                    Kommentar

                    Lädt...