Luiz Themystokliz Sanctos Mendes

Professor Associado

DELT / UFMG







Ensino

Pesquisa

Curriculum Vitae

Contato

Projeto Dirigido sobre OPC UA
Última atualização: 27/07/2020


INTRODUÇÃO E MOTIVAÇÃO

Este “Projeto dirigido sobre OPC UA” é uma atividade acadêmica não-presencial que combina os aspectos de um “estudo dirigido” com os de um projeto de desenvolvimento de software.

O OPC (OLE[1] for Process Control) surgiu em meados da década de 1990 como uma técnica cliente-servidor com o objetivo de tornar mais eficiente, econômica e segura a comunicação de dados entre sistemas supervisórios e dispositivos remotos de aquisição de dados (como p. ex. Controladores Lógicos Programáveis, ou CLPs), até então baseada em soluções proprietárias na forma de drivers de comunicação. Uma organização sem fins lucrativos (OPC Foundation), formada por um consórcio de empresas da área de automação industrial, foi criada para gerenciar o OPC. Desde então, o OPC tornou-se um padrão “de fato” da indústria e, em 2018, alcançou a marca notável em que 47 milhões de dispositivos de automação utilizam o mesmo[2] em escala global.

O OPC baseia-se na tecnologia COM (Component Object Model) da Microsoft e, como tal, depende do sistema operacional Windows® para executar. Com o passar dos anos, e apesar de sua maciça adoção nas indústrias, verificou-se que o OPC apresentava significativas limitações quanto a aspectos de segurança, integração entre plataformas heterogêneas, modelos de dados industriais, e adequação a tecnologias orientadas a serviços, para citar apenas algumas. Para superar estes problemas, a OPC Foundation lançou em 2008 uma nova versão designada como OPC UA (Unified Architecture) que representa um grande salto tecnológico com relação à versão anterior, desde então referida como “OPC clássico”.

Em anos recentes, o OPC UA tem obtido crescente atenção da indústria graças a características como independência da plataforma, modelo de segurança avançado e robusto, modelo de dados industriais orientado a objetos, redundância, e, em especial, escalabilidade, permitindo-lhe ser implementado tanto em dispositivos embarcados (com funcionalidades reduzidas) quanto em computadores tradicionais.  Empresas de renome nas áreas de automação industrial e de TI (Tecnologia da Informação) como Rockwell Automation, Siemens, Bosch, ABB, SAP, Microsoft, Oracle, Amazon, National Instruments e muitas outras têm empregado o OPC UA nos produtos e tecnologias que oferecem ao mercado.

A disciplina de Sistemas Distribuídos em Automação (SDA) tem oferecido aos alunos dos cursos de Engenharia de Controle e Automação, como parte de seu conteúdo, um conjunto de aulas que explora os fundamentos do “OPC clássico” e aprofunda o conhecimento sobre o mesmo na forma de detalhes práticos da programação de clientes e servidores OPC. Esta escolha tem sido ditada pela predominância que o OPC clássico ainda apresenta nos parques industriais, em escala mundial. A disciplina contempla ainda uma breve apresentação das características do OPC UA. Contudo, devido à sua crescente tendência de utilização nas indústrias, existe um planejamento para aprofundar o conteúdo da disciplina sobre OPC UA já a partir de 2020.

[1] Object Linking and Embedding, nome ancestral do modelo de componentização de software da Microsoft posteriormente rebatizado como Component Object Model (COM)

[2]Craig Resnick & David Clayton, OPC Technology Well-positioned for Further Growth in Tomorrow’s Connected World, 2008. Disponível em https://opcfoundation.org/wp-content/uploads/2018/02/ARC-Report-OPC-Installed-Base-Insights.pdf.



PÚBLICO ALVO

