Infraestrutura de TI / Estudo de caso

Alarme falso de robôs ESP32: o Wi-Fi não caiu, o canal encheu

Um robô industrial de uma área operacional disparou o alarme de “fora da rede”. A controladora mostrava o robô conectado o tempo todo, com sinal ótimo. A investigação mostrou que o problema não estava no robô nem na antena, e sim no tempo de ar do canal de 2,4 GHz, tomado por celulares conectados de longe.

Ambiente
Robôs ESP32 em rede Wi-Fi 2,4 GHz gerenciada por controladora UniFi, monitorados pelo Zabbix com painéis no Grafana
Período
2026
Papel
Analista de infraestrutura, responsável pela análise de causa e pela recomendação
Método
Investigação só leitura: nenhuma configuração alterada durante a análise

Cruzei três fontes no mesmo minuto: o estado de conexão na controladora, a ocupação do canal da antena e os testes do Zabbix nos robôs. O robô nunca saiu do Wi-Fi. Por cerca de dois minutos ele deixou de responder porque o canal chegou a 61–75% de ocupação, e o alarme ficou aberto quase meia hora por causa da regra contra oscilação. A correção foi limitar quem pode se associar à antena da área operacional com RSSI mínimo.

Última atualização: 2026

Resumo executivo

Problema

O Zabbix abriu um card de severidade alta: robô fora da rede. O card ficou aberto por 28 minutos. Nos dois dias anteriores os robôs já somavam 21 avisos de lentidão ou perda de ping, alguns em dois robôs no mesmo minuto. Para a operação, a leitura natural era “o Wi-Fi dos robôs está caindo”.

Hipóteses descartadas

  • Queda do Wi-Fi do robô: a controladora mostrava o robô conectado sem interrupção havia dois dias, com sinal de −53 dBm.
  • Falha da antena: sem reinício havia três dias e 100% dos pings do Zabbix respondidos no período.
  • Mudança de configuração: o log de administração tinha só acessos, nenhuma alteração.
  • Defeito de um robô: no mesmo minuto os outros três também perderam pacotes e ficaram lentos.

Causa raiz

O canal de 2,4 GHz da antena da área operacional, que costuma ficar entre 30 e 50% ocupado, chegou a 61–75% por cerca de seis minutos. Celulares conectados à rede Wi-Fi de uso geral se associavam a essa antena de longe, com sinal de −80 a −107 dBm. Longe, um aparelho transmite em taxa baixa e ocupa o canal por mais tempo a cada pacote. Os robôs, perto e com sinal ótimo, ficavam esperando a vez: a resposta subiu de cerca de 3 ms para 70–150 ms e os testes falharam.

Solução e validação

  • RSSI mínimo de cerca de −80 dBm no rádio de 2,4 GHz da antena da área operacional, que estava desligado. Os robôs, entre −53 e −58 dBm, ficam bem acima do limite.
  • Depois do ajuste, o canal voltou à faixa normal de ocupação e os alarmes desse tipo não se repetiram.
  • Recomendação complementar no Zabbix: abrir o alarme com 4 testes seguidos sem resposta (2 min) em vez de 2 (1 min).

O que este caso demonstra

  • Análise de causa raiz
  • Wi-Fi: tempo de ar e RSSI
  • Correlação de métricas
  • Zabbix: itens, gatilhos e histerese
  • UniFi: controladora e logs
  • Investigação sem impacto

Leitura complementar: o mesmo caso contado em artigo, com a transposição para aulas de Computação, em Quando o Wi-Fi “cai” e o sinal está ótimo.

Detalhes técnicos

Roteiro da investigação

  1. Alarme
  2. Regra do gatilho
  3. Estado na controladora
  4. Antena
  5. Mudanças
  6. Outros robôs
  7. Ocupação do canal
  8. Clientes distantes
  9. Ajuste

1. O alarme e a regra que o abre

O Zabbix testa a porta de aplicação de cada robô a cada 30 segundos (net.tcp.service). O gatilho abre com 2 testes seguidos sem resposta (1 minuto) e fecha com 4 respostas seguidas e menos de 4 mudanças de estado em 30 minutos.

No episódio, os testes falharam em t+1:05, t+2:05 e t+2:35, e o robô voltou a responder em t+3:02. O card abriu em t+2:35 e só fechou em t+31:02. A falha real durou cerca de 2 minutos; os outros 26 foram a histerese esperando a primeira mudança sair da janela de 30 minutos.

