应用matlab解决汽车理论问题——“确定一轻型货
车的动力性能”
摘要:确定一轻型货车的动力性能需要绘制其汽车驱动力和行
驶助力平衡图,根据图形求出最高车速,最大爬坡度,克服最大爬
坡度时相应的附着率,加速时间等动力性能参数方可对该货车的整
体动力性能进行一个全面,直观,准确的确定与评价。Matlab集科
计算,图形处理,图像处理,多媒体处理与一身,并提供了丰富
的windows图形界面设计方法,为科学研究,工程设计以及必须有
效数值计算的众多科学领域提供了一种全面的解决方案。
关键词:matlab  编程指令数值计算图形绘制驱动力
行驶阻力平衡图最高车速最大爬坡度附着率加速时间
动力性能参数
功能强大的MATLAB软件对于解决汽车理论中的很多问题能够提
供很大的帮助。确定一轻型货车的动力性能需要绘制其汽车驱动力
和行驶助力平衡图,根据图形求出最高车速,最大爬坡度,克服最
大爬坡度时相应的附着率,加速时间等动力性能参数方可对该货车
的整体动力性能进行一个全面,直观,准确的确定与评价。Matlab
的数值计算和图形处理功能恰能对这一问题的解决提供了方便有效
的帮助。
一. 简介matlab.
向智能化发展的计算机技术为各种理论研究和工程技术问题的
解决提供了强大而又方便快捷的工具支持。MATLAB(即matrix laboratory意为矩阵实验室)是由美国mathworks公司发布的主要
面对科学计算可视化以及交互式程序设计的高科技计算环境。它将
数值分析,矩阵计算,科学数据可视化以及非线性动态系统的建模
和仿真等诸多强大功能集成在一个易于使用的试图环境中,为科学
研究,工程设计以及必须有效数值计算的众多科学领域提供了一种
全面的解决方案。Matlab集科学计算,图形处理,图像处理,多媒
体处理与一身,并提供了丰富的windows图形界面设计方法,它已
成功应用于以下领域:
1)工业研究与开发
2)数学教学,特别是线形代数;
3)数值分析和科学计算方面的教学与研究;
4)电子学,控制理论和物理学等工程和科学学科方面的教学与研究;
5)经济学,化学和生物学等计算问题领域中的教学与研究;
6)数子图像信号处理,建模,仿真;
7)图形用户界面设计。
二. 确定一轻型货车的动力性能
已知的轻型货车的有关数据为:
汽油发动机使用外特性的Tq-n曲线的拟合公式为:Tq=-
19.313+295.27(n/1000)-165.44(n/1000)^2+40.874(n/1000)^3-3.8445(n/1000)^4.式中,Tq为发动机转矩(N.m);n为发动机转速(R/min).发动机的最低转速n=600r/min,最高转速n=4000r/min;装载质量:2000kg;整车整备质量:1800kg;总质量:3880kg;车轮半径:0.367m;传动系机械效率:ƞT=0.85;滚动阻力系数:f=0.013;空气阻力系数*迎风面积:CdA=2.77m^2;主减速器传动比:i0=5.83;飞轮转动惯量:If=0.218kg.m^2;二前轮转动惯量:Iw1=1.798kg.m^2;四后轮转动惯量:Iw2=3.598kg.m^2;变速器传动比:
据。轴距:L=3.2m;质心至前轴距离(满载):a=1.947m;质心高(满载):hg=0.9m.
(一)绘制汽车驱动力和行驶阻力平衡图,并求出汽车最高车速,最
大爬坡度及克服该坡度时相应的附着率。运用matlab语言编写指令如下:
1.n=linspace(600,4000,100);
2.r=0.367;
3.i0=5.83;
<=0.85;
5.G=3880*9.8;f=0.013;CDA=2.77;If=0.218;Iw1=1.798;Iw2=3.59
8;m=3880;L=3.2;a=1.947;hg=0.9;
6.ig=[6.09,3.09,1.71,1.00];
7.ua1=0.377*r*n/i0/ig(1);
8.ua2=0.377*r*n/i0/ig(2);
9.ua3=0.377*r*n/i0/ig(3);
10.ua4=0.377*r*n/i0/ig(4);
11.Tq=-19.313+295.27*(n/1000)-
165.44*(n/1000).^2+40.874*(n/1000).^3-
3.8445*(n/1000).^4;
12.Ft1=Tq*i0*ig(1)*nt/r;
13.Ft2=Tq*i0*ig(2)*nt/r;
14.Ft3=Tq*i0*ig(3)*nt/r;
15.Ft4=Tq*i0*ig(4)*nt/r;
16.Ff=G*f;
17.ua=linspace(0,200,100);
18.Fw=CDA*ua.*ua/21.15;
19.plot(ua1,Ft1,ua2,Ft2,ua3,Ft3,ua4,Ft4,ua,Ff,ua,Ff+Fw);
20.xlabel('ua/ km/h');
21.ylabel('F/N');
22.title('汽车驱动力-行驶阻力平衡图');
23.legend('Ft1','Ft2','Ft3','Ft4','Ff','Ff+Fw');
24.umax=max(ua4);
25.disp('汽车最高车速=');
26.disp(umax);disp('km/h');
27.imax=tan(asin(max((Ft1-(Ff+Fw))/G)));
28.disp('汽车最大爬坡度=');
29.disp(imax);
30.fai=imax*L/(a+hg*imax);
31.disp('货车后轮驱动克服最大坡度时相应的附着率=');
32.disp(fai);
对该程序指令编写过程的解释:指令第1行的linspace—线性等分
函数生成向量,可以在首尾两端元素之间等分建立向量。所以linspace(600,4000,100)表示将600到4000之间等分为100份。
2,3,4,5行将已知数据输入。第6行通过创建一个1*4维的数值矩
阵输入4档变速器的传动比。7,8,9,10行根据车速公式
Ua=0.377*r*n/i0/ig分别求出变速器各档位对应的汽车车速与发动
机转速n的关系。11行为已知条件表示发动机转矩Tq与发动机转
速n的函数关系。12,13,14,15行根据汽车驱动力公式
Ft=Tq*i0*ig*nt/r求出变速器处于各档位时的汽车驱动力。16行求
轻型货车报价出滚动阻力。17行调用linspace()函数将车速0到200km/h等分生成100维向量。18行求出空气阻力。19行调用plot函数绘制多
根二维曲线,输入的参数都为向量对,Ua1和Ft1,Ua2和Ft2,Ua3
和Ft3,Ua4和Ft4,Ua和Ff,Ua和Ff+Fw分别组成一对向量对,每一
向量对可以绘制一条曲线,这样就在同一坐标内绘制出了六条曲线。20行和21行调用xlabel()和ylabel()函数分别对x轴和y轴
进行标注,即在横坐标轴下方标注‘’Ua/km/h“,在纵坐标轴左侧
标注“F/N”.22行调用title()函数在图形上方写图名“汽车驱
动力——行驶阻力平衡图“。23行调用legend()函数在规定位置写图例,缺省在图形窗口右上角。24行调用max函数求出4档时的最高车速。26行调用disp函数显示文本“最高车速=”。26行显示Umax值及其单位。27行求最大爬坡度。28行调用disp函数显示文本“汽车最大爬坡度=”。29行调用disp函数显示Imax的值。30行求出克服最大爬坡度时相应的附着率。31,32行调用disp函数显示文本,值。将1—32行指令程序导入matlab的command space 窗口,按下enter键得到运行结果如下:
汽车最高车速=
94.9290
km/h
汽车最大爬坡度=
0.3702
货车后轮驱动克服最大坡度时相应的附着率=
0.5196
(二)绘制汽车行驶加速度倒数曲线。运用matlab语言编写程序指
令如下:
n=linspace(600,4000,100);
r=0.367;
i0=5.83;
nt=0.85;
G=3880*9.8;f=0.013;CDA=2.77;If=0.218;Iw1=1.798;Iw2=3.598;m =3880;L=3.2;a=1.947;hg=0.9;
ig=[6.09,3.09,1.71,1.00];
ua1=0.377*r*n/i0/ig(1);
ua2=0.377*r*n/i0/ig(2);
ua3=0.377*r*n/i0/ig(3);
ua4=0.377*r*n/i0/ig(4);
Tq=-19.313+295.27*(n/1000)-
165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4; Ft1=Tq*i0*ig(1)*nt/r;
Ft2=Tq*i0*ig(2)*nt/r;
Ft3=Tq*i0*ig(3)*nt/r;
Ft4=Tq*i0*ig(4)*nt/r;
Ff=G*f;
ua=linspace(0,200,100);
Fw=CDA*ua.*ua/21.15;
s1=1+(Iw1+Iw2)/(m*r^2)+ig(1)^2*i0^2*nt*If/(m*r^2);
s2=1+(Iw1+Iw2)/(m*r^2)+ig(2)^2*i0^2*nt*If/(m*r^2);
s3=1+(Iw1+Iw2)/(m*r^2)+ig(3)^2*i0^2*nt*If/(m*r^2);
s4=1+(Iw1+Iw2)/(m*r^2)+ig(4)^2*i0^2*nt*If/(m*r^2);
Fw1=CDA*ua1.*ua1/21.15;
Fw2=CDA*ua2.*ua2/21.15;
Fw3=CDA*ua3.*ua3/21.15;
Fw4=CDA*ua4.*ua4/21.15;
a1=(Ft1-(Ff+Fw1))/(s1*m);
a2=(Ft2-(Ff+Fw2))/(s2*m);
a3=(Ft3-(Ff+Fw3))/(s3*m);
a4=(Ft4-(Ff+Fw4))/(s4*m);
plot(ua1,1./a1,ua2,1./a2,ua3,1./a3,ua4,1./a4);
xlabel('ua/ km/h');
ylabel('1/a');
title('汽车的加速度倒数曲线');
legend('1/a1','1/a2','1/a3','1/a4');
将上述程序指令导入matlab的command space窗口按下enter键,运行结果绘制的加速度倒数曲线如下图所示: