SPS-Programmierung in der Ausbildung – SPS-Programme ausschließlich im Testsystem erproben
SPS-Programmierung in der Ausbildung – SPS-Programme ausschließlich im Testsystem erproben
QR-Code
SPS-Programmierung in der Ausbildung – SPS-Programme ausschließlich im Testsystem erproben
Kurzbeschreibung: In diesem aiMOOC lernst Du, SPS-Programme kontrolliert zu ändern, in einer virtuellen Anlage zu simulieren, Signalverläufe auszuwerten und Fehler systematisch zu diagnostizieren. Alle Übungen bleiben im Testsystem. Reale Arbeiten erfolgen nur unter geeigneter Fachaufsicht, nach betrieblicher Freigabe und nach den geltenden Sicherheitsregeln.
| Sicherheitsgrenze dieses Kurses |
|---|
| Programme werden ausschließlich in Simulationen und Testsystemen erprobt. Es gibt keine automatische Live-Ansteuerung realer Maschinen. Schutzeinrichtungen werden nicht deaktiviert, überbrückt oder umgangen. Änderungen an realen elektrischen Anlagen oder Betriebsmitteln gehören nur in die Hände entsprechend qualifizierter Personen bzw. unter die erforderliche Leitung und Aufsicht sowie betriebliche Freigabe. |
Lernziele
Nach dem Kurs kannst Du:
- Testsystem: erklären, warum Programmänderungen zuerst in einer Simulation oder einem abgegrenzten Testsystem geprüft werden.
- SPS: Ein- und Ausgangssignale eines einfachen virtuellen Prozesses unterscheiden.
- Signalverlauf: Soll- und Ist-Verläufe vergleichen und Abweichungen erkennen.
- Fehlersuche: Fehler in einer simulierten Steuerung schrittweise eingrenzen.
- Programmtest: Änderungen mit Testfällen und Regressionstests absichern.
- Dokumentation: Testergebnisse so festhalten, dass andere sie nachvollziehen können.
Ausbildungsfall: Virtuelle Förderstation
Du arbeitest an einer virtuellen Förderstation für Übungszwecke. Ein Paket wird erkannt, transportiert und an einer virtuellen Weiche sortiert. Es gibt keine Verbindung zu einer realen Maschine.
Symbolische Signale im Testsystem:
| Signal | Rolle | Bedeutung |
|---|---|---|
| Start_sim | Eingang | Virtueller Starttaster |
| Stop_sim | Eingang | Virtueller Stopptaster |
| Paket_sim | Eingang | Virtueller Paketsensor |
| Ziel_sim | Eingang | Virtueller Zielsensor |
| Motor_sim | Ausgang | Virtueller Fördermotor |
| Weiche_sim | Ausgang | Virtuelle Sortierweiche |
| Stoerung_sim | Status | Simulierte Störmeldung |

Arbeitsauftrag: Die Förderstation soll im Testsystem starten, ein Paket transportieren, am Ziel stoppen und bei einer simulierten Störung in einen sicheren virtuellen Zustand wechseln.
Lerneinheit 1: Erst testen, dann freigeben
Bei einer SPS kann schon eine kleine Änderung die Reihenfolge von Signalen verändern. Deshalb arbeitest Du in diesem Kurs nach einem festen Prinzip:
Ändern → simulieren → beobachten → dokumentieren → erneut testen → erst danach mögliche betriebliche Freigabe.
Das DGUV-Forschungsprojekt SafetySim zeigt, wie simulierte Anlagen, virtuelle Sensoren und Aktoren sowie gezielt eingespielte Fehler in der beruflichen Bildung für sicheres Lernen genutzt werden können.
Merksatz: Ein erfolgreicher Simulationslauf ist kein Ersatz für die betriebliche Freigabe einer realen Anlage.
Lerneinheit 2: Vom Signal zur Programmlogik
Eine SPS verarbeitet Eingangssignale, führt Programmlogik aus und setzt daraus Ausgangssignale. Für die Ausbildung sind symbolische Namen hilfreicher als reale Hardwareadressen.




