SPS-Programmierung in der Ausbildung – Ablaufsteuerungen als Programm umsetzen
SPS-Programmierung in der Ausbildung – Ablaufsteuerungen als Programm umsetzen
Einleitung
Eine Ablaufsteuerung zerlegt einen Maschinenablauf in Schritte. Der Wechsel zum nächsten Schritt erfolgt erst, wenn eine eindeutig formulierte Übergangsbedingung erfüllt ist. In diesem Lernkurs setzt Du eine solche Schrittfolge zunächst als virtuelle Steuerung um, beobachtest Signalverläufe und diagnostizierst typische Fehler.
Zielgruppe: Ausbildung in Mechatronik, Automatisierungstechnik, Elektrotechnik und verwandten Berufen.
Kurzbeschreibung: Schrittfolge und Übergangsbedingungen planen, programmieren, simulieren, beobachten und diagnostizieren.
Sicherheitsrahmen: Alle Maschinenabläufe werden zuerst simuliert. Es gibt keine automatische Live-Ansteuerung realer Maschinen. Schutzeinrichtungen dürfen nicht umgangen oder manipuliert werden. Arbeiten an realen Anlagen erfolgen nur unter geeigneter Fachaufsicht, nach Gefährdungsbeurteilung und betrieblicher Freigabe.
Lernziele
Nach dem Kurs kannst Du:
- Ablaufsteuerungen in Schritte, Aktionen und Transitionen zerlegen.
- GRAFCET als Entwurfsmodell von einer SPS-Implementierung unterscheiden.
- Übergangsbedingungen aus Sensorsignalen ableiten.
- Eine Schrittfolge mit symbolischen Variablen programmieren.
- Signalverläufe in einer Simulation prüfen.
- Fehler in Schrittketten systematisch diagnostizieren.
- Sicherheitsgrenzen zwischen Simulation und realer Inbetriebnahme erklären.
Lerneinheit 1: Schritte und Übergänge
Ein Schritt beschreibt einen stabilen Zustand des Ablaufs. Solange der Schritt aktiv ist, werden die zugehörigen Aktionen ausgeführt. Eine Transition verbindet zwei Schritte. Sie wird nur dann wirksam, wenn der vorherige Schritt aktiv und ihre Bedingung erfüllt ist.
Für den Entwurf von Ablaufsteuerungen ist GRAFCET nach DIN EN 60848 eine gebräuchliche Spezifikationssprache. Für die SPS-Umsetzung stehen je nach System SFC-/Ablaufketten-Elemente, herstellerspezifische Werkzeuge wie GRAPH oder auch zustandsbasierte Programme in ST, KOP oder FUP zur Verfügung.
Merksatz
Schritt = Was ist aktiv?
Transition = Wann darf weitergeschaltet werden?
Lerneinheit 2: Ausbildungsfall Sortierstation
Du programmierst eine virtuelle Sortierstation. Ein Förderband transportiert ein Werkstück bis zu einer Ausschubposition. Danach fährt ein Zylinder aus, schiebt das Werkstück in eine Ablage und fährt wieder zurück.
| Symbol | Bedeutung | Typ in der Simulation |
|---|---|---|
| Start | Startimpuls für genau einen Zyklus | Eingang |
| B_Werkstueck | Werkstück an Ausschubposition | Eingang |
| B_Vorn | Zylinder vollständig ausgefahren | Eingang |
| B_Hinten | Zylinder in Grundstellung | Eingang |
| Sim_Foerderband | virtuelles Förderband | Ausgang |
| Sim_Zylinder_Aus | virtuelle Ausfahrbewegung | Ausgang |
| Sim_Zylinder_Ein | virtuelle Einfahrbewegung | Ausgang |
Schrittfolge
| Schritt | Aktion | Übergangsbedingung |
|---|---|---|
| S0 Bereit | alle simulierten Aktoren aus | Start UND B_Hinten |
| S10 Fördern | Sim_Foerderband EIN | B_Werkstueck |
| S20 Ausschieben | Sim_Zylinder_Aus EIN | B_Vorn |
| S30 Rückfahren | Sim_Zylinder_Ein EIN | B_Hinten |
| S40 Zyklusende | alle simulierten Aktoren aus | interner Abschluss zurück zu S0 |
Wichtig: Ein Sensor sollte eine Bewegung möglichst eindeutig bestätigen. Nur eine Zeitverzögerung zu verwenden, obwohl eine sichere Rückmeldung verfügbar ist, erschwert die Diagnose und kann zu unerwartetem Verhalten führen.
Lerneinheit 3: Signalverlauf lesen
Beobachte nicht nur das Programm, sondern auch die zeitliche Beziehung zwischen Schritt, Sensor und Aktion.
Zeit t0 t1 t2 t3 t4 Start 1 0 0 0 0 B_Hinten 1 1 1 0 1 B_Werkstueck 0 0 1 1 1 B_Vorn 0 0 0 1 0 S10 Fördern 1 1 0 0 0 Sim_Foerderband 1 1 0 0 0 S20 Ausschieben 0 0 1 1 0 Sim_Zylinder_Aus 0 0 1 1 0 S30 Rückfahren 0 0 0 1 1 Sim_Zylinder_Ein 0 0 0 1 1
Diagnoseidee: Bleibt S20 aktiv, obwohl der Zylinder virtuell ausgefahren ist, prüfst Du zuerst, ob B_Vorn tatsächlich den Wert 1 erreicht. Erst danach untersuchst Du die Transition.
Lerneinheit 4: Vom Ablaufmodell zum Programm
Eine Ablaufsteuerung kann als SFC-/GRAPH-Kette oder als Zustandsautomat umgesetzt werden. Für das Verständnis verwenden wir hier symbolische Variablen und ausschließlich virtuelle Aktoren.
CASE Schritt OF
0:
Sim_Foerderband := FALSE;
Sim_Zylinder_Aus := FALSE;
Sim_Zylinder_Ein := FALSE;
IF Start AND B_Hinten THEN
Schritt := 10;
END_IF;
10:
Sim_Foerderband := TRUE;
IF B_Werkstueck THEN
Sim_Foerderband := FALSE;
Schritt := 20;
END_IF;
20:
Sim_Zylinder_Aus := TRUE;
IF B_Vorn THEN
Sim_Zylinder_Aus := FALSE;
Schritt := 30;
END_IF;
30:
Sim_Zylinder_Ein := TRUE;
IF B_Hinten THEN
Sim_Zylinder_Ein := FALSE;
Schritt := 40;
END_IF;
40:
Schritt := 0;
END_CASE;
Der Code ist ein didaktisches Simulationsbeispiel. Er enthält keine realen Ein-/Ausgangsadressen und ist nicht für eine ungeprüfte Übertragung auf eine Maschine gedacht.

