Protocolos / IEC 60870-5-104 — IEC 104

APDU no IEC 104: parâmetros, ajustes e impactos

APDU no IEC 104: parâmetros, ajustes e impactos. Entenda o mecanismo, os parâmetros relevantes, como validar em campo e quais evidências usar no diagnóstico.

14 min de leitura Publicado em 08/09/2026
Ilustração técnica autoral para APDU no IEC 104: parâmetros, ajustes e impactos, destacando o fluxo e os elementos centrais do assunto.
Ilustração técnica autoral do Portal da Automação, criada para o foco específico deste artigo.

IEC 104: APDU, I/S/U e parâmetros que controlam a sessão

Diagrama do IEC 60870-5-104 com APDU, APCI, ASDU, formatos I S U e temporizadores.
Diagrama próprio do Portal da Automação. A IEC 104 usa TCP, mas mantém regras próprias de sessão, numeração e telecontrole.

Como ler esta figura

APCI / Control Field

Controla formato I/S/U, estado lógico e numeração N(S)/N(R).

Na implementação: Sequência travada, ACK atrasado ou TESTFR repetitivo deve ser correlacionado com timers e janelas, não só com TCP.

I-format

Transporta ASDU e usa números de envio e recebimento para acompanhar a sequência.

Na implementação: Compare N(S) e N(R) nos dois sentidos para encontrar a primeira divergência ou ACK ausente.

S-format

Confirma recepção sem transportar uma ASDU.

Na implementação: É diretamente relacionado ao controle de fluxo e ao limiar w/t2.

U-format

Executa STARTDT, STOPDT e TESTFR para controlar/testar a transferência.

Na implementação: STARTDT não é comando de processo; é habilitação da transferência de dados IEC 104.

ASDU

Type ID, VSQ, COT, CA e IOA dão significado às medidas, estados, eventos e comandos.

Na implementação: TCP saudável com CA/IOA/COT errados continua sendo uma integração quebrada.

t0, t1, t2, t3, k e w

Definem estabelecimento, confirmações, ociosidade e janelas de mensagens.

Na implementação: Dimensione usando RTT real, carga e requisitos da aplicação; não copie defaults entre fabricantes sem validar.

IEC 104 — t0/t1/t2/t3/k/w: função, sintoma e medição

ParâmetroReferência comumFunçãoSintoma de ajuste/problemaComo medir
t030 sTimeout de estabelecimento da conexãoConexão não completa ou cai durante aberturaTempo entre tentativa TCP/sessão e estabelecimento/abandono.
t115 sEspera por confirmação de APDU enviada/testeReconexões ou timeout com I-frame sem ackDelta entre envio e avanço de N(R) / confirmação esperada.
t210 sAtraso máximo para confirmação S-frameAcks excessivamente tardiosTempo do primeiro I-frame recebido até S-frame quando w não é atingido antes.
t320 sSupervisão de enlace ocioso com TESTFRSessão silenciosa sem teste ou testes frequentes demaisTempo de ociosidade até TESTFR ACT e retorno TESTFR CON.
k12Máximo de I-frames enviados sem confirmaçãoJanela trava sob perda/latênciaMaior diferença observada entre N(S) enviado e N(R) confirmado.
w8Quantidade de I-frames recebidos antes de confirmarS-frames demais ou confirmação tardiaContar I-frames recebidos entre confirmações S-frame.

Os números são valores de referência amplamente adotados em perfis IEC 104; confirme a edição, o perfil de interoperabilidade e o equipamento.

Matriz específica — APDU / parâmetros

Campo/elementoValor ou representaçãoComo fechar a evidência
I-frame · parâmetrosASDU + N(S)/N(R)Conferir incremento e acknowledgements.
S-frame · parâmetrosN(R)Confirmar janela recebida sem ASDU.
U-frame · parâmetrosSTARTDT/STOPDT/TESTFRConfirmar ACT/CON e estado da sessão.
TCP 2404 · parâmetrostransporteSeparar reset/retransmission TCP de falha IEC104.

A matriz foi escolhida pelo foco “APDU” e pela lente “parâmetros”; referências normativas e limites de fabricante continuam prevalecendo.

SCADA/IED — campos obrigatórios para “APDU”

