Motor Start/Stop & Fault Monitoring
Ready to build this?
Sign up free — no credit card required. This scenario is included in the free tier.
Sign up to play this scenario →Already have an account? Log in
Briefing
Build the command and diagnostic logic for a three-wire motor starter. A momentary START must latch the run command; STOP, E-stop status, and thermal-overload status must drop it. Fault indications stay latched until the cause is clear and the operator acknowledges with STOP. A 500 ms command/feedback mismatch check detects an auxiliary contact that remains on after the contactor command turns off. This is a training simulation of standard PLC logic, not a design for a safety-rated emergency-stop circuit.
Objectives
- Start button pulse energises the contactor and the motor seals in
- Stop button drops the contactor
- E-stop drops the contactor and latches a fault until reset
- Thermal overload drops the contactor and latches a fault until reset
- Auxiliary feedback remaining on while the contactor command is off latches a fault after 500 ms
- A reset acknowledges a cleared fault but never restarts the motor by itself
Hints
- Build in four checkpoints: feedback timer → fault latch/reset → run reset → outputs. Check after each checkpoint so a failure points to a smaller area.
- Use a TON with IN := MOTOR_AUX AND NOT MOTOR_CONTACTOR and PT := 500 ms. The 500 ms is this exercise’s diagnostic threshold, not a universal safety value.
- Latch FAULT_BIT on ESTOP, THERMAL_OL, or T_STUCK.Q. Clear it only when STOP_PB is pressed and every fault cause has cleared.
- Latch RUN_BIT from START_PB while no fault is active; reset it from STOP_PB, ESTOP, or THERMAL_OL. SET/RESET or a behaviorally equivalent seal-in is accepted.
- Drive MOTOR_CONTACTOR and RUN_LAMP from RUN_BIT AND NOT FAULT_BIT; drive FAULT_LAMP from FAULT_BIT.
I/O Table
Inputs
START_PBStart push-button (momentary)
BOOL · %I0.0
STOP_PBStop push-button (momentary)
BOOL · %I0.1
ESTOPEmergency stop (asserted when hit)
BOOL · %I0.2
THERMAL_OLThermal overload relay trip
BOOL · %I0.3
MOTOR_AUXContactor auxiliary feedback contact
BOOL · %I0.4
Outputs
MOTOR_CONTACTORMain motor contactor coil
BOOL · %Q0.0
RUN_LAMPMotor running indicator lamp
BOOL · %Q0.1
FAULT_LAMPFault indicator lamp
BOOL · %Q0.2
Your program will be tested against:
All test cases run automatically when you submit. Assertions are hidden until you pass.
- #1Start energises contactor, stop drops it
Press start -> contactor on; press stop -> contactor off
- #2Start pulse seals in via latch
Momentary start-pulse — contactor stays on after button release
- #3E-stop latches fault, clears only via stop-pb
E-stop drops contactor + raises fault; releasing E-stop does not clear; stop-pb clears
- #4Thermal overload latches fault, needs reset + stop-pb to clear
Thermal trip drops contactor + fault; clears only after thermal resets AND stop-pb pressed
- #5Stuck auxiliary feedback latches fault
MOTOR_AUX asserted while MOTOR_CONTACTOR is off for >500ms -> fault
Related scenarios
Ready to build this?
Sign up free — no credit card required. This scenario is included in the free tier.
Sign up to play this scenario →Already have an account? Log in