O conhecimento sobre OPC UA é mais facilmente assimilado quando já se dominam as bases do "OPC Clássico". Desta forma, este Projeto Dirigido destina-se aos alunos que já cursaram a disciplina de Sistemas Distribuídos em Automação e desejam obter obter um aprodundamento sobre o OPC UA. Além disto, conhecimentos de programação em ambiente de tempo real serão necessários e, assim, os participantes também deverão ter cursado a disciplina de Automação em Tempo Real.



CARGA HORÁRIA, ATIVIDADES E AVALIAÇÂO

A carga horária prevista é de 30 horas, correspondentes a 2 créditos, e consiste das seguintes atividades:
  • Apresentação dos conceitos básicos do OPC UA;
  • Estudo das especificações do OPC UA publicadas pela OPC Foundation;
  • Introdução à biblioteca de código aberto open62541, que acelera o desenvolvimento de clientes e servidores OPC UA em linguagem C;
  • Elaboração de um cliente OPC em linguagem C empregando a biblioteca open62541;
  • Estudo de artigos técnico-científicos que discutem a importância do OPC UA em iniciativas industriais recentes como Industry 4.0, IIoT (Industrial Internet of Things) e TSN (Time-Sensitive Networks).
A avaliação será baseada em testes de conhecimento sobre o conteúdo das especificações OPC UA e artigos técnico-científicos (50%) e no grau de sucesso do desenvolvimento do cliente OPC (50%). A pontuação mínima para aprovação será de 70%.


RECURSOS NECESSÁRIOS

Os participantes deverão possuir um computador ou notebook com sistema operacional Microsoft Windows® 10, além de conexão com a Internet. Todos os demais recursos necessários ao projeto dirigido serão obtidos remotamente pelos alunos participantes, na forma de conteúdos digitais (especificações, artigos técnico-científicos, vídeos, etc.) e de aplicações de software gratuitas oferecidas por empresas que exploram o mercado de OPC. Para o desenvolvimento do projeto será empregada a IDE (Integrated Development Environment) Visual Studio 2019 Community Edition, disponibilizada gratuitamente pela Microsoft.


INTERAÇÃO ENTRE PROFESSOR E ALUNOS PARTICIPANTES

Toda forma de interação entre o professor e os alunos inscritos será remota. Os meios específicos para tal serão oportunamente divulgados pelo professor.


REQUISITOS PRÉVIOS PARA PARTICIPAÇÃO NO PROJETO DIRIGIDO
  1. Os participantes deverão ter sido previamente aprovados nas disciplinas de "Automação em Tempo Real" e "Sistemas Distribuídos para Automação".
  2. Os participantes deverão dispor de computador ou notebook com Sistema Operacional Microsoft Windows 10 e conexão com a Internet.
  3. Os participantes deverão ter familiaridade com programação na linguagem C e experiência de utilização do ambiente Visual Studio Community Edition. O professor não oferecerá suporte a dúvidas ou problemas com relação a estes aspectos.
  4. Os participantes deverão dispor de ao menos 8 horas semanais para dedicação ao projeto dirigido.

PLANO DE ESTUDO

O plano de estudo abrange 4 tópicos, assim distribuídos:

  1. Bases do OPC UA – 3 semanas. Compreende a leitura e entendimento das especificações do OPC UA, com o apoio de vídeos e outras leituras recomendadas. Apesar do padrão OPC UA ser composto de 17 (dezessete!) especificações publicadas pela OPC Foundation, serão executadas a leitura e compreensão apenas das 4 primeiras: Part 1 - Overview and Concepts; Part 2 - Security Model; Part 3 - Address Space Model e Part 4 - Services.
  2. Biblioteca open62541 – 2 semanas. Consiste no exame da biblioteca, carga da mesma no computador, carga dos programas de apoio, execução dos programas de teste.
  3. Projeto – 3 semanas. Projeto, desenvolvimento e testes de um cliente OPC UA.
  4. OPC UA e tendências atuais – 2 semanas. Leitura dos artigos técnico-científicos recomendados e elaboração de resumos sobre os mesmos.