Campo/etapaExemplo de evidênciaFalha concreta
Valor brutocontador/registro/objeto recebidoEscala errada mascarada pela IHM.
Scaling + unidadeganho, offset, EUValor numericamente plausível porém incorreto.
Qualitygood/bad/invalid/blocked/substituted conforme protocoloSCADA exibe dado sem indicar validade.
Source timestamptempo gerado no IED/RTUSOE fora de ordem por relógio ou perda de timestamp.
Receive/display timetempo no FEP/SCADALatência de transporte/processamento.
Command lifecycleenvio, ack, atuação e retornoAck de protocolo sem atuação física.

APDU: da definição ao uso real

APDU é a unidade completa trocada na aplicação IEC 104 e combina APCI com ASDU quando há dados de aplicação. Ler sua estrutura na captura é a base para separar controle de sessão do conteúdo telecontrolado.

No desenho de IEC 60870-5-104 — IEC 104, localize APDU entre origem e destino e marque quais elementos dependem de spontaneous transmission, timestamps, prioridades. A definição deve permitir responder quem produz a informação, quem toma a decisão, onde o estado é mantido e qual evidência aparece primeiro quando algo sai do esperado.

O que acontece por dentro quando APDU entra em ação

Documente limites de tamanho e parâmetros de janela que controlam quantos I-frames podem permanecer sem confirmação.

Comece com uma troca mínima conhecida e depois acrescente eventos, exceções, temporização e funções opcionais. Uma sessão estabelecida não é critério suficiente: tipo, endereço, qualidade, sequência e tempo precisam chegar ao destino com a mesma semântica. Neste artigo, acompanhe sincronização, spontaneous transmission, timestamps, prioridades como uma cadeia causal: condição de entrada → estado interno → decisão → saída → evidência. Esse percurso evita repetir definições e obriga cada bloco do texto a acrescentar um nível novo de explicação.

Cadeia funcional entre TC e TP, IED de proteção e disjuntor.
A proteção depende da cadeia completa de medição, lógica, alimentação e circuito de trip. Fonte: Portal da Automação · Conteúdo autoral do portal.

Parâmetros e campos de APDU: significado, efeito e validação

Os itens abaixo não são apenas nomes de configuração. Para cada parâmetro ou campo, o artigo registra o que ele representa, o efeito prático de um valor/estado incorreto e a evidência usada para confirmar a interpretação. Valores default e faixas exatas que dependem de fabricante ou firmware devem ser confirmados na documentação do equipamento, mas a relação causa → efeito precisa permanecer válida entre implementações.

Ao alterar APDU, mude uma variável por vez e preserve o baseline. Um valor só deve ser considerado adequado quando o efeito esperado aparece na captura, no contador, no log ou no processo e quando a condição degradada continua dentro do requisito.

  • Controlled Station — O que é: elemento de engenharia relacionado a APDU dentro de IEC 60870-5-104 — IEC 104; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com APDU; documente dependências e limite em vez de copiar um valor de outro projeto. Validar: comparar condição normal e uma alteração controlada usando endereço como evidência objetiva.
  • Cliente — O que é: elemento de engenharia relacionado a APDU dentro de IEC 60870-5-104 — IEC 104; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com APDU; documente dependências e limite em vez de copiar um valor de outro projeto. Validar: comparar condição normal e uma alteração controlada usando campo como evidência objetiva.
  • Servidor — O que é: identificador 802.1Q do domínio lógico de camada 2; em operação são normalmente usados VIDs de 1 a 4094. Efeito: VID incorreto coloca o frame em outro domínio, fazendo MAC, multicast e gateway parecerem “ausentes”. Validar: capturar tag 802.1Q, conferir PVID/tagging nas portas e tabela MAC da VLAN correta.
  • Front-End — O que é: elemento de engenharia relacionado a APDU dentro de IEC 60870-5-104 — IEC 104; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com APDU; documente dependências e limite em vez de copiar um valor de outro projeto. Validar: comparar condição normal e uma alteração controlada usando sequência como evidência objetiva.
  • Gateway — O que é: elemento de engenharia relacionado a APDU dentro de IEC 60870-5-104 — IEC 104; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com APDU; documente dependências e limite em vez de copiar um valor de outro projeto. Validar: comparar condição normal e uma alteração controlada usando timestamp como evidência objetiva.
  • RTU — O que é: elemento de engenharia relacionado a APDU dentro de IEC 60870-5-104 — IEC 104; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com APDU; documente dependências e limite em vez de copiar um valor de outro projeto. Validar: comparar condição normal e uma alteração controlada usando qualidade como evidência objetiva.

