倪志盛,王明彥
(哈爾濱工業(yè)大學(xué)電氣工程及自動化學(xué)院,150001哈爾濱)
負(fù)載模擬是導(dǎo)彈自動駕駛儀半實物仿真中不可缺少的重要技術(shù)手段,其目的是為分析和研究自動駕駛儀的飛行控制性能和舵系統(tǒng)的動力性能來獲取地面試驗數(shù)據(jù),在自動駕駛儀的研制和性能測試中起著重要的作用.多年來,負(fù)載模擬技術(shù)研究一直是航空航天領(lǐng)域的重要課題.多余力矩是影響負(fù)載模擬技術(shù)性能的核心技術(shù)問題,它直接影響到系統(tǒng)的加載精度及動態(tài)響應(yīng)性能,另外系統(tǒng)還存在機械連接環(huán)節(jié)的間隙非線性問題和對不同測試對象的適應(yīng)性問題.這些問題使得傳統(tǒng)基于模型的控制策略的控制精度和動態(tài)性能很難滿足要求,引入智能控制策略成為一種趨勢.文獻(xiàn)[1]提出通過采用補償控制和迭代學(xué)習(xí)控制來消除多余力矩,從而使電動負(fù)載模擬系統(tǒng)得以實現(xiàn).文獻(xiàn)[2]提出一種神經(jīng)元控制器,可實現(xiàn)轉(zhuǎn)矩輸出精確跟蹤給定.文獻(xiàn)[3-4]采用在非線性前饋校正基礎(chǔ)上的模糊自適應(yīng)控制策略消除系統(tǒng)的多余力矩,改善系統(tǒng)的動態(tài)品質(zhì).文獻(xiàn)[5]利用鍵合圖建模與仿真方法,針對多余力嚴(yán)重影響施力系統(tǒng)動態(tài)加載性能的特點,提出了基于CMAC神經(jīng)網(wǎng)絡(luò)的復(fù)合控制來提高加載系統(tǒng)的動態(tài)性能.本文采用的動態(tài)模糊神經(jīng)網(wǎng)絡(luò),是一種無須領(lǐng)域的專家知識,對系統(tǒng)自動建模及抽取模糊規(guī)則的網(wǎng)絡(luò),且模糊神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)動態(tài)變化的,其模糊規(guī)則在學(xué)習(xí)過程中逐漸增長而形成.從仿真結(jié)果可以看出,基本消除了多余力矩對加載系統(tǒng)的影響.
電動負(fù)載模擬器是一個位置擾動型的轉(zhuǎn)矩伺服系統(tǒng),由加載電機、PWM驅(qū)動裝置、傳感器以及控制器組成,它與舵機系統(tǒng)一同構(gòu)成了完整的電動負(fù)載模擬系統(tǒng),如圖1所示.圖中,承載電機(舵機)作為被加載對象與加載電機通過剛性軸直接相連.加載過程中,傳感器采集相應(yīng)的轉(zhuǎn)矩、轉(zhuǎn)角信號,通過信號調(diào)理電路和A/D轉(zhuǎn)換進入控制器.控制器根據(jù)仿真計算機傳輸?shù)闹噶?,按照預(yù)先設(shè)計的算法輸出控制信號,通過D/A轉(zhuǎn)換傳給PWM驅(qū)動裝置,直接控制加載電機輸出的轉(zhuǎn)矩.
多余力矩是指當(dāng)加載轉(zhuǎn)矩給定為零時,由舵機轉(zhuǎn)動而在軸上產(chǎn)生的轉(zhuǎn)矩.圖2為某一舵機的軸轉(zhuǎn)角θ在-20°~20°變化時,多余力矩M達(dá)到近30N·m的實驗波形.
圖1 電動負(fù)載模擬系統(tǒng)結(jié)構(gòu)圖
圖2 多余力矩特性
多余力矩的產(chǎn)生與被加載對象的轉(zhuǎn)動角速度以及角加速度等有關(guān).加載電機與被加載舵機同軸連接,加載過程中,舵機主動跟隨角位移指令作主動運動,加載電機則被動跟隨舵機運動,同時對其進行加載,施加在軸上的轉(zhuǎn)矩除指令加載轉(zhuǎn)矩外,勢必存在由于舵機運動而產(chǎn)生的多余力矩.由于舵系統(tǒng)的參數(shù)和運動形式的復(fù)雜性,多余力矩本身具有一定的不確定性,同時它也有較大強度,嚴(yán)重影響輸出轉(zhuǎn)矩的精度.多余力矩必然使得被動式力矩伺服系統(tǒng)與普通電力傳動系統(tǒng)相比,在工作方式上具有本質(zhì)上的不同,在很大程度上增加了系統(tǒng)控制難度.
本文采用的這種動態(tài)模糊神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)如圖3所示,這種D-FNN結(jié)構(gòu)[6]是基于擴展的徑向基神經(jīng)網(wǎng)絡(luò),在功能上等價于TSK模糊系統(tǒng)x1.圖中,x1,x2,…,xr為輸入的語言變量,y為系統(tǒng)的輸出,MFij為第i個輸入變量的第j個隸屬函數(shù),Rj為第j條模糊規(guī)則,Nj為第j個歸一化節(jié)點,Wj為第j個規(guī)則的結(jié)果參數(shù)或連接權(quán),u為系統(tǒng)總的規(guī)則數(shù).第1層為輸入層,每個節(jié)點分別表示1個輸入的語言變量.第2層為隸屬函數(shù)層,每個節(jié)點分別代表1個隸屬函數(shù),采用高斯函數(shù)表示,該隸屬函數(shù)用高斯函數(shù)表示為
其中:μij為xi的第j個隸屬函數(shù),cij為第j個高斯隸屬函數(shù)的中心,σj為xi第j個高斯隸屬函數(shù)的寬度,r為輸入變量數(shù),u為隸屬函數(shù)的數(shù)量,也代表系統(tǒng)總的規(guī)則數(shù).
圖3 模糊神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
第3層為T-范數(shù)層,每個節(jié)點分別代表1個可能的模糊規(guī)則中的IF-部分,該層節(jié)點數(shù)反映了模糊規(guī)則數(shù).第j個規(guī)則的Rj輸出為
第4層為歸一化層,N節(jié)點數(shù)和模糊規(guī)則節(jié)點數(shù)相等.第j個節(jié)點Nj的輸出為
第5層為輸出層,該層中每個節(jié)點表示1個輸出變量,該輸出是所有輸入信號的疊加,即
動態(tài)模糊神經(jīng)網(wǎng)絡(luò)的算法主要有6個部分組成:1)系統(tǒng)誤差;2)可容納邊界;3)分級學(xué)習(xí);4)前提參數(shù)分配;5)結(jié)論參數(shù)(權(quán)值)訓(xùn)練算法;6)修剪技術(shù).算法流程圖見圖4.
系統(tǒng)誤差判據(jù).對于第i個觀測數(shù)據(jù)(Xi,ti),其中Xi是輸入向量,ti是期望的輸出,計算DFNN現(xiàn)有結(jié)構(gòu)的全部輸出yi.定義?ei? =?tiyi?,如果?ei? >ke,則要考慮增加1條新的規(guī)則,
這里ke的值是根據(jù)D-FNN期望的精度預(yù)先選定的.
可容納邊界判據(jù).對于第i個觀測數(shù)據(jù)(Xi,ti),計算輸入值xi和現(xiàn)有的RBF單元的中心Cj之間的距離di(j),即di(j)=?Xi-Cj?,j=1,2,…,u,其中u為現(xiàn)有的模糊規(guī)則或者RBF單元的數(shù)量.找出dmin=argmin(di(j)),如果dmin>kd,則以考慮增加1條新的模糊規(guī)則,否則,觀測數(shù)據(jù)Xi可以由現(xiàn)有的最近的RBF單元表示,這里kd是可容納邊界的有效半徑.
分級學(xué)習(xí).每個RBF單元的可容納邊界不是固定的而是動態(tài)調(diào)節(jié)的.起初,可容納的邊界設(shè)置較大,以實現(xiàn)全局學(xué)習(xí),隨著不斷學(xué)習(xí),邊界逐漸減少,開始局部學(xué)習(xí).基于單調(diào)遞減函數(shù),逐漸減少每個RBF單元的有效半徑和誤差指數(shù).也就是說,ke、kd不是常數(shù),ke=max[emax×β,emin],kd=max[dmax×γ,dmin].其中 emax為預(yù)先定義好的最大誤差,emin為期望的D-FNN精度,為收斂常數(shù),dmax為輸入空間的最大長度,dmin為所關(guān)心的最小長度,γ(0<γ<1)為衰減函數(shù).
前提參數(shù)分配.新產(chǎn)生的規(guī)則的初始參數(shù)按照如下方式分配:Ci=Xi,σi=k×dmin,其中k(k>1)是重疊因子.當(dāng)?shù)?個觀測數(shù)據(jù)(X1,t1)得到后,此時的DFNN還沒有建立起來,因此,這個數(shù)據(jù)將被選為第1條模糊規(guī)則:C1=X1,σ1=σ0.其中σ0為預(yù)先設(shè)定的常數(shù).
結(jié)論參數(shù)(權(quán)值)訓(xùn)練算法本文采用梯度下降法.
修剪技術(shù)本文采用誤差下降率法.ηi反映第i個規(guī)則的重要性ηi,當(dāng)ηi值越大,表示第i個規(guī)則越重要.如果ηi<kerr,則第i個規(guī)則可刪除,其中kerr表示預(yù)設(shè)的閥值.
圖4 D-FNN算法流程圖
針對電動加載系統(tǒng)的實際運行特點,考慮到其運行過程具有重復(fù)特性,僅有被加載對象頻繁更換,而加載電機、軸系等環(huán)節(jié)始終保持不變,各種非線性因素也具有一定的相似性,因此,典型型號舵機的加載測試數(shù)據(jù)就成為重要的先驗知識.電動加載系統(tǒng)在實際運行過程中往往是針對某個或某幾個型號的舵機進行大批量的加載測試,同型號的不同被測對象的電氣特性參數(shù)具有很大的相似性,這就決定了在測試同型號舵機的過程中,模糊神經(jīng)網(wǎng)絡(luò)辨識器和控制器的網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)會在很大程度上保持不變或者變化非常有限.雖然模糊神經(jīng)網(wǎng)路的突出優(yōu)勢就是它優(yōu)越的非線性逼近能力,但由于被控對象的參數(shù)僅在有限范圍內(nèi)作微小變動,不足以迫使已有的模糊神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)作大規(guī)模的變化和調(diào)整,所以在測試同型號舵系統(tǒng)的情況下,已獲得的加載系統(tǒng)測試數(shù)據(jù)就成為重要的先驗知識.但即使是同型號的舵系統(tǒng),其不同批次、不同個體的電氣特性參數(shù)也是服從一定的分布規(guī)律的,不可能完全一致,這就要求所設(shè)計的模糊神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)和參數(shù)要具有一定程度的在線修正和調(diào)整能力,以適應(yīng)每個單獨個體的測試需要.根據(jù)以上特點,設(shè)計了結(jié)合前饋反饋控制和直接逆控制的控制策略.該控制策略通過實時辨識負(fù)載模擬系統(tǒng)的逆模型,以產(chǎn)生補償信號,控制系統(tǒng)中有兩個動態(tài)模糊神經(jīng)網(wǎng)絡(luò),如圖5所示,D-FNN1用于系統(tǒng)的權(quán)值訓(xùn)練,D-FNN2則作為動態(tài)模糊神經(jīng)網(wǎng)絡(luò)補償控制器,用來產(chǎn)生適當(dāng)?shù)难a償控制量.系統(tǒng)運行過程中,D-FNN1利用在線更新算法,實時更新網(wǎng)絡(luò)結(jié)構(gòu)及參數(shù)以及時跟蹤被控對象逆模型的變化.
圖5 D-FNN控制系統(tǒng)
D-FNN2是D-FNN1(已訓(xùn)練好的權(quán)值和結(jié)構(gòu))的直接拷貝,實時調(diào)整補償控制量,當(dāng)DFNN1逐漸逼近系統(tǒng)的逆模型后,D-FNN2將逐漸消除PID控制器的控制量UPID的作用,使得輸出控制量UDFNN2=U,從而實現(xiàn)系統(tǒng)的輸出TL跟蹤輸入指令信號T,最終實現(xiàn)系統(tǒng)的跟蹤控制.雖然D-FNN2是D-FNN1的拷貝,但是它的權(quán)值會在控制器運行過程中作進一步調(diào)整,以補償建模誤差和未建模擾動.與其并行的PID控制器的作用在于保持系統(tǒng)的穩(wěn)定并獲得更快速的系統(tǒng)響應(yīng)和更佳的跟蹤精度.
根據(jù)本文提出的D-FNN控制策略,建立基于Matlab/Simulink環(huán)境下的系統(tǒng)仿真模型,并在不同的條件下對該控制策略的有效性進行仿真驗證,仿真系統(tǒng)如圖6所示.
圖6 Matlab/Simulink系統(tǒng)仿真模型
以20Hz、80N·m正弦轉(zhuǎn)矩指令信號作為系統(tǒng)激勵,關(guān)閉圖中的D-FNN1和D-FNN2控制器,此時,系統(tǒng)為一單位反饋閉環(huán)控制系統(tǒng),僅有PID控制器在起作用.其轉(zhuǎn)矩輸出曲線如圖7所示,可見此時的負(fù)載模擬系統(tǒng)轉(zhuǎn)矩跟蹤無論在幅值上還是在相位上都存在較大偏差,無法滿足系統(tǒng)所要求的跟蹤精度.打開D-FNN1和 DFNN2控制器D-FNN2控制器完全介入,與PID反饋控制器同時起作用,兩個控制器輸出的控制量之和為實際施加在被控對象上的控制量,如圖8可見加入D-FNN2控制器控制量后,輸出轉(zhuǎn)矩曲線與指令轉(zhuǎn)矩曲線已經(jīng)基本重合,極大地縮小了幅值及相位偏差,系統(tǒng)的跟蹤性能大大改善.圖9給出了兩種方式下轉(zhuǎn)矩跟蹤誤差的變化情況,穩(wěn)態(tài)情況下的誤差峰值已經(jīng)從32N·m減小到3.5N·m以下,轉(zhuǎn)矩伺服精度大大提高.
圖7 PID控制下轉(zhuǎn)矩跟蹤
圖8 D-FNN控制下轉(zhuǎn)矩跟蹤
圖9 兩種控制方式下的轉(zhuǎn)矩誤差比較
設(shè)定仿真轉(zhuǎn)矩指令為0N·m,舵機轉(zhuǎn)角指令為±2°,正弦波頻率分別為5、10Hz.采用DFNN控制對模型對象進行仿真,軸上輸出轉(zhuǎn)矩如圖10所示.
圖10 DFNN控制下的多余力矩
由圖10可見,在擾動為5Hz情況下,DFNN控制后的多余力矩約為0.5N·m;當(dāng)擾動為10Hz情況下,多余力矩約為1N·m.兩者消除多余力矩達(dá)到了97%,滿足控制系統(tǒng)性能指標(biāo)要求,顯示了該控制策略良好的多余力矩抑制能力.
1)電動負(fù)載模擬系統(tǒng)采用動態(tài)模糊神經(jīng)網(wǎng)絡(luò),無須很強領(lǐng)域的專家知識,對系統(tǒng)自動建模及抽取模糊規(guī)則,能夠?qū)ο到y(tǒng)進行準(zhǔn)確的辨識.
2)參數(shù)具有明確的物理意義,可根據(jù)經(jīng)驗選值,以便加快網(wǎng)絡(luò)的收斂速度,給使用者帶來了很大的方便.
3)結(jié)合前饋反饋控制和直接逆控制的復(fù)合控制策略,并聯(lián)的PID控制器,有助于系統(tǒng)穩(wěn)定和快速響應(yīng).
4)仿真顯示該控制方案獲得了很好的力矩伺服精度和抑制多余力矩的效果.
[1]王明彥.電動負(fù)載模擬技術(shù)的研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2004:29-34.
[2]羅雄飛,王明彥,劉暢.神經(jīng)元控制器在電動負(fù)載模擬器中的應(yīng)用[J].控制工程,2007,14:39 -42.
[3]LIU C M,CHUEN C W,LEUNG T P.Fuzzy trajectory control of an electrohydraulic servo mechanism using binary weighted valves[J].American Society of Mechanical Engineers,1995(2):15220.
[4]NAKAYANMA Y.Torque control method of three-inertia torsional system with backlash[C]//6th International Workshop On Advanced Motion Control.Nagoya,Japan:IEEE Conference Publications,2000:193 -198.
[5]葉正茂,李洪人.基于CMAC的船舶操舵系統(tǒng)負(fù)載模擬器復(fù)合控制[J].工程設(shè)計學(xué)報,2002,9(3):147-150.
[6]WU S Q.Dynamic fuzzy neural networks:a novel approach to function approximation[J].IEEE Trans,Man,Cybern:Part B,2000,30:358 -364.