heartbeat no GOOSE: conceito, função e onde se aplica
heartbeat no GOOSE: conceito, função e onde se aplica. Entenda o mecanismo, os parâmetros relevantes, como validar em campo e quais evidências usar no diagnóstico.
GOOSE e Sampled Values: o que olhar no quadro Ethernet
Como ler esta figura
MAC destino
Normalmente multicast para distribuir o fluxo a assinantes.
Na implementação: Valide grupo multicast, filtragem no switch e se as portas dos assinantes realmente recebem o tráfego.
VLAN / PCP
802.1Q carrega VLAN ID e prioridade de usuário, permitindo segmentação e tratamento de fila.
Na implementação: PCP não cria banda; apenas ajuda o switch a decidir prioridade quando há concorrência.
EtherType
Identifica GOOSE (0x88B8) ou Sampled Values (0x88BA).
Na implementação: Essa distinção torna simples filtrar e comprovar se o fluxo certo está no enlace.
APPID
Identifica a aplicação/instância do fluxo.
Na implementação: Compare APPID com SCL e com o assinante; duplicidade ou divergência dificulta interoperabilidade e diagnóstico.
APDU
No GOOSE contém estado, sequência, dataset e metadados; em SV contém amostras e metadados do stream.
Na implementação: No GOOSE acompanhe stNum/sqNum/ConfRev; em SV acompanhe smpCnt/smpSynch/svID e continuidade.
FCS e contadores da porta
Protegem o quadro Ethernet e evidenciam defeitos físicos ou congestionamento.
Na implementação: Antes de acusar o IED, cheque CRC, drops, queue discards e erros da interface dos switches.
GOOSE — campos Ethernet que precisam coincidir
| Campo | Referência | Como comprovar |
|---|---|---|
| EtherType | 0x88B8 | Decodificação Ethernet/Wireshark. |
| MAC multicast | 01-0C-CD-01-00-00 … 01-0C-CD-01-01-FF | Frame publicado e porta do subscriber. |
| 802.1Q VID | 12 bits; projeto define o VLAN ID | Tag no frame + configuração das portas/trunks. |
| PCP | 3 bits (0–7) | Tag 802.1Q + mapeamento da fila no switch. |
| APPID | 16 bits | Frame GOOSE e configuração SCL dos participantes. |
Matriz específica — heartbeat / fundamentos
| Campo/elemento | Valor ou representação | Como fechar a evidência |
|---|---|---|
| APPID · fundamentos | 16 bits | Confirmar fluxo configurado. |
| stNum · fundamentos | estado | Incrementa quando DataSet muda. |
| sqNum · fundamentos | retransmissão | Cresce no mesmo estado e evidencia gaps. |
| ConfRev / TAL · fundamentos | revisão / validade | Comparar SCL e expiração no subscriber. |
A matriz foi escolhida pelo foco “heartbeat” e pela lente “fundamentos”; referências normativas e limites de fabricante continuam prevalecendo.
GOOSE — APPID, stNum, sqNum e ConfRev no mesmo diagnóstico
| Campo | O que representa | Mudança esperada | Falha que evidencia |
|---|---|---|---|
| APPID | Identificador de aplicação do fluxo GOOSE | Permanece coerente com o control block | Fluxo/publicação diferente do esperado. |
| stNum | Número do estado do DataSet | Incrementa quando o estado publicado muda | Lógica/DataSet não mudou apesar do processo. |
| sqNum | Sequência de retransmissões do mesmo estado | Reinicia no novo estado e cresce nas repetições | Gap, perda ou captura incompleta. |
| ConfRev | Revisão da configuração | Permanece igual à revisão esperada pelo subscriber | Publisher/subscriber com engenharia divergente. |
| TimeAllowedToLive | Validade temporal da mensagem | Compatível com o próximo intervalo de publicação | Subscriber declara perda do publisher após expiração. |
| EtherType | GOOSE diretamente sobre Ethernet | 0x88B8 | Dissector/protocolo diferente do esperado. |
Mapa técnico de heartbeat: quem produz, quem consome e o que pode falhar
GOOSE retransmite rapidamente após mudança de estado e aumenta gradualmente o intervalo até um heartbeat de estado estável. Isso entrega baixa latência sem exigir tráfego máximo permanente.
Para aprender heartbeat sem depender de uma tela específica de fabricante, separe função, entradas, saídas e dependências. Em GOOSE, os pontos mais próximos deste recorte são dataset correto, timeout, perda de mensagens. O leitor iniciante deve conseguir dizer quem produz a informação e quem a usa; o leitor experiente deve conseguir apontar o limite entre comportamento normal, exceção e implementação particular do equipamento.
A cadeia causal de heartbeat: o que muda e onde observar
Documente tempos mínimos/máximos suportados e verifique se a classe de desempenho da aplicação é atendida. QoS e arquitetura devem suportar rajadas simultâneas após eventos de sistema.
Implemente primeiro uma troca mínima e conhecida entre as duas pontas. Depois acrescente eventos, exceções, temporização e funções opcionais. Uma sessão estabelecida não é critério suficiente: o dado precisa manter tipo, qualidade, endereço, sequência e tempo até o destino. Durante o estudo, acompanhe prioridade, dataset correto, timeout, perda de mensagens como uma cadeia causal. Para cada item, pergunte o que o altera, como aparece no tráfego ou no equipamento e qual seria o primeiro sintoma se estivesse incorreto.
- prioridade — defina primeiro o que representa em GOOSE e qual elemento produz ou consome essa informação; depois identifique em que condição ele muda.
- dataset correto — relacione o valor ou estado ao efeito sobre heartbeat; registre também qual campo permite confirmar que a interpretação está correta.
- timeout — na configuração, verifique dependências nas duas pontas e evite copiar valor de outro projeto sem comparar topologia, versão e capacidade do equipamento.
- perda de mensagens — no diagnóstico, associe pelo menos um sintoma de configuração errada e uma evidência que diferencie esse sintoma de falha física ou de rede.
- heartbeat — no comissionamento, crie um estímulo que faça o item mudar de forma previsível e registre antes/depois, horário e resposta observada.
Da origem ao efeito: sequência e estados de heartbeat
O fundamento de heartbeat aparece nas transições. Acompanhe uma operação normal do início ao fim e marque quando prioridade e dataset correto mudam. Depois repita mentalmente o fluxo com perda de comunicação, reinício ou dado inválido. Essa comparação revela quais campos representam estado e quais apenas transportam informação.
Neste recorte de heartbeat, trate prioridade, dataset correto e timeout como três pontos de prova. Explique o que cada um representa, o que deveria acontecer antes e depois de uma mudança e qual evidência seria incompatível com a hipótese inicial. Assim o texto permanece útil para implementação e troubleshooting.
- Descrever a sequência normal de heartbeat
- Descrever uma exceção sem recorrer a “reiniciar e testar”
- Identificar o papel de prioridade
- Identificar o papel de dataset correto
Da bancada à operação: um cenário para aplicar heartbeat
Parta de um caso de heartbeat que hoje funciona e transforme-o em referência. Capture a troca associada a prioridade, registre o comportamento de dataset correto e identifique como timeout aparece no equipamento de destino. Em seguida altere uma única condição controlada. A comparação entre os dois casos deve revelar a primeira divergência, evitando que timeout, rede e aplicação sejam ajustados ao mesmo tempo.
Não encerre heartbeat com a frase “comunicação OK”. Documente o valor/estado de prioridade, a dependência de dataset correto, o limite aceitável para timeout e uma evidência de recuperação. Essa combinação separa interoperabilidade funcional de mera conectividade física ou TCP.
- Definir uma condição normal de heartbeat e salvar a evidência associada a prioridade.
- Escolher uma única variável relacionada a dataset correto e prever o efeito antes de alterar.
- Repetir o mesmo teste e comparar timeout nas mesmas medições ou campos.
- Registrar o critério que permite aceitar, rejeitar ou reverter a configuração de heartbeat.
Como demonstrar que heartbeat foi implementado corretamente
Meça os intervalos entre frames antes e depois de uma mudança. Faça o teste com tráfego de fundo para verificar se filas não atrasam as primeiras retransmissões.
Defina evidência antes de testar heartbeat. Para esta categoria, sinais úteis incluem endereço, campo, estado, sequência, timestamp, qualidade. O teste deve ter estado inicial conhecido, estímulo reproduzível e resultado esperado. Quando houver dois equipamentos, registre os dois lados; quando houver gateway, registre também a transformação intermediária.
- Validar prioridade em condição normal
- Forçar uma condição degradada ligada a dataset correto
- Confirmar recuperação sem perder estado, evento ou evidência relevante
- Salvar configuração, logs/captura e horário do teste como baseline
Árvore de falhas de heartbeat: onde procurar antes de alterar parâmetros
Ausência das retransmissões iniciais aumenta risco de latência/perda; heartbeat ausente leva a timeout. Rajadas anormais podem indicar ponto oscilante ou lógica instável.
Não conclua a partir do sintoma sozinho. Para heartbeat, cruze pelo menos duas fontes de evidência e procure a primeira divergência. Se prioridade, dataset correto, timeout estão corretos mas o resultado final continua errado, avance para a próxima fronteira do sistema em vez de alterar parâmetros já comprovados.
- prioridade: registre um caso saudável, um caso com falha e a diferença objetiva em estado.
- dataset correto: registre um caso saudável, um caso com falha e a diferença objetiva em sequência.
- timeout: registre um caso saudável, um caso com falha e a diferença objetiva em timestamp.
- perda de mensagens: registre um caso saudável, um caso com falha e a diferença objetiva em qualidade.
heartbeat: dados exclusivos deste recorte (fundamentos)
Em heartbeat, GOOSE deve ser comprovado por EtherType 0x88B8, MAC multicast 01-0C-CD-01-00-00…01-0C-CD-01-01-FF, APPID, stNum, sqNum, ConfRev e TimeAllowedToLive. Quando 802.1Q é usado, registre VID e PCP até a porta do subscriber.
Nos fundamentos de heartbeat, acompanhe a transição que altera APPID e confirme como stNum reage antes, durante e depois do evento.
- APPID: 16 bits. Confirmar fluxo configurado.
- stNum: estado. Incrementa quando DataSet muda.
- sqNum: retransmissão. Cresce no mesmo estado e evidencia gaps.
- ConfRev / TAL: revisão / validade. Comparar SCL e expiração no subscriber.
heartbeat: Ethernet multicast, VLAN e prioridade do GOOSE — heartbeat / fundamentos
Nos fundamentos de heartbeat, trate GOOSE Control Block como parte de uma sequência causal: condição inicial, transição, campo alterado e reação do outro lado. GOOSE opera diretamente sobre Ethernet com EtherType 0x88B8. Endereços multicast reservados para GOOSE usam a faixa 01-0C-CD-01-00-00 a 01-0C-CD-01-01-FF. Quando 802.1Q é usado, VID e PCP precisam ser coerentes com o projeto; PCP ocupa 3 bits no tag VLAN e deve ser tratado em conjunto com filas/QoS dos switches. O critério de encerramento para heartbeat em fundamentos é obter o mesmo resultado em novo teste de GOOSE Control Block, mantendo o ponto de medição e a condição inicial.
O mecanismo de heartbeat deve ser lido a partir de ConfRev; observe qual estado antecede a mudança e qual confirmação prova que ela terminou. No diagnóstico de heartbeat, verifique MAC destino, VLAN ID, PCP, APPID e entrega na porta do subscriber. “Frame visto no trunk” não prova que ele chegou ao IED. Use port mirroring/contadores multicast e, quando possível, captura no ponto mais próximo do assinante. Para este artigo de heartbeat, a evidência ligada a ConfRev deve ser armazenada com horário, origem e condição de teste, permitindo comparação posterior.
- heartbeat · fundamentos · GOOSE Control Block: Filtro: eth.type == 0x88b8.
- heartbeat · fundamentos · GoCBRef: Confirmar MAC multicast GOOSE, VID/PCP e APPID conforme SCL/projeto.
- heartbeat · fundamentos · DatSet: Validar flooding/filtragem multicast e membership quando o switch implementar mecanismos adicionais.
- heartbeat · fundamentos · ConfRev: Correlacionar perda de GOOSE com counters, congestionamento e filas de prioridade.
heartbeat: estado GOOSE comprovado pelos campos do frame — heartbeat / fundamentos
O mecanismo de heartbeat deve ser lido a partir de sqNum; observe qual estado antecede a mudança e qual confirmação prova que ela terminou. Nos artigos de estado GOOSE, o quadro precisa ser lido campo a campo. EtherType 0x88B8 identifica GOOSE; APPID identifica o fluxo; stNum muda quando o estado do DataSet muda; sqNum avança nas retransmissões do mesmo estado; ConfRev permite verificar se publisher e subscriber usam a mesma revisão de engenharia; TimeAllowedToLive informa a validade temporal anunciada pelo publisher. Se sqNum não reproduzir o comportamento esperado em heartbeat, a hipótese deve ser revista antes de alterar outra camada do sistema.
Para explicar por que heartbeat funciona, use heartbeat como ponto de partida e siga a mudança até o efeito mensurável no protocolo ou processo. Para heartbeat, provoque uma mudança conhecida no DataSet e salve uma captura que contenha pelo menos o frame anterior, o primeiro frame após a transição e algumas retransmissões. O padrão esperado é stNum incrementar no novo estado e sqNum reiniciar a sequência e voltar a crescer. Se ConfRev não corresponde ao arquivo SCL implantado, Ethernet, VLAN e multicast podem estar perfeitos e mesmo assim a aplicação rejeitar o fluxo. O critério de encerramento para heartbeat em fundamentos é obter o mesmo resultado em novo teste de heartbeat, mantendo o ponto de medição e a condição inicial.
- heartbeat · fundamentos · TimeAllowedToLive: Filtro Wireshark: eth.type == 0x88b8; registrar MAC destino, APPID, stNum, sqNum, ConfRev e TimeAllowedToLive.
- heartbeat · fundamentos · stNum: Comparar ConfRev capturado com a revisão no SCD/CID realmente carregado.
- heartbeat · fundamentos · sqNum: Medir o intervalo das retransmissões rápidas e o heartbeat em regime.
- heartbeat · fundamentos · retransmissão: Na perda de publisher, medir o tempo até TimeAllowedToLive expirar no subscriber.
Referências técnicas
As explicações do Portal são autorais. Use as fontes oficiais e materiais públicos de implementação abaixo para confirmar edição, escopo, capacidades e comportamento do equipamento utilizado no seu projeto.
- IEC 61850:2026 SER — Communication networks and systems for power utility automation — IEC. Pacote oficial da série IEC 61850 disponível no catálogo IEC em 2026.
- IEC TR 61850-1-1:2026 — Introduction and overview — IEC. Introdução e visão geral atualizada da série IEC 61850.
- IEC 61850-8-1:2011+AMD1:2020 CSV — IEC. Mapeamentos para MMS e ISO/IEC 8802-3; inclui o mapeamento de GOOSE em Ethernet.
- ITT600 — Integrated Testing Tool — Hitachi Energy. Exemplo de ferramenta de fabricante para explorar SCL, MMS, GOOSE, SV, simulação e diagnóstico de IEC 61850.
Continue estudando
Os próximos conteúdos foram escolhidos pelo mecanismo deste artigo. A ideia é formar uma sequência técnica, não apenas listar páginas do mesmo tema.