Flankenauswertung in einer SPS: Positive und negative Flanken im TIA Portal


Christian Preis
zuletzt aktualisiert: 25. Mai 2024

Flankenauswertung in einer SPS

Die Flankenauswertung ist eine wichtige Funktion in der SPS-Programmierung. Damit werden Zustandswechsel von Variablen erfasst. Wenn sich z.B. der Zustand einer Variablen von "0" auf "1" ändert, spricht man von einer "positiven Flanke". Bei einem Wechsel von "1" auf "0" sprich man von einer "negativen Flanke".

Operand auf positive Flanke abfragen (0 auf 1)

Die Funktion der Anweisung "Operand auf positive Signalflanke abfragen" möchte ich direkt anhand des Beispiels in Netzwerk 8 in Bild 1 erklären. Wie Du siehst, hat die Anwendung zwei Variablen. Die obere Variable wird auf den Flankenwechsel von "0" auf "1" abgefragt. In unserem Fall ist es die Eingangsvariable "TagIn_1". In einer SPS werden die Eingänge zu Beginn von jedem SPS Programmzyklus (im ms Bereich) erfasst. Somit wird auch die Variable "TagIn_1" in jedem Zyklus erfasst. Der erfasste Zustand wird in der Anweisung dann im Flankenmerker gespeichert. Das ist die untenstehende zweite Variable "FP_M1". Wenn sich nun der Signalzustand von "TagIn_1" von "0" auf "1" ändert, unterscheidet sich der Zustand von dem des Flankenmerkers "FP_M1". Für diesen Zustand gibt die Anweisung dann für genau einen Zyklus den Wert "1" aus. Dieser liegt im Beispiel dann am "S" Eingang des Flipflops an. Damit wird dieses gesetzt und die Ausgangsvariable "TagOut_7" wird über den Q-Ausgang des Flipflops auf "1" gesetzt. Im nachfolgenden Zyklus gibt die Anweisung dann schon wieder "0" aus, was dann auch am "S" Eingang anliegt. Das ist dann auch unabhängig vom Zustand von "TagIn_1". Es liegt erst wieder eine "1" am Flipflop Eingang "S" an, wenn sich der Zustand von "TagIn_1" wieder von "0" auf "1" ändert. Je nachdem ob das Flipflop zwischenzeitlich rückgesetzt wurde, hat eine erneute Flanke keinen Einfluss auf die Ausgangsvariable "TagOut_7".

Hinweis! Der Flankenmerker kann als Merker, DB-Variable oder innerhalb eines FB's im Static Bereich der Bausteinschnittstelle angelegt werden. Niemals im Temp Bereich eines Bausteins. Auf den Flankenmerker darf man nur einmal im Programm zugreifen, da es sonst zu Problemen bei der Programmbearbeitung kommen kann. 

Flankenauswertung SPS: Operand auf positive Signalflanke abfragen

Bild 1: Anweisung "Operand auf positive Signalflanke abfragen" einfügen

Operand bei positiver Flanke setzen

Eine weitere Option zur Flankenabfrage ist die Anweisung "Operand bei positiver Signalflanke setzen". Diese kann man nutzen, wenn nicht bloß eine einzige Variable auf eine positive Signalflanke abgefragt werden soll, sondern eine Verknüpfungslogik. Wie oben beschrieben gibt es auch hier einen Flankenmerker der unten an der Anweisung steht. Die abzufragende Eingangslogik wird am linken Eingang programmiert. Das Ergebnis der Abfrage muss ebenfalls in einer Variablen angegeben werden. in unserem Beispiel nutzen wir dafür "HM_2". In "HM_2" wird die Flankenauswertung ausgegeben. "HM_2" ist bei einem Flankenwechsel der Eingangslogik für einen Zyklus "1". Dies Variable kann dann in der weiteren Logik verwendet werden.

Operand bei positiver Signalflanke setzen

Bild 2: Anweisung "Operand bei positiver Signalflanke setzen" einfügen

Im Video werden die beiden Anweisungen nochmal vorgestellt. Um die Signalverläufe nachvollziehen zu können, wird im Video eine Trace-Aufzeichnung der verwendeten Variablen vorgenommen.

Video 1: Auswertung von positiven Signalflanken im TIA Portal

Operand auf negative Flanke abfragen und Operand bei negativer Flanke setzen (1 auf 0)

Die beiden oben beschriebenen Anweisungen gibt es beide auch für die Abfrage bzw. Erfassung einer negativen Signalflanke. Das heißt es wird damit der Signalwechsel von "1" auf "0" erfasst. Die übrigen Funktionen sind alle identisch. In Bild 3 unten sind die beiden Anweisungen mit den negativen Signalflanken als Beispiele abgebildet. 

Operand negative Signalflanke

Bild 3: Anweisung "Operand auf negative Signalflanke abfragen" und "Operand bei negativer Signalflanke setzen" einfügen

Im Video werden die beiden Anweisungen mit der fallenden Signalflanke nochmal vorgestellt. 

Video 2: Auswertung von negativen Signalflanken im TIA Portal

Christian Preis

Christian Preis
Gründer edcon-academy seit 15 Jahren in der Automatisierungstechnik.


Beitrag teilen!

>