Falando sobre a comunicação OPC e OPC UA

comunicacao-opc-e-opc-ua

O que é a comunicação OPC?

Existem diversas formas de fazer a integração dos instrumentos no campo com o sistema de controle, também aplicado a diversos outros equipamentos que precisam enviar e receber dados.



Uma das formas de fazer uma integração mais transparente, sem que seja necessário diversos drivers e coisas do tipo, é a utilização da comunicação OPC.

Eu sei ! Forcei demais na tentativa de piada com este cartoon, mas não podia deixar passar (rs).

Hoje, vamos entender um pouco sobre como o OPC Classic funciona, além de mostrar dois exemplos de como a comunicação é aplicada.

Como falamos sobre indústria 4.0 e IoT no último post, é necessário entender o que é OPC UA, quais suas diferenças para o OPC Classic e como a comunicação ajudará na 4ª revolução industrial.

Perdeu o último post?  Clieque no link, O que eu preciso saber sobre a indústria 4.0?

Veja os tópicos discutidos neste artigo:

História do protocolo OPC

Um dos problemas comuns em uma era sem uma padronização, estava relacionado a integração dos equipamentos.

O que acontecia e que ainda hoje existe, é que cada fabricante tinha um drive de comunicação para fazer essa integração.

Outro fator são os protocolos proprietários que também existem ainda hoje em pleno século 21! Mas isso é assunto para outro post aqui no blog 😉

Por volta de 1990, a Microsoft começa a ser mais presente em soluções de automação utilizando o Microsoft’s COM e DCOM.

Foi então que surgiu uma maneira segura e transparente para fazer essa integração de uma forma mais fácil.

Em 1995,  a galera da Fisher-Rosemount (Atualmente, Emerson Automation Solutions), Rockwell Automation, Intellution e Opto 22 formaram um grupo para desenvolver uma solução baseada no Microsoft COM e DCOM.

Adivinha só? Essa solução foi nomeada como OPC (OLE for Process Control), uma abreviação para OLE (Microsoft Object Linking & Embedding) para controle de processos industriais.

Um ano depois em 1996, foi lançado o primeiro produto dessa colaboração, o OPC DA (Data Access) durante a ISA SHOW (Lembra disso?).

No mesmo ano foi criada a OPC FOUNDATION ou Fundação OPC, em Chicago, Estados Unidos.

Abaixo, você tem linha do tempo de criação, resumindo o que está disponível no site da fundação OPC.

  • 1990s – Microsoft no ramo industrial com COM e DCOM
  • 1995 – Criação do OPC
  • 1996 – Lançamento do OPC DA e criação da Fundação OPC
  • 1998 – Organização começa converter soluções atuais para serviços na web.
  • 1999 – Lançamento do OPC AE (Alarms & Events)
  • 2001 – Lançamento do OPC HDA (Historical Data Access), batelada e segurança
  • 2003 – lançamento das especificações OPC Complex Data, Data eXchange e XML-DA. OPC UA é criado.
  • 2004 – Lançamento da especificação do OPC Commands
  • 2006 – OPC UA versão 1.0 fica disponível
  • 2007 – Programa de certificação OPC e laboratórios de testes.
  • 2009 – Lançamento do OPC UA para analise de equipamentos (ADI)
  • 2010 – Primeiros equipamentos com OPC UA são lançados e OPC UA – IEC61131.
  • 2012 – Lançamento da IEC 62541
  • 2013 – Lançamento do OPC UA 1.02 e OPC UA para ISA-95.

Agora que sabemos sobre a história da comunicação OPC, vamos conferir como a comunicação OPC funciona, além de falarmos sobre os pontos citados na linha do tempo.

Funcionamento da comunicação OPC Classic.

Como é de se imaginar, a tecnologia OPC Classic só funciona em sistema Windows, já que foi criada pra isso. No entanto, outros sistemas operacionais ficaram cada vez mais comuns como Linux ou Macs.

Neste cenário, acaba que o OPC Classic deixa a desejar para clientes que queiram ficar fora da plataforma Windows, por mais que ainda seja maioria nos servidores por ai.

