O método de ajuste de Ziegler -Nichols é um método heurístico de ajustar um controlador PID. Foi desenvolvido por John G. Ziegler e Nathaniel B. Nichols. É realizado definindo os ganhos i (integral) e d (derivada) para zero. O ganho "p" (proporcional), k p {\ displaystyle k_ {p}} é então aumentado (de zero) até atingir o ganho final k u {\ displaystyle k_ {u}}, no qual a saída do controle O loop possui oscilações estáveis e consistentes. K u {\ displaystyle k_ {u}} e o período de oscilação t u {\ displaystyle t_ {u}} são usados para definir os ganhos p, i e d, dependendo do tipo de controlador usado e do comportamento desejado:
Ziegler–Nichols method Control Type K p {\displaystyle K_{p}}O ganho final (k u) {\ displaystyle (k_ {u})} é definido como 1 / m, onde m = a razão de amplitude, k i = k p / t i {\ displaystyle k_ {i} = k {p { }/T_ {i}} e k d = k p t d {\ displaystyle k_ {d} = k_ {p} t_ {d}}.
Esses 3 parâmetros são usados para estabelecer a correção u (t) {\ displayStyle u (t)} do erro e (t) {\ displayStyle e (t)} através da equação:
u ( t ) = K p ( e ( t ) + 1 T i ∫ 0 t e ( τ ) d τ + T d d e ( t ) d t ) {\displaystyle u(t)=K_{p}\left(e(t)+{\frac {1}{T_{i}}}\int _{0}^{t}e(\tau )\,d\tau +T_{d}{\frac {de(t)}{dt}}\right)}que possui a seguinte função de transferência, relação entre erro e saída do controlador:
u ( s ) = K p ( 1 + 1 T i s + T d s ) e ( s ) = K p ( T d T i s 2 + T i s + 1 T i s ) e ( s ) {\displaystyle u(s)=K_{p}\left(1+{\frac {1}{T_{i}s}}+T_{d}s\right)e(s)=K_{p}\left({\frac {T_{d}T_{i}s^{2}+T_{i}s+1}{T_{i}s}}\right)e(s)}O ajuste de Ziegler -Nichols (representado pelas equações 'PID clássico' na tabela acima) cria uma "decaimento do quarto de onda". Este é um resultado aceitável para alguns fins, mas não é ideal para todas as aplicações.
Esta regra de ajuste visa dar aos loops PID melhor rejeição de perturbação.
Ele gera um ganho e ultrapassagem agressivos - alguns aplicativos desejam minimizar ou eliminar a overshoot e, para isso, esse método é inapropriado. Nesse caso, as equações da linha rotuladas como 'sem overshoot' podem ser usadas para calcular ganhos de controlador apropriados.