IEC61850 BR PDF
IEC61850 BR PDF
IEC61850 BR PDF
Versão 2.0
Ficha Técnica
Ficha Técnica
Arquivo IEC61850.DLL
Fabricante Norma IEC 61850
Protocolos
IEC 61850 / MMS
Suportados
Plataforma Win32
Versão do Driver V2.00
Dependências IOKit v2.00 - Elipse E3 e Elipse Power (Elipse SCADA não é suportado)
O Driver IEC61850 comunica com relés de proteção usando o protocolo IEC61850. Atualmente o driver já foi testado com os
relés dos fabricantes:
- ABB
- Areva/Alstom
- SEL
- Vamp
- Siemens
- GE
- EFACEC
- Ingeteam
Também foram utilizados em testes de laboratórios os switches dos fabricantes MOXA e RUGGEDCOM.
Informações adicionais sobre o funcionamento deste driver podem ser obtidos nos seguintes documentos:
Configuração
Os parâmetros ‘P’ de configuração do driver não são utilizados. Todas as configurações são feitas no dialog de Configuração
do Driver, que possui as seguintes páginas de configuração:
- IEC 61850 Device Config
© 2015 Enter your company name IEC61850 v<%DRIVER_VERSION%>
- IEC 61850 General
- Reports
- Commands
- Files
Browse SCL File s: Os tags dos relés podem ser criados de forma online (isto é, quando se pode fazer comunicação com os
relés) ou de forma offline, através da importação de arquivos SCL. Por este botão se abre um dialog para escolha dos
arquivos .ICD ou .SCD que serão importados. Após a seleção dos arquivos, para cada descrição de relé encontrada é criado
uma identificação na lista de servidores, e também criado um arquivo com a descrição dos Logical Devices (LD´s) e Logical
Nodes (LN´s) do relé, que podem ser importados para a aplicação pela janela de Tag Browsing.
No caso de não se ter os arquivos SCL, podemos configurar diretamente cada relé, através dos botões Add (Adicionar),
Update (Atualizar) e Delete (Apagar).
Se rv e r: Insere o nome do dispositivo. Será usado apenas para identificar o dispositivo para o driver, mapeando para um
endereço IP.
IP: Informe o endereço IP do equipamento. Opcionalmente é possível informar a porta de conexão caso esta não seja a
padrão do protocolo MMS, usando a sintaxe: X.X.X.X: Porta (ex: 192.168.0.10:102).
Ba ckup IP: Informe o endereço IP Backup do equipamento se houver. Use a mesma sintaxe do IP principal.
PSe l - Presentation S elector: Valor de Seleção para o Dispositivo que será usado pela camada de Apresentação OSI (ISO/
IEC 8823). Deve ser consultado (se fixo) ou informado na configuração do equipamento, geralmente tem o valor 1.
SSe l – S ession S elector: Valor de Seleção para o Dispositivo que será usado pela camada de Sessão OSI (ISO/IEC 8327).
Deve ser consultado (se fixo) ou informado na configuração do equipamento, geralmente tem o valor 1.
TSe l – T ransport S elector: Valor de Seleção para o Dispostivo que será usado pela camada de Transporte OSI (ISO/IEC
8073). Deve ser consultado (se fixo) ou informado na configuração do equipamento, geralmente tem o valor 1.
Re m A P ID – Rem ote A pplication Process Identificator: Identificador utilizado pela camada de Associação OSI (ISO/OSI
8650), em formato ASN.1 (Abstract Syntax Notation 1). Indica a formatação dos dados adotados pela função AARQ
(Association Request), geralmente tem o valor 1,1,999,1,1 (iso.1.999.1.1).
Re m A E Qua l – Rem ote A pplication Entity Qualifier: Indentificador utilizado pela camada de Associação como formatador.
Deve ser consultado (se fixo) ou informado na configuração do equipamento, geralmente tem o valor 12.
Disa ble : Desabilita este dispositivo, sendo que ao iniciar o driver, não haverá comunicação com o mesmo.
NOTA: Para saber o número máximo de IED´s suportados, por favor consulte a seção “Limitações do Driver”,
ao final deste documento.
IEC61850 General
Permite a definição dos demais comportamentos do driver.
Full Log De t a ils: Habilita a inserção no log do driver (habilitado na seção S etup) de informações detalhadas sobre a
notificação de eventos para qualquer tag.
Che ck Na me pla t e Misma t che s: Habilita a verificação dos parâmetros de identificação do IED (nameplate) ao iniciar a
comunicação, de forma a comparar se houve modificação do IED. Em caso positivo, uma atualização do cache
(reconstrução dos arquivos .LD) é realizada.
A pply Loca l Offse t t o Time st a mps: As estampas de tempo adotadas pelo IEC 61850 sempre se referem ao padrão UTC
(Universal Time Coordinate). Através desta opção, se indica que o driver deve aplicar o offset local (TIME ZONE e Horário
de Verão) ao Timestamp enviado pelo equipamento.
No LD Da t a ba se Sca n: Informa que não deve ser processada nenhuma solicitação de Logical Device / Logical Node para
os IED´s. Pode ser usado quando o driver tem a função somente de transferência de arquivos.
A pplica t ion Ca t e gory : Para envio de comandos, o driver usa a informação selecionada neste campo para o
preenchimento da propriedade OrC at (Origin C ategory) que especifica o tipo de aplicação que está enviando o comando
para efeito de segurança/resolução de conflitos de comandos. As opções são: Bay, S tation, Rem ote, M aintenance.
Loca l P Se le ct or: Valor de Seleção para o Driver, será usado pela camada de Apresentação OSI (ISO/IEC 8823).
Loca l S Se le ct or: Valor de Seleção para o Driver, será usado pela camada de Sessão OSI (ISO/IEC 8327).
Loca l T Se le ct or: Valor de Seleção para o Driver, será usado pela camada de Transporte OSI (ISO/IEC 8073).
Loca l A pp ID – Local A pplication Process Identificator: Identificador utilizado pela camada de Associação OSI (ISO/OSI
8650), em formato ASN.1 (Abstract Syntax Notation 1). Indica a formatação dos dados adotados pela função AARQ
(Association Request), geralmente tem o valor 1,1,999,1,1 (iso.1.999.1.1).
LD File Pa t h: Diretório padrão onde o driver armazenará arquivos descritores de cada Logical Device encontrado, com o
objetivo de acelerar o processo de inicialização do driver. Na próxima inicialização, caso seja encontrado um arquivo no
diretório especificado, cujo nome é dado pelo formato SERVER_LDNAME.LD (onde SERVER é o nome do Equipamento e
LDNAME é o nome do Logical Device), então este LD será descrito a partir do arquivo. O driver ofereçe várias formas de
detectar mudanças na base de dados do IED de forma a atualizar estes arquivos.
© 2015 Enter your company name IEC61850 v<%DRIVER_VERSION%>
St a t us Che ck (ms): Intervalo para envio de mensagem de Status, que deve ser respondida pelo IED. Na ausência de
resposta a saúde da conexão pode ser verificada, forçando uma desconexão e reconexão do IED. O valor de Status Check
deve ser maior que o Msg Timeout e menor que o intervalo de desconexão do IOKIT (aba Setup).
Msg Time out (ms): Tempo de espera para resposta de um comando ou mensagem completa, que pode ser formada por
várias mensagens intermediárias. O Timeout de cada byte ou mensagem intermediária é definido na página S etup do IOKIT
Elipse.
Loca l A E Qua l – Local A pplication Entity Qualifier: Indentificador utilizado pela camada de Associação como formatador.
Geralmente tem o valor 12.
RFC 1006 Source TSA P: Este driver utiliza a especificação RFC 1006 como forma de transporte dos pacotes ISO sobre o
TCP. Para isto é necessário informar o T ransport S ervice A ccess Point utilizado pelo Driver, para o estabelecimento da
conexão por este protocolo. O valor default é 1.
Reports
Pre fe r Buffe re d Re port Cont rol Blocks (Use s Unbuffe re d if not a v a ila ble ): O protocolo IEC61850 prevê a utilização
de objetos Re port que tem como objetivo notificar as aplicações cliente, acerca de modificações nos dados. Os dados a
serem reportados são definidos pelo usuário em um Da t a Se t . Cada Report pode ter associado apenas um DataSet, sendo
que é possível que o equipamento possua vários Reports e DataSets.
Os Reports podem ser de dois tipos: Buffered e Unbuffered. Buffered significa que todas as alterações que ocorrerem nos
elementos do DataSet durante uma desconexão serão armazenadas em filas (ou buffers) de forma que a aplicação cliente
receberá a notificação de todas estas alterações (desde que exista espaço em memória suficiente no equipamento e que as
configurações estejam corretas, etc..). Este tipo de Report é usado principalmente para os dados tipo SOE
(Sequenciamento de Eventos). Já os Reports Unbuffered nessa situação apenas armazenam o último valor.
Ambos reports podem ser configurados para enviar eventos espontaneamente, a intervalos cíclicos ou aguardar que a
aplicação cliente pergunte explicitamente (através de um polling ou interrogação geral – GI) os dados daquele report.
- Se duas aplicações cliente (exemplo: duas aplicações Elipse E3) estiverem conectadas em um equipamento, somente uma
delas poderá estar conectada a cada Report Buffered. Isto se deve ao fato de que ao enviar os dados, estes são apagados
do buffer interno do Report.
- Duas ou mais aplicações cliente podem se conectar a um mesmo Report Unbuffered, caso não estejam usando a opção de
uso exclusivo.
Desta forma, esta opção “Prefer Buffered Report Control Blocks” instrui o driver de comunicação para que sempre quando
Caso seja encontrado, então o Report é habilitado pelo driver (caso já não o esteja), passando a receber as notificações de
mudanças do mesmo. Caso negativo, o driver passa a repetir o mesmo processo buscando agora nos Reports Unbuffered
pelo mesmo tag. Caso seja encontrado, o Report é habilitado (caso já não o esteja). Caso novamente a reposta seja
negativa, o tag poderá comunicar em modo “polling” caso a opção “Poll Tags not found in any Report” estiver habilitada.
Caso a opção “Prefer Buffered Report Control Blocks” estiver desabilitada, o driver repetirá o procedimento anterior, porém
buscando diretamente os Reports Unbuffered, descartando a busca pelos Buffered.
Poll Ta gs not Found in a ny Re port : Quando um tag não é encontrado em nenhum Report, esta opção permite que seja
feita uma leitura cíclica (polling) do mesmo de acordo com sua taxa de scan. Vale informar que este método não é o mais
recomendado nem eficiente, estando sujeito à maior lentidão de atualização dos dados e perda de eventos rápidos.
Che ck Re port Re v ision Misma t ch: Instrui o driver a verificar a versão dos reports na inicialização da comunicação. Em
caso de incompatibilidade de versões, uma atualização dos arquivos de cache (.LD) é feita.
Use r De fine d Re port List : Caso o usuário não deseja que o driver faça a busca automática pelos Reports, é possível
definir uma lista de Reports que devem ser habilitados. A seguir é mostrado um exemplo de configuração de Lista definida
pelo usuário. É indicado criar este script de configuração no evento de AfterStart do driver de comunicação.
TagName: UserReportList
Device: S erverNam e
Item: UserDefinedReportList
Sub DRV_61850_AfterStart()
Dim arr(1)
arr(0) = Array("LogicalDeviceName","LLN0$BR$brcbEV101")
arr(1) = Array("LogicalDeviceName","LLN0$BR$brcbEV102")
NOTA: No caso desta opção ser escolhida o driver só completará o processo de inicialização após receber a escrita do tag
acima.
RW Re port List File (.RPT): Indica se a lista de reports definida no item anterior deve ser salva num arquivo, de forma
que a execução do script exemplo acima não seja necessária. A construção do arquivo pode ser feita automaticamente a
partir da escrita do tag ou através da edição direta do arquivo, que deve estar no diretorio padrão dos arquivos de cache
(.LD) e deve ter o nome "IEDName.RPT" (deve ser um arquivo por IED).
Num ber_Of_LogicalDevices
LogicalDeviceN; Num ber_Of_Reports
ReportNam e; ReportOption1:ReportOption1V alue; ReportOptionN:ReportOptionNV alue
Parameter Description
Num ber_Of_LogicalDevices Total Number of Logical Devices which appear at this file
LogicalDeviceN; Num ber_Of_Reports Para cada LogicalDevice, inserir seu nome e quantos reports presentes nele serão
utilizados
© 2015 Enter your company name IEC61850 v<%DRIVER_VERSION%>
Parameter Description
ReportNam e Logo abaixo do nome de cada LD, segue uma lista com os reports utilizados e
campos opcionais
ReportOption;ReportV alue São permitidos os seguintes campos opcionais:
Bit 0 = Reserved
Bit 1 = SequenceNumber*
Bit 2 = ReportTimeStamp*
Bit 3 = ReasonForInclusion*
Bit 4 = DataSetName* **
Bit 5 = DataReference
Bit 6 = BufferOverflow*
Bit 7 = EntryID*
Bit 8 = ConfRevision*
Bit 9 = Segmentation
Obs: os campos marcados com * são usados por padrão quando o OptFlds
não é especificado.
Use r De fine d Da t a se t s: Ao utilizar uma lista pré-definida de reports, é possível informar se os datasets serão declarados
dinamicamente pelo driver IEC 61850 (Cliente). A seguir é mostrado um exemplo de configuração de Datasets dinâmicos. É
indicado criar este script de configuração no evento de AfterStart do driver de comunicação.
Deve ser informado um array de descritores, sendo cada descritor um array com 3 elementos, contendo:
- Nome do Logical Device
- Nome do Dataset (adicionar @ no inicio do nome se volátil)
- Indice: Indice unico para cada Dataset
Exemplo:
Dim arr
arr = Array("LogicalDeviceName","DataSetName", 1 )
Set Cmd = Application.GetObject("DriverName.IEDName.DeclareDSList")
Cmd.WriteEx(arr)
TagName: PopulateDSList
Device: S erverNam e
Item: PopulateC lientDS List
Deve ser informado um array, sendo cada item um array com 2 elementos, contendo:
- Indice do dataset
- Nome do LN/DO/DA no formato "LogicalDevice\LN$DO$DA"
Exemplo:
Dim arr(4)
arr(0) = Array(1,"LDName\GGIO1$ST$stval")
arr(1) = Array(1,"LDName\GGIO2$ST$stval")
arr(2) = Array(1,"LDName\GGIO3$ST$stval")
arr(3) = Array(1,"LDName\GGIO4$ST$stval")
arr(4) = Array(1,"LDName\GGIO5$ST$stval")
Set Cmd = Application.GetObject("DriverName.IEDName.PopulateDSList")
Cmd.WriteEx(arr)
RW Da t a Se t List File (.CDS): Indica se a lista de datasets definida no item anterior deve ser salva num arquivo, de forma
que a execução do script exemplo acima não seja sempre necessária. A construção do arquivo pode ser feita
automaticamente a partir dos exemplos anteriores ou através da edição direta do arquivo, que deve estar no diretorio
padrão dos arquivos de cache (.LD) e deve ter o nome "IEDName.CDS" (deve ser um arquivo por IED).
C DS FILE FORM A T
Num ber_Of_LogicalDevices
LogicalDeviceN; Num ber_Of_DataS ets
DataS etNam e; Num berofM em bers
M em berNam es1...N
C DS FILE EX A M PLE
1
Device;1
M yDataset1;3
Device/LLN0$DC $Nam Plt
Device/LLN0$S T $M od
Device/LPHD1$DC $PhyNam
Che ck BRCB Ent ry ID: Através desta opção o usuário informa que ao habilitar um Buffered Report (BRCB), deverá setar o
parâmetro EntryID que contém um identificador único para cada mensagem de report processada. Esta opção portanto faz
com que ao reinciar uma aplicação, ou mesmo quando houver switch-over de uma aplicação redundante, que o report envie
© 2015 Enter your company name IEC61850 v<%DRIVER_VERSION%>
apenas as mensagens que ainda não foram processadas.
Ao marcar esta opção, é necessário que a aplicação mantenha sincronizados os parâmetros “EntryID” de cada Buffered
report que estiver sendo usado, e além disso realizar escritas na inicialização do driver, informando o último valor recebido.
RW Ent ry ID List File (.EID): Indica se os valores de EntryID expostos no item anterior devem ser salvos num arquivo, de
forma que não seja necessário a execução de scripts para obter ou informar o valor do campo na inicialização. Os arquivos
são salvos no diretorio padrão dos arquivos de cache (.LD) e deve ter o nome "IEDName.EID" (deve ser um arquivo por
IED).
Maiores detalhes podem ser obtidos no item Utilizando A rquivo EID (Entry ID).
Che ck BRCB Time OfEnt ry : Através desta opção o usuário informa ao driver que deverá comparar o horário de cada
mensagem de Buffered Report (BRCB) recebida (no parâmetro TimeOfEntry) com o horário do último evento recebido pela
estação redundante, quando na ocorrência do switch-over (troca de servidores hot e standby). Esta opção portanto faz com
que a nova estação hot passe a descartar eventos repetidos, devido ao uso de Buffered Reports.
Ao marcar esta opção, é necessário que a aplicação mantenha sincronizados os horários de “TimeofEntry” de cada Buffered
report que estiver sendo usado, e além disso realizar escritas na inicialização do driver, informando o horário do último
evento recebido.
Polle d Int e grit y Rpt (s): Caso o valor informado seja diferente de zero (0), então o driver solicitará uma interrogação
geral (GI) para todos os reports que estiverem habilitados, de acordo com o tempo informado. Esta interrogação tem o
propósito de atualizar a base de tags, a fim de verificar se nenhum evento foi perdido. Trata-se de um procedimento de
segurança cujo conceito foi criado para uso em outros protocolos elétricos, que pode ser utilizado neste driver.
A ut o Int e grit y Rpt (s): Caso o valor informado seja diferente de zero (0), o driver ao fazer a habilitação de um report
informará este valor como o intervalo para que uma mensagem unsolicited de interrogação geral (GI) seja gerada pelo
equipamento.
Use Exclusiv e URCB´s: Define se ao habilitar um report unbuffered (URCB) se será colocado em modo exclusivo
(Propriedade Reserved=1) ou não (Reserved=0). Um URCB habilitado em modo exclusivo não pode ser utilizado por outros
clientes.
Use Qua lit y Cha nge Trigge r: Indica a opção de disparo por mudança de qualidade que deve ser usada por padrão
(quando não se está usando a lista fixa de reports e/ou a opção TrgOps não foi informada).
Commands
Use Single Ta g Comma nd A lia s: Instrui o driver a criar durante o processo de Tag Browsing (veja abaixo) um tag único
para o envio dos comandos. Se esta opção estiver desmarcada, será utilizado um bloco com 5 elementos (Veja Seção T ags
de C om unicação).
NOTA: Caso se esteja utilizando o Elipse E3 como OPC Server, o tag de comando poderá ter a leitura habilitada
(AllowRead=TRUE). Isto fará com que o tag receba o valor inicial da propriedade CtlVal do objeto de comando
referenciado, para que o OPC Client conheça o tipo de dado previamente. Após o envio de um comando, o driver retornará
uma leitura automática para o mesmo tag, com o valor escrito caso a operação tenha tido sucesso. Desta forma, o
parâmetro WriteFeedBackMode do driver, que indica como o tag receberá a confirmação da operação mantendo o valor
escrito, poderá ser colocado em 0 – WaitNextRead, preferencialmente.
Use Cmd Ta g N1 a s Che ck Condit ion: No caso de utilizar um tag simples para envio dos comandos, esta opção informa
se o parâmetro N1 do tag será usado para indicar o parâmetro de verificação de segurança do comando. N1, neste caso,
deve ser um numero entre 0 e 3, como resultado de um OR entre dois bits:
Bit 0: INTERLOCKING
Bit 1: SYNCHROCHECK
Files
Sa v e Comt ra de File s: Indica se o driver deve fazer a busca por arquivos COMTRADE (perturbações), salvando-os no
diretório indicado em C om trade Path.
De le t e File s A ft e r Uploa d: Instrui o driver a apagar o arquivo do equipamento após a conclusão com sucesso da
transferência.
Browse Root Folde r Only : Alguns relés inserem os arquivos Comtrade dentro de uma pasta “\COMTRADE” a partir da
raiz, e outros relés colocam os arquivos na própria raiz indicando
como parte do nome do arquivo essa pasta. Ex: “\COMTRADE\Arquivo.cfg”. Marque esta opção caso o equipamento tenha
este último comportamento.
Comt ra de Dire ct ory Che ck Int e rv a l: Intervalo em segundos, que o driver solicitará a lista dos arquivos do equipamento.
O driver compara a data do último arquivo transferido com os arquivos da lista, sendo que o(s) arquivo(s) mais recentes
serão transferidos.
Comt ra de Uploa d Int e rv a l (s): No caso de mais de um arquivo precisar ser transferido, o driver aguardará o intervalo
definido nesta propriedade para realizar cada transferência, a fim de separar uma janela de tempo específica para esta
atividade. Entretanto, a recepção de eventos e envio de comandos não são interrompidos enquanto um arquivo estiver
© 2015 Enter your company name IEC61850 v<%DRIVER_VERSION%>
sendo transferido.
Fixed Comtrade Path on Device: Indica que o driver deve ignorar a busca pela pasta COMTRADE dentro do dispositivo,
assumindo um diretorio fixo informado.
Tag Browsing
Ao clicar no ícone “Tag Browsing” no Elipse E3, será exibida a janela de Tag Browsing que permite listar e arrastar para o
driver os tags que forem identficados no equipamento.
IOKIT: Contém tags padrão do IOKIT Elipse, permitindo ler/escrever parâmetros de conexão em geral, status, etc...
ONLINE: Exibe os Servidores declarados na página “Device Config”. Ao clicar sobre cada um deles, o driver tentará a
comunicação com o equipamento, criando logo abaixo uma nova pasta para cada Logical Device (LD) encontrado no
equipamento. Ao clicar sobre o LD, serão buscados todos os tags pertencentes ao mesmo.
OFFLINE: Exibe da mesma forma os servidores e LDs, porém ao clicar sobre cada LD são exibidos os tags a partir dos
arquivos .LD que foram criados no diretório de importação, seja a partir de uma importação de arquivos SCL ou pela
execução do aplicativo.
Para utilizar os tags na aplicação basta arrastar o(s) tag(s) ou pasta(s) da divisão à direita (Tags disponibilizados pelo
driver) para a esquerda (Tags do Projeto Corrente).
NOTA: O Driver insere em cada Logical Device, uma pasta denominada “DataSets” onde podem ser encontrados todos os
DataSets daquele Logical Device que estiverem sendo referenciados por algum report.
Logica l De v ice s (LD): São os dispositivos lógicos que estão mapeados, correspondem à um dispositivo real (ex: um Bay)
que está mapeado dentro do relé. Um Logical Device está sempre mapeado em um único IED (Intelligent Electronic Device)
– LogicalDevices não estão distribuídos.
Logica l Node s (LN) : São as funções do dispositivo real que estão mapeados em um Logical Device. Por exemplo, a
© 2015 Enter your company name IEC61850 v<%DRIVER_VERSION%>
representação virtual de uma chave (Circuit Breaker) em um Bay é um Logical Node, que possui o nome de classe padrão
definido como XCBR. Geralmente um LogicalDevice é formado por vários LogicalNodes.
Da t a Obje ct s (DO) e Da t a A t t ribut e s (DA ): As informações dentro de um LogicalNode estão organizadas em conjuntos
de dados específicos (Data Objects) e as várias propriedades dentro de cada conjunto são os DataAttributes. O conjunto de
todos os DataAttributes de um Data são chamados de CDC (Common Data Class).
Funct iona l Const ra int (FC): São os serviços específicos que podem ser utilizados em cada DataAttribute. Os FCs podem
ainda fazer parte do “caminho” das variáveis, a depender da configuração do equipamento.
O formato utilizado por este driver, para todos os tags que representam DOs/DAs, é:
Exemplo:
Device: ArevaP139:UPC12AL1Control
Item: XCBR1$ST$Mod$stVal
Referência de Tags
Tags de Comunicação
Os parâmetros N dos tags não são utilizados. Tags são endereçados apenas com os parâmetros Device e Item.
0 = Terminated OK
Tags Internos
Device Item Ope Significado
r
S erverNam e S erverS tatus R Retorna o status interno do driver.
0 = Inicializando
1 = Lendo Arquivos .LD
2 = Obtendo o Diretório (GetServerDirectory)
3 = Processando um único LD (Tag Browsing)
4 = Obtendo diretório de arquivos
5 = Processando LDs
6 = Concluindo
7 = Finalizado OK
0 = Em espera
1 = Lendo Arquivo .LD
2 = Obtendo o diretório do LD
3 = Obtendo o diretório do LN
4 = Obtendo a definição de dados
5 = Criando cache de tags
6 = Descobrindo Reports
7 = Obtendo DataSets
8 = Obtendo conteúdo de DataSets
9 = Obtendo Nameplates
10 = Obtendo versões de Reports
11 = Checando versões
12 = Programando Reports
13 = Operação (Runtime)
14 = Concluindo
15 = Concluindo com Erro
S erverNam e C om tradeT ransferS tatus R Retorna o Status da atividade de transferencia de
arquivos via Comtrade:
0 = Não conectado
1 = Conectado
4 = Aguardando para Listar os Arquivos
5 = Obtendo lista de arquivos
6 = Arquivos Transferidos (Sincronizado)
7 = Aguardando para transferir arquivo
8 = Transferindo arquivo
101 = Lista de arquivos vazia no relé
102 = Erros de formatação no comando de leitura
103 = Erro ao Salvar o arquivo comtrade
104 = Erro de Transferência de arquivo
S erverNam e LastC om tradeFileNam e R Informa o nome do ultimo arquivo Comtrade
transferido.
S erverNam e S erverRebuild W Remove os arquivos de Cache (.LD) e reinicia a
comunicação com o dispositivo. O parâmetro device
pode ser igual ao nome do IED acompanhado ou não de
um Logical Device.
S erverNam e UserDefinedReportList W Permite a definição da lista de reports do usuário.
S erverNam e LastC om tradeFileT im e R/W Indica a data do último arquivo Comtrade coletado. Ao
iniciar sua aplicação, para evitar que arquivos já
coletados sejam trazidos novamente, este tag deverá
receber uma escrita com a data do último arquivo
existente. Recomenda-se portanto que a sua aplicação
armazene o valor deste tag ao sair e o escreva este
valor ao iniciar.
S erverNam e C om tradeInfo R Retorna um bloco de 3 elementos com as seguintes
propriedades Comtrade:
Elemento0 = C om tradeT ransferS tatus
Elemento1 = LastC om tradeFileT im e
Elemento2 = LastC om tradeFileNam e
S erverNam e BRC BA ctualList R Retorna um bloco de 4 elementos com a lista de
Buffered Reports atualmente em uso:
Elemento1: LDName
Elemento2: ReportName
Di m CommArr(1)
CommArr(0) = Arra y("IEC61850.Devi ce[0].Di s a bl e",0)
CommArr(1) = Arra y("IEC61850.Devi ce[0].TSel ",1)
Wri te -1,0,0,3,CommArr
Item("Ini Bui l d").Wri teEx(1)
S erverNam e IPS elect R Informa qual IP está em operação, no caso de uso de IP
principal e backup.
S erverNam e IOKitEvent R Retorna eventos do IOKIT para o IED especificado,
conforme tag Read Driver Events disponível no manual
do IOKIT (ex: conexão, desconexão, etc...)
S erverNam e GetFileDirectory R Informa uma lista de arquivos existentes no IED, após
uma solicitação de GetFileDirectory (escrita). Se não
houver uma solicitação previa ou não há dados
disponíveis, será retornada uma lista vazia.
S erverNam e FinishedW riteT im eOfEntry W Veja seção "Utilizando TimeOfEntry"
S erverNam e FinishedW riteEntryID W Veja seção "Utilizando EntryID"
S erverNam e IPS w itch W Solicita a troca de IP principal para backup ou vice-
versa.
S erverNam e DeclareC lientDS List W Declara a lista de datasets definidos no cliente. Veja o
item Reports.
S erverNam e PopulateC lientDS List W Popula os membros de cada dataset definido no item
anterior. Veja o item Reports para mais informações.
S erverNam e GetFileDirectory W Solicita uma lista de arquivos no IED, baseado em um
diretório informado no valor no tag, ou no diretorio raiz
se nada for informado.
S erverNam e GetFile Solicita a transferencia de um arquivo com o nome
informado no tag. O arquivo será salvo com o mesmo
nome no diretorio padrão dos arquivos comtrade.
S erverNam e DeleteFile Solicita a exclusão de um arquivo com o nome
informado no tag, diretamente no IED.
S erverNam e C om pareLogicalDeviceDirector Compara o conteúdo de um Logical Device obtido a
y partir do arquivo de cache (.LD) com o conteúdo
corrente no IED. Em caso de discordância, um novo
arquivo cache é gerado.
Redundância
Existem duas formas do driver evitar o recebimento de eventos duplicados na inicialização:
Através da verificação do ultimo TimeOfEntry
Através da programação do ultimo EntryID na habilitação do Report.
Utilizando TimeOfEntry
Ao marcar a opção Che ck BRCB Time OfEnt ry é necessário que a aplicação siga os seguintes passos para o correto
funcionamento:
1) Criar na aplicação (ou importar via TagBrowsing) os tags “TimeOfEntry” que estão disponíveis em cada Buffered
Report e que estiverem sendo usados pelo Driver.
2) Caso voce não saiba se um Buffered Report está sendo usado ou não, não há problemas em criar esses tags de
todos os Buffered Reports. Porém através de uma leitura de um bloco especial, é possível obter essa lista:
BlockName: GetBRCBList
Numero de Elementos: 4
Device: S erverNam e
Item: BRC BA ctualList
A leitura deste bloco, a qualquer momento, trará uma lista com todos os Buffered Reports que estiverem em uso
pelo driver, sendo que o primeiro elemento conterá o nome do Logical Device (LD), o segundo elemento o nome do
Report, o terceiro o ultimo valor de TimeOfEntry e o quarto o ultimo valor de EntryID.
Também é possível obter a lista dos Unbuffered Reports atualmente em uso, apenas colocando no campo Item de
um Bloco com 2 elementos o texto URC BA ctualList.
3) Criar na aplicação um tag interno para cada TimeOfEntry que será necessário sincronizar. O Tag Interno deve ter a
opção Retentive marcada como TRUE. (OBS: A partir da versão 3.2 do Elipse E3 também é possível fazer o mesmo
através de propriedades de XObjects, que podem ser habilitadas com a opção de retentividade diretamente).
4) Cada Tag Interno (ou propriedade de XObject) deve receber as mudanças de valor de seu TimeOfEntry
correspondente, via script ou via associações (links).
5) Na inicialização da aplicação, deve haver um script que escreva o valor de cada TimeOfEntry de acordo com o valor
de seu tag interno respectivo, que deverá estar atualizado de acordo com o que foi enviado pela estação
redundante. Ao final do processo, um tag especial deve ser escrito indicando que o processo de escrita das
propriedades TimeOfEntry chegou ao final, e que o driver pode prosseguir com a inicialização. Este tag deve ser
configurado da seguinte forma:
TagName: FinishedWriteTimeOfEntry
Device: ServerName
Utilizando EntryID
Da mesma forma, ao marcar a opção Che ck BRCB Ent ry ID é necessário que a aplicação siga os seguintes passos para o
correto funcionamento:
1) Criar na aplicação (ou importar via TagBrowsing) os tags “EntryID” que estão disponíveis em cada Buffered Report
e que estiverem sendo usados pelo Driver. O valor deste tag é do tipo Texto e representa uma seqüência de bytes.
2) Caso voce não saiba se um Buffered Report está sendo usado ou não, você poderá obter a lista de BRCBs conforme
exposto no item 2 anterior.
3) Criar na aplicação um tag interno para cada EntryID que será necessário sincronizar. O Tag Interno deve ter a
opção Retentive marcada como TRUE. (OBS: A partir da versão 3.2 do Elipse E3 também é possível fazer o mesmo
através de propriedades de XObjects, que podem ser habilitadas com a opção de retentividade diretamente).
4) Cada Tag Interno (ou propriedade de XObject) deve receber as mudanças de valor de seu EntryID correspondente,
via script ou via associações (links).
5) Na inicialização da aplicação, deve haver um script que escreva o valor de cada EntryID de acordo com o valor de
seu tag interno respectivo, que deverá estar atualizado de acordo com o que foi enviado pela estação redundante.
Ao final do processo, um tag especial deve ser escrito indicando que o processo de escrita das propriedades
EntryID chegou ao final, e que o driver pode prosseguir com a inicialização. Este tag deve ser configurado da
seguinte forma:
TagName: FinishedWriteEntryID
Device: ServerName
Item: FinishedWriteEntryID
Na inicialização do driver, o sistema esperará pela disponibilidade deste arquivo para prosseguir, a fim de obter os valores
de EntryID que foram processados até o momento que a operação foi interrompida.
Num sistema redundante, a aplicação do usuário deve ser reponsável por sincronizar o arquivo entre as maquinas principal
e standby.
Este exemplo (que deve ser executado ciclicamente) copia os arquivos EntryID entre servidores redundantes. Como o driver
é carregado pelo módulo IOServer.EXE que roda sob a conta System, o código utiliza o programa psExec.exe (Sysinternals)
para permitir privilégios (o que é chamado de elevation no Windows) para chamar um arquivo .BAT especificando um
usuário e password.
End Sub
File toServer1.bat
copy C:\MyAppDir\EntryId\EID, \\Server1\EntryID
File toServer2.bat
copy C:\MyAppDir\EntryId\EID, \\Server2\EntryID
Configuração Dinâmica
Este driver permite que alguns parâmetros de configuração sejam informados em runtime através de configuração por
scripts, usando o comando de escrita de parâmetros do IOKIT. São Eles:
Limitações do Driver
O driver IEC61850 é fornecido em dois tipos de licenças pela Elipse Software:
IEC61850.dll: Permite a comunicação com até 25 relés (IED´s), de forma a garantir o desempenho da comunicação. Para
mais relés, utilize uma nova instância de driver;
Power_IEC61850.dll: Permite a comunicação com apenas 1 relé (IED), utilizando uma licença padrão que permite a
substituição por outro driver de sistema elétrico. Para a lista completa de drivers que compartilham esta licença, consulte a
Elipse Software.
Histórico de Versões
Versão Data Autor Comentários
V 2.00 20/Mar/2013 M. Salvador - Migração para IOKIT 2.0
- Criação de Arquivos de Entry ID (EID)
- Suporte a datasets dinamicos
V 1.01 17/Mar/2012 M. Salvador Inclui as seguintes mudanças desde o Build 1 da Versao
Filial PR Filial MG
Av. Sete de Setembro, 4698/1705 Rua Antônio de Albuquerque, 156
80240-000 Curitiba - PR 7º andar Sala 705
Fone: (+55 41) 4062-5824 30112-010 Belo Horizonte - MG
E-mail: [email protected] Fone: (+55 31) 4062-5824
E-mail: [email protected]
Filial RJ USA
Praia de Botafogo, 300/525 2501 Blue Ridge Road, Suite 250
22250-044 Rio de Janeiro - RJ Raleigh - NC - 27607 USA
Fone: (+55 21) 2158-1015 Fone: (+1 252) 995-6885
Fax: (+55 21) 2158-1099 Fax: (+1 252) 995-5686
E-mail: [email protected] E-mail: [email protected]
Taiwan
9F., No.12, Beiping 2nd St., Sanmin Dist.
807 Kaohsiung City - Taiwan
Fone: (+886 7) 323-8468
Fax: (+886 7) 323-9656
E-mail: [email protected]
www.elipse.com.br
kb.elipse.com.br
[email protected]