DNP30 - INFORMAÇÃO GERAL

Informação Geral

Communication Driver Name: DNP30S
Current Version: 9.2
Implementation DLL: T.ProtocolDriver.DNP30S.dll
Protocol: DNP3.0 Slave standard protocol
Interface: TCP/IP
Description: O driver é utilizado para a comunicação em modo escravo (ou Servidor) com supervisórios ou outros equipamentos que utilizam o protocolo DNP3 Nível 2 em Modo MESTRE (ou Cliente). A comunicação pode ser feita através de canal serial ponto a ponto ou utilizando rede local Ethernet e protocolo TCP-IP como escravo único de um endereço IP.
Masters types supported: Qualquer equipamento em Modo MESTRE compatíivel DNP 3.0
Communication block size: Maximum 250 bytes, formato FT 1.2
Protocol Options: Modo "LinkConfirm" e endereço da estação mestre.
Multi-threading: Configurável pelo usuário, default é cinco threads para cda nó da rede.
Max number of nodes: One per channel
PC Hardware requirements: Standard PC Ethernet interface board, RS485 or RS232 port
PC Software requirements: ActionNET system.

Objetos de dados suportados

O quadro abaixo apresenta os objetos DNP e suas variantes, suportados por esta implementação.

 

Objeto





Requisição (Mestre)

Resposta (Escravo)



Obj.

Var

Descrição

Function Codes (decimal)

Qualifier. Codes (Hex)

Function Codes (decimal)

Qualifier Codes (Hex)

1

0

Binary Input (any variation)

1

00,01,06











22

00,01,06

129



1

1

Single Bit Binary Input (packed)

1

00,01,06

129

00, 01

1

2

Binary Input with status





129

00, 01

2

0

Binary Input event (any variation)

1

06,07,08





2

1

Binary Input change without time

1

06,07,08

129,130

17,18

2

2

Binary Input change with absolut time

1

06,07,08

129,130

17,18

2

3

Binary Input change with relative time

1

06,07,08

129,130

17,18

3

0

Double bit Binary input – Any variation

22

00,01,06





3

1

Double-bit Binary Input – Packed 

1

00,01,06

129

00, 01

3

2

Double-bit Binary Input – With flags

1

00,01,06

129

00, 01

4

0

Double-bit Binary Input Event – Any Variation

1

06,07,08





4

1

Double-bit Binary Input Event – whitout time

1

06,07,08

129,130

17,18

4

2

Double-bit Binary Input Event- with absolut time

1

06,07,08

129,130

17,18

4

3

Double-bit Binary Input Event - with relative time

1

06,07,08

129,130

17,18

10

1

Binary Output – Any Variation

1

00,01,06





10

2

Binary Output – status with flags

1

00,01,06

129



12

1

Control relay output block

3,4,5

17,28

129

Echo of request

20

0

Binary Counter – all variations









20

1

Counter – 32-bit with flag

1

00,01,06

129

00, 01

20

2

Counter – 16-bit with flag

1

00,01,06

129

00, 01

20

5

Counter – 32-bit without flag

1

00,01,06

129

00, 01

20

6

Counter – 16-bit without flag

1

00,01,06

129

00, 01

21

0

Frozen counter – all variations









21

1

Frozen Counter – 32-bit with flag

1

00,01,06

129

00, 01

21

2

Frozen Counter – 16-bit with flag

1

00,01,06

129

00, 01

21

3

Frozen Counter – 32-bit without flag

1

00,01,06

129

00, 01

21

4

Frozen Counter – 16-bit without flag

1

00,01,06

129

00, 01

22

0

Counter Event – Any Variation

1

06





22

1

Counter Event – 32-bit with flag

1

06,07,08

129,130

17,18

22

2

Counter Event – 16-bit with flag

1

06,07,08

129,130

17,18

23

0

Frozen Counter Event – Any Variation

1

06,07,08





23

1

Frozen Counter Event – 32-bit with flag

1

06,07,08

129,130

17,18

23

2

Frozen Counter Event – 16-bit with flag

1

06,07,08

129,130

17,18

30

0

Analog Input – all variations

1, 22

00,01,06





30

1

32 Bits Analog Input

1

00,01,06

129

00, 01

30

2

16 Bit Analog input with flag

1

00,01,06

129

00, 01

30

3

32 Bits Analog Input without flag

1

00,01,06

129

00, 01

30

4

16 Bit Analog input without flag

1

00,01,06

129

00, 01

30

5

Short Floating Point (32bits)

1

00,01,06

129

00, 01

32

0

Analog Input event – all variations

1

06,07,08





32

1

32 Bits Analog Input event

1

06,07,08

129,130

17,18

32

2

16 Bit Analog event without flag

1

06,07,08

129,130

17,18

32

3

32 Bit Analog event with flag

1

06,07,08

129,130

17,18

32

4

16 Bit Analog event with flag

1

06,07,08

129,130

17,18

32

5

Analog input event single float –without time

1

06,07,08

129,130

17,18

32

7

Analog input event single float –with time

1

06,07,08

129,130

17,18

40

0

Analog Output Status–any variation

1







40

1

Analog Output Status – 32bits with flag

1

00,01,06

