基于MATLAB的发动机万有特性曲线绘制方法
- 格式:pdf
- 大小:498.54 KB
- 文档页数:4
如何用matlab绘制电机效率map图或发动机万有特性曲线前段时间写论文,需要绘制电机效率map图,其实和发动机万有特性曲线一样。
看了好多资料都不会,问问师兄也没具体画过。
困惑中查到貌似有几个软件可以画map图,由于我比较熟悉matlab,就选用它了,可是matlab也不知道咋画呀,我查看了matlab图形处理这一块,突然发现等高线图绘制,咦???这不就是高中地理学的吗???和map图万有特性图本质一样吗???就是contour函数啦,惊喜万分5.2.13 等值线图等值线图可用于绘制地理数据中的等高图、气象数据中的等势图等。
等值线图在二维图形中把第三维中相同大小的数据连接为等值线,一定程度上可以表示第三维的信息,同时等值线图相比三维图更容易观察数据之间的关系,被广泛的应用于各个领域。
MATLAB中提供了一系列的函数用于绘制不同形式的等高线图,其中包括:1.contour()函数contour()函数可用于绘制二维等值线图,函数的调用格式为:❑contour(z):输入数据z为二维矩阵,绘制数据z的等值线,绘图时等值线的数量和数值根据矩阵z的数据范围自动确定。
❑contour(z,n):绘制等值线图,设置等值线数目为n。
❑contour(z,v):绘制等值线图,向量v设置等值线的数值。
❑contour(x,y,z):绘制矩阵z的等值线图,输入参数x、y用于指定绘制的等值线图的坐标轴数据,同时输入数据x、y、z必须为大小相等的矩阵。
❑contour(x,y,z,n):为指定坐标轴的等值线图设置等值线的数目n。
❑contour(x,y,z,v):为指定坐标轴的等值线图设置等值线的数值v。
❑contour(...,LineSpec):输入参数LineSpec用于设置等值线的线型。
❑[c,h] = contour(...):返回contour()函数绘制的等高线图中的等值线的数值标签c和包含所有图形对象的句柄h;2.contourf()函数contourf()函数用于绘制带填充的二维等值线图。
基于MATLAB基础上的发动机万有特性曲线的建立杨丽娟;赵丹平【摘要】发动机性能的好坏直接影响着整车运行的平顺性、安全性、稳定性等,要全面评价发动机性能,万有特性曲线则是一个很好的工具.万有特性曲线是以发动机转速为横坐标,以扭矩或平均有效压力为纵坐标,在坐标系内画出等燃油消耗率曲线和等功率曲线[1].绘制万有特性曲线的方法有很多种,MATLAB语言是其中之一.本文利用强大的MATLAB绘图工具,绘制了发动机的万有特性曲线,经分析,该方法是一个有效的精确度较高的方法.【期刊名称】《交通节能与环保》【年(卷),期】2010(000)001【总页数】3页(P32-33,48)【关键词】MATLAB;发动机;万有特性【作者】杨丽娟;赵丹平【作者单位】内蒙古工业大学,内蒙古,赤峰,010051;内蒙古工业大学,内蒙古,赤峰,010051【正文语种】中文0 引言发动机是汽车的动力源,发动机性能的好坏直接影响着整车的动力性与经济性。
汽车的运行工况是个随机的过程,受到很多因素的影响,如道路条件、交通流量、气候条件以及汽车自身技术性能的变化等等。
在所有的运行工况下,发动机都应能够与传动系实现最佳匹配,以使整车动力性、经济性、排放性和噪声污染等方面均处于最佳状态。
然而,对发动机性能的分析与研究是保证整车性能达到最佳的重要前提。
MATLAB语言是一个功能强大的仿真软件,可以完成复杂的数学运算,实现对动态系统的建模仿真等,在工程计算中应用非常广泛。
本文利用MATLAB的强大的绘图功能,建立了发动机的输出转矩模型、油耗模型及万有特性曲线。
通过输出转矩模型,由当前发动机节气门开度及转速既可得到与之相对应的发动机的转出转矩,从而为分析发动机性能奠定基础;发动机油耗模型反应了其有效燃油消耗率与转速和转矩之间的关系,发动机在不同工况下运行时,由此模型既可得到不同工况下发动机的比油耗,从而为分析整车燃油经济性提供数据支持;万有特性曲线是在由发动机转速和转矩构成的坐标系内,绘制出等油耗曲线、等功率曲线、外特性曲线等,通过万有特性曲线既可较全面地了解发动机在不同工况下的性能指标。
%不同转速下的燃油消耗率与扭矩的曲线拟合clear allbe1=[222.8,220.4,232.4,228.5,227.8,232.6,248.5,245.9,272.4,329.7];Ttq1=[399.8,354.1,318.5,278.1,236.2,203.6,185.3,157.2,117.2,80.8];T1=80:320/9:400; %转换矩阵格式Be1=interp1(Ttq1,be1,T1,'spline'); %n=1400r/min时燃油消耗率与扭矩的曲线拟合be2=[222.0,221.7,235.4,226.5,230.5,236.8,249.1,276.1,407.9,487.0];Ttq2=[409.1,365.7,328.3,284.1,243.7,203.2,164.3,123.9,83.5,39.7];T2=39:371/9:410;Be2=interp1(Ttq2,be2,T2,'spline');be3=[226.0,225.3,226.4,233.9,242.1,283.3,253.9,271.4,323.5,468.6];Ttq3=[408.3,368.3,328.3,289.0,244.4,208.8,167.7,132.1,89.5,46.1];T3=46:363/9:409;Be3=interp1(Ttq3,be3,T3,'spline');be4=[206.5,231.1,231.1,233.0,242.0,244.9,265.0,299.8,398.0,596.8];Ttq4=[425.6,380.3,332.7,290.9,244.4,205.1,160.2,114.5,68.8,30.7];T4=30:396/9:426;Be4=interp1(Ttq4,be4,T4,'spline');be5=[234.7,259.8,235.5,237.6,242.8,292.3,277.9,308.7,396.2,605.9];Ttq5=[420.7,379.6,334.6,291.6,244.4,202.8,157.5,116.0,74.1,37.8];T5=37:384/9:421;Be5=interp1(Ttq5,be5,T5,'spline');be6=[174.2,242.2,252.1,287.4,253.6,263.6,290.6,316.8,378.0,518.8];Ttq6=[404.6,360.5,322.7,283.0,243.3,205.5,162.1,124.7,86.8,52.4];T6=52:353/9:405;Be6=interp1(Ttq6,be6,T6,'spline');be7=[256.9,253.7,253.5,260.0,303.8,280.7,300.6,346.6,435.6,812.9];Ttq7=[378.0,344.7,310.3,264.3,226.1,186.8,154.2,115.3,76.3,34.1];T7=34:344/9:378;Be7=interp1(Ttq7,be7,T7,'spline');be8=[257.9,295.3,282.4,288.7,301.9,329.7,357.0,475.4,580.3,1080.1];Ttq8=[315.6,275.5,242.5,210.3,178.5,145.6,118.6,72.6,52.8,22.4];T8=22:294/9:316;Be8=interp1(Ttq8,be8,T8,'spline');B=[Be1';Be2';Be3';Be4';Be5';Be6';Be7';Be8'];N=[1400*ones(10,1);1600*ones(10,1);1800*ones(10,1);2000*ones(10,1);2200*ones(10,1);2400*ones (10,1);2600*ones(10,1);2800*ones(10,1)];Ttqn=[T1';T2';T3';T4';T5';T6';T7';T8'];G=[ones(80,1),N,Ttqn,N.^2,N.*Ttqn,Ttqn.^2];A=G\B; %A为6*1矩阵[n,Ttq]=meshgrid(1400:2800,100:600); %生成n-Ttq平面上的自变量“格点”矩阵be=A(1)+n.*A(2)++Ttq*A(3)+n.^2*A(4)+n.*Ttq*A(5)+Ttq.^2*A(6); %501×1401Pe=Ttq.*n/9550; %501×1401%外特性实验数据拟合Nw=[1403,1597,1797,1986,2102,2199,2303,2400,2507,2598,2700,2802]; Ttqw=[474,497,515,526,528.8,522.8,509.5,492.2,471.2,448.4,408.3,357.4]; n0=1400:2800;Ttqw_N=interp1(Nw,Ttqw,n0,'spline');h=repmat(Ttqw_N,501,1); % 501×1401矩阵ii=find(Ttq>h); %确定超出边界的“格点”下标 %155109×1be(ii)=NaN; %强制为非数Pe(ii)=NaN; %强制为非数%绘制等燃油消耗率曲线和等功率曲线三维拟合图subplot(1,2,1);mesh(n,Ttq,be);hold on;mesh(n,Ttq,Pe);axis([1000,3000,100,600,0,500]);hold on;xlabel('n(r/min)')ylabel('Ttq(N*m)')zlabel('Pe(KW) be(g/(KW*h))')title('等燃油消耗曲线和等功率曲线的三维拟合图')%绘制边界线(外特性曲线)subplot(1,2,2);plot(n0,Ttqw_N,'LineWidth',2);axis([1400,2800,100,550]);xlabel('n(r/min)');ylabel('Ttq(N*m)');title('万有特性曲线');hold on;%绘制等油耗率曲线的二维图B=contour(n,Ttq,be,11); %画等位线,并给出标识数据clabel(B); %把“等位值”沿等位线随机标识hold on;%绘制等功率曲线的二维图P=contour(n,Ttq,Pe,11); %画等位线,并给出标识数据clabel(P); %把“等位值”沿等位线随机标识legend('等油耗曲线','等功率曲线','外特性曲线')hold off%利用mesh作原始曲面N=3500:500:8000;T=1.3:-1.2/6:0.1;B=xlsread('F:\Matlab\RanJia.xls','revise5');%mesh(N,T,B)%colormap;%colorbar;%xlabel('转速n/ r*min^-^1'), ylabel('p平均有效压力/ Mpa'), zlabel('燃油消耗率z/ kg/(kw*h)')%hidden off 透明网孔%colormap; 表面小块着色%colorbar;%surf(,,,'FaceColor','red','EdgeColor','none');%camlight left; 增加光源%lighting phone 照明方式%view(-15,65) 改变视角(方位角,仰角)%利用interrp2矩阵插值函数作优化曲面N1=3500:50:8000;T1=1.3:-0.005:0.1;[N2,T2]=meshgrid(N1,T1);B1=interp2(N,T,B,N2,T2,'cubic');P1=T2.*N2/9.55;%figure;%surf(N1,T1,B1)%colormap;%colorbar;%xlabel('转速n/ r*min^-^1'), ylabel('p平均有效压力/ Mpa'), zlabel('燃油消耗率z/ kg/(kw*h)')%外特性实验数据拟合T3=[0.90,0.95,0.99,1.06,1.12,1.18,1.24,1.30,1.22,1.11];T4=interp1(N,T3,N1,'spline');W=repmat(T4,241,1); %平铺成381×91矩阵jj=find(T2>W); %确定超出边界的“格点”下标B1(jj)=NaN;%画外特性曲线plot(N1,T4,'LineWidth',2);axis([3500,8000,0.1,1.3]);hold on%画等油耗线v=[450,460,470,480,490,500,510,525,540,560];[A1,h]=contour(N2,T2,B1,v,'b:'); %N2,T2限制在X,Y轴上的范围,10为等高线条数clabel(A1,h,'manual');hold on%画等功率线[A2,h]=contour(N2,T2,P1,500:100:900,'k:'); %N2,T2限制在X,Y轴上的范围,10为等高线条数clabel(A2,h,'manual');plot(6000,1.114,'.','color','r');xlabel('转速—r/min');ylabel('扭矩—N ·m');legend('外特性曲线','等油耗线-g/(kW ·h)','等功率线-W') hold off% title('等油耗线');%xlabel('转速n/ r*min^-^1'), ylabel('p 平均有效压力/ Mpa')转速(r/min )扭矩(N ·m )。
%不同转速下的燃油消耗率与扭矩的曲线拟合clear allbe仁[222.8,220.4,232.4,228.5,227.8,232.6,248.5,245.9,272.4,329.7];Ttq仁[399.8,354.1,318.5,278.1,236.2,203.6,185.3,157.2,117.2,80.8];T1=80:320/9:400;%转换矩阵格式Be仁in terp1(Ttq1,be1,T1,'spli ne');% n=1400r/mi n 时燃油消耗率与扭矩的曲线拟合be2=[222.0,221.7,235.4,226.5,230.5,236.8,249.1,276.1,407.9,487.0];Ttq2=[409.1,365.7,328.3,284.1,243.7,203.2,164.3,123.9,83.5,39.7];T2=39:371/9:410;Be2=i nterp1(Ttq2,be2,T2,'spl in e');be3=[226.0,225.3,226.4,233.9,242.1,283.3,253.9,271.4,323.5,468.6];Ttq3=[408.3,368.3,328.3,289.0,244.4,208.8,167.7,132.1,89.5,46.1];T3=46:363/9:409;Be3=i nterp1(Ttq3,be3,T3,'spl in e');be4=[206.5,231.1,231.1,233.0,242.0,244.9,265.0,299.8,398.0,596.8];Ttq4=[425.6,380.3,332.7,290.9,244.4,205.1,160.2,114.5,68.8,30.7];T4=30:396/9:426;Be4=i nterp1(Ttq4,be4,T4,'spl in e');be5=[234.7,259.8,235.5,237.6,242.8,292.3,277.9,308.7,396.2,605.9];Ttq5=[420.7,379.6,334.6,291.6,244.4,202.8,157.5,116.0,74.1,37.8];T5=37:384/9:421;Be5=i nterp1(Ttq5,be5,T5,'spl in e');be6=[174.2,242.2,252.1,287.4,253.6,263.6,290.6,316.8,378.0,518.8];Ttq6=[404.6,360.5,322.7,283.0,243.3,205.5,162.1,124.7,86.8,52.4];T6=52:353/9:405;Be6=i nterp1(Ttq6,be6,T6,'spl in e');be7=[256.9,253.7,253.5,260.0,303.8,280.7,300.6,346.6,435.6,812.9];Ttq7=[378.0,344.7,310.3,264.3,226.1,186.8,154.2,115.3,76334.1];T7=34:344/9:378;Be7=i nterp1(Ttq7,be7,T7,'spl in e');be8=[257.9,295.3,282.4,288.7,301.9,329.7,357.0,475.4,580.3,1080.1];Ttq8=[315.6,275.5,242.5,210.3,178.5,145.6,118.6,72.6,52.8,22.4];T8=22:294/9:316;Be8=i nterp1(Ttq8,be8,T8,'spl in e');B=[Be1';Be2';Be3';Be4';Be5';Be6';Be7';Be8'];N=[1400*o nes(10,1);1600*o nes(10,1);1800*o nes(10,1);2000*o nes(10,1);2200* on es(10,1);2400*o nes(10,1);2600*o nes(10,1);2800*o nes(10,1)];Ttq n=[T1';T2';T3';T4';T5';T6';T7';T8'];G=[o nes(80,1),N,Ttq n,N.A2,N.*Tt qn ,Ttq n. A2];A=G\B;%A 为6*1 矩阵[n,Ttq]=meshgrid(1400:2800,100:600);% 生成n-Ttq 平面上的自变量“格点”矩阵be=A(1)+n. *A (2)++Ttq*A(3)+n.A2*A(4)+n.*Ttq*A(5)+Ttq.A2*A(6);Pe=Ttq.* n/9550;%外特性实验数据拟合Nw=[1403,1597,1797,1986,2102,2199,2303,2400,2507,2598,2700,2802];Ttqw=[474,497,515,526,528.8,522.8,509.5,492.2,471.2,448.4,408.3,357.4]; n0=1400:2800; Ttqw_N=i nterp1(Nw,Ttqw ,n 0,'spli ne');h=repmat(Ttqw_N,501,1);ii=find(Ttq>h);%确定超出边界的“格点”下标be(ii)=NaN;%强制为非数Pe(ii)=NaN;%强制为非数%绘制等燃油消耗率曲线和等功率曲线三维拟合图subplot(1,2,1);mesh( n, Ttq,be);hold on;mesh( n,Ttq,Pe);axis([1000,3000,100,600,0,500]);hold on;xlabel(' n(r/mi n)')ylabel('Ttq(N*m)')zlabel('Pe(KW) be(g/(KW*h))')title('等燃油消耗曲线和等功率曲线的三维拟合图')%绘制边界线(外特性曲线)subplot(1,2,2);plot( nO,Ttqw_N,'Li neWidth',2);axis([1400,2800,100,550]);xlabel(' n(r/mi n)');ylabel('Ttq(N*m)');title('万有特性曲线');hold on;%绘制等油耗率曲线的二维图B=contour(n,Ttq,be,11);%画等位线,并给出标识数据clabel(B);%把“等位值”沿等位线随机标识hold on;%绘制等功率曲线的二维图P=contour(n,Ttq,Pe,11);%画等位线,并给出标识数据clabel(P);%把“等位值”沿等位线随机标识lege nd('等油耗曲线','等功率曲线','外特性曲线')hold off。
MTLAB绘制发动机万有特性MAP详细程序采用MATLAB来绘制发动机MAP,通过附表1和2,将这两个表放在同一个根目录下,并编写M文件(见后面附录程序),将M文件跟附表1和2同时放在同一个不带中文的根目录下,点击运行即可。
详细绘图程序见附录。
附表1:转速扭矩燃油消耗率2500 613 221.662501 549.4 222.472500 484.3 221.462500 401.8 227.392499 300.3 242.942500 205.5 272.412498 99.1 375.582300 649.9 212.042300 578.8 212.76附表2:1168 408.821200 477.51337 5001485 514.481500 5731543 618.921401 749.821600 716.251656 749.71760 759.661885 759.952000 5001.将附表1粘贴到Excel中,并将Excel名称更改为12.xlsx文件,并将该12.xlsx 文件存放在E盘根目录下,即E:\12.xlsx2.将附表2粘贴到另外一个Excel中,并将Excel名称更改为hua.xlsx文件,并将hua.xlsx文件存放在E盘根目录下,即E:\hua.xlsx3.在MTLAB中点击File,New,Scrip新建一个M文件4. 将附录后的程序粘贴进去后点击运行,即可生成发动机MAP图。
附录程序:(注意:程序和两个Excel存放在同一个跟目录,因为程序会调用者两张表格)clearclcA=xlsread('E:\12.xlsx');%%%表示12.xlsx文件存放在E盘根目录下x=A(:,1);y=A(:,2);z=A(:,3);xi=(linspace(min(x),max(x),100));size(xi)%%%% linspace是Matlab中的一个指令,用于产生x1,x2之间的N点行矢量。
【设计研究】基于 M AT LAB 的发动机万有特性曲线绘制方法周广猛 1, 郝志刚 2, 刘瑞林 1, 陈东 3, 管金发 1, 张春海4(1. 军事交通学院汽车工程系 , 天津 300161;2. 军事交通学院训练部 , 天津300161; 3. 军事交通学院基础部 , 天津 300161;4. 兰州军区军械汽车技工训练大队 , 陕西 710111摘要 :利用 MAT LAB 数学运算能力 , , , 有曲线直观明了 , 把等燃油消耗率曲线、 , 拟合程度较高。
关键词 ; :A文章编号 :1673-6397(2009 02-0034-03U niversal Characteristics Curve Plotting Method based on MAT LABZ H O U G uang -m eng 1,H A O Z hi -gang 2, L I U Rui -lin 1,CHE N D ong 3,G U A N Jin -fa 1,Z H A NG Chun -hai 4(1. Autom obile Engineering Department , Academy of Military T ransportation , T ianjin 300161,China ;2. T raining Department ,Academy of Military T ransportation , T ianjin 300161,China ;3. G eneral C ourse Department , Academy of Military T ransportation , T ianjin 300161,China ;4. Ordnance Mechanic T raining Brigade , Lan Zhou Theater , X i ’ an 710111,China Abstract :Taking advantage of MAT LAB mathematic operation , data from engine characteristic test was processed , the method is sim ple and credible , The universal characteristics curve plotted is intuitionistic and perspicuous ,and was in g ood fit with data g ot in test.K ey Words :MATLAB ;Universal Characteristics Curve ;Plot作者简介 :周广猛 (1984- , 男 , 山东邹城人 , 在读硕士研究生 , 主要研究方向为动力机械特殊环境适应性。
MATLAB曲线拟合工具箱在发动机特性拟合中的应用摘要:详细介绍了MA TLAB的曲线拟合工具箱(Curve Fitting Toolbox)的GUI交互式图形界面和函数调用两种方式的使用方法,并以某柴油发动机稳态工况下的试验数据绘制万有特性图为例,介绍了利用曲线拟合工具箱进行曲面拟合的步骤和方法,并给出了关键代码。
对拟合结果的数理统计校验表明,拟合结果完全符合要求。
结果表明,MA TLAB的曲线拟合工具箱为发动机特性的曲面拟合提供了极大的便利。
主题词:发动机特性,曲面拟合,多元回归,曲线拟合工具箱中图分类号: TK421 文献标识码:AApplication of MATLAB Curve Fitting Toolbox on Engine Characteristic Maps FittingAbstract:The usage of MATLAB Curve Fitting Toolbox GUI mode and function mode is detailed introduced. The procedures and method of surface fitting employ Curve Fitting Toolbox are demonstrated with the universal characteristic map plotting of a diesel engine steady state test data. Key codes are provided also. The statistics results show that the fitting accuracy is very high. The results prove that MATLAB Curve Fitting Toolbox can provide much convenience to the surface fitting of engine characteristics.Key Words:Engine Characteristic Map, Surface Fitting, Multiple Regression, Curve Fitting Toolbox引言根据发动机稳态工况下的性能试验数据绘制转速特性、负荷特性和万有特性曲线的过程较为繁琐,工作量较大,目前一般应用计算机编制程序对大量的试验数据进行处理,从而得到万有特性曲线[1] ;尤其是MA TLAB 软件,因其强大的数值计算和绘图功能,越来越广泛的被应用于发动机万有特性的研究[2,3,4]。
%不同转速下的燃油消耗率与扭矩的曲线拟合clear allbe1=[222.8,220.4,232.4,228.5,227.8,232.6,248.5,245.9,272.4,329.7];Ttq1=[399.8,354.1,318.5,278.1,236.2,203.6,185.3,157.2,117.2,80.8];T1=80:320/9:400; %转换矩阵格式Be1=interp1(Ttq1,be1,T1,'spline'); %n=1400r/min时燃油消耗率与扭矩的曲线拟合be2=[222.0,221.7,235.4,226.5,230.5,236.8,249.1,276.1,407.9,487.0];Ttq2=[409.1,365.7,328.3,284.1,243.7,203.2,164.3,123.9,83.5,39.7];T2=39:371/9:410;Be2=interp1(Ttq2,be2,T2,'spline');be3=[226.0,225.3,226.4,233.9,242.1,283.3,253.9,271.4,323.5,468.6];Ttq3=[408.3,368.3,328.3,289.0,244.4,208.8,167.7,132.1,89.5,46.1];T3=46:363/9:409;Be3=interp1(Ttq3,be3,T3,'spline');be4=[206.5,231.1,231.1,233.0,242.0,244.9,265.0,299.8,398.0,596.8];Ttq4=[425.6,380.3,332.7,290.9,244.4,205.1,160.2,114.5,68.8,30.7];T4=30:396/9:426;Be4=interp1(Ttq4,be4,T4,'spline');be5=[234.7,259.8,235.5,237.6,242.8,292.3,277.9,308.7,396.2,605.9];Ttq5=[420.7,379.6,334.6,291.6,244.4,202.8,157.5,116.0,74.1,37.8];T5=37:384/9:421;Be5=interp1(Ttq5,be5,T5,'spline');be6=[174.2,242.2,252.1,287.4,253.6,263.6,290.6,316.8,378.0,518.8];Ttq6=[404.6,360.5,322.7,283.0,243.3,205.5,162.1,124.7,86.8,52.4];T6=52:353/9:405;Be6=interp1(Ttq6,be6,T6,'spline');be7=[256.9,253.7,253.5,260.0,303.8,280.7,300.6,346.6,435.6,812.9];Ttq7=[378.0,344.7,310.3,264.3,226.1,186.8,154.2,115.3,76.3,34.1];T7=34:344/9:378;Be7=interp1(Ttq7,be7,T7,'spline');be8=[257.9,295.3,282.4,288.7,301.9,329.7,357.0,475.4,580.3,1080.1];Ttq8=[315.6,275.5,242.5,210.3,178.5,145.6,118.6,72.6,52.8,22.4];T8=22:294/9:316;Be8=interp1(Ttq8,be8,T8,'spline');B=[Be1';Be2';Be3';Be4';Be5';Be6';Be7';Be8'];N=[1400*ones(10,1);1600*ones(10,1);1800*ones(10,1);2000*ones(10,1);2200*ones(10,1);2400*ones (10,1);2600*ones(10,1);2800*ones(10,1)];Ttqn=[T1';T2';T3';T4';T5';T6';T7';T8'];G=[ones(80,1),N,Ttqn,N.^2,N.*Ttqn,Ttqn.^2];A=G\B; %A为6*1矩阵[n,Ttq]=meshgrid(1400:2800,100:600); %生成n-Ttq平面上的自变量“格点”矩阵be=A(1)+n.*A(2)++Ttq*A(3)+n.^2*A(4)+n.*Ttq*A(5)+Ttq.^2*A(6); %501×1401Pe=Ttq.*n/9550; %501×1401%外特性实验数据拟合Nw=[1403,1597,1797,1986,2102,2199,2303,2400,2507,2598,2700,2802]; Ttqw=[474,497,515,526,528.8,522.8,509.5,492.2,471.2,448.4,408.3,357.4]; n0=1400:2800;Ttqw_N=interp1(Nw,Ttqw,n0,'spline');h=repmat(Ttqw_N,501,1); % 501×1401矩阵ii=find(Ttq>h); %确定超出边界的“格点”下标 %155109×1be(ii)=NaN; %强制为非数Pe(ii)=NaN; %强制为非数%绘制等燃油消耗率曲线和等功率曲线三维拟合图subplot(1,2,1);mesh(n,Ttq,be);hold on;mesh(n,Ttq,Pe);axis([1000,3000,100,600,0,500]);hold on;xlabel('n(r/min)')ylabel('Ttq(N*m)')zlabel('Pe(KW) be(g/(KW*h))')title('等燃油消耗曲线和等功率曲线的三维拟合图')%绘制边界线(外特性曲线)subplot(1,2,2);plot(n0,Ttqw_N,'LineWidth',2);axis([1400,2800,100,550]);xlabel('n(r/min)');ylabel('Ttq(N*m)');title('万有特性曲线');hold on;%绘制等油耗率曲线的二维图B=contour(n,Ttq,be,11); %画等位线,并给出标识数据clabel(B); %把“等位值”沿等位线随机标识hold on;%绘制等功率曲线的二维图P=contour(n,Ttq,Pe,11); %画等位线,并给出标识数据clabel(P); %把“等位值”沿等位线随机标识legend('等油耗曲线','等功率曲线','外特性曲线')hold off%利用mesh作原始曲面N=3500:500:8000;T=1.3:-1.2/6:0.1;B=xlsread('F:\Matlab\RanJia.xls','revise5');%mesh(N,T,B)%colormap;%colorbar;%xlabel('转速n/ r*min^-^1'), ylabel('p平均有效压力/ Mpa'), zlabel('燃油消耗率z/ kg/(kw*h)')%hidden off 透明网孔%colormap; 表面小块着色%colorbar;%surf(,,,'FaceColor','red','EdgeColor','none');%camlight left; 增加光源%lighting phone 照明方式%view(-15,65) 改变视角(方位角,仰角)%利用interrp2矩阵插值函数作优化曲面N1=3500:50:8000;T1=1.3:-0.005:0.1;[N2,T2]=meshgrid(N1,T1);B1=interp2(N,T,B,N2,T2,'cubic');P1=T2.*N2/9.55;%figure;%surf(N1,T1,B1)%colormap;%colorbar;%xlabel('转速n/ r*min^-^1'), ylabel('p平均有效压力/ Mpa'), zlabel('燃油消耗率z/ kg/(kw*h)')%外特性实验数据拟合T3=[0.90,0.95,0.99,1.06,1.12,1.18,1.24,1.30,1.22,1.11];T4=interp1(N,T3,N1,'spline');W=repmat(T4,241,1); %平铺成381×91矩阵jj=find(T2>W); %确定超出边界的“格点”下标B1(jj)=NaN;%画外特性曲线plot(N1,T4,'LineWidth',2);axis([3500,8000,0.1,1.3]);hold on%画等油耗线v=[450,460,470,480,490,500,510,525,540,560];[A1,h]=contour(N2,T2,B1,v,'b:'); %N2,T2限制在X,Y轴上的范围,10为等高线条数clabel(A1,h,'manual');hold on%画等功率线[A2,h]=contour(N2,T2,P1,500:100:900,'k:'); %N2,T2限制在X,Y轴上的范围,10为等高线条数clabel(A2,h,'manual');plot(6000,1.114,'.','color','r');xlabel('转速—r/min');ylabel('扭矩—N ·m');legend('外特性曲线','等油耗线-g/(kW ·h)','等功率线-W') hold off% title('等油耗线');%xlabel('转速n/ r*min^-^1'), ylabel('p 平均有效压力/ Mpa')转速(r/min )扭矩(N ·m )。
基于MATLAB的发动机万有特性曲面拟合黄风清【摘要】基于软件建模的理论研究方法在整车开发中占据了越来越重要的地位.发动机作为整车中最为重要的一个零部件,发动机的万有特性如何通过数学模型更准确地表达出来,对整车模型的计算精度有非常重要的意义.通过建立不同的数学模型,依靠MATLAB的曲面拟合计算功能,找到更为精确的发动机万有特性曲面拟合方程.【期刊名称】《柴油机设计与制造》【年(卷),期】2014(020)003【总页数】4页(P14-16,56)【关键词】发动机;数学模型;MATLAB【作者】黄风清【作者单位】同济大学汽车学院,上海200092【正文语种】中文基于软件建模的理论研究方法在整车设计开发中发挥了越来越重要的作用。
通过建立整车的模型,形成虚拟样机,可以更好地辅助设计师选择更优的设计参数、较准确地评估整车性能以及预测整车的各项参数。
整车油耗的模拟计算往往是整个模型中的重点与难点,因为影响整车油耗因素有:发动机本体的性能、传动效率、外部阻力、使用工况、人为操作习惯等。
针对如何提升模型对整车油耗计算的准确性,本文主要研究如何提高对发动机万有特性拟合的精度,以达到提高模拟计算精度的目的。
本文的研究对象为上柴动力SC9DK220G3型发动机。
该款发动机的供油系统为高压共轨,排放限值达到非道路用第Ⅲ阶段的要求,是上柴公司为非道路用第Ⅲ阶段排放打造的升级动力,具有油耗低、加速性好等优点。
其主要参数如表1所示。
发动机的万有特性曲线可以较全面地表示发动机的性能。
通常以发动机的转速为横坐标,发动机的扭矩为纵坐标,在图上可以表示出等油耗率曲线、等小时耗油量曲线、等功率曲线、等过量空气系数曲线、冒烟极限等。
3.1 基于多项式的数学模型根据发动机负荷特性定义,固定发动机转速,对表达式进行降维处理[1],对其进行一元曲线拟合,其燃油消耗率be的表达式为:式(1)表示为发动机在转速ni下的负荷特性,若固定j,则式(1)中的Aij均为转速n的函数,其表达式可写为:将式(2)代入式(1),可以得到通用的计算公式其中i=(1,2,3…K),j=(1,2,3…S)根据式(3)及图1燃油消耗率be与转速n和功率P的曲线关系,结合计算复杂程度,分别选取K=S=3进行拟合计算。