Section 12 · Practice Questions

Waveform Analysis, Tracing & Diagnostics

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.

7Questions
7Worked Solutions
All practice sections

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.

I: ___|‾‾‾‾‾|_____|‾‾‾‾‾|_____|‾‾‾‾‾|_____ Q: ___|‾‾|________|‾‾|________|‾‾|________ 200ms 200ms 200ms

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)

Sample input waveforms and resulting Y

A: ___|‾‾‾|____________|‾‾‾|_____ B: ___________|‾‾|_________________ Y: ___|‾‾‾‾‾‾‾|________|‾‾‾‾‾‾‾‾‾‾

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.

A: ____|‾‾‾‾‾‾‾‾‾‾‾‾‾‾|________________ B: ________|‾‾‾‾|_________|‾‾‾‾|____ C: ____________________|‾‾‾|____________ X: ____|‾‾‾‾|______|‾‾‾|‾‾‾|____________ A·¬B A·¬B C

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.

ShowHide worked solution

Assumed ladder (typical exam form)

Ladder program
|---[ I/1 ]---[/I/2]----+--------( O/10 )----|
|                       |
|---[ O/10 ]---[ I/3 ]--+   (seal-in via I/3)

(a) Condition for O/10 ON

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.

Answer (c)O/10 = OFF
Final Answer(a) O/10 = (I/1·¬I/2) + (O/10·I/3·¬I/2). (b) O/10 = OFF. (c) O/10 = OFF.
Q6

Convert ladder to Boolean, simplify, re-draw

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).