intermittent sensor fault

plc troubleshooting

sensor diagnostics

Intermittent Sensor Faults: How to Find Them

‌
Intermittent sensor fault troubleshooting diagram showing PLC, wiring, and signal dropout

The fault that clears itself before you get to the machine is the one that costs the most. An intermittent sensor fault can cause random machine stops, phantom alarms and rejected product for weeks before anyone isolates the root cause. And every time maintenance arrives, the signal is rock solid. This post covers how to systematically hunt down and permanently fix intermittent sensor faults in PLC-controlled machinery.

Why Intermittent Sensor Faults Are Different

A hard fault is actually easy. The input stays off, you swap the sensor, done. An intermittent fault only appears under a specific combination of conditions: machine vibration at full speed, cable flexing through a drag chain, a connector that is slightly loose, or a supply rail that sags when three outputs turn on simultaneously. Remove any one of those conditions and the fault hides completely.

The most common physical root causes, in rough order of how often I see them in the field, are: cable damage inside a drag chain, an intermittent crimp or ferrule at a terminal block, a loose M8/M12 connector body, vibration-induced contact bounce on a mechanical limit switch, inadequate shielding causing noise-induced false transitions, and a sensor that is thermally marginal and fails only when the cabinet or machine has been running for a couple of hours.

Step 1: Capture the Fault Before You Touch Anything

Your first job is evidence collection, not repair. The worst thing you can do is wiggle the cable, feel the signal come back, and declare it fixed. You have just masked the fault and guaranteed it comes back.

Use your PLC to log the event. In TIA Portal you can set up a data log or use the built-in trace function to record an I/O bit at the scan rate. In Studio 5000, the Logix Designer trend or a simple latch rung with a timestamp tag (using the GSV instruction to read WALLCLOCKTIME) gives you a permanent record of exactly when the bit flickered. In any CODESYS-based system, the logging library or a persistent variable array works well.

Set up a one-shot rising edge and a one-shot falling edge on the suspect input, each incrementing a DINT counter and latching a timestamp. Leave it running for a full production shift. The counter values alone will tell you whether the input flickered twice or two hundred times while the machine appeared to run normally.

Ladder Logic: Capturing an Intermittent Sensor Event

Sensor Dropout Counter and Latch (Studio 5000 / Logix). Ladder logic (3 rungs): Rung 0: examine if Sensor_A_Input is on (XIC), then examine if Sensor_A_FallEdge is on (XIC), then either CTU on Sensor_A_DropCount. Rung 1: examine if Sensor_A_FallEdge is on (XIC), then latch output Sensor_A_DropLatch (OTL). Rung 2: examine if Sensor_A_DropLatch is on (XIC), then examine if HMI_ResetDropLog is on (XIC), then unlatch output Sensor_A_DropLatch (OTU), then either RES on Sensor_A_DropCount. Rung 1: One-shot falling edge detects any dropout on Sensor_A_Input, then the CTU increments Sensor_A_DropCount. Rung 2: Latches Sensor_A_DropLatch on the first dropout so the HMI alarm persists even if the signal recovers. Rung 3: Operator reset from HMI clears both the latch and the counter. Tag Sensor_A_DropCount accumulating overnight without any machine alarms is hard evidence of an intermittent fault.

