今天分享一個簡單易學(xué)案例:通過宏程序?qū)崿F(xiàn)刀具壽命管理
要對刀具使用壽命進(jìn)行管理就必須準(zhǔn)確地對刀具所加工的零件數(shù)量進(jìn)行統(tǒng)計,這就涉及到要對刀具加工零件數(shù)量的累計計算。
講程序之前我講兩個知識點,程序中要用到:
一,#3000這個系統(tǒng)變量
二,WHILE….DO語句
一、系統(tǒng)變量#3000
法拉克系統(tǒng)變量 # 3000是用戶自定義的報警變量
格式為:#3000=0~200 ( )
當(dāng)#3000的值為0到200的時候系統(tǒng)會停止運行且報警
說明:
1,0到200是報警號, NC屏幕上顯示報警號為:變量#3000的值加上3000。
2,括號中可以寫報警信息,但是括號中不能操過26個字符。
比如:
%
O0001(PROGRAMED BY SOSCNC)
G0G17G40G49G80G90
T1M06
……
……
……
#3000=1 (YOU MUST CHANGE TOOL)
M30
%
當(dāng)程序運行至#3000=1程序段的時候,系統(tǒng)會停止運行且報警。報警號為:3001 報警信息為:YOU MUST CHANGETOOL (意思是:你必須更換刀具)。
二、WHILE….DO語句
宏程序最常用語句之一WHILE [ ] DO 語句
這個語句是兩個英文單詞,意思是:當(dāng).......的時候就做某事。
法拉克格式為:
WHILE [ ] DO n
……
END n
說明:
1,中括號里面為條件表達(dá)式
2,n——順序號(n只能是1、2 、3, DO后面的順序號要與END后面的順序號一樣)
3,當(dāng)條件表達(dá)式滿足,則執(zhí)行從DO到END之間的程序,否則轉(zhuǎn)至END后面的程序。
例:
WHILE[#10LE#2]DO 1
------
END1
G0X0.Y0.
-----
當(dāng)#10的值小于#2的值時,則執(zhí)行WHILE 至END1之間的程序,否則執(zhí)行END1后面的程序,G0X0.Y0. ……
好了,準(zhǔn)備開始編寫程序
前面講了需要統(tǒng)計刀具加工零件數(shù)量,假設(shè)某零件的一道工序T1刀可加工200件
那么就需要所編制的宏程序可以提醒操作者:在各刀片使用壽命完成后進(jìn)行更換。
也就是說T1號刀加工200件后,程序需要停止,提示操作者更換刀具。
程序如何編寫尼?
上面紅色字體,提供了兩個信息
1,刀具加工200件程序需要停止
2,提示操作者更換刀具
此時正好用我們所學(xué)的WHILE語句來判斷(當(dāng)加工數(shù)量等于我規(guī)定200件的時候,就執(zhí)行報警變量)
那么程序如下:
O0002(主程序名)
(微信SOSCNC)
T0101 S2000 M3;主程序開始,選擇T1刀,開主軸, 準(zhǔn)備加工。
...... (加工內(nèi)容)
......(加工內(nèi)容)
#500=#500+1;T1刀壽命記數(shù)器+1。
WHILE[#500 EQ 200]DO1;對T1刀壽命記數(shù)器數(shù)據(jù)進(jìn)行判斷,如條件滿足執(zhí)行WHILE與END1之間程序段。
#500=0; 刀具壽命記數(shù)器清零。
#3000=1(YOU MUST CHANGE THE TOOL)
END1;
M30;
也就是說我利用了WHILE這個內(nèi)循環(huán)語句(當(dāng)然你也可以用IF等語句),當(dāng)滿足200件,就執(zhí)行刀具計算器清零#500=0;#3000=1程序段。
順便說下記數(shù)器變量設(shè)置需要選用#500~#559帶有記憶功能的變量,這樣程序結(jié)束,甚至關(guān)閉機(jī)床變量仍會保持記錄。
好了,這是去年分享的一篇老文,有價值的東西就要分享,歡迎大家分享到你的朋友圈,讓更多的人學(xué)學(xué),多謝了!
掃一掃微信二維碼
掃一掃微博二維碼