做电动车经济性仿真时,我们必须用到电机效率Map。手里没有,怎么办?凭经验定义一个Map,再画出来吧。所以今天的内容来了:怎么用Matlab画一个实用而不失优美的电机效率呢?
有人喜欢二维Map,看着直观;有人喜欢三维Map,看着带感。不急,我们一个一个来。
01
![a6a5b7eed0aac2f991d2ecc3ae804bb6.gif](https://i-blog.csdnimg.cn/blog_migrate/bd566675249328670d2bf577bd72d85e.gif)
怎么画二维电机效率Map?
首先,要有数据。凭着多年的工程经验,很容易造出一个电机效率数据,运行下图代码。
![5c0273d095286ae354062c90ee6869ae.png](https://i-blog.csdnimg.cn/blog_migrate/d2ee797055dfee8773f9ea40ac1c7c4a.png)
然后,我们开始画效率的等高线,这里会用到一个关键函数contour。
[c,h]=contour(X,Y,Z,n),X、Y、Z分别表示横轴数值、纵轴数值、对应高度的数值,n用于定义等高线的数量,c用于保存等高线的数据,h是等高线的句柄。需要注意的是,X、Y、Z三个矩阵必须维度相同。
所以需要对上面的TrqEff、SpdEff做处理,让他们从向量变为矩阵,便于后面contour调用,这里会用到函数meshgrid。
[X,Y] = meshgrid(x,y),X的每一行数值都等于x的值,Y的每一列数值都等于y的值。
接着运行下图代码:
![dcce6e2afc568df16965c625bfada5e4.png](https://i-blog.csdnimg.cn/blog_migrate/07dd40975672d1df97ecf73b729c69c4.png)
其中clabel用于给等高线插入标签,一般与contour配合使用。运行完代码后可以得到以下结果:
![a69a87f1f432937ba88b06ff1ef872fa.png](https://i-blog.csdnimg.cn/blog_migrate/f6f0b45aed9c8c8da447d688008d1d55.png)
电机效率Map的基本样子出来了,但是看起来感觉有些不舒服,小数点后面都到6位了,能不能只保留两位小数?
于是,我们换了一种打标签的方式。
运行以下代码:
![f4692637a57cb6c6d14339d209bede52.png](https://i-blog.csdnimg.cn/blog_migrate/664d221700b427f904d022a69226b280.png)
得到下面的结果:
![9a8137e67dfbb8330d182509f05f9f07.png](https://i-blog.csdnimg.cn/blog_migrate/0c6481426025721746ef5a5f6a09e0ab.png)
小数点后面的位数变少了,舒服了一些。不过好像还是缺点什么,别人的图都是渐变颜色的,我们怎么能没有呢?
于是,我们又换了一个更牛逼的函数contourf,它自带光环。运行以下代码:
![27a13b6ab1a8b91bf902ddbaa85770d9.png](https://i-blog.csdnimg.cn/blog_migrate/009b5011e0ac7065be1074531adf31f1.png)
得到下面的结果:
![d19068c9c3d129cc7c1e82cf3a3a6331.png](https://i-blog.csdnimg.cn/blog_migrate/00a56abdc931631d38953b71e97bd23f.png)
渐变颜色出来了,可以打开edit菜单下的Colormap功能,把填充颜色调整的更好看一些。再把外特性曲线和坐标轴加上,二维的电机效率Map就基本可以了。
![5b41796b96b4474ce4d04aa8c0b99954.png](https://i-blog.csdnimg.cn/blog_migrate/29a000f9c0460957317c654ceb1d750d.png)
02
![a6a5b7eed0aac2f991d2ecc3ae804bb6.gif](https://i-blog.csdnimg.cn/blog_migrate/bd566675249328670d2bf577bd72d85e.gif)
怎么画三维电机效率Map?
画三维Map的核心函数是surf。
Surf(X,Y,Z),X、Y、Z分别表示X轴数值、Y轴数值、Z轴数值。需要注意的是,X、Y、Z三个矩阵必须维度相同。
运行以下代码:
![b9406a0b1859267b489ba9164c857f1c.png](https://i-blog.csdnimg.cn/blog_migrate/d21297a32ffddef402cb7c05a318c262.png)
得到下面的三维图:
![857b6434270711cc2b9ebe836bd82686.png](https://i-blog.csdnimg.cn/blog_migrate/7b41b0a8c978015d4a3767d4f6f37711.png)
曲线不太光滑,看起来不是太友好。我们给的数据点太少,所以考虑用差值来解决。
运行以下代码:
![ef8971276eb57fa5a3f89e68fc8f40f3.png](https://i-blog.csdnimg.cn/blog_migrate/8b121d0bcdbc8d97a37ef28dfe0de3a1.png)
再手动调整下颜色就可以得到下面的三维图,效果还可以。
![c97ec392d3789c2e6a9d5e3a0371f610.png](https://i-blog.csdnimg.cn/blog_migrate/12664fd216eaf7cf7fe857b24d8be46b.jpeg)
以上,用Matlab画了一个二维、一个三维电机效率Map,欢迎交流。
转发文章至朋友圈可获得源代码喔。
![c3a00e18e5575c5c7230d94b8d48150d.gif](https://i-blog.csdnimg.cn/blog_migrate/0474a8817b87fa3a11cf149af9111e93.gif)
往期精选
2019/02
Simulink:
1、Simulink之低通滤波
2、Simulink之卡尔曼滤波
3、Simulink之PI控制器抗积分饱和
4、Simulink技能:脚本辅助建模
5、Simulink技能:信号名自动继承
6、Simulink如何实现循环显示功能?
7、Stateflow浅谈
基础技术:
1、PID控制器参数调试经验浅谈
2、PID控制器参数调试经验深谈
3、基础技术:永磁同步电机介绍
4、永磁同步电机弱磁控制Simulink仿真
纯电技术:
1、纯电动技术:车速估计浅谈
2、双电机纯电四驱车扭矩分配
3、纯电四驱车扭矩分配Simulink仿真
混动技术:
1、Simulink软件仿真平台之驾驶员模型
2、软件仿真平台之整车控制策略
3、软件仿真平台之车辆模型
4、Simulink软件仿真平台之控制策略验证
5、Simulink软件仿真平台之动力系统匹配
6、混动技术:THS系统浅谈
7、混动控制策略架构浅析
8、THS系统之车辆平台建模
9、丰田THS混动系统控制策略设计
10、THS混动系统控制策略仿真验证
汽车理论:
1、踩一脚油门车是怎么跑起来的?
其他内容:
1、VCU软件开发流程
2、汽车软件开发工作感想
源代码及书籍:
1、《Matlab基础及其应用教程》
2、《Stateflow逻辑系统建模》
3、永磁同步电机弱磁仿真模型
4、增程式电动汽车仿真平台模型
5、THS混动汽车仿真平台模型
6、双电机纯电四驱车扭矩分配仿真模型
获取方法:分享公众号或公众号文章至朋友圈集赞50获得任何一份代码或书籍。
留言