,,
(南京航空航天大學機電學院,江蘇 南京 210016)
五軸數控機床比三軸機床增加了兩個旋轉軸,由于旋轉軸的引入,在線性插補過程中就會產生非線性誤差。對于非線性誤差的控制,目前主要有刀觸點偏置法、線性密化法、誤差校驗法和刀尖跟隨功能[1],其中應用較多的是誤差校驗法和刀尖跟隨功能。誤差校驗法通過將后處理每個插補周期內增加插補點,對每兩插補點間的誤差進行控制,此方法不僅大大增加了系統的計算量,而且使用該算法后處理得出的程序不具通用性,實際應用中刀具磨損或刀具長度發生變化、更換刀具、更換機床等均使得同一零件的加工程序需重新生成,加工效率低下[1]。刀尖跟隨功能是針對五軸機床在保證加工效率和質量情況下有效減小非線性誤差的一項功能,它能保持刀尖始終位于編程曲線上。因而刀尖跟隨功能一直被認為是區分真假五軸的標志之一。
刀尖跟隨功能又被稱為RTCP(rotation tool center point:繞刀具中心點旋轉)。對于RTCP功能算法的研究,國外的數控系統如FANUC 的0i系統、SIMENSE 的840D系統、HEIDENHAIN 的ITNC 560系統均已具備此功能,但是由于商業上的競爭以及國防安全的考慮,RTCP算法一直對外保密。國內對于此算法的研究仍處于探索階段,中國科學院的趙薇、高春等在深入分析五軸機床運動結構的基礎上,設計了一種集成了RTCP功能的插補算法,并給出了算法的誤差計算公式[2;哈爾濱工業大學的梁全、王永章設計了雙轉臺結構的RPCP算法和雙擺頭結構的RTCP算法,引入樞軸中心距對RTCP算法的影響,并用OpenGL仿真驗證了算法的正確性[3];南京航空航天大學的章永年、趙東標等對RTCP模式下的無碰干涉區域進行了研究,推導并驗證了該算法的正確性[1]。這些算法都是基于具有強大運算能力的高端數控系統而設計的算法,算法運算量很大。
在以上學者研究的基礎上,做出一些改進,使之可以適用于運算能力較弱的嵌入式數控系統中,并在MATLAB中進行算法仿真,驗證了算法的有效性。
五軸聯動數控機床按照旋轉軸的分布可以分為三種類型:雙轉臺型、雙擺頭型和轉臺-擺頭型[4]。對于研究RTCP算法而言,不同結構形式的數控機床并無本質上的區別,只是運動學變換稍有差異。因此選取如圖1所示的雙擺頭結構機床為研究對象。

圖1 C-A型雙擺頭結構
由于五軸數控機床相對于三軸機床增加了兩個旋轉軸,使得機床性能、產品加工質量以及加工效率都有了很大的提高,但是旋轉運動也引入了非線性誤差。

圖2 五軸數控機床非線性誤差
如圖2所示,插補軌跡中兩相鄰插補點Ai和Ai+1的刀位點矢量,對應的五軸運動坐標分別為 (Xi,Yi,Zi,Ai,Ci)和(Xi+1,Yi+1,Zi+1,Ai+1,Ci+1)。在線性插補過程中,機床各軸通過線性插補從位置Ai運動到Ai+1,由于旋轉軸A,C的引入,導致各軸的合成運動的運動軌跡不一定為直線,圖2中期望插補軌跡與實際運動軌跡的偏差就是所謂的非線性誤差。用最大偏差值作為非線性誤差的估計[2]。
RTCP算法的核心是編程的控制點在刀尖點而不是機床主軸頭中心,通過機床逆運動學求解刀軸旋轉運動而引起刀尖點在機床坐標系下空間坐標的變化值,并通過直線軸的位移補償這一差值,從而保持刀尖中心點與工件表面相對靜止,使得刀具中心始終位于期望的插補軌跡上。

圖3 RTCP算法原理



下面通過建模分析CA型雙擺頭機床的結構,計算RTCP在每個具有旋轉分量的插補周期中在X,Y,Z方向上的補償位移。

(1)

圖4 雙擺頭機床刀具端模型
其中Ai和Ci是在第i個插補周期內刀軸矢量繞A軸和C軸轉動的角度量。由(1)式可得:
(2)

(3)
因此,與CA型雙擺頭結構機床的旋轉運動對應的線性位移量為:
(4)
RTCP的補償量,就是反向的位移量,如下:
(5)
那么在第i個插補周期內,RTCP算法補償后X,Y,Z方向上的線性位移量為:
(6)
同理,可以運用此算法得到其他結構形式的RTCP補償公式。
嵌入式數控系統相較于傳統的PC數控系統和專用的微處理器數控系統具有更低的功耗、更節約的成本,但是嵌入式處理器的計算能力和存儲資源仍有限。因而對于具有強大的計算能力和豐富的存儲資源的高端數控處理器而言,傳統的RTCP算法可以實現,而對嵌入式數控系統則不太適用。為了彌補ARM處理器的計算能力不足,本數控系統引入DSP來輔助計算。
本數控系統采用的是ARM+DSP+FPGA+CPLD的硬件平臺。以德州儀器(TI)公司推出的高性能OMAP3530作為系統的微處理器,OMAP3530內部無縫集成了一個600 MHz的ARM Cortex-A8內核和一個430 MHz TMS320C64+的DSP內核。在ARM內核上運行嵌入式Linux系統,負責數控系統的資源管理實時顯示、系統診斷等管理任務;DSP內核上運行DSP/BIOS實時系統,負責數控系統的譯碼、刀具補償、RTCP實時補償、速度控制、插補控制、位置控制、開關量控制等實時性要求較高的控制任務,其中插補任務中DSP主要負責運算量較大的粗插補。ARM和DSP協同合作完成數控系統的上位機功能,運動控制的下位機功能主要由FPGA+CPLD完成。其中FPGA完成精插補、主軸和伺服電機驅動、編碼反饋、手輪輸入等運動控制任務,CPLD則實現數控矩陣鍵盤和開關量的控制任務。
本文的嵌入式數控系統實現RTCP的流程圖如圖5所示,系統充分利用ARM端Linux的優秀管理資源能力、DSP的強大運算能力和FPGA的可靈活配置保證整個系統的協同運行。首先,待加工零件通過CAD/CAM軟件進行刀具選擇、工藝參數設置、刀具路徑規劃等前置處理操作,生成刀位數據文件作為CNC系統的輸入量。CNC系統中的Linux系統將接收到的刀位數據文件進行解析,同時將編程的工件坐標系提取出來,并用探頭測出工件坐標系與機床坐標系的偏距值,以備后處理使用。接著,Linux系統將譯碼的數據通過DSPLINK傳輸給DSP/BIOS系統[5],DSP將刀位數據文件后處理得到五軸運動坐標,通過預讀代碼、速度前瞻、加減速控制有效提升機床的加工性能,三維刀具補償保證了刀具實時加工。數控加工的核心就是插補,本系統分為兩級插補,DSP端負責粗插補任務,RTCP 功能開啟時,對每個具有旋轉分量的插補周期都進行RTCP實時校驗和補償,若非線性誤差不能滿足設定的加工要求,則調整第2節公式(5)中的插補周期數。將滿足要求的粗插補數據傳輸到FPGA中進行精插補計算[6],對每個插補周期進一步插補。最后在FPGA中實現運動控制,控制伺服電機運動,通過編碼器反饋電機的位置給FPGA,形成閉環反饋控制。

圖5 RTCP功能在嵌入式數控系統上的實現流程圖


圖6 RTCP算法仿真結果
將插補周期數作為自變量,分別在未啟用RTCP功能和啟用RTCP功能的情況下對圖6中曲線進行仿真插補,對比此兩種情況下的平均加工誤差如表1所示。

表1 RTCP功能對加工的非線性誤差的影響
由圖6所示的仿真結果可以定性地得出,研究的RTCP算法可有效地減小非線性誤差,RTCP功能使得實際插補軌跡更接近理想插補軌跡。開啟RTCP功能的插補軌跡比沒有開啟RTCP功能的插補軌跡具有更好的逼近精度。另外,從表1中可以定量地得出以下結論:

②隨著插補周期數的增加,平均非線性誤差有減小的趨勢。
從以上試驗結果分析可知,設計的RTCP算法可有效減小非線性誤差,而且插補周期數對RTCP算法的精度有重要影響,因此在實際加工中,注意插補周期數的取值。
[1] 章永年, 趙東標, 陸永華, 等. RTCP算法中無碰刀軸矢量的確定[J]. 中國機械工程, 2012, 23(09): 1009-1013.
[2] 趙薇, 高春, 馬躍,等. 通用RTCP算法的研究與設計[J]. 小型微型計算機系統, 2008 (05):980-984.
[3] 梁全, 王永章.五軸數控系統RTCP和RPCP技術應用[J]. 組合機床與自動化加工技術, 2008 (02): 62-65.
[4] 梁志敏. 五軸聯動數控機床運動學數學基礎及應用[D]. 哈爾濱:哈爾濱工業大學, 2010.
[5] 楊劍波, 趙東標, 劉念. 基于OMAP3530數控系統的雙核通信設計[J/OL]. 電子技術應用, 2015, 41(09): 33-35.
[6] 嵇光明. 基于OMAP3530的高性能數控系統設計與研究[D]. 南京:南京航空航天大學, 2012.
[7] FAN S T, YANG W P, DONG C J. RTCP function in five-axis machining[J]. Key Engineering Materials, 2011, 464:254-259.
[8] ZOU X X, DING Y Y, WANG T Y, et al. Research of RTCP function for five-axis machine tools based on low-cost embedded CNC system[J]. Key Engineering Materials, 2015, 693:1591-1597.
[9] HU Z H, GAO W Q, QING C T, et al. Study on real-time compensation RTCP module of five-axis CNC system[J]. Advanced Materials Research, 2011, 318:1662-1667.