周肇元+班帥+化春雷+譚智
摘 要 在SIEMENS 840D/840Dsl的刀具管理基礎(chǔ)上進(jìn)行二次開發(fā),實(shí)現(xiàn)大型刀具的手動(dòng)更換及自動(dòng)刀具補(bǔ)償功能,介紹了設(shè)計(jì)原理及調(diào)試方法。
關(guān)鍵詞 SIEMENS 840D;SIEMENS 840Dsl;刀具管理;手動(dòng)換刀
中圖分類號(hào):TP3 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671-7597(2014)07-0078-01
SIEMENS 840D/840Dsl系統(tǒng)針對(duì)具備刀庫(kù)的復(fù)合型機(jī)床提供一整套強(qiáng)大的刀庫(kù)管理功能。該功能可實(shí)現(xiàn)刀具數(shù)據(jù)的實(shí)時(shí)更新,多刀庫(kù)的動(dòng)態(tài)管理,刀具隨機(jī)尋找空位及自動(dòng)進(jìn)行大小刀躲避。但是在重大型機(jī)床上,對(duì)一些特殊的,只能進(jìn)行手動(dòng)更換的刀具,SIEMENS卻沒有給出相應(yīng)的解決方案。本文以我公司生產(chǎn)的GTM系列龍門移動(dòng)式車銑加工中心為例,通過對(duì)SINUMERIK 840Dsl刀庫(kù)管理功能進(jìn)行二次開發(fā),實(shí)現(xiàn)大型刀具的手動(dòng)更換及自動(dòng)刀具補(bǔ)償。
1 設(shè)計(jì)思路
SIEMENS 840Dsl系統(tǒng)自帶的刀具管理功能大致分為兩大類,一種是主軸直接抓刀,另一種情況是通過機(jī)械手抓刀。GTM系列機(jī)床使用的是第二種換刀方式。在這種情況下,系統(tǒng)中最少需要配置3個(gè)刀庫(kù):鏈?zhǔn)降稁?kù)(刀庫(kù)號(hào)為1),緩沖區(qū)刀庫(kù)(刀庫(kù)號(hào)為9998),裝載點(diǎn)刀庫(kù)(刀庫(kù)號(hào)為9999),如果是多刀庫(kù),相應(yīng)需要增加鏈?zhǔn)降稁?kù)的數(shù)量,圖1中所示為雙刀庫(kù)的情況。
圖1 雙刀庫(kù)換刀示意
緩沖區(qū)刀庫(kù)9998已經(jīng)被SIEMENS預(yù)先定義為主軸位與機(jī)械手位,不允許用戶自行更改。其中(9998,1)為主軸位,(9998,2)為機(jī)械手1位,(9998,2)為機(jī)械手2位。對(duì)于手動(dòng)刀具來說,自然不能將其加載至鏈?zhǔn)降稁?kù)上。通過多次試驗(yàn),我們發(fā)現(xiàn),當(dāng)?shù)毒咛幱诘豆駜?nèi)不在刀庫(kù)表內(nèi)時(shí),系統(tǒng)會(huì)自動(dòng)將該刀具臨時(shí)存放在(9999,1)中。因此,當(dāng)我們?cè)谶M(jìn)行手動(dòng)換刀的操作時(shí),其實(shí)就是將(9999,1)內(nèi)的刀具加載進(jìn)(9998,1)的過程。分析到這里,具體的設(shè)計(jì)方法也就應(yīng)運(yùn)而生了。
要實(shí)現(xiàn)刀具從(9999,1)直接裝載至(9998,1)而不經(jīng)過鏈?zhǔn)降稁?kù)和機(jī)械手,我們要對(duì)原來的負(fù)責(zé)刀具管理功能的PLC及NC程序進(jìn)行修改。其中PLC程序中需要修改FC90與FB90兩個(gè)功能塊,這兩個(gè)功能塊是由SIEMENS標(biāo)準(zhǔn)的刀具管理模塊,F(xiàn)B90的修改方法如下。
1)原程序中預(yù)留了很多個(gè)跳轉(zhuǎn)識(shí)別符,在其中選擇一個(gè)網(wǎng)絡(luò)比如“SS28”,這里主要是為了與FC90進(jìn)行關(guān)聯(lián)。
2)判斷舊刀刀庫(kù)號(hào)是否等于9999,即當(dāng)前主軸刀具是否為手動(dòng)刀具。
3)不論上步的判斷結(jié)果如何,再次判斷新刀刀庫(kù)號(hào)是否等于9999,即當(dāng)前指令刀具是否為手動(dòng)刀具。
4)兩次判斷結(jié)果有5種情況:
①舊刀刀庫(kù)號(hào)為9999,新刀刀庫(kù)號(hào)為9999。即主軸當(dāng)前刀具為手動(dòng)刀具,指令刀具也為手動(dòng)刀具。這種情況下,可直接進(jìn)行手動(dòng)刀具交換。
②舊刀刀庫(kù)號(hào)為9999,新刀刀庫(kù)號(hào)為1。即主軸當(dāng)前刀具為手動(dòng)刀具,指令刀具為自動(dòng)刀具。這種情況下,需要先進(jìn)行手動(dòng)卸刀,然后在進(jìn)行自動(dòng)裝刀。
③舊刀刀庫(kù)號(hào)為1,新刀刀庫(kù)號(hào)為9999。即主軸當(dāng)前刀具為自動(dòng)刀具,指令刀具為手動(dòng)刀具。這種情況下,需要先進(jìn)行自動(dòng)卸刀,將當(dāng)前刀具送回刀庫(kù)內(nèi),然后在進(jìn)行手動(dòng)裝刀。
④舊刀刀庫(kù)號(hào)為0,新刀刀庫(kù)號(hào)為9999。即主軸空刀,指令刀具為手動(dòng)刀具。這種情況下,需要進(jìn)行手動(dòng)裝刀。
⑤舊刀刀庫(kù)號(hào)為9999,新刀刀庫(kù)號(hào)為0。即主軸當(dāng)前刀具為手動(dòng)刀具,系統(tǒng)執(zhí)行的是T0。這種情況下,需要進(jìn)行手動(dòng)卸刀。
5)根據(jù)判斷的結(jié)果,相應(yīng)對(duì)的使用FC8功能塊對(duì)刀具表進(jìn)行刷新,由于篇幅所限,這里就不列出全部的程序內(nèi)容,有需要的讀者可自行聯(lián)系作者。
FC90的修改方法相對(duì)簡(jiǎn)單,只要判斷一下新刀舊刀的刀庫(kù)號(hào)中是否存在9999,如果是,激活相應(yīng)的位使FB90中的程序跳轉(zhuǎn)至“SS28”即可。由于篇幅所限,這里就不列出全部的程序內(nèi)容,有需要的讀者可自行聯(lián)系作者。
NC程序同樣需要修改,原自動(dòng)換刀程序執(zhí)行是由3個(gè)部分組成的:
①T_PREPARE.SPF 備刀程序,通過執(zhí)行T碼調(diào)用。
②TOOL.SPF 換刀主程序,用來判斷換刀方式。
③TOOLAUTO.SPF 自動(dòng)換刀程序,執(zhí)行自動(dòng)換刀,包括機(jī)床軸與刀庫(kù)的定位、機(jī)械手與主軸抓刀等動(dòng)作的控制。
我們需要修改的是換刀主程序TOOL.SPF,原程序中只有對(duì)自動(dòng)換刀方式種類的判別,即判斷出裝刀、卸刀及刀具交換三種情況,現(xiàn)在需要將手動(dòng)換刀的判斷整合進(jìn)去。程序中需要增加的指令相對(duì)復(fù)雜,由于篇幅所限,這里就不列出全部的程序內(nèi)容,有需要的讀者可自行聯(lián)系作者。在這里將比較重要的指令列舉如下:
IF ((_TV==0) AND ($AC_TC_MTO==9999)) GOTOF Auswechseln;手動(dòng)卸刀
IF (($AC_TC_MFN==9999) AND ($AC_TC_MTO==9999)) GOTOF Tauschen ;手動(dòng)換刀
IF $A_TOOLMN[_TV]==0 GOTOF Einwechseln;手動(dòng)裝刀
2 功能調(diào)試
程序修改完成后,確保其無(wú)誤,并分別下載至PLC/NC內(nèi)。然后在系統(tǒng)刀具表內(nèi)建立手動(dòng)刀具,建立方法與自動(dòng)刀具相同。建立好刀具后,注意不要將其加載至鏈?zhǔn)降稁?kù)內(nèi)。
先執(zhí)行備刀指令T=“xxx”,再執(zhí)行換刀主程序“TOOL”。此時(shí)如果主軸當(dāng)前到或者指令刀中有手動(dòng)刀具,NC程序經(jīng)過判斷后會(huì)執(zhí)行M0中斷程序,等待用戶進(jìn)行手動(dòng)換刀,當(dāng)用戶更換完刀具后,再次按下循環(huán)啟動(dòng)按鍵,刀庫(kù)表隨機(jī)會(huì)進(jìn)行自動(dòng)更新,使用刀具從(9999,1)裝載至(9998,1)。
3 結(jié)束語(yǔ)
本文對(duì)SIEMENS 840D/840Dsl數(shù)控系統(tǒng)的刀庫(kù)管理功能進(jìn)行了二次開發(fā),實(shí)現(xiàn)了手動(dòng)刀具的自動(dòng)管理,效果良好。
基金項(xiàng)目
國(guó)家重大科技專項(xiàng)。
課題名稱:高速/復(fù)合數(shù)控機(jī)床及關(guān)鍵技術(shù)創(chuàng)新能力平臺(tái)。
課題編號(hào):2011ZX04016-021。
參考文獻(xiàn)
[1]SINUMERIK 840D sl Special Functions 2013.6.
[2]SINUMERIK 840D sl / 828D Basic Functions 2013.6.
[3]SINUMERIK 840D sl / 828D Extended Functions 2013.6.
作者簡(jiǎn)介
周肇元(1982-),男,工程師,現(xiàn)任職于沈陽(yáng)機(jī)床(集團(tuán))有限責(zé)任公司,主要從事數(shù)控機(jī)床電氣設(shè)計(jì)工作。endprint