实验25线性系统状态空间分析和运动解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

广西大学实验报告纸

【实验时间】2014年06月15日

【实验地点】(课外)

【实验目的】

1、掌握线性系统状态空间的标准型、解及其模型转换。

【实验设备与软件】

1、MATLAB数值分析软件

【实验原理】

Matlab提供了非常丰富的线性定常连续系统的状态空间模型求解(即系统运动轨迹的计算)的功能,主要的函数有

①、阶跃响应函数step()可用于计算在单位阶跃输入和零初始状态(条件)下传递函数模型的输出响应,或状态空间模型的状态和输出响应,其主要调用格式为

step(sys,t)

[y,t] = step(sys,t)

[y,t,x] = step(sys,t)

②、脉冲激励下的仿真函数impulse()可用于计算在脉冲刺激输入下传递函数模型的输出响应,或状态空间模型的状态和输出响应,其主要调用格式为

impulse(sys,t)

[y,t] = impulse(sys,t)

[y,t,x] = impulse(sys,t)

③、任意输入激励下的仿真函数lsim()可用于计算在给定的输入信号序列(输入信号函数的采样值)下传递函数模型的输出响应,其主要调用格式为

lsim(sys,u,t,x0)

[y,t,x] = lsim(sys,u,t,x0)

【实验内容、方法、过程与分析】

已知线性系统

1、利用Matlab求零状态下的阶跃响应(包括状态和输出),生成两幅图:第一幅绘制各状态响应曲线并标注;第二幅绘制输出响应曲线。

状态响应曲线:

A=[-21 19 -20;19 -21 20;40 -40 -40];

B=[0;1;2];

C=[1 0 2];

D=[0]; %输入状态空间模型各矩阵,若没有相应值,可赋空矩阵

X0=[0;0;0]; % 输入初始状态

sys=ss(A,B,C,D); %构造传递函数

[y,x,t]=step(sys); % 绘以时间为横坐标的状态响应曲线图

plot(t,x);

grid;

title('状态响应曲线')

输出响应曲线:

A=[-21 19 -20;19 -21 20;40 -40 -40];

B=[0;1;2];

C=[1 0 2];

D=0;

X0=[0;0;0]

[num,den]=ss2tf(A,B,C,D,1);

sys=tf(num,den);

step(sys)

grid

title('输出响应曲线')

2、利用Matlab求零状态下的冲激响应(包括状态和输出),生成两幅图:第一幅绘制各状态响应曲线并标注;第二幅绘制输出响应曲线。

状态响应曲线:

A=[-21 19 -20;19 -21 20;40 -40 -40];

B=[0;1;2];

C=[1 0 2];

D=[]; %输入状态空间模型各矩阵,若没有相应值,可赋空矩阵

x0=[0;0;0]; % 输入初始状态

sys=ss(A,B,C,D); %构造传递函数

[y,x,t]= impulse(sys);

plot(t,x);

grid;

title('状态响应曲线')

输出响应曲线:

A=[-21 19 -20;19 -21 20;40 -40 -40];

B=[0;1;2];

C=[1 0 2];

D=0;

X0=[0;0;0]

[num,den]=ss2tf(A,B,C,D,1);

sys=tf(num,den);

impulse(sys);

grid;

title('输出响应曲线')

3、若控制输入为,且初始状态为,求系统的响应,要求

a.在simulink只能够画出模型求响应,生成两幅图:第一幅绘制各状态响应曲线并标注;第二幅绘制输出响应曲线。

b.编写.m文件求响应,生成两幅图:第一幅绘制各状态响应曲线并标注;第二幅绘制输出响应曲线。

状态响应曲线:

t=[0:0.02:5];

if t>=3

u=1;

else

u=1+exp(-t).*cos(5*t);

end

A=[-21 19 -20;19 -21 20;40 -40 -40];

B=[0;1;2];

C=[1 0 2];

D=[0]; %输入状态空间模型各矩阵,若没有相应值,可赋空矩阵

X0=[0.2;0.2;0.2]; % 输入初始状态

u=(t==0); %就是个条件判断,只有t=0的时候,u才为“1”

sys=ss(A,B,C,D); %构造传递函数

[y,t,x]=lsim(sys,u,t,X0);

plot(t,x);

grid;

title('状态响应曲线')

输出响应曲线:

plot(t,y);

grid;

title('输出响应曲线')

4、以阶跃输入情况下的,分析各模块对响应有什么影响。

5、求系统的传递函数

在MATLAB软件Command Window窗口中输入以下程序A=[-21 19 -20;19 -21 20;40 -40 -40];

B=[0;1;2];

C=[1 0 2];

D=0;

[num,den]=ss2tf(A,B,C,D,1);

相关文档
最新文档