Você está na página 1de 91

“Júlio de Mesquita Filho”

Campus Experimental de Sorocaba

IVAN BOVAROTTI TAGLIARI

SISTEMA DE SUPERVISÃO DE PROCESSOS


INDUSTRIAIS ATRAVÉS DE COMPUTADOR
PESSOAL

Sorocaba
2010
“Júlio de Mesquita Filho”
Campus Experimental de Sorocaba

IVAN BOVAROTTI TAGLIARI – RA: 510191

SISTEMA DE SUPERVISÃO DE PROCESSOS


INDUSTRIAIS ATRAVÉS DE COMPUTADOR
PESSOAL

Trabalho de Graduação do Curso


de Engenharia de Controle e
Automação, da UNESP de
Sorocaba. Orientado pelo Prof. Dr.
Galdenoro Botura Jr. e co-
orientado pelo Prof. Dr. Luiz Carlos
Rosa.

Sorocaba
2010
Dedicatória

Dedico este trabalho aos meus pais, Roberto e Lisandra, a quem devo
eterna gratidão por guiarem as minhas escolhas com todo amor e carinho.

À minha irmã, Lívia, que não se cansa de me alegrar nas horas mais
complicadas.

Ao meu professor, orientador e amigo, Galdenoro, que me ensinou as


diretrizes necessárias para alcançar o meu primeiro sucesso acadêmico.

À todos outros professores que contribuíram de forma essencial para


minha formação profissional.

À Stephanie, minha amada namorada, que me dá força e disposição


para alcançar meus objetivos, tornando-os sempre mais prazerosos.

Aos meus amigos André e Filipe, que juntos fizeram parte de momentos
inesquecíveis da minha vida.

A todos meus amigos e familiares que me apoiaram e dividiram comigo


as partes mais importantes da minha formação pessoal e profissional.

iv
Objetivo

Geral

Fazer uso dos conceitos adquiridos durante o curso de Controle e


Automação e do estudo de novas tecnologias dispostas no mercado para criar
um sistema de supervisão que possua todas as características necessárias
para sua aplicação em ambientes industriais completos.

Específico

Construir um sistema capaz de monitorar os tempos de manufatura de


cada etapa do processo produtivo, permitindo analisar o desempenho do
processo em questão e tomar atitudes para sua melhoria.

Metodologia

Busca bibliográfica de teorias sobre as ferramentas utilizadas,


desenvolvimento do sistema de supervisão e sua implementação em uma
estrutura física.

v
Resumo

TAGLIARI, I. B. Sistema de Supervisão de Processos Industrias. Trabalho


de Graduação. Universidade Estadual Paulista “Júlio de Mesquita Filho” –
Unidade Experimental de Sorocaba, Sorocaba, 2010.

Tem se verificado nos dias de hoje uma grande demanda por sistemas de
automação que permitam a redução de custos e o aumento da produtividade
em todos os segmentos industriais. Este trabalho de graduação aborda a
concepção de um sistema de supervisão capaz de controlar dispositivos
ligados a um controlador lógico programável (CLP) através de uma interface
sensor-atuador (ASi), por meio de um software de instrumentação virtual, o
LabVIEW, cuja comunicação com o hardware é baseada no padrão OPC.
Escolheu-se esse software, inicialmente voltado a laboratórios, a fim de se
pesquisar sua aplicabilidade em um ambiente de automação industrial. Com a
implementação do sistema em uma réplica de um processo produtivo completo
pôde-se monitorar os tempos de produção em cada etapa da manufatura do
produto final, e assim, adquirir dados que podem ser utilizados em sistemas
especialistas de tomada de decisões.

Palavras-chaves: Sistema de supervisão, automação, controle, padrão OPC,


rede ASi, CLP, LabVIEW.

vi
Abstract

TAGLIARI, I. B. Supervisory System of Industries Processes. Graduation


Paper. Universidade Estadual Paulista “Júlio de Mesquita Filho” – Unidade
Experimental de Sorocaba, Sorocaba, 2010.

Nowadays it has been noted a great demand for automation systems that
enable cost reduction and productivity growth in all industries. This graduation
paper broach the conception of a supervisory system capable of controlling field
instruments connected to a programmable logic controller (PLC) by an actuator
sensor interface (ASi). The system was created on a virtual instrumentation
software (LabVIEW) whose communication with the PLC is based on the OPC
protocol. The LabVIEW, initially focused only on laboratories procedures, was
chosen in order to explore its applicability in an industrial automation
environment. Implementing the system in a complete production process model,
it was possible to monitor production times in each manufacturing stage.
Therefore, the acquire data can be futurely used by a logical decision-making
system.

Key-words: Supervisory system, automation, control, OPC protocol, ASi


network, PLC, LabVIEW.

vii
Sumário

1. Apresentação ................................................................................................. 1
2. Introdução aos sistemas automatizados ........................................................ 3
2.1 A Automação ............................................................................................. 3
2.1.1 CLP ..................................................................................................... 6
2.1.2 UTR ..................................................................................................... 7
2.1.3 Inversores de freqüência ..................................................................... 7
2.2 Sistemas de Supervisão............................................................................ 8
2.3 Redes industriais ..................................................................................... 10
2.3.1 Introdução às redes industriais.......................................................... 10
2.3.2 Rede ASi ........................................................................................... 12
2.3.2.1 Módulo CP343-2.......................................................................... 15
3. Proposta do sistema a ser desenvolvido ..................................................... 19
3.1 A planta a ser automatizada.................................................................... 19
3.1.1 Estações de trabalho......................................................................... 22
3.1.1.1 Estação de teste do material ....................................................... 22
3.1.1.2 Estação de distribuição do material............................................. 23
3.1.1.3 Robô alimentador da CNC .......................................................... 24
3.1.1.4 Centro de Usinagem EMCO Mill 105........................................... 24
3.1.1.5 Estação de montagem................................................................. 25
3.1.1.6 Estação de manipulação em dois eixos ...................................... 26
3.1.1.7 Estação de triagem...................................................................... 26
3.1.1.8 Estação de processamento ......................................................... 27
3.1.1.9 Sistema de transporte ................................................................. 27
3.2 Descritivo do processo ............................................................................ 31
3.3 Escolha das variáveis controladas .......................................................... 33
4. Solução de controle empregada................................................................... 36
4.1 LabVIEW ................................................................................................. 36
4.1.1 Metodologia de programação............................................................ 36
4.2 Sistema OPC........................................................................................... 39
4.3 Servidor OPC .......................................................................................... 40
4.3.1 NI OPC Servers................................................................................. 40
4.3.2 Configuração do NI OPC Servers como servidor OPC ..................... 41

viii
4.4 Cliente OPC ............................................................................................ 43
4.4.1 Módulo de Supervisão e Controle de Dados ..................................... 43
4.4.2 Configuração do LabVIEW como cliente OPC .................................. 44
5. Software desenvolvido ................................................................................. 49
5.1 Endereços de controle das variáveis do processo .................................. 49
5.2 Lógica de programação utilizada............................................................. 52
5.2.1 Estrutura geral do programa.............................................................. 52
5.2.2 Rotinas de controle............................................................................ 54
5.2.2.1 Cálculo do tempo de produção na estação ................................. 54
5.2.2.2 Cálculo do tempo de verificação da presença da peça pronta no
carro de transporte .................................................................................. 57
5.2.2.3 Verificação das condições para liberação do carro de transporte 60
5.2.2.4 Cálculo do tempo para reativação da trava que segura o carro de
transporte na estação.............................................................................. 61
5.2.2.5 Cálculo da identificação do carro de transporte........................... 63
5.2.2.6 Geração de gráficos com o tempo de produção de cada peça em
cada estação ........................................................................................... 64
5.2.2.7 Cálculo da média do tempo de produção em cada estação........ 64
5.2.2.8 Reunião dos tempos de produção de cada estação em uma única
planilha .................................................................................................... 65
5.2.2.9 Exportação da planilha para um arquivo em formato .xls ou .txt . 66
5.3 Interface com o usuário ........................................................................... 67
5.3.1 Visão Geral........................................................................................ 68
5.3.2 Gráficos ............................................................................................. 69
5.3.3 Análise de dados ............................................................................... 70
6. Resultados ................................................................................................... 72
7. Conclusão .................................................................................................... 78
Referência Bibliográfica ................................................................................... 80

ix
Índice de Figuras
Fig. 1 – Níveis de controle industrial – Pirâmide de Automação ........................ 4
Fig. 2 – Diagrama de blocos do inversor de freqüência ..................................... 7
Fig. 3 – Níveis de redes industriais .................................................................. 10
Fig. 4 – Equipamentos nos níveis de uma rede industrial ................................ 11
Fig. 5 – Cabo ASi ............................................................................................. 13
Fig. 6 – Endereçador ASi ................................................................................. 14
Fig. 7 – Representação da distribuição da rede ASi ........................................ 15
Fig. 8 – CP343-2 .............................................................................................. 16
Fig. 9 – Endereçamento dos escravos da rede ASi ......................................... 17
Fig. 10 – Sistema Multi FMS ............................................................................ 20
Fig. 11 – Arquitetura do controle e comunicação entre as células ................... 21
Fig. 12 – Estação de teste do material ............................................................. 23
Fig. 13 – Estação de distribuição do material................................................... 23
Fig. 14 – Robô alimentador da CNC ................................................................ 24
Fig. 15 –Centro de usinagem EMCO Mill 105 .................................................. 25
Fig. 16 – Estação de montagem....................................................................... 25
Fig. 17 – Estação de manipulação em dois eixos ........................................... 26
Fig. 18 – Estação de triagem............................................................................ 27
Fig. 19 – Estação de processamento ............................................................... 27
Fig. 20 Sistema de transporte .......................................................................... 28
Fig. 21 – Arquitetura da conexão entre computador e CLP ............................. 29
Fig. 22 – Painel frontal e diagrama de blocos .................................................. 37
Fig. 23 – Arquitetura da conexão desde o cliente OPC até o CLP................... 39
Fig. 24 – Tela principal do NI OPC Servers ..................................................... 40
Fig. 25 – Tela de configuração da comunicação com o MPI ............................ 41
Fig. 26 – Tela de configuração do CLP ............................................................ 42
Fig. 27 – Tela de configuração de uma “tag”.................................................... 42
Fig. 28 – Tela de navegação do projeto no LabVIEW ...................................... 44
Fig. 29 – Tela de configuração de um novo servidor de entrada e saída......... 45
Fig. 30 – Configuração da comunicação entre servidor e cliente ..................... 46
Fig. 31 – Tela de criação de uma nova variável ............................................... 46
Fig. 32 – Tela de configuração da nova variável .............................................. 47

x
Fig. 33 – Tela de mapeamento da variável desejada....................................... 47
Fig. 34 – Importação da variável para a VI....................................................... 48
Fig. 35 – Configuração do endereço de início dos escravos da rede ASi ........ 50
Fig. 36 – Fluxograma da estrutura geral do programa ..................................... 53
Fig. 37 – Programação da rotina de cálculo do tempo de produção na estação
......................................................................................................................... 55
Fig. 38 – Fluxograma de Cálculo do tempo de produção na estação .............. 57
Fig. 39 – Programação da rotina de cálculo do tempo de verificação da
presença da peça pronta no carro de transporte.............................................. 58
Fig. 40 – Fluxograma da verificação de peça pronta........................................ 59
Fig. 41 – Programação da rotina de verificação das condições para liberação
do carro de transporte ...................................................................................... 60
Fig. 42 – Fluxograma de liberação do carro de transporte............................... 61
Fig. 43 – Programação da rotina de cálculo do tempo para reativação da trava
pneumática....................................................................................................... 61
Fig. 44 – Fluxograma de reativação da trava pneumática................................ 62
Fig. 45 – Programação da rotina de cálculo da identificação do carro de
transporte ......................................................................................................... 63
Fig. 46 – Programação do cálculo da média do tempo de produção em cada
estação............................................................................................................. 64
Fig. 47 – Lógica utilizada para reunir os tempos de produção de cada estação
em uma única planilha ..................................................................................... 65
Fig. 48 – Programação da exportação da planilha para um banco de dados .. 66
Fig. 49 – Tela “Visão Geral” ............................................................................. 68
Fig. 50 – Tela “Gráficos”................................................................................... 69
Fig. 51 – Tela “Análise de Dados” .................................................................... 70
Fig. 52 – Mensagem de alerta de discordância entre comando e posição real 71
Fig. 53 – Tela “Visão Geral” em funcionamento ............................................... 72
Fig. 54 - Tela “Gráficos” em funcionamento ..................................................... 74
Fig. 55 - Tela “Análise de Dados” em funcionamento ...................................... 75
Fig. 56 – Situação de estação posterior ocupada ............................................ 76
Fig. 57 – Situação de carro retido através da ação do usuário ........................ 77

xi
1. Apresentação

Um processo produtivo é composto por diversos fatores que estão


ligados diretamente a um produto final. A maioria desses fatores é dependente
da tecnologia disposta pela empresa na produção. [1]
O Engenheiro de Controle e Automação tem sua atuação voltada
especialmente a essa área, ou seja, ao controle das variáveis de processos
industriais, utilizando-se para isso de sensores, atuadores, sistemas de
controle, sistemas de supervisão e aquisição de dados e outros métodos que
apliquem os recursos da eletrônica, da mecânica e da informática. [2]
Tendo isso em vista, foi proposto neste trabalho de graduação,
implementar um sistema de supervisão, aplicado ao sistema flexível de
fabricação Multi-FMS da Festo, capaz de controlar os tempos de produção em
cada etapa do processo produtivo e armazenar os dados coletados em um
banco de dados acessível a outros softwares.
Para o desenvolvimento desse sistema escolheu-se o software
LabVIEW, da National Instruments, a fim de se pesquisar a possibilidade deste
programa, inicialmente voltado para uso em laboratório, ser aplicado em um
sistema de automação industrial completo.
Primeiramente será apresentado um estudo de teorias pertinentes ao
ramo da automação que serão necessárias para compreender o
desenvolvimento do sistema proposto.
Posteriormente, será realizada uma verificação das características
específicas da planta em questão, os dispositivos existentes nessa planta e
como estes estão conectados a um sistema de controle central. Dessa
maneira, será possível determinar quais variáveis possuem uma maior
necessidade de serem adquiridas para que se possa, posteriormente, criar um
modelo e atuar no processo produtivo visando sua melhoria.
Escolhido o conjunto de dispositivos existentes na planta mais adequado
para realizar as funções desejadas, será consolidada a comunicação entre o
LabVIEW e o controlador lógico programável (CLP), sendo que para isso será
necessária a definição de padrões e protocolos de comunicação.
Estabelecida a comunicação entre hardware e software, serão
mapeados os endereços de cada variável controlada e, então, será criado um