In der IEC 61131-3 gehören unter anderem Ladder Diagram, Function Block Diagram und Structured Text zu den standardisierten Programmiersprachen.
Beispiel ausschließlich mit Simulationsvariablen:
IF Start_sim AND NOT Stop_sim THEN
Motor_sim := TRUE;
END_IF;
IF Ziel_sim OR Stoerung_sim THEN
Motor_sim := FALSE;
END_IF;
Beobachtungsfrage: Welche Bedingung schaltet Motor_sim ab, selbst wenn Start_sim zuvor aktiv war?
Lerneinheit 3: Programmänderung kontrollieren
Ändere nie mehrere Dinge gleichzeitig, wenn Du die Ursache einer Wirkung nachvollziehen willst.
Kontrollierte Änderung im Testsystem:
- Ausgangszustand speichern.
- Genau eine geplante Änderung durchführen.
- Erwartetes Verhalten als Testfall notieren.
- Simulation starten.
- Signale beobachten.
- Ergebnis dokumentieren.
- Vorherige Funktionen erneut prüfen.

Mini-Auftrag: Ergänze im Testsystem die Bedingung, dass Motor_sim nur aktiv sein darf, wenn Stoerung_sim nicht gesetzt ist. Prüfe danach nicht nur den Störfall, sondern auch den normalen Ablauf erneut.
Lerneinheit 4: Signalverläufe lesen
Ein Signalverlauf zeigt, wann ein Signal den Zustand 0 oder 1 annimmt. Entscheidend ist nicht nur der Endzustand, sondern die Reihenfolge.
Soll-Verlauf eines virtuellen Tests:
| Signal | Start | Paket erkannt | Ziel erreicht | Störung |
|---|---|---|---|---|
| Start_sim | 1 | 0 | 0 | 0 |
| Paket_sim | 0 | 1 | 0 | 0 |
| Ziel_sim | 0 | 0 | 1 | 0 |
| Stoerung_sim | 0 | 0 | 0 | 1 |
| Motor_sim | 1 | 1 | 0 | 0 |
| Weiche_sim | 0 | 1 | 0 | 0 |
Diagnosefrage: Wenn Ziel_sim den Wert 1 erreicht, Motor_sim aber ebenfalls 1 bleibt, liegt eine Abweichung zwischen Soll und Ist vor. Suche zuerst die Bedingung, die den Ausgang zurücksetzen soll.
Lerneinheit 5: Virtuelle Inbetriebnahme
Virtuelle Inbetriebnahme verbindet Steuerungslogik mit einem simulierten Anlagenmodell. Dadurch können Abläufe geprüft werden, bevor eine reale Anlage beteiligt ist.
Beobachte beim Video:
- Welche Teile der Steuerung werden virtuell abgebildet?
- Welche Vorteile entstehen durch frühes Testen?
- Welche Fehler lassen sich erkennen, bevor reale Hardware beteiligt ist?
Lerneinheit 6: Diagnose statt Raten
Bei der Fehlersuche vergleichst Du schrittweise:
Sollzustand → Eingangssignale → Programmbedingungen → Ausgangssignal → protokollierte Meldung.

