董海濤,潘海鴻,李兆軍,陳 琳
(廣西制造系統(tǒng)與先進制造技術(shù)重點實驗室,廣西大學機械工程學院,廣西南寧 530004)
可重構(gòu)技術(shù)是指利用可重用的軟硬件資源,根據(jù)不同的應用需求,靈活地改變自身體系結(jié)構(gòu)的設計方法,可重構(gòu)數(shù)控的技術(shù)本質(zhì)是柔性化[1-3]。目前,可重構(gòu)CNC系統(tǒng)的研究已經(jīng)取得了很多研究成果。在文獻[4]中,學者們利用嵌入式技術(shù)設計了2種NC系統(tǒng):一種是基于嵌入式結(jié)構(gòu)的具有一般NC功能的基本系統(tǒng),另一種是具有NC核心服務模塊的網(wǎng)絡NC系統(tǒng),此系統(tǒng)允許某些NC資源的共享和充分使用。文獻[5] 提出了一個軟硬件可重構(gòu)的數(shù)控系統(tǒng)平臺方案并研究了系統(tǒng)硬件、軟件和模塊重構(gòu)的關(guān)系和協(xié)同設計問題。文獻[6]提出了包含有圖形用戶接口、非實時層、實時層和驅(qū)動層的基于Linux/RTLinux的CNC系統(tǒng)。另外,市場上也出現(xiàn)了商用CNC控制器的產(chǎn)品,其中美國嵌入式結(jié)構(gòu)的PMAC(Dlta Tau)多軸運動控制器就是一個優(yōu)良的通用伺服控制器,適應能力非常強[7]。但是PMAC是一個商品化的產(chǎn)品,作為一個通用的CNC系統(tǒng)來說,也存在一些缺點:PMAC作運動控制時,需要由上位PC機配合進行參數(shù)設置和人機交互;PMAC的運動控制器硬件一般不支持浮點運算;PMAC的硬件和軟件不開源,且商品化控制器價格較高。
由于商品化CNC控制器存在局限性,開發(fā)了ARM+DSP+FPGA的嵌入式可重構(gòu)CNC系統(tǒng)平臺[8],基于該平臺,文中研究了伺服控制算法的可重構(gòu)性。
目前市場上的伺服系統(tǒng)可分為模擬伺服系統(tǒng)和數(shù)字伺服系統(tǒng)。而數(shù)字伺服系統(tǒng)進一步又可分為全數(shù)字伺服系統(tǒng)和帶脈沖接口的數(shù)字伺服系統(tǒng)。另外,一般的伺服驅(qū)動器有3種工作模式:位置模式、速度模式和轉(zhuǎn)矩(電流)模式,根據(jù)控制目標不同,伺服的工作模式也不同。CNC端伺服控制算法除與控制對象和控制要求有關(guān)外,還與伺服驅(qū)動器的工作模式有關(guān),伺服的工作模式不同,CNC部分的伺服控制算法會有一些差別。
通過對伺服驅(qū)動器的不同工作模式下的控制方式進行分析發(fā)現(xiàn),盡管控制算法上會有些差異,但是控制算法的基本結(jié)構(gòu)是相似的,即CNC端伺服控制算法的主要結(jié)構(gòu)為“PID反饋+前饋控制”。針對CNC系統(tǒng)的特點,借鑒PMAC伺服控制算法的優(yōu)點,并結(jié)合已設計硬件平臺的實際情況,同時考慮軟件實現(xiàn)上的難易程度,文中提出CNC系統(tǒng)可重構(gòu)伺服控制算法結(jié)構(gòu)如圖1所示。
圖1的符號說明:Kfff為摩擦前饋系數(shù);Kvff為速度前饋系數(shù);Kaff為加速度前饋系數(shù);KP為比例增益;KI為積分增益;KD為微分增益;Kpf為位置反饋系數(shù);Berror為D/A靜態(tài)補償值(模擬電壓零偏補償);Kvf為速度反饋系數(shù);IM1為積分模式:IM1=1時,采用積分分離法積分;IM1=0時,積分全程有效;IM2為陷波濾波器模式;IM2=1時,使用陷波濾波器;IM2=0時,不使用陷波濾波器;IM3為伺服控制模式切換開關(guān);IM4為螺距誤差補償開關(guān);IM5:反向間隙補償開關(guān)。
圖1 可重構(gòu)伺服控制算法結(jié)構(gòu)框圖
(1)
式中:G(z)為一般化的雙二階濾波器,其中n1、n2、d1、d2為一般化的雙二階濾波器的系數(shù);KF為雙二階濾波器的增益系數(shù)。
算法模型中,對傳統(tǒng)數(shù)字PID的積分過程進行改進,采用積分分離法,從而降低超調(diào),減少調(diào)節(jié)時間。微分部分采用了微分先行PID的方法,只對輸出量微分,而不對給定值微分。這種結(jié)構(gòu)適用于給定值變化較頻繁的情況,可以避免因輸入變動而在輸出上產(chǎn)生躍變。這是因為系統(tǒng)的輸出可以看作是輸入的指令信號經(jīng)過低通濾波后得到的,輸出相對于指令信號的輸入來說變化要平滑些。不同的編碼器反饋接口通過FPGA實現(xiàn),邏輯參數(shù)IM1~IM5、 PID系數(shù)、前饋系數(shù)及雙二階濾波器系數(shù)等則通過ARM端的人機交互進行設置,然后傳入DSP的專門參數(shù)區(qū)保存,從而實現(xiàn)伺服控制算法的重構(gòu),并且根據(jù)需要可以引入螺距誤差補償和反向間隙補償。
2.1可重構(gòu)PID控制器實現(xiàn)
算法直接在離散域進行設計。為便于說明伺服控制算法的實現(xiàn)方法,對圖1作了適當?shù)暮喕喕蟮目芍貥?gòu)伺服控制算法框圖如圖2所示,圖中KL為邏輯系數(shù),它的具體值為:
式中ε為積分分離界限。
圖2 簡化的可重構(gòu)伺服控制算法結(jié)構(gòu)框圖
另外,為了方便進行算法描述,引入以下記法:rk=r(k),表示第k次PID循環(huán)時輸入的插補位置指令信號;ek=e(k),表示第k次PID循環(huán)時的位置誤差信號;yk=y(k),表示第k次PID循環(huán)時的編碼器位置反饋信號;fk=f(k),表示第k次PID循環(huán)時的前饋信號;ck=c(k),為第k次PID控制循環(huán)時反向間隙補償量,僅在電機當前運動方向和指令速度方向相反時才進行反向間隙補償。反向間隙補償安排在一個位置控制周期(包括多個PID控制周期)內(nèi)進行補償,補償量由具體的反向間隙補償算法給出;bk=b(k),為第k次PID控制循環(huán)時螺距誤差補償量,查表確定;uk=u(k),為第k次PID控制循環(huán)時D/A的輸入數(shù)字量;dk=d(k),為第k次PID控制循環(huán)時D/A的靜態(tài)補償序列,這里:
式中Berror為D/A靜態(tài)補償值(模擬量輸出零偏補償值)。
(1)第k次PID循環(huán)時的速度和加速度前饋總和為:
fk=rk·(1-z-1)[(1-z-1)Kaff+Kvff]
(2)
把上式z域的傳遞函數(shù)轉(zhuǎn)換成基于時間的算法為:
fk=Kaff(rk-2·rk-1+rk-2)+Kvff(rk-rk-1)
(3)
(2)第k次PID控制循環(huán)時位置誤差為:
ek=rk-(yk·Kpf+ck+bk)
(4)
(3)第k次PID循環(huán)時控制器輸出值:
(5)
把上式z域的傳遞函數(shù)轉(zhuǎn)換成基于時間的算法為:
uk-uk-1=(ek-ek-1)KP+KLKIKPek-KDKvf(yk-2yk-1+yk-2)+(fk-fk-1)+dk(1-z-1)
=(ek-ek-1)KP+KLKIKPek-KDKvf(yk-2yk-1+yk-2)+(fk-fk-1)+(dk-dk-1)
=(ek-ek-1)KP+KLKIKPek-KDKvf(yk-2yk-1+yk-2)+
(fk-fk-1)+Berror
(6)
由式(3)、式(4)和式(6)可得:
uk=[(rk-rk-1)-Kpf(yk-yk-1)-(ck-ck-1)-(bk-bk-1)]KP+
KLKIKP(rk-yk·Kpf-ck-b)-KDKvf(yk-2yk-1+yk-2+
Kaff(rk-3rk-1+3rk-2-rk-3)+Kvff(rk-2rk-1+rk-2)+
Berror+uk-1
(7)
(4)第k次PID循環(huán)時D/A轉(zhuǎn)換器輸出控制值(不考慮輸出限制)為:
u(t)=KDA·uk
(8)
2.2速度環(huán)積分器實現(xiàn)
考慮速度環(huán)的PI控制器傳遞函數(shù):
(9)
式中:KVP為速度環(huán)比例增益;KVI為速度環(huán)的積分增益。
通過進一步推導可得:
(10)
與式(1)中對應項系數(shù)比較可得雙二階濾波器各系數(shù)為:
KF=KVP+KVI
n2=d2=0
d1=-1
2.3陷波濾波器實現(xiàn)
由于伺服控制算法運行于具有浮點運算功能的DSP中,不需要進行浮點數(shù)轉(zhuǎn)定點數(shù)的計算,因此數(shù)字濾波器算法實現(xiàn)起來很方便。這里以將雙二階濾波器重構(gòu)為陷波濾波器為例來說明系統(tǒng)中濾波器的實現(xiàn)。陷波濾波器S域傳遞函數(shù)為:
(11)
式中:ωΝ為需要消除的系統(tǒng)中已知低頻諧振點頻率,rad/s;ξ為阻尼比。
為了在伺服控制算法中實現(xiàn)陷波濾波器功能,需要求出Z域傳遞函數(shù),即式(1)中各系數(shù),這可以通過如下的一組公式計算得到:
n1=-2cos(ωNTs)
n2=1
d2=e-2ξWΝΤs
另外,離散時間陷波濾波器各系數(shù)也可以使用Matlab工具進行設計。計算出上面各系數(shù)后,可以由Z域傳遞函數(shù)得到基于時間的陷波濾波器算法為:
ck=KF(uk+n1uk-1+n2uk-2)-d1ck-1-d2ck-2
(12)
式中:ck和uk分別為圖1中雙二階濾波器的輸出序列和輸入序列。
文中通過研究伺服系統(tǒng)的工作模式和相應的控制方法,在借鑒PMAC運動控制器伺服控制算法的基礎上,結(jié)合開發(fā)的嵌入式CNC系統(tǒng)硬件平臺的實際情況,提出了可重構(gòu)伺服控制算法模型,并介紹了算法的實現(xiàn)。目前,可重構(gòu)伺服控制算法已用于車床和高速并條機控制系統(tǒng),并取得了較好的控制效果。
參考文獻:
[1]齊繼陽,竺長安.基于通用串行總線的可重構(gòu)數(shù)控系統(tǒng)的研究.計算機集成制造系統(tǒng),2004,10 (12):1567-1570.
[2]MORALES-VELAZQUEZ L,de JESUS ROMERO-TRONCOSO R,ALFREDO R OSORNIO-RIOS,et al.Open-architecture system based on a reconfigurable hardware-software multi-agent platform for CNC machines.Journal of Systems Architecture,2010,56(9):407-418.
[3]ALFREDO OSORNIO-RIOS R,de JESUS ROMERO-TRONCOSO R,HERRERA-RUIZ G,et al.The application of reconfigurable logic to high speed CNC milling machines controllers.Control Engineering Practice,2008,16 (6):674-684.
[4]LONG Y H,ZHOU Z D,LIU Q,et al.Embedded-based modular NC systems.Int J Adv Manuf Technol,2009,40 (7-8):749-759.
[5]WANG T,WANG L W,LIU Q J.A three-ply reconfigurable CNC system based on FPGA and field-bus.Int J Adv Manuf Technol,2011,57 (5-8):671-682.
[6]JI H,LI Y,WANG J.A software oriented CNC system based on Linux-RTLinux.Int J Adv Manuf Technol,2008,39(3-4):291-301.
[7]Delta Tau Data System Inc.PMAC USER MANUAL.Chatsworth,USA:Delta Tau Data System Inc.,2008.
[8]董海濤,莊淑君,陳冰,等.基于ARM+DSP+FPGA的可重構(gòu)CNC系統(tǒng).華中科技大學學報(自然科學版),2012,40(8):82-87.