Protocolos / DNP3

Transport Function no DNP3: conceito, função e onde se aplica

Transport Function no DNP3: 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.

13 min de leitura Publicado em 25/08/2026
Ilustração técnica autoral para Transport Function no DNP3: conceito, função e onde se aplica, 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.

Objetos DNP3 frequentes no campo

GroupUsoO que conferir na captura
G1 / G2Binary Input estático / eventoVariation, flags, índice e timestamp do evento quando aplicável.
G10 / G12Binary Output Status / CROBEstado retornado, Function Code de controle e status da operação.
G20 / G22Counter estático / eventoLargura do contador, flags, índice e transição que gerou evento.
G30 / G32Analog Input estático / eventoFormato inteiro/float, flags, deadband e timestamp quando previsto.
G50Time and DateValor temporal, origem do sincronismo e coerência com SOE.
G60Class dataClasses solicitadas, eventos pendentes e relação com IIN1.1–IIN1.3.

Matriz específica — Transport Function / fundamentos

Campo/elementoValor ou representaçãoComo fechar a evidência
0x03 → 0x04 · fundamentosSELECT → OPERATEMesmo objeto/índice e janela válida antes da atuação.
0x05 · fundamentosDIRECT_OPERATEResposta da outstation + retorno físico/telemetria.
0x06 · fundamentosDIRECT_OPERATE_NRUsar processo/log como evidência porque não há resposta de aplicação.
0x14 / 0x15 · fundamentosEnable/Disable UnsolicitedConfirmar estado e eventos espontâneos correspondentes.

A matriz foi escolhida pelo foco “Transport Function” e pela lente “fundamentos”; referências normativas e limites de fabricante continuam prevalecendo.

SCADA/IED — campos obrigatórios para “Transport Function”

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.

Transport Function no sistema: o problema que esta função resolve

A Transport Function do DNP3 segmenta mensagens de aplicação que não cabem em um único fragmento de enlace e as recompõe no destino. Ela é uma função enxuta, diferente de TCP, embora DNP3 possa operar sobre TCP/IP.

No desenho de DNP3, localize Transport Function entre origem e destino e marque quais elementos dependem de gerenciamento de chaves, Transport Function, Master. 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.

Da origem ao efeito: sequência e estados de Transport Function

Observe fragmentação, sequência e tamanho das mensagens quando grandes respostas de integridade ou arquivos atravessam enlaces limitados. Conversores seriais e rádios precisam preservar o fluxo sem introduzir truncamento.

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 autenticação de comando, gerenciamento de chaves, Transport Function, Master 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 Transport Function: 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 Transport Function, 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.

  • offset — O que é: diferença entre o relógio do consumidor e a referência usada para comparação. Efeito: Offset excessivo altera ordenação de SOE e pode comprometer aplicações dependentes de tempo. Validar: medir contra referência conhecida em regime, durante perda da fonte e após recuperação.
  • qualidade do relógio — O que é: evidência operacional de que uma regra, interface ou mecanismo processou tráfego. Efeito: Sem logging/hit counter, a política pode estar correta mas não há prova de qual regra tomou a decisão; logging excessivo também pode ter custo de armazenamento/processamento. Validar: gerar um fluxo conhecido e confirmar timestamp, 5-tuple, rule-id, ação e incremento do contador correspondente.
  • Online — O que é: elemento de engenharia relacionado a Transport Function dentro de DNP3; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com Transport Function; 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 estado como evidência objetiva.
  • Restart — O que é: elemento de engenharia relacionado a Transport Function dentro de DNP3; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com Transport Function; 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.
  • Communication Lost — O que é: elemento de engenharia relacionado a Transport Function dentro de DNP3; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com Transport Function; 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.
  • Remote Forced — O que é: elemento de engenharia relacionado a Transport Function dentro de DNP3; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com Transport Function; 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.

Exemplo de implementação: transformando Transport Function em requisito verificável

Para implementar Transport Function em DNP3, escolha uma função pequena que possa ser repetida sem ambiguidade. Prove primeiro autenticação de comando; depois acrescente gerenciamento de chaves; por último force uma condição relacionada a Transport Function. Em cada etapa registre a mensagem esperada, o estado local e a reação da outra ponta. A sequência incremental reduz drasticamente tentativa e erro em projetos multivendor.

A decisão de engenharia para Transport Function deve terminar em critérios mensuráveis. Use autenticação de comando como primeira evidência de sucesso e gerenciamento de chaves como verificação de consistência; declare quanto tempo pode decorrer e o que deve sobreviver à reconexão. Se a interface do fabricante usa outro nome para Transport Function, mantenha uma tabela que ligue o rótulo comercial ao conceito do protocolo.

  • Definir uma condição normal de Transport Function e salvar a evidência associada a autenticação de comando.
  • Escolher uma única variável relacionada a gerenciamento de chaves e prever o efeito antes de alterar.
  • Repetir o mesmo teste e comparar Transport Function nas mesmas medições ou campos.
  • Registrar o critério que permite aceitar, rejeitar ou reverter a configuração de Transport Function.

Mecanismo de Transport Function: campos, estados e transições que importam

Acompanhe uma operação normal de Transport Function do início ao fim e marque quando autenticação de comando e gerenciamento de chaves mudam. Depois repita o fluxo com perda de comunicação, reinício ou dado inválido para separar campos de estado, controle e transporte.

Em DNP3, compatibilidade real aparece também nas exceções. Reconexão, overflow, mudança de sequência, perda de sincronismo ou estado inválido devem produzir reações previsíveis e observáveis nas duas pontas.

  • Descrever a sequência normal de Transport Function
  • Descrever uma exceção sem recorrer a “reiniciar e testar”
  • Identificar o papel de autenticação de comando
  • Identificar o papel de gerenciamento de chaves

