計算機控制技術論文_第1頁
計算機控制技術論文_第2頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、-目錄第一章系統(tǒng)建模21.1 物理設置21.2 系統(tǒng)方程31.3 設計要求41.4 MATLAB表示4第二章系統(tǒng)分析62.1 開環(huán)響應62.2 LTI模型特性72.3 其他形式的輸入響應9第三章 PID控制器設計113.1 比例控制113.2 PID 控制123.3調(diào)整增益13第四章控制器的根軌跡設計法154.1繪制開環(huán)根軌跡154.2 找到環(huán)路增益164.3 添加一個滯后控制器184.4 找一個滯后控制器的環(huán)路增益19第五章控制器的頻域控制器225.1 畫原始的Bode圖225.2 添加比例增益235.3 繪制閉環(huán)相應255.4 添加一個延時補償25第六章控制器的狀態(tài)空間設計法276.1 設

2、計全狀態(tài)反響控制器276.2 添加一個預補償器29第七章數(shù)字器控制器設計317.1 創(chuàng)立系統(tǒng)的一個采樣數(shù)據(jù)模型317.2 PID控制34第八章 Simulink建模408.1 物理設置408.2 Simulink建模428.3 Simscape建模47第九章 Simulink控制器設計509.1 提取線性的模型導入MATLAB519.2 開環(huán)響應539.3 滯后補償?shù)拈]環(huán)響應549.4 超前補償?shù)拈]環(huán)響應55總結58第一章系統(tǒng)建模1.1 物理設置直流電機是一種常見的驅(qū)動器。它直接提供旋轉(zhuǎn)運動,再加上輪或繩索,可以提供平移運動。電驅(qū)的等效電路和轉(zhuǎn)子的受力圖如下所示。對于這個例子,我們假設系統(tǒng)的輸

3、入是作用在點擊電驅(qū)的電壓V,輸出是桿的轉(zhuǎn)動速度d(theta)/dt。轉(zhuǎn)子和軸被假定為剛性。我們進一步假設粘性摩擦模型,即,摩擦力矩是軸的角速度成比例的。我們例子的物理參數(shù)為:1.2系統(tǒng)方程在一般情況下,由一個直流電機產(chǎn)生的轉(zhuǎn)矩與電樞電流和磁場的強度成比例的。在這個例子中我們假設磁場是恒定的,因此,電機的轉(zhuǎn)矩與電樞電流I的比例由,比例系數(shù)為Kt,如下方程所示。這是被稱為一個電驅(qū)控制的電機。1反電動勢e是正比于軸的角速度的一個常數(shù)因子ke。2在國際單位制中,電機的轉(zhuǎn)矩系數(shù)和反電動勢常數(shù)是一樣的,即,Kt=Ke;因此,我們將使用K代表兩個電機轉(zhuǎn)矩系數(shù)和反電動勢常數(shù)。從上面的圖,我們可以得到以下方程

4、基于牛頓第二定律和基爾霍夫電壓定律。 34應用拉普拉斯變換,上述的模型方程可以在拉普拉斯變量s表示。傳遞函數(shù) 56我們得出以下的開環(huán)傳遞函數(shù),通過消除I(s)述兩個方程之間,在轉(zhuǎn)速為輸出和電樞電壓是輸入。7狀態(tài)方程在狀態(tài)空間形式的控制方程,可以表示通過選擇轉(zhuǎn)速和電流作為狀態(tài)變量。再次電樞電壓作為輸入轉(zhuǎn)速為輸出。891.3設計要求首先考慮的,我們的無償?shù)碾妱訖C在1伏特的輸入電壓下能到達旋轉(zhuǎn)速度為0.1弧度/秒的穩(wěn)定狀態(tài)這在直流電機調(diào)速:系統(tǒng)分析頁面里演示。因為電動機的最根本的要,它應該在轉(zhuǎn)動所需的速度,我們將要求該馬達速度的穩(wěn)態(tài)誤差小于1。我們的電機性能的另一個要,它必須盡快加速到穩(wěn)定狀態(tài)的速度

5、。在這種情況下,我們希望它有少于2秒的穩(wěn)定時間。此外,由于速度比基準速度更快,可能會損壞設備,我們希望階躍響應的超調(diào)量少于5??傊?,在單位階躍命令的輸入下,控制系統(tǒng)的輸出應滿足以下要求。調(diào)節(jié)時間小于兩秒超調(diào)量小于5%穩(wěn)態(tài)誤差小于1%1.4MATLAB表示傳遞函數(shù)我們可以表示電機的開環(huán)傳遞函數(shù),在Matlab上定義的參數(shù)和傳遞函數(shù)如下。在命令窗口中運行此代碼,產(chǎn)生如下結果:狀態(tài)方程我們也可以用狀態(tài)方程表示系統(tǒng)。在MTALAB命令窗口輸入如下命令,并運行,產(chǎn)生如下結果。 上述的狀態(tài)空間模型,也可以將您現(xiàn)有的傳遞函數(shù)模型轉(zhuǎn)化為狀態(tài)空間形式產(chǎn)生的。這也是用SS命令完成,如下所示。第二章系統(tǒng)分析2.1開

