-> Hier kostenlos registrieren
Hallo liebe Leute,
ich versuche folgendes:
ein KP8-Panel liefert über Profinet
1 WORD Eingang (8 Bools für Tasten, 8 Bools für DI)
1 DWORD Ausgang (3x8 Bools für RGB Zuweisung, 1x8 Bools für DO)
Jetzt wollte ich das symbolisch lesbarer machen und habe einen UDT für Eingänge und einen UDT für Ausgänge erstellt.
Dabei habe ich die Bools in Arrays organisiert.
Nun dachte ich dass ich bei Eingängen 2 Arrays [0..7] of BOOL am Ende eine Gesamtgröße des UDT von 2 BYTE hätte.
Das ist leider nicht so, da das System für jedes Array immer mind. 2 Byte veranschlagt, auch für eines [0..1].
Damit ist das UDT dann 4 Byte groß und passt natürlich nicht mehr in mein WORD. Daran scheitert dann auch der AT Operator.
Bei Beckhoff hätte ich einfach das Alignment auf 1 Byte geändert oder eine UNION benutzt und das Problem wäre gelöst.
--> Fällt jemandem hier etwas besseres ein als einen eigenen "Konverter-FC" zu schreiben mit dem ich mir die einzelnen Stellen rauspicke und ins WORD schreibe?
Viele Grüße,
Timo
ich versuche folgendes:
ein KP8-Panel liefert über Profinet
1 WORD Eingang (8 Bools für Tasten, 8 Bools für DI)
1 DWORD Ausgang (3x8 Bools für RGB Zuweisung, 1x8 Bools für DO)
Jetzt wollte ich das symbolisch lesbarer machen und habe einen UDT für Eingänge und einen UDT für Ausgänge erstellt.
Dabei habe ich die Bools in Arrays organisiert.
Nun dachte ich dass ich bei Eingängen 2 Arrays [0..7] of BOOL am Ende eine Gesamtgröße des UDT von 2 BYTE hätte.
Das ist leider nicht so, da das System für jedes Array immer mind. 2 Byte veranschlagt, auch für eines [0..1].
Damit ist das UDT dann 4 Byte groß und passt natürlich nicht mehr in mein WORD. Daran scheitert dann auch der AT Operator.
Bei Beckhoff hätte ich einfach das Alignment auf 1 Byte geändert oder eine UNION benutzt und das Problem wäre gelöst.
--> Fällt jemandem hier etwas besseres ein als einen eigenen "Konverter-FC" zu schreiben mit dem ich mir die einzelnen Stellen rauspicke und ins WORD schreibe?
Viele Grüße,
Timo