机械控制理论基础实验
实验者:欧阳渊清 班级:机设091 学号:[1**********]
实验一、控制系统时间响应分析
一、实验类型
验证性实验
二、实验目的
1、 求系统在时间常数τ不同取值时的单位脉冲、单位阶跃响应和任意输入响应,熟悉系统时间响应的定义和图形曲线
2、 求系统的上升时间、峰值时间、最大超调量和调整时间等性能指标,熟悉系统瞬态性能指标的定义。
三、实验仪器与设备(或工具软件)
计算机,MATLAB软件
四、实验内容、实验方法与步骤
已知系统传递函数
G(s)50
0.05s(1)s502
1、求系统在时间常数τ不同取值时的单位脉冲、单位阶跃响应和任意输入响应。 应用impulse函数,可以得到τ=0,τ=0.0125、τ=0.025时系统单位脉冲响应;应用step函数,同样可以得到τ=0,τ=0.0125、τ=0.025时系统单位阶跃响应。
程序举例:
t=[0:0.01:0.8]; %仿真时间区段
%
nG=[50];
tao=0; dG=[0.05 1+50*tao 50]; G1=tf(nG,dG);
tao=0.0125; dG=[0.05 1+50*tao 50]; G2=tf(nG,dG);
tao=0.025; dG=[0.05 1+50*tao 50]; G3=tf(nG,dG); %三种τ值下,系统的传递函数模型 %
[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); %系统响应
%
subplot(121),plot(T,y1,’—‘,T,y2,’-.‘,T,y3,’-‘)
legend(‘tao=0’,’tao=0.0125’,’tao=0.025’)
xlabel(‘t(sec)’),ylabel(‘x(t)’);grid on;
subplot(122),plot(T,y1a,’—‘,T,y2a,’-.‘,T,y3a,’-‘)
legend(‘tao=0’,’tao=0.0125’,’tao=0.025’)
grid on;xlabel(‘t(sec)’),ylabel(‘x(t)’); %产生图形
对于任意输入,例如正弦输入作用下,应用lsim函数可求得τ=0.025时系统的时间响应及误差曲线。
%
t=[0:0.01:1];u=sin(2*pi*t) % 仿真时间区段和输入
%
Tao=0.025;
nG=[50]; dG=[0.05 1+50*tao 50]; G=tf(nG,dG); %系统传递函数模型
y=lsim(G,u,t); %求系统响应
plot(t,u,’—‘,t,y,’-‘,t,u’-y,’-.’,’linewidth’,1)
legend(‘u(t)’,’xo(t)’,’e(t)’)
grid; xlabel(‘t(sec)’),ylabel(‘x(t)’); %产生图形
2、求系统的瞬态性能指标
程序举例:
t=0:0.001:1; %设定仿真时间区段和误差限
yss=1;dta=0.02;
%
tao=0; dG=[0.05 1+50*tao 50]; G1=tf(nG,dG);
tao=0.0125; dG=[0.05 1+50*tao 50]; G2=tf(nG,dG);
tao=0.025; dG=[0.05 1+50*tao 50]; G3=tf(nG,dG); %三种τ值下,系统的传递函数模型 y1=step(G1,t);
y2=step(G2,t);
y3=step(G3,t); %三种τ值下,系统的单位阶跃响应
%
r=1;while y1(r)
tr1=(r-1)*0.001; %τ=0时的上升时间
%
[ymax,tp]=max(y1);tp1=(tp-1)*0.001;%峰值时间
%
mp1=(ymax-yss)/yss;%最大超调量
%
s=1001;while y1(s)>1-dta&y1(s)
ts1=(s-1)*0.001;%调整时间
%
r=1;while y2(r)
tr2=(r-1)*0.001;[ymax,tp]=max(y2);
tp2=(tp-1)*0.001;mp2=(ymax-yss)/yss;
s=1001;while y2(s)>1-dta&y2(s)
ts2=(s-1)*0.001;% τ=0.0125的性能指标
%
r=1;while y3(r)
tr3=(r-1)*0.001;[ymax,tp]=max(y3);
tp3=(tp-1)*0.001;mp3=(ymax-yss)/yss;
s=1001;while y3(s)>1-dta&y3(s)
ts3=(s-1)*0.001;% τ=0.025的性能指标
%
[tr1 tp1 mp1 ts1;tr2 tp2 mp2 ts2;tr3 tp3 mp3 ts3]%显示
五、实验报告要求
1、给出所编写MATLAB程序。
2、打印出相应的系统响应曲线。
3、给出系统在不同τ值的瞬态性能指标。
实验二、控制系统频率特性分析
一、实验类型
验证性实验
二、实验目的
1、利用MATLAB绘制Nyquist图
2、利用MATLAB绘制Bode图
3、利用MATLAB求系统的频域特征量
三、实验仪器与设备(或工具软件)
计算机,MATLAB软件
四、实验内容、实验方法与步骤
已知系统传递函数
G(s)24(0.25s0.5)
(2.5s1)(0.025s1)
1、利用MATLAB绘制Nyquist图
应用nyquist函数。
程序举例:
k=24,numG1=k*[0.25 0.5];
denG1=conv([5 2],[0.05 2]); %系统的传递函数
%
[re,im]=nyquist(numG1,denG1); %求时频特性和虚频特性
%
plot(re,im);grid %生成Nyquist图
2、利用MATLAB绘制Bode图%
应用Bode函数。
程序举例:
k=24,numG1=k*[0.25 0.5];
denG1=conv([5 2],[0.05 2]); %系统的传递函数
%
w=logspace(-2,3,100); %产生介于10(0.01)和10(1000)之间的100个频率点
%
bode(numG1,denG1,w);grid %绘制Bode图 -23
3、利用MATLAB求系统的频域特征量
程序举例:
k=24,numG1=k*[0.25 0.5];
denG1=conv([5 2],[0.05 2]); %系统的传递函数
%
w=logspace(-2,3,100); %产生介于10(0.01)和10(1000)之间的100个频率点
%
[Gm,Pm,w]=bode(numG1,denG2,w); %求幅频特性和相频特性
%
[Mr,k]=max(Gm);
Mr=20*log10(Mr),Wr=w(k)%求谐振峰值和谐振频率
%
M0=20*log10(Gm(1))%求零频值
%
n=1;while 20*log10(Gm(n))>=-3;n=n+1;end
Wb=w(n)%求截止频率 -23
五、实验报告要求
1、给出所编写MATLAB程序。
2、打印出相应的Niquist和Bode图。
3、给出系统系统的频域特征量。
实验三、控制系统的稳定性分析
一、实验类型
验证性实验
二、实验目的
1、利用MATLAB求系统的特征根。
2、利用MATLAB分析系统的稳定性。
三、实验仪器与设备(或工具软件)
计算机,MATLAB软件
四、实验内容、实验方法与步骤
1、利用MATLAB求系统的特征根。
根据已知的系统特征方程,应用roots函数可以直接求出系统所有的特征根,从而判定系统是否稳定。
2、利用MATLAB分析系统的稳定性。
MATLAB提供的margin函数,可以求出系统的幅值裕度、幅值穿越频率和相位穿越频率,因而可以用于判定系统的相对稳定性。
程序举例
den=conv([1 5],[1 1 0]);%系统的传递函数
%
K=10;num1=[K];
[Gm1 Pm1 Wg1 Wc1]=margin(num1,den);% K=10时系统相对稳定性指标
%
K=100;num2=[K];
[mag,phase,w]=bode(num2,den)
[Gm2 Pm2 Wg2 Wc2]=margin(mag,phase,w);% K=100时系统相对稳定性指标
%
[20*log10(Gm1) Pm1 Wg1 Wc1;
20*log10(Gm2) Pm2 Wg2 Wc2]%幅值裕度转化为分贝值并显示结果
五、实验报告要求
1、给出所编写MATLAB程序几及计算结果。
1、求系统在时间常数τ不同取值时的单位脉冲、单位阶跃响应和任意输入
响应。
2、求系统的瞬态性能指标
ans =
0.0640 0.1050 0.3509 0.3530
0.0780 0.1160 0.1523 0.2500
0.1070 0.1410 0.0415 0.1880
1、利用MATLAB绘制Nyquist图
2、利用MATLAB绘制Bode图
%
3、利用MATLAB求系统的频域特征量
Mr =9.2900 Wr =0.1000 M0 =9.2900 Wb =3.1257
2、利用MATLAB分析系统的稳定性。
mag =1.0e+003 * 1.9999 0.9998 0.7896 0.6236 0.4924 0.3888 0.3069 0.1990 0.1908 0.1502 0.1180 0.0924 0.0721 0.0558 0.0427 0.0322 0.0237 0.0171 0.0139 0.0119 0.0080 0.0053 0.0033 0.0020 0.0012 0.0007 0.0004 0.0002 0.0001 0.0001 0.0001 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
phase =-90.6875 -91.3749 -91.7405 -92.2032 -92.7887 -93.5294 -94.4662 -95.6500 -96.8564 -97.1446 -99.0285 -101.3969 -104.3625 -108.0526 -112.6006 -118.1273
-124.7103 -132.3454 -140.9180 -146.3099 -150.2107 -159.9607 -169.9395 -180.0000 -190.0605 -200.0393 -209.7893 -219.0820 -227.6546 -235.2897 -237.7244 -241.8727 -247.3994 -251.9474 -255.6375 -258.6031 -260.9715 -262.8554 -264.3500 -265.5338 -266.4706 -266.5647
w =0.0100 0.0200 0.0253 0.0321 0.0406 0.0514 0.0650 0.0823 0.1000 0.1042 0.1320 0.1670 0.2115 0.2677 0.3389 0.4291 0.5432 0.6877 0.8706 1.0000
1.1021 1.3952 1.7663 2.2361 2.8308 3.5837 4.5368 5.7435 7.2711 9.2050 10.0000 11.6532 14.7525 18.6763 23.6435 29.9320 37.8929 47.9712 60.7300 76.8823 97.3305 100.0000
ans =
9.5424 25.3898 2.2361 1.2271
-10.4576 -23.5463 2.2361 3.9010
机械控制理论基础实验
实验者:欧阳渊清 班级:机设091 学号:[1**********]
实验一、控制系统时间响应分析
一、实验类型
验证性实验
二、实验目的
1、 求系统在时间常数τ不同取值时的单位脉冲、单位阶跃响应和任意输入响应,熟悉系统时间响应的定义和图形曲线
2、 求系统的上升时间、峰值时间、最大超调量和调整时间等性能指标,熟悉系统瞬态性能指标的定义。
三、实验仪器与设备(或工具软件)
计算机,MATLAB软件
四、实验内容、实验方法与步骤
已知系统传递函数
G(s)50
0.05s(1)s502
1、求系统在时间常数τ不同取值时的单位脉冲、单位阶跃响应和任意输入响应。 应用impulse函数,可以得到τ=0,τ=0.0125、τ=0.025时系统单位脉冲响应;应用step函数,同样可以得到τ=0,τ=0.0125、τ=0.025时系统单位阶跃响应。
程序举例:
t=[0:0.01:0.8]; %仿真时间区段
%
nG=[50];
tao=0; dG=[0.05 1+50*tao 50]; G1=tf(nG,dG);
tao=0.0125; dG=[0.05 1+50*tao 50]; G2=tf(nG,dG);
tao=0.025; dG=[0.05 1+50*tao 50]; G3=tf(nG,dG); %三种τ值下,系统的传递函数模型 %
[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); %系统响应
%
subplot(121),plot(T,y1,’—‘,T,y2,’-.‘,T,y3,’-‘)
legend(‘tao=0’,’tao=0.0125’,’tao=0.025’)
xlabel(‘t(sec)’),ylabel(‘x(t)’);grid on;
subplot(122),plot(T,y1a,’—‘,T,y2a,’-.‘,T,y3a,’-‘)
legend(‘tao=0’,’tao=0.0125’,’tao=0.025’)
grid on;xlabel(‘t(sec)’),ylabel(‘x(t)’); %产生图形
对于任意输入,例如正弦输入作用下,应用lsim函数可求得τ=0.025时系统的时间响应及误差曲线。
%
t=[0:0.01:1];u=sin(2*pi*t) % 仿真时间区段和输入
%
Tao=0.025;
nG=[50]; dG=[0.05 1+50*tao 50]; G=tf(nG,dG); %系统传递函数模型
y=lsim(G,u,t); %求系统响应
plot(t,u,’—‘,t,y,’-‘,t,u’-y,’-.’,’linewidth’,1)
legend(‘u(t)’,’xo(t)’,’e(t)’)
grid; xlabel(‘t(sec)’),ylabel(‘x(t)’); %产生图形
2、求系统的瞬态性能指标
程序举例:
t=0:0.001:1; %设定仿真时间区段和误差限
yss=1;dta=0.02;
%
tao=0; dG=[0.05 1+50*tao 50]; G1=tf(nG,dG);
tao=0.0125; dG=[0.05 1+50*tao 50]; G2=tf(nG,dG);
tao=0.025; dG=[0.05 1+50*tao 50]; G3=tf(nG,dG); %三种τ值下,系统的传递函数模型 y1=step(G1,t);
y2=step(G2,t);
y3=step(G3,t); %三种τ值下,系统的单位阶跃响应
%
r=1;while y1(r)
tr1=(r-1)*0.001; %τ=0时的上升时间
%
[ymax,tp]=max(y1);tp1=(tp-1)*0.001;%峰值时间
%
mp1=(ymax-yss)/yss;%最大超调量
%
s=1001;while y1(s)>1-dta&y1(s)
ts1=(s-1)*0.001;%调整时间
%
r=1;while y2(r)
tr2=(r-1)*0.001;[ymax,tp]=max(y2);
tp2=(tp-1)*0.001;mp2=(ymax-yss)/yss;
s=1001;while y2(s)>1-dta&y2(s)
ts2=(s-1)*0.001;% τ=0.0125的性能指标
%
r=1;while y3(r)
tr3=(r-1)*0.001;[ymax,tp]=max(y3);
tp3=(tp-1)*0.001;mp3=(ymax-yss)/yss;
s=1001;while y3(s)>1-dta&y3(s)
ts3=(s-1)*0.001;% τ=0.025的性能指标
%
[tr1 tp1 mp1 ts1;tr2 tp2 mp2 ts2;tr3 tp3 mp3 ts3]%显示
五、实验报告要求
1、给出所编写MATLAB程序。
2、打印出相应的系统响应曲线。
3、给出系统在不同τ值的瞬态性能指标。
实验二、控制系统频率特性分析
一、实验类型
验证性实验
二、实验目的
1、利用MATLAB绘制Nyquist图
2、利用MATLAB绘制Bode图
3、利用MATLAB求系统的频域特征量
三、实验仪器与设备(或工具软件)
计算机,MATLAB软件
四、实验内容、实验方法与步骤
已知系统传递函数
G(s)24(0.25s0.5)
(2.5s1)(0.025s1)
1、利用MATLAB绘制Nyquist图
应用nyquist函数。
程序举例:
k=24,numG1=k*[0.25 0.5];
denG1=conv([5 2],[0.05 2]); %系统的传递函数
%
[re,im]=nyquist(numG1,denG1); %求时频特性和虚频特性
%
plot(re,im);grid %生成Nyquist图
2、利用MATLAB绘制Bode图%
应用Bode函数。
程序举例:
k=24,numG1=k*[0.25 0.5];
denG1=conv([5 2],[0.05 2]); %系统的传递函数
%
w=logspace(-2,3,100); %产生介于10(0.01)和10(1000)之间的100个频率点
%
bode(numG1,denG1,w);grid %绘制Bode图 -23
3、利用MATLAB求系统的频域特征量
程序举例:
k=24,numG1=k*[0.25 0.5];
denG1=conv([5 2],[0.05 2]); %系统的传递函数
%
w=logspace(-2,3,100); %产生介于10(0.01)和10(1000)之间的100个频率点
%
[Gm,Pm,w]=bode(numG1,denG2,w); %求幅频特性和相频特性
%
[Mr,k]=max(Gm);
Mr=20*log10(Mr),Wr=w(k)%求谐振峰值和谐振频率
%
M0=20*log10(Gm(1))%求零频值
%
n=1;while 20*log10(Gm(n))>=-3;n=n+1;end
Wb=w(n)%求截止频率 -23
五、实验报告要求
1、给出所编写MATLAB程序。
2、打印出相应的Niquist和Bode图。
3、给出系统系统的频域特征量。
实验三、控制系统的稳定性分析
一、实验类型
验证性实验
二、实验目的
1、利用MATLAB求系统的特征根。
2、利用MATLAB分析系统的稳定性。
三、实验仪器与设备(或工具软件)
计算机,MATLAB软件
四、实验内容、实验方法与步骤
1、利用MATLAB求系统的特征根。
根据已知的系统特征方程,应用roots函数可以直接求出系统所有的特征根,从而判定系统是否稳定。
2、利用MATLAB分析系统的稳定性。
MATLAB提供的margin函数,可以求出系统的幅值裕度、幅值穿越频率和相位穿越频率,因而可以用于判定系统的相对稳定性。
程序举例
den=conv([1 5],[1 1 0]);%系统的传递函数
%
K=10;num1=[K];
[Gm1 Pm1 Wg1 Wc1]=margin(num1,den);% K=10时系统相对稳定性指标
%
K=100;num2=[K];
[mag,phase,w]=bode(num2,den)
[Gm2 Pm2 Wg2 Wc2]=margin(mag,phase,w);% K=100时系统相对稳定性指标
%
[20*log10(Gm1) Pm1 Wg1 Wc1;
20*log10(Gm2) Pm2 Wg2 Wc2]%幅值裕度转化为分贝值并显示结果
五、实验报告要求
1、给出所编写MATLAB程序几及计算结果。
1、求系统在时间常数τ不同取值时的单位脉冲、单位阶跃响应和任意输入
响应。
2、求系统的瞬态性能指标
ans =
0.0640 0.1050 0.3509 0.3530
0.0780 0.1160 0.1523 0.2500
0.1070 0.1410 0.0415 0.1880
1、利用MATLAB绘制Nyquist图
2、利用MATLAB绘制Bode图
%
3、利用MATLAB求系统的频域特征量
Mr =9.2900 Wr =0.1000 M0 =9.2900 Wb =3.1257
2、利用MATLAB分析系统的稳定性。
mag =1.0e+003 * 1.9999 0.9998 0.7896 0.6236 0.4924 0.3888 0.3069 0.1990 0.1908 0.1502 0.1180 0.0924 0.0721 0.0558 0.0427 0.0322 0.0237 0.0171 0.0139 0.0119 0.0080 0.0053 0.0033 0.0020 0.0012 0.0007 0.0004 0.0002 0.0001 0.0001 0.0001 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
phase =-90.6875 -91.3749 -91.7405 -92.2032 -92.7887 -93.5294 -94.4662 -95.6500 -96.8564 -97.1446 -99.0285 -101.3969 -104.3625 -108.0526 -112.6006 -118.1273
-124.7103 -132.3454 -140.9180 -146.3099 -150.2107 -159.9607 -169.9395 -180.0000 -190.0605 -200.0393 -209.7893 -219.0820 -227.6546 -235.2897 -237.7244 -241.8727 -247.3994 -251.9474 -255.6375 -258.6031 -260.9715 -262.8554 -264.3500 -265.5338 -266.4706 -266.5647
w =0.0100 0.0200 0.0253 0.0321 0.0406 0.0514 0.0650 0.0823 0.1000 0.1042 0.1320 0.1670 0.2115 0.2677 0.3389 0.4291 0.5432 0.6877 0.8706 1.0000
1.1021 1.3952 1.7663 2.2361 2.8308 3.5837 4.5368 5.7435 7.2711 9.2050 10.0000 11.6532 14.7525 18.6763 23.6435 29.9320 37.8929 47.9712 60.7300 76.8823 97.3305 100.0000
ans =
9.5424 25.3898 2.2361 1.2271
-10.4576 -23.5463 2.2361 3.9010