6、環(huán)響應首先創(chuàng)立一個新的m文件和輸入如下命令?,F(xiàn)在讓我們看看原始開環(huán)系統(tǒng)的性能。添加ltiview命令在m文件的最后,并在MATLAB命令窗口中運行它。函數(shù)中的step使P_motor系統(tǒng)產(chǎn)生一個單位階躍響應。0:0.1:5表示階躍響應圖包括0到5秒的數(shù)據(jù)點,間隔為0.1秒。結果圖如下,你可以觀測一些系統(tǒng)的特性,通過右擊以下列圖并選擇Charateristics菜單的Setting Time和Steady State。從圖中我們可以看出1V的電壓應用到系統(tǒng),這發(fā)動機只能實現(xiàn)最大速度為0.1 rad/sec,比期待速度小十倍。用了2.07秒到達穩(wěn)定狀態(tài),不滿足我們兩秒的調(diào)節(jié)時間的標準。2.2LTI

7、模型特性由于我們的開環(huán)傳遞函數(shù)是一個二階系統(tǒng),我們應該能準確的預測已觀測到的階躍響應的特性,基于傳遞函數(shù)極點的位置。你可以從LTI Viewer中看到P_motor系統(tǒng)的極點的位置,通過右擊圖上區(qū)域并從菜單中選擇Plot TypesPole/Zero。完成這個操作將會改變LTi Viewer,藍色的*表示極點的位置。從上圖可以看出開環(huán)傳遞函數(shù)有兩個實極點,一個在S=-2,一個在S=-5。由于兩個極點是實極點,正如看到的階躍響應沒有震動或者超調(diào)量。更進一步,由于一個極點比另一個極點的負5倍還要小,兩個極點中較大的將主導系統(tǒng)的動態(tài)。即,在-2處的極點主要決定系統(tǒng)的速度相應并且系統(tǒng)與一階系統(tǒng)近似。

8、讓我們看看一階系統(tǒng)模型多么近似于原始電機模型。輸入如下命令在MATLAB中來建立一個極點為2的一階系統(tǒng)的傳遞函數(shù)并且穩(wěn)態(tài)值與原始傳遞函數(shù)相匹配。 我們可以在LTI Viewer中輸入這個新模型。選擇LTI Viewer窗口頂部的File菜單然后選擇Import。然后從后續(xù)窗口中選擇Systems in workspace中的rP_motor并點擊OK按鈕。然后LTI Viewer將會顯示原始傳遞函數(shù)和縮減后的傳遞函數(shù)的相應圖。然后右擊菜單中選擇Plot Types中的step reponse。你可以移除特性顯示從Characteristics的子菜單中?,F(xiàn)在LTI Viewer應該顯示如下。從

9、上面可以看出,我們一階近似的電機系統(tǒng)相對準確。可以看出主要確實別是在t=0時刻二階系統(tǒng)有一個零導數(shù),但是一階系統(tǒng)沒有。 一階系統(tǒng)的調(diào)節(jié)時間為: 1 tau是時間常數(shù),此例中衛(wèi)0.5。因此,一階系統(tǒng)模型由一個2秒的調(diào)節(jié)時間,接近于我們實際系統(tǒng)的2.07秒。這個例子剩下的局部,不同的控制器將會被設置,來減少穩(wěn)態(tài)誤差和調(diào)節(jié)時間,并能到達超調(diào)量的要求。2.3其他形式的輸入響應就系統(tǒng)的階躍響應而言這個例子的要求被給出,但在實際中還有其他形式的輸入。即使一個系統(tǒng)的階躍響應能大概洞察其他形式的信號的響應。為了能得到其他形式信號的具體響應。你可以應用Simulink或者MATLAB中的lsim命令。更進一步,

10、你可以直接從LTI Viewer模擬其他輸入形式的系統(tǒng)響應。在圖上點擊右鍵然后選擇Plot Types Linear Simulation。如下窗口將出現(xiàn)。在這個窗口中把End time設置為“5”,把Interval設置為0.1。在窗口System inputs局部的下面,你可以倒入一個輸入信號,或者通過一些選擇設計一個。在這個例子中,點擊Design Signal從出現(xiàn)的窗口中并選擇Signal type為sine wave。把Frequency設置為“0.2”,把Amplitude和Duration設置為默認值。點擊Signal designer 窗口底部的Insert并點擊Linear

11、 Simulation底部的Sumulate按鈕。系統(tǒng)正弦輸入的兩個響應將會在LTI Viewer窗口中顯示。如果你雙擊圖的y軸,你可以改變這極限。如以下列圖所示。第三章PID控制器設計3.1 比例控制首先讓我們應用一個增益為100的比例控制,即,C(s)=100 。為了確定閉環(huán)傳遞函數(shù),我們用feedback命令。添加如下命令到你m文件的末尾?,F(xiàn)在讓我們檢查閉環(huán)系統(tǒng)響應。添加如下命令到你的m文件末尾,并在命令窗口運行它。將產(chǎn)生以下列圖。你可以通過右擊觀看系統(tǒng)的特性,從后續(xù)菜單中選擇Chaacteristics。在以下列圖中,已經(jīng)顯示了Setting Time,Peak Response,St

