動態(tài)仿真集成環(huán)境-Simulink3_08._第1頁
動態(tài)仿真集成環(huán)境-Simulink3_08._第2頁
動態(tài)仿真集成環(huán)境-Simulink3_08._第3頁
動態(tài)仿真集成環(huán)境-Simulink3_08._第4頁
動態(tài)仿真集成環(huán)境-Simulink3_08._第5頁
已閱讀5頁,還剩78頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1 第第6 6章章 動態(tài)仿真集成環(huán)境動態(tài)仿真集成環(huán)境- - SimulinkSimulink 本章內容本章內容 (1) 注意區(qū)分書中Simulink庫瀏覽窗口庫瀏覽窗口與Simulink模塊庫模塊庫的區(qū)別; (2) 熟悉Simulink模塊庫模塊庫和Simulink附加模塊庫中常用標準模塊的功能附加模塊庫中常用標準模塊的功能 及其應用;及其應用; (3) 利用Simulink標準模塊在用戶模型窗口中建立控制系統(tǒng)仿真模型建立控制系統(tǒng)仿真模型; (4) 熟悉利用Simulink進行系統(tǒng)仿真的兩種仿真方法:菜單法和行命令法兩種仿真方法:菜單法和行命令法; (5) 仿真算法和參數仿真算法和參數以及常用

2、標準模塊參數的設置模塊參數的設置; (6) 仿真結果的三種處理方法,并注意輸出接口模塊(Out1)和將數據輸出 到工作空間模塊(To Workspace)的不同用法及其利用它們輸出信號時 的仿真參數的設置; (7) 利用MATLAB求解非線性系統(tǒng)的線性化模型非線性系統(tǒng)的線性化模型; (8) 熟悉子系統(tǒng)子系統(tǒng)的兩種建立方法:菜單法和模塊法菜單法和模塊法,以及條件子系統(tǒng)的應用 (9) 模型封裝模板編輯器的參數設置及系統(tǒng)模型的封裝系統(tǒng)模型的封裝步驟。 2 6.4 6.4 離散系統(tǒng)的仿真離散系統(tǒng)的仿真 Simulink具有仿真離散具有仿真離散(采樣數據采樣數據)系統(tǒng)的能力。系統(tǒng)的能力。模型模型 可以是

3、可以是多采樣率多采樣率的,也就是說,它們可以包含有以不同的,也就是說,它們可以包含有以不同 的速率采樣的模塊。模型還可以是既包含有離散模塊,的速率采樣的模塊。模型還可以是既包含有離散模塊, 又包含有連續(xù)模塊的混合模型。又包含有連續(xù)模塊的混合模型。 在離散模塊中均包含一在離散模塊中均包含一 個采樣時間個采樣時間(Sample time)(Sample time) 參數設定欄,見圖參數設定欄,見圖6-526-52所示所示 離散傳遞函數模塊離散傳遞函數模塊(Discrete(Discrete Transfer Fcn)Transfer Fcn)的參數設置的參數設置 對話框對話框。 圖圖6-526-5

4、2 3 采樣時間參數設定離散模塊狀態(tài)改變的采樣時間,采樣時間參數設定離散模塊狀態(tài)改變的采樣時間, 通常,采樣時間被設成標量變量,然而,它也可以通常,采樣時間被設成標量變量,然而,它也可以 通過在該參數域中指定一個包含有兩個元素的向量通過在該參數域中指定一個包含有兩個元素的向量 來指定一個時間偏移量。例如若僅在來指定一個時間偏移量。例如若僅在采樣時間采樣時間 (Sample time)(Sample time)參數設定欄填寫一個參數設定欄填寫一個標量參數標量參數,那么,那么 它 就 是 采 樣 時 間 。 若 在 此 欄 中 填 寫它 就 是 采 樣 時 間 。 若 在 此 欄 中 填 寫 二

5、元 向 量二 元 向 量 Ts,offsetTs,offset,那么該量的第一個元素指定采樣時間,那么該量的第一個元素指定采樣時間 TsTs,第二個元素設置偏移時間,第二個元素設置偏移時間offsetoffset,實際采樣時實際采樣時 間為間為t=nt=n* *Ts+offsetTs+offset。在此,。在此,n n為整數,為整數,offsetoffset是絕是絕 對值小于采樣時間對值小于采樣時間TsTs的實數。的實數。若要求模型必須在某若要求模型必須在某 時刻更新,或要求一些離散模塊必須比另外一些離時刻更新,或要求一些離散模塊必須比另外一些離 散模塊更新得早一些或晚一些時,就必須借助散模塊

6、更新得早一些或晚一些時,就必須借助 offsetoffset的設置來實現(xiàn)的設置來實現(xiàn)。 4 1. 1. 純離散系統(tǒng)的仿真純離散系統(tǒng)的仿真 純離散系統(tǒng)純離散系統(tǒng)可可使用使用任何一種積分任何一種積分算法進行仿真,算法進行仿真, 而不會影響輸出結果。若只要采樣瞬間的輸出數據,而不會影響輸出結果。若只要采樣瞬間的輸出數據, 那么應把最小步長設置得比最大的采樣間隔大那么應把最小步長設置得比最大的采樣間隔大 例例6-12 設人口變化的非線性離散系統(tǒng)的差分方程為設人口變化的非線性離散系統(tǒng)的差分方程為 其中其中 k表示年份,表示年份,p(k)為某一年的人口數目,為某一年的人口數目,p(k-1) 為上一年的人口

