Mapa da aula
Aula 17 publicada. Mapa, exemplo, EX049.
flowchart TD
N0["17.1 PI em uma página"]
N1["17.2 Sensores na malha"]
N2["17.3 Tempestades de alertas"]
N3["Nota prática"]
N4["17.1b Setpoints e posicionamento humano"]
N5["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5
N5 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX049"]
Desenho lógico
flowchart LR
N0["17.1 PI em uma página"]
N1["17.2 Sensores na malha"]
N2["17.3 Tempestades de alertas"]
N3["Nota prática"]
N4["17.1b Setpoints e posicionamento humano"]
N5["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> Q["EX049"]
[17.1 PI em uma página]
|
v
[17.2 Sensores na malha]
|
v
[17.3 Tempestades de alertas]
|
v
[Nota prática]
|
v
[17.1b Setpoints e posicionamento humano]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX049]
Objetivos de aprendizagem
Você vai (1) sintonizar uma malha PI simples e ver a ação integral eliminar o desvio; (2) posicionar sensores de segurança na malha de controle sem desestabilizá-la; (3) evitar tempestades de alertas que escondem os alarmes de processo.
17.1 PI em uma página
Um controlador proporcional deixa um desvio em regime permanente; a ação integral acumula o erro e o elimina. O laboratório muda o setpoint de nível de 50 para 60 em degrau e compara apenas kp com kp+ki. Os engenheiros de segurança precisam dessa fluência para não propor detectores que briguem com o controlador.
# Lab 17 - discrete PI level control vs. setpoint step (synthetic)
def sim(kp, ki, steps=200, sp=60.0):
level, integ, err_hist = 50.0, 0.0, []
for t in range(steps):
err = sp - level
integ += err * 0.1
u = max(0.0, min(3.0, kp*err + ki*integ)) # inflow m3/h capped
level += (u - 0.02*level)*0.1
err_hist.append(abs(err))
return level, sum(err_hist)/len(err_hist), max(err_hist[50:])
for kp,ki in ((0.05,0.0),(0.05,0.01),(0.2,0.01)):
final, mae, peak = sim(kp,ki)
print(f"kp={kp} ki={ki} final={final:.2f} mae={mae:.2f} peak_abs_err_after_5s={peak:.2f}")
Saída esperada:
kp=0.05 ki=0.0 final=44.61 mae=13.29 peak_abs_err_after_5s=15.38
kp=0.05 ki=0.01 final=57.22 mae=8.34 peak_abs_err_after_5s=10.91
kp=0.2 ki=0.01 final=58.15 mae=4.62 peak_abs_err_after_5s=6.17
Lena usa o laboratório para explicar aos colegas por que um detector deve observar o erro, e não o nível bruto. A saída do laboratório mostra o desvio diminuindo bastante quando a ação integral é acrescentada (nível final de cerca de 57–58, contra 44,61 sem ela, ainda se aproximando de 60 ao fim da execução), o que ajuda os colegas a ver como um controlador responde a uma perturbação. Um detector que alarmasse sobre o próprio nível dispararia sempre que um setpoint mudasse.
17.2 Sensores na malha
A inspeção em linha acrescenta latência. Se a constante de tempo do processo é de minutos (nível de tanque), dezenas de milissegundos não importam. Se é de dezenas de milissegundos (pressão rápida), prefira taps passivos. Meça antes de implantar (Capítulo 3).
Na bancada, Lena compara a latência acrescentada por cada dispositivo candidato com a constante de tempo da malha em que ele ficaria: no tronco do T-1 a margem é de minutos, no skid do compressor de apenas dezenas de milissegundos, então um mesmo dispositivo pode ser aceitável no primeiro e inaceitável no segundo. A latência medida na bancada decidiu as duas escolhas, e não os números declarados pelo fornecedor. Lena registra os valores medidos com as constantes de tempo de cada malha, para que a decisão possa ser revista se um processo mudar.
17.3 Tempestades de alertas
Se todo alerta cibernético médio aciona o pager da planta inteira, as pessoas silenciam o pager — e então perdem o alarme de processo que importa. O roteamento por severidade e os limites de taxa nas notificações são amortecimento, exatamente como no laboratório de racionalização de alarmes.
Caso sintético — Ashford Batch Plant. Depois da revisão do laboratório PI, Lena rejeitou uma caixa de DPI em linha no skid do compressor (malha rápida) e aprovou um tap serial somente de escuta no tronco lento do tanque.
O roteamento de Lena na ABP aciona o líder de turno apenas para eventos de alta severidade.
17.4 Erros e limites
O PI de livro-texto ignora o agarramento da válvula e o atraso do sensor. Use os historiadores da planta para a sintonia real; o laboratório serve para a intuição.
Lena diz aos revisores que as curvas limpas do laboratório não são o que o historiador da planta mostra. As malhas reais da ABP têm agarramento de válvula e atraso de transmissor, que tornam a resposta mais lenta e mais ruidosa. Todo limiar de detector proposto a partir dos resultados do laboratório é conferido contra uma semana de dados do historiador antes de ser usado, e a sintonia dos controladores reais fica com os engenheiros de controle. Lena registra as diferenças encontradas.
Nota prática
Desenhe a malha: setpoint, erro, controlador, atuador, processo, sensor, e marque onde o seu dispositivo de segurança fica. Se você não consegue marcá-lo, não sabe se está medindo ou atuando.
17.1b Setpoints e posicionamento humano
Escreva o setpoint ao lado do sensor (tempo de ciclo ≤ 50 ms). Revise os setpoints quando a planta mudar de receitas ou quando os acionamentos falsos excederem uma taxa acordada. No CNHP, pessoas decidem o que uma permissão de trabalho autoriza, e o monitor age sozinho onde esperar deixaria uma escrita insegura chegar ao processo. Aprovar o alargamento de um conduto é humano. Negar uma escrita fora da faixa é automação.
Na ABP, o setpoint de tempo de ciclo do monitor serial é de 50 ms, e ele é revisto quando as receitas mudam. Um setpoint de tempo de ciclo não cumprido é registrado com o quadro que o causou, para que a próxima revisão parta de dados.
Exercícios
- EX049 — Laboratório. Qual par (kp, ki) chega mais perto de 60 com o menor mae? Rubrica: 3 = (0.2, 0.01) com os números; 2 = só o par; 1 = par errado; 0 = nada.
- EX050 — Posicionamento. Em linha versus tap para uma malha de pressão de 20 ms — escolha e justifique. Rubrica: 3 = tap/passivo, risco de latência; 2 = escolha sem porquê; 1 = em linha sem cuidado; 0 = nada.
- EX051 — Amortecimento. Uma regra de amortecimento para os alertas cibernéticos na sala de controle. Rubrica: 3 = específica (lote, severidade, taxa); 2 = vaga; 1 = nenhuma útil; 0 = nada.
Síntese
Entenda a malha antes de inserir segurança; amorteça os alertas para que os alarmes de processo continuem audíveis.