12、eady State從上圖我們可以看出超調(diào)量和穩(wěn)態(tài)誤差太大。回想簡介:PID控制器設置,增加比例增益可以減少穩(wěn)態(tài)誤差。然后,增加Kp也會導致增加超調(diào)量,因此,一個比例控制不能滿足所有的設計要求。這個可以通過選擇不能的Kp來得到證實。特別的,你可以輸入sisotool(p_motor)命令應用SISO Design Tool,并從Control and Estimation Tools Manager窗口的Analysis Plots中翻開一個閉環(huán)階躍響應。當Real-Time Update被選擇,你可以在pensator Editor中變換增益,并在LTI Viever中觀看對階躍響應的影響。

13、一個簡單是實演驗證了我們的猜想,一個比例控制是不夠滿足設計要求的,積分或者微分控制必須被添加。 3.2PID控制PID控制器設置中,添加一個積分將會階躍參考的消除穩(wěn)態(tài)誤差,添加一個微分將減少超調(diào)量。讓我們試一下小的Ki和Kd。修改你的面文件如下。運行這個新的m文件,如下所示??梢钥闯鰧τ谝粋€階躍輸入穩(wěn)態(tài)誤差確實消失了。然而,到達穩(wěn)定狀態(tài)的時間比兩秒的調(diào)節(jié)時間長很多。3.3調(diào)整增益在這個例子中,階躍響應的長長的尾巴是由于積分增益太小。因此需要很長時間消除穩(wěn)態(tài)誤差。這個過程可以通過增加KI的值來加速。回到你的m文件,把Ki改為200。重新運行文件你會得到以下列圖。再次通過右擊選擇Characeri

14、sticd添加注釋。正如預期的,穩(wěn)態(tài)誤差很快的被消除了。然而,較大的Ki增加了超調(diào)量。讓我們增加Kd來嘗試減少超調(diào)量?;氐絤文件把Kd變?yōu)?0。重新運行m文件,如下列圖。正如我們希望的,加大Kd減少了超調(diào)量。現(xiàn)在我我們知道,如果我們用Kp=100,Ki=200,Kd=10;所有的設計要求都被滿足。第四章控制器的根軌跡設計法4.1繪制開環(huán)根軌跡根軌跡設計的主要思路是通過根軌跡圖預測閉環(huán)響應,根軌跡圖由開環(huán)傳遞函數(shù)繪制并預測所有閉環(huán)極點的位置。然后通過控制器添加零點和極點,根軌跡將被修改,然后得到期待的閉環(huán)響應。 我們用SISO Design Tool GUI設計控制器。這個工具允許你通過根軌跡調(diào)

15、節(jié)控制器。首先讓我們畫出系統(tǒng)的根軌跡。在m文件的末尾添加sisotoolrlocus,P_motor并運行文件。兩個窗口將會翻開,一個是SISO Design Task,他將顯示系統(tǒng)的根軌跡,另一個是Control and Estimation Tool Manager,它允許你設計補償,分析Plots,等等。你可以在圖上右擊根軌跡并且點擊Grid。你的繪制圖將如下所示。4.2找到環(huán)路增益回想設計要求,調(diào)節(jié)時間小于2秒,超調(diào)量小于5%。系統(tǒng)閉環(huán)極點的位置提供關于系統(tǒng)瞬態(tài)響應的信息。SISO Designt Tool 允許我們在復雜的負平面上定義符合設計要求的區(qū)域。提供的區(qū)域相符一個典型的二階系

16、統(tǒng),但是一般來說對于高階系統(tǒng)或者有零點的系統(tǒng)也是可行的。 這預期的區(qū)域可以添加到根軌跡圖上,具體方法是,在圖上點擊的右鍵,在菜單中選擇Design RequirementsNew。你可以添加許多設計要求,包括調(diào)節(jié)時間,超調(diào)量,阻尼比,自然頻率,通用的區(qū)域約束等 添加調(diào)節(jié)時間和超調(diào)量要求,根軌跡圖將產(chǎn)生如以下列圖。 閉環(huán)極點預期的區(qū)域如上圖白色的區(qū)域。更特別的,從原點出發(fā)的兩條射線代表超調(diào)量的要求。比兩條射線角度小,且在負實軸上的區(qū)域,表示超調(diào)量允許的區(qū)域。S=-2的垂線代表調(diào)節(jié)時間的要求,位于垂線左側(cè)的閉環(huán)極點滿足調(diào)節(jié)時間的要求。觀察上圖,有很多開環(huán)增益的值滿足閉環(huán)極點在期待區(qū)域。這可以從兩條

17、根軌跡支路是對稱的并且穿過白色區(qū)域看出。 更進一步,由于閉環(huán)系統(tǒng)有兩個極點沒有零點,把閉環(huán)極點放置在白色區(qū)域?qū)M足我們的瞬態(tài)響應要求。 你可以從白色區(qū)域選一對閉環(huán)極點,來確定開環(huán)增益。對于我們的系統(tǒng)來說,我們選擇閉環(huán)極點。根軌跡上的粉色的方塊說明當前開環(huán)增益下的閉環(huán)極點的位置。點擊粉色方塊并在可行域隨著根軌跡拖動,來調(diào)節(jié)控制器。讓我們把閉環(huán)極點放置在接近-6+2i的位置。這幾點的位置將在窗口的底部顯示相關的阻尼比和自然頻率。放開鼠標,在窗口的底部將會顯示開環(huán)增益,這個例子近似于10。 系統(tǒng)在這個新的增益下,也能產(chǎn)生閉環(huán)響應。從Contorol and Estimation Tool Mana