7、數目。為上一年的人口數目。 如果設人口初始值如果設人口初始值p(0)=200000,人口繁殖速率人口繁殖速率 r=1.05,新增資源所能滿足的個體數目,新增資源所能滿足的個體數目N=1000000, 要求建立此人口動態(tài)變化系統(tǒng)的系統(tǒng)模型,并分析要求建立此人口動態(tài)變化系統(tǒng)的系統(tǒng)模型,并分析 人口數目在人口數目在0至至100年之間的變化趨勢。年之間的變化趨勢。 )1( 1)1()( N kp krpkp 5 圖6-53 6 圖6-54 7 2. 2. 離散離散連續(xù)混合系統(tǒng)仿真連續(xù)混合系統(tǒng)仿真 由于由于SimulinkSimulink的每個離散模塊都有一個內置的的每個離散模塊都有一個內置的 輸入采樣

8、器和輸出零階保持器,故連續(xù)模塊和離輸入采樣器和輸出零階保持器,故連續(xù)模塊和離 散模塊混用時,它們之間可直接連接。在仿真時,散模塊混用時,它們之間可直接連接。在仿真時, 離散模塊的輸入輸出每個采樣周期更新一次,即離散模塊的輸入輸出每個采樣周期更新一次,即 在采樣間隔內它的輸入輸出保持不變;而連續(xù)模在采樣間隔內它的輸入輸出保持不變;而連續(xù)模 塊的輸入輸出每個計算步長更新一次。仿真算法塊的輸入輸出每個計算步長更新一次。仿真算法 可以采用前面介紹過的任何一種??梢圆捎们懊娼榻B過的任何一種。 8 3. 3. 多頻采樣系統(tǒng)的仿真多頻采樣系統(tǒng)的仿真 多頻采樣系統(tǒng)包含有多頻采樣系統(tǒng)包含有不同采樣速率不同采樣速

9、率的離散的離散模塊模塊, 在在SimulinkSimulink中,多頻采樣系統(tǒng)和中,多頻采樣系統(tǒng)和多頻多頻采樣采樣- -連續(xù)混連續(xù)混 合系統(tǒng)合系統(tǒng)的建模與仿真都可以進行。的建模與仿真都可以進行。 例例6-136-13 對圖對圖6-556-55所示所示雙速率采樣系統(tǒng)雙速率采樣系統(tǒng)進行仿真。進行仿真。 圖圖6-556-55 9 解(解(1 1)離散傳遞函數模塊復制于離散系統(tǒng)模塊庫)離散傳遞函數模塊復制于離散系統(tǒng)模塊庫 (Discrete)(Discrete)中,設兩個離散傳遞函數模塊的采樣時間中,設兩個離散傳遞函數模塊的采樣時間 和偏離時間分別為和偏離時間分別為1,0.11,0.1和和0.7,00

10、.7,0,并把兩個離散,并把兩個離散 模塊的標題分別改為模塊的標題分別改為“Tf=1,offset=0.1” Tf=1,offset=0.1” 和和 “Tf=0.7,offset=0”Tf=0.7,offset=0”,如圖,如圖6-556-55所示;所示; (2 2)把階躍函數的階躍時刻設置為)把階躍函數的階躍時刻設置為0 0; (3 3)FormatFormatSample time colorSample time color命令可以用顏色顯示命令可以用顏色顯示 出兩個模塊采樣時間的不同;出兩個模塊采樣時間的不同; (4 4)運行以下指令,可得圖)運行以下指令,可得圖6-616-61所示曲

11、線。所示曲線。 t, ,x, ,y=sim(=sim(ex6_13 ,3);,3); stairs(stairs(t, ,y) ) legend (legend (y1 1, , y2 2) 10 6.5 6.5 仿真系統(tǒng)的線性化模型仿真系統(tǒng)的線性化模型 在一般的非線性系統(tǒng)分析中,常需要在一般的非線性系統(tǒng)分析中,常需要在在平平 衡點衡點處求系統(tǒng)的線性化模型處求系統(tǒng)的線性化模型,同樣利用,同樣利用 SimulinkSimulink提供的基本函數,也可對非線性提供的基本函數,也可對非線性 系統(tǒng)進行線性化處理。系統(tǒng)進行線性化處理。 11 1. 1. 平衡點的確定平衡點的確定 利用利用Simulink

12、Simulink提供的提供的trim( )trim( )函數可根據系函數可根據系 統(tǒng)的模型文件來求出系統(tǒng)的平衡點,但在繪制統(tǒng)的模型文件來求出系統(tǒng)的平衡點,但在繪制 SimulinkSimulink模型時注意首先應該將模型時注意首先應該將系統(tǒng)的系統(tǒng)的輸入和輸入和 輸出用輸入輸出用輸入/ /輸出接口模塊(輸出接口模塊(In1/Out1In1/Out1)來表)來表 示示。該函數的調用格式如下。該函數的調用格式如下 x, ,u, ,y, ,dx=trim(model,=trim(model,x0 0, ,u0 0, ,y0 0, ,ix, ,iu, , iy) ) 12 由于該函數是由于該函數是通過極

13、小化通過極小化的算法來求出系統(tǒng)的的算法來求出系統(tǒng)的 平衡點,所以有時不能保證狀態(tài)向量的變化率等平衡點,所以有時不能保證狀態(tài)向量的變化率等 于零。也即于零。也即除非問題本身的極小值唯一除非問題本身的極小值唯一,否則不,否則不 能保證所求的平衡點是最佳的,因此,若想尋找能保證所求的平衡點是最佳的,因此,若想尋找 全局最佳平衡點,必須多試幾組初始值。全局最佳平衡點,必須多試幾組初始值。 當系統(tǒng)有不連續(xù)狀態(tài)時當系統(tǒng)有不連續(xù)狀態(tài)時,trim( ) trim( ) 函數一般不函數一般不 適用,而適用,而trim4( )trim4( )函數也許能給出較好的結果。函數也許能給出較好的結果。 對于對于以上函數的

14、調用以上函數的調用,也可寫成如下的格式,也可寫成如下的格式 x,u,y,dx=trim(model)x,u,y,dx=trim(model) 這時會在默認的輸入與輸出下求出系統(tǒng)的平衡這時會在默認的輸入與輸出下求出系統(tǒng)的平衡 點來,這樣的方法尤其對線性系統(tǒng)是有效的。點來,這樣的方法尤其對線性系統(tǒng)是有效的。 13 2. 2. 連續(xù)系統(tǒng)的線性化模型連續(xù)系統(tǒng)的線性化模型 利用利用SimulinkSimulink提供的函數提供的函數linmod( )linmod( )和和linmod2( ) linmod2( ) 可以根據模型文件(同上可以根據模型文件(同上系統(tǒng)的輸入和輸出必須由系統(tǒng)的輸入和輸出必須由

15、ConnectionsConnections庫中的庫中的In1In1和和Out1Out1模塊來定義模塊來定義)得到線性)得到線性 化模型的狀態(tài)參數化模型的狀態(tài)參數A、B、C和和D,它們的調用格式為,它們的調用格式為 A, ,B, ,C, ,D=linmodlinmod(model,(model,x, ,u,pert,xpert,upert,p,pert,xpert,upert,p1 1,p,p 1010) ) A, ,B, ,C, ,D=linmod2linmod2(model,(model,x, ,u,pert,apert,bpert,cpert,pert,apert,bpert,cpert

16、, dpert,pdpert,p1 1,p,p10 10) ) 14 由由linmod2( ) linmod2( ) 所得線性模型比所得線性模型比linmodlinmod ( )準確)準確, ,當然所需的運行時間也更多。當然所需的運行時間也更多。 對于線性系統(tǒng)上面的調用格式可簡寫為對于線性系統(tǒng)上面的調用格式可簡寫為 A, ,B, ,C, ,D=linmod(model)=linmod(model) A, ,B, ,C, ,D=linmod2(model)=linmod2(model) 15 3. 3. 離散系統(tǒng)的線性化模型離散系統(tǒng)的線性化模型 SimulinkSimulink提供的函數提供的函

17、數d dlinmod( )linmod( ) 能夠從能夠從非線非線 性多頻率采樣離散性多頻率采樣離散-連續(xù)混和系統(tǒng)連續(xù)混和系統(tǒng)中提取一個在中提取一個在 任何給定的采樣周期任何給定的采樣周期TsTs下的近似線性模型。當下的近似線性模型。當TsTs 取零時取零時, ,就可得到近似的連續(xù)線性模型,否則就可得到近似的連續(xù)線性模型,否則, ,得得 到離散線性模型。該指令的一般調用格式為到離散線性模型。該指令的一般調用格式為 Ad d, ,Bd d, ,Cd d, ,Dd d=dlinmoddlinmod(model,(model,TsTs, ,x, ,u,pert,pert, xpert,upert,p

18、xpert,upert,p1 1,p,p10 10) ) 其中其中TsTs為為指定的采樣周期指定的采樣周期, ,其它參數同連續(xù)系統(tǒng)中。其它參數同連續(xù)系統(tǒng)中。 16 在原系統(tǒng)在原系統(tǒng)穩(wěn)定穩(wěn)定的前提下的前提下, ,若若Ts Ts 是原系統(tǒng)所有采樣周期是原系統(tǒng)所有采樣周期 的整數倍的整數倍, ,則由則由dlinmod( ) dlinmod( ) 函數所得線性模型在函數所得線性模型在TsTs采樣采樣 點上與原系統(tǒng)有相同的頻率響應和時間響應點上與原系統(tǒng)有相同的頻率響應和時間響應, ,即便在上即便在上 述條件不滿足的情況下述條件不滿足的情況下, ,該指令仍可能給出有效的線性該指令仍可能給出有效的線性 化模

19、型?;P?。 當當Ts=0Ts=0時,若時,若Ad d的所有特征根在的所有特征根在ss左半平面左半平面, ,則系統(tǒng)則系統(tǒng) 穩(wěn)定穩(wěn)定, , 當當Ts0Ts0時時, , Ad d特征根在特征根在zz平面的單位圓內平面的單位圓內, ,則系則系 統(tǒng)穩(wěn)定。如果原系統(tǒng)不穩(wěn)定或統(tǒng)穩(wěn)定。如果原系統(tǒng)不穩(wěn)定或TsTs不是原系統(tǒng)采樣周期的不是原系統(tǒng)采樣周期的 整數倍整數倍, ,所得所得Ad d, ,Bd d有可能是復數。即便如此有可能是復數。即便如此, , Ad d的特征的特征 根仍可能為原系統(tǒng)的穩(wěn)定性提供相當的信息。根仍可能為原系統(tǒng)的穩(wěn)定性提供相當的信息。 利用函數利用函數dlinmod( )dlinmod( )

20、可以把系統(tǒng)從一種采樣周期??梢园严到y(tǒng)從一種采樣周期模 型變換到另一種采樣周期下的模型型變換到另一種采樣周期下的模型,可以把,可以把離散模型變離散模型變 成連續(xù)模型成連續(xù)模型, ,也可以把也可以把連續(xù)模型變成離散模型連續(xù)模型變成離散模型。 17 例例6-14 求圖求圖6-57 所示非線性系統(tǒng)的所示非線性系統(tǒng)的平衡工作點平衡工作點,及在,及在 平衡工作點附近的平衡工作點附近的線性模型線性模型 。 圖圖6-57 單輸入單輸入雙輸出非線性系統(tǒng)雙輸出非線性系統(tǒng) 18 解解 (1)飽和非線性模塊)飽和非線性模塊(Saturation) 圖圖6-58 飽和非線形模塊參數對話框飽和非線形模塊參數對話框 19

