Modifikatoren und Operatoren in AWL

Modifikatoren:

Modifikator

Kombiniert mit Operator

Beschreibung

C

JMP, CAL, RET

Die Anweisung wird nur ausgeführt, wenn das Ergebnis des vorhergehenden Ausdrucks TRUE ist.

N

JMPC, CALC, RETC

Die Anweisung wird nur ausgeführt, wenn das Ergebnis des vorhergehenden Ausdrucks FALSE ist.

N

ansonsten

Negation des Operanden (nicht des Akkus).

Operatoren mit den möglichen Modifikatoren:

Operator

N

Bedeutung

Beispiel

LD

N

Lädt den (negierten) Wert des Operanden in den Akkumulator.

LD ivar

ST

N

Speichert den (negierten) Inhalt des Akkumulators in den Operanden.

ST iErg

S

 

Setzt den Operanden (Typ BOOL) auf TRUE, wenn der Inhalt des Akkumulators TRUE ist.

S bVar1

R

 

Setzt den Operanden (Typ BOOL) auf FALSE, wenn der Inhalt des Akkumulators TRUE ist.

R bVar1

AND

N,(

Bitweises AND des Akkumulatorwerts und des (negierten) Operanden

AND bVar2

OR

N,(

Bitweises OR des Akkumulatorwerts und des (negierten) Operanden

OR xVar

XOR

N,(

Bitweises, exklusives OR des Akkumulatorwerts und des (negierten) Operanden

XOR N,(bVar1,bVar2)

NOT

 

Bitweise Negation des Akkumulatorwerts

 

ADD

(

Addition des Akkumulatorwerts und des Operanden; Ergebnis wird in den Akkumulator geschrieben.

ADD ivar1

SUB

(

Subtraktion des Operanden vom Akkumulator-Wert; Ergebnis wird in den Akkumulator geschrieben.

SUB iVar2

MUL

(

Multiplikation von Akkumulatorwert und Operand; Ergebnis wird in den Akkumulator geschrieben.

MUL ivar2

DIV

(

Division des Akkumulatorwerts durch den Operanden; Ergebnis wird in den Akkumulator geschrieben.

DIV 44

GT

(

Prüft, ob der Akkumulatorwert größer als der Operandenwert ist; Ergebnis (BOOL) wird in den Akkumulator geschrieben; >

GT 23

GE

(

Prüft, ob der Akkumulatorwert größer oder gleich dem Operandenwert ist; Ergebnis (BOOL) wird in den Akkumulator geschrieben.

GE iVar2

EQ

(

Prüft, ob der Akkumulatorwert gleich dem Operandenwert ist; Ergebnis (BOOL) wird in den Akkumulator geschrieben.

EQ iVar2

NE

(

Prüft, ob der Akkumulatorwert ungleich dem Operandenwert ist; Ergebnis (BOOL) wird in den Akkumulator geschrieben.

NE iVar1

LE

(

Prüft, ob der Akkumulatorwert kleiner oder gleich dem Operandenwert ist; Ergebnis (BOOL) wird in den Akkumulator geschrieben.

LE 5

LT

(

Prüfen, ob der Akkumulator-Wert kleiner als der Operandenwert ist; Ergebnis (BOOL) wird in den Akkumulator geschrieben.

LT cVar1

JMP

CN

Unbedingter (bedingter) Sprung zur angegebenen Sprungmarke

JMPN next

CAL

CN

(Bedingter) Aufruf eines Programms oder Funktionsbausteins (wenn der Akkumulator-Wert TRUE ist)

CAL prog1

RET

 

Verlassen des Bausteins und Rückkehr zum aufrufenden Baustein

RET

RET

C

Wenn der Akkumulatorwert TRUE ist: Verlassen des Bausteins und Rückkehr zum aufrufenden Baustein.

RETC

RET

CN

Wenn der Akkumulatorwert FALSE ist: Verlassen des Bausteins und Rückkehr zum aufrufenden Baustein.

RETCN

)

 

Auswerten der zurückgestellten Operation

 

Beispiel:

Modifikatoren und Operatoren in AWL 1:

Anwendung

Beschreibung

Beispiel

Mehrere Operanden für 1 Operator

Möglichkeiten

  • Sie geben die Operanden in aufeinander folgenden Zeilen, getrennt durch Komma in der 2. Spalte ein.
  • Sie wiederholen den Operator in aufeinander folgenden Zeilen.

Variante 1:

Modifikatoren und Operatoren in AWL 2:

Variante 2:

Modifikatoren und Operatoren in AWL 3:

Komplexe Operanden

Für einen komplexen Operanden geben Sie in der ersten Spalte die öffnende Klammer ( an. Die schließende Klammer geben Sie in der ersten Spalte in einer separaten Zeile im Anschluss an die Operandeneinträge der folgenden Zeilen ein.

Ein String wird jeden Zyklus um ein Zeichen rotiert:

Modifikatoren und Operatoren in AWL 4:

Funktionsbaustein-Aufruf, Programmaufruf

Spalte 1: Operator CAL oder CALC

Spalte 2: Name der Funktionsbausteins-Instanz oder des Programms und öffnende Klammer (. Wenn keine Parameter folgen, wird hier die schließende Klammer ) eingegeben.

darauf folgende Zeilen:

Spalte 1: Parametername gefolgt von := für Eingabeparamer oder => für Ausgabeparameter

Spalte 2: Parameterwert gefolgt von Komma, wenn weitere Parameter folgen. Nach dem letzten Parameter, wird die schließende Klammer ) eingegeben.

Als Einschränkung bezüglich des IEC-Standards können hier komplexe Ausdrücke nicht verwendet werden. Solche Konstrukte müssen Sie dem Funktionsbaustein oder dem Programm noch vor dem Aufruf zuweisen.

Modifikatoren und Operatoren in AWL 5:

Funktionsaufruf

Zeile 1: Spalte 1: LD

Spalte 2: Eingabevariable

Zeile 2: Spalte 1: Funktionsname Spalte2: weitere Eingabeparameter durch Komma getrennt.

TwinCAT schreibt den Rückgabewert in den Akkumulator.

Zeile 3: Spalte 1: ST Spalte 2: Variable, in die der Rückgabewert geschrieben wird

Modifikatoren und Operatoren in AWL 6:

Aktionsaufruf

Wie Funktionsbaustein- oder Programmaufruf.

Der Aktionsname wird an den FB-Instanz- oder Programmnamen angehängt.

Modifikatoren und Operatoren in AWL 7:

Sprung

Spalte 1: Operator JMP oder JMPC.

Spalte 2: Name der Sprungmarke des Ziel-Netzwerks.

Bei einem unbedingten Sprung muss die voraus gehenden Anweisungsfolge mit einem der folgenden Kommandos enden: ST,STN, S, R, CAL, RET, JMP

Bei einem bedingten Sprung hängt die Ausführung des Sprungs vom geladenen Wert ab.

Modifikatoren und Operatoren in AWL 8:

Siehe auch: