Objective. Students write and enter ladder logic rungs using normally-open contacts, normally-closed contacts, output coils, and branch (parallel) logic that correctly implement combinational Boolean control requirements.
This lesson, its worked examples and its practice questions has not yet been verified by a licensed engineer or certified journey-level tradesperson or by a certification or approval body. It is a study draft and may contain errors. Do not use it as instructions for work on a job site or on live equipment. Always follow your instructor, your supervising professional, and current official references and regulations.
VoTechWorks program approval and accreditation are still in progress. Credentials are issued only by the certifying bodies named in each program, after their own exams.
Ladder logic is the most widely used programming language for programmable logic controllers (PLCs) in industrial and marine manufacturing environments. Its name comes from its appearance: two vertical rails (like the sides of a ladder) connected by horizontal rungs. Each rung represents one logical control statement. Electricians and technicians adopted ladder logic quickly because it mirrors the relay-based hardwired control circuits they already understood.
PLCs replaced banks of physical relays starting in the late 1960s. Instead of rewiring panels to change machine behavior, technicians now edit software. The logic, however, remains the same: inputs are evaluated left to right, and if the rung's conditions are satisfied, the output at the right rail energizes.
Every ladder logic diagram has a left power rail and a right power rail. Think of the left rail as the hot leg of a control circuit and the right rail as the neutral. Current flows conceptually from left to right through each rung. In PLC software this is simulated — no actual current flows through program memory — but the analogy holds for reading and writing rungs.
A contact represents a condition being evaluated. There are two fundamental types.
Normally-Open (NO) contact — symbol: two vertical lines `| |`. This contact passes logic (is "true") when the bit it references is ON (logic 1). In a physical sense, think of a pushbutton that connects the circuit only while pressed. In ladder logic, tag `START_PB` with a NO contact passes current when the START pushbutton input bit is 1.
Normally-Closed (NC) contact — symbol: two vertical lines with a diagonal slash `|/|`. This contact passes logic when the bit it references is OFF (logic 0). Think of a relay contact that is closed at rest and opens when the coil energizes. Emergency-stop inputs are almost always wired as NC in both hardware and ladder logic because a broken wire or lost signal fails safe — the machine stops.
The word "normally" refers to the unactuated or de-energized state, not to what is most common during operation.
The output coil — symbol: parentheses `( )` — sits at the right end of a rung. When all contacts in the rung are true (the rung has continuity), the coil's bit is set to 1, energizing the real-world output or internal memory bit. When continuity is broken, the coil bit resets to 0. Output coils directly control motors, solenoid valves, indicator lights, and other field devices through the PLC's output terminals.
One important rule: do not duplicate output coils. Using the same output address on two separate rungs causes unpredictable behavior because the last rung scanned wins. Use internal (memory) bits and structured branching instead.
Placing contacts in series (one after another on the same rung) implements Boolean AND logic. All contacts must be true for the coil to energize. Example: a conveyor motor runs only when the START button is pressed AND the E-stop is not activated AND the safety guard is in place. Three contacts in series — one NO for START, one NC for E-stop, one NO for GUARD — all must pass for the motor output coil to energize.
A branch creates a parallel path around one or more contacts. If either path has continuity, the rung is true. This implements Boolean OR logic. Example: a warning light energizes when Fault A OR Fault B is active. Two NO contacts are placed in parallel branches; if either bit is 1, the coil energizes. Branches can be nested to build complex AND/OR combinations.
A PLC executes its program in a continuous scan cycle:
1. Input scan — reads all physical inputs into the input image table.
2. Program scan — evaluates every rung, top to bottom, using current image table values.
3. Output scan — writes output image table results to physical outputs.
This cycle repeats many times per second (typical scan times are single-digit milliseconds for small programs). Understanding the scan cycle explains why output coils reflect the state of inputs from the previous input scan, and why one scan's result can feed logic later in the same scan.
Lockout/Tagout (LOTO) before any wiring work. When connecting or disconnecting field devices to the PLC trainer, follow your facility's LOTO procedure — de-energize, isolate, lock, tag, and verify zero energy before touching terminals.
Do not bypass or delete E-stop logic in software. E-stop contacts must be hardwired in series with the output power circuit in addition to appearing in ladder logic. Software alone is not a safety-rated stop.
Confirm the PLC is in PROGRAM mode before downloading. Downloading to a PLC in RUN mode can cause unintended output changes. Always switch to PROGRAM mode, download, verify, then switch to RUN under a controlled condition with other technicians clear of moving parts.
PPE: Safety glasses are required in the lab at all times. Follow your instructor's posted PPE requirements for the training area.
Read left to right: identify each contact, note NO or NC, trace any parallel branches, then read the coil address. Ask: "What real-world device or memory bit must be ON or OFF for this output to energize?" Writing this plain-English statement beside each rung is good documentation practice and is expected on NCCER controls assessments.
Answer each question, then check it. Nothing is recorded; this is your own practice.
A free tech program — complimentary, as our commitment to get America working. Help us build VoTechWorks. Tell us what works, what doesn’t, and what you want to learn.