The complete ladder diagram symbol reference — contacts, coils, timers and counters — with mnemonics, IEC 61131-3 equivalents and plain-English meanings. Then practise every symbol live in your browser, no install or PLC licence needed.
Contacts are the conditions on the left of a rung. In series they form an AND; in parallel they form an OR.
Examine If Closed. Passes power when its bit is TRUE (1). The default "input" element — a Start button is usually an XIC.
Examine If Open. Passes power when its bit is FALSE (0). A Stop button is wired to an XIO so the rung breaks when pressed.
Coils sit on the right of a rung and drive a real output or an internal memory bit.
Output Energise. Follows the rung — TRUE while the rung is true, FALSE otherwise. The standard output instruction.
Output Latch (Set). Sets the bit TRUE and holds it even after the rung goes false. Pair with an unlatch on the same address.
Output Unlatch (Reset). Clears a latched bit back to FALSE. Always used as the partner to an OTL on the same address.
Timer blocks measure elapsed time. Allen-Bradley names them TON / TOF / RTO; IEC 61131-3 uses TON / TOF / TONR.
Starts timing when the rung goes TRUE; sets DN after the preset elapses. Resets to zero when the rung goes false.
DN is TRUE while energised; starts timing when the rung goes FALSE and holds DN for the preset after de-energising.
Accumulates run-time across multiple TRUE periods and keeps its value when the rung goes false. Cleared with a RES.
Counter blocks tally false-to-true transitions of their input rung against a preset value.
Increments the accumulator on each false-to-true transition of the rung; sets DN when the count reaches the preset.
Decrements the accumulator on each false-to-true transition. Often paired with a CTU for a bidirectional count.
Once you move past on/off logic, instruction blocks work on numbers. Compare blocks gate the rung; math and move blocks act at the end of the rung like a coil.
True when two source values are equal. Compare blocks sit in the power path and gate the rung like a contact. Siblings: LES, GRT, LEQ, GEQ, NEQ.
True when source A is greater than or equal to source B. Same family as LES, GRT, LEQ, NEQ — all gate the rung.
Stores A + B in a destination tag when the rung is true. SUB, MUL and DIV share the shape and act at the end of the rung like a coil.
Copies a source value into a destination tag — the workhorse for setting presets, clearing registers and shuffling data.
Edge-detection symbols fire for a single scan on a transition, instead of staying true for as long as a bit is held.
Passes power for a single scan on a rising (0→1) edge, then blocks until the input cycles low and high again. Triggers an action once per event.
Pulses TRUE for one scan on a 0→1 edge — the IEC rising-edge one-shot. Good for capturing a button press cleanly.
Pulses TRUE for one scan on a 1→0 edge — the falling-edge one-shot. Fires when a signal drops.
The drawn shapes are nearly universal — the names differ by dialect. Allen-Bradley uses three-letter mnemonics (XIC, XIO, OTE); IEC 61131-3 and Siemens lean on the drawn symbol itself. The key mappings: XIC = -[ ]- = normally-open, and XIO = -[/]- = normally-closed — no matter what the toolbar calls them. The drawn symbol never lies; only the label changes. Learn the mapping once and you stop being thrown when you switch platforms.
When you hit a symbol you don't recognise, work through it the same way every time:
If the name is unfamiliar, map it back to the drawn symbol — that is the one constant across every PLC.
Put the symbols together and you can read any rung. Here is the classic motor start/stop with a seal-in — power flows left to right.
|--[ Start ]--+--[/Stop ]--( Motor )--| | | |--[ Motor ]--+
Every symbol on one page. Press Ctrl/Cmd + P and choose Save as PDF to download it.
| Symbol | Mnemonic | Notation | Meaning |
|---|---|---|---|
| XIC | --| |-- | Examine If Closed. Passes power when its bit is TRUE (1). The default "input" element — a Start button is usually an XIC. | |
| XIO | --|/|-- | Examine If Open. Passes power when its bit is FALSE (0). A Stop button is wired to an XIO so the rung breaks when pressed. | |
| OTE | --( )-- | Output Energise. Follows the rung — TRUE while the rung is true, FALSE otherwise. The standard output instruction. | |
| OTL | --(S)-- | Output Latch (Set). Sets the bit TRUE and holds it even after the rung goes false. Pair with an unlatch on the same address. | |
| OTU | --(R)-- | Output Unlatch (Reset). Clears a latched bit back to FALSE. Always used as the partner to an OTL on the same address. | |
| TON | TON | Starts timing when the rung goes TRUE; sets DN after the preset elapses. Resets to zero when the rung goes false. | |
| TOF | TOF | DN is TRUE while energised; starts timing when the rung goes FALSE and holds DN for the preset after de-energising. | |
| RTO | TONR | Accumulates run-time across multiple TRUE periods and keeps its value when the rung goes false. Cleared with a RES. | |
| CTU | CTU | Increments the accumulator on each false-to-true transition of the rung; sets DN when the count reaches the preset. | |
| CTD | CTD | Decrements the accumulator on each false-to-true transition. Often paired with a CTU for a bidirectional count. | |
| EQU | EQ | True when two source values are equal. Compare blocks sit in the power path and gate the rung like a contact. Siblings: LES, GRT, LEQ, GEQ, NEQ. | |
| GEQ | GE | True when source A is greater than or equal to source B. Same family as LES, GRT, LEQ, NEQ — all gate the rung. | |
| ADD | ADD | Stores A + B in a destination tag when the rung is true. SUB, MUL and DIV share the shape and act at the end of the rung like a coil. | |
| MOV | MOVE | Copies a source value into a destination tag — the workhorse for setting presets, clearing registers and shuffling data. | |
| ONS | R_TRIG | Passes power for a single scan on a rising (0→1) edge, then blocks until the input cycles low and high again. Triggers an action once per event. | |
| P | R_TRIG | Pulses TRUE for one scan on a 0→1 edge — the IEC rising-edge one-shot. Good for capturing a button press cleanly. | |
| N | F_TRIG | Pulses TRUE for one scan on a 1→0 edge — the falling-edge one-shot. Fires when a signal drops. |
No install. No PLC licence. No credit card. Real contacts, coils, timers and counters with auto-graded feedback.
Create free account →