Ajuste de PID Ziegler-Nichols: da resposta em etapas de circuito aberto aos ganhos práticos do controlador
Aprenda o ajuste de PID Ziegler-Nichols usando ganho de processo, tempo morto e constante de tempo. Exemplo resolvido com valores reais de controle motor. Calculadora online gratuita.
Conteúdo
Por que o ajuste de PID ainda é importante
Os controladores PID estão em toda parte — desde o circuito de regulação térmica em seu forno de refluxo até o controlador de velocidade em um motor DC sem escovas. Apesar do surgimento de estratégias de controle adaptativo e preditivo de modelos, o PID clássico continua sendo o carro-chefe do controle incorporado. O motivo é simples: funciona, é barato de implementar em um micro de 8 bits e, quando ajustado corretamente, oferece excelente desempenho.
O problema, é claro, é “ajustado corretamente”. Um PID mal ajustado oscila, ultrapassa ou responde tão lentamente que pode muito bem não estar lá. O método de circuito aberto Ziegler-Nichols oferece um ponto de partida disciplinado e repetível com base em três características mensuráveis do processo: ganho do processo “MATHINLINE_14”, tempo morto “MATHINLINE_15” e constante de tempo “MATHINLINE_16”.
O método de resposta em etapas de loop aberto
A ideia é simples. Você coloca seu sistema em circuito aberto, aplica uma mudança de etapa no atuador (digamos, uma etapa de tensão em um acionador de motor) e registra a variável do processo (velocidade do motor, temperatura, posição — o que você está controlando). Da curva de resposta resultante em forma de S, você extrai três parâmetros:
- Process Gain “MATHINLINE_17” — a proporção entre a alteração final na saída e a entrada da etapa. Dimensionalmente, isso pode ser RPM por volt, °C por porcentagem de carga, etc.
- Dead Time “MATHINLINE_18” — o atraso antes que a saída comece a responder, em segundos.
- Constante de tempo “MATHINLINE_19” — o tempo que a saída leva para atingir aproximadamente 63% de seu valor final após o tempo morto.
As fórmulas de Ziegler-Nichols
Para um controlador PID, as regras clássicas de ajuste de malha aberta da Ziegler-Nichols são:
“BLOCO MATEMÁTICO_0"
“BLOCO MATEMÁTICO_1"
“BLOCO MATEMÁTICO_2”
Os ganhos integrais e derivativos na forma paralela (ISA) são então:
“BLOCO MATEMÁTICO_3”
“BLOCO MATEMÁTICO_4”
Para um controladorPI (sem ação derivada — geralmente preferida em sistemas ruidosos ou quando o chute derivado é uma preocupação):
“MATHBLOCK_5”
“MATHBLOCK_6”
Essas fórmulas têm como alvo uma taxa de decaimento de um quarto — cada superação sucessiva é cerca de 25% da anterior. É um ajuste moderadamente agressivo que funciona bem como ponto de partida.
Exemplo resolvido: controle de velocidade do motor DC
Digamos que você esteja projetando um controlador de velocidade para um motor DC escovado de 24 V acionando uma correia transportadora. Você escala o ciclo de trabalho do PWM de 0% para 20% e registra a velocidade do motor com um codificador de tacômetro. Aqui está o que você observa:
- O motor não começa a acelerar até 0,15 s após a etapa → “MATHINLINE_20”
- A velocidade atinge 63% de seu valor final em “MATHINLINE_21” → “MATHINLINE_22”
- A velocidade final é de 600 RPM para uma entrada de trabalho de 20% → “MATHINLINE_23”
“MATHBLOCK_7”
“MATHBLOCK_8”
“MATHBLOCK_9”
“MATHBLOCK_10”
“MATHBLOCK_11”
Para controle somente de PI:
“MATHBLOCK_12”
“MATHBLOCK_13”
Você pode verificá-los instantaneamente — [abra a calculadora PID Controller Tuning (Ziegler-Nichols)] (https://rftools.io/calculators/motor/pid-tuning/), digite “MATHINLINE_24”, “MATHINLINE_25”, “MATHINLINE_26” e confirme os resultados.
Dicas práticas para sistemas reais
Comece com PI e adicione D. Em muitas aplicações de controle de motor, o ruído do sensor no feedback de velocidade (especialmente de codificadores de baixa resolução) torna o termo derivado mais problemático do que vale a pena. Comece com os ganhos de PI, verifique a operação estável e adicione apenas a ação derivada se precisar de uma rejeição de perturbação mais rápida. Ziegler-Nichols é um ponto de partida, não um destino. O critério do quarto de decaimento geralmente produz mais superação do que você gostaria em um sistema de produção. Uma prática comum é começar com os valores Z-N, depois reduzir “MATHINLINE_27” em 20— 30% e aumentar ligeiramente “MATHINLINE_28” para trocar a velocidade por uma liquidação mais suave. Observe sua taxa de amostragem. Se seu circuito de controle funciona a 1 kHz, mas seu tempo morto é de 150 ms, você tem 150 amostras de atraso puro. Está tudo bem. Mas se seu loop funcionar apenas a 50 Hz, você terá apenas 7 a 8 amostras de tempo morto, e o termo derivado será muito grosseiro. Certifique-se de que “MATHINLINE_29” seja pelo menos 5 a 10 vezes seu período de amostra. Anti-enrolamento não é opcional. O termo integral acumulará erros durante a saturação (por exemplo, quando o motor está em pleno funcionamento e ainda não atingiu o ponto de ajuste). Implemente a fixação ou o cálculo retroativo contra a queda, ou você verá uma enorme superação na recuperação. Reajuste nas condições operacionais. O ganho do processo e a constante de tempo podem mudar com a carga, a temperatura e a tensão de alimentação. Se o motor aciona uma carga útil de massa variável, os ganhos de Z-N ajustados sem carga podem oscilar sob carga total. Ajuste no pior ponto de operação (mais desafiador).Quando usar um método diferente
O ajuste de malha aberta da Ziegler-Nichols pressupõe um modelo de processo de primeira ordem mais tempo morto (FOPDT). Se seu sistema for de ordem significativamente superior — por exemplo, um sistema térmico em cascata com várias constantes de tempo — a aproximação do FOPDT pode ser ruim, e métodos como o Cohen-Coon ou o ajuste automático de relés podem oferecer melhores ganhos iniciais. Para sistemas em que você não pode realizar um teste de etapas com segurança (inversores de alta potência, processos químicos), o método de ganho máximo (circuito fechado) da Ziegler-Nichols ou o ajuste automático baseado em software são mais apropriados.
Experimente
Pegue seus dados de resposta em etapas, extraia “MATHINLINE_30”, “MATHINLINE_31” e “MATHINLINE_32” e [abra a calculadora PID Controller Tuning (Ziegler-Nichols)] (https://rftools.io/calculators/motor/pid-tuning/) para obter seus ganhos iniciais em segundos. Ele calcula os parâmetros PI e PID completos, para que você possa comparar e escolher a estrutura certa para sua aplicação. Marque-o como favorito — você o usará com mais frequência do que pensa.
Artigos Relacionados
Torque Units Demystified: Converting N·m to lb-ft, oz-in, and Beyond for Motor Applications
Learn how to convert torque units between N·m, lb-ft, oz-in, kg-cm & more. Worked examples for servo, stepper, and automotive motor applications.
21 de mar. de 2026
Motor ControlHow Much Power Is Your H-Bridge Wasting? Calculating MOSFET Losses in Motor Drivers
Learn to calculate conduction and switching losses in MOSFET H-bridge motor drivers. Worked example with real numbers using our power dissipation calculator.
18 de mar. de 2026
Motor ControlHow Long Will Your Battery Last Under Motor Load? A Practical Guide to Runtime Estimation
Estimate battery runtime under motor load. Covers LiPo, NiMH, lead-acid packs with drive efficiency, depth of discharge, and real worked examples.
8 de mar. de 2026