Introdução
Muitas vezes, no desenvolvimento de aplicações com softwares SCADA, existe a necessidade de realizar testes onde os tags de comunicação devem ser forçados ou simulados. Este artigo mostra uma maneira prática de desenvolver um aplicativo com o E3 que permite simular um CLP ou qualquer outro equipamento que se conecta ao software de controle e supervisão. Para isso, utilizaremos um servidor OPC rodando em um segundo computador ligado em rede ao principal.
Configuração do cliente OPC
Na aplicação principal, chamaremos de Driver Real o driver criado para comunicação com os dispositivos de campo. Este driver pode ser Modbus, Profibus ou qualquer outro, dependendo do protocolo adotado pelo equipamento. O Driver de Simulação será um driver OPC, com estrutura e nomes de seus elementos idênticos ao Driver Real.
Percebe-se que não é possível utilizar ao mesmo tempo na mesma aplicação os dois drivers, real e de simulação, pois eles possuem o mesmo caminho e nome. Como não queremos utilizá-los ao mesmo tempo, é possível optar por duas soluções. A primeira seria acrescentar uma extensão ao nome de um dos drivers, deixando o nome original (que está associado na aplicação) apenas no driver que se deseja utilizar. A segunda opção seria criar um projeto contendo apenas o Driver Real e um outro contendo apenas o Driver de Simulação, bastando remover do domínio atual o projeto que não será utilizado. No nosso exemplo, utilizaremos a segunda opção. Nas duas maneiras é possível trocar de Driver sem afetar as associações com tags de comunicação criadas na aplicação.
Ao adicionar o driver de comunicação OPC ao projeto, deve-se, primeiramente, criar uma conexão com o servidor OPC, que ativa automaticamente ao rodar o domínio da aplicação simCLP, localizado em um outro computador da rede. Para isso, deve-se localizar o servidor OPC (Elipse.OPCSvr.1) na rede e ativar a comunicação.
Feito isso, clique em “Importar tags”, na pasta do driver OPC. As tags criadas no Servidor OPC podem ser arrastadas para o Driver OPC. Normalmente é desejável importar apenas a propriedade Value dos tags do servidor. Após importar os tags, renomeie todos e acerte a estrutura de modo que o driver OPC fique idêntico ao Driver Real. Assim, não é necessário alterar as associações já criadas.
A associação dos tags OPC com o servidor também pode ser alterada pela propriedade ItemID dos tags OPC.
Figura 1 – Driver Real e Driver de Simulação
OBS.: Se o sistema operacional instalado for o Windows XP com Service Pack 2, podem ocorrem problemas na conexão com o servidor devido a restrições de segurança. O problema pode ser contornado modificando algumas configurações do sistema. Para mais informações, leia o artigo "Configurando o Win XP SP2 para aplicações Elipse" disponível no site da Elipse.
Configuração do servidor OPC – simCLP
O simCLP funciona como um servidor OPC, que é ativado automaticamente ao rodar a aplicação, disponibilizando todas as suas tags para um cliente OPC (aplicação principal). A aplicação disponibiliza quatro módulos I/O, Entradas Digitais, Saídas Digitais, Entradas Analógicas e Saídas Analógicas. Para cada ponto I/O existe uma etiqueta para identificação da entrada ou saída. As etiquetas, assim como todas as configurações, são salvas quando for alterada. Sendo assim, ao abrir a aplicação, o aplicativo carregará a última configuração.
Figura 2 - Tela Principal do simCLP com os módulos I/O
Entradas digitais
As entradas digitais podem ser usadas de duas maneiras diferentes. A primeira, bit a bit, onde cada entrada digital corresponde a um tag de comunicação. A segunda maneira, Word, várias entradas digitais podem ser associadas para formar uma palavra representando, em decimal, os estados das entradas digitais. No segundo caso, é possível transmitir até 16 estados de entradas digitais utilizando apenas um tag de comunicação. A configuração dos dois modos é detalhada abaixo.
Figura 3 - Entrada digital
Bit a bit
Não é necessário configurar para utilizar entradas digitais no modo bit a bit. Basta importar a propriedade Value do tag DI1, DI2, ..., DI16, localizados na pasta EntradasDigitais, para a aplicação principal.
Tipo da variável: Boolean.
Word
A configuração do modo Word pode ser acessada pelo botão Words , no canto superior do módulo de entradas digitais, na tela principal. Existem cinco Words disponíveis para configuração. Deve-se habilitar os bits da Word e associá-los às entradas digitais. Importa a propriedade Value dos tags DI1, DI2, ... , DI5, na pasta EntradasDigitais_Word. Na aplicação principal, habilite a propriedade UseBitFields dos tags OPC’s que estiverem associados aos tags Word do simCLP, com isso a palavra será quebrada em bits.
Figura 4 – Configuração de entradas digitais no modo Word
Figura 5 – Tag a ser importada no modo Word para a configuração mostrada na figura anterior
Saídas Digitais
Analogamente às entradas digitais, as saídas digitais também podem ser utilizadas em dois modos, bit a bit ou Word, conforme a descrição abaixo.
Figura 6 – Saída digital
Bit a bit
Não é necessário configurar para utilizar entradas digitais no modo bit a bit. Basta importar a propriedade Value do tag DI1, DI2, ... , DI16, localizados na pasta EntradasDigitais, para a aplicação principal.
Tipo da variável: Boolean.
Word
Neste modo é possível receber uma palavra, que representa um conjunto de bits em formato decimal, e quebrá-la em bits. Para isso, clique em . Abrirá uma janela para configuração desse ponto de saída. Habilite o uso do modo Word, escolha o tag que se deseja quebrar em bits, e selecione qual bit dessa palavra será associado à saída digital atual.
Figura 7 – Configuração de uma saída digital no modo Word
Figura 8 – Tag a ser importada no modo Word para a configuração mostrada na figura anterior
Entradas Analógicas
As variáveis de entrada analógica são acessadas importando as variáveis AI1, AI2, ..., AI8, da pasta EntradasAnalogicas. A única configuração a ser feita, são os limites superior e inferior, que definiram a faixa de variação da variável analógica. Essas configurações são acessadas pelos botões e
. O valor analógico só pode ser alterado pela barra de rolagem correspondente a cada AI (Analog Input).
Figura 9 – Entrada analógica
Saídas Analógicas
As variáveis de saída analógica são acessadas importando as variáveis AO1, AO2, ... , AO16, da pasta SaídasAnalogicas. Não existem configurações para as saídas analógicas.
Figura 10 – Saída analógica
Conclusão
Esse exemplo representa uma forma simples de simular um equipamento se comunicando com o E3. No entanto, a aplicação pode ser personalizada de acordo com a vontade do usuário, seguindo o mesmo modelo usado nesse exemplo. No simCLP, optamos por utilizar o driver OPC por ser uma forma simples de comunicação entre duas aplicações, mas existem outras opções de drivers, como o Modbus Mestre/Escravo.