1
programa capaz de monitorar as diversas fases de um processo produtivo. A
partir dos dados obtidos, o sistema poderá atuar no processo automaticamente
ou o próprio usuário poderá fazê-lo através de uma interface, a fim de corrigir
ou modificar alguma etapa da produção.
Por fim, o sistema completo será implementado na planta em questão,
podendo-se fazer testes da funcionalidade e efetividade do sistema criado,
avaliando os dois objetivos principais do projeto: controle dos tempos de
produção e atuação do LabVIEW em um ambiente de automação industrial.
Vale ressaltar que o sistema que será implantado pode ser facilmente
adaptado a qualquer processo produtivo, não apenas ao citado anteriormente,
já que a teoria envolvida e a metodologia utilizada podem ser generalizadas.

2
2. Introdução aos sistemas automatizados

2.1 A Automação

Automação é a ciência que estuda e aplica metodologias, ferramentas e


equipamentos, objetivando definir quando e como converter o controle de um
processo manual para automático [2]. Com isso, uma coleta metodológica e
precisa de dados pode ser empregada para se obter a otimização de um
processo.
Atualmente, existe grande interesse por sistemas de automação,
especialmente onde a presença humana é insalubre ou perigosa, e também,
por sistemas de segurança, que necessitam que os tempos de resposta sejam
extremamente curtos [3]. Mais especificamente, existe grande demanda de
automação no setor industrial, devido aos seguintes motivos:
1) Redução dos custos de produção;
2) Rápida resposta ao atendimento da produção;
3) Redução dos volumes, tamanhos e custos dos equipamentos;
4) Restabelecimento mais rápido do sistema produtivo;
5) Repetibilidade e maior qualidade na produção;
6) Possibilidade de introdução de sistemas produtivos interligados.
Paralelamente a esses pontos positivos, a automação industrial traz a
necessidade de investimentos iniciais mais elevados, além de maiores custos
de manutenção dependentes de mão-de-obra mais qualificada. Em geral,
esses entraves são compensados pela garantia da qualidade da produção que,
dessa forma, torna-se mais homogênea. Deve-se destacar que a automação
por si só não tem a capacidade de melhorar um produto final, mas sim, de
torná-lo mais homogêneo de acordo com um padrão pré-estabelecido. [2]
Em suas primeiras implantações, os projetos de automação de
instalações industriais visavam apenas ao monitoramento e controle
automático local de parâmetros mais importantes, voltados à garantia de uma
operação remota adequada e não assistida. Os avanços tecnológicos nessa
área, como a instrumentação, as redes de campo (Profibus, Ethernet,
DeviceNet, LonWorks, Fieldbus Foundation, etc), o controle e os sistemas de
supervisão, foram fundamentais para a obtenção de malhas de controle mais

3
eficientes [3]. Conforme apresentado na figura 1, a automação pode ser
dividida em cinco níveis hierárquicos [2].

Fig. 1 – Níveis de controle industrial – Pirâmide de Automação [2]

Nível 1 – Controle manual. Por exemplo, uma botoeira para acionar o


motor de uma ponte rolante; Sensores de temperatura, pressão, nível,
umidade, opacidade, PH, movimento; medidores de vazão etc.
Nível 2 – Controladores lógico programáveis (CLPs) e sistemas digitais
de controle distribuídos (SDCDs); Inversores de freqüência e demais drivers de
acionamento.
Nível 3 – Envolve a conectividade do controle. Como exemplo temos os
sistemas supervisórios, em que se destacam os produtos: Rsview (Rockwell
Software), InTouch (Wonderware) e FixDmacs (Intellution). Também há
simuladores como o Data Historiam e sistemas de operação por batelada,
como o RsBatch.
Nível 4 – É definido pela exploração dos sistemas M.R.P (Material
Requirement Planning), Just-in-time e o MRP II (Manufacturing Resource
Planning).

4
Nível 5 – Sistemas E.R.P (Enterprise Resource Planning), Gestão de
Recursos Corporativos ), SAP, etc. [2]
Devido à grande necessidade da indústria em adaptar o seu processo
produtivo para atender às exigências do mercado, torna-se imprescindível a
integração das informações do chão de fábrica com um sistema central de
tomada de decisões. Isso é feito através dos sistemas de supervisão. [4]
Sua principal função é viabilizar: a integração dos diversos dispositivos e
equipamentos controlados, o monitoramento das variáveis, o emprego de
comandos remotos, a inserção de parâmetros, o monitoramento de alarmes,
etc. São implementados em um ambiente computacional e possuem uma
interface com o usuário que permite a entrada de parâmetros manualmente e a
atuação no sistema, a partir de uma representação fiel de todo o processo
produtivo [3].
Dessa forma, sistemas de supervisão que possuam como entrada as
variáveis contidas em um processo produtivo são de enorme relevância e
utilidade para que se possam aplicar as técnicas de controle e, principalmente,
implementar um sistema de automação completo.
O sistema de automação criado neste trabalho utiliza conceitos inseridos
na base da pirâmide (aquisição de dados) e caminha para o controle e
monitoramento remoto de dados atingindo o terceiro nível. Assim, é
imprescindível que se saibam também, os conceitos inserido nos níveis 1 e 2.
O primeiro nível é constituído pelos dispositivos de entrada, que são
elementos que emitem informações (sinais elétricos) ao sistema por meio de
uma ação muscular, mecânica, elétrica, eletrônica, ou uma combinação entre
elas. [5]
Entre esses elementos, podemos citar: botoeiras, chaves fim-de-curso,
sensores de proximidade, sensores de barreira, sensores potenciométricos,
medidores de pressão, termopares, termostatos, chaves de nível, entre outros.
Sensores podem ser dispositivos binários ou analógicos. Sensores
binários produzem sinais “ligado-desligado”, ou seja, apenas representa o
estado de uma variável de forma booleana(0 ou 1). Já sensores analógicos
reproduzem valores que variam dentro de uma escala pré-estabelecida, como
por exemplo, um termômetro. [4]

5
O segundo nível é formado pelos dispositivos de controle individual, isto
é, equipamentos eletrônicos que têm como característica armazenar
internamente instruções para implementar funções específicas, tais como:
lógica, sequenciamento, temporização, contagem e operações aritméticas,
dependendo das informações recebidas pelo primeiro nível, atuando em vários
tipos de máquinas ou processos. Ele é constituído principalmente por CLPs,
UTRs (Unidade Terminal Remota), SDCDs, relés, drivers e inversores de
frequência. [5]

2.1.1 CLP

Controladores lógicos programáveis são instrumentos como


microcontroladores, designados para o controle de equipamentos industriais.
Produzem uma tensão de saída binária que possibilita a atuação em elementos
elétricos e eletrônicos, como motores, válvulas, indicadores, etc. [5]
Os principais requisitos observados na especificação de um CLP são o
número de entradas e saídas digitais e analógicas e a capacidade da memória
integrada, já que o CLP é um dispositivo em que se é inserido um programa
para que este realize um controle baseado na lógica programada. [5]
Geralmente, utiliza-se a linguagem “Ladder” para programar os CLPs. A
linguagem “Ladder” foi a primeira a surgir para a programação de CLPs com a
funcionalidade de se assemelhar muito com os diagramas elétricos utilizados
até então[6]. A intenção de criar uma linguagem de programação
extremamente parecida com os esquemas elétricos existentes foi para evitar
uma quebra de paradigmas, aumentando, assim, a aceitação do produto no
mercado.
Os CLPs realizam a mesma função de painéis elétricos, ou seja, o
controle de sinais elétricos. No caso dos CLPs os sinais são transformados em
eletrônicos para poder ser realizado um controle microprocessado. Quando
comparados aos painéis elétricos, possuem como principais vantagens:
• Fácil diagnóstico durante o projeto;
• Tamanho reduzido, economizando espaço físico;
• Não produção de faíscas;

6
• Possibilidade de programação sem interromper o processo
produtivo;
• Possibilidade de criação de um banco de armazenamento de
programas;
• Consumo baixo de energia;
• Baixa necessidade de manutenção;
• Flexibilidade para expansão do número de entradas e saídas;
• Capacidade de comunicação com diversos outros
equipamentos.[6]

2.1.2 UTR

A unidade terminal remota é um dispositivo de controle microprocessado


que interliga objetos físicos aos sistemas digitais de controle distribuído ou
sistemas SCADA, transmitindo dados do processo ou alterando estados dos
objetos conectados a ele, baseado na mensagem recebida pelo sistema de
supervisão. [4]

2.1.3 Inversores de frequência

Inversores de freqüência são dispositivos capazes de gerar uma tensão


alternada com freqüência ajustável, com a finalidade de controlar a velocidade
de um motor de corrente alternada. [4]
A figura abaixo representa, resumidamente, o diagrama de blocos de um
inversor de frequência.

Fig. 2 – Diagrama de blocos do inversor de freqüência [4]

7
Diodos retificadores alocados no circuito de entrada do inversor retificam
a tensão da rede de entrada. Essa tensão contínua gerada é, então, filtrada por
um capacitor e utilizada como entrada na seção inversora. [4]
A seção inversora realiza a transformação do sinal contínuo em
alternado novamente para ser enviado para o motor, porém podendo ser
escolhida a freqüência dessa nova tensão alternada. A determinação dessa
nova freqüência é feita através de uma modulação por largura de pulsos
(PWM). A freqüência da onda de saída depende da freqüência de
chaveamento do controle PWM, variando assim a tensão induzida no motor,
isto é, sua velocidade. [4]
Um inversor de freqüência é constituído por alguns blocos, como: CPU,
unidade central de processamento, onde é feito o controle do chaveamento dos
transistores; IHM, uma interface homem-máquina para auxiliar o usuário a
configurar o dispositivo; Interfaces, entradas disponíveis; e etapa de potência,
circuito responsável por fornecer a potência necessária para o acionamento do
motor. [4]

Já existe uma grande variedade desses dispositivos e equipamentos


(CLPs, SDCDs e inversores de freqüência) empregados nas indústrias.
Inicialmente, esses equipamentos tinham um baixo grau de integração entre si,
mas, conforme os processos foram crescendo em complexidade e as indústrias
sofisticando seus métodos gerenciais e de produção, a necessidade de
integração dos equipamentos foi ficando cada vez maior [5]. Atendendo a essa
necessidade surgiram diversos sistemas com esse objetivo, destacando-se os
SCADA (Supervisory Control and Data Acquisition), e em particular, os
Sistemas Supervisórios (S.Ss), que compreendem o terceiro nível da pirâmide
de automação. [7]

2.2 Sistemas de Supervisão

Sistemas de supervisão são definidos como sistemas com a capacidade


de exercer controle sobre um dado sistema físico e verificar o seu desempenho
de acordo com a ação desejada. São implementados computacionalmente e
dotados de uma interface homem-máquina que permite a entrada de

8
parâmetros manualmente, além de gerar relatórios e representar fielmente o
processo. [7]
Devido a sua importância prática, os sistemas de supervisão ocupam
papel de destaque no terceiro nível da pirâmide de automação. A maioria dos
sistemas de supervisão tem em comum o fato de as entradas serem fornecidas
pelos seus operadores, como, por exemplo, receitas, dosagens, parâmetros
empíricos de correção, entre outros. Em suma, conhecimento, que, uma vez
inserido no sistema de supervisão, afeta a operação do sistema de automação
como um todo.
O termo SCADA se refere a um sistema centralizado que monitora e
controla um determinado processo, ou complexos sistemas espalhados por
grandes áreas, realizando uma comunicação remota. A maioria das ações de
controle são realizadas automaticamente pelas Unidades Terminais Remotas
(UTRs) ou pelos CLPs. As funções de controle são geralmente restritas a
intervenções de nível básico ou de supervisão. Por exemplo, um CLP pode
controlar a vazão de certo líquido de resfriamento durante parte de um
processo industrial, mas o sistema SCADA pode permitir que o operador troque
o “set-point” da vazão, habilite alarmes, apresente os valores e grave em uma
memória. [8]
Em tese, existem duas maneiras de realizar o controle dessas variáveis.
A primeira é programar a UTR ou o CLP (geralmente em linguagem Ladder)
para que eles controlem sozinhos o processo, enquanto o sistema SCADA
apenas monitora as variáveis, ou no máximo realiza uma função matemática
mais complexa que não seria possível implementar diretamente no CLP ou na
UTR. A segunda é realizar toda a programação dentro do sistema SCADA e
fazer com que o CLP ou a UTR apenas seja a interface entre o supervisório e o
sistema a ser controlado, atribuindo a ação desejada e retornando o estado das
variáveis de entrada, o que permite uma maior flexibilidade na programação.
Ambas as maneiras de realizar o controle em sistemas de supervisão
são bastante utilizadas. A escolha de qual será utilizada depende do sistema a
ser controlado e, principalmente, do software de programação que será
utilizado para fazer esse controle.
Neste trabalho, foi utilizada a segunda forma de controle, ou seja,
realizar toda a programação no sistema SCADA, já que o LabVIEW, software

9
designado para criar o sistema de supervisão, possui uma interface de
aquisição de dados propícia para uma programação dessa maneira.

2.3 Redes industriais

Retomando o conceito da pirâmide de automação, é de suma


importância entender como é feita a comunicação entre os dispositivos
existentes em um mesmo nível e, também, entre os níveis da pirâmide. Para
isso, são utilizadas redes industriais de comunicação.

2.3.1 Introdução às redes industriais

Redes industriais são definidas como sistemas distribuídos, isto é,


diversos dispositivos operando simultaneamente a fim de supervisionar e
controlar um determinado processo. Tais elementos (sensores, atuadores,
CLPs, CNCs, PCs, etc), necessitam estar interligados e trocando informações
de forma rápida e precisa. Um ambiente industrial é, geralmente, hostil, de
maneira que os dispositivos e equipamentos pertencentes a uma rede industrial
devem ser confiáveis, rápidos e robustos. [9]
As redes industriais são classificadas, basicamente, em três níveis
(conforme figura 3), de forma não exclusiva para cada um, ou seja, um
dispositivo pode estar inserido em mais de um nível dependendo da aplicação.
[10]

Fig. 3 – Níveis de redes industriais [10]

