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>
编辑:重写
答案 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术语使用加权误差,它将开始衰减回零并且不能根据需要维持输出。