Lerneinheit 5: Virtuelle Anlage testen
Teste zuerst in einer SPS-Simulation oder einem virtuellen Anlagenmodell.
- Starte im Zustand S0.
- Setze Start kurz auf 1.
- Beobachte den Wechsel nach S10.
- Simuliere B_Werkstueck = 1.
- Prüfe den Wechsel nach S20.
- Simuliere B_Vorn = 1.
- Prüfe den Wechsel nach S30.
- Simuliere B_Hinten = 1.
- Prüfe die Rückkehr nach S0.
- Wiederhole den Ablauf mit absichtlich fehlerhaften Sensorsignalen.
Diagnosefall A: Sensor bleibt 0
Beobachtung: S20 bleibt aktiv. Sim_Zylinder_Aus ist aktiv. B_Vorn bleibt 0.
Deutung: Die Schrittkette wartet korrekt auf ihre Übergangsbedingung. Der Fehler liegt wahrscheinlich im simulierten Sensorsignal oder in dessen Zuordnung.
Begründetes Feedback: Wenn Du sofort den Schrittwechsel erzwingst, verdeckst Du den Fehler. Besser ist es, Ursache und Signalweg zu prüfen.
Diagnosefall B: Falsche Übergangsbedingung
Beobachtung: Der Zylinder ist virtuell vorn, B_Vorn = 1, trotzdem bleibt S20 aktiv.
Deutung: Prüfe die logische Bedingung der Transition und die verwendete Variable.
Begründetes Feedback: Ein korrektes Prozesssignal reicht nicht, wenn das Programm auf die falsche Variable oder Polarität prüft.
Diagnosefall C: Zwei Aktionssignale gleichzeitig
Beobachtung: Sim_Zylinder_Aus und Sim_Zylinder_Ein werden gleichzeitig TRUE.
Deutung: Prüfe die Schrittaktionen und die Rücksetzung beim Schrittwechsel.
Begründetes Feedback: Gegensätzliche Bewegungsbefehle müssen bereits in der Programmlogik ausgeschlossen sein. In einer realen Maschine wären zusätzlich passende technische Schutzmaßnahmen erforderlich.
Gestufte Hilfen
Hilfe 1: Denkfrage
Welcher Sensor bestätigt eindeutig, dass die Aktion des aktuellen Schrittes abgeschlossen ist?
Hilfe 2: Strukturhilfe
Schreibe jede Transition als Satz: Wenn Schritt X aktiv ist UND Bedingung Y erfüllt ist, dann wird Schritt Z aktiv.
Hilfe 3: Direkter Hinweis
Für den Übergang von S20 nach S30 muss in diesem Ausbildungsfall B_Vorn = TRUE sein.
Basis-, Anwendungs- und Transferaufgaben
Basisaufgabe
Ordne S10, S20 und S30 die jeweils passende Aktion und Übergangsbedingung zu.
Feedback: Richtig ist die Zuordnung dann, wenn jede Aktion durch eine eindeutige Prozessrückmeldung abgeschlossen wird. Die Reihenfolge allein genügt nicht.
Anwendungsaufgabe
Baue in der Simulation den Fehler B_Vorn bleibt dauerhaft FALSE ein. Notiere aktiven Schritt, Aktionssignal und erwartete Ursache.
Feedback: Bleibt S20 aktiv, arbeitet die Schrittkette logisch korrekt. Die Diagnose muss nun am Signal B_Vorn beginnen.
Transferaufgabe
Erweitere die virtuelle Station um einen Sensor B_FachFrei. Der Ausschub darf nur starten, wenn ein Werkstück bereitsteht und das Zielfach frei ist.
Feedback: Eine plausible Transition lautet B_Werkstueck UND B_FachFrei. Die Erweiterung verbessert die Prozesslogik, ersetzt aber keine reale sicherheitstechnische Bewertung.
Lerneinheit 6: Sicherheit und Freigabe
Simulation ist kein Ersatz für sichere Inbetriebnahme, aber sie reduziert unnötige Versuche an realer Hardware. Für reale Arbeiten gelten betriebliche Regeln, Gefährdungsbeurteilung, Freigaben und fachliche Aufsicht.
- Keine automatische Live-Ansteuerung aus diesem Lernkurs.
- Keine Umgehung, Manipulation oder Überbrückung von Schutzeinrichtungen.
- Keine ungeprüfte Übertragung von Simulationscode auf reale Ein- und Ausgänge.
- Reale elektrische Arbeiten nur im zulässigen Rahmen unter Leitung und Aufsicht geeigneter Fachkräfte.
- Vor realer Inbetriebnahme: Betriebsart, Freigabekette, Schutzfunktionen und Zuständigkeiten klären.

