matlab实验二线性系统时域响应分析.docx
《matlab实验二线性系统时域响应分析.docx》由会员分享,可在线阅读,更多相关《matlab实验二线性系统时域响应分析.docx(12页珍藏版)》请在冰豆网上搜索。
![matlab实验二线性系统时域响应分析.docx](https://file1.bdocx.com/fileroot1/2023-6/9/65366bed-4ebf-4d70-9e8d-de6b8dd5ef62/65366bed-4ebf-4d70-9e8d-de6b8dd5ef621.gif)
matlab实验二线性系统时域响应分析
武汉工程大学实验报告
专业班号
组别01教师
姓名同组者(个人)
实验名称实验二线性系统时域响应分析
实验日期2011-11-24第2次实验
一、实验目的
1.熟练掌握step()函数和impulse()函数的使用方法,研究线性系统在单位阶跃、单位脉冲及单位斜坡函数作用下的响应。
2.通过响应曲线观测特征参量
和
对二阶系统性能的影响。
3.熟练掌握系统的稳定性的判断方法。
二、实验内容
1.观察函数step()和impulse()的调用格式,假设系统的传递函数模型为
可以用几种方法绘制出系统的阶跃响应曲线试分别绘制。
2.对典型二阶系统
(1)分别绘出
,
分别取0,,,和时的单位阶跃响应曲线,分析参数
对系统的影响,并计算
=时的时域性能指标
。
(2)绘制出当
=,
分别取1,2,4,6时单位阶跃响应曲线,分析参数
对系统的影响。
(3)系统的特征方程式为
,试用二种判稳方式判别该系统的稳定性。
(4)单位负反馈系统的开环模型为
试分别用劳斯稳定判据和赫尔维茨稳定判据判断系统的稳定性,并求出使得闭环系统稳定的K值范围。
三、实验结果及分析
1.可以用两种方法绘制系统的阶跃响应曲线。
(1)用函数step()绘制
MATLAB语言程序:
>>num=[00137];
>>den=[14641];
>>step(num,den);
>>grid;
>>xlabel('t/s');ylabel('c(t)');title('stepresponse');
MATLAB运算结果:
(2)用函数impulse()绘制
MATLAB语言程序:
>>num=[000137];
>>den=[146410];
>>impulse(num,den);
>>grid;
>>xlabel('t/s');ylabel('c(t)');title('stepresponse');
MATLAB运算结果:
2.
(1)
,
分别取0,,,和时的单位阶跃响应曲线的绘制:
MATLAB语言程序:
>>num=[004];
>>den1=[104];
>>den2=[114];
>>den3=[124];
>>den4=[144];
>>den5=[184];
>>t=0:
:
10;
>>step(num,den1,t);
>>grid
>>text(2,,'Zeta=0');hold
Currentplotheld
>>step(num,den2,t);
>>text,,'');
>>step(num,den3,t);
>>text,,'');
>>step(num,den4,t);
>>text,,'');
>>step(num,den5,t);
>>text,,'');
>>xlabel('t');ylabel('c(t)');title('StepResponse');
MATLAB运算结果:
实验结果分析:
从上图可以看出,保持
不变,
依次取值0,,,和时,
系统逐渐从欠阻尼系统过渡到临界阻尼系统再到过阻尼系统,系统的超调量随
的增大而减小,上升时间随
的增大而变长,系统的响应速度随
的增大而变慢,系统的稳定性随
的增大而增强。
相关计算:
,
=时的时域性能指标
的计算:
(2)
=,
分别取1,2,4,6时单位阶跃响应曲线的绘制:
MATLAB语言程序:
>>num1=[001];
>>den1=[11];
>>t=0:
:
10;
>>step(num1,den1,t);
>>grid;holdon
>>text,,'wn=1');
>>num2=[004];
>>den2=[114];
>>step(num2,den2,t);holdon
>>text,,'wn=2');
>>num3=[0016];
>>den3=[1216];
>>step(num3,den3,t);holdon
>>text,,'wn=4');
>>num4=[0036];
>>den4=[1336];
>>step(num4,den4,t);holdon
>>text,,'wn=6');
>>xlabel('t');ylabel('c(t)');title('StepResponse');
MATLAB运算结果:
实验结果分析:
从上图可以看出,保持
=不变,
依次取值1,2,4,6时,系统超调量不变,延迟时间、上升时间、峰值时间、调节时间均减小,系统响应速度变快,稳定性变强。
3.特征方程式为
的系统的稳定性的判定:
(1)直接求根判定稳定性
MATLAB语言程序及运算结果:
>>roots([2,1,3,5,10])
ans=
+;
-;
+;
-;
判定结论:
系统有两个不稳定的根,故该系统不稳定。
(2)用劳斯稳定判据routh()判定稳定性
MATLAB语言程序及运算结果和结论:
>>den=[2,1,3,5,10];
>>[r,info]=routh(den)
r=
0
0
00
00
Info=
所判定系统有2个不稳定根!
>>
4.开环模型为
的单位负反馈系统稳定性的判定(劳斯判据判定)
(系统特征方程式为D(s)=(s+2)(s+4)(s2+6s+25)+K=0):
MATLAB语言程序及运算结果和结论:
(取K=200)
den=[1,12,69,198,200];
[r,info]=routh(den)
r=
0
0
00
00
info=
所要判定系统稳
继续取K的值,试探:
(取K=350)
den=[1,12,69,198,350];
[r,info]=routh(den)
r=
0
0
00
00
info=
所要判定系统稳定!
(取K=)
den=[1,12,69,198,];
[r,info]=routh(den)
r=
0
0
00
00
info=
所判定系统有2个不稳定根!
(取K=)
den=[1,12,69,198,];
[r,info]=routh(den)
r=
0
0
00
00
info=
所要判定系统稳定!
(取K=)
den=[1,12,69,198,];
[r,info]=routh(den)
r=
0
0
00
00
info=
所要判定系统稳定!
(取K=)
den=[1,12,69,198,];
[r,info]=routh(den)
r=
0
0
00
00
info=
所判定系统有2个不稳定根!
结论:
由试探可得,在K=系统刚好稳定,则可知时系统稳定的K值范围为0四、实验心得与体会
本次实验我们初步熟悉并掌握了step()函数和impulse()函数的使用方法以及判断闭环系统稳定的方法。
在实验中,我们根据内容要求,写出调试好的MATLAB语言程序,并调用step()函数和impulse()函数求出了控制系统
在取不同的
和不同的
时在单位阶跃和单位脉冲作用下的瞬态响应,然后记录各种输出波形,并根据实验结果分析了参数变化对系统的影响。
控制系统稳定的充要条件是其特征方程的根均具有负实部。
因此,为了判别系统的稳定性,就要求出系统特征方程的根,并检验它们是否都具有负实部。
MATLAB中对多项式求根的函数为roots()函数。
所以我们可以直接求根判定系统的稳定性。
我们也可以用劳斯稳定判据判定系统的稳定性,劳斯判据的调用格式为:
[r,info]=routh(den),该函数的功能是构造系统的劳斯表,其中,den为系统的分母多项式系数向量,r为返回的routh表矩阵,info为返回的routh表的附加信息。
在实验中我们通过调用这两个函数,判定了系统
的稳定性并求得了使其稳定的K值范围。
整个实验过程的操作和观察使得我们对二阶系统的动态性能及其参数对其的影响、系统的稳定性及其判定有了更深刻的认识,也深深的体会到了Matalab软件的功能的强
大并意识到了掌握其相关应用的必要性。
要求:
正文用小四宋体,倍行距,图表题用五号宋体,图题位于图下方,表题位于表上方。