2. Hipóteses descartadas

  • Robô desconectado: sessão contínua na controladora havia dois dias, mesma antena, sinal de −53 dBm. O mesmo para os outros robôs.
  • Antena: uptime de mais de dois dias e nenhum ping perdido no Zabbix.
  • Configuração: logs de administração dos dois dias sem nenhuma alteração.
  • Hardware do robô: todos pioraram juntos no mesmo minuto, o que aponta para algo compartilhado.

3. Causa raiz: tempo de ar

O Wi-Fi é um meio compartilhado: na mesma antena e no mesmo canal, só um aparelho transmite por vez. O que importa não é só o sinal de cada um, mas quanto tempo de canal cada um gasta.

  • Ocupação do canal da antena da área operacional: mediana de 42% desde o início do monitoramento; 60% só é passado em 10% do tempo.
  • Em uma janela de cerca de 6 minutos: 61–75%.
  • Entre t−15 min e t+20 min, 21 eventos de clientes com −80 dBm ou pior na antena, todos celulares da rede de uso geral, com MAC aleatório, vindos de antenas de outras áreas.
  • Resposta ao ping dos robôs no mesmo intervalo: de cerca de 3 ms para 70–150 ms, com perda de pacotes.

4. Por que o celular distante pesa tanto

  1. O celular longe da antena negocia uma taxa de transmissão baixa.
  2. Em taxa baixa, cada pacote leva mais tempo no ar.
  3. Alguns desses aparelhos ao mesmo tempo bastam para o canal passar de 60%.
  4. O robô, mesmo com sinal ótimo, espera o canal liberar; a resposta atrasa e o teste do Zabbix expira.
  5. O Wi-Fi do robô não cai. Quem falha é o teste.

Solução

AçãoOndeEfeito esperadoStatus
RSSI mínimo de cerca de −80 dBm no rádio de 2,4 GHz da antena da área operacionalControladora UniFiA antena solta os clientes distantes, que tendem a ir para uma antena mais próxima; os robôs (−53 a −58 dBm) não são afetadosImplantado
Alternativa: tirar a rede de uso geral dessa antenaControladora UniFiCanal praticamente exclusivo dos robôsNão adotada; só se ninguém precisar de celular naquela área
Abrir o alarme com 4 testes seguidos sem resposta (2 min)ZabbixInstabilidade curta deixa de virar card; queda real continua avisando em 2 minRecomendado

Validação

  • Depois do RSSI mínimo, a ocupação do canal da antena da área operacional voltou à faixa normal.
  • Os alarmes de “fora da rede” desse tipo não se repetiram nos robôs.

Limitações

  • A ligação entre o canal cheio e o alarme foi medida para este episódio. Para os 21 avisos anteriores ela é provável, pela mesma assinatura, mas não foi medida um a um.
  • O RSSI mínimo desassocia o cliente distante; para onde ele vai depende do aparelho e da cobertura. Áreas com pouca cobertura podem ficar sem sinal para celulares.
  • Nomes de antenas, redes, endereços, identificadores dos robôs e do ambiente não são publicados.

Evidências

Endereços IP e MAC, nomes de rede, de antenas e de equipamentos e números de evento foram omitidos. Os robôs aparecem como A, B, C e demais. Os horários aparecem relativos ao início do episódio (t0). Os gráficos são reconstruções simplificadas a partir do relatório de análise: os intervalos de tempo e as faixas de valor são os medidos, e a curva minuto a minuto foi redesenhada.