APDU em projeto real: como decidir sem copiar configuração

Parta de um caso de APDU que hoje funciona e transforme-o em referência. Capture a troca associada a sincronização, registre o comportamento de spontaneous transmission e identifique como timestamps 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 APDU com a frase “comunicação OK”. Documente o valor/estado de sincronização, a dependência de spontaneous transmission, o limite aceitável para timestamps 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 APDU e salvar a evidência associada a sincronização.
  • Escolher uma única variável relacionada a spontaneous transmission e prever o efeito antes de alterar.
  • Repetir o mesmo teste e comparar timestamps nas mesmas medições ou campos.
  • Registrar o critério que permite aceitar, rejeitar ou reverter a configuração de APDU.

Como escolher valores sem copiar configuração de outro projeto

Um parâmetro de APDU só está explicado quando se conhece unidade ou representação, faixa suportada, default quando existir, dependências e consequência observável. Para sincronização, spontaneous transmission, timestamps, compare valor atual, valor pretendido e efeito medido antes/depois.

Em IEC 60870-5-104 — IEC 104, ajustes interagem. Timeout depende de latência e retries; buffers dependem da taxa de eventos e da duração da indisponibilidade; prioridades dependem da rede; políticas de segurança dependem do fluxo real. A escolha precisa ser justificável pelo requisito e pelo teste.

  • APDU — sincronização: registrar valor, unidade/representação, dependência, efeito e evidência
  • APDU — spontaneous transmission: registrar valor, unidade/representação, dependência, efeito e evidência
  • APDU — timestamps: registrar valor, unidade/representação, dependência, efeito e evidência
  • APDU — prioridades: registrar valor, unidade/representação, dependência, efeito e evidência

Teste de aceitação: evidências que comprovam APDU

Observe uma GI e identifique APCI, ASDU, números de sequência e confirmações.

Defina a evidência antes do teste de APDU. Para esta categoria, sinais úteis incluem endereço, campo, estado, sequência, timestamp, qualidade. Use estado inicial conhecido, estímulo reproduzível e resultado esperado; quando houver duas pontas, registre as duas, e quando houver gateway/firewall/conversor, registre também a transformação intermediária.

  • Validar sincronização em condição normal
  • Forçar uma condição degradada ligada a spontaneous transmission
  • Confirmar recuperação sem perder estado, evento ou evidência relevante
  • Salvar configuração, logs/captura e horário do teste como baseline

Diagnóstico de APDU: a primeira divergência vale mais que o último alarme

APDUs chegando mas sendo rejeitadas direcionam a análise para estrutura, sequência, ASDU ou parametrização, não para conectividade IP.

Não conclua a partir do sintoma sozinho. Para APDU, cruze pelo menos duas fontes de evidência e procure a primeira divergência. Se sincronização, spontaneous transmission, timestamps estão corretos mas o resultado final continua errado, avance para a próxima fronteira do sistema em vez de alterar novamente um parâmetro já comprovado.

  • sincronização: registre um caso saudável, um caso com falha e a diferença objetiva em estado.
  • spontaneous transmission: registre um caso saudável, um caso com falha e a diferença objetiva em sequência.
  • timestamps: registre um caso saudável, um caso com falha e a diferença objetiva em timestamp.
  • prioridades: registre um caso saudável, um caso com falha e a diferença objetiva em qualidade.

APDU: dados exclusivos deste recorte (parâmetros)

O recorte APDU precisa distinguir APDU/APCI e I/S/U frames. I-frame transporta ASDU e N(S)/N(R); S-frame confirma recepção com N(R); U-frame controla STARTDT, STOPDT e TESTFR. IEC 104 usa tipicamente TCP 2404. Sequência travada ou TESTFR sem CON aponta para estado de sessão, não para erro de objeto.

Na lente de parâmetros, APDU só está explicado quando I-frame tem unidade/faixa e S-frame tem efeito mensurável na captura, log ou processo.

  • I-frame: ASDU + N(S)/N(R). Conferir incremento e acknowledgements.
  • S-frame: N(R). Confirmar janela recebida sem ASDU.
  • U-frame: STARTDT/STOPDT/TESTFR. Confirmar ACT/CON e estado da sessão.
  • TCP 2404: transporte. Separar reset/retransmission TCP de falha IEC104.

APDU: timers e janelas que governam a sessão IEC 104 — APDU / parâmetros

