Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Nesta pagina:
General Information
Communication Driver Name: DNP30S
Current Version: 19.0 2
Implementation DLLP: T.ProtocolDriver.DNP30S.dll
ProtocolP: DNP3.0 Slave standard protocol
Interface: TCP/IP ou Serial
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 IPThe driver is used for communication in slave mode (or Server) supervisory devices or other equipment using the DNP3 Level 2 protocol in MASTER (or Client) Mode. Communication can be done through a serial peer-to-peer channel or using local Ethernet network and TCP-IP protocol as the single slave of an IP address.
Masters types supported: Qualquer equipamento em Modo MESTRE compatíivel Any equipment in Master Mode compatible DNP 3.0
Communication block size: Maximum 250 bytes, formato FT 1.2 format
Protocol Options: Modo "LinkConfirm" e endereço da estação mestremode and master station address.
Multi-threading: Configurável pelo usuário, default é cinco threads para cda nó da redeThreading: User confige, default is five threads for each network node.
Max number of nodes: user defined
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)
Supported data objects
The table below shows the DNP objects and their variants, supported by this implementation.
Object | Requisition (Master) | Answer (Slave) | ||||
Obj. | Var |
Description | 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 |
16bit 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 |
16bit 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 |
16th Bit Analog event without flag | 1 | 06,07,08 | 129,130 | 17,18 |
32 | 3 |
32bit Analog event with flag | 1 | 06,07,08 | 129,130 | 17,18 |
32 | 4 |
16th 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 |
16bit 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 |
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 |
date | 1 | 0x06 | ||
60 | 2 | Class 1 |
date | 1,20,21 | 06,07,08 | ||
60 | 3 | Class 2 |
date | 1,20,21 | 06,07,08 | ||
60 | 4 | Class 3 |
date | 1,20,21 | 06,07,08 | ||||
80 | 1 | Internal indications | 1,2 | 00,01 | 129 | 01 |
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ê
In the protocol implementation the master only executes the requests highlighted in blue. The server equipment responds using the responses highlighted in yellow. Note that it is up to the server equipment to decide how the response will be, and the master must support all possible level 2 functions to be used as a response.
Objects, object variations, function codes, and qualifiers have their meanings standardized in DNP. Below are the function code and qualifier tables:
Function Code | Description | Origin |
1 | Read | Master |
2 | To write | Master |
3 | Select | Master |
4 | Operate | Master |
5 | Operate direct (no selection) | Master |
6 | Operate direct (no ack) | Master |
7 | Freezes Immediately | Master |
8 | Freezes Immediately (without ack) | Master |
9 | Freezes and cleans | Master |
10 | Freezes and reads | Master |
13 | Restart (Cold) |
Master | |
14 | Restart (Warm) |
Master |
20 |
Habilita mensagem não solicitada
Enables unsolicited message | Master |
21 |
Desabilita mensagem não solicitada
Disables unsolicited message | Master |
22 |
Assinala classe a objeto
Marks class by object | Master |
23 |
Measure with delay |
Master |
129 |
Answer |
Slave |
130 |
Unsolicited response (does not exist at level 2) |
Escravo
Código de Qualificador
Uso em requisição
Slave |
06
Todos os pontos
Qualifier Code | Use in requisition | Use in response |
00,01 |
Um intervalo de pontos estáticos (classe 0) ou um único ponto com um número
Objeto estático
A range of static points (class 0) or a single point with a number | Static object | |
06 | All points | Invalid |
07,08 |
Uma quantidade limitada de eventos.
Um ponto simples sem número (isto é uma data / hora)
A limited amount of events. | A simple point without a number (i.e. a date/time) |
17, 28 |
Controles (usualmente um ou mais pontos não relacionados)
Objetos evento (usualmente um ou mais pontos não relacionados)
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
Controls (usually one or more unrelated points) | Event objects (usually one or more unrelated points) |
DNP has the concept of data classes, and four classes are defined:
Class 0: Corresponds to static, analog, or digital point. Its content is the value of an analog or digital variable, input or output, at a given time;
Class 1, 2 and 3: Corresponds to state transition events or class 0 variables or situations internal to the remote/relocation that cause the event.
What usually occurs in FDI's when using NpD is to associate with the state variation of digital variables or dead band values of analog variables classes 1, 2 and 3. Thus, modifying the state/value of these variables will cause events that will be transmitted by ordering events from the respective classes (60/2, 60/3 e and 60/4). Periodicamente, pode ser feita uma leitura cíclica para verificação de integridade. Essa leitura, corresponde a um pedido de classe 0 Periodically, a cyclic reading can be done for health check. This reading corresponds to a class 0 request (60/1).
Observações:
Observations:
In this implementation it is automatically considered that digital variables Type BI, when they undergo change will be sent as Class 1, in the form of Object 2 with variation 2 (Binary input with time stamp).
In this implementation it is automatically considered that analog variables AI, 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);
when they undergo change will be sent as Class 2, in the form of Objects 30 variation 3, for AI and as 30 variation 5 for the AIF.
General operation
The normal sequence of operation of the slave is:
If necessary in the installation the master should send a sync message (50.1) periodically. The date and time received will be understood as UCT (or GMT), and will be used to change the clock of the "host" computer.
When you start running, in the first reply messages with, you will send IIN flags indicating that IED has restart. The master must then perform a clear device flag (80/1) write to clear this statement;
Whenever there is a change in the state of digital or analog, which are configured in the POINTS table, with AccesType as ReadWrite, event message will be sent as Class 1 or Class 2. If you do not want events at some points to use for these AccessType = Read;
When slave mode receives a request for digital output command or analog output, through software sends its request to the IED (12/1 or 41/2);
Scroll ignore | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||
On this page: |