Lokaler Fortschritt wird geladen…
PLC Gym
PLC Gym StartseiteLevel 1, 0 XP · dein Fortschritt
Mission 86 · PRO (braucht Pro)

Übung zu Ein Bild für die ganze Anlage: SPS- und SCADA-Schulung

Vier Stationen melden je einen Zustand, und die Übersicht sagt, welche dich braucht.

Gib der Leitwarte ein Bild über die ganze Fabrik. Schreib einen Zustand für jede der vier Stationen, den Grund, warum die Linie wartet, einen Zustand für die Anlage und einen Zähler für Linienstillstände. Dann entscheide, was einen Platz in der Übersicht verdient.

Diese Mission 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-Modellfabrik, auf der diese Mission läuftPRO (braucht Pro) Mission
So läuft der Test ab

Anlauf: erst warten, dann laufen

Test 1 von 4
Vom Test gesetztVom Test geprüftSchritt 13 von 13 · 31.5 s
Level
Fortgeschritten
Zeit
Über uns 40 Min.
Belohnung
+650 XP
Anlage
3D-Modellfabrik
Editoren: Siemens
Kontaktplan (KOP), SCL
Editoren: Rockwell
Kontaktplan, Strukturierter Text
Editoren: Beckhoff
Strukturierter Text
Stufe
43. SCADA 1: ein Bild für die ganze Anlage
Gefordertes Verhalten

Ein Bild für die ganze Anlage: was dein Code tun muss

Die Anlagensteuerung ist geschrieben und funktioniert. Eine SCADA-Übersicht liest von jeder Station ein paar Variablen, also meldet jede Station auf dieselbe Art: 0 Aus, 1 Läuft, 2 Wartet, 3 Fehler. UtilStatus: 3, solange CompressorFault an ist; sonst 0, außer Utilities ist an; 2, solange AirPressure oder SteamPressure unter 6,0 bar liegt; sonst 1. BatchStatus: 0, außer Run ist an; 2, solange Step 0 ist, wenn der Puffertank genug hat; sonst 1. LineStatus: 0, außer Run ist an; 1, solange LineRun an ist; sonst 2. LineReason sagt, warum die Linie wartet: 1 Luft niedrig (AirPressure unter 5,5 bar), sonst 2 Packungen gestaut (AccumFull ist an). Schreib 0, wann immer die Linie nicht wartet. PackStatus: 3, solange CellTrip an ist; sonst 1, solange Run an ist; sonst 0. PlantStatus zeigt die schlechteste Nachricht zuerst: 4 Not-Halt (State 30); sonst 3, wenn eine Station auf Fehler steht; sonst 2 Anlauf (State 10); sonst 1 läuft (State 20); sonst 0 gestoppt. LineStops zählt, wie oft die Linie warten musste: Addiere 1 jedes Mal, wenn LineStatus 2 wird. Wähle im Tab Bedienbild, was die Übersicht zeigt, wie sie einen Zustand ausdrückt, ob sie den Grund nennt und in welcher Reihenfolge die Stationen stehen.

Zustände
0 Aus, 1 Läuft, 2 Wartet, 3 Störung, gleich für alle vier.
Grund der Linie
1 Luft niedrig, 2 Packungen gestaut, 0 wartet nicht.
Anlage
4 Not-Halt, 3 Störung, 2 Anlauf, 1 läuft, 0 gestoppt.
Linienstillstände
Zähl 1 dazu, jedes Mal wenn LineStatus 2 wird.
Variablentabelle

Ein Bild für die ganze Anlage: Eingänge und Ausgänge

Dein Programm liest 18 Eingänge und setzt 23 Ausgänge. Ein weiterer Eingang steuert die Simulation oder zeigt einen Messwert, damit du testen kannst. Die Namen sind im Editor jedes Herstellers gleich.