Sensor Dropout Counter and Latch (Studio 5000 / Logix)Ladder logic
Toggle inputs
Rung 0
Ladder logic rung: examine if Sensor_A_Input is on (XIC), then examine if Sensor_A_FallEdge is on (XIC), then either CTU on Sensor_A_DropCount examine if Sensor_A_Input is on (XIC), then examine if Sensor_A_FallEdge is on (XIC), then either CTU on Sensor_A_DropCount XIC Sensor_A_Input Sensor_A_Input Sensor_A_Input OSF Sensor_A_FallEdge Sensor_A_FallEdge Sensor_A_FallEdge OSF CTU Sensor_A_DropCount 32767 0 CTUCounterSensor_A_DropCountSensor_A_DropCountPreset3276732767Accum00
Rung 1
Ladder logic rung: examine if Sensor_A_FallEdge is on (XIC), then latch output Sensor_A_DropLatch (OTL) examine if Sensor_A_FallEdge is on (XIC), then latch output Sensor_A_DropLatch (OTL) XIC Sensor_A_FallEdge Sensor_A_FallEdge Sensor_A_FallEdge OTL Sensor_A_DropLatch Sensor_A_DropLatch Sensor_A_DropLatch L
Rung 2
Ladder logic rung: examine if Sensor_A_DropLatch is on (XIC), then examine if HMI_ResetDropLog is on (XIC), then unlatch output Sensor_A_DropLatch (OTU), then either RES on Sensor_A_DropCount examine if Sensor_A_DropLatch is on (XIC), then examine if HMI_ResetDropLog is on (XIC), then unlatch output Sensor_A_DropLatch (OTU), then either RES on Sensor_A_DropCount XIC Sensor_A_DropLatch Sensor_A_DropLatch Sensor_A_DropLatch XIC HMI_ResetDropLog HMI_ResetDropLog HMI_ResetDropLog OTU Sensor_A_DropLatch Sensor_A_DropLatch Sensor_A_DropLatch U RES Sensor_A_DropCount RESAccumulatorSensor_A_DropCountSensor_A_DropCount
energizedTip: click a contact in the diagram to flip its bit.
Rung 1: One-shot falling edge detects any dropout on Sensor_A_Input, then the CTU increments Sensor_A_DropCount. Rung 2: Latches Sensor_A_DropLatch on the first dropout so the HMI alarm persists even if the signal recovers. Rung 3: Operator reset from HMI clears both the latch and the counter. Tag Sensor_A_DropCount accumulating overnight without any machine alarms is hard evidence of an intermittent fault.

Step 2: Correlate the Fault With a Physical Condition

Once you have proof the signal is dropping, you need to know when. Look at the timestamps relative to the machine cycle. Ask yourself:

  • Does it only happen when a particular axis is at a certain position? (Cable at maximum extension in the drag chain.)
  • Does it happen on every Nth cycle? (Mechanical resonance or a cam that is slightly worn.)
  • Does it happen only after 45 to 90 minutes of runtime? (Thermal issue: sensor, cable insulation or a connector with marginal contact resistance.)
  • Does it correlate with a large motor or solenoid switching nearby? (Induced noise on an unshielded cable run.)
  • Does it happen in a specific ambient condition, like after the extraction fan kicks in and cools the cabinet? (Thermal cycling causing connector movement.)

These correlations narrow the physical location enormously. A fault that only appears when the X-axis is beyond 800 mm of travel is almost certainly a drag-chain cable fault, not a sensor body problem.

Step 3: Isolate the Fault to Cable, Connector or Sensor

Now you can start touching things, methodically. Work from the PLC back toward the field device.

Location to TestWhat to DoWhat You Are Looking For
Terminal block / I/O card inputMeasure DC voltage at the input terminal while the machine cycles. Use a meter with a MIN/MAX hold function.Any dip below the input threshold (typically 15 V DC for a 24 V input) during the fault window.
Field connector body (M8/M12)Wiggle the connector body with the machine stopped and the signal live. Watch the PLC online.Any flicker in the input bit. A loose connector body is often enough.
Cable along the drag chain or conduitClamp an alligator clip to the cable shield or outer jacket and flex the run by hand while watching the input.A flicker during flex confirms cable damage, usually at the entry or exit bend radius.
Sensor bodySubstitute a known-good sensor on the same cable. Run through the fault conditions.If the fault disappears, the sensor is the root cause. If it continues, the cable or wiring is at fault.
Power supply railLog 24 VDC supply voltage at the sensor's supply terminal during a fault event.A sag below 20 V DC (the lower end of most 3-wire sensor operating ranges) means supply is marginal.
Systematic isolation sequence for intermittent sensor faults, working from PLC to field device
Do not use a standard multimeter as your primary diagnostic tool for fast intermittent faults. A 50 ms dropout will not register on a meter that updates every 400 ms. Use a meter with MIN/MAX hold, a data logger, or the PLC's own input status at scan rate. An oscilloscope at the terminal is ideal if you can get one to the cabinet.

The Most Common Physical Culprit: Drag Chain Cable Damage

If your machine has a cable carrier (drag chain, energy chain, whatever the brand calls it), cable damage inside the chain is the single most common cause of intermittent sensor faults I have ever seen. The cable looks fine on the outside. The insulation is intact. But internally, one or more conductors have work-hardened and fractured. The break closes under compression and opens under tension, so the fault appears only at one end of the axis travel.