10
O primeiro, ou mais alto nível, é a camada de informação, o nível
responsável pela interligação dos equipamentos utilizados para uma análise e
planejamento da produção, como programas de agendamento, controles de
estoques ou qualidade da produção. [10]
O segundo nível, ou nível intermediário,é onde se interligam os
dispositivos de controle, por exemplo CLPs e CNCs, trafegando,
principalmente, informações sobre o estado de equipamentos como robôs ou
transportadores. [10]
O terceiro nível, ou nível mais baixo, é responsável pela comunicação
dos dispositivos do chão de fábrica, isto é, sensores, atuadores, botões,
válvulas e etc. [10]
Na figura 4 são apresentados os equipamentos existentes nos níveis de
uma rede industrial.

Fig. 4 – Equipamentos nos níveis de uma rede industrial [10]

Pode-se realizar uma divisão entre os níveis da seguinte forma:


• Rede Sensorbus - dados transmitidos no formato de bits. A rede
sensorbus conecta equipamentos simples e pequenos
diretamente à rede. Os equipamentos desse tipo de rede
necessitam de comunicação rápida em níveis discretos e são
tipicamente sensores e atuadores de baixo custo. Estas redes
não almejam cobrir grandes distâncias, sendo sua principal
preocupação manter os custos de conexão tão baixos quanto for

11
possível. Exemplos típicos de rede sensorbus incluem Seriplex,
ASi (Actuator sensor interface) e INTERBUS Loop. [9]
• Rede Devicebus - dados no formato de bytes. A rede devicebus
preenche o espaço entre redes sensorbus e fieldbus e pode cobrir
distâncias de até 500 m. Os equipamentos conectados a essa
rede terão mais pontos discretos, alguns dados analógicos ou
uma mistura de ambos. Além disso, algumas delas permitem a
transferência de blocos em uma menor prioridade comparado aos
dados no formato de bytes. Esta rede tem os mesmos requisitos
de transferência rápida de dados da rede sensorbus, mas
consegue gerenciar mais equipamentos e dados. Alguns
exemplos deste tipo são DeviceNet, Smart Distributed System
(SDS), Profibus DP, LONWorks e INTERBUS-S. [9]
• Rede Fieldbus - dados no formato de pacotes de mensagens. A
rede fieldbus interliga os equipamentos de I/O mais inteligentes e
pode cobrir distâncias maiores. Os equipamentos acoplados à
rede possuem inteligência para desempenhar funções específicas
de controle tais como loops PID, controle de fluxo de informações
e processos. Os tempos de transferência podem ser longos, mas
a rede deve ser capaz de comunicar-se por vários tipos de dados
(discreto, analógico, parâmetros, programas e informações do
usuário). Exemplos de redes fieldbus incluem, Fieldbus
Foundation, Profibus PA e HART. [9]

2.3.2 Rede Asi

A rede ASi é uma interface atuador-sensor, desenvolvida por onze


fabricantes como um sistema aberto. Esses fabricantes criaram a associação
AS-Interface com a finalidade de desenvolver todas as especificações
necessárias para este protocolo de comunicação. Por ser um sistema aberto, a
rede ASi é compatível com uma grande variedade de produtos e de diversos
fabricantes. [11]
Esta rede é orientada para a conexão de sensores e atuadores por meio
de um cabo bifilar (dois fios), com um sistema de codificação mecânica que

12
impede conexões errôneas, como por exemplo, a troca de polaridade. Uma
representação do cabo ASi é apresentada na figura 5. [11]

Fig. 5 – Cabo ASi [11]

O controle dos dispositivos envolvidos na rede ASi é feito através da


comunicação entre módulos mestre e módulos escravos. Em outras palavras,
os sensores e atuadores são conectados a um módulo escravo, o qual se
comunica com um módulo mestre, geralmente acoplado à um CLP. [12]
O endereçamento dos módulos escravos pode ser feito de duas
maneiras:
• Endereçamento automático, realizado pelo módulo mestre;
• Através de um endereçador.
Com a utilização de um endereçador é possível determinar exatamente
o endereço de cada escravo, diferentemente do modo automático, que define a
ordem de endereçamento dos escravos aleatoriamente. A figura 6 apresenta
um endereçador que independe do fabricante dos módulos mestre e escravo.

13
Fig. 6 – Endereçador ASi [11]

As principais vantagens da utilização do protocolo ASi são:


• Diminuição do número de cabos, reduzindo a complexidade das
ligações e aumentando a organização. [12]
• Protocolo aberto e simples de se instalar e manipular, gerando
diminuição dos custos. [12]
• Sistemas mestres acoplados a CLPs, facilitando o controle dos
dispositivos de campo. [12]
• Possibilidade de uma interligação de até 62 (sessenta e dois)
escravos em apenas um mestre, sendo que cada escravo
contempla até quatro dispositivos, permitindo o controle de uma
grande quantidade de sensores e atuadores. [12]
• Protocolo suportado em todo o mundo por diversos fabricantes de
atuadores e sensores. [12]
Porém, essa rede também possui algumas desvantagens, como:
• Pode-se apenas ter no máximo quatro entradas e quatro saídas
por escravo. [12]
• Os valores analógicos por estados são no máximo de 16 bits. [20]
• Pode-se utilizar no máximo um cabeamento de 100 metros sem
repetidor, ou 500 metros com repetidores. [12]
Portanto, a rede ASi é baseada na troca de informações, digitais e
analógicas, entre os escravos, sensores e atuadores, e um mestre, geralmente
um módulo do CLP.

14
A Siemens dispõe de vários modelos de módulos mestres que se
acoplam diretamente aos CLPs da série S7-300. Um deles é o módulo CP343-
2.

2.3.2.1 Módulo CP343-2

O dispositivo CP343-2 é um módulo mestre da rede ASi. Esse módulo


da Siemens, existente na planta que será apresentada, é responsável pela
comunicação entre os sensores e atuadores presentes na esteira, escravos da
rede ASi. Como este módulo está acoplado à CPU313C-2DP, é possível
manipular esses escravos através do CLP.

Fig. 7 – Representação da distribuição da rede ASi [13]

A figura 7 apresenta a interligação, descrita anteriormente, entre a rede


ASi e qualquer CLP da série S7-300 através do módulo CP343-2. Como dito
anteriormente, cada módulo escravo pode conter no máximo quatro entradas
ou saídas digitais, ou uma analógica de 16 bits, podendo ser sua comunicação
síncrona ou assíncrona. Todos os módulos são ligados através de dois cabos,
um para a alimentação de 24V e outro para o tráfego de dados. [13]

15
Pode-se visualizar na figura 8 o módulo CP343-2.

Fig. 8 – CP343-2 [13]

Como pode ser visto, o módulo CP343-2 possui LEDs em seu painel
frontal, que apresentam os estados de algumas configurações do sistema,
como: [13]
• SF: Aceso quando alguma falha no sistema é detectada, por
exemplo, uma falha interna de leitura da memória.
• RUN: Mostra que o módulo está inicializado corretamente.
• APF: Alerta para uma falha de alimentação da rede ASi.
• CER: Aponta uma falha de configuração dos escravos.
• AUP: Demonstra que a autoprogramação dos endereços dos
escravos está disponível.
• CM: Quando ligado assinala que o sistema está no modo de
configuração, quando desligado indica que está no modo
protegido.

16
• SET Button: Permite que a configuração vá para o modo
avançado. Se o botão é pressionado quando o sistema está no
modo de configuração, os escravos são automaticamente re-
endereçados. Já, se o sistema está em modo protegido, o
acionamento do botão faz com que passe para o modo de
configuração.
Os outros indicadores B, 20+, 10+ e 9 a 0, servem para indicar quais
escravos estão configurados. Esse módulo permite o endereçamento de até 62
escravos, de 1 a 31 e de 1B a 31B. Como exemplo, caso o escravo 31B
estivesse configurado, a apresentação no painel seria a seguinte: acenderiam
os LEDs B, 20+, 10+ e 1. É importante deixar claro que esses LEDs não
servem para indicar o estado de uma variável digital ligada ao escravo 31B,
inclusive porque cada escravo é dotado de 4 bits, mas sim para indicar que
esse escravo está endereçado corretamente. [13]
O endereçamento dos escravos é feito da seguinte forma:

Fig. 9 – Endereçamento dos escravos da rede ASi [13]

17
A palavra inglesa slave significa escravo, assim, a figura 9 representa o
endereçamento dos primeiros 31 escravos. Cada byte de endereço aloca dois
escravos, cada um desses com 4 bits. Esses quatro bits são as entradas ou
saídas ligadas ao escravo. Os quatro bits mais significativos do primeiro byte
são reservados para configurações internas do próprio módulo. [13]
Quando o endereçamento é feito no modo automático, isto é, sem a
utilização de um endereçador (conforme mostrado na figura 6), a ordem dos
escravos é feita de forma aleatória, sendo necessário fazer um rastreamento e
mapeamento dos endereços de cada escravo. Através do software “Step 7” é
possível apenas configurar o endereço do primeiro byte. Essa configuração
será apresentada no capítulo cinco. [13]

Ao decorrer deste capítulo pôde-se perceber que um sistema de


supervisão fornece diversos benefícios ao processo produtivo, como:
diminuição no tempo de produção; viabilidade de uma atuação rápida no
processo, corrigindo rapidamente possíveis falhas; monitoramento constante
do processo, identificando erros na produção e, assim, gerando um menor
número de produtos defeituosos; conhecimento maior das variáveis envolvidas
no processo, possibilitando a criação de um planejamento estratégico
corporativo; e uma perda menor no capital depositado na fabricação, já que a
eficiência da produção será elevada.
Portanto, para acompanhar o crescimento da complexidade dos
processos produtivos, é imprescindível que as indústrias sofistiquem os seus
métodos gerencias através da utilização de sistemas de supervisão, trazendo
para a empresa um alto retorno do capital investido. [1]
Assim, é possível ver que a criação de um sistema de supervisão que
possua como entrada as variáveis contidas em um processo produtivo é de
enorme relevância e utilidade para se aplicar as técnicas de controle e,
principalmente, para se implementar um sistema de automação completo.

18
3. Proposta do sistema a ser desenvolvido

Em função do que foi apresentado, propõe-se a criação de um sistema


de supervisão, programado através de um software de instrumentação virtual,
com capacidade de manipular dados de entrada e saída, obtidos por intermédio
de sensores e atuadores interligados a um controlador lógico programável
(CLP).
Este sistema deve ser capaz de realizar as seguintes especificações:
• Monitoramento de variáveis de entrada;
• Controle do processo dependente do estado das variáveis de
entrada e saída;
• Atuação no processo automaticamente ou através da ação de um
operador;
• Detecção de falhas de operação, como incoerência entre o
comando enviado e o que realmente está acontecendo no
processo;
• Geração de relatórios pertinentes ao processo.
Para isso, tomou-se como idéia central a criação de um sistema de
supervisão baseado no controle de tempos de um processo produtivo. Tempos
que podem ser utilizados em uma análise futura para avaliar a eficiência do
processo produtivo, completando a pirâmide de automação apresentada na
figura 1.
Então, para realizar o controle e a automação de um processo produtivo,
é imprescindível que, primeiramente, se conheça a sua planta. Essa deve
conter quais os dispositivos de instrumentação utilizados para analisar o estado
das variáveis do processo; como estes são interligados a um sistema de
controle central (por exemplo, um CLP); e quais os meios de atuação na
produção.

3.1 A planta a ser automatizada

A planta adotada para este trabalho foi o sistema flexível de manufatura


da Festo, Fábrica Multi FMS, capaz de representar as várias fases de um

19
processo produtivo, desde a usinagem de uma peça até a estocagem do
produto final.
Uma ilustração desse sistema é apresentada abaixo.

Fig. 10 – Sistema Multi FMS [14]

O sistema é constituído de múltiplas células de trabalho com unidades


de controle individuais (CLP ou unidade de controle robótico) para cada
máquina. Essas unidades de controle se localizam na parte inferior de cada
estação. [15]
A arquitetura de controle tem uma estrutura descentralizada e possui, ao
menos, quatro diferentes níveis, de acordo com os padrões industriais:
• Nível das máquinas;
• Nível de campo;
• Nível de supervisão;
• Nível de supervisão de acesso remoto.

20
Nesta tese, o estudo foi focado nos três primeiros níveis, deixando o
último como proposta para o desenvolvimento de um novo estudo.
A arquitetura de comunicação e controle das células, que serão
descritas a seguir, pode ser melhor compreendida através da ilustração
apresentada abaixo.[14]

Fig. 11 – Arquitetura do controle e comunicação entre as células [15]

Em geral, cada estação possui sensores e atuadores que se comunicam


individualmente com seus CLPs ou outros dispositivos de controle específico
(explicados posteriormente). Os CLPs de cada estação são interligados através
de uma rede PROFIBUS em que um deles é adotado como mestre da rede e
os outros como escravos, permitindo a configuração de um controle local e
centralizado a partir de apenas um CLP [14].

21
3.1.1 Estações de trabalho

As estações de trabalho existentes na fábrica Multi FMS são as


seguintes [15]:
• Estação de teste do material;
• Estação de distribuição do material;
• Robô alimentador da CNC;
• Centro de Usinagem EMCO Mill 105;
• Estação de montagem;
• Estação de manipulação em dois eixos;
• Estação de triagem;
• Estação de processamento;
• Sistema de transporte.
Será dado um enfoque maior no sistema de transporte, pois o controle
será implementado nessa parte da planta.

3.1.1.1 Estação de teste do material

Constituída por diversos sensores (capacitivos, indutivos e ópticos),


atuadores pneumáticos, botões de acionamento, chaves seletoras e Leds de
indicação. A estação de teste do material é designada para reconhecer o
material e a cor de cada peça do produto final, e também para medir o peso
dessas peças através de um sensor analógico. [14]
Esta célula possui um CLP da Siemens (CPU313C-2DP) para controle
de suas atividades. [14]
Uma foto da estação de teste é apresentada a seguir.

22
Fig. 12 – Estação de teste do material [14]

3.1.1.2 Estação de distribuição do material

Como já sugerido pelo nome, a estação de distribuição do material,


separa as diversas peças que serão utilizadas para a fabricação do produto
final. Além de também possuir sensores, botões, Leds e o CLP para controle,
esta célula possui um sugador pneumático responsável pelo transporte das
peças. [14]

Fig. 13 – Estação de distribuição do material [14]

23
3.1.1.3 Robô alimentador da CNC

