Protocolo DNP3: Arquitetura, Funcionamento, Códigos de Função, Formato de Dados e Suas Aplicações

Experimente Nosso Instrumento Para Eliminar Problemas





O DNP3 ou Distributed Network Protocol3 foi lançado em 1992 por uma empresa japonesa para estabelecer um protocolo de comunicação entre sistemas distribuídos. DNP3 é um protocolo de controle de dispositivo baseado em rede que é usado para comunicação entre um dispositivo e um dispositivo de entrada/saída remoto. Este protocolo depende principalmente de um modelo orientado a objetos que diminui o mapeamento de bits de dados que normalmente é exigido por outros protocolos menos orientados a objetos. É usado principalmente entre estações mestras centrais, bem como unidades remotas distribuídas, onde a estação mestra central funciona simplesmente como uma interface entre o gerenciador de rede humano e o sistema de monitoramento. A unidade remota distribuída é a interface entre a estação mestra e o aparelho físico sendo observado e controlado nas áreas distantes. A troca de dados entre esses dois pode ser feita pela biblioteca de objetos comuns. Este artigo apresenta uma visão geral do protocolo DNP3 – trabalhar com aplicativos.


O que é o protocolo DNP3?

O conjunto de protocolos de comunicação que são usados ​​entre diferentes componentes dentro de sistemas de automação de processos é conhecido como protocolo DNP3. Este protocolo foi projetado principalmente para fins de comunicação entre diferentes tipos de equipamentos de aquisição e controle de dados. Então em Sistemas SCADA , este protocolo desempenha um papel essencial quando utilizado por RTUs, SCADAs e IEDs.



Arquitetura do protocolo DNP3 e ​​seu funcionamento

O DNP3 é um protocolo de rede distribuído de terceira versão. Ele tem uma sondagem de integridade e três níveis de sondagem, onde a sondagem de integridade é usada para capturar os dados em uma sondagem.

  Arquitetura do protocolo DNP3
Arquitetura do protocolo DNP3

A arquitetura de rede DNP3 pode ser unicast, multidrop e conector de dados/arquiteturas hierárquicas.



A arquitetura unicast: também é conhecida como arquitetura um-para-um, aqui a estação mestra pode se comunicar apenas com uma estação remota, enquanto na arquitetura multidrop a estação mestra pode se comunicar com mais de um dispositivo de outstation, o que significa que pode se comunicar com vários dispositivos de outstation. O conector de dados/arquitetura hierárquica é uma combinação de arquiteturas multidrop e unicast.

O protocolo de comunicação DNP3 é comumente usado para concessionárias de energia elétrica, água e esgoto, petróleo e gás, transporte e outros ambientes SCADA. Ele permite que você visualize níveis importantes em tempo real e historicamente, que podem ser temperatura, umidade, nível de bateria, tensão, nível de combustível, etc. Também permite detectar problemas e corrigi-los rapidamente, além de eliminar gargalos e ineficiências.

O projeto do protocolo DNP3 pode ser feito com base nas camadas do modelo OSI, como enlace de dados, transporte, aplicação e camada de usuário. Este protocolo tem a flexibilidade de conectar um único mestre através de um mínimo de um ou mais outstations acima da mídia física serial e Ethernet.
Outras arquiteturas possíveis compreendem principalmente várias conexões mestre com uma única estação remota e operações ponto a ponto. Normalmente, o mestre inicia comandos de controle para solicitar dados ou ativar dispositivos que são gerenciados pela estação remota. Esta estação remota simplesmente reage ao mestre transmitindo informações adequadas.

  Camadas de protocolo DNP3
Camadas de protocolo DNP3

Baseado no modelo OSI, o protocolo DNP3 inclui quatro camadas: Data Link, Transport Function, Application & User Layer. Aqui, a camada de enlace de dados na parte inferior tornará o enlace físico mais confiável por endereçamento e detecção de erros. A Função de Transporte simplesmente monta quadros da Camada de Link em fragmentos da Camada de Aplicação. Essa camada recebe toda a mensagem e especifica quais dados são preferidos à camada de usuário acima. Cada mensagem pode ter vários tipos de dados, como entradas e saídas analógicas, binárias e de contador.

