Skip to content

Allen-Bradley Programming Fundamentals

How to Read
Ladder Logic

Master the fundamentals of ladder logic diagrams. Learn contact and coil instructions, rung structure, and how to trace power flow through Allen-Bradley ControlLogix and CompactLogix programs.

Instruction Reference
XICNormally Open
XIONormally Closed
OTEOutput Coil
OTLLatch
OTUUnlatch
TONTimer On Delay
CTUCount Up
MOVMove
Key Takeaways
  • Ladder logic reads left to right: input conditions on the left, output instruction on the right.
  • XIC (Examine If Closed) is true when a bit is 1 — the contact passes power. XIO (Examine If Open) is true when a bit is 0.
  • Each rung is one logical statement: if ALL series conditions are true, the output energizes.
  • plc.company explains every rung in plain English using AI — upload an ACD or L5X file to try it.

What Is Ladder Logic?

01

Derived from relay schematics

Ladder logic was designed to look like electrical relay diagrams, making it readable to electricians and technicians without programming experience. In our testing with real ACD files from ControlLogix and CompactLogix systems, these eight instruction types account for over 85% of rungs in typical industrial programs.

02

Rungs represent logic

Each horizontal line (rung) is one logical expression. The PLC scans each rung in order on every scan cycle — typically every 1–20ms.

03

Power rail metaphor

The left rail is always energized. If a rung's input conditions pass power to the right rail, the output instruction executes.

04

Tag-based addressing

Allen-Bradley ControlLogix and CompactLogix use named tags (e.g., Pump_1_Run) instead of memory addresses. SLC 500 uses address notation (e.g., B3:0/1).

Contacts and Coils Reference

Instruction
Symbol
Meaning
XIC (Examine If Closed)
—| |—
True when tag bit = 1 (input is ON)
XIO (Examine If Open)
—|/|—
True when tag bit = 0 (input is OFF)
OTE (Output Energize)
—( )—
Sets bit to 1 while rung is true
OTL (Output Latch)
—(L)—
Latches bit ON, stays ON until OTU
OTU (Output Unlatch)
—(U)—
Clears a latched bit
TON (Timer On Delay)
[TON]
Delays output by preset milliseconds
CTU (Count Up)
[CTU]
Increments accumulator each rung-true transition
EQU (Equal)
[EQU]
True when two values are equal

How to Read a Rung Step by Step

01

Find the power flow

Start from the left rail and identify each contact in sequence.

02

Evaluate conditions

Each XIC/XIO must be satisfied for power to continue right.

03

Identify the output

The rightmost instruction is what happens when the rung is true.

04

Check parallel branches

Multiple rungs wired in parallel create OR logic; both paths are evaluated independently.

Common Rung Patterns

01

Start-Stop Seal

A momentary START contact in series with a STOP contact, with the output OTE coil's own contact in parallel with START — creates a latching start/stop circuit.

02

Timer-Driven Outputs

TON timer with preset 5000ms; TON.DN (Done bit) drives the output after 5 seconds. Used for delays, dwell times, and alarm suppression.

03

Safety Interlock

Multiple XIC contacts in series — ALL must be true simultaneously before the output can energize. Common for guarded equipment.

04

Fault Detection

Comparator instructions (GRT, LES, NEQ) compare analog values to setpoints. When out of range, a fault bit sets and triggers an alarm output.

Troubleshooting With Ladder Logic

01

Online monitoring

When connected to a live controller, Studio 5000 highlights energized contacts green. You can trace exactly why an output is (or is not) energizing.

02

Cross-reference a tag

Right-click any tag in Studio 5000 to see every rung that reads or writes it. Without the software, plc.company provides the same cross-reference from an uploaded file.

03

Follow the fault bit

Most fault conditions set a BOOL tag. Search for where that tag is written (OTE or OTL) to find the rung that triggered it, then trace back to its input conditions.

Related Tools

Frequently Asked Questions

What is XIC in ladder logic?

XIC (Examine If Closed) is an input contact instruction that is true (passes power) when its referenced tag bit equals 1. In a physical relay sense, it behaves like a normally-open contact that closes when the referenced bit is set ON by the PLC or a physical input signal.

What is the difference between OTE, OTL, and OTU?

OTE (Output Energize) is a non-retentive coil — it sets the bit to 1 only while the rung remains true and resets to 0 when false. OTL (Latch) sets the bit to 1 and holds it even after the rung goes false. OTU (Unlatch) clears a latched bit. OTL and OTU are used in pairs for permanent state changes like motor run permissives.

How does ladder logic scanning work?

The PLC scans all rungs from top to bottom on every scan cycle. A typical ControlLogix scan cycle is 1–20ms depending on program size. After completing all rungs, output tags are written to physical I/O modules, then the scan restarts from the top.

What is the difference between ladder logic in ControlLogix vs SLC 500?

ControlLogix (Studio 5000) uses tag-based addressing with descriptive names like Conveyor_Motor_Run. SLC 500 (RSLogix 500) uses memory-address notation like O:1/5 for outputs and N7:0 for integer registers. The rung logic structure and contact/coil instructions are conceptually similar, but the addressing systems are fundamentally different.

Can I read ladder logic without Studio 5000?

Yes. Upload an ACD or L5X file to plc.company and browse all programs, routines, and rungs in your browser. The AI explanation feature translates each rung into plain English — useful for technicians who need to understand the logic without writing permissions or a software license.

Read Your Ladder Logic in the Browser

No Studio 5000 license required.