Constituído por um braço robótico de 7 graus de liberdade (seis eixos de


revolução mais a garra) que tem como função alimentar e recarregar a
máquina CNC, tanto para dar início a usinagem de uma nova peça como para
recolocar na esteira uma peça que já foi usinada, dando seqüência na
produção.. [14]

Fig. 14 – Robô alimentador da CNC [14]

3.1.1.4 Centro de Usinagem EMCO Mill 105

É a máquina CNC citada anteriormente, designada para usinar as peças


que formarão o produto final.
Possui mobilidade nos três eixos (X, Y e Z) a partir de um motor trifásico,
proporcionando uma precisão na usinagem de 0,0015 mm. Diferentemente das
outras células, esta possui um computador interligado com um software
integrado de programação numérica. [14]

24
Fig. 15 –Centro de usinagem EMCO Mill 105 [14]

3.1.1.5 Estação de montagem

Nesta fase ocorre a montagem do produto final. Através de um braço


robótico e de sensores, identifica-se a coloração das diversas peças criadas no
processo e, então, encontra-se a correta orientação para a montagem final. O
braço robótico utilizado possui mobilidade cinco graus de liberdade e mais uma
garra pneumática. [14]
Esta célula, ao contrário das outras, possui um painel de programação
individual, capaz de gravar até 88 (oitenta e oito) programas com 2500 (duas
mil e quinhentas) posições em cada programa. [14]

Fig. 16 – Estação de montagem [14]

25
3.1.1.6 Estação de manipulação em dois eixos

Ela é composta por um atuador pneumático capaz de se movimentar em


dois eixos. É utilizada principalmente com o conceito de estocagem, já que
possibilita a manipulação, ou movimentação, de uma peça de uma determinada
posição para outra, tanto na direção vertical como na horizontal. [14]

Fig. 17 – Estação de manipulação em dois eixos [14][15]

3.1.1.7 Estação de triagem

Aqui acontece a triagem do produto final, isto é , a separação dos


diversos itens produzidos, já que o processo não é limitado a produzir apenas
um produto. Ela é designada pra reconhecer o tipo do item existente em sua
entrada e encaminhá-lo para uma das três diferentes saídas de acordo com as
suas características. [14]

26
Fig. 18 – Estação de triagem [14]

3.1.1.8 Estação de processamento

Nesta estação realiza-se um tratamento das peças, para que estas


correspondam às especificações desejadas. É composta puramente de
dispositivos elétricos, não se utilizando de aparelhos pneumáticos. [14]

Fig. 19 – Estação de processamento [14]

3.1.1.9 Sistema de transporte

É um sistema de transporte composto por quatro esteiras designadas


para transferir o produto por seis etapas distintas de manufatura do produto
completo, realizadas em seis das células de trabalho apresentadas. Uma foto
desse sistema é apresentada abaixo. [14]

27
Fig. 20 Sistema de transporte [14]

O controle da estação é feito pelo CLP série S7-300 da Siemens,


CPU313C-2DP, dotado de um módulo de entrada e saída (E/S) com oito bits
de entrada e oito bits de saída. [15]
Para se conectar com outro dispositivo microprocessado, por exemplo,
um computador, a CPU313C-2DP, possui uma porta de comunicação serial
(RS-232). Entretanto, essa ligação não pode ser feita diretamente. Para que
um computador consiga estabelecer uma comunicação com o CLP, tanto para
enviar como para receber dados, é necessário que o cabo ligado a essa saída
serial se conecte antes a uma placa de aquisição PROFIBUS ou um dispositivo
de interface MPI (Multi Point Interface), para, então, ser ligado ao computador.
[14]
O protocolo de comunicação MPI da Siemens é uma versão mais
simples de um protocolo PROFIBUS. Uma forma de ilustrar a comunicação do
CLP com o computador é apresentada a seguir. [16]

28
Fig. 21 – Arquitetura da conexão entre computador e CLP [16]

Esse dispositivo MPI foi especificamente projetado para o uso com


servidores OPC de 32 bits. Esse drive é utilizado com CLPs Siemens das
séries S7 300 ou 400. [16]
Como em todo protocolo de conexão, é necessária a definição de alguns
parâmetros como taxa de transmissão (Baud Rate), número de bits de dados,
paridade e quantidade de bits de parada. No caso do dispositivo MPI S7, a taxa
de transmissão pode ser tanto em 19200 baud como em 38400 baud
(selecionável através do adaptador MPI), além de possuir oito bits de dados,
paridade ímpar e um bit de parada. [16]
O sistema de transporte tem como elemento principal uma esteira. A
esteira é responsável por movimentar os carros de transporte de uma estação
de produção à outra. As esteiras são manipuladas através de quatro motores
AC, cujo acionamento é feito através de um inversor de freqüência. Como visto
anteriormente, a função deste inversor de freqüência não é apenas acionar os
motores, mas também controlar a velocidade com que esses motores atuarão
no sistema. A velocidade empregada pelo inversor de freqüência não é
controlada através do CLP, resultando na aplicação de uma velocidade sempre
constante.

29
Com a arquitetura existente, não é possível acionar um motor de cada
vez, ou seja, quando é dado um comando para uma das esteiras, todas
executarão a mesma ação. Em outras palavras, a esteira permanece sempre
em funcionamento e a parada do produto na estação é realizada por uma trava
que retém a passagem do carro de transporte, isto é, todas as esteiras são
ativadas ao mesmo tempo através do acionamento de um único bit no CLP,
enquanto cada estação possui um atuador pneumático que impede ou libera a
passagem do mesmo.
O sistema de transporte é dotado de travas pneumáticas e sensores
ópticos e indutivos presentes em cada uma das estações. As travas servem
para deter o carro de transporte até que um comando liberando sua passagem
seja enviado. Já os sensores têm como função detectar a presença ou não
desses carros.
Com isso, fica evidente a possibilidade de controlar o tempo e a posição
de cada peça em cada etapa do processo produtivo, um dos principais
objetivos de um sistema de supervisão.
Os sensores e atuadores existentes na planta são interligados e
controlados através de uma rede ASi. A partir dessa rede pode-se controlar o
estado das variáveis de cada estação, como: presença de carro, presença de
peça, identificação do carro, indicação da posição da trava de retenção e
comando dessa trava.
Cada estação possui um conjunto de seis dispositivos de
instrumentação, entre eles: três sensores indutivos, um sensor óptico, um
atuador pneumático, comandado através de uma válvula eletro-pneumática, e
um sensor de fim de curso, inserido no atuador, o qual indica sua posição.
O controle desses dispositivos envolvidos na rede ASi é feito através da
comunicação entre um módulo mestre e diversos módulos escravos, isto é, os
sensores e atuadores são conectados a um módulo escravo, que se comunica
com um módulo mestre, acoplado a um CLP [13]. O endereçamento de cada
dispositivo ligado a um escravo é mapeado em um espaço de memória do CLP
e é comandado através de um acionamento bit a bit. O módulo mestre
existente na planta é o CP 343-2, da Siemens, apresentado no capítulo
anterior.

30
Feito o endereçamento dos escravos da rede ASi é possível manipular
os estado dos sensores e atuadores contidos nessa rede através da
programação do CLP, CPU313C-2DP.

Portanto, pode-se compreender a complexidade, funcionalidade e


capacidade do sistema flexível de manufatura Multi FMS em simular
completamente um processo produtivo em um ambiente totalmente industrial
de maneira eficiente e fiel, sendo, então, uma planta ideal para a criação do
sistema proposto.

3.2 Descritivo do processo

O ponto de partida para a criação de um sistema de supervisão é o


descritivo do processo. O descritivo do processo é um documento que
especifica todas as características que o sistema de supervisão deve conter,
como, por exemplo, quais variáveis devem ser monitoradas, quais atitudes o
controle deve realizar dependo do estado destas variáveis, quais relatórios são
pertinentes ao processo, quais informações são relevantes para o usuário, etc.
Neste caso, por se tratar de um processo produtivo existente em um
laboratório, passível a inúmeras aplicações, tornou-se necessário definir quais
ações serão realizadas.
Portanto, tomando como base as especificações propostas e a planta
em questão, em particular o sistema de transporte, foram definidas as
seguintes ações para o programa:
• Monitorar o tempo de produção de cada fase do processo, desde
o instante de chegada do carro de transporte, até a devolução da
peça já processada pela estação, ou seja, o ciclo completo de
cada estação: retirada, manipulação e devolução da peça.
• Aguardar um tempo de dois segundos após detectar que a peça
foi recolocada no carro de transporte para certificar de que o sinal
recebido realmente corresponde à peça estar pronta e não a um
sinal espúrio.
• Após detectar que a peça realmente está pronta, verificar outras
duas condições: se não existe carro na estação seguinte e se não

31
está sendo enviado um comando, através de um botão, para que
o carro seja segurado na estação. Caso as três afirmações sejam
verdadeiras, liberar o carro para a próxima estação.
• Reativar a trava que segura o carro na estação após decorrer dois
segundos que o carro deixou a estação.
• Verificar se o estado da trava que segura o carro de transporte
realmente corresponde ao comando enviado para ela, gerando
uma mensagem de erro em caso de discordância.
• Identificar qual carro está na estação, já que estes são dotados de
uma codificação metálica em sua parte inferior.
• Gerar seis gráficos dos tempos de produção de cada carro em
cada estação, nos quais o eixo y demonstra o tempo de produção
de cada peça em uma mesma estação, e o eixo x, a quantidade
de carros que já percorreram aquela estação, sendo esta escala
modificada a cada inclusão de um novo dado.
• Apresentar o tempo médio de produção em cada estação.
• Apresentar uma única planilha contendo os tempos de produção
de cada peça nas seis estações.
• Conter botões de navegação entre as diferentes telas do
programa.
• Possuir uma chave que ligue ou desligue o sistema em
concordância com uma chave real existente fisicamente.
• Possuir um botão de emergência capaz de paralisar o sistema,
também em concordância com um botão real existente
fisicamente.
• Gerar um relatório com as mesmas informações contidas na
planilha que possa ser aberto em formato .xls ou .txt.
A partir dessa definição, é necessário determinar quais variáveis do
sistema estão disponíveis para realizar tais ações e quais dessas serão
utilizadas para a realização do controle.

32
3.3 Escolha das variáveis controladas

O sistema de transporte é dotado de sensores e atuadores interligados


através de uma rede ASi ao CLP. Cada estação possui um conjunto desses
sensores e atuadores. Esse conjunto é composto por:
• Um atuador pneumático que quando atuado impede a passagem
do carro de transporte.
• Um sensor que detecta quando o atuador está recuado.
• Um sensor indutivo que detecta a presença de carro na estação.
• Um sensor óptico que detecta a presença de peça em cima do
carro.
• Um sensor indutivo que detecta os pinos de identificação metálica
de cada carro.
• Um sensor indutivo entre duas estações que pode ser utilizado
para detectar a aproximação de um carro na estação ou seu
afastamento.
Além desses sinais interligados através da rede ASi, existem outros
sinais ligados diretamente no módulo de entrada e saída do CLP. Entre eles:
• Dois botões de acionamento, ligados cada um em uma entrada
digital do CLP. Cada botão possui um LED interno que é
comandado através de uma saída digital do CLP.
• Um botão que ativa e um que desativa a alimentação do inversor
de freqüência, também dotados de LEDs internos.
• Um botão de emergência ligado diretamente ao sistema de
alimentação, e não ao CLP.
• Um bit no CLP de acionamento do inversor de freqüência,
fazendo com que se movam as esteiras.
Sabendo todas as variáveis disponíveis no processo, é possível
determinar quais serão utilizadas para construir o sistema e quais as funções
que cada uma desempenhará.
Dessa forma, escolheu-se que:
• Das seis variáveis existentes em cada estação, só não será
utilizado o sensor indutivo existente entre as estações. Todas as
outras desempenharão as funções previamente descritas.

33
• O bit de acionamento da esteira será manipulado através de uma
chave no programa.
• A indicação de que o inversor de freqüência está acionado servirá
para identificar se o sistema está ligado, já que as esteiras,
elemento principal do sistema, não funcionam caso este esteja
desligado.
A partir da leitura ou atuação dessas variáveis e, ainda, da utilização de
outras variáveis internas ao programa de supervisão, que serão descritas no
próximo capítulo, é possível realizar todas as especificações mencionadas nos
itens anteriores.

Todo o controle será realizado através da CPU313C-2DP. Como todo


CLP, esse também possui a funcionalidade de se inserir um programa em sua
memória, fazendo com que as atitudes executadas sejam regidas pela lógica
inserida nesse programa. Para isso, ele possui, em específico, uma capacidade
de memória integrada de 64 KB e não possui entrada para memória externa,
ou seja, o tamanho do programa gerado pode não ser aplicável dependendo da
complexidade do controle. [14]
No entanto, uma das principais características de um sistema de
supervisão, e também foco deste trabalho, é possibilitar a comunicação do
operário com o processo em tempo real, identificando o estado de cada etapa e
podendo atuar se necessário.
Vale salientar que a Siemens dispõe de um software de programação
dos seus circuitos lógicos programáveis, o “Step 7”, que permite, de maneira
fácil e intuitiva, a criação de um programa, desde a configuração da
comunicação e escolha do seu CLP, até a criação do programa propriamente
dito, geralmente em linguagem “Ladder”. [17]
Todavia, esse software não viabiliza a criação de um sistema de
supervisão, sendo necessária, para isso, a exploração e estudo de novos
softwares. Em função disso é que se escolheu o LabVIEW, melhor detalhado
no capítulo seguinte, como ambiente de programação para a interface criada.
Visto que a partir deste sistema é possível que se faça um controle de
todas as etapas do processo produtivo, trabalho foi baseado na manipulação

34
desta célula de produção, o sistema de transporte, através de todos os
artifícios apresentados.
Para finalizar este capítulo, vale acrescentar que já existem softwares
que realizam a supervisão do processo produtivo da planta apresentada como
o CIROS® Robotics, CIROS® Studio, CIROS® Mechatronics, CAD/CAM
system – CAMConcept e 3D simulation, cada um com uma funcionalidade
específica.[14]
Porém, a proposta deste trabalho é realmente aprender a criar um
sistema de supervisão que se assemelhe com algum desses, para que,
posteriormente, possa ser implementado em um processo produtivo real, já que
a metodologia utilizada e as teorias desenvolvidas são equivalentes.

35
4. Solução de controle empregada

O mercado de automação dispõe de diversos softwares destinados à


criação de sistemas supervisórios. Escolheu-se, então, o software LabVIEW
(Laboratory Virtual Instrument Engineering Workbench), da National
Instruments, a fim de se pesquisar a possibilidade desse programa,
inicialmente voltado para uso em laboratórios, ser aplicado em um sistema de
automação de um ambiente industrial. [18]
Caso seja verificada sua aplicabilidade no sistema proposto, será
possível expandir seu estudo para a criação de sistemas especialistas de
tomada de decisões, através de controles com lógica fuzzy, por exemplo,
interligados ao sistema de supervisão central, já que este possui uma grande
flexibilidade para a criação de sistemas com aquisição de dados e
monitoramento em tempo real. [18]

4.1 LabVIEW

O LabVIEW é um ambiente de programação gráfica desenvolvido pela


National Instruments (NI). A primeira versão surgiu em 1986 para o Macintosh
e atualmente se expandiu também para plataformas em ambientes de
desenvolvimento integrados para os Sistemas Operacionais Windows, Linux e
Solaris [18].
Os principais campos de aplicação do LabVIEW são a realização de
medições e a automação. A programação é feita de acordo com o modelo de
fluxo de dados, o que oferece a esta linguagem vantagens como a rápida troca
de informação e o processamento simultâneo de variadas funções para a
aquisição de dados e sua manipulação, controle de instrumentos,
automatização de testes, processamento de sinais, controle industrial, sistemas
de supervisão e projeto embarcado. [19]

4.1.1 Metodologia de programação

Os programas em LabVIEW são chamados de instrumentos virtuais ou,


simplesmente, VIs (do inglês, Virtual Instruments). São compostos pelo painel

36
frontal, que contém a interface, e pelo diagrama de blocos, que contém o
código gráfico do programa. [18]

Fig. 22 – Painel frontal e diagrama de blocos

O programa não é processado por um interpretador, mas sim compilado.


Deste modo a sua performance é comparável à exibida pelas linguagens de
programação de alto nível. A linguagem gráfica do LabVIEW é chamada "G".
[19]
Os blocos de funções são designados por instrumentos virtuais, porque,
em princípio, cada programa pode ser tanto utilizado como sub-programa (Sub-
VI) por qualquer outro, como também pode ser executado isoladamente. [19]
O fluxo de dados é definido pelo programador através da conexão de
linhas (arames) entre os blocos de programação ou VIs. Cada VI pode possuir
entradas e/ou saídas. A execução de uma VI começa quando todas as
entradas estão disponíveis. Os resultados do processamento são então
colocados nas saídas assim que a execução do sub-programa tenha
terminado. Desta forma, a ordem pela qual as tarefas são executadas é
definida em função dos dados. Nessa linguagem de programação,
diferentemente de outras, como por exemplo a C++, não existe uma ordem pré-
definida (por exemplo, "da esquerda para a direita"). [19]
Uma importante conseqüência dessas regras é a facilidade com que
podem ser criados processos paralelos no LabVIEW. As sub-VIs sem
interdependência dos respectivos dados são processadas em paralelo. [10]

37
As sub-VIs que não possuem entradas são executadas no início do
programa. Se a sub-VI não possuir saídas, os dados resultantes são ignorados
ou, então, usados pelo exterior, escritos para o disco rígido ou para a rede, ou
enviados para impressão. Da mesma forma, uma sub-VI sem entradas pode
receber dados provenientes de aparelhos periféricos ou pode gerar os seus
próprios dados, como a utilização de um gerador de números aleatórios. [18]
Muitas VIs em LabVIEW são polimorfas, isto é, a sua funcionalidade
adapta-se ao tipo de dado que recebem. Por exemplo, a função “Build-Array”
pode ser usada para a criação de quaisquer tipos de variáveis, ou seja, strings,
inteiros e também de vetores e de clusters. Também é possível ao
programador construir as suas próprias VIs polimorfas. No fundo, consistem em
uma coleção de várias VIs com diferentes tipos de dados, entradas e saídas.
[19]
Os dados podem ser ligados ao Painel frontal através de manipuladores.
Por exemplo, a inserção de números pode ser dependente de uma barra
variável, e uma saída booleana pode ser representada por um LED colocado
no painel frontal. [19]
O painel frontal do LabVIEW é um meio fácil para construir programas
com uma boa interface gráfica. Não é necessário que o programador escreva
qualquer linha de código. A apresentação gráfica dos processos aumenta a
facilidade de leitura e de utilização. Uma grande vantagem em relação às
linguagens baseadas em texto é a facilidade com que se criam componentes
que se executam paralelamente. Em projetos de grande dimensão é muito
importante planejar a sua estrutura desde o início, como também acontece nas
outras linguagens de programação. [19]
Porém, o LabVIEW não é capaz de estabelecer uma comunicação direta
com o CLP ou um dispositivo de interface MPI. Para isso, é necessário que se
insira um protocolo de comunicação que padronize a troca de informações
entre esses dois dispositivos.
A solução encontrada para esse problema foi a utilização do padrão OLE
(Object Linking and Embedding) para controle de processos (OPC, do inglês
OLE for Process Control). [20]
Nesse padrão de comunicação um software configurado como cliente
OPC realiza a comunicação com o dispositivo físico, no caso o drive MPI, por

38
intermédio de outro software configurado como servidor OPC. Essa arquitetura
pode ser melhor compreendida com a figura 23.

Fig. 23 – Arquitetura da conexão desde o cliente OPC até o CLP

Em outras palavras, o MPI se conecta com o CLP e com o servidor


OPC, que por sua vez se conecta com o cliente OPC, neste caso, o LabVIEW,
possibilitando, assim, o controle do CLP a partir da interface criada em
LabVIEW.

4.2 Sistema OPC

O sistema OPC foi criado a partir da necessidade de algumas empresas


em desenvolver um padrão baseado na tecnologia OLE/DCOM para promover
o acesso a dados em tempo real dentro do sistema operacional do Windows.
Basicamente, o padrão OPC estabelece normas para que se desenvolvam
sistemas com interfaces padrões para comunicação de dispositivos de campo
(CLPs, sensores, atuadores, etc.) com sistemas de supervisão, monitoramento
e gerenciamento, como por exemplo, um sistema SCADA. [20]
A tecnologia OLE foi desenvolvida pela Microsoft para suprir a
necessidade de se integrar aplicações diferentes dentro da plataforma
Windows, solucionando, então, problemas de desempenho e confiabilidade do
padrão utilizado anteriormente, o DDE (Dynamic Data Exchange). [20]

39
O padrão OPC, como já dito, baseia-se em uma arquitetura servidor-
cliente, isto é, um software (servidor) realiza a configuração da comunicação
entre o CLP e o computador, enquanto um outro software (cliente OPC),
manipula os dados adquiridos e envia ações de controle, neste caso, o
LabVIEW.
Atualmente o mercado disponibiliza uma grande variedade de produtos
que se utilizam do padrão OPC para realizar a comunicação de um sistema de
supervisão com os dispositivos de chão de fábrica. Dessa forma, o padrão
OPC vem se tornando o padrão de comunicação adotado pelo mercado de
automação industrial e pela indústria. [21]

4.3 Servidor OPC

4.3.1 NI OPC Servers

A própria National Instruments dispõe de um aplicativo destinado a ser


servidor de uma comunicação OPC, chamado NI OPC Servers. O NI OPC
Servers proporciona uma interface consistente de comunicação com múltiplos
dispositivos através da adição de diversos canais de comunicação. A
combinação desse software com o LabVIEW fornece uma plataforma única
para obtenção de medições de alta performance e controle [21].

Fig. 24 – Tela principal do NI OPC Servers

40
O NI OPC Servers se conecta através do cliente OPC inserido dentro do
módulo DSC no LabVIEW (explicado posteriormente) para permitir que um
sistema de supervisão se comunique com CLP’s. [21]

4.3.2 Configuração do NI OPC Servers como servidor OPC

As configurações de comunicação entre o computador e o CLP, através


do dispositivo MPI, devem ser feitas no servidor OPC, no caso no NI OPC
Servers. Primeiramente, deve-se adicionar um novo canal, onde todas essas
especificações referentes ao dispositivo MPI, já relatadas, serão requisitadas. A
janela apresentada após essa configuração é mostrada abaixo.

Fig. 25 – Tela de configuração da comunicação com o MPI

Após configurar a comunicação do servidor OPC com o drive MPI, é


necessário realizar a configuração do CLP utilizado. Para isso, deve-se
adicionar um novo dispositivo e então inserir as informações referentes ao CLP
que será utilizado. A tela apresentada após realizar essa configuração é
mostrada abaixo.

41
Fig. 26 – Tela de configuração do CLP

Para finalizar a configuração, adicionam-se as “tags”, ou seja, as


variáveis de entrada ou saídas que serão manipuladas pelo sistema de
supervisão. Para adicionar essas “tags” é necessário saber o endereço de cada
uma no CLP. Como exemplo, configurou-se uma “tag” no endereço 124.0
(endereço da primeira entrada digital do CLP utilizado neste trabalho),
conforme apresentado abaixo.

Fig. 27 – Tela de configuração de uma “tag”

42
É possível adicionar inúmeras “tags” da mesma maneira, pois esse é um
fator que varia dependendo da aplicação.
Feito isso, já se configurou a comunicação entre o servidor OPC e o
CLP, que pode ser testada utilizando a função “Quick Client” no próprio NI OPC
Servers. Para consolidar a comunicação do LabVIEW com o CLP é necessário
configurá-lo como um cliente OPC e importar as “tags” criadas.

4.4 Cliente OPC

Para que o LabVIEW seja empregado como cliente OPC é necessária a


utilização do módulo adicional DSC (Data Supervisory and Control module). O
módulo DSC expande o ambiente de programação gráfico do LabVIEW com
funcionalidades adicionais, dentre as quais está a criação de um canal cliente
OPC capaz de se comunicar com servidores OPC. [22]

4.4.1 Módulo de Supervisão e Controle de Dados

A partir da versão 6.0, a NI (National Instruments) criou um módulo de


programação, uma biblioteca que pode ser adicionada ao LabVIEW, chamado
módulo de controle e supervisão de dados, ou DSC module (do inglês, Data
Supervisory and Control module). A partir desse módulo é possível realizar a
criação de um sistema de supervisão com comunicação em tempo real entre os
dispositivos de campo e o computador, contando, é claro, com o intermédio de
um CLP ou outro equipamento de controle de entradas e saídas. [22]
O módulo DSC expande o ambiente de programação gráfico do
LabVIEW com funcionalidades adicionais para um rápido desenvolvimento de
uma medição, controle ou aplicações de monitoramento de canais de alta
contagem. [22]
Esse módulo também reforça o compartilhamento de variáveis do
LabVIEW. É possível utilizar as variáveis compartilhadas para acessar e
transmitir dados por diversas VIs em projetos no LabVIEW ou até pela internet.
Uma variável compartilhada pode representar um valor ou um ponto de entrada
e saída (E/S). Com o módulo DSC podem-se criar dados de registro
automaticamente, adicionar alarmantes, dimensionamentos e segurança para a

43
variável compartilhada e configurar a variável compartilhada de forma
programática. [22]
Além de tudo isso, esse módulo também fornece ferramentas para
representação gráfica de históricos ou tendências em tempo real, melhorando a
segurança dos painéis frontais e a comunicação com típicos servidores de E/S.
É possível ler ou escrever através de conexões do padrão OPC ou de outros
tipos de servidores.
Concluindo, o módulo de DSC fornece soluções para o controle de
supervisão de uma grande variedade de sistemas distribuídos, permitindo que
se configure um canal servidor-cliente dentro do LabVIEW.

4.4.2 Configuração do LabVIEW como cliente OPC

A configuração do LabVIEW para trabalhar como cliente OPC pode ser


dividida em duas etapas, primeiramente deve-se criar uma comunicação do
cliente com o servidor desejado (pois podem existir mais de um em
funcionamento), e, posteriormente, importar as “tags” criadas no servidor para
que seja utilizada pelo cliente.
Para realizar a primeira fase é necessário iniciar um novo projeto (não
uma nova VI), no LabVIEW. Ao fazer isso será apresentada a seguinte janela.

Fig. 28 – Tela de navegação do projeto no LabVIEW

44
Deve-se, então clicar com o botão direito do mouse em “My Computer”,
selecionar a aba “New” e selecionar o item “I/O Server”. Esse item só será
mostrado se o módulo DSC do LabVIEW estiver instalado.

Fig. 29 – Tela de configuração de um novo servidor de entrada e saída

Com isso será apresentada uma tela que configura qual a relação que o
cliente terá com o servidor que será escolhido. Deve-se, então, clicar no item
“OPC Client” e no botão “Continue”. Após realizar essas ações, será
apresentada uma lista de servidores existentes no computador, para este
trabalho, foi escolhido o “NI OPC Servers”.

45
Fig. 30 – Configuração da comunicação entre servidor e cliente

Feito isso, será criada um biblioteca de comunicação OPC, ou melhor,


está estabelecida a comunicação entre os dois softwares, o LabVIEW e o NI
OPC Servers.
Resta, agora, importar as variáveis monitoradas pelo servidor OPC que
serão utilizadas no programa criado no LabVIEW. Para isso deve-se clicar, com
o botão direito do mouse, sobre o item da nova biblioteca criada, selecionar a
aba “New” e, por fim, o item “Variable”.

Fig. 31 – Tela de criação de uma nova variável

46
Depois disso, será apresentada a seguinte tela.

Fig. 32 – Tela de configuração da nova variável

Nessa tela é possível alterar as configurações da sua nova variável,


como, por exemplo, nome ou tipo. Para conseguir importar a variável do
servidor OPC é necessário ativar a caixa de diálogo “Bind to Source” e clicar no
botão “Browse...”. Faz-se isso para mapear o caminho que a variável está.
Para concluir a importação da variável basta apenas encontrar o
caminho da variável desejada, conforme representado na figura a seguir.

Fig. 33 – Tela de mapeamento da variável desejada

47
Nesse caso, como exemplo, está sendo adicionada a variável ATPAR1.
Esse procedimento deve ser repetido para se adicionar outras variáveis que
serão utilizadas.
Por fim, basta apenas adicionar uma nova VI e arrastar a variável
desejada para o painel frontal dessa nova VI.

Fig. 34 – Importação da variável para a VI

Dessa maneira, o LabVIEW já reconhece as variáveis monitoradas pelo


