DNP30 - CONFIGURAÇÃO DE PONTOS

Geral

Os pontos podem ser de entrada ou de saída.
Os pontos de entrada, isto é os pontos que são servidos pelo protocolo tem basicamente dois parâmetros principais: O tipo de ponto e o seu endereço.
No mapa de endereços de um IED os endereços reiniciam para cada tipo de ponto.
Os estados ou valores dos pontos são reportados ao cliente por Objetos de Informação definidos no protocolo. Estes objetos possuem variações como com ou sem "timestamp". Sempre que o escravo reportar mudanças em classes 1 ou 2 , utilizará a variação com "timestamp" utilizando o ultimo "timestamps" correspondente de um ponto no Action.NET. Quando o escravo reportar leituras gerais de analógicos, contadores ou digitais este protocolo utilizará variação sem "timestamp".
O módulo de comunicação no modo Escravo, implementa as seguintes operações:

  • Respostas a pedidos de leitura de pontos digitais;

  • Respostas a pedidos de leitura de variáveis analógicas;

  • Respostas a pedidos de Leitura de contadores;

  • Execução de solicitação de comandos de Pontos digitais e analógicos;

Tipos de pontos

Os tipos de pontos implementados são definidos utilizando os objetos de dados definidos na norma, a seguir apresentados. Para cada tipo de ponto quaisquer que sejam as variações de objetos recebidos do IED , com "flag" ou sem, com timestamp ou sem, os valores adquiridos serão colocados em pontos com o tipo entre os abaixo listados. Na tabela pontos, no campo "address" escolhe-se o tipo do ponto e especifica-se seu endereço.

AI - Analog Input
Medição analógica escalar utilizada para transmissão de grandezas analógicas. Os dados de tags com este tipo de ponto são enviados através do objeto 32 variação 1. São numeros de 32 bits inteiros sem timesatmp.
BI - Binary Input
Ponto de entrada binario simples, valor 0 ou 1. Os dados de tags com este tipo de ponto são enviados através do objeto 2 variação 2, quando por motivo de alteração (evento), com timestamp, ou através do objeto 2 var. 1, quando por leitura geral (classe 0).
DBI - Double bits Binary Input
Ponto de entrada binario duplo, valor entre 0 e 3. Os dados de tags com este tipo de ponto são enviados através do objeto 3 e variação 2. quando por alteração (evento), com timestamp, ou através do objeto 3 var. 1, quando por leitura geral (classe 0).
RAO – Read Analog Output
Não utilizado na implementação do modo escravo.
CRO - Control Relay Output
Ponto de saida digital utilizado para receber comandos de chaves e disjuntores. É esperado o objeto DNP 12, incluido o Control Code (8 bits) para indicação do tipo de comando e detalhes de execução.
No cadastramento destes pontos em modo escravo, é preciso definir o control code idêntico ao uque será nviado pelo IED Mestre, para que se possa identificar o tag utilizado no Escravo. No escravo somente é executada a alteração do valor do ponto do Action.NET. Para que o comando chegue ao destino final em um IED o tag afetado deverá ser utilizado por um outro protocolo Cliente, que o enviará ao IED.
No caso de controle de chaves e disjuntores recomenda-se a utilização de dois Tags: um para o Trip e outro para o Close.
Os valores possíveis recebidos do cliente são apresentados na tabela abaixo com as respectivas ações associadas:

Control Code

Ação protocolo

Ação no tag Action.NET executada no escravo

1

Saída Pulse ON

Altera para 1 e a seguir para Zero

2

Saída Pulse OFF

Altera para Zero e a seguir para 1

3

Saída Latch ON

Altera para 1

4

Saída Latch OFF

Altera para ZERO

65

Saída Pulse ON + Close

Altera para 1 e a seguir para Zero

66

Saída Pulse OFF + Close

Altera para Zero e a seguir para 1

67

Saída Latch ON + Close

Altera para 1

68

Saída Latch OFF + Close

Altera para ZERO

129

Saída Pulse ON + Trip

Altera para 1 e a seguir para Zero

130

Saída Pulse OFF + Trip

Altera para Zero e a seguir para 1

131

Saída Latch ON + Trip

Altera para 1

132

Saída Latch OFF + Trip

Altera para ZERO

+ 16

Enfileirar (Queue) + Trip

Nada faz

+ 32

Limpar (Clear) + Trip

Nada faz


CT – Counter
Contador binário de 16 ou 32bits, enviado através do objetos 20 variação 1. Este numero possui o ultimo estado do tag de contagem, no instante em que é enviado.
FRZ - Frozen Counter
Contador binário de 32 bits, enviado através do objeto 21 variação 1, que contém a informação de um contador utilizado como um tag.
AO - Analog Output Status or Block (16bits)
Quando este modo escravo recebe mensagem com Function Code de escrita (2 = Write ou 4=Operate, ou 5= DirectOperate ) e este objeto ou 41 (valor requerido para ser alcançado na saida analógica) na suas variações 2 (16 bits), este valor é escito no tag definido na tabela POINTS para o endereço recebido no objeto..
AOL - Analog Output long (32 bits)
Quando este modo escravo recebe mensagem com Function Code de escrita (2 = Write) e este objeto 41 (valor requerido para ser alcançado na saida analógica) na suas variações 1 (32 bits), este valor é escito no tag definido na tabela POINTS para o endereço recebido no objeto..
AIF - Analog Input Floating (32 bits)
Medição analógica utilizada para transmissão de grandezas analógicas. Tags com este tipo devem ser tipificados no Action.Net como reais. Seu valor é enviado através do objeto 30 variação 5. São numeros de ponto flutuante de 32 ou 64 bits, formato IEEE-754.
IIN - Internal Indications
Como é o padrão do protocolo os status dos Internal Indications ou status de resposta de comandos são enviados em todas as mensagens de resposta do escravo, para utilização pelo cliente. A tabela mostra o formato destas duas palavras de 16 bits.

