12
APLICABILIDADE FOSS: PROTOCOLO OPC, JAVA E SCILAB NA EDUCAÇÃO EM SISTEMAS DE CONTROLES INDUSTRIAS Dionathan Barroso [email protected] Jéssica Quintino [email protected] Alexander Silva [email protected] Accacio Ferreira dos Santos Neto [email protected] Francisco Gomes [email protected] Universidade Federal de Juiz de Fora, Departamento de Energia Campus universitário, Bairro Martelos CEP: 36036-330 Juiz de Fora - MG Resumo: O objetivo deste trabalho é apresentar as ferramentas "Free and Open Source Software - FOSS" SCILAB e linguagem de programação JAVA, para aplicação na educação de Controle de Processos Industriais e Automação, viabilizadas através do protocolo de comunicação digital aberto "OLE for Process Control - OPC". O trabalho procura evidenciar suas características e possíveis posturas para utilização desse protocolo, verificando sua aplicabilidade e eficácia. De forma sucinta, o trabalho apresenta uma introdução e, em sequência, um tópico sobre o protocolo OPC, descrevendo definições e características. Como tópicos subseqüentes apresenta-se uma metodologia para educação e treinamento em controle de processos industriais, baseada em três módulos laboratoriais, e os resultados de simulações do controle de nível de um reservatório, por meio do controlador PID, direcionados aos objetivos estabelecidos. Como último tópico serão mostradas a configurações necessárias para se trabalhar com protocolo OPC na linguagem JAVA, e as conclusões sobre o desenvolvimento efetuado, bem como para os trabalhos futuros. Palavras-chave: Educação em Controle, Controlador Lógico Programável - CLP, Scilab, JAVA, Protocolo OPC. 1. INTRODUÇÃO O desenvolvimento da tecnologia e seu constante aprimoramento permitem que, atualmente, tenha-se uma indústria diversificada que propicia a criação de novos dispositivos para as mais variadas aplicações. Neste cenário, as indústrias com enfoque em automação desenvolvem estratégias para a manipulação de dados obtidos através de seus dispositivos utilizando protocolos de comunicação entre os distintos equipamentos e softwares industriais. Como conseqüência deste fato, constata-se o surgimento de distintos protocolos de comunicação, situação essa que culmina na dificuldade da comunicação entre dispositivos de fabricantes diferentes, como sensores, motores e computadores.

OPC, JAVA E SCILAB

Embed Size (px)

DESCRIPTION

APLICABILIDADE FOSS: PROTOCOLO OPC, JAVA E SCILAB NA EDUCAÇÃO EM SISTEMAS DE CONTROLES INDUSTRIAS