21、在在MATLAB指令方式下,運行以下指令可求出平衡指令方式下,運行以下指令可求出平衡 點。點。 x=0;0;0;u=0;y=1;1; ix= ; %不固定任何狀態(tài)不固定任何狀態(tài) iu= ; %不固定輸入不固定輸入 iy=1;2; %固定輸出固定輸出y(1)和和y(2) x,u,y,dx=trim(ex6_14, x,u,y,ix,iu,iy);x 結果顯示:結果顯示: x = 0.0000 0.5380 0.5000 20 在在MATLAB指令方式下運行以下命令可得到系統(tǒng)在指令方式下運行以下命令可得到系統(tǒng)在 平衡工作點附近的線性模型平衡工作點附近的線性模型 A,B,C,D=linmod(ex6

22、_14); num,den=ss2tf(A,B,C,D); printsys(num,den,s) 結果顯示:結果顯示: num(1)/den = -8.8818e-016 s2 + 1 s + 1 - s3 + 2.4 s2 + 2.4 s + 2 num(2)/den = s3 + 2.4 s2 + 2.4 s + 1 - s3 + 2.4 s2 + 2.4 s + 2 21 例例6-15 在滑艇的運行過程中,滑艇主要受到如下在滑艇的運行過程中,滑艇主要受到如下 作用力的控制:滑艇自身的牽引力作用力的控制:滑艇自身的牽引力F,滑艇受到的,滑艇受到的 水的阻力水的阻力f。其中水的阻力。其中水

23、的阻力 ,v為滑艇的運為滑艇的運 動速度。由運動學的相關定理可知,整個滑艇系統(tǒng)動速度。由運動學的相關定理可知,整個滑艇系統(tǒng) 的動力學方程為:的動力學方程為: 其中其中 m為滑艇的質量。由滑艇系統(tǒng)的動力學方程為滑艇的質量。由滑艇系統(tǒng)的動力學方程 可知,此系統(tǒng)為一非線性系統(tǒng)。假設滑艇的質量可知,此系統(tǒng)為一非線性系統(tǒng)。假設滑艇的質量 m=1000kg,下面來,下面來建立此系統(tǒng)的建立此系統(tǒng)的Simulink模型并模型并 進行線性分析。進行線性分析。 vvf 2 )( 1 2 vvF m v 22 解解 (1)滑艇速度控制系統(tǒng)的模型建立與仿真)滑艇速度控制系統(tǒng)的模型建立與仿真 根據上式建立圖根據上式建立

24、圖6-59所示仿真框圖;所示仿真框圖; 圖圖6-59 滑艇速度控制系統(tǒng)模型框圖滑艇速度控制系統(tǒng)模型框圖 23 圖6-60 滑艇系統(tǒng)仿真結果 由仿真曲線可知,滑艇在牽引力由仿真曲線可知,滑艇在牽引力F(值(值1000)的作)的作 用下,速度在經過用下,速度在經過80s左右的時后,由左右的時后,由0上升并穩(wěn)定在上升并穩(wěn)定在 33km/h。 24 (2)滑艇速度控制器系統(tǒng)的線性化)滑艇速度控制器系統(tǒng)的線性化 對于滑艇速度控制器系統(tǒng)而言,如果要在比賽中對于滑艇速度控制器系統(tǒng)而言,如果要在比賽中 獲得獲得勝利勝利,則滑艇必須,則滑艇必須在盡可能短的時間內達到最大在盡可能短的時間內達到最大 速度速度。設此

25、速度控制器所能達到的最大速度將為。設此速度控制器所能達到的最大速度將為 100km/h。而在前面所提供的滑艇牽引力為。而在前面所提供的滑艇牽引力為1000時,時, 能達到的最大速度僅為能達到的最大速度僅為33km/h,故需要,故需要重新設置合適重新設置合適 的牽引力對滑艇速度控制器進行操縱的牽引力對滑艇速度控制器進行操縱。為使滑艇速度。為使滑艇速度 控制系統(tǒng)的實現(xiàn)變得比較容易,控制系統(tǒng)的實現(xiàn)變得比較容易,需要設計相應的線性需要設計相應的線性 控制器對滑艇的速度進行控制控制器對滑艇的速度進行控制,使其在某個工作點附,使其在某個工作點附 近與原來滑艇速度控制器的作用基本一致。近與原來滑艇速度控制器

26、的作用基本一致。 25 既然滑艇速度最大值要求為既然滑艇速度最大值要求為100km/h,因此對滑,因此對滑 艇速度控制系統(tǒng)進行線性化時,艇速度控制系統(tǒng)進行線性化時,希望此系統(tǒng)能夠使滑希望此系統(tǒng)能夠使滑 艇的速度基本穩(wěn)定在最大速度處艇的速度基本穩(wěn)定在最大速度處。換句話說,。換句話說,系統(tǒng)的系統(tǒng)的 工作點應該選擇為工作點應該選擇為使速度達到使速度達到100km/h時的系統(tǒng)輸入時的系統(tǒng)輸入 與系統(tǒng)狀態(tài)與系統(tǒng)狀態(tài)。由于對非線性系統(tǒng)進行線性化表示需要。由于對非線性系統(tǒng)進行線性化表示需要 給出系統(tǒng)所在的操作點(即平衡點),因此在對滑艇給出系統(tǒng)所在的操作點(即平衡點),因此在對滑艇 速度控制系統(tǒng)進行線性化之

27、前,速度控制系統(tǒng)進行線性化之前,需要獲得滑艇速度穩(wěn)需要獲得滑艇速度穩(wěn) 定在定在100km/h處的系統(tǒng)平衡點處的系統(tǒng)平衡點。按照如下步驟可以獲。按照如下步驟可以獲 得滑艇速度控制系統(tǒng)的平衡點:得滑艇速度控制系統(tǒng)的平衡點: 修改系統(tǒng)模型修改系統(tǒng)模型ex6_15,并另存為,并另存為ex6_15_1,如圖,如圖 6-61所示。其中所示。其中In1、Out1分別表示系統(tǒng)的輸入與輸出。分別表示系統(tǒng)的輸入與輸出。 26 求取滑艇速度控制系統(tǒng)在此工作點處的平衡點求取滑艇速度控制系統(tǒng)在此工作點處的平衡點 在在 MATLAB命令窗口中,利用以下命令獲得系統(tǒng)命令窗口中,利用以下命令獲得系統(tǒng) 在輸出為在輸出為100

