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.
IEC 104: APDU, I/S/U e parâmetros que controlam a sessão
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âmetro | Referência comum | Função | Sintoma de ajuste/problema | Como medir |
|---|---|---|---|---|
| t0 | 30 s | Timeout de estabelecimento da conexão | Conexão não completa ou cai durante abertura | Tempo entre tentativa TCP/sessão e estabelecimento/abandono. |
| t1 | 15 s | Espera por confirmação de APDU enviada/teste | Reconexões ou timeout com I-frame sem ack | Delta entre envio e avanço de N(R) / confirmação esperada. |
| t2 | 10 s | Atraso máximo para confirmação S-frame | Acks excessivamente tardios | Tempo do primeiro I-frame recebido até S-frame quando w não é atingido antes. |
| t3 | 20 s | Supervisão de enlace ocioso com TESTFR | Sessão silenciosa sem teste ou testes frequentes demais | Tempo de ociosidade até TESTFR ACT e retorno TESTFR CON. |
| k | 12 | Máximo de I-frames enviados sem confirmação | Janela trava sob perda/latência | Maior diferença observada entre N(S) enviado e N(R) confirmado. |
| w | 8 | Quantidade de I-frames recebidos antes de confirmar | S-frames demais ou confirmação tardia | Contar 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/elemento | Valor ou representação | Como fechar a evidência |
|---|---|---|
| I-frame · parâmetros | ASDU + N(S)/N(R) | Conferir incremento e acknowledgements. |
| S-frame · parâmetros | N(R) | Confirmar janela recebida sem ASDU. |
| U-frame · parâmetros | STARTDT/STOPDT/TESTFR | Confirmar ACT/CON e estado da sessão. |
| TCP 2404 · parâmetros | transporte | Separar 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/etapa | Exemplo de evidência | Falha concreta |
|---|---|---|
| Valor bruto | contador/registro/objeto recebido | Escala errada mascarada pela IHM. |
| Scaling + unidade | ganho, offset, EU | Valor numericamente plausível porém incorreto. |
| Quality | good/bad/invalid/blocked/substituted conforme protocolo | SCADA exibe dado sem indicar validade. |
| Source timestamp | tempo gerado no IED/RTU | SOE fora de ordem por relógio ou perda de timestamp. |
| Receive/display time | tempo no FEP/SCADA | Latência de transporte/processamento. |
| Command lifecycle | envio, ack, atuação e retorno | Ack 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.
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.
- IEC 60870-5-104:2006+AMD1:2016 CSV — IEC. Versão consolidada listada pela IEC para o companion standard IEC 60870-5-104.
- IEC 60870-5:2026 SER — Transmission protocols — IEC. Pacote oficial da série IEC 60870-5.
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.