Lokaler Fortschritt wird geladen…
PLC Gym
PLC Gym StartseiteLevel 1, 0 XP · dein Fortschritt
Challenge 11 · Finde den Fehler · PRO (braucht Pro)

Logik für Haupt- und Reservepumpe: Experten-Challenge

Umschaltung, Trennen vor Schließen und eine gescheiterte Wiederherstellung, alles zusammen.

Repariere eine Steuerung für zwei Pumpen, ohne überlappende Befehle oder automatischen Neustart zuzulassen. State, DutyPump, StandbyPump und Alarm müssen jede Betriebsregel einhalten.

Diese Challenge gehört zu ProErstelle ein kostenloses Konto: Jedes Konto bekommt bis 5. Dezember eine kostenlose Pro-Testphase.

Ohne Karte. Nichts zu zahlen. Nichts zu kündigen.

Official release: 5 December. Steh an dem Tag ganz oben in der Bestenliste und gewinn 3 Monate Pro, plus 2 Wochen Pro zum Verschenken an einen Freund. Platz 2 gewinnt 4 Wochen. Platz 3 gewinnt 2 Wochen. Regeln

  • Jede Lektion, ab null
  • Jede Mission und Lektion, mit jedem Level
  • Ein praktischer Test für jeden Titel, mit Zertifikat
  • Jeden Test zurückspulen, Zyklus für Zyklus
  • Musterlösungen, wenn du feststeckst
  • Der Code-Konverter, so oft du willst
Die 3D-Pumpenstation, auf der diese Challenge läuftPRO (braucht Pro) Challenge
So läuft der Test ab

Stop während der Übergabe bricht den anstehenden Neustart ab

Test 1 von 10
Vom Test gesetztVom Test geprüftSchritt 11 von 11 · 680 ms
Level
Schwer · 40 Punkte
Art
Finde den Fehler
Zeit
Über uns 35 Min.
Bestehensquote
Neu
Maschine
3D-Pumpenstation
Siemens
SCL
Rockwell
Strukturierter Text
Beckhoff
Strukturierter Text
Bericht des Bedieners · Pumpenstation
Der Hauptmotor hat ausgelöst. Die Reserve hat sofort übernommen. Als die Spannung zurückkam, lief der Hauptmotor wieder an, ohne dass jemand eine Taste gedrückt hat.
Gefordertes Verhalten

Die Reserve, die immer wieder den Betrieb übernimmt: was dein Code tun muss

Der Entwurf hat drei Fehler, die zusammenwirken. Ein Bediener meldet, dass der wieder fehlerfreie Motor manchmal den Lauf zurückholt und ein gehaltener Start nach verlorener Freigabe neu starten kann. Beweise beide Richtungen der Übergabe, nicht nur einen guten Lauf.

Ruhe / Auswahl
State 0 setzt beide Pumpen auf OFF. Ein neuer Start mit Permit und ohne Stop/Alarm wählt die bevorzugte fehlerfreie Pumpe, anfangs die Hauptpumpe. State 10 = DutyPump, 20 = StandbyPump. Nimm die andere, wenn der bevorzugte Motor gestört ist.
Wechsel
Ein fehlerfreier Lauf, der mit Stop endet, lässt NextStandby für den nächsten Lauf den anderen Motor wählen. Verlust von Permit und ein fehlgeschlagener Lauf ändern das nicht. FailedRun speichert, dass eine Umschaltung schon verbraucht ist.
Übergabe
Fault ist die Auslösung des Hauptmotors; StandbyFault löst die Reserve aus. Beim ersten Fehler des aktiven Motors gehe in State 30, mit beiden Befehlen auf OFF. PendingStandby merkt sich den gewählten Ersatz. Rufe Delay in 30 auf: Die Zeit beginnt beim ersten Aufruf bei null, und die Übergabe erfolgt bei 400 ms. Ein Zyklus früher oder später wird akzeptiert, weil die Position des Delay-Aufrufs ihn um einen Zyklus verschiebt. Wird der alte Motor wieder fehlerfrei, darf sich die Auswahl nicht ändern.
Lockout
Fällt der gewählte Ersatz während der Verzögerung aus, oder fällt der laufende Ersatz danach aus, gehe in 0 und speichere Alarm. Versuche keinen dritten Motorstart. Reset löscht Alarm nur im Ruhezustand, wenn beide Motorfehler weg sind und Start losgelassen ist. Reset startet nie einen Motor.
Priorität
Stop oder verlorene Permit nehmen beide Befehle sofort weg, auch während der Übergabe. Kehrt Permit zurück, während Start noch gehalten wird, darf nichts anlaufen. Lass Start los und drück es erneut. Bei einem fehlerfreien Start oder einer abgeschlossenen Übergabe dürfen die Befehle für einen Zyklus dem alten oder neuen State folgen, danach müssen sie zum gewählten State passen. Überlappung ist nicht erlaubt.

Klicke auf SPS starten, dann drücke Start und lass es los. Setze Fault auf TRUE und sieh zu, wie beide Wellen stehen bleiben, bevor die Reserve anläuft. Lösche Fault: Die Reserve muss den Lauf behalten. Löse danach StandbyFault aus und spule den Fehler zurück, wenn sie ständig hin und her schaltet.

Variablentabelle

Die Reserve, die immer wieder den Betrieb übernimmt: Eingänge und Ausgänge

Dein Programm liest 6 Eingänge und setzt 3 Ausgänge. Die Namen sind im Editor jedes Herstellers gleich.

VariableDatentypDein CodeWas es an der Maschine bedeutet
StartBOOLLiestEin Eingang, den dein Code brauchtStarttaster
StopBOOLLiestEin Eingang, den dein Code brauchtStopptaster
ResetBOOLLiestEin Eingang, den dein Code brauchtReset-Taster
FaultBOOLLiestEin Eingang, den dein Code brauchtStörungssignal aus der Anlage
PermitBOOLLiestEin Eingang, den dein Code brauchtLaufzulassung: ON, solange der Lauf sicher ist
StandbyFaultBOOLLiestEin Eingang, den dein Code brauchtDer Reservemotor hat ausgelöst
AlarmBOOLSchreibtEin Ausgang, den dein Code setztVerriegelungsalarm
DutyPumpBOOLSchreibtEin Ausgang, den dein Code setztBefehl Hauptpumpe
StandbyPumpBOOLSchreibtEin Ausgang, den dein Code setztBefehl Reservepumpe

In Siemens SCL schreibst du die eigenen Variablen eines Bausteins mit # davor, wie TIA Portal es tut: #Start. Rockwell und TwinCAT verwende einfach den Namen: Start.

Automatische Prüfungen

Was die Prüfungen testen

  1. Start ist eine Anforderung auf steigende Flanke, keine dauerhafte Freigabe.
  2. Kein Zyklus steuert beide Pumpen an; die Übergabe wartet 400 ms.
  3. Ein fehlgeschlagener Lauf bekommt eine Umschaltung; ein zweiter Ausfall speichert Alarm.

Die Prüfungen führen 10 Tests an der Maschine aus, Zyklus für Zyklus: Stop während der Übergabe bricht den anstehenden Neustart ab; Die gewählte Reserve löst aus, bevor ihr Timer abgelaufen ist; Ist der bevorzugte Motor nicht verfügbar, läuft die fehlerfreie Reserve; Nur nach einem fehlerfreien Stop wechseln; 400 ms Pause vor dem Zuschalten; die Wiederherstellung darf den Betrieb nicht übernehmen; Eine zweite Auslösung sperrt, statt Motoren hinterherzujagen; Kehrt die Freigabe bei gehaltenem Start zurück, gibt es keinen Neustart; Stop gewinnt gegen gleichzeitigen Start und Übergabe; Eine ausgefallene Reserve bekommt keinen Befehl; Für einen Ausfall der Reserve gelten dieselben Übergaberegeln.

Vor Ort

Wo du das findest

In einem Wohnblock übernimmt die Ersatzpumpe, wenn der Hauptmotor auslöst und abschaltet. Sobald er wieder bereit ist, muss die Hauptpumpe auf den nächsten Lauf warten.

Wenn beide Pumpen ohne Vorwarnung starten, kann das die Versorgung überlasten. Immer wieder neu zu starten, kann einen Motor beschädigen und den Wohnblock ohne Wasser lassen.

Gelöst oder festgefahren? Besprich es in der Umkleide.

Mach weiter

Weitere Challenges