Programmierbefehle

Zuweisung

Die Zuweisung (=) kopiert das Verknüpfungsergebnis (VKE) der vorhergehenden Operation und weist dieses Ergebnis dem nachfolgenden Operanden zu.

FUP
Zuweisung FUP
KOP
Zuweisung KOP
AWL
Zuweisung AWL

UND-Verknüpfung

Die UND-Verknüpfung entspricht einer Reihenschaltung von Kontakten wie im einem Stromlaufplan. Weisen alle Eingänge gleichzeitig den Signalzustand „1“ auf, ist auch der Zustand von A0.0 =1“. Ist wenigstens einer der Eingänge „0“, so ist auch der Ausgang A0.0 = „0“.

FUP
UND-Verknüpfung FUP
KOP
UND-Verknüpfung KOP
AWL
UND-Verknüpfung AWL

ODER-Verknüpfung

Die ODER-Verknüpfung entspricht einer Parallelschaltung von Kontakten wie im einem Stromlaufplan. Weist mindestens einer der Eingänge den Signalzustand „1“ auf, ist auch der Zustand vom Ausgang A0.0 =1“. Nur wenn alle Eingänge Signal „0“ aufweisen, ist auch der Ausgang A0.0 = „0“.

FUP
ODER-Verknüpfung FUP
KOP
ODER-Verknüpfung KOP
AWL
ODER-Verknüpfung AWL

UND-vor-ODER-Verknüpfung

Die UND-vor-ODER-Verknüpfung entspricht einer Parallelschaltung mehrerer in Reihe geschalteten Kontakte wie im einem Stromlaufplan. Bei dieser Zusammensetzung von Reihen- und Parallelschaltung führt Ausgang A0.0 den Signalzustand „1“, wenn mindestens in einem Parallelzweig alle in Reihe geschalteten Signale jeweils den Zustand „1“ aufweisen. Die UND-Verknüpfungen werden zuerst bearbeitet und aus ihren Ergebnissen die ODER-Verknüpfung gebildet. Der erste Parallelzweig mit den UND-Verknüpfungen wird vom zweiten Parallelzweig durch die ODER-Verknüpfung getrennt.

AWL
UND-vor-ODER-Verknüpfung AWL
FUP
UND-vor-ODER-Verknüpfung FUP
KOP
UND-vor-ODER-Verknüpfung KOP
AWL
UND-vor-ODER-Verknüpfung AWL

ODER-vor-UND-Verknüpfung

Die ODER-vor-UND-Verknüpfung entspricht einer Reihenschaltung mehrerer parallelgeschalteter Kontakte wie im einem Stromlaufplan. Bei dieser Art der Verknüpfung hat Ausgang A0.0 nur dann den Signalzustand „1“, wenn in jedem Parallelzweig wenigstens je ein Signal den Zustand „1“ hat. In der AWL werden die ODER-Verknüpfungen durch Klammern „U( ... )“ zusammengefasst. Dadurch haben sie Vorrang vor den UND-Verknüpfungen.

AWL
ODER-vor-UND-Verknüpfung AWL
FUP
ODER-vor-UND-Verknüpfung FUP
KOP
ODER-vor-UND-Verknüpfung KOP
AWL
ODER-vor-UND-Verknüpfung AWL

Abfrage auf „0“ (NICHT)

Der Signalzustand „0“ entspricht im Stromlaufplan einem Öffnerkontakt —|⁄|—. Für die Abfrage auf Zustand logisch „0“ werden die Befehle „UN“ (UND NICHT) bzw. „ON“ (ODER NICHT) verwendet.

FUP
Abfrage auf „0“ (NICHT) FUP
KOP
Abfrage auf „0“ (NICHT) KOP
AWL
Abfrage auf „0“ (NICHT) AWL

EXKLUSIV ODER-Verknüpfung

Bei der EXKLUSIV ODER-Verknüpfung ist der Zustand von Ausgang A0.0 nur dann logisch „1“, wenn nur einer der Eingänge, im Beispiel E0.0 oder E0.1, den Signalzustand1“ führt.
Die EXKLUSIV ODER-Verknüpfung darf nur mit exakt zwei Eingängen programmiert werden.

