Macro library

Русский

O9017.nc

%
O9017(DRILLING CYCLE)

#180=#26( -Z- ENDING HOLE)
#181=#18( -R- START HOLE)
#182=#9( -F- FEED SPEED)
#183=#17( -Q- STEP)
#184=#20( -T- TIME IN ENDING HOLE)
#185=#23( -W- TIME IN BEFORE HOLE)
#186=#5002(START POSITION =ABS Z AXIS=)
#187=1000.(FEED RAPID MM/MIN)
#188=0.5(SELF LEGHT)
#189=0.1(MAX FEED SPEED)


(===== DEFAULT =====)
#190=#186(DEFAULT START HOLE)
IF[#181NE#0]THEN#190=#181(DEFAULT START HOLE)
IF[#183EQ#0]THEN#183=#180(DEFAULT STEP)
IF[#184EQ#0]THEN#184=0(DEFAULT TIME IN ENDING HOLE)
IF[#185EQ#0]THEN#185=0(DEFAULT TIME IN BEFORE HOLE)
(===== END =====)


(===== CHECK VARIABLES =====) 
IF[#180GE#186]THEN#3000=1(-Z- MORE START POSITION)
IF[[#181LT#186]AND[#181NE#0]]THEN#3000=2(-R- LESS ENDING HOLE)
IF[#182GT#189]THEN#3000=3(-F- FEED SPEED TOO MUCH)
IF[#183LE0]THEN#3000=4(-Q- WRON STEP)
IF[#184LT0]THEN#3000=5(-T- WRONG STOP TIME)
IF[#185LT0]THEN#3000=6(-W- WRONG STOP TIME)
(===== END =====)


(===== DRILLING CYCLE =====)
#191=#190(POSITION LAST DRILLING)
#192=#190-#183(CONTER)
WHILE[#192GE#180]DO1
#193=#191+#188(SELF POSITION LAST DRILLING)
IF[#193EQ[#190+#188]]THEN#193=#190(SELF POSITION LAST DRILLING FO FERS RUN)
G98G1Z#193F#187
G99G1Z[#192]F#182
G4X#184(PAUSE INSIDE)
G98G1Z#190F#187
IF[#192EQ#180]THEN#185=0(RESET PAUSE)
G4X#185(PAUSE OUTSIDE)
#191=#192(DEEP FOR LAST DRILLING)
#192=#192-#183
IF[[#192LT#180]AND[#192GT[#180-#183]]]THEN#192=#180
END1
G0Z#186
(===== END =====)


G99
M99
%