Beckhoff PLC Array tauschen

Klohie

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

folgende Sache. Ich möchte beim Programmdurchlauf ein Array austauschen, je nach Lage eines bestimmten Tages im Monat.
Aktuell sieht mein CODE so aus:

MonSch1_hAN := INT_TO_UDINT(KD2_Schichtplan.PlanAktArray[(1 + ArrayNum1)].start1/100);

Jetzt ändert sich je nach Lage des Montags das Array. Kann ich das einfach durch ein String ersetzen der mir den Array vorgibt?
Also statt wie oben in etwas so:

String1: STRING := 'KD2_Schichtplan.PlanAktArray';

MonSch1_hAN := INT_TO_UDINT(String1[(1 + ArrayNum1)].start1/100);
 
Kurze Antwort: Nein
Aber Du könntest doch je nach Lage des Montages einen Offset berechnen, Dein Array hat dann immer 31 Elemente und fängt am ersten Montag mit Element 1 an.
Ansonsten könntest Du den Umweg über ADS gehen. Mit dem FB PLC_ReadSymInfoByName die Infos zur Variable/Symbol auslesen und mit diesen Infos dann per ADSREAD auf die Daten zugreifen.
 
Zuletzt bearbeitet:
Zurück
Oben