The fix requires using cable rated for continuous flex: look for a specification like 10 million flex cycles, stranded cores with a minimum of 30 wires per conductor, and a PUR outer jacket rather than PVC. Igus chainflex and Lapp Ölflex are the two catalogues I reach for most often. Routing matters too: the cable must be secured at both ends of the chain with the correct bend radius for the chain pitch. A cable flopping loose inside the chain will fail in months regardless of its specification.

Drag chain cable with internal conductor fracture causing intermittent sensor fault
Internal conductor fracture at the drag chain bend radius is the most common intermittent sensor fault cause on linear axes.

Noise-Induced False Transitions

Not every intermittent fault is a wiring break. If your dropout counter spikes every time a large contactor or VFD fires, you are looking at induced noise rather than a physical break. The fix is different: you need to address the cable routing and shielding.

  • Separate sensor cables from power cables by at least 100 mm. Cross them at 90 degrees if they must intersect.
  • Use shielded cable for sensors in noisy environments and terminate the shield at one end only (the panel end, grounded to the cabinet earth bar, not to the sensor body).
  • Check that the 24 VDC common (0 V) is solidly grounded at the panel. A floating common is an antenna. See the Control Panel Grounding post for the correct earthing topology.
  • Add an input filter in the PLC if the hardware supports it. Most Siemens ET200 modules let you set digital input filter time from 0.1 ms to 20 ms. A 3 ms filter will kill a noise spike without affecting any real sensor signal on a machine running at normal speed.

Sensor-Side Causes Worth Checking

The sensor body itself is sometimes the problem, but it is usually the last thing I suspect because sensors are solid-state and fairly reliable. When they do fail intermittently, the most common mechanisms are:

  • Thermal drift: An inductive proximity sensor with marginal switching distance will work fine cold but drop out when it heats up and the oscillator frequency shifts. Measure the switching distance cold and hot. If it changes by more than 10%, the sensor is failing.
  • Contamination on the sensing face: Swarf, coolant or paint buildup on an inductive or capacitive sensor face shifts the effective sensing distance. The sensor works until the target moves to the far edge of the sensing range. Clean the face and recheck.
  • Vibration-induced mechanical switch bounce: On a mechanical limit switch, worn contacts or a damaged roller arm can produce 5 to 20 ms of contact bounce on each actuation. The PLC scan may catch a false off-state during the bounce window. A solid-state replacement or a software debounce timer (a 20 ms TON before the input is accepted) solves it.
For 3-wire PNP and NPN sensors, also verify the wiring type matches the PLC input card type. A PNP sensor wired to a sinking-only input card can produce exactly the symptoms of an intermittent fault in some load conditions. If you are unsure about the wiring, the 3-Wire Sensor Wiring: PNP vs NPN post covers the correct connections for each combination.

Verifying the Fix

Do not declare victory until the dropout counter you set up in Step 1 has read zero for a full production shift under the worst-case conditions that used to trigger the fault. If it was a thermal fault, that means a full warm-up cycle. If it was a drag-chain fault, that means the full axis travel range at production speed. Reset the counter, run the machine, come back in four hours. Zero dropouts is your acceptance criterion.

Leave the diagnostic rungs in the program with the counter visible on the HMI. The counter costs you nothing in scan time, and the next time someone reports a random fault on that input, maintenance will have immediate, timestamped evidence to work from instead of starting from scratch.

Quick Reference: Fault Type vs Most Likely Cause

Symptom PatternMost Likely CauseFirst Action
Fault only at one end of axis travelDrag chain cable fracture at bend entryFlex cable by hand at chain exit, watch PLC input bit
Fault only after 45+ min runtimeThermal: sensor, connector or marginal supplyLog supply voltage and sensor output during warm fault window
Fault correlates with large motor/contactor switchingInduced noise on unshielded cableCheck cable routing and shield termination
Fault on every Nth cycle with consistent timingMechanical switch bounce or worn cam/targetOscilloscope on input terminal, measure bounce duration
Fault appears when cabinet door is opened or closedLoose terminal ferrule vibrated by doorRe-torque all terminals on that circuit, check ferrule crimp quality
Fault appears random, no correlationLoose M8/M12 connector bodyWiggle each field connector with machine live, replace any that flicker
Intermittent sensor fault pattern matching guide

Related Blogs