■山推工程機(jī)械股份有限公司(山東濟(jì)寧 272100)崔克誠
在工廠的臥式加工中心中,為了增強(qiáng)機(jī)床的行程一般z軸方向會(huì)有一根附加軸。這個(gè)附加軸為主軸鏜桿取名w軸。也有一些機(jī)床為滑枕和鏜桿,不同機(jī)床廠家命名一般不同。有的以滑枕為w軸,有的以鏜桿為w軸。
下面以西門子840D系統(tǒng)的臥式加工中心來進(jìn)行分析。在平時(shí)的程序編制中,在w軸不在其零點(diǎn)位置的時(shí)候,我們要人為的在z軸的坐標(biāo)上加上或減去一個(gè)w軸的長度。這樣在程序修改時(shí)非常麻煩。在編制程序前要了解刀具長度和工件所在的位置以知道w軸要伸出多長。
還有一些場合適合用w軸進(jìn)給,但是在工作的時(shí)候刀具的長度永遠(yuǎn)是補(bǔ)償給z軸的。這時(shí)候就需要暫時(shí)的把w軸交換一下成為z軸。有一些技術(shù)人員喜歡修改PLC或者修改機(jī)床參數(shù),直接把軸命名為z軸。但是這種方法一般比較麻煩。
下面就介紹一下作者自己寫的w軸自動(dòng)補(bǔ)償程序,此程序也有交換w軸的功能。代碼如下:



首先前面的變量和創(chuàng)作時(shí)間和作者不做介紹。STOPRE是為了在補(bǔ)償程序運(yùn)行前了解機(jī)床中正在有效的補(bǔ)償數(shù)據(jù)。以方便補(bǔ)償后如果補(bǔ)償數(shù)值不正確進(jìn)行對比。
為了能正確的讀取各個(gè)軸的正確數(shù)據(jù)讀取數(shù)據(jù)前一定要取消一下軸的交換。
同樣為了使用方便,我們給程序的補(bǔ)償方式設(shè)置一個(gè)默認(rèn)的補(bǔ)償方式,即如果用戶不填補(bǔ)償方式默認(rèn)補(bǔ)償w軸。
從上面的程序上能看出這個(gè)只有兩種補(bǔ)償方式,一個(gè)是補(bǔ)償w軸給z軸,用z軸進(jìn)給;一個(gè)是補(bǔ)償z軸給w軸,用w軸進(jìn)給。但實(shí)際往往要考慮好多因素使程序很復(fù)雜。作者這里只把原理的程序展示一下,講解一下原理。需要注意的是這個(gè)程序直接復(fù)制到機(jī)床上就可以用,能滿足90%的用戶。
首先我們需要讀取在ien坐標(biāo)系中的z軸和w軸的坐標(biāo)來確定需要補(bǔ)償?shù)牧俊H绻覀冞x擇的是補(bǔ)償w軸,那么我們只需要在坐標(biāo)系中把z軸向w軸的反方向偏移一個(gè)量w軸坐標(biāo)量就可以。那么我們到底要在哪個(gè)坐標(biāo)系中偏移呢?
最初作者想到的是直接用trans偏移。因?yàn)槲鏖T子中牽涉的坐標(biāo)系較多,作者當(dāng)時(shí)只了解西門子中的三層坐標(biāo)系。而trans是最簡單最容易理解的。但是他有一個(gè)致命的缺點(diǎn),就是直接影響前后的程序功能。因?yàn)樵谇懊媸褂玫膖rans在此處會(huì)直接取消。而后面只能用附加的atrans或amirror或arot等。基于這些原因作者只好放棄尋找其他的坐標(biāo)系。
后來作者從西門子的標(biāo)準(zhǔn)循環(huán)中以及西門子的系統(tǒng)變量表中找到一個(gè)西門子的循環(huán)坐標(biāo)系。即$P_CYCFRAME這個(gè)坐標(biāo)系,有著復(fù)位后消失的優(yōu)點(diǎn)。即復(fù)位后或者程序結(jié)束后坐標(biāo)系內(nèi)的值全部重置為0。不會(huì)影響下一步或者其他程序的使用。但是后來作者發(fā)現(xiàn)這個(gè)坐標(biāo)系是在trans后面的一個(gè)坐標(biāo)系。如果在前面用他進(jìn)行了補(bǔ)償后,那么后面進(jìn)行坐標(biāo)系的鏡像旋轉(zhuǎn)都是基于g54~g55等坐標(biāo)系的使鏡像旋轉(zhuǎn)后的實(shí)際坐標(biāo)系錯(cuò)誤。作者也只好放棄。
最后作者確定用基準(zhǔn)坐標(biāo)系的程序坐標(biāo)系即$P_BFRAME。優(yōu)點(diǎn)就是復(fù)位后會(huì)復(fù)原為面板設(shè)置的數(shù)據(jù)。再次偏移時(shí)不受上一次偏移的影響。而且因?yàn)槠渌鹓54~g55前幾層的坐標(biāo)系,所以后面的旋轉(zhuǎn)鏡像都是基于后面的總框架,補(bǔ)償前后都不會(huì)對程序鏡像或旋轉(zhuǎn)后的總坐標(biāo)系有影響。但是因?yàn)榭梢栽诿姘逯行薷模允褂玫臅r(shí)候要把原來面板設(shè)置的數(shù)據(jù)級聯(lián)到一起,以保證補(bǔ)償后的坐標(biāo)系正確。
如果用戶使用的是補(bǔ)償z軸給w軸進(jìn)給。那么我們只需要把w軸的零點(diǎn)向當(dāng)前z軸在ien中坐標(biāo)的反方向偏移一下即可。然后我們把w軸交換為第三幾何軸,即在g17中為z軸。那么原來的z軸就成為了z11,w軸就成為了z軸在程序中直接使用即可。
也為了防止使用者在補(bǔ)償方式上寫入錯(cuò)誤的方式,后面設(shè)置了保護(hù)而不是直接結(jié)束程序。
這樣在程序編制的時(shí)候暫時(shí)不需要考慮w軸需要伸出的長度。在程序使用的再設(shè)置長度直接用程序補(bǔ)償,省去修改程序的麻煩。下面展示一個(gè)使用的程序小段。注意bc為本程序名稱。

下面再展示一個(gè)使用交換軸的程序。一般使用w軸做進(jìn)給軸都是w軸需要行程較長的場合。下面是加工兩個(gè)同軸的孔,并且第一個(gè)孔底距離第二個(gè)孔端距離較大。
