安 欣,高 峰,楊巧玉,楊學山
(1.中國地震局工程力學研究所,中國地震局地震工程與工程振動重點實驗室,黑龍江哈爾濱 150080;2.哈爾濱理工大學,測控技術與儀器黑龍江省高校重點實驗室,黑龍江哈爾濱 150080)
電動式振動臺[1-2]一般用于儀器校準、結構振動測試、地震波復現(xiàn)等領域。在測試過程中,不僅需要以正弦波信號作為激勵源,還要還原地震波信號。這就對振動臺自身性能有較高的要求,一般地震波頻譜覆蓋范圍是0~90 Hz,而臺面帶寬在開環(huán)狀態(tài)下一般為1.5~50 Hz。通常增加速度、位移、加速度反饋構成閉環(huán)控制增加帶寬[3-5],也有一些智能控制算法如滑膜控制、模糊控制、神經(jīng)網(wǎng)絡等也一定程度上改善臺面波形復現(xiàn)效果。但隨著臺面載荷質量改變、導軌摩擦力、隔振等外部因素影響,也一定程度改變振動臺自身參數(shù)及頻響特性。
迭代學習控制(iterative learning control,ILC),是一種不依賴于系統(tǒng)模型的控制算法,用于可重復運動的控制系統(tǒng)中,通過迭代學習律改變輸入信號以達到跟蹤期望信號的目的[6],是一種智能控制算法,由Uchiyama提出,1984年,S.Arimoto等人提出PID型迭代學習律[7-8]。至此迭代學習算法被廣泛應用于可重復運動系統(tǒng)中[9-11]。
在振動臺測試研究中,測試儀器多采用信號發(fā)生器及數(shù)采卡配套采集軟件,采集數(shù)據(jù)后通過數(shù)值計算軟件分析結果后再重復此過程。測試過程繁瑣,自動化程度低,在做重復性實驗時,需要試驗完成后一段時間才能給出。針對上述問題,本文采用虛擬儀器技術開發(fā)振動臺專用迭代學習控制系統(tǒng),達到針對特定環(huán)境、載荷、隔振等外部因素快速復現(xiàn)振動臺波形的目的。同時,實時顯示采集波形信號、分析波形頻譜、保存實驗數(shù)據(jù)、生成實驗報告等功能。迭代過程完全自動無需專業(yè)人員值守,并自動分析迭代結果,如產(chǎn)生大幅擾動或迭代到達預期閾值能夠自動停止。
電動式標準振動臺通過激勵電壓信號在電磁線圈中產(chǎn)生磁場力驅動臺面做切割磁感線圈運動。所以需要將復現(xiàn)波形加速度電壓信號作為驅動信號輸入給放大器中,輸出信號驅動振動臺激振器。
圖1為振動臺迭代學習系統(tǒng)總框圖,根據(jù)原始信號生成驅動信號,將驅動信號通過數(shù)據(jù)采集卡PXI-6281輸出給功率放大器中,之后控制振動臺做加速度往返運動復現(xiàn)波形,臺面安置941B加速度傳感器采集加速度信號,通過數(shù)據(jù)采集卡返回給虛擬儀器控制系統(tǒng)。
圖1 振動臺系統(tǒng)原理框圖
圖2為軟件系統(tǒng)內(nèi)部算法原理圖,內(nèi)置地震波形數(shù)據(jù)并保存于程序目錄下。信號通過逆系統(tǒng)再經(jīng)過迭代學習律生成新驅動信號,可做歸一處理、比例變換、補充零點功能,之后發(fā)送數(shù)采卡,從數(shù)采卡采集波形也可做以上運算,并顯示實時波形和加窗頻譜曲線。通過與原始波形的相關分析,判定波形復現(xiàn)精度,如果相關度在逐步提高并沒有達到目標值鄰域,則繼續(xù)迭代計算,再次生成新的驅動信號繼續(xù)迭代。如果達到相關系數(shù)不再提高和達到設定閾值鄰域之一則停止迭代,生成報告并輸出。
圖2 迭代學習控制算法內(nèi)部原理
圖3為中國地震局工程力學研究所電動式地震標準振動臺,臺面載荷即傳感器。激振器內(nèi)有動圈。外加電壓轉換成電流產(chǎn)生磁場控制振動臺運動。
圖3 電動式地震標準振動水平臺
圖4(a)為力學模型,圖4(b)為電器模型。模型中:u為輸入電壓信號;I為輸入電流;M為臺面質量;k為彈簧剛度;C為阻尼系數(shù);x為臺面位移;F為激振器推力;R0為動圈內(nèi)阻;L0為動圈電感;G0為機電耦合系數(shù),則線圈的感應電動勢為G0sx,其中s為拉氏變換算子。
(a) (b)圖4 振動臺等效模型
可列方程:
(1)
式中:e為線圈激勵電壓;K0為放大器的比例系數(shù)。
式(1)中整理得到圖5傳遞函數(shù)方框圖。
圖5 傳遞函數(shù)方框圖
即:
(2)
系統(tǒng)幅頻響應曲線見圖6,振動臺加速度頻譜曲線通頻帶在一定區(qū)間內(nèi)。相頻特性對本文結果影響不大,所以不做討論。
圖6 振動臺傳遞函數(shù)
由于系統(tǒng)的低頻與高頻特性造成信號衰減。在系統(tǒng)中加入了逆系統(tǒng)模型以補償頻率特性,即:
G(s)-1G(s)=1
(3)
G(s)-1與系統(tǒng)本身傳遞函數(shù)互補。如圖7所示。
圖7 逆系統(tǒng)傳遞函數(shù)
虛擬儀器開發(fā)速度快,本身數(shù)據(jù)采集功能強大,適用于本文所述環(huán)境。在逆函數(shù)運算部分LabVIEW處理能力有限,因此采用MATLAB處理傳遞函數(shù)、逆函數(shù)的構建、曲線擬合及驅動信號反演,與LabVIEW混合編程。
軟件構造如圖8,首先程序初始化波形保存格式、迭代參數(shù)、波形整定參數(shù)、采樣率、采樣方式等數(shù)據(jù)。數(shù)采卡同步發(fā)出和采集波形,通過放大器發(fā)送給振動臺,臺面加速度通過941B傳感器返回給AI(模擬信號輸入)接口。采樣率為每秒鐘采集200點。地震波信號首先通過LabVIEW與MATLAB混合編程的逆函數(shù)模塊,生成驅動信號,之后輸出給放大器。信號采集過程中實時顯示采集的波形并顯示。采集完成后自動保存到指定文件夾同時加載數(shù)據(jù)并分析與期望信號的相關系數(shù),得到波形復現(xiàn)精度,同時也對自功率譜做同樣的分析。
圖8 軟件整體框圖
相關系數(shù)可作為評價臺面波形與期望波形相似程度的一種技術指標。相關系數(shù)是研究變量之間線性相關程度的量,是無量綱的量。當2個隨機變量X和Y是相互獨立的,如用X的線性表達式aX+b與Y比較,求得均方誤差為
e=E[(Y-(a+bX))2]
=E(Y2)+b2E(X2)+a2-2bE(XY)+2abE(X)-2aE(Y)
(4)
式中E(X)為X的期望。
對兩者均方誤差展開后得到式(4),兩者誤差越小則越相近。因此,改變變量a、b的值,使均方誤差e達到最小即可:
(5)
設X和Y協(xié)方差表達式為
Cov(X,Y)=E{[X-E(X)][Y-E(Y)]}
(6)
(7)
式中D(x)為方差。
將此時的a、b的值帶回到式(4)中,得到此時均方誤差最小值為
(8)
|ρXY|∈[0,1],能夠很好表達X、Y近似程度,為1則表示X、Y完全一致。如果ρXY=-1則表示兩波形完全一致但相位相反。
系統(tǒng)旨在復現(xiàn)地震波信號,所以利用相關系數(shù)來評判復現(xiàn)波形與原始數(shù)據(jù)的一致程度。為了防止延遲等因素造成采集數(shù)據(jù)與原始數(shù)據(jù)的數(shù)據(jù)長度不一致,而相關系數(shù)在計算過程中必須保證X、Y的數(shù)據(jù)長度一致,否則無法計算。因此,需要對采集波形做對齊處理。
由式(7)、式(8)可知,當兩隨機數(shù)據(jù)均方誤差最小時,相關系數(shù)最大。設Y的數(shù)據(jù)長度為N,X的數(shù)據(jù)長度為M。在X上取與Y長度相等一段Xn(n∶n+N),n為起始點位置,n+N為經(jīng)過數(shù)據(jù)長度后的終止點位置;將每個Xn與Y進行相關系數(shù)分析得數(shù)組ρn,其中maxρn為X,Y均方誤差最小點,兩波形相似度最高,表明波形對齊。
圖9為相關系數(shù)計算模塊,為系統(tǒng)子VI,包括2個輸入端,即2路波形文件地址(TDMS格式);5個輸出端,即相關系數(shù)、自功率譜相關系數(shù)、2路波形顯示和程序運行進度條,同時輸出對齊波形方便調(diào)用。圖10為對齊后兩波形狀態(tài),其相關系數(shù)為0.87。
圖10 利用相關系數(shù)對齊波形效果圖
式(3)提到過前饋補償器的設計,在對振動臺傳遞函數(shù)求逆以及振動臺波形反演逆推驅動信號過程中涉及到大量矩陣運算。本文選用MATLAB函數(shù)計算引擎完成該部分功能,在計算機中安裝MATLAB計算引擎,在LabVIEW程序中加入MATLAB script節(jié)點,將程序寫入其中并引出交互變量data和datan作為模塊輸入輸出。如圖11所示
圖11 前饋補償模塊
函數(shù)首先調(diào)用波形文件,將波形文件中波形數(shù)據(jù)轉置后輸入MATLAB script節(jié)點,在MATLAB script節(jié)點函數(shù)中建立系統(tǒng)逆模型,并修改模型低頻特性參數(shù),將波形反演求出振動臺驅動信號。
迭代學習控制能將可重復運行系統(tǒng)經(jīng)過多次循環(huán)控制,完成將被控量接近期望量的一種智能算法。如圖12所示。
圖12 迭代學習算法示意圖
uk為系統(tǒng)第k次迭代的驅動信號,yd為輸出信號,yk為期望信號,ek為誤差信號,ek=yd-yk。迭代學習算法是利用某種控制律將驅動信號與誤差信號聯(lián)系起來,推導出新的驅動信號uk+1。理論上,當?shù)螖?shù)無限增大時,誤差趨近于0,而實際中,由于系統(tǒng)本身存在噪聲、擾動等因素,迭代只能收斂于期望信號附近,不能完全跟蹤。
在理論上,如果k趨向于無窮時,ek趨近于0,則說明迭代控制是收斂的。然而在實際應用中,系統(tǒng)本身存在狀態(tài)擾動、測量噪聲、輸入擾動等干擾,迭代系統(tǒng)會收斂到期望軌跡的鄰域內(nèi)。常見的學習律有D型、P型、PI型、PD型等。以上幾種均可視作PID型迭代學習算法比例、積分、微分系數(shù)取零的特例。因此,系統(tǒng)在算法設計中直接采用PID型迭代學習算法,在此基礎上加入遺忘因子,即本次迭代過程按百分比遺忘上次迭代數(shù)據(jù)并混入初次迭代信號,當系統(tǒng)受到大幅擾動影響時,該部分可減小擾動造成的影響。
(10)
式中:r為收縮因子;Γ為微分項系數(shù);L為比例項系數(shù);Ψ為積分項系數(shù):
圖13為軟件的主界面,主要分為2部分,一部分為波形及迭代次數(shù)信息顯示卡,如圖13左側,該部分顯示系統(tǒng)工作狀態(tài)、迭代時長、迭代次數(shù)等信息,如不采用迭代控制算法,則軟件可單純實現(xiàn)數(shù)采功能。右側為5個選項卡,分別為參數(shù)設置、結果顯示、AI輸入波形、AO輸出波形及說明文件。該部分對系統(tǒng)信息進行詳細設計,同時可以實時觀測采集波形狀態(tài)。
圖13 迭代學習控制系統(tǒng)首頁
迭代循環(huán)結束后,自動判別迭代效果,如果相關系數(shù)比前次有所提升,則自動把本次計算結果及參數(shù)填寫到表格中并將波形數(shù)據(jù)以迭代名保存。本次迭代結束后迭代次數(shù)自動加1,繼續(xù)下次迭代直到達到指定期望值或指定迭代次數(shù)后停止。
在測試過程中會遇到外界干擾、斷電、改變參數(shù)等因素影響造成本次迭代效果無效的情況。軟件加入對此類問題的判別程序,如相關系數(shù)大幅降低,則詢問并取消本次結果并重新開始本次迭代。
選取廣元石井東西向地震波測試系統(tǒng)功能。遺忘因子r為0.28;比例系數(shù)為0.1;微分系數(shù)為1.79;積分系數(shù)為0.1,測試結果如表1所示。
表1 廣元石井迭代數(shù)據(jù)
將表1中數(shù)據(jù)繪制成圖14,振動臺復現(xiàn)隨迭代次數(shù)增加而增加,到達0.97附近時相關系數(shù)提升效果不明顯,波形復現(xiàn)效果收斂到該值附近。而自功率譜一直處于較高復現(xiàn)精度,表明波形復現(xiàn)度增加后,對頻譜成分影響不大。
圖14 廣元石井迭代曲線
本文利用虛擬儀器在振動臺上完成迭代學習系統(tǒng)設計,通過迭代學習控制算法,實現(xiàn)振動臺波形復現(xiàn)。只需簡單設置即可自動迭代完成波形復現(xiàn),減輕測試人員工作強度,同時,高精度的復現(xiàn)波形可在儀器校準、結構測試中提供有力的技術保證。系統(tǒng)加入了遺忘因子、比例積分微分系數(shù)等參數(shù),能使科研人員靈活設計迭代過程及參數(shù)。