Seven problems on reading and writing ladder against time — designing a ladder
from a target waveform, tracing a supplied program against an input signal, plotting
a Boolean function’s output, converting ladder to a simplified Boolean equation and
back, and diagnosing common faults like a missing seal-in or wrong-state Stop contact.
Waveform problems live or die on time-slicing — mark every transition on the time axis, evaluate the rung at each slice, and the output draws itself. The same discipline catches faults: a Stop contact wired NO will show up the instant you trace the very first scan.
Q1
Design a ladder to produce a required output waveform
Given an input waveform and a required output waveform, design a ladder program that
produces the required output from the input. Use a representative scenario to illustrate
the technique.
ShowHide worked solution
Sample scenario
Input I is a 1 Hz square wave (0.5 s ON, 0.5 s OFF). Required output Q goes high only on the rising edge of I and stays high for 200 ms each time.
The recipe for any pulse-shaping problem like this is: edge-trigger to start the output, a TON to measure the required pulse width, and an unlatch at the timer’s done bit.
Ladder program
Rung 1 — one-shot rising on I, latch Q:
|---[ OSR I ]----(L Q)----|
Rung 2 — measure 200 ms while Q is high:
|---[ Q ]----(TON T1, PRE = 200 ms)----|
Rung 3 — unlatch Q when timer expires:
|---[ T1.DN ]----(U Q)----|
Final AnswerEdge-trigger (OSR) sets a latch; a TON measures the required pulse width; on TON.DN the latch is unlatched. This pattern generalises to any pulse-shaping problem.
Q2
Trace a ladder against a supplied input waveform
For a given ladder program and a supplied input waveform, draw the corresponding output
waveform timing diagram.
ShowHide worked solution
Sample ladder
Ladder program
Rung 1 — Y latches on A while B is low; B breaks the seal:
|---[ A ]---[/B]----+----( Y )----|
| |
|---[ Y ]---[/B]----+ (seal-in, breakable by B)
Reading rule: Y goes high when (A AND ¬B); once high it seals through its own contact and stays high until B goes high. As soon as B drops back to zero, Y can re-latch on the next rising edge of A.
Final AnswerStep through each transition of the inputs, evaluate the rung, mark the output. The output of a latching rung remains high until its NC-break opens.
Q3
Plot output X for a 2- or 3-input logic function
On the timing diagram supplied for a digital circuit, plot the value of output X for a
logic function of two or three inputs.
ShowHide worked solution
Sample function
X = A · B′ + C
For each time interval on the diagram, read A, B and C at that instant and evaluate A·B′+C; mark X high if the function evaluates to 1.
Two contributions: a high segment of X whenever A is high and B is low (the A·B′ term), and an extra high segment wherever C is high regardless of A or B (the +C term).
Final AnswerEvaluate X at every time slice and plot. X = 1 wherever A is high and B is low, OR wherever C is high.
Q4
Push-button event-response ladder from waveform
Write a ladder program for a given input / output waveform in which a push-button is
the input and an event response is required from the system.
ShowHide worked solution
Sample scenario
Press the push-button PB once → motor M runs for exactly 8 seconds, then stops automatically. Subsequent presses of PB while M is running have no effect.
PB: ___|‾|_______|‾|_______
M: ___|‾‾‾‾‾‾‾‾|___________
<— 8 s —>
Ladder program
Rung 1 — start M on rising edge of PB, only when M is OFF:
|---[ OSR PB ]---[/M]----(L M)----|
Rung 2 — 8-second timer while M is ON:
|---[ M ]----(TON T1, PRE = 8 s)----|
Rung 3 — drop M when timer done, reset timer:
|---[ T1.DN ]----(U M)----|
|---[ T1.DN ]----(RES T1)----|
The /M condition on Rung 1 makes further PB presses inert while the motor is running.
Final AnswerEdge-trigger PB sets M; TON measures 8 s; on done, M is unlatched and the timer reset. Re-pressing PB while M is ON is ignored thanks to the /M interlock on the start rung.
Q5
Program-analysis: trace a supplied ladder step by step
For the ladder program supplied, answer the following parts (one clear answer per
part — crossed-out or rewritten answers will be marked wrong):
(a) Under what condition will output O/10 be ON?
(b) For Step 1, with I/1 = OFF, I/2 = OFF and I/3 = ON, determine the state of O/10.
(c) For Step 2, with I/1 = OFF, I/2 = OFF and I/3 = OFF (all transitioning to OFF),
determine the state of O/10.
The rung is TRUE when either the start path (I/1 = 1 AND I/2 = 0) is satisfied, or the seal path is alive (O/10 was previously ON AND I/3 = 1), in either case requiring I/2 to remain 0.
O/10 = (I/1 · ¬I/2) + (O/10 · I/3 · ¬I/2)
(b) Step 1: I/1 = OFF, I/2 = OFF, I/3 = ON
Start path: I/1 · ¬I/2 = 0 · 1 = 0. Seal path needs O/10 to be already ON, but on the first scan after power-on O/10 is 0. Therefore O/10 = 0.
Answer (b)O/10 = OFF
(c) Step 2: all inputs OFF
Same as before — start path is 0, seal path requires O/10 to be currently ON, which it isn’t. Therefore O/10 stays OFF.
Convert the supplied ladder logic into a Boolean equation. Simplify the equation using
Boolean algebra and then convert it back into the corresponding simplified ladder
diagram.
ShowHide worked solution
Sample ladder
Original ladder
|---[ A ]---[ B ]----+----[ C ]---+--------( Y )---|
| | |
|---[/A]---[ B ]-----+ |
| |
|----------------[ A ]------------+
Boolean equation
Y = ((A·B + A′·B) · C) + A
= (B·(A + A′) · C) + A [factor B]
= (B · 1 · C) + A
= B·C + A
Simplified ladder
Simplified ladder
|---[ A ]----+--------( Y )---|
| |
|---[ B ]---[ C ]----+
Final AnswerY = A + B·C. The original 4-contact pair of rungs reduces to a single rung with A in parallel with the series of B and C.
Q7
Diagnose, correct and write the equation for a faulty ladder
A PLC program is supplied. Identify the fault(s), correct the program, and write the
simplified Boolean equation corresponding to the corrected ladder.
ShowHide worked solution
Sample faulty ladder
Faulty ladder
|---[ START ]---[/M]----+---------( M )---|
| |
|---[ M ]---------------+
Faults:
· No Stop button in the rung — the motor cannot be stopped.
· The [/M] NC contact in series with START opens the moment M
energises, so the motor cannot even start.
Corrected ladder
Corrected ladder
|---[/STOP]---+----[ START ]----+--------( M )---|
| | |
| +----[ M ]--------+ (seal-in)
Simplified Boolean equation
M = (¬STOP) · (START + M)
Two corrections: add an NC STOP contact in series at the start of the rung; replace the wrong [/M] interlock with a parallel [M] seal-in. The result is the textbook 3-wire start–stop circuit.
Final AnswerAdd a /STOP contact in series; remove the [/M] interlock; use [M] in parallel with [START] as the seal-in. Equation: M = (¬STOP)·(START + M).