This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] LAUNCHXL-F280025C:通用电机控制实验构建4无开环旋转?

Guru**** 1134590 points
Other Parts Discussed in Thread: LAUNCHXL-F280025C, DRV8316REVM, C2000WARE, LAUNCHXL-F280049C, BOOSTXL-DRV8320RS, DRV8316, DRV8323, MOTORWARE, DRV8320
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1127255/launchxl-f280025c-universal-motor-control-lab-build-4-no-open-loop-spin-up

器件型号:LAUNCHXL-F280025C
主题中讨论的其他器件: DRV8316REVMC2000WARELAUNCHXL-F280049CBOOSTXL-DRV8320RSDRV8316DRV8323MOTORWAREDRV8320

我正在为具有磁性轴向悬架的非常小的定制 PMSM 泵电机开发无传感器 FOC 驱动器。 我已将 LAUNCHXL-F280025C 连接到  DRV8316REVM、我正在尝试遵循通用电机控制实验室文档(SPRUJ26)。 我已经完成了第3步的所有工作、该步骤使用闭环控制、但使用通用斜坡发生器作为角度信号、而不是使用 FAST 或 eSMO 角度估算方案。 使用构建3、泵旋转正常。 我将 IQD_SET_A 设置为0.5、以将驱动电流降低至170mA 左右、一切看起来都很棒。 估算器波形似乎正确。 下面是数据记录图输出、其中强制角发生器位于顶部、估算器位于底部:

motorVars_M1.speed_Hz 确实能够很好地跟踪 speedRef_Hz 并保持在几 Hz 以内。 以下是驱动波形的示波器捕获、其中前三个通道位于三个电机相位上、而红色通道是电流探针上的夹子:

在这里、电机以350Hz 电气频率(10500 RPM)运行。 它不是很正弦-这是个问题吗? 如果是、我应该调整什么?

 的 user_mtr1.h 设置为:

#define USER_MOOST1_RR_Ohm (5.7)//测得的直流电阻相间
#define USER_MOOST1_Rs_Ohm (5.7)
#define USER_MOALE1_LS_D_H (0.000223)//测得的 L 系列相间相位
#define USER_MOH1_LS_q_H (0.000223)

#define USER_MOALE1_RATed_VACK_VpHz (0.04)//

#define USER_MOALE1_FREQ_LOW_Hz (100.0f)// Hz
#define USER_MOOST1_FREQ_HIGH_Hz (800.0f)// Hz
#define USER_MOOST1_VOLT_MIN_V (16.0f)//电压
#define USER_MOOST1_VOLT_MAX_V (24.0f)//电压

测量 R 和 L 值、并通过试验和误差计算磁通值、直到估算器和速度读数看起来正确。 我包括了 V/f 比值、尽管我很确定它们对于闭环驱动没有影响。

基于所有这些、我似乎准备继续构建4、其中使用了角度估算器。 但是、当我运行构建4时、驱动器会到处运行。 它在不同的驱动电平之间不断抖动、示波器上的波形变得疯狂。 消耗大约1.5A。 这对我来说是有道理的、因为据我所知、它直接依赖于估算的转子角度、而不是先在开环中旋转。 对吗? 在电机已经旋转之前、估算角度是否无用? 我的印象是、在切换到闭环操作之前、任何 FOC 方案都必须经过对齐和开环旋转。 此代码中是否有相关规定?

编辑:

在这里的论坛上搜索时、我 遇到 了这篇文章 、其中提到了作为一个因素的电机的 R/L 比率。 对于我的电机、比率为5.7/0.000223 = 25560。 我认为这将其限定为"低电感"电机、因此需要更高的 PWM 频率(以及控制频率?)。 它似乎是在 user_mtr1.h 中设置的:

//! \brief 定义脉宽调制(PWM)频率、kHz
//!
#define USER_M1_PWM_FREQ_kHz ((float32_t)(60.0f)
#define USER_M1_PWM_TBPRD_NUM (uint16_t)(USER_SYSTEM_FREQ_MHz * 1000.0f / USER_M1_PWM_FREQ_kHz / 2.0f)

我发现、您还必须更改  USER_M1_NUM_PWM_TICKS_PER_ISR_TICK、以便 ISR 不会尝试太快地运行。 我将其设置为3、将 PWM 频率设置为100kHz、这意味着 ISR 控制环路频率从30kHz 略微增加到33.3kHz、两者都高于我的25560 R/L 似乎没有任何变化。 第3步仍然正常、第4步仍然疯狂。 我在步骤4中尝试了自动电机参数识别、它的值为 R=15.29、L=9.99e-07、磁通量=2.95、R/L ~ 15000。 当我跑完跑步时仍然很疯狂。

编辑2:

我是否甚至使用了正确的实验室指南? 查看 motorcontrol SDK 文件、我会看到 一 个名称类似但完全不同的实验指南、位于   C:\ti\c2000Ware_MotorControl_SDK_4_00_00_00\solutions\con\sensorless_focs\docs\labs\MotorControl SDK InstaSPIN Lab Guide.pdf。 从内部来看、它似乎仅支持我拥有的 LAUNCHXL-F280049C 和 我没有的 BOOSTXL-DRV8320RS。 是否可以让该实验与我使用的 DRV8316配合使用? 我应该尝试遵循哪一个实验室指南? 其他论坛帖子似乎引用了该实验指南、而不是我使用的"通用"指南。 GUI 有什么关系? 我有点困惑。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您的电机的额定电流是多少?

    建议您尝试使用 DRV8323RS/DRV8323RH 等其他 DRV boostxl 板来识别或运行电机。

    对于电机参数识别、以确保电机 在磁通测量和 LS 识别状态期间平稳旋转。

    #define USER_MOTOR1_RES_EST_CURRENT     (1.5f)                              // A - 电机额定电流的10-30%

    #define USER_MOTOR1_IND_EST_CURRENT     (-1.0f)                            // a - 电机额定电流的10-30%、 足以实现旋转

    #define USER_MOTOR1_MAX_CURRENT           (5.0f)                              // A  -电机额定电流的30~150%

    #define USER_MOTOR1_FLUX_EST_FREQ_Hz    (40.0f)                           // Hz -电机额定频率为10~30%

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的回复。

    电机是定制的、没有已知的额定电流。 DRV8323有何不同之处可使其更好地工作? 我是否使用了正确的软件(MotorControl SDK InstaSPIN 实验室指南与通用实验室指南与 MotorWare 实验室)?

    此电机具有磁性推力轴向悬架这一事实是否会产生任何影响? 转子的 LEVation 位置以不同的速度(流速)轴向移动、这可能会改变反电动势和磁通的某些东西。 轴向仿形控制器也不完美、它对电机识别过程中似乎涉及的步进运动有自己的响应。 如果此悬挂装置的识别完全不起作用、我也不会感到惊讶-您对此有什么经验吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [~ userid="494131" URL"/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forume/1127255/launchxl-f280025c-universal-motor-control-lab build-4-no-open-loop-spin-up/4182560#4182560"DRV8323、它们有何不同? [/报价]

    DRV8323板在低侧使用外部分流电阻器、与使用低侧 MOSFET 的 Rdson 的 DRV8316相比、其电流采样精度要高得多。

    [引用 userid="494131" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forume/1127255/launchxl-f280025c-universal-motor-control-lab-build-4-no-open-loop-spin-up/4182560#4182560"]与使用 MotorWare 的通用实验指南(引用)/MotorWare 与使用 MotorWare 的通用实验软件对比[引用 MotorWare SDK)

    如果您使用 F280025C 通过 InstaSPIN-FOC 进行电机控制、则需要使用 MotorControlSDK 和通用实验。  MotorWare 仅支持 F2802xF、F2806xF、用于通过 InstaSPIN-FOC 进行电机控制。

    [引用 userid="494131" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forume/1127255/launchxl-f280025c-universal-motor-control-lab build-4-no-open-loop-spin-up/4182560#4182560"]这种情况会对电机产生磁性的影响吗? 转子的 LEVation 位置以不同的速度(流速)轴向移动、这可能会改变反电动势和磁通的某些东西。 轴向仿形控制器也不完美、它对电机识别过程中似乎涉及的步进运动有自己的响应。 如果此暂停期间身份识别完全不起作用、我也不会感到惊讶-您对此有什么经验吗?[/引述]

    我不能完全理解你在这里提出的问题。 如果您尝试使用该实验运行 PMSM、并按照指南调整识别变量、 则应正确识别 PMSM 的电气参数、并且电机可以在本实验的相关支持套件上正常运行。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的详细答复。

    我没有意识到 DRV8316依赖于 FET Rdson 来测量电流。 我将介绍如何获取 DRV8323。 DRV8320是否也可以工作?

    关于轴向悬架、我的意思是、借助这个特定的 PMSM、其中的一些电气参数可能会根据电机的旋转速度而变化。 当它旋转得更快时、它会泵更多的流体、从而改变轴向悬架中力的平衡、这意味着转子现在处于相对于定子的不同位置。 大多数电机不存在此问题、转子和定子始终保持相同的关系(当然、除了旋转)。 我的直觉是、转子轴向移动会改变气隙(在本例中实际上是水隙)、这会对反电动势和磁通量产生一定的影响(R 和 L 将保持不变)。 我不确定从 FOC 控制器的角度到底会产生什么影响、我想知道您是否有任何见解。

    话虽如此、您可以从我的原始帖子中看到、角度估算器在各种速度下似乎工作正常。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    此外、我在切换到闭环之前关于开环自旋的问题又如何呢? 我认为所有 FOC 驱动器都必须在环路闭合之前进行对齐和开环。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    转子和定子之间的气隙不是主要因素、在大多数电机中、它应保持接近恒定值、其中包括泵。

    速度的稳定性取决于控制参数、负载和电机电气参数的精度、相电流和电压的采样信号。

    具有 FAST 的 instaSPIN-FOC 包括针对极低速的开环控制、您无需添加专门的对齐和开环控制步骤。