18、ger,點擊Analysis Plots 健并選擇Plot1的step,一個名為LTI Viewer SISO Design Task的空白窗口將會出現(xiàn)。然后右擊窗口,在System中選擇Closed Loop r to yblue。階躍響應將會出現(xiàn)在途中。你可以確定一些階躍相約的特性。特別的在圖上又擊,選擇Characteristics下的setting time。重復Steady State。如以下列圖所示。從上圖可以看出,沒有超調(diào)量并且調(diào)節(jié)時間小于1秒。因此超調(diào)量和調(diào)節(jié)時間到達設計要求。然而,我們也可以看出穩(wěn)態(tài)誤差將近50%。如果我們增加開環(huán)增益減少穩(wěn)態(tài)誤差,則超調(diào)量將會太大。你可以在途

19、中沿著根軌跡移向上動閉環(huán)極點,響應的開環(huán)增益將會增加。 階躍響應將會自動的改變隨著開環(huán)增益的修改。我們嘗試添加一個滯后控制器減少穩(wěn)態(tài)誤差,也滿足瞬態(tài)要求4.3添加一個滯后控制器在上面我們可以看到,有比例控制的超調(diào)量和調(diào)節(jié)時間都滿足標準,但是穩(wěn)態(tài)誤差不滿足。延時補償是一種可以減少穩(wěn)態(tài)誤差的控制器。我們比小心的設計,不能增加太多的調(diào)節(jié)時間。首先讓我們添加一個延時補償,如下形式。 1我們可以用SISO Design Tool來設計我們的延時補償。為了使SISO Design Toll有一個補償參數(shù)化與上面相對應,點擊Contorol and Estimation Tool Manager窗口頂部的E

20、dit,并選擇SISO Tool Preferences。然后選擇Options 健,選擇Zero/pole/gain 參數(shù)化,如下所示。你可以在Control and Estimation Tools Manager窗口的pensator Editor添加一個滯后補償。特別的,在Dynamics的局部右擊鼠標,選擇Add Pole/Zero Lag。然后在Real Zero和Real Pole輸入位置如以下列圖所示 。請注意相位的滯后補償和頻率實時更新與極點和零點位置的選擇。 4.4找一個滯后控制器的環(huán)路增益注意根軌跡改變了反映滯后補償?shù)牧泓c和極點的添加如以下列圖所示。我們可以再次選擇閉環(huán)極

21、點來嘗試滿足瞬態(tài)響應的要求。我們嘗試放置兩個閉環(huán)極點在接近超調(diào)量要求的邊界區(qū)域。例如,環(huán)路增益大約為20時,將放置極點如以下列圖位置。響應的閉環(huán)階躍響應將會自動更新,如下所示,你可以看到,這響應并不讓人滿意即使兩個閉環(huán)極點都在期待的區(qū)域。原因是閉環(huán)系統(tǒng)不在是一個典型的二姐系統(tǒng)了。特別的,根軌跡上有第三個極點在可行域外。第三個極點在共軛的兩個極點右邊,意味著它會減慢調(diào)節(jié)時間,這就是為什么調(diào)節(jié)時間不在滿足要求。另外。超調(diào)量很容易滿足要求即使兩個共軛極點在可行區(qū)域的邊緣。這也是由于第三個極點,它主導響應,因為它更“慢比其他極點。這意味著我們可進一步增加環(huán)路增益,即使共軛極點移出邊界限,仍滿足超調(diào)量的

22、要求。你可以回到根軌跡把共軛極點移動到離實軸更遠的地方,響應的增加開環(huán)增益。然而,在你做這之前,你必須改變虛軸的極值以便你能移動到一個滿意的位置。為了改變這些極值,雙擊根軌跡圖,翻開Property Editor,然后點擊Limits鍵并改變虛軸的極值為-15,15如下所示。實驗不同的增益直到得到滿意的結果。如下增益為44的根軌跡和響應的閉環(huán)階躍響應?,F(xiàn)在這調(diào)節(jié)時間小于兩秒并且穩(wěn)態(tài)誤差和超調(diào)量滿足要求。正如我們設計的進程根軌跡設計需要反復的實驗。SISO Design是很有用的在進程中。用SISO Design Tool,很容易調(diào)劑控制并且立即看到對根軌跡和變量分析圖的響應,例如閉環(huán)階躍響應。

23、如果你通過調(diào)劑環(huán)路增益沒能得到一個滿意的響應,我們就得移動延遲補償?shù)臉O點和零點,或者我們可以嘗試一種不同的動態(tài)補償?shù)姆绞筋~外的零點或者極點。第五章 控制器的頻域控制器5.1畫原始的Bode圖基于頻率設計的主要思路是用開環(huán)傳遞函數(shù)的Bode圖評估閉環(huán)響應。添加一個控制改變系統(tǒng)的開環(huán)Bode圖,因此改變閉環(huán)響應。我們的目標是調(diào)整開環(huán)bode圖,使閉環(huán)響應滿足我們設計要求。首先讓我們繪制原始傳遞函數(shù)的bode圖。添加如下命令在你m文件的末尾,并在MATlAB窗口中運行它。你將產(chǎn)生如下Bode圖。5.2 添加比例增益從上面bode圖,它顯示系統(tǒng)的增益裕度和相位裕度是無窮大的,這說明系統(tǒng)的是穩(wěn)定的并且有