Fachliche Quellen und Medienrechte
Fachliche Quellen:
- IEC 61131-3:2025 – Programmable controllers – Part 3: Programming languages – aktuelle IEC-Ausgabe zu SPS-Programmiersprachen und SFC-Elementen.
- DIN EN 60848:2014-12 – aktuelle deutsche Normseite zu GRAFCET als Spezifikationssprache für Ablaufsteuerungen.
- Siemens SCE: Basics of GRAPH Programming – Schulungsunterlage mit Schrittketten, GRAFCET und Diagnose.
- Siemens SCE Kurse – Ausbildungsangebote zu SPS, GRAPH und Simulation.
- DGUV Information 203-001 – Sicherheit bei Arbeiten an elektrischen Anlagen.
- DGUV Information 209-015 – Instandhaltung an Maschinen und Anlagen.
- DGUV/IFA: Manipulation von Schutzeinrichtungen verhindern – Hinweise gegen das Umgehen von Schutzeinrichtungen.
- Wikipedia: Ablaufsteuerung – Überblick zu Schritten, Transitionen, GRAFCET und SPS.
- Wikipedia: Speicherprogrammierbare Steuerung – Überblick zu SPS und zyklischer Programmbearbeitung.
Geprüfte Wikimedia-Commons-Medien:
- Fehler beim Erstellen des Vorschaubildes: – Autor Palatinatian, Lizenz CC BY 3.0 laut Commons-Dateiseite.
– freie Lizenzierung laut Commons-Dateiseite, unter anderem CC BY-SA.- Datei:Etapa GRAFCET.svg – CC BY-SA 4.0 laut Commons-Dateiseite.
- Fehler beim Erstellen des Vorschaubildes: – Autor Mithilrkadam, CC BY-SA 4.0.
- Fehler beim Erstellen des Vorschaubildes: – freie Lizenzierung laut Commons-Dateiseite, unter anderem CC BY-SA 3.0/GFDL.
YouTube: Die eingebundenen Videos werden ausschließlich über den YouTube-Player verknüpft. Es wird keine freie Nachnutzungs-Lizenz der Videodateien behauptet und keine Kopie bereitgestellt. Rechte verbleiben bei den jeweiligen Anbietern.
Interaktive Aufgaben
Quiz: Teste Dein Wissen
Was beschreibt eine Transition in einer Ablaufsteuerung? (Eine Bedingung für den Wechsel zum nächsten Schritt) (!Eine dauerhaft aktive Ausgangsadresse) (!Eine mechanische Schutzeinrichtung) (!Eine Programmiersprache für Datenbanken)
Wann darf in der Schrittkette von S20 nach S30 gewechselt werden? (Wenn B_Vorn erfüllt ist) (!Wenn Start dauerhaft aktiv bleibt) (!Wenn B_Hinten sicher falsch ist) (!Wenn das Förderband eingeschaltet wird)
Welche Aussage zu einem Schritt ist richtig? (Ein Schritt fasst einen Zustand mit zugehörigen Aktionen zusammen) (!Ein Schritt ist immer ein physischer Sensor) (!Ein Schritt ersetzt jede Sicherheitsfunktion) (!Ein Schritt darf nur einmal im Programm vorkommen)
Wozu dient GRAFCET im Kurs vor allem? (Zur strukturierten Beschreibung des Ablaufs) (!Zur elektrischen Leistungsschaltung) (!Zur Netzwerkadressierung) (!Zum Überbrücken von Sensoren)
Was ist vor einer realen Maschinenansteuerung zuerst vorgesehen? (Eine Simulation des Ablaufs) (!Das Deaktivieren aller Schutzfunktionen) (!Das direkte Schreiben auf reale Ausgänge) (!Das Entfernen von Verriegelungen)
Was ist eine sinnvolle erste Diagnose bei einem stehen gebliebenen Schritt? (Die zugehörige Übergangsbedingung und ihre Signale prüfen) (!Den Programmzähler zufällig ändern) (!Alle Sensoren dauerhaft auf 1 setzen) (!Die Schutztür überbrücken)
Welches Signal beendet im Ausbildungsfall den Schritt Ausschieben? (B_Vorn) (!Start) (!Sim_Foerderband) (!B_Hinten)
Warum werden im Beispiel symbolische Simulationsvariablen verwendet? (Damit der Ablauf ohne direkte reale Ausgangsansteuerung erprobt wird) (!Damit Sensoren grundsätzlich überflüssig werden) (!Damit keine Transitionen mehr nötig sind) (!Damit Schutzfunktionen ignoriert werden können)
Was bedeutet es, wenn S20 aktiv bleibt und B_Vorn dauerhaft 0 ist? (Die Schrittkette wartet auf die noch nicht erfüllte Transition) (!Die Schrittkette hat automatisch S30 erreicht) (!Das Förderband muss zwingend schneller laufen) (!Die Sicherheitsfunktion ist damit geprüft)
Welche Erweiterung ist für den Ausschub in ein belegbares Fach logisch sinnvoll? (B_Werkstueck UND B_FachFrei) (!B_Werkstueck ODER niemals) (!Sim_Zylinder_Aus UND Sim_Zylinder_Ein) (!Start UND keine Rückmeldung)
Memory
| Schritt | aktiver Ablaufzustand |
| Transition | Übergangsbedingung |
| GRAFCET | Ablaufspezifikation |
| B_Vorn | Endlagensignal ausgefahren |
| Simulation | gefahrloser virtueller Test |
| Diagnose | systematische Fehlersuche |
Drag and Drop
| Ordne die richtigen Begriffe zu. | Thema |
|---|---|
| Bereit | Grundstellung prüfen |
| Fördern | Werkstück transportieren |
| Ausschieben | Zylinder ausfahren |
| Rückfahren | Zylinder einfahren |
| Diagnose | Signale und Transitionen vergleichen |
...
Kreuzworträtsel
| Transition | Welche Bedingung verbindet zwei Schritte? |
| Schritt | Wie heißt ein aktiver Zustand einer Ablaufsteuerung? |
| Grafcet | Welche Spezifikationssprache beschreibt Ablaufsteuerungen? |
| Sensor | Welches Bauteil liefert eine Prozessrückmeldung? |
| Simulation | Wie heißt der virtuelle Test eines Maschinenablaufs? |
| Diagnose | Wie heißt die systematische Suche nach einer Störungsursache? |
LearningApps
Lückentext
Offene Aufgaben
Leicht
- Schrittfolge: Zeichne die fünf Schritte des Ausbildungsfalls als einfache Kästen mit Pfeilen.
- Signalzuordnung: Erstelle eine Tabelle aus Sensor, Bedeutung und zugehöriger Transition.
- Signalverlauf: Markiere im gegebenen Signalverlauf den Zeitpunkt, an dem S10 endet.
- Fehlerbeschreibung: Formuliere in zwei Sätzen, was passiert, wenn B_Vorn nicht aktiv wird.
Standard
- Virtuelle Anlage: Setze die Schrittfolge in einer verfügbaren SPS-Simulation mit symbolischen Variablen um.
- Diagnoseprotokoll: Baue drei Signalfehler ein und dokumentiere Beobachtung, Ursache und Korrektur.
- GRAFCET: Übertrage den Ausbildungsfall in einen GRAFCET mit Schritten, Aktionen und Transitionen.
- Programmvergleich: Vergleiche eine SFC-/GRAPH-Lösung mit einer CASE-basierten ST-Lösung hinsichtlich Lesbarkeit und Diagnose.
Schwer
- Verriegelungslogik: Erweitere die Simulation so, dass Ausfahren und Einfahren logisch niemals gleichzeitig aktiv sein können, und begründe Deine Lösung.
- Prozessfreigabe: Ergänze B_FachFrei und entwickle eine nachvollziehbare Freigabebedingung für den Ausschub.
- Fehlerstrategie: Entwirf für einen zeitlich zu langen Schritt eine Diagnosemeldung, ohne die Schutzeinrichtungen oder Transitionen zu umgehen.
- Transferprojekt: Entwickle einen neuen virtuellen Ablauf mit mindestens sechs Schritten, zwei Sensorfehlern und einer dokumentierten Diagnosefolge.