FUP
EXKLUSIV ODER-Verknüpfung FUP
KOP
EXKLUSIV ODER-Verknüpfung KOP
AWL
EXKLUSIV ODER-Verknüpfung AWL

Ausgänge abfragen

Eine SPS kann nicht nur den Signalzustand von Eingängen abfragen, sondern auch den von Ausgängen, Merkern, Zeiten, Zählern usw.. Im Beispiel wird der Signalzustand von A0.0 auf logisch „1“ abgefragt und wirkt in der UND-Verknüpfung auf den Ausgang A0.1.

FUP
Ausgänge abfragen FUP
KOP
Ausgänge abfragen KOP
AWL
Ausgänge abfragen AWL

Für jeden Ausgang ein separates Netzwerk zu programmieren ist nicht zwingend erforderlich. Eine Verknüpfung mit dem Signalzustand von Ausgang A0.0 kann direkt hinter dem Symbol weitergeführt werden.

FUP TIA-Portal
Ausgänge abfragen FUP
KOP TIA-Portal
Ausgänge abfragen KOP

In Step7 hieß so ein zwischengeschaltetes Element Konnektor und wurde durch die Raute —(#)— gekennzeichnet. Seit TIA-Portal existiert nur noch die Zuweisung (=).

FUP Step7
Ausgänge abfragen FUP
KOP Step7
Ausgänge abfragen KOP

S-R-Speicherfunktion

Ein kurzzeitiges „1“- Signal am Setzeingang (S) setzt die Speicherfunktion. Ein kurzzeitiges „1“- Signal am Rücksetzeingang (R) bewirkt das Rücksetzen der Speicherfunktion. Ein „0“- Signal am Setzeingang (S) oder Rücksetzeingang (R) hat keinerlei Auswirkung und verändert den vorherigen Zustand der Speicherfunktion nicht. Liegt am Setzeingang (S) und am Rücksetzeingang (R) gleichzeitig ein „1“- Signal an, wird die Speicherfunktion vorrangig gesetzt oder zurückgesetzt. Ob das Setzen Vorrang vor dem Rücksetzen hat oder umgekehrt wird bei der Programmierung festgelegt.


Vorrangiges rücksetzen

KOP
Vorrangiges rücksetzen KOP
FUP
Vorrangiges rücksetzen FUP
AWL
Vorrangiges rücksetzen AWL

In der AWL wurde ein NOP 0 als letzten Befehl „angehangen“. NOP 0 bedeutet nichts anderes als „NO OPERATION“, also „keine Operation“. Es ist eine Nulloperation die nichts bewirkt. Damit zwischen FUP, KOP und AWL umgeschaltet werden kann, wird in AWL NOP 0 als Platzhalter für den nicht adressierten Ausgang des Speicherelements Q gesetzt.

Anstelle NOP 0 könnte am Ausgang des Speicherelements auch direkt eine Zuweisung (z.B. = %A0.1) programmiert werden. Ebenfalls ohne jegliche Funktion existiert auch noch das weniger genutzte NOP 1. Der Unterschied zu NOP 0 liegt nur im Bitmuster: 16 Bits mit „1“-Signal bzw. 16 Bits mit „0“-Signal.


Vorrangiges setzen

Die programmierte Reihenfolge des Setzeingangs (S) und des Rücksetzeingangs (R) des Speicherelements entscheidet über den Vorrang. Die zuletzt programmierten Anweisungen werden von der SPS mit Vorrang bearbeitet.

FUP
Vorrangiges setzen FUP
AWL
Vorrangiges setzen AWL
KOP
Vorrangiges setzen KOP

Flankenauswertung

Bisher wurden Signalzustände immer als statisches Signal betrachtet. Entweder war der Signalzustand ständig logisch „0“ oder „1“, also entweder „Aus“ oder „Ein“. Mit der Auswertung von Signalflanken wird die Signaländerung ausgewertet. Ändert sich das Signal von logisch „0“ auf „1“ kann eine positive Flanke ausgewertet werden. Umgekehrt kann eine negative Flanke bei einem Signalwechsel von „1“ auf „0“ ausgewertet werden.

Positive Flanke
Positive Flanke
Negative Flanke
Negative Flanke

Wozu wird eine Flankenauswertung gebraucht? Überall wo ein einziger Impuls besser als ein Dauersignal ist, z.B. für Zeit- oder Zähloperationen. Eine Flankenauswertung eliminiert z.B. Kontaktprellen [1]  bei Tastern oder Endschaltern.

Step7 bzw. TIA-Portal ermöglichen eine Operanden- oder VKE-Flankenauswertung. Als Operandenflanke bezeichnet man die Änderung des Signalzustandes eines Operanden. Eine VKE-Flanke liegt vor, wenn sich das Verknüpfungsergebnis des auszuwertenden Operanden gegenüber dem vorhergehenden VKE geändert hat. Kreative Programmierer kennen weitere, selbst „gebastelte“ Möglichkeiten (z.B. mit S-R-Speicherfunktionen) zur Flankenbildung, doch hier soll nur auf die vorhandenen Standards eingegangen werden.


Positive Operandenflanke

Damit die Umschaltung zwischen der grafischen KOP-/FUP-Darstellung und AWL funktioniert wird automatisch ein BLD-Befehl in die AWL eingefügt. BLD <Zahl> ist ein Blindbefehl, eine Nulloperation ähnlich NOP (No Operation). Die <Zahl> wird vom Programmiergerät erzeugt.

AWL
Positive Operandenflanke AWL
KOP
Positive Operandenflanke KOP
FUP
Positive Operandenflanke FUP

Der Signalzustand des Operanden E1.0 wird mit dem Signalzustand der vorherigen Abfrage, die in dem Flankenmerker M2.0 gespeichert ist, verglichen. Wenn der aktuelle Signalzustand von E1.0 logisch „1“ ist und die vorangegangene Abfrage war „0“, dann liegt eine steigende oder positive Flanke vor. Der Merker M2.1 wird für einen PLC-Zyklus logisch „1“, sofern das hier im Beispiel als Freigabesignal dienende Signal E2.0 ebenfalls logisch „1“ ist.


Negative Operandenflanke

Die negative Operandenflanke funktioniert exakt wie die positive, nur andersherum. Wenn der aktuelle Signalzustand von E1.0 logisch „0“ ist und die vorangegangene Abfrage war logisch „1“, dann liegt eine fallende oder negative Flanke vor.

AWL
Negative Operandenflanke AWL
KOP
Negative Operandenflanke KOP
FUP
Negative Operandenflanke FUP

Positive VKE-Flanke

FUP
Positive VKE-Flanke FUP
KOP
Positive VKE-Flanke KOP
AWL
Positive VKE-Flanke AWL

Das aktuelle Verknüpfungsergebnis (VKE) des UND-Gliedes E1.0 und E2.0 wird mit dem VKE der vorherigen Abfrage verglichen. Das aktuelle VKE liegt an CLK, die vorherige Abfrage ist im Flankenmerker M2.0 gespeichert. Ändert sich das VKE des UND-Gliedes von „0“ auf „1“, liegt eine positive Flanke vor. Der Ausgang Q liefert einen PLC-Zyklus lang den Signalzustand „1“. Sinnigerweise ist in KOP oder FUP das Element zur Flankenbildung mit P_TRIG gekennzeichnet. P steht für „Positiv“, TRIG für „Trigger[2] .

Ein Trigger ist eine Schaltung, die bei einem auslösenden Ereignis einen Impuls (Triggerimpuls) oder einen Schaltvorgang (Schaltflanke) erzeugt.


Negative VKE-Flanke

Eine negative VKE-Flanke funktioniert wieder entgegengesetzt zur positiven VKE-Flanke. Wenn sich das VKE des UND-Gliedes von „1“ auf „0“ ändert, liegt eine negative Flanke vor.

FUP
Negative VKE-Flanke FUP
KOP
Negative VKE-Flanke KOP
AWL
Negative VKE-Flanke AWL

Signaldiagramme

Die Signaldiagramme für Operanden- und VKE-Flanke der Beispiele geben einen guten Überblick über die Signalfolge. Wie aus den Diagrammen hervorgeht, kann immer nur der Merker M2.1 für die eigentlich gewünschte Funktion, z.B. als Zählimpuls, genutzt werden.

Signaldiagramm Operandenflanke
Signaldiagramm Operandenflanke
Signaldiagramm VKE-Flanke
Signaldiagramm VKE-Flanke