Para resolver isso, foi desenvolvido o OPC UA, mas isso vamos falar no próximo tópico. Agora, vamos explicar um pouco mais a fundo como funciona o OPC Classic.

O que é OPC DA (Data Access)?

O OPC DA foi primeiro lançamento do que se tornaria OPC Foundation, lá em 1996.

O OPC Data Access (Acesso de dados) traz um conjunto de especificação entre cliente e servidor, essas especificação estão relacionadas a aquisição de dados de processo em tempo real por equipamentos diversos, focado em manter a comunicação constante.

Podemos colocar na lista desses equipamentos, como IHM, SCADA, CLP entre outros. podemos ressaltar 3 pontos importante da comunicação, que não inclui eventos e históricos. Estes pontos são, valores, qualidade da informação e timestamp.



O que é OPC A&E (Alarm and Events)?

Por volta de 1999, foi lançado o OPC A&E (Alarmes e Eventos) pela OPC Foundation. Do que se trata o OPC A&E, afinal?

Basicamente o OPC A&E funciona da mesma forma que o OPC DA, mas enquanto OPC DA está trabalhando na aquisição de informação real dos dados de processo, o OPC A&E trabalha na aquisição na informação de alarmes e eventos desses equipamentos.

É importante frisar que o servidor OPC A&E não gera nenhum alarme e eventos dos equipamentos que estão comunicando na rede.

A sua função principal é reportar os alarmes e eventos desses equipamentos que estão comunicando no meio comum e que tiveram alarmes configurados anteriormente.

O que é OPC HDA (Historical data access)?

Em 2001, temos o surgimento do OPC HDA (Historical Data Access) ou acesso aos históricos das informações de processo.

Fazendo um paralelo com OPC DA, nós já sabemos que sua comunicação é em tempo real com equipamentos comunicando na rede, mas e se quisermos um histórico ou fazer uma tabela com informações?

O OPC HDA é responsável por arquivar ou armazenar essas informações.

Os OPC Clients, utilizando o OPC HDA podem coletar as informações que estão sendo trocadas utilizando OPC DA e armazená-las utilizando o OPC HDA.

Falando do Protocolo DCOM com problema de firewall

Uma coisa que sempre surge utilizando o OPC Classic está relacionado a configuração do protocolo DCOM.

Como já dito, o OPC foi desenvolvido em cima da comunicação COM e DCOM da Microsoft. O significado do DCOM é Distributed Component Object Model. Esse protocolo foi desenvolvido como uma extensão do protocolo COM.

A função do DCOM é fazer a comunicação entre diferentes objetos e também com sistemas distribuídos.

Pois bem,  existe uma certa dificuldade da configuração do protocolo DCOM e isso gera bastante problemas com firewalls. Este problema e a limitação do sistema operacional Windows gerou a criação do OPC UA.

Exemplo de aplicação do protocolo OPC Classic

Como exemplo da aplicação do protocolo OPC classic, vou  utilizar um projeto que trabalhei para exemplificar a arquitetura de rede.

O projeto consistia na realização de medição de nível em diversos tanques na planta. Por conta da falta de estrutura para essa aplicação, a saída com menor custo benefício foi realizar a medição do medidores de nível do tipo radar de onda livre com comunicação wireless.

Normalmente, neste tipo de aplicação o cliente sempre solicita um teste para ver a tecnologia em operação. Okay, faz total sentido! Ainda mais por se tratar de comunicação sem fio.

A estrutura de comunicação é relativamente simples, onde temos instrumentos no campo comunicando em uma rede mesh e a gateway responsável por gerenciar a rede e converter esse sinal em um saída padrão.

OPC Classic
Exemplo de aplicação OPC Classic

A gateway em questão tem diversos protocolos para integração com sistema de controle.

Quando utilizado a comunicação OPC Classic, o servidor OPC pode ser um servidor HART Server que pode ser feito download gratuito ou servidor próprio.