Hinweis zum Bild: Die Grafik zeigt grundsätzlich die Kopplung von Engineering-System und SPS. In diesem Kurs wird dieses Prinzip nur zur Einordnung betrachtet; praktisch gearbeitet wird ausschließlich im Testsystem.
Diagnosefall A: Motor_sim startet nicht
Ist-Zustand: Start_sim = 1, Stop_sim = 0, Stoerung_sim = 0, Motor_sim = 0.
Deine Aufgabe: Prüfe im Testsystem nacheinander, ob das Eingangssignal erkannt wird, ob alle Programmbedingungen erfüllt sind und ob der virtuelle Ausgang gesetzt werden müsste.
Gestufte Hilfen zu Diagnosefall A
- Hilfe 1: Vergleiche zuerst Soll- und Ist-Zustand von Start_sim.
- Hilfe 2: Prüfe danach jede Bedingung, die Motor_sim beeinflusst.
- Hilfe 3: Wenn alle Bedingungen wahr sind, beobachte, ob später im Zyklus eine zweite Anweisung Motor_sim wieder zurücksetzt.
Begründetes Feedback: Eine gute Diagnose folgt dem Signalweg. Wenn Du sofort nur die Ausgangsanweisung änderst, kannst Du die eigentliche Ursache verdecken.
Diagnosefall B: Motor_sim stoppt zu spät
Ist-Zustand: Ziel_sim wechselt auf 1, aber Motor_sim bleibt noch aktiv.
Deine Aufgabe: Vergleiche den Zeitpunkt von Ziel_sim mit der Programmbedingung zum Stoppen.
Gestufte Hilfen zu Diagnosefall B
- Hilfe 1: Suche die erste Stelle, an der Ziel_sim ausgewertet wird.
- Hilfe 2: Prüfe, ob die Stopplogik in jedem Programmdurchlauf erreicht wird.
- Hilfe 3: Vergleiche den Signalverlauf vor und nach Deiner Änderung.
Begründetes Feedback: Der Zeitpunkt eines Signals ist Teil der Funktion. Ein logisch richtiger Endzustand kann trotzdem einen fehlerhaften Ablauf verbergen.
Lerneinheit 7: Fehler gezielt simulieren
Fehler werden nur im virtuellen Modell erzeugt. Geeignete Ausbildungsfälle sind zum Beispiel ein feststehender Sensorzustand, ein ausbleibendes Signal oder eine widersprüchliche Rückmeldung.
Nie Bestandteil dieser Übung: Manipulation einer realen Schutzeinrichtung, Überbrücken eines Sicherheitskontakts oder erzwungene Live-Ausgänge.
Virtueller Fehlerfall: Paket_sim bleibt im Testmodell dauerhaft auf 1.
Prüfziel: Die Steuerung soll nicht unkontrolliert weiterlaufen. Sie soll eine virtuelle Störmeldung setzen oder in einen definierten Testzustand wechseln.
Lerneinheit 8: Testfälle und Regression
Ein guter Testfall enthält:
- Ausgangszustand
- Aktion
- erwartete Signale
- beobachtete Signale
- Ergebnis
- Abweichung und nächste Maßnahme
Regressionstest bedeutet: Nach einer Änderung werden bereits bestandene Testfälle erneut ausgeführt. So erkennst Du, ob eine Verbesserung an einer Stelle ungewollt eine andere Funktion verändert hat.
Lernaufgaben mit begründetem Feedback
| Niveau | Aufgabe | Begründetes Feedback |
|---|---|---|
| Basis | Ordne Start_sim, Paket_sim, Motor_sim und Stoerung_sim ihrer Rolle als Eingang, Ausgang oder Status zu. | Richtig ist die Zuordnung dann, wenn Du zwischen beobachteten Prozesssignalen und vom Programm gesetzten virtuellen Reaktionen unterscheidest. |
| Anwendung | Ändere im Testsystem eine Bedingung so, dass Motor_sim bei Ziel_sim sicher auf 0 wechselt. Führe danach den Normalfall und den Störfall erneut aus. | Die Änderung ist nur dann überzeugend, wenn nicht nur der gewünschte Fall funktioniert, sondern auch vorher funktionierende Abläufe erhalten bleiben. |
| Transfer | Entwirf einen Testfall für einen virtuellen Sensor, der dauerhaft auf 1 bleibt. Beschreibe Sollverhalten, Diagnoseweg und Rückkehr in den Ausgangszustand. | Gute Transferlösungen definieren zuerst das erwartete sichere Testverhalten und ändern erst danach die Logik. So bleibt die Diagnose nachvollziehbar. |
Testprotokoll für die Ausbildung
| Feld | Eintrag |
|---|---|
| Testfall | z. B. Paket erreicht Ziel |
| Programmversion | Versionskennung des Teststands |
| Ausgangszustand | definierte Simulationswerte |
| Änderung | genau beschriebene Programmanpassung |
| Soll | erwartete Signalfolge |
| Ist | beobachtete Signalfolge |
| Ergebnis | bestanden oder Abweichung |
| Nächster Schritt | Fehleranalyse, Regressionstest oder dokumentierte Freigabe im Ausbildungsprozess |
Fachliche Einordnung und Sicherheitsbezug
Das Foto zeigt eine SPS in einer realen Schaltschrankumgebung. Genau diese reale Ebene ist nicht der Experimentierraum dieses Kurses. Die Übungen bleiben virtuell.
Für Deutschland ist unter anderem die DGUV Vorschrift 3 relevant: Elektrische Anlagen und Betriebsmittel dürfen nur von einer Elektrofachkraft oder unter deren Leitung und Aufsicht entsprechend den elektrotechnischen Regeln errichtet, geändert und instand gehalten werden. Für die Ausbildung bedeutet das: Simulationskompetenz ist wichtig, ersetzt aber keine erforderliche Qualifikation, Aufsicht oder betriebliche Freigabe.
Der Ausbildungsbezug passt besonders zu Elektronikerinnen und Elektronikern für Betriebstechnik, Mechatronikerinnen und Mechatronikern sowie weiteren Ausbildungsberufen mit Automatisierungstechnik.
Quellen- und Mediencheck
Fachliche Quellen:
- DGUV/IFA: SafetySim – simulationsbasiertes Training für Sicherheits-SPS in der beruflichen Bildung
- DGUV Vorschrift 3 – Elektrische Anlagen und Betriebsmittel
- IFA: Sicherheit von Maschinensteuerungen nach DIN EN ISO 13849
- PLCopen: Status der IEC 61131-3, 4. Ausgabe 2025
- BIBB: Ausbildungsbausteine Elektroniker/-in für Betriebstechnik
- Siemens: S7-1200 Systemhandbuch mit Hinweis auf Programmsimulation
Geprüfte Wikimedia-Commons-Medien und Lizenzen:
– CC BY-SA 3.0 / GFDL.
– CC BY-SA 4.0.
– CC BY-SA 4.0.
– CC BY-SA 4.0.
– CC BY-SA 4.0.
– CC BY-SA 3.0 / GFDL.
– CC BY-SA 3.0 / GFDL.
– CC BY-SA 4.0.– CC BY-SA 3.0.
YouTube-Medien: Die eingebetteten Videos stammen vom Kanal Siemens Knowledge Hub. Die Einbettung erfolgt über die YouTube-Plattformfunktion; Urheber- und Nutzungsrechte verbleiben beim jeweiligen Rechteinhaber. Vor dem Unterricht sollte die aktuelle Abrufbarkeit geprüft werden.
Interaktive Aufgaben
Quiz: Teste Dein Wissen
Warum wird eine Programmänderung zuerst im Testsystem erprobt? (Damit Auswirkungen kontrolliert beobachtet werden können) (!Damit reale Schutzfunktionen überbrückt werden können) (!Damit Dokumentation unnötig wird) (!Damit jeder Test an einer laufenden Maschine erfolgen kann)
Welche Größe ist im Ausbildungsfall ein virtuelles Eingangssignal? (Paket_sim) (!Motor_sim) (!Weiche_sim) (!Testprotokoll)
Welches Signal ist im Ausbildungsfall ein virtueller Ausgang? (Motor_sim) (!Start_sim) (!Paket_sim) (!Ziel_sim)
Wozu dient ein Signalverlauf bei der Diagnose? (Er zeigt Zustände und ihre zeitliche Reihenfolge) (!Er ersetzt jede Funktionsprüfung) (!Er gibt automatisch eine reale Anlage frei) (!Er deaktiviert fehlerhafte Signale)
Was gehört zu einer kontrollierten Programmänderung? (Nach der Änderung werden definierte Testfälle erneut ausgeführt) (!Mehrere Änderungen werden gleichzeitig ohne Protokoll vorgenommen) (!Die reale Anlage wird automatisch angesteuert) (!Schutzeinrichtungen werden zum Test überbrückt)
Was ist ein Regressionstest? (Eine Wiederholung bereits bestandener Tests nach einer Änderung) (!Ein Test ohne erwartetes Ergebnis) (!Eine direkte Freigabe für den Produktionsbetrieb) (!Eine Prüfung nur des zuletzt geänderten Ausgangs)
Was wird bei einer systematischen Diagnose zuerst verglichen? (Sollzustand und Istzustand) (!Herstellerlogo und Gehäusefarbe) (!Kabelpreis und Ersatzteilnummer) (!Produktionsmenge und Schichtplan)
Welche Aussage zu simulierten Fehlern ist richtig? (Fehler dürfen im virtuellen Modell gezielt erzeugt und beobachtet werden) (!Reale Schutzeinrichtungen sollen für Lernzwecke deaktiviert werden) (!Ein realer Ausgang darf ohne Freigabe erzwungen werden) (!Eine Simulation macht Sicherheitsregeln überflüssig)
Welche Programmiersprache gehört zur IEC 61131-3? (Ladder Diagram) (!Hypertext Markup Language) (!Cascading Style Sheets) (!Structured Query Language)
Wann darf aus diesem Kurs heraus an einer realen Anlage gearbeitet werden? (Nur mit geeigneter Fachaufsicht und betrieblicher Freigabe) (!Sobald ein einzelner Simulationstest bestanden wurde) (!Sobald Motor_sim im Testsystem funktioniert) (!Sobald ein Video angesehen wurde)
Memory
| Testsystem | kontrollierte Erprobungsumgebung |
| Signalverlauf | zeitliche Folge von Zuständen |
| Sollzustand | erwartetes Verhalten |
| Istzustand | beobachtetes Verhalten |
| Regressionstest | erneute Prüfung nach einer Änderung |
| Fehlerprotokoll | dokumentierte Abweichung |
Drag and Drop
| Ordne die richtigen Begriffe zu. | Thema |
|---|---|
| Eingangssignal | liefert einen Zustand an das Programm |
| Ausgangssignal | wird durch die Programmlogik gesetzt |
| Simulation | bildet einen Prozess ohne reale Maschinenbewegung nach |
| Diagnose | grenzt eine Abweichung schrittweise ein |
| Regressionstest | prüft bekannte Funktionen nach einer Änderung erneut |
...
Kreuzworträtsel
| Simulation | Wie heißt die virtuelle Nachbildung eines technischen Ablaufs? |
| Signalverlauf | Wie nennt man die zeitliche Folge beobachteter Signalzustände? |
| Diagnose | Wie heißt die systematische Eingrenzung einer Störung? |
| Testfall | Wie heißt eine definierte Prüfung mit Ausgangszustand und erwartetem Ergebnis? |
| Freigabe | Wie heißt die formale Erlaubnis für den nächsten betrieblichen Schritt? |
| Regression | Wie heißt die erneute Prüfung bereits funktionierender Abläufe nach Änderungen? |
LearningApps
Lückentext
Offene Aufgaben
Leicht
- Signalplan: Zeichne für die virtuelle Förderstation eine einfache Übersicht mit Start_sim, Paket_sim, Ziel_sim, Motor_sim und Weiche_sim.
- Testfall: Formuliere einen Normalfall mit Ausgangszustand, Aktion, Sollverhalten und Prüfkriterium.
- Signalverlauf: Erstelle einen eigenen 0-1-Verlauf für Start, Paket und Motor und erkläre zwei Zustandswechsel.
- Fehlerprotokoll: Entwirf eine kurze Vorlage, in der Soll, Ist, Abweichung und nächster Schritt festgehalten werden.
Standard
- SPS-Diagnose: Analysiere einen simulierten Fall, in dem Motor_sim trotz Startsignal nicht aktiv wird, und dokumentiere Deinen Diagnoseweg.
- Regressionstest: Entwickle vier Testfälle, die nach einer Programmänderung erneut ausgeführt werden sollen.
- Virtuelle Anlage: Erweitere das Testmodell um einen zweiten Paketsensor und beschreibe, welche neuen Testfälle dadurch nötig werden.
- Programmänderung: Plane eine kleine Änderung an der virtuellen Förderlogik und begründe, warum Du genau diese Testreihenfolge wählst.
Schwer
- Fehlermodell: Entwirf drei rein virtuelle Fehlerfälle mit unterschiedlichen Ursachen und jeweils eindeutigem Sollverhalten.
- Teststrategie: Entwickle eine Testmatrix aus Normalfall, Grenzfall, simuliertem Fehlerfall und Regressionstest.
- Diagnosekonzept: Erstelle einen Entscheidungsbaum, der von einer beobachteten Abweichung systematisch zur wahrscheinlichsten Ursache führt.
- Transferprojekt: Übertrage das Vorgehen auf eine andere virtuelle Anlage, etwa einen Tankfüllstand oder eine Ampelsimulation, ohne reale Aktoren anzusteuern.


