Modicon PAC Forum
A forum for topics related to the scope of Modicon PAC offers and ecosystem along the whole lifecycle: Modicon M580 and 340, EcoStruxure Control Expert, EcoStruxure Process Expert (Unity Pro) and more.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2022-02-17 11:11 AM
We have a M580 that crashed last week, all services stopped,
We were not able to connect by TCPIP anymore,
Only after cold restart, ik came alive, and in Run again without anyone restarting the CPU.
It still runs a week after the crash
What do they mean by index overrun?
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2022-02-18 02:41 AM
Index overrun is an unexpected blocking condition causing a logical error generated from the executing code
It looks like the overflow error cant be prevented as it is originating from a function code error. However you can just reset the overflow bit after the execution of your function or even prevent executing of the function causing the error by removing the problematic function and replacing with an alternate logic.
Please see below help info..
When you experience a HALT :
The CPU has an application, but it has stopped operating because it encountered an unexpected blocking condition, which puts the CPU in a HALT state, resulting in a recoverable or non recoverable condition.
RECOVERABLE
The system enters a non-blocking condition when it detects an input/output error on the backplane bus (X Bus or Ethernet) or through execution of an instruction, which can be processed by the user program and does not modify the CPU status.
1. A non-blocking condition linked to the I/O is diagnosed with the following indications:
CPU I/O LED pattern: steady ON
Module I/O LED pattern: steady ON
The below system bits are set:
%S10 set to 0: I/O error detected on one of the modules on the rack (channel power supply detected error, or broken channel, or module not compliant with the configuration, or inoperative module, or module power supply detected error)
%S16 set to 0: I/O error detected in the task in progress
%S40-%S47 set to 0: I/O error detected on rack address 0 to 7
2. A non-blocking condition linked to execution of the program is diagnosed with the following system bits and words:
%S15 set to 1: character string manipulation error detected
%S18 set to 1: capacity overrun, error detected on a floating point, or division by 0
%S20 set to 1: index overrun
%SW125 system word is always updated with the nature of the error detected (error code)
NON_RECOVERABLE
1. Blocking conditions caused during the execution of the application program do not cause system errors, but they stop the CPU. The CPU goes into the HALT state.
Visual indications of a blocking condition are the ERR LED on the CPU front panel.
A description of the error is provided in system word %SW125
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2022-02-18 02:55 AM
I would suggest that you have some code using a pointer to an array and you are exceeding the array bounds.
Example - if you have an array of 10 variables FRED:=ARRAY[0..9] of REAL, and variable Pointer:= INT. If you assign a value of 10 to Pointer then FRED[Pointer] creates an Index error because it exceeds the array dimension.
Link copied. Please paste this link to share this article on your social media post.
Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.