Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Sumário
Nome do Módulo: IEC 61850 Client Communication Protocol
Current Version: 9.2
Implementação DLL: T.ProtocolDriver.IEC61850.dll
Protocolo: IEC 61850 Edition 2
Interface: TCP/IP
Descrição: O Action.NET implementa a parte da norma IEC 61850 responsável pelo núcleo de servicos ACSI, como definido na seção 8-1 da referida norma. Utiliza encapsulsamento da camada de transporte ISO/OSI em camada de transporte TCP/IP. Realiza comunicação com IEDs (intelligent Eletronic Devices), RTUs(Remote Terminal Units) e IO devices compatíveis com este protocolo, atuando como estação Cliente.
Requisitos do Sistema: Uso do software Action.NET
Max number of nodes: user defined
Note |
---|
Este módulo de comunicação foi re-escrito a partir da versão an-2016.2, passando a utilizar uma biblioteca diversa da anteriormente utilizada, tendo sido feitas também alterações nos procedimentos de configuração de canais, nodes e points. O item a seguir oferece notas para auxiliar na migração de projetos que já utilizavam o módulo da versão anterior |
Tag Providers e Canais de comunicação
Existem 2 maneiras independentes de usar este protocolo. Usando uma configuração TagProvider, ou como um Device-Channel.
TagProvider permite conectar-se diretamente com dados em dispositivos, sem criar tags locais, usando a definição de nome no dispositivo remoto.
Device-Channel permite mapear tags no projeto para endereços de dados externos, dando mais flexibilidade nas convenções de nomes e gerenciamento de blocos de dados.
Este documento contém informações específicas sobre a configuração do dispositivo em ambos os métodos. Para uma explicação genérica sobre TagProviders, ou sobre o Módulo de Dispositivo, Canais, Nós e Pontos, consulte o guia do usuário.
Migração
Os usuários do Action.NET que utilizam o módulo de comunicação da edição 1, necessitam atualizar o cadastro de canais, nós e pontos do projeto. A migração deve ser feita seguindo os passos abaixo:
Copiar todos os pontos referentes à nós do Módulo de comunicação 61850 do projeto para uma planilha do Excel.
Apagar todos os pontos referentes à nós do Módulo de comunicação 61850 do projeto.
Copiar os nomes dos nós e canais do projeto para o bloco de notas.
Apagar todos os nós.
Apagar todos os canais.
Criar os canais com os nomes previamente copiados no passo 3. Configurando cada canal de acordo com a sessão 2 - CONFIGURAÇÃO DE CANAL
Criar os nós com os nomes previamente copiados no passo 3. Configurando cada nó de acordo com a sessão 3 - CONFIGURAÇÃO DE NÓS
Colar os pontos previamente copiados no passo 1.
Ao iniciar o Módulo de comunicação. Validações de cadastros serão realizadas. Caso ocorra incorreções em definições de pontos, elas serão registradas no Log (Ver sessão 7.1 - Registros de operações) e verifique como corrigi-las na sessão 4 - CONFIGURAÇÃO DE PONTOS.
Norma IEC 61850
Esse tópico tem como objetivo apresentar de forma sucinta algumas informações da norma IEC 61850, que interferem diretamente na definição e implementação deste módulo de comunicação.
Para mais detalhes e uma descrição formal, refira-se aos textos da norma ou à documentação dos IEDs servidores.
A norma é composta por dez partes, listadas na tabela abaixo.
Capítulo | Descrição |
1 | Introdução e visão global |
2 | Glossário |
3 | Requisitos Gerais |
4 | Gerenciamento de sistema e projeto |
5 | Requisitos de comunicação para funções e modelos de dispositivos |
6 | Configuração da linguagem de descrição para comunicação em subestações com IEDs |
7.1 | Estruturas de comunicação básicas para subestações e alimentadores: Princípios e modelos |
7.2 | Estruturas de comunicação básicas para subestações e alimentadores: Interface de serviço de |
7.3 | Estruturas de comunicação básicas para subestações e alimentadores: Classe de dados comuns |
7.4 | Estruturas de comunicação básicas para subestações e alimentadores: Classes de nós lógicos e Dados compatíveis |
8.1 | Mapeamento para MMS(ISO/IEC 9506-1 e ISO/IEC 9506-2) e para ISO/IEC8802-3 |
9.1 | Valores amostrados sobre link unidirecional multidrop ponto-a-ponto |
9.2 | Valores amostrados sobre ISO/IEC8802-3 |
10 | Testes de conformidade |
No que diz respeito ao suporte para a comunicação de dados, entre computadores e IEDs, padronizado pela norma, são definidos os tipos de Mensagem, listados na tabela abaixo.
Mensagem | Descrição | |
GOOSE | Generic Object Oriented Substation Event | Mensagens do tipo multicast que carregam informações entre os IEDs. São responsáveis apenas pelo tráfego de mensagens que informam sobre a atuação de qualquer proteção ou sinal digital. |
MMS | Manufacturing Message Specification | Mensagens do tipo unicast que são utilizadas para troca de dados de medições (analógicos) ou de estados (digitais) para indicar o estado de equipamentos e processo. |
Um dos grandes diferenciais vantajosos introduzidas pela norma, na definição de seu protocolo de comunicação de dados, é o fato de que os pontos internos a um IED não são endereçados por números, como em outros protocolos, mas são considerados "objetos" e endereçados por nomes que são padronizados pela norma.
Internamente aos IEDs IEC61850 existe um mapa dos objetos, arranjados em uma estrutura hierárquica. Na comunicação entre um cliente (por exemplo, o Action.NET) e o servidor (por exemplo um Relé digital-IED) trafegam nas mensagens do protocolo estes nomes de objetos (pelo menos no estabelecimento inicial da comunicação).
Para se ter uma ideia geral sobre estes nomes de objetos apresenta-se aqui, de modo sucinto, a estrutura da hierarquia dos mapas de endereçamento do IEC61850.
LD – Logical Devices – São os dispositivos lógicos dentro deste servidor físico, que funcionam como "containers" de funções (Logical Nodes) ou mesmo como "gateways" entre LNs de LDs diferentes. Geralmente são usados os nomes internos do IED na parte inicial do nome (prefixos) e sufixos que indiquem a função principal do LD. São exemplos de sufixos CTRL, MEAS, etc.
LN – Logical Nodes – São objetos que implementam as funções básicas bem definidas dentro do Logical Device. Os nomes dos Logical Nodes são padronizados. Cada LN contém objetos, conjuntos de dados, definições de Reports, de Logs, de grupos de parâmetros e serviços que implementam objetos e funções. Por exemplo, uma chave seccionadora, seu estado, seu controle, como o com o nome "Q0CSWI1". O LN no caso é o CSWI – "Switch controller". Outros exemplos de LNs seriam os que executam funções de medição (MMXU), de transformador de tensão (TVTR), de proteção de sobre corrente (PTOC), de proteção térmica (PTTR). Uma lista completa de LNs para uso em IEDs de subestações e as regras de formação de seus nomes são apresentadas na norma IEC61850- Part 5.
FC – Functional Constraints – A função definida pelo LN conterá vários objetos que são distribuídos em categorias definidas como FC-Functional Constraints. Por exemplo "CO" que conterá objetos de comando, "ST" que conterá objetos de sinalização digital, "RP", para objetos do tipo Reports. A figura 4 apresenta objetos de medição que ficam na categoria "MX". A lista de FCs a seguir foi obtida na norma IEC61850 Part 7-2- 2003 – Tabela 18 – Na tabela original há mais detalhes sobre cada item.
ST Status information
MX Measurands (analogue values)
CO Control DataAttribute shall be operated (control model) and read
SP Setpoint DataAttribute shall represent a set-point: value may be controlled and read.
SV Substitution DataAttribute shall represent a substitution
CF Configuration DataAttribute shall represent a configuration
DC Description DataAttribute shall represent a description
SG Setting group Logical devices that implement the SGCB class
SE Setting group
EX xtended definition
BR Buffered report
RP Unbuffered report
LG Logging Attribute shall represent a log control
GO Goose control Attribute shall represent a goose control
GS Gsse control Attribute shall represent a goose control
MS Multicast sampled value control
US Unicast sampled value control
DO – Data objects – Os Data Objects são objetos, com nomes padronizados, que contém a informação propriamente. Estes objetos podem ser simples, como o objeto "Pos", que fornece a informação de posição do disjuntor. Há objetos mais complexos "A", que representa uma corrente trifásica. Ele é constituído, de quatro Data Attributes, cada um dos quais, com Data Attributes filhos informações de corrente de cada fase e de um neutro. Tem-se neste último caso, múltiplos níveis de Data Attributes na hierarquia abaixo de um Data Object.
São exemplos de DataObjects:
Beh – Behavior of LN
Health - state of the logical node related HW and SW.
Loc - switchover between local and remote operation
Mod – Mode and behavior: On, Blocked, Test, Test/Blocked, Off
Pos – Switch position
A – Current
neut – phase neutral
phsA, phsB,PhsC – phases A, B and C
Hz - Frequency
PPV - Phase to phase voltages.
PhV - Phase to ground voltages for Phases 1, 2, and 3, including Angle
DA – Data attributes -Cada objeto hierarquicamente abaixo de um Data Object ou de outro Data Attribute, no caso "ctlNum" ou uma fase da corrente como "phsC". Exemplos:
No caso de "Pos" pode-se ver quatro Data Attributes:
stVal – que contém o estado do disjuntor
q – a qualidade do dado
t – timestamp da amostragem
ctlNum - número de sequência de troca de status objeto de dados
No caso da corrente "pshC", além dela mesma ser um Data Attribute, esta contém ainda 4 Data Attributes abaixo de si:
cVal - a medida da corrente
instCval - a medida instantânea da corrente na última aquisição
q – a qualidade do dado
t – timestamp da amostragem.
Módulo de Comunicação
O módulo de comunicação (Módulo de comunicação) é composto por duas bibliotecas que trabalham em conjunto: Comunicação e Integração.
Biblioteca de Comunicação
A biblioteca de comunicação é desenvolvida na linguagem de programação C++ sendo responsável pela comunicação entre o Módulo de comunicação e equipamento. Foi projetada de acordo com a edição 2 da série padrão IEC 61850.
Objetos suportados
A tabela a seguir fornece uma visão geral dos objetos IEC 61850 suportados.
IEC 61850 Objects | MMS Object |
SERVER class | Virtual Manufacturing Device (VMD) |
LOGICAL DEVICE class | Domain |
LOGICAL NODE class | Named Variable |
DATA class | Named Variable |
DATA-SET class | Named Variable List |
SETTING-GROUP-CONTROL-BLOCK class | Named Variable |
REPORT-CONTROL-BLOCK class | Named Variable |
LOG class | Journal |
LOG-CONTROL-BLOCK class | Named Variable |
GOOSE-CONTROL-BLOCK class | Named Variable |
GSSE-CONTROL-BLOCK class | Named Variable |
CONTROL class | Named Variable |
Files | Files |
Serviços suportados
A tabela a seguir fornece uma visão geral dos serviços ACSI (Abstract Communication Service Interface) IEC 61850 suportados.
IEC 61850 Model | IEC 61850 Services | AA: TP/MC | Client | Server | ||
---|---|---|---|---|---|---|
Server | S1 | ServerDirectory | TP | ✓ | ✓ | |
Application association | S2 | Associate | TP | ✓ | ✓ | |
S3 | Abort | TP | ✓ | ✓ | ||
S4 | Release | TP | ✓ | ✓ | ||
Logical device | S5 | LogicalDeviceDirectory | TP | ✓ | ✓ | |
Logical node | S6 | LogicalNodeDirectory | TP | ✓ | ✓ | |
S7 | GetAllDataValues | TP | ✓ | ✓ | ||
Data | S8 | GetDataValues | TP | ✓ | ✓ | |
S9 | SetDataValues | TP | ✓ | ✓ | ||
S10 | GetDataDirectory | TP | ✓ | ✓ | ||
S11 | GetDataDefinition | TP | ✓ | ✓ | ||
Data set | S12 | GetDataSetValues | TP | ✓ | ✓ | |
S13 | SetDataSetValues | TP | ✓ | ✓ | ||
S14 | CreateDataSet | TP | ✓ | ✓ | ||
S15 | DeleteDataSet | TP | ✓ | ✓ | ||
S16 | GetDataSetDirectory | TP | ✓ | ✓ | ||
Substitution | S17 | SetDataValues | TP | ✓ | ✓ | |
Setting group control block | S18 | SelectActiveSG | TP | ✓ | ✓ | |
S19 | SelectEditSG | TP | ✓ | ✓ | ||
S20 | SetSGValues | TP | ✓ | ✓ | ||
S21 | ConfirmEditSGValues | TP | ✓ | ✓ | ||
S22 | GetSGValues | TP | ✓ | ✓ | ||
S23 | GetSGCBValues | TP | ✓ | ✓ | ||
Buffered report control block (BRCB) | S24 | Report | TP | ✓ | ✓ | |
S24-1 | data-change (dchg) | TP | ✓ | ✓ | ||
S24-2 | qchg-change (qchg) | TP | ✓ | ✓ | ||
S24-3 | data-update (dupd) | TP | ✓ | ✓ | ||
S25 | GetBRCBValues | TP | ✓ | ✓ | ||
S26 | SetBRCBValues | TP | ✓ | ✓ | ||
Unbuffered report control block (URCB) | S27 | Report | TP | ✓ | ✓ | |
S27-1 | data-change (dchg) | TP | ✓ | ✓ | ||
S27-2 | qchg-change (qchg) | TP | ✓ | ✓ | ||
S27-3 | data-update (dupd) | TP | ✓ | ✓ | ||
S28 | GetURCBValues | TP | ✓ | ✓ | ||
S29 | SetURCBValues | TP | ✓ | ✓ | ||
Log control block | S30 | GetLCBValues | TP | ✓ | ✓ | |
S31 | SetLCBValues | TP | ✓ | ✓ | ||
S32 | QueryLogByTime | TP | ✓ | ✓ | ||
S33 | QueryLogAfter | TP | ✓ | ✓ | ||
S34 | GetLogStatusValues | TP | ✓ | ✓ | ||
GOOSE control block | S35 | SendGOOSEMessage | MC | ✓ | ✓ | |
S36 | GetGoReference | TP | ||||
S37 | GetGOOSEElementNumber | TP | ||||
S38 | GetGoCBValues | TP | ✓ | ✓ | ||
S39 | SetGoCBValues | TP | ✓ | ✓ | ||
GSSE control block | S40 | SendGSSEMessage | MC | |||
S41 | GetGsReference | TP | ||||
S42 | GetGSSEElementNumber | TP | ||||
S43 | GetGsCBValues | TP | ||||
S44 | SetGsCBValues | TP | ||||
Multicast SVC | S45 | SendMSVMessage | MC | ✓ | ||
S46 | GetMSVCBValues | TP | ✓ | ✓ | ||
S47 | SetMSVCBValues | TP | ✓ | ✓ | ||
Unicast SVC | S48 | SendUSVMessage | TP | ✓ | ||
S49 | GetUSVCBValues | TP | ✓ | ✓ | ||
S50 | SetUSVCBValues | TP | ✓ | ✓ | ||
Control | S51 | Select | TP | ✓ | ✓ | |
S52 | SelectWithValue | TP | ✓ | ✓ | ||
S53 | Cancel | TP | ✓ | ✓ | ||
S54 | Operate | TP | ✓ | ✓ | ||
S55 | Command-Termination | TP | ✓ | ✓ | ||
S56 | TimeActivated-Operate | TP | ✓ | ✓ | ||
File transfer | S57 | GetFile | TP | ✓ | ✓ | |
S58 | SetFile | TP | ✓ | ✓ | ||
S59 | DeleteFile | TP | ✓ | ✓ | ||
S60 | GetFileAttributeValues | TP | ✓ | ✓ | ||
Time | T1 | Time resolution of internal clock | 1ms | 1ms | ||
T2 | Time accuracy of internal clock | |||||
T3 | Supported Timestamp resolution | 1ms | 1ms | |||
AA – Application association |
Biblioteca de Integração
A biblioteca de integração é desenvolvida na linguagem de programação C# e a biblioteca é responsável pela integração entre o Módulo de comunicação e o SCADA. Ela tem como objetivo transacionar as informações lidas e escritas entre o equipamento e o Action.NET.
Objetos implementados
A tabela a seguir fornece uma visão geral dos objetos IEC 61850 implementados. Os campos assinalados (✓) indicam a implementação do serviço.
IEC 61850 Objects | |
---|---|
SERVER class | |
LOGICAL DEVICE class | ✓ |
LOGICAL NODE class | ✓ |
DATA class | ✓ |
DATA-SET class | ✓ |
SETTING-GROUP-CONTROL-BLOCK class | |
REPORT-CONTROL-BLOCK class | ✓ |
LOG class | |
LOG-CONTROL-BLOCK class | |
GOOSE-CONTROL-BLOCK class | |
GSSE-CONTROL-BLOCK class | |
CONTROL class | ✓ |
Files |
Serviços implementados
A tabela a seguir fornece uma visão geral dos serviços ACSI (Abstract Communication Service Interface) IEC 61850 implementados. Os campos assinalados (✓) indicam a implementação do serviço.
IEC 61850 Model | IEC 61850 Services | ||
---|---|---|---|
Server | S1 | ServerDirectory | ✓ |
Application association | S2 | Associate | ✓ |
S3 | Abort | ✓ | |
S4 | Release | ✓ | |
Logical device | S5 | LogicalDeviceDirectory | ✓ |
Logical node | S6 | LogicalNodeDirectory | ✓ |
S7 | GetAllDataValues | ✓ | |
Data | S8 | GetDataValues | ✓ |
S9 | SetDataValues | ✓ | |
S10 | GetDataDirectory | ✓ | |
S11 | GetDataDefinition | ✓ | |
Data set | S12 | GetDataSetValues | ✓ |
S13 | SetDataSetValues | ||
S14 | CreateDataSet | ||
S15 | DeleteDataSet | ||
S16 | GetDataSetDirectory | ✓ | |
Substitution | S17 | SetDataValues | |
Setting group control block | S18 | SelectActiveSG | |
S19 | SelectEditSG | ||
S20 | SetSGValues | ||
S21 | ConfirmEditSGValues | ||
S22 | GetSGValues | ||
S23 | GetSGCBValues | ||
Buffered report control block (BRCB) | S24 | Report | ✓ |
S24-1 | data-change (dchg) | ✓ | |
S24-2 | qchg-change (qchg) | ✓ | |
S24-3 | data-update (dupd) | ✓ | |
S25 | GetBRCBValues | ✓ | |
S26 | SetBRCBValues | ✓ | |
Unbuffered report control block (URCB) | S27 | Report | ✓ |
S27-1 | data-change (dchg) | ✓ | |
S27-2 | qchg-change (qchg) | ✓ | |
S27-3 | data-update (dupd) | ✓ | |
S28 | GetURCBValues | ✓ | |
S29 | SetURCBValues | ✓ | |
Log control block | S30 | GetLCBValues | |
S31 | SetLCBValues | ||
S32 | QueryLogByTime | ||
S33 | QueryLogAfter | ||
S34 | GetLogStatusValues | ||
GOOSE control block | S35 | SendGOOSEMessage | |
S36 | GetGoReference | ||
S37 | GetGOOSEElementNumber | ||
S38 | GetGoCBValues | ||
S39 | SetGoCBValues | ||
GSSE control block | S40 | SendGSSEMessage | |
S41 | GetGsReference | ||
S42 | GetGSSEElementNumber | ||
S43 | GetGsCBValues | ||
S44 | SetGsCBValues | ||
Multicast SVC | S45 | SendMSVMessage | |
S46 | GetMSVCBValues | ||
S47 | SetMSVCBValues | ||
Unicast SVC | S48 | SendUSVMessage | |
S49 | GetUSVCBValues | ||
S50 | SetUSVCBValues | ||
Control | S51 | Select | ✓ |
S52 | SelectWithValue | ✓ | |
S53 | Cancel | ||
S54 | Operate | ✓ | |
S55 | Command-Termination | ||
S56 | TimeActivated-Operate | ||
File transfer | S57 | GetFile | |
S58 | SetFile | ||
S59 | DeleteFile | ||
S60 | GetFileAttributeValues | ||
Time | T1 | Time resolution of internal clock | |
T2 | Time accuracy of internal clock | ||
T3 | Supported Timestamp resolution |
Functional Constraints implementadas
A tabela a seguir fornece uma visão geral da propriedade Functional Constraint encontrada em cada atributo de um nó lógico. Os campos assinalados (✓) indicam a implementação da leitura ou escrita.
Functional Constraint | Read | Write | |
BL | Blocking | ||
BR | Buffered report | ✓ | ✓ |
CF | Configuration | ✓ | ✓ |
CO | Control | ✓ | |
DC | Description | ✓ | ✓ |
EX | Extended definition | ✓ | ✓ |
LG | Log control blocks | ||
MS | Multicast SV | ||
MX | Measurands (analog values) | ✓ | |
OR | Operate received | ||
RP | Unbuffered report | ✓ | ✓ |
SE | Setting group editable | ||
SG | Setting group | ||
SP | Setpoint | ✓ | ✓ |
SR | Service response / Service tracking | ||
ST | Status information | ✓ | |
SV | Substitution | ||
US | Unicast SV |
Funcionamento
O módulo de comunicação trabalha, de forma resumida, com a seguinte sequência de etapas.
Etapa | Objetivo | Descrição |
1 | Inicialização do canal | A leitura das configurações do canal é realizada. |
2 | Inicialização do(s) nó(s) | É estabelecida uma comunicação e leitura da estrutura de dados do equipamento. Essa leitura é imprescindível para o funcionamento do Módulo de comunicação. Essa etapa é recursiva, ou seja, apenas quando ela for completada com sucesso que o Módulo de comunicação irá prosseguir para a próxima etapa. |
3 | Inicialização do(s) ponto(s) | A leitura dos pontos cadastrados é realizada. |
4 | Inicia tarefas de leitura e escrita | A tarefa de leitura de arquivos COMTRADE e de pontos é iniciada de acordo com as configurações do nó. |
5 | Executa ciclicamente as tarefas | As tarefas de leitura e escrita são executadas conforme configuradas. Caso haja perda de conexão, volta para etapa 2. |
Scroll ignore | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||
Nesta página: |