考慮一個轉移函數 H(s) 可以將其由 狀態空間表示,我們記做 Σ。
其中
Σ:={˙x=Ax+Buy=Cx+Du 則我們有以下定義:
==============
Definition: Realization
令 H(s) 為給定轉移函數,則我們說 其狀態空間 Σ 為 H(s) 的實現 (Realization) 若下列條件成立:
C(sI−A)−1B+D=H(s)
=============
Comments:
1. 上述 實現(Realization) 意指可以透過 實體電路 (e.g., OP放大器等) "實現" 狀態方程。
2. 設 ∑=(A,B,C,D) 為 H(s) 的實現,現在定義 T 為任意 n×n 的非奇異矩陣 (non-singular matrix),則我們可以定義下列 新系統 以狀態空間表示:
˜∑=(˜A,˜B,˜C,˜D)
其中 ˜A=TAT−1, ˜B=TB, ˜C=CT−1, ˜D=D。
那麼現在我們來看看此新系統的轉移函數為何?
˜C(sI−˜A)−1˜B+˜D=CT−1(sI−TAT−1)−1TB+D =CT−1(sTT−1−TAT−1)−1TB+D =CT−1(T(sI−A)T−1)−1TB+D =CT−1(T(sI−A)−1T−1)TB+D =C(sI−A)−1B+D =H(s)
上述結果告訴我們
1. 狀態空間表示 若透過 非奇異轉換 (Non-singular transformation),其轉移函數不變 (invariant)
2. 上式non-singular transformation 等價於 將系統以新的狀態變數 z:=Tx 改寫。
由於 z=Tx⇒˙z=T˙x⇒˙x=T−1˙z,故原系統狀態表示可改寫為
{˙x=Ax+Buy=Cx+Du⇒{T−1˙z=AT−1z+Buy=CT−1z+Du⇒{˙z=TAT−1⏟˜Az+TB⏟˜Buy=CT−1⏟˜Cz+D⏟˜Du
有了上述結果之後,我們知道同一系統的 任意狀態空間實現 都可透過 非奇異轉換 求得相同的轉移函數,那麼現在問題變成怎樣的轉移函數才可以被實現??
以下我們給出一個重要且簡潔的定理來回答這個問題:
=======================
Theorem: Realization Theorem
任意 proper (分母階數大於或者等於分子階數) 轉移函數皆為可實現 (realizable)。
=======================
那麼問題變成已知 proper 轉移函數可以實現 (有狀態空間表示),那麼該如何實現呢? 我們用下面這個例子來說明:
現在考慮 轉移函數
H(s)=bmsm+bm−1sm−1+...+b1s1+b0sn+an−1sn−1+an−2sn−2+...+a1s1+a0+r 其中 m<n (properness)
在不失一般性的情況,我們設 m=n−1,則我們由 Realization Theorem 可知 此轉移函數存在 狀態空間表示 (可以實現),故我們可寫成
A=[0100⋯00010⋯000010⋯0⋮⋮0⋮⋱⋮00⋯⋯01−a0−a1−a2⋯−an−2−an−1],B=[000⋮01]C=[b0b1b2⋯bm−1bm]D=r
上式實現 稱為 可控典型式 (Controllable Canonical form)。
Comments:
1. 為何上述實現被稱為可控典型式?
觀察上式
˙x=Ax+Bu=A⇒˙x=[0100⋯00010⋯000010⋯0⋮⋮0⋮⋱⋮00⋯⋯01−a0−a1−a2⋯−an−2−an−1]x+B=[000⋮01]u 現在計算對應的特徵方程式 det(sI−A),我們可得
det(sI−A)=sn+an−1sn−1+...+a0 現在如果我們讓控制力 u=Kx亦即
u=[k1k2⋯kn][x1x2⋮xn]則 受控制的動態系統可以改寫為
˙x=Ax+Bu=Ax+B(Kx)=(A+BK)x此時
⇒A+BK=[010⋯00010⋯⋮000⋱0⋮⋮01−a0−a1⋯⋯−an−1]+[00⋮01][k1k2⋯kn]=[010⋯00010⋯⋮000⋱0⋮⋮01k1−a0k2−a1⋯⋯kn−an−1]上式可以發對每一個參數 ai,∀i=0,...,n 都有一個對應的控制力參數 kj,j=1,...,n來與之調整,故對應的特徵方程 det(sI−(A+BK)) 的特性根根 (亦即 poles)亦會被 K 直接。此poles 的位置將直接影響到系統性能,故如果某動態系統可寫為可控典型式,則我們可透過上述的控制力 u=Kx 直接改變每一個系統的特性根位置。
2.
在 MATLAB 中 由轉移函數轉成狀態空間實現,可以透過指令 tf2ss.m 來達成。在此不贅述
以下我們看個例子:
Example
考慮轉移函數
G(s)=Y(s)U(s)=b2s2+b1s1+b0a3s3+a2s2+a1s1+a0+r其中 r 為常數。試求出 controllable canonical form:
Solution
注意到我們有額外的常數 r 故可知 D=r (此額外的項,表示輸入可直接影響輸出)
故我們只需專心在 strictly proper 的轉移函數部分即可。另外此例由於階數較低,我們可以用推導的方式求得 controllable canonical form。現在我們觀察轉移函數,並將其繪製成方塊圖
{X(s)U(s)=1s3+a2s2+a1s1+a0Y(s)X(s)=b2s2+b1s1+b0⇒{x(3)+a2¨x+a1˙x+a0x=ub2¨x+b1˙x+b0x=y現在我們定義狀態 x:=x1,˙x:=x2,¨x:=x3 則上式改寫如下
{a3x(3)+a2¨x+a1˙x+a0x=ub2¨x+b1˙x+b0x=y⇒{˙x3+a2x3+a1x2+a0x1=ub2x3+b1x2+b0x1=y且我們有 ˙x1=x2,˙x2=x3 故我們可寫成
˙x=Ax+Buy=Cx+Du如下
{[˙x1˙x2˙x3]=[010001−a0−a1−a2][x1x2x3]+[001]uy=[b0b1b2][x1x2x3]上式即為 controllable canonical form。
現在合併先前我們的 D=r 故可得最終表示為
{[˙x1˙x2˙x3]=[010001−a0−a1−a2][x1x2x3]+[001]uy=[b0b1b2][x1x2x3]+ru ◻
上述可控典型式 與 實現定裡之間關係 我們會留待下一篇文章在做介紹。
[線性系統] Controllability Matrix
另外亦會對非奇異轉換矩陣 T 的求得?? 也就是是否可以找到一個非奇異轉換矩陣 來幫助我們從一個狀態空間的實現 變成 另一個呢?? 做額外補充。
沒有留言:
張貼留言