主要内容

基于Simscape电气的逆变器切换动力学模型

本例使用磁场定向控制(FOC)来控制三相永磁同步电动机(PMSM)的速度。它使您可以选择使用这些Simscape电气块作为电机控制块集中平均值逆变器块的替代品™:

  • 转换器(三相)

  • 理想的半导体开关

该示例还提供了使用Simscape™Electrical™PMSM块的选项,作为电机控制模块集™的表面安装PMSM块的替代方案。这些Simscape™Electrical™模块使您能够生成高保真模拟。

磁场定向控制(FOC)需要转子位置的实时反馈。这个例子使用正交编码器传感器来测量转子位置。关于FOC的详细信息请参见磁场定向控制(FOC).

您可以使用此示例通过使用不同的逆变器来模拟目标模型,并监控每个逆变器的反馈电流。您还可以生成代码并将宿主模型与目标模型一起使用。

模型

该示例包括以下模型:

  • mcb_ee_pmsm_foc

您可以将此模型用于模拟和代码生成。您可以使用open_系统命令打开Simulink®模型。例如,对基于F28379D的控制器使用以下命令:万博1manbetx

open_system (“mcb_ee_pmsm_foc.slx”);

所需的MathWorks®产品s manbetx 845

模拟模型:

  • 电机控制块集™

  • 模拟风景™ 与电有关的™

要生成代码并部署模型,请执行以下操作:

  • 电机控制块集™

  • 模拟风景™ 与电有关的™

  • 嵌入式编码器®

  • 德州仪器C2000处理器的嵌入式万博1manbetx编码器支持包

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

先决条件

1.获取电机参数。我们为Simulink®模型提供默认电机参数,您可以将其替换为电机数据表或其他来源的值。万博1manbetx

然而,如果你有电机控制硬件,你可以估计你想使用的电机参数,通过使用电机控制模块参数估计工具。说明,请参阅使用电机控制模块参数估计工具估计电机参数.

参数估计工具更新摩托帕姆变量(在MATLAB®工作空间中),带有估计的电机参数。

2.如果您从数据表或其他来源获得电机参数,请更新与Simulink®模型相关的模型初始化脚本中的电机参数和逆变器参数。万博1manbetx说明,请参阅从电机参数估计控制增益.

如果使用参数估计工具,则可以更新逆变器参数,但不更新模型初始化脚本中的电机参数。脚本将自动从更新的脚本中提取电机参数摩托帕姆工作空间变量。

模拟模型

这个例子支持模拟。万博1manbetx按照以下步骤模拟模型。

1.打开目标模型mcb_ee_pmsm_foc.

2.在目标模型的InverterSelected无线电组中选择以下选项之一:

  • 电机控制块集平均逆变器-选择此选项以使用平均逆变器和表面安装PMSM块。

  • Simscape电气3相转换器-选择此选项以使用转换器(三相)和PMSM块。

  • Simscape电气模块多电平转换器-选择此选项以使用理想的半导体开关和PMSM块。

3.从逆变器选择的无线电组中选择一个选项,然后单击模拟选项卡以模拟目标模型。

4.在目标模型上,单击数据检查模拟选项卡以查看三次模拟运行的结果。

该图像显示的模拟结果$ {I_a} $当前阶段:

这些图像显示了转子速度的比较,${I_q}$目前,${I_{ab}$三种逆变器的相电流、转子位置:

这些图像显示了三种逆变器类型的PWM调制波形比较:

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

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

该示例使用主机和目标模型。主机模型是控制器硬件板的用户界面。您可以在主机计算机上运行主机模型。使用主机模型的先决条件是将目标模型部署到控制器硬件板。主机模型使用串行通信命令目标Simulink®模型并在闭环控制中运行电机。万博1manbetx

所需的硬件

本示例支持这种硬件配置。万博1manbetx使用目标模型名称(加粗显示)打开模型对应的硬件配置,从MATLAB®命令提示符。

  • LAUNCHXL-F28379D控制器+ BOOSTXL-DRV8305变频器:mcb_ee_pmsm_foc

有关与上述硬件配置相关的连接,请参阅LAUNCHXL-F28069M和LAUNCHXL-F28379D配置.

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

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

2.完成硬件连接。

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

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

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

5.打开目标模型。如果要更改该型号的默认硬件配置设置,请参阅模型配置参数.

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

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

8.单击宿主模型在目标模型中超链接以打开关联的主体模型。您还可以使用“打开系统”命令打开主体模型。例如,对基于F28379D的控制器使用以下命令:

open_system (‘mcb_永磁同步电机_foc_主机_型号_f28379d.slx’);

主机与目标型号的串口通信请参见Host-Target沟通.

9.在主机型号的主机串行设置块掩码中,选择一个端口名.

10.更新参考速度值。

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

12将启动/停止电机开关的位置改为On,启动电机运行。

13观察RX子系统的调试信号,在主机型号的时间范围和显示块中。

笔记:在主机模型中,还可以选择需要监控的调试信号。

其他可以尝试的事情

您还可以使用SoC Blockset™实现一个闭环电机控制应用程序,解决与ADC-PWM同步、控制器响应和学习不同的PWM设置相关的挑战。您可以使用Simscape™Electrical™实现高保真逆变器仿真。有关详细信息,请参见在电机控制应用中集成MCU调度和外围设备(SoC块集).