Simulink:PID控制器 - 反向计算和反向夹紧的夹紧之间的区别?

时间:2013-09-06 09:48:25

标签: matlab controller limit simulink integrator

我需要为PID控制器实现抗饱和(输出限制)。 Simulink提供了两个选项:back calculationclampingdocumentation),它们似乎可以提供相同的结果。我知道回溯计算在数学上做了什么。它需要定义反向计算增益Kb。这个增益取决于我的控制器饱和的时间长度,因此它实际上是一个动态值(因为我可能有很高的饱和时间变化)。你看到了控制这个价值的方法吗? (在这种情况下,可能需要建立我自己的PID控制器,如上面的文档或下图所示。

PID controller with anti-windup using back calculation

这让我想到了问题,clamping实际上在做什么?还有什么其他差异?哪一个更快,哪一个更坚固抵抗僵硬的斜坡?有没有人有同时使用它们的经验?

2 个答案:

答案 0 :(得分:2)

不确定这是否完全回答了问题,但是PID Controller文档页面更多地解释了夹紧问题:

  

clamping

     

当块组件的总和时停止集成   超出输出限制和积分器输出和块输入   有相同的标志。当块的总和时恢复积分   组件超出输出限制和积分器输出和   块输入符号相反。块的积分器部分   是:

enter image description here

  

钳位电路实现了确定积分是否继续所必需的逻辑。

如果您选择钳位选项并查看掩模下方,您可能会看到钳位电路的详细信息。

答案 1 :(得分:2)

除了am304's answer之外,还有一些事情需要考虑。

夹紧

钳位始终有效。 它检测到积分器溢出的时间,并将PID控制器的积分路径设置为零,以避免因使用简单开关而发生结束。

夹紧是一种常用的防缠绕方法,特别是在数字控制系统的情况下。然而,在严肃的应用中,还涉及前向钳位 - 评估控制器输入。我必须手动实现这种机制。

返回计算

返回计算在很大程度上取决于反向计算系数Kb 。如果您不知道如何实际计算参数Kb ,请不要使用反算。此方法计算实际控制器输出与饱和输出之间的差值,并从I-Gain路径中减去它,由Kb放大。 在大多数情况下,默认值Kb = 1将导致比夹紧更差的结果,甚至可能根本没有效果。 Kb应根据采样时间或计算得出 在D-增益被包含的情况下,基于D-和I-增益。应咨询适当的文献来计算系数。 使用正确设置的系数进行反向计算可以实现比夹紧更好的动态效果!

enter image description here