您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 汽车理论 > 汽车动力性计算matlab程序
%%此程序可用来画汽车驱动力行驶阻力图,加速度倒数——行驶速度图像,能够求出最大车速,最大爬坡度,和加速时间clear%清空内存clc%清屏幕n_min=600;n_max=4000;%发动机最高、最低转速r=0.367;elta_t=0.85;i_0=5.83;m=3880;C_DA=2.77;f=0.013;G=m*9.8;I_w1=1.798;I_w2=3.598;I_f=0.218;%各个常量i_g=[5.56,2.769,1.644,1.00,0.793];%各档位变速器传动比u=0:0.1:r*2*pi*3.6*n_max/i_g(5)/i_0/60;%自变量u从0到最高按一定间距增加T=size(u);F_t=ones(5,T(2));%发动机驱动力矩阵fori=1:5forj=1:T(2)if((u(j)=r*2*pi*3.6*n_min/i_g(i)/i_0/60)&&(u(j)=r*2*pi*3.6*n_max/i_g(i)/i_0/60))%比较是否在这一档位的转速范围之内F_t(i,j)=ft(u(j),i);%调用函数求出在该档位和转速下的驱动力elseF_t(i,j)=0;%如果转速不再限定范围之内,则赋值为0endendendF_f=f*G;%滚动阻力F_w=C_DA*power(u,2)/21.15;%风阻F_fw=F_f+F_w;%总阻力plot(u,F_t(1,:),u,F_t(2,:),u,F_t(3,:),u,F_t(4,:),u,F_t(5,:),u,F_fw)%画出驱动力-行驶阻力图axis([0120015000])u=find(abs(F_t(5,:)-F_fw)1)/10%找到横坐标最大的交点,求出最高速度delta=1+(I_w1+I_w2)/m/r/r+I_f*power(i_g*i_0,2)*elta_t/m/r/r;%δ大小a=ones(5,T(2));fori=1:5a(i,:)=(F_t(i,:)-F_fw)/delta(i)/m;endplot(u,1./a(1,:),u,1./a(2,:),u,1./a(3,:),u,1./a(4,:),u,1./a(5,:));%画出1/a-u曲线axis([0120010])u2_min=r*2*pi*3.6*n_min/i_g(2)/i_0/60;u2_max=r*2*pi*3.6*n_max/i_g(2)/i_0/60;%二档最高最低车速u3_max=r*2*pi*3.6*n_max/i_g(3)/i_0/60;%三档最高车速t1=u2_min*1/a(2,round(u2_min*10)+2);%以二档最低车速恒定起步时间t2=aver(round(u2_min*10),round(u2_max*10),1./a(2,:))*(u2_max-u2_min);%二档行驶时间t3=aver(round(u2_max*10),round(u3_max*10),1./a(3,:))*(u3_max-u2_max);%三档行驶时间t4=aver(round(u3_max*10),700,1./a(4,:))*(70-u3_max);%四档行驶时间t=(t1+t2+t3+t4)/3.6%加速总时间fori=1:5D(i,:)=(F_t(i,:)-F_w)/G;%动力因数endD_max=max(max(D));%DI_maxalpha=asin((D_max-f*sqrt(1-D_max^2+f^2))/1+f^2);%α_maxi_max=tan(alpha)%最大爬坡度
本文标题:汽车动力性计算matlab程序
链接地址:https://www.777doc.com/doc-7425969 .html