机械工程控制基础大作业1.docx
《机械工程控制基础大作业1.docx》由会员分享,可在线阅读,更多相关《机械工程控制基础大作业1.docx(11页珍藏版)》请在冰豆网上搜索。
机械工程控制基础大作业1
悬架是汽车的车架(或承载式车身)与车桥(或车轮)之间的一切传力连接装置的总称,其作用是传递作用在车轮和车架之间的力和力扭,并且缓冲由不平路面传给车架或车身的冲击力,并减少由此引起的震动,以保证汽车能平顺地行驶。
1.悬架系统的数学模型
(1)
从研究车辆行驶平顺性的目的出发,建立图1所示的数学模型。
在此主要考虑对行驶平顺性影响最大的垂直震动。
建立方程
传递函数
悬架系统传递函数框图
(2)
2.利用Matlab对悬架系统进行分析
2.1利用Matlab分析时间响应
(1)当Kb分别为5、10、20时,系统在单位阶跃输入作用下的响应的程序和图像
t=[0:
0.01:
10];
nG=[0.5110];dG=[4520];
G1=tf(nG,dG);
nG=[1220];dG=[5940];
G2=tf(nG,dG);
nG=[2440];dG=[61780];
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('kb=5','kb=10','kb=20')
xlabel('t(sec)'),ylabel('x(t)');gridon;
subplot(122),plot(T,y1a,'--',T,y2a,'-',T,y3a,'-')
legend('kb=5','kb=10','kb=20')
xlabel('t(sec)'),ylabel('x(t)');gridon;
(2)当Kb分别为5、10、20时,系统的瞬态性能指标程序和数据
t=[0:
0.01:
10];
yss=0.5;dta=0.02;
nG=[0.5110];dG=[4520];
G1=tf(nG,dG);
nG=[1220];dG=[5940];
G2=tf(nG,dG);
nG=[2440];dG=[61780];
G3=tf(nG,dG);
y1=step(G1,t);y2=step(G2,t);y3=step(G3,t);
r=1;whiley1(r)tr1=(r-1)*0.01;
[ymax,tp]=max(y1);tp1=(tp-1)*0.01;
mp1=(ymax-yss)/yss;
s=1001;whiley1(s)>0.5-dta&y1(s)<0.5+dta;s=s-1;end
ts1=(s-1)*0.01;
r=1;whiley2(r)tr2=(r-1)*0.01;[ymax,tp]=max(y2);
tp2=(tp-1)*0.01;mp2=(ymax-yss)/yss;
s=1001;whiley2(s)>0.5-dta&y2(s)<0.5+dta;s=s-1;end
ts2=(s-1)*0.01;
r=1;whiley3(r)tr3=(r-1)*0.01;[ymax,tp]=max(y3);
tp3=(tp-1)*0.01;mp3=(ymax-yss)/yss;
s=1001;whiley3(s)>0.5-dta&y3(s)<0.5+dta;s=s-1;end
ts3=(s-1)*0.01;
[tr1tp1mp1ts1;tr2tp2mp2ts2;tr3tp3mp3ts3]
上升时间峰值时间最大超调量调整时间
2.2利用Matlab分析时间特性
(1)利用Matlab绘制Nyquist图
nG1=[2440];
dG1=[61780];
[re,im]=nyquist(nG1,dG1);
plot(re,im);gridon
(2)利用Matlab绘制Bode图
nG1=[2440];
dG1=[61780];
w=logspace(-2,3,100);
bode(nG1,dG1,w);gridon
(3)利用Matlab求系统的频域特征量
nG1=[2440];
dG1=[61780];
w=logspace(-1,3,100);
[Gm,pm,w]=bode(nG1,dG1,w);
[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)
2.3利用Matlab分析系统的稳定性
den=[4520];
K=10;num1=[K];
[Gm1Pm1Wg1Wc1]=margin(num1,den);
K=100;num2=[K];
[mag,phase,w]=bode(num2,den);
[Gm2Pm2Wg2Wc2]=margin(mag,phase,w);
[20*log10(Gm1)Pm1Wg1Wc1;20*log10(Gm2)Pm2Wg2Wc2]
den=[5940];
K=10;num1=[K];
[Gm1Pm1Wg1Wc1]=margin(num1,den);
K=100;num2=[K];
[mag,phase,w]=bode(num2,den);
[Gm2Pm2Wg2Wc2]=margin(mag,phase,w);
[20*log10(Gm1)Pm1Wg1Wc1;20*log10(Gm2)Pm2Wg2Wc2]
den=[61780];
K=10;num1=[K];
[Gm1Pm1Wg1Wc1]=margin(num1,den);
K=100;num2=[K];
[mag,phase,w]=bode(num2,den);
[Gm2Pm2Wg2Wc2]=margin(mag,phase,w);
[20*log10(Gm1)Pm1Wg1Wc1;20*log10(Gm2)Pm2Wg2Wc2]
2.4利用Matlab设计系统校正
校正前系统的Bode图和程序
k=10
numg=[0.5110];deng=[4520];
[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);
semilogx(w,20*log10(mag(:
)),w,M);gridon;
校正后系统的Bode图和程序
k=10;
%
numg=[0.5110];deng=[4520];
%
numgc=[0.0811];dengc=[0.1861];
%
[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);
grid;
title(['相位裕度=',num2str(Pm)]);