主要内容

在硬件和验证装置中调整控制参数增益

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

该示例在这些模式下运行电机:

  • 停止—逆变器输出零伏,电机停止运行。

  • 开环—在此模式下,控制器使用开环控制来运行电机。你可以使用操作模式变量>开环模式主机模型的区域改变逆变器(在每单位)的输出电压和转子速度(在每单位中)。使用监控区域选择速度和转子位置值以显示它们的范围以进行监控。

  • 扭矩控制- 在此模式下,控制器使用扭矩控制算法来运行电机。你可以使用操作模式变量>电机扭矩控制模式更改主机模型的区域$ {i_d} $参考和$ {i_q} $参考电流值(在每单位中)。您还可以设置电机的最大限速(在每单位中)。

您可以通过将滑块开关转换为将转子位置设置为零的POS锁定位置来锁定转子。因此,在此模式下,控制器接收位置反馈为零,因为电机停止运行。如果将开关转换为解锁位置,则电机运行和控制器从正交编码器接收位置反馈(您可以通过使用位置_MEAS信号监视此值监控主机模型区域)。您可以使用范围来监控您选择的两个调试信号(监视信号#1和监视器信号#2)监控区域。因此,您可以使用滑块开关调谐扭矩控制增益参数。

  • 速度控制—在此模式下,控制器通过速度控制算法使电机运行。你可以使用操作模式变量>电机速度控制模式主机模型的区域改变转子的速度参考值(在每个单元中)。您可以使用范围来监控您选择的两个调试信号(监视信号#1和监视器信号#2)监控区域。

有关与每单位系统相关的信息,请参阅单位系统

要进一步控制电机,您还可以使用控制循环收益主机模型的区域改变控制参数D.设在和问:-AXIS电流控制器和速度控制器。

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

警告:先在从一个操作模式转换到另一个操作模式之前首先停止电机。

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

  • 停止

  • 开环运行

  • 扭矩控制

  • 速度控制

模型

该示例包括模型mcb_pmsm_operation_mode_f28379d.

您可以使用模拟模拟和代码生成。您还可以使用Open_System命令打开Simulink®型号:金宝app

open_system (“mcb_pmsm_operating_mode_f28379d.slx”);

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

模拟模型:

  • 电机控制BlockSet™

要生成代码和部署模型:

1。电机控制BlockSet™

2。嵌入式译码器

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

4.固定点设计器™(仅需要优化的代码生成)

先决条件

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

但是,如果您有电机控制硬件,则可以使用电机控制块集参数估计工具估算要使用的电机的参数。有关说明,请参阅使用电机控制块集参数估算工具估算电机参数

参数估计工具更新MotorParam.变量(在MATLAB®工作区中)具有估计的电机参数。

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

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

模拟模型

按照以下步骤模拟模型。

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

2。点击在这一点模拟标签以模拟目标模型。

3。打开mcb_pmsm_operation_mode_f28379d>模拟仪表板子系统。您还可以使用Open_System命令打开子系统:

open_system ('mcb_pmsm_operation_mode_f28379d / simulate仪表板');

开环运行模式说明:

1。如果当前的操作模式除了开环运行以外,请选择停止控制区域停止电机。选择开环运行启动电机。

2。设置参考电压和参考速度值(在每个单元中)电压ref(PU)速度ref(pu)中可用的字段操作模式变量>开环模式区域。

扭矩控制模式说明:

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

2。输入值0.(每单位)在IQ参考田野操作模式变量>电机扭矩控制模式区域。另外,设置电机使用时的转速限制速度极限场地。

3。将滑块开关移动到开锁位置操作模式变量>电机扭矩控制模式区域。

4.输入值0.1(每单位)在其中IQ参考场(在操作模式变量区域)开始运行电机。

5。打开仿真数据检查器并选择Iq_ref_PUIQ_FB_PU.信号监测。

6。按照步骤2到5ID参考并监控Id_ref_PUid_fb_pu.信号。

笔记:如果在此操作模式下在没有负载条件下运行,电机可以达到高速。此外,电机在此操作模式下不会在没有负载条件下符合IQ参考电流。

速度控制模式说明:

1。如果当前的操作模式除了速度控制,请选择停止控制区域停止电机。选择速度控制控制区域。

2。输入值0.5(每单位)在速度参考田野操作模式变量>电机速度控制模式区域。

3。打开仿真数据检查器并选择speed_ref_pu.speed_fb_pu.信号监测。

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

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

2。将滑块开关转到Pos锁位置操作模式变量>电机扭矩控制模式区域。

3。输入值0.2(每单位)在ID参考田野操作模式变量区域。

4.打开仿真数据检查器,选择Id_ref_PUid_fb_pu.信号,观察这些信号的阶跃响应。

5。调整D轴电流控制器的控制增益KP和KI。执行步骤更改以验证控制器增益。

调优增益的说明:

1。如果当前的操作模式除了速度控制,请选择停止控制区域停止电机。选择速度控制控制区域。

2。输入值0.5(每单位)在速度参考田野操作模式变量>电机速度控制模式区域。

3。输入值0.8(每单位)在速度参考场地。

4.打开仿真数据检查器,选择speed_ref_pu.speed_fb_pu.信号,观察速度阶跃响应。

5。调整控制收益KpKi对于速度控制器。执行步骤更改以验证控制器增益。

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

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

该示例使用主机和目标模型。主机模型是控制器硬件板的用户界面。您可以在主机上运行主机模型。使用主机模型的先决条件是将目标模型部署到控制器硬件板。主机模型使用串行通信以在所选操作模式下命令模型,运行(和控制)电机,并监控模型的调试信号。

需要硬件

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

对于与前面的硬件配置相关的连接,请参阅LaunchXL-F28069M和LaunchXL-F28379D配置

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

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

2。完成硬件连接。

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

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

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

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

6。为确保CPU2未经错误地配置为使用用于CPU1的电路板外设,请将样本程序加载到LaunchXL-F28379D的CPU2,例如,通过使用GPIO31操作CPU2蓝色LED的程序(C28379D_CPU2_BLink.slx)。

笔记:

  • 不要直接在开环运行,扭矩控制和速度控制操作模式之间切换。在更改操作模式之前,请务必停止电机。

  • 在首次在速度控制模式下运行电机之前,请在开环中运行电机以确定Quadratue编码器索引。这有助于在闭环速度控制模式下平滑地启动电机。

开环运行模式说明:

1。点击构建,部署和启动在这一点硬件选项卡将目标模型部署到硬件。

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

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

4.点击在这一点模拟标签以运行主机模型。

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

6。选择开环运行启动电机。

7。设置参考电压和参考速度值(在每个单元中)电压ref(PU)速度ref(pu)中可用的字段操作模式变量>开环模式区域。

扭矩控制模式说明:

1。点击构建,部署和启动在这一点硬件选项卡将目标模型部署到硬件。

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

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

4.点击在这一点模拟标签以运行主机模型。

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

6。输入值0.(每单位)在ID REF(PU)IQ REF(PU)田野在操作模式变量>电机扭矩控制模式区域。另外,设置电机使用时的转速限制速度限制(PU)场地。

7。选择扭矩控制控制区域。

8。将滑块开关移动到开锁位置操作模式变量>电机扭矩控制模式区域。

9。选择Iq_ref为了监视信号#1Iq_meas为了监视信号#2监控区域。

10.输入值0.1(每单位)在其中IQ REF(PU)场(在操作模式变量区域)开始运行电机。

11.打开主机模型中的范围并监视IQ_REF和IQ_MEAS电流信号。

笔记:如果在此操作模式下在没有负载条件下运行,电机可以达到高速。此外,电机在此操作模式下不会在没有负载条件下符合IQ参考电流。

速度控制模式说明:

1。点击构建,部署和启动在这一点硬件选项卡将目标模型部署到硬件。

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

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

4.点击在这一点模拟标签以运行主机模型。

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

6。输入值0.5(每单位)在速度ref(pu)田野操作模式变量>电机速度控制模式区域。

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

8。选择Speed_ref为了监视信号#1speed_meas.为了监视信号#2监控区域。

9。打开主机模型中的范围并监视Speed_ref和Speed_MEAS输出信号。

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

1。点击构建,部署和启动在这一点硬件选项卡将目标模型部署到硬件。

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

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

4.点击在这一点模拟标签以运行主机模型。

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

6。选择扭矩控制控制区域。

7。将滑块开关转到Pos锁位置操作模式变量>电机扭矩控制模式区域。

8。选择Id_ref为了监视信号#1Id_meas为了监视信号#2监控区域。

9。输入值0.2(每单位)在ID REF(PU)田野操作模式变量区域。

10.打开范围并监控步进响应信号。

11.调整控制收益KpKiD.-AXIS电流控制器。

调优增益的说明:

1。点击构建,部署和启动在这一点硬件选项卡将目标模型部署到硬件。

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

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

4.点击在这一点模拟标签以运行主机模型。

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

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

7。选择Speed_ref为了监视信号#1speed_meas.为了监视信号#2监控区域。

8。输入值0.5(每单位)在速度ref(pu)田野操作模式变量>电机速度控制模式区域。

9。打开量程,观察参考值和测量值。

10.输入值0.8(每单位)在速度ref(pu)场地。

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

12.调整控制收益KpKi对于速度控制器。

验证工厂模型的说明:

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

2。点击在这一点模拟标签以模拟目标模型。

3。打开mcb_pmsm_operation_mode_f28379d>模拟仪表板子系统。

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为了监视信号#1speed_meas.为了监视信号#2监控区域。

15.输入值0.2(每单位)在速度ref(pu)田野操作模式变量>电机速度控制模式区域。

16。打开量程,观察参考值和测量值。

17。输入值0.5(每单位)在速度ref(pu)场地。

18。观察范围的速度阶段响应。

19。比较步骤7中获得的速度步骤响应(用仿真)和18(用代码生成)。

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

有关主机与目标模型之间的串行通信的详细信息,请参阅Host-Target沟通