Para o funcionamento, você precisa instalar o OPC Server em um servidor e dessa forma estabelecer a comunicação com a Gateway usando IP e porta de comunicação.

Depois toda informação será coletada pelo sistema de controle ou SCADA através do OPC client que vai enxergar o OPC Server e disponibilizar todas informações dos instrumentos de medição.

Vamos em frente e falar sobre o OPC UA, sua diferença e benefícios.

O que é OPC UA?

O OPC UA quer dizer Unified Architecture ou Arquitetura Unificada.

Seu lançamento foi em 2008 trazendo novas possibilidades para comunicação OPC, amplificando ainda mais suas implementação.

O protocolo OPC UA é uma das principais formas para garantir uma interoperabilidade entre sistema digitais. Esta solução está totalmente alinhada com conceito de Internet das coisas, indústria 4.0 e outras coisas do tipo.

Você pode ler mais sobre indústria 4.0 em outra postagem, como também sobre internet das coisas industrial.

Um ponto relevante é que o OPC UA é totalmente compatível com OPC Classic, todas funções do OPC Classic são suportadas no OPC UA.

No entanto, enquanto o OPC Classic é apenas utilizado em sistemas Windows, o OPC UA consegue ser bem mais abrangente.

Sistemas como da Apple, Android, Linux, Windows entre outros são suportados pelo OPC UA, bem mais amplo né?

Existem diversas funções equivalentes entre o OPC Classic e OPC UA, tais como: achar o servidor OPC local ou  na rede, dados serem representados em hierarquia, ler e escrever com base em permissões de acesso,  notificações de eventos, entre outros pontos.

Além disso, a solução é compatível com diversos hardwares como tradicionais computadores, controlador lógico programável, micro controladores e servidores baseados na nuvem.

Formato da mensagem e a segurança no OPC UA

É importante entender como que as mensagens são trocadas quando utilizado a comunicação OPC UA, tanto no nível dos dispositivos como além deles.

Existem dois formatos de mensagens que são utilizados que são UA binário e XML. Esses formatos também são relevantes relacionado como é feita a codificação e decodificação das mensagens trocadas.

Basicamente, o UA Binário é mais comum entre o nível de equipamento. Pois este formato de mensagem exige menos poder para esta atividades, além de exigir mais velocidade para alta performance.

O UA binário foi projetado pensando numa codificação e decodificação bem eficiente,  além de terem considerado o tamanho dos dados codificados.

Já o formato XML é utilizado para troca de informações em alto nível. Tais informações podem ser interpretadas por clientes que estão utilizando o protocolo OPC UA como qualquer outro utilizando o formato XML.

Este formato possui poder computacional para serializar e desserializar os dados, sendo bem maior do que o UA Binário.

Quando falamos de segurança, existe um diferença em relação ao OPC UA e ao OPC Classic. No OPC Classic, toda segurança é designada para o protocolo COM e DCOM da microsoft.

A história muda um pouco quando falamos do novo OPC UA, onde ele tem própria esquema de segurança, utilizando PKI (Public Key Infrastructure) e utilizando certificados exclusividade para padrão industrial x.509 e também autenticação de endereço, criptografia, autorização, etc.



Comunicação do protocolo

A comunicação no protocolo OPC UA utilizada dois tipos de protocolos de transportes, estes protocolos são responsáveis por definir como é feita a comunicação entre o cliente e o servidor.

Neste caso estamos falando do OPC TCP como também do SOAP/HTTP(s).

O protocolo OPC TCP é dedicado para  clientes que estão utilizando a comunicação OPC UA. Isto quer dizer, que só eles conseguem ler toda informação que é transmitida.

A comunicação é feita em duas vias entre o cliente e o servidor, todas informação que é transmitida é feita de forma segura e dados são empacotados em uma estrutura binária.

Na segunda possibilidade, as mensagens são envelopadas em um protocolo que é chamado de SOAP e a transmissão é feita utilizando HTTP(s).

