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:PMSM FOC#39;s 扭矩 PID 输出被饱和

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1049698/tms320f28031-pmsm-foc-s-torque-pid-output-gets-saturated

器件型号:TMS320F28031

您好!

我已经使用 TI 给出的示例代码为 PMSM 电机实现了无传感器 FOC。

它仅在扭矩环路中运行、我没有添加速度环路、因为我只需要在扭矩环路中运行电机。 我已经使用 PO 方法实现了一个 MPPT 环路、此环路为 PID 块提供参考命令。 它比较了以前的功率和当前功率、并增加/减少 PID 的参考命令。

我的电机运行正常、但如果我限制功率或降低运行中的功率、则 PID_IQ1.OUT 会饱和。 在我减少引用命令之前、它不会恢复。 但根据 KC 增益、它应该来自饱和。 我的电源的使用情况保持恒定、MPPT 环路不会更改命令。

您能指导我解决此问题吗? 我是否可以在 PMSM FOC 中仅使用扭矩环路、或者必须在扭矩环路顶部使用速度环路?

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

谢谢

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

    这是正常情况、您必须手动或使用速度控制器来更改 PI 控制器的参考值、否则反馈值始终小于参考值、积分值将饱和。

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

    系统要求是扭矩控制、因此不能放置速度控制 PI。

    我可以在代码中添加一些智能以更改参考值。 但是、如何在 PI 环路实际运行之前检测其是否处于饱和状态? 如果您提出一些想法、会有所帮助?

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

    您可以检查积分变量的值是否等于 PI 控制器的最大或最小变量。

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

    是的、我尝试过、但当我增加 PID 参考命令时、它立即进入饱和状态、电机速度下降。 之后、我必须将 PID 的参考命令减少巨大的裕量、然后只有 PID 从饱和状态中恢复。 这会在速度上产生振荡。 这是不可接受的。

    我如何知道我的电机的响应时间是多少、或者 PID 的参考命令可以增加多少? 如果我的软件知道这些细节、那么我可以更好地控制这一点。

    请建议任何更快预测饱和的想法。

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

    您是否尝试调节 PI 控制器的增益(Kp、Ki 和 Kd)?

    [引用 userid="460379" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1049698/tms320f28031-pmsm-foc-s-torque-pid-output-gets-saturated/3890241 #3890241"]我如何知道我的电机的响应时间是多少或 PID 的参考命令可以增加多少?

    您可以查看一些有关 PID 或控制理论的教科书、其中包含计算响应时间的公式、如果您想了解确切时间、也可以使用 Matlab 对其进行仿真/计算。 通常、您可以根据系统调整控制参数以获得正确的响应。