-> Hier kostenlos registrieren
Hallo,
möchte gern einen meiner Bibl-Bausteine aus S7 auf CoDeSys umsetzen, einfach um das CoDeSys besser zu verstehen.
Folgende Funktion:
1.) Array (1-128 ) in dem unzusammenhängende Eingangsbytes abgelegt sind.
2.) Array (1-128 ) in dem einzelne Bedienbits aus der Visu abgelegt sind.
3.) Array (1-128 ) in dem vorangegeangene Arrays verunded bzw. verodert werden und dann auf unzusammenhängende Ausgänge verschaltet werden.
Die interne Verschaltung ist kein Problem, mein Problem ist der Einzelzugriff auf Elemente innerhalb des Arrays, zumindest wenn ich nicht jedes Bit einzeln beschalten will.
Bei S7 in AWL sieht das z.B. folgendermassen aus:
Bei CoDeSys habe ich meine 3 Arrays als Globaldaten definiert:
Wie funktioniert die Beschaltung bei CoDeSys?
möchte gern einen meiner Bibl-Bausteine aus S7 auf CoDeSys umsetzen, einfach um das CoDeSys besser zu verstehen.
Folgende Funktion:
1.) Array (1-128 ) in dem unzusammenhängende Eingangsbytes abgelegt sind.
2.) Array (1-128 ) in dem einzelne Bedienbits aus der Visu abgelegt sind.
3.) Array (1-128 ) in dem vorangegeangene Arrays verunded bzw. verodert werden und dann auf unzusammenhängende Ausgänge verschaltet werden.
Die interne Verschaltung ist kein Problem, mein Problem ist der Einzelzugriff auf Elemente innerhalb des Arrays, zumindest wenn ich nicht jedes Bit einzeln beschalten will.
Bei S7 in AWL sieht das z.B. folgendermassen aus:
Code:
L EB 0
T DB10.DBB 128
L ED 6
T DB10.DBD 130
L EW 10
T DB10.DBW 134
L DB10.DBB 256
T AB 0
T DB10.DBD 258
T AD 6
T DB10.DBW 262
T AW 10
Code:
VAR_GLOBAL
EIN: ARRAY[1..128] OF BOOL;
BEDI: ARRAY[1..128] OF BOOL;
AUS: ARRAY[1..128] OF BOOL;
END_VAR