Diferentes do OPC TCP, você tem maior possibilidades de interpretação dos dados. Utilizando um browser comum você tem possibilidade de ter acesso as informações. Além disso, o padrão é bem comum na área industrial e amplamente implementado.

Vantagens e utilização em IIoT

O protocolo OPC UA traz diversas vantagens em sua aplicação. Podemos citar, uma interoperabilidade entre diferentes plataformas, segurança e seu formato expansível.

Diversas discussões na internet apontam o protocolo OPC UA como a grande chave para garantir a interoperabilidade dos sistemas IIoT. Além deles, outro padrão sempre em discussão é o MQTT.

De fato, a comunicação com OPC UA é bem mais transparente e ameniza muito a questão de integração entre fabricantes.

Cabe agora, os fabricantes disponibilizarem todas informações no protocolo.

Dessa forma podemos considerar sim o OPC UA como uma forma de integração simples, transparente e que traz todas informações relevantes dos equipamentos em campo.

OPC UA com JavaScript, JSON e simples REST como APIs.

Uma das grandes questões do IIoT é a utilização dos dados coletados em diversas aplicações de análise focadas em fornecer insights para os usuários finais. Seguindo essa tendência, a organização OPC apresentou um exemplo de aplicação do OPC UA com APIs.

A organização mostrou um exemplo de API utilizando WordPress para mostrar os dados e utilizar a interface da API. No entanto, diversas empresas fornecedoras de soluções estão desenvolvendo sua própria API para coleta dessas informações. Elas não precisam utilizar ou seguir o passo a passo da organização, apenas as melhores práticas.

Caso não saiba o que é uma API, não se preocupe pois vamos criar um conteúdo sobre isso aqui no site. No entanto, um ponto interessante para pensar é sobre a junção do TI com OT. Quando falamos de API, a coleta dos dados normalmente utiliza JSON na programação, como também JavaScript.

Cada vez mais vamos ver a junção do TI com automação, e linguagens de programação vão ser mais comuns na indústria do que antes. Fique ligado para aprender mais sobre o assunto.

E você? Já utilizou o protocolo OPC Classic ou OPC UA alguma vez? Deixe comentário com sua experiência ou dúvida.

Até a próxima. 😉

Redes Industriais. Características, Padrões e Aplicações
Redes Industriais. Características, Padrões e Aplicações
Redes sem Fio Para Automação Industrial
Redes sem Fio Para Automação Industrial
Fabrício Andrade
Últimos posts por Fabrício Andrade (exibir todos)
9 Comentários

Fabrício Andrade

Tenho 12 anos de experiência no mundo da Automação industrial, comecei minha carreira na JAT Instrumentação, depois trabalhei na Emerson Automation Solutions e Endress+Hauser. Tive a chance de implementar projetos, ministrar treinamentos e resolver problemas em diversas empresas no Brasil e Latina América. Trabalhei por 3 anos na Alemanha em um e-commerce de automação industrial e hoje sou gerente de marketing digital global na Endress+Hauser Suiça focado em IIoT. Além disso, sou cartunista e baterista nas minhas horas de folga.

