I'm having the following issue that I do not understand.
I have the following interrupt declaration:
INTERRUPT DECL 1 WHEN NOT SignalToMonitor DO ISR_1()
I activate the Interrupt when some preconditions are met.
When SignalToMonitor is false, ISR_1() is called which is defined as follows:
DEF DO ISR_1()
ABORT_PROGRAM = TRUE
In my sub file I have the following code:
IF ABORT_PROGRAM THEN
CWRITE($CMD, STAT, MODE, "CANCEL 1")
CWRITE($CMD, STAT, MODE, "STOP 1")
ABORT_PROGRAM = FALSE
The whole purpose is to stop the robot interpreter so that the program that was running is stopped. But my issue is the robot interpreter is never stopped. I have similar code in other programs which are not in the interrupt routine that set the ABORT_PROGRAM variable to TRUE and the interpreter gets stopped.
My KSS version is 8.6.10.
Thank you in advance.