使用传感器反馈的BLDC电动机的六步换向
该示例使用120度传导模式来实现六步换向技术,以控制三相无刷直流(BLDC)电动机的旋转速度和方向。该示例使用六步换门块生成的开关序列来控制三相定子电压,因此控制转子速度和方向。有关此块的更多详细信息,请参阅六步通勤。
六步换向算法需要大厅序列或转子位置反馈值(可从正交编码器或霍尔传感器获得)。
正交编码器传感器由一个磁盘组成,带有两个轨道或通道,这些轨道或通道偏置了90个电度。这会产生两个脉冲(a和b),其相位差为90度和一个索引脉冲(i)。控制器使用A和B通道之间的相位关系以及通道状态的过渡来确定电动机旋转的速度,位置和方向。
霍尔效应传感器根据施加磁场的强度改变其输出电压。根据标准配置,BLDC电动机由三个相距120度的霍尔传感器组成。具有标准厅放置位置的BLDC(传感器分隔120度)可以提供六个有效的二元状态组合:例如,001,010,010,011,100,101和110。60,控制器用来确定存在转子的60度扇区。
控制器使用霍尔序列或转子位置控制电动机。它为定子绕组的接下来两个阶段源,因此转子始终保持90度的扭矩角(转子D轴和定子磁场之间的角度(角度),偏差为30度。
笔记:大厅序列可能会有所不同。使用示例霍尔传感器序列校准BLDC电动机确定霍尔序列。
楷模
该示例包括以下模型:
您可以将这些模型用于仿真和代码生成。要打开Simulin金宝appk®模型,您还可以在MATLAB命令提示符处使用open_system命令。例如,将此命令用于基于F28379D的控制器:
open_system('mcb_bldc_sixstep_f28379d.slx');
有关支持的硬件配置的详细信息,请参见“金宝app生成代码”中所需的硬件,并部署模型以定位硬件部分。
必需的MathWorks®产品下载188bet金宝搏
模拟模型:
电动机控制区块™
SIMSCAPE™Electrical™
生成代码和部署模型:
电动机控制区块™
嵌入式编码器®
Texas Instrument金宝apps™C2000™处理器的嵌入式编码器支持包
定点Designer™(仅需要优化代码生成)
先决条件
1。获得电机参数。我们提供默认的莫tor parameters with the Simulink model that you can replace with values from either the motor datasheet or other sources.
但是,如果您拥有电动机控制硬件,则可以通过使用电动机控制模块群参数估计工具来估计要使用的电动机的参数。有关说明,请参阅使用推荐的硬件估算PMSM参数。
参数估计工具更新摩托车变量(在MATLAB®工作区中)具有估计的电机参数。
2。如果从电动机数据表或其他源获取电动机参数,请在模型初始化脚本中更新电动机参数和与Simulink模型关联的逆变器参数。金宝app有关说明,请参阅估计控制收益和使用实用程序功能。
如果使用参数估计工具,则可以更新逆变器参数,但不要更新模型初始化脚本中的电动机参数。脚本自动从更新的摩托车工作区变量。
模拟模型
此示例支持仿真。金宝app按照以下步骤模拟模型。
1。打开此示例中包含的模型。
2。选择模型中的QEP或Hall Speed_feedback单选按钮。
3。点击跑在Simulation选项卡以模拟模型。
4。点击数据检查员在Simulation选项卡以查看和分析仿真结果。
生成代码和部署模型以目标硬件
本节将向您展示如何生成代码并在目标硬件上运行foc算法。
此示例使用主机和目标模型。主机模型是控制器硬件板的用户界面。您可以在主机计算机上运行主机模型。使用主机模型的先决条件是将目标模型部署到控制器硬件板上。主机模型使用串行通信来命令目标simulink模型并在闭环控件中运行电动机。金宝app
需要硬件
该示例支持这些硬件配置。金宝app您还可以使用MATLAB®命令提示符,使用目标模型名称为相应的硬件配置打开模型。
launchxl-f28069M控制器 + boostxl-DRV8305逆变器:mcb_bldc_sixstep_f28069mlaunchpad
launchxl-f28379D控制器 + boostxl-DRV8305逆变器:MCB_BLDC_SIXSTEP_F28379D
For connections related to these hardware configurations, seeLaunchxl-F28069M和launchxl-F28379D配置。
在目标硬件上生成代码并运行模型
1。模拟目标模型并观察模拟结果。
2。完成硬件连接。
3。该模型默认计算ADC(或当前)偏移值。要禁用此功能,请将值0更新为变量反变量在模型初始化脚本中。
另外,您可以计算ADC偏移值并在模型初始化脚本中手动更新它们。有关说明,请参阅在开环控制中运行3相交流电动机并校准ADC偏移量。
4。如果您使用的是正交编码器,请计算正交编码器索引偏移值,然后在与目标模型关联的模型初始化脚本中更新它。有关说明,请参阅Quadrature Encoder Offset Calibration for PMSM Motor。
5。If you are using a Hall sensor, compute the Hall sequence value and update it in thebldc.hallsequence与目标模型关联的模型初始化脚本中的变量。有关说明,请参阅霍尔传感器序列校准BLDC电动机。
6。打开目标模型。如果要更改模型的默认硬件配置设置,请参见模型配置参数。
7。选择目标模型中的QEP或Hall Speed_feedback单选按钮。
8。将示例程序加载到launchxl-F28379D的CPU2。例如,您可以使用通过使用GPIO31(C28379D_CPU2_BLINK.SLX)来操作CPU2蓝色的程序,并确保没有错误地配置CPU2用于使用用于CPU1的板外围设备。
9。点击构建,部署和开始在硬件选项卡将目标模型部署到硬件。
10.点击主机模型目标模型中的超链接以打开关联的主机模型。您还可以使用open_system命令打开主机模型。将此命令用于基于F28379D的控制器。
open_system('mcb_bldc_host_model_f28379d.slx');
对于主机和目标模型之间的串行通信,请参阅Host-Target Communication。
11。In the host model, open the blocks Host Serial Setup, Host Serial Receive, and Host Serial Transmit, and select a港口。
12。更新参考速度值参考速度(RPM)主机模型中的字段。
13。在主机模型中,选择要监视的调试信号。
14。点击跑在Simulation选项卡以运行主机模型。
15。将开始 /停止电机开关的位置更改为ON,以开始运行电动机。
16。在主机模型中观察来自RX子系统的调试信号,并在主机模型中显示块。