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.

[参考译文] TMS320F28035:InstaSpin BLDC 的 PWM 负值

Guru**** 2601915 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/676566/tms320f28035-negative-values-for-pwm-for-instaspin-bldc

器件型号:TMS320F28035

我让 InstaSpin BLDC 运行一个8极12伏电机。 电机运转正常、但在启动时、我的系统有时会获得高电流、电机不会启动。 在这个状态中、我注意到电流 PID 通过将其输出取至 Umin (-0.95)来执行它应该执行的操作。 但是、PWM 不响应-0.95。 它将电流保持在高电平状态。 如果我将电流 PID Umin 更改为(0.20)、过流会下降并防止出现高电流状态。 几乎就像 PWM 不响应负数一样、即使它表示其范围为-1到1。 实际范围可能是0到1。 我将尝试通过查看 TI 源代码来确认这一点。 这可能是 TI InstaSpin BLDC 实验室代码的已知错误。 我使用的是8级联示例。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我查看了源代码、PWM_CNTL_MACRO (v)确实接受负占空比、并将其缩放到零占空比。 即使是这样、当我运行电机并为其提供零占空比时、我预计将获得50%的电流、但我没有电流流入电机。 当我给它0.3时、电机运行正常、当我给它-0.3时、电机运行但产生负载噪声。 我可以看到、高电流情况下电流 PID 变为-0.95会导致我的系统消耗大量电流的原因。 我已将电流 PID 范围从0.2限制为0.95以防止这种情况、但仍然不完全理解为什么我需要这样做。

    有人能否解释一下 InstaSpin BLDC 实验中 PWM 的设置方式以及负 PWM 占空比为何不起作用? 我想-1个职责会使占空比为零、但这不是发生的情况。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    根本原因是反馈速度与目标速度相反、因此基准电流为负、电流 PI 稳压器的输出也为负、输出为零、这意味着 PWM 占空比为50%。
    您可以更改 Int_Threshold 并调节 KP&Ki 来解决此问题、或者如果您只需要单方向旋转、则将 Umin 设置为零。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢、它从现在开始不断发展。