PLC Troubleshooting Flowchart (and Explanation)

Programmable Logic Controllers are ruggedized computers, specially designed and built to operate reliably under harsh industrial environments. A typical PLC system consists of a processor (CPU), programmable memory, power supply, a user-defined program, I/O modules with associated circuitry, and so on. The programmable memory stores a series of instructions that enable the PLC to perform various control functions like arithmetic computation, relay logic, timing, counting, and sequencing.

Essentially, these control functions are used to monitor and control either individual machines or complex electro-mechanical processes through the PLC inputs and outputs. As the PLC processor reads the inputs, the PLC processes them through the stored user-defined program and generates outputs that are sent out as control commands to field output devices. The I/O modules in the PLC system provide digital or analog electronic connections to field input and output devices.

In this modern era, PLCs are widely used as cost-effective control solutions for automating industrial processes owing to their high reliability, ease of programming, flexibility in use, compact size, and multiple communication options. However, while PLCs have become increasingly mainstream and highly reliable in industrial environments, encountering occasional problems when in operation is inevitable. This is where quick and efficient PLC troubleshooting becomes necessary.

Generally, troubleshooting is a problem-solving method, often applied when an electronic or mechanical system stops operating normally. It is a logical, systematic search for the cause/source of technical problems in order to correct the fault and make the system operational again. PLC troubleshooting may be a daunting task for operators who are unfamiliar with PLCs, even though they are very open control systems that lend themselves well to relatively easy diagnosis. Therefore, the intent of this article is to discuss the basics of PLC troubleshooting using simple but detailed flowcharts.

Common Problems Encountered in PLC Control Systems 

Technical problems that may be encountered in properly programmed and wired PLC control systems can be classified as internal, environmental, or external.

Internal PLC Problems 

Internal problems in a PLC system refer to the technical faults pertaining to the PLC processor, memory, and power supply. The possible causes of these internal problems include:

Faulty Power and Ground Connections: The main issues with power circuits and ground connections could be looseness, breaks in wiring, corrosion, and carbon deposits due to sparking.

Power Supply Failure: Like any other electronic device, a PLC requires a steady and uninterrupted supply of power so as to function properly and effectively. In case of sudden power loss due to grid failure, regional blackouts, loose connections, burnt fuse, or deteriorated cables, the electrical shock to the PLC system is usually huge and may result in data loss. Other problems associated with PLC power supplies include the presence of AC ripples in DC voltage, low power capacity than the system requirements, and a supply voltage not within the range specified by the PLC manufacturer.

Battery Failure: The most effective way to avoid PLC problems associated with sudden power loss is to install backup power sources which activate when the primary power supply becomes unavailable. Many PLC control systems include a battery whose purpose is to prolong the supply of power in the event of an outage, so as to secure the PLC program stored in RAM. But if the battery is not regularly checked or replaced as specified by its manufacturer, it could fail to provide adequate voltage for retaining the processor’s non-volatile memory during power outages.

Electrical Noise Interference: Foreign signals resulting from either Radio Frequency Interference (RFI) or Electromagnetic Interference (EMI) can greatly affect the performance and service life of a PLC. The use of antennas, transmitters, and handheld radios in close proximity to the PLC system can result in RFI.

On the other hand, the possibility of Electromagnetic Interference is greatly increased by starting large motors and arc welding in close proximity to the PLC, or if lightning strikes nearby. Therefore, any potential for electrical noise interference should be contained, as either RFI or EMI can result in costly damage and significant downtime of PLC-based control systems.

Corrupted PLC Memory: External factors such as the aforementioned Radio Frequency and Electromagnetic Interference as well as power supply disruptions can corrupt the PLC memory. When this happens, the programs and functions stored within the PLC memory may become unreadable, or the PLC processor may not be able to execute the program properly when booted up from an unintended shutdown.

This problem can be dealt with effectively by ensuring that all PLC programs are copied and backed up in a redundant storage medium, which is then kept away from electrical noise interference, extreme temperatures, and high humidity.

External PLC Problems 

Problems pertaining to communication modules, network connections, and specific I/O modules are referred to as external PLC problems. Various PLC tools, as well as status-indicating LEDs on the CPU and I/O modules, can be used to localize the external faults.

