AN14619:MCXA上的PMSM无传感器单并联FOC
本应用笔记介绍了在 FRDM-MCXA346 开发板上实现无传感器单并联 FOC 的方法。有关如何使用该软件的完整说明,请参阅AN14619
。 本应用笔记主要介绍了单并联 PMSM FOC 的原理、使用 NXP 开发套件的硬件和软件实现,包括详细的外设设置、驱动程序说明和 FreeMASTER 操作指南。
电路板:FRDM-MCXA346
类别:电机控制
外设:ADC、PWM
工具链:MCUXpresso IDE
目录
1. 软件
- 下载并安装MCUXpresso IDE V25.03 或更高版本。
- 下载并安装最新版本的FreeMASTER(3.2.2.2)。
- 从 Git 仓库 an-mc-pmsm-dual-mcxa346 下载代码。
- Visual Studio Code 的 MCUXpresso:此示例支持 Visual Studio Code 的 MCUXpresso,有关如何使用 Visual Studio Code 的更多信息,请参阅此处。
2. 硬件
- FRDM-MCXA346 开发板。
- FRDM-MC-LVPMSM。
- LINIX 45ZWN24 电机。
- 个人电脑
- USB Type-C 数据线和 24V 适配器。
3. 设置
3.1 导入项目
3.1. 从应用程序代码中心导入项目
- 打开 MCUXpresso IDE,在快速入门面板中,选择“从应用程序代码中心导入”。
- 找到您需要的演示,可以直接搜索名称或选择您感兴趣的标签。打开项目,点击GitHub 链接,然后点击“下一步”。
- 选择主分支,然后单击“下一步”。
- 在“目标位置->目录”窗口中选择本地仓库路径。MCUXpresso IDE 会将仓库克隆到您选择的路径,克隆完成后,点击“下一步” 。
- 在项目导入向导窗口中选择“导入现有 Eclipse 项目”,然后单击“下一步”。
- 选择此仓库中的项目(此仓库中只能有一个项目),然后单击“完成”。
3.1.B 将克隆的 Git 仓库导入到本地路径后的项目
- 从GitHub克隆仓库*an-mc-pmsm-one-shunt-mcxa346 * https://github.com/nxp-appcodehub/an-mc-pmsm-one-shunt-mcxa346。打开 MCUXpresso IDE,在快速入门面板中,选择“从文件系统导入项目”。
- 在“项目目录(已解压)”项中选择本地仓库路径,然后单击“下一步” 。如果您从 GitHub 下载了压缩包,请在“项目归档(zip)”**项中选择本地压缩包路径。
- 选择此仓库中的项目(显示在“项目”窗口中,此仓库中只能显示一个项目),然后单击“完成”。如果您在“选项”项中单击“将项目复制到工作区” ,则该项目将被粘贴到您的 IDE 工作区中,您所做的更改将保存在工作区副本中。
3.1.2 然后您将在项目资源管理器窗口中看到该项目。
3.2 编译项目
此项目包含两种配置:Debug和DebugSRAMX。DebugSRAMX配置包含一个独立的链接脚本,用于将频繁调用的代码分配到 SRAMX 内存中,从而提升性能。在“项目资源管理器”窗口中右键单击项目名称,然后选择“属性”打开属性窗口。打开“管理配置”,选择要使用的配置,然后单击“设置为活动”。
使用工具栏中的“构建”按钮编译项目。
3.3 硬件设置
将FRDM-MC-LVPMSM扩展板连接到FRDM-MCXA346板的J1~J4 Arduino 连接器。按照相序(白线宽 - A相;蓝线宽 - B相;绿线宽 - C相)将电机的三相线连接到 FRDM-MC-LVPMSM 板上的 J7 连接器。使用 24V 电源适配器为 FRDM-MC-LVPMSM 板供电。
使用 USB 数据线通过J15接口连接到 FRDM 开发板。编译完成后,使用工具栏中的调试按钮下载代码。根据板载调试器的固件版本,在“调试方式”中选择CMSIS-DAP或J-Link 。
3.4 运行演示
按下 FRDM 板上的 SW2 按钮即可控制电机运行或停止。或者,您也可以使用 FreeMASTER 项目代码包中的“pmsmfloat.pmpx”文件来控制电机、改变转子转速以及反转转速或其他数值。 “pmsmfloatsramx.pmpx”文件用于DebugSRAMX配置。
4. CPU 负载结果
| | 调试 - 配置 | Debug_sramx - 配置 |
| :----------------- | :------------------: | :------------------: |
| 快速循环间隔 | 125微秒(8千赫兹) | 125微秒(8千赫兹) |
| 快速循环处理时间 | 14.2 微秒 | 8.2 微秒 |
| 快速循环加载 | 11.4% | 6.6% |
| 慢循环间隔 | 1毫秒(1千赫兹) | 1毫秒(1千赫兹) |
| 慢循环处理时间 | 1.9微秒 | 1.0微秒 |
| 缓慢循环加载 | 0.19% | 0.10% |
| CPU 总负载 | 11.6% | 6.7% |
5. 常见问题解答
如果合适,请在此处添加常见问题解答。如果没有常见问题解答,则删除此部分。
6. 支持
请在此处提供帮助链接。
项目元数据
来源:恩智浦appcodehub
46
