主要内容

双电机控制PMSM (Dyno)

这个例子使用磁场定向控制(FOC)控制两个三相永磁同步电动机(PMSM)耦合在一个动态设置。电机1以闭环速度控制方式运行。电机2在扭矩控制模式下运行,并负载电机1,因为它们是机械耦合的。你可以用这个例子来测试不同负载条件下的电机。

这个例子模拟了两个背靠背连接的电机。您可以使用不同的速度参考电机1和不同的扭矩参考电机2(从电机2参考定子电流的大小和电气位置)。电机1以电机2提供的负载条件的参考速度运行(具有不同的扭矩参考)。

这些方程描述了…的计算d设在和电机2参考定子电流的-轴分量。

$ $我{d ^ {ref}} = Ima {g ^ {ref}} \ * {\ rm{因为}}{\θ_e} $ $

$ $我{问^ {ref}} = Ima {g ^ {ref}} \ * {\ rm{罪}}{\θ_e} $ $

地点:

  • 美元我{d ^ {ref}} $d电机2参考定子电流的-轴分量。

  • $我{问^ {ref}} $电机2参考定子电流的-轴分量。

  • 美元$ Ima {g ^ {ref}}为电机2参考定子电流的大小。

  • ${\θ_e} $为电机2参考定子电流的电气位置。

示例运行在控制器硬件板上。您可以使用主机型号输入电机1的速度参考和电机2的电流参考。主机采用串行通信方式与控制器硬件板进行通信。

电机1和电机2控制算法中的电流控制环被Ts/2偏移,其中Ts为控制环执行速率。

模型

该示例包括模型mcb_pmsm_foc_f28379d_dyno

您可以将此模型用于模拟和代码生成。您也可以使用open_system命令来打开Simulink®模型。金宝app例如,对于基于F28379D的控制器使用以下命令:

open_system (“mcb_pmsm_foc_f28379d_dyno.slx”);

需要MathWorks®产品下载188bet金宝搏

模拟模型:

  • 电机控制Blockset™

要生成代码和部署模型:

  • 电机控制Blockset™

  • 嵌入式编码器®

  • 德州仪器C2000处理器的嵌入式金宝app编码器支持包

  • 定点设计器™(仅用于优化代码生成)

先决条件

1.获取电机1和电机2的电机参数。我们在Simulink®模型中提供默认的电机参数,您可以用电机数据表或其他来源的值替换。金宝app

然而,如果您有电机控制硬件,您可以通过使用motor control Blockset™参数估计工具来估计想要使用的电机参数。说明,请参阅使用推荐硬件估计PMSM参数

2.更新与Simulink®模型关联的模型初始化脚本中的电机参数(您从数据表、其他来源或参数估计工具获得的)和逆变器参数。金宝app说明,请参阅从电机参数估计控制增益

对于本例,在模型初始化脚本中更新两个电机的电机参数。

模拟模型

这个例子支持模拟。金宝app按照以下步骤模拟模型。

1.打开本示例中包含的模型。

2.点击运行模拟TAB来模拟模型。

3.点击数据检查模拟TAB来查看和分析仿真结果。

4.为电机1输入不同的速度参考,为电机2输入不同的电流参考(负载)。在数据检查器中观察测量的速度和其他记录的信号。

生成代码和部署模型到目标硬件

本节将指导您生成代码并在目标硬件上运行FOC算法。

该示例使用了一个主机和一个目标模型。主机型号是控制器硬件板的用户界面。您可以在主机计算机上运行主机型号。使用主机模型的前提是将目标模型部署到控制器硬件板上。主机模型使用串行通信命令目标Simulink®模型,并在闭环控制中运行电机。金宝app

所需的硬件

本示例支持此硬件配置。金宝app也可以使用目标模型名称打开模型对应的硬件配置,从MATLAB®命令提示符。

与上述硬件配置相关的连接请参见Dyno(双电机)设置说明

在目标硬件上生成代码并运行模型

1.对目标模型进行仿真,观察仿真结果。

2.完成硬件连接。

3.该模型自动计算ADC(或电流)偏移值。若要禁用此功能(默认启用),将变量逆变器的值更新为0。模型初始化脚本中的ADCOffsetCalibEnable。

或者,您可以计算ADC偏移值并在模型初始化脚本中手动更新它。说明,请参阅运行三相交流电机在开环控制和校准ADC偏移

4.计算正交编码器索引偏移值,并在与目标模型相关联的模型初始化脚本中更新它。说明,请参阅PMSM电机的正交编码器偏移校准

对于本例,更新pmsm_motor1中的QEP偏移值。PositionOffset pmsm_motor2。初始化脚本中的PositionOffset变量。

5.打开目标模型。如果您想更改模型的默认硬件配置设置,请参见模型配置参数

6.为了确保CPU2不会被错误地配置为使用为CPU1准备的单板外设,可以在LAUNCHXL-F28379D的CPU2上加载一个示例程序,例如使用GPIO31 (c28379D_cpu2_blink.slx)操作CPU2蓝色LED的程序。

7.点击构建、部署和启动硬件选项卡将模型部署到硬件。

8.单击主机模式在目标模型中进行超链接以打开关联的主机模型。您也可以使用open_system命令打开主机模型:

open_system (“mcb_pmsm_foc_host_model_dyno.slx”);

9.在主机型号的Host Serial Setup块掩码中,选择a端口名称

10.点击运行模拟选项卡以运行主机模型。

11.改变位置启动/停止电机切换到On,启动电机运行。

12.更新电机1 -参考转速(RPM)电机2 - Imag Ref (A),马达2 - Imag Pos (deg)在主机模型中。

注意:使用90度或270度以外的值时要小心马达2 - Imag Pos (deg)字段。这些值产生电流沿d产生磁化效果的轴。超电流沿d-轴会造成饱和,并会损坏电机磁铁。

13.选择要监控的调试信号,在主机模型的Time Scope块中观察它们。

其他可以尝试的事情

您还可以使用SoC Blockset™为双电机设置开发实时电机控制应用程序,利用多处理器核心获得设计模块化,改善控制器性能,以及其他设计目标。有关详细信息,请参见多处理器微处理器分区电机控制