Citation preview

  • APLICABILIDADE FOSS: PROTOCOLO OPC, JAVA E

    SCILAB NA EDUCAO EM SISTEMAS DE CONTROLES

    INDUSTRIAS

    Dionathan Barroso [email protected] Jssica Quintino [email protected] Alexander Silva [email protected] Accacio Ferreira dos Santos Neto [email protected] Francisco Gomes [email protected] Universidade Federal de Juiz de Fora, Departamento de Energia

    Campus universitrio, Bairro Martelos

    CEP: 36036-330 Juiz de Fora - MG

    Resumo: O objetivo deste trabalho apresentar as ferramentas "Free and Open Source

    Software - FOSS" SCILAB e linguagem de programao JAVA, para aplicao na

    educao de Controle de Processos Industriais e Automao, viabilizadas atravs do

    protocolo de comunicao digital aberto "OLE for Process Control - OPC". O trabalho

    procura evidenciar suas caractersticas e possveis posturas para utilizao desse

    protocolo, verificando sua aplicabilidade e eficcia. De forma sucinta, o trabalho

    apresenta uma introduo e, em sequncia, um tpico sobre o protocolo OPC,

    descrevendo definies e caractersticas. Como tpicos subseqentes apresenta-se uma

    metodologia para educao e treinamento em controle de processos industriais,

    baseada em trs mdulos laboratoriais, e os resultados de simulaes do controle de

    nvel de um reservatrio, por meio do controlador PID, direcionados aos objetivos

    estabelecidos. Como ltimo tpico sero mostradas a configuraes necessrias para

    se trabalhar com protocolo OPC na linguagem JAVA, e as concluses sobre o

    desenvolvimento efetuado, bem como para os trabalhos futuros.

    Palavras-chave: Educao em Controle, Controlador Lgico Programvel - CLP,

    Scilab, JAVA, Protocolo OPC.

    1. INTRODUO

    O desenvolvimento da tecnologia e seu constante aprimoramento permitem que,

    atualmente, tenha-se uma indstria diversificada que propicia a criao de novos

    dispositivos para as mais variadas aplicaes. Neste cenrio, as indstrias com enfoque

    em automao desenvolvem estratgias para a manipulao de dados obtidos atravs de

    seus dispositivos utilizando protocolos de comunicao entre os distintos equipamentos

    e softwares industriais.

    Como conseqncia deste fato, constata-se o surgimento de distintos protocolos de

    comunicao, situao essa que culmina na dificuldade da comunicao entre

    dispositivos de fabricantes diferentes, como sensores, motores e computadores.

  • Percebe-se, ainda, o aumento da complexidade dos sistemas devido s necessrias

    conexes entre os elementos do mesmo sistema, situao essa onde a comunicao

    fator importantssimo.

    Eis que surge, neste cenrio, o protocolo de comunicao OPC, desenvolvido para a

    indstria de automao e suas necessidades de unificao dos protocolos, que especifica

    um conjunto de regras escritas e procedimentos de modo a possibilitar que mltiplos

    programas, ou aplicaes, possam se comunicar entre si (OPC FOUNDATION, 2012).

    Esta possibilidade abre perspectiva para uma ampla aplicao de controle aos mais

    variados tipos de problemas, fato esse que, associado potencialidade do SCILAB e

    versatilidade da linguagem de programao JAVA permitem a utilizao de tcnicas

    diversas, o que torna grande a aplicabilidade para as indstrias e potencializa solues

    para a educao em engenharia de controle.

    Face essas possibilidades, a primeira proposta foi a concepo e montagem de dois

    mdulos laboratoriais para educao em engenharia, de baixo custo, porm

    tecnicamente consistentes; posteriormente aps aquisio dos conhecimento necessrios

    utilizao do protocolo OPC, foi verificao sua eficcia e confiabilidade para

    utilizao em uma planta didtica com componentes de cho de fbrica, e

    principalmente o uso de FOSS ("Free and Open Source Software").

    Embora a caracterstica mais conhecida associada com FOSS seja o seu baixo

    custo, praticamente nula para os usurios, outras caractersticas, no to conhecidas, e

    tambm importantes, devem ser levadas em considerao e podem explicar seu poder de

    crescimento e utilizao, em todo mundo, e sua aceitao nos meios acadmicos e

    industriais. Elas incluem a confiabilidade, segurana e estabilidade, padres abertos e

    independncia dos fornecedores, reduo da dependncia de importao e o reforo da

    capacidade tecnolgica local (OPEN SOURCE INITIATIVE, 2009).

    O trabalho est estruturado como segue: a seo 2 apresenta o protocolo OPC, a

    seo 3 sua implementao com as linguagens FOSS e a seo 4 apresenta a

    metodologia utilizada no trabalho. A seo 5 apresenta a utilizao do OPC com Java e

    as concluses, na seo 6, encerram o trabalho.

    2. PROTOCOLO DE COMUNICAO OPC

    O OPC um protocolo de comunicao desenvolvido diante da necessidade da

    indstria e automao de estabelecer parmetros unificados para uma comunicao

    nica entre dispositivos, reduzindo os custos de integrao, bem como o ciclo total para

    os softwares na indstria de automao e controle, de modo geral. Esse

    desenvolvimento propiciou a padronizao da comunicao de dados com um conjunto

    de especificaes e regras de escrita e procedimentos (OPC FOUNDATION, 2012).

    A arquitetura OPC pode ser classificada em duas hierarquias, os clientes OPC e os servidores OPC. Os clientes OPC so aplicaes (softwares) que se conectam com um ou mais servidores para interagir com os itens disponibilizados, efetuando a leitura

    das informaes de entrada e escrita nos itens de sada, quando necessrio. Os

    Servidores (fonte de dados) so softwares disponibilizados pelo fabricante de um CLP,

    ou demais equipamentos de campo, sendo os computadores os responsveis pelo

    reconhecimento de drivers e compartilhamento dos dados, fornecidos pelo servidor

    OPC, que reconhecem os dados, provenientes da rede de comunicao dos

    equipamentos da planta industrial, e os traduzem para o padro OPC. (SANTOS NETO, 2012). Essa comunicao vlida somente para OPC-DA (Data Access), uma

    vez que existem diferentes tecnologias OPC.

  • 3. IMPLEMENTAO DO OPC E SOFTWARES LIVRES

    3.1. Motivao

    Por se tratar de um protocolo de comunicao de padro industrial aberto para

    transmisso de dados em tempo real, o OPC est sendo adotado pela maioria dos

    fabricantes de produtos, tornando-se um padro de mercado na comunicao com o

    cho de fbrica. Nesse cenrio torna-se cada vez mais favorvel o desenvolvimento de

    sistemas que utilizem a comunicao de cho de fbrica, proporcionando melhor

    desempenho e otimizao dos processos, o aprendizado dos discentes nas disciplinas de

    controle de processos, capacitando-os para o mercado de trabalho.

    Na busca por solues que proporcionassem o aprofundamento na aquisio de

    conhecimento sobre o protocolo OPC, de forma a garantir transferncia deste

    aprendizado aos demais discentes e pesquisadores, bem como para o treinamento de

    profissionais na utilizao, estudo de tcnicas, e pesquisa na rea de Controle de

    Processos, comeou-se o desenvolvimento do presente trabalho. Foram ento

    desenvolvidos, nesta diretriz, um mdulo laboratorial que contem sensores, atuadores, e

    componentes utilizados no cho de fbrica. Nos tpicos a seguir estes mdulos sero

    apresentados de forma sucinta e objetiva; posteriormente, ser discutido o mdulo

    laboratorial de maior robustez, destaque na apresentao deste artigo.

    3.2. Objetivos

    Deseja-se desenvolver um sistema todo por FOSS utilizando a tecnologia OPC,

    composto por softwares clientes para o supervisrio de controle, aquisio e envio de

    dados, obteno das funes de transferncia, que possam ser utilizados no auxlio

    pesquisa, amparo para a disciplina de controle de processos e treinamento em geral. A

    interface de interao homem-mquina, responsvel pelo gerenciamento do processo,

    foi desenvolvida em SCILAB. O software utilizado para a implementao de estratgias

    de controle de alto nvel, permitindo ao usurio definir subsistemas de controle e a

    aplicao de tcnicas de controle avanadas, foi desenvolvido em linguagem de

    programao JAVA.

    4. METODOLOGIA

    Os dois primeiros mdulos so caracterizados por sua simplicidade, fcil

    construo materiais de fcil aquisio. A tcnica de controle selecionada para ser

    aplicada junto aos dados fornecidos pelo servidor OPC foi o controlador PID, por

    motivo de simplicidade e robustez perante variados processos.

    Normalmente, as implementaes utilizando controladores PID envolvem tcnicas

    analgicas. Quando os processos envolvidos utilizam computadores digitais no mais

    esta-se tratando de uma aplicao analgica, pois o processo de amostragem deve,

    ento, ser acrescido lei de controle (ASTROM et al., 1995).

    De acordo com o descrito anteriormente, a aplicao deste trabalho tambm se

    insere no escopo de um processo de obteno de dados digital; nessa situao, o

    servidor OPC foi configurado para adquirir os informaes do mdulo de nvel com

    intervalo de amostragem de 100 ms. Diante destas concluses a lei de controle no mais

  • ser a do PID analgico e sim a lei descrita abaixo obtida por meio da aproximao da

    regra "backward rectangular" (ASTROM et al., 1995) como:

    ))(')()(()( keKkiKkeK=ku dip (1)

    onde u a varivel de controle, e o valor do erro, relativo referncia, o ndice k a

    representao da discretizao do processo e a integral do erro; Kp o ganho

    proporcional; Ki o ganho integral que a relao do tempo de amostragem divido pelo

    tempo integral ou Ti; Kd o ganho derivativo que a relao do tempo derivativo, ou Td,

    dividido pelo tempo de discretizao.

    A utilizao do controlador PID impe a necessidade de definio dos parmetros

    do controle. Devido grande simplicidade e aplicabilidade do mtodo de Ziegler e

    Nichols, ele foi escolhido para a sintonia dos controladores (ZIEGLER et al., 1942). Na

    Tabela 1 a seguir tem-se os valores de sintonia dos controladores PID utilizando a

    tcnica proposta por Ziegler e Nichols.

    Tabela 1 Sintonia dos controladores PID segundo Ziegler e Nichols

    onde:

    a constante de tempo;

    o tempo morto;

    k o ganho do processo, ou relao entre a resposta estacionria (yss) e o degrau aplicado.

    A metodologia empregada consiste em utilizar os sistemas a seguir, expondo-os a

    determinadas condies a fim de analisar tanto o funcionamento do protocolo OPC,

    quantos os controles P, PI e PID para o controle de nvel, temperatura, vazo e presso.

    4.1. Mdulo de Nvel de baixo custo

    Este mdulo caracterizado por sua simplicidade, fcil construo e facilidade de

    aquisio dos materiais, sendo porttil e de baixo custo. (SANTOS NETO et al., 2012).

    O mdulo de nvel utilizado compe-se dos seguintes elementos: 1 sensor de nvel; 2

    eletrobombas; 2 reservatrios. Estes elementos esto expostos da maneira apresentada

    na Figura 1. Consegue-se observar o sensor de nvel acoplado ao reservatrio atravs da

    mangueira; pode-se ainda observar os reservatrios suspensos pelo suporte e as bombas

    logo abaixo. Neste sistema proposto e nos demais, entre o mdulo de nvel e o

    computador utiliza-se um dispositivo denominado CLP.

    Os CLP's, ou os Controladores Lgicos Programveis, foram desenvolvidos no

    final dos anos 60, com a finalidade de substituir painis de rels em controles baseados

    em lgicas combinacional sequenciais, em linhas de montagem nas indstrias de manufatura, principalmente automobilstica, sendo progressivamente adotados pelas

    indstrias de processos (ATOS AUTOMAO INDUSTRIAL, 2006).

  • Figura 1 CLP Atos e Mdulo de Nvel.

    De forma simplificada pode-se descrever que o cerne do sistema o protocolo de

    comunicao OPC, que permite que o CLP envie e receba valores de tenses ou

    correntes de origem analgica ou digital, pois o equipamento permite o uso do servidor

    OPC. Como o CLP da Atos utilizado no fornece uma corrente necessria para

    alimentar a bomba foi utilizado um circuito auxiliar, formado por um transistor, um

    resistor e uma fonte de alimentao, de forma que o CLP controla o transistor como

    uma fonte de corrente que, consequentemente, controle a bomba ou motor de esguicho.

    4.2. Mdulo de Nvel e temperatura

    O Mdulo Laboratorial Tanques Duplos foi desenvolvido para anlise e estudo da

    dinmica de variveis associadas ao controle de processos industriais (CAMPOS,

    2007), sendo selecionadas as malhas de nvel e temperatura, em configuraes SISO e

    TITO (Figura 2), com caractersticas integradoras e atraso de transporte (WADE, 2004).

    Figura 2. Mdulo de Nvel e Temperatura

    O sistema composto por dois reservatrios em acrlico com capacidade de 6 litros,

    sensores de nvel e temperatura, duas eletrobombas automotivas, sensores de nvel e

    temperatura, resistor de aquecimento, agitador para homogeneizar a temperatura da

    gua no tanque, e um CLP Atos descrito no item anterior.

    Este mdulo possibilita a realizao de prticas laboratoriais com uma viso

    diferenciada. Uma primeira observao que o mdulo possibilita a anlise dinmica e

    o controle, em configurao SISO - "Single-input and Single-ouput" - e/ou MIMO -

    "Multiple-Input and Multiple-Output", de malhas de nvel de fluidos, integrativas, e de

  • temperatura, com grande atraso de transporte, atravs da utilizao de um sistema

    supervisrio; os mdulos didticos, geralmente, no apresentam a opo MIMO.

    4.3. Planta Laboratorial

    O Mdulo Laboratorial ou Planta Didtica de Processos Contnuos (Figura 3)

    consiste de um sistema de tanques duplo, com aquecimento e resfriamento, que

    possibilita o controle das quatro variveis de processo - vazo, nvel, temperatura e

    presso - em circuito nico, configurado segundo topologias distintas. O sistema

    permite alterao das variveis de controle e controladas, para cada malha distinta, em

    concepo por realimentao (feedback) ou por antecipao (feedforward). Opera baseada na padronizao de sinais de 4 a 20 mA, adicionalmente ao protocolo digital

    Profibus PA. (GOMES, 2008). Sua caracterstica diferencial a utilizao de sensores e

    atuadores que replicam uma ambincia industrial, com seus problemas e no

    linearidades, mas tambm permitindo seu ajuste e calibrao.

    Buscando reproduzir o uso da arquitetura do protocolo OPC com o sistema da

    planta didtica, foram utilizados dois clientes, configurados no cliente SCILAB, um

    sistema supervisrio que possibilita a configurao e operao do mdulo tanto em

    malha aberta como fechada para a identificao dos modelos e sintonia de

    controladores. Ao iniciar o ambiente, possvel escolher entre identificar as malhas ou

    controlar as malhas; ao selecionar a identificao (Figura 4) possvel fazer por meio

    do Teste da Resposta ao Degrau ou pelo Mtodo dos Mnimos Quadrados recursivo.

    Figura 3. Planta Didtica de Controle real.

    Aps a identificao o sistema supervisrio gera grfico e os valores pertinentes de

    cada mtodo e junto do Mtodo dos Mnimos Quadrados possvel obter a qualificao

    do modelo estimado por meio de tcnicas de validao de modelos como o Coeficiente

    de Correlao Mltipla da Equao 2 (COELHO & COELHO, 2004).

    (2)

    Onde y(k) a sada real, a sada estimada e a medida das N amostras

    da experincia. Para valores de R igual a 1 significa que houve uma exata adequao

    do modelo para os dados medidos do processo.

  • J para a sintonia das malhas, possvel utilizar o controle P, controle PI e

    controle PID. O sistema possibilita a alterao dos dados da sintonia em tempo real,

    como a referncia, os ganhos dos controladores e perturbaes. Adicionalmente s

    caractersticas especficas de cada malha, o projeto do sistema prev complexidades

    adicionais, comuns em ambientes industriais.

    Figura 4 Tela de identificao nvel

    Dentre estas vale citar: Atrasos de transporte variveis; Modelagem no linear;

    Controle no linear; Alterao de variveis de controle para uma mesma malha atravs

    da potncia dissipada na resistncia de aquecimento do tanque inferior, atravs da vazo

    do fluido, mantendo-se constante a potncia da resistncia de aquecimento, atravs da

    taxa de resfriamento do radiador, para vazo e potncia constantes, e tambm para

    qualquer das configuraes citadas, possvel alterao nas variveis durante o

    processo.

    O Sistema Supervisrio desenvolvido em linguagem de programao JAVA,

    (Figura 5) disponibiliza interface grfica e publicao das telas grficas dinmicas, em

    tempo real. O supervisrio conta ainda com Tutoriais sobre protocolo OPC,

    caractersticas de configurao, metodologias e tcnicas de controle. Para se fazer o uso

    desta linguagem destacam-se no prximo tpico as configuraes necessrias.

    Figura 5 Supervisrio JAVA Cliente OPC e tela para Controlador para Vazo

  • Obtido os parmetros com o supervisrio em SCILAB, o supervisrio desenvolvido

    em linguagem de JAVA cliente OPC pode simular caractersticas especificas de cada malha, como no exemplo figura 5.

    Este mdulo encontra-se em aprimoramento e seu supervisrio JAVA, ainda em

    desenvolvimento, permitir aos alunos da Universidade Federal de Juiz de Fora (UFJF),

    prticas laboratoriais de forma a faz-los irem ao encontro das tecnologias e protocolos

    de comunicao recentemente difundidos na indstria.

    5. BIBLIOTECAS OPC PARA JAVA

    Para estabelecer a conexo entre o software servidor e o software cliente

    desenvolvido em linguagem de programao JAVA faz-se necessrio o uso de uma

    biblioteca acoplada a essa linguagem. Dentre as disponveis no cenrio atual, podemos

    destacar trs compatveis a tecnologia OPC Data Access, so elas: JEasyOPC,

    JOpcClient, JOPC-Bridge.

    Dentre estas trs, a primeira foi a escolhida por ser uma biblioteca de cdigo aberto,

    requisito deste trabalho; as demais so bibliotecas proprietrias, comercializadas;

    destaca-se, portanto, a utilizao da JEasyOPC, suas caractersticas, vantagens e

    desvantagens, configuraes e complementaes necessrias para seu uso.

    5.1. JEasyOPC

    A biblioteca OPC foi criada para facilitar a conexo entre softwares em Java e um

    servidor OPC. Baseada e abstrada de outra biblioteca do gnero, JEasyOPC, essa

    biblioteca visa tornar a conexo entre servidores OPC e um software em JAVA algo

    prtico, haja vista que os mtodos atuais so bem complexos e demandam instalao e

    configuraes complicadas. Esta biblioteca pode ser facilmente encontrada na internet

    para download, estando disponvel a qualquer pessoa que dela necessite para sua

    aplicao em JAVA, utilizando o protocolo OPC. Porm, para seu uso, necessrio

    fazer configuraes e implementaes adicionais no cdigo, para que se torne funcional.

    Esse processo de implementao da biblioteca foi um dos pontos de alto desafio,

    pois, ao deparar-se com um cdigo incompleto - e que em primeiro momento no se

    obtinha sucesso na sua execuo junto ao cdigo do software cliente -, ou seja, em

    termos prticos, o programa no compilava devido a problemas de referncia e importaes de classes da biblioteca. A segunda frustao foi ao se tentar obter

    respostas e solues para contornar e solucionar o problema, pesquisando na web em

    fruns, artigos cientficos, e com pesquisadores de outras universidades, pois essas

    fontes no retornaram com sucesso as respostas para as dvidas e passos que so de

    extrema necessidade para solucionar o problema; nas diversas publicaes o mximo

    que se pode encontrar so passagens diretas de um ponto para outro na configurao, o

    que impossibilita o leitor prosseguir na implementao. Nos fruns a resposta tpica

    o problema foi resolvido, mas sem a explicao de como foi feito. Percebeu-se a necessidade de buscar um conhecimento mais aprofundado na

    linguagem JAVA para resolver esta situao, e aps algumas semanas, a to esperada

    comunicao do sistema estava realizada. Por tais motivos, no tpico a seguir so

    descritas as configuraes e complementaes necessrias, de modo a propiciar ao leitor

    um passo-a-passo de como fazer o uso da biblioteca.

  • 5.2. Configurando e Implementando a biblioteca JEasyOPC.

    Por ser invivel a descrio de todo o cdigo necessrio na configurao da

    biblioteca, devido ao limite de texto no artigo, e para a maior comodidade do usurio,

    foi disponibilizado no blog Energia Inteligente (http://energiainteligenteufjf.com/) do

    Programa de educao Tutorial da Engenharia Eltrica da UFJF, o pacote com toda

    documentao para download; abaixo so descritas as melhorias feitas e como o usurio

    deve fazer seu uso. Aps fazer o download tais procedimentos tcnicos so necessrios

    para a instalao da biblioteca:

    OPC.jar: Pacote que contm a biblioteca, onde esto todas as classes necessrias ao

    funcionamento da biblioteca. Deve ser importado para o projeto;

    JCustomOpc.dll: DLL escrita em Delphi, responsvel pela comunicao entre a

    biblioteca OPC e o servidor OPC. Deve ser copiada para a pasta do projeto;

    Data.zip: Pacote ZIP contendo os arquivos de propriedades da DLL JCustomOpc e

    da biblioteca JEasyOPC. Deve ser copiado para a mesma pasta onde estiver o arquivo

    JCustomOpc.dll e deve ser importado para o projeto;

    Para fazer as importaes no NetBeans isso pode ser feito clicando com o boto

    direito em Libraries->Add Jar/Folder e selecionando os dois arquivos. Quando o projeto

    for compilado, ser criada uma pasta chamada lib no mesmo local onde est o arquivo

    .jar do projeto principal. Por fim, copie para esta pasta os Data.zip e JCustomOpc.dll.

    5.3. Mtodos

    OPC(Construtor): responsvel por definir as propriedades de um objeto da classe

    OPC e no invocado diretamente, sendo chamado na criao do objeto. Recebe como

    parmetros trs strings, o host do servidor, o nome do servidor e um nome para ser

    identificado no servidor;

    Conectar: responsvel por tentar fazer conexo com o servidor. Ele no recebe

    nenhum parmetro e retorna um tipo booleano que indica o sucesso ou falha da

    conexo. Deve ser invocado depois que todos os grupos, itens e funes automticas

    estiverem definidas, pois, para fazer a conexo, ele envia ao servidor as informaes

    sobre todos os grupos e itens requeridos, e em caso de sucesso, cria um objeto da classe

    privada Alterao, estendido classe Thread, que responsvel por receber dados do servidor de forma assncrona e utilizar esses dados em funes automticas definidas;

    Desconectar: responsvel por tentar desconectar do servidor. No recebe nenhum

    parmetro e retorna um booleano indicando o sucesso ou falha do processo de

    desconexo. Ao desconectar todos os objetos que controlam as funes automticas so

    pausados, de forma que podem ser executados rapidamente no caso de uma reconexo;

    setConexao: responsvel por alterar as informaes do servidor antes de realizar a

    conexo. Recebe como parmetros trs strings, o host do servidor, o nome do servidor e

    um nome para ser identificado no servidor;

    setTempo: esse mtodo responsvel por alterar o tempo que o software ir esperar

    entre uma verificao de servidor e outra, onde so buscadas as diferenas ocorridas no

    servidor nesse intervalo de tempo. Recebe como parmetro um inteiro indicando o

    tempo em milisegundos;

    Conectado: retorna um booleano indicando o estado atual de conexo com o

    servidor;

  • AdicionarGrupo: esse mtodo responsvel por registrar um grupo no software e

    deve ser chamado antes do mtodo Conectar e do mtodo AdicionarItem. Recebe como

    parmetros as informaes de um grupo no servidor OPC, que so uma string

    informando o nome do grupo, um booleano indicando se o grupo est ativo, um inteiro

    indicando a taxa de atualizao do grupo e um flot indicando a porcentagem de banda

    morta do grupo. O mtodo retorna um inteiro que indica o cdigo nico de identificao

    do grupo para o sistema;

    AdicionarItem: mtodo responsvel por registrar um item no software e deve ser

    chamado antes do mtodo Conectar. Recebe como parmetros as informaes de um

    item registrado no servidor OPC, que so um inteiro contendo o cdigo nico de

    identificao do grupo, uma string informando o nome do item, um booleano indicando

    se o item est ativo ou no e uma string contendo o Acess Path do item. O mtodo

    retorna um inteiro que indica o cdigo nico de identificao do item para o sistema ou

    o valor -1, indicando que houve falha na adio do item;

    ler: mtodo responsvel por fazer uma leitura manual de um item no servidor OPC

    e deve ser chamado depois do mtodo Conectar. Recebe como parmetros dois inteiros

    contendo o nmero nico de identificao de um grupo e de um item respectivamente.

    Retorna uma instncia da classe Variant contendo o valor atual do um item no servidor

    e tambm pode retornar o valor null em caso de falha na leitura;

    escrever: responsvel por fazer uma alterao do valor de um item no servidor OPC

    e deve ser chamado depois do mtodo Conectar. Recebe como parmetros dois inteiros

    contendo o nmero nico de identificao de um grupo e de um item respectivamente e

    tambm uma instncia da classe Variant, essa por sua vez contendo o novo valor a ser

    atribudo ao item no servidor. Retorna um booleano indicando a falha ou sucesso do

    processo de alterao do valor do item;

    addFuncao: registra uma funo ser executada sempre que houver alterao em

    um item no servidor e deve ser chamado antes do mtodo Conectar. Recebe como

    parmetros dois inteiros contendo o cdigo de identificao nico de um grupo e de um

    item respectivamente e tambm uma instncia da classe pblica Funcao, classe essa que

    est definida dentro da classe OPC. Retorna um inteiro contendo o nmero de

    identificao nico da funo para o sistema;

    rmFuncao: responsvel por remover o registro de uma funo previamente

    registrada pelo mtodo addFuncao. Recebe como parmetro um inteiro contendo o

    cdigo nico de identificao da funo;

    Funcao: classe abstrata que define uma ao a ser executada quando o valor de um

    item sofre alguma alterao no servidor OPC. A classe contem um mtodo abstrato

    chamado Acao, que recebe como parmetro uma instncia da classe Variant que conter

    o novo valor do item no servidor.

    5.4. Exemplo de cdigo

    OPC opc;

    {

    opc = new OPC("127.0.0.1", "Atos.OPCConnect.1", "OPC1");

    int grupo = opc.AdicionarGrupo("Leitura", true, 500, 0);

    int item = opc.AdicionarItem(grupo, "Bucket Brigade.Int1", true, "");

    int funcao = opc.addFuncao(item, grupo, new OPC.Funcao);

    {

    @Override

  • public void Acao(Variant v) {

    label.setText(v.toString());

    }

    }

    opc.Conectar();

    }

    {

    opc.Desconectar();

    }

    6. CONCLUSO

    Os resultados obtidos at o presente com o projeto devero conduzir ao

    desenvolvimento completo de sistema de controle baseado em redes que permita uma

    boa adaptao a qualquer meio industrial, onde exista algum servidor OPC conectado.

    Trata-se de uma realidade que, iniciada em 1996 - ano de lanamento do OPC - vem

    crescendo vertiginosamente no ambiente industrial, mas, infelizmente, ainda abordada

    de forma totalmente incipiente na educao em controle de processos, criando um

    possvel descompasso entre a formao dos engenheiros e a realidade que encontraro

    no mercado de trabalho, aps sua formatura. O principal benefcio de seu aprendizado e

    utilizao consiste na reduo dos custos e tempo de desenvolvimento de interfaces e

    drivers de comunicao, com consequente reduo de custo de integrao de sistemas.

    Esta potencialidade facilita sobremaneira que sejam escolhidos, dentro de diversas

    opes, os tipos de controle que melhor se adaptaro ao processo.

    Diante dos resultados apresentados observa-se a aplicabilidade e a utilidade do

    sistema que mostraram-se satisfatrios, o que demonstra que a metodologia empregada

    desde os elementos fsicos at a escolha do uso do protocolo de comunicao vlida.

    No mais, pode-se dizer que o trabalho vem obtendo resultados que propiciam

    compreender o vasto campo de aplicao que o protocolo de comunicao OPC possui.

    Os mdulos desenvolvidos, de baixo custo, fcil operao e tecnicamente consistentes e

    estruturados possibilitam utilizao laboratorial mais intensa, com anlise de situaes

    distintas e diversificadas.

    Um destaque importante quanto aos usos de softwares livres - no caso do Scilab e

    da linguagem JAVA - que se adquam perfeitamente ao protocolo OPC, por meio de

    toolbox e bibliotecas respectivas, sendo motivadores para continuao deste trabalho,

    em especial o JAVA, que possuiu um potencial muito grande para criao de ambientes

    interativos e interfaces grficas.

    A soma dos trs mdulos estudados resulta em um acmulo de conhecimento

    gradativo que tem o potencial de propiciar, a qualquer profissional ou investigador, o

    aprendizado nas mais diversas tcnicas de controle, sobre o protocolo OPC, dentre

    outros. Sua utilizao nas atividades laboratoriais refora o conhecimento tcnicos dos

    alunos em reas diversas, abrangendo no s os aspectos mais conceituais da teoria de

    controle, mas os aspectos prticos de conexo e configurao de sistemas, presentes no

    meio industrial e cujo conhecimento torna-se, cada vez mais, uma necessidade para os

    engenheiros.

  • 7. AGRADECIMENTOS

    Agradecemos ao Programa de Educao Tutorial (PET-MEC) e FAPEMIG.

    8. REFERNCIAS BIBLIOGRFICAS

    ATOS AUTOMAO INDUSTRIAL. Curso bsico de Controladores

    Programveis, Ref.5-0026.110, Manual - Fevereiro/2006. Disponvel em:

    http://www.atos.com.br. [Acessado em: abril de 2013]

    ASTROM, K.J. & Hagglund, T. Hagglund. 1995. PID Controllers, Theory, Design

    and Tuning (2nd)

    CAMPOS, M. C. M. M.; Teixeira, H. C. G. Controle Tpico de Equipamentos e

    Processos Industriais. ed. Edgard Blcher: So Paulo, 2007.

    COELHO, A. A. R.; COELHO, L. S. Identificao de Sistemas Dinmicos

    Lineares. ed.UFSC, 2004.

    GOMES, F. J. & PINTO, D. P. Laboratrios Integrados para Controle de Processos

    e Anlise da Eficincia Energtica de Sistemas Industriais, COBENGE, 2008.

    OPC FOUNDATION, What is OPC?, 2012. Disponvel

    em:http://www.opcfoundation.org/Default.aspx/01_about/01_whatis.asp?MID=AboutO

    PC. [Acessado em: 21 de abril de 2013]

    OPEN SOURCE INITIATIVE. Disponvel em:

    Acesso em: 12 dez. 2012

    SANTOS NETO, A. F.; BARROSO, D. S. Tornando a Educao em Controle de

    Processos mais realista: a utilizao do protocolo OPC, COBENGE, 2012.

    ZIEGLER, J. G. & Nichols, N. B. 1942. Optimal settings for automatic controllers.

    Transactions of the ASME.

    WADE, H. L. Basic and Advanced Regulatory Control: System Design and

    Application. ed. Instrumentation System, 2004.

    FOSS APPLICABILITY: PROTOCOL OPC, JAVA AND

    SCILAB IN EDUCATION SYSTEMS CONTROLS INDUSTRIAS

    Abstract: The objective of this article is focused at presenting tools of Free Open

    Source Software (FOSS), SCILAB and JAVA programming language, for the study of

    many Process Control and Automation techniques through the communication protocol

    OLE for Process Control (OPC); highlighting their features and an assumed form of

    use of this protocol, checking its applicability and effectiveness. Briefly, the article will

    present an introduction and, in sequence, a topic about the OPC protocol, describing

    some definitions and characteristics. As subsequent topics we present a methodology

    for training based on three laboratory modules, the last is still under development, the

    results of simulations of the control level of a reservoir, through the PID controller,

    adjusted toward our goals. As a last topic will be shown in necessary settings to work

    with OPC protocol using JAVA, pertinent findings will be made over the entire

    development as well as future work.

    Key-words: Education in Control, Programmable Logic Controller - PLC, Scilab,

    JAVA, OPC protocol.