9 Comentários

  1. wilian pasternak
    agosto 22, 2018 em 11:40 am

    Olá, tudo bem? Bacana sua explicação. Trabalho com automação também, sou analista de sistemas e possuo uma empresa que cria soluções para outras em Iot e automação industrial. Presto suporte em automação a algumas usinas hidrelétricas como Salto Santiago (Antiga Eletrosul) e Salto Osorio. Desenvolvo equipamentos embarcados também. Li sua explicação sobre o OPC pois estou precisando ler algumas TAGs do SDSC de uma usina e tudo é Siemens com OPC entre servidores. Parabéns pelo trabalho e explicação… Um Abraço!

    • Anônimo
      agosto 23, 2018 em 6:58 am

      Obrigado Wilian pela mensagem, qualquer dúvidas estamos aqui parada ajudar.
      Forte abraço.

  2. Shakespeare Teodoro
    setembro 26, 2018 em 11:05 am

    Bom dia meu nome é Shakespeare.
    Gostei do site e da explicação. Trabalho com automação a 11 anos, na maioria das vezes usando sistema da Rockwell e Honeywell.
    Trabalho na Usina Alta Mogiana S/A e utilizo OPC DA para historiar inúmeras variáveis e para exportar dados
    para um banco de dados Oracle no nosso TI.
    Porem pretendemos passar para o padrão OPC UA no próximo ano.

    • Anônimo
      setembro 27, 2018 em 5:40 am

      Fala Shakespeare,
      Muito legal que está utilizando a tecnologia no dia a dia.
      A aplicação do OPC UA vai ajudar vocês na implementação de novas tecnologias já focadas a indústria 4.0 e IIoT. Todas essas soluções mais recentes trazem OPC UA como uma das melhores maneiras para sua implementação de forma transparente.

      Forte abraço

  3. Hemilio
    março 1, 2019 em 1:43 pm

    Opa,

    Parabéns pelo site e pelos cartoons! (Já tive participação em um)

    Trabalho com automação industrial a dois anos na indústria de cimento. Nosso sistema ainda é OPC DA e infelizmente, não acho que a empresa vai substituir tão cedo por OPC UA.

    Uma pergunta: É possível um cliente UA ler dados de um servidor DA?

    Desde já agradeço a atenção.

    Abraço

  4. Elias Maciel
    junho 29, 2020 em 10:50 pm

    Cara, excelente seu post! Sou aluno de sistemas da informação e quero desenvolver um projeto de uma espécie de middleware para captação de dados industriais, e seu post deu uma clareada legal. Qual sua sugestão ? O protocolo UPC UA seria o mais indicado para implementação de um framework ? E qual sua orientação sobre isso? Abraços

    • Anônimo
      junho 30, 2020 em 11:05 am

      Fala Elias, Legal que curtiu. Hoje o OPC UA com API seria ideal, algo relativamente novo que tende a ser o futuro para captação de dados. Recomendo procurar no youtube video da organização sobre OPC UA API. Fora isso, Alguns serviços de IIoT, como Netilion da Endress+Hauser já fornece um API para coleta de dados dos equipamentos integrados na solução.

  5. Wesley
    fevereiro 19, 2021 em 5:01 am

    Excelente post. Sou responsável pela parte de automação nas plantas de Laminação em uma siderúrgica. Aqui temos OPC DA fazendo a entrega dos dados dos DCS’s para os Supervisórios. Estou pensando em instalar sensores de temperatura wifi nos painéis elétricos e rack’s de comunicação, mas estou com algumas dúvidas. Pretendo desenvolver um sensor de baixo custo que envie esses dados via WiFi para um sistema de monitoramento. Eu conheço bem mqtt, já desenvolvi sistemas embarcados e aplicações mobile que trabalham com esse protocolo. Porém agora conheci o OPC UA. Minha ideia inicial era usar Mqtt amostrar os dados em uma dashboard feita em aplicação mobile ou web. Agora fico na dúvida se seria melhor usar OPC UA e amostrar esses dados no supervisório, e coletá-los no iBA Pda que é um software de aquisição de dados que utilizamos aqui. Queria saber se na sua opinião, existe alguma solução que se enquadraria melhor nesse cenário.

    • Anônimo
      março 5, 2021 em 10:55 am

      Wesley, se vc consegue desenvolver uma solução eu acho genial pelo fato de ser algo próprio. No entanto, existem soluções para esse monitoramento já. Redes como WirelessHART são redes wireless para ambiente industrial, onde cada instrumento pode ser alimentado por bateria e as informações são transmitidas em uma rede MESH para uma Gateway que fornece diversas saídas como OPC, Modbus, EtherNet IP etc.

      Veja esse artigo > https://automacaoecartoons.com/2017/10/13/totalizacao-vazao-wirelesshart/

      No momento, soluções novas estão surgindo que o instrumento comunica diretamente com a núvem e via API e OPC UA é possível fazer essa comunicação.

      Abraços

Resposta para seu comentário

Seu email não será publicado. Os campos obrigatórios estão marcados!*