Lernkontrolle
- Ablaufanalyse: Ein Zylinder fährt virtuell aus, aber die Kette bleibt im Ausschubschritt stehen. Beschreibe eine Diagnosefolge vom Signal bis zur Transition und begründe die Reihenfolge.
- Entwurfsentscheidung: Erkläre, wann ein GRAFCET vor der Programmierung besonders hilfreich ist und welche Informationen er noch nicht über die reale Sicherheit der Maschine liefert.
- Programmtransfer: Übertrage die Sortierstation gedanklich von einer GRAPH-Darstellung in einen CASE-basierten Zustandsautomaten. Welche Elemente müssen erhalten bleiben?
- Signalbewertung: Vergleiche eine Transition über Endlagensensor mit einer rein zeitgesteuerten Transition. Nenne Vor- und Nachteile für Diagnose und Prozesssicherheit.
- Fehlererweiterung: B_FachFrei fällt während des Ausschubschritts ab. Begründe, welche Reaktion die Ablaufsteuerung haben sollte und welche zusätzliche Sicherheitsbewertung für eine reale Anlage notwendig wäre.
- Inbetriebnahmekonzept: Entwirf eine Reihenfolge von Simulation, Programmkontrolle, Freigabe und beaufsichtigter realer Prüfung. Begründe, warum diese Reihenfolge Risiken reduziert.
Lernnachweis
Für einen Lernnachweis zu diesem Thema solltest Du zeigen können:
- eine Schrittfolge fachlich korrekt zu strukturieren,
- Übergangsbedingungen eindeutig zu formulieren,
- GRAFCET und SPS-Implementierung voneinander zu unterscheiden,
- einen Ablauf mit symbolischen Variablen zu programmieren,
- Signalverläufe zu lesen,
- typische Fehler systematisch zu diagnostizieren,
- eine virtuelle Anlage kontrolliert zu testen,
- Programmänderungen nachvollziehbar zu dokumentieren,
- Sicherheitsgrenzen zwischen Simulation und realer Anlage zu erklären,
- eine begründete Transferlösung für einen erweiterten Ablauf zu entwickeln.
OERs zum Thema
Verknüpfte Lernbereiche
aiMOOC-Projekte
Schulfach+


aiMOOCs


aiMOOC Projekte


NEWSLernweltNOAH fragen