Grundlegende Programmierbefehle

Zuweisung

Die Zuweisung (=) kopiert das Ver­knüpfungs­ergebnis (VKE) der vor­hergehenden Operation und weist dieses Er­gebnis dem nach­fol­gen­den Operanden zu.

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

Die UND-Verknüpfung entspricht einer Reihen­schaltung von Kon­takten wie im einem Strom­lauf­plan. Weisen alle Ein­gänge gleich­zeitig den Signal­zu­stand „1“ auf, ist auch der Zu­stand von A0.0 = „1“. Ist wenigstens einer der Ein­gänge „0“, so ist auch der Aus­gang 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 Parallel­schaltung von Kon­takten wie im einem Strom­lauf­plan. Weist min­destens einer der Ein­gänge den Signal­zu­stand „1“ auf, ist auch der Zu­stand vom Ausgang A0.0 = „1“. Nur wenn alle Ein­gänge Signal „0“ aufweisen, ist auch der Aus­gang 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 Parallel­schaltung mehrerer in Reihe geschalteten Kon­takte wie im einem Strom­lauf­plan. Bei dieser Zu­sammen­setzung von Reihen- und Parallel­schaltung führt Aus­gang A0.0 den Signal­zustand „1“, wenn min­destens in einem Parallel­zweig alle in Reihe ge­schalteten Signale jeweils den Zustand „1“ auf­weisen. Die UND-Verknüpfungen werden zuerst be­arbeitet und aus ihren Er­gebnissen die ODER-Verknüpfung gebildet. Der erste Parallel­zweig mit den UND-Verknüpfungen wird vom zweiten Parallel­zweig durch die ODER-Ver­knüpfung ge­trennt.

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-Ver­knüpfung ent­spricht einer Reihen­schal­tung mehrerer parallel­ge­schalteter Kon­takte wie im einem Strom­lauf­plan. Bei dieser Art der Ver­knüpfung hat Aus­gang A0.0 nur dann den Signal­zustand „1“, wenn in jedem Parallel­zweig wenigstens je ein Signal den Zustand „1“ hat. Die ODER-Ver­knüpfungen werden durch Klammern „(  )“ zu­sammen­gefasst. Da­durch haben sie Vor­rang vor den UND-Ver­knüpfungen.

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 Signal­zustand „0“ ent­spricht im Strom­lauf­plan einem Öffner­kontakt. Für die Ab­frage auf Zu­stand logisch „0“ werden die Be­fehle „UN“ (UND NICHT) bzw. „ON“ (ODER NICHT) ver­wendet.
Ein „XN“ (EXKLUSIV ODER NICHT) gibt es auch noch, wird aber kaum an­gewandt.

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-Ver­knüpfung ist der Zu­stand von Aus­gang A0.0 nur dann logisch „1“, wenn nur einer der Ein­gänge E0.0 oder E0.1 Signal­zustand „1“ hat.
Die EXKLUSIV ODER-Verknüpfung darf nur mit exakt zwei Ei­ngängen pro­gramm­iert werden.

FUP
EXKLUSIV ODER-Verknüpfung (NICHT) FUP
KOP
EXKLUSIV ODER-Verknüpfung KOP
AWL
EXKLUSIV ODER-Verknüpfung AWL
Ausgänge abfragen

Eine SPS kann nicht nur den Signal­zu­stand von Ein­gängen ab­fragen, sondern auch den von Au­sgängen, Merkern, Zeiten, Zählern usw.. Im Bei­spiel wird der Signal­zu­stand von A0.0 auf logisch „1“ ab­gefragt und wirkt in der UND-Ver­knüpfung auf den Aus­gang A0.1.

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

Für jeden Aus­gang ein se­parat­es Netz­werk zu pro­grammieren ist nicht zwingend er­forder­lich. Eine Ver­knüpf­ung mit dem Signal­zu­stand von Aus­gang A0.0 kann direkt hinter dem Sym­bol weiter­geführt werden.

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

