李寧寧
沈陽(yáng)機(jī)床(集團(tuán))有限責(zé)任公司 遼寧沈陽(yáng) 110042
剛性攻螺紋是將主軸旋轉(zhuǎn)與刀具進(jìn)給同步化,以匹配特定的螺紋螺距,但在實(shí)際生產(chǎn)中存在機(jī)床無(wú)法與絲錐螺距精確匹配的問(wèn)題,機(jī)床所加工的螺紋與絲錐實(shí)際螺距之間總存在細(xì)微的差異。在剛性攻螺紋時(shí),主軸處于與刀具軸插補(bǔ)的位置控制模式,主軸進(jìn)給倍率為100%,通過(guò)控制改變倍率的方法不能減少扭矩,由于攻螺紋工藝的特殊性,也不能直接停止刀具軸或主軸來(lái)實(shí)現(xiàn)過(guò)扭矩保護(hù)。一旦出現(xiàn)問(wèn)題,絲錐會(huì)斷在工件中,退出絲錐會(huì)浪費(fèi)很長(zhǎng)時(shí)間,并造成經(jīng)濟(jì)損失。較好的方案為:在攻螺紋狀態(tài)下,出現(xiàn)過(guò)載狀態(tài)時(shí),按照與當(dāng)前進(jìn)給路徑相反的方向回退。
西門子數(shù)控系統(tǒng)具備異步子程序功能,根據(jù)不同的優(yōu)先級(jí),在所有操作方式下的同步動(dòng)作及異步子程序(ASUP)的手動(dòng)、自動(dòng)等各種操作模式,可以利用PLC信號(hào)等外部事件觸發(fā)相關(guān)的異步子程序,實(shí)現(xiàn)異步動(dòng)作[1-3]。通過(guò)西門子提供的異步子程序功能,可以直接讀取主軸扭矩等各種狀態(tài),當(dāng)主軸在剛性攻螺紋的過(guò)程中過(guò)載時(shí),處理刪除剩余加工的指令就可以實(shí)現(xiàn)該動(dòng)作。
異步子程序功能又稱跨運(yùn)行方式的操作功能,是選項(xiàng)功能,訂購(gòu)數(shù)控系統(tǒng)時(shí)需要訂購(gòu)此選項(xiàng)功能,并在數(shù)控系統(tǒng)授權(quán)界面進(jìn)行授權(quán)和設(shè)置,如圖1紅框中所示。
圖1 選項(xiàng)功能授權(quán)和設(shè)置示意
編寫子程序需要讀取主軸的當(dāng)前狀態(tài)、主軸各檔位的扭矩值等,還需要定義一些中間變量用于子程序執(zhí)行條件的判斷等,涉及到的變量主要如下。
$AC_SPIND[1];當(dāng)前主軸的狀態(tài)
$AA_TORQUE[SP1];主軸實(shí)時(shí)扭矩
$AC_SGEAR[1];當(dāng)前主軸檔位
$AC_TIMER[1];時(shí)間計(jì)數(shù)器
DELDTG(Z1);刪除Z1軸余程
RDISABLE;讀入禁止
R190;R變量,此處定義為主軸實(shí)時(shí)扭矩
R191;R變量,主軸低檔時(shí)的扭矩極限值
R192;R變量,主軸高檔時(shí)的扭矩極限值
R193;R變量,主軸的扭矩極限值
R194;R變量,主軸超扭矩標(biāo)志位
異步子程序激活的同步動(dòng)作在零件程序的程序段中有固定的句法定義,在程序段中不可以編寫其他與同步動(dòng)作無(wú)關(guān)的指令。子程序編寫要求見表1。
表1 子程序編寫要求
根據(jù)上述句法定義要求,我們需要編寫的程序具體如下。本文中程序的名稱設(shè)定為“Raping”,分號(hào)后為前一句程序的解釋說(shuō)明。
IDS=1
WHENEVER $AC_SPIND[1]<>8 DO $R194=0
;如果主軸在非剛性攻螺紋狀態(tài)下,復(fù)位變量R194
IDS=2
DO $R190=$AA_TORQUE[SP1]
;將主軸扭矩實(shí)時(shí)映射到R190
IDS=3
WHENEVER $AC_SGEAR[1]==1 DO $R193=$R191
;如果當(dāng)前主軸檔位是低檔,將變量R191中的數(shù)值賦給變量R193
IDS=4
WHENEVER $AC_SGEAR[1]==2 DO $R193=$1R92
;如果當(dāng)前主軸檔位是高檔,將變量R192中的數(shù)值賦給變量R193
WHEN $AC_SPIND[1]==8 AND ($R190>$R193) DO $R194=1 $AC_TIMER[1]=1
;如果在剛性攻螺紋過(guò)程中,主軸的實(shí)際扭矩高于設(shè)定值,則啟動(dòng)時(shí)間計(jì)數(shù)器,同時(shí)將變量R194賦值為1
WHEN $AC_SPIND[1]==8 AND $AC_TIMER[1]>=0.6 DO DELDTG(Z1) $AC_TIMER[1]=-1
;如果主軸實(shí)際扭矩高于設(shè)定值的時(shí)間超過(guò)0.6s,則刪除進(jìn)刀軸剩余的加工,時(shí)間清0
WHEN $AC_SPIND[1]==8 AND $AC_TIMER[1]>=0.6 DO DELDTG
;在剛性攻螺紋過(guò)程中,如果主軸實(shí)際扭矩高于設(shè)定值的時(shí)間超過(guò)0.6s,則刪除所有軌跡剩余的加工
WHEN $AC_SPIND[1]==8 AND $AC_TIMER[1]>=0.6 DO RDISABLE
;在剛性攻螺紋過(guò)程中,主軸實(shí)際扭矩高于設(shè)定值的時(shí)間超過(guò)0.6s時(shí),讀入禁止
WHEN $AC_SPIND[1]==8 AND $AC_TIMER[1]>=0.6 DO $R194=0
;在剛性攻螺紋過(guò)程中,主軸實(shí)際扭矩高于設(shè)定值的時(shí)間超過(guò)0.6s時(shí),變量R194清0
WHEN $AC_SPIND[1]==8 AND($R190<$R193) DO STOPREOF $R194=0
;在剛性攻螺紋狀態(tài)下,如果主軸實(shí)際扭矩小于設(shè)定扭矩,則變量R194清0
M17
;子程序結(jié)束
程序中調(diào)用相關(guān)參數(shù)的方式如下。
MD10715
$MN_M_NO_FCT_CYCLE[1]=85
;調(diào)用子程序的M碼
MD10716 $MN_M_NO_FCT_CYCLE_NAME[1]=Raping
;調(diào)用子程序的名稱
MD36730 $MA_DRIVE_SIGNAL_TRACKING[AX8]=1
;主軸軸號(hào)
MD20108 $MC_PROG_EVENT_MASK=H9
;PROG_EVENT程序執(zhí)行方式
通過(guò)異步子程序功能的分析和應(yīng)用,對(duì)剛性攻螺紋實(shí)現(xiàn)了預(yù)見性的保護(hù),有效防止了刀具損壞或工件報(bào)廢情況的發(fā)生,減少了不必要的經(jīng)濟(jì)損失,提升了產(chǎn)品品質(zhì)。
20221210