Dynamischer Grenzwerttext in Struktur, Zugriff auf Feldindex
Hallo,
ich arbeite gerade an einem Projekt unter zenOn 7.10. Dort versuche ich ein neues Error-Handling, welches wir uns überlegt haben, zu testen.
Wir verwenden ein Array of STRUCT, welches ungefähr so aussieht:
ST_ISA_Error
.ID : DINT;
.Value : DINT;
.Message : STRING;
. ...
Wir haben eine eindimensionales Feld von 100 Elementen dieser Struktur angelegt.
Wir verwenden zunächst die beiden Variablen .ID und .Value jedes Elementes.
ISA_Error[1].ID
ISA_Error[1]. Value
ISA_Error[1].Message
...
ISA_Error[100].ID
ISA_Error[100].Value
ISA_Error[100].Message
...
Innerhalb dieses Feldes kann je Struktur ein Fehler von PLC-Seite anstehen. Sind z.B. 5 Fehler in der Maschine aktiv, so sind die ersten 5 Strukturen im Array genutzt. Sind 3 Fehler aktiv, so sind 3 Felder belegt. Es sind also maximal 100 fehler gleichzeitig möglich.
Jeweils auf der Variablen .Value soll eine REMA ausgeführt werden.
Die REMA reagiert auf einen Wert, z.B. "10004" und würde dann mit Hilfe der dynamischen Limit-Texte, den AML Eintrag zusammen setzen.
Beispiel:
ID = 1001001
Value = 10004 ||
Limit-Text || $%@ID_+ISA_Error[1].ID; : ;%@Value_+ISA_Error[1].Value
Es würden somit die beiden Keywords ID_1001001 und Value_10004 ind der Sprachtabelle gesucht. Die Ausgabe sähe Folgendermaßen aus:
Füllstation - Bahn 1 - Station 1 : Heizung - Temperatur LL
Mein Problem:
Ich müsste für die 100 Array-Elemente auch 100 REMAs anlegen, oder gibt es eine Möglichkeit indirekt auf den Feldindex zu zugreifen?
This is a migrated post! Originally posted on 23.09.2013 by user de12289. Please be aware that information can be outdated.