24、很小的超調(diào)量。系統(tǒng)的問題是相位裕度是無窮大的,因為在所有的頻率上幅值在零下面。這說明系統(tǒng)準確的追蹤變量參考信號是有困難的。因此,保持足夠的相位裕度情況下,我們應該增加系統(tǒng)的增益。相位裕度為60度通常滿足臨界穩(wěn)定。從上面的bode圖,60度相位裕度的增益穿插頻率大約為10rad/sec。這幅值大約為40dB,需要增加增益以便增益穿插頻率為10 rad/sec。獲得Bode圖的準確的在*一頻率的增益和相位,可以通過點擊圖中相關頻率。bode命令,也能用來提供在10rad/sec處準確的相位和幅值,如下所示。因此,穿插頻率為10rad/sec的準確的相位裕度為180-123.7=56.3度。因此準確

25、的幅值為20log0.0139=-37.1dB,37.1dB的增益必須添加到系統(tǒng)。比例增益為1/0.0139=72將實現(xiàn)在10rad/sec的開環(huán)增益為1。添加吐下命令到你的m文件,觀察系統(tǒng)比例控制的影響。在這種情況下,我們要用margin命令代替bode命令,為了詳盡的觀察新的比例和相位裕度,還有穿插頻率。5.3 繪制閉環(huán)相應從上圖我們可以看出相位裕度和增益穿插頻率都是我們期待的。讓我們看一下閉環(huán)響應。在點文件添加如下命令。再次運行m文件,將會產(chǎn)生如下所示的階躍響應,在圖上右擊可以添加注釋并從菜單中選擇Characteristics。注意到調(diào)節(jié)時間足夠快,但是超調(diào)量和穩(wěn)態(tài)誤差太高。超調(diào)量可以

26、通過減少增益來實現(xiàn)一個更大的相位裕度,但是這將引起穩(wěn)態(tài)誤差增加。一個延遲補償是有用的,因為它可以減少增益穿插頻率,增加相位裕度且不減少系統(tǒng)增益。5.4添加一個延時補償考慮如下的延遲補償1延遲補償有一個1/0.01=100的增益,意味著它將增加系統(tǒng)的靜態(tài)位置誤差常數(shù),并減少閉環(huán)階躍響應的穩(wěn)態(tài)誤差。事實上,它允許我們減少先前用的72的比例增益,仍然能滿足要求穩(wěn)態(tài)誤差的要求。我們應用45的增益。應用如下命令,延遲補償?shù)腷ode圖將產(chǎn)生。修改你的m文件如下,觀察你的階躍響應。第六章 控制器的狀態(tài)空間設計法6.1 設計全狀態(tài)反響控制器因為系統(tǒng)的兩個狀態(tài)變量很容易測量添加一個電流表的電流,添加一個速度計測

27、速度,我們可以設計一個全狀態(tài)反響控制器,不用擔憂添加一個觀測器。全狀態(tài)反響控制系統(tǒng)的控制準則有如下形式u=r-Kc * 并且相關的表格如下所示?;叵胍幌?,這個閉環(huán)系統(tǒng)特征多項式的行列式SI-(A-B * KC),s是拉普拉斯變量。由于矩陣A和B * KC都2*2矩陣,系統(tǒng)應該有2個極點。這個事實可以用MATLAB命令驗證。如果給定的系統(tǒng)是可控的,然后通過設計一個完整的狀態(tài)反響控制器,我們可以把這兩極點移動到任何我們喜歡的地方。給定的系統(tǒng)是可控或不可控,通過檢查的可控性矩陣B AB 2B的秩決定。MATLAB命令ctrb構建可控性矩陣,通過給定矩陣A和B。此外,命令rank確定給定矩陣的秩。執(zhí)行

28、下面命令驗證系統(tǒng)的階數(shù)和系統(tǒng)是否是可控的。從上面可知,系統(tǒng)是可控的由于可控矩陣是滿秩的。我們首先放置極點在-5+i和-5-i注意 zata=0.98超調(diào)量接近于零,sigma=5提供0.8秒的調(diào)節(jié)時間。一旦我們?nèi)ゴ_定了極點的位置,我們可以用MATLAB命令place或者acker來確定控制器的增益矩陣Kc。我們將用place命令,因為他比acker數(shù)值上更有利。然后,如果我們想放置一個位置更多變,我們用acker命令。在m文件的末尾添加如下命令。在命令窗口運行它,將產(chǎn)生反響增益矩陣。參考在頂部的狀態(tài)方程,我們可以看到用u=r-Kc * 取代u可以得到如下表達式。12在你的m文件中添加如下幾行命

29、令,我們將看到閉環(huán)響應。運行你的m文件在命令窗口將得到如以下列圖。6.2 添加一個預補償器從上圖我們可以看出穩(wěn)態(tài)誤差很大。消除穩(wěn)態(tài)誤差的一個方法就是調(diào)整輸入以至于輸出也到達期待的標準。這又一定難度在我們的例子中,因為我有兩個狀態(tài)兩需要考慮。因此,我們需要計算兩個狀態(tài)量的穩(wěn)定值,用增益Kc乘以他們,并用這結果作為參考計算我們的輸入u。這個可以在參考后面添加一個常數(shù)增益預補償器Nbar來實現(xiàn)。如以下列圖所示。我們可以得到Nbar因數(shù),通過已經(jīng)定義的rscale.m函數(shù),如下所示。注意rscale.m不是一個標準的MATLAB函數(shù),你必須下載它并且把它放置在你當前的目錄下。你可以在m文件中添加如下命

