滑模觀測(cè)器的基本原理及仿真實(shí)現(xiàn)
????????我們知道現(xiàn)實(shí)中控制策略中控制的設(shè)計(jì)離不開(kāi)系統(tǒng)狀態(tài)的采集,然而現(xiàn)實(shí)中總存在一些狀態(tài)不好測(cè)量,亦或者測(cè)量的成本比較高。這時(shí)候如果能夠采用其他手段把需要知道的狀態(tài)觀測(cè)出來(lái)則可以極大的減低控制的成本,因此,觀測(cè)器技術(shù)應(yīng)運(yùn)而生。
????????在講滑模觀測(cè)器之前,我們首先需要知道的是什么樣的系統(tǒng)它的狀態(tài)是能觀的。首先,我們考慮如下定常系統(tǒng)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
式中,x為n維向量;u為p維輸入向量;y是q維輸出向量;A為維系統(tǒng)矩陣;B為
維輸入矩陣;C為
維輸出矩陣。
????????由現(xiàn)代控制理論可知如果能觀,即矩陣
滿秩。
????????知道能觀的概念之后,則可以設(shè)計(jì)最基本的狀態(tài)觀測(cè)器,其中最常見(jiàn)的觀測(cè)器便是luenberger觀測(cè)器(全維觀測(cè)器),它的基本思想是人為的構(gòu)建一個(gè)和原系統(tǒng)有相同參數(shù)和輸入的系統(tǒng),即
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
????????這個(gè)時(shí)候的觀測(cè)誤差可以定義為
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ?則其誤差微分為
??????????????????????????????????????????????????????
????????由上式可以知道,在沒(méi)有引入反饋的情況下,觀測(cè)的誤差的動(dòng)態(tài)性完全由系統(tǒng)矩陣A決定,若A的特征根都在復(fù)平面的左邊,則觀測(cè)的誤差會(huì)隨時(shí)間推移而趨近于零,然而當(dāng)系統(tǒng)本身不穩(wěn)定時(shí)則需要通過(guò)引入反饋對(duì)其零極點(diǎn)進(jìn)行配置,于是luenberger觀測(cè)器的設(shè)計(jì)可以表示為
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
????????此時(shí),觀測(cè)器誤差的動(dòng)態(tài)性可以表示為
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? 則通過(guò)對(duì)L的選擇,使得上式的特征根為適當(dāng)?shù)闹?,從而保證誤差能夠衰減到零并保持,而且不依賴于控制輸入u(t)和系統(tǒng)的初始狀態(tài)x(0)。為了更加形象的了解luenberger觀測(cè)器,我們給出了它的系統(tǒng)框圖,如下所示。

????????通過(guò)上面的介紹可以知道,luenberger觀測(cè)器通過(guò)引入線性反饋的形式,對(duì)被觀測(cè)量x進(jìn)行控制。它控制的本質(zhì)是使得能夠跟蹤x。
? ? ? ?從上面分析可以知道,luenberger觀測(cè)器其實(shí)也是類似一種控制方式,只不過(guò)它的控制是對(duì)觀測(cè)的狀態(tài)進(jìn)行跟蹤。看到這我們可能會(huì)想是不是其他的控制手段是否也能做成觀測(cè)器呢?
????????事實(shí)確實(shí)如此,滑??刂谱鳛橐环N魯棒性和相應(yīng)速度很快的控制策略,同樣可以用于觀測(cè)器的設(shè)計(jì)?;诨?刂频挠^測(cè)器同樣具備滑模控制的優(yōu)勢(shì)。它最初是由S. Drakunov在論文《Sliding mode observers. tutorial》中提出。本文的滑模觀測(cè)器的設(shè)計(jì)也是以他論文的設(shè)計(jì)為主。目前各式各樣的滑模觀測(cè)器已經(jīng)被應(yīng)用到電機(jī)控制領(lǐng)域用于無(wú)感控制。
????????首先,我們針對(duì)本文開(kāi)頭的定常系統(tǒng),假設(shè)只有變量是可以測(cè)量的,且輸出的表達(dá)方程中C矩陣表示為
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
????????則A矩陣可以改寫(xiě)為下面的形式
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ?類似luenberger觀測(cè)器的設(shè)計(jì),我們可以設(shè)計(jì)如下滑模觀測(cè)器
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ?式中,v表示是誤差e的非線性函數(shù),L表示觀測(cè)增益矩陣,為了方便,我們把L記成下面的形式
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ?其中,L2是一個(gè)列向量,我們把對(duì)x狀態(tài)的估計(jì)誤差定義為,則估計(jì)誤差的動(dòng)態(tài)特性可以表示為
? ? ? ? ? ? ? ? ??? ??
? ? ? ? ?接著,我們回顧滑??刂频脑O(shè)計(jì)可知,滑模控制的設(shè)計(jì)在于通過(guò)對(duì)滑模面和趨近律的設(shè)計(jì),使得系統(tǒng)在有限時(shí)間內(nèi)到達(dá)滑模面,并做滑模運(yùn)動(dòng)?;S^測(cè)器的設(shè)計(jì)也是類似。
????????我們定義滑模面,則滑模面的導(dǎo)數(shù)可以表示為
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? 其中,
? ? ? ?根據(jù)李雅普諾夫穩(wěn)定性的條件可知,為了使得觀測(cè)器達(dá)到滑模面,則。
? ? ? ?因此,我們可以定義v的表達(dá)式為滑模控制中的符號(hào)函數(shù)sgn(s),則需要滿足下面的條件:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? 則通過(guò)上式的設(shè)計(jì)可以使得滿足誤差跟蹤。當(dāng)我們把上述非線性函數(shù)產(chǎn)生的不連續(xù)控制記做
時(shí),考慮系統(tǒng)到達(dá)滑模面情況,下面的等式將滿足:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ???則可得到下面關(guān)系式
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ???當(dāng)趨近于0時(shí),我們?cè)诜治?img type="latex" class="latex" src="http://api.bilibili.com/x/web-frontend/mathjax/tex?formula=E_2" alt="E_2">的跟蹤情況有
? ? ? ? ??
????????為了滿足收斂的條件,則L2的選擇要使得矩陣滿足Hurwitz穩(wěn)定。
????????最后為了驗(yàn)證上述理論,我們?cè)赟imulink環(huán)境下搭建相關(guān)的仿真,我們首先給出了仿真系統(tǒng)的狀態(tài)方程如下所示
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? 為了對(duì)觀察效果進(jìn)行比較,我們同樣設(shè)計(jì)了luenberger觀測(cè)器,并選擇它期望的極點(diǎn)為,則可得到增益矩陣L為
。滑模觀測(cè)器的觀測(cè)增益矩陣L設(shè)置為
。系統(tǒng)的輸入是正弦信號(hào),我們同時(shí)加入白噪聲以模擬實(shí)際過(guò)程中的控制輸入。搭建的滑模觀測(cè)器如下所示。

????????首先,我們給出了luenberger觀測(cè)器中x1和x2的觀測(cè)結(jié)果以及x2的觀測(cè)誤差,如下圖所示。

x1和x1觀測(cè)值


????????接著,我們給出了滑模觀測(cè)器中x1和x2的觀測(cè)結(jié)果以及x2的觀測(cè)誤差,如下圖所示。



從上述仿真結(jié)果可以發(fā)現(xiàn),滑模觀測(cè)器在動(dòng)態(tài)過(guò)程中觀測(cè)的誤差更小。