RobotStudio event

Interrupt works fine in RS simulation, but not on real robot

Luxrobotic
Luxrobotic ✭✭
edited December 2 in RAPID Programming

Good morning everybody,

 I have an issue with an Interrupt which works fine in RS simulation, but not online.

I have an interrupt iNailCharge connected with a TRAP routine IntRtneNailLevelLow


When the signal diMagasinCharge is high, I start counting the last nails present in the magasine.

Once the counter = 0, the boolean bNailCounterBeforeCharge := TRUE


When the interrupt is activated, the process stops and the robot goes to a reload position


The boolean is set to FALSE in the beginning of my program :





The logic works fine, the boolean is set to TRUE, but the RAPID pointer doesn't go into the TRAP.

Thanks for any support
Regards

Cornet Raymond
Manager
LUXROBOTIC programming Sàrl
+352 621 354 570
raymond.cornet@luxrobotic.com
http://www.luxrobotic.com

PC HP ZBook 17 G3
intel Core i7 6700HQ 2.59 GHz
RAM 16GB
HDD 1TB
NVIDIA Quadro M1000M
Post edited by Luxrobotic on

Comments

  • DenisFR
    DenisFR ✭✭✭
    Hello,
    We can't see your images...

    ☑️2024 - RobotStudio® User Group

  • Like DenisFR said, we can't see your images. What type of interrupt is it? (signal change, variable change, etc.) Are you sure that the interrupt trigger is actually executing? (is the signal or variable actually changing?) Are you sure that the pointer never enters the trap routine? Putting temporary "TpWrite" messages in your code can often help you trace where the pointer has been - like putting a message at the top of your trap routine that says "Entered trap routine".
  • Luxrobotic
    Luxrobotic ✭✭
    edited December 2
    HI,

    I finally succeed to insert the images !

    I use a iPers interrupt with a boolean bNailCounterBeforeCharge.

    I put en ErrWrite instruction  in the TRAP :

    ErrWrite \I,"IntRtneNailLevelLow called","Level of magazine : Recharger"; and didn't get the error message.

    By the way, which hosting website do you use ?
    Regards

    Cornet Raymond
    Manager
    LUXROBOTIC programming Sàrl
    +352 621 354 570
    raymond.cornet@luxrobotic.com
    http://www.luxrobotic.com

    PC HP ZBook 17 G3
    intel Core i7 6700HQ 2.59 GHz
    RAM 16GB
    HDD 1TB
    NVIDIA Quadro M1000M
  • I notice you have an "IWatch" instruction that is commented out. Is there anywhere in the program that you are calling "ISleep"?. Do you manually move the program pointer during debug? This can sometimes reset variables including interrupts. If it works during virtual testing, there is no reason it shouldn't work on the real robot unless other environmental factors are introduced (like moving the program pointer, physical I/O that is not working correctly, things like that). Also, I think trap routines only execute when the program is in an idle state. If the program is stuck in a while loop or running calculations without any wait-times, then the trap routine never gets a chance to execute. I don't see any places in your program that might cause a problem, just something to watch out for. Would it be possible for you to share a picture of the trap routine IntRtneNailLevelLow?