
📢 Fresh Content: PLC Troubleshooting Tips That Work Across Any Platform | Click to read on PLCBlog!
Learn by doing
Build real ladder logic in your browser and get it checked automatically. Each exercise teaches a pattern every controls engineer uses with live power flow, the full instruction set (edges, timers, counters, compares), and pass/fail tests. Your progress and programs save automatically.
The first circuit every controls engineer learns: a motor that starts on a button press, keeps running when the button is released, and stops on a stop button with stop always winning.
~10 min · 2 checks
A fill valve that opens on a button press and holds itself open until the tank-full sensor stops it. The seal-in coil is the building block behind almost every 'stays running until done' behavior.
~10 min · 1 check
A fault lamp that latches ON when any alarm condition occurs even briefly and only clears on Reset. And if the condition is still present when Reset is released, the fault comes right back.
~15 min · 2 checks
Latch and unlatch instructions (OTL / OTU) instead of a seal-in branch and the crucial detail of which one wins when both fire, decided purely by rung order.
~8 min · 2 checks
Two timers chained in a loop make a lamp blink the classic two-TON flasher used for warning beacons everywhere. Your first taste of timers driving each other.
~15 min · 1 check
A chattering sensor drives everyone crazy. Filter it: the Clean signal only changes after the raw input has been stable for 200 ms in either direction.
~15 min · 1 check
Field wiring gives you awkward signal polarities an NC-wired stop, a sensor that's TRUE when there's NO part. Map raw inputs to clean internal tags first, so the rest of the program reads like plain English.
~12 min · 1 check
A two-step batch cycle driven by step coils: press Start → FILL until the high level, then DRAIN until the low level, then done. This is how real machine sequences are structured one coil per step, with clean hand-offs.
~20 min · 1 check
Two mutually exclusive mode coils selected by momentary buttons the skeleton behind every Auto/Manual selector. Each mode seals itself in, and pressing the other button switches over cleanly.
~15 min · 1 check
The pattern real machines are built from: command a motion, seal it in while it runs, latch Done when the sensor confirms it, and latch a Fault if a watchdog timer expires first. One structure safe moves, detected failures.
~25 min · 2 checks
A heater's cooling fan must keep running for 3 seconds AFTER the heater stops the classic off-delay. One TOF timer does the whole job.
~12 min · 1 check
Count parts passing a sensor; after 4 parts the batch is done and a lamp turns on. A reset button starts the next batch. Counters count RUNG EDGES a part sitting on the sensor counts once, not forever.
~15 min · 1 check
One push button: press → lamp ON, press again → lamp OFF. Sounds trivial, defeats most beginners. The trick is a rising-edge contact plus a snapshot of the lamp's state taken BEFORE you change it.
~20 min · 1 check
A 3-second cycle should flash a warning during its FINAL second only. You can't do that with DN bits alone you compare the timer's accumulated value against a number.
~15 min · 1 check
Total ACCUMULATED run-time across any number of stop/starts must trigger a service lamp at 3 seconds. A normal TON forgets on every stop; the retentive RTO remembers until you RES it.
~18 min · 1 check
The real-world finale: a star-delta starter. Start in STAR to limit inrush, run a 2 s transition timer, switch to DELTA with the two contactors electrically interlocked so they can never be on together. Every element you've learned, in one machine.
~25 min · 2 checks
How to get the most out of these
Work in order each pattern builds on the last. Try to solve it before opening the hints, run your program and toggle the inputs to watch the power flow, then use Run checks to prove it behaves. When a check fails, that failure message is the lesson. New to the concepts first? Start with the learning path and the glossary.