楊 鋒,王建軍,武秋俊,張倩涵,王晉濤
(河北機(jī)電職業(yè)技術(shù)學(xué)院,河北 邢臺(tái) 054000)
數(shù)控宏程序是帶宏變量的數(shù)控程序,宏程序不僅可以用在數(shù)控編程加工,如加工形狀類似,大小不同;形狀相同,位置不同以及特殊公式曲線的圖形;還可以用在自動(dòng)化控制方面,如機(jī)械手換刀、在線測(cè)量等,因此在中小企業(yè)應(yīng)用范圍較廣。
一些中小企業(yè)使用使用的加工中心,多采用盤式刀庫,由于加工中心刀庫電機(jī)功率和刀位尺寸的影響,對(duì)刀具的直徑和重量都有限制,但是實(shí)際數(shù)控加工時(shí),為提高加工效率和加工精度,總會(huì)選擇大直徑和長(zhǎng)度鏜刀刀具,這些刀具找出標(biāo)準(zhǔn)刀庫要求,因此刀具只能手工更換,這樣不經(jīng)濟(jì)也不安全。
通過在加工中心工作臺(tái)上安裝鏜刀刀架,設(shè)計(jì)鏜刀刀架的宏程序控制,實(shí)現(xiàn)鏜刀的自動(dòng)換刀,以提高生產(chǎn)效率和設(shè)備自動(dòng)化程度。
考慮到機(jī)床工作臺(tái)尺寸、機(jī)床工作行程和箱體加工工藝要求,設(shè)計(jì)可安裝兩個(gè)鏜刀刀座的鏜刀刀架、刀座裝有開口卡簧以實(shí)現(xiàn)自動(dòng)換刀。刀架安裝在機(jī)床工作的左上角,編制控制宏程序前要調(diào)試兩個(gè)鏜刀刀座的機(jī)械坐標(biāo)位置。在自動(dòng)換刀時(shí),采用M06 和G65 兩種代碼實(shí)現(xiàn)。一種是加工中心換刀庫刀,指令M06Tk(k 為刀號(hào));另一種是加工中心換鏜刀刀架刀,若主軸上有刀庫刀,先使用M06 把主軸刀還刀刀庫,再調(diào)用宏程序功能換刀。
鏜刀換刀取刀和還刀兩個(gè)環(huán)節(jié),取刀就是把鏜刀從鏜刀刀架取到主軸上,取刀前保證主軸無任何刀具、還有取那一把鏜刀(通過宏程序調(diào)用變量)給定。具體工作過程是Z 軸回到換刀原點(diǎn)、主軸準(zhǔn)停完成后,移動(dòng)到鏜刀刀座圓心坐標(biāo)正上方400mm,Z軸移動(dòng)刀柄合適位置,主軸松刀,主軸繼續(xù)緩慢下移,與刀柄配合完好,等待2 秒,主軸緊刀,抓取鏜刀沿Y 軸負(fù)方向移動(dòng)適當(dāng)距離脫離鏜刀刀架,回到換刀點(diǎn),取刀結(jié)束。還刀是把鏜刀從主軸還回鏜刀刀架,沿取刀過程逆序完成。
宏變量就是帶有#后面跟1~4 為數(shù)字的變量號(hào),例 #20,#500 等,F(xiàn)ANUC 宏變量分為空變量、局部變量、公共變量和系統(tǒng)變量如表1、系統(tǒng)變量分為保持性公共變量和模態(tài)變量等,變量分配見表1。
表1 Fanuc 宏變量表
#100~#199非保持公共變量在不同宏程序數(shù)據(jù)相同,斷電初始化為空#500 可設(shè)置為刀架上的鏜刀刀號(hào),刀號(hào)在機(jī)床斷電位置保持#2000~#2499#500~#999保持型公共變量在不同宏程序數(shù)據(jù)相同,斷電數(shù)據(jù)不丟失刀補(bǔ)系統(tǒng)變量存儲(chǔ)刀具的長(zhǎng)度和磨損補(bǔ)償#2201 表示 1 號(hào)刀刀具長(zhǎng)度補(bǔ)償#4001~#4120模態(tài)變量G 代碼的模態(tài)指令#4001(G00/G01模態(tài)),#4120 主軸刀具刀號(hào)#5001~#5101 位置信息#5021-#5024 機(jī)床坐標(biāo)當(dāng)前位置刀具的機(jī)床坐標(biāo)和工件坐標(biāo)
(1)宏調(diào)用指令格式G65 Pm Ln〈自變量賦值〉,m 表示程序名,n 表示調(diào)用次數(shù),自變量賦值見表2,G65 按照表2 的規(guī)定,將自變量的實(shí)際數(shù)值調(diào)到相應(yīng)的程序體中。例:G65P8004T81 就是調(diào)用O8004 子程序,在O8004 子程序內(nèi)部#20=81。
表2 自變量賦值表
(2)G53 指令格式(G90)G53X_Y_Z_;功能:將主軸移動(dòng)到鏜刀刀架已調(diào)試好的換刀位置(機(jī)床坐標(biāo)系的XYZ 位置)。
(3)#3000 報(bào)警屏幕上顯示報(bào)警號(hào)和報(bào)警信息,報(bào)警號(hào)為#3000 的值加上3000例:#3000=3(Tool Number error),報(bào)警觸發(fā)后屏幕顯示3003Tool Number error
宏程序設(shè)計(jì)分為4 個(gè)程序,一個(gè)主程序O8004,其他3 個(gè)子程序嵌套在主程序里,分別還刀子程序O8005、取刀子程序O8006 和刀架刀座圓心坐標(biāo)子程序O8007。調(diào)用方式取1 號(hào)鏜刀G65P8004T81,取2 號(hào)鏜刀G65P8004T82,還刀不取刀G65P8004。
(1)模態(tài)保護(hù)和恢復(fù)。
#2=#4001(模態(tài)點(diǎn)定位還是直線插補(bǔ)G00/G01)
#3=#4003 (模態(tài)絕對(duì)坐標(biāo)還是增量坐標(biāo)G90/G91)
#4=#4109(進(jìn)給速度)
G#2#3F#4;(恢復(fù)模態(tài))
(2)標(biāo)志位 #500,#4120 和 #20 的含義。
#4120≠0?(表示主軸上有刀庫刀),條件成立,主軸上有刀庫換鏜刀,報(bào)錯(cuò)結(jié)束。
#500=0?(主軸上沒有刀架的鏜刀),條件成立,主軸沒有鏜刀,不用還刀直接取刀。
#20=#0?宏調(diào)用指令是G65P8004,則#20=#0;主軸的鏜刀還回鏜刀刀架后不取刀;指令G65P8004T81,則 #20=81,根據(jù) #500 的值確定是否還刀,還刀結(jié)束后取1 號(hào)鏜刀;G65P8004T82,則#20=82,根據(jù)#500 的值確定是否還刀,還刀結(jié)束后取2 號(hào)鏜刀。
(3)主程序流程圖。
(1)還刀子程序O8005。還刀前若#500=81,調(diào)用O8007 的1 號(hào)鏜刀坐標(biāo)系還刀,若#500=82,調(diào)用O8007 的2 號(hào)鏜刀坐標(biāo)系還刀,還刀完成后#500=0。
(2)取刀子程序 O8006。G65P8004T81 取 1 號(hào)鏜刀,完成后#500=81,G65P8004T82 取2 號(hào)鏜刀,完成后#500=82,G65P8004 只還刀。
(3)鏜刀刀座坐標(biāo)子程序。
O8005(BIG TOOL ATC POSITION DATA)
(T81<-->T82)
IF[#20EQ101]GOTO[101]
IF[#20EQ102]GOTO[102]
GOTO1000
N81(1 號(hào)鏜刀刀座 XYZ 機(jī)床坐標(biāo)值)
#24=-300.243
#25=-700.236
#26=-1433.134
#7=0.0(Z 軸避讓值)
#8=112.(Y 軸避讓值)
GOTO100
N82(1 號(hào)鏜刀刀座XYZ 機(jī)床坐標(biāo)值)
……
N100M99
N1000#3000=3(Tool Number Error)
鏜刀刀架的宏程序在機(jī)床測(cè)試完成后,縮短了單件加工時(shí)間,使企業(yè)利潤(rùn)增加,并降低了工人勞動(dòng)強(qiáng)度;由此得出,宏程序在解決企業(yè)數(shù)控加工、提高機(jī)床自動(dòng)化程度有著不可替代的作用。