28、km/h時的平衡狀態(tài):時的平衡狀態(tài): x,u,y,dx=trim(ex6_15_1, , ,100, , ,1) 結果顯示:結果顯示: x= 100 u= 9900 y= 100 dx= 0 圖圖6-61 27 函數函數trim( )用來用來求取滑艇速度控制系統(tǒng)在速度求取滑艇速度控制系統(tǒng)在速度 穩(wěn)定在穩(wěn)定在100 km/h時的時的平衡點平衡點。x=100表示滑艇控制表示滑艇控制 系統(tǒng)中的狀態(tài)變量,即滑艇速度系統(tǒng)中的狀態(tài)變量,即滑艇速度v=100;u=9900表表 示滑艇在平衡點處的系統(tǒng)輸入值,即示滑艇在平衡點處的系統(tǒng)輸入值,即滑艇牽引力滑艇牽引力 F=9900:y=100表示滑艇在平衡點處的系

29、統(tǒng)輸出,表示滑艇在平衡點處的系統(tǒng)輸出, 即滑艇速度即滑艇速度v=100。 28 求取滑艇速度控制系統(tǒng)的線性系統(tǒng)描述求取滑艇速度控制系統(tǒng)的線性系統(tǒng)描述 在獲得使滑艇速度穩(wěn)定在在獲得使滑艇速度穩(wěn)定在100 km/h處時系統(tǒng)的平處時系統(tǒng)的平 衡點衡點x、u與與y之后,在之后,在MATLAB命令窗口中使用命令窗口中使用 linmod命令便可以獲得相應的線性系統(tǒng)描述,如下所命令便可以獲得相應的線性系統(tǒng)描述,如下所 示:示: A,B,C,D=linmod(ex6_15_1,x,u) 結果顯示:結果顯示: A = -0.1990 B = 1.0000e-003 C = 1.0000 D = 0 29 從而得

30、到線性化后系統(tǒng)的狀態(tài)空間描述。其中從而得到線性化后系統(tǒng)的狀態(tài)空間描述。其中 A,B,C與與D是線性系統(tǒng)的狀態(tài)空間矩陣。故相應的線性是線性系統(tǒng)的狀態(tài)空間矩陣。故相應的線性 系統(tǒng)的系統(tǒng)的狀態(tài)空間描述狀態(tài)空間描述方程為方程為 注意此狀態(tài)空間描述是在系統(tǒng)平衡點注意此狀態(tài)空間描述是在系統(tǒng)平衡點x=100, u=9900以及以及y=100處附近的近似表示。此時系統(tǒng)為穩(wěn)處附近的近似表示。此時系統(tǒng)為穩(wěn) 定的系統(tǒng),但是由于矩陣定的系統(tǒng),但是由于矩陣A的值為負值,故當系統(tǒng)在的值為負值,故當系統(tǒng)在 其他的工作點處可能不穩(wěn)定。其他的工作點處可能不穩(wěn)定。 xy uxx001. 0199. 0 30 6.6 6.6 創(chuàng)建

31、子系統(tǒng)創(chuàng)建子系統(tǒng) 隨著動態(tài)模型中模塊數量和復雜性的增加,隨著動態(tài)模型中模塊數量和復雜性的增加, 可以將模型編輯窗口中所包含的模塊及其模塊可以將模型編輯窗口中所包含的模塊及其模塊 間的關系按功能分成不同的組,組成若干個子間的關系按功能分成不同的組,組成若干個子 系統(tǒng)(系統(tǒng)(SubsystemSubsystem),子系統(tǒng)的建立有利于管理),子系統(tǒng)的建立有利于管理 大型系統(tǒng),它可以減少模型編輯窗口中的模塊大型系統(tǒng),它可以減少模型編輯窗口中的模塊 數量,可以將功能上有關聯(lián)的模塊放在一起,數量,可以將功能上有關聯(lián)的模塊放在一起, 以及可以建立一個具有層次結構的模塊圖。以及可以建立一個具有層次結構的模塊圖

32、。 子系統(tǒng)的建立一般有兩種方法:子系統(tǒng)的建立一般有兩種方法:菜單法菜單法和和模塊模塊 法。法。 31 1. 1. 通過通過菜單法菜單法建立子系統(tǒng)建立子系統(tǒng) 如果如果模型編輯窗口中,已經包含了組成子系統(tǒng)模型編輯窗口中,已經包含了組成子系統(tǒng) 的模塊的模塊,則可利用菜單法建立子系統(tǒng),其方法非,則可利用菜單法建立子系統(tǒng),其方法非 常簡單,首先用鼠標選定待構成子系統(tǒng)的各個模常簡單,首先用鼠標選定待構成子系統(tǒng)的各個模 塊(包括它們間的連線在內),然后選擇塊(包括它們間的連線在內),然后選擇 Eidt|Create subsystemEidt|Create subsystem命令,則會自動將選定范命令,則會

33、自動將選定范 圍內的模塊及連線用子系統(tǒng)(圍內的模塊及連線用子系統(tǒng)(SubsystemSubsystem)模塊代)模塊代 替,如有必要可以把子系統(tǒng)的標題替,如有必要可以把子系統(tǒng)的標題SubsystemSubsystem改變改變 為合適的標題。如想改變子系統(tǒng)中的具體內容,為合適的標題。如想改變子系統(tǒng)中的具體內容, 則需用鼠標左鍵雙擊該子系統(tǒng)的圖標,這時就會則需用鼠標左鍵雙擊該子系統(tǒng)的圖標,這時就會 自動彈出一個子系統(tǒng)模型窗口,將該子系統(tǒng)的具自動彈出一個子系統(tǒng)模型窗口,將該子系統(tǒng)的具 體內容顯示出來,用戶可以在這一窗口內進行修體內容顯示出來,用戶可以在這一窗口內進行修 改任何內容,修改完后關閉此窗口