Do “online” à prova técnica: validação de Transport Function

Use respostas pequenas e grandes durante o teste para separar falhas de sessão de problemas que aparecem somente com fragmentação.

Defina a evidência antes do teste de Transport Function. 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 autenticação de comando em condição normal
  • Forçar uma condição degradada ligada a gerenciamento de chaves
  • Confirmar recuperação sem perder estado, evento ou evidência relevante
  • Salvar configuração, logs/captura e horário do teste como baseline

Quando Transport Function dá errado: separar sintoma, causa e efeito

Se leituras simples funcionam e integridade extensa falha, investigue fragmentação, buffers, MTU do caminho encapsulado, timeouts e capacidade do conversor ou rádio.

Não conclua a partir do sintoma sozinho. Para Transport Function, cruze pelo menos duas fontes de evidência e procure a primeira divergência. Se autenticação de comando, gerenciamento de chaves, Transport Function 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.

  • autenticação de comando: registre um caso saudável, um caso com falha e a diferença objetiva em estado.
  • gerenciamento de chaves: registre um caso saudável, um caso com falha e a diferença objetiva em sequência.
  • Transport Function: registre um caso saudável, um caso com falha e a diferença objetiva em timestamp.
  • Master: registre um caso saudável, um caso com falha e a diferença objetiva em qualidade.

Transport Function: dados exclusivos deste recorte (fundamentos)

Em Transport Function, Function Code precisa aparecer com o alvo e o efeito final. READ é 0x01; WRITE 0x02; SELECT 0x03; OPERATE 0x04; DIRECT_OPERATE 0x05; DIRECT_OPERATE_NR 0x06; COLD_RESTART 0x0D; WARM_RESTART 0x0E; ENABLE_UNSOLICITED 0x14 e DISABLE_UNSOLICITED 0x15.

Nos fundamentos de Transport Function, acompanhe a transição que altera 0x03 → 0x04 e confirme como 0x05 reage antes, durante e depois do evento.

  • 0x03 → 0x04: SELECT → OPERATE. Mesmo objeto/índice e janela válida antes da atuação.
  • 0x05: DIRECT_OPERATE. Resposta da outstation + retorno físico/telemetria.
  • 0x06: DIRECT_OPERATE_NR. Usar processo/log como evidência porque não há resposta de aplicação.
  • 0x14 / 0x15: Enable/Disable Unsolicited. Confirmar estado e eventos espontâneos correspondentes.

Transport Function: objeto DNP3 em Group/Variation, qualifier e índice — Transport Function / fundamentos

Nos fundamentos de Transport Function, trate Variation como parte de uma sequência causal: condição inicial, transição, campo alterado e reação do outro lado. O ponto DNP3 só é interpretável quando Group, Variation, qualifier e faixa/índice são lidos em conjunto. Group 1 representa Binary Input estático e Group 2 seus eventos; Group 10 representa Binary Output Status e Group 12 Control Relay Output Block; Group 20/22 tratam Counter estático/evento; Group 30/32 representam Analog Input estático/evento. A Variation define representação e presença de flags/timestamp, portanto dois equipamentos podem “ter o mesmo ponto” e ainda assim discordar do formato aceito. O critério de encerramento para Transport Function em fundamentos é obter o mesmo resultado em novo teste de Variation, mantendo o ponto de medição e a condição inicial.

O mecanismo de Transport Function deve ser lido a partir de número máximo de eventos; observe qual estado antecede a mudança e qual confirmação prova que ela terminou. No diagnóstico de Transport Function, capture a requisição e a resposta e confira Function Code, Group, Variation, qualifier e range. Object Unknown ou Parameter Error no IIN frequentemente nasce exatamente dessa combinação. Em gateway, preserve uma tabela explícita entre o objeto DNP3 recebido e o tipo/qualidade/timestamp entregue ao SCADA. Para este artigo de Transport Function, a evidência ligada a número máximo de eventos deve ser armazenada com horário, origem e condição de teste, permitindo comparação posterior.

  • Transport Function · fundamentos · Variation: Exemplo: G1/G2 separa Binary Input estático de evento; G30/G32 faz o mesmo para Analog Input.
  • Transport Function · fundamentos · Index: Conferir se a Variation usada no evento inclui flags e/ou tempo conforme a necessidade de SOE.
  • Transport Function · fundamentos · Qualifier: Registrar qualifier e range porque eles definem como índices/contagens são codificados.
  • Transport Function · fundamentos · número máximo de eventos: Em multivendor, validar objetos efetivamente suportados no Device Profile.

Transport Function: valor, qualidade, tempo e ciclo de comando ponta a ponta — Transport Function / fundamentos

O mecanismo de Transport Function deve ser lido a partir de event queue; observe qual estado antecede a mudança e qual confirmação prova que ela terminou. Um ponto SCADA não é apenas um valor. Para Transport Function, 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 event queue não reproduzir o comportamento esperado em Transport Function, a hipótese deve ser revista antes de alterar outra camada do sistema.

Para explicar por que Transport Function funciona, use timestamp como ponto de partida e siga a mudança até o efeito mensurável no protocolo ou processo. 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 Transport Function em fundamentos é obter o mesmo resultado em novo teste de timestamp, mantendo o ponto de medição e a condição inicial.

  • Transport Function · fundamentos · eventos por classe: Telemetria: raw → scaling → engineering unit → quality → source timestamp → SCADA timestamp.
  • Transport Function · fundamentos · overflow: SOE: comparar timestamp de origem e sequência recebida em uma rajada de eventos.
  • Transport Function · fundamentos · event queue: Comando: request → protocol confirmation → physical action → indication/return.
  • Transport Function · fundamentos · evento confirmado: 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 →