30、令,并在命令窗口運行它,你可以得到階躍響應。這次,穩(wěn)態(tài)誤差小于1%,其他的設計標準也已經(jīng)到達了。注意預補償器Nbar的應用,基于原系統(tǒng)模型和預補償器在在反響環(huán)節(jié)的外面。因此,如果模型中存在錯誤,預補償器也會不正確,將會有穩(wěn)態(tài)誤差。你可以回想一下,積分控制也可以消除穩(wěn)態(tài)誤差,甚至在模型不存在或者存在擾動的情況下。對于如何在狀態(tài)空間中用積分控制,請看直流電機位置:狀態(tài)空間的方法設計控制器的例子。用積分控制的缺乏之處是錯誤首先被使用在他被改正之前,所以響應會比較慢。預補償器則能用的系統(tǒng)模型提前消除穩(wěn)態(tài)誤差。一個有用的技術是結合預補償器和積分控制的優(yōu)點。第七章 數(shù)字器控制器設計在這個教程中,我們將考慮

31、直流電速度控制的數(shù)字形式。正如我們將描述的,一個采樣數(shù)據(jù)直流電機模型可以從模擬模型轉(zhuǎn)變獲得。在這個例子中我們將設計一個PID控制器。7.1 創(chuàng)立系統(tǒng)的一個采樣數(shù)據(jù)模型設計一個數(shù)字控制系統(tǒng)的第一部是建立一個采樣數(shù)據(jù)模型。因此,當連續(xù)系統(tǒng)被采樣時,需要選擇一個采樣頻率。在選擇采樣周期時,采樣頻率必須比系統(tǒng)的動態(tài)更快,比便采樣輸出能捕獲系統(tǒng)的全部行為。讓我們創(chuàng)立一個連續(xù)的時間模型。創(chuàng)立一個m文件并添加如下的MATLAB 命令。在MATLAB窗口中運行m文件產(chǎn)生如下輸出。用zpk命令可以把傳遞函數(shù)轉(zhuǎn)變?yōu)榱泓c極點的形式。檢查原系統(tǒng)的極點或者它的頻率響應,原系統(tǒng)的主導極點sigma近似于2對應調(diào)節(jié)時間大約

32、為兩秒4/sigma。因此,選擇采樣周期為0.05秒比系統(tǒng)的動態(tài)快的多。采樣周期也比閉環(huán)系統(tǒng)得到的速度快的多。這種情況下,我們將轉(zhuǎn)變給定的傳遞函數(shù)從連續(xù)的拉式變換到離散的z域。MTALAB可以實現(xiàn)這些I轉(zhuǎn)變通過c2d命令。c2d命令局部:一個系統(tǒng)模型,采樣時間Ts,保持電路的形式。在這個例子中,我們假設一個零階保持電路。參考 簡介:數(shù)字控制器設計,來獲得更多的資料。輸入如下命令在你的m文件中,在MATLAB窗口運行它,產(chǎn)生如下的采樣數(shù)據(jù)模型。我們將在沒有任何修正的情況下分析系統(tǒng)的閉環(huán)傳遞響應。首先,我們用feedback命令獲得閉環(huán)傳遞函數(shù)。然后讓我們檢查帶有零階保持器閉環(huán)階躍響應。這個可以用

33、step和stairs名利完成。由于階躍命令用于離散模型,他將輸出離散采樣向量。模擬0.5秒的階躍響應。stairs命令把這些離散的數(shù)據(jù)畫成一個階梯,正如零階保持器產(chǎn)生的一樣。添加如下MATLAB代碼在你的m文件末尾并運行它。將產(chǎn)生以下列圖。檢查上圖發(fā)現(xiàn)穩(wěn)態(tài)誤差大太多并且調(diào)節(jié)時間有點慢。7.2 PID控制回想連續(xù)時間傳遞函數(shù)的PID控制器是:(1)從s平面繪制到z平面有很多方法。上面我們對于原系統(tǒng)模型用一個零階保持轉(zhuǎn)化。對于控制器,我們需要一種準確的,能被連續(xù)系統(tǒng)實現(xiàn)的一種轉(zhuǎn)化。從s平面到z平面準確的轉(zhuǎn)換如下所示。(2)這種轉(zhuǎn)換使數(shù)字控制器實現(xiàn)控制算法產(chǎn)生困難。因此,我們將用一種近似的轉(zhuǎn)化。特

34、別的,我們將用如下轉(zhuǎn)換。(3)我們將用MATLAB中的c2d命令,轉(zhuǎn)換連續(xù)時間PID轉(zhuǎn)化為離散時間的PID,制定轉(zhuǎn)化方式為tustin。根據(jù) 直流電機速度:PID控制設計,當Kp=100,Ki=200,Kd=10的時候我們滿足了設計需求。我們再次用這些增益?,F(xiàn)在在先前的m文件中,添加如下命令,再次運行它在MATLAB窗口中。讓我們看一下加上PID的閉環(huán)階躍響應的性能能否滿足我們的要求。添加如下命令到你的m文件并運行它。你會得到如下響應。正如你在上圖,系統(tǒng)的閉環(huán)響應是不穩(wěn)定的。因此,補償系統(tǒng)一定存在錯誤。因此,我們需要看一下補償系統(tǒng)的根軌跡。添加如下MTALAB命令到你的m文件的末尾并運行它。從

