Error LED of PCD is lit! How to find the problem?
There is an Error Led on nearly every PCD system that can indicate a problem on the system. Read this FAQ to learn more about the different reasons for a lit Error LED and how to find the problem causing the lit error LED.
What causes the Error LED to get lit?
There are different reasons for a lit error LED. The most common reasons are listed below:
- A problem while assigning a communication port (e.g. missing communication module or wrong parameters)
- A problem while sending an S-Bus telegram (e.g. missing port assignation or invalid data array or media)
- Invalid mathematical operation (e.g. division by zero or value overflow after a multiplication)
- Index register overflow
How to find the problem in the code/configuration?
One fast way to find the problem is reading the history entries of the PCD. This may be done by using either the Online Configurator or the Online Debugger (type "Display History"). In the History some of the problems are listed explicitely (e.g. IPM not present) for further information regarding the History entries, please refer to the PG5 Help. The chapter "Messages" contains "Halt and History messages".
If only an "Error Flag" is mentioned the next task is to find the program part where the Error status-flag is set. This is to be done by using the Online Debugger:
- Go online with your Fupla- or IL program.
- Open the Online Debugger and type "Restart Cold All CPUs".
- Still in the Online Debugger, type "Run Until Status-flag Error". As soon the Staus-flag "Error" is set, the PCD will be stopped. Therefore the Fupla Editor will jump to the page which actually is processed (only this page is part of the current Fupla file! If the Error isn't caused by this Fupla file, it will jump to any other page which doesn't cause the problem. Have a look at this page and the FBox with the "stop"-box on it and decide whether the problem could have been caused by this FBox!
If there isn't any FBox that could cause any problems mentioned above, repeat the procedure while beeing online with the next Fupla file of the CPU).
- If you can't find the problem directly in a Fupla file, switch to the Online Debugger again. After having stopped, a line similar to the line written below will be shown:
*001234 STH I/O 48 A1 Z0 N0 P1 E1 IX COB2
This first number of this line indicates on which line of the code the problem happened: the last instruction BEFORE the line shown caused the problem (the error LED is lit after the problem).
- Type "Display Program <line indicated -10> Count 15". Now you can see the instruction that caused the problem: Refer to the IL instruction Set (Online Help of IL Editor SEDIT) in order to figure out what this instruction exactly does.
If a SASI instruction causes the problem, check out the following possible reasons:
- The port is already assigned (have a look at the HW configuration and search for further SASI instructions by typing "Locate Instruction SASI" in the Online Debugger!).
Hint: Also have an eye on the SASI FBoxes you used as well as on the HMI Settings tab.
- The port doesn't exist
- The SASI text isn't valid
- S-Bus support isn't enabled in the Hardware Settings but an S-Bus assignation was executed. This won't work because in this case the PCD doesn't have an S-Bus address (which is required for S-Bus communication).
If it seems as a mathematical operation caused the error, use the online debugger to run shortly before the problem-causing part of the code by typing "Run Until Instruction-Pointer Equals <instruction line shortly before problem-line>" (note that the instruction line must contain an instruction!). Once reached this line, type "sTep". In the Step-mode, you will see the contents of the PCD medias [brackets].
The Error LED is lit in case the Status Flag E (Error status flag is set high) and no XOB 13 is programmed. In case the XOB 13 is programmed, the Error Led won't get lit but this XOB is processed immediately.
PCD1 / _Firmware Classic
PCD2 / _Firmware Classic
PCD3 / _Firmware Classic
PCD4 / _Firmware
PCD6 / _Firmware
Last update: 01.06.2015 00:41
First release: 29.11.2004 17:04