Input/Output Module Failure: Once a PLC control system is properly wired and programmed, more than 80% of the problems affecting such a system are related to I/O modules and field I/O devices. For example, whenever a PLC controlled process or machine stops, it’s almost invariably that a faulty field input/output device or I/O module has caused the shutdown.

Communication Issues: To function properly, PLC systems should be in constant communication with field input and output devices, and other peripheral devices like Human-Machine Interfaces (HMIs). These communications are facilitated via cables like Ethernet, RS-232 serial, and USB cables, and they require safe, consistent, and stable connections. Because if the connection was to fail, the connected devices cannot perform their functions as per the PLC program, which could result in downtime of the system or process being controlled by the PLC.

Environmental Problems 

PLC control systems must operate throughout within the working environmental conditions recommended by the manufacturers, in order to avoid system failures and malfunctioning. In this context, factors like humidity, temperature, dust, corrosion, noise level, mechanical vibrations, and exposure to corrosive or non-corrosive gases and liquids need to be critically monitored.

Diagnostic LED Indicators in PLCs 

You can monitor the internal operation of a PLC via a handheld programmer, a programming terminal or personal computer, and status monitoring indicator lights. The CPU module of the PLC hosts several status monitoring LEDs such as “BATT”, “ALARM” (ALM), and “ERROR” (ERR), which indicate an internal problem. As previously stated, these internal problems could affect the PLC processor and memory resulting in total failure of the system.

Before we dive into the procedure for troubleshooting PLCs, let’s look at some of the most commonly used diagnostic LED indicators in PLC-based control systems.

“ERROR/FAULT” LED Indicator: The “ERROR/FAULT” LED is usually red in color and is located on the CPU module. Whenever it’s “ON”, the PLC system should be turned “OFF” and then “ON” in order to reset self-diagnostic problems. In most cases, this technique works. But if the “ERROR” LED does not turn “OFF” even after resetting the PLC, the operator should switch the PLC from “RUN” to “PROGRAM” mode so as to check any programming errors. The “ERROR” LED should turn “OFF” in “PROGRAM” mode, but if the problem persists, one should check for self-diagnostic errors.

“ALARM” LED Indicator: The “ALARM” LED, which is usually red in color turns “ON”, whenever timer errors occur due to abnormalities in the CPU module of the PLC. In other cases, the “ALARM” LED can turn “ON” if the program execution time is too long especially when instructions such as ‘Loop’ or ‘Jump’ are used in such a way that the program scan never ends.

“BATT” LED Indicator: If the “BATT” LED on the PLC CPU module is “ON”, it means that the backup battery is providing a low voltage than the value required to retain the PLC programs in RAM during power failures. The battery should thus be replaced. 

LED Indicators for I/O Troubleshooting: Status monitoring LEDs also provide useful information about the status of I/O modules, field devices, and corresponding wiring. For example, most PLC I/O modules have at least one LED indicator that greatly assists in the troubleshooting process. Specifically, Output PLC modules usually have a logic LED, whereas Input PLC modules normally have a power (“PWR”) LED indicator. However, these LED indicators cannot diagnose all possible I/O problems; instead, they act as preliminary signs of I/O system malfunctions.

PLC Troubleshooting Flowchart 

In order to proceed with the basics of PLC troubleshooting, we have assumed that the PLC system being analyzed was functioning properly sometime in the recent past. Hence, the problems of wiring errors and debugging the PLC program, which is more typical at the start of a PLC troubleshooting process, will not be solved.

The flowchart shown below outlines a general PLC troubleshooting procedure that aims at restoring a dysfunctional PLC system into working condition, within the minimum possible time.

Figure 1: Main PLC Troubleshooting Flowchart

As previously stated, like any other electronic device working in harsh industrial environments, PLCs do sometimes fail and when a failure occurs, it is imperative to first decide whether the problem is within the PLC system-CPU, battery, memory, power supply, and I/O modules or with the field input and output devices.

