机械工程控制基础实验.docx
- 文档编号:23061783
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:19
- 大小:365.35KB
机械工程控制基础实验.docx
《机械工程控制基础实验.docx》由会员分享,可在线阅读,更多相关《机械工程控制基础实验.docx(19页珍藏版)》请在冰豆网上搜索。
机械工程控制基础实验
机械工程控制基础
实验报告
机械设计制造及其自动化
072095班严日明
学号:
20091001933
目录
一.课后MATLAB实验3
第三章利用MATLAB分析系统的时间响应3
第四章利用MATLAB分析频率特性6
第五章利用MATLAB分析系统的稳定性8
第六章利用MATLAB设计系统校正9
二.第六章题6—8的解答11
三.关于MATLAB中Simulink模块的学习与示例14
一.课后MATLAB实验
第三章利用MATLAB分析系统的时间响应
1.利用MATLAB求系统时间响应
一系统传递函数为
。
求该系统在时间函数τ不同取值时的单位脉冲响应、单位阶跃响应和任意输入响应。
令τ=0,τ=0.125以及τ=0.025,应用MATLAB中impulse函数,可以得到系统单位脉冲响应,如图1—1;应用step函数,可以得到单位阶跃响应,如图1—1。
图1—1系统的单位脉冲响应和单位阶跃响应曲线
其MATLAB程序如下:
t=[0:
0.01:
0.8];%仿真时间区段
nG=[50];
tao=0;dG=[0.051+50*tao50];G1=tf(nG,dG);
tao=0.0125;dG=[0.051+50*tao50];G2=tf(nG,dG);%三种时间函数下的系统模型
tao=0.025;dG=[0.051+50*tao50];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(2,1,1),plot(T,y1,’—‘,T,y2,’-.’,T,y3,’-‘);%生成图形,进行对比
legend(‘tao=0’,’tao=0.0125’,’tao=0.025’);
xlabel(‘t(sec)’),ylabel(‘x(t)’);
title(‘系统单位脉冲响应曲线’);
gridon;
subplot(2,1,2),plot(T,y1a,’—‘,T,y2a,’-.’,T,y3a,’-‘)
legend(‘tao=0’,’tao=0.0125’,’tao=0.025’);
xlabel(‘t(sec)’),ylabel(‘x(t)’);
title(‘系统单位阶跃响应曲线’);
gridon;
对于任意输入,例如正弦输入作用下,应用lism函数可求得τ=0.025时系统的事件响应及误差曲线,如图1—2所示。
图1—2系统在正弦输入下的时间响应及误差曲线
其MATLAB程序如下:
clc;
t=[0:
0.01:
1];%仿真时间区段
u=sin(2*pi*t);%输入正弦函数
tao=0.025;
%
nG=[50];
dG=[0.051+50*tao50];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)’);
xlabel(‘t(sec)’),ylabel(‘x(t)’);
title(‘系统在正弦输入下的时间响应及误差曲线’);
gridon;
2.利用MATLAB求系统的瞬态性能指标
以上述系统为例,利用MATLAB分别计算在τ=0,τ=0.125以及τ=0.025时系统的上升时间、峰值时间、最大超调量和调整时间等性能指标。
所得结果如表1—1。
从表中可以看出,系统引入速度负反馈以后,系统的调整时间和最大超调量都得到减小。
表1—1系统在不同τ值的瞬态性能指标
τ
上升时间/s
峰值时间/s
最大超调量/%
调整时间/s
0
0.0640
1.050
35.09
0.3530
0.125
0.0780
0.1160
15.23
0.2500
0.025
0.1070
0.1410
4.15
0.1880
其MATLAB程序如下:
clc;
t=[0:
0.001:
1];%设定仿真时间区段和误差限
yss=1;dta=0.02;
nG=[50];
tao=0;dG=[0.051+50*tao50];G1=tf(nG,dG);
tao=0.0125;dG=[0.051+50*tao50];G2=tf(nG,dG);%计算三种状态下的系统的单位时间响应
tao=0.025;dG=[0.051+50*tao50];G3=tf(nG,dG);
y1=step(G1,t);
y2=step(G2,t);
y3=step(G3,t);
%
r=1;whiley1® tr1=(r-1)*0.001;[ymax,tp]=max(y1); tp1=(tp-1)*0.01;mp1=(ymax-yss)/yss; s=1001;whiley1(s)>1-dta&y1(s)<1+dta;s=s-1;end ts1=(s-1)*0.001; % r=1;whiley2® tr2=(r-1)*0.001;[ymax,tp]=max(y2); tp2=(tp-1)*0.001;mp2=(ymax-yss)/yss; s=1001;whiley2(s)>1-dta&y2(s)<1+dta;s=s-1;end ts2=(s-1)*0.001; r=1;whiley3® tr3=(r-1)*0.001;[ymax,tp]=max(y3); tp3=(tp-1)*0.001;mp3=(ymax-yss)/yss; s=1001;whiley3(s)>1-dta&y3(s)<1+dta;s=s-1;end ts3=(s-1)*0.001; % x=[tr1tp1mp1ts1;tr2tp2mp2ts2;tr3tp3mp3ts3];%将结果储存在表格x中 第四章利用MATLAB分析频率特性 1.利用MATLAB绘制Nyquist图 MATLAB绘制Nyquist图的思路: 在MATLAB中,可以自动生成系统的Nyquist图,但生成的图形可能会产生异常或丢失重要的信息。 因此,通常采用带输出函数参数的nyquist函数得到实频特性和虚频特性。 然后调用绘图函数绘制Nyquist图。 其实频特性和虚频特性还可以在数组中查看。 利用nyquist函数绘制传递函数为 的系统的Nyquist图。 如图1—3所示。 图1—3系统的Nyquist图 其MATLAB程序如下: clc; k=24; numG1=k*[0.250.5]; denG1=conv([52],[0.052]);%求系统的传递函数 % [re,im]=nyquist(numG1,denG1);%求系统的实频特性和虚频特性,并储存在数组中 % plot(re,im);grid;%根据数组中的数据生成Nyquist图 xlabel('Re'),ylabel('Im'); title('系统的Nyquist图') 2.利用MATLAB绘制Bode图 MATLAB绘制Nyquist图的思路: 在MATLAB中,可以用不带输出参数的bode函数自动生成系统的Bode图。 而用带输出参数的bode函数,可以得到系统的幅频特性和相频特性。 依然绘制上例所示系统的Bode图。 如图1—4所示。 图1—4系统的Bode图 其MATLAB程序如下: clc; k=24; numG1=k*[0.250.5]; denG1=conv([52],[0.052]);%求系统的传递函数 % w=logspace(-2,3,200);%产生介于0.01—1000之间的100个频率点 % bode(numG1,denG1,w);%绘制bode图 title('系统的Nyquist图'); grid; 3.利用MATLAB求系统的频域特征量 应用带输出参数的nyquist函数和bode函数,可以分别得到系统的实频特性、虚频特性、幅频特性和相频特性,从而得到系统的频域特征量。 例如,对于传递函数为 的系统,应用bode函数求得不同频率下系统的幅频特性,从而根据定义计算出系统的频域特征量。 如表1—2所示。 表1—2系统的频域特征量 零频值/dB 截止频率/(rad/s) 峰值频率/(rad/s) 谐振峰值/dB 6.021191 20.09233 7.924829 8.694242 其MATLAB程序如下: clc; numG1=200;denG1=[18100];%求系统的传递函数 w=logspace(-1,3,100); % [Gm,Pm,w]=bode(numG1,denG1,w);%利用bode函数求系统的幅频特性和相频特性 [Mr,k]=max(Gm); Mr=20*log10(Mr);%求谐振峰值和谐振频率 Wr=w(k); M0=20*log10(Gm (1));%求零频值 n=1; while20*log10(Gm(n))>=-3;n=n+1;end Wb=w(n);%求截止频率 x=[M0WbWrMr];%将所求的值放入数组x中 第五章利用MATLAB分析系统的稳定性 1.利用MATLAB分析系统的相对稳定性 对开环传递函数为 的系统,应用margin函数求得其幅值裕度、相位裕度、幅值穿越频率和相位穿越频率,结果如表1—3所示。 由表可知,当K由10增加到100时,系统由稳定变为不稳定。 K 幅值裕度/dB 相位裕度/(°) 相位穿越频率/(rad/s) 幅值穿越频率/(rad/s) 10 9.542425 25.38983 2.236068 1.227064 100 -10.4576 -23.5463 2.236068 3.900957 其MATLAB程序如下: clc; den=conv([15],[110]); K=10;num1=[K];%求系统的传递函数 [Gm1Pm1Wg1Wc1]=margin(num1,den);%k=10时,系统的相对稳定性指标 % K=100;num2=[K]; [mag,phase,w]=bode(num2,den); [Gm2Pm2Wg2Wc2]=margin(mag,phase,w);%k=100时,系统的相对稳定性指标 x=[20*log10(Gm1)Pm1Wg1Wc1; 20*log10(Gm2)Pm2Wg2Wc2];%将幅值裕度转化为分贝,并将计算结果输入数组x 第六章利用MATLAB设计系统校正 对传递函数为 的单位反馈系统,设计系统校正,以获得满意的系统性能。 在利用MATLAB设计时,使用了两个程序,分别为了得到未校正的系统的Bode图(如图1—5)、得到校正环节的参数和校正后系统的Bode图(如图1—6)。 图1—6未校正系统的Bode图 其MATLAB程序如下: clc; k=20;%求得的系统的增益 numg=[1];deng=[0.510]; [num,den]=series(k,1,numg,deng);%未校正的原系统的开环传递函数 % w=logspace(-1,2,200); [mag,phase,w]=bode(tf(num,den),w); [Gm,Pm,Wcg,Wcp]=margin(mag,phase,w);%计算校正前的相位裕度 % Phi=(50-Pm+5)*pi/180;%计算所需的相位超前角 % alpha=(1-sin(Phi))/(1+sin(Phi));%计算系数α % M=10*log10(alpha)*ones(length(w),1);%为确定w(m),绘制20lgα线及幅频图 semilogx(w,20*log10(mag(: )),w,M); text(1.1,-3,'直线10lgα'); text(9,-3,'交点处w(m)=9(s-1)'); xlabel('w/s-1') ylabel('20lg|G|/dB') title('未校正系统的Bode图(幅频特性图)') grid; 图1—7超前校正后系统的Bode图 其MTALAB程序如下: k=20;%增益补偿后,总增益不变 numg=[1]; deng=[0.510];%原系统增益为1时的开环传递函数 numgc=[0.231]; dengc=[0.0551];%超前校正环节的传递函数 % [nums,dens]=series(numgc,dengc,numg,deng); [num,den]=series(k,1,nums,dens);%校正后系统的开环传递函数 % w=logspace(-1,2,200); [mag,phase,w]=bode(tf(num,den),w); [Gm,Pm,Wcg,Wcp]=margin(mag,phase,w); bode(tf(num,den),w);%绘制Bode图,计算校正后的相位裕度 grid; title(['相位裕度=',num2str(Pm)]); 二.第六章题6—8的解答 某一伺服机构的开环传递函数为 , (1)画出Bode图,并确定该系统的增益裕度和相位裕度以及速度误差系数。 (2)设计串联—滞后校正装置,使其得到增益裕度至少为15dB和相位裕度至少为31.26°的特性。 解: (1)利用MATLAB画出校正前的Bode图,如图2—1所示。 图2—1未校正系统的Bode图 其MATLAB程序如下: clc; k=7;%求得的系统的增益 numg=[1]; deng=[0.0750.6510]; [num,den]=series(k,1,numg,deng);%未校正的原系统的开环传递函数 % w=logspace(-1,2,200); bode(num,den,w); title('未校正系统的Bode图') grid; % [mag,phase,w]=bode(tf(num,den),w); [Gm,Pm,Wcg,Wcp]=margin(mag,phase,w);%计算校正前的相位裕度、增益裕度 x=[20*log10(Gm)PmWcgWcp];%将结果处理,并储存到数组x中 同时,可知该系统的增益裕度为1.8559dB,相位裕度为5.2553°,显然系统是不稳定的。 下面计算系统的速度误差系数: 该系统的稳态误差 故该系统的速度误差系数: (2)设滞后校正环节的传递函数为 现在给定的相位裕度为30+0.02×13+2×5=31.26°。 由图2—1可知,对应于相位裕度为31.26°加上补偿的5°即36.26°设计,此时∠G为-143.74°的频率约为1.917(s-1)。 而相位滞后环节的零点转角频率 应远低于已校正系统的剪切频率ωc,在此选择 在图2—1中,要使ω=1.917(s-1)成为已校正的系统的剪切频率,就需要在该点将G(jω)的对数幅频特性移动-(8.066+15)=-23.066dB。 故在剪切频率上,相位滞后环节的对数幅频特性分贝值应为 可得 故 所以,该相位滞后校正环节的频率特性为 故已校正的系统开环传递函数为 此时系统的Bode图如图2—2。 图2—2校正后系统的Bode图 其中,增益裕度为21.129dB,相位裕度为38.72°。 系统的稳态性能指标和频域性能指标都达到了设计要求,系统稳定。 校正后的系统Bode图的MATLAB程序: clc; k=7;%求得的系统的增益 numg=[2.921]; deng=[2.3332520.296531.7610]; [num,den]=series(k,1,numg,deng);%未校正的原系统的开环传递函数 % w=logspace(-1,2,200); bode(num,den,w); title('校正后系统的Bode图') grid; % [mag,phase,w]=bode(tf(num,den),w); [Gm,Pm,Wcg,Wcp]=margin(mag,phase,w);%计算校正前的相位裕度、增益裕度 x=[20*log10(Gm)PmWcgWcp];%将结果处理,并储存到数组x中 % 三.关于MATLAB中Simulink模块的学习与示例 设一系统的方框图为 利用Simulink仿真作 =0、 =0.0125、 =0.025的单位阶跃响应曲线。 其SimulinkModel 如下: 运行结果如下:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机械工程 控制 基础 实验