In Step7 hieß so ein zwischen­ge­schaltetes Ele­ment Kon­nektor und wurde durch die Raute —(#)— ge­kenn­zeich­net. Seit TIA-Portal ex­istiert nur noch die Zu­weisung (=).

FUP Step7
Ausgänge abfragen FUP Step7
KOP Step7
Ausgänge abfragen KOP Step7
S-R-Speicherfunktion

Ein kurzzeitiges „1“- Signal am Setz­ein­gang (S) setzt die Speicher­funk­tion. Ein kurz­zeit­iges „1“- Sig­nal am Rück­setz­ein­gang (R) bewirkt das Rück­setzen der Speicher­funk­tion. Ein „0“- Signal am Setz­ein­gang (S) oder Rück­setz­ein­gang (R) hat keiner­lei Aus­wirk­ung und ver­ändert den vor­herigen Zu­stand der Speicher­funk­tion nicht. Liegt am Setz­ein­gang (S) und am Rück­setz­ein­gang (R) gleich­zeit­ig ein „1“- Signal an, wird die Speicher­funk­tion vor­rangig ge­setzt oder zurück­gesetzt. Ob das Setzen Vor­rang vor dem Rück­setzen hat oder umgekehrt wird bei der Pro­gramm­ierung fest­gelegt.

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

In der AWL wurde ein NOP 0 als letzten Befehl „an­ge­hangen“. NOP 0 be­deutet nichts anderes als „NO“ „OPERATION“, also „keine Operation“. Es ist eine Null­operation die nichts bewirkt. Damit zwischen FUP, KOP und AWL um­geschaltet werden kann, wird in AWL NOP 0 als Platz­halter für den nicht adressierten Aus­gang des Speicher­elements Q gesetzt.

Anstelle NOP 0 könnte am Aus­gang des Speicher­elements auch eine Zu­weisung (z.B. = %A0.1) pro­grammiert werden. Eben­falls ohne jegliche Funk­tion existiert auch noch das weniger genutzte NOP 1. Der Unter­schied zu NOP 0 liegt nur im Bit­muster: 16 Bits mal „1“ bzw. 16 Bits mal „0“.

Vorrangiges setzen

Die programmierte Reihenfolge des Setz­eingangs (S) und des Rück­setz­ein­gangs (R) des Speicher­elements ent­scheidet über den Vor­rang. Die zu­letzt program­mierten An­weisungen werden von der SPS mit Vor­rang be­arbeitet.

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

Bisher wurden Signal­zustände immer als sta­tisches Sig­nal be­trachtet. Ent­weder war der Signal­zu­stand ständig logisch „0“ oder „1“, also ent­weder „Aus“ oder „Ein“. Mit der Aus­wertung von Signal­flanken wird die Signal­änderung aus­gewertet. Ändert sich das Signal von logisch „0“ auf „1“ kann eine positive Flanke aus­gewertet werden. Um­gekehrt kann eine negative Flanke bei einem Signal­wechsel von „1“ auf „0“ aus­gewertet werden.

Wozu wird eine Flanken­auswert­ung gebraucht? Über­all wo ein ein­ziger Im­puls besser als ein Dauer­signal ist, z.B. für Zeit- oder Zähl­operationen. Eine Flanken­auswertung eliminiert z.B. Kontakt­prellen [1]  bei Tastern oder End­schaltern.

Step7 bzw. TIA-Portal er­möglichen eine Operanden- oder VKE-Flanken­aus­wertung. Als Operanden­flanke be­zeichnet man die Änder­ung des Signal­zustandes eines Operanden. Eine VKE-Flanke liegt vor, wenn sich das Verknüpfungs­ergebnis des aus­zuwertenden Operanden gegenüber dem vorher­gehenden VKE ge­ändert hat. Kreative Pro­gram­mierer kennen weitere, selbst „gebastelte“ Mög­lich­keiten (z.B. mit S-R-Speicher­funk­tionen) zur Flanken­bildung, doch hier soll nur auf die vor­handenen Standards ein­gegangen werden.

Positive Operandenflanke
AWL
Positive Operandenflanke AWL

Damit die Umschaltung zwischen der gra­fisch­en KOP-/FUP-Dar­stel­lung und AWL funk­tioniert wird auto­matisch ein BLD-Be­fehl in die AWL ein­gefügt. BLD <Zahl> ist ein Bild­befehl, eine Null­operation ähn­lich NOP . Die <Zahl> wird vom Pro­grammier­gerät erzeugt.

KOP
Positive Operandenflanke KOP
FUP
Positive Operandenflanke FUP

Der Signal­zustand des Operanden E1.0 wird mit dem Signal­zu­stand der vorherigen Abfrage, die in dem Flanken­merker M2.0 ge­speichert ist, ver­glichen. Wenn der aktuelle Signal­zustand von E1.0 logisch „1“ ist und die voran­gegangene Ab­frage war „0“, dann liegt eine steigende oder positive Flanke vor. Der Merker M2.1 wird für einen PLC-Zyklus logisch „1“, so­fern das hier im Beispiel als Frei­gabe­signal dienende Signal E2.0 eben­falls logisch „1“ ist.

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

Die negative Operanden­flanke funk­tioniert exakt wie die po­sitive, nur an­ders­herum. Wenn der aktuelle Signal­zustand von E1.0 logisch „0“ ist und die voran­gegangene Ab­frage war logisch „1“, dann liegt eine fallende oder negative Flanke vor.

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

Das aktuelle Ver­knüpfungs­ergebnis (VKE) des UND-Gliedes E1.0 und E2.0 wird mit dem VKE der vor­herigen Ab­frage ver­glichen. Das aktuel­le VKE liegt an CLK, die vorherige Abfrage ist im Flanken­merker M2.0 ge­speichert. Ändert sich das VKE des UND-Gliedes von „0“ auf „1“, liegt eine positive Flanke vor. Der Aus­gang Q liefert einen PLC-Zyklus lang den Signal­zu­stand „1“. Sin­niger­weise ist in KOP oder FUP das Element zur Flanken­bildung mit P_TRIG gekenn­zeichnet. P steht für „Positiv“, TRIG für „Trigger“ [2] . Ein Trigger ist eine Schal­tung, die bei einem aus­lösenden Er­eignis einen Im­puls (Trigger­impuls) oder einen Schalt­vorgang (Schalt­flanke) er­zeugt.

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

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

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

Die Signal­diagramme für Operanden- und VKE-Flanke der Bei­spiele geben einen guten Über­blick über die Signal­folge. Wie aus den Dia­grammen hervor­geht, kann immer nur der Merker M2.1 für die eigent­lich ge­wünschte Funk­tion, z.B. als Zähl­impuls, ge­nutzt werden.