Byteweises Kopieren von größerem Format?

Bär1971

Level-1
Beiträge
220
Reaktionspunkte
18
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich hab mal kurz ne Frage da ich noch am trocken Vorprogrammieren bin und grad etwas verunsichert bin...

In einem Datenbaustein ist ein UDT mehrfach hinterlegt. In diesem UDT sind aber unterschiedliche Datenformate (BOOL, Byte, WORD, REAL).

Die Inhalte des einen UDT-Bereich müssten auf die Inhalte eines anderen UDT-Bereiches umkopiert werden. Hierzu habe ich schon ein FIFO-Register aufgebaut in welchem ich Byteweise die Daten kopiere.

Feste Adressierungen oder den Einsatz des SFC20 möchte ich umgehen, da die Sache universell einsetzbar sein soll und bei einer Anlage der UDT vielleicht 8 Byte Länge hat, bei der nächsten Anlage 64 Byte etc.

Zur konkreten Frage:

Funktioniert es problemlos z.Bsp. die 4 Byte eines Realwertes Byteweise zu kopieren? Oder würde mir das die Realzahl verändern? Ich bin der Auffassung, das ein Byteweises Kopieren keine Veränderung bewirken sollte, da in der Zieladresse ja die 4 Byte ebenso als Real deklariert sind?!?
 
Hallo,
das kannst du so machen - es wird nichts am Inhalt geändert. Du kannst aber auch WORD oder DWORD-Breite nehmen. Eine Manipulation des Inhalts erhältst du erst beim Rechnen (also +, - , * , : , etc.)

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Zur konkreten Frage:

Funktioniert es problemlos z.Bsp. die 4 Byte eines Realwertes Byteweise zu kopieren? Oder würde mir das die Realzahl verändern? Ich bin der Auffassung, das ein Byteweises Kopieren keine Veränderung bewirken sollte, da in der Zieladresse ja die 4 Byte ebenso als Real deklariert sind?!?

hat keinen einfluss auf den wert (solange du die bytes nicht vertauschst ;) )
 
Hallo,

eine kleine Einschränkung gibt's doch:

Sollte dein Ziel-UDT visualisiert werden, dann kann es passieren das im HMI kurzzeitig falsche Werte oder ##### angezeigt werden.
Das passiert, wenn das HMI z.B. auf einen REAL Wert zugreift, von dem erst ein Teil geschrieben wurde.
Das HMI pollt in der Regel asynchron zum SPS Zyklus..

Rein von der SPS-Seite her gibt es wie bereits erwähnt keine Probleme.

Micha
 
Zurück
Oben