Interrupt command

Hello all,
 

Could anyone please help me on using an interrupt command. What I want to do now is quite a simple task in which a robot is commanded to move from P10 to the position reg (or P20). When the robot is interrupted and the reg is replaced by P30, then the robot has to move along to P30 directly and stop the process (never returns back to P20) as illustrated in the following Fig.

 

Previously, I have done a program using the interrupt but when the robot was interrupted, it moved to P30 correctly and went back to continue moving along the path to reach the P20 before stoping the process.

 

Thank you in advance.image

Regards,

Paramin
Paramin2013-03-25 15:41:09

Comments

  • jyrgen
    jyrgen Sweden


    Did you try to use the instr ClearPath?


    ClearPath
    clears the whole motion path on the current motion path level (base level or
    StorePath level).
    With motion
    path, meaning all the movement segments from any move instructions which have
    been executed in RAPID but not performed by the robot at the execution time of ClearPath.
    The robot
    must be in a stop point position or must be stopped with StopMove before the instruction
    ClearPath can be executed.

     

  • Hello Jyrgen
     

    Thank you for your kindly advice; Let me try it.

     

    Thank you again

    Paramin
  • Boteon
    Boteon Treviso
    Hello to everyone,
    i'm sorry for resuming such an old discussion, but i'm stuck with the same problem:

    I managed to solve the problem in two ways, but both of them give me some trouble:

    1) Move with \Conc:

    The Move instruction is set with the \Conc option. The interruption is made by an input signal and activate a trap:

    PROC main()
          ! Move to P2 (1)
    ENDPROC

    TRAP moveAway
           StopMove \Quick;
           StorePath;
           ! Movement
           StorePath;
           ClearPath;
           StartMove;
    ENDTRAP

    The tool moves from P1 to P2, gets an interrupt, moves to P3 and is able to move to another location given by an external software.

    The problem with this solution is the limit of 5 continous input movement that robotstudio is unable to handle.
    Without the \Conc parameter the PP get stuck at the first move (1) after the end of the trap. (it's not able to recieve other input from the backgroud task)

    2) The ExitCycle option:

    The "move to P2 instruction" is written without the \Conc option and, inside the TRAP, is added an ExitCycle command:

    TRAP moveAway
           StopMove \Quick;
           StorePath;
           ! Movement
           StorePath;
           ClearPath;
           StartMove;
           ExitCycle;
    ENDTRAP

    This solution is perfect ONLY IN CONTINOUS EXECUTION MODE so is not applicable to every possible scenario.

    Did you managed to avoid the problem in other ways? 
    Thank you Sorry for my english!
Sign In or Register to comment.