Ocupação do canal de 2,4 GHz da antena da área operacional, minuto a minuto Entre t−25 min e t+25 min a ocupação do canal fica entre 38 e 49 por cento, perto da mediana de 42 por cento. Durante cerca de 6 minutos sobe para 61 a 75 por cento, acima da linha de 60 por cento, e volta ao normal logo depois. O alarme abriu em t+2:35, dentro desse intervalo. episódio (≈ 6 min) mediana 42% alto: 60% 100%50%0% t−25 mint−15 mint−5 mint+5 mint+15 mint+25 min
Figura 1. Ocupação do canal de 2,4 GHz da antena da área operacional. A faixa marca o episódio: o canal passa do limite de 60% e, no mesmo intervalo, todos os robôs ficam lentos juntos.
Testes da porta de aplicação do robô A, a cada 30 segundos Uma fila de quadrados de t−5 min a t+10 min, um por teste. Quase todos responderam. Falharam os testes de t+1:05, t+2:05 e t+2:35; os dois últimos, seguidos, abriram o alarme em t+2:35. O robô voltou a responder em t+3:02. Abaixo, uma barra mostra que o card ficou aberto até t+31:02, segurado pela regra contra alarme oscilante, embora a falha real tenha durado cerca de dois minutos. t−5 mint+5 mint+10 min falha real ≈ 2 min t+1:05 → t+3:02 card aberto t+2:35 → t+31:02 (continua fora da figura) respondeu não respondeu
Figura 2. Cada quadrado é um teste da porta de aplicação do robô A. A falha foi curta; o card ficou aberto muito mais tempo por causa da regra contra alarme oscilante.
Por que o canal enche À esquerda, os robôs perto da antena da área operacional, com sinal de −53 a −58 dBm. À direita, celulares de outras áreas associados à mesma antena com −84 a −88 dBm. Todos dividem o mesmo canal de 2,4 GHz, onde só um transmite por vez. Embaixo, o caminho do alarme: robô, antena, rede, Zabbix testando a porta a cada 30 segundos e o card no chat da equipe. Robôs ESP32 A · −53 dBm B · −55 dBm C · −56 dBm demais · até −58 dBm Antena da área 2,4 GHz · um fala por vez Celulares distantes −84 dBm −86 dBm −87 dBm −88 dBm Robô Antena Rede Zabbix · 30 s Card caminho do alarme: 2 testes seguidos sem resposta (1 min) abrem o card
Figura 3. Os robôs estão perto e com sinal ótimo, mas dividem o canal com celulares que se associam à mesma antena de longe. O tempo de canal que um aparelho distante gasta é o que os robôs ficam esperando.

Clientes com sinal fraco na antena da área operacional (amostra)

TempoEventoRedeSinalAparelho
t−9:24chegou de outra antenauso geral−88 dBmcelular 1
t−4:40desconectouuso geral−103 dBmcelular 2
t−2:44conectouuso geral−82 dBmcelular 3
t−0:32conectouuso geral−83 dBmcelular 3
t+3:17conectouuso geral−85 dBmcelular 4
t+3:36desconectouuso geral−102 dBmcelular 3
t+5:44chegou de outra antenauso geral−86 dBmcelular 4
t+10:23desconectouuso geral−107 dBmcelular 5

21 eventos com −80 dBm ou pior entre t−15 min e t+20 min. Os aparelhos usam MAC aleatório; na análise, o final do MAC serviu só para distinguir um do outro. Os robôs não aparecem na lista: estavam entre −53 e −58 dBm.

Fontes consultadas (só leitura)

  • Controladora UniFi, com chave de API só leitura: estado e sessões dos robôs, log de conexões da antena e log de administração.
  • Zabbix: ocupação do canal e clientes da antena (1 min), icmpping, icmppingloss e icmppingsec dos robôs (3 min), net.tcp.service da porta de aplicação (30 s) e eventos dos dois dias anteriores.
  • Grafana: painéis sobre os mesmos itens, para ver canal e robôs na mesma linha do tempo.

Histórico antes do episódio

Tipo de avisoRegra
Resposta lenta ao pingmédia de 5 min acima de 150 ms
Perda de pingacima de 20%
Fora da redeporta de aplicação sem resposta

21 avisos nos robôs em dois dias, quase todos de lentidão ou perda, alguns em dois robôs no mesmo minuto: a mesma assinatura do episódio analisado.

Versão didática

Como eu ensinaria este conceito

O caso mostra que “sinal bom” não quer dizer “conexão boa”. Numa rede sem fio, todos dividem o mesmo ar, e quem fala devagar atrasa todo mundo.

Público

9º ano, Ensino Médio técnico, cursos de redes e formação de professores de Computação.

Pré-requisitos

Saber o que é Wi-Fi e o que é um ping.

Analogia

Uma sala onde só uma pessoa fala por vez. Quem está no fundo precisa falar devagar e repetir; enquanto isso, quem está na frente, ouvindo muito bem, espera a vez.

Experimento mínimo

Em dupla, um aluno faz ping contínuo do celular para o roteador da sala enquanto outros se afastam até o limite do sinal e assistem a um vídeo. A turma anota o tempo de resposta antes e depois.

Erro comum

Olhar só as barrinhas de sinal e concluir que a culpa é do aparelho que “caiu”, sem olhar o canal.

Pergunta de reflexão

Se o alarme disparou mas o robô nunca saiu da rede, o problema estava no robô, na rede ou na forma de medir?

A transposição completa para a sala de aula, alinhada à BNCC Computação, está no artigo Quando o Wi-Fi “cai” e o sinal está ótimo.