Localizing the problem often results in an efficient and effective PLC troubleshooting process. This can be ascertained from the status monitoring LED indicators on the CPU and I/O modules, and by using PLC tools to isolate the fault. In addition, it should be noted that an improper working environment can also significantly affect the performance of PLC control systems. Thus, an effective PLC troubleshooting procedure should into account the possibility of all the aforementioned problems.

The General PLC Troubleshooting Procedure is outlined in the Flowchart illustrated to the right: 

  • Check the PLC Power Supply for any loose connections, burnt/ blown fuses, or low voltage supply in the control circuit. 
  • Check if the Emergency Push Button is pressed. Pressing this button usually shuts down the PLC-based control system, which could be the reason why the PLC is not in operation. 
  • Check the Status Monitoring LED Indicators on the CPU module of the PLC, which include “BATT”, “ALARM” (ALM), and “ERROR” (ERR) LEDs. The status of these LEDs reflects the internal problems of the PLC system. 
  • Verify the PLC Program with the Master Program. Check if the program in the PLC memory matches the backed up original copies, and reload the program if you encounter any problems. You can use the DEBUG feature in the PLC Program to match the running program with the initially loaded master program. Also, after verifying the PLC program ensure that the backup copies are up-to-date and keep them safely, away from extreme temperatures, RFI & EMI exposure, and high humidity; so that they remain usable. 
  • Check if the PLC Memory is Corrupted. External factors like power failure, faulty grounding and electrical noise interference (RFI or EMI) can cause corruption of the PLC memory. But if the program in the PLC RAM memory checks OK, then one may conclude that there are no internal problems with the PLC system. 
  • Check the Status of the Output Modules and their Associated Circuitry. This can be done by visually inspecting the modules or by checking the status of the LED indicators on each output module. Note: The output modules and their circuitry need to be checked before the input modules for effective and efficient I/O troubleshooting; because the most common I/O problems in PLC systems occur at the output side.   
  • Check the Status of the Input Modules and their Associated Circuitry. Note down the status indicating LEDs at the I/O modules that are “ON” in normal standstill conditions, for future reference and use during fault conditions. 
  • Check the Field Input and Output Devices. If neither of the red color fault LEDs on the CPU module such as “ERROR”, “BATT”, or “ALARM” LED…etc., is “ON”, immediately check for any problems with the field input and output devices; as they could most likely be the cause of your PLC malfunctioning. 
  • Check for Communication Issues. If you find that the I/O modules are working correctly or if the problem persists even after replacing a specific I/O module, the next step will be to check for any possible issues in the communication networks between the PLC CPU and the I/O modules. This can be done by visually inspecting the physical communication networks i.e. checking for any loose cable connections, or checking the “COMM” LED indicator on the CPU module.  

Note: The CPU module “COMM” LED blinks to indicate stable and consistent communications between the I/O modules and the Central Processing Unit (CPU) of the PLC.

  • Check the Working Environmental Conditions. A PLC-based control system should be operated within the humidity, temperature, vibration, and noise-level limits specified by its manufacturer, to avoid any malfunctioning or total failure.  
  • Replace the CPU. If the diagnostic LED indicators on the front of the CPU module show no fault in either memory, battery, or communications. The power supply, field input, and output devices, as well as the I/O modules, check OK. And the program in the PLC memory matches with the master program and all the working environmental conditions are as recommended by the PLC manufacturer. But the PLC system still doesn’t come up even with proper powering, then the problem lies in the CPU circuitry, and the CPU may need to be replaced. 

Note: The PLC troubleshooting approach discussed above is general and is devised upon the study and long-term working experience with PLC-based control systems. Thus, it can be applied to any type of PLC control system. 

Troubleshooting Specific Components of the PLC System 

Figure 2: Flowchart for Troubleshooting PLC Power Supply Faults

In this section, we’ll look at how you can troubleshoot specific internal and external problems in PLC control systems using detailed flowcharts. 

A) Power Supply Troubleshooting

The PLC power supply module includes a status indicating LED which is always “ON” and illuminates brightly whenever there’s no problem with the module or its voltage source. If the LED indicator is “OFF”, you should look for possible causes of the problem such as fluctuating/missing input supply voltage, rusty connections, breaks in the wiring, burnt fuse, incorrect setting of the supply voltage switching terminal, non-zero AC or DC ground, high temperature or more load than the rated capacity of the power supply module.