34、即可。改任何內容,修改完后關閉此窗口即可。 32 例例6-16 將圖將圖6-62(a)中給出的)中給出的PID控制器??刂破髂?塊組表示成子系統(tǒng)形式,并把圖標下的標題改塊組表示成子系統(tǒng)形式,并把圖標下的標題改 變成變成“PID Controller”。 圖6-62(a) 33 圖6-62(b),(c) 34 如想改變如想改變PIDPID控制器中的內容,則用鼠標控制器中的內容,則用鼠標 左鍵雙擊該子系統(tǒng)的圖標,這時就會自動彈左鍵雙擊該子系統(tǒng)的圖標,這時就會自動彈 出一個子系統(tǒng)模型窗口,如圖出一個子系統(tǒng)模型窗口,如圖6-626-62(d d)所示。)所示。 圖圖6-62(d) 35 2. 2. 通

35、過通過模塊法模塊法建立子系統(tǒng)建立子系統(tǒng) 通過模塊法建立子系統(tǒng)的步驟如下:通過模塊法建立子系統(tǒng)的步驟如下: 1)首先打開一個空白模型編輯窗口,并首先打開一個空白模型編輯窗口,并從從子系統(tǒng)子系統(tǒng) 模塊庫模塊庫(Subsystems)(Subsystems)中復制一個子系統(tǒng)模塊中復制一個子系統(tǒng)模塊 SubsystemSubsystem,如圖,如圖6-636-63所示;所示; 圖圖6-636-63 36 2)2)用鼠標雙擊該子系統(tǒng)模塊用鼠標雙擊該子系統(tǒng)模塊SubsystemSubsystem的圖標,打的圖標,打 開一個如圖開一個如圖6-646-64所示子系統(tǒng)模塊所示子系統(tǒng)模塊SubsystemSubs

36、ystem的編的編 輯窗口;輯窗口; 圖圖6-646-64 37 3)在子系統(tǒng)模塊在子系統(tǒng)模塊SubsystemSubsystem的編輯窗口中加入子系統(tǒng)的編輯窗口中加入子系統(tǒng) 所包含的所有模塊及其連接關系所包含的所有模塊及其連接關系,并用窗口中的,并用窗口中的 File|SaveFile|Save命令將其按用戶指定的子系統(tǒng)名進行保命令將其按用戶指定的子系統(tǒng)名進行保 存,或用存,或用 File|Save asFile|Save as命令將其更名命令將其更名。在創(chuàng)建子。在創(chuàng)建子 系統(tǒng)的過程中要保證使用輸入模塊系統(tǒng)的過程中要保證使用輸入模塊(In1)(In1)代表該子代表該子 系統(tǒng)從外部的輸入,使用

37、輸出模塊系統(tǒng)從外部的輸入,使用輸出模塊(Out1)(Out1)代表該代表該 子系統(tǒng)的輸出。例如,在圖子系統(tǒng)的輸出。例如,在圖6-64 6-64 所示子系統(tǒng)模塊所示子系統(tǒng)模塊 SubsystemSubsystem的編輯窗口中加入的編輯窗口中加入PIDPID控制器模塊組,控制器模塊組, 如圖如圖6-656-65,并將其以,并將其以pid2pid2子系統(tǒng)名進行保存,關子系統(tǒng)名進行保存,關 閉圖閉圖6-656-65窗口后,便可得到如圖窗口后,便可得到如圖6-666-66所示的所示的pid2pid2 子系統(tǒng)。子系統(tǒng)。 38 圖6-65 圖6-66 39 6.7 6.7 封裝封裝編輯器編輯器 利用利用Si

38、mulink的的封裝封裝功能,可以功能,可以為一個子系統(tǒng)為一個子系統(tǒng) 創(chuàng)建新的對話框和圖標創(chuàng)建新的對話框和圖標,對于一個具有一個模塊以,對于一個具有一個模塊以 上的子系統(tǒng)來說,封裝的重要上的子系統(tǒng)來說,封裝的重要目的目的是幫助用戶是幫助用戶創(chuàng)建創(chuàng)建 一個新的對話框來統(tǒng)一接收子系統(tǒng)所含模塊的所有一個新的對話框來統(tǒng)一接收子系統(tǒng)所含模塊的所有 參數參數,這樣就,這樣就無須分別多次打開子系統(tǒng)中各個模塊無須分別多次打開子系統(tǒng)中各個模塊 的對話框的對話框來逐個輸入參數,而是把封裝后的子系統(tǒng)來逐個輸入參數,而是把封裝后的子系統(tǒng) 當作一個當作一個Simulink的標準模塊來處理。像其他標的標準模塊來處理。像其

39、他標 準模塊一樣,這個封裝后的模塊具有獨特的圖標和準模塊一樣,這個封裝后的模塊具有獨特的圖標和 方便易用的對話框。方便易用的對話框。 40 通過封裝技術,用戶可以建立自己的通過封裝技術,用戶可以建立自己的Simulink模模 塊和模塊庫。子系統(tǒng)封裝時,首先選定對象,在執(zhí)塊和模塊庫。子系統(tǒng)封裝時,首先選定對象,在執(zhí) 行封裝子系統(tǒng)命令行封裝子系統(tǒng)命令EidtMask Subsystem后將給后將給 出一個如圖出一個如圖6-67所示封裝子系統(tǒng)編輯器對話框,用所示封裝子系統(tǒng)編輯器對話框,用 戶通過在該對話框定義新模塊的標題、參數域、初戶通過在該對話框定義新模塊的標題、參數域、初 始化命令、圖標和幫助文