BIT

Origem

Descrição

Conteúdo

0

IIN

Broadcast

Retorna 1 quando escravo recebe uma mensagem de broadcast (endereço = FFFF)

1

IIN

Classe 1

Retorna 1 se escravo tem eventos classe 1

2

IIN

Classe 2

Retorna 1 se escravo tem eventos classe 2

3

IIN

Classe 3

Retorna 1 se escravo tem eventos classe 3

4

IIN

Sincronismo de relógio

Retorna 1 se escravo pede sincronização de relógio

5

IIN

Saídas em local

Retorna 1 se algumas ou todas as saídas estão em local

6

IIN

Problema

Retorna 1 se escravo com problema

7

IIN

Reinício

Retorna 1 se escravo reiniciou (restart)

8

IIN

Função não implementada

Retorna 1 se função enviada pelo mestre não está implementada no escravo

9

IIN

Objeto desconhecido

Retorna 1 se escravo não tem determinado objeto ou classe não tem esse objeto

10

IIN

Dado inválido

Retorna 1 se tem parâmetro inválido no qualificador ou intervalo de endereços está inválido

11

IIN

Overflow

Retorna 1 se buffer do escravo teve overflow

12

IIN

Ocupado

Retorna 1 se requisição foi entendida mas já está sendo executada

13

IIN

Dado corrompido

Retorna 1 se dados de parametrização estão corrompidos

14

IIN

Reservado

Sempre 0

15

IIN

Reservado

Sempre 0

 

Status field: 8 bits enviados como resposta de um comando.

BIT

Origem

Descrição

Conteúdo

0

Status

Comando aceito

Retorna 1 após comando correto

1

Status

Comando não aceito

Retorna 1 se ocorreu time out entre tempo de select e operate.

2

Status

Falta select

Retorna 1 se foi feito um operate sem prévio select

3

Status

Erro formato

Retorna 1 se comando tem erro de formato

4

Status

Controle não suportado

Retorna 1 se operação não é suportada

5

Status

Fila cheia

Retorna 1 se fila de requisição do escravo está cheia ou ponto já está ativo

6

Status

Erro hardware

Retorna 1 se ocorreu um erro de hardware do dispositivo ao tentar executar o comando

7



Não utilizado



Endereço do ponto

O campo Address a ser preenchido no cadastramento de pontos é o que a norma chama de "Index". Trata-se de um numero de 16 bits que é o índice [0 a n-1] indicativo de cada um dos pontos do mesmo tipo mapeados dentro do IED.
Abaixo, a título de exemplo é apresentada uma tabela de pontos preenchida com diferentes tipos de ponto. Os pontos tipo saída digital (CRO), conforme citado acima, além do endereço possuem o código de controle.
129 = Pulse ON + TRIP Figura 12 – Exemplo da tabela de Points com diferentes tipos de pontos


Para implementar pontos de entrada digital discretos, basta usar o atributo "Bit" de um Tag, para cada um dos pontos que definem o valor da entrada digital discreta. Assim, por exemplo, uma seccionadora que tem dois contatos para definir seu estado:

Tag

ENDEREÇO

Complemento

SEL_LINHA_01.SC89_1

8

Seccionadora aberta

SEL_LINHA_01.SC89_1

9

Seccionadora Fechada


É definida como um Tag AnalogInt e na tabela node se usa o atributo Bit desta variável de 16 bits (AnalogInt) para endereçar os dois pontos, como na tabela abaixo:

Os valores assumidos pela variável SEL_LINHA_01.SC89_1 serão:

Tag

Bit 0

Bit 1

VALOR

SIGNIFICADO

SEL_LINHA_01.SC89_1

0

0

0

INDEFINIDO

SEL_LINHA_01.SC89_1

1

0

1

ABERTA

SEL_LINHA_01.SC89_1

0

1

2

FECHADA

SEL_LINHA_01.SC89_1

1

1

3

ERRO

Access Type

Por ser um módulo de comunicação em modo servidor há a necessidade de algumas características próprias para a parametrização do campo Access Type da tabela Points:
Para pontos com tipos que são de leitura o Access Type deve ser definido com:
ReadOnStartup= On;
ReadPooling= Never;
WriteEvent= Changed;
AccepUnsolictited = On;
Para pontos com tipos de leitura , para os quais não se deseja geração de eventos
O Access Type deve ser definido da mesma forma acima porém com com:
WriteEnable = off;
WriteEvent= none;

Nesta página: