AN14616:MCXE24x 上的无传感器磁场定向控制 (FOC)
本应用笔记介绍了如何在恩智浦 MCX E247 MCU 上实现 FOC,包括无传感器控制和基于正交编码器的控制。有关如何使用此软件的完整说明,请参阅AN14616 。
? FRDM-MCXE247
? 低压三相 PMSM 电机控制自由开发平台 (FRDM-MC-LVPMSM)
? 电机 LINIX 45ZWN24-40 或 Teknic M-2310P
本文档分为几个部分。文档开头介绍了硬件设置、处理器功能和外设设置。下一部分包含 PMSM 项目描述和电机控制外设初始化。最后一部分介绍了用户界面和其他示例功能。
主板:FRDM-MCXE247
类别:电机控制
外设:ADC、PWM
工具链:MCUXpresso IDE
目录
1.软件
- 下载并安装MCUXpresso IDE V25.06 或更高版本。
- SDK250600FRDM-MCXE247
- 下载并安装最新版本的FreeMASTER (3.2.2.2)。
- 从 Git 存储库an-mc-pmsm-mcxe247下载代码。
- 适用于 Visual Studio Code 的 MCUXpresso:此示例支持适用于 Visual Studio Code 的 MCUXpresso,有关如何使用 Visual Studio Code 的更多信息请参阅此处。
2.硬件
- FRDM-MCXE247 板
- FRDM-MC-LVPMSM
- 电机:Linix 45ZWN24-40或 Teknic M-2310P
- USB Type-C 线缆
- 个人电脑
3. 设置
3.1 硬件设置
将FRDM-MC-LVPMSM扩展板连接到FRDM-MCXE247开发板的J1~J4 arduino 接口。将电机的三相线按相序连接到FRDM-MC-LVPMSM上的J7接口。
对于电机 LINIX 45ZWN24-40:
?白色宽?--A 相?;?蓝色
?宽?--B?相?;
?绿色宽?--C?相?。
对于电机 Teknic M-2310P:
?黑色宽?--A 相?;?红色
?宽?--B?相?;
?白色宽?--C?相?。
如果在 Teknic M-2310P 上使用正交编码器,请将传感器线从电机连接到FRDM-MC-LVPMSM上的?J8?:红色-J8- 5V;黑色--J8- GND;蓝色--J8- ENCA;橙色--J8- ENCB;棕色--J8- ENCI。
使用24V适配器为J6上的FRDM-MC-LVPMSM板供电。
使用 USB Type-C 线缆通过J13接口连接到FRDM-MCXE247开发板。编译完成后,使用工具栏中的调试按钮下载代码。根据板载调试器中的固件,在“ Debug As”中选择CMSIS-DAP或J-Link 。
3.2 导入项目
- 打开 MCUXpresso IDE,在快速启动面板中,选择?从应用程序代码中心导入?。
- 在搜索栏中输入演示名称。
- 点击?复制GitHub链接?,MCUXpresso IDE将自动检索项目属性,然后单击?下一步>?。
- 选择主分支然后点击?Next>?,选择MCUXpresso工程,点击Finish按钮完成导入。
- 单击?“Build”?开始编译项目。
- 从工具栏中选择GUI Flash 工具将可执行文件编程到电路板。
3.3 用户界面
该应用程序包含演示模式,用于演示电机旋转。您可以使用用户按钮或 FreeMASTER 进行操作。
- 恩智浦开发板包含一个与端口中断关联的用户按钮(每当按下其中一个按钮时都会产生中断)。在 ISR 开始时,会执行一个简单的逻辑并清除中断标志。按下按钮时,演示模式启动。再次按下同一按钮时,应用程序将停止并转换回 STOP 状态。
? 开发板上的用户按钮(控制演示模式):FRDM-MCXE247 - SW2
- 与演示模式交互的另一种方式是使用 FreeMASTER 工具。FreeMASTER 应用程序由两部分组成:用于变量可视化的 PC 应用程序和在嵌入式应用程序中运行的一组软件驱动程序。串行接口在 PC 和嵌入式应用程序之间传输数据。此接口由开发板附带的调试器提供。
使用 FreeMASTER 进行远程控制(下一章):在 FreeMASTER 变量监视中设置变量
3.4 电机配置
项目的源文件夹中有两个电机参数和控制参数头文件, ?“m1pmsmappconfig.h”?用于?LINIX 45ZWN24-40?,?“m2pmsmappconfig.h”?用于?Teknic M-2310P?。
如果使用?LINIX 45ZWN24-40?,则 m1pmsmappconfig应默认包含在头文件m1smsnsless.h (an-mc-pmsm-mcxe247motorcontrolpmsmpmsmfloatmcstatemachine) 中。
如果使用?Teknic M-2310P?,请将包含的文件更改为?m2pmsmappconfig?。
3.5 使用 FreeMASTER 进行远程控制
本节提供有关使用 FreeMASTER 控制传感器/无传感器 PMSM 磁场定向控制 (FOC) 应用的工具和推荐程序的信息。
您可以在www.nxp.com/freemaster下载最新版本的 FreeMASTER 。要运行包含 MCAT 工具的 FreeMASTER 应用程序,请双击位于 middlewaremotorcontrolfreemaster 目录中的 pmsmfloat.pmpx 文件。
文件夹。FreeMASTER 应用程序启动,并自动创建环境,如 *.pmpx 文件中所定义。
注意:在 MCUXpresso 中,FreeMASTER 应用程序可以直接从 motor_control/freemaster 文件夹中的 IDE 运行。
- 将项目从您选择的 IDE 下载到 MCU 并运行它。
- 打开 FreeMASTER 项目 pmsm_float.pmpx
要建立通信,请单击通信按钮(左上角的绿色“GO”按钮)。
- 如果通信成功建立,右下角的 FreeMASTER 通信状态将从“未连接”变为“RS-232 UART 通信;COMxx;速度=115200”。否则,将出现 FreeMASTER 警告弹窗,如下所示:
- 通过在变量监视中写入控制变量来控制 PMSM 电机。
- 如果在Teknic M-2310P上使用基于正交编码器的传感器控制,请在3. 速度控制监视子块的变量监视窗口中将M1 MCATPOSESensor值切换为?1?(无传感器控制默认为0 ) 。
4. 结果
该板可以驱动电机,并且电机可以运转。
项目元数据
有关此示例的内容/正确性的问题可以作为此 GitHub 存储库中的问题输入。
来源:恩智浦appcodehub