Smoothly Change Trajectory with RAPID

Hey all,

So I’m trying to accomplish the following: I want to be able to start my arm moving in a trajectory. The arm at some point in this trajectory receive an input signal. At this point I want to immediately (as quickly as possible) change my trajectory. Does anyone have any suggestions to accomplish this?

Thanks,

Moved to RobotWare forum.

You can use a traproutine for this.
In this trap u can put the instructions you want.

Then you can connect the input to the traproutine.

examples can be found in the RAPID manual

!! Progstop is an Intnum DATA !!

PROC main()
CONNECT ProgStop WITH Stop_Programma;
ISignalDI diProgStop, 1, ProgStop;
… ;
IDelete ProgStop;
ENDPROC

TRAP Stop_Programma
Stopmove;
WaitDI diProgStart, 1;
Startmove;
ENDTRAP

You can use “SearchL”
This instruction reads an input while the robot moves linearly, or “SearchC” if you need circular motion.
The robot can be stoped immediately when the input toggled to specified condition.