I need an idea for a code to run two functions run at the same time in RAPID. Any ideas?
MODULE Module1
CONST robtarget Target_30:=[[1645.421406637,0,1697.500079305],[0.500000013,0.000000009,0.866025396,0.000000005],[0,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget Target_40:=[[1854.035021987,0,1697.499975767],[0.50000002,0.000000009,0.866025392,0.000000005],[0,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
VAR num a:=0;
PROC main()
Independant;
Path_10;
ENDPROC
PROC Independant()
ActUnit MTD_500_M2009_REV1_;
FOR i FROM 1 TO 10000 DO
IndAMove MTD_500_M2009_REV1_,1\ToAbsNum:=a,90\Ramp:=100;
a :=a + 90;
ENDFOR
ENDPROC
PROC Path_10()
MoveL Target_30,v1000,z100,tool0\WObj:=wobj0;
MoveL Target_40,v1000,z100,tool0\WObj:=wobj0;
ENDPROC
ENDMODULE
If your robot has the option multi tasking, you can set the external axis to be controlled by a secondary task. That would let you have both items move independantly.
I believe that you also have to have the MultiMove option installed.
Good job.