VAR num a1:=0;VAR num b1:=0;VAR num c1:=0; CONST robtarget pPick:=[[1962.00,-140.49,745.92],[0.199803,-4.33198E-07,0.979836,-2.86531E-07],[-1,-3,2,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST jointtarget home1:=[[2.97566,-16.7117,15.2556,-4.92418,31.5841,5.68641],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; PERS robtarget pPlace:=[[1919.7,937.54,529.48],[0.199803,-3.69944E-07,0.979836,-4.20685E-07],[0,-2,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget pPlace10:=[[1719.70,837.54,429.48],[0.199803,-3.69944E-07,0.979836,-4.20685E-07],[0,-2,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget wating01:=[[1753.43,219.90,1023.02],[0.199803,-2.46214E-07,0.979836,-5.32938E-07],[0,-2,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; PROC main() Initall;
prg1;
ENDPROC PROC Initall() AccSet 100,100;
VelSet 100, 2000; nox:=3;noy:=2;noz:=2;
disx:=100;disy:=100;disz:=100; a1:=1;b1:=1;c1:=1; ENDPROC PROC prg1()
MoveAbsJ home1\\NoEOffs, v1000, z50, pick1; FOR k FROM 1 TO noz DO FOR j FROM 1 TO noy DO FOR i FROM 1 TO nox DO
pickandplace; a1:=a1+1; ENDFOR a1:=1; b1:=b1+1; ENDFOR a1:=1;b1:=1; c1:=c1+1; ENDFOR
MoveAbsJ home1\\NoEOffs, v1000, z50, pick1; ENDPROC PROC pickandplace() MoveJ wating01, v1000, z50, pick1; MoveJ Offs(pPick,0,0,200), v1000, z50, pick1; MoveL pPick, v1000, fine, pick1; Set do1;
MoveL Offs(pPick,0,0,200), v1000, z50, pick1; MoveJ wating01, v1000, z50, pick1; !MoveL pPlace10, v1000, z50, pick1;
pPlace:=Offs(pPlace10,(a1-1)*disx,(b1-1)*disy,(c1-1)*disz); MoveJ Offs(pPlace,0,0,200), v1000, z50 ,pick1; MoveL pPlace, v1000, fine, pick1; Reset do1;
MoveL Offs(pPlace,0,0,200), v1000, fine, pick1; MoveJ wating01, v1000, z50, pick1; ENDPROC endmodule
更多详情:ABB机器人