NI OPC Servers e também se comunica em tempo real com ele.
Estabelecida a conexão entre hardware e software, é possível, então,
criar todo o sistema de supervisão do processo produtivo, a fim de
desempenhar todas as funcionalidades propostas a partir da utilização das
variáveis especificadas.

48
5. Software desenvolvido

Neste capítulo serão apresentadas as diversas fases existentes na


realização de um projeto de criação de um sistema de supervisão, desde o
mapeamento do endereço das variáveis utilizadas, passando pela lógica de
programação implementada, até a interface final que será manipulada pelo
usuário e todas as suas funcionalidades.

5.1 Endereços de controle das variáveis do processo

Cada variável existente no CLP possui um endereço em um determinado


espaço de memória. As variáveis conectadas diretamente ao CLP através do
módulo de entrada e saída recebem automaticamente os endereços de I124.0
à I124.7 para as entradas, e Q124.0 à Q124.7 para as saídas, dependendo
apenas do bit em que cada variável foi ligada fisicamente no borne do módulo
de E/S do CLP.
Já as variáveis interligadas através da rede ASi seguem uma forma de
endereçamento diferente, pois se comunicam com o CLP através de um
módulo adicional acoplado a ele, o CP343-2, descrito anteriormente.
Na planta adotada, o endereçamento dos escravos é feito
automaticamente, sendo que o único parâmetro passível de escolha é o
endereço do primeiro byte, fazendo com que os outros escravos se aloquem
nos bytes seguintes. Assim, não é possível determinar o endereço exato de
cada escravo, porém é possível determinar qual faixa de memória do CLP será
utilizada para esse endereçamento.
Uma das formas de configurar esse endereço do primeiro byte é através
do próprio software de programação de CLPs da Siemens, o “Step 7”. Esse é
um software designado para configurar e programar toda linha de controladores
lógico programáveis SIMATIC da Siemens, bem como os módulos acoplados a
ele. [17]
No Step 7, para configurar um CLP, é necessário entrar no ambiente de
configuração de hardware. Nesse ambiente pode-se adicionar o CLP que será
utilizado, e também outros dispositivos ligados a ele, com o objetivo de criar
uma rede idêntica à existente fisicamente. No caso deste trabalho, foi

49
adicionado o CLP da série S7-300, CPU313C-2DP, e também o módulo ASi
CP343-2, no quarto slot dessa CPU.
Ao adicionar o módulo ASi é possível fazer alterações em suas
configurações padrões. Para isso, clica-se duas vezes sobre este módulo
fazendo com que se abra uma janela de propriedades. Na aba “endereços”
(addresses) pode-se configurar o byte de início de endereçamento dos
escravos.
O endereço do primeiro byte deve ser o mesmo tanto para as entradas
como para as saídas. Ao escolher o primeiro byte, automaticamente são
reservados 16 bytes para configuração dos endereços. [13]
Por configuração padrão, como o módulo foi adicionado no slot 4, os
endereços previamente configurados são do 256 ao 271, tanto para entradas
como para saídas. Porém, os bytes com endereço acima de 256 não são
acessíveis diretamente, ou seja, necessitam a criação de um programa que
desloque esses bytes para uma área de memória acessível, o que não é a
intenção deste trabalho. [13]
Outra solução, esta sim utilizada, é configurar um endereço de início já
em uma área acessível, como por exemplo, o endereço 10. Dessa forma, são
reservados os bytes do endereço 10 ao 25 tanto para as entradas como para
as saídas. Esta configuração é apresentada na figura abaixo.

Fig. 35 – Configuração do endereço de início dos escravos da rede ASi

50
Ao se fazer um download dessa configuração no CLP, os escravos da
rede ASi são automaticamente re-endereçados neste espaço de memória.
Porém, ainda, em uma seqüência aleatória.
Agora, com as variáveis endereçadas em locais acessíveis, é possível
manipulá-las através do software NI OPC Servers, restando apenas mapear
todas as variáveis, ou seja, descobrir exatamente qual o endereço de cada
uma.
Construiu-se então a seguinte tabela.

Tabela 1 – Tag, endereço e descrição das variáveis


TAG Endereço Nome no programa Descrição
PBATON I124.0 PBATON push boton automatic on
PBATOFF I124.1 PBATOFF push boton automatic off
PBCNTON I124.6 PBCNTON push botton controller on
PBCNTOFF I124.5 PBCNTOFF push botton controller off
KATON Q124.0 KATON indicação automatic on
KATOFF Q124.1 KATOFF indicação automatic off
KCNTON Q124.2 KCNTON indicação controller on
KCONOFF Q124.5 KCONOFF indicação controller off
KERRO Q124.3 KERRO indicação de erro
CMEST Q124.7 CMEST comando da esteira
SNPRS1 I11.4 SNPRS1 sensor de presença estação 1
SNAP1 I11.5 SNAP1 sensor de aproximação estação 1
SNPEÇ1 I11.6 SNPEÇ1 sensor de peça estação 1
SNCNT1 I11.7 SNCNT1 sensor de contagem estação 1
ATPAR1 Q11.0 ATPAR1 atuador de parada estação 1
SNATR1 I11.2 SNATR1 sensor atuador 1 em recuo
SNPRS2 I12.0 SNPRS2 sensor de presença estação 2
SNAP2 I12.1 SNAP2 sensor de aproximação estação 2
SNPEÇ2 I12.2 SNPEÇ2 sensor de peça estação 2
SNCNT2 I12.3 SNCNT2 sensor de contagem estação 2
ATPAR2 Q13.4 ATPAR2 atuador de parada estação 2
SNATR2 I13.6 SNATR2 sensor atuador 2 em recuo
SNPRS3 I14.4 SNPRS3 sensor de presença estação 3
SNAP3 I14.5 SNAP3 sensor de aproximação estação 3
SNPEÇ3 I14.6 SNPEÇ3 sensor de peça estação 3
SNCNT3 I14.7 SNCNT3 sensor de contagem estação 3
ATPAR3 Q14.0 ATPAR3 atuador de parada estação 3
SNATR3 I14.2 SNATR3 sensor atuador 3 em recuo
SNPRS4 I15.0 SNPRS4 sensor de presença estação 4
SNAP4 I15.1 SNAP4 sensor de aproximação estação 4
SNPEÇ4 I15.2 SNPEÇ4 sensor de peça estação 4
SNCNT4 I15.3 SNCNT4 sensor de contagem estação 4
ATPAR4 Q16.4 ATPAR4 atuador de parada estação 4
SNATR4 I16.6 SNATR4 sensor atuador 4 em recuo
SNPRS5 I17.4 SNPRS5 sensor de presença estação 5
SNAP5 I17.5 SNAP5 sensor de aproximação estação 5

51
TAG Endereço Nome no programa Descrição
SNPEÇ5 I17.6 SNPEÇ5 sensor de peça estação 5
SNCNT5 I17.7 SNCNT5 sensor de contagem estação 5
ATPAR5 Q17.0 ATPAR5 atuador de parada estação 5
SNATR5 I17.2 SNATR5 sensor atuador 5 em recuo
SNPRS6 I18.0 SNPRS6 sensor de presença estação 6
SNAP6 I18.1 SNAP6 sensor de aproximação estação 6
SNPEÇ6 I18.2 SNPEÇ6 sensor de peça estação 6
SNCNT6 I18.3 SNCNT6 sensor de contagem estação 6
ATPAR6 Q19.4 ATPAR6 atuador de parada estação 6
SNATR6 I19.6 SNATR6 sensor atuador 6 em recuo

Nesta tabela, são apresentadas as tags criadas no NI OPC Servers, com


o endereço exato de cada variável, o nome dessa variável no programa criado
no LabVIEW e uma breve descrição de sua função. Utilizou-se no programa a
mesma nomenclatura dada a tag para facilitar a compreensão, todavia,
poderiam ser dados nomes diferentes.
Dessa forma, todas tags podem ser criadas no NI OPC Servers e as
variáveis podem ser acrescentadas no LabVIEW, através da importação
apresentada na seção 4.4.2, e utilizadas para a criação do sistema de
supervisão.

5.2 Lógica de programação utilizada

Neste item será descrita a programação realizada para a criação do


sistema de supervisão, ou seja, será apresentada a estrutura geral do
programa e as rotinas de controle inseridas dentro dessa estrutura.

5.2.1 Estrutura geral do programa

O software LabVIEW, como visto anteriormente, utiliza uma linguagem


visual de programação, em que suas ações não seguem uma lógica
seqüencial, isto é, necessitam de funções especiais para que seja criada uma
ordem de execução do programa.
Para isso, se fez uso da função “flat seqüencie” para criar uma estrutura
de organização e ordenação do programa. Essa função faz com que o
programa seja divido em quadros, sendo cada quadro executado

52
individualmente, permitindo, assim, a separação de rotinas e a criação de uma
hierarquia de execução entre elas.
Dividiu-se, então, o programa em três quadros. No primeiro, realiza-se a
inicialização das variáveis, consistindo em atribuir valores iniciais à todas as
variáveis que necessitem conter valores exatos ao entrar em uma outra rotina.
O segundo faz com que o programa aguarde o acionamento da chave
que permite o início das rotinas de controle da produção. Em outras palavras,
aguarda que o usuário inicie o monitoramento do processo produtivo.
O terceiro e último quadro realiza todo o controle e monitoramento das
variáveis envolvidas no processo. É nesta etapa que o programa realmente
está realizando a supervisão do processo produtivo, verificando as condições
de controle estabelecidas e comunicando diretamente com os dispositivos de
campo, sensores e atuadores.
Essa seqüência de atuação dos quadros pode ser mais bem
compreendida através do fluxograma apresentado na figura a seguir.

Fig. 36 – Fluxograma da estrutura geral do programa

O programa permanece a maior parte do tempo ligado (com a chave


“Liga” acionada), ou seja, estará em execução a atividade de monitoramento e
controle, descrita nos próximos itens.

53
5.2.2 Rotinas de controle

Para facilitar e organizar a programação e melhorar o entendimento, a


fase de monitoramento do processo produtivo foi dividida em rotinas, já que
elas são de elevada complexidade devido à grande quantidade de ações que
devem ser desempenhadas simultaneamente.
São elas:
• Cálculo do tempo de produção na estação;
• Cálculo do tempo de verificação da presença da peça pronta no
carro de transporte;
• Verificação das condições para liberação do carro de transporte;
• Cálculo do tempo para reativação da trava que segura o carro de
transporte na estação;
• Cálculo da identificação do carro de transporte;
• Geração de gráficos com o tempo de produção de cada peça em
cada estação;
• Cálculo da média do tempo de produção em cada estação;
• Reunião dos tempos de produção de cada estação em uma única
planilha;
• Exportação da planilha para um arquivo em formato .xls ou .txt.

5.2.2.1 Cálculo do tempo de produção na estação

Como o programa necessita calcular o tempo de produção de diferentes


estações ao mesmo tempo, não é possível criar laços de contagem que
segurem o programa em uma única ação.
Para resolver este problema, utilizou-se de uma lógica contendo funções
“case”, as quais executam ações diferentes caso sua condição de habilitação
seja verdadeira ou falsa. Essa verificação é realizada a cada ciclo de máquina,
o que faz com que o programa não fique atrelado somente a esse laço.
Neste programa utilizou-se a função “case” apenas para realizar ações
quando em estado verdadeiro.

54
Fig. 37 – Programação da rotina de cálculo do tempo de produção na estação

O primeiro laço “case”, mostrado na figura acima, é habilitado caso haja


a presença de um carro parado na estação (determinado pela variável
“SNPRS1”) e caso a variável “Flag 11” seja verdadeira. A utilização dessa
variável “Flag 11” serve para indicar uma primeira passagem pelo laço, pois é
atribuída a ela o estado falso assim que o laço é executado. Isso faz com que o
programa execute apenas uma vez esse laço voltando a ser habilitado
novamente quando essa variável voltar a ser verdadeira.
Todas as rotinas contam com “flags” de indicação. A nomenclatura dada
a essas “flags” segue a seguinte norma: o primeiro dígito faz referência de qual
estação de trabalho essa variável é dependente, e o segundo a ordem de sua
utilização.
Nesse primeiro laço são realizadas as seguintes ações: mudanças de
estado de algumas variáveis utilizadas em outras rotinas (descritas nos
próximos itens); atribuição de um valor inicial de contagem; incrementação da
variável “contagem”, responsável por enumerar a quantidade de carros que já

55
percorreram determinada estação; e redimensionamento da variável “Vetor 1”,
vetor em que são guardados os tempos de produção de cada estação.
Após executar uma vez esse laço, o programa reverifica as condições de
habilitação de todos os laços “case” novamente. O segundo laço case depende
da permanência de um carro na estação, do estado da variável “Flag 11” estar
em falso, e do estado da variável “Flag 14” estar em verdadeiro. Essa última
variável também é utilizada como uma “flag” do sistema que indica a
identificação de uma peça pronta em cima do carrinho. A manipulação dessa
variável será mais bem apresentada na rotina de cálculo do tempo de
verificação da presença da peça no carro de transporte, entretanto, ela admite
o estado falso quando não há uma peça pronta sobre o carro, e verdadeiro
caso ocorra o contrário.
Portanto, esse laço é executado até que seja detectada a presença de
uma peça pronta sobre o carro de transporte ou que o carro seja removido da
estação. Nesse laço é realizado o cálculo do tempo de produção da peça. A
cada ciclo de máquina lê-se o tempo de execução do programa, determinado
pela variável “i”, esse valor é subtraído do número existente na variável “valor
inicial” e dividido por mil. O resultado dessa operação é guardado na variável
“cronômetro”. A divisão por mil é feita para se converter a unidade do valor de
tempo de milissegundos para segundos, dessa maneira, a precisão da
temporização é de um milissegundo.
O terceiro laço “case” existente nesta rotina é habilitado assim que o
carro deixa a estação, determinando um fim do processo de produção de uma
determinada peça nesta fase de produção, entrando, então, em um novo
estado de espera por um novo carro de transporte. Por isso, nesse laço, a
variável “Flag 11” é setada novamente como verdadeira, fazendo com que, a
medida que cheguem novos carros à estação, o primeiro laço seja re-
executado.
Também é nesse último laço que o vetor que aloca os tempos de
produção é formado (variável “Vetor 1”), acrescentando-se a ele e ao gráfico da
estação um novo valor de tempo. A cada passagem por este laço o vetor é
redimensionado e, por conseqüência, a escala x do gráfico também o é.
Uma melhor compreensão da execução dessa rotina pode ser feita
através da análise do fluxograma a seguir.

