比例积分微分中的I.

时间:2011-03-20 22:53:24

标签: math robotics

I in PID(比例积分微分)是前几个误差的总和,仅由它的增益加权。

使用错误(-1)表示先前的错误,错误(-2)表示之前的错误等...'我'可以描述为:

I =(错误(-1)+错误(-2)+错误(-3)+错误(-4)等...)* I_gain

为什么在设计PID时'我'并没有设计为过去的重要性,例如:

I =(错误(-1)+(错误(-2)* 0.9)+(错误(-3)* 0.81)+(错误(-4)* 0.729)+等...)* I_gain < / p>

编辑:重写

1 个答案:

答案 0 :(得分:3)

积分项是所有过去错误的总和。您只需在每个时间步骤将错误添加到“积分器”。如果需要限制,如果超出范围,则将其钳制到最小值或最大值。然后将此累计值复制到输出中,并添加比例和微分项,并在必要时再次钳制输出。

微分项是当前错误和先前错误(错误的变化率)之间的差异。 P当然与误差成正比。

err = reference - new_measurement
I += kI * err
Derivative = err - old_err
output = I - kD * Derivative + kP * err
old_err = err

你有它。当然没有限制。

一旦控制器达到参考值,误差将变为零,积分器将停止变化。噪声自然会使它反弹一点,但它会保持在满足你的目标所需的稳态值,而P和D项完成大部分工作以减少瞬态。

请注意,在稳态条件下,I term是提供任何输出的唯一东西。如果控制器已达到参考值并且这需要非零输出,则它仅由积分器提供,因为误差将为零。如果I术语使用加权误差,它将开始衰减回零并且不能根据需要维持输出。