Tags de Comunicação

<< Clique para Mostrar o Sumário >>

 

Tags de Comunicação

1.Agora deve-se implementar um script para tratar os comandos recebidos no Driver IEC104 e realizar o envio dos comandos para o Driver IEC61850. Para isto, selecione o Tag Operate_CSWI1 na aba Design do Driver, selecione a aba Scripts, selecione o evento OnRead e clique em Adicionar Script para criar um script.

2.Utilizando o AppBrowser AppBrowser, busque o método WriteEx do Tag de Comunicação responsável por enviar um comando Operate para a Chave Obj1CSWI1, ou seja, "IEC61850.Obj1CSWI1.CO.Pos.Operate".

3.Retire os parênteses do método WriteEx e omita os parâmetros WriteStatus e WriteSyncMode.

4.Ao final deste procedimento, tem-se o script a seguir.

Sub Operate_CSWI1_OnRead()
  Application.GetObject("IEC61850.Obj1CSWI1.CO.Pos.Operate")_
    .WriteEx Value, Timestamp, Quality
End Sub

 

5.Por último, crie o script a seguir no evento OnRead do Bloco de Comunicação, para tratar a informação recebida e realizar o envio do comando Select ou Operate para a Chave Obj3CSWI2 do Driver IEC61850. Este script deve testar o valor recebido no Elemento Operacao e enviar o valor do Elemento Valor para os Tags Operate ou SelectWriteValue da Chave Obj3CSWI2 no Driver IEC61850.

Sub cmd_3CSWI2_OnRead()
  Valor = Item("Valor").Value
  Operacao = Item("Operacao").Value
  If Operacao = 1 Then
    Application.GetObject("IEC61850.Obj3CSWI2.CO.Pos.SelectWithValue")_
      .WriteEx Valor, Timestamp, Quality
  Else
    Application.GetObject("IEC61850.Obj3CSWI2.CO.Pos.Operate")_
      .WriteEx Valor, Timestamp, Quality
  End If
End Sub

 

6.Dependendo da ordem de ativação dos objetos instanciados na aplicação, é possível que o Driver escravo seja ativado antes do Driver mestre e com isto o primeiro valor de cada variável não é recebido nos Tags do Driver escravo. Por causa disto, é preciso criar um script de reinicialização dos Tags do Driver IEC104. Para isto, crie o script a seguir no evento AfterStart do Driver IEC104 para ativar e desativar todos os Tags existentes.

Sub IEC104_AfterStart()
  For Each Tag In Me
    Tag.Deactivate()
    Tag.Activate()
  Next
End Sub

 

NOTA

No caso de Pastas dentro de um Driver, é necessário apenas desativá-las e reativá-las, não sendo necessário varrer internamente cada uma das Pastas.

 

7.As configurações do gateway estão finalizadas. Para testar a comunicação, o artigo referente à implementação de um gateway no Elipse Knowledgebase contém uma aplicação que se conecta à aplicação desenvolvida neste Tutorial, de forma a validar as configurações necessárias.

Esta página foi útil?