Como funciona o protocolo DNP3?

O protocolo DNP3 funciona simplesmente usando 27 códigos de função fundamentais para permitir a comunicação entre estações mestras e unidades remotas. Assim, alguns códigos de função permitirão ao mestre solicitar e obter a condição da informação de um dispositivo remoto e outros códigos de função permitirão ao mestre decidir ou corrigir a configuração da unidade remota.

Vários códigos de função são usados ​​principalmente na estação mestra DNP3 para controlar o equipamento ou unidade remota em locais remotos. A estação mestra DNP3 emite a maior parte da comunicação para o dispositivo remoto do DNP3. Porém, a Mensagem Não Solicitada (mensagem o/p) é iniciada através de uma unidade remota e gera um alarme. Para que esta mensagem dê um alerta ao mestre quando ocorrer um alarme.

Códigos de função

Os códigos de função do DNP3 incluem o seguinte.

Código de função

Descrição

0x00

Confirme o código de função.

0x01

Leia o código da função.
0x02

Escreva o código da função.

0x03

Selecione o código de função.

0x04

Operar código de função.

0x05

Código de função de operação direta

0x0d

Código de função de reinicialização a frio

0x0e

Código de função de reinicialização a quente

0x12

Parar o código de função do aplicativo

0x1b

Excluir código de função de arquivo

0x81

Código da função de resposta

0x82

Código de função de resposta não solicitada

Formato de mensagem DNP3

A estrutura do formato de mensagem do DNP3 é mostrada abaixo. Se examinarmos essa estrutura, podemos observar que as mensagens são trocadas entre mestres e remotos. O protocolo de telemetria serial (TBOS) é orientado a byte, trocando um único byte para se comunicar.

Protocolos de telemetria serial estendidos, como TABS, são orientados a pacotes com pacotes de bytes que são trocados para comunicação. Esses pacotes normalmente incluem bytes de cabeçalho, dados e soma de verificação. O protocolo DNP3 é orientado a pacotes e utiliza a estrutura de pacotes mostrada na figura a seguir.

  Formato de mensagem de DNP3
Formato de mensagem de DNP3

No diagrama de formato de mensagem acima, o DNP3 ASDU (unidade de dados de serviço de aplicativo) é valioso para o ajuste de conteúdo inteligente que é controlado por meio de qualificadores e campos indexSize. Portanto, esse design tornará os dados do aplicativo acessíveis em configurações flexíveis.

Agora vamos discutir como os dados são trocados, especialmente no modelo de comunicação em camadas.
A camada de aplicação no diagrama acima combina uma ASDU (unidade de dados de serviço de aplicação) e um objeto empacotado por um bloco APCI (controle de protocolo de aplicação) para fazer uma APDU (unidade de dados de protocolo de aplicação).

A camada de transporte quebrará a unidade de dados do serviço de aplicação ou APDU em diferentes segmentos com um tamanho máximo de 16 bytes e os empacotará por um cabeçalho de controle de transporte de 8 bits e separadores CRC de segmento de 16 bits em um quadro de transporte.

A camada de enlace é mapeada para o modelo de 4 camadas que é desenvolvido através do DoD (Departamento de Defesa) através do DoD Internet Layer omitido. Se o transporte serial for utilizado, a montagem do pacote será feita e localizada na mídia de transporte para entrega.

Se o pacote for transmitido por uma LAN ou WAN, 3 camadas DNP3 serão acumuladas na primeira camada. O pacote que é montado pode ser encapsulado dentro do TCP (Transport Control Protocol) através da camada de transporte que é encapsulado dentro do IP (Internet Protocol) através da camada internet. O UDP (User Datagram Protocol) também pode ser utilizado, mas apresenta alguns problemas extras relacionados à entrega confiável em redes compactadas.

Formato de dados DNP3

O DNP é amplamente utilizado no controle da passagem de mensagens entre a estação central e as unidades de controle. O formato de dados do DNP3 inclui principalmente duas seções, o cabeçalho e as seções de dados. Além disso, o cabeçalho é separado em seis subseções.

  Formato de dados DNP3