40、本來創(chuàng)建一個封裝后新模始化命令、圖標和幫助文本來創(chuàng)建一個封裝后新模 塊的對話框和圖標。如果塊的對話框和圖標。如果需要更改封裝后模塊的屬需要更改封裝后模塊的屬 性或內容性或內容,在選定該封裝模塊后,可使用,在選定該封裝模塊后,可使用EditEdit mask命令來進行修改。命令來進行修改。 封裝子系統(tǒng)編輯器由四個頁面和五個功能按鈕組成封裝子系統(tǒng)編輯器由四個頁面和五個功能按鈕組成 41 圖6-67 42 6.7.1 參數參數(Parameters)頁面頁面 該頁面用來定義封裝模塊對話框的提示信息該頁面用來定義封裝模塊對話框的提示信息 及用來接收對話框中用戶輸入參數值的變量名。及用來接收對話框中用戶

41、輸入參數值的變量名。 該頁面包括以下幾個對話框和功能按鈕。該頁面包括以下幾個對話框和功能按鈕。 1. 參數對話框參數對話框(Dialog parameters) 在參數在參數(Parameters)頁面的參數對話框頁面的參數對話框 (Dialog parameters)中,可以設置了以下信中,可以設置了以下信 息。息。 1) 提示信息(提示信息(Prompt) 該項用來該項用來定義一個參數的提示信息定義一個參數的提示信息 (MATLAB7.4版僅限西文字符,版僅限西文字符,MATLAB6.5 版中西文均可)。版中西文均可)。 2) 變量名(變量名(Variable) 該項用來指定一個變量以保存

42、參數值,它該項用來指定一個變量以保存參數值,它與與 參數的提示信息相對應參數的提示信息相對應。 43 3) 控件類型(控件類型(Type) 該選擇項用來選擇參數值的輸入方法,提供了以該選擇項用來選擇參數值的輸入方法,提供了以 下下三種類型的控件三種類型的控件: (1) 編輯控件編輯控件(edit) 當選擇此項時,用戶可在封裝模塊的對話框中輸當選擇此項時,用戶可在封裝模塊的對話框中輸 入參數值。入參數值。 (2) 檢查控件檢查控件(checkbox) 當選擇此項時,用戶可以在選與不選該檢查框兩當選擇此項時,用戶可以在選與不選該檢查框兩 者之間選擇其一。如圖者之間選擇其一。如圖6-68所示。所示。

43、 44 圖圖6-686-68 圖圖6-68中與參數中與參數“顏色顏色”相關的變量相關的變量c的值,取決的值,取決 于檢查框是否被選中,以及于檢查框是否被選中,以及Evaluat的選定與否。當的選定與否。當 Evaluat選定時,選與不選顏色檢查框,變量選定時,選與不選顏色檢查框,變量c的值的值 等于等于1或或0;否則,變量;否則,變量c的值分別為的值分別為“on”和和“off”。 45 (3) 彈出式菜單控件彈出式菜單控件(popup) 當選擇此項時,被選參數的選項菜單(當選擇此項時,被選參數的選項菜單(Options forselected parameter)中的)中的彈出式菜單選項對話彈

44、出式菜單選項對話 框框(Popup)隨之有效隨之有效,用戶可在此框中給出多條選項,用戶可在此框中給出多條選項, 每條選項占一行。彈出式菜單可每條選項占一行。彈出式菜單可使用戶為參數在多使用戶為參數在多 種可能的值中間選取一個種可能的值中間選取一個,如圖,如圖6-69所示。所示。 46 圖圖6-696-69 圖圖6-69中與參數中與參數“顏色顏色”相關的變量相關的變量c的值,取決的值,取決 于從彈出式菜單中選擇了哪一項,以及于從彈出式菜單中選擇了哪一項,以及Evaluat的選的選 定與否。如果定與否。如果Evaluat選定時,則從彈出式菜單的選選定時,則從彈出式菜單的選 擇列中選擇那一項的索引,

45、第一項的索引為擇列中選擇那一項的索引,第一項的索引為1,若選,若選 擇了第三項,則擇了第三項,則c的值為的值為3;否則,;否則,c值為被選擇的字值為被選擇的字 符串,若選擇了第三項,則符串,若選擇了第三項,則c的值為的值為“Blue”。 47 4) 賦值方式(賦值方式(Evaluate) 該選項用來定義該選項用來定義參數值如何保存于變量名中參數值如何保存于變量名中。 當選當選Evaluate項時,用戶在封裝模塊對話框中項時,用戶在封裝模塊對話框中 輸入的參數值在賦給變量之前先由輸入的參數值在賦給變量之前先由MATLAB計計 算出來;否則,用戶在封裝模塊對話框中輸入算出來;否則,用戶在封裝模塊對

46、話框中輸入 的參數值不會先被計算,而是作為一個字符串的參數值不會先被計算,而是作為一個字符串 賦給變量。賦給變量。 如果既需要字符串,又需要求它的值,應不選如果既需要字符串,又需要求它的值,應不選 Evaluate項,然后在初始化命令框中使用項,然后在初始化命令框中使用 MATLAB的的eval( )命令。命令。 48 2.功能按鈕功能按鈕 在參數在參數(Parameters)頁面的左邊設置了以下四個頁面的左邊設置了以下四個 按鈕。按鈕。 (1)增加按鈕增加按鈕“ ” 按此按鈕會在此按鈕右邊的參數列表框中增加一按此按鈕會在此按鈕右邊的參數列表框中增加一 條參數列表項,參數列表項的內容包括了參數

47、提示、條參數列表項,參數列表項的內容包括了參數提示、 變量名、控件類型和賦值方式等,它們會自動從各變量名、控件類型和賦值方式等,它們會自動從各 自的對話框中選取當前值。每一條參數列表項對應自的對話框中選取當前值。每一條參數列表項對應 一個封裝模塊的參數對話框。一個封裝模塊的參數對話框。 (2)刪除按鈕刪除按鈕“ ” 按此按鈕會刪除一個選中的參數列表項。按此按鈕會刪除一個選中的參數列表項。 (3)移動按鈕移動按鈕“ Ki-Integral Gain; Kd-Differential Gain 71 當以上工作完成后,選擇【當以上工作完成后,選擇【OK】按鈕,于是】按鈕,于是PID Control

48、ler子系統(tǒng)就被封裝結束,封裝后的新模塊子系統(tǒng)就被封裝結束,封裝后的新模塊 圖標見圖圖標見圖6-70所示。用鼠標左鍵雙擊圖中的所示。用鼠標左鍵雙擊圖中的PID Controller新模塊的圖標,會彈出封裝后的新模塊的圖標,會彈出封裝后的PID模模 塊對話框,如圖塊對話框,如圖6-71。 圖圖6-706-70圖圖6-716-71 72 6.8 條件子系統(tǒng)條件子系統(tǒng) 在條件執(zhí)行子系統(tǒng)中,子系統(tǒng)的輸出不僅在條件執(zhí)行子系統(tǒng)中,子系統(tǒng)的輸出不僅 依賴于子系統(tǒng)本身的輸入信號,而且依賴于子系統(tǒng)本身的輸入信號,而且還受還受 到子系統(tǒng)控制信號的控制。到子系統(tǒng)控制信號的控制。 條件執(zhí)行子系統(tǒng)的執(zhí)行受到控制信號的控

49、條件執(zhí)行子系統(tǒng)的執(zhí)行受到控制信號的控 制,根據控制信號對條件子系統(tǒng)執(zhí)行的控制,根據控制信號對條件子系統(tǒng)執(zhí)行的控 制方式不同,可以將條件執(zhí)行子系統(tǒng)劃分制方式不同,可以將條件執(zhí)行子系統(tǒng)劃分 為如下的幾種基本類型。為如下的幾種基本類型。 73 1.使能子系統(tǒng)使能子系統(tǒng)(Enabled Subsystem) 使能子系統(tǒng)除輸入和輸出外,還有一個惟使能子系統(tǒng)除輸入和輸出外,還有一個惟 一的控制信號輸入端口,被稱為一的控制信號輸入端口,被稱為激活端口激活端口, 只有當它的控制信號輸入為正時,也就是只有當它的控制信號輸入為正時,也就是 說當子系統(tǒng)激活時,使能子系統(tǒng)才開始執(zhí)說當子系統(tǒng)激活時,使能子系統(tǒng)才開始執(zhí)

50、行,并且只要控制信號保持為正它就一直行,并且只要控制信號保持為正它就一直 執(zhí)行。使能子系統(tǒng)的控制信號可以是標量執(zhí)行。使能子系統(tǒng)的控制信號可以是標量 或向量。或向量。 74 對于圖對于圖6-80所示的使能子系統(tǒng),雙擊其所示的使能子系統(tǒng),雙擊其 圖標便可打開如圖圖標便可打開如圖6-81所示的編輯窗口。所示的編輯窗口。 圖圖6-806-80圖圖6-816-81 75 打開圖打開圖6-81使能子系統(tǒng)編輯窗口中的使能子系統(tǒng)編輯窗口中的 Enable模塊對話框,可以設置當使能子系統(tǒng)模塊對話框,可以設置當使能子系統(tǒng) 重新激活時,子系統(tǒng)的初始狀態(tài),如圖重新激活時,子系統(tǒng)的初始狀態(tài),如圖6-82所所 示。示。

51、圖圖6-826-82圖圖6-836-83 76 另外通過圖另外通過圖6-82Enable模塊對話框中的模塊對話框中的Show output port選框,可以選擇是否輸出激活控制信號。選框,可以選擇是否輸出激活控制信號。 當選定輸出使能控制信號時,當選定輸出使能控制信號時,Enable模塊便增加一模塊便增加一 個輸出端口。個輸出端口。 盡管使能子系統(tǒng)在非激活狀態(tài)時不執(zhí)行,但其輸盡管使能子系統(tǒng)在非激活狀態(tài)時不執(zhí)行,但其輸 出信號仍然可以提供給另外的模塊。當使能子系統(tǒng)出信號仍然可以提供給另外的模塊。當使能子系統(tǒng) 處于非激活狀態(tài)時,利用圖處于非激活狀態(tài)時,利用圖6-81使能子系統(tǒng)編輯窗使能子系統(tǒng)編輯

52、窗 口中口中Out1模塊對話框,可以選擇保持它的輸出信號模塊對話框,可以選擇保持它的輸出信號 為在它變?yōu)榉羌せ顮顟B(tài)前的值,或重置為初始值,為在它變?yōu)榉羌せ顮顟B(tài)前的值,或重置為初始值, 如圖如圖6-83所示。所示。 在圖在圖6-83中選擇狀態(tài)中選擇狀態(tài)held,以使輸出保持為其最近,以使輸出保持為其最近 的值;而選擇的值;而選擇reset,以使輸出重新設置為初始參數,以使輸出重新設置為初始參數 值值Initial output。 77 例例6-18 利用使能子系統(tǒng)將一幅值為利用使能子系統(tǒng)將一幅值為5的的交流信號轉交流信號轉 換為同幅值的直流信號換為同幅值的直流信號。 解解 (1) 建立如圖建立如圖6-84所示的系統(tǒng)模型;所示的系統(tǒng)模型; 圖圖6-84 78 (2) 圖圖6-84中正弦信號中正弦信號(Sine Wave)復制于信號源模塊)復制于信號源模塊 庫庫(Sources),并將其幅值設為,并將其幅值設為5; (3) 圖圖6-84中的兩個使能子系統(tǒng)中的兩個使能子系統(tǒng)(Enabled Subsystem) 復制于復制于子系統(tǒng)模塊庫子系統(tǒng)模塊庫(Subsystems)。將兩個使能子系將兩個使能子系 統(tǒng)的標題統(tǒng)的標題Enabled Subsystem 和和Enabled Subsystem1, 分別改為:增益為正和增益為負,如圖分別改為:增益

溫馨提示

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

評論

0/150

提交評論