PID算法的收敛性
首先给出PID控制系统框图
对于离散PID算法,其中控制量uk=Kpek+Ki∑j=0k−1ej+Kd(ek−ek−1)(1)u_k=K_pe_k+K_isum_{j=0}^{k-1}e_j+K_d(e_k-e_{k-1}) ag{1}uk=Kpek+Kij=0∑k−1ej+Kd(ek−ek−1)(1)对于PID算法,系统输出往往是控制量u的积分,数学表示为yk=∑j=0k−1(uj−c)(2)y_k=sum_{j=0}^{k-1}(u_j-c) ag{2}yk=j=0∑k−1(uj−c)(2)对于PI控制器(Kd=0K_d=0Kd=0),其阶跃响应有误差ek= rk−yk= 1−∑j=0k−1(uj−c)= 1−∑j=0k−1(Kpej+Ki∑i=0j−1ei−c)(3)egin{array}{l}e_k= _k-y_k\=1-sum_{j=0}^{k-1}(u_j-c)\=1-sum_{j=0}^{k-1}(K_pe_j+K_isum_{i=0}^{j-1}e_i-c)end{array} ag{3}ek= rk−yk= 1−∑j=0k−1(uj−c)= 1−∑j=0k−1(Kpej+Ki∑i=0j−1ei−c)(3)误差e的k替换为k-1,相减整理得ek+(Kp−1)ek−1+Ki∑j=0k−2ej=c(4)e_k+(K_p-1)e_{k-1}+K_isum_{j=0}^{k-2}e_j=c ag{4}ek+(Kp−1)ek−1+Kij=0∑k−2ej=c(4)再次以k-1替换k,相减整理ek+(Kp−2)ek−1+(1−Kp+Ki)ek−2=0(5)e_k+(K_p-2)e_{k-1}+(1-K_p+K_i)e_{k-2}=0 ag{5}ek+(Kp−2)ek−1+(1−Kp+Ki)ek−2=0(5)该齐次微分方程的两个特征值分别为α=−(Kp−2)+(Kp−2)2−4(1−Kp+Ki)2(6)alpha=frac{-(K_p-2)+sqrt{(K_p-2)^2-4(1-K_p+K_i)}}{2} ag{6}α=2−(Kp−2)+(Kp−2)2−4(1−Kp+Ki)(6)
β=−(Kp−2)−(Kp−2)2−4(1−Kp+Ki)2(7)eta=frac{-(K_p-2)-sqrt{(K_p-2)^2-4(1-K_p+K_i)}}{2} ag{7}β=2−(Kp−2)−(Kp−2)2−4(1−Kp+Ki)(7)要使PI控制器收敛,就要使两个特征根的模小于1,计算可知,PI算法的收敛域为{Ki2Kp−4Ki,Kp>0(8)left{egin{array}{l}K_i2K_p-4\K_i,K_p>0end{array} ight. ag{8}⎩⎨⎧Ki2Kp−4Ki,Kp>0(8)以下是不同KpK_pKp、KiK_iKi参数下的PI控制器的收敛情况