Formato de dados DNP3

O formato do quadro de dados e o tamanho necessário de cada campo são mostrados na figura acima. Neste diagrama, o Sync é o primeiro campo que tem 1 byte e especifica o início do quadro.
Este valor de campo é fixado em 0564, portanto, uma vez que um quadro é recebido examinando a posição do campo Sync, o mapeamento pode ser feito de forma eficiente.

O comprimento do campo fornece todo o comprimento do quadro para que um buffer específico possa ser atribuído no destino para armazenar os quadros recebidos. Assim, o segundo quadro é o 'Campo de controle', que descreve a ação de controle necessária para ser solicitada no receptor.

O campo de controle incluirá o valor hexadecimal 41 caso contrário 42 com base no tipo de ação. Depois disso, o campo de endereço de destino e de origem fornecerá os endereços de destinatário pretendidos e o nó de envio.
O CRC ou Verificação de Redundância Cíclica é o último campo que ajudará na verificação do erro do quadro. Um valor de verificação é conectado à mensagem no momento da transmissão, que será verificado na extremidade receptora. Uma vez que esse valor corresponda, ele especifica a inexistência de erro dentro do quadro. A seção de dados é de 2 a 4 bytes, mas não tem papel no controle da passagem de mensagens.

A figura acima mostra a mensagem de controle transmitida no formato DNP3 de uma estação para outra como controle para destino. Para a comunicação de várias ações aos destinos, os campos como o campo de controle, bem como o endereço de destino, enquanto alguns campos não serão alterados para todas as comunicações.

Exemplo de Sistema de Monitoramento DNP3

O diagrama do sistema de monitoramento remoto e mestre DNP3 é mostrado abaixo. Este modelo é usado para transferir dados entre dois dispositivos como mestre e remoto usando DNP3.

  Exemplo DNP3
Exame DNP3 a

O diagrama do sistema de monitoramento remoto e mestre DNP3 é mostrado abaixo. Este modelo é usado para transferir dados entre dois dispositivos como mestre e remoto usando DNP3. Aqui o master é o computador e o slave ou remoto é o outstation. Os dados transmitidos são dados estáticos, dados de eventos e aceitam dados de eventos não solicitados.

O protocolo DNP3 é normalmente utilizado entre o mestre (computador) e remoto (Outstation). Aqui, o mestre é usado para fornecer uma interface entre o gerenciador de rede humano e o sistema de monitoramento. O controle remoto fornece a interface entre o mestre e o dispositivo físico que está sendo controlado ou monitorado.

Tanto o mestre quanto o remoto utilizam uma biblioteca de objetos comuns para troca de dados. Aqui estão os dados O protocolo DNP3 é um protocolo pesquisado que inclui recursos projetados com cuidado. Uma vez que a estação mestre está conectada a um remoto, então uma pesquisa de integridade pode ser realizada, o que é muito significativo para endereçar DNP3 porque para um ponto de dados eles retornam todos os valores armazenados em buffer e também compreendem o valor presente do ponto.

Geralmente, os drivers DNP3 podem realizar diferentes polls rotineiramente, como um Integrity Poll, um Class 1, um Class 2 e um Class 3. No Integrity Poll, o DNP3 simplesmente solicita à estação externa que transmita sua classe 1, classe 2 e classe 3 dados de eventos e dados estáticos de Classe 0 em ordem cronológica. Um Integrity Poll é normalmente usado para sincronizar os bancos de dados de DNP3 mestre e escravo e, portanto, tende a receber uma taxa de pesquisa lenta. Normalmente, as pesquisas de classe 1, classe 2 e classe 3 são usadas para recuperar eventos de classe individuais em taxas variáveis ​​com base na importância desses eventos. Os eventos mais críticos são atribuídos às classes que têm a taxa de pesquisa mais rápida.

Diferença entre DNP3 e ​​IEC 61850

A diferença entre DNP3 e ​​IEC 61850 inclui o seguinte.

DNP3

IEC 61850