35、這個根軌跡圖,我們可以看出PID控制器有一個-1的極點在s平面上。我們知道如果系統(tǒng)的一個極點在單位元的外面,這個系統(tǒng)將是不穩(wěn)定的。不管正增益為多少系統(tǒng)是不穩(wěn)定的,因為有極點和零點在-1極點右側(cè)。因此,一個閉環(huán)極點向左移動并會在單位圓的外面,當增益增加的時候。這個例子中我們選擇取消在-0.82的零點,這樣至少在*些增益的時候系統(tǒng)是穩(wěn)定的。添加如下命令到你的m文件,并運行它,產(chǎn)生如下根軌跡圖。新的閉環(huán)系統(tǒng)醬油一個接近-0.82的極點,這幾乎抵消掉了未修正系統(tǒng)的零點。在根軌跡上點幾個位置把閉環(huán)極點放置在哪個位置,看看增益,超調(diào)量,阻尼比等等,如以下列圖所示。當然,實際響應的阻尼比和超調(diào)量的值,只有選

36、擇的極點主導。你可以通過用rlocfind命令指定一個閉環(huán)極點的位置然后確定增益。輸入K,poles = rlocfind(dC*dP_motor),然后你可以在根軌跡圖上選擇你感興趣的電。MTALAB將會得到近似的增益和所有的閉環(huán)極點。這是很有用的,因為它列出了所有的閉環(huán)極點,而不只是你選擇的。我們可以選擇一個0.8的增益并檢查閉環(huán)響應結果,通過輸入如下命令。上圖顯示調(diào)節(jié)時間小于2秒并且超調(diào)量接近2%。另外,穩(wěn)態(tài)誤差是零。因此,這響應滿足我們的設計要求。第八章 Simulink建模8.1 物理設置直流電機是一種常見的驅(qū)動器。它直接提供旋轉(zhuǎn)運動,再加上輪或繩索,可以提供平移運動。電驅(qū)的等效電路

37、和轉(zhuǎn)子的受力圖如下所示對于這個例子,我們假設系統(tǒng)的輸入是作用在點擊電驅(qū)的電壓V,輸出是桿的轉(zhuǎn)動速度d(theta)/dt。轉(zhuǎn)子和軸被假定為剛性。我們進一步假設粘性摩擦模型,即,摩擦力矩是軸的角速度成比例的。我們例子的物理參數(shù)為:在一般情況下,由一個直流電機產(chǎn)生的轉(zhuǎn)矩與電樞電流和磁場的強度成比例的。在這個例子中我們假設磁場是恒定的,因此,電機的轉(zhuǎn)矩與電樞電流I的比例由,比例系數(shù)為Kt,如下方程所示。這是被稱為一個電驅(qū)控制的電機。1反電動勢e是正比于軸的角速度的一個常數(shù)因子ke。(2)在國際單位制中,電機的轉(zhuǎn)矩系數(shù)和反電動勢常數(shù)是一樣的,即,Kt=Ke;因此,我們將使用K代表兩個電機轉(zhuǎn)矩系數(shù)和反電

38、動勢常數(shù)。8.2 Simulink建模這系統(tǒng)通過作用在轉(zhuǎn)子上的扭矩作和,和積分加速度得到速度建模。同樣,基爾霍夫定律應用在電驅(qū)電路上。首先我們給旋轉(zhuǎn)加速度和電驅(qū)電流的積分建模。(3)(4)為了建立方針模型,翻開Simulink并且新建一個模型窗口。然后遵循如下步驟。插入一個積分塊從Continuous library 并且從它的輸入輸出畫線。標示輸入為d2/dt2(theta)輸出為d/dt(theta) 如下所示。在空白處雙擊即可添加標示。 插入另一個積分塊并畫線從它的輸入和輸出。標示輸入為d/dt(i) 輸出為i。接下來應用牛頓第二定律和基爾霍夫定律產(chǎn)生如下等式。(5)(6)繼續(xù)在Simu

39、link中為這些等式建模,遵循如下步驟。從Simulink/Math Operations library中插入兩個Gain塊,每一個與積分相連。通過雙擊編輯Gain塊,把他的值改為“1/J。點擊Gain塊下面的“gain把標示改為“Inertia。相似的,編輯另一個Gain的值為“1/L并標示為“Inductance。從Simulink/Math Operations library中插入兩Add塊,每一個與gain快相連。編輯Add塊的符號為“+-,一個為正一個為負。編輯另一個Add塊的符號為“-+-,代表電學方程的符號?,F(xiàn)在,我們添加代表旋轉(zhuǎn)方程的扭矩。首先我們添加阻尼扭矩。在“Iner

40、tia塊下面插入一個增益塊。接下來右擊這個塊,選擇FormatFlip Block把塊從左翻轉(zhuǎn)到右。你可以通過選中它按“CTRL_I來翻轉(zhuǎn)。設置Gain塊的增益為“b并重命名為“Damping。把旋轉(zhuǎn)積分的輸出與“Damping塊的輸入相連。把“Damping塊的輸入與Add的負號相連。接下來,我將添加電驅(qū)的扭矩。插入一個增益塊,與扭矩Add塊正輸入相連。編輯它的值為“K,表示電動機轉(zhuǎn)矩系數(shù),標示為“Kt。把積分塊與與“Kt塊相連?,F(xiàn)在我們添加代表電學方程的電壓局部。首先,我們添加電壓。在“Inductance“插入一個Gain塊,并把他從左到右翻轉(zhuǎn)。設置增益值為“R,重命名為“Resista

