孔建平,高強,侯遠龍
(南京理工大學 機械工程學院,江蘇 南京 210094)
某海上火箭炮武器系統(tǒng)由于海洋環(huán)境擾動的作用、摩擦阻力和轉(zhuǎn)動慣量、射擊時較大的擾動力矩(強沖擊)、機械傳動的誤差(如齒輪間隙)和機械傳動系統(tǒng)的彈性變形,使得該伺服系統(tǒng)是一典型的非線性時變系統(tǒng)。采用常規(guī)的PID 控制器將無法得到響應(yīng)快、控制精度高的交流位置伺服系統(tǒng)。小波神經(jīng)網(wǎng)絡(luò)為交流位置伺服系統(tǒng)控制開辟了一條新途徑。而有關(guān)小波神經(jīng)網(wǎng)絡(luò)的研究目前大都處于仿真研究階段,主要原因是小波神經(jīng)網(wǎng)絡(luò)控制器運算復(fù)雜、計算量大,一般的CPU 難以滿足實時計算要求[1]。本文采用DSP 作為控制與運算單元,提出了一種針對不確定、不確知的系統(tǒng)和環(huán)境的在線實時控制系統(tǒng),成功地實現(xiàn)了交流位置伺服系統(tǒng)的控制,且保證了系統(tǒng)的動、靜態(tài)品質(zhì)。
某炮控交流伺服系統(tǒng),其控制系統(tǒng)結(jié)構(gòu)圖如圖1所示。
圖1 炮控交流伺服系統(tǒng)結(jié)構(gòu)圖
小波神經(jīng)網(wǎng)絡(luò)控制系統(tǒng)結(jié)構(gòu)圖如圖2 所示。
圖2 小波神經(jīng)網(wǎng)絡(luò)控制系統(tǒng)結(jié)構(gòu)圖
采用雙DSP 作為海上火箭炮武器系統(tǒng)的控制模塊,其中DSP_1 作為小波神經(jīng)網(wǎng)絡(luò)的控制器,另一片DSP_2作為對象(此非線性交流伺服系統(tǒng))的BP 神經(jīng)網(wǎng)絡(luò)辨識器。r 為目標位置量,y 為當前位置量,e 為r 與y 的差值,u 為控制電壓,為辨識器辨識y 的辨識量。
雙DSP 的硬件架構(gòu)如圖3 所示。
圖3 中雙口RAM 左邊是控制部分,右邊為辨識部分。控制計算機給出的目標角度值(r)經(jīng)過CAN 通信給控制器DSP_1,r 與y 的差值e,經(jīng)過小波神經(jīng)網(wǎng)絡(luò)算法計算出DA 值(u),通過DA 模塊輸出。DA 值(u)再經(jīng)過雙口RAM 共享到DSP_2,當前位置量y 通過RDC 模塊,經(jīng)過I/O_2 輸入給DSP_2。u 與y 作為辨識器DSP_2 的BP 網(wǎng)絡(luò)的輸入,輸出為,與y 的差值e1,通過誤差反傳改善BP 神經(jīng)網(wǎng)絡(luò)的權(quán)值。下一時刻,控制計算機給出下一個目標角度值(r),由于控制對象還未及時做出響應(yīng),得不到這一時刻的y,所以辨識器必須預(yù)測出這一時刻的,r與的差值e2,通過誤差反傳改善小波神經(jīng)網(wǎng)絡(luò)的權(quán)值和小波平移因子和伸縮因子。通過EEPROM_1 保存小波神經(jīng)網(wǎng)絡(luò)的權(quán)值和小波平移因子和伸縮因子,BP 神經(jīng)網(wǎng)絡(luò)的權(quán)值由EEPROM_2 保存。
圖3 雙DSP 的硬件架構(gòu)
對?Ψ∈L2(R),如果Ψ(t)的傅里葉變換(w)滿足如下可容許條件:
則稱a,b∈R,a≠0 是一個基本小波(“基小波”)。
由小波母函數(shù)進行伸縮和平移生成的函數(shù)系{Ψa,b(t)}
稱為由小波母函數(shù)Ψ 生成的依賴于參數(shù)a 和b 的連續(xù)小波,其中,a 是尺度參數(shù),b 是平移參數(shù),且a,b∈R,a≠0,時間變量t、伸縮因子a 和位移因子b 都是連續(xù)變量。
目前小波神經(jīng)網(wǎng)絡(luò)的研究廣泛采用將常規(guī)神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點激勵函數(shù)用小波函數(shù)代替,相應(yīng)的輸入層到隱層的權(quán)值及隱層閥值分別由小波函數(shù)的尺度參數(shù)和平移參數(shù)代替。連續(xù)性小波網(wǎng)絡(luò)的結(jié)構(gòu)如圖4 所示。
圖4 連續(xù)性小波網(wǎng)絡(luò)的結(jié)構(gòu)圖
小波神經(jīng)網(wǎng)絡(luò)參數(shù)的算法可以采用梯度下降法、正交搜索法等。實際上,由于小波神經(jīng)網(wǎng)絡(luò)的輸出與其權(quán)值是線性的,不存在像常規(guī)BP 神經(jīng)網(wǎng)絡(luò)那樣的局部極小缺陷,所以,可直接利用最小二乘法或數(shù)值魯棒性更好的正交最小二乘法、UD 分解最小二乘法等方法辨識權(quán)系數(shù)[3]。
小波神經(jīng)網(wǎng)絡(luò)隱層節(jié)點個數(shù)的選擇可借鑒以下經(jīng)驗公式[4]:
式中,N 為隱層節(jié)點數(shù);n 為輸入節(jié)點數(shù);m 為輸出節(jié)點數(shù)。
此系統(tǒng)中,n,m=1,N=1.899 9,四舍五入取N=2。另外,采用已經(jīng)被用于各種領(lǐng)域的Morlet 小波(cos(1.75t)exp(-t2/2))作為神經(jīng)網(wǎng)絡(luò)的激勵函數(shù)。
小波神經(jīng)網(wǎng)絡(luò)的權(quán)值初始化同BP 神經(jīng)網(wǎng)絡(luò)一樣比較簡單,但是小波函數(shù)的伸縮參數(shù)和平移參數(shù)aj和bj(j=1,2)的初始化稍微復(fù)雜一些。若小波神經(jīng)網(wǎng)絡(luò)初始化沒做好,網(wǎng)絡(luò)可能不會收斂。
為了初始化aj和bj,先要在輸入域[c,d]當中找到一個點p,即c <p <d。為了選擇點p,首先引進一個密度函數(shù):
在計算密度函數(shù)中,可以粗略估計η(x)的大小,這樣就可以把區(qū)間[c,d]的重心賦予p,即:
把p 點選擇好以后,可以令a1=p,b1=ξ(d-c)
式中,ξ 取一個合適的正數(shù)常量(典型的可以取0.5)。這樣,區(qū)間[c,d]就被點p 分為兩個區(qū)間了。任取一個區(qū)間重復(fù)以上步驟,就可以初始化參數(shù)a2和b2了。
本文的DSP 芯片采用TI 公司的TMS320F28335,雙口RAM 芯片采用CY7C057V,DA 芯片采用16 位DAC8544,雙口RAM 和DA 芯片與DSP 的外部接口相連。主程序流程圖如圖5 所示。控制器系統(tǒng)通電初始化結(jié)束后進入CAN 接受中斷。若產(chǎn)生CAN 中斷響應(yīng)進入主循環(huán)。然后進行讀取I/O 操作、小波神經(jīng)網(wǎng)絡(luò)算法、DA 轉(zhuǎn)換、雙口RAM 寫操作、CAN 接受中斷、雙口RAM 中斷、雙口RAM讀操作、修改小波神經(jīng)網(wǎng)絡(luò)權(quán)值、小波平移因子和伸縮因子。辨識器系統(tǒng)通電初始化結(jié)束后進入主循環(huán),然后進行雙口RAM 中斷、雙口RAM 讀操作、讀取I/O 操作、BP 神經(jīng)網(wǎng)絡(luò)辨識、預(yù)測、修改神經(jīng)網(wǎng)絡(luò)權(quán)值、雙口RAM 寫操作。
該型火箭炮伺服系統(tǒng)的水平方向技術(shù)指標如下:炮塔由0 mil 轉(zhuǎn)至3 000 mil 的時間應(yīng)小于6 s,穩(wěn)態(tài)誤差范圍為-1.2 mil~1.2 mil。對于輸入階躍信號和正弦信號,系統(tǒng)的控制實驗結(jié)果如下。
1)階躍輸入信號
3 000 mil 大范圍調(diào)炮控制效果圖如圖6,圖7,圖8所示。
圖5 主程序流程圖
圖6 調(diào)炮3 000 mil 系統(tǒng)跟蹤響應(yīng)曲線
圖7 調(diào)炮3 000 mil 系統(tǒng)跟蹤響應(yīng)誤差曲線
圖8 局部放大圖
從圖6,圖7,圖8 中可以看出,本文設(shè)計的控制器對該系統(tǒng)進行大范圍調(diào)炮時,響應(yīng)速度快,小于系統(tǒng)要求的6 s 技術(shù)指標,僅有一次1.2 mil 超調(diào)并能很快穩(wěn)定,基本無振蕩,對干擾信號抑制效果較好,且穩(wěn)態(tài)誤差小于±0.3 mil,完全能夠滿足系統(tǒng)的性能要求。
2)正弦輸入
系統(tǒng)的正弦輸入響應(yīng),主要檢驗系統(tǒng)的加速度特性。若輸入信號的頻率過快,則可能會因系統(tǒng)本身的響應(yīng)較慢而無法跟蹤目標位置,造成控制效果的失真。故本文采用的正弦輸入信號為r(t)=20sin(0.4π × t),其幅值為20 mil,周期為5 s??刂菩Ч鐖D9,圖10 所示。
圖9 正弦輸入的系統(tǒng)響應(yīng)跟蹤曲線
圖10 跟蹤誤差曲線
從圖9 和圖10 看出系統(tǒng)具有很好的加速度特性,對干擾信號有較好的抑制,能夠很好的跟蹤正弦輸入,且誤差一直保持在±0.3 mil 之間,完全能夠滿足系統(tǒng)的精度要求。
本文所設(shè)計的雙DSP 系統(tǒng)很好地實現(xiàn)了小波神經(jīng)網(wǎng)絡(luò)控制器和BP 辨識器數(shù)據(jù)共享與協(xié)同處理,小波神經(jīng)網(wǎng)絡(luò)有較強的函數(shù)學習能力和逼近能力。實驗結(jié)果表明,設(shè)計系統(tǒng)的響應(yīng)速度快,基本無超調(diào),最終的穩(wěn)態(tài)誤差都能保持在±0.3 mil 之間,且跟蹤速度快,無滯后現(xiàn)象,有著很好的加速度性能。該雙DSP 控制器完全能夠滿足此類型炮控系統(tǒng)的要求。但是由于神經(jīng)網(wǎng)絡(luò)是并行結(jié)構(gòu),而且DSP 的多種中斷難以保證兩片DSP 的數(shù)據(jù)共享與高度的同步性。故高度并行的FPGA 將是將來神經(jīng)網(wǎng)絡(luò)研究重點。
[1]高建臣,陳之龍,吳平東.DSP 在模糊神經(jīng)網(wǎng)絡(luò)控制器中的應(yīng)用[J].北京理工大學學報,1996,16(5):538-544.
[2]田雨波.混合神經(jīng)網(wǎng)絡(luò)技術(shù)[M].北京:科學出版社,2009:298.
[3]田雨波.混合神經(jīng)網(wǎng)絡(luò)技術(shù)[M].北京:科學出版社,2009:301.
[4]高大啟.線性基本函數(shù)面向三層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)研究[J].電路與系統(tǒng)學報,1997,2(3):31-37.