Control systems

PLC troubleshooting: safe steps from symptom to fix

Make the process safe, save the running program, then check power, CPU, I/O, wiring, communication and logic in that order. Symptom table and field cases.

Topic
Control systems
Updated
13 November 2026
Reading time
6 min
Sections
7
A compact PLC with a power supply and wired terminals inside a panel.
Overview

Safe PLC troubleshooting starts by making sure the process is safe and a backup of the running program exists, then checks in order: power supply, CPU status, I/O, field wiring, communication and, last, the program logic.

The order matters because most faults sit outside the program, and changing code on a running plant is the riskiest step of all. This guide follows that order with the symptoms technicians meet most often. For background on how a controller works, see what a PLC is; for how it connects to the control room, see the SCADA architecture guide.

Make it safe before you touch anything

Safety first

Make it safe before you touch anything

A PLC fault is a process problem before it is an electronics problem. The first job is to know what the equipment is doing now and what it will do when you intervene.

Agree the work with operations and follow the site permit. Find out which outputs the PLC drives and what happens if they switch: a pump that starts, a valve that closes, a shutdown that trips. If equipment must be isolated, isolate it physically, not only in software.

Then preserve the evidence. Photograph the LED states, read the CPU diagnostic buffer or fault log, and note the time of the first symptom. Upload and save the program that is actually running before connecting anything else. A reset or power cycle clears much of this information, and a fault that disappears after a restart usually returns.

The same order applies to Allen-Bradley, Siemens, ABB and other brands. What changes is where the diagnostics are read, for example the module status pages in the vendor's engineering software or the fault codes listed in the hardware manual.

The safe order of checks

Method

The safe order of checks

Check the simplest and most likely causes first, and leave the program for last. The sequence on the right follows the path of a signal through the panel.

Power comes first because a sagging 24 VDC supply produces strange symptoms everywhere. CPU status tells you whether the controller is running, stopped or faulted. I/O module diagnostics show whether a card has failed or lost its power. Field wiring and devices are where most physical faults live. Communication comes next, because a healthy PLC can still look dead to SCADA.

Only when every layer below checks out does the logic deserve suspicion. Even then, the program usually did what it was written to do; the question is whether the conditions it saw were the real ones.

  1. Power supply

    Measure supply voltages, check fuses, breakers and UPS.

  2. CPU status

    Run, stop or fault LEDs; read the diagnostic buffer.

  3. I/O modules

    Module diagnostics, channel LEDs, module power.

  4. Field wiring and devices

    Terminals, cables, relays, sensors and actuators.

  5. Communication

    Ports, cables, switches, gateways, addresses.

  6. Program logic

    Online status of the rungs or blocks involved.

Common symptoms and where to look

Symptoms

Common symptoms and where to look

Most PLC calls start with one of a handful of symptoms. Each one points to a short list of likely causes and a first test.

The table is a starting point drawn from common practice, not a vendor procedure. The vendor manual for the exact CPU and module model always takes precedence, especially for the meaning of LED patterns and fault codes.

Write down each test and its result as you go, with the time. A short log turns a one-off repair into knowledge the next shift can use, and it shows which causes have already been ruled out when the fault comes back at night.

CriterionLikely causesFirst test
CPU fault or stop LEDProgram error, watchdog, failed module, flat CPU batteryRead the diagnostic buffer before any reset
Output LED on, device not movingBlown fuse, failed relay, broken wire, faulty deviceMeasure voltage at the output terminal and at the device
Input not seen by the PLCSensor fault, wiring, missing common, wrong addressOperate the sensor and watch the input LED and online value
Analog value frozen or at its limitOpen loop, transmitter fault, channel fault, scalingMeasure loop current; inject a test signal
Communication drops in and outLoose connector, surge damage, converter, address or baud mismatchTrace the chain link by link
PLC stops after a power dipNo UPS, weak supply, retentive data lostCheck supply hold-up and UPS transfer
Output LED on, but nothing moves

Outputs

Output LED on, but nothing moves

This is the most common output complaint, and the LED is the reason it confuses people. The LED shows what the logic is asking for, not what reaches the field.

Work outward from the module. Measure the voltage at the output terminal with the output on. If it is missing, suspect the output channel, the module supply or a fuse on the module. If it is present, follow the circuit through any interposing relay, the field terminals and the cable to the device, measuring at each point. A coil that measures correctly but does not pull in points to the device itself.

At the Cikampek fuel terminal, Citia troubleshot a faulty Allen-Bradley digital output by checking the wiring and the I/O function before replacing the failed component, then replaced the Moxa NPort 5160 meter-reading gateway and retested with the existing system. The lesson recorded was that a full check of I/O, wiring, communication settings and network finds the real source and keeps the replacement from disturbing the rest. See the Allen-Bradley output module work.

Communication that drops in and out

Communication

Communication that drops in and out

Intermittent communication is the slowest fault to find because it is often fine while you are watching. The cure is to treat the path as a chain and test each link.

At PT Bio Farma in Bandung, the electrical SCADA reads power meters through ABB AC500 PLC masters, Modbus gateways and RS-485 multidrop networks. Citia's checks covered the whole chain from SCADA server through industrial Ethernet and PLC master to the meters, including lost communication, invalid data, unreachable devices and mismatches between field and SCADA, plus a direct engineering-laptop connection for diagnostics. See the ABB AC500 troubleshooting.

