虛擬儀器在系統相關辨識中的應用
關鍵詞:相關辨識理論; 虛擬儀器; LABVIEW
Abstract: This paper introduce the application of VI in System Identification . LABVIEW is applied in writing measure-control system.The simulations demonstrate this method is efficient and practical.
Keywords: correlation analysis; VI; LABVIEW
引言
控制系統模型的準確性是系統設計的關鍵問題,直接影響控制精度和運行結果。系統辨識是得到系統模型的一種重要途徑。在現代控制工程中,利用偽隨機信號結合虛擬儀器技術對系統進行相關辨識,是近年來迅速發展起來的新技術。本文以開發二階系統參數辨識儀為例,介紹了虛擬儀器在系統參數辨識中的應用方法。
1 系統相關辨識方法
1.1相關辨識基本原理
相關辨識的理論基礎是Wiener-Hopf方程:
(1)
(1)式中,Rxx為系統輸入的自相關函數,Rxy為系統輸入輸出的互相關函數,g(t)為系統的脈沖響應函數。根據Wiener-Hopf方程可知,若能取得系統輸入的自相關函數Rxx和系統輸入輸出的互相關函數Rxy,則可以得到系統的脈沖響應函數。但是,對于一般的信號,Wiener-Hopf方程的求解是非常困難得,為此我們要尋找一些特殊的信號作為輸入信號以簡化求解過程。而白噪聲信號其自相關函數具有特殊的形式,其自相關函數為Rxx=K*δ函數。由此得:
(2)
可見,系統的輸入信號為白噪聲時,只要取得系統輸入輸出的互相關函數Rxy就可求得系統的脈沖響應,見(2)式。但白噪聲只是數學上的一個抽象,不容易產生。工程中常使用偽隨機信號作為系統的辨識信號。偽隨機信號通常采用的是M序列。
1.2 二階系統參數辨識方法
系統參數辨識儀以二階系統為辨識對象。實際應用中,激勵信號施加于二階系統,系統的輸出可由數據采集裝置獲得,并傳輸至虛擬儀器。本文中,二階系統模型的特征參數由用戶輸入確定,二階系統的輸出是由計算得到的。相關辨識原理框圖如圖(1)所示。

M序列發生器所產生的M序列時鐘周期?t應該滿足如下條件:
(3)
(3)式中:fh,ωh分別為二階系統截止頻率、截止角頻率。該式說明M序列的頻帶寬度0.45/?t至少要覆蓋被辨識系統截止頻率fh的10倍以上。M序列的長度N=(1.25~1.5)Ts/?t。其中Ts為系統的調整時間。Ts、fh、ωh可由用戶給定的特征參數計算得到。
系統的輸出是根據系統的模型計算得到的。二階系統模型的傳遞函數為:
(4)
(4)式中:ωn為系統固有角頻率,ξ為系統阻尼系數,K為系統比例系數。對(4)式作Z變換可得如下計算公式:
(5)
(5)式中:M0=4+4ξωnT+ωn2T2,M1=-8+2ωn2T2,M2=4-4ξωnT+ωn2T2,M3=Kωn2T2,T為采樣周期。根據(5)式可計算出M序列作為輸入時系統的輸出。
系統脈沖響應的估計值可采用如下的偽隨機序列相關辨識一次完成算法:
當M序列確定以后,系統的輸出z(j)通過計算得出,相應的系統脈沖響應估計值就可由上式計算得出。并且該算法可一次完成N點的脈沖估計值的計算。
2 二階系統辨識儀的實現
采用美國國家儀器公司的圖形化編程語言LABVIEW7.1作為系統的編程語言。二階系統辨識儀的實現分為兩個部分:一是儀器虛擬面板的設計;二是后臺控制處理程序的設計。

圖2 虛擬儀器面板
儀器虛擬面板如圖(2)所示。虛擬前面板的設計是在Front Panel窗口下,利用LABVIEW的Controls Palette上的各種控件來完成的。面板第一部分是二階系統參數設置區域。它包含三個數字輸入控件numeric control,一個枚舉型輸入控件enum control和一個數字顯示控件numeric indicator。通過這幾個控件,我們可以配置二階系統的參數:比例系數K,系統固有頻率fn,系統阻尼系數ξ;第二部分為辨識信號參數設置區域,它包含四個數字輸入控件numeric control。在此我們可以設置M序列的幅值、周期、周期個數及儀器的采樣時鐘周期;第三部分為波形顯示區域。它包含一個枚舉型輸入控件enum control 和一個波形顯示控件waveform graph,通過選擇,可以顯示輸入的辨識信號圖形、輸出信號圖形、輸入輸出互相關圖形和系統脈沖響應圖形。另外還有一個控制儀器開關的stop button。
虛擬辨識儀的后臺程序是在LABVIEW的Block Diagram窗口下利用Functions Palette上的控件設計。由于辨識過程要涉及到M序列的發生和一次性相關辨識算法,所以要通過LABVIEW中的MATLAB Script調用MATLAB來完成數據地處理工作。整個圖形化程序如圖(3)所示,

其工作流程如圖(4)所示。

圖4 實驗結果
3 實驗結果
采用二階系統辨識儀對系統進行辨識,系統模型參數設置為ξ=0.6,K=2,fh=5KHZ,經辨識后得到系統的脈沖響應如圖(5)所示。
圖中實線表示辨識所得系統脈沖響應。虛線表示系統脈沖響應的理論值。由此可見,采用虛擬儀器結合相關辨識法來辨識系統參數具有較高的精度。配合相應的數據采集設備,該辨識儀就能對實際電路參數進行辨識。而且根據系統參數的其它辨識方法(如最小二乘法、極大似然法、隨機逼近法等),只要對軟件重新設計,就能推廣到系統辨識的其他領域。
參考文獻:
[1]Gary W.Johnson,Richard Jennings 著.《LABVIEW圖形編程》[M].北京:北京大學出版社,2002.
[2]孫亮主編.《MATLAB語言與控制系統仿真》[M].北京:北京工業大學出版社,2001.
[3]李言俊,張科.《系統辨識理論及應用》[M].北京:國防工業出版社,2003.
文章版權歸西部工控xbgk所有,未經許可不得轉載。