Lernkontrolle
- Teststrategie: Begründe, warum ein bestandener Einzeltest nicht ausreicht, um eine Programmänderung als zuverlässig zu bewerten.
- Signaldiagnose: Du beobachtest, dass ein Ausgang korrekt endet, aber zu spät reagiert. Erkläre, warum der Endzustand allein nicht genügt und welche Daten Du zusätzlich auswertest.
- Änderungsmanagement: Zwei Programmänderungen sollen gleichzeitig umgesetzt werden. Entwickle eine Testreihenfolge, mit der sich Fehlerursachen trotzdem eindeutig zuordnen lassen.
- Fehlersimulation: Entwirf einen virtuellen Sensorfehler und beschreibe, welches sichere Testverhalten Du erwartest, ohne eine reale Schutzfunktion zu manipulieren.
- Transfer: Vergleiche den Nutzen einer Simulation mit einer Prüfung an einer realen Anlage. Zeige, welche Erkenntnisse die Simulation liefert und welche Freigaben sie ausdrücklich nicht ersetzt.
- Dokumentation: Bewerte zwei fiktive Testprotokolle: eines enthält nur „funktioniert“, das andere Sollwerte, Istwerte, Version und Abweichungen. Begründe, welches für Ausbildung und Fehlersuche geeigneter ist.
Lernnachweis
Für einen Lernnachweis zu diesem Thema ist wichtig:
- Du kannst eine SPS-Änderung auf ein Testziel zurückführen und einen passenden Testfall formulieren.
- Du kannst einen virtuellen Signalverlauf lesen und Soll-Ist-Abweichungen begründen.
- Du kannst einen Fehler im Testsystem systematisch eingrenzen, statt nur einzelne Ausgänge zu verändern.
- Du kannst erklären und praktisch zeigen, warum Regressionstests nach Änderungen notwendig sind.
- Du dokumentierst Version, Ausgangszustand, Änderung, Soll, Ist und Ergebnis nachvollziehbar.
- Du hältst die Sicherheitsgrenze ein: keine automatische Live-Ansteuerung, keine Umgehung von Schutzeinrichtungen und reale Arbeiten nur unter geeigneter Fachaufsicht und betrieblicher Freigabe.
OERs zum Thema
Weitere offene bzw. frei zugängliche Lernquellen:
- Wikimedia Commons: Programmable logic controller
- Wikimedia Commons: Ladder diagrams
- PLCopen: Materialien zu IEC 61131-3
Verknüpfte Lernbereiche
aiMOOC-Projekte
Schulfach+


aiMOOCs


aiMOOC Projekte


MOOCwiki · Deutsch
Nach dem Lernen ist vor dem Lernen
Entdecke direkt den nächsten Lernkurs. Weitere Inhalte erscheinen, wenn Du weiter nach unten scrollst.
Zur MOOCwiki-HauptseiteMediathek
Mediathek wird aus dem Wiki geladen ...
Keine passenden Inhalte gefunden. Bitte ändere Suche oder Filter.
NEWSLernweltNOAH fragen