56
Fig. 38 – Fluxograma de Cálculo do tempo de produção na estação

Ao ser detectada a presença de um carro de transporte na estação,


inicia-se a contagem do tempo de produção, sendo esta incrementada até que
seja detectada a presença de uma peça pronta sobre o carro. Quando
detectada uma peça pronta, o valor da temporização é armazenado em uma
nova posição do vetor, conseqüentemente adiciona-se o valor no gráfico e
ativa-se a “flag” que permite a liberação do carro. Feito isso se aguarda a
detecção de um novo carro para ser iniciada novamente a rotina.
Vale ressaltar que simultaneamente a todo esse processo estão sendo
realizadas outras rotinas, como a de cálculo do tempo de verificação da
presença da peça pronta no carro de transporte, a qual será apresentada a
seguir.

5.2.2.2 Cálculo do tempo de verificação da presença da peça pronta sobre


carro de transporte

Como citado anteriormente, esta rotina verifica se realmente foi


recolocada uma peça pronta em cima do carro de transporte através do estado
de determinadas variáveis booleanas e do cálculo de um tempo de dois
segundos. Tempo, este, que serve para confirmar que o sinal recebido pelo
sensor óptico não seja um dado indesejado, ou seja, um bit que tenha sido
modificado por uma interferência qualquer que não seja a presença de uma
peça.
Por essa rotina também conter temporização, a lógica utilizada para sua
programação se assemelha muito com a apresentada no item anterior. Da
mesma forma, ela é composta por três laços “case”, um para determinar um

57
valor inicial de contagem, outro para realizar a contagem e um último para
finalizar a rotina.

Fig. 39 – Programação da rotina de cálculo do tempo de verificação da presença da


peça pronta no carro de transporte

O primeiro laço é habilitado quando o nível lógico do sensor óptico vai


para 1, podendo este sinal indicar a presença de uma peça ou alguma
interferência externa indesejada, e duas “flags”, representadas pelas variáveis
“Flag 12” e “Flag 13”. A variável “Flag 13” desempenha a mesma função
apresentada pela variável “Flag 11”, isto é, fazer com que o primeiro laço seja
habilitado apenas uma vez a cada ciclo de detecção de peça.
Já a variável “Flag 12” desempenha uma função diferente. Esta identifica
se a peça que o sensor óptico está detectando já foi retirada pela estação para
a produção e recolocada no carro de transporte, ou se a peça chegou junto
com o carro e ainda não foi manipulada pela estação. Sua lógica de
acionamento está inserida dentro da rotina descrita no item 5.2.2.1 e pode ser
visualizada na figura 37. Pode-se perceber que, ao detectar a presença de
carro na estação, o primeiro laço verifica se já existe peça sobre o carro, e caso

58
exista atribui-se o valor falso para essa variável, sendo que ela só assumirá
valor verdadeiro novamente quando a peça for retirada do carro pela estação.
Dessa forma, só será verificada a presença de uma peça pronta sobre o
carro de transporte se a variável “Flag 12” estiver em estado verdadeiro, ou
seja, se a peça foi recolocada pela estação no carro, garantindo, assim, uma
peça já processada pela estação.
O segundo laço “case” realiza a contagem do tempo através da variável
“Cronometro Verf pres.”. Passados dois segundos habilita-se o terceiro laço,
que modifica o estado das variáveis “Flag 13” e “Flag 14”. A primeira a fim de
reinicializar a rotina para uma nova contagem de tempo, e a última para indicar
para as outras rotinas que foi detectada a presença de uma peça pronta sobre
o carro de transporte.
O fluxograma a seguir representa melhor a seqüência de ações
desempenhadas por essa rotina.

Fig. 40 – Fluxograma da verificação de peça pronta

Monitora-se, primeiramente, a presença ou não de uma peça sobre o


carro de transporte. Caso seja detectada uma peça pelo sensor óptico, o
programa deve analisar se essa peça chegou à estação junto com o carro de
transporte e ainda não foi processada pela estação, ou se é uma peça já
manufaturada por essa fase do processo produtivo. Ao se determinar que a
peça que está sobre o carro já foi processada, deve-se contar dois segundos e
então ativar a “flag” que indica uma peça pronta, que será utilizada por outras
rotinas.

59
Após isso, deve-se liberar o carro para que este siga até a próxima
estação, porém, para isso é necessário realizar a verificação das condições
para liberação do carro de transporte, descritas no item seguinte.

5.2.2.3 Verificação das condições para liberação do carro de transporte

Esta rotina controla o estado da variável “ATPAR1”, responsável por


comandar o atuador pneumático que trava a passagem do carro de transporte
pela estação. Esta variável possui uma característica particular, ela é
normalmente fechada (NF), o que significa estar atuada quando comandada
por nível lógico zero e recuada quando em nível lógico um.
A lógica de comando desta variável é apresentada na figura a seguir.

Fig. 41 – Programação da rotina de verificação das condições para liberação do carro


de transporte

Para que esta variável assuma nível lógico alto, isto é, que o atuador se
recue, é necessário que algumas condições sejam satisfeitas: não deve existir
a presença de um carro de transporte na estação seguinte; deve ter sido
detectada a presença de uma peça nova sobre o carro (estado determinado
pela variável “Flag 14”); não deve ter sido enviado um comando de reativação
da trava (lógica comandada pela variável “Flag 16” que será explicada no item
seguinte); e não deve ter sido enviado um comando, pelo usuário, através do
botão “segurar carro”, para que o carro fique retido na estação.
O fluxograma a seguir ilustra as condições que devem ser verificadas
para que o atuador seja manipulado.

60
Fig. 42 – Fluxograma de liberação do carro de transporte

Satisfeitas todas essas condições, o atuador pneumático é acionado


liberando a passagem do carro. A trava volta ao estado atuado após decorrer a
rotina de reativação da trava.

5.2.2.4 Cálculo do tempo para reativação da trava que segura o carro de


transporte na estação

Esta rotina se inicia após a liberação do carro na estação com a


finalidade de preparar a estação para a chegada de um novo carro. Como esta
também envolve contagem de tempo, se constitui da mesma estrutura das
duas primeiras.

Fig. 43 – Programação da rotina de cálculo do tempo para reativação da trava


pneumática

61
Habilita-se o primeiro laço à medida que não se detecta mais a presença
de carro na estação. A variável “Flag 15” desempenha a mesma função das
variáveis “Flag 11” e “Flag 13”, que é fazer com que este laço seja executado
apenas uma vez em cada ciclo de produção.
O segundo laço realiza a contagem do tempo desde que o carro deixou
a estação através da variável “Cronometro Verf lib.”. Esse laço depende
também do estado da variável “Flag 17”. Essa também é uma “flag” do sistema
que, junto com a “Flag 15”, faz com que esta rotina só seja executada uma vez
após a liberação do carro, sendo reativada quando identificada a presença de
um novo carro na estação.
Passados dois segundo após a liberação do carro de transporte habilita-
se o terceiro laço. A principal função deste laço é fazer com que a trava
assuma novamente o estado atuado, para isso atribui-se o valor falso para a
variável “Flag 16”, que, como visto na seção 5.2.2.3, faz com que a variável
“ATPAR1” assuma nível lógico zero. O estado da variável “Flag 16” volta a
assumir nível lógico alto quando for detectada a presença de um novo carro na
estação, lógica apresentada anteriormente na figura 37.
A seqüência de ações desenvolvidas por essa rotina pode ser analisada
no fluxograma apresento a seguir.

Início

Não Não

Aguardar Verificar se a peça


Existe carro na Carro já foi
presença de carro Sim já foi produzida e
estação? liberado?
na estação o carro foi liberado

Contar 2 seg. que


Passaram-se Ativa flag de
carro deixou a Sim
2 seg.? retorno do atuador
estação

Não

Sim

Fig. 44 – Fluxograma de reativação da trava pneumática

Primeiramente, a rotina deve aguardar a presença de um carro de


transporte na estação. Feito isso, deve-se verificar se o carro já foi liberado

62
com uma peça pronta e, então, contar dois segundos. Passado esse tempo é
manipulado o valor da variável “Flag 16”, que faz com que uma das condições
testadas na rotina anterior se torne falsa e atuador volte ao seu estado atuado.
Juntamente a determinação de um novo valor à variável “Flag 16”, é
atribuído o valor zero para a variável “ID do carro”, esta é responsável pela
identificação de qual carro estava parado na estação. A lógica que a comanda
é descrita a seguir.

5.2.2.5 Cálculo da identificação do carro de transporte

Cada carro é dotado de uma codificação metálica em sua parte inferior e


a planta dispõe de um sensor indutivo de contagem designado para identificar
cada carro. A lógica utilizada para isto é apresentada na figura abaixo.

Fig. 45 – Programação da rotina de cálculo da identificação do carro de transporte

A lógica é constituída de dois laços que desempenham a função de um


detector de bordas de subida da variável “SNCNT1”, variável ligada ao sensor
indutivo que identifica a codificação metálica sob o carro. A cada variação da
mesma, incrementa-se o valor existente na variável “ID do carro”, realizando,
assim, a contagem do número de pinos metálicos existentes sob o carro de
transporte e, conseqüentemente, sua identificação.

63
5.2.2.6 Geração de gráficos com o tempo de produção de cada peça em
cada estação

A lógica de criação dos gráficos está inserida na contagem do tempo de


produção de cada estação, apresentada na figura 37. A criação dos gráficos é
feita a partir dos dados armazenados dentro do vetor que guarda a informação
do tempo de produção de cada peça que já passou por essa fase do processo,
como por exemplo, a variável “Vetor 1”.
O eixo das abscissas varia de acordo com a quantidade de peças
processadas pela estação (tamanho do vetor), enquanto o eixo das ordenadas
apresenta o valor de tempo contido em cada posição desse vetor.
É gerado um gráfico diferente para cada estação de produção e sua
principal função é apresentar de forma interativa a variação entre a manufatura
de diferentes peças em uma mesma fase do processo.

5.2.2.7 Cálculo da média do tempo de produção em cada estação

Da mesma maneira que é interessante analisar a variação apresentada


nos gráficos, também é extremamente útil saber a média dos tempos de
produção, para, se preciso, realizar um estudo matemático e estatístico da
produção.
A lógica utilizada para o cálculo da média é apresentada na figura
abaixo.

Fig. 46 – Programação do cálculo da média do tempo de produção em cada estação

Foi utilizada uma função pré-existente chamada “mean”. Essa função


calcula a média dos valores contidos em um vetor. O resultado é guardado em
uma variável float (flutuante), como por exemplo “Média 1”, e apresentada para
o usuário.

64
5.2.2.8 Reunião dos tempos de produção de cada estação em uma única
planilha

Esta rotina consiste em unir os vetores que armazenam os tempos de


produção de cada estação em uma única planilha. Para isso, utilizou-se,
primeiramente, da função “Build Array”. A partir dela ordenam-se os vetores em
linhas subseqüentes dando origem a uma matriz.

Fig. 47 – Lógica utilizada para reunir os tempos de produção de cada estação em uma
única planilha

Por questão de estética, escolheu-se que cada estação seria


apresentada em uma coluna da planilha, sendo necessário, então, calcular a

65
transposta da matriz criada. Para isso, utilizou-se da função “Transpose 2D
Array”.
Para apresentar os dados dessa matriz em uma planilha legível para o
usuário utilizou-se uma função chamada “Table Control”. Porém, para os dados
serem adicionados nela é necessário converte-los em “string”, e para isso fez-
se uso da função “Number To Fractional String”. Essa função permite formatar
a palavra que será escrita na planilha, bem como definir a precisão do dado.
Neste ínterim, manteve-se a precisão de três casas decimais.

5.2.2.9 Exportação da planilha para um arquivo em formato .xls ou .txt

Nesta rotina é criado um banco de dados com o histórico da


temporização em todas as estações, contendo os mesmos dados apresentados
na planilha citada anteriormente.

Fig. 48 – Programação da exportação da planilha para um banco de dados

66
A ativação desta rotina é feita através do acionamento de um botão
(“Gerar Relatório”). Nela são utilizadas duas funções específicas: “Write To
Spreadsheet File” e “Write To Measurement File”.
A primeira transforma os dados contidos na matriz gerada em uma folha
de dados pronta para se criar o arquivo. Nesta função é dado o caminho em
que o arquivo será gerado e se será um novo arquivo ou substituirá um arquivo
existente. Caso não seja dado um caminho para o arquivo na programação,
este será requisitado pelo usuário à medida que a função for executada.
O segundo define algumas características específicas do arquivo e
finaliza a sua criação. Entre suas configurações estão o nome do arquivo que
será gerado, seu formato, seu delimitador de linhas e a disposição de suas
colunas.
A criação desse banco de dados faz com que seja possível a utilização
dos dados adquiridos durante todo o monitoramento do processo de produção
por um sistema especialista de tomada de decisões inteligente, baseado no
comportamento do tempo de produção em cada fase de manufatura.

5.3 Interface com o usuário

Assim como a lógica de programação inserida no sistema de supervisão,


a interface criada para interagir com o usuário também é de extrema
importância. Através dela o usuário poderá monitorar o processo, tomar
decisões e atuar de forma imediata.
Por isso, é essencial que o sistema criado apresente os dados de forma
bem visível, de fácil entendimento e manipulação.
A interface criada possui três telas:
• Visão Geral: É a tela principal do programa, onde são
indicados os estados das variáveis adquiridas no processo,
resultando em um acompanhamento real de toda a produção.
• Gráficos: Nesta tela é apresentado um histórico dos tempos de
produção em cada estação de trabalho, através de gráficos
individuais.

67
• Análise de Dados: Tela em que são mostrados os dados de
temporização de todas as estações em uma só planilha com o
mesmo formato do arquivo gerado no banco de dados.

5.3.1 Visão Geral

Conforme citado anteriormente, nesta tela o usuário pode acompanhar


em tempo real sua produção, sabendo, por exemplo, quais estações estão em
funcionamento. Esta tela é apresentada na figura abaixo.

Fig. 49 – Tela “Visão Geral”

Ela é constituída de:


• Uma chave que liga o sistema de supervisão;
• Um botão que desliga a esteira previamente acionada pela
chave “Liga”. Caso o botão “Desliga esteira” seja desacionado
e a chave “Liga” permaneça acionada, a esteira volta ao
estado ligado;
• Um indicador de conectividade do sistema posicionado entre
as figuras do computador e do CLP;
• Indicadores de carro na estação, peça pronta, tempo de
produção, identificação do carro de transporte e estado do
atuador para cada estação de manufatura;

