matlab and操作,系统建模 | Control Tutorials for Matlab and Simulink
介紹:系統建模
設計控制體統的第一步是通過自然規律或者實驗數據建立適當的數學模型。我們會引進狀態空間和傳遞函數來代表系統。然后我們回顧一些基本的機械或者電力系統模型,并且會在MATLAB中展示怎么近一步分析。
本教程中使用到的關鍵Matlab命令是:tf,ss。
目錄
動態系統
按確定性規律隨時間演化的系統,稱為動態系統。對于很多物理模型來說,這種規律可以表示為一組一價微分方程:(1)
在上面的方程中,
是狀態向量,由n個狀態變量組成。例如在一個簡易的質量塊-彈簧-阻尼系統中,兩個狀態變量可以是質量塊的位置和速度。
是輸入信號向量,表示“外力”作用在系統上,f是狀態向量對時間求導后的非線性函數。
任意一時刻的狀態
可能都被初始狀態
和
入決定。雖然狀態變量并不是獨立的,但狀態變量有最小個數,假設為n。n與系統的階數和狀態空間的維數相關。系統的階數通常與儲能元素的個數一致。
在Eq.(1)中的關系是很普遍的可以用來描述很多系統,但是,它很難分析。通常有兩種簡化方法。第一,如果函數f不隨時間變化,i.e.
,然后就可以說是定長系統。這是一種很合理的假設,因為自然規律不隨時間變化。對于定常系統來說,函數f的參數或系數是固定的。然而控制的輸入
可能與時間相關。
第二通常的假設是關于系統的線性度的。實際上,幾乎每一個物理系統都是非線性的。換句話說,f是關于狀態和輸入的很復雜的函數。這些非線性產生于很多不同的方面,最常見的一種是,系統的一個元素達到了系統運轉中的物理極限,就是說系統‘飽和’。不過,在一個足夠小的工作范圍內,大多數系統的動態近似線性,即
。
直到電腦出現,只有分析線性定常系統是可行的。因此,大部分控制理論是基于上面的兩個假設。幸運的是,正如我們將看到的,這些結果已被證明是非常有效的,許多重大的工程挑戰已經使用LTI技術解決。事實上,反饋控制系統的真正的優勢是他們可以工作,在不可避免的不確定性建模的情況下。
狀態空間模型
對于線性定常系統,狀態空間模型的標準如下:(2)
(3)
x為狀態向量,
為狀態向量對事件求導,u為輸入或者控制向量,y為輸出向量,A為系統矩陣,B為輸入矩陣,C為輸出矩陣。
輸出方程式(3)是必不可少的,因為有些狀態變量不容易直接觀察或者不感興趣。通過控制器,輸出矩陣C用于指定狀態變量。D是零矩陣時,也常常沒有直接的前饋控制。
狀態空間表示法,也被稱為時域表示,可以輕松地處理多輸入多輸出(MIMO)系統,具有非零初始條件的系統和非線性系統(通過公式(1))。因此,狀態空間表示是廣泛應用于現代控制理論。
傳遞函數模型
LTI系統有極其重要的屬性,如果系統的輸入是正弦的,然后輸出將正弦在相同的頻率,但一般具有不同的幅度和相位。這些的幅度和相位差作為頻率的函數被稱為系統的頻率響應。
使用拉普拉斯變換,它可以把一個系統的時域到頻域表示輸出/輸入表示,稱為傳遞函數。在這樣做時,它也將微分方程化為代數方程往往是更容易分析。
一個時域函數的拉普拉斯變換,
,定義如下:(4)
其中參數 是一個復雜的頻率變量。在實踐中,你可以直接評估的拉普拉斯變換是非常罕見的。通常都是通過查表發現你感興趣的函數變換:拉普拉斯變換表Laplace Transform Table
一個函數的n階導數的拉普拉斯變換是特別重要的:(5)
頻域方法通常用來分析線性時不變的單輸入單輸出(SISO)系統,例如由一個常系數微分方程如下:(6)
這個方程的拉普拉斯變換如下:(7)
和
分別是
和
的拉式變換。我們假設每個初始條件
,
和
為零。傳遞函數如下:(8)
傳遞函數的分子和分母可變換成所謂的零極點增益形式:(9)
傳遞函數的零點是
,是分子多項式的根。傳遞函數的極點是
,是分母多項式的根。無論是零、極點可能是復值(有實部和虛部)。系統增益為
。
請注意,我們還可以直接從狀態空間確定的傳遞函數表示如下:(10)
機械系統
牛頓定律是分析機械系統的基礎。牛頓第二定律,公式(11),表明作用在物體上的力的總和等于質量乘以加速度。牛頓第三定律,指出如果兩體連接,然后他們的經驗同樣大小的力作用在相反的方向。(11)
應用該方程時,最好是建立一個受力分析圖(FBD)顯示所有施加的力。
例:質量塊-彈簧-阻尼系統
這個系統的受力分析圖如下所示。彈力與質量塊的位移x成正比,粘性阻尼力與質量的速度
成正比。因為這兩個力阻礙彈簧的運動,因為他們的受力方向為X的負方向。注意到,當
時,彈簧未拉伸。
現在我們進行總結和運用牛頓第二定律力量,方程(11)。在這種情況下,沒有力作用在Y 軸方向;然而,在X方向我們可得:(12)
這個方程,稱為控制方程,完全刻畫系統的動態狀態。后來,我們將看到如何使用它計算系統的響應,在任何外部輸入
的情況下,以及分析系統的性能,如穩定性和性能。
確定的質量-彈簧-阻尼器系統的狀態空間表示,我們必須降低二階方程為一組兩個一階微分方程。為此,我們選擇的位置和速度作為狀態變量。(13)
注意,這些狀態變量分別對應于在彈簧的勢能和質量塊的動能。經常選擇狀態變量時,它有助于考慮系統中德獨立的儲能元件。
在這種情況下,狀態方程如下:(14)
如果我們在控制質量塊的位置感興趣,然后輸出方程如下:(15)
在MATLAB中輸入狀態空間模型
現在我們將告訴你如何通過m-file在MATLAB中輸入狀態空間方程。讓我們為每個變量分配數值。
創建一個新文件,輸入以下命令。
假設初始條件為零時拉式變換為:(16)
傳遞函數為(17)
在MATLAB中輸入傳遞函數模型
現在我們將告訴你如何通過m-file在MATLAB中輸入傳遞函數。輸入如下命令在你定義過系統參數的m文件中。
請注意,我們所使用的符號變量s來定義我們的傳遞函數模型。大多數情況下,我們建議使用此方法;然而,在某些情況下,例如在舊版本的MATLAB 或者要連接Simulink時,你可能需要直接使用的分子和分母多項式的系數定義的傳遞函數模型。在這些情況下,使用下面的命令:
電氣系統
像牛頓定律在機械系統,基爾霍夫電路法是電力系統分析的基本工具?;鶢柣舴螂娏鞫?KCL)狀態的電流進入和退出一個電路節點的總和必須等于?;鶢柣舴螂妷憾?KVL)指出,電壓差在電路中的任何閉環的總和是零。應用KVL時,源電壓通常為陽性和負載電壓作為負。
例:RLC電路
現在我們考慮一個簡單的三個電子元件的串聯組合:一個電阻,電感,和一個電容器,被稱為一個RLC電路。
由于該電路是一個單環,每個節點只具有一個輸入和輸出;因此,由KCL知整個電路中的電流相同。現在應用KVL,我們得到以下方程。(18)
我們注意到,方程為RLC電路對質量-彈簧-阻尼器系統類似的形式。特別是,他們都是二階系統,電荷(積分電流)對應的位移,感應系數對應質量,電阻對應粘性阻尼,電容對應彈簧剛度。在理解的動力系統時,這些類比和像他們這樣的類比會成為非常有用的概念。
建立狀態空間時,通過選擇電荷和電流作為狀態變量。(19)
(20)
狀態方程為:(21)
選擇電流作為輸出:(22)
傳遞函數可以求得通過做拉式變化:(23)
(24)
RLC的狀態空間和傳遞函數模型可以寫入matlab,使用與討論了的質量-彈簧-阻尼器系統的相同方法。
系統辨識
在本節中,我們已經看到了如何使用基本的物理原理建立模型系統;然而,這往往是不可能的因為系統的參數是不確定的,或基本過程是根本不知道。在這些情況下,我們必須依靠實驗測量和統計技術來開發一個系統模型,這一過程稱為系統辨識。
系統變換
在MATLAB的大部分操作對于對傳遞函數模型,狀態空間模型,或零極點增益形式都可以很好的運行。此外,如果有需要的話,三種形式的轉換是很簡單的。如果你需要學習如何從一種表示形式轉換為其他,詳見系統轉換介紹頁Introduction: System Conversions。
總結
以上是生活随笔為你收集整理的matlab and操作,系统建模 | Control Tutorials for Matlab and Simulink的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php输出tab,设置Tab按钮列表 ·
- 下一篇: 华为鸿蒙系统首发设备,华为鸿蒙系统首发设