对运算次数进行优化后的离散PID算法的伪代码如下:
d[k+1] = d[k] +
e[k]*(Kp+Ki+Kd)-
e[k-1]*(Kp+2*Kd)+
e[k-2]*(Kd);
其中d[k]为当前时刻PID的控制输出,d[k+1]为下一时刻(新的)PID的控制输出,e[k]为当前时刻的控制误差,e[k-1]和e[k-2]分别为上一时刻和上上个时刻的控制误差。
如果令Kd=0,就可以得到题主想要的对应关系:
d[k+1] = d[k] + e[k]*(Kp+Ki) - e[k-1]*(Kp);
即a=Kp+Ki,b=Kp。
参考资料:
1. http://en.wikipedia.org/wiki/PID_controller