How to use this
Read a lesson, then open the Lab and load the matching example. Every lesson has a What, a Why and a How. When a lesson clicks, try its Challenge: the trainer runs your program against a test and tells you exactly where it went wrong.
Program
How to write a rung (cheat sheet)
// declarations (field devices) input Start pushbutton // momentary, normally open input Stop pushbutton nc // normally closed: reads 1 until pressed input Auto switch // stays where you put it analog Battery 0 100 75 % // slider: min max start unit // rungs: condition -> action[, action] (Start | Motor) & Stop -> Motor // | is OR (parallel), & is AND (series) !Auto -> ManualLamp // ! is a normally-closed contact (XIO) Battery < 50 -> SET Charger // compare: < <= > >= == != Battery >= 90 -> RST Charger // SET/RST = latch / unlatch Start -> TON T1 3s // on-delay timer: T1.DN, T1.TT, T1.ACC Run -> TOF T2 500ms // off-delay timer Box -> CTU C1 5 // counter: C1.DN, C1.ACC Reset -> RES C1 // reset a timer or counter true -> AlwaysOn
Field devices (click buttons, flip switches, drag sliders)
Outputs
Ladder view (green = power flowing, live while running)
Challenges
Pick one, read the job, edit the program, then press Check my program. You can also Open in Lab to play with it by hand.
Ohm's law and 4–20 mA
4–20 mA signal
UART frame
Type a character to see how it's sent on the wire (8N1: start bit, 8 data bits least-significant first, stop bit).
Modbus RTU request builder
Builds the exact bytes a client sends, including the CRC-16 checksum.
Modbus register decoder
Turn raw register values (as a driver or gateway shows them) into the real number, trying each data type and word order.
Quiz
Pick an answer to see why. Your best score is remembered on this computer.