AWL-Sprache (Anweisungssprache, Instruction List (IL))
AWL (Anweisungsliste, Instruction List (IL)) ist eine Assembler-ähnliche, IEC 61131-3-konforme Programmiersprache.
Diese Sprache unterstützt die Programmierung auf Basis eines Akkumulators. Unterstützt werden die IEC 61131-3-Operatoren sowie mehrere Eingänge/mehrere Ausgänge, Negationen, Kommentare, Festlegen/Zurücksetzen von Ausgängen und unbedingte/bedingte Sprünge.
Jede Anweisung basiert primär auf dem Laden von Werten in den Akkumulator unter Verwendung des LD-Operators. Anschließend wird die Operation mit dem ersten Parameter aus dem Akkumulator ausgeführt. Das Ergebnis der Operation steht im Akkumulator zur Verfügung; hier sollten Sie es mit der ST-Anweisung speichern.
Für die Programmierung bedingter Ausführungen oder Schleifen unterstützt AWL sowohl Vergleichsoperatoren wie EQ, GT, LT, GE, LE, NE als auch Sprünge. Letztere können unbedingt (JMP) oder bedingt (JMPC/JMPCN) sein. Für bedingte Sprünge wird der Wert des Akkumulators für TRUE oder FALSE referenziert.
Eine Anweisungsliste (AWL) besteht aus einer Reihe von Anweisungen. Jede Anweisung beginnt in einer neuen Zeile und enthält einen Operator und – abhängig vom Typ der Operation – 1 oder mehrere durch Kommas getrennte Operanden. Sie können den Operator durch einen Modifizierer erweitern.
In einer Zeile vor einer Anweisung kann eine Identifizierung (Marke) gefolgt von einem Doppelpunkt (:) stehen (ml: im nachfolgenden Beispiel). Eine Marke kann als Ziel einer Sprunganweisung dienen (JMPC m1 im nachfolgenden Beispiel).
Kommentare sind als letztes Element einer Zeile einzufügen.
Zwischen Anweisungen können Leerzeilen eingefügt werden.
LD BVar1
ST tonInst1.IN
CAL tonInst1(
PT:=t1,
ET=>tOut2)
LD toninst1.Q
JMPC mark1
ST tonInst2.IN
___________________________________________________________
markl:
LD iVar2
ADD 230
Weitere Informationen finden Sie in folgenden Themen: