一、实验目的 1. 熟练掌握step( )函数和impulse( )函数的使用方法,研究线性系统在单位阶跃、单位脉冲及单位斜坡函数作用下的响应。 2. 通过响应曲线观测特征参量和
n对二阶系统性能的影响。
3. 熟练掌握系统的稳定性的判断方法。
二、实验内容
1.观察函数step( )和impulse( )的调用格式,假设系统的传递函数模型为
s23s7G(s)4s4s36s24s
1可以用几种方法绘制出系统的阶跃响应曲线?试分别绘制。
2.对典型二阶系统
n2G(s)22s2snn
(1)分别绘出n2(rad/s),分别取0,0.25,0.5,1.0和2.0时的单位阶跃响应曲线,分析参数对系统的影响,并计算=0.25时的时域性能指标(2)绘制出当=0.25,
p,tr,tp,ts,e。
n分别取1,2,4,6时单位阶跃响应曲线,分析参数n对系统的影响。
432(3)系统的特征方程式为2ss3s5s100,试用二种判稳方式判别该系统的稳定性。
(4)单位负反馈系统的开环模型为
G(s)
K(s2)(s4)(s26s25)
试分别用劳斯稳定判据和赫尔维茨稳定判据判断系统的稳定性,并求出使得闭环系统稳定的K值范围。
三、实验结果及分析
1.可以用两种方法绘制系统的阶跃响应曲线。 (1)用函数step( )绘制 MATLAB语言程序:
>> num=[ 0 0 1 3 7];
>> den=[1 4 6 4 1 ];
>>step(num,den);
>> grid;
>>xlabel(\'t/s\');ylabel(\'c(t)\');title(\'step response\');
MATLAB运算结果:
(2)用函数impulse( )绘制 MATLAB语言程序:
>> num=[0 0 0 1 3 7];
>> den=[1 4 6 4 1 0];
>> impulse(num,den);
>> grid;
>> xlabel(\'t/s\');ylabel(\'c(t)\');title(\'step response\'); MATLAB运算结果:
2.(1)n2(rad/s),分别取0,0.25,0.5,1.0和2.0时的单位阶跃响应曲线的绘制:
MATLAB语言程序:
>> num=[0 0 4];
>> den1=[1 0 4];
>> den2=[1 1 4];
>> den3=[1 2 4];
>> den4=[1 4 4];
>> den5=[1 8 4];
>> t=0:0.1:10;
>> step(num,den1,t);
>> grid
>> text(2,1.8,\'Zeta=0\');
hold
Current plot held
>> step(num,den2,t);
>> text (1.5,1.5,\'0.25\');
>> step(num,den3,t);
>> text (1.5,1.2,\'0.5\');
>> step(num,den4,t);
>> text (1.5,0.9,\'1.0\');
>> step(num,den5,t);
>> text (1.5,0.6,\'2.0\');
>> xlabel(\'t\');ylabel(\'c(t)\'); title(\'Step Response \') ;
MATLAB运算结果:
实验结果分析:
从上图可以看出,保持
n2(rad/s)不变,依次取值0,0.25,0.5,1.0和2.0时,
系统逐渐从欠阻尼系统过渡到临界阻尼系统再到过阻尼系统,系统的超调量随的增大而减小,上升时间随的增大而变长,系统的响应速度随的增大而变慢,系统的稳定性随的增大而增强。 相关计算:
n2(rad/s),=0.25时的时域性能指标p,tr,tp,ts,e的计算:
(2)=0.25, n分别取1,2,4,6时单位阶跃响应曲线的绘制:
MATLAB语言程序:
>> num1=[0
0
1];
>> den1=[1
0.5
1];
>> t=0:0.1:10;
>> step(num1,den1,t);
>> grid;
hold on
>> text(2.5,1.5,\'wn=1\');
>> num2=[0
0
4];
>> den2=[1
4];
>> step(num2,den2,t); hold on
>> text(1.5,1.48,\'wn=2\');
>> num3=[0
0
16];
>> den3=[1
16];
>> step(num3,den3,t); hold on
>>text(0.8,1.5,\'wn=4\');
>> num4=[0
0
36];
>> den4=[1
36];
>> step(num4,den4,t); hold on
>> text(0.5,1.4,\'wn=6\');
>> xlabel(\'t\');ylabel(\'c(t)\'); title(\'Step Response \'); MATLAB运算结果:
实验结果分析:
从上图可以看出,保持=0.25不变,
n依次取值1,2,4,6时,系统超调量不变,延迟时间、上升时间、峰值时间、调节时间均减小,系统响应速度变快,稳定性变强。
3.特征方程式为2ss3s5s100的系统的稳定性的判定: (1)直接求根判定稳定性
MATLAB语言程序及运算结果:
>> roots([2,1,3,5,10])
ans=
0.7555 + 1.4444i;
0.75550.9331i;
判定结论:
系统有两个不稳定的根,故该系统不稳定。 (2)用劳斯稳定判据routh()判定稳定性 MATLAB语言程序及运算结果和结论:
>> den=[2,1,3,5,10];
>> [r,info]=routh(den)
r =
2.0000
3.0000
10.0000
432 1.0000
5.0000
0
-7.0000
10.0000
0
6.4286
0
0
10.0000
0
0
Info=
所判定系统有 2 个不稳定根!
>>
4.开环模型为
G(s)K(s2)(s4)(s26s25)
的单位负反馈系统稳定性的判定(劳斯判据判定) (系统特征方程式为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 =
1.0000
69.0000
200.0000
12.0000
198.0000
0
52.5000
200.0000
0
152.2857
0
0
200.0000
0
0
info =
所要判定系统稳 继续取K的值,试探:
( 取K=350)
den=[1,12,69,198,350];
[r,info]=routh(den)
r =
1.0000
69.0000
350.0000
12.0000
198.0000
0
52.5000
350.0000
0
118.0000
0
0
350.0000
0
0
info =
所要判定系统稳定!
(取K=866.3)
den=[1,12,69,198,866.3];
[r,info]=routh(den)
r =
1.0000
69.0000
866.3000
12.0000
198.0000
0
52.5000
866.3000
0
-0.0114
0
0
866.3000
0
0
info =
所判定系统有 2 个不稳定根!
(取K=866.2)
den=[1,12,69,198,866.2];
[r,info]=routh(den)
r =
1.0000
69.0000
866.2000
12.0000 198.0000
0
52.5000 866.2000
0
0.0114
0
0
866.2000
0
0
info =
所要判定系统稳定!
(取K=866.25)
den=[1,12,69,198,866.25];
[r,info]=routh(den)
r =
1.0000
69.0000
866.2500
12.0000 198.0000
0
52.5000 866.2500
0
105.0000
0
0
866.2500
0
0
info =
所要判定系统稳定!
(取K=866.26)
den=[1,12,69,198,866.26];
[r,info]=routh(den)
r =
1.0000
69.0000 866.2600
12.0000 198.0000
0
52.5000 866.2600
0
-0.0023
0
0
866.2600
0
0
info =
所判定系统有 2 个不稳定根! 结论:
由试探可得,在K=866.25系统刚好稳定,则可知时系统稳定的K值范围为0
四、实验心得与体会
本次实验我们初步熟悉并掌握了step( )函数和impulse( )函数的使用方法以及
判断闭环系统稳定的方法。
在实验中,我们根据内容要求,写出调试好的MATLAB语言程序,并调用step( )
函数
s23s7G(s)4s4s36s24s1在取不同的n和不
同和impulse( )函数求出了控制系统的时在单位阶跃和单位脉冲作用下的瞬态响应,然后记录各种输出波形,并根据实
验结果分析了参数变化对系统的影响。
控制系统稳定的充要条件是其特征方程的根均具有负实部。因此,为了判别系统
的稳定性,就要求出系统特征方程的根,并检验它们是否都具有负实部。MATLAB中对多
项式求根的函数为roots()函数。所以我们可以直接求根判定系统的稳定性。
我们也可
以用劳斯稳定判据判定系统的稳定性,劳斯判据的调用格式为:[r, info]=routh(den),该函数的功能是构造系统的劳斯表,其中,den为系统的分母多项式系数向量,r为返回的routh表矩阵,info为返回的routh表的附加信息。在实验中我们通过调用
G(s)这两个函数,判定了系统
K(s2)(s4)(s26s25)的稳定性并求得了使其稳定的K值范围。
整个实验过程的操作和观察使得我们对二阶系统的动态性能及其参数对其的影响、系统的稳定性及其判定有了更深刻的认识,也深深的体会到了Matalab软件的功能的强 大并意识到了掌握其相关应用的必要性。