Physical damage is a frequent cause. On the Balongan PressMon pipeline network, degraded fibre optic converters caused intermittent loss and delayed data. On the Jambi MOV link, a surge protection device guards the RS-485 line and a LAN arrester guards the Ethernet side, because surges from lightning or switching can damage ports long before anyone sees a cable fault.

Configuration mismatches cause much of the rest. After a device or gateway is replaced, its address, baud rate, parity and register map must match what the master expects. At Eltech in Bekasi, Modbus addressing and IP settings had to be aligned before the central SCADA read busbar values correctly; see the Eltech integration.

Tracing a communication fault
Field
Control
Application
Field device

Meter, MOV or drive: address, baud rate, power.

Hover, focus or tap a step to read its note.
Before you change the program

Program changes

Before you change the program

Change the program only after the fault is proven to be in the logic. Most of the time it is not.

At the Lomanis fuel terminal, a flowmeter gave no reading on the DCS screen. Signal tracing and injection showed the I/O modules were healthy and the fault sat in the flowmeter and totalizer controller. Proving that first avoided changes to a system that was working.

When a change is needed, compare the online program with the saved copy, record what will change and why, and agree a test with operations. Check the firmware and software versions too. At Petrokimia Gresik, the existing backup could not be downloaded because the controller firmware had been upgraded, so a newer ABB Freelance version had to be installed on the engineering station. Save the new version straight after the change.

Repair, replace a module or escalate

Next step

Repair, replace a module or escalate

Replace a module when the diagnosis points to it, not to see whether the fault moves. Swapping parts at random hides the cause and uses up spares.

If the fault follows power dips, the fix may sit in the power system rather than the PLC. At the Donggala depot, UPS units and automatic transfer switches were added so the SIS and process control panels keep running while supply changes between PLN and the generator set.

Before fitting a spare, check that its catalogue number, hardware revision and firmware match what the program expects. A module that is no longer sold may still be available only as a repaired spare, which is a sign to start planning; the options are compared in repairing or migrating obsolete PLC and SCADA. Keep the configuration and program copies current as described in PLC and SCADA backups you can restore.

Faults that keep returning, or that move between devices, deserve a structured look across all layers. The PLC/SCADA assessment guide explains what to prepare, and Citia's Condition Monitoring and Maintenance service covers scheduled checks, alarm analysis and backup tests.

Terms to know

Force
Overriding an input or output value from the engineering software, regardless of the real signal or the logic.
Online edit
Changing the program while the PLC keeps running.
Diagnostic buffer
The CPU's log of faults and events, with times, used to find what happened first.
Watchdog
A timer that stops the CPU if a scan takes too long.
Interposing relay
A relay between a PLC output and a field device that needs a different voltage or current.
Multidrop
Several devices sharing one RS-485 cable, each with its own address.
Signal injection
Feeding a known test signal into a channel to prove whether the module and wiring work.

Frequently asked questions

Why is a PLC output not working when its LED is on?

A PLC output LED shows that the logic has switched the output on, not that power reached the device. Measure at the output terminal, then follow the circuit through fuses, interposing relays and field wiring to the device.

What should be done before changing a PLC program?

Before changing a PLC program, upload and save the running program, confirm the firmware and software versions, prove the fault is in the logic and agree the change and its test with operations. Save the new version immediately afterwards.

When does a PLC I/O module need replacing?

A PLC I/O module needs replacing when its diagnostics or a signal injection test show the channel or module has failed while power and wiring are good. Check the spare's catalogue number, revision and firmware first.

How do you fix PLC communication that keeps dropping?

Fix intermittent PLC communication by tracing the chain link by link: device settings, RS-485 wiring and termination, surge protection, gateways and converters, switches and the SCADA driver log. Physical damage from surges and degraded converters is a frequent cause.

How do you troubleshoot an ABB AC500 PLC?

Troubleshooting an ABB AC500 starts with the status of the CPU and communication modules, then the links between PLC masters, gateways and field devices. A direct engineering-laptop connection gives the diagnostics; the vendor manual explains each status code.

What does PLC maintenance include?

PLC maintenance includes checking power supplies and UPS, CPU and module diagnostics, terminals and wiring, communication health and alarms, plus keeping tested backups of programs and configurations. Findings are ranked so urgent items are fixed first.

Sources and further reading

  1. NIST SP 800-82 Rev. 3: Guide to Operational Technology (OT) Security (opens in a new tab)National Institute of Standards and Technology (NIST) · csrc.nist.gov · 2023-09
  2. Primary Mitigations to Reduce Cyber Threats to Operational Technology (opens in a new tab)Cybersecurity and Infrastructure Security Agency (CISA) · cisa.gov ·
  3. ABB PLC troubleshooting (opens in a new tab)PT Citia Engineering Indonesia · citia-engineering.com
  4. Supply of Allen-Bradley PLC digital output modules and Moxa converter (opens in a new tab)PT Citia Engineering Indonesia · citia-engineering.com
  5. Petrokimia Gresik: ABB PLC repair (opens in a new tab)PT Citia Engineering Indonesia · citia-engineering.com
  6. PLC/SCADA assessment: start with symptoms, topology and backups (opens in a new tab)PT Citia Engineering Indonesia · citia-engineering.com
  7. Cover photo by Angga Panca Alam Anugrah, CC BY-SA 4.0 (cropped and colour graded) (opens in a new tab)Wikimedia Commons · commons.wikimedia.org

Next step

Prepare the technical discussion for your facility.

Bring the equipment list, diagrams and symptoms you have. The Citia team helps map the next step.

Related products and solutions

Keep reading