Na análise de parâmetros de APDU, Activation precisa ter valor/faixa, unidade ou representação e consequência observável quando sai do esperado. Em IEC 60870-5-104, t0 limita o estabelecimento da conexão; t1 limita a espera por confirmação de APDUs enviadas/teste; t2 limita quanto o receptor pode postergar um S-frame de confirmação; t3 detecta ociosidade e dispara TESTFR; k limita I-frames enviados sem confirmação e w define quantos I-frames recebidos podem acumular antes de um S-frame. Valores de referência frequentemente usados são t0=30 s, t1=15 s, t2=10 s, t3=20 s, k=12 e w=8, sempre sujeitos ao perfil e ao fabricante. O critério de encerramento para APDU em parâmetros é obter o mesmo resultado em novo teste de Activation, mantendo o ponto de medição e a condição inicial.

Para APDU, não trate Interrogated by Station como rótulo: registre o valor efetivo, a origem da configuração e o efeito de uma alteração controlada. O diagnóstico de APDU precisa observar tempo na captura, não apenas a tela de parâmetros. Um t1 expirando costuma aparecer como APDU enviada sem avanço de N(R); t3 aparece após período ocioso seguido de TESTFR ACT/CON; k/w aparecem na distância entre N(S) e N(R) e na frequência dos S-frames. t2 deve permanecer menor que t1 para não criar uma política de confirmação incoerente. Para este artigo de APDU, a evidência ligada a Interrogated by Station deve ser armazenada com horário, origem e condição de teste, permitindo comparação posterior.

  • APDU · parâmetros · Activation: Wireshark: acompanhar I/S/U frames, N(S), N(R), TESTFR ACT/CON e timestamps da captura.
  • APDU · parâmetros · Activation Confirmation: Medir o intervalo real entre o último tráfego e TESTFR para validar t3.
  • APDU · parâmetros · Deactivation: Medir quantos I-frames ficam outstanding para validar k e a política de ack w/t2.
  • APDU · parâmetros · Interrogated by Station: Não aumentar t1 para esconder perda TCP, processamento lento ou janela de confirmação mal dimensionada.

APDU: valor, qualidade, tempo e ciclo de comando ponta a ponta — APDU / parâmetros

Para APDU, não trate Bitstring como rótulo: registre o valor efetivo, a origem da configuração e o efeito de uma alteração controlada. Um ponto SCADA não é apenas um valor. Para APDU, registre endereço/tag de origem, valor bruto, escala/unidade, quality, timestamp de origem, timestamp de recepção e timestamp de apresentação. Deadband deve ser expressa na unidade ou porcentagem definida e testada em torno do limiar; SOE exige preservar a ordem pelo tempo de origem, não pela ordem de chegada ao servidor. Se Bitstring não reproduzir o comportamento esperado em APDU, a hipótese deve ser revista antes de alterar outra camada do sistema.

O parâmetro Commands só é útil neste recorte de APDU quando pode ser comparado entre baseline, condição degradada e recuperação. Comandos precisam ser separados em intenção, envio pelo protocolo, confirmação de protocolo, atuação do equipamento e retorno de posição. Em religador/IED/RTU, um “operate success” sem mudança do contato ou telemetria não encerra o teste. Em historian, preserve raw value, quality e source timestamp antes de qualquer agregação. Em alarmes, registre condição de entrada, prioridade, debounce/deadband, ack e retorno ao normal. O critério de encerramento para APDU em parâmetros é obter o mesmo resultado em novo teste de Commands, mantendo o ponto de medição e a condição inicial.

  • APDU · parâmetros · Double Point: Telemetria: raw → scaling → engineering unit → quality → source timestamp → SCADA timestamp.
  • APDU · parâmetros · Step Position: SOE: comparar timestamp de origem e sequência recebida em uma rajada de eventos.
  • APDU · parâmetros · Bitstring: Comando: request → protocol confirmation → physical action → indication/return.
  • APDU · parâmetros · Measured Value: Historian: validar valor, quality e timestamp antes de compressão/agregação.

Referências técnicas e normas

As explicações do Portal são autorais. Normas e fontes oficiais são priorizadas; materiais acadêmicos e documentação pública de fabricantes complementam a implementação e não substituem a edição normativa aplicável ao projeto.

Continue estudando

Os próximos conteúdos foram escolhidos para formar uma sequência técnica, relacionando fundamento, configuração, diagnóstico e aplicação.

Ver todas as trilhas de estudo →