When troubleshooting the power supply module of a PLC, the first thing to check is the integrity of the voltage source and grounding. Thus, visually inspect the power circuit and ground wiring for loose, corroded, or other faulty connections. Then, use a digital multimeter or voltmeter set on the lowest scale possible to check the electrical integrity of the ground voltage, by measuring the voltage between the PLC ground terminal and a reference ground. The meter readings should be zero for both AC and DC voltages.

The PLC power supply module can also be tested electrically. For example, if the PLC processor has an AC voltage source be sure to check its input voltage; it should be within the range recommended by its manufacturer. But PLC processors actually operate on DC voltage, which must also be checked. You can do so by measuring each of the DC power supply outputs and checking if their voltages are within the recommended ranges.

In addition, check if AC ripples are present in the outputs of the DC power supply. To do so, use a digital meter set on the lowest AC range. The measured value of the AC ripples should be well below the manufacturer’s specifications. Because excess AC ripples have drastic effects on the operation of the memory and microprocessor devices within the PLC’s CPU module.

B) I/O Modules Troubleshooting

As discussed earlier, perhaps the most common problem affecting PLC-based control systems is module failure at the I/O system. Troubleshooting the PLC output and input units requires checking whether the status monitoring LEDs on those units are “ON” or “OFF”, to be able to localize the problem.

Essentially, the primary focus for troubleshooting I/O module failure is to establish the disconnect between the internal diagnosis (what the PLC processor thinks is happening) and the external diagnosis (what’s actually happening). This process requires the operator to examine the relation between the I/O instructions within the PLC program stored in RAM and the physical I/O modules. Once the relation has been established, the faulty I/O module can then be isolated and its internal status checked using a program monitoring device.

C) Troubleshooting PLC Program Errors

When no abnormality is found with the PLC CPU, its power supply, the I/O modules, and corresponding field I/O devices, you should confirm that the program in the PLC RAM memory is the same as the backed-up master program. Also, check if there are any communication problems between the I/O modules and the PLC processor. The flowchart illustrated below provides the procedure for examining the PLC program and CPU communications.

Figure 3: Flowchart for Troubleshooting the PLC program

D) Troubleshooting the Working Environment of a PLC

To check the environmental conditions of a PLC system in operation, you can follow the procedure outlined in the following flowchart:  

Figure 4: Flowchart for Checking the Working Environmental conditions of a PLC


This article describes the internal and external problems that are generally encountered in PLC-based control systems and a general procedure for resolving them. Detailed flowcharts for troubleshooting the entire PLC system, power supply faults, PLC program and communication issues, as well as the working environment conditions of a PLC have also been included. The procedure outlined in the main PLC Troubleshooting Flowchart is general and can be applied to any type of PLC control system.

Posted on:
DO Supply Inc. makes no representations as to the completeness, validity, correctness, suitability, or accuracy of any information on this website and will not be liable for any delays, omissions, or errors in this information or any losses, injuries, or damages arising from its display or use. All the information on this website is provided on an "as-is" basis. It is the reader’s responsibility to verify their own facts. DO Supply Inc. is not an authorized distributor and is not in anyway affiliated with Rockwell Automation. DO Supply Inc. makes no representation as to your ability or right to download, obtain, or use any firmware provided by the product's manufacturer. To the extent you wish to use such firmware, it is your responsibility to comply with the terms of any applicable license or other such agreement related to the download, installation, or use of the firmware. DO Supply makes no representation that the version of the firmware that is installed on any product it sells is appropriate for your needs or use. Further, DO Supply Inc. does not sell, re-sell, or license software that may be needed to operate certain hardware and customers must obtain any necessary software licensing, maintenance, or upgrades from the manufacturer or other authorized source. To the extent any of the products sold by DO Supply requires software for operation, you acknowledge that DO Supply does not sell or license such software and that it is solely your responsibility to obtain the software or a proper license to use it from authorized sources.
Post author

Leave a comment

Your email address will not be published. Required fields are marked *