Fix 05 — Two rungs, one output
Ready to build this?
Sign up free — no credit card required. This scenario requires the Basic plan.
Sign up to play this scenario →Already have an account? Log in
Not ready for Basic? Try a free scenario like this →
Briefing
A cooling fan can be started by an operator (MANUAL_ON) or by the automatic cycle (AUTO_CALL). Either request runs the fan, and OVERHEAT stops it whichever one asked. Today the fan only ever obeys one of the two requests. Find out why, and fix it.
Objectives
- MANUAL_ON alone runs the fan
- AUTO_CALL alone runs the fan
- Both requests together run the fan
- OVERHEAT stops the fan, whichever request is on
Hints
- Switch MANUAL_ON on, then AUTO_CALL on, one at a time, and watch FAN. Does the fan follow both requests, or only one?
- The PLC solves the rungs in order, top to bottom, every scan. If two rungs both write the same output, only the last rung's result is left at the end of the scan.
- Both requests are reasons for the same fan to run. The fan's state has to come out of one place that already knows about both requests.
- Do not forget OVERHEAT: it must block the fan when either request is on, not just one of them.
I/O Table
Inputs
MANUAL_ONOperator fan switch (TRUE = on)
BOOL · %I0.0
AUTO_CALLAutomatic cycle fan request (TRUE = on)
BOOL · %I0.1
OVERHEATMotor overheat switch (TRUE = too hot)
BOOL · %I0.2
Outputs
FANCooling fan contactor
BOOL · %Q0.0
Your program will be tested against:
All test cases run automatically when you submit. Assertions are hidden until you pass.
- #1MANUAL_ON alone → fan on
The operator switch runs the fan
- #2AUTO_CALL alone → fan on
The automatic request runs the fan
- #3Both requests → fan on
Two requests never cancel each other
- #4OVERHEAT → fan off for either request
The overheat switch stops the fan whichever request is on
- #5No request → fan off
The fan only runs when asked
Related scenarios
Ready to build this?
Sign up free — no credit card required. This scenario requires the Basic plan.
Sign up to play this scenario →Already have an account? Log in
Not ready for Basic? Try a free scenario like this →