呂鳳玉,賀成柱 ,茍衛(wèi)東
(1.甘肅省機(jī)械科學(xué)研究院,蘭州 730030;2.青海一機(jī)數(shù)控機(jī)床有限公司,西寧 810018)
立式加工中心熱誤差補(bǔ)償系統(tǒng)開(kāi)發(fā)*
呂鳳玉1,賀成柱1,茍衛(wèi)東2
(1.甘肅省機(jī)械科學(xué)研究院,蘭州 730030;2.青海一機(jī)數(shù)控機(jī)床有限公司,西寧 810018)
為有效抑制熱誤差對(duì)立式加工中心定位精度的影響,文章采用高精度單片機(jī)、高速數(shù)字位移傳感器和溫度傳感器構(gòu)建溫度與熱誤差硬件檢測(cè)系統(tǒng),采用keil C 51開(kāi)發(fā)熱誤差補(bǔ)償軟件?;贛ATLAB曲線擬合功能建模,用最小二乘法進(jìn)行多項(xiàng)式擬合,建立機(jī)床熱敏感點(diǎn)溫升與變形量的函數(shù)關(guān)系。采用并行通信技術(shù),將誤差計(jì)算結(jié)果輸出到機(jī)床NC控制系統(tǒng),實(shí)現(xiàn)機(jī)床零點(diǎn)熱誤差實(shí)時(shí)補(bǔ)償。
立式加工中心;熱誤差;軟件補(bǔ)償;并行通信
立式加工中心工件夾裝定位方便、結(jié)構(gòu)簡(jiǎn)單、價(jià)格較低,在微電子、汽車、航空航天、武器制造等工業(yè)領(lǐng)域的機(jī)械零件加工中應(yīng)用廣泛。在零件實(shí)際加工過(guò)程中,機(jī)床定位精度受數(shù)控機(jī)床機(jī)械結(jié)構(gòu)的幾何誤差、檢測(cè)系統(tǒng)誤差、熱變形誤差、伺服系統(tǒng)誤差及外界干擾誤差等因素的影響,直接影響到零件的加工精度。據(jù)統(tǒng)計(jì)資料顯示,數(shù)控機(jī)床由于熱誤差引起的加工誤差約占總加工誤差的40%~70%,有些超精密機(jī)床高達(dá)到89%。因此在不改變機(jī)床結(jié)構(gòu)和制造精度基礎(chǔ)上,如何有效的控制機(jī)床熱誤差是當(dāng)前亟待解決的問(wèn)題。
首先,提高機(jī)床的精度,國(guó)內(nèi)外采用的是誤差防止法和誤差補(bǔ)償法。文獻(xiàn)[1]通過(guò)大量分析后提出熱誤差實(shí)時(shí)補(bǔ)償技術(shù)是一種經(jīng)濟(jì)而有效的方法。其次,建立誤差補(bǔ)償模型,有的用多體系理論[2-3],有的用多元線性回歸方法[4-5]來(lái)建立誤差模型,文獻(xiàn)[6]總結(jié)并提出利用最小二乘法對(duì)誤差模型參數(shù)進(jìn)行辨識(shí),能簡(jiǎn)單有效解決機(jī)床誤差建模問(wèn)題。最后,實(shí)施誤差補(bǔ)償策略,通用性好的方法是文獻(xiàn)[7]中提到的接口技術(shù),將誤差計(jì)算結(jié)果輸出到機(jī)床控制系統(tǒng),改變坐標(biāo)驅(qū)動(dòng)量來(lái)實(shí)現(xiàn)誤差修正,從而提高機(jī)床定位精度。
某加工中心在長(zhǎng)時(shí)間運(yùn)行之后,被加工零件的軸向尺寸發(fā)生變化,進(jìn)行測(cè)試分析后,初步確定是主軸箱溫度變化引起的熱膨脹。針對(duì)上述問(wèn)題,本文采用高精度單片機(jī)、高速數(shù)字位移傳感器和溫度傳感器構(gòu)建溫度與熱誤差硬件檢測(cè)系統(tǒng),采用keil C 51開(kāi)發(fā)熱誤差補(bǔ)償軟件,實(shí)現(xiàn)了加工中心Z軸熱變形零點(diǎn)誤差的有效控制。
1.1 系統(tǒng)硬件設(shè)計(jì)
為實(shí)現(xiàn)加工中心主軸箱微小變形、熱源處溫度及環(huán)境溫度的準(zhǔn)確檢測(cè),在系統(tǒng)硬件設(shè)計(jì)方面進(jìn)行了如下的設(shè)計(jì)和選型。系統(tǒng)終端設(shè)備要求高速、低功耗、強(qiáng)抗干擾性,選用宏晶生產(chǎn)的STC12C5A60S2單片機(jī),采集速度比普通8051 單片機(jī)快8~12 倍,5VDC直流電源為其供電。前期初步測(cè)試,主軸箱變形量最大可達(dá)0.131mm,選用基恩士公司的EX-305V型渦電流位移傳感器及EX-V01型控制器采集變形量,測(cè)量范圍是1mm,分辨率是0.4μm,在主軸箱側(cè)面開(kāi)孔固定一個(gè)支架進(jìn)行安裝。溫度傳感器要求體積小、螺紋固定安裝,測(cè)溫范圍是-20~+80℃,24VDC直流電源為其供電。選用北京昆侖中大工控技術(shù)發(fā)展有限公司的KZWP01L5型螺釘頭溫度傳感器和KZWHPt3V3型溫度變送器,輸出0-5V電壓信號(hào),選用高溫阻燃屏蔽導(dǎo)線提高信號(hào)的抗干擾能力。
文獻(xiàn)[8]詳細(xì)介紹了工控過(guò)程使用較多的串口通訊方法,機(jī)床CNC裝置采用FANUCA公司的PLC控制系統(tǒng),無(wú)預(yù)留異步串行接口接收補(bǔ)償量,輸出信號(hào)只能通過(guò)并行I/O口接入加工中心。單片機(jī)輸出信號(hào)是TTL電平,+5V為邏輯正,0V為邏輯負(fù),PLC DI接口電路是漏極PNP型場(chǎng)效應(yīng)管,DC24V高電平輸出,+24V為邏輯正,0V為邏輯負(fù)。由于兩側(cè)的電平不匹配,需接入一塊光電信號(hào)隔離接口板。主軸箱最大變形量擴(kuò)大1000倍后是131mm,8位二進(jìn)制數(shù)即可表示。在單片機(jī)端通過(guò)8個(gè)通用I/O口輸出,在PLC端通過(guò)8個(gè)DI口接收,選用8通道5~24V輸入/輸出接口板。機(jī)床控制原件通過(guò)標(biāo)準(zhǔn)32mm卡軌安裝,將溫度變送器、補(bǔ)償裝置安裝在機(jī)床控制柜中。
系統(tǒng)由溫度檢測(cè)元件,補(bǔ)償模塊和機(jī)床CNC裝置組成,溫度檢測(cè)元件采集敏感點(diǎn)溫度和環(huán)境溫度,將溫度信號(hào)輸入補(bǔ)償裝置,經(jīng)過(guò)處理計(jì)算后,將變形量輸出到機(jī)床CNC裝置。系統(tǒng)結(jié)構(gòu)如圖1示。
圖1 系統(tǒng)結(jié)構(gòu)圖
1.2 系統(tǒng)總體功能設(shè)計(jì)
本系統(tǒng)首先確定引起主軸變形的溫度熱敏感點(diǎn),在如圖2所示位置安裝溫度傳感器,從測(cè)試結(jié)果分析得出與變形關(guān)系最大的熱敏感點(diǎn),同時(shí)要完成主軸箱變形量的采集。其次,建立機(jī)床Z軸熱敏感點(diǎn)溫升x(即Z軸熱敏感點(diǎn)位置溫度與環(huán)境位溫度差)與Z軸變形量y間的關(guān)系。將這些實(shí)驗(yàn)數(shù)據(jù)運(yùn)用MATLAB曲線擬合功能建模,用最小二乘法進(jìn)行多項(xiàng)式擬合。為了保證數(shù)據(jù)擬合的精度,減小數(shù)據(jù)回歸誤差,對(duì)測(cè)試數(shù)據(jù)分別進(jìn)行2-5階擬合誤差和擬合誤差百分比的計(jì)算,確定擬合效果最好的多項(xiàng)式階數(shù)。最后由單片機(jī)及外圍設(shè)備構(gòu)成的補(bǔ)償裝置完成溫升x與變形量y關(guān)系曲線的存儲(chǔ);補(bǔ)償量的輸出;實(shí)時(shí)采集數(shù)據(jù)的查詢、存儲(chǔ)、刪除等功能。
圖2 測(cè)點(diǎn)位置示意圖
在立式加工中心熱誤差補(bǔ)償系統(tǒng)開(kāi)發(fā)過(guò)程中,利用keil C 51開(kāi)發(fā)工具編寫系統(tǒng)程序。采用模塊化設(shè)計(jì)思想,實(shí)現(xiàn)系統(tǒng)功能。在windows操作環(huán)境下,通過(guò)PC機(jī)RS232接口,利用軟件仿真工具STC-ISP將程序下載燒錄到MCU中。
系統(tǒng)主要功能模塊包括:初始化串口、初始化ADC、ADC轉(zhuǎn)換、變形量計(jì)算、串口發(fā)送、并口發(fā)送六部分。軟件整體流程如圖3所示。
圖3 軟件流程圖
2.1 串口初始化模塊
串口一方面用于程序的下載,另一方面通過(guò)STC-ISP軟件自帶串口助手,顯示記錄串口接收的溫度值與變形量,方便現(xiàn)場(chǎng)調(diào)試與測(cè)試。串口通訊速率設(shè)為9600bps,數(shù)據(jù)傳輸格式為n 8 1(無(wú)奇偶校驗(yàn)位、8位數(shù)據(jù)位、1位停止位)。數(shù)據(jù)幀結(jié)構(gòu)為aa 55 d1 d2 d3 d4 CRC fe,aa 55為幀頭,d1為熱敏點(diǎn)溫度,d2為環(huán)境溫度,d3為溫度差,d4變形量,CRC為校驗(yàn)碼,fe為幀尾。部分程序代碼如下:
void Init_Serial()//初始化串口
{
//設(shè)置波特率為9600,通過(guò)設(shè)置定時(shí)器1的工作方式和初始值
TMOD=0x20;
TH1=TL1=256-(FOSC/12/32/BAUD);
//設(shè)置串行口工作方式
SCON=0X50;
PCON=0X00;
TR1=1;
ES=1;
EA=1;
}
2.2 ADC轉(zhuǎn)換模塊
單片機(jī)A/D數(shù)據(jù)采集有中斷和查詢兩種方式,本系統(tǒng)采用查詢方式來(lái)實(shí)現(xiàn),其中ADCFLAG為轉(zhuǎn)換結(jié)束標(biāo)志,供CPU查詢A/D轉(zhuǎn)換是否結(jié)束。通過(guò)控制寄存器P1ASF,設(shè)置P1口所有IO口為AD輸入模式,10位A/D轉(zhuǎn)換結(jié)果分2bytes存放,高2位放在高位寄存器ADC_RES中,低8位放在低位寄存器ADC_RESL中。初始化ADC及ADC轉(zhuǎn)換部分程序代碼如下:
void Init_Adc()//ADC初始化程序
{
P1ASF=0XFF;//所有P1口的IO口設(shè)置為AD輸入模式
ADC_RES=0;//清高位寄存器
ADC_RESL=0;//清低位寄存器
ADC_CONTR=ADC_PWR|ADC_START|ADC_SPEEDA;//打開(kāi)ADC電源
_nop_();//短暫延時(shí)
AUXR1|=0X04;//ADC_RES=high2,ADC_RESL=low8;
}
void RUN_Adc(uchar CH) //ADC轉(zhuǎn)換程序
{
ADC_CONTR=ADC_PWR|ADC_START|ADC_SPEEDA|CH;//開(kāi)電源,速度0,通道X,啟動(dòng)ADC
delay(5);
while((ADC_FLAG&0X10)==0);//等待ADC數(shù)模轉(zhuǎn)換結(jié)束
ADC_CONTR&=0XEF;//轉(zhuǎn)換結(jié)束,清ADCFLAG
WD[CH][0]=ADC_RES;//獲取10位ADC數(shù)據(jù)的高2位
WD[CH][1]=ADC_RESL;//獲取10位ADC數(shù)據(jù)的低8位
}
初始化ADC后,進(jìn)行溫度值采集轉(zhuǎn)換,轉(zhuǎn)換結(jié)果代入擬合多項(xiàng)式計(jì)算Z軸變形量,通過(guò)P2口輸入到機(jī)床PLC控制系統(tǒng)。在代入溫升x與變形量y擬合多項(xiàng)式之前,選擇升溫或降溫(回退)曲線輸出,通過(guò)當(dāng)前溫升與前一溫升做差判斷,差值>0,機(jī)床處于升溫階段;差值<0,機(jī)床處于降溫階段;差值=0,輸出前一變形量。
系統(tǒng)實(shí)驗(yàn)分兩步完成,實(shí)驗(yàn)一測(cè)量機(jī)床原始數(shù)據(jù),實(shí)驗(yàn)二驗(yàn)證系統(tǒng)有效性。
3.1 實(shí)驗(yàn)一測(cè)量機(jī)床原始數(shù)據(jù)
對(duì)立式加工中心主軸箱及主軸上分布的6個(gè)點(diǎn)進(jìn)行測(cè)試,溫度變化范圍最大的點(diǎn)即為Z軸熱變形敏感點(diǎn)。通過(guò)對(duì)測(cè)試數(shù)據(jù)進(jìn)行分析,A點(diǎn)溫度變化范圍(16.0℃)最大,確定A點(diǎn)為熱敏感點(diǎn)。建立A點(diǎn)溫升與Z軸變形量的2-5階擬合多項(xiàng)式,計(jì)算各多項(xiàng)式階擬合誤差,部分計(jì)算結(jié)果如表1所示:
表1 測(cè)試數(shù)據(jù)2-5階回歸誤差計(jì)算表
計(jì)算結(jié)果說(shuō)明,隨擬合階數(shù)n的減小回歸誤差都在減小,減小多項(xiàng)式的擬合階數(shù),可減小擬合數(shù)據(jù)的回歸誤差,此機(jī)床采用2階多項(xiàng)式擬合效果最好。
升溫過(guò)程溫升和變形量關(guān)系式為:y=-0.0006x2+0.0180x-0.0036,擬合誤差平方和r=1.0461e-004;降溫過(guò)程溫升和變形量關(guān)系式為:y=0.0005x2+0.0009x+0.0158,擬合誤差平方和r=1.7048e-004,擬合曲線如圖4示。r值都接近于0,說(shuō)明模型選擇和擬合度好,數(shù)據(jù)預(yù)測(cè)模塊成功。
圖4 測(cè)量數(shù)據(jù)擬合曲線
3.2 實(shí)驗(yàn)二驗(yàn)證系統(tǒng)有效性
在導(dǎo)入溫升與變形量模型后,通過(guò)補(bǔ)償模塊實(shí)時(shí)輸出變形量到機(jī)床PLC控制系統(tǒng),DI口接收8位二進(jìn)制數(shù)據(jù)。由于光電隔離接口板電路結(jié)構(gòu)原因,DI口接收的二進(jìn)制數(shù)據(jù)與單片機(jī)P2口輸出的二進(jìn)制數(shù)據(jù)電平相反。NC裝置將DI口接收的8位二進(jìn)制數(shù)據(jù)取反,代入公式(D7×27+D6×26+D5×25+D4×24+D3×23+D2×22+D1×21+D0×20)/1000得到擬合變形量,并將誤差結(jié)果返回到NC裝置,NC裝置將誤差反向疊加到當(dāng)前插補(bǔ)過(guò)程,實(shí)現(xiàn)主軸零點(diǎn)誤差修正。
驗(yàn)證過(guò)程中,系統(tǒng)每隔1分鐘采集一次熱敏點(diǎn)溫度與環(huán)境溫度,NC裝置每隔10分鐘反向修正一次主軸零點(diǎn)誤差,位移傳感器固定在主軸側(cè)面實(shí)時(shí)測(cè)量主軸的變形。
在不改變機(jī)床結(jié)構(gòu)和制造精度基礎(chǔ)上,此系統(tǒng)通過(guò)對(duì)機(jī)床加工過(guò)程的零點(diǎn)誤差熱敏點(diǎn)分析、建模,實(shí)時(shí)計(jì)算出加工點(diǎn)的零點(diǎn)位置誤差,并反饋到機(jī)床NC裝置,提高了機(jī)床定位精度。實(shí)驗(yàn)結(jié)果表明,此系統(tǒng)具有成本低、功能易實(shí)現(xiàn)、體積小、現(xiàn)場(chǎng)安裝方便等優(yōu)點(diǎn),可有效控制機(jī)床熱變形,實(shí)現(xiàn)機(jī)床零點(diǎn)誤差實(shí)時(shí)補(bǔ)償。
[1] 李小彭,劉春時(shí),馬曉波,等.數(shù)控機(jī)床加工精度提高技術(shù)的進(jìn)展及其存在的問(wèn)題[J].組合機(jī)床與自動(dòng)化加工技術(shù),2010(11):1-4.
[2] 范晉偉,雒駝,李云,等.臥式加工中心誤差建模與補(bǔ)償技術(shù)的研究[J].組合機(jī)床與自動(dòng)化加工技術(shù),2012(11):8-11.
[3] 劉又午,章青,趙小松,等.數(shù)控機(jī)床全誤差模型和誤差補(bǔ)償技術(shù)的研究[J].制造技術(shù)與機(jī)床,2003(7): 46-50,74.
[4] 楊慶東,C.范丹伯格, P.范赫里克,等.數(shù)控機(jī)床熱誤差補(bǔ)償建模方法[J]。制造技術(shù)與機(jī)床,2000(2): 13-16,3.
[5] 王新,滿蛟,穆塔里夫·阿赫邁德.加工中心主軸熱誤差的分析與建模[J].組合機(jī)床與自動(dòng)化加工技術(shù)2005(7): 46-47,51.
[6] 劉又午,章青,王國(guó)鋒,等.數(shù)控機(jī)床誤差補(bǔ)償技術(shù)及應(yīng)用發(fā)展動(dòng)態(tài)及展望[J].制造技術(shù)與機(jī)床,1998(12):5-6,21.
[7] 郭前建,楊建國(guó),王秀山,等.數(shù)控機(jī)床熱誤差的在線測(cè)量與補(bǔ)償加工[J].制造技術(shù)與機(jī)床,2007(4): 32-34,37.
[8] 王建新.STC89C58RD+單片機(jī)串口通信方法[J].電子世界,2011(7): 47-48.
[9] 蘇宇鋒,袁文信,劉德平,等.基于BP神經(jīng)網(wǎng)絡(luò)的電主軸熱誤差補(bǔ)償模型[J].組合機(jī)床與自動(dòng)化加工技術(shù),2013(1): 36-38,41.
[10] 陳松,王永青. 數(shù)控機(jī)床熱誤差測(cè)點(diǎn)優(yōu)化模型預(yù)測(cè)與實(shí)時(shí)補(bǔ)償?shù)难芯縖J].組合機(jī)床與自動(dòng)化加工技術(shù),2013(6): 88-91.
(編輯 趙蓉)
Thermal Error Compensation System Development of Vertical Machining Center
LV Feng-yu1,HE Cheng-zhu1,GOU Wei-dong2
(1.Gansu Academy of Mechanical Sciences,Lanzhou 730030,China;2.Qinghai No.1 CNC Machine Tool Co.,Ltd.,Xining 810018,China)
To effectively inhibit thermal error influence on positioning accuracy of the vertical machining center, the hardware detection system with high precision MCU, high speed digital displacement sensor and temperature is developed, and error compensation software based on keil C 51 is also exploited. By the use of least squares polynomial curve fitting function of MATLAB, the function between temperature rise of the thermal sensitive and machine tool deformation is established. Using parallel communication technology, error calculation results are output to the NC control system. This system realized the real-time thermal error compensation of machine tool.
vertical machining menter; thermal error; software compensation; parallel communication
1001-2265(2014)06-0080-03
10.13462/j.cnki.mmtamt.2014.06.022
2013-09-26;
2013-10-23
甘肅省技術(shù)研究與開(kāi)發(fā)專項(xiàng)(1004TCYA036)
呂鳳玉(1982—),女,山西忻州人,甘肅省機(jī)械科學(xué)研究院工程師,碩士,從事數(shù)控機(jī)床誤差補(bǔ)償系統(tǒng)的開(kāi)發(fā)和研究,(E-mail)lvfengyu09890@163.com。
TH165;TG659
A