41、nce。把電流積分的輸出與“Resistance的輸入相連。把“Resisitance的輸出與電流方程Add塊的負輸入相連。接下來,我們添加電動機的反電動勢。插入一個Gain塊與電流Add塊的另一個負極相連。編輯它的值為“K,代表電動機的反電動式常熟并標示為“Ke。把旋轉(zhuǎn)積分的輸出與“Ke塊相連。從Simulink/Ports&Subsystems library添加一個Ln1和Out1塊,分別標示為“Voltage和“Speed。最后的設計應該如以下列圖。為了保存這些原件作為一個單獨的子系統(tǒng),首先選擇所有的塊,然后從Edit中選擇 Create Subsystem。命名為“DC Motor并

42、保存這個模型。你的模型應該如下。我們將用到這個模型在 直流電機速度:Smuilink 控制器設計 局部。8.3 Simscape建模在這個局部,我們將展示如何用Simulink擴展的Sumscape的物理模塊建模。在Simscape庫中的塊代表真實的物理原件,因此,復雜的多種領域的模型建立,不需要用物理準則如牛頓定律和基爾霍夫定律的建立的數(shù)學模型。翻開一個新的Simulink模型并插入如下塊,來代表直流電機的電力和機械原件。Resistor,Inductorand Rotational Electromechanical Converter 塊在the Simscape/Foundation

43、Library/Electrical/Electrical Elements library。Rotational Damper and Inertia 塊在theSimscape/Foundation Library/Mechanical/Rotational Elements library。4個端口連接塊在the Simscape/Utilities library。雙擊Connection Port blocks選擇1和2的location of port為left,3和4的location of port選擇為Right。連接和標示如以下列圖。你可以旋轉(zhuǎn)一個塊,通過在塊上又擊,然后選

44、擇Format中的Rotate Block。完成直流電機Simcape模型的設計,把用假設的值配置每一個塊的物理參數(shù)。為了配置這些需要的值,在Resistor, Inductor, Inertia, Rotational Damper, Rotational,Electromechanical Converter blocks 上雙擊,輸入如下參數(shù)和單位:Resistance = R OhmInductance = L HInertia = J kg*m2Constant of Proportionality = K V/(rad/s)Damping coefficient = b N*m/(

45、rad/s)Rotational Damper塊作用于電動機粘性摩擦的建模。選擇這種類型的摩擦模型,因為他是線性的。在大多數(shù)情況下,真實的摩擦比這復雜的多。如果你希望用一個更復雜的摩擦模型,例如添加Coulomb friction到你的模型,然后你可以用the Simscape/Foundation Library/Mechanical/Rotational Elements library中的Rotational摩擦塊。注意在上面通過電動機的機械和電力方面建立了一個直流電機模型。Simscape library中也包括一個直流電機塊在the Simscape/SimElectronics/A

46、ctuators library中。這個塊在 直流電機位置:simulink 建模 局部應用。物理參數(shù)現(xiàn)在被設置。輸入如下命令在MATLAB中。這些值與物理設置的局部的一樣。你可以保存這些原件在一個子系統(tǒng)中。選擇所有的塊,然后選擇編輯菜單中的創(chuàng)立子系統(tǒng)。你可以改變你的子系統(tǒng)的顏色,通過又擊框圖,在出來的菜單中選擇FormatBackgroud Color。為了仿真系統(tǒng)的響應,需要添加傳感器快到模型中來仿真模各種物理參數(shù)的測量。更進一步,需要將Simscape模塊與Simulink模塊相聯(lián)系,因為Simscape信號代表有單位的物理量,然而Simulink信號是無量綱數(shù)。添加如下模塊到你的模型。

47、Current Sensor 模塊在the Simscape/Foundation Library/Electrical/Electrical Sensors library。Controlled Voltage Soure模塊在the Simscape/Foundation Library/Electrical/Electrical Sources library。兩個 PS-Simulink Converte模塊和一個Solver Configuration 模塊在 the Simscape/Utilities library。Electrical Reference 模塊在the Sim

48、scape/Foundation Library/Electrical/Electrical Elements library。Ideal Rotational Motion Sensor 塊the Simscape/Foundation Library/Mechanical/Mechanical Sensors library。Mechanical Rotational Reference 模塊在the Simscape/Foundation Library/ Mechanical/Rotational Elements library。三個Out1模塊and 一個In1 模塊在 the Simulink/Ports & Subsystems library。你可以在系統(tǒng)里保存這些原件,一個輸入三個輸出。選擇所有的塊并在Edit菜單中選擇Create Subsytem。同樣你可以標示這個系統(tǒng)和信號,如以下列圖所示。如果你想運行一下上面建立的模型,并用它模擬和開發(fā)控制算法,你可能繼續(xù)需要學習直流電機速度:Simulink控制。第九章 Simulink控制器設計從直流電機:Simulink建模頁面我們得到了不同的Simulink模型。我們現(xiàn)在將應用這些模型模擬系統(tǒng)的相應并設計

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論