129

00, 01

40

2

Analog Output Status -16bits with flag

1

00,01,06

129

00, 01

40

3

Analog output status – Single float with flag

1

00,01,06

129

00, 01

41

1

32Bit Analog output block

3,4,5,6

17,28

129

Echo of request

41

2

16 Bit Analog output block

3,4,5,6

17,28

129

Echo of request

41

3

Analog output block – Single float

3,4,5,6

17,28

129

Echo of request

50

1

Time and Data – Absolut time

1,2

0x07

129

07

51

1

Time and Date CTO – Absolute time, synchronized





129,130

07

51

2

Time and Date CTO – Absolute time, unsynchronized





129,130

07

52

1

Time Delay – Coarse





129

07

52

2

Time Delay – Fine





129

07

60

1

Class 0 data

1

0x06





60

2

Class 1 data

1,20,21

06,07,08





60

3

Class 2 data

1,20,21

06,07,08





60

4

Class 3 data

1,20,21

06,07,08





80

1

Internal indications

1,2

00,01

129

01


Na implementação do protocolo o mestre só executa as requisições destacadas em azul. O equipamento servidor, responde utilizando as respostas destacadas em amarelo. Observe-se que cabe ao equipamento servidor decidir como será a resposta e o mestre deve suportar todas as funções do nível 2 possíveis de serem utilizadas como resposta.
Os objetos, variações de objeto, códigos de função e qualificadores tem seus significados padronizados no DNP. Abaixo são mostradas as tabelas de código de função e qualificador:

Código de Função

Descrição

Origem

1

Ler

Mestre

2

Escrever

Mestre

3

Selecionar

Mestre

4

Operar

Mestre

5

Operar direto (sem seleção)

Mestre

6

Operar direto (sem ack)

Mestre

7

Congela Imediatamente

Mestre

8

Congela Imediatamente (sem ack)

Mestre

9

Congela e limpa

Mestre

10

Congela e lê

Mestre

13

Restart (Cold)

Mestre

14

Restart (Warm)

Mestre

20

Habilita mensagem não solicitada

Mestre

21

Desabilita mensagem não solicitada

Mestre

22

Assinala classe a objeto

Mestre

23

Medida com delay

Mestre

129

Resposta

Escravo

130

Resposta não solicitada (não existe no nível 2)

Escravo

 

Código de Qualificador

Uso em requisição

Uso em resposta

00,01

Um intervalo de pontos estáticos (classe 0) ou um único ponto com um número

Objeto estático

06

Todos os pontos

Inválido

07,08

Uma quantidade limitada de eventos.
Um ponto simples sem número (isto é uma data / hora)

Um ponto simples sem número (isto é uma data / hora)

17, 28

Controles (usualmente um ou mais pontos não relacionados)

Objetos evento (usualmente um ou mais pontos não relacionados)


O DNP tem o conceito de classes de dados, sendo definidas quatro classes:
Classe 0: Corresponde ao ponto estático, analógico ou digital. Seu conteúdo é o valor de uma variável analógica ou digital, de entrada ou saída, em um dado momento;
Classe 1, 2 e 3: Corresponde a eventos de transição de estados ou de variáveis de classe 0 ou situações internas à remota / relé que causam o evento.
O que ocorre normalmente nos IED's ao utilizar-se o DNP, é associar à variação de estado de variáveis digitais ou valores de banda morta de variáveis analógicas as classes 1, 2 e 3. Dessa forma, a modificação do estado / valor dessas variáveis causará eventos que serão transmitidos através do pedido de eventos das respectivas classes (60/2, 60/3 e 60/4). Periodicamente, pode ser feita uma leitura cíclica para verificação de integridade. Essa leitura, corresponde a um pedido de classe 0 (60/1).
Observações:

  1. Nesta implementação é considerado automaticamente que variáveis digitais Tipo BI, quando sofrerem alteração serão enviadas como de Classe 1, na forma do Objeto 2 com variação 2 (Binary input with time stamp).

  2. Nesta implementação é considerado automaticamente que variáveis analógicas AI, AIF, quando sofrerem alteração serão enviadas como de Classe 2, na forma dos Objetos 30 variação 3, para AI e como 30 variação 5 para o AIF.

Funcionamento geral

A sequência normal de operação do escravo é:

  • Caso seja necessário na instalação o mestre deverá enviar mensagem de sincronismo (50,1) periodicamente. A data e horário recebido será entendido como UCT (ou GMT), e será utilizada para alterar o relógio do computador "host".

  • Ao iniciar a execução, nas primeiras mensagens de resposta com, enviará flags de IIN indicando que IED reiniciou (restart). O mestre deverá então executar uma escrita de "clear device flag" (80/1) para limpar esta indicação;

  • Sempre que houver alteração do estado de digitais ou analógicas, que sejam configurados na tabela POINTS, com AccesType como ReadWrite, será enviada mensagem de evento como Classe 1 ou Classe 2. Caso não se desejar eventos em alguns pontos usar para estes AccessType = Read;

  • Quando o modo escravo recebe um pedido de comando de saída digital ou saída analógica, através software envia a respectiva requisição para o IED (12/1 ou 41/2);

Nesta página: