中北控制工程实验.docx
《中北控制工程实验.docx》由会员分享,可在线阅读,更多相关《中北控制工程实验.docx(34页珍藏版)》请在冰豆网上搜索。
![中北控制工程实验.docx](https://file1.bdocx.com/fileroot1/2023-7/16/c40bbac1-1b78-4e36-b041-919f9b2cb631/c40bbac1-1b78-4e36-b041-919f9b2cb6311.gif)
中北控制工程实验
中北大学
控制工程编程实验
学号:
时间:
2013.12.16
《控制工程基础》实验任务
实验一系统时域响应分析
1.实验目的
本实验的主要目的是:
通过实验使学生进一步理解系统参数对时域响应的影响,理解系统参数与时域性能指标之间的关系,同时了解系统稳定性的充要条件。
本实验的内容覆盖了教材第3、4、5章的内容。
2.实验内容
完成一阶、二阶系统在典型输入信号作用下的响应,求取二阶系统的性能指标,记录试验结果并对此进行分析。
3.实验要求
要求掌握应用MATLAB软件的相应功能,实现一阶、二阶系统在典型输入信号(包括单位脉冲信号、单位阶跃信号、单位斜坡信号、正弦信号等)作用下的响应;记录实验结果并对结果进行分析,要求用实验结果来分析系统特征参数对系统时间响应的影响。
4.实验地点
工字楼127。
5.实验过程
一、系统的传递函数及其MATLAB表达
(1)一阶系统
传递函数为:
传递函数的MATLAB表达:
num=[k];den=[T,1];G(s)=tf(num,den)
(2)二阶系统
传递函数为:
传递函数的MATLAB表达:
num=[wn^2];den=[1,2*s*wn,wn^2];G(s)=tf(num,den)
(3)任意的高阶系统
传递函数为:
传递函数的MATLAB表达:
num=[
];den=[
];G(s)=tf(num,den)
若传递函数表示为:
则传递函数的MATLAB表达:
z=[
];p=[
];K=[K];G(s)=zpk(z,p,k)
二、各种时间输入信号响应的表达
(1)单位脉冲信号响应:
[y,x]=impulse(sys,t)
(2)单位阶跃信号响应:
[y,x]=step(sys,t)
(3)任意输入信号响应:
[y,x]=lsim(sys,u,t)
其中,y为输出响应,x为状态响应(可选);sys为建立的模型;t为仿真时间区段(可选),u为给定输入信号(列向量)。
三、实验的具体内容及步骤
1、一阶系统(选用不同的时间常数
)在典型输入信号(单位脉冲、单位阶跃、正弦信号)作用下的响应
以课本79页一阶惯性环节为例,
改变时间参数T,观察t=1、3、5、7、9时的输出响应.
单位阶跃:
>>forT=1:
1:
7
t=[0:
0.01:
10];
num=[1];
den=[T1];
G=tf(num,den);
[y1,tt]=impulse(G,t);
result(T,:
)=y1;
plot(tt,y1,'--')
legend('不同时间参数T下的单位脉冲响应')
xlabel('t(sec)'),ylabel('x(t)');gridon;
holdon
end
单位脉冲:
>>forT=1:
1:
7
t=[0:
0.01:
10];
num=[1];
den=[T1];
G=tf(num,den);
[y1,tt]=step(G,t);
plot(tt,y1,'--')
legend('不同时间参数T下的单位阶跃响应')
xlabel('t(sec)'),ylabel('x(t)');
gridon;
holdon
end
正弦信号:
forT=1:
1:
7
t=[0:
0.01:
10];
num=[1];
den=[T1];
G=tf(num,den);
u=sin(t);
[y1,tt]=lsim(G,u,t);
result(T,:
)=y1;
plot(tt,y1,'--')
legend('不同时间参数T下的响应')
xlabel('t(sec)'),ylabel('x(t)');gridon;
holdon
end
通过图形,得出结论:
1)分析T对输出响应的影响。
答:
系统达到稳态所需时间和T值有关,T值越大达到稳态所需时间越长。
2)分析不同时间点处输出的大小
2、二阶系统(选择不同的阻尼比
和无阻尼振荡频率
,阻尼比
要有欠阻、临界阻尼和过阻尼三种情况)在典型输入信号(单位脉冲、单位阶跃)作用下作用下的响应
二阶系统传递函数
令
=1,3,5,7
=0,0.2,0.5,1,1.5
程序:
t=[0:
0.01:
5];
i=1
forwn=1:
2:
7;
num=[wn^2];
znb=0;den=[12*znb*wnwn^2];G1=tf(num,den);
znb=0.2;den=[12*znb*wnwn^2];G2=tf(num,den);
znb=0.5;den=[12*znb*wnwn^2];G3=tf(num,den);
znb=1;den=[12*znb*wnwn^2];G4=tf(num,den);
znb=1.5;den=[12*znb*wnwn^2];G5=tf(num,den);
[y1,T]=impulse(G1,t);
[y1a,T]=step(G1,t);
[y2,T]=impulse(G2,t);
[y2a,T]=step(G2,t);
[y3,T]=impulse(G3,t);
[y3a,T]=step(G3,t);
[y4,T]=impulse(G4,t);
[y4a,T]=step(G4,t);
[y5,T]=impulse(G5,t);
[y5a,T]=step(G5,t);
figure(i)
plot(T,y1,'--',T,y2,'-.',T,y3,'-',T,y4,'*',T,y5,'o')
legend('不同阻尼比下的二阶系统单位脉冲响应')
xlabel('t(sec)'),ylabel('x(t)');gridon;
figure(i+1)
plot(T,y1a,'--',T,y2a,'-.',T,y3a,'-',T,y4a,'*',T,y5a,'o')
legend('不同阻尼比下的二阶系统单位阶跃响应')
gridon;xlabel('t(sec)'),ylabel('x(t)');
i=i+2
end
3、完成欠阻尼二阶系统性能指标的求取
以课本88页3.4节欠阻尼二阶系统的时域指标为例,分析各指标与参数之间的关系
t=0:
0.001:
50;
yss=1;
dta=0.02;
wn=30;
s=0.1:
0.05:
0.95;
num=[wn^2];
fori=1:
18
den=[12*s(i)*wnwn^2];
G=tf(num,den);
y=step(G,t);
r=1;
whiley(r)r=r+1;
end
tr(i)=(r-1)*0.001;
[ymax,p]=max(y);
tp(i)=(p-1)*0.001;
mp(i)=(ymax-yss)/yss;
m=50001;
whiley(m)>1-dta&y(m)<1+dta
m=m-1;
end
ts(i)=(m-1)*0.001;
end
plot(s,tr)
legend('阻尼比与上升时间的关系曲线')
xlabel('阻尼比'),ylabel('上升时间');gridon;
figure
(2)
plot(s,tp)
legend('阻尼比与峰值时间的关系曲线')
xlabel('阻尼比'),ylabel('峰值时间');gridon;
figure(3)
plot(s,mp)
legend('阻尼比与超调量的关系曲线')
xlabel('阻尼比'),ylabel('超调量');gridon;
figure(4)
plot(s,ts)
legend('阻尼比与调整时间的关系曲线')
xlabel('阻尼比'),ylabel('调整时间');gridon;
四、实验分析内容
1、分析时间常数对一阶系统时间响应的影响;
时间常数T越大,一阶系统输出响应达到稳定所需要的时间越长.
2、分析系统稳定性与系统特征值的关系;
T值越大,则wn越大,sigma也越大,系统的响应和相对稳定性好。
3、分析参数对二阶系统的时间响应的性能指标的影响;
上升时间tr:
ξ固定时,wn越大,tr越小;
峰值时间tp:
ξ固定时,wn越大,tp越小;wn固定时,ξ越大,tp越大。
超调量Mp:
ξ越大,Mp越小。
调整时间ts:
当阻尼比ξ一定时wn越大调整时间ts越短。
实验二系统频率特性分析
1.实验目的
本实验针对教材第四章、第五章中频率特性分析和系统稳定性分析的相关内容,通过实验过程及对实验结果的分析,加强对频率特性分析、稳定判据及相对稳定性分析的学习效果。
2.实验内容
应用用Matlab相应功能,实现几种典型环节(要求改变环节的特征参数)及指定系统的奈氏图和伯德图的绘制;用Bode函数求取系统的频域特征量;在Matlab下求取高阶系统的特征根,由此来判断系统的稳定性,并分析系统的相对稳定性。
3.实验要求
(1)要求熟练应用Matlab相应功能,掌握编程实现典型环节以及指定系统的Nyquist图、Bode图的绘制方法;
(2)学习系统频域特征量和特征根的求取方法;
(3)分析系统的相对稳定性;
(4)记录实验结果,并对实验结果进行相应的分析。
4.实验地点
工字楼127。
5.实验过程
一、绘制典型环节的奈氏图和伯德图:
(1)比例环节
num=[01];
den=[01];
G=tf(num,den)
figure
(1)
nyquist(G)
figure
(2)
(2)积分环节
num=[01];
den=[10];
G=tf(num,den)
figure
(1)
nyquist(G)
figure
(2)
bode(G)
(3)微分环节
num=[01];
den=[10];
G=tf(num,den)
figure
(1)
nyquist(G)
figure
(2)
bode(G)
(4)惯性环节
num=[01];
den=[11];
G=tf(num,den)
figure
(1)
nyquist(G)
figure
(2)
bode(G)
(5)振荡环节
num=[01];
den=[10.61];
G=tf(num,den)
figure
(1)
nyquist(G)
figure
(2)
bode(G)
二、绘制给定系统的奈氏图和伯德图
以课本126页例4-4为例
从实验结果中找出与实轴的交点数据并标出。
>>k=1;
num=k;
den=conv([110],[021]);
G=tf(num,den)
%w={0.4,5};%设定分析频段
[re,im]=nyquist(G);%记录曲线上各点的实部与虚部
nyquist(G)
bode(G)
Transferfunction:
1
-----------------
2s^3+3s^2+s
三、求取给定系统的频域性能指标
程序:
>>num=[0200];
den=[18100];
G=tf(num,den)
figure
(1)
nyquist(G)
figure
(2)
bode(G)
[Gm,Pm,Wcg,Wcp]=margin(num,den)
Transferfunction:
200
---------------
s^2+8s+100
Gm=
Inf
Pm=
39.6123
Wcg=
Inf
Wcp=
15.9397
四、给定系统的稳定性分析
实验原理:
线性系统稳定的充要条件是系统的特征根均位于S平面的左半部分。
开环传递函数
1)利用pzmap绘制系统的零极点图
>>num=[3,2,5,4,6];
den=[1,3,4,2,7,2];
pzmap(num,den)
title('Pole-ZeroMap')
2)利用tf2zp求出系统零极点
>>G=tf(num,den)
G1=zpk(G)
Z=tzero(G)%系统零点
P=G1.P{1}%系统极点
Transferfunction:
3s^4+2s^3+5s^2+4s+6
-------------------------------------
s^5+3s^4+4s^3+2s^2+7s+2
Zero/pole/gain:
3(s^2+1.47s+1.255)(s^2-0.8037s+1.593)
---------------------------------------------------------
(s+0.2991)(s^2-0.8351s+1.413)(s^2+3.536s+4.732)
Z=
0.4019+1.1965i
0.4019-1.1965i
-0.7352+0.8455i
-0.7352-0.8455i
P=
-1.7680+1.2673i
-1.7680-1.2673i
0.4176+1.1130i
0.4176-1.1130i
-0.2991
3)利用roots求分母多项式的根来确定系统的极点
>>V=roots(den)
V=
-1.7680+1.2673i
-1.7680-1.2673i
0.4176+1.1130i
0.4176-1.1130i
-0.2991
4)绘制乃氏图判断闭环系统稳定性
>>%w={0.4,5};设定分析频段
[re,im]=nyquist(G);%记录曲线上各点的实部与虚部
nyquist(G)
注:
前三种为直接看闭环系统特征根的分布情况,适用于给定闭环特征方程的情况
最后一种方法为利用开环传递函数,判断对应闭环系统的稳定性,一定要注意区分。
五、求取给定系统的幅值裕度和相位裕度
系统的开环传递函数:
分析K=10,100,40,50,60,80时的稳定裕量。
>>den=conv([15],[110])
K=[1010040506080]
fori=1:
6
num=K(i)
G=tf(num,den)
figure
nyquist(G)
legend(strcat('K=',int2str(K(i))))
figure
bode(G)
legend(strcat('K=',int2str(K(i))))
[GmPmWgWc]=margin(num,den)
result(1,:
)=[20*log10(Gm)PmWgWc]
end
den=
1650
K=
1010040506080
num=
10
Transferfunction:
10
-----------------
s^3+6s^2+5s
Gm=
3
Pm=
25.3898
Wg=
2.2361
Wc=
1.2271
result=
9.542425.38982.23611.2271
num=
100
Transferfunction:
100
-----------------
s^3+6s^2+5s
Warning:
Theclosed-loopsystemisunstable.
>Inwarningat26
Inlti.marginat66
Inmarginat98
Gm=
0.3000
Pm=
-23.6504
Wg=
2.2361
Wc=
3.9073
result=
-10.4576-23.65042.23613.9073
num=
40
Transferfunction:
40
-----------------
s^3+6s^2+5s
Warning:
Theclosed-loopsystemisunstable.
>Inwarningat26
Inlti.marginat66
Inmarginat98
Gm=
0.7500
Pm=
-6.0224
Wg=
2.2361
Wc=
2.5749
result=
-2.4988-6.02242.23612.5749
num=
50
Transferfunction:
50
-----------------
s^3+6s^2+5s
Warning:
Theclosed-loopsystemisunstable.
>Inwarningat26
Inlti.marginat66
Inmarginat98
Gm=
0.6000
Pm=
-10.5320
Wg=
2.2361
Wc=
2.8623
result=
-4.4370-10.53202.23612.8623
num=
60
Transferfunction:
60
-----------------
s^3+6s^2+5s
Warning:
Theclosed-loopsystemisunstable.
>Inwarningat26
Inlti.marginat66
Inmarginat98
Gm=
0.5000
Pm=
-14.1137
Wg=
2.2361
Wc=
3.1142
result=
-6.0206-14.11372.23613.1142
num=
80
Transferfunction:
80
-----------------
s^3+6s^2+5s
Warning:
Theclosed-loopsystemisunstable.
>Inwarningat26
Inlti.marginat66
Inmarginat98
Gm=
0.3750
Pm=
-19.5762
Wg=
2.2361
Wc=
3.5444
result=
-8.5194-19.57622.23613.5444