安 欣, 高 峰, 楊巧玉, 楊學山
(1.中國地震局工程力學研究所 中國地震局地震工程與工程振動重點實驗室,哈爾濱 150080;2.哈爾濱理工大學 測控技術(shù)與儀器黑龍江省高校重點實驗室,哈爾濱 150080)
電磁式振動臺[1]適用于校準速度和加速度傳感器[2],以往校準多用正弦波和沖擊波作為信號源,而地震波拾振器專用于地震波采集,用地震波信號校準測震儀器更符合儀器真實工作環(huán)境[3]。此外部分測振儀器需要實時處理地震信號,如烈度計、地震緊急處置觸發(fā)裝置,因此,需要用地震波信號完成對此類儀器的檢測及校準,從而提高振動臺上地震波信號的復(fù)現(xiàn)精度。
前饋補償技術(shù)可在一定程度上拓寬振動臺系統(tǒng)的頻帶,改善動態(tài)特性,提高臺面波形復(fù)現(xiàn)精度[4]。前饋補償技術(shù)通常采用構(gòu)建系統(tǒng)逆模型的方法拓展頻帶寬度及增加穩(wěn)定性[5]。系統(tǒng)模型參數(shù)辨識常采用如最小二乘法[6]、最小均方差法[7]等方法。文獻[8]利用子帶自適應(yīng)辨識液壓振動臺系統(tǒng)模型,并復(fù)現(xiàn)振動臺功率譜密度。文獻[9]提出自適應(yīng)陷濾波器在線辨識頻率的自適應(yīng)反饋補償,消除試件與臺面對振動臺的影響,提高復(fù)現(xiàn)精度。文獻[10]提出了一種結(jié)合離線補償器的自適應(yīng)控制器,通過最小二乘法辨識加速度閉環(huán)傳遞函數(shù)并計算離線逆模型補償器。算法收斂速度快,跟蹤精度高。
迭代學習控制(iterative learning control,ILC)是一種不依賴于精確系統(tǒng)模型,僅需要少量信息即可達到很好控制效果的控制方法。由于計算過程不需要太多系統(tǒng)信息,所以在振動臺波形復(fù)現(xiàn)領(lǐng)域有很大的應(yīng)用空間。文獻[11]針對位移控制的振動臺提出了一種基于位移-加速度迭代控制方法,較以往位移迭代控制法收斂速度快。文獻[12]針對振動臺模型不確定性和外部擾動的干擾,提出自適應(yīng)重復(fù)學習控制算法,在系統(tǒng)中插入學習控制器,可不依賴于具體模型。但在振動臺迭代學習控制過程中需要優(yōu)化控制律參數(shù)。控制律參數(shù)的好壞直接影響控制算法的收斂速度以及復(fù)現(xiàn)精度。
粒子群(particle swarm optimization,PSO)算法在參數(shù)優(yōu)化算法中具有容易實現(xiàn)、收斂速度快等優(yōu)點。可以為多種算法優(yōu)化參數(shù),如PID控制[13-14]、模糊控制[15]、神經(jīng)網(wǎng)絡(luò)等[16]。孫明翰等[17]在粒子群算法收縮因子中加入擾動因子并仿真了雙輥薄帶振動鑄軋機液壓控制系統(tǒng),提高了收斂速度和求解精度。王闖等[18]提出了魚群-粒子群算法,引入了擁擠因子和馬爾科夫鏈并將該算法應(yīng)用于K-means聚類算法中。Xia等[19]改進了粒子群速度項的權(quán)重算法,提出了多角色的控制規(guī)則,提高粒子群收斂速度。
本文通過前饋逆模型補償電磁式振動臺系統(tǒng)頻帶寬度,改善系統(tǒng)動態(tài)特性,根據(jù)實際振動臺情況修改逆模型的構(gòu)造。簡化自適應(yīng)粒子群算法中的速度項目,提高收斂速度,并離線優(yōu)化帶遺忘因子的迭代學習律參數(shù),在減少迭代次數(shù)的同時,達到提高波形復(fù)現(xiàn)精度的目的。
圖1為LVC-5型小型電磁式振動臺3D示意圖,四片彈簧片作為彈性懸掛,穩(wěn)定臺面使其靜止在標尺零點。由動圈產(chǎn)生磁場推動臺面做水平運動。系統(tǒng)可看成單自由度系統(tǒng)。
圖1 電磁式振動臺3D模型Fig.1 3D model of electric shaking table
圖2(a)為振動臺力學模型,激振器通過電磁感應(yīng)產(chǎn)生推力F推動振動臺做往復(fù)運動,k為懸掛彈簧剛度;C為阻尼力系數(shù)(忽略空氣阻尼);M為臺面和載荷質(zhì)量;x為臺面相對于底座的運動位移;圖2(b)中驅(qū)動電壓為e,通過放大器放大K0倍生成輸入信號u加入激振器中。圖2(c)為激振器動圈上的等效電路,動圈等效電阻為R0;等效電感為L0;形成感應(yīng)電動勢G0sx。
(a)
(b)
(c)圖2 振動臺模型Fig.2 Mechanical model
振動臺的運動和電氣方程可表示成
(1)
圖3為振動臺的結(jié)構(gòu)框圖。
圖3 振動臺結(jié)構(gòu)框圖Fig.3 Structural block diagram of shaking table
設(shè):
(2)
則式(1)可寫成
(3)
式(3)為位移對驅(qū)動信號的傳遞函數(shù),而地震波采樣信號多取加速度信號,所以將式(3)位移量取兩次微分得到式(4)。
(4)
由式(4)可看出,加速度信號增益在n11與nn之間較為平坦。本文所用振動臺實際參數(shù)如表1所示。
表1 振動臺參數(shù)
振動臺頻域分析實際上是求取不同頻點輸入輸出的幅值和相位關(guān)系,通過輸入如下形式的不同頻率簡諧波信號
x(t)=Xsinωt=X(ejωt-e-jωt)/2j
(5)
式中:X為信號的幅值;ω為信號角頻率。系統(tǒng)傳遞函數(shù)為G(jω),輸入輸出關(guān)系可表示成
y(t)=X|G(jω)|sin(ωt+argG(jω))
(6)
式中:|G(jω)|表示系統(tǒng)的幅頻特性;arg(G(jω))為系統(tǒng)的相頻特性;ω=2πf為角頻率與頻率關(guān)系。
根據(jù)式(6)實測水平振動臺頻響特性如表2所示。
表2 水平振動臺頻響特性參數(shù)
從圖4中可看出仿真模型與實測數(shù)據(jù)在頻域中表現(xiàn)基本一致,在1~60 Hz頻段內(nèi)較為平坦。
為驗證振動臺模型一致性,將振動臺實際參數(shù)(表1)所示代入式(4)。并與表2中水平振動臺實測參數(shù)繪制到一張波特圖中作對比。
圖4 仿真與實測傳遞函數(shù)對比圖Fig.4 Comparison between simulation and measurement bode
為拓寬振動臺頻帶寬度,提高波形復(fù)現(xiàn)效果,在振動臺系統(tǒng)前加入前饋補償器,亦可看作前置濾波器,即構(gòu)造模型的逆函數(shù)
G(s)-1G(s)=1
(7)
式(7)的逆?zhèn)骱趯嶋H構(gòu)造時需根據(jù)情況編輯模型。逆系統(tǒng)對低頻信號增益較大,如果驅(qū)動信號存在較大的直流分量,將會導(dǎo)致輸出信號產(chǎn)生偏移量。而地震波低頻成分較豐富,因此需要重新編輯逆模型。首先,對增益較大部分進行平滑衰減,并保證曲線中不存在非線性部分;其次,需要拉平曲線首尾部分,由于后期要擬合并構(gòu)建逆?zhèn)鬟f函數(shù)曲線,在低頻和高頻擬合過程中,擬合曲線會沿曲線趨勢繼續(xù)提升,因此,也會造成低頻產(chǎn)生較大的增益,最后,通過系統(tǒng)零極點判斷系統(tǒng)穩(wěn)定性。圖5為直接通過式(7)得到的逆系統(tǒng)與通過上述方法修正后的逆系統(tǒng)對比圖。
圖5 逆函數(shù)數(shù)據(jù)優(yōu)化Fig.5 Inverse function data optimization
利用Levy法參考圖3模型擬合逆?zhèn)鬟f函數(shù)參數(shù)
(8)
振動臺可近似認為是一種重復(fù)運行的線性定常系統(tǒng),而復(fù)現(xiàn)地震波形的目的是要尋找控制輸入,使被控系統(tǒng)的實際輸出在有限次數(shù)重復(fù)運行過程中追蹤地震波期望信號。電磁式振動臺可視為線性定常系統(tǒng)
(9)
式中:系統(tǒng)狀態(tài)向量xk∈Rn,控制輸入uk∈Rr,輸出向量yk∈Rm;A∈Rn×n,B∈Rn×r,C∈Rm×n為實數(shù)矩陣。假設(shè)系統(tǒng)滿足(1)期望可達(2)初始狀態(tài)恒定。
目前地震波復(fù)現(xiàn)主要采用迭代控制(iterative learning control, ILC)方法。本文提出一種帶遺忘因子的反饋輔助PD型迭代學習算法
(10)
式中:k為迭代次數(shù);r為遺忘因子,r∈[0,1]當系統(tǒng)產(chǎn)生大幅擾動時,遺忘因子可消減擾動對系統(tǒng)的影響;Γ為微分增益系數(shù);L為比例增益系數(shù);yk、uk為系統(tǒng)第k次迭代的驅(qū)動信號和輸出信號;yd為振動臺期望信號;ek為系統(tǒng)實際輸出與期望信號的誤差。
定理 若系統(tǒng)滿足
(2) 系統(tǒng)初始不變xk(0)=x0(k=1,2,3…)
證明 式(10)中第k+1次迭代誤差可寫成
(11)
(12)
求導(dǎo)得
(13)
(14)
上式兩端取λ范數(shù)
(15)
由Bellman-Gronwall引理和式(9)可得
(16)
對式(16)取λ范數(shù)
(17)
式(17)代入式(15)得
(18)
(19)
通過上述分析,本文所用的帶遺忘因子的反饋輔助PD型學習算法能夠跟蹤期望軌跡,并且由于引入了上一次迭代和當前迭代的誤差信號更新控制輸入,形成閉環(huán)控制,能保證系統(tǒng)快速收斂。
粒子群算法可提前預(yù)估學習律模型中的參數(shù)。粒子群算法是一種仿生學算法,結(jié)合鳥群捕食的策略,通過群體獲取的信息更新個體信息。
(20)
權(quán)重信息ω為公式中較重要的參數(shù)。慣性權(quán)重參數(shù)選擇過大和過小都不合理,ω過大系統(tǒng)全局搜索能力強,ω過小的話系統(tǒng)局部搜索能力強。所以參數(shù)ω調(diào)整應(yīng)該結(jié)合自身位置、迭代次數(shù)等參數(shù)動態(tài)調(diào)整。設(shè)定ω調(diào)節(jié)范圍[ωmin,ωmax]
(21)
式中:f為粒子群的目標函數(shù)值;fmin代表粒子群目標函數(shù)最小值;favg代表粒子群目標函數(shù)平均值。
式(21)中,當粒子群距離比較分散時,即所處位置目標函數(shù)值低于平均標準時,減小慣性權(quán)重。增強尋找局部最優(yōu)解的能力,當粒子目標值高于平均值時,則加大慣性權(quán)重加速收斂。
將式(20)更改為如下形式
(22)
(23)
式(23)變換得
(24)
將式(24)整理得
(25)
式(25)說明位置信息迭代式與速度項無關(guān),可化簡:
(26)
式(26)由二階方程化簡為一階方程,計算過程更簡單,效率更高。
粒子群算法的適應(yīng)度函數(shù)測試函數(shù)有很多,本文選取Griewank、Rastrigin及Schaffer三個函數(shù)作測試函數(shù),測試改進粒子群算法的執(zhí)行效果。
Griewank函數(shù)是一個多峰值函數(shù)x=0為全局最優(yōu)解f(x)=0函數(shù)有多處局部最小值點。容易陷入局部最優(yōu)解。考驗逃出局部極小值點的能力。表達式為
(27)
x∈[-600,600]
Rastrigrin在x=0有全局最優(yōu)解f(x)=0函數(shù)有多處局部最小值點,峰值較Griewank更多,表達式為
(28)
x∈[-600,600]
Schaffer函數(shù)全局最大點在0點處,在距全局最大點3.14的范圍內(nèi),有無限個局部最大值點。其表達式為
(29)
x∈[-100,100]
圖6中改進粒子群算法標記為SPSO,基本PSO算法標記為BPSO。為了增加測試難度,將維度設(shè)置為30,迭代次數(shù):100,種群大小為40。對比三種測試函數(shù)的適應(yīng)度迭代曲線,改進粒子群算法尋優(yōu)速度快,逃離局部極小值效果比未做改進的粒子群算法更快。
粒子群算法中的目標函數(shù)是算法中個體位置好壞的評價標準。本文粒子群算法需計算迭代學習律中參數(shù),以保證臺面復(fù)現(xiàn)精度快速提升。所以采用相關(guān)系數(shù)作為粒子群算法的目標函數(shù),相關(guān)系數(shù)可評價兩個波形相似程度。假設(shè)采用X的線性表達式a+bX與Y比較,求得均方誤差為
(30)
均方誤差可衡量a+bX與Y的相似程度。e越小則兩曲線越相似。改變a、b值使e最小即X線性變換后與Y的相似度最高。對e求a、b偏導(dǎo)數(shù)并令其等于零
(31)
(a) Griewank測試函數(shù)下BPSO與SPSO性能比較
(b) schaffer測試函數(shù)下BPSO與SPSO性能比較
設(shè)
(32)
將a0,b0代入式(30)得
(33)
首先,通過粒子群算法尋找最優(yōu)迭代控制律參數(shù)r、Γ、L,使迭代波形復(fù)現(xiàn)度提升到最高。
如圖7所示,PSO算法首先生成隨機的r、Γ、L控制率參數(shù)、計算出新的驅(qū)動函數(shù)uk+1并疊加噪聲新號。經(jīng)過式(8)的逆系統(tǒng)后輸入給振動臺的傳遞函數(shù),得到振動臺仿真輸出信號yk與期望信號yd的誤差作為迭代學習控制系統(tǒng)的ek,同時計算輸出與期望信號的相關(guān)系數(shù)作為改進PSO算法的適應(yīng)值。通過PSO不斷迭代求得最優(yōu)rbest、Γbest、Lbest,以減少迭代次數(shù)及提高復(fù)現(xiàn)精度。然后將最低適應(yīng)值對應(yīng)的驅(qū)動信號uk代入真實振動臺試驗中
(34)
經(jīng)式(34),進行過少量迭代繼續(xù)提高復(fù)現(xiàn)精度,使相關(guān)系數(shù)波動不超過0.05為止。
圖7 粒子群算法計算最優(yōu)迭代控制率Fig.7 Calculation of optimal ILC rate by PSO
2008年汶川地震臺網(wǎng)數(shù)字記錄質(zhì)量較高,從14個臺站42組記錄中選取不同的震中距、峰值加速度、頻譜分布范圍等參數(shù)的5組地震波數(shù)據(jù)作為驅(qū)動信號,如表3所示。
表3 地震波記錄對比
圖8為該5組數(shù)據(jù)的加速度時域波形及自功率譜密度。
圖8 地震波波形及自功率譜Fig.8 Seismic waveform and self-power spectrum
采用式(26)改進粒子群算法,粒子群數(shù)為40、c1、c2為2,最大迭代次數(shù)為60次,迭代速度控制在[-1,1]區(qū)間。驅(qū)動波形信噪比設(shè)為50 dB。振動臺模型根據(jù)式(11)和表1中參數(shù)設(shè)定。迭代結(jié)果如圖9所示。
圖9適應(yīng)值均收斂到0附近(適應(yīng)值為0表明復(fù)現(xiàn)波形與地震波信號完全一致)。對于以上五種地震波信號,基于改進粒子群迭代學習算法均有效的計算出最優(yōu)迭代學習控制率參數(shù),能在較少的迭代次數(shù)下達到較高的復(fù)現(xiàn)精度。
為驗證算法結(jié)果的有效性,將計算得到參數(shù)在圖10所示LVC-5型小型振動臺中測試。通過NI PXI-6281數(shù)采卡發(fā)送和采集數(shù)據(jù)。與文獻[12]中方法對比。
表4中數(shù)據(jù)可以看到,PSO-ILC在迭代次數(shù)和復(fù)現(xiàn)精度方面均優(yōu)于同類算法。
表4 算法對比
(a) 茂縣地辦:r=0.28,Γ=1.79,L=0.61
(b) 沙灣:r=0.32,Γ=0.74,L=0.03
(c) 廣元石井r=9.32,Γ=1.69,L=0.14
(d) 臥龍:r=0.12,Γ=0.25,L=0.13
(e) 綿竹清平:r=1.49,Γ=0.97,L=0.35圖9 粒子群參數(shù)優(yōu)化曲線Fig.9 Particle swarm parameter optimization curve
圖10 電磁式振動臺Fig.10 Electric shaking table
本文首先建立系統(tǒng)模型,并在模型前加入前饋逆模型,用來改善系統(tǒng)頻帶寬度,增強系統(tǒng)動態(tài)特性。然后提出了帶遺忘因子的反饋輔助PD型迭代學習控制算法,并驗證了算法的收斂性。遺忘因子可消除擾動對系統(tǒng)的影響,誤差迭代效果更平滑。此外,引入反饋輔助利用之前的誤差導(dǎo)數(shù)及當前的誤差信號作為修正項,加快收斂速度的同時解決了當前誤差信號求導(dǎo)帶來的非因果問題。之后,通過粒子群算法優(yōu)化迭代控制律中參數(shù),提出了一種簡化速度項的粒子群算法,把算法變?yōu)橐浑A方程,通過三個測試函數(shù)對比基本粒子群算法,改進算法收斂速度快,逃離局部最優(yōu)解能力強。最后利用改進粒子群算法優(yōu)化帶遺忘因子的反饋輔助PD型迭代學習律中的三個參數(shù)。使迭代過程更快速的收斂,減少迭代次數(shù)的同時提高復(fù)現(xiàn)精度。
將模型離線計算出的迭代學習律參數(shù)用于實際振動臺試驗中,并對比其他迭代算法。本文所采用的方案具有迭代速度快、復(fù)現(xiàn)精度高的特點。