PID概述

激励为系统输入与输出之差
$$ e(t)=R_{in}(t)-Y{out}(t) $$PID公式
$$ u(t)=K_p\cdot err(t)+K_i\int_{0}^{t}err(t)\,dx+K_d\frac{d\,err(t)}{dt} $$$$ u(t)=K_c\,[e(t)+\frac{1}{T_i}\int_{0}^{t}e(t)\,dt+T_d\frac{d\,e(t)}{dt}] $$有:
$$ K_i=\frac{K_c}{T_i} $$$$ K_d=K_c\cdot T_d $$Ziegler-Nichols方法
- 先给定一个$K_{cr}$(控制器增益)值,使系统处于临界震荡。
- 测定系统震荡周期$T_{cr}$
- 计算得到$K_c$、$T_i$和$T_d$的值
- 基于上一步得到的值微调参数
| 控制方式 | $K_c$ | $T_i$ | $T_d$ |
|---|---|---|---|
| P | $0.5K_{cr}$ | $\infty$ | $0$ |
| PI | $0.45K_{cr}$ | $0.83T_{cr}$ | $0$ |
| PD | $0.8K_{cr}$ | $\infty$ | $0.12T_{cr}$ |
| PID | $0.6K_{cr}$ | $0.5T_{cr}$ | $0.12T_{cr}$ |
以$0.5K_{cr}$为基础
- 增大$K_i$(即减小$T_i$),需微调增大$K_c$
- 增大$K_d$(即增大$T_d$),需微调减小$K_c$