好文档 - 专业文书写作范文服务资料分享网站

实验一MATLAB系统的传递函数和状态空间表达式的转换

天下 分享 时间: 加入收藏 我要投稿 点赞

. . . .

实验一 MATLAB系统的传递函数和状态空间表达式的转换

一、

实验目的

1、学习多变量系统状态空间表达式的建立方法;

2、通过编程、上机调试,掌握多变量系统状态空间表达式与传递函数之间相互转换的方法;

3、掌握相应的MATLAB函数。 二、

实验原理

设系统的模型如式(1.1)所示:

?x'?Ax?Bu x?R'' u?R’’’ y?RP (1.1) ??y?Cx?D其中A为nXn维系统矩阵、B为nXm维输入矩阵、C为pXn维输出矩阵,D为直接传递函数。系统的传递函数和状态空间表达式之间的关系如式(1.2)所示

G(s)=num(s)/den(s)=C (SI-A)-1 B+D (1.2)

式(1.2)中,num(s)表示传递函数的分子阵,其维数是pXm,den(s)表示传递函数的按s降幂排列的分母。

表示状态空间模型和传递函数的MATLAB函数如下:

函数ss(state space的首字母)给出了状态空间模型,其一般形式是: sys=ss(A,B,C,D)

函数tf(transfer function的首字母)给出了传递函数,其一般形式是:

. . . .

. . . .

G=tf(num,den)

其中num表示传递函数中分子多项式的系数向量(单输入单输出系统),den表示传递函数中分母多项式的系数向量。

函数tf2ss给出了传递函数的一个状态空间实现,其一般形式是: [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阵,然后验证传递函数是相同的。

?2s?1?G(s)= ???s^2?5s?3?程序和运行结果:

s3+4s2+5s+1

. . . .

. . . .

num=[0 0 2 1;0 1 5 3];

den=[1 4 5 1];

[A,B,C,D]=tf2ss(num,den) A = -4 -5 -1

1 0 0 0 1 0 B = 1

0 0

C =0 2 1 1 5 3 D =0

. . . .

. . . .

0

A=[-4 -5 -1;1 0 0;0 1 0]; A=[-4 -5 -1;1 0 0;0 1 0]; B=[1;0;0]; C=[0 2 1;1 5 3]; D=[0;0];

[num1,den1]=ss2tf(A,B,C,D,1)

num1 = 0 0.0000 2.0000 1.0000

0 1.0000 5.0000 3.0000 den1 =1.0000 4.0000 5.0000 1.0000

. . . .

. . . .

2、给定系统G(s)=s^2?4s?5s^3?6s^2?11s?6,求系统的零极点增益模

型和状态空间模型

程序和运行结果: num=[0 1 4 5];

den=[1 6 11 6]; sys=tf(num,den)

Transfer function: s^2 + 4 s + 5 ---------------------- s^3 + 6 s^2 + 11 s + 6

>> sys1=tf2zp(num,den)

sys1 = -2.0000 + 1.0000i -2.0000 - 1.0000i

>> [A,B,C,D]=tf2ss(num,den) A =6 -11 -6

1 0 0 0 1 0 B =1 0

. . . .

实验一MATLAB系统的传递函数和状态空间表达式的转换

....实验一MATLAB系统的传递函数和状态空间表达式的转换一、实验目的1、学习多变量系统状态空间表达式的建立方法;2、通过编程、上机调试,掌握多变量系统状态空间表达式与传递函
推荐度:
点击下载文档文档为doc格式
0p9yg2mdad5gf8x599ez10e609m8f001b9r
领取福利

微信扫码领取福利

微信扫码分享