資源描述:
《線性控制系統(tǒng)分析與設(shè)計(jì)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。
1、第6章線性控制系統(tǒng)分析與設(shè)計(jì)MATLAB的控制系統(tǒng)工具箱(ControlSystemToolbox)可以提供對(duì)線性系統(tǒng)分析、設(shè)計(jì)和建模的各種算法。6.1線性系統(tǒng)的描述6.1.1狀態(tài)空間描述法狀態(tài)空間描述法是使用狀態(tài)方程模型來描述控制系統(tǒng),MATLAB中狀態(tài)方程模型的建立使用ss和dss命令。語法:G=ss(a,b,c,d)%由a、b、c、d參數(shù)獲得狀態(tài)方程模型G=dss(a,b,c,d,e)%由a、b、c、d、e參數(shù)獲得狀態(tài)方程模型【例6.1】寫出二階系統(tǒng),當(dāng)=0.707,=1時(shí)的狀態(tài)方程。zeta=0.707
2、;wn=1;A=[01;-wn^2-2*zeta*wn];B=[0;wn^2];C=[10];D=0;G=ss(A,B,C,D)%建立狀態(tài)方程模型a=x1x2x101x2-1-1.414b=u1x10x21c=x1x2y110d=u1y10Continuous-timemodel.6.1.2傳遞函數(shù)描述法MATLAB中使用tf命令來建立傳遞函數(shù)。語法:G=tf(num,den)%由傳遞函數(shù)分子分母得出說明:num為分子向量,num=[b1,b2,…,bm,bm+1];den為分母向量,den=[a1,a2,…,
3、an-1,an]?!纠?.1續(xù)】將二階系統(tǒng)描述為傳遞函數(shù)的形式。num=1;den=[11.4141];G=tf(num,den)%得出傳遞函數(shù)Transferfunction:1-----------------s^2+1.414s+16.1.3零極點(diǎn)描述法MATLAB中使用zpk命令可以來實(shí)現(xiàn)由零極點(diǎn)得到傳遞函數(shù)模型。語法:G=zpk(z,p,k)%由零點(diǎn)、極點(diǎn)和增益獲得說明:z為零點(diǎn)列向量;p為極點(diǎn)列向量;k為增益。【例6.1續(xù)】得出二階系統(tǒng)的零極點(diǎn),并得出傳遞函數(shù)。z=roots(num)z=Empty
4、matrix:0-by-1p=roots(den)p=-0.7070+0.7072i-0.7070-0.7072izpk(z,p,1)Zero/pole/gain:1-------------------(s^2+1.414s+1)程序分析:roots函數(shù)可以得出多項(xiàng)式的根,零極點(diǎn)形式是以實(shí)數(shù)形式表示的。部分分式法是將傳遞函數(shù)表示成部分分式或留數(shù)形式:【例6.1續(xù)】將傳遞函數(shù)轉(zhuǎn)換成部分分式法,得出各系數(shù)。[r,p,k]=residue(num,den)r=0-0.7070i0+0.7070ip=-0.7070+
5、0.7072i-0.7070-0.7072ik=[]6.1.4離散系統(tǒng)的數(shù)學(xué)描述1.狀態(tài)空間描述法狀態(tài)空間描述離散系統(tǒng)也可使用ss和dss命令。語法:G=ss(a,b,c,d,Ts)%由a、b、c、d參數(shù)獲得狀態(tài)方程模型G=dss(a,b,c,d,e,Ts)%由a、b、c、d、e參數(shù)獲得狀態(tài)方程模型說明:Ts為采樣周期,為標(biāo)量,當(dāng)采樣周期未指明可以用-1表示?!纠?.2】用狀態(tài)空間法建立離散系統(tǒng)。a=[-1.5-0.5;10];b=[1;0];c=[00.5];d=0;G=ss(a,b,c,d,0.1)%采樣周
6、期為0.1sa=x1x2x1-1.5-0.5x210b=u1x11x20c=x1x2y100.5d=u1y10Samplingtime:0.1Discrete-timemodel.2.脈沖傳遞函數(shù)描述法脈沖傳遞函數(shù)也可以用tf命令實(shí)現(xiàn)。語法:G=tf(num,den,Ts)%由分子分母得出脈沖傳遞函數(shù)說明:Ts為采樣周期,為標(biāo)量,當(dāng)采樣周期未指明可以用-1表示,自變量用'z'表示。【例6.2續(xù)】創(chuàng)建離散系統(tǒng)脈沖傳遞函數(shù)。num1=[0.50];den=[1-1.50.5];G1=tf(num1,den,-1)T
7、ransferfunction:0.5z-----------------z^2-1.5z+0.5Samplingtime:unspecifiedMATLAB中還可以用filt命令產(chǎn)生脈沖傳遞函數(shù)。語法:G=filt(num,den,Ts)%由分子分母得出脈沖傳遞函數(shù)說明:Ts為采樣周期,當(dāng)采樣周期未指明Ts可以省略,也可以用-1表示,自變量用'z-1'表示?!纠?.2續(xù)】使用filt命令產(chǎn)生脈沖傳遞函數(shù)。num2=[00.5];G2=filt(num2,den)Transferfunction:0.5z^-1
8、-----------------------1-1.5z^-1+0.5z^-2Samplingtime:unspecified程序說明:用filt命令生成的脈沖傳遞函數(shù)的自變量不是z而是z-1,因此分子應(yīng)改為“[00.5]”。3.零極點(diǎn)增益描述法離散系統(tǒng)的零極點(diǎn)增益用zpk命令實(shí)現(xiàn)。語法:G=zpk(z,p,k,Ts)%由零極點(diǎn)得出脈沖傳遞函數(shù)【例6.2續(xù)】使用zpk命令產(chǎn)生零極點(diǎn)增