Datenübertragung per Modbus

Jazz11
2009-06-10
2009-06-16
  • Jazz11 - 2009-06-10

    Hallo!

    Ich übertrage die Werte von Globalen Variablen (Datentyp:INT) aus einem CoDeSys Programm per Modbus nach EXCEL, das funktioniert auch prima. Jetzt meine Frage:

    Warum kann ich beim Auslesen der Werte ab Adresse 12288 nur 120 Werte bei einem Durchgang auslesen? wie kann man die Startadresse berechnen, ab der die nächsten 120 Werte auszulesen sind? und ist es richtig das die maximale Anzahl an Werten die Übertragen werden können auf 255 beschränkt ist?

    Vielleicht weiß das irgend jemand.....

     
  • cmoeller - 2009-06-16

    Hallo Jazz11,

    die Begrenzung auf 120 Worte beim FC3 (ReadMultipleRegister) ist in der Spezifikation begraben.

    Dort hat einer nur ein Byte für die maximale Länge der Nutzdaten in Bytes festgelegt. Ein Byte kann die Werte 0..255 aufnehmen.

    Damit ist die Gesamtlänge des Telegrammes auf 255 Byte begrenzt.

    Ein paar Headerbytes abgezogen ergibt das 120WORD's (240Byte) Nutzdaten.

    Schau dir doch mal den Anwendungshinweis von WAGO zum Thema Modbus an. Du findest ihn unter: http://www.wago.com/wagoweb/documentati ... 003d_f.htm

    Die Spezifikation zum Modbusprotokoll findest du unter:

    http://www.modbus.org/docs/Modbus_Appli ... _V1_1b.pdf

    Gruss cmoeller

     

Log in to post a comment.