Entrar

Login para a sua conta

Senha

Artigos

Apresentamos neste artigo o significado desta sigla, sua aplicação e seu funcionamento

O que é OPC?


OPC é a sigla para “OLE for Process Control”, onde OLE significa “Object Linking and Embedding”. Este é o nome dado a uma interface padronizada de comunicação que foi criada na tentativa de minimizar os problemas relacionados à inconsistência dos “drivers” de equipamentos industriais de diferentes fabricantes. A “OPC Foundation” é a organização responsável pelas normas que estabelecem as características disponíveis aos clientes dos equipamentos que possuem o padrão OPC (veja o logo na figura 1).



Os equipamentos dotados de comunicação via OPC (CLPs, câmeras industriais, robôs, etc.) disponibilizam dados internos em uma interface simplificada, onde aplicações externas podem interagir com a leitura e/ou escrita de valores em parâmetros, registradores de programas, resultados, etc. Cada fabricante disponibiliza os dados mais convenientes, de acordo com o equipamento. Normalmente, dados inerentes à segurança do equipamento não estarão mapeados no “driver” e consequentemente serão invisíveis ao usuário.

A intermediação da comunicação entre aplicação cliente e equipamento é realizada por um servidor OPC (OPC Server). Este servidor possui os “drivers” referentes aos equipamentos suportados, e de acordo com o modelo configurado, disponibiliza a região de dados específica. Por exemplo, em uma comunicação com um CLP, é possível ler ou escrever valores de memórias internas, utilizadas no programa do usuário, ou até mesmo ler estado de entradas e saídas. Em câmeras industriais é possível obter o resultado da aplicação de análise de imagens, ou mesmo carregar as imagens, entre outras funcionalidades.


Funcionamento

A tecnologia OPC faz parte do .NET Framework, da Microsoft, e baseia-se na especificação COM (Component Object Model), a mesma tecnologia usada na plataforma ActiveX, que provêm conectividade e interoperabilidade entre diferentes aplicações de forma “plug-and-play”. Estes componentes determinam a infraestrutura das aplicações compartilhadas sob sistemas operacionais da Microsoft, como o Windows, abstraindo as funcionalidades dos sistemas de software e expondo-as de forma interativa, através de propriedades, métodos e eventos dos objetos da aplicação.

Propriedades são características específicas do objeto.

Métodos são funções que executam ações com o objeto.

Eventos são mensagens que o objeto se utiliza para informar o mundo externo sobre acontecimentos do processo.

Implementação

O servidor OPC é dividido em 3 partes (figura 2):
• Server, contendo todos os objetos do grupo;
• Group, camada de organização dos itens OPC,
• Item, elemento principal, o item é o objeto que carrega a informação desejada.




O OPC Item representa uma variável específica de um sistema. Além do valor da variável, ele possui informações sobre a qualidade da informação.

Em uma camada superior, no OPC Group, os itens são organizados e ocorre o controle de atualização dos valores.

Finalmente, na camada mais externa, no OPC Server, são executadas as interfaces entre as aplicações e controles como eventos de sistema e alarmes.

Apesar da existência de todas estas características, geralmente, elas permanecem transparentes ao desenvolvedor, que apenas se preocupa em obter os valores para qual a comunicação foi implementada.

Já podemos elencar as principais vantagens do emprego de uma comunicação OPC. A redução do tempo de desenvolvimento é uma delas. Implementar uma comunicação confiável, entre diferentes equipamentos, certamente não é uma tarefa simples, obrigando a utilização de funções de baixo nível, onde o desenvolvedor precisará entender características cada vez mais próximas do hardware. Em um sistema com diversos equipamentos, as vantagens tornam-se ainda mais visíveis. A topologia é simplificada e o controle do fluxo de informações fica sob responsabilidade apenas dos servidores OPC (figura 3).




Exemplo de Aplicação

Neste artigo, irei demonstrar um exemplo de comunicação entre um PC com uma aplicação em LabVIEW e um CLP Rockwell, com a utilização do RSLinx como servidor OPC.

