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