O protocolo DNP3 é uma especificação aberta da indústria. O IEC 61850 é o padrão IEC.
O grupo de usuários DNP é a organização padrão do protocolo DNP3. A comissão eletrotécnica internacional é a organização padrão da IEC 61850.
O protocolo DNP3 é uma arquitetura de quatro camadas e também suporta sete camadas TCP/IP ou UDP/IP. A comunicação em um protocolo IEC 61850 é baseada na Modelo OSI .
O DNP3, GOOSE, HMI, IEC, RTU e SCADA são os termos comuns do protocolo de comunicação IEC 61850. O dispositivo inteligente (IED), dispositivo lógico e nó lógico, objeto de dados e atributo de dados são os níveis que definem o modelo de informação hierárquica de um IEC 61850
Os benefícios da terceira versão do protocolo de rede distribuída são que não são necessários tradutores de protocolo, manutenção, teste e treinamento levarão menos tempo, fácil expansão do sistema e longa vida útil do produto. Os benefícios do protocolo IEC 61850 são o custo de extensão, custo de integração, custo de migração de equipamento e custos de instalação baixos.

Diferença entre DNP3 e ​​Modbus

A diferença entre DNP3 e ​​Modbus inclui o seguinte.

DNP3

Modbus

O protocolo de rede distribuído foi desenvolvido em 1993 por Harris. O protocolo Modbus foi desenvolvido em 1979 pela Modicon
O protocolo de rede distribuído usa bits. O protocolo de comunicação Modbus usa descrições de texto para enviar os dados.
O DNP3 consiste em três camadas: física, de link de dados e de aplicação. O protocolo de comunicação Modbus consiste apenas na camada de aplicação
O protocolo DNP3 suporta vários escravos, vários mestres e comunicação ponto a ponto. o protocolo Modbus suporta apenas comunicação ponto a ponto.
Os parâmetros de configuração exigidos no protocolo DNP3 são bad rate, tamanho do fragmento e endereços do dispositivo. As configurações exigidas no protocolo Modbus são modo de paridade, modo ASCII, modo RTU e taxa de transmissão.

DNP3 Prós e Contras

o vantagens do protocolo DNP3 Eu incluo o seguinte.

  • O DNP3 é um protocolo de padrão aberto, portanto, qualquer designer pode projetar equipamentos DNP3 que sejam compatíveis com outros equipamentos DNP3.
  • O DNP3 oferece muitos recursos devido a um protocolo inteligente e robusto.
  • Ele pode solicitar e responder por meio de vários tipos de dados em mensagens únicas
  • Ele permite várias operações mestre e ponto a ponto
  • Ele suporta formato de hora padrão e sincronização de hora.
  • Os custos de software serão reduzidos.
  • Não há necessidade de tradutores de protocolo.
  • Menos manutenção e testes.

As desvantagens do protocolo DNP3 incluem o seguinte.

O DNP3 usa uma RTU serial e a atualiza através de uma Ethernet RTU (ERTU). Se a largura de banda do canal de comunicação para essa estação também não for aprimorada, o usuário terá um link mais lento devido ao overhead implementado no encapsulamento do DNP3 através do TCP/IP.

Aplicativos DNP3

o aplicativos DNP3 inclui o seguinte.

  • O DNP3 permite que diferentes dispositivos nos sistemas de automação de processos se comuniquem.
  • Diferentes empresas de serviços públicos usam amplamente esse protocolo para sistemas de telemetria de gás, eletricidade e água.
  • É usado em comunicações SCADA.
  • O protocolo de comunicação DNP3 é usado em sistemas de monitoramento remoto e SCADA.
  • Isso é aplicável em todo o ambiente SCADA, que inclui desde o mestre até as comunicações remotas e RTU até o IED e também em aplicações de rede.

Assim, trata-se de tudo uma visão geral do protocolo DNP3 – trabalhar com aplicativos. o Especificação do protocolo DNP3 depende principalmente do modelo de objeto. Portanto, esse modelo simplesmente diminui o mapeamento de bits de dados que geralmente é necessário com outros protocolos menos orientados a objetos. Para técnicos e engenheiros do SCADA, ter alguns objetos pré-definidos tornará a estrutura de design e implantação do DNP3 mais confortável. Aqui está uma pergunta para você, qual é o protocolo?