使用 Infineon AURIX 微控制器与编码器对 BLDC 进行磁场定向控制
此示例说明如何实现磁场定向控制 (FOC) 方法来控制三相无刷直流 (BLDC) 电机的转速。FOC 算法需要转子位置反馈,这是通过使用编码器获得的。有关 FOC 的更多详细信息,请参阅磁场定向控制 (FOC) (Motor Control Blockset)。
闭环 FOC 算法用于调节三相无刷直流 (BLDC) 电机的转速和转矩。您可以使用此示例通过闭环 FOC 实现位置控制应用。该示例驱动电机达到转速值。此示例使用来自 Embedded Coder® Support Package for Infineon® AURIX TC4x Microcontrollers 的 AURIX™ 外设模块和来自 Motor Control Blockset 的 MCB 库模块。
前提条件
完成以下教程:
必需的硬件
Infineon AURIX TC4x - TriBoard
AURIX TC3xx Motor Control Power Board
Nanotec DB42S02 电机
WEDL5541-B14-KIT(5 毫米)增量编码器
硬件连接
按下图示所示连接所需硬件。

可用模型
该示例包含 tc4x_mcb_pmsm_foc_encoder 模型。
此模型既可用于仿真,也可用于代码生成。此模型配置为用于 TC4x TriBoard。

您可以更改模型参数来适应您的特定电机。控制器算法生成空间向量 PWM 信号以驱动逆变器开关。逆变器使用两个模数转换器 (ADC) 测量电机的两个输入电流(ia 和 ib),并将测量值发送到处理器。
此示例使用编码器传感器测量转子位置。编码器传感器由一个具有两个轨道或通道的圆盘组成,这两个轨道或通道的编码电相位差为 90 度。这就会产生两个相位差为 90 度的脉冲(A 和 B)和一个索引脉冲 (I)。控制器使用 A 和 B 通道之间的相位关系以及通道状态的转换来确定电机的旋转方向。
配置模型
1.打开 tc4x_mcb_pmsm_foc_encoder 模型。
2.按 CTRL+E 打开“配置参数”对话框。点击左窗格中的硬件实现。将硬件板设置为 Infineon AURIX TC4x - TriBoard。

3.在硬件板设置下,展开目标硬件资源。设置系列和包类参数以匹配您的硬件。
外设模块配置
使用硬件映射工具设置此模型的外设模块配置。
1.在 Simulink 工具条中,转至硬件选项卡并点击硬件映射。

2.下图显示硬件映射工具中的 PWM 外设模块配置。同样,模型配置为用于其他外设。为方便起见,我们提供了预配置模型。

对模型进行仿真
完成以下步骤以仿真模型。
1.打开 tc4x_mcb_pmsm_foc_encoder 模型。
2.点击仿真选项卡上的运行来仿真该模型。
3.点击仿真选项卡上的数据检查器来查看和分析仿真结果。
4.在仿真期间,在开环模式使模型运行 1 秒,然后切换到闭环模式,以 0.25 和 0.9 标幺转速运行 20 秒。观察在参考设定点后测量的标幺电流和转速反馈。

生成代码并将模型部署到目标硬件
完成以下步骤以生成代码并在目标硬件上运行 FOC 算法。
1.打开 tc4x_mcb_pmsm_foc_encoder 模型。
2.点击硬件选项卡上的编译、部署和启动以将目标模型部署到硬件上。

3.按照编译过程进行操作,方法是使用模型画布底部提供的链接打开诊断查看器。您可以观察包含模型可追溯性代码的代码生成报告。Infineon AURIX 使用下载工具将模型部署到硬件。
注意:在尝试编译模型时,您可以忽略模型顾问警告消息。

4.从 Infineon 下载并安装 One Eye 工具以监视来自硬件的信号。在使用 One Eye 工具之前,请确保下载并安装最新版本的 TAS/DAS 工具。
5.打开 One Eye 工具。通过点击 One Eye 工具中的文件 > 加载配置来加载此示例附带的 tc4x_mcb_pmsm_foc_encoder.OneEye 文件。
6.加载在步骤 3 中生成的 tc4x_mcb_pmsm_foc_encoder.elf 文件,并观察在参考设定点 (Iab_fb_PU1, Iab_fb_PU0) 后测量的电流 (Speed_fb)、转速反馈 (SpeedRef)。

已知限制
由于这些模式不支持外设模块,此示例模型不支持在加速和快速加速模式下的仿真。