4

我模拟了一个带有影响输出的输入参数的 PID 控制器,并设置 Kp=0.2、Kp=0.5、Kd=0,这似乎是我在现实中期望的最佳值。然而,我无法弄清楚的一件事是当错误为 0 时控制器如何启动的直觉。例如,我的目标是 2,输出是 2,输入变量是,比如说,4 - 控制器会将下一个输入设置为 0 - 尽管 4 是一个完美的值。

是否有某种理论上合理的方法可以使算法的第一步考虑到一些“初始猜测”并且在过程开始时不会消失?

4

1 回答 1

4

PID 控制器中唯一的状态是积分的当前值,如果您有一些关于可能的稳态误差的附加信息,将其设置为非零值会很有帮助。

在实践中,您可能只想使用 PID 控制器几次,看看积分通常采用什么值,并将其用作起始值。

如果您有一些额外的信息,例如知道对于 x 的输入正确的输出是 y,那么您可以反转公式以找到正确的积分,如下所示:

output = input * Kp + Integral * Ki
 => y = x * Kp + Integral * Ki
 => Integral = ( y - x * Kp) / Ki
于 2014-02-03T18:53:14.523 回答