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.

[参考译文] TMS320F28031:负载启动时 BLDC 电机急动

Guru**** 2387060 points
Other Parts Discussed in Thread: TMS320F28031, CONTROLSUITE
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/961531/tms320f28031-bldc-motor-jerking-at-startup-on-load

器件型号:TMS320F28031
Thread 中讨论的其他器件: controlSUITE

我们正在使用 TMS320F28031设计 BLDC 电机控制器。 当我们在车辆(电池供电)上进行测试时、我们观察到初始启动条件下的急动、并且一旦车辆行驶、它就会平稳。 我试图找到这个问题、并观察到在启动时霍尔信号在10-12个状态下以相反的顺序出现。 这意味着在启动时、车辆正反向移动、软件正尝试正向换向、并且由于发生了错误换向并发出了抖动声音。

请建议我们在启动条件下需要采取哪种类型的预防措施、并向我们推荐此类应用的理论。

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

    如参考链接中所述、原因是如果使用霍尔传感器、换向点或起始位置不正确。 如果电机以满载启动、并且需要根据霍尔传感器的输入信号检测初始位置、则无法将开环控制用作 controlSUITE 中的启动参考代码。

    我们没有这方面的详细文档、您可能需要在某些教科书或工程论坛中搜索。

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

    我们尚未使用 controlSUITE 中提供的任何参考代码。 我们已经编写了自己的代码来检测电机的霍尔信号、因此我们正在进行电机换向。 我认为霍尔传感器在这里不会产生任何问题、因为它在几秒钟后平稳运行、这意味着电机霍尔传感器能够提供精确的位置。 如果电机没有负载、则电机运行平稳。

    我们也尝试过其他电机、我们面临的问题也是一样的。 如果霍尔传感器产生问题、那么我们至少应该在一个电机中获得更好的结果。 它完全与启动负载条件相关。 我不明白为什么这个问题只出现在负载上。

    我们在论坛上进行了搜索,发现2-3人面临同样的问题,但没有任何人向他们提供任何解决办法。

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

    如上所述、您需要设计一个启动控制功能来根据霍尔传感器的输入信号检测初始位置、然后相应地从正确的换向步骤启动电机、而无需使用固定换向步骤启动电机。

    您需要调整启动时的速度和电流调节器、不要使用相同的参数来高速运行电机。 这应该是控制算法设计上的通用工程问题、与 MCU 控制器无关。

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

    正如我在上面提到的、我没有使用任何参考代码。 我在换向过程开始之前检测到霍尔信号、并且仅在最新的霍尔状态下对电机换向。 因此、在错误/固定的霍尔状态下不会发生换向。  

    我没有提到这是与 MCU 控制器相关的问题。 如果您认为这是一个通用的工程问题、请分享一些参考文章或任何信息、以便我可以使用它们来解决我的问题。 如果您不知道确切的问题或解决方案、请联系这些应用领域的专家。 自2008年以来、我们一直在产品中使用德州仪器的 DSP、我们希望每当遇到问题时、德州支持工程师都应该为我们指明正确的道路。  

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

    在此论坛上、我们能够支持特定器件和参考相关问题。 我们只能为您提供一些常见建议、如果您不知道详细的设计代码和更多详细信息、我们很难提供您想要的支持。

    您可能会提供更多信息来显示问题。

    您使用的是什么控制算法? 使用3个霍尔传感器或有传感器的梯形控制?

    是否同时实现了速度闭环和电流闭环? 还是仅当您对 BLDC 使用梯形控制时才使用速度闭环?

    如何从零速启动电机? 使用具有强制角的开环? 还是闭环? 是否使用了闭环?  

    启动时电机上有任何负载?

    请发布一些电机相电流和换向信号波形、这些波形可帮助我们了解问题。

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

    Amit、您好!

    除了罗的最后一条评论之外、通常的做法是在第一个换向周期之前通过触发单个霍尔代码来启动(开控制环路)电机。 旧代码使用了该方法、但我们不喜欢使用旧 FOC 启动模式时的突然浪涌电流。

    KICK 启动原理只需调用霍尔中断处理程序、即可将代码驱动到用于 PWM 驱动的 GPIO 端口中。 请注意、这可能需要霍尔传感器环具有相对于磁性转子位置的调整位置。 另一种方法是使用线性霍尔传感器和 ADC 来改进 正常和负载条件下的转子位置。   

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

    请提供有关您的设计和问题的更多信息吗? 如果不是、我们无法理解您所遇到问题的根本原因、除了我上面提到的一些常见的感官之外、不能为您提供更多建议。 谢谢!

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

    实际上、当电机的转速为零转/分并且我们开始旋转电机时、会发出一些噪声很大的急冲声音。

    为了弄清电机到底发生了什么、我们观察到了电机的启动霍尔状态、并观察到了电机的异常行为、 它反向旋转一步、然后开始正向旋转、这种反向旋转一直到最初的8个状态、之后它运行正常。

    霍尔状态开始时:

    1

    5.

    4.

    6.

    4.

    5.

    1

    3.

    1 3 2 6 4 5  

    1 3 2 6 4 5

    讨论软件设计器件:

    我们以开环方式运行 BLDC 电机(48极)、一旦用户给出油门命令、命令进入 rmp2cntl.h 库的 RC2_MACRO ()、此宏的输出直接进入 BLDCPWM_MACRO (Pwm1)。  我们将持续监控输入直流电流、如果直流电流超过特定限制、即30A、则图片中会显示 P LOOP、通过降低油门命令的误差因数来限制电流。 在电机平稳运行几秒钟后、我们只会在启动时、尤其是在负载时遇到此问题。

    如果您需要更多信息、请告诉我。

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

    Amit、您好!

    看起来、转子在磁性转子极之间搜索(在负载下)。

    开环换向的一个概念是、在霍尔中断启动后、首先触发已知代码5 (最高相电流)、以建立已知的开始位置。

    从老问题开始,鸡肉还是鸡蛋都是先上来的。

    对于重转子负载、即使在霍尔条件下、也可能会增加软启动换向(更长)周期、添加延迟环路? 第一个霍尔代码(度数)越接近实际的机械转子位置越好、因此调整霍尔 PCB 总成可能会减少转子停止移动后的启动位置误差。 人们会认为、48个极点可以轻松地用于软件中的任何霍尔位置误差。 与无传感器 FOC 相比、霍尔传感器的电池效率较低、从长远来看要麻烦得多。

    对于开环梯形波 FOC、我们使用 {5、1、3、2、6、 4}然后切换闭合计时器环路 {5、2、3、4、6、 1、 1、6、2、5、 4、3}。  实际的霍尔代码取决于软件中的转换表。 使用霍尔代码是为了简单起见、但如果使用48个极点、快速无传感器 FOC 可能会更加谨慎。

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

    如上所述、确保启动和换向指数映射到霍尔传感器输入状态。 电机似乎不能平稳旋转、并且在启动过程中会产生振动。 如果使用开环、则可能会尝试增加占空比;如果在电机开始运行时使用闭环、则可能会增加扭矩电流。 由于电机具有霍尔传感器、因此最好实施启动的速度闭环。