主要内容

调整硬件中的控制参数增益并验证设备

本例使用面向场控制(FOC)运行三相永磁同步电机(PMSM)在不同的运行模式下进行工厂验证。FOC算法的实现需要转子位置的实时反馈。这个例子使用正交编码器传感器来测量转子的位置。有关FOC的详细信息,请参见磁场定向控制(FOC)

该示例以以下模式运行电机:

  • 停止—该模式下,逆变器输出零电压,电机停止运行。

  • 开环—该模式下,控制器采用开环控制运行电机。您可以使用运行模式变量>开环模式主机模型改变逆变器输出电压(单位)和转子转速(单位)的面积。使用监控区域,选择转速和转子位置值,以在监视范围上显示它们。

  • 转矩控制-在这种模式下,控制器使用转矩控制算法来运行电机。您可以使用运行模式变量>电机转矩控制模式区域的主机型号进行更改$ {I_d} $参考和$ {I_q} $参考当前值(单位)。您还可以设置电机的最大转速限制(单位)。

您可以锁定转子转动滑块开关到Pos锁定位置,设置转子的位置为零。因此,在该模式下,由于电机停止运行,控制器接收到的位置反馈为零。如果您将开关转到解锁位置,电机运行,控制器从积分编码器接收位置反馈(您可以使用Position_meas信号在监控主机模型面积)。控件中选择的两个调试信号(监视信号#1和监视信号#2)可以使用该作用域进行监视监控区域。因此,您可以使用滑块开关来调优转矩控制增益参数。

  • 速度控制—在这种模式下,控制器使用速度控制算法来运行电机。您可以使用运行模式变量>电机调速模式区域的主机模型,以改变转速参考值(单位)的转子。控件中选择的两个调试信号(监视信号#1和监视信号#2)可以使用该作用域进行监视监控区域。

有关单位系统的相关信息,请参见单位系统

要进一步控制电机,还可以使用控制回路的收益区域内的主机模型可以更改控制参数d设在和-轴电流控制器和速度控制器。

你可以使用这个例子运行电机在开环控制,转矩控制和速度控制模式。您还可以使用这个示例来调优硬件增益和验证工厂模型。

警告:在从一种工作模式过渡到另一种工作模式之前,先停止电机。

您可以在主机模型的控制区域选择以下操作模式之一:

  • 停止

  • 开环运行

  • 转矩控制

  • 速度控制

模型

该示例包括模型mcb_pmsm_operating_mode_f28379d

您可以将该模型用于模拟和代码生成。你也可以使用open_system命令打开Simulink®模型:

open_system (“mcb_pmsm_operating_mode_f28379d.slx”);

需要MathWorks®产品2022世界杯八强谁会赢?

模拟模型:

  • 电机控制Blockset™

要生成代码并部署模型:

1.电机控制Blockset™

2.嵌入式编码器®

3.德州仪器C2000处理器的嵌入式编码器支持包

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

先决条件

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

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

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

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

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

模拟模型

按照以下步骤来模拟模型。

1.打开此示例中包含的目标模型。

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

3.打开>模拟Dashboard子系统。

开环运行模式说明:

1.如果当前运行模式不是开环运行,请选择停止控制区域停止电机。选择开环运行启动马达。

2.设置参考电压和参考转速值(单位)电压参考(PU)而且速度ref (PU)运行模式变量>开环模式区域。

转矩控制方式说明:

1.如果当前工作模式不是转矩控制,请选择停止控制区域停止电机。选择转矩控制控制区域。

2.输入值0(单位)智商参考字段运行模式变量>电机转矩控制模式区域。此外,设置电机的速度限制使用速度限制字段。

3.移动滑块开关到解锁位置运行模式变量>电机转矩控制模式区域。

4.输入值0.1(每单位)在智商参考字段(在操作模式变量区域)开始运行电机。

5.打开模拟数据检查器并选择Iq_ref_PU而且Iq_fb_PU信号监测。

6.按照步骤2到5Id引用和监视Id_ref_PU而且Id_fb_PU信号。

注意:在这种运行模式下,如果在空载条件下运行,电机可以达到很高的速度。此外,在这种工作模式下,电机在空载状态下不会满足Iq参考电流。

速度控制模式使用说明:

1.如果当前工作模式不是速度控制,请选择停止控制区域停止电机。选择速度控制控制区域。

2.输入值0.5(单位)速度参考值字段运行模式变量>电机调速模式区域。

3.打开模拟数据检查器并选择Speed_ref_PU而且Speed_fb_PU信号监测。

转矩控制器增益调谐说明:

1.如果当前工作模式不是转矩控制,请选择停止控制区域停止电机。选择转矩控制控制区域。

2.转动滑块开关到Pos锁位置运行模式变量>电机转矩控制模式区域。

3.输入值0.2(单位)Id引用字段操作模式变量区域。

4.打开模拟数据检查器,选择Id_ref_PU而且Id_fb_PU信号,观察这些信号的阶跃响应。

5.为d轴电流控制器调整控制增益Kp和Ki。执行步进更改以验证控制器增益。

调速控制器增益调谐说明:

1.如果当前工作模式不是速度控制,请选择停止控制区域停止电机。选择速度控制控制区域。

2.输入值0.5(单位)速度参考值字段运行模式变量>电机调速模式区域。

3.输入值0.8(单位)速度参考值字段。

4.打开模拟数据检查器,选择Speed_ref_PU而且Speed_fb_PU信号,并观察速度阶跃响应。

5.调优控制增益Kp而且Ki对于速度控制器。执行步进更改以验证控制器增益。

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

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

该示例使用一个主机和一个目标模型。主机模型是控制器硬件板的用户界面。您可以在主机计算机上运行主机模型。使用主机模型的前提是将目标模型部署到控制器硬件板上。主机模型使用串行通信命令模型,运行(和控制)电机在选定的工作模式,并监视模型的调试信号。

所需的硬件

该示例支持这种硬件配置。您也可以使用目标模型名称打开对应硬件配置的模型,从MATLAB®命令提示符。

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

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

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

2.完成硬件连接。

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

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

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

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

6.为了确保CPU2没有被错误地配置为使用为CPU1准备的单板外设,请将一个示例程序加载到LAUNCHXL-F28379D的CPU2中,例如,使用GPIO31 (c28379D_cpu2_blink.slx)操作CPU2蓝色LED的程序。

注意:

  • 禁止在开环运行、转矩控制和速度控制工作模式之间直接切换。在改变工作模式之前,一定要停止电机。

  • 在你第一次以速度控制模式运行电机之前,运行电机在开环,以确定四方编码器索引。这有助于在闭环速度控制模式下顺利启动电机。

开环运行模式说明:

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

2.单击主机模式目标模型中的超链接以打开关联的主机模型。

3.在主机模型中,打开主机串行设置块、主机串行接收块和主机串行发送块,并选择一个港口

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

5.选择停止控制区域停止电机。

6.选择开环运行启动马达。

7.设置参考电压和参考转速值(单位)电压参考(PU)而且速度ref (PU)运行模式变量>开环模式区域。

转矩控制方式说明:

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

2.单击主机模式目标模型中的超链接以打开关联的主机模型。

3.在主机模型中,打开主机串行设置块、主机串行接收块和主机串行发送块,并选择一个港口

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

5.选择停止控制区域停止电机。

6.输入值0(单位)Id Ref (PU)而且智商Ref (PU)字段运行模式变量>电机转矩控制模式区域。此外,设置电机的速度限制使用速度限制(PU)字段。

7.选择转矩控制控制区域。

8.移动滑块开关到解锁位置运行模式变量>电机转矩控制模式区域。

9.选择Iq_ref监控信号# 1而且Iq_meas监控信号# 2监控区域。

10.输入值0.1(每单位)在智商Ref (PU)字段(在操作模式变量区域)开始运行电机。

11.在主机模型中打开作用域并监视Iq_ref和Iq_meas电流信号。

注意:在这种运行模式下,如果在空载条件下运行,电机可以达到很高的速度。此外,在这种工作模式下,电机在空载状态下不会满足Iq参考电流。

速度控制模式使用说明:

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

2.单击主机模式目标模型中的超链接以打开关联的主机模型。

3.在主机模型中,打开主机串行设置块、主机串行接收块和主机串行发送块,并选择一个港口

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

5.选择停止控制区域停止电机。

6.输入值0.5(单位)速度Ref (PU)字段运行模式变量>电机调速模式区域。

7.选择速度控制控制区域。

8.选择Speed_ref监控信号# 1而且Speed_meas监控信号# 2监控区域。

9.在主机模型中打开作用域并监视Speed_ref和Speed_meas输出信号。

转矩控制器增益调谐说明:

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

2.单击主机模式目标模型中的超链接以打开关联的主机模型。

3.在主机模型中,打开主机串行设置块、主机串行接收块和主机串行发送块,并选择一个港口

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

5.选择停止控制区域停止电机。

6.选择转矩控制控制区域。

7.转动滑块开关到Pos锁位置运行模式变量>电机转矩控制模式区域。

8.选择Id_ref监控信号# 1而且Id_meas监控信号# 2监控区域。

9.输入值0.2(单位)Id Ref (PU)字段操作模式变量区域。

10.打开范围,监测步进响应信号。

11.调优控制增益Kp而且Kid设在电流控制器。

调速控制器增益调谐说明:

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

2.单击主机模式目标模型中的超链接以打开关联的主机模型。

3.在主机模型中,打开主机串行设置块、主机串行接收块和主机串行发送块,并选择一个港口

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

5.选择停止控制区域停止电机。

6.选择速度控制控制区域。

7.选择Speed_ref监控信号# 1而且Speed_meas监控信号# 2监控区域。

8.输入值0.5(单位)速度Ref (PU)字段运行模式变量>电机调速模式区域。

9.打开量程,观察参考和被测速度值。

10.输入值0.8(单位)速度Ref (PU)字段。

11.观察范围内的速度阶跃响应。

12.调优控制增益Kp而且Ki对于速度控制器。

植物模型验证说明:

1.打开此示例中包含的目标模型。

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

3.打开>模拟Dashboard子系统。

4.如果当前工作模式不是速度控制,请选择停止控制区域停止电机。选择速度控制控制区域。

5.输入值0.2(单位)速度参考值字段运行模式变量>电机调速模式区域。

6.输入值0.5(单位)速度参考值字段。

7.打开模拟数据检查器,选择Speed_ref_PU而且Speed_fb_PU信号,并观察速度阶跃响应。

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

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

open_system (“mcb_host_mode_control.slx”);

10.在主机模型中,打开主机串行设置块、主机串行接收块和主机串行发送块,并选择一个港口

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

12.选择停止控制区域内的主机型号要保证电机不运行。

13.选择速度控制控制区域。

14.选择Speed_ref监控信号# 1而且Speed_meas监控信号# 2监控区域。

15.输入值0.2(单位)速度Ref (PU)字段运行模式变量>电机调速模式区域。

16.打开量程,观察参考和被测速度值。

17.输入值0.5(单位)速度Ref (PU)字段。

18.观察范围内的速度阶跃响应。

19.比较步骤7(模拟)和步骤18(代码生成)中获得的速度步长响应。

注意:控制回路的收益区域中,您必须输入可以由模型初始化脚本中定义的数据类型表示的增益值。

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

Baidu
map