68
• Seis botões, um para cada estação, que realizam a retenção
do carro de transporte na estação independente de qualquer
outra variável;
• Dois botões de navegação entre as telas: “Gráficos” e
“Analisar Dados”;
• Um botão para gerar o relatório das temporizações calculadas.

A navegação entre as telas também pode ser realizada através das abas
posicionadas no canto esquerdo superior.
Portanto, nesta tela, o usuário consegue acompanhar todo o processo
de forma clara, saber os dados referentes a cada estação de produção e atuar
no processo de forma imediata se necessário, parando a esteira ou impedindo
a passagem de um carro de transporte pela estação.

5.3.2 Gráficos

Esta segunda tela da interface pode ser vista na figura abaixo.

Fig. 50 – Tela “Gráficos”

Nela são apresentados os gráficos dos tempos de produção de cada


peça em cada estação de trabalho. Os dois eixos dos gráficos têm sua escala
ajustada automaticamente, o eixo “y” varia de acordo com o valor das

69
temporizações e o eixo “x” pelo número de peças já processadas por
determinada estação.
São indicadas também a média do tempo de produção e o número total
de peças já manipuladas por cada estação.
Ela contempla ainda dois botões no seu lado esquerdo, que possibilitam
a navegação para as outras telas do programa.

5.3.3 Análise de dados

Nesta tela são apresentadas todas as temporizações adquiridas por


cada estação de trabalho do processo produtivo em uma única planilha. Ela
pode ser vista na figura abaixo.

Fig. 51 – Tela “Análise de Dados”

Nela é possível visualizar o tempo exato da manufatura de uma peça em


específico em determinada estação de produção, permitindo a rastreabilidade
de erros pertinentes ao processo produtivo.

Além das funcionalidades específicas de cada tela, a interface possui,


também, uma mensagem de alerta de discordância entre o comando enviado
para o atuador de liberação do carro de transporte, presente em cada estação,
e sua real posição, como mostrado abaixo.

70
Fig. 52 – Mensagem de alerta de discordância entre comando e posição real

Essa discordância pode ser dada por uma falha na comunicação entre
os dispositivos de campo e o CLP, uma falha no dispositivo de instrumentação,
uma falha no compressor de ar ou nos cabos que ligam esse compressor ao
atuador, já que o mesmo é pneumático.

Portanto, teoricamente, a partir da interface com o usuário criada


podem-se ser desenvolvidas todas as ações propostas na especificação do
sistema, restando realizar testes que comprovem essa efetividade.

71
6. Resultados

Para implementar completamente o sistema e testar o software de


supervisão criado, utilizou-se o sistema flexível de fabricação Multi-FMS da
FESTO. Conforme visto anteriormente, essa é constituída de múltiplas células
de trabalho e unidades de controle individuais (CLP ou unidade de controle
robótico) para cada máquina. A interligação entre as células de trabalho é feita
a partir de um sistema de transporte, dotado de quatro esteiras comandadas a
partir de um CLP.
O sistema de transporte dispõe de todos os dispositivos citados
anteriormente (CLP, sensores e atuadores), se assemelhando completamente
com a planta proposta.
O monitoramento e atuação em tempo real do estado das variáveis do
processo produtivo é feito na tela principal da interface, tela “Visão Geral”,
possibilitando, assim, uma tomada de decisão imediata, como a paralisação
total da produção ou a inativação momentânea de cada estação.

Fig. 53 – Tela “Visão Geral” em funcionamento

A partir da figura 53, é possível analisar o sistema de supervisão sendo


executado. Este está acionado através da chave “Liga” e a conectividade entre

72
o computador e o CLP está válida. Neste caso, três estações estão em
funcionamento, 2, 4 e 6, enquanto as outra três ainda não foram ativadas.
Pode-se perceber, também, que as três estações em atividade estão
realizando rotinas independentes. Enquanto a estação de número 2 indica a
presença de um carro de transporte sem a presença de uma peça pronta e
continua realizando a contagem do tempo, a estação de número 4 já detectou a
presença de uma peça pronta e está liberando o carro de transporte. Já a
estação de número 6, indica que o atuador está recuado, ou seja, o carro de
transporte já foi liberado, pois já foi detectada a presença de uma peça pronta,
porém este ainda não saiu completamente da estação de trabalho.
Por outro lado, verificou-se, também, que a rotina de identificação dos
carros não desempenhou o comportamento esperado. Esse fato se deu pela
taxa de leitura das variáveis pelo software NI OPC Servers ser mais lenta do
que a de mudança do estado do sensor indutivo que identifica a codificação
metálica sob o carro de transporte.
A velocidade de locomoção do carro de transporte é de 0,125m/s e a
distância entre os pinos metálicos de 0,01m, resultando em uma taxa de
mudança de estado de 80ms. Como a taxa de scan (leitura) das variáveis é
configurada em 100ms no mínimo, ocorre uma perda de dados referente às
informações adquiridas pelo sensor indutivo.
Para solucionar esse problema poderia ter sido utilizado um outro
programa servidor OPC com a taxa de atualização mais rápida da leitura das
variáveis de entrada e saída. Outra forma seria implementar a lógica de
identificação diretamente no CLP através de uma programação em “ladder”,
por exemplo. Entretanto, ambas soluções apresentadas fogem da proposta
apresentada e podem ser utilizadas como um futuro objeto de pesquisa.
Juntamente a execução dessa primeira tela, as outras também estão
realizando suas funções, conforme apresentado a seguir.

73
Fig. 54 - Tela “Gráficos” em funcionamento

Pode-se verificar nessa tela que cada estação está registrando tempos
de produção distintos e os apresentando em gráficos particulares, bem como a
quantidade de carros que já passaram pela estação e a média dos tempos
registrados. Através dessa figura, pode-se notar a facilidade de se detectar
uma variação anormal no tempo de produção e em qual iteração foi essa
variação.
Uma das características principais do sistema criado é a rastreabilidade
de erros, pois se o processo produtivo for totalmente automatizado é possível
detectar falhas em uma determinada fase do processo a partir dos gráficos dos
tempos de produção em cada estação, indicadas por uma variação incomum
no tempo de produção. Caso as fases de manufatura sejam realizadas por um
operário é possível monitorar sua eficiência comparada a de outros na mesma
fase do processo, detectando gargalos da produção.

74
A figura abaixo apresenta a última tela do programa em execução.

Fig. 55 - Tela “Análise de Dados” em funcionamento

Notas-se que as temporizações realmente foram registradas e


apresentadas para o usuário com a precisão de três casas decimais, conforme
projetado. A partir da planilha pode-se identificar o tempo de produção de cada
iteração em cada estação de forma precisa.
Levando em conta que o objetivo de um sistema de supervisão é estar
em funcionamento por um longo período de horas ou até dias, a quantidade de
dados apresentados na planilha pode ser muito grande, fazendo-se necessária
a utilização de um apontador que facilite a utilização da tabela. A planilha
criada contém em seu canto esquerdo superior essa funcionalidade, permitindo
a rápida navegação por qualquer linha ou coluna da tabela.
Foi testada, também, a situação em que uma estação de trabalho já
finalizou o processo pertinente a ela, porém não pode liberar o carro de
transporte, pois a próxima estação ainda está ocupada. Essa simulação é
apresentada na próxima figura.

75
Fig. 56 – Situação de estação posterior ocupada

Analisando essa figura, é possível perceber que a estação de número 4


já detectou a presença de uma peça pronta, porém ainda não liberou a saída
do carro de transporte, pois a estação posterior a ela, de número 5, ainda está
ocupada.
Outra situação também simulada foi a do usuário impedir a liberação do
carro de transporte através do acionamento do botão “Segura Carro”,
apresentada a seguir.

76
Fig. 57 – Situação de carro retido através da ação do usuário

É ppssíve perceber que na estação de número 3 foi detectada a


presença de uma peça pronta, porém não foi enviado comando de recuo para o
atuador, já que houve uma intervenção do usuário. Fica, assim, evidente a
possibilidade de o usuário atuar em tempo real no processo sem precisar
paralisar, também, as outras etapas de produção.
Por fim, testou-se de forma eficaz a criação de um banco de dados com
os mesmo dados apresentados na planilha. A partir desse histórico gerado é
possível integrar a monitoração da fábrica com um sistema de tomada de
decisão inteligente. Esse sistema terá como entrada uma base de dados com
os tempos de produção de cada estação, e como saída comandos de atuação
direta no processo visando uma melhora na sua eficiência.
Portanto, foi possível realizar testes e simulações de um processo
produtivo real, comprovando a funcionalidade e efetividade do sistema de
supervisão projetado, criado através do software LabVIEW, em um ambiente
industrial completo, contendo todas as especificações propostas pertinentes a
um sistema de supervisão, entre elas, monitoramento em tempo real dos dados
de entrada, atuação imediata no processo, rastreabilidade de erros e geração
de um histórico da produção.

77
7. Conclusão

As expectativas são de que o mercado de automação industrial


mantenha um elevado crescimento nos próximos anos, já que as empresas
serão cada vez mais forçadas a melhorar a qualidade de seus produtos, bem
como sua taxa de produtividade, em função da acirrada competitividade
econômica. [1]
Assim, projetos de automação que reduzam custos, acelerem e,
principalmente, aperfeiçoem a produção, a partir da utilização de novas
tecnologias, serão de extrema valia dentro dessa atual dinâmica de mercado.
Desse modo, se faz fundamental a existência de sistemas que permitam
a tomada de decisões mais efetivas e inteligentes, através do monitoramento
minucioso do processo produtivo, papel desempenhado pelos sistemas
supervisórios.
Por isso, neste trabalho, foi proposta a criação e implementação de
um sistema de supervisão de um setor de uma fábrica (esteiras de transporte)
com sensores e atuadores interligados a um CLP através de uma rede ASi.
Para tal, foi utilizado um ambiente de programação gráfico, o LabVIEW, cuja
comunicação com o CLP foi feita através de um padrão OPC e de um protocolo
de comunicação MPI.
Verificou-se que a rede ASi é uma forma econômica e muito eficiente
de se interligar atuadores e sensores a um CLP, e também, que o padrão OPC
adotado foi uma boa alternativa para consolidar a comunicação entre o
LabVIEW e os instrumentos de campo.
Comprovou-se a possibilidade da utilização do software LabVIEW
para criação de sistemas de supervisão completos em um sistema de produção
industrial, permitindo, assim, a fácil integração deste sistema criado com outros
de controle inteligente.
Com isso foi visado o controle dos tempos em cada fase do processo
produtivo, possibilitando a atuação manual e automática no mesmo, e a
geração de dados para documentação, que permitirão análises matemáticas
mais específicas e guiarão um posterior planejamento estratégico, tema
sugerido para um futuro e complementar estudo.

78
A funcionalidade e efetividade do sistema desenvolvido foram
confirmadas a partir de testes e simulações realizadas num ambiente físico
semelhante ao proposto, réplica de uma fábrica completa, cujas outras fases
do processo podem ser, também, automatizadas através da aplicação desse
mesmo modelo apresentado. Vale ressaltar, ainda, que sua aplicação pode ser
estendida a qualquer tipo de processo produtivo.
Portanto, fica evidente a grande necessidade e a possibilidade de se
prosseguir com os estudos e desenvolvimento de projetos nessa área,
buscando trazer novos métodos, conceitos e soluções tecnológicas a esse
setor, como a inserção de novos softwares em um processo industrial e a
criação de sistemas que adquiram e forneçam dados para a criação de um
sistema mais completo e totalmente automatizado.

79
Referência Bibliográfica

[1] Gutierrez, R.M.V.; Pan, S.S.K. Complexo Eletrônico: Automação do


Controle Industrial. BNDES Setorial. p. 189-232. 2008
[2] Webb J.; Greshock K. Industrial Control Eletronics, Maxwell Macmillan
International Editions, 1992. 593p.
[3] Souza, M. de; Pereira, S. L.- Tecnologia Da Informação Como
Ferramenta De Suporte A Decisão E Gestão Nos Processos De
Automação Das Instalações Operacionais De Saneamento, IEEE, 2008.
6p.
[4] Pessen, D. W. Industrial Automation – Circuit Design and Components,
Wiley, Nova York, 1989. 507p.
[5] Michel G. Programmable Logic Controllers , John Wiley & Sons, 1990.
330p.
[6] Silva, M. E.; Controladores Lógicos Programáveis, EEP, 2007. 40p.
[7] Jardini, J. A. Sistemas Digitais para Automação Da Geração,
Transmissão e Distribuição de Energia Elétrica FCA, Gráfica e Editora,
1996. 237p.
[8] Gomi E. S. Inteligência Artificial e Programação em Lógica e suas
Aplicações nos Sistemas de Supervisão e Controle de Sistemas de
Potência, São Paulo, Escola Politécnica, 1989. 132p.
[9] OLIVEIRA, L., Redes para Automação Industrial, 2005.
[10] MONTEZ, C., Redes de Comunicação Para Automação Industrial,
2005.
[11] Siemens Energy & Automation – AS-Interface Devices, Micro PLC’s &
Accessories Catalog. 2009. 16p.
[12] IFM Efector inc. – Actuator Sensor-Interface – 2010. 17p.
[13] Siemens – CP343-2 AS-Interface Master – 2008. 127p.
[14] Festo – Didatic katalog – 2009. 328p.
[15] Pettai, E. Description of Multi FMS system, 2006. 12p.
[16] Kepware Technologies - Siemens S7 MPI Device - Driver Help – 2009.
13p.

80
[17] Step 7 <http://www.automation.siemens.com/MCMS/SIMATIC-
CONTROLLER-SOFTWARE/EN/STEP7/Pages/Default.aspx> Acessado em
23/04/2010
[18] National Instruments <http://www.ni.com/labview/whatis/>. Acessado em
10/12/2009
[19] CLARK, C. L.. Labview – Digital Signal Processing and Digital
Communications. New York: McGrawn-Hill, 2005.
[20] Fonseca, M. de O.; Comunicação OPC – Uma abordagem prática, 2002.
12p.
[21] NI OPC Servers
<http://search.ni.com/nisearch/app/main/p/q/ni%20opc%20servers/>.
Acessado em 13/12/2009
[22] National Instruments – DSC Module,
<http://digital.ni.com/manuals.nsf/websearch/43FEE675DA9EFA34862575F
5002CD00E>. Acessado em 11/12/2009

81

Você também pode gostar