用MATLAB绘制电机效率MAP图

今天给大家介绍如何用MATLAB绘制电机效率MAP图。所谓效率MAP图,就是电机(和控制器)在给定转速和转矩下的效率分布。电机(和控制器)的效率是电机转速和输出转矩的二元函数,在三维坐标中是一个曲面。当我们用不同值的效率平面(平行于T-n平面的平面)去“切”这个曲面,并将切线投影到T-n平面上,即是电机的效率MAP图。这与地理上的等高线图非常相像,所以我们用contour函数来绘制电机效率MAP图。

操作方法

  • 01

    数据准备 以一台2kW无刷直流电机为例,效率试验和加载试验获得的数据如下图,为常见的xls格式(即Excel表格),加载试验的数据主要用于绘制电机的机械特性。

  • 02

    数据导入 将试验数据导入MATLAB,并生成转速向量、转矩向量和效率向量。注意,三个向量的长度必须一致。这里我们用到xlsread函数。 【参考指令】 speed_load=xlsread('location.xls','sheet1','A2:A14');     %导入加载试验转速数据 torque_load=xlsread('location.xls','sheet1','B2:B14');    %导入加载试验转矩数据 speed_eff=xlsread('location.xls','sheet2','A2:A1492');   %导入效率试验转速数据 torque_eff=xlsread('location.xls','sheet2','B2:B1492');   %导入效率试验转矩数据 efficiency_eff=xlsread('location.xls','sheet2','C2:C1492');     %导入效率试验效率数据 解释:“location”为加载试验数据的保存路径;“sheet1”为数据所在的页;“A2:A14”为转速数据所在的单元格;句尾分号可加可不加,若不加,MATLAB将在指令窗口中输出各向量的全部值,方便检查。

  • 03

    设置效率曲线数值向量 【参考指令】 value_eff=[70, 75, 80,81, 84,90]; 解释:value_eff向量用于设置效率MAP图中各曲线的标定数值,作为contour函数的调用参数。向量值和长度根据实际电机设置,向量维数越高,MAP曲线越密。

  • 04

    拟合机械特性曲线 【参考指令】 t1=polyfit(speed_load, torque_load,1) 解释:polyfit函数用于拟合转速和转矩的关系。直流无刷电机的机械特性是一条直线,所以维数设为“1”,具体用法参见MATLAB的Help文档。输入该指令后按“Enter”键,得到两个参数-0.0782和90.1554,即可得到电机的机械特性函数Tor=-0.0782*spd+90.1554。

  • 05

    编写机械特性函数 新建一个M文件,建立机械特性函数 【参考指令】 function Tor=T(spd) Tor=-0.0782*spd+90.1554; end 并保存在MATLAB的文档路径中,一般为“C:\Users\用户名\Documents\MATLAB”。这时,MATLAB的Current Directory中就会出现一个新的M文件“T”,供MATLAB调用。

  • 06

    绘制机械特性曲线 【参考指令】 %根据实际测量数据,设置拟合的机械特性曲线的范围 spd_high=1124:5:1153;         %设置高转速范围 spd_low=0:5:697;                 %设置低转速范围 figure %绘制低转速机械特性 Tor=T(spd_low); plot(spd_low,Tor,'r--','linewidth',3); hold on %绘制高转速机械特性 Tor=T(spd_high); plot(spd_high,Tor,'r--','linewidth',3); hold on %绘制试验机械特性 plot(speed_load,torque_load,'r--','linewidth',3); hold on 得到下图的机械特性曲线

  • 07

    绘制效率MAP 这里用到contour函数,具体参见Help文档。 【参考指令】 [SPEED,TORQUE]=meshgrid(0:10:1200,0:1:100);                  %标定坐标范围 EFFICIENCY=griddata(speed_eff,torque_eff,efficiency_eff,SPEED,TORQUE,'v4');   %插值 [c,h]=contour(SPEED,TORQUE,EFFICIENCY,value_eff);              %MAP图

  • 08

    标定效率数值 【参考指令】 clabel(c,h,value_eff);

  • 09

    【设定坐标、标题等】 可用指令设置,也可以在figure的insert菜单中直接设置。

  • 10

    其他 电机效率MAP图通常只要求机械特性以下的部分,这个可以截图到各种图片处理软件进行处理,最后得出的电机效率MAP图见下图。

(0)

相关推荐

  • 怎样用MATLAB绘制三维网格图与曲面图

    三维网格图与曲面图的绘制非常相似,调用格式也近乎一致.绘图之前先要形成字变量的格点矩阵,命令为[x,y]=meshgrid(x,y).在计算得到变量 z 的值之后,就可以作图.对网格图曲面图形的格式分 ...

  • matlab如何画柱状图?matlab绘制柱状图教程

    在很多的报告、年鉴等中我们常看到柱状图。柱状图也称条图、长条图,是一种以长方形的长度为变量的表达图形的统计报告图,只有一个变量,通常利用于较小的数据集分析。下面我就向大家介绍一下如何画散点图。 工具/ ...

  • 如何用matlab绘制实验统计曲线图

    matlab软件是科研.学习的利器,利用matlab的功能,可以完成拆线图的绘制,美观而大方,而且可以自动计算.更改数值,深得科研人员.老师及学生的欢迎.本介绍如何用matlab绘制曲线图. 操作方法 ...

  • MATLAB绘制云图、等值线图

    当我们有一堆离散点的数据,希望通过云图或等值线图的形式直观地体现数据的分布特征,而且我们需要绘制的区域有时是矩形的,有时是圆形的,或是其他形状,这里将介绍不同轮廓下云图的绘制. 在矩形区域绘制云图 0 ...

  • Matlab绘制空间曲线图教程

    日常研究做实验会产生大量的数据,如何将这些数据有效直观地展现给别人呢?方法很多,本讲述使用MATLAB绘制曲线图. 操作方法 01 空间直角坐标系中的三维图,是实际中最常见图像,在MATLAB中我们可 ...

  • 在Excel2010中绘制简单的甘特图

    甘特图(Gantt Chart)又称横道图,它通过图示形象地表示特定项目的活动顺序与持续时间。在Excel 2003中,可用用自定义图表类型中的“悬浮的条形图”来快速绘制简单的甘特图,而在Excel ...

  • Excel怎么绘制漂亮的折线图

    Excel怎么绘制漂亮的折线图 说个笑话:诸葛亮就曾经有这样的感叹:"临表涕零,不知所云",意思就是拿着一张Excel图表,因为看不懂这个图表要表达啥意思,不由得鼻涕眼泪的哭了起来 ...

  • excel股价图怎么做?Excel中绘制直观的股价图教程

    如何用Excel制作股价图?K线图是股市重要的技术分析工具,Excel中也有内置的专门绘制股价图的模板.在日常工作中,也可以利用股价走势来展现业务数据变化.下面小编就给大家分享Excel中绘制直观的股 ...

  • matlab如何在同一幅图上绘图

    在函数特性分析时,常需要在同一幅图像中绘制多条曲线,那么如何实现呢?请看下文: 操作方法 01 绘制图像前首先需要得到曲线数据,如下所示即为计算过程: % calculate the first li ...