我不了解PID控制器的积分部分

时间:2012-11-24 15:04:58

标签: controller integral control-theory pid-controller

我不理解PID控制器的组成部分。让我们假设来自维基百科的这个伪代码:

previous_error = 0
integral = 0 
start:
  error = setpoint - measured_value
  integral = integral + error*dt
  derivative = (error - previous_error)/dt
  output = Kp*error + Ki*integral + Kd*derivative
  previous_error = error
  wait(dt)
  goto start

积分在开始时设置为零。然后在循环中它整合了错误随着时间的推移。当我对测量值或设定值进行(正)变化时,误差将变为正值,积分将在整个时间内(从头开始)“吃掉”值。但我不明白的是,当误差稳定回零时,积分部分仍然会有一些值(随时间积分的误差)并且仍然会对控制器的输出值有所贡献,但它不应该。

有人可以解释一下吗?

6 个答案:

答案 0 :(得分:9)

将输出视为稳定状态...您希望measured_value为设定值,误差为零,输出为将过程保持稳定在测量值所需的任何值。 (在某些情况下可能为零,但输出可能并不总是需要为零 - 例如:您需要将加热器设置为标记6.5以将房间保持在72F。)

如果误差为零,则比例误差项对输出没有任何贡献。

如果进程处于稳定状态,则error-previous_error为零,且派生词没有任何作用。

如果输出是使过程保持稳定状态的适当设置,则积分项必须是提供输出值的唯一项。它累积了适当的误差记忆,以测量单位乘以观测时间,可以通过Ki项转换为输出单位,以outputUnits /(error * measurementTime)为单位。

作为恒温器示例,如果房间内电加热器旋钮上的输出为0-11单位,并且您正在测量房间中的度数F而不是每1分钟72F的设定值,那么积分总结你记录的DegreeFtooCold *分钟,Ki项将把观察到的错误的总和转换成表盘上的单位。

完全没问题,并且预期积分在稳定状态下不为零。

答案 1 :(得分:1)

让我们这样看:错误本身稳定到零是不够的。它要求积分变为零,这意味着测量值随时间的平均值与设定值匹配。

一个不好的例子是尝试从零开始达到100%的值,其中有一些Ki,Kp,Kd。

x = 0,60,80,90,98,99,100,100,100。

x的价值是多少?平均值为80.777。甚至不接近100。

答案 2 :(得分:1)

根据您要控制的系统和传感器的质量,控制器和系统/工厂之间总会存在某种干扰。当存在这样的干扰时,控制器的积分部分不会变为零,而是反作用!这是因为积分将一直变化,直到系统的输出等于参考值(即积分值与干扰相反)。

参见例如描述控制参数的this page:当系统和输入具有特定字符时,steady state error是可能的,积分将尝试反对这导致更低的最终错误,但在某些情况下会出现更多的过冲。

此外,传感器的精度/噪声可能会限制积分值的准确性,积分值可能会在零附近振荡。

答案 3 :(得分:1)

稳态错误需要I项。查看维基百科上的示例图。

http://en.wikipedia.org/wiki/File:Change_with_Ki.png

您可以通过更改I术语的增益来查看图表中的更改。显然,由于积分饱和,Ki = 2是通向高的方式,这是引起剧烈超调的原因。 Ki = .5看起来没问题,但如果你想尽快达到一个稳定的价值,你需要再增加一点Ki。看看Ki = 1,它略微超调,但仍然比Ki = .5更快地达到稳定。所以你必须决定这种权衡是否值得。

答案 4 :(得分:1)

我认为这里的部分解释是,当积分部分超调时,比例部分将开始反对它。因此,第二次过冲将更小,第三次更小,等等。但如上所述,通常会有一些过程噪声导致误差为非零,控制器可能永远不会达到恒定输出,但输出的变化应该非常小。

答案 5 :(得分:0)

在充分尊重的情况下,您有理由质疑PID定义,因为它相对于Intergral术语会使PID控制中的错误永久化。 错误可以说明如下: 1)即使没有错误,Intergral术语也会导致输出动作。 2)Intergral基于之前不再相关的错误。 如果控制器将输入与输出进行比较并通过负反馈并将误差驱动为零,则比例控制会产生0错误。

正确的PID术语: D term:将变化(微分)添加到稳态INPUT,以便在求和点中进行组合。

I term:将变化(微分)添加到稳态OUTPUT的负(负反馈),以便在求和点中进行组合。

整合是在(反对)负面反馈时进行区分

输出连接到求和点,具有非常高的游戏和负极性(反转)。

P term:是所需的OUTPUT除以所需的INPUT,或者是由OUTPUT输出的求和点的信号除以 INPUT通过信号馈送求和结。

D term,Differentiation加快输出对输入的响应,使输出更快接近正确的值。

当接近正确/期望值时,积分会降低输出响应。