L6.SPF
N10 PROC L6 SBLOF DISPLOF SAVE;
N20 DEF INT _ACT,_NWT ; Integer Active Tool Data;
N30 STOPRE;
N40 GETSELT(_NWT) ; Order Tool Number;
N50 _ACT=$TC_MPP6[9998,1] ; Current Tool Number;
N60 IF(($P_SIM==1) OR ($P_ISTEST==1)) GOTOF END1;
N70 IF (($P_SEARCH==0) AND (_NWT==_ACT) AND (_NWT>0) AND (_ACT>0)) GOTOF INFO1;
N80 IF (($P_SEARCH==0) AND (_NWT==_ACT) AND (_NWT==0) AND (_ACT==0)) GOTOF INFO2;
N90 IF (($TC_MPP4[9998,2]<>0) AND ($TC_MPP4[9998,3]<>0)) GOTOF NOERR;
N100 MSG("*** 机械手上有刀具,不能运行程序。请取下机械手上的刀具 ***");
N110 LOOP;
N120 G4F1;
N130 ENDLOOP;
N140 NOERR:;
N150 STOPRE ;
N160 MCALL;
N170 G40;
N180 D0;
N190 SPOSA=$MN_USER_DATA_FLOAT[0];
N200 G153 G0 G90 Z=$MN_USER_DATA_FLOAT[1];
N210 WAITS;
N220 STOPRE;
N230 END1:;
N240 M206 ; Tool Change Order;
N250 STOPRE;
N260 SETPIECE(1);
N270 M17;
N280 INFO1:MSG("**** 无换刀动作原因:编程刀具号 = 主轴刀具号 ****");
N290 G04F3;
N300 MSG("");
N310 M17
N320 INFO2:MSG("**** 无换刀动作原因:主轴上无刀 ****")
N330 G04F3;
N340 MSG("");
N350 M17;