Each rung of a ladder diagram represents a single parallel circuit branch between two power rails, containing one complete logical operation. Think of it this way: the two vertical lines on the left and right sides of the diagram are the power supply (called “rails”), and each horizontal line stretching between them is a “rung,” just like the steps on a physical ladder. Every rung defines one independent path for current to flow from one rail to the other, with conditions on the left side and an output on the right.
How a Rung Maps to an Electrical Circuit
Ladder diagrams originated as a way to document relay-based control systems, and that electrical heritage shapes everything about how they work. The left vertical rail (labeled L1) represents the “hot” wire of the power supply, typically 120 volts AC. The right rail (L2) represents the neutral conductor. Each rung drawn horizontally between these rails is its own parallel circuit, completely independent of the rungs above and below it.
This means a ladder diagram with ten rungs represents ten separate circuit paths, all connected to the same power source. If one rung’s conditions aren’t met, current simply doesn’t flow through that rung, but every other rung continues operating normally. The visual layout makes it easy to trace the logic: start at the left rail, read across through the switches and conditions, and see whether power reaches the output device on the right.
What You’ll Find on a Rung
A rung contains two categories of elements: input conditions on the left and an output on the right. The input side uses contact symbols that represent real-world switches, sensors, or internal logic flags. The output side uses a coil symbol that drives a physical device like a motor, light, or solenoid, or sets an internal memory bit.
The two most common input symbols are the normally open (NO) contact and the normally closed (NC) contact. A normally open contact works the way you’d expect: when its associated condition is true, the contact closes and allows logic flow to pass through. A normally closed contact is the opposite. It allows flow by default and blocks it when its condition becomes true. This makes NC contacts useful for stop buttons and safety interlocks, where you want the system to react when something activates rather than when something is idle.
The output coil at the right end of the rung turns on when all the conditions to its left create a continuous path. If that path breaks at any point, the coil turns off. It’s a direct representation of how a physical relay coil energizes when current reaches it and de-energizes when the circuit opens.
Series and Parallel Contacts: AND and OR Logic
The way contacts are arranged on a rung determines the logical relationship between them. Two contacts placed in series (one after the other along the same horizontal line) create AND logic. Both conditions must be true for current to reach the output, because a break at either point stops the flow. This is identical to wiring two physical switches in series: both must be closed for the circuit to complete.
Contacts arranged in parallel (stacked vertically so current can take either path) create OR logic. If either condition is true, current finds a way through to the output. You’ll see this drawn as a branch that splits off the main rung, drops down to a second contact, and reconnects to the main path. Either route completing the circuit is enough to energize the output.
Combining series and parallel arrangements on a single rung lets you build surprisingly complex logic. A rung might require sensor A AND sensor B, OR just sensor C alone, to activate a motor. Reading these combinations becomes intuitive once you think of them as physical wiring paths rather than abstract logic gates.
How the PLC Reads Each Rung
In a programmable logic controller, rungs aren’t evaluated simultaneously. The PLC scans them in order from top to bottom, once per scan cycle. At the start of each cycle, the PLC reads all physical inputs and stores their values in memory. It then solves every rung of ladder logic using those stored values, working through rung 1, then rung 2, and so on. After all rungs are evaluated, it writes the results to the physical outputs.
This store-then-solve approach exists for a good reason. If the PLC checked live input values while it was partway through solving the logic, an input could change mid-scan and produce conflicting results between earlier and later rungs. By taking a snapshot of all inputs first, every rung in that cycle works from the same consistent set of data.
The top-to-bottom scan order also means that rung position matters. If rung 5 depends on an internal flag that rung 8 sets, the flag won’t be updated until after rung 8 runs. On the next scan cycle, rung 5 will see the updated value. For most applications this single-cycle delay is imperceptible, but understanding the scan sequence helps when troubleshooting timing-sensitive logic.
One Output per Rung vs. Multiple Outputs
The traditional best practice is one output per rung. This keeps each rung focused on a single logical decision, making the program easier to read and debug. When every rung controls exactly one device or flag, you can look at any output in the system and immediately find the one rung responsible for it.
Some PLC platforms do allow multiple outputs on a single rung, where the same set of input conditions drives several coils at once. This can make sense when the outputs are functionally related, like turning on a pump and its indicator light together. But there are situations where you should avoid it: when the outputs serve unrelated functions, when you need to diagnose each output independently, or when the outputs fall under different safety categories. Writing to the same output address in more than one rung is a particularly common mistake, since only the last rung scanned will determine the final state of that output, effectively overriding everything above it.
Ladder Diagrams as a Programming Standard
Ladder Diagram (LD) is one of four programming languages defined by the IEC 61131-3 standard, the international specification for industrial automation programming. Its roots trace back to American relay ladder logic, and it remains the most widely used graphical language for PLCs. The standard formally defines the syntax and symbols so that ladder logic written for one platform follows the same conventions as another, though individual PLC manufacturers still have minor differences in features like branch nesting limits and instruction sets.
The enduring popularity of ladder diagrams comes down to that direct visual connection to electrical circuits. Electricians and maintenance technicians can read a ladder diagram without formal programming training, because the symbols map to the switches, relays, and wiring they already understand. Each rung tells a self-contained story: here are the conditions, and here’s what happens when they’re met.