加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

基于模型设计的永磁同步电机控制编译和代码生成 - 嵌入式程序猿 - 嵌入式程序猿

2021/09/28
437
阅读需 4 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

之前推送过,基于模型设计的准备工作,后台有人问怎么设置模型编译和代码生成,本篇笔记主要记录基于NXP恩智浦MPC5744P的MBD工具箱,一步步编译PMSM电机模型和代码生成。

准备工作

安装可以正常工作的MATLAB工具箱。

安装NXP的MBD工具箱。

电机控制模型

其实现在越来越多的公司和大厂开始使用基于模型的设计和开发,NXP和MATLAB合作开发的电机控制MBD工具箱,很好的帮助工程师解决PMSM电机控制的难点和问题,模型包含从底层到应用层都有的模型设计和参考,

PMSM 电机FOC 模型,

模型浏览

有开环,闭环,有单速度环控制的,也有基于V/F控制的,最复杂的就是基于FOC的闭环控制。双闭环调速,电流环是内环,速度环是外环

代码生成配置

生成代码需要做一些配置,这里采用默认配置就可以

编译

代码生成报告

生成的电机闭环控制的代码在PMSM_ClosedLoop_mpc5744p.c里面,有兴趣的可以自行编译查看。

出现下面的对话框,就可以下载代码了,

 

但是这里有一个问题,第一次下载代码必须先使用S32DS下载一个bootloader,之后才可以在matlab里面直接一键下载代码。

 

Bootloader目录,这里根据自己的安装目录可能不同,在NXP的MBD工具箱安装目录下的tools文件夹下

C:\Users\DELL\AppData\Roaming\MathWorks\MATLAB Add-Ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools\BootLoader\RBF_Files

Bootloader  下载完后,点击

 

就可以在matlab里面一键下载代码了。

 

等待程序下载完成,就可以操作电机控制了。对于自己的应用,需要做一些模型的修改,这个就看自己的应用场景和电路设计了。这个工具箱将MPC5744的底层驱动SDK也集成了进来,所以如果是基于MPC5744开发,则底层驱动也可以在MATLAB里完成,。模型的安装在之前的公号推送里已经介绍过了,

基于模型的开发需要准备什么之后有机会还会带来模型的分析和,参考设计。

 

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
ADS1210U 1 Texas Instruments 24-bit, 15.6-kSPS, 1-ch delta-sigma ADC with VREF and PGA 18-SOP -40 to 85

ECAD模型

下载ECAD模型
$25.92 查看
W28-XQ1A-15 1 TE Connectivity 1 POLE(S), 15A, 250 V(AC), 32 V(DC), PANEL MOUNT, THERMAL CIRCUIT BREAKER, ROHS COMPLIANT
$2.96 查看
ELKE333FA 1 Panasonic Electronic Components Data Line Filter, 1 Function(s), 25V, 2A, SMD, 3 PIN

ECAD模型

下载ECAD模型
$1.56 查看
恩智浦

恩智浦

恩智浦半导体创立于2006年,其前身为荷兰飞利浦公司于1953年成立的半导体事业部,总部位于荷兰埃因霍温。恩智浦2010年在美国纳斯达克上市。恩智浦2010年在美国纳斯达克上市。恩智浦半导体致力于打造全球化解决方案,实现智慧生活,安全连结。

恩智浦半导体创立于2006年,其前身为荷兰飞利浦公司于1953年成立的半导体事业部,总部位于荷兰埃因霍温。恩智浦2010年在美国纳斯达克上市。恩智浦2010年在美国纳斯达克上市。恩智浦半导体致力于打造全球化解决方案,实现智慧生活,安全连结。收起

查看更多

相关推荐

电子产业图谱

分享嵌入式开发过程中的案例、心得、方案、调试等故事,涉及MCU底层驱动、Modbus通信、CAN通信、J1939通信协议栈、GUI,主要以NXP和ST的应用为例来讲解,项目开发中的点滴记录。陪你度过Bug的折腾,方案的修改,成长的喜悦等。我们一起在嵌入式的江湖闯荡,多年以后,当回忆起那段岁月,不因默默无闻而悔恨。