如何用matlab绘制电机效率map图或发动机万有特性曲线
MATLAB绘制电动汽车驱动电机MAP详细步骤方法

电动汽车驱动电机MAP绘制方法电机MAP绘制是基于实验参数来实现的,在试验完成后,将数据整理好,按照如下详细步骤来绘制如下电机MAP图,三维图可以在Simulink中加载look-up二维表,然后点击三维坐标实现空间三维图。
附件内含有如下参数:附件1电机试验参数,不同转速扭矩下对应效率表;附件2电机外特参数表;附件3绘制电机MAP程序,采用插值绘制电机效率MAP图具体步骤如下所示。
1.先做电机实验得到各个转速下不同扭矩对应的电机效率图,如下表附件1所示;将该表格该贴到excel中sheet2页面;2.确定电机外特性图,外特性电机转速扭矩对应关系,将外特性转速扭矩粘贴到excel中sheet1页面;见附件2;3.这个表格中含有sheet1和sheet2两个页面,将该表格存在任何一个位置(无中文路径),如存在E盘目录下(E:\motor\);4.点开MATLAB,新建一个M文件,打开后将附件3程序粘贴上,点击红色圈圈运行即可生产带外特性的电机效率图。
5.附件提供的参数不全仅供参考,具体画图还得用你自己做实验的数据来绘制,只是提供了绘制电机MAP的方法。
附件1表名:motor转速扭矩(Nm)效率(%)(r/min)500 11.3 56.6500 21.1 64.7500 30.8 69.1500 40.3 70.5500 50.6 71.1500 60.3 71.5500 70.0 71.2500 80.4 71.1500 90.2 70.3500 100.1 69.7500 110.0 68.7500 120.0 68.2500 129.7 67.8500 140.1 67.2附件2:电机外特性曲线程序附件3clear;clc;speed_load= xlsread('E:\ motor.xlsx','sheet1','A2:A22');%导入加载试验外特性转速数据,A2:A22表示数据在A列,从第2行开始到第22行torque_load= xlsread(' E:\ motor.xlsx','sheet1','B2:B22');%导入加载试验外特性扭矩数据,B2:B22表示数据在B列,从第2行开始到第22行speed_eff= xlsread(' E:\ motor.xlsx','sheet2','A2:A261');%导入效率试验转速数据,A2:A261表示数据在A列,从第2行开始到第261行torque_eff= xlsread(' E:\ motor.xlsx','sheet2','B2:B261');%导入效率试验转矩数据,B2:B261表示数据在B列,从第2行开始到第261行efficiency_eff= xlsread(' E:\ motor.xlsx','sheet2','C2:C261');%导入效率试验效率数据,C2:C261表示数据在C列,从第2行开始到第261行value_eff= [50 54 58 60 64 68 70 74 78 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94]; %设置效率MAP曲线的标定数值[SPEED,TORQUE]=meshgrid(0:500:9500,0:10:240);%设置横纵坐标轴范围EFFICIENCY= griddata(speed_eff,torque_eff,efficiency_eff,SPEED,TORQUE);%散乱点插值[c,h]=contour(SPEED,TORQUE,EFFICIENCY,value_eff);%生成数据矩阵不带填充的二维等值图clabel(c,h,value_eff);%为二维等值图添加数据标签xlabel('电机转速(rpm)');ylabel('电机扭矩(Nm)');hold onplot(speed_load,torque_load,'r','linewidth',2.5);。
直流电动机效率特性曲线Matlab仿真

