O ar-condicionado se acomoda exatamente na temperatura escolhida. O piloto automático segura a velocidade na subida. Um drone leva uma rajada de vento e volta a se nivelar. Por trás de tudo isso trabalha o mesmo mecanismo incansável: o controle PID, o jeito padrão de as máquinas perseguirem um alvo e corrigirem com suavidade qualquer desvio.
O nome soa como uma sigla intimidadora. Na verdade, o PID não passa de um controlador simples que foi crescendo, remendo a remendo, até virar uma pilha extremamente prática. Neste artigo, partimos do controlador mais rudimentar possível — o simples liga-desliga — e acrescentamos um termo de cada vez: P, depois PI, depois PID. A cada passo, você verá a resposta mudar em circuitos interativos que rodam nesta própria página.
As figuras 1 a 5 são interativas: simulações de verdade, não vídeos. Você pode brincar com as figuras primeiro e voltar ao texto depois. Os gráficos respondem no instante em que você mexe um controle.
Um esclarecimento antes de começar: desta vez o circuito em si não é o protagonista. Ele faz o papel de dublê de qualquer equipamento que responde a um comando com atraso: um aquecedor esquentando um cômodo, um motor ganhando velocidade, a água amornando. Boa parte do mundo físico se comporta assim, e é exatamente esse atraso que faz do controle um ofício.
1. Primeiro, o vocabulário do controle
O objetivo é sempre o mesmo: levar o valor real até o valor desejado e mantê-lo lá. A receita que decide qual comando enviar ao equipamento é o que chamamos de controle. Este artigo usa os símbolos padrão da área.
Se preferir sentir primeiro o comportamento real, pule direto: → Fig. 1.
| Símbolo | Nome completo | Significado |
|---|---|---|
| SP | Set Point (valor de referência) | O valor que você quer. A linha cinza tracejada dos gráficos. |
| PV | Process Value (variável de processo) | O valor realmente medido; aqui, a tensão do capacitor. A linha azul contínua. |
| MV | Manipulated Variable (variável manipulada) | O comando injetado no equipamento; aqui, a tensão SoftMV. A linha amarela contínua. |
| e | Erro | Quanto se desvia: \(e = SP-PV\). O controlador não olha para nada além deste e para decidir a MV. |
E este é o destino do artigo: o controle PID cabe em uma única linha. Observamos o erro e por três ângulos — quanto ele vale agora (P), quanto se acumulou ao longo do tempo (I) e com que velocidade está mudando (D) — e somamos as três respostas para formar o comando.
\[ MV = K_p\, e + K_i \int e\, dt + K_d \frac{de}{dt} \]
Não tente absorvê-la de uma vez. Vamos fazer essa equação crescer termo a termo, da esquerda para a direita: começando sem equação nenhuma (o liga-desliga) e acrescentando um termo cada vez que o controlador mostrar suas limitações. A linha de chegada desse percurso é a fórmula acima.
Nosso “equipamento” substituto é um resistor de 100 Ω alimentando um capacitor de 47 µF. Ao comandar uma tensão MV, a tensão do capacitor PV a alcança aos poucos, com uma constante de tempo \(\tau = RC = 100 \times 47 \times 10^{-6} \approx 4{,}7\,\mathrm{ms}\): um atraso de primeira ordem de livro-texto. Sua resposta ao degrau é a curva clássica, e o temperamento “não consigo mudar de repente” está escrito na própria fórmula.
\[ PV(t) = MV \left( 1-e^{-t/\tau} \right) \]
Em cada figura, o gráfico de cima mostra SP (cinza tracejada) e PV (azul); o de baixo, MV (amarelo). O truque é lê-los em dupla: em cima, “o azul está chegando perto do cinza?”; embaixo, “quanto o amarelo está trabalhando para isso?”. Quando o centro de uma figura sai da tela, a simulação dela pausa sozinha (veja sim=run/pause na linha de status).
2. Tudo ou nada (Fig. 1: controle ON/OFF)
Comecemos sem ferramenta nenhuma. Abaixo da referência? Liga no máximo. Acima? Desliga. É o controlador que todo mundo inventa de primeira, e ele continua em toda parte: o termostato de um ferro de passar, uma chaleira elétrica ou um aquecedor funcionam exatamente assim.
Implementado ao pé da letra, ele bateria liga-desliga em alta velocidade bem em cima da referência; na prática, então, acrescenta-se uma banda de histerese (banda morta) de largura h. Escrito como condições:
\[ MV = \begin{cases} MV_{\max} & \left( PV < SP - \dfrac{h}{2} \right) \\[0.4em] 0 & \left( PV > SP + \dfrac{h}{2} \right) \\[0.4em] \text{manter o estado anterior} & \left( \text{caso contrário} \right) \end{cases} \]
Caiu abaixo da banda: liga. Passou da banda: desliga. Dentro da banda: não faz nada. Esse é o algoritmo inteiro: duas comparações e nenhuma multiplicação. Essa simplicidade é a grande força do controle liga-desliga.
A regra que comanda esta figura
- Bem abaixo da referência → liga a tensão (SoftMV) no máximo
- Bem acima → desliga
Experimente
| 1 | Olhe o gráfico de cima: o azul (PV) cruza o cinza (SP) sem parar, para sempre |
|---|---|
| 2 | Estreite a “Histerese” até uns 0,2 V. O chaveamento acelera e o vaivém fica nervoso |
| 3 | Agora alargue para 1,0 V. Menos chaveamentos, porém uma oscilação mais ampla |
| 4 | Arraste o controle de SP e veja a banda inteira acompanhar a referência |
O que observar
O azul nunca gruda no cinza: ele fica indo e voltando dentro da banda (o famoso “hunting”, ou ciclo-limite). A MV amarela, embaixo, é uma onda quadrada batendo entre zero e potência máxima. Estreite a banda e a oscilação encolhe, mas o chaveamento dispara — e em hardware de verdade, chavear sem parar devora relés e resistências. Você é obrigado a sacrificar ou a ondulação ou a vida útil. Esse dilema é o limite do controle liga-desliga.
Carregando simulador…
Status
—SP/PV
MV
Simulação: CircuitJS1 (Paul Falstad / Iain Sharp et al., GPL)
3. Empurrar na proporção do erro (Fig. 2: controle P)
Queremos acabar com o vaivém. Pegamos então a primeira ferramenta de verdade: em vez de escolher entre tudo ou nada, empurrar com uma força proporcional à distância do alvo. É o controle proporcional — o “P” do PID.
\[ MV = K_p\, e = K_p\,(SP-PV) \]
Longe da referência, empurra forte; chegando perto, alivia. É exatamente o que a sua mão faz no registro do chuveiro. O ganho proporcional \(K_p\) é a sensibilidade: “quantos volts de empurrão por volt de erro”.
Mas o P sozinho tem um defeito de fábrica. Nosso equipamento murcha assim que você para de empurrar — manter a referência exige esforço contínuo. Só que \(MV = K_p e\) diz que quando o erro chega a zero, o empurrão também cai a zero. Um controlador que só consegue empurrar enquanto há erro não tem alternativa: para um pouco antes e se equilibra ali. Essa sobra chama-se erro em regime permanente (offset).
Para este equipamento em particular, que se acomoda em \(PV = MV\), dá para calcular onde ele se equilibra. Resolvendo \(PV = K_p (SP-PV)\):
\[ PV = \frac{K_p}{1 + K_p}\, SP, \qquad e_{\infty} = \frac{SP}{1 + K_p} \]
Com \(SP = 3\,\mathrm{V}\) e \(K_p = 5\), a previsão é \(PV = 2{,}5\,\mathrm{V}\): faltam uns 0,5 V. Confira na figura abaixo: ele pousa exatamente aí. Aumentar \(K_p\) encolhe a folga (o denominador cresce), mas a resposta fica brusca e surgem os primeiros sobressinais e oscilações.
A regra que comanda esta figura
- Quanto mais longe da referência, mais forte a tensão (SoftMV) empurra para cima ou para baixo (Kp)
Experimente
| 1 | Deixe Kp = 5 e confirme que o azul (PV) estaciona um pouco abaixo do cinza (SP): cerca de 2,5 V para SP = 3 V |
|---|---|
| 2 | Baixe Kp para 1. A folga cresce muito (a fórmula prevê metade do SP: 1,5 V) |
| 3 | Suba Kp para 8. A folga encolhe — mas mexa no SP e você verá o valor passar do ponto |
| 4 | Mova o SP aos trancos e compare a perseguição do azul com o traço amarelo de baixo |
O que observar
O vaivém sumiu. Mas o azul para sempre um tiquinho antes do cinza. Brinque com o Kp e confronte a folga com a fórmula \(e_{\infty} = SP/(1+K_p)\). Repare também no amarelo: em vez de uma onda quadrada aos trancos, agora ele desliza suave, proporcional ao erro. É a outra grande diferença em relação à Fig. 1.
Carregando simulador…
Status
—SP/PV
MV
Simulação: CircuitJS1 (Paul Falstad / Iain Sharp et al., GPL)
4. Apagar o erro restante com o tempo (Fig. 3: controle PI)
A fraqueza do controle P era “sem erro, sem empurrão”. O remédio é quase atrevido: manter a conta acumulada do erro ao longo do tempo e empurrar também com base nessa conta. Essa é a ação integral (I); somada ao P, dá o controle PI.
\[ MV = K_p\, e + K_i \int e\, dt \]
O segredo está no segundo termo. Enquanto restar qualquer erro e, a integral \(\int e\, dt\) continua crescendo — ou seja, o empurrão continua aumentando enquanto a referência não for atingida. Com essa regra, nenhum ponto de operação diferente de e = 0 pode ser um equilíbrio. É exatamente por isso que o erro em regime deixado pelo P é eliminado — não aproximadamente: por princípio.
Olhe o regime permanente e verá algo saboroso: o erro é zero, então o termo P não contribui com nada. Quem sustenta a PV é o termo integral sozinho, carregando todo o esforço contínuo graças à memória dos erros passados. O integrador é a memória do controlador.
Há um preço. Como a integral carrega a história, ela ainda está “carregada” no momento em que a referência é atingida — a resposta tende a passar do ponto primeiro e voltar depois. Suba demais o \(K_i\) e ela balançará várias vezes antes de assentar.
A regra que comanda esta figura
- Quanto mais longe da referência, mais forte a tensão empurra (Kp)
- O erro que sobra se acumula com o tempo e vai sendo espremido aos poucos (Ki)
Experimente
| 1 | Com Kp = 5 e Ki = 50, confirme que o azul (PV) fica grudado no cinza (SP): a grande diferença em relação à Fig. 2 |
|---|---|
| 2 | Zere o Ki. Você volta ao “sempre um tiquinho antes” da Fig. 2 |
| 3 | Suba o Ki acima de 100 e mexa no SP. Verá o valor passar do ponto e balançar antes de assentar |
| 4 | Já assentado, olhe o gráfico de baixo: erro zero e mesmo assim o amarelo (MV) sustenta um nível constante — é o termo integral trabalhando sozinho |
O que observar
O azul agora gruda no cinza. Esse é o poder da ação integral. Mas observe logo depois de um salto do SP: o azul ultrapassa a referência uma vez antes de voltar. “Apagar o erro com garantia” e “nunca passar do ponto” puxam em sentidos opostos, e equilibrar Kp contra Ki é o seu primeiro contato com o que os engenheiros chamam de sintonia (tuning).
Carregando simulador…
Status
—SP/PV
MV
Simulação: CircuitJS1 (Paul Falstad / Iain Sharp et al., GPL)
5. Frear antes de passar do ponto (Fig. 4: controle PID)
O PI já sabe cravar a referência. A queixa restante é o sobressinal. Enquanto você se aproxima em alta velocidade, o PI continua empurrando enquanto houver erro: mantém o pé no acelerador até a porta de entrada. Nenhum motorista humano faria isso: ao se aproximar de uma placa de pare, você freia antes de chegar. A ação derivativa (D) é essa freada antecipada, escrita em forma de matemática.
\[ MV = K_p\, e + K_i \int e\, dt + K_d \frac{de}{dt} \]
E com isso a equação da introdução fica completa — isto é o PID. O terceiro termo vigia \(de/dt\), a velocidade com que o erro muda. Quando você despenca em direção à referência, o e encolhe rápido, então \(de/dt\) fica bem negativo: o termo D corta o empurrão (freia). E quando uma perturbação arranca você da referência de repente, o D reage à rapidez com que o erro cresce e começa a contra-atacar antes de todo mundo.
A divisão de papéis, em uma linha cada:
- P (o presente) — empurra na proporção do erro atual. O burro de carga.
- I (o passado) — lembra o erro acumulado e carrega o esforço contínuo final. Mata o erro em regime.
- D (o futuro) — lê a tendência e freia antes que o sobressinal aconteça.
A regra que comanda esta figura
- Quanto mais longe da referência, mais forte a tensão empurra (Kp)
- O erro restante se acumula com o tempo e é espremido (Ki)
- Quanto mais rápido o erro muda, mais o empurrão é cortado para evitar passar do ponto (Kd)
Experimente
| 1 | Com Kp = 4, Ki = 50, Kd = 0,02, dê um salto grande no SP e repare em quanto o pico azul ultrapassa |
|---|---|
| 2 | Zere o Kd e repita. O sobressinal cresce: ficou sem freio |
| 3 | Suba o Kd para 0,05. O amarelo (MV) fica nervoso — em hardware real, o ruído do sensor o faria vibrar sem parar |
| 4 | Olhe o gráfico de baixo no instante do salto do SP: aquele pico amarelo afiado é o D fazendo o trabalho dele |
O que observar
Com um Kd moderado, o azul para de atravessar o cinza. Procure o momento em que o traço amarelo alivia cedo, pouco antes de chegar: ali ele está pisando no freio. Mas sem exagerar: o D reage à mudança — e isso inclui o ruído. Em campo, os engenheiros costumam deixar o D pequeno ou simplesmente dispensá-lo e ficar no PI — e depois de um minuto brincando com esta figura, você vai sentir exatamente por quê.
Carregando simulador…
Status
—SP/PV
MV
Simulação: CircuitJS1 (Paul Falstad / Iain Sharp et al., GPL)
6. Segurar firme contra perturbações (Fig. 5)
Até aqui vimos o controlador perseguir mudanças de referência. Mas é quando o mundo interfere sem pedir licença que o controle por realimentação ganha o salário de verdade: alguém abre uma janela e o cômodo esfria, a estrada começa a subir, uma rajada empurra o drone. Qualquer empurrão imprevisto que tire a PV da referência chama-se perturbação.
Aqui vem a parte elegante: o PID não precisa de nenhum mecanismo extra para lidar com perturbações. A equação é exatamente a mesma da Fig. 4.
\[ MV = K_p\, e + K_i \int e\, dt + K_d \frac{de}{dt} \]
O controlador não tem a menor ideia de por que o erro apareceu. Ele reage ao simples fato de existir um erro — tanto faz se você moveu a referência ou se o mundo empurrou o processo. Essa indiferença à causa é justamente o que torna o controle por realimentação tão robusto.
A regra desta figura (o mesmo PID da Fig. 4)
- P, I e D trabalhando exatamente como antes
- O botão “Pulso de perturbação” injeta uma tensão no circuito pela lateral e arranca a PV da referência à força
Experimente
| 1 | Com Kp = 6, Ki = 60, Kd = 0,02, espere o azul (PV) assentar sobre o cinza (SP) |
|---|---|
| 2 | Aperte “Pulso de perturbação”. O vermelho (Dist) dispara no gráfico de baixo e o azul é empurrado para cima |
| 3 | Veja o azul voltar sozinho ao cinza — e o amarelo (MV) suar a camisa para conseguir isso |
| 4 | Zere o Kd e repita o pulso. Compare o formato da recuperação (primeira reação, balanço) |
O que observar
Logo após o impacto do pulso: o D reage primeiro à mudança brusca, o P contra-ataca, e o I recolhe o erro que sobrou — toda a divisão de papéis se desenrola dentro de uma única recuperação. Quando você abre a janela de um cômodo climatizado e minutos depois a temperatura voltou sozinha, é exatamente essa sequência que está acontecendo atrás da parede.
Carregando simulador…
Status
—SP/PV
MV/Dist
Simulação: CircuitJS1 (Paul Falstad / Iain Sharp et al., GPL)
7. O PID está escondido ao seu redor
A pilha “P + I + D” que acabamos de montar não é uma tecnologia exótica de fábrica. Ela é quase invisível justamente porque está em toda parte:
- Ar-condicionado e aquecedores de água — assentam mansamente na temperatura escolhida e se recuperam quando uma porta abre. Aparelhos inverter normalmente rodam malhas de temperatura da família PID.
- Piloto automático de velocidade — a posição do acelerador é a MV, a velocidade é a PV e a ladeira é a perturbação.
- Drones — ângulos de atitude corrigidos por PID centenas de vezes por segundo. Um drone se nivelando depois de uma rajada é a Fig. 5 ao pé da letra.
- O bico quente de uma impressora 3D — mantido perto de 200 °C com margem de um grau. Abra a configuração do firmware e você encontrará Kp, Ki e Kd com esses mesmos nomes.
- Panelas elétricas de arroz e fornos — quanto mais alta a linha, mais fino o acompanhamento do perfil de temperatura.
- CLPs e controladores de processo — o bloco padrão das malhas de temperatura, pressão e vazão na indústria. O botão de “autossintonia”? Ele escolhe Kp, Ki e Kd por você.
Enquanto isso, o aquecedor e a chaleira continuam no liga-desliga puro (Fig. 1) — e com toda a razão. Se vagar dentro de uma banda não custa nada, a simplicidade vence. Acrescente apenas os termos que a precisão exigida pedir: o caminho que percorremos — ON/OFF → P → PI → PID — é também, passo a passo, o modo como um engenheiro na ativa decide quanto controlador cada trabalho realmente precisa.
8. Cuidados no hardware real
Três assuntos que parecem mansos nas figuras e mostram os dentes na hora em hardware de verdade. Por coincidência, o código de controle desta própria página carrega, discretamente, uma contramedida para cada um.
- Saturação — atuadores reais têm limites (um aquecedor não passa de 100 %). Enquanto a MV está cravada num limite, as elegantes equações lineares deixam de valer.
- Windup do integrador — se o integrador continua acumulando enquanto a saída está saturada, o empurrão represado explode num sobressinal enorme quando é liberado. A cura padrão: não integrar durante a saturação (o código desta página cancela o passo de integração sempre que a saída é cortada).
- A derivada e o ruído — o D amplifica o que muda rápido, e nada muda mais rápido que o ruído do sensor. Controladores reais acrescentam um filtro passa-baixa no D, deixam-no pequeno, ou o eliminam e rodam em PI.
Uma desmistificação para terminar. Dentro de um microcontrolador ou de um CLP, a integral é só uma soma acumulada e a derivada é só “esta amostra menos a anterior”. O JavaScript que move esta página calcula exatamente:
\[ MV_n = K_p\, e_n + K_i \sum_{k} e_k\, \Delta t + K_d\, \frac{e_n-e_{n-1}}{\Delta t} \]
A forma de livro-texto (integrais e derivadas) e a forma de código (somas e subtrações) são a mesma ideia com roupas diferentes. No momento em que cai a ficha de que a fórmula intimidadora compila para somas e subtrações, o PID deixa de ser teoria e vira ferramenta.
Resumo
- Controlar é decidir um comando (MV) que leve o valor real (PV) até a referência (SP) e o mantenha lá.
- O controle liga-desliga (Fig. 1) é simples e robusto, mas vaga para sempre dentro da banda de histerese.
- O controle P (Fig. 2) mata o vaivém, mas “sem erro, sem empurrão” deixa um offset em regime (neste equipamento, \(e_{\infty}=SP/(1+K_p)\)).
- Somar o I dá o PI (Fig. 3): o erro acumulado fornece o esforço contínuo e apaga o offset por princípio, ao custo de sobressinal.
- Somar o D dá o PID (Fig. 4): freada antecipada contra o sobressinal, ao custo de sensibilidade a ruído.
- O PID completo lida com mudanças de referência e perturbações (Fig. 5) com uma única e mesma equação.
- Do ar-condicionado aos drones, o PID é peça padrão das máquinas do dia a dia — e onde o liga-desliga basta, continua-se usando o liga-desliga.
| Figura | Controlador | Termo acrescentado | O que se vê |
|---|---|---|---|
| Fig. 1 | ON/OFF | — | Hunting (vaivém dentro da banda) |
| Fig. 2 | P | Proporcional | Sem vaivém, mas sobra um offset |
| Fig. 3 | PI | + Integral | Offset apagado; surge o sobressinal |
| Fig. 4 | PID | + Derivativo | Freada antes do sobressinal |
| Fig. 5 | PID + perturbação | — | A mesma equação, recuperação automática |
Perguntas frequentes
P1. Este circuito é um controlador de temperatura de verdade?
R. Não: é um dublê. O par resistor–capacitor reproduz o temperamento “responde com atraso” compartilhado por aquecedores, motores e muitos outros processos reais (um atraso de primeira ordem), com a rapidez e a segurança necessárias para rodar no seu navegador. Com τ ≈ 4,7 ms, uma resposta completa cabe na janela de 0,05 s do gráfico.
P2. Como se escolhem Kp, Ki e Kd?
R. Esse processo se chama sintonia (tuning). Existem receitas clássicas (a de Ziegler–Nichols é a mais famosa), e controladores industriais e firmwares de drones trazem autossintonia que escolhe os ganhos por você. Na mão, a ordem consagrada é: molde a resposta só com o P, acrescente o I para apagar o offset e adicione uma pitada de D só se precisar — que é exatamente a ordem dos capítulos deste artigo.
P3. Por que o controle é calculado em JavaScript e não dentro do circuito?
R. Em parte porque o CircuitJS1 não traz um bloco PID pronto, e em parte para manter controles, gráficos e circuito sincronizados numa única página. O script da página lê a PV da simulação, calcula a lei PID e escreve o resultado na fonte de tensão SoftMV: o mesmo laço ler-sensor → calcular → escrever-saída que você programaria num microcontrolador.
P4. É o mesmo PID de um CLP ou de um controlador de processos?
R. O esqueleto é idêntico, mas as implementações comerciais acrescentam refinamentos: derivada sobre a PV, filtragem da derivada, esquemas anti-windup, transferência suave e mais. Tome este artigo como um modelo didático do esqueleto.
P5. Ouvi dizer que na prática o D muitas vezes fica de fora. É verdade?
R. “Muitas vezes, sim” é a resposta honesta. Em processos ruidosos e em malhas de temperatura lentas, o PI costuma bastar, e o benefício do D vem embrulhado com amplificação de ruído. O tremor que você viu no traço amarelo ao subir o Kd na Fig. 4 é esse risco em miniatura.

Leave a Reply