宋磊,劉闊,*,崔益銘,陳虎,陳玉峰,王永青
1. 大連理工大學(xué) 精密與特種加工教育部重點實驗室, 大連 116024 2. 科德數(shù)控股份有限公司, 大連 116600
數(shù)控機(jī)床的精度穩(wěn)定性直接影響航空零件批量加工時的精度波動范圍。提高機(jī)床的精度穩(wěn)定性已經(jīng)成為了航空零部件加工過程中的重要課題。加工過程中,機(jī)床內(nèi)部摩擦熱源和環(huán)境溫度變化會導(dǎo)致機(jī)床產(chǎn)生隨時間變化的定位誤差,即時變誤差。時變誤差是影響機(jī)床精度穩(wěn)定性最重要的因素。
一般來說,機(jī)床基礎(chǔ)件的熱變形可以歸結(jié)到進(jìn)給軸和主軸上,機(jī)床綜合時變誤差可以視為進(jìn)給軸時變誤差和主軸時變誤差的疊加。主軸時變誤差對零件加工精度的影響可通過定期對刀來減小或消除。但這種方式對消除進(jìn)給軸時變誤差不適用。雖然進(jìn)給軸時變誤差可在一定程度上通過光柵尺全閉環(huán)反饋方式來減小,但是需要恒溫環(huán)境配合,否則在加工熱膨脹系數(shù)較大的零件時仍然會有時變誤差。有學(xué)者采用熱和諧設(shè)計方法使主軸和進(jìn)給軸的時變誤差在機(jī)床坐標(biāo)系的某一方向上變化規(guī)律相同以減小機(jī)床的總體時變誤差。有學(xué)者在機(jī)床的滑動部分安裝玻璃棉、礦物棉、可發(fā)泡聚氨酯等構(gòu)成的隔熱罩來平衡滑動部分上的熱變形。但是熱和諧設(shè)計和安裝隔熱罩只能發(fā)生在設(shè)計階段,對已服役機(jī)床很難實施。還有學(xué)者采用強(qiáng)制冷卻的方法,在滾珠絲杠軸中設(shè)置空氣冷卻系統(tǒng),以克服時變誤差。但是這種方式成本高。例如絲杠冷卻、螺母冷卻和雙重冷卻絲杠的價格約為普通型絲杠的2倍。冷卻機(jī)的價格可占到一臺立式加工中心總價格的5%~10%。
誤差補(bǔ)償法是一種成本低且方便在已服役機(jī)床上實施的方法。機(jī)床誤差實時補(bǔ)償技術(shù)早在1986年就已在文獻(xiàn)中出現(xiàn)。它是通過人為地創(chuàng)造一種新誤差來抵消機(jī)床原始熱誤差。國內(nèi)外很多學(xué)者都對機(jī)床的熱致時變誤差補(bǔ)償技術(shù)進(jìn)行了大量深入研究。其中,有限元法、支持向量機(jī)、神經(jīng)網(wǎng)絡(luò)、多元回歸、灰色理論等建模方法得到廣泛應(yīng)用。有限元法對邊界條件的要求非常高,而且該方法一般只應(yīng)用于熱誤差的建模仿真,不能直接用于熱誤差的補(bǔ)償。支持向量機(jī)法、神經(jīng)網(wǎng)絡(luò)法、多元回歸法和灰色理論法都屬于數(shù)據(jù)驅(qū)動建模方法。數(shù)據(jù)驅(qū)動模型是一種“黑箱”模型,只有獲得足夠多的訓(xùn)練數(shù)據(jù)才能保證模型的預(yù)測精度。這樣,必然會使建模時間增長。與此同時,要獲得足夠多的數(shù)據(jù)必然需要多個溫度測點,傳感器布線過多不僅會給誤差補(bǔ)償?shù)墓こ虘?yīng)用帶來不便,而且會妨礙原來機(jī)床的正常加工過程。另外,“黑箱”模型中的變量沒有明確的物理意義,模型的魯棒性得不到有效保證。
不同于數(shù)據(jù)驅(qū)動模型,機(jī)理驅(qū)動建模理念是依據(jù)研究對象的物理規(guī)律,厘清模型輸入與輸出的因果關(guān)系,得到研究對象的“白箱”模型。Ahn和Chung用模態(tài)分析和狀態(tài)空間設(shè)計方法來描述一維傳熱問題,并開發(fā)了觀測器來實時估計滾珠絲杠系統(tǒng)的熱源強(qiáng)度和溫度場。該方法僅停留在熱誤差監(jiān)測層面,未實現(xiàn)熱誤差補(bǔ)償。Attia和Fraser在應(yīng)用熱彈性理論對機(jī)床進(jìn)行逆熱傳導(dǎo)分析的基礎(chǔ)上,推導(dǎo)了機(jī)床熱變形控制傳遞模型。Shi等分析了滾珠絲杠副系統(tǒng)生熱和熱傳遞機(jī)理,并結(jié)合回歸分析方法建立了滾珠絲杠副軸軸向熱膨脹誤差模型。上述模型都使用了多個溫度傳感器。多傳感器的使用容易給工程應(yīng)用帶來不便。
依托國家科技重大專項“換腦工程”項目,開展魯棒性強(qiáng)的機(jī)理驅(qū)動的機(jī)床進(jìn)給軸時變誤差模型研究。在某航發(fā)企業(yè)的臥式加工中心HAAS HS-1RP上,進(jìn)行進(jìn)給軸時變誤差補(bǔ)償應(yīng)用,對提高航發(fā)企業(yè)機(jī)床的精度穩(wěn)定性具有重要意義。
根據(jù)文獻(xiàn)[21]對機(jī)理驅(qū)動的機(jī)床進(jìn)給軸時變誤差建模理論進(jìn)行回顧。機(jī)床進(jìn)給軸的主要熱源有:電機(jī)、螺母和絲杠兩端的軸承座。根據(jù)傳熱學(xué)理論,絲杠的熱傳遞過程可分為熱傳導(dǎo)、對流換熱和熱輻射。機(jī)床進(jìn)給軸工作過程中,軸承座旋轉(zhuǎn)摩擦熱和絲杠螺母副摩擦熱會傳遞給絲杠;絲杠高溫段的熱量會傳遞給低溫段。另外,絲杠工作過程中,其溫度往往高于周圍空氣的溫度,因此,絲杠與空氣之間會發(fā)生對流換熱。進(jìn)給軸絲杠在太陽等外部熱源的影響下會發(fā)生輻射換熱過程。但現(xiàn)實情況下,機(jī)床用戶通常會將機(jī)床與輻射熱源隔絕以保證精度。另外,絲杠向外界輻射散發(fā)的熱量與對流換熱量相比很小,可以忽略。因此,不考慮絲杠的熱輻射作用。
由于絲杠的長度遠(yuǎn)大于絲杠的直徑,并且影響機(jī)床加工精度的熱變形主要是絲杠在軸線方向的熱變形,因此把絲杠簡化為一維桿進(jìn)行分析。另外,將行程范圍內(nèi)的絲杠離散化成段,每段長度均為,如圖1所示。絲杠的溫度場既受絲杠螺母副摩擦熱的影響,又受固定端和支承端軸承座摩擦熱的影響。根據(jù)溫度場的疊加原理,多個熱源同時作用下,絲杠的溫度場等效于各個熱源單獨(dú)作用下溫度場線性疊加。
圖1 簡化的進(jìn)給軸示意圖Fig.1 Schematic diagram of simplified feed axis
在絲杠螺母副摩擦熱作用下,時刻絲杠段的熱平衡公式為
(,Δ)-(,Δ)-(,Δ)=Δ(,Δ)
(1)
式中:(,Δ)為段絲杠螺母副Δ時間內(nèi)的摩擦生熱量;(,Δ)為絲杠段在Δ時間內(nèi)向兩端的熱傳導(dǎo)量;(,Δ)為絲杠段在Δ時間內(nèi)向周圍空氣中的對流換熱量;Δ(,Δ)為絲杠段在Δ時間內(nèi)的熱增量。
(,Δ)=
(2)
式中:為螺母摩擦段絲杠一次的發(fā)熱量;為Δ時間內(nèi)螺母摩擦段絲杠的次數(shù)。
熱傳導(dǎo)時的熱流密度公式為
(3)
式中:為絲杠的導(dǎo)熱系數(shù),W/(m·℃);為絲杠的溫度,℃。所以在Δ時間內(nèi)絲杠段向兩端的熱傳導(dǎo)量為
(,)=
(4)
式中:(+1,)為絲杠+1段在時刻的溫度,℃;(-1,)為絲杠-1段在時刻的溫度,℃;為絲杠的等效直徑,mm。
特別的,對于段和段絲杠在Δ時間內(nèi)向兩端的熱傳導(dǎo)量分別為
(5)
(6)
式中:為絲杠電機(jī)側(cè)非運(yùn)動段的長度,mm;+1為絲杠另一側(cè)非運(yùn)動段的長度,mm。
對流換熱時的熱流密度公式為
=×(-)
(7)
式中:為對流換熱系數(shù),W/(m·℃);為與絲杠表面接觸的空氣溫度,℃。所以在Δ時間內(nèi)絲杠段向周圍空氣的對流換熱量為
(,)=π·[(,)-()]Δ
(8)
式中:(,)為絲杠段在時刻的溫度,℃;()為時刻絲杠周圍的環(huán)境溫度,℃。
在Δ時間內(nèi)絲杠段向周圍空氣的對流換熱量為
(9)
式中:為絲杠材料的比熱容,J/(kg·℃);為絲杠的密度,kg/m。
段絲杠會受電機(jī)及固定軸承座發(fā)熱的影響,+1段會受支承端軸承座發(fā)熱的影響。但是根據(jù)經(jīng)驗,電機(jī)和軸承座對絲杠段和+1段的影響不大。為了簡化計算,可忽略電機(jī)及軸承座發(fā)熱的影響,即:
(,)=(+1,)=()
(10)
將式(2)、式(4)~式(6)、式(8)~式(10)代入式(1),得絲杠溫度場為
(,)=
(11)
根據(jù)以上分析,只要知道絲杠旁的床身溫度(),就可以推算出整個絲杠的溫度場。進(jìn)而可以得到絲杠在任意時刻的熱致時變誤差:
(12)
式中:為絲杠的熱膨脹系數(shù),μm/(m·℃)。
在MATLAB平臺下按照式(13)對參數(shù)進(jìn)行優(yōu)化,最終得到時變誤差模型參數(shù)的優(yōu)化值。
min[(,,,,,,,+1)]=
(13)
式中:(,)表示第次時變誤差測試時第個測試點的測試的行程范圍內(nèi)熱膨脹誤差值;(,)表示第次時變誤差測試時第個測試點的計算的行程范圍內(nèi)熱膨脹誤差值;為時變誤差測試的總次數(shù);為進(jìn)給軸每次測試的點數(shù)。
在時變誤差補(bǔ)償之前需要對機(jī)床進(jìn)給軸時變誤差模型中存在的未知參數(shù)進(jìn)行辨識。根據(jù)第1節(jié)的分析,需要首先獲得機(jī)床進(jìn)給軸的時變誤差和絲杠旁床身溫度。
臥式加工中心HAAS HS-1RP的數(shù)控系統(tǒng)為科德數(shù)控GNC62。激光干涉儀采用雷尼紹的雙頻激光干涉儀XL80,測試現(xiàn)場如圖2所示。
溫度采集系統(tǒng)自主開發(fā),溫度傳感器采用TSic506F芯片,精度為±0.1 ℃(5~45 ℃)。、、軸分別布置一個溫度傳感器,安放在靠近絲杠的床身處,如圖3所示。
圖2 誤差測試現(xiàn)場Fig.2 Field of error test
圖3 溫度傳感器的布置方式Fig.3 Arrangement of temperature sensor
按照表1的測試信息對臥式加工中心的進(jìn)給軸時變誤差進(jìn)行測試。測試之前確保機(jī)床停機(jī)3 h 以上以保證絲杠的溫度場是均勻的。以軸為例,測試的流程如圖4所示。軸和軸的測試流程與軸相同。//軸的時變誤差測試結(jié)果如圖5所示,溫度測結(jié)果如圖6所示。
在進(jìn)行定位誤差測試時,測試范圍分為10段,即11個測試點。利用激光干涉儀配備的軟件獲取定位誤差值。在初始測試點讀數(shù)完成后,進(jìn)給軸以5 000 mm/min的速度運(yùn)動到下一測試點,停止2 s,獲取該位置處的定位誤差值。然后進(jìn)給軸以5 000 mm/min的速度運(yùn)動到下一測試點,再停止2 s。如此循環(huán),直至測試完成。3.2 節(jié)中補(bǔ)償前后的定位誤差測試都按上述方法進(jìn)行。
表1 誤差測試信息Table 1 Information of error test
圖4 時變誤差測試流程Fig.4 Time-varying error testing process
圖5 時變誤差測試結(jié)果Fig.5 Results of time varying error test
圖6 溫度測量結(jié)果Fig.6 Results of temperature test
時變誤差測試結(jié)果顯示,在沒有時變誤差抑制措施的條件下,、、軸的定位誤差波動范圍分別是-13.4~33.8 μm、-27~52.5 μm和-6.6~76.6 μm,誤差波動范圍很大。利用圖5和圖6的測試結(jié)果實現(xiàn)1.2節(jié)的時變誤差模型參數(shù)辨識。
時變誤差模型以軟件的形式運(yùn)行與時變誤差補(bǔ)償器中。時變誤差補(bǔ)償軟件在MATLAB中開發(fā)。開始時變誤差補(bǔ)償前,需要實現(xiàn)時變誤差補(bǔ)償器與數(shù)控系統(tǒng)通訊。時變誤差補(bǔ)償器支持與FANUC全系列、Siemens 840 dsl和828 d、i5、科德、高精和華中數(shù)控系統(tǒng)通訊。
試驗采用科德數(shù)控GNC62。時變誤差補(bǔ)償器作為客戶端基于TCP/IP 協(xié)議與數(shù)控系統(tǒng)通訊,如圖7所示。GNC62 Server是時變誤差補(bǔ)償器與數(shù)控系統(tǒng)內(nèi)核交互的中間方,是交互過程的服務(wù)端。GNC62 Server 與 CNC 內(nèi)核運(yùn)行在同一臺計算機(jī)上。GNC62 Server 通過TCP/IP 協(xié)議的 socket 接口提供基于XML 字符串形式的通信服務(wù)。
圖7 時變誤差補(bǔ)償器與數(shù)控系統(tǒng)通訊Fig.7 Communication between time-varying error compensator and CNC system
1) 建立TCP/IP客戶端
時變誤差補(bǔ)償器與科德數(shù)控系統(tǒng)通訊需要首先創(chuàng)建MATLAB的TCP/IP客戶端。MATLAB中的tcpip函數(shù)可實現(xiàn)該功能,函數(shù)語句為
Client=tcpip(IP, Port, ‘NetworkRole’, ‘client’)
其中,Client為所建立的客戶端對象;IP為數(shù)控系統(tǒng)的IP地址;Port為數(shù)控系統(tǒng)的端口號;NetworkRole為接口對象的網(wǎng)絡(luò)角色,有client(客戶端)和 server(服務(wù)端)兩種。時變誤差補(bǔ)償軟件中用的是client。
2) 建立補(bǔ)償器與數(shù)控系統(tǒng)的連接
MATLAB的fopen函數(shù)可實現(xiàn)所創(chuàng)建的客戶端對象Client與數(shù)控系統(tǒng)的連接。函數(shù)語句為
fopen(Client)
3) 讀取機(jī)床坐標(biāo)
TCP/IP通訊采用發(fā)送請求接收應(yīng)答的方式。MATLAB中的fwrite函數(shù)可以實現(xiàn)向服務(wù)端發(fā)送請求,具體函數(shù)語句為
fwrite(Client,, ‘precision’)
其中,為寫入儀器的二進(jìn)制數(shù)據(jù);precision控制為每個值寫入的位數(shù)以及將這些位解釋為整數(shù)、浮點或字符值。
從數(shù)控系統(tǒng)中讀取不同的數(shù)據(jù)類型由控制。客戶端和 GNC62 Server 之間的通信是通過 XML 字符串表達(dá)請求和應(yīng)答。根據(jù)科德數(shù)控系統(tǒng)的《通信服務(wù)開發(fā)接口說明》可得到讀取機(jī)床坐標(biāo)的XML 字符串,進(jìn)而可得到參數(shù)為
=[double(‘
接收應(yīng)答的函數(shù)語句為
nBytes=get(Client,‘BytesAvailable’)
fread(Client, nBytes, ‘int8’)
其中,BytesAvailable為Client的屬性,用get函數(shù)得到要讀取的值的數(shù)目nBytes。通過fread函數(shù)得到返回的機(jī)床坐標(biāo)值。
4) 寫入時變誤差補(bǔ)償量
通過機(jī)械坐標(biāo)原點平移方式實現(xiàn)對臥式加工中心HAAS HS-1RP的時變誤差補(bǔ)償。首先通過fwrite函數(shù)向服務(wù)端發(fā)送寫時變誤差補(bǔ)償量的請求,然后通過fread函數(shù)獲取返回的機(jī)床坐標(biāo)偏置量。其中,fwrite函數(shù)中的參數(shù)為
=[double([‘
補(bǔ)償前首先確定機(jī)床處于初始熱穩(wěn)定狀態(tài)。表2展示了誤差補(bǔ)償信息。以軸為例,圖8展示了時變誤差補(bǔ)償試驗的具體流程。軸和軸的補(bǔ)償流程與軸相同。//軸的補(bǔ)償試驗結(jié)果分別如圖9~圖11所示。
表2 誤差補(bǔ)償信息Table 2 Information of error compensation
圖8 時變誤差補(bǔ)償試驗流程Fig.8 Time-varying error compensation process
圖9 X軸補(bǔ)償前后的定位誤差Fig.9 Positioning errors of X-axis with and without compensation
圖10 Y軸補(bǔ)償前后的定位誤差圖Fig.10 Positioning errors of Y-axis with and without compensation
圖11 Z軸補(bǔ)償前后的定位誤差圖Fig.11 Positioning errors of Z-axis with and without compensation
試驗中,熱機(jī)過程已經(jīng)達(dá)到熱平衡。但是熱機(jī)時間間隔為15 min,這使得圖9~圖11的誤差曲線密度小,很難從曲線變化趨勢中獲取熱機(jī)后進(jìn)給軸已經(jīng)達(dá)到熱平衡的信息。從試驗結(jié)果看,經(jīng)過誤差補(bǔ)償,軸的定位誤差波動范圍由36.1 μm 減小到8.1 μm,減小了77.6%;軸的定位誤差波動范圍由64.6 μm減小到17.2 μm,減小了70.1%;軸的定位誤差波動范圍由69.0 μm 減小到10.2 μm,減小了85.2%,機(jī)床精度穩(wěn)定性大幅提升。補(bǔ)償后的、、軸時變誤差分別被控制在-4.1~4.0 μm、-14.3~2.9 μm、-3.6~6.6 μm。
1) 基于機(jī)理驅(qū)動的機(jī)床進(jìn)給軸時變誤差模型對臥式加工中心進(jìn)行了實時補(bǔ)償。
2) 將臥式加工中心每條進(jìn)給軸時變誤差測試時間控制在了2 h以內(nèi),實現(xiàn)了機(jī)床進(jìn)給軸熱致時變誤差的高效測量。
3) 基于TCP/IP協(xié)議實現(xiàn)時變誤差補(bǔ)償器與數(shù)控系統(tǒng)通訊,通過機(jī)床坐標(biāo)原點偏置方式完成時變誤差補(bǔ)償,補(bǔ)償后//軸熱致時變誤差可以減小了77.6%、70.1%、85.2%,大幅提高了機(jī)床的精度穩(wěn)定性。