Zum Inhalt springen

SPS-Programmierung in der Ausbildung – SPS-Programme ausschließlich im Testsystem erproben

Aus MOOCsWiki Staging
aiMOOC-Siegel aiMOOC

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:

  1. Testsystem: erklären, warum Programmänderungen zuerst in einer Simulation oder einem abgegrenzten Testsystem geprüft werden.
  2. SPS: Ein- und Ausgangssignale eines einfachen virtuellen Prozesses unterscheiden.
  3. Signalverlauf: Soll- und Ist-Verläufe vergleichen und Abweichungen erkennen.
  4. Fehlersuche: Fehler in einer simulierten Steuerung schrittweise eingrenzen.
  5. Programmtest: Änderungen mit Testfällen und Regressionstests absichern.
  6. 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:

  1. Ausgangszustand speichern.
  2. Genau eine geplante Änderung durchführen.
  3. Erwartetes Verhalten als Testfall notieren.
  4. Simulation starten.
  5. Signale beobachten.
  6. Ergebnis dokumentieren.
  7. 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:

  1. Welche Teile der Steuerung werden virtuell abgebildet?
  2. Welche Vorteile entstehen durch frühes Testen?
  3. 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

  1. Hilfe 1: Vergleiche zuerst Soll- und Ist-Zustand von Start_sim.
  2. Hilfe 2: Prüfe danach jede Bedingung, die Motor_sim beeinflusst.
  3. 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

  1. Hilfe 1: Suche die erste Stelle, an der Ziel_sim ausgewertet wird.
  2. Hilfe 2: Prüfe, ob die Stopplogik in jedem Programmdurchlauf erreicht wird.
  3. 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:

  1. Ausgangszustand
  2. Aktion
  3. erwartete Signale
  4. beobachtete Signale
  5. Ergebnis
  6. 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:

  1. DGUV/IFA: SafetySim – simulationsbasiertes Training für Sicherheits-SPS in der beruflichen Bildung
  2. DGUV Vorschrift 3 – Elektrische Anlagen und Betriebsmittel
  3. IFA: Sicherheit von Maschinensteuerungen nach DIN EN ISO 13849
  4. PLCopen: Status der IEC 61131-3, 4. Ausgabe 2025
  5. BIBB: Ausbildungsbausteine Elektroniker/-in für Betriebstechnik
  6. Siemens: S7-1200 Systemhandbuch mit Hinweis auf Programmsimulation

Geprüfte Wikimedia-Commons-Medien und Lizenzen:

  1. – CC BY-SA 3.0 / GFDL.
  2. – CC BY-SA 4.0.
  3. – CC BY-SA 4.0.
  4. – CC BY-SA 4.0.
  5. – CC BY-SA 4.0.
  6. – CC BY-SA 3.0 / GFDL.
  7. – CC BY-SA 3.0 / GFDL.
  8. – CC BY-SA 4.0.
  9. – 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

Vervollständige den Text.
Eine SPS-Änderung wird zuerst in einem

geprüft.
Der zeitliche Ablauf von Ein- und Ausgängen wird als

ausgewertet.
Vor dem Test wird das erwartete Verhalten als

festgelegt.
Nach einer Änderung werden bekannte Funktionen mit einem

erneut geprüft.
Gezielte Fehler werden ausschließlich im virtuellen

erzeugt.
Eine reale Anlage darf nicht automatisch aus dem Lernsystem

werden.
Schutzeinrichtungen dürfen für Übungen nicht

werden.
Reale Arbeiten erfordern geeignete Fachaufsicht und betriebliche

.




Offene Aufgaben


Leicht

  1. Signalplan: Zeichne für die virtuelle Förderstation eine einfache Übersicht mit Start_sim, Paket_sim, Ziel_sim, Motor_sim und Weiche_sim.
  2. Testfall: Formuliere einen Normalfall mit Ausgangszustand, Aktion, Sollverhalten und Prüfkriterium.
  3. Signalverlauf: Erstelle einen eigenen 0-1-Verlauf für Start, Paket und Motor und erkläre zwei Zustandswechsel.
  4. Fehlerprotokoll: Entwirf eine kurze Vorlage, in der Soll, Ist, Abweichung und nächster Schritt festgehalten werden.


Standard

  1. SPS-Diagnose: Analysiere einen simulierten Fall, in dem Motor_sim trotz Startsignal nicht aktiv wird, und dokumentiere Deinen Diagnoseweg.
  2. Regressionstest: Entwickle vier Testfälle, die nach einer Programmänderung erneut ausgeführt werden sollen.
  3. Virtuelle Anlage: Erweitere das Testmodell um einen zweiten Paketsensor und beschreibe, welche neuen Testfälle dadurch nötig werden.
  4. Programmänderung: Plane eine kleine Änderung an der virtuellen Förderlogik und begründe, warum Du genau diese Testreihenfolge wählst.


Schwer

  1. Fehlermodell: Entwirf drei rein virtuelle Fehlerfälle mit unterschiedlichen Ursachen und jeweils eindeutigem Sollverhalten.
  2. Teststrategie: Entwickle eine Testmatrix aus Normalfall, Grenzfall, simuliertem Fehlerfall und Regressionstest.
  3. Diagnosekonzept: Erstelle einen Entscheidungsbaum, der von einer beobachteten Abweichung systematisch zur wahrscheinlichsten Ursache führt.
  4. Transferprojekt: Übertrage das Vorgehen auf eine andere virtuelle Anlage, etwa einen Tankfüllstand oder eine Ampelsimulation, ohne reale Aktoren anzusteuern.




Text bearbeiten Bild einfügen Video einbetten Interaktive Aufgaben erstellen



Lernkontrolle

  1. Teststrategie: Begründe, warum ein bestandener Einzeltest nicht ausreicht, um eine Programmänderung als zuverlässig zu bewerten.
  2. 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.
  3. Änderungsmanagement: Zwei Programmänderungen sollen gleichzeitig umgesetzt werden. Entwickle eine Testreihenfolge, mit der sich Fehlerursachen trotzdem eindeutig zuordnen lassen.
  4. Fehlersimulation: Entwirf einen virtuellen Sensorfehler und beschreibe, welches sichere Testverhalten Du erwartest, ohne eine reale Schutzfunktion zu manipulieren.
  5. 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.
  6. 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:

  1. Du kannst eine SPS-Änderung auf ein Testziel zurückführen und einen passenden Testfall formulieren.
  2. Du kannst einen virtuellen Signalverlauf lesen und Soll-Ist-Abweichungen begründen.
  3. Du kannst einen Fehler im Testsystem systematisch eingrenzen, statt nur einzelne Ausgänge zu verändern.
  4. Du kannst erklären und praktisch zeigen, warum Regressionstests nach Änderungen notwendig sind.
  5. Du dokumentierst Version, Ausgangszustand, Änderung, Soll, Ist und Ergebnis nachvollziehbar.
  6. 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:

  1. Wikimedia Commons: Programmable logic controller
  2. Wikimedia Commons: Ladder diagrams
  3. 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-Hauptseite

Mediathek

Inhalte werden geladen ...

Mediathek wird aus dem Wiki geladen ...