资源描述:
《实验一matlab系统地传递函数和状态空间表达式地转换》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实用标准文案实验一MATLAB系统的传递函数和状态空间表达式的转换一、实验目的1、学习多变量系统状态空间表达式的建立方法;2、通过编程、上机调试,掌握多变量系统状态空间表达式与传递函数之间相互转换的方法;3、掌握相应的MATLAB函数。二、实验原理设系统的模型如式(1.1)所示:xuR’’’yRP(1.1)其中A为nXn维系统矩阵、B为nXm维输入矩阵、C为pXn维输出矩阵,D为直接传递函数。系统的传递函数和状态空间表达式之间的关系如式(1.2)所示G(s)=num(s)/den(s)=C(SI-A)-1B+D(1.2)
2、式(1.2)中,num(s)表示传递函数的分子阵,其维数是pXm,den(s)表示传递函数的按s降幂排列的分母。表示状态空间模型和传递函数的MATLAB函数如下:函数ss(statespace的首字母)给出了状态空间模型,其一般形式是:sys=ss(A,B,C,D)函数tf(transferfunction的首字母)给出了传递函数,其一般形式是:G=tf(num,den)其中num表示传递函数中分子多项式的系数向量(单输入单输出系统),den表示传递函数中分母多项式的系数向量。函数tf2ss给出了传递函数的一个状态空间实
3、现,其一般形式是:[A,B,C,D]=tf2ss(num,den)函数ss2tf给出了状态空间模型所描述系统的传递函数,其一般形式是:[num,den]=ss2tf(A,B,C,D,iu)其中对于多输入系统,必须确定iu的值。例如,若系统有三个输入u1,u2,u3,则iu必须是1、2、或3,其中1表示u1,2表示u2,3表示u3文档实用标准文案。该函数的结果是第iu个输入到所有输出的传递函数。三.实验步骤及结果1、应用MATLAB对下列系统编程,求系统的A、B、C、D阵,然后验证传递函数是相同的。G(s)=s3+4s2+
4、5s+1程序和运行结果:num=[0021;0153];den=[1451];[A,B,C,D]=tf2ss(num,den)A=-4-5-1100010B=100C=021153D=00A=[-4-5-1;100;010];文档实用标准文案A=[-4-5-1;100;010];B=[1;0;0];C=[021;153];D=[0;0];[num1,den1]=ss2tf(A,B,C,D,1)num1=00.00002.00001.000001.00005.00003.0000den1=1.00004.00005.000
5、01.00002、给定系统G(s)=,求系统的零极点增益模型和状态空间模型程序和运行结果:num=[0145];den=[16116];sys=tf(num,den)Transferfunction:s^2+4s+5----------------------s^3+6s^2+11s+6文档实用标准文案>>sys1=tf2zp(num,den)sys1=-2.0000+1.0000i-2.0000-1.0000i>>[A,B,C,D]=tf2ss(num,den)A=6-11-6100010B=100C=145D=0实验
6、2状态空间模型系统仿真及状态方程求解一、实验目的1、熟悉线性定常离散与连续系统的状态空间控制模型的输入方法;2、熟悉系统模型之间的转换功能;文档实用标准文案1、利用MATLAB对线性定常系统进行动态分析。一、实验原理函数step(sys)给出了系统的单位阶跃响应曲线,其中的sys表示贮存在计算机内的状态空间模型,它可以由函数sys=ss(A,B,C,D)得到。函数impulse(sys)给出了系统的单位脉冲响应曲线。函数[y,T,x]=Isim(sys,u,t,x0)给出了一个状态空间模型对任意输入的响应,x0是初始状态
7、。函数c2d将连续系统状态空间描述转化为离散系统状态空间形式,其一般形式为:[G,H]=c2d(A,B,T),其中的T是离散化模型的采样周期。函数d2c将离散系统状态空间描述转化为连续系统状态空间描述,其一般形式为:sysc=d2c(sysd,Method),其中的Method默认值为‘zoh’方法,即带零阶保持器的z变换。函数dstep(G,H,C,D)给出了离散系统的单位阶跃响应曲线。二、实验步骤及结果程序和运行结果:T=0.5s时T=1s时文档实用标准文案T=2s时A=[010;-2-30;-11-3];B=[0;
8、0;1];C=[111];D=1;[G1H1]=c2d(A,B,0.5)G1=0.84520.23870-0.47730.12920-0.33260.05080.2231H1=0文档实用标准文案00.2590>>dstep(G1,H1,C,D,1)>>dstep(G1,H1,C,D,1)>>[G2H2]=c2d(A,