Dear Colleagues

One of the workhorses in industry – no matter whether you are in industrial automation, electrical or mechanical engineering, you are likely to be confronted with one of these little fellahs - a Programmable Logic Controller or PLC (or indeed, Programmable Automation Controller – PAC).  A critical cheap building block for all automated systems. Effectively, an industrially hardened digital electronic device in which a sequence of instructions are stored, which enable the PLC to replace hard wired relay logic and perform counting, sequencing and timing. As well, as reading analog inputs (e.g. from a flow meter) and outputting analog output control signals to valves and other control devices.

A few tips on troubleshooting these devices (yes – the veterans amongst you will sigh, when you know your enormous depth of experience built up to do this – as against my short note below).

I have presumed in the suggestions on troubleshooting, that your PLC has been operating correctly and there are no recent program changes.

The first decision is to decide whether the problem is internal or external to the PLC. Over 80% of PLC malfunctions are with the I/O modules and field equipment (OK; I agree – where did this statistic come from – but it does make sense). Problems related to a specific I/O module or input/output device are generally external problems while large groups of failures are generally related to the internals of the PLC.

Internal problems - first cab off the rank

• Check that your earthing/grounding is correct. Inspect power and ground wiring. Check that voltage between PLC ground terminal and known ground is actually zero. You may need to log this over time with a scope to find pesky transient changes in voltage.
• Check the power supply to the PLC is operating within the correct ranges for both CPU and I/O modules (and that the ac ripple on your dc supplies is not excessive).
• Check batteries on PLC are still OK.
• EMC/EMI problems get trickier – look for an EMC/EMI “event” such as motor starting/arc welding in the area or lightning strike which may match up with erratic behaviour of your PLC.
• Check the PLC program hasn’t been corrupted (occasionally on cheaper devices I have seen this happen much to my amazement). Ensure program is backed up off-site when examining it.
• Check the internal diagnostics for a collapse of one of your PLC programs or subroutines or some other error (divide by zero)

External problems – the more likely problem

The main issue here is to find out why your internal program and data status doesn’t match up with the external situation.

Digital inputs
• Check the power supply to the module.
• Look for where the power to a digital input comes from (not normally from the PLC I/O module).
• Check fuses, breakers and any other cause of power interruption  to the digital input
• Check for adequate changes in voltage to the digital input when the external field device is operated.
• If the digital input is operating correctly and the CPU is still misreading it; the problem may lie in the PLC program.
Digital Outputs
• For digital outputs, check where the power is being supplied by. Often not from the PLC output card itself.
• Check the power output from the PLC.
• Check fuses (and fuse blown indicators).
• Force digital outputs on and off .
• Preferably use a test load (rather than open circuit it) when testing the PLC outputs.
Analog Inputs
• For analog inputs; move the field device (an instrument) through the full range of current (e.g. 4-20mA) and confirm this is reflected in the equivalent register in the PLC.
• If there is uncertainty here, hook up a signal transmitter and run through the full range of current (or voltage).
Analog Outputs
• For Analog outputs – in your PLC program force the output to a specific value and observe that the output reflects this. If not; check the external wiring and then the actual output, with a 250 ohm resistor for example.

The hazards of re-mote troubleshooting

Some of my recent forays increasingly have been into re-mote troubleshooting of PLCs located thousands of kms away. But this can be hazardous enough without enormous care taken with network sec-urity to ensure that Uncle Amir from the West Waziristan Taliban doesn't break into your critical industrial control system of your oil rig.

A few thorny transient problems

In my experience in troubleshooting, I have been occasionally exposed to sudden overvoltages which blew a range of variable speed drives and PLC inputs (due to discharge of a capacitor bank with a very sharp transient). Other ones have been horrible harmonics introduced by a new drive. This required isolation of analog inputs to eliminate this (as we then had analysing problems). Finally, data communications problems traced to common mode voltages surges and fixable by isolation (fiber optics) and improved earthing.

When in doubt; disconnect

And when testing a PLC, ensure that you disconnect any critical high powered equipment when testing outputs. One PLC programmer I know accidentally started a 1MW ball mill accidentally when testing a tiny digital output from the PLC…...

Particularly true of troubleshooting PLCs is Oscar Wilde's comment:

Education is an admirable thing, but it is well to remember from time to time that nothing that is worth knowing can be taught.

The only way to learn is by your own efforts in troubleshooting.

Thanks to Ryan G. Rosandich for a great article on Troubleshooting PLCs.

Yours in engineering learning