A única premissa para este exemplo é quanto à versão do RSLinx, pois apenas a partir da versão 2.10 ele possui a função de OPC Server. Nele mostrarei como configurar o RSLinx e como associar um controle no LabVIEW a uma variável do CLP.

Inicialmente, configuramos a comunicação entre o RSLinx e o CLP empregado. Este exemplo considera um Micrologix 1500 comunicando-se através do protocolo DF1 (figura 4).



Acompanhe, as telas mostradas nas figuras 5, 6 e 7. Após a configuração da comunicação entre o RSLinx e o CLP, devemos criar um “tópico OPC”, clicando com o botão direito do mouse sobre o equipamento alvo (figura 8).










Finalize selecionando Done, e clique em Yes quando surgir o “prompt” de atualização do tópico (figura 9).



Neste ponto a configuração já estará pronta, porém há um procedimento que permite a verificação da comunicação, chamado “OPC Test Client”, que pode ser executado em “Start>>Programs>>Rockwell Software>>OPC Tools>>OPC Test Client”. Selecione então “File>>New”.

Selecionamos o servidor desejado, neste caso, o próprio RSLinx como servidor OPC (figura 10).




Para o teste da comunicação, precisamos criar um grupo na tela em branco OPC Test Client. Para isso selecione “Group>>Add Group”. Dê um nome qualquer para o grupo (figura 11 e 12).






Devemos criar um item para monitoração. Selecione “Item>>Add Item” para inserir um novo item (figura 13).



Podemos então verificar a funcionalidade do sistema (figura 14). Lembre-se que o item deve existir no CLP. Inicialmente é interessante executar esta operação com entradas e saídas, pois desta forma podemos alterá-las sem a necessidade de alterações no programa do CLP.




Agora podemos configurar um indicador no LabVIEW para monitorar as variáveis desejadas dentro do CLP. Para isso, crie uma aplicação em branco e insira um indicador numérico (figura 15 e 16).






Acessando o diagrama da aplicação e clicando com o botão direito do mouse sobre o indicador, selecionamos a opção “Properties” (Figura 17).



Na janela das propriedades do indica- dor, selecionamos a aba “Data Binding” (figura 18).




Nesta aba, devemos selecionar o campo “Data Binding Selection”, como DataSocket, figura 19, que nos irá permitir selecionar o servidor OCP. O Tipo de acesso deve ser configurado de acordo com a necessidade (figura 20).





A opção “Read/Write” deve ser usada com cautela, pois dependendo da aplicação, a atualização dos valores deve sofrer controle criterioso.


O caminho do item pode ser configurado digitando-se diretamente em “Path” ou através do campo “Browse...”. Neste caso devemos selecionar o item “DSTP Server” (figura 21). A janela a seguir disponibiliza vários caminhos, incluindo demonstrações (figura 22). Para nosso exemplo, a comunicação será através do “RSLinx OPC Server” (figura 23).








Expandindo a opção “RSLinx OPC Server”, conseguimos visualizar os itens disponíveis para monitoração (figura 24).



Com a seleção do item desejado, o indicador no painel do LabVIEW apresenta uma indicação do estado da comunicação (figura 25).




Podemos, então, envolver o indicador por um laço “While” no diagrama, para que a monitoração torne-se contínua (figura 26). Executando a aplicação, podemos visualizar o valor do item selecionado (figura 27).





Note que o indicador de estado da comunicação (ou do item) acende em verde, indicando sucesso.

Este exemplo utiliza a comunicação via “DataSockets” associada diretamente a indicadores e controles do LabVIEW. Porém, existem ferramentas para desenvolvimento destas interações, em código, gerando vantagens como aumento da velocidade da aplicação através da atualização condicional dos itens OPC, o que não é possível na forma de associação direta, uma vez que os controles e os indicadores são atualizados constantemente. No entanto, a associação direta possui um alto grau de inteligibilidade para os desenvolvedores.

*Originalmente publicado na revista Mecatrônica Atual Nº42