直流电动机效率特性曲线Matlab仿真1. 引言直流电动机是一种广泛应用于工业和自动化领域的电动机。
其效率特性曲线是描述电动机在不同负载下效率变化的重要参数。
本文档将介绍如何使用Matlab仿真来绘制直流电动机的效率特性曲线。
2. 理论基础直流电动机的效率特性曲线可以通过其输入功率、输出功率和效率之间的关系来绘制。
输入功率由电动机的电压和电流决定,输出功率由电动机的扭矩和转速决定。
效率可以表示为输出功率与输入功率的比值。
3. Matlab仿真步骤以下步骤将指导您如何使用Matlab仿真绘制直流电动机的效率特性曲线。
3.1 设定参数首先,需要设定直流电动机的参数,包括电动机的电压、电流、扭矩和转速。
这些参数可以根据电动机的规格书或实验数据来确定。
3.2 构建仿真模型使用Matlab的Simulink工具,构建一个包含直流电动机及其控制系统的仿真模型。
模型应包括电动机的电压输入、电流输出和效率计算部分。
3.3 设置仿真参数在Simulink中,设置仿真的时间范围和步长。
确保仿真时间足够长,以观察到电动机在不同负载下的效率变化。
3.4 运行仿真运行仿真并收集电动机在不同负载下的输入功率、输出功率和效率数据。
可以使用Simulink的数据记录器来存储这些数据。
3.5 绘制效率特性曲线使用Matlab的绘图工具,根据收集的数据绘制效率特性曲线。
将效率作为纵轴,负载作为横轴,绘制出电动机的效率特性曲线。
4. 结果分析分析仿真结果,观察电动机在不同负载下的效率变化。
可以得出电动机的最高效率点和效率下降的原因。
5. 结论通过Matlab仿真,可以绘制出直流电动机的效率特性曲线,并分析其在不同负载下的效率变化。
这种方法可以帮助工程师优化电动机的设计和运行,提高电动机的效率和性能。
参考文献[1] 《直流电动机原理与应用》 - 约翰·F·麦克米伦[2] 《电机与拖动》 - 阿尔弗雷德·布劳恩[3] 《Matlab仿真与应用》 - 罗杰·李。
MAP图绘制,附完整matlab代码

MAP图绘制教程与程序代码MAP图全名是等高图图或等势云图,是在普通的二维坐标图上绘制出三维的数据云图,常用于驱动系统效率数据处理,地理位置绘制等三维数据处理(纵轴以不同颜色的云图表示)。
记得看完文章有问题的可以跟我联系。
1、软件:matlab2014b;2、系统:windows下面直接进入正题,看看matlab怎么绘制MAP图,如下以驱动电机MAP图绘制为例讲解。
一、绘图结果展示二、绘图逻辑MAP图实质上就是在二维的坐标图上,以颜色为标准投影出第三维的数据,明白这个原理就好进行下一步了。
1、绘制二维的纵横坐标数据;2、限制云图投影范围;3、在二维坐标上投影等值线。
三、代码原matlab程序代码:%%驱动系统MAP图clcspeed=xlsread(map,'sheet2','C:C');torque=xlsread(map,'sheet2','D:D');[SPEED,TORQUE]=meshgrid(0:20:3000,0:20:2000);n0=0:20:3000;TN=interp1(speed,torque,n0);p=repmat(TN,101,1);ii=find(TORQUE>p);TORQUE(ii)=NaN;SPEED(ii)=NaN;plot(n0,TN,'b--','linewidth',1.5);hold onspeed_L=xlsread(map,'sheet1','B:B');torque_L=xlsread(map,'sheet1','C:C');efficiency_L=xlsread(map,'sheet1','D:D');value_eff=[0.65:0.02:0.98];EFFICIENCY=griddata(speed_L,torque_L,efficiency_L,SPEED,TORQUE,'v4'); [C,h]=contour(SPEED,TORQUE,EFFICIENCY,value_eff);clabel(C,h,value_eff);hold onxlabel('转速/(rpm)');ylabel('转矩/Nm');title('电机map图');四、代码解释及注意事项(1)全文解释%%驱动系统MAP图clcspeed=xlsread(map,'sheet2','C2:C13');%读取命名为map的表格数据torque=xlsread(map,'sheet2','D2:D13');%读取绘制电机外特性的数据%%绘制拟合转矩曲线并限制网格范围[SPEED,TORQUE]=meshgrid(0:20:3000,0:20:2000);%绘图背景的m*n矩阵网格(按图形可自定义)n0=0:20:3000;%限定插值范围与网格一致TN=interp1(speed,torque,n0);%将speed,torque按照n0对应插值,插值方式(speed,torque,'nearest'/‘spline')p=repmat(TN,101,1); %为筛选采样点区域,将TN数据重排为m*n矩阵ii=find(TORQUE>p);%搜索采样区域外数据位置TORQUE(ii)=NaN;%将纵坐标采样区域外网格定义为空值SPEED(ii)=NaN;%将横坐标采样区域外网格定义为空值plot(n0,TN,'b--','linewidth',1.5);%拟合的转矩曲线hold on%%绘制等值图speed_L=xlsread(filename,'sheet1','B2:B132');torque_L=xlsread(filename,'sheet1','C2:C132');efficiency_L=xlsread(filename,'sheet1','D2:D132');%读取效率试验数据value_eff=[0.65:0.02:0.98];%限定效率等值曲线显示条数EFFICIENCY=griddata(speed_L,torque_L,efficiency_L,SPEED,TORQUE,'v4');%将speed_L,torque_L,efficiency_L三维数据对应二维SPEED,TORQUE插值[C,h]=contour(SPEED,TORQUE,EFFICIENCY,value_eff);%生成等值曲线图clabel(C,h,value_eff);hold on%图题和坐标设置xlabel('转速/(rpm)');ylabel('转矩/Nm');title('电机map图');(2)对应的数据格式(3)注意事项A.数据表格必须和.m文件在一个根目录里;B.注意matlab程序中的关于数据参数的更改;C.有什么问题记得跟我联系。
基于MATLAB语言的发动机万有特性曲线的绘制

Plotting of Engine Univer sal Char acter istics Cur ve Based on MATLAB
HUANG Meimei, ZHAO Zhiwei,JIN Hualei, JIA Yantao,SUN Haipeng
低 。其 实 质 是 以 二 维 的 图 形 方 式 表 达 三 维 的 信 息 ,不 直 观
并且难以保证对数据进行深刻分析。
随着 MATLAB 语言的广泛应用,因为其强大的数据处
理和三维曲线绘图功 能 ,可 进 行 工 程 计 算 、建 模 仿 真 和 数
据分析处理等。本文则利用 MATLAB 强大的功能,提出了
[3] 易 雪 梅 ,吴 伶 . 用 MATLAB 语 言 绘 制 发 动 机 万 有 特 性 的 两 种 方法 [J]. 北京汽车, 2005, 5: 33- 35
[4] 李 金 辉 ,徐 立 友 . 基 于 MATLAB 语 言 的 发 动 机 特 性 研 究 [J]. 汽车科技, 2005, 3: 40- 42
参考文献
[1] 杨 丽 娟 ,赵 丹 平 . 基 于 MATLAB 基 础 上 的 发 动 机 万 有 特 性 曲 线的建立 [J]. 汽车节能, 2010, 1: 32- 33
[2] 薛 定 宇 ,陈 阳 泉 . 基 于 MATLAB/Simulink 的 系 统 仿 真 与 应 用 [M]. 北京: 清华大学出版社 .2002
Key words: straight welded pipe, burr, broach, hydraulic system
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
MATLAB和Origin绘制发动机万有特性曲线程序及方法

MATLAB及Origin绘制发动机万有特性曲线实例1.MATLAB绘制发动机万有特性实例(含程序代码)2.Origin绘制发动机万有特性曲线方法(操作步骤)一、MATLAB方法MTALB绘制发动机万有特性曲线需要建立M文件,并在M文件中将程序写入,运行即可,当然也可以通过调用excel数据来绘制万有特性曲线,下面是MATLAB绘制实例,可借鉴修改然后运行。
MATLAB程序如下:clcclear all%不同转速下的燃油消耗率与扭矩的曲线拟合be1=[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);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=interp1(Nw,Ttqw,n0,'spline');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/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二、Origin方法用origin软件绘制发动机万有特性曲线方法一、万有特性数据输入在excel中整理好发动机万有特性数据,主要包括发动机转速、扭矩、燃油消耗率及功率数据。
如何用matlab绘制电机效率map图或发动机万有特性曲线

如何用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的发动机万有特性曲线绘制方法程序

%不同转速下的燃油消耗率与扭矩的曲线拟合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详细程序

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点行矢量。
基于MATLAB的发动机万有特性曲线绘制方法_2_图文(精)

【设计研究】基于 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- , 男 , 山东邹城人 , 在读硕士研究生 , 主要研究方向为动力机械特殊环境适应性。
MAP图绘制,附完整matlab代码

MAP图绘制教程与程序代码MAP图全名是等高图图或等势云图,是在普通的二维坐标图上绘制出三维的数据云图,常用于驱动系统效率数据处理,地理位置绘制等三维数据处理(纵轴以不同颜色的云图表示)。
记得看完文章有问题的可以跟我联系。
1、软件:matlab2014b;2、系统:windows下面直接进入正题,看看matlab怎么绘制MAP图,如下以驱动电机MAP图绘制为例讲解。
一、绘图结果展示二、绘图逻辑MAP图实质上就是在二维的坐标图上,以颜色为标准投影出第三维的数据,明白这个原理就好进行下一步了。
1、绘制二维的纵横坐标数据;2、限制云图投影范围;3、在二维坐标上投影等值线。
三、代码原matlab程序代码:%%驱动系统MAP图clcspeed=xlsread(map,'sheet2','C:C');torque=xlsread(map,'sheet2','D:D');[SPEED,TORQUE]=meshgrid(0:20:3000,0:20:2000);n0=0:20:3000;TN=interp1(speed,torque,n0);p=repmat(TN,101,1);ii=find(TORQUE>p);TORQUE(ii)=NaN;SPEED(ii)=NaN;plot(n0,TN,'b--','linewidth',1.5);hold onspeed_L=xlsread(map,'sheet1','B:B');torque_L=xlsread(map,'sheet1','C:C');efficiency_L=xlsread(map,'sheet1','D:D');value_eff=[0.65:0.02:0.98];EFFICIENCY=griddata(speed_L,torque_L,efficiency_L,SPEED,TORQUE,'v4'); [C,h]=contour(SPEED,TORQUE,EFFICIENCY,value_eff);clabel(C,h,value_eff);hold onxlabel('转速/(rpm)');ylabel('转矩/Nm');title('电机map图');四、代码解释及注意事项(1)全文解释%%驱动系统MAP图clcspeed=xlsread(map,'sheet2','C2:C13');%读取命名为map的表格数据torque=xlsread(map,'sheet2','D2:D13');%读取绘制电机外特性的数据%%绘制拟合转矩曲线并限制网格范围[SPEED,TORQUE]=meshgrid(0:20:3000,0:20:2000);%绘图背景的m*n矩阵网格(按图形可自定义)n0=0:20:3000;%限定插值范围与网格一致TN=interp1(speed,torque,n0);%将speed,torque按照n0对应插值,插值方式(speed,torque,'nearest'/‘spline')p=repmat(TN,101,1); %为筛选采样点区域,将TN数据重排为m*n矩阵ii=find(TORQUE>p);%搜索采样区域外数据位置TORQUE(ii)=NaN;%将纵坐标采样区域外网格定义为空值SPEED(ii)=NaN;%将横坐标采样区域外网格定义为空值plot(n0,TN,'b--','linewidth',1.5);%拟合的转矩曲线hold on%%绘制等值图speed_L=xlsread(filename,'sheet1','B2:B132');torque_L=xlsread(filename,'sheet1','C2:C132');efficiency_L=xlsread(filename,'sheet1','D2:D132');%读取效率试验数据value_eff=[0.65:0.02:0.98];%限定效率等值曲线显示条数EFFICIENCY=griddata(speed_L,torque_L,efficiency_L,SPEED,TORQUE,'v4');%将speed_L,torque_L,efficiency_L三维数据对应二维SPEED,TORQUE插值[C,h]=contour(SPEED,TORQUE,EFFICIENCY,value_eff);%生成等值曲线图clabel(C,h,value_eff);hold on%图题和坐标设置xlabel('转速/(rpm)');ylabel('转矩/Nm');title('电机map图');(2)对应的数据格式(3)注意事项A.数据表格必须和.m文件在一个根目录里;B.注意matlab程序中的关于数据参数的更改;C.有什么问题记得跟我联系。
第5章 发动机及驱动力曲线绘制

Matlab模拟直流电动机特性曲线

Matlab模拟直流电动机特性曲线简介本文档旨在介绍如何使用Matlab模拟直流电动机的特性曲线。
直流电动机是一种常见的电动机类型,通过控制电流和电压可以实现不同的运行特性。
通过模拟特性曲线,我们可以更好地了解电动机的性能和工作情况。
准备工作在开始之前,需要确保已安装Matlab软件,并具备基本的Matlab编程知识。
另外,需要了解直流电动机的基本原理和特性。
模拟特性曲线的步骤以下是使用Matlab模拟直流电动机特性曲线的步骤:1. 导入必要的库和数据:首先,在Matlab中导入需要使用的库和电动机的基本参数数据。
2. 定义电动机模型:根据电动机的特性方程,定义电动机的模型,包括转矩方程、速度方程和电流方程。
3. 设置输入条件:根据需要模拟的特性曲线类型,设置输入条件,如电压、负载等。
4. 模拟电动机运行:使用定义的电动机模型和设置的输入条件,通过Matlab进行电动机运行的模拟。
5. 绘制特性曲线:根据模拟结果,使用Matlab的绘图功能,绘制电动机的特性曲线。
注意事项在进行电动机特性曲线的模拟时,需要注意以下事项:- 确保输入的参数和条件与实际电动机相符,以获得准确的模拟结果。
- 选择合适的模拟时间和步长,以保证模拟结果的准确性和稳定性。
- 模拟过程中可能出现的错误和异常情况需要进行处理和排除,以确保模拟的有效性。
结论通过使用Matlab进行直流电动机特性曲线的模拟,我们可以更好地了解电动机的性能和工作情况。
这有助于电动机的设计、优化和控制。
同时,我们还需要注意模拟过程中的参数设置和异常情况处理,以确保模拟结果的准确性和可靠性。
以上是关于如何使用Matlab模拟直流电动机特性曲线的简要介绍,希望对您有所帮助。
如有疑问,请随时与我联系。
Matlab对直流电动机特性曲线的仿真模拟

Matlab对直流电动机特性曲线的仿真模
拟
介绍
本文档旨在介绍如何使用Matlab对直流电动机的特性曲线进行仿真模拟。
通过仿真模拟,我们可以更好地了解直流电动机的性能和特性,并进行相关分析。
步骤
1. 导入必要的库和数据
在开始之前,我们需要导入Matlab所需的相关库和数据。
确保你已经安装了Matlab并且具备相关的电动机特性数据。
2. 定义电动机参数
根据你所拥有的电动机特性数据,定义电动机的相关参数,包括额定电压、额定电流、额定转速等。
3. 编写模拟代码
使用Matlab编写模拟代码,根据电动机的参数和特性数据,
模拟电动机的运行过程。
可以使用电动机的等效电路模型来进行仿真。
4. 运行模拟
运行编写好的模拟代码,观察仿真结果。
可以绘制电动机的转
速-负载曲线、转矩-负载曲线等,以便进一步分析电动机的性能。
5. 分析结果
根据模拟结果进行分析,了解电动机在不同负载下的性能表现。
可以计算电动机的效率、功率因素等指标,进一步评估电动机的性能。
注意事项
- 在进行仿真模拟时,需要确保电动机的参数和特性数据准确
无误。
- 在编写模拟代码时,遵循Matlab的语法规范,确保代码的正
确性和可读性。
- 在分析结果时,根据实际需求选择合适的指标和方法,以得
到准确的结论。
以上是关于使用Matlab对直流电动机特性曲线进行仿真模拟的简要介绍和步骤。
希望对你有所帮助!。
基于matlab的电机效率map图绘制方法

基于matlab的汽车驱动电机效率map 图绘制*摘要:电机效率map图已成为电机耗电性能分析的重要工具,是电动汽车经济性分析及整车性能匹配不可缺少的部分。
本文主要基于matlab软件,针对电机效率map图绘制提供可行的思路及方法。
关键词:汽车驱动电机,电机效率map图,matlab0 前言新能源汽车的兴起,使得车企对车用电机的研发力度越来越大。
而汽车的续航里程,已经成为纯电动汽车发展的瓶颈。
研发电能利用效率高,耗电少的电机,是电动汽车提高续航里程的重要方向。
效率map 图作为电机性能分析的重要工具,其绘制方法多样。
而基于matlab强大的绘图及数据处理能力,利用其绘制电机效率map图,将大大提升绘图速度,简化绘图流程。
1 MATLAB简介Matlab是一款功能非常强大的软件,集数据可视化,算法开发,数据分析处理,模型仿真等功能于一身,广泛应用于工业领域。
联合simulink及第三方软件,能搭建出复杂的模型,拥有十分强大的仿真能力。
因此,matlab还被广泛应用于自动控制,系统仿真,图形分析,数理统计,人工智能,金融系统等领域。
2 电机效率MAP图简介电机效率map图,是由电机转速,转矩及效率构成的三维图形,类似于地理学中的等高线绘制。
其中,X坐标为电机转速,Y坐标为电机扭矩,Z坐标为电机效率值。
这样,便可在图上清楚地看出电机在不同工况区间下的效率分布情况。
因此,电机效率map图是电机动力性能,经济性能分析的重要工具。
3 电机效率MAP图绘制流程分析本文所介绍的基于matlab软件绘制电机效率map 图的方法主要分为三个方面:数据读取,数据处理及图形绘制输出。
3.1 数据读取绘制电机效率map图前,需先采集电机的转速,扭矩,效率。
一般要求是均匀选取不同的转速点,并在此基础上采集不同的扭矩点,同时计算各个工况点下的电机效率值。
为了能分析电机的工况范围,取点需覆盖电机的外特性点。
以excel为例,matlab读取xls文件需使用xlsread 函数。
MATLAB绘制电动汽车驱动电机MAP详细步骤方法

电动汽车驱动电机MAP绘制方法电机MAP绘制是基于实验参数来实现的,在试验完成后,将数据整理好,按照如下详细步骤来绘制如下电机MAP图,三维图可以在Simulink中加载look-up二维表,然后点击三维坐标实现空间三维图。
附件内含有如下参数:附件1电机试验参数,不同转速扭矩下对应效率表;附件2电机外特参数表;附件3绘制电机MAP程序,采用插值绘制电机效率MAP图具体步骤如下所示。
1.先做电机实验得到各个转速下不同扭矩对应的电机效率图,如下表附件1所示;将该表格该贴到excel中sheet2页面;2.确定电机外特性图,外特性电机转速扭矩对应关系,将外特性转速扭矩粘贴到excel中sheet1页面;见附件2;3.这个表格中含有sheet1和sheet2两个页面,将该表格存在任何一个位置(无中文路径),如存在E盘目录下(E:\motor\);4.点开MATLAB,新建一个M文件,打开后将附件3程序粘贴上,点击红色圈圈运行即可生产带外特性的电机效率图。
5.附件提供的参数不全仅供参考,具体画图还得用你自己做实验的数据来绘制,只是提供了绘制电机MAP的方法。
附件1表名:motor转速扭矩(Nm)效率(%)(r/min)500 11.3 56.6500 21.1 64.7500 30.8 69.1500 40.3 70.5500 50.6 71.1500 60.3 71.5500 70.0 71.2500 80.4 71.1500 90.2 70.3500 100.1 69.7500 110.0 68.7500 120.0 68.2500 129.7 67.8500 140.1 67.2附件2:电机外特性曲线程序附件3clear;clc;speed_load= xlsread('E:\ motor.xlsx','sheet1','A2:A22');%导入加载试验外特性转速数据,A2:A22表示数据在A列,从第2行开始到第22行torque_load= xlsread(' E:\ motor.xlsx','sheet1','B2:B22');%导入加载试验外特性扭矩数据,B2:B22表示数据在B列,从第2行开始到第22行speed_eff= xlsread(' E:\ motor.xlsx','sheet2','A2:A261');%导入效率试验转速数据,A2:A261表示数据在A列,从第2行开始到第261行torque_eff= xlsread(' E:\ motor.xlsx','sheet2','B2:B261');%导入效率试验转矩数据,B2:B261表示数据在B列,从第2行开始到第261行efficiency_eff= xlsread(' E:\ motor.xlsx','sheet2','C2:C261');%导入效率试验效率数据,C2:C261表示数据在C列,从第2行开始到第261行value_eff= [50 54 58 60 64 68 70 74 78 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94]; %设置效率MAP曲线的标定数值[SPEED,TORQUE]=meshgrid(0:500:9500,0:10:240);%设置横纵坐标轴范围EFFICIENCY= griddata(speed_eff,torque_eff,efficiency_eff,SPEED,TORQUE);%散乱点插值[c,h]=contour(SPEED,TORQUE,EFFICIENCY,value_eff);%生成数据矩阵不带填充的二维等值图clabel(c,h,value_eff);%为二维等值图添加数据标签xlabel('电机转速(rpm)');ylabel('电机扭矩(Nm)');hold onplot(speed_load,torque_load,'r','linewidth',2.5);。
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 )。
基于MATLAB基础上的发动机万有特性曲线的建立

基于MATLAB基础上的发动机万有特性曲线的建立
杨丽娟;赵丹平
【期刊名称】《交通节能与环保》
【年(卷),期】2010(000)001
【摘要】发动机性能的好坏直接影响着整车运行的平顺性、安全性、稳定性等,要全面评价发动机性能,万有特性曲线则是一个很好的工具.万有特性曲线是以发动机转速为横坐标,以扭矩或平均有效压力为纵坐标,在坐标系内画出等燃油消耗率曲线和等功率曲线[1].绘制万有特性曲线的方法有很多种,MATLAB语言是其中之一.本文利用强大的MATLAB绘图工具,绘制了发动机的万有特性曲线,经分析,该方法是一个有效的精确度较高的方法.
【总页数】3页(P32-33,48)
【作者】杨丽娟;赵丹平
【作者单位】内蒙古工业大学,内蒙古,赤峰,010051;内蒙古工业大学,内蒙古,赤峰,010051
【正文语种】中文
【相关文献】
1.基于MATLAB的气动马达万有特性曲线绘制方法研究 [J], 曾鸣;王葆葆;张仕民;王文明
2.基于MATLAB语言的发动机万有特性曲线的绘制 [J], 黄美美;赵志伟;靳华磊;贾延涛;孙海鹏
3.基于MATLAB的发动机万有特性曲面拟合 [J], 黄风清
4.基于MATLAB的发动机万有特性曲线绘制方法 [J], 周广猛;郝志刚;刘瑞林;陈东;管金发;张春海
5.基于LabVIEW的发动机万有特性曲线建立 [J], 施水娟;李文文
因版权原因,仅展示原文概要,查看原文内容请购买。
MATLAB绘制电机效率MAP图

EFFICIENCY= griddata(speed_eff,torque_eff,efficiency_eff,SPEED,TORQUE);
%
散乱点插值
[c,h]=
contour(SPEED,TORQUE,EFFICIENCY,value_eff);
%生
成数据矩阵不带填充的二维等值图
clabel(c,h,value_eff); %为二维等值图添加数据标签
%导入
torque_eff= xlsread('C:\Users\lihaib\Desktop\motormove5000.xlsx','sheet2','B2:B261'); 率试验转矩数据
%导入效
efficiency_eff= xlsread('C:\Users\lihaib\Desktop\motormove5000.xlsx','sheet2','C2:C261'); 验效率数据
MATLAB 绘制电机效率 MAP
利用 MATLAB 编辑的 M 文件语言,可以运行生产如下电机效率 MAP 及三维图。如下给 出两个程序案例,可修改使用。
方法 1.
clear;
clc;
speed_load= xlsread('C:\Users\lihaib\Desktop\motormove5000.xlsx','sheet1','A2:A22'); 载试验外特性转速数据
%导入效率试
value_eff= [50 54 58 60 64 68 70 74 78 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94]; %设置 效率 MAP 曲线的标定数值
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如何用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()函数用于绘制带填充的二维等值线图。
即在contour()函数绘制的等值线图上,将相邻的等值线之间用同一种颜色填充,不相邻的等值线之间填充有不同的颜色,填充用的颜色决定于当前的色图颜色。
函数contourf()的调用格式同contour()。
3.clabel()函数
❑clabel(c,h):在句柄h指定的等值线图上的等值线上添加数据标签c。
❑clabel(c,h,v):在指定的等值线值v上显示数据标签c。
❑clabel(c,h,'manual'):手动方式设置等值线的数据标签。
当运行该命令后,等值线图中将出现十字连线,用户用鼠标左键或空格键在最接近指定位置上放置数据标签,回车键结束该操作。
❑clabel(c):在当前的等值线图上添加数据标签c。
❑clabel(c,v):在当前的等值线图上添加数据标签c,并指定数据标签所加的等值线值v。
❑clabel(c,'manual'):用户手动方式为当前等值线图添加数据标签。
另外,函数ezcontour()和ezcontourf()可以直接绘制函数表达式的等值线图,感兴趣的读者可以查阅MA TLAB的相关帮助文档。
红字是我自己的数据。
[c,h]=contour(speed,torque,efficient,28)
clabel(c,h,[92.046,91.115,90.184,89.253,88.322,86.460,84.598,81.806,80.874,74.356,70.632])
x=500:5:2000;
y=172;
hold on
plot(x,y)
x1=2000:5:6000;y1=0.000002708*x1.^2-0.04766*x1+256.488;
Hold on
Plot(x1,y1)
title('电机效率map图(%)')
【例5.32】等值线图的绘制。
z=peaks; %函数peaks用于生成图形绘制的示例数据
[c,h] = contour(z); %生成数据矩阵z的不带填充的二维等值线图
title('一般二维等值线图的绘制')
clabel(c,h); %为二维等值线图添加数据标签
colorbar %添加等值线图的颜色条
title('一般二维等值线图的绘制(添加数据标签)')
figure;
v=[min(z(:)):2:max(z(:))];
[c,h] = contourf(z,v); %绘制带填充的二维等值线图,并设置等值线向量v
clabel(c,h); %为二维等值线图添加数据标签
colorbar %添加等值线图的颜色条
title('带填充的二维等值线图的绘制')
figure;
[c,h] = contourf(z,5); %绘制带填充的二维等值线图,并设置等值线条数为5
title('二维等值线图手动添加等值线标签')
clabel(c,h,'manual'); %为二维等值线图手动添加数据标签
运行上述程序,显示如图5.44所示的图形。
图5.44(a)等值线图的绘制图5.44(b)等值线图的绘制
图5.44(c)等值线图的绘制图5.44(d)等值线图的绘制
看到等值线图是不是很惊喜
我们再画map图时,需要定义等维数3个矩阵,
speed=[ ];
torque=[];
efficient[];
[c,h]=contour(speed,torque,efficient,28);//因为我发现28比较好看。
clabel(c,h,[92.046,91.115,90.184,89.253,88.322,86.460,84.598,81.806,80.874,74.356,70.632]) 后面就是细节啦。
下面是没经过处理的结果。