Level 1Related TP 1, TP 5Conveyor with start, stop and jam detection
A box travels from A to B. The conveyor runs on START, stops on STOP (NC) and at B, and flags a jam when the box takes too long.
Run it on: Factory I/O · CODESYS · DriveLab · PLC-200 — Scene From A to B (Set and Reset)
The program must- Self-holding start/stop with an NC stop
- Stop at the end sensor
- Jam timer with a fault lamp and reset
Fault-injection tests- Stop wire broken while running
- End sensor never switches
- Box held back by hand
Group size: Four: add a second conveyor started against the flow. Alone: skip the jam timer.
Level 1Related TP 2Tank level with hysteresis and dry-run protection
Keep a tank between a low and a high level with a fill valve and a drain; never run the pump dry.
Run it on: Factory I/O · CODESYS · OpenPLC Editor — Scene Level Control / Filling Tank (Timers)
The program must- Fill below low, stop above high (hysteresis)
- Pump allowed only above the dry-run level
- Overflow alarm
Fault-injection tests- High-level sensor stuck at 0
- Low-level sensor wire broken
- Drain left open
Group size: Four: two pumps with lead–lag alternation. Alone: one pump.
Level 1Related TP 5Counting boxes into batches
Count boxes on a conveyor, stop after a batch of N, wait for the operator, and start the next batch.
Run it on: Factory I/O · DriveLab · PLC-200 · CODESYS — Scene Queue of Items (Counters)
The program must- Up counter on the sensor's rising edge
- Batch size from a potentiometer or HMI
- Batch-complete lamp and restart
Fault-injection tests- Two boxes touching (one pulse)
- Sensor chattering
- Power cycle mid-batch
Group size: Four: reject line for boxes counted twice. Alone: fixed batch size.
Level 2Related TP 5Sorting by height with a shift register
Measure each box at the entry, remember it while the belt moves, and push it to the right lane.
Run it on: Factory I/O · ITS PLC · OpenPLC Editor — Scene Sorting by Height (Basic → Advanced)
The program must- Height classification at the entry
- Shift register clocked by belt pulses
- Pushers timed per lane
Fault-injection tests- Belt stops with boxes in the register
- Height sensor disconnected
- Lane full
Group size: Four: three classes and a reject lane. Alone: two classes.
Level 2Related TP 3Elevator with calls, doors and a safety chain
Serve floor calls in order, open doors only at a floor, and stop on any break of the safety chain.
Run it on: Factory I/O · AUTOMGEN + IRIS 3D · CODESYS — Scene Elevator (Basic → Advanced)
The program must- Call memory per floor
- Direction choice (OR divergence in the GRAFCET)
- Door open/close with a timeout
- Homing at power-up
Fault-injection tests- Door contact opened while moving
- Floor sensor missing
- Two calls pressed together
Group size: Four: floor display and inspection mode. Alone: two floors.
Level 2Related TP 4Pick & place cycle
Take a part from the input conveyor and place it on the output conveyor, with the gripper proven closed before moving.
Run it on: Factory I/O · ITS PLC · OpenPLC Editor — Scene Pick & Place (Basic)
The program must- Sequence down–grip–up–across–down–release
- Movement only with the gripper state proven
- Cycle stop at the end of a cycle
Fault-injection tests- Part dropped (gripper sensor lost)
- Stop in mid-move
- Output conveyor blocked
Group size: Four: the XYZ version with positions. Alone: the basic two-axis cell.
Level 3Related TP 6Palletizer: layers and pallets
Build pallets of several layers, turning boxes to make each layer, and change the pallet when it is full.
Run it on: Factory I/O · ITS PLC · CODESYS — Scene Palletizer
The program must- Layer pattern with counters
- Parallel branches: next layer prepared while the lift lowers
- Pallet exit and new pallet in
Fault-injection tests- Box missing in a layer
- Pallet sensor blocked
- Emergency stop mid-layer
Group size: Four: two patterns chosen by the operator. Alone: one pattern, two layers.
Level 3Related TP 4, TP 6Automated warehouse: store and retrieve
Store incoming boxes in free cells and bring back a requested one, keeping a table of occupied cells.
Run it on: Factory I/O · ITS PLC · CODESYS — Scene Automated Warehouse
The program must- Occupancy table in memory
- Positioning to a cell number
- Store and retrieve modes
Fault-injection tests- Warehouse full
- Request for an empty cell
- Stop during a transfer
Group size: Four: retrieval by product type. Alone: one row of cells.
Level 2Related TP 6Batch mixing from a recipe
Dose three ingredients by level or time, mix for a set time, drain, and refuse to start if the mixer is not proven running.
Run it on: ITS PLC · CODESYS · Factory I/O — Scene ITS PLC Batching
The program must- Recipe values from potentiometers or HMI
- Sequential dosing then mixing
- Proof of motion of the mixer
Fault-injection tests- Mixer feedback lost
- Valve stuck open
- Drain blocked
Group size: Four: recipes stored in memory. Alone: two ingredients.
Level 2Related TP 6Crossroads with pedestrian call
Run two traffic-light groups through a cycle with an all-red phase, a pedestrian call and a flashing amber on lamp fault.
Run it on: DriveLab · PLC-200 · CODESYS · OpenPLC Editor
The program must- Timed cycle as a GRAFCET
- All-red clearance between phases
- Pedestrian request served at the right moment
- Flashing mode
Fault-injection tests- Green lamp failure
- Button held down
- Two greens commanded at once (must be impossible)
Group size: Four: traffic-dependent green extension. Alone: without the pedestrian call.
Level 1Related TP 6Smart home: lighting and heating
Light rooms from presence and daylight, and keep a room temperature with a heater and a hysteresis.
Run it on: Home I/O · CODESYS
The program must- Presence-timed lighting
- Thermostat with hysteresis
- Night mode
Fault-injection tests- Temperature sensor out of range
- Window open while heating
- Presence sensor stuck
Group size: Four: alarm and blinds. Alone: one room.