Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »



Descrição

Esta funcionalidade tem por objetivo, a verificação da eficácia do envio de um telecomando, a partir do Action.NET para um IED. Normalmente quando um comando é enviado, tem por finalidade alterar o estado de um equipamento conectado a um IED.
Por exemplo: Executa-se, no Action.NET, a alteração do estado de um tag que está endereçado para enviar uma mensagem de comando, para DESLIGAR um disjuntor e este comando é enviado. Espera-se que um outro tag, que recebe por aquisição de dados o estado do disjuntor, se altere e passe a conter o estado representativo de disjuntor desligado.
A funcionalidade deverá verificar, se dentro de um tempo previsto, houve a alteração de estado do disjuntor, para o estado esperado.
Para que seja feita esta verificação, o sistema Action.NET necessita ser informado, de que tag conterá a sinalização, o estado que é esperado, e o tempo aceitável para a chegada da informação, a partir do envio do comando.

Configuração da funcionalidade


Classe SignallingCommand


A classe está disponível no DefaultNewProject e contém o método descrito a seguir:
Método SendCmd - Este é o único método que necessita ser chamado pelo usuário nas janelas de comando.

public void SendCmd(string outTag,string inTag, int oper, int resultVal,int timeout, uint password)


Objetivo:
Executa a task Send e verifica periodicamente (a cada 1 segunto) o resultado do comando, sinalizando o status do comando para o operador por eventos de alarmes.
Onde:
outTag – Nome do tag de saída. Ex: Tag.TagOff
inTag - Nome do tag em sinalizará o comando. EX: Tag.Disj
oper –Operação a ser feita no tag da saída, com os códigos: 0-Toggle;

    1. Latch one;
    2. Latch zero;
    3. Pulse on;
    4. Pulse Off

resultVal – Estado esperado para o tag de sinalização. timeout – Tempo máximo em seg. para a confirmação da sinalização.
password – Password para comandos, definida na configuração do canal

Utilização dos Protocolos Mestres

Para se utilizar a funcionalidade de Verificação de Sinalização de Comandos por meio dos protocolos, bastará fazer rotinas de script (code behind) para alteração dos tags de saída como tem sido feito até esta versão. Por exemplo toggle do Valor. De fato, não é preciso alterar nada destas rotinas ou Ações já existentes.
Apenas será necessário que se faça a configuração na tabela POINTS de novas entradas específicas para definir a Sinalização de Comandos, para cada um destes protocolos. Estão disponíveis estas configurações para os protocolos DNP3, IEC104 e IEC61850 nos modos Mestres. Para informações sobre estas configurações refira-se ao manual do protocolo apropriado.

Mensagens de Eventos

Como resultado da funcionalidade de Sinalização de Comandos, os próprios métodos geram ou alteram as mensagens de indicação de falha ou sucesso de comando.

Caso de Sucesso

A figura a seguir mostra um caso de sucesso na sinalização de comando.

A mensagem "COMANDO LIGAR" é gerada dentro da Janela de Comando An_Cmd_Disj, ao enviar o comando ao ser pressionado botão de envio de comando. Se a sinalização esperada chegar normalmente dentro do tempo esperado, o tag de sinalização receberá em em seu atributo PrefixAlarmMessage a sigla **SCM{}, Este atributo é colocado na próxima mensagem de alarme gerada pela alteração do estado do disjuntor.

Caso Sem Sucesso

A figura a seguir mostra um caso de NÃO sucesso na sinalização de comando.

Nesta figura são mostradas as mensagens no caso de um comando sem sucesso. Isto é, o estado esperado dentro do tempo previsto, para a tag de sinalização não chegou. De dentro da classe AN_Commands, é gerada a mensagem indicando , o tag de saída, e na parte de mensagem a indicação COMANDO SEM SUCESSO e a tag em que era esperada a sinalização.

Configuração

A sigla **SCM** é utilizada por default,prefixando o alarme de alteração do estado do tag de sinalização do estado da chave. Caso se desejar outra sigla basta colocar o texto preferido no atributo StartValue da tag do tipo texto: zz_system.PrefixForCommandSignal.StartValue.


  • No labels