Stromstoßschalter realisieren

Eine immer wiederkehrende Frage in SPS-Schulungen ist, ob und wie man das Verhalten eines Stromstoßschalters mit einer SPS realisieren kann. Die Lösungsmöglichkeiten sind vielfältig und können daher ziemlich einfach bis kompliziert sein. Auf dieser Seite wollen wir Ihnen einige Lösungsvorschläge zeigen. In diesem Beispiel gehen wir davon aus, dass wir einen Taster E0.1 und einen Ausgang A0.1 haben. Mit jedem Betätigen des Tasters soll der Ausgang A0.1 seinen Zustand wechseln. Beim ersten Betätigen EIN, beim nächsten Betätigen AUS, danach wieder EIN usw.

Stromstoßschalter mit XOR

Eine sehr einfache Möglichkeit für die Realisierung eines Stromstoßschalters ist die Lösung mit einer XOR-Verknüpfung und einer positiven Flanke. Hierbei bedient man sich eines einfachen Tricks und die Steuerungslösung ist wie folgt zu verstehen. Im Grundzustand wird der Taster E0.1 betätigt und eine positive Flanke wird erzeugt. Der Ausgang steigt von 0 auf 1, weil die XOR-Bedingung erfüllt ist. Denn in dem Moment in dem die positive Flanke erzeugt wird, ist sie exklusiv. Das zweite "Signal am Eingang" A0.1 ist noch auf 0. Danach wird es trickreich. Der Ausgang wird auf 1 gesetzt. In dem Moment wird die XOR-Bedingung wieder erfüllt, nur umgekehrt. Es gibt keine positive Flanke am ersten Eingang, das zweite "Signal am Eingang" A0.1 ist jedoch auf 1 und somit ist die XOR-Bedingung erfüllt. Dadurch wird quasi eine Selbsthaltung erzeugt und der Ausgang A0.1 bleibt auf 1.

Stromstoßschalter
Stromstoßschalter mit XOR

Der Ausschaltvorgang ist wie folgt zu verstehen. Wird der Taster E0.1 nochmal betätigt, ist die XOR-Bedingung nicht mehr erfüllt. Denn, beide Signale an den Eingängen sind auf 1 (positive Flanke am E0.1 und der Ausgang A0.1). Daher wird der Ausgang A0.1 auf 0 gesetzt. Die Selbsthaltung ist somit unterbrochen.

Stromstoßschalter mit SR-Flipflops

Eine weitere Möglichkeit das Verhalten eines Stromstoßschalters zu realisieren ist die Lösung mit SR-Flipflops.

Stromstoßschalter mit Speicherglieder
Stromstoßschalter mit SR-Flipflops

Bei den gezeigten Beispielen wird davon ausgegangen, dass ein SR-Glied rücksetzdominant und ein RS-Glied setzdominant ist. Das ist z.B. bei der S7-300 Reihe der Fall. Es gibt auch Geräte, da ist es umgekehrt. Hierbei wird auch meistens eine 1 am dominanten Eingangsbuchstaben geführt (S1 oder R1).

Die abgebildete Lösung ist wie folgt zu verstehen. Im Grundzustand sind die beiden Merker M0.0 und M0.1 im zurückgesetzten Zustand, wobei M0.1 aktiv zurückgesetzt ist, da weder der Taster E0.1 noch der Merker M0.0 ein Signal 1 haben.

Nach dem ersten Betätigen von E0.1 wird die Rücksetzbedingung am Merker M0.1 aufgehoben. Gleichzeitig wird die Setzbedingung für Merker M0.0 erfüllt und der Ausgang A0.1 wird auf 1 gesetzt. Nach dem Loslassen von Taster E0.1 wird die Setzbedingung für M0.1 erfüllt und M0.1 wird ebenfalls gesetzt.

Beim nächsten Betätigen von E0.1 ist die Rücksetzbedingung für M0.0 erfüllt. Denn sowohl E0.1 und M0.1 liefern in dem Moment eine 1. Somit wird M0.0 und der Ausgang A0.1 zurückgesetzt. Nach dem Loslassen des Tasters E0.1 wird M0.1 ebenfalls zurückgesetzt. Denn in dem Moment ist auch diese Bedingung erfüllt, Taster E0.1 ist auf 0, M0.0 ebenfalls. Beide Merker sind so in den Ausgangszustand zurück versetzt worden. Mit diesen beiden Flipflops wurde eine Stromstoßschaltung realisiert und sie funktioniert genauso gut wie die Lösung mit einer XOR-Verknüpfung. Der einzige Nachteil dieser Lösung ist, dass das SPS-Programm größer ist.

Stromstoßschalter mit einer Sprungfunktion

Eine ebenfalls einfache Möglichkeit für die Realisierung eines Stromstoßschalters ist die Lösung mit einer Sprungfunktion. Auf dem Bild sehen Sie ein Beispielprogramm.

Sprungfunktion SPBN für Stromstoßschalter
Stromstoßschalter mit einer Sprungfunktion

Um die Übersichtlichkeit zu bewahren haben wir das Programm in FUP und AWL erstellt. Man könnte es natürlich auch komplett in einem einzigen Netzwerk in AWL realisieren. Das abgebildete Programm ist wie folgt zu verstehen.

Im Grundzustand ist der Ausgang A0.1 eigentlich auf 1. Denn Nicht-Ausgang A0.1 ist = Ausgang. Durch die Negation wird jedoch erreicht, dass am Ausgang ein 0 Signal geliefert wird. Im ersten Netzwerk ist die bedingte Sprungfunktion SPBN. Wenn das VKE auf 0 ist, wird zum Sprungziel ENDE gesprungen. Da im Grundzustand der Taster E0.1 nicht betätigt ist, wird quasi permanent zum Sprungziel ENDE gesprungen. Der Ausgang A0.1 liefert solange ein 0 Signal. Erfolgt eine Betätigung des Tasters E0.1 und liegt somit eine positive Flanke vor, wird die Sprungoperation unterbrochen und Netzwerk 2 wird bearbeitet. Durch die Negation wird der Wert am Ausgang A0.1 umgedreht. Danach erfolgt bis zum nächsten Betätigen des Tasters E0.1 wieder ein permanentes Überspringen von Netzwerk 2. Wird der Taster erneut betätigt, wird der Wert im Netzwerk 2 erneut umgedreht. So hätte man mit einer Sprungfunktion einen Stromstoßschalter realisiert.

Es gibt noch weitere Möglichkeiten, einen Stromstoßschalter mit einer SPS zu realisieren, z.B. mit Binäruntersetzern, in Kombination mit Zählern und Vergleichern oder gar mit einer Schrittkette in Graph. Beispielsweise wurde für die Aufgabe 7-Segmentanzeige eine Lösung für die geänderte Aufgabenstellung (statt 4 Schalter nur noch ein Taster) in S7-Graph realisiert. Die Lösung für die geänderte Aufgabenstellung, die dem Verhalten eines Stromstoßschalters ähnelt, nur mit dem Unterschied, dass nicht nur ein Ausgang sondern mehrere Segmente mit jedem Tastendruck ihren Signalzustand ändern.