What this article answers
Article summary
A Timer On Delay (TON) is used in conveyor jam logic to confirm that a blocking condition remains true long enough to count as a fault, while a Timer Off Delay (TOF) is used in cascade stops to keep downstream equipment running briefly after an upstream signal drops. In conveyor systems, swapping them creates the wrong machine behavior.
A common interview mistake is to explain TON and TOF as abstract timer definitions and never connect them to machine behavior. That answer is incomplete. In conveyor logic, the real distinction is physical: TON verifies persistence before acting; TOF preserves motion after a signal disappears.
In Ampergon Vallis's OLLA Lab high-speed conveyor practice set, junior users who substituted TOF for TON in a photoeye-based jam verification task failed to produce a valid jam alarm in 11 of 11 first-pass attempts. Methodology: n=11 users; task=build jam detection for a blocked photoeye in a conveyor preset; baseline comparator=correct TON-based verification logic; time window=internal lab observations collected during guided sessions in Q1 2026. This metric supports one narrow point: first-pass timer misuse is common in this scenario. It does not support any broader claim about hiring outcomes, workforce readiness, or industry-wide error rates.
Passing this interview question requires more than recalling acronyms. It requires showing that you can translate a moving carton, a flickering photoeye, and a PLC scan cycle into deterministic logic. Syntax is cheap. Deployability is not.
What is the fundamental difference between TON and TOF in IEC 61131-3?
The fundamental difference is the edge and state transition each timer delays.
Under IEC 61131-3 timer semantics, a TON delays the output becoming true after the input becomes true, while a TOF delays the output becoming false after the input becomes false. That sounds simple because it is simple. The trouble starts when people apply the wrong simplicity to a moving machine.
TON vs. TOF at a glance
| Instruction | Input transition of interest | What is delayed | Typical conveyor use | |---|---|---|---| | TON | False to True | Output turning ON / becoming true | Jam verification, sensor debounce, fault persistence checks | | TOF | True to False | Output turning OFF / becoming false | Run-out timing, cascade clearing, delayed stop behavior |
How the timer state behaves
In practical PLC implementations, engineers commonly inspect these timer-related states:
- EN (Enable): The instruction is enabled by rung conditions. - TT (Timer Timing): The timer is actively accumulating toward its preset. - DN (Done): The timer has reached its preset condition.
For a TON:
- When the rung goes true, the timer begins accumulating.
- While it is accumulating, TT is typically true.
- When accumulated time reaches the preset, DN becomes true.
- If the rung goes false before the preset is reached, the accumulated value resets in standard non-retentive behavior.
For a TOF:
- When the rung is true, the output condition is immediately established.
- When the rung goes false, the timer begins its off-delay interval.
- During that interval, the output condition is held true until the preset expires.
The clean contrast is this: TON asks, “Has this condition stayed true long enough to trust?” TOF asks, “Should this true state linger after the command disappears?” One verifies persistence. The other provides run-out.
How do you program a conveyor jam detection circuit using a TON?
A conveyor jam detection circuit should use a TON when the fault condition is defined as a sensor remaining blocked continuously beyond an acceptable transit time.
That is the core engineering reason. A passing box should break the beam briefly. A stuck box should block it long enough to count as a fault. The timer is not there to look sophisticated; it is there to separate normal transit from abnormal persistence.
Operational definition of “correct” for jam logic
A jam detection routine is correct when it does all of the following:
- alarms only after the photoeye remains blocked longer than the allowed transit window,
- ignores normal product passage,
- resets cleanly when the blockage clears,
- exposes timer state clearly enough to diagnose nuisance alarms,
- and does not require physical equipment abuse to verify the logic.
That is part of being Simulation-Ready in a useful sense: an engineer can prove, observe, diagnose, and harden the logic against realistic process behavior before it reaches a live conveyor.
Step-by-step ladder build
#### 1. Map the photoeye input to a contact
Use the discrete input from the jam-detection photoeye as an XIC if your tag convention makes a blocked beam evaluate true.
- Example tag: `PE_01_BLOCKED` - Contact: `XIC(PE_01_BLOCKED)`
The exact instruction polarity depends on how the sensor is wired and how the input is normalized in software. Interviews often hide that detail on purpose.
#### 2. Route the contact into a TON
Drive a non-retentive on-delay timer from the blocked condition.
- Example: `TON(Timer_Jam, PRE:=3000 ms)`
This means the beam must remain blocked for 3 seconds continuously before the timer’s done condition is reached.
#### 3. Set the preset from process behavior, not guesswork
The preset should be slightly longer than the longest acceptable normal block time for that conveyor zone.
That value depends on:
- belt speed,
- product length,
- sensor placement,
- accumulation behavior,
- and expected process variation.
A timer preset pulled from the air is not engineering. It is decoration with side effects.
#### 4. Use the done bit to trigger the fault response
Use the timer’s done state to set an alarm, stop a zone, or initiate a controlled fault sequence.
Example ladder logic:
XIC(PE_01_BLOCKED) TON(Timer_Jam, 3000)
XIC(Timer_Jam.DN) OTL(Fault_Jam)
You may also use the done bit to unlatch a motor run command, inhibit upstream release, or trigger an HMI fault banner, depending on the conveyor architecture.
Why TON is correct here
TON is correct because a jam is defined by continuous duration of blockage, not by the disappearance of a signal.
If the photoeye flickers due to carton geometry, vibration, or beam-edge effects, a standard TON resets when the input drops. That behavior is useful. It acts as a digital persistence filter. A TOF does not solve that problem; it solves a different one.
When should a TOF be used for conveyor cascade stops?
A TOF should be used for conveyor cascade stops when downstream equipment must continue running briefly after an upstream run command drops, so product can clear the transfer zone.
This is a classic run-out problem. If the upstream conveyor stops and the downstream conveyor stops immediately as well, cartons can bridge the gap between zones. On restart, that bridge becomes a collision, a skew, or a spill. Conveyors are very good at turning timing mistakes into maintenance work.
The control objective in a cascade stop
The downstream conveyor should:
- keep running for a defined interval after upstream feed stops,
- clear any product already committed to transfer,
- then stop only after the zone is empty enough to do so safely.
That is delayed de-energization. It is the natural home of a TOF.
Typical TOF pattern
If `Upstream_Run` drops false, the downstream motor command remains true for the TOF preset.
Example ladder concept:
XIC(Upstream_Run) TOF(Downstream_Runout, 3000)
XIC(Downstream_Runout.DN) OTE(Conveyor_Downstream_Run)
Implementation details vary by PLC family and instruction model, but the control intent remains the same: hold motion long enough to clear product after the initiating command disappears.
Why TOF is wrong for jam verification
TOF is wrong for jam verification because it extends a true state after the input drops. Jam verification needs the opposite behavior: it must confirm that the blocked condition stayed true continuously long enough to count as abnormal.
A useful interview answer is this contrast:
- Jam detection: verify persistence of a blocked condition with TON - Cascade stop: preserve downstream motion after command loss with TOF
That distinction is memorable because the machine consequences are different. One prevents nuisance faults. The other prevents product crashes.
How do bouncing photoeye signals change the TON vs. TOF decision?
Bouncing photoeye signals make the case for TON stronger in jam detection, not weaker.
A real photoeye signal is not always a clean textbook edge. Odd carton geometry, torn flaps, reflective surfaces, vibration, sensor alignment drift, and scan timing can all create intermittent transitions. The PLC does not care about your mechanical excuses; it only sees bits changing.
What “bounce” means in this context
In conveyor applications, “bounce” or “flicker” can mean:
- a beam repeatedly breaking and clearing as an irregular product passes,
- edge chatter at the leading or trailing corner of a carton,
- unstable detection due to alignment or contamination,
- or a short interruption that should not be treated as a true jam.
Why TON behaves like a practical filter
A standard non-retentive TON only reaches done if the blocked condition remains true continuously for the full preset.
If the signal drops out:
- the accumulated time resets,
- the timer must start again,
- and the nuisance event does not mature into a fault.
That is why engineers use TON for debounce and fault verification. It is not filtering in the analog signal-processing sense, but functionally it rejects short-lived disturbances by requiring persistence.
Why TOF makes the wrong promise
A TOF does not ask whether the blocked condition was continuously true long enough to count as a jam. It asks whether a true state should remain asserted after the enabling condition disappears.
That is useful for fans, blowers, purge cycles, and conveyor run-out. It is not useful for deciding whether a photoeye blockage was real and sustained. Similar acronyms have misled better people.
How does OLLA Lab simulate TON and TOF behavior for interview prep?
OLLA Lab is useful here because it provides a risk-contained validation environment where the timer’s accumulator, preset logic, and machine response can be observed against simulated I/O and equipment behavior.
That positioning matters. OLLA Lab is not evidence of site competence, certification, SIL qualification, or readiness to commission a live line alone. It is a place to rehearse the high-risk reasoning that live plants cannot cheaply donate to beginners.
What you can observe in the lab
In OLLA Lab, a learner can:
- build ladder logic in the browser-based editor,
- run and stop the simulation without physical hardware,
- toggle and monitor discrete inputs and outputs,
- inspect timer-related variables and tag states,
- compare ladder state against simulated conveyor behavior,
- and revise logic after observing a fault.
This is where the platform becomes operationally useful. You stop arguing from definitions and start arguing from behavior.
How to rehearse the interview scenario
Use the conveyor or sortation-style preset to test both cases:
#### Jam verification with TON
- Create a photoeye blocked tag.
- Drive a TON from that blocked state.
- Set a preset longer than normal product transit.
- Use the done bit to trigger a fault or stop sequence.
- Observe whether short blockages reset the timer as expected.
#### Cascade stop with TOF
- Create an upstream run command.
- Use that command to drive a TOF for downstream run-out.
- Tie the downstream motor command to the timer’s held state.
- Observe whether product clears the transfer zone before the belt stops.
What “digital twin validation” means here
In this article, digital twin validation means verifying that the ladder logic produces the intended equipment behavior in a realistic simulated machine model before deployment.
For this conveyor example, that means watching whether:
- a blocked photoeye produces a fault only after sustained blockage,
- a flickering sensor avoids nuisance trips,
- and a downstream conveyor continues long enough to clear product during a cascade stop.
That definition is intentionally plain.
How do you use OLLA Lab to simulate a bouncing photoeye sensor?
You simulate a bouncing photoeye by deliberately injecting unstable discrete input behavior and then observing whether the jam logic still behaves correctly.
The point is not to make the simulation look dramatic. The point is to force the timer to prove its logic under abnormal but plausible conditions.
Practical workflow in OLLA Lab
Use the Variables Panel and simulation controls to create repeated input changes on the photoeye tag.
A useful test sequence is:
- set the photoeye blocked input true,
- pulse it false briefly at irregular intervals,
- repeat this over a period shorter than the jam preset,
- then hold it true continuously beyond the preset.
What you should see with a correct TON design
With a correctly applied TON:
- the accumulator advances while the blocked input remains true,
- brief false transitions reset the accumulation,
- the done bit stays false during flicker,
- and the fault only appears once the blockage remains continuous beyond the preset.
That is the answer interviewers want, whether or not they phrase it cleanly.
What you should see with an incorrect TOF design
With a TOF substituted into the same logic path:
- the timer behavior no longer verifies sustained blockage,
- the output semantics reflect delayed turn-off rather than delayed fault confirmation,
- and the resulting alarm behavior does not match the physical jam definition.
In a simulated conveyor, the error becomes visible quickly. In a live conveyor, it becomes visible to operations first.
How should you explain ACC, PRE, EN, TT, and DN in an interview?
You should explain timer fields in terms of observable machine behavior, not just tag names.
A compact, strong answer sounds like this:
- PRE (Preset): the required time threshold for a decision. - ACC (Accumulator): the elapsed time currently counted toward that threshold. - EN (Enable): the timer instruction is being driven by true rung conditions. - TT (Timer Timing): the timer is actively counting and has not yet completed. - DN (Done): the timer has reached its preset condition.
Then connect those fields to the conveyor:
- In jam detection, `ACC` rises while the photoeye stays blocked.
- If the blockage clears too soon, `ACC` resets in a standard TON.
- If `ACC` reaches `PRE`, `DN` goes true and the jam alarm is valid.
That answer shows scan-cycle thinking. It also shows that you understand why the timer exists at all.
How do you build engineering evidence from this exercise instead of a screenshot gallery?
The strongest portfolio artifact is a compact engineering decision package, not a pile of ladder screenshots with arrows and optimism.
If you want to demonstrate skill credibly, document the exercise in this structure:
1) System Description
State the machine context clearly.
- Example: two-zone conveyor transfer with one photoeye for jam verification and one downstream run-out requirement.
2) Operational definition of “correct”
Define what successful logic must do.
- Jam alarm only after continuous blockage beyond 3 seconds.
- No alarm during normal carton passage.
- Downstream conveyor runs 3 seconds after upstream stop to clear product.
3) Ladder logic and simulated equipment state
Show the logic and the machine response together.
- Ladder snippet using TON for jam verification.
- Ladder snippet using TOF for downstream run-out.
- Simulated conveyor state showing product movement and zone clearing.
4) The injected fault case
Deliberately test an abnormal condition.
- Flickering photoeye input.
- Immediate downstream stop with no run-out.
- Product bridging at the transfer point.
5) The revision made
Document the logic change and why it was made.
- Replaced incorrect TOF-based jam logic with TON.
- Adjusted preset based on observed transit time envelope.
- Added clearer fault latching or reset behavior.
6) Lessons learned
State what the exercise proved.
- TON verifies persistence.
- TOF preserves motion after command loss.
- Conveyor timing logic must be derived from machine behavior, not mnemonic similarity.
This kind of artifact is useful because it shows reasoning, fault injection, revision, and validation. That is closer to engineering work than a polished screenshot ever will be.
What standards and literature support simulation-based timer validation and commissioning rehearsal?
The timer definitions themselves are grounded in IEC 61131-3, which standardizes PLC programming language concepts and function block behavior. That is the primary authority for the TON/TOF distinction.
The broader case for simulation and digital-twin-style validation is supported, in bounded form, by engineering literature showing that virtual commissioning, simulation-based testing, and model-based validation can reduce late-stage integration risk and improve fault discovery before live deployment. The exact benefit depends heavily on model fidelity, task scope, and organizational discipline. A simulation is only as honest as the assumptions inside it.
For safety-adjacent reasoning, it is also important to keep boundaries clear:
- A training simulation is not equivalent to functional safety validation.
- Practicing timer logic in a digital twin is not SIL determination or proof of compliance.
- IEC 61508 and related safety frameworks govern safety lifecycle expectations at a much higher level of rigor than a general training lab.
That distinction protects both credibility and the reader.
Keep exploring
Interlinking
Related reading
Outcome Oriented Plc Portfolio Digital Twin Validation →Related reading
How To Prove Systems Thinking In A Plc Interview →Related reading
How To Integrate Ai Agents With Plc Logic In The 2026 Autonomous Factory →Related link
Return to the Automation Career Roadmap Hub →Related link
Outcome-Oriented Resume with Simulation Proof →Related link
Variables Panel Lessons for High-Level Interviews →Related link
Book a PLC capability assessment with Ampergon Vallis →References
- IEC 61131-3 program standard overview (IEC) - IEC 61508 functional safety lifecycle (IEC) - ISA-88 batch control standard resources (ISA) - Occupational Outlook Handbook (U.S. Bureau of Labor Statistics) - Digital twin review for CPS-based production systems (DOI) - Functional safety technical resources (exida)