连续系统法分析.docx

上传人:b****5 文档编号:28511974 上传时间:2023-07-18 格式:DOCX 页数:20 大小:267.97KB
下载 相关 举报
连续系统法分析.docx_第1页
第1页 / 共20页
连续系统法分析.docx_第2页
第2页 / 共20页
连续系统法分析.docx_第3页
第3页 / 共20页
连续系统法分析.docx_第4页
第4页 / 共20页
连续系统法分析.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

连续系统法分析.docx

《连续系统法分析.docx》由会员分享,可在线阅读,更多相关《连续系统法分析.docx(20页珍藏版)》请在冰豆网上搜索。

连续系统法分析.docx

连续系统法分析

 

本科学生实验报告

 

学号114090315姓名李开斌

学院物电学院专业、班级11电子

实验课程名称连续系统法分析

教师及职称李宏宁

开课学期2013至2014学年下学期

填报时间2014年4月23日

 

云南师范大学教务处编印

实验序号

07

实验名称

连续系统分析

实验时间

2014年4月23

实验室

同析3栋数字信号处理实验室

一.实验预习

1.实验目的

理解连续时间系统的系统函数在分析连续系统的时域特性、频率特性及稳定性中的重要作用及意义。

掌握利用MATLAB分析连续系统的时域响应、频率响应和零极点的基本方法。

掌握根据系统函数的零极点设计简单的滤波器的方法。

2.实验原理、实验流程或装置示意图

matlab提供了许多可用于分析线性时不变连续系统的函数,主要包含有系统函数、系统时域响应、系统频率响应等分析函数。

连续时间LTI系统的输入x(t)与输出y(t)可用如下的线性常系数微分方程系统函数,系统时域响应,系统频率响应等分析函数。

连续时间LTI系统的输入x(t)与输出y(t)可用如下的线性常系数微分方程来描述:

.

如果已知系统的输入信号的表示式以及系统的初始状态就可以利用解析方法求出系统的响应,但对于高阶微分方程描述的连续系统,解析计算将会变得非常繁琐和困难。

MATLAB提供了微分方程的数值计算函数,可以计算上述n阶微分方程描述的连续系统的响应,包括系统的单位冲激响应,单位阶跃响应,零输入响应,零状态响应和完全响应。

在调用这些函数时,需要利用连续系统对应的系统函数对微分方程进行拉氏变换即可得系统函数:

在MATLAB中可使用向量分别保存分子多项式和分母多项式的系数,这些系数均按s的降幂直至s0排列。

MATLAB提供了许多可用于分析线性时不变连续系统的函数,主要包含有系统函数、系统时域响应、系统频率响应等分析函数。

1.系统的零极点分析

连续LTI系统的系统函数可以表示为部分分式,即p1,p2,……,pn为H(s)的极点(pole)z1,z2,……,zn为H(s)的零点(zero)k为增益)

通过拉氏反变换可求得系统的单位冲激响应h(n)。

设m<=n,且H(s)的极点pi全部为单极点,则:

对应

可以看出,系统函数H(s)的极点pi决定了冲激响应h(t)的基本形式,而零点和极点共同确定了冲激响应h(t)的幅值ki。

在MATLAB中提供了roots函数计算系统的零极点,pzmap函数绘制连续系统的零极点分布图。

连续系统的频率响应:

若连续因果LTI系统函数H(s)的极点全部位于s左半平面(前提条件),则系统的频率响应|H(jw)|可由H(s)求出,即

在MATLAB中freqs函数可以分析连续系统的频率响应,其格式如下:

H=freqs(b,a,w)计算系统在指定频率点向量w上的频率响应H,b=[bm,bm-1,…,b1,b0]和a=[am,am-1,…,a1,a0]分别保存分子多项式和分母多项式的系数。

[H,W]=freqs(b,a)自动选取200个频率点计算频率响应,W为频率点向量。

[H,W]=freqs(b,a,n)计算n个点的频率响应。

freqs(b,a)自动绘制系统频率响应曲线。

impulse(sys)计算并画出连续系统的冲激响应,sys可由函数获得。

其中b和a分别是系统函数的分子多项式和分母多项式的系数矩阵。

b=impulse(sys,t)计算并画出连续系统在向量t定义的时间范围内的冲激响应,向量h保存对时间的冲激响应的输出量。

3.实验设备及材料

一台带matlab软件的计算机。

4.实验方法步骤及注意事项

实验方法步骤:

(1)打开MATLAB软件

(2)根据题目要求编写程序

(3)运行程序

(4)分析实验结果

(5)关闭计算机

注意事项:

(1)对于实验电脑要爱惜,遵守实验的规则。

(2)程序运行前要检查程序是否正确。

⏹在使用matlab编程时,应该养成良好的编写习惯,新建一个flies编写。

⏹一些快捷键的使用,能提高编程效率。

⏹Help能查询到不懂使用的函数使用方法,比如用到的tf、zpk等函数。

如下界面:

二、实验内容

1、已知描述连续系统的微风方程为dy(t)/dt+10y(t)=2x(t),输入x(t)=u(t),初始状态位y(0-)=1,计算该系统的响应,并与理论结果比较,列出系统响应分析的步骤。

%1_1……该系统的单位冲激响应

clc,clear,closeall

a=[1,10];

b=[2];

sys=tf(b,a);

t=0:

0.1:

10;

h=impulse(sys,t);

plot(h);

xlabel('t');

title('h(t)');

%1_2……该系统的零状态响应

clc,clear,closeall

a=[1,10];

b=[2];

sys=tf(b,a);

t=0:

10/300:

10;

x=(t>0);

y=lsim(sys,x,t);

plot(t,y);

(3)选用不同窗函数,利用修正周期图法估计信号的功率谱,有何结论?

%1_3……该系统的零输入响应

clc,clear,closeall

a=[1,10];

b=[2];

[A,B,C,D]=tf2ss(b,a);

sys=ss(A,B,C,D)

t=0:

10/300:

10;

x=zeros(1,length(t));

zi=[0.5];

y=lsim(sys,x,t,zi);

plot(t,y);

2、已知连续系统的系统函数为H(s)=(4s+1)/(s^3+3s^2+2*s),求输入x(t)分别为u(t),sin*u(t),e^(-t)*u(t)时,系统的输出y(t),并与理论值比较。

clc,clear,closeall

b=[4,1]

a=conv([1,1],[1,2])

sys=tf(b,a);

t=0:

10/300:

10;

x=(t>0);

y=lsim(sys,x,t);

plot(t,y);

%2_2……该系统输入x(t)为sin(t)*u(t)时候的零状态响应y(t)

clc,clear,closeall

b=[4,1]

a=conv([1,1],[1,2])

sys=tf(b,a);

t=0:

10/300:

10;

x=sin(t);

y=lsim(sys,x,t);

plot(t,y);

%2_2……该系统输入x(t)为sin(t)*u(t)时候的零状态响应y(t)

clc,clear,closeall

b=[4,1]

a=conv([1,1],[1,2])

sys=tf(b,a);

t=0:

10/300:

10;

x=exp(-t);

y=lsim(sys,x,t);

plot(t,y);

3、研究具有以下零极点连续系统:

(1)1个极点是s=0,增益k=2;

(2)2个共轭极点是s=j7,增益k=2;

(3)2个共轭极点是s=-0.5j12,增益k=2;

(4)零点s=1,极点是s=-3j9,增益k=2;

(5)零点s=6,极点是s=3j20,增益k=2;

试完成下列任务:

a)先构造出连续系统函数H(s),画出系统的零极点图;

b)分析系统是否稳定?

若稳定,作出系统的幅频特性

曲线;

c)作出系统的冲激响应h(t)。

%1个极点s=-0.1,增益为k=1时

clc,clear,closeall

a=[1,-0.1];

k=1;

b=[1]*k;

sys=tf('s');

sys=tf(b,a);

p=roots(a);

z=roots(b);

subplot(1,2,1);

plot(real(p),imag(p),'*');

holdon

plot(real(z),imag(z),'o');

xlabel('t');

title('零极点图');

 

gridon

t=0:

0.01:

3;

h=impulse(sys,t);

subplot(1,2,2);

plot(h);

xlabel('t');

title('冲激响应');

gridon

%1个极点s=0,增益为k=1时

clc,clear,closeall

a=[1,0];

k=1;

b=[1]*k;

sys=tf('s');

sys=tf(b,a);

p=roots(a);

z=roots(b);

subplot(1,2,1);

plot(real(p),imag(p),'*');

holdon

plot(real(z),imag(z),'o');

xlabel('t');

title('零极点图');

gridon

t=0:

0.01:

3;

h=impulse(sys,t);

subplot(1,2,2);

plot(h);

xlabel('t');

title('冲激响应');

gridon

 

h=impulse(sys,t);

subplot(1,2,2);

plot(h);

xlabel('t');

title('冲激响应');

gridon

%1个极点s=±5j,增益为k=1时

clc,clear,closeall

a=conv([15j],[1-5j])

k=1;

b=[1]*k;

sys=tf('s');

sys=tf(b,a);

p=roots(a);

z=roots(b);

subplot(1,2,1);

plot(real(p),imag(p),'*');

holdon

plot(real(z),imag(z),'o');

xlabel('t');

title('零极点图');

gridon

t=0:

0.01:

3;

h=impulse(sys,t);

subplot(1,2,2);

plot(h);

xlabel('t');

title('冲激响应');

gridon

plot(h);

xlabel('t');

title('冲激响应');

gridon

%2个共轭极点s=±-0.1±j5,增益k=1时

clc,clear,closeall

a=conv([1-0.1+5j],[1-0.1-5j])

k=1;

b=[1]*k;

sys=tf('s');

sys=tf(b,a);

p=roots(a);

z=roots(b);

subplot(1,2,1);

plot(real(p),imag(p),'*');

holdon

plot(real(z),imag(z),'o');

xlabel('t');

title('零极点图');

gridon

t=0:

0.01:

3;

h=impulse(sys,t);

subplot(1,2,2);

plot(h);

xlabel('t');

title('冲激响应');

gridon

title('冲激响应');

gridon

%零点s=0.5,极点在s=0.1±j5增益为k=1时

clc,clear,closeall

a=conv([10.1+5j],[10.1-5j])

k=1;

b=[1-0.5]*k;

sys=tf('s');

sys=tf(b,a);

p=roots(a);

z=roots(b);

subplot(1,2,1);

plot(real(p),imag(p),'*');

holdon

plot(real(z),imag(z),'o');

xlabel('t');

title('零极点图');

gridon

t=0:

0.01:

3;

h=impulse(sys,t);

subplot(1,2,2);

plot(h);

xlabel('t');

title('冲激响应');

gridon

与零点s=0.5,极点在s=-0.1±j5增益为k=1时的波形比较:

2.对实验现象、实验结果的分析及其结论

通过该次实验,我们理解了连续时间系统的系统函数在分析连续系统的时域特性、频率特性及稳定性中的重要作用及意义。

并掌握利用MATLAB分析连续系统的时域响应、频率响应和零极点的基本方法。

掌握根据系统函数的零极点设计简单的滤波器的方法。

经验:

学习使用matlab快捷键很重要,能大大提高编程效率。

比如方向键的上键能快速输入上次的内容;ctrl+r键全部注释,ctrl+t键取消全部注释(选中的部分);另外,每次编写之前都写一句:

clc,clear,closeall,清除工作空间及面板,这样不会受上一次的操作影响等,使用matlab的help能查找到不熟悉的函数使用方法。

另外,截图时采用Figure中的Edit->CopyFigure以减少图片所占容量,便于编辑。

还可以通过File->SaveAs…保存不同格式的figure图片,便于其他地方其他格式时使用。

更加熟悉了连续系统分析相关的一些函数,如sys,tf函数等。

教师评语及评分:

 

签名:

年月日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1