相信大家在新架機的時候,都有遇到需要手動將上一個產品加工所留下來的數據清零的動作,比如上一個產品所用的刀長;刀補;原點;宏變數等一些其他數據。如果每個數據都手動來清零是不是就會很麻煩了呢?那麼鑒於此,為了減少大家的工作量,提升我們的工作效率為目的而開發設計的本套宏程序,希望對大家工作上會有所幫助!

宏程序解釋說明

使用方法:G65 P8581 E500. R500. Q999.

E:清零數據類型識別碼。(21為清零刀具數據、如刀長;刀長磨損;刀補;刀補磨損;54為清零坐標原點G54-G59) 154為清零擴展坐標原點(G54.1P1-P48)500為清零宏變數;此數據若不為21;54;154;500程序則報警。

R:清零數據起始值。(R500.即表示從#500變數開始清零)

Q:清零數據結束值。(Q999.即表示清零至#999變數結束)

注意

當程序出現3001(E ERROR)報警時,請檢查E值是否設置正確;

當程序出現3099(SET ERROR)報警時,請檢查R Q 值是否設置正確;

以下為宏程序主體

%

O8581 (G65 P8581 E R Q)IF[#17 EQ #18] GOTO9999IF[#18 EQ #0] GOTO9999IF[#17 EQ #0] GOTO9999IF[#18 GE #17.] GOTO9999IF[#8 EQ #0] GOTO9999IF[#8 EQ 21.] GOTO21

IF[#8 EQ 54.] GOTO54

IF[#8 EQ 154.] GOTO154IF[#8 EQ 500.] GOTO500#3000=1(E ERROR)N21(TOOL DATA)IF[#17 GT 99.] GOTO9999IF[#17 LE #18] GOTO9999WHILE[#18 LE #17]DO1#6=10.WHILE [#6 LE 13.] DO2

G90 G10 L#6 P#18 R0.0

#6=#6+1.END2#18=#18+1.END1M30N54(G54-G59)IF[#18 LT 54.] GOTO9999

IF[#18 EQ 59.] GOTO9999

IF[#17 GT 59.] GOTO9999

GOTO[#18+10.]

N64 #6=1.GOTO80N65 #6=2.GOTO80N66 #6=3.GOTO80N67 #6=4.GOTO80N68 #6=5.

GOTO80

N80WHILE[#18 LE #17]D01G90 G10 L2 P[#6] X0. Y0. Z0.

#6=#6+1.

#18=#18+1.END1M30N154(G54.1P...)IF[#17 GT 48.] GOTO9999

WHILE [#18 LE #17] DO1

#5=1WHILE[#5 LE 4.] DO2#[[7000+[#18*20.-20.]]+#5]=0.0#5=#5+1.END2#18=#18+1.END1M30N500 (MARCO 0)

IF[#18 LT 100.] GOTO9999

IF[#17 LE #18] GOTO9999IF[#17 GE 1000.] GOTO9999WHILE[#18 LE #17]DO1#[#18]=0.0#18=#18+1.END1M30N9999#3000=99(SET ERROR)

(Tue Aug 25 13:33:46 2017)

(Tel-13826552493---Dream Catcher)(CAM Engineer-LENS-DT001267)%

以下為程序上CNC實踐效果

如上圖所示,若需將#800——#899變數清空。

可編程:G65 P8581 E500. R800. Q899.

啟動以上程序即可全部清空#800——#899變數。如下圖所示:

若您有好的建議、好的方法歡迎大家提出(直接回複本公眾號即可)謝謝!

公眾號:CNCSKBC


推薦閱讀:
相关文章