主要内容

用Simscape Electrical建模逆变器的开关动力学

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

  • 转换器(三相)

  • 理想半导体开关

该示例还为您提供了使用Simscape™Electrical™的PMSM块作为Motor Control Blockset™的表面安装PMSM块的替代品的选项。这些Simscape™Electrical™模块使您能够生成高保真的模拟。

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

您可以通过使用不同的逆变器来模拟目标模型,并监控每个逆变器的反馈电流。您还可以生成代码,并使用主机模型和目标模型。

模型

示例包含模型mcb_ee_pmsm_foc

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

open_system (“mcb_ee_pmsm_foc.slx”);

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

模拟模型:

  • 电机控制块集™

  • Simscape™电气™

生成代码并部署模型:

  • 电机控制块集™

  • Simscape™电气™

  • 嵌入式编码器®

  • 德州仪器C2000处理器的嵌入式金宝appCoder®支持包

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

先决条件

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

但是,如果您有电机控制硬件,您可以通过使用motor control Blockset参数估计工具来估计要使用的电机的参数。有关说明,请参见使用推荐硬件估算PMSM参数

参数估计工具更新motorParam变量(在MATLAB®工作空间)与估计电机参数。

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

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

模拟模型

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

1.打开目标模型mcb_ee_pmsm_foc

2.在目标模型中的InverterSelected无线电组中选择这些选项之一,以模拟逆变器变体:

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

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

  • Simscape电气模块化多电平转换器—选择此选项使用理想半导体开关和PMSM块。该选项使用低电压模拟Simscape electric模块化多电平转换器。

3.在“InverterSelected”射频组中选择一个选项,单击运行模拟TAB来模拟目标模型。

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

该图像显示了仿真结果$ {I_a} $当前阶段:

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

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

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

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

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

所需的硬件

该示例支持这种硬件配置。金宝app还可以使用目标模型名称从MATLAB®命令提示符打开相应硬件配置的模型。

与上述硬件配置相关的连接请参见LAUNCHXL-F28069M和LAUNCHXL-F28379D配置

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

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

2.完成硬件连接。

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

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

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

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

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

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

8.单击主机模式在目标模型中使用超链接打开关联的主机模型。您还可以使用open_system命令打开主机模型。以F28379D控制器为例:

open_system (“mcb_pmsm_foc_host_model_f28379d.slx”);

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

9.在主机型号的“主机串行设置”块掩码中选择端口名称

10.更新参考速度值。

11.点击运行模拟TAB来运行主机模型。

12.将起动/停止电机开关位置改为On,开始运行电机。

13.观察来自RX子系统的调试信号,在主机模型的Time Scope和Display块中。

请注意:在主机型号中,还可以选择需要监控的调试信号。

其他可以尝试的事情

您还可以使用SoC Blockset™实现闭环电机控制应用程序,解决与ADC-PWM同步、控制器响应和研究不同PWM设置相关的挑战。您可以使用Simscape™Electrical™来实现高保真的逆变器仿真。详细信息请参见单片机调度与外设集成在电机控制中的应用