ESM System Variables
| System Variable | Data Type | Description | |||||
|---|---|---|---|---|---|---|---|
| ESM_DATA | ESM_DAT | ESM Data structure | |||||
|
|
ESM_COUNT |
USINT | Number of ESMs (one ESM per processor core) |
||||
|
|
ESM_INFOS |
ESM_INFO_ARRAY | Information on ESM [1...2] |
||||
|
|
|
[1]..[2] |
|
||||
|
|
|
|
TASK_COUNT |
UINT | Number of tasks that have been configured for the ESM |
||
|
|
|
|
TICK_COUNT |
UDINT | Always 0 |
||
|
|
|
|
TICK_INTERVAL |
UDINT | Always 0 |
||
|
|
|
|
TASK_INFOS |
TASK_INFO_ARRAY | Information on task [1...16] |
||
|
|
|
|
|
[1]...[16] |
|
||
|
|
|
|
|
|
INTERVAL |
LINT | For cyclic tasks: time interval in μs |
|
|
|
|
|
|
PRIORITY |
INT | Priority of task |
|
|
|
|
|
|
WATCHDOG |
LINT | Watchdog time in μs; no watchdog: 0. The watchdog time will be defined for the sum of execution duration and delay time. If the watchdog time is exceeded the watchdog will trigger. |
|
|
|
|
|
|
LAST_EXEC_DURATION |
LINT | Execution duration of the task in the previous cycle in μs (including interruptions by higher priority tasks) |
|
|
|
|
|
|
MIN_EXEC_DURATION |
LINT | Minimum execution duration of the task in μs (including interruptions by higher priority tasks) |
|
|
|
|
|
|
MAX_EXEC_DURATION |
LINT | Maximum execution duration of the task in μs (including interruptions by higher priority tasks) |
|
|
|
|
|
|
LAST_ACTIVATION_DELAY |
LINT | Delay time of the task in the previous cycle in μs (delay occurs if higher priority tasks are pending at the time of task activation) |
|
|
|
|
|
|
MIN_ACTIVATION_DELAY |
LINT | Minimum delay time of the task in μs (delay occurs if higher priority tasks are pending at the time of task activation) |
|
|
|
|
|
|
MAX_ACTIVATION_DELAY |
LINT | Maximum delay time of the task in μs (delay occurs if higher priority tasks are pending at the time of task activation) |
|
|
|
|
|
|
EXEC_TIME_THRESHOLD |
LINT | Threshold value that you can define for the sum of execution duration and delay time |
|
|
|
|
|
|
EXEC_TIME_THRESHOLD_CNT |
UDINT | If the defined EXEC_TIME_THRESHOLD value is exceeded, the value of the EXEC_TIME_THRESHOLD_CNT variable is incremented |
|
|
|
|
|
|
NAME |
STRING | Task name |
|
|
EXCEPTION_COUNT |
USINT | Number of exceptions | ||||
|
|
EXCEPTION_INFOS |
ESM_EXCEPTION_INFO_ARRAY | Information on exceptions [1...2] |
||||
|
|
|
[1]...[2] |
|
||||
|
|
|
|
TYPE_ID |
UDINT |
ID of the exception 0 = None 1 = ARP exception (see details in SUB_TYPE and SUB_TYPE_ID) 2 = STD exception (see details in SUB_TYPE) 3 = Unknown exception 4 = Signal 5 = Task WatchDog |
||
|
|
|
|
SUB_TYPE |
STRING512 | Subtype of the exception (for example, std::exception, Arp::System::Commons::ArgumentException) |
||
|
|
|
|
SUB_TYPE_ID |
UDINT |
Provides detailed information for ARP exceptions (if TYPE_ID = 1)0x4000 = PLC exception 0x4001 = PLC division by zero exception 0x4002 = PLC index out of range exception 0x4003 = PLC stack overflow exception 0x4004 = PLC string error exception |
||
|
|
|
|
TASK_NAME |
STRING | Name of the task in which the exception occurred |
||
|
|
|
|
PROGRAM_NAME |
STRING512 | Name of the program instance in which the exception occurred |
||
|
|
|
|
INFORMATION |
STRING512 | Information on the exception that occurred |
||