VariableDatentypDein CodeWas es an der Maschine bedeutet
StartBOOLLiestEin Eingang, den dein Code brauchtDie Fabrik starten
StopBOOLLiestEin Eingang, den dein Code brauchtDie Fabrik an Ort und Stelle anhalten
ResetBOOLLiestEin Eingang, den dein Code brauchtReset nach einem Not-Halt oder einer Auslösung des Lichtvorhangs
EStopBOOLLiestEin Eingang, den dein Code brauchtNot-Halt gedrückt
CompressorFaultBOOLLiestEin Eingang, den dein Code brauchtProbier es aus: Der Kompressor fällt aus
AirPressureREALLiestEin Eingang, den dein Code brauchtDruck im Druckluftbehälter, bar
SteamPressureREALLiestEin Eingang, den dein Code brauchtDampfdruck im Kessel, bar
VesselLevelREALLiestEin Eingang, den dein Code brauchtFüllstand im Mischbehälter, %
VesselTempREALLiestEin Eingang, den dein Code brauchtChargentemperatur, °C
SugarAddedREALLiestEin Eingang, den dein Code brauchtZucker, den die Dosierwaage dieser Charge zugegeben hat, kg
BufferLevelREALLiestEin Eingang, den dein Code brauchtFüllstand im Puffertank des Füllers, %
BadBottleBOOLLiestEin Eingang, den dein Code brauchtKamera: Eine Flasche ohne Etikett fährt vorbei
GateEyeBOOLLiestEin Eingang, den dein Code brauchtEine Flasche steht vor der Ausschleuse
AccumFullBOOLLiestEin Eingang, den dein Code brauchtDrei Packs warten auf den Roboter
CurtainClearBOOLLiestEin Eingang, den dein Code brauchtStrahlen des Lichtvorhangs nicht unterbrochen
PalletFullBOOLLiestEin Eingang, den dein Code brauchtEine volle Palette wartet oder ist auf dem Weg zum Wickler
PalletOnWrapperBOOLLiestEin Eingang, den dein Code brauchtEine Palette steht auf dem Drehteller des Wicklers
WrapDoneBOOLLiestEin Eingang, den dein Code brauchtDie Palette auf dem Wickler ist gewickelt
PersonInCellBOOLNicht nötigZum Testen oder Beobachten; dein Code kann es weglassenProbier es aus: Jemand geht in die Roboterzelle
CompressorBOOLSchreibtEin Ausgang, den dein Code setztDen Kompressor laufen lassen
BoilerOnBOOLSchreibtEin Ausgang, den dein Code setztDen Kessel einschalten
WaterValveBOOLSchreibtEin Ausgang, den dein Code setztWasser in den Mischbehälter
FeederBOOLSchreibtEin Ausgang, den dein Code setztDie Zucker-Dosierwaage laufen lassen
AgitatorBOOLSchreibtEin Ausgang, den dein Code setztDas Rührwerk laufen lassen
SteamValveBOOLSchreibtEin Ausgang, den dein Code setztDampf in den Behältermantel
TransferPumpBOOLSchreibtEin Ausgang, den dein Code setztDie Charge in den Puffertank pumpen
LineRunBOOLSchreibtEin Ausgang, den dein Code setztDie Abfülllinie laufen lassen
RejectGateBOOLSchreibtEin Ausgang, den dein Code setztDie Ausschleuse auslösen
RobotEnableBOOLSchreibtEin Ausgang, den dein Code setztDen Roboter palettieren lassen
PalletOutBOOLSchreibtEin Ausgang, den dein Code setztDie volle Palette zum Wickler fahren
WrapBOOLSchreibtEin Ausgang, den dein Code setztDen Stretchwickler laufen lassen
AGVCallBOOLSchreibtEin Ausgang, den dein Code setztDas FTF rufen, um die gewickelte Palette abzuholen
GreenLampBOOLSchreibtEin Ausgang, den dein Code setztSignalsäule: Produktion
AmberLampBOOLSchreibtEin Ausgang, den dein Code setztSignalsäule: Start oder Warten
RedLampBOOLSchreibtEin Ausgang, den dein Code setztSignalsäule: Not-Halt oder Auslösung des Lichtvorhangs
UtilStatusINTSchreibtEin Ausgang, den dein Code setztÜbersicht: Versorgung, 0 Aus, 1 Läuft, 2 Wartet, 3 Störung
BatchStatusINTSchreibtEin Ausgang, den dein Code setztÜbersicht: Ansatz, 0 Aus, 1 Läuft, 2 Wartet, 3 Störung
LineStatusINTSchreibtEin Ausgang, den dein Code setztÜbersicht: Abfülllinie, 0 Aus, 1 Läuft, 2 Wartet, 3 Störung
LineReasonINTSchreibtEin Ausgang, den dein Code setztÜbersicht: warum die Linie wartet, 1 Luft niedrig, 2 Packungen gestaut
PackStatusINTSchreibtEin Ausgang, den dein Code setztÜbersicht: Verpackung, 0 Aus, 1 Läuft, 2 Wartet, 3 Störung
PlantStatusINTSchreibtEin Ausgang, den dein Code setztÜbersicht: 0 gestoppt, 1 läuft, 2 Anlauf, 3 Störung, 4 Not-Halt
LineStopsINTSchreibtEin Ausgang, den dein Code setztÜbersicht: wie oft die Linie warten musste

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 Tests

Ein Bild für die ganze Anlage: was die Tests prüfen

  1. Jede Station meldet 0 Aus, 1 Läuft, 2 Wartet oder 3 Störung, nach denselben Regeln wie im Auftrag.
  2. Eine wartende Linie nennt ihren Grund: 1 Luft niedrig, 2 Packungen gestaut und 0, wenn sie nicht wartet.
  3. PlantStatus stellt die schlimmste Nachricht nach vorne: Not-Halt, dann Störung, dann Anlauf, läuft, gestoppt.
  4. LineStops steigt jedes Mal um eins, wenn die Linie zu warten beginnt, egal wie lange das Warten dauert.
  5. Die Übersicht zeigt einen Zustand und eine Zahl für jede Station, in Worten, in Prozessreihenfolge, und sagt, warum eine Station wartet.
  1. Ausprobieren Nutze die Tasten unter dem Modell und sieh, wie die Anlage reagiert.
  2. Lösung testen Jede Prüfung läuft mit einem Druck auf deinem Code.
  3. Zurückspulen PRO (braucht Pro) Wenn eine fehlschlägt, geh sie Zyklus für Zyklus zurück, um zu sehen, warum.

Hängst du bei dieser Mission fest? Frag die Mitglieder in der Umkleide.

Warum es wichtig ist

Wo du das im Betrieb sehen würdest

Die Leitwarte einer Abfüllhalle hat eine Übersicht an der Wand. Versorgung, Ansatz, Linie und Verpackung erscheinen je als Block, grau, wenn alles in Ordnung ist.

Wenn die Linie steht, sind die teuren Minuten die, in denen man den Grund sucht. Eine Übersicht, die „wartet: Luft niedrig“ sagt, schickt den Schlosser zum Kompressor, nicht zur Linie.

Wo du das findestEine Steuerung für eine ganze Fabrik: wann jede Maschine laufen darf und was sie sicher hält

Eine kleine Getränkefabrik stellt ein Orangengetränk her. Zucker und Wasser werden dosiert und pasteurisiert und dann zu einem Füller gepumpt. Flaschen werden gefüllt, verschlossen, etikettiert und geprüft, in Sechserpacks verpackt, von einem Roboter auf Paletten gestapelt, gewickelt und von einem fahrerlosen Stapler zur Rampe gebracht. Jede Maschine hat ihre eigene Steuerung; die Anlagensteuerung entscheidet, wann jede laufen darf, übergibt die Arbeit von einer zur nächsten und stoppt alles sicher.

  1. BatchMischen und pasteurisieren
  2. FillFüllen, verschließen, etikettieren
  3. PrüfenSchlechte Flaschen ausschleusen
  4. VerpackenRoboter stapelt PacksDu bist hier
  5. VersendenWickeln, FTF zur Rampe
In einer echten Anlage: Orte, Teile und Sicherheit
  • Abfüllhallen für Erfrischungsgetränke und Säfte
  • Betriebe für Soßen, Molkereiprodukte und flüssige Lebensmittel
  • Flüssige Haushalts- und Körperpflegeprodukte

Ein Not-Halt ist über ein Sicherheitsrelais verdrahtet, das die Energie selbstständig abschaltet. Das Programm muss dann alles aus halten und auf ein bewusstes Reset und Start warten, damit sich nichts überraschend bewegt.

Roboterzellen sind umzäunt. Lichtvorhänge und verriegelte Türen stoppen den Roboter, wenn jemand hineingeht, und ein Wiederanlauf braucht ein Reset von außerhalb der Zelle, im Sinne von ISO 10218 und ISO 13849.

Die Größen, Zeiten und Schnittansichten sind didaktische Entscheidungen, keine Zeichnung einer bestimmten echten Anlage.

Mach weiter

Als Nächstes auf dem Weg