前言:本站為你精心整理了線性系統(tǒng)的規(guī)范管控思考范文,希望能為你的創(chuàng)作提供參考價值,我們的客服老師可以幫助你提供個性化的參考范文,歡迎咨詢。
【摘要】該文從線性系統(tǒng)能控規(guī)范型的基本理論入手,詳細介紹了龍伯格能控規(guī)范型的構(gòu)造方法和實現(xiàn)步驟,并就此問題給出了一個具有較高實用價值的MATLAB通用程序。
【關(guān)鍵詞】線性系統(tǒng)能控規(guī)范型MATLAB
AlgorithmicanalysisofLinearsystemLuenbergerControllable
StandardModel
1前言
線性系統(tǒng)的狀態(tài)空間分析法,是線性系統(tǒng)理論中最重要和影響最廣泛的一個分支。狀態(tài)空間法中,用以表征系統(tǒng)動力學(xué)特征的數(shù)學(xué)模型是反映輸入、輸出變量和狀態(tài)變量之間關(guān)系的一對向量方程,稱為狀態(tài)方程和輸出方程。
(狀態(tài)方程)
(輸出方程)
這是一種時間域分析方法,在系統(tǒng)的分析和綜合中,所涉及的計算主要為矩陣運算和矩陣變換,MATLAB為此提供了一個強有力的工具。
線性系統(tǒng)能控規(guī)范型的實現(xiàn),在線性反饋系統(tǒng)的狀態(tài)變量反饋和含狀態(tài)觀測器的狀態(tài)變量反饋系統(tǒng)的設(shè)計中占有很重要的地位。本文針對線性系統(tǒng)理論中的極點配置問題,著重討論如何利用MATLAB語言來實現(xiàn)任意線性多輸入、多輸出系統(tǒng)的龍伯格能控規(guī)范型的算法。并給出了一個利用MATLAB語言編制的實現(xiàn)此算法的通用程序。
2線性系統(tǒng)能控規(guī)范型的相關(guān)理論
2.1能控性和能觀性的概念
能控性和能觀性是系統(tǒng)的兩個基本的結(jié)構(gòu)特征?,F(xiàn)代控制理論的發(fā)展表明,這兩個概念對于控制和估計問題的研究有著極其重要的意義。在一個系統(tǒng)中,輸入輸出構(gòu)成系統(tǒng)的外部變量,狀態(tài)變量為系統(tǒng)的內(nèi)部變量,能控性是反映系統(tǒng)的所有內(nèi)部(狀態(tài))變量能否由輸入變量來影響和控制,并由任意始點到達原點。能觀性則是表明系統(tǒng)內(nèi)部(狀態(tài))變量能否由輸出完全反映。
2.2系統(tǒng)的能控性判據(jù)
定理:線性定常系統(tǒng)
為完全能控的充分必要條件是:
rank[B┆AB┆A2B┆……┆An-1B]=n
其中,n為系數(shù)矩陣A的維數(shù)。
定義系統(tǒng)的能控性判別矩陣為:
Qc=[B┆AB┆A2B┆……┆An-1B]
2.3能控規(guī)范型的算法分析
對于完全能控的線性定常系統(tǒng),從能控制性這一基本屬性出發(fā),可以構(gòu)造一個非奇異的變換矩陣,通過這一線性變換,就能夠把系統(tǒng)狀態(tài)空間的描述轉(zhuǎn)化為只有能控系統(tǒng)才具有的標(biāo)準(zhǔn)形式。
對于單輸入—單輸出系統(tǒng):
能控規(guī)范性的變換矩陣:
引入線性變換則有
其中,
對于多輸入—多輸出系統(tǒng):
(1)
設(shè):rankB=r輸入變量數(shù)為p,輸出變量數(shù)為q。。構(gòu)造其龍伯格能控規(guī)范型的方法如下:
對能控性矩陣
Qc=[B┆AB┆A2B┆……┆An-1B]
其中
B=[b1,b2,……,bq]
找出n個線性無關(guān)的列,表示如下:
其中,能控性指數(shù)
令取p的每個塊陣中的末行:
構(gòu)造變換矩陣
引入線性非奇異變換
即可得到系統(tǒng)(1)的龍伯格能控規(guī)范型:
其中
i=1,2,……,r
上述矩陣中,“*”表示的元素為可能的非零元。
3Luenberger能控規(guī)范型算法的實現(xiàn)
下面給出了一個完成Luenberger能控規(guī)范型算法的MATLAB程序,程序的代碼如下:
A=[……];
B=[……];
C=[……];
%(在“……”處輸入相應(yīng)的數(shù)據(jù))
尋找B矩陣的無關(guān)列向量:
forl=1:2
RA=rank(A);RB=rank(B);Bwg=B(:,1);
fori=2:RB
ifrank(Bwg)<RB,
Bwg=[Bwg,B(:,i)];
end
end
%確定能控性指數(shù)u:
SO=[];
fori=0:RA
forj=1:RB
ifrank(SO)<rank([SO,A^i*Bwg(:,j)]),
SO=[SO,A^i*Bwg(:,j)];
u(j)=i+1;
end
end
end
%構(gòu)造p逆矩陣:
PNI=[];
forj=1:RB
fori=0:u(j)-1
PNI=[PNI,A^i*Bwg(:,j)];
end
end
P=inv(PNI);
%構(gòu)造Luenberger規(guī)范型變換矩陣S-1
SNI=[];j=0;
fork=1:RB
j=u(k)+j;
fori=0:u(k)-1
SNI=[SNI;P(j,:)*A^i];
end
end
%求Luenberger規(guī)范型矩陣Ac、Bc:
S=inv(SNI);Ac=SNI*A*S;Bc=SNI*B;
Cc=C*S;
4結(jié)束語
使用MATLAB語言編寫的程序來求解線性系統(tǒng)的龍伯格能控規(guī)范型,進而可以很方便地進一步設(shè)計線性系統(tǒng)的狀態(tài)變量反饋系統(tǒng),以實現(xiàn)系統(tǒng)極點的任意配置,從而改善系統(tǒng)的性能,并且也使得多輸入—多輸出系統(tǒng)的狀態(tài)觀測器的設(shè)計變得輕而易舉。因此,本文所討論的問題有相當(dāng)?shù)钠毡樾?,同時給出的解決方案也具有較高的實用價值。
參考文獻:
1、《線性系統(tǒng)理論》(M),鄭大鐘,清華大學(xué)出版社。1990年3月第一版。
2、Chi-TsongChen,“LINEARSYSTEMTHEORYANDDESING”(M),HoltRichardandWinston.revisededition1984
3、《掌握和精通MATLAB》(M),張志涌、劉瑞幀等,北京航空航天大學(xué)出版社。1997年8月第一版