1109003457 发表于 2016-9-24 00:51

电机MAP图绘制之—Matlab

RT,matlab这款软件我从没用过,说实话,我都不知道怎么做出来的,更别说这图对不对了{:1_562:} ,这是我用MATLAB做的电机效率Map图,请大神指点下:

问题1.这图能对吗,别人做的都是一圈一圈的线,我的这个和origin做的不一样呢,和其他大神做的就更不相同了,外观不好看;

问题2. 程序首次运行可以,第二次就出现错误:(我用的版本是2010b),关掉软件后再打开,还是首次可以。
      ??? Error using ==> xlsread at 277
      Data range is invalid.
       Error in ==> TLBYO at 1
      speed_eff=xlsread('G:\Matlab7 data\tldata.xls','TL','A2:A111')
      有人说是版本的问题,可是同一个软件,我同事的电脑上就不会错误,我的就错误,很奇怪,应该怎么解决呢,其已经在全英文路径下,并且文件中把中文也删掉了。

问题3. 是最主要的问题,我看有人做的map图是三维的,具体怎么做呢,看了不少帖子也没搞懂,期待大神写个教程{:1_494:} ?


说明:如果有作图的,为了讨论的一致性,请大家以下面链接中的2楼的附件数据讨论。
下面链接是其他方法绘制map图方法汇总的讨论帖和其他人发的关于map图的帖子
https://bbs.simol.cn/forum.php?mo ... p;extra=#pid1942994

Nephology 发表于 2016-9-24 09:07

你这个MAP图肯定不对的。用matlab做效率MAP要知道不同激励大小下,转速和效率、转矩和效率的关系曲线,然后用contour函数做等值线。最后附上我自己写的matlab出map图的程序。x=a(:,1);
y=a(:,2);
z=a(:,3);
=meshgrid(,);
Z = griddata(x,y,z,X,Y);
pcolor(X,Y,Z);
shading interp;hold on;colorbar;
=contour(X,Y,Z,50);
A=xlabel('时间 (s)');
B=ylabel('定子三相电压 (V)');
set(A,'Fontangle','normal','FontName','宋体','FontSize',15);
set(B,'Fontangle','normal','FontName','宋体','FontSize',15);
set(findobj('FontSize',10),'FontSize',15);
clabel(C,H,'fontsize',10,'color','k');

1109003457 发表于 2016-9-24 11:19

本帖最后由 1109003457 于 2016-9-24 11:27 编辑

Nephology 发表于 2016-9-24 09:07
你这个MAP图肯定不对的。用matlab做效率MAP要知道不同激励大小下,转速和效率、转矩和效率的关系曲线,然后 ...

非常感谢您了,能在程序后面附上注释吗,我完全是硬套的,matlab我现在一点不懂{:1_494:}

我的是实验测试的三种数据,转速,转矩,效率,一共110个点

Nephology 发表于 2016-9-24 14:59

你可以上传一下你的实验数据,我帮你用matlab出一下图看看。

1109003457 发表于 2016-9-24 15:08

本帖最后由 1109003457 于 2016-9-24 16:21 编辑

Nephology 发表于 2016-9-24 14:59
你可以上传一下你的实验数据,我帮你用matlab出一下图看看。

上传数据了,在下面的连接的2楼:
https://bbs.simol.cn/forum.php?mod=viewthread&tid=157568&page=1#pid1943197

这是我的原来的程序:
speed_eff=xlsread('G:\Matlab7 data\tldata1.xls');
torque_eff=xlsread('G:\Matlab7 data\tldata2.xls');
efficiency_eff=xlsread('G:\Matlab7 data\tldata3.xls');
value_eff=;
=meshgrid(10:500:10000,0:20:300);
EFFICIENCY=griddata(speed_eff,torque_eff,efficiency_eff,SPEED,TORQUE,'v4');
=contour(SPEED,TORQUE,EFFICIENCY,value_eff);
clabel(c,h,value_eff);

这是我参照你的程序后改的程序:

x=xlsread('G:\Matlab7 data\tldata1.xls');
y=xlsread('G:\Matlab7 data\tldata2.xls');
z=xlsread('G:\Matlab7 data\tldata3.xls');
value_eff=;
=meshgrid(,);
EFFICIENCY=griddata(x,y,z,SPEED,TORQUE);
pcolor(SPEED,TORQUE,EFFICIENCY);
shading interp;hold on;colorbar;
=contour(SPEED,TORQUE,EFFICIENCY,value_eff);
clabel(c,h,value_eff);



还有就是把=contour(SPEED,TORQUE,EFFICIENCY,value_eff);改为=contour(SPEED,TORQUE,EFFICIENCY,50);以后,图上就没有数字了

gonglipeng16 发表于 2016-9-27 16:19

撸主,麻烦请问一下,我试着做了一下,那一圈圈的等高线怎么能够显示出来呢,有没有什么办法

1109003457 发表于 2016-9-28 09:07

gonglipeng16 发表于 2016-9-27 16:19
撸主,麻烦请问一下,我试着做了一下,那一圈圈的等高线怎么能够显示出来呢,有没有什么办法

你这个是着色了,等高线看不出来,去掉颜色就显示等高线了

只言片语 发表于 2016-9-29 22:50

楼主,你的数据在哪里,我也去仿真一下

huyaohua518918 发表于 2016-10-13 18:02

谢谢分享,一直在学着画!

1109003457 发表于 2016-10-25 09:09

本帖最后由 1109003457 于 2016-10-25 09:10 编辑

只言片语 发表于 2016-9-29 22:50
楼主,你的数据在哪里,我也去仿真一下




上传数据了,在下面的连接的2楼:
https://bbs.simol.cn/forum.php?mod=viewthread&tid=157568&page=1#pid1943494

jyn2016 发表于 2016-10-25 11:11

楼主,你这电机效率高的有点儿离谱了吧!

1109003457 发表于 2016-12-21 18:01

数据有些问题,有些我自己补充,编的

vendetta2577 发表于 2017-1-9 10:27

gonglipeng16 发表于 2016-9-27 16:19
撸主,麻烦请问一下,我试着做了一下,那一圈圈的等高线怎么能够显示出来呢,有没有什么办法

很喜欢你的图,请教下怎么做的,能不能一起讨论下

Eragon2016 发表于 2017-4-13 09:52

关于MAXWELL或matlab做MAP图,各位大神能否出个小步骤教程啊,初学者很吃力啊

李东明 发表于 2017-7-13 10:34

你好楼主,我想问下如何把你数据带入程序里啊,没看出来怎么带入。

autumnwater 发表于 2017-9-12 19:52

李东明 发表于 2017-7-13 10:34
你好楼主,我想问下如何把你数据带入程序里啊,没看出来怎么带入。

用下面的命令就可以了啊

x=xlsread('G:\Matlab7 data\tldata1.xls');
y=xlsread('G:\Matlab7 data\tldata2.xls');
z=xlsread('G:\Matlab7 data\tldata3.xls');

38738106 发表于 2018-5-11 19:58

顶一下,感谢楼主了。。。。。。。。。。!

学motor呀 发表于 2018-10-28 20:55

楼主,你的数据是在哪里呢

沧海萧歌 发表于 2019-5-19 22:43

请问一下,您的110个点是通过实际的实验的出来的还是通过仿真,我现在想用jmag做效率map图,但是不知道需要什么数据。

outstanding2015 发表于 2019-5-31 13:24

哈哈,没想到这么几年过去了,那个号(gonglipeng16)发的信息还在。直到如今,还非常感谢大神的分享,这个程式非常棒!
页: [1] 2
查看完整版本: 电机MAP图绘制之—Matlab