coleta de dados de chão de fábrica via rede serial rs-485 para
TRANSCRIPT
Universidade Estadual de Londrina Centro de Tecnologia e Urbanismo – CTU Departamento de Engenharia Elétrica
PEDRO GUILHERME SANTOS NOGUEIRA
COLETA DE DADOS DE CHÃO DE FÁBRICA VIA
REDE SERIAL RS-485 PARA UM SOFTWARE MES
UTILIZANDO CLPS
Londrina
2010
ii
PEDRO GUILHERME SANTOS NOGUEIRA
COLETA DE DADOS DE CHÃO DE FÁBRICA VIA
REDE SERIAL RS-485 PARA UM SOFTWARE MES
UTILIZANDO CLPS
Trabalho de Conclusão de Curso
submetido à Universidade Estadual de
Londrina como parte dos requisitos para a
obtenção do grau de Engenheiro
Eletricista.
Orientador: Prof. Dr. Leonimer Flávio de
Melo
Londrina
2010
iii
PEDRO GUILHERME SANTOS NOGUEIRA
COLETA DE DADOS DE CHÃO DE FÁBRICA VIA
REDE SERIAL RS-485 PARA UM SOFTWARE MES
UTILIZANDO CLPS
Trabalho de Conclusão de Curso
apresentado ao Departamento de
Engenharia Elétrica da Universidade
Estadual de Londrina.
COMISSÃO EXAMINADORA
______________________________________
Prof. Dr. Leonimer Flávio de Melo.
Universidade Estadual de Londrina
______________________________________
Prof. Dr. Ruberlei Gaino
Universidade Estadual de Londrina
______________________________________
Prof. Dr. Aziz Elias Demian Junior
Universidade Estadual de Londrina
Londrina, 3 de Novembro de 2010
iv
A minha família e amigos
v
AGRADECIMENTOS
Agradeço em primeiro lugar a minha família, principalmente aos
meus pais, Luiz Antônio Barbieri Nogueira e Isa Maria Santos Nogueira, que sempre
me apoiaram e me deram tudo que podiam, não só durante este trabalho, mas
sempre.
Aos meus amigos e colegas de curso, principalmente ao pessoal do
Tomelirolla F.C., que fizeram desta etapa da minha vida inesquecível. Mesmo as
partes que não me lembro.
Ao meu orientador, Leonimer Flávio de Melo, pelo incentivo e
direcionamento, sempre preciso e objetivo.
Ao S.E. Palmeiras pelos diversos momentos de alegria em suas
vitorias. Também ao Corinthians pelos diversos momentos de alegria em suas
derrotas.
Por fim, agradeço a tudo que de alguma maneira esteve presente
durante esta etapa da minha vida. Menos ao PT.
vi
“Onde há educação não há distinção de classes.”
Confúcio.
vii
Santos Nogueira, Pedro Guilherme. Coleta de dados de chão de fábrica via rede serial RS-485 para um software MES utilizando CLPs. 2010. Trabalho de Conclusão de Curso (Graduação em Engenharia Elétrica) - Universidade Estadual de Londrina.
RESUMO
Este trabalho busca detalhar e embasar um projeto de coleta de dados da produção, no chão de fábrica, por um conjunto de CLP (Controlador Lógico Programável) e IHM (Interface Homem-Máquina) através de uma rede serial RS-485 via protocolo Modbus para um software MES (Manufacturing Execution System). Primeiro serão apresentados os conceitos sobre as diversas áreas de conhecimento abordadas no trabalho para em seguida mostrar como foi realizado o projeto. Este desenvolvimento foi dividido em duas partes. A primeira diz respeito aos componentes e estruturas físicas utilizadas para a implantação. A segunda trata mais diretamente do firmware produzido para os CLPs mostrando alguns trechos interessantes do programa. Com a implantação do projeto já em andamento, verificou-se a usabilidade e o ganho proporcionado por este sistema de acompanhamento da execução da manufatura.
Palavras-chave: Automação industrial. Controlador Lógico Programável. Rede serial RS-485. Ladder. Sensores. Software MES.
viii
Santos Nogueira, Pedro Guilherme. Collecting of factory floor data through serial network RS-485 to a MES software using PLCs. 2010. Course Conclusion Paper (Electrical Engineering Graduation) – State University of Londrina.
ABSTRACT
This study aims to detail and to base a project to collect production data, on the factory floor, for a set of PLC (Programmable Logic Controller) and HMI (Human Machine Interface) through a serial network RS-485 using Modbus protocol for a software MES (Manufacturing Execution System). In the first part will be presented the concepts about the many knowledge areas used in this work to then show how the project was conducted. This development was divided into two parts. The first concerns the physical components and structures used for implantation. The second deals more directly with the firmware produced for the PLCs, showing some interesting parts of the program. With the implementation of the project already underway, had been verified the usability and improvement provided by this manufacturing execution system. Key-words: Industrial Automation. Programmable Logic Controller. RS-485 serial network. Ladder. Sensors. MES Software.
ix
LISTA DE SIGLAS E ACRÔNIMOS
ABNT – Associação Brasileira de Normas Técnicas ASCII – American Standard Code for Information Interchange CLP – Controlador Lógico Programável CPU – Central Processing Unit – (Unidade Centrar de Processamento) CTS – Clear to Send EI – Estado Interno FBD – Function Block Diagram (Diagrama de Blocos Funcionais) IEC – International Eletrotechnical Commision IHM – Interface homem-máquina IL – Instruction List (Lista de Instruções) I/O – Imput / Output – (Entrada / Saída) LD – Ladder Diagram (Diagrama de Escada) MES - Manufacturing Execution System NA – Normalmente aberto NF – Normalmente fechado PDU – Protocol date unit – (Unidade de dados de Protocolo) RS – Regularization Standart RTS – Ready to Send SCADA - Supervisory Control and Data Aquisition SFC – Structured Function Chart ( Quadro de Funções Estruturadas – Grafcet)
x
LISTA DE TABELAS
Tabela 1 - Linguagens de programação definidas pela norma IEC 61131-3 ........... 15
Tabela 2 - Operadores padrões para ST pela norma IEC 61131-3 .......................... 17
Tabela 3 - Principais funções em IL para um CLP WEG .................................... ......19
Tabela 4 - Endereços de memória para as funções em IL para um CLP WEG . ......19
Tabela 5 - Funções básicas mais utilizadas do protocolo MODBUS ........................ 40
Tabela 6 - Propriedades elétricas do cabo Draka 2x2x22 AWG ............................. 52
xi
LISTA DE FIGURAS
Figura 1 - Arquitetura básica do CLP ....................................................................... 06
Figura 2 - Diagrama de blocos sobre o funcionamento do CLP. .............................. 08
Figura 3 - Fluxograma do funcionamento da CPU do CLP ...................................... 09
Figura 4 - Portas lógicas básicas e suas respectivas representações em Ladder .. 11
Figura 5 - Elementos básicos da programação Ladder ............................................ 11
Figura 6 - Estrutura da programação em Ladder. .................................................... 12
Figura 7 - Equivalência de uma função booleana em Ladder .................................. 13
Figura 8 – Evolução da norma IEC 61131-3 ............................................................ 15
Figura 9 - Exemplo de programa em FDB ................................................................ 18
Figura 10 - Exemplo de programa em Ladder e em IL para CLP da WEG .............. 19
Figura 11 - Estrutura genérica do GRAFCET ........................................................... 21
Figura 12 - Exemplo de IHM padrão ALTUS ............................................................ 22
Figura 13 - Exemplo de IHM com tecnologia Touch Screen .................................... 23
Figura 14 – Configuração genérica de um transdutor em um processo qualquer .... 25
Figura 15 – Esquema elétrico dos terminais do sensor de contato mecânico .......... 26
Figura 16 – Constituição e funcionamento de um sensor de fim de curso ............... 26
Figura 17 – Sensor de fim de curso ......................................................................... 27
Figura 18 – Sistema de um sensor óptico do tipo barreira ....................................... 27
Figura 19 – Sistema de um sensor óptico do tipo difuso .......................................... 28
Figura 20 – Sistema de um sensor óptico do tipo reflexão ....................................... 29
Figura 21 – Sistema de um sensor analógico potenciométrico de posição .............. 29
Figura 22 – Frame de dados em uma rede RS-232 ................................................. 31
Figura 23 – Pinagem para RS-232 conector DB9 .................................................... 33
Figura 24 – Topologias de rede ................................................................................ 35
Figura 25 – Configuração da rede serial com os resistores de terminação .............. 36
Figura 26 – Configuração de um terminal com resistores de terminação e BIAS .... 37
Figura 27 – Quadro para MODBUS em barramento serial ....................................... 39
Figura 28 – Arquitetura padrão de um sistema MES ................................................ 43
Figura 29 – Interface do sistema Guenka – MPI ...................................................... 45
Figura 30 – Estrutura genérica utilizada para a construção das redes seriais ......... 47
xii
Figura 31 – Configuração dos extremos de cada rede com o resistor terminal de
120Ω inserido ......................................................................................... 48
Figura 32 – Configuração de uma célula de coleta de dados genérica .................... 49
Figura 33 – Conjunto CLP/IHM ................................................................................ 49
Figura 34 – Visão geral dos CLPs da série Expert DX ............................................. 50
Figura 35 – Visão geral dos CLPs da série Expert BF ............................................. 51
Figura 36 – Seção transversal do cabo 2x2x22AWG da draka e alguns dados sobre
o mesmo ................................................................................................. 52
Figura 37 – Linha de pintura automatizada .............................................................. 54
Figura 38 – Configuração da linha de sensores ....................................................... 54
Figura 39 – Vista frontal de uma seccionadora genérica com um sensor analógico
instalado ................................................................................................. 55
Figura 40 – Vista lateral de uma seccionadora genérica com um sensor analógico e
um digital instalado ................................................................................. 56
Figura 41 – Sensor analógico de posição do tipo potenciômetro ............................. 56
Figura 42 – Interface do software de programação WinSUP 2 ................................ 59
Figura 43 – Interface do software de programação A1 ............................................ 60
Figura 44 – Máquina de estados para o Back-end ................................................... 62
Figura 45 – Máquina de estados para o Front-end .................................................. 63
Figura 46 – Figura 46 – Estrutura do firmware ......................................................... 64
Figura 47 – Funcionamento de máquinas de estados em Ladder ............................ 65
Figura 48 – Estrutura do contador total de tempo para base de cálculo de utilização
da esteira ................................................................................................ 66
Figura 49 – Estrutura dos contadores de utilização para cada sensor ..................... 67
Figura 50 – Estado da máquina no instante da captação do valor máximo do sensor
analógico ................................................................................................ 68
Figura 51 – Estado da máquina no instante da captação do valor mínimo do sensor
analógico ................................................................................................ 69
Figura 52 – Divisão seriada da leitura de cada CLP pelo servidor ........................... 70
Figura 53 – Estrutura genérica para uma FILA de 32 registros ................................ 72
Figura 54 – Lógica para atualizar as telas para o CLP da série Expert BF
programado no software A1 ................................................................... 73
Figura 55 – Quadro de configuração da função de comparação automática de
registros .................................................................................................. 74
xiii
Figura 56 – Lógica para atualizar as telas para o CLP da série Expert DX
programado no software WinSUP2 ........................................................ 75
Figura 57 – Gráfico de utilização de uma determinada máquina e a peças produzidas
pela mesma em um determinado turno de produção ............................. 78
Figura 58 – Gráfico de utilização de uma determinada máquina e a peças produzidas
pela mesma em um determinado turno de produção ............................. 78
Figura 59 – Lista de eventos, em aberto ou finalizados, em uma determinada
máquina .................................................................................................. 79
Figura 60 – Gráfico discreto de peças produzidas durante um determinado turno de
produção ................................................................................................. 80
Figura 61 – Diagrama de blocos do sistema ............................................................ 80
xiv
SUMÁRIO
1 INTRODUÇÃO ......................................................................................................... 1
1.1 CONTEXTO ........................................................................................................... 1
1.2 OBJETIVO ............................................................................................................ 2
1.3 JUSTIFICATIVA ...................................................................................................... 2
1.4 ORGANIZAÇÃO DO DOCUMENTO ............................................................................. 3
2 CONTROLADOR LÓGICO PROGRAMÁVEL E IHMS............................................ 4
2.1 O CONTROLADOR LÓGICO PROGRAMÁVEL ............................................................. 4
2.2 ARQUITETURA BÁSICA DO CLP ............................................................................. 6
2.3 PRINCÍPIO DE FUNCIONAMENTO DO CLP ............................................................... 8
2.4 CLASSIFICAÇÃO DOS CLPS .................................................................................. 9
2.5 LÓGICA BINÁRIA E A LINGUAGEM LADDER ............................................................ 10
2.6 NORMA IEC 61131 - 3 ....................................................................................... 13
2.7 LINGUAGENS DE PROGRAMAÇÃO DEFINAS PELA IEC 61131 - 3 .............................. 15
2.7.1 Texto Estruturado (ST) .............................................................................. 16
2.7.2 Diagrama de Blocos (FBD) ....................................................................... 17
2.7.3 Lista de Instruções (IL) .............................................................................. 18
2.7.4 Seqüenciamento Gráfico de Funções (GRAFCET) ................................... 20
2.8 IHMS ................................................................................................................ 21
3 SENSORES E REDES SERIAIS ........................................................................... 24
3.1 SENSORES ........................................................................................................ 24
3.1.1 Sensores Elétricos .................................................................................... 25
3.1.2 Sensor de Contato com Acionamento Mecânico ...................................... 26
3.1.3 Sensores Ópticos ...................................................................................... 27
3.1.4 Sensores analógicos de Posição .............................................................. 29
3.2 REDES SERIAIS ................................................................................................. 30
3.1.1 Comunicação de Dados ............................................................................ 30
3.1.2 Canais de Comunicação ........................................................................... 31
3.1.3 Comunicação Serial .................................................................................. 31
3.1.4 Rede Serial RS-232 .................................................................................. 32
3.1.5 Rede Serial RS-485 .................................................................................. 33
xv
3.1.6 Canal de Comunicação para RS-485 ........................................................ 34
3.1.7 Topologias de Rede para RS-485 ............................................................. 35
3.1.8 Resistores Terminais e Diferenciais .......................................................... 36
4 PROTOCOLO MODBUS E SOFTWARES SUPERVISÓRIOS .............................. 38
4.1 PROTOCOLO MODBUS ........................................................................................ 38
4.1.1 História ...................................................................................................... 38
4.1.2 Definição ................................................................................................... 38
4.1.3 O Quadro MODBUS .................................................................................. 39
4.2 SOFTWARES MES - MANUFACTURING EXECUTION SYSTEM ..................................... 41
4.2.1 Definição ................................................................................................... 41
4.2.2 Funcionamento e Arquitetura .................................................................... 42
4.2.3 Guenka - MPI ............................................................................................ 44
5 ESTRUTURA FÍSICA E HARDWARES................................................................. 46
5.1 ESTRUTURAS MACRO E CELULAR DO PROJETO .................................................... 46
5.2 CLPS ATOS-SCHNEIDER ..................................................................................... 50
5.2.1 Expert DX .................................................................................................. 50
5.2.2 Expert BF .................................................................................................. 51
5.3 CABO DE REDE RS-485 ...................................................................................... 52
5.4 CONVERSOR SERIAL-ETHERNET ......................................................................... 53
5.5 SENSORES DIGITAIS ÓPTICOS ............................................................................. 53
5.6 SENSOR ANALÓGICO DE POSIÇÃO ....................................................................... 55
6 SOFTWARES E FIRMWARE ................................................................................ 57
6.1 SOFTWARES DE PROGRAMAÇÃO DOS CLPS .......................................................... 57
6.1.1 WinSUP2 - Expert DX ............................................................................... 57
6.1.2 A1 -Expert BF ............................................................................................ 59
6.2 ESTRUTURA DO FIRMWARE ................................................................................. 60
6.3 MÁQUINAS DE ESTADO EM LADDER ...................................................................... 65
6.4 LÓGICA PARA OBTER UTILIZAÇÃO DA ESTEIRA ...................................................... 66
6.5 CONTAGEM DE CHAPAS COM SENSOR ANALÓGICO ................................................ 68
6.6 MODELO DE COMUNICAÇÃO POR EVENTOS ........................................................... 70
6.7 LÓGICA PARA MUDANÇAS DE TELAS NA IHM ........................................................ 73
xvi
7 ANÁLISE DOS RESULTADOS ............................................................................. 77
8 CONCLUSÃO ........................................................................................................ 81
REFERÊNCIAS BIBLIOGRÁFICAS ......................................................................... 83
APÊNDICE ................................................................................................................ 84
APÊNDICE A - CÓDIGO PARA COLETAR NÚMERO DE CHAPAS CORTADAS ........................ 84
ANEXOS ................................................................................................................... 88
ANEXO A - CARACTERÍSTICAS GERAIS DA SÉRIE EXPERT DX ...................................... 88
ANEXO B - ESQUEMAS DE LIGAÇÃO PARA O MODELO EXPERT DX 2450.10 P ............... 89
ANEXO C - ESQUEMAS DE LIGAÇÃO PARA O MODELO EXPERT DX 2450.70 P ............... 90
ANEXO D - CARACTERÍSTICAS GERAIS DA SÉRIE EXPERT BF ....................................... 91
ANEXO E - ESQUEMAS DE LIGAÇÃO PARA O MODELO EXPERT BF 2850.20 N ............... 92
1
1 INTRODUÇÃO
1.1 Contexto
A atual demanda industrial para obter uma gama maior de dados
sobre a produção, assim como recursos para efetuar um controle ágil e eficiente
sobre os processos, fez da coleta automática de dados junto a softwares
supervisórios, uma das soluções mais procuradas e eficientes no mercado
industrial. A cada dia, mais e mais indústrias e empresas buscam substituir a velha
forma de registros feitos manualmente por um sistema informatizado e rápido.
Dentro deste contexto, a crescente substituição destes processos
manuais gerou uma escassez de oferta de sistemas automáticos para o controle da
produção. Tentando cobrir está brecha no mercado, este trabalho busca mostrar a
elaboração de um projeto para a coleta de dados para ser entregue a um software
MES (Manufacturing Execution System). Primeiramente será apresentada uma
revisão de bibliografia sobre todos os aspectos utilizados no projeto para em
seguida mostrar mais detalhadamente o projeto em si. Para isto, este trabalho
divide-se em duas partes com intuito de facilitar a compreensão do mesmo. A
primeira destina-se a parte física do projeto, onde estão inseridos os componentes e
hardwares necessários para a implementação, desde a rede para a comunicação
dos dados, até o processamento dos dados captados (CLP - Controlador Lógico
Programável) pelos transdutores automáticos (sensores) e manuais (IHM –
Interface Homem-Máquina). A segunda parte destina-se a elaboração do firmware
para o CLP, responsável pelo processamento lógico das entradas captadas, para
assim enviar pela rede ao programa supervisor.
Esta primeira etapa do projeto, destinada aos hardwares, se divide
em: Rede Serial RS-485; Conversor serial-ethernet; CLP; IHM; Sensores. Este
capítulo procura mostrar a estrutura física utilizada para captar, processar e enviar
os dados da produção para o servidor onde há um programa supervisório. Para isto
serão vistos os sensores utilizados diretamente sobre a produção, que são os
responsáveis por fazer as medidas automáticas. Os dados inseridos manualmente
pelos operadores das máquinas serão obtidos através de uma IHM que é
2
diretamente ligada ao CLP. Serão também mostradas as características deste
conjunto CLP/IHM. Após a captação e um tratamento preliminar, estes dados são
enviados, via protocolo Modbus por uma rede serial até o ponto onde um conversor
serial-ethernet os envia ao servidor.
O seguinte capítulo - 6 - é destinado à programação dos firmwares
para os CLP/IHMs. Primeiramente serão detalhados os dois tipos de softwares de
programação utilizados. Também serão mostradas algumas técnicas de
programação utilizadas assim como trechos relevantes do código produzido.
1.2 Objetivos
Este trabalho busca detalhar as etapas e características
necessárias para a elaboração de um projeto de coleta de dados industriais por
controladores lógicos programáveis. Como um todo, este trabalho procura embasar
teoricamente todos os passos e detalhes utilizados na confecção do projeto em
geral. Para que com isto, este sirva de auxílio para a elaboração de projetos com
intuitos semelhantes ou mesmo para estudos nas áreas de automação industriais,
envolvendo controladores lógicos programáveis ou demais tópicos abordados pelo
trabalho.
Paralelamente, um dos objetivos deste trabalho é por em prática e
verificar todo o aprendizado do autor durante a graduação, enfocando nas áreas de
produção industrial, programação e redes de comunicação.
1.3 Justificativa
Este trabalho surge de um projeto realizado e implantado pelo
graduando durante um estágio curricular realizado em uma empresa de
desenvolvimento de softwares. O projeto foi elaborado para uma indústria de
grande porte do setor moveleiro do norte paranaense. Para a implantação do
sistema de monitoramente e gerenciamento oferecido pela empresa, a indústria se
viu à necessidade de obter um sistema de coleta de dados sobre sua produção.
3
1.4 Organização do documento
A apresentação do trabalho está organizada segundo os seguintes
tópicos:
No capítulo 2, serão apresentados conceitos teóricos e históricos
sobre os controladores lógicos programáveis e suas IHMs.
No capítulo 3, serão introduzidos os fundamentos e conceitos sobre
sensores e redes de comunicações seriais.
O capítulo 4 será destinado aos conceitos e características do
protocolo de comunicação serial Modbus e dos softwares supervisórios.
No capítulo 5 estarão descritas as especificidades físicas do projeto.
O capítulo 6 é utilizado para descrever os detalhes e técnicas
utilizadas na programação do firmware dos CLPs.
O capítulo 7 será dedicado à discussão e considerações a respeito
dos resultados obtidos com a implantação do projeto.
Por fim, as conclusões estão presentes no capítulo 8.
No final do trabalho, encontrar-se-ão alguns apêndices com partes
do programa utilizados no projeto, bem como anexos contendo materiais
informativos, como manuais e datasheets.
4
2 CONTROLADOR LÓGICO PROGRAMÁVEL E IHMS
Neste capítulo serão introduzidos os conceitos sobre os
controladores lógicos programáveis e interfaces homem-máquina.
2.1 CONTROLADOR LÓGICO PROGRAMÁVEL
O CLP ou Controlador Lógico Programável pode ser definido,
segundo a norma ABNT (Associação Brasileira de Normas Técnicas), como um
equipamento eletrônico-digital compatível com aplicações industriais. Os CPLs
também são conhecidos como PLCs, do inglês: Programmable Logic Controller.
Na década de 60, o aumento da competitividade fez com que a
indústria automotiva melhorasse o desempenho de suas linhas de produção,
aumentando tanto a qualidade como a produtividade. Fazia-se necessário encontrar
uma alternativa para os sistemas de controle a relés. Uma saída, possível,
imaginada pela General Motors (GM), seria um sistema baseado no computador.
Assim, em 1968 , a divisão Hydramatic da GM determinou os critérios para projeto
do PLC , sendo que o primeiro dispositivo a atender às especificações foi
desenvolvido pela Gould Modicion em 1969 [1].
Sob a liderança do engenheiro Richard Morley, foi preparada uma
especificação que refletia as necessidades de muitos usuários de circuitos e relés,
não só da indústria automobilística como de toda a indústria manufatureira. Nascia
assim um equipamento bastante versátil e de fácil utilização, que vem se
aprimorando constantemente, diversificando cada vez mais os setores industriais e
suas aplicações, o que justifica hoje um mercado mundial estimado em 4 bilhões de
dólares anuais [2]. As principais características desejadas nos novos equipamentos
eram:
Menor espaço
Menor consumo de energia elétrica
Reutilizáveis
5
Programáveis
Maior confiabilidade
Maior flexibilidade
Maior rapidez na elaboração dos projetos
Interfaces de comunicação com outros CLPs e computadores
Inicialmente, os PLCs eram chamados PCs – Programmable
Contrllers, mas com o advento dos computadores pessoais (PCs – Personal
Computers), convencionou-se PLCs para evitar conflitos de nomenclatura.
Originalmente os PLCs foram usados em aplicações de controle discreto (on/off –
liga/desliga), como os sistemas a relés, porém eram facilmente instalados,
economizando espaço e energia, alem de possuírem indicadores de diagnósticos
que facilitavam a manutenção. Uma eventual necessidade de alteração na lógica de
controle da máquina era realizada em pouco tempo, apenas com mudanças no
programa, sem necessidade de alteração nas ligações elétricas [1].
A década de 70 marca uma fase de grande aprimoramento dos
CLPs. Com as inovações tecnológicas dos microprocessadores, que deram maior
flexibilidade e um grau maior de inteligência, os Controladores Lógicos
Programáveis incorporam:
1972. Funções de temporização e contagem;
1973. Operações aritméticas, manipulação de dados e
comunicação com computadores;
1974. Comunicação com Interfaces Homem - Maquina;
1975. Maior capacidade de memória, controles analógicos e
controles PID;
1979/80. Módulos de I/O remotos, módulos inteligentes e
controle de posicionamento.
6
Nos anos 80, os aperfeiçoamentos descritos abaixo foram atingidos,
fazendo do CLP um dos equipamentos mais atraentes na Automação Industrial. A
possibilidade de comunicação em rede (1981) é hoje uma característica
indispensável na indústria. Além dessa evolução tecnológica, foi atingido um alto
grau de integração, tanto no número de pontos como no tamanho físico, que
possibilitou o fornecimento de minis e micros CLPs ( a partir de 1982) [1].
Atualmente, Os CLPs apresentam as seguintes características:
Módulos de I/O de alta densidade (grande numero de pontos I/O por módulo);
Módulos remotos controlados por uma mesma CPU;
Módulos inteligentes (co-processadores que permitem realização de tarefas
complexas: Controle de PID, posicionamento de eixos, transmissão via radio
ou modem, leitura de código de barras);
Softwares de programação em ambiente Windows (facilidade de
programação);
2.2 Arquitetura básica do CLP
Genericamente o CLP se divide em CPU, entradas, saídas e um
software para programação da lógica a ser executada pela CPU. Para ilustrar temos
a figura abaixo:
Figura 1 – Arquitetura básica do CLP.
7
A CPU de um PLC compreende os elementos que formam a
“inteligência” do sistema: O Processador e o Sistema de Memória por meio do
Programa de Execução (desenvolvido pelo fabricante) interpretam e executam o
Programa de Aplicação (desenvolvido pelo usuário), e gerencia todo o sistema. Os
circuitos auxiliares de controle atuam sobre os barramentos de dados (data bus), de
endereços (address bus) e de controle (control bus), conforme solicitado pelo
processador, de forma similar a um sistema convencional baseado em
microprocessador [1].
Entradas Digitais: São entradas que recebem sinais que assumem
apenas 2 níveis, 0 e 1, 0v ou 5v, 0v ou 24v, 0v ou 220v. Estes sinais podem vir de
chaves fim de curso, botões de painéis elétricos, sensores do tipo ON/OFF, etc.
Entradas Analógicas: São entradas que recebem sinais que
podem assumir vários valores dentro de uma faixa determinada de tensão ou
controle. Estes sinais podem vir de sensores de temperatura, velocidade, nível, e
que sejam proporcionais, ou seja, enviam um sinal que varia de 0v a 10v, por
exemplo, para informar a temperatura exata do processo naquele instante.
Saídas Digitais: São saídas que enviam sinais que podem assumir
apenas 2 níveis de tensão, 0v ou 24v, por exemplo, e podem ser utilizados para
acionar um motor, uma bomba, etc.
Saídas Analógicas: São saídas que enviam sinais que podem
assumir vários níveis de tensão dentro de uma determinada faixa, por exemplo, 0v a
10v.
Software: Existem vários fabricantes de CLPs , e cada um tem o
seu próprio software com suas particularidades , como por exemplo a forma de dar
nomes a cada entrada que podem ser:
I32.0 , I32.1 .... I32.7 , I33.0 ...I33.7 ( padrão Siemens )
E0.0 , E0.1... E0.7, E1.0 , ... E1.7 ( padrão Altus )
I0 , I1 , I2 ( padrão WEG )
8
%I0.0 , %I0.1 , %I0.2 ( padrão Telemecanique )
%MX0 , %MW20 , %IX1 , %QX0 ( Norma IEC 61131-3 )
Mas quando o assunto é programação existem 03 formas básicas
de programar em PLC : Ladder (linguagem de contatos) , Blocos , Lista de
instruções ( semelhante a Assembly ) , em todos os CLP modernos existem estas
formas de programação , variando alguns recursos que alguns fabricantes tem a
mais , a forma de programar é idêntica . Portanto se você souber programar bem
em um determinado fabricante, para programar em CLPs de outros fabricantes não
será difícil [1]. Embora estas três linguagens de programação sejam as mais
básicas, existem outros tipos como o texto estruturado e o GRAFCET.
2.3 Princípio de funcionamento do CLP
O diagrama de blocos externo mais simples sobre o funcionamento
do CLP é o mostrado na figura abaixo:
Figura 2 – Diagrama de blocos sobre o funcionamento do CLP.
Os sinais de entrada e saída dos CLPs podem ser digitais ou
analógicos. Existem diversos tipos de módulos de entrada e saída que se adéquam
as necessidades do sistema a ser controlado. Os módulos de entrada e saídas são
compostos de grupos de bits, associados em conjunto de 8 bits (1 byte) ou conjunto
de 16 bits, de acordo com o tipo da CPU. As entradas analógicas são módulos
conversores A/D, que convertem um sinal de entrada em um valor digital,
normalmente de 12 bits (4096 combinações). As saídas analógicas são módulos
conversores D/A, ou seja, um valor binário é transformado em um sinal analógico.
Os sinais dos sensores são aplicados às entradas do controlador e a cada ciclo
9
(varredura) todos esses sinais são lidos e transferidos para a unidade de memória
interna denominada memória imagem de entrada. Estes sinais são associados
entre si e aos sinais internos. Ao término do ciclo de varredura, os resultados são
transferidos à memória imagem de saída e então aplicados aos terminais de saída
[2]. Este ciclo esta representado na figura 3.
Figura 3 – Fluxograma do funcionamento da CPU do CLP.
2.4 Classificação dos CLPs
A Embora existam algumas divergências entre autores e fabricantes
quanto aos critérios de classificação, os CLPs podem ser divididos em grupos
específicos de acordo com a estrutura que apresentem (especificamente
relacionada à quantidade de Pontos de I/O que a CPU pode controlar e a
quantidade de memória de programação disponível) [3]:
Micros CLPs (até 64 Pontos de I/O e até 2Kwords de
memória)
Pequenos CLPs (de 64 a 512 Pontos de I/O e até 4Kwords
de memória)
10
CLPs Médios (de 256 a 2048 Pontos de I/O e dezenas de
Kwords de memória)
CLPs Grandes (acima de 2048 Pontos de I/O e centenas de
Kwords de memória)
Em 1997, CLPs com até 14 Pontos de I/O e tamanho muito
reduzido foram lançados no mercado, tendo sido denominados pelos fabricantes de
Nanos CLPs.
Entre os Micros e Pequenos CLPs, ainda é possível encontrar outra
divisão:
CLPs Compactos: que têm quantidade fixa de Pontos de I/O.
CLPs Modulares: que permitem a configuração, por parte do
usuário, da quantidade e combinação dos Pontos de I/O.
Em alguns CLPs Compactos, é possível a adição de Pontos de I/O
por meio de „blocos‟ de expansão, com limite determinado pelo fabricante, porém
apresentam poucas opções de configuração [3].
2.5 Lógica Binária e a linguagem Ladder
A lógica matemática ou simbólica visa superar as dificuldades e
ambigüidades de qualquer língua, devido a sua natureza vaga e equívoca das
palavras usadas e do estilo metafórico e, portanto, confuso que poderia atrapalhar o
rigor lógico do raciocínio. Para evitar essas dificuldades, criou-se uma linguagem
lógica artificial. A lógica binária possui apenas dois valores que são representados
por : 0 e 1. A partir desses dois símbolos se constrói então uma base numérica
binária. A partir desses conceitos foram criadas as portas lógicas, que são circuitos
utilizados para combinar níveis lógicos digitais de formas específicas [2].
11
Figura 4 – Portas lógicas básicas e suas respectivas representações em ladder.
Os CLPs vieram a substituir elementos e componentes eletro-
eletrônicos de acionamento e a linguagem utilizada na sua programação é similar à
linguagem de diagramas lógicos de acionamento desenvolvidos por eletrotécnicos e
profissionais da área de controle, esta linguagem é denominada linguagem de
contatos ou simplesmente LADDER. A linguagem Ladder permite que se
desenvolvam lógicas combinacionais, seqüenciais e circuitos que envolvam ambas,
utilizando como operadores para estas lógicas: entradas, saídas, estados auxiliares
e registros numéricos. A figura 5 mostra os 03 principais símbolos de programação
Ladder
Figura 5 – Elementos básicos da programação Ladder.
Uma boa definição para a linguagem Ladder é:
“O diagrama de contatos (Ladder) consiste em um desenho formado por duas linhas
verticais, que representam os pólos positivo e negativo de uma bateria, ou fonte de
alimentação genérica. Entre as duas linhas verticais são desenhados ramais
horizontais que possuem chaves. Estas podem ser normalmente abertas, ou
fechadas e representam os estados das entradas do CLP (Marcelo Euípedes.)”
12
O nome Ladder deve-se à representação da linguagem se parecer
com uma escada (do inglês, ladder), na qual duas barras verticais paralelas são
interligadas pela Lógica de Controle, formando os degraus (do inglês, rungs) da
escada. Portanto, a cada Lógica de Controle existente no Programa de Aplicação
dá-se o nome de rung, a qual é composta por Colunas e Linhas. [4]. Os degraus
são divididos em duas zonas conforme ilustra a figura 6. A zona da esquerda pode ser
chamada de zona de testes e é a região que contém a lógica da função booleana. A
zona da direita é chamada de zona de ação e representa a saída da função booleana.
Figura 6 – Estrutura da programação em Ladder.
Fazendo uma avaliação genérica e de forma “elétrica” sobre a
linguagem Ladder, seu funcionamento consiste em criar uma lógica de acordo com
os requisitos do problema, de modo que uma corrente fictícia chegue à zona de
ação. Logo, para o rung 1, composto pelas linhas 1 e 2, temos a função booleana
𝑀0 = (𝐼1.0 + 𝑀0) × 𝐼1.1 , ilustrada pela figura 7.
13
Figura 7 – Equivalência de uma função booleana em Ladder.
Com o advento de novas tecnologias, foram incorporadas novas
funções e blocos lógicos à linguagem ladder. Hoje em dia cada fabricante, modelo e
classe de CLPs têm funções e operações específicas. A norma IEC 61131-3
estabelece um conjunto de linguagens, operadores e funções necessárias para um
CLP, como veremos no capítulo a seguir.
2.6 Norma IEC 61131-3
O grupo de trabalho, International Electrotechnical Commission (IEC
Comissão Eletrotécnica Internacional) foi organizado em 1979 para estudar e
avaliar o projeto completo dos controladores lógico programáveis, incluindo o
projeto do hardware, a instalação, os testes, a documentação, a programação e as
comunicações. O IEC como uma organização irmã da International Standardisation
Organization (ISO - Organização Internacional de Normatização) fundada em
Genebra na Suíça, tem comitês e grupos de trabalho formados a partir de
representantes da maioria de países industriais do mundo que põem a frente
procedimentos de padronização [5].
Durante os anos 1990, O IEC publicou várias partes do padrão IEC
61131 que cobre o ciclo completo dos CLP s, que são:
Parte 1 - Definição da informação geral, da terminologia
básica e dos conceitos; Publicado em 1992.
14
Parte 2 - Exigências de equipamento e testes eletrônicos e
testes mecânicos de construção e verificação; Publicado em
1992.
Parte 3 - Estrutura do Software do CLP, execução do
programa e linguagens de programação; Publicado em 1993.
Parte 4 - Guia de orientação ao usuário na seleção,
instalação e manutenção de CLP s; Publicado em 1995.
Parte 5 - Facilidade do Software em especificação de
mensagens de serviços a comunicar-se com outros
dispositivos usando as comunicações baseadas em MAP
(Manufacturing Messaging Services); Publicado em 1998.
Parte 6 - Comunicação via facilidade do Software fieldbus
para comunicação de PLC s utilizando IEC fieldbus;
Aguardando fechamento do padrão fieldbus.
Parte 7 - Programação utilizando Lógica Nebulosa (Fuzzy);
Publicada em 1997.
Parte 8 - Guia para implementação das linguagens;
A figura 8 ilustra a evolução da norma IEC 61131-3.
A norma proporciona que sejam desenvolvidos ambientes de
programação capazes de decompor programas complexos em diferentes elementos
de software, os quais possuem uma interface padronizada e bem definida entre os
mesmos. São definidas 5 linguagens de programação para o desenvolvimento de
módulos ou componentes de software. A programação é orientada para o
desenvolvimento de programas a partir da abordagem de cima para baixo (top-
down) e de baixo para cima (botton-up) [5], baseada em três princípios:
15
Figura 8 – Evolução da norma IEC 61131-3.
Modularização - decomposição de qualquer sistema,
complexo ou não, em partes menores capazes de serem
gerenciáveis;
Estruturação - forma hierárquica utilizada para a
programação em níveis facilitando a modularização e
reutilização de blocos;
Reutilização - de funções, de blocos funcionais ou
programas.
2.7 Linguagens de programação definas pela IEC 61131 - 3
O A norma IEC 61131-3 define 05 linguagens de programação:
Texto Estruturado (ST-Structured text)
Textuais
Lista de Instruções (IL-Instruction List)
Diagrama de Blocos Funcionais (FBD - Function Block Diaggrams) Gráficas
16
Diagrama Ladder (LD-Ladder Diagram)
Gráficas
Seqüenciamento Gráfico de Funções (GRAFCET)
Tabela 1 – Linguagens de programação definidas pela norma IEC 61131-3.
A norma IEC 61131-3 define elementos comuns às 05 linguagens
de programação com o intuito de padronizar o correto entendimento, como variáveis
e tipos de dados para permitir a utilização de qualquer linguagem de
programação [5].
Ainda a linguagem gráfica Ladder é a mais utilizada para a
programação de CLPs. Sua descrição foi detalhada no item 2.5. As demais
linguagens definidas pela norma IEC 61131-3 serão descritas nos itens seguir.
2.7.1 Texto Estruturado (ST)
É uma linguagem de alto nível com sintaxe similar ao Pascal,
desenvolvida especificamente para controle industrial usada para descrever o
comportamento de:
Funções;
Blocos Funcionais;
Programas;
Passos, ações e transições da linguagem SFC.
É uma linguagem de fácil assimilação para os desenvolvedores de
programas, pois permite uma fácil interpretação pelo uso de identificadores de fácil
entendimento, associados a comentários. É muito útil para o desenvolvimento de
cálculos aritméticos complexos, pois é só digitar a fórmula em questão [5]. Os
operadores padrão segundo a norma IEC 61131-3 são:
17
Tabela 2 – Operadores padrões para ST pela norma IEC 61131-3.
2.7.2 Diagrama de Blocos (FDB)
O diagrama de blocos é adotado principalmente por CLPs de
pequeno porte, usados para processos reduzidos de automação ou para realizar
funções específicas dentro de processos maiores. Alguns fabricantes chamam tais
CLPs de relés programáveis ou ainda, relés inteligentes. Dois grandes fabricantes
desses equipamentos são a WEG e a SIEMENS, que produzem o CLIC e o LOGO!
respectivamente. Devido ao tamanho e custo reduzidos, esses CLPs são usados,
também, para automação residencial, como controle de iluminação externa, alarme,
controle automático de persianas, etc [4].
Uma vantagem desses equipamentos é a opção de programá-los
em campo, possível graças a um teclado e um display – IHM (Interface Homem-
Máquina) – no próprio CLP, dispensando o uso de computador e cabo de dados
para transferir o programa a ser executado. Justamente pela presença da IHM e
pela simplicidade de programação, o FBD é uma linguagem que está disponível
nesses equipamentos [4]
18
.
Figura 9 – Exemplo de programa em FDB.
2.7.3 Lista de Instruções (IL)
É uma linguagem de baixo nível, compacta e próxima da linguagem
de máquina, caracterizada pelo uso de mnemônicos pra representar funções da
lógica booleana – AND, OR, NOT, etc. – e outras funções utilizadas em linguagem
de programação de microcontroladores como LOAD, STORE, SET, RESET, etc. [4].
A linguagem é ideal para resolver problemas simples e pequenos,
onde existem poucas quebras no fluxo de execução do programa. Pela norma, IL é
uma linguagem adicional, menos amigável e flexível e que pode ser usada para
produzir código otimizado para trechos de desempenho crítico em um programa [5].
As tabelas 3 e 4 mostram as principais funções em IL e a sintaxe
para seus endereços de memória para um CLP WEG. A figura 10 mostra um
exemplo de um programa em IL e sua respectiva transcrição em Ladder.
19
Tabela 3 – Principais funções em IL para um CLP WEG.
Tabela 4 – Endereços de memória para as funções em IL para um CLP WEG.
Figura 10 – Exemplo de programa em Ladder e em IL para CLP da WEG.
20
2.7.4 Seqüenciamento Gráfico de Funções (GRAFCET)
A linguagem de Seqüenciamento Gráfico de Funções (SFC), ou
Grafcet (Graphe Fonctionnel de Command Etape-Transition), é baseada nas
técnicas correntes para descrever o comportamento seqüencial. Universidades
francesas desenvolveram uma linguagem de representação de processos
seqüenciais baseada nas Redes de Petri, o Grafcet. O Grafcet se tornou um padrão
europeu com a introdução do padrão IEC 848: Preparation of function charts for
control system. Muitos fabricantes europeus de CLPs oferecem Grafcet como uma
linguagem gráfica. A norma IEC 61131-3 introduziu algumas modificações no
padrão IEC 848 visando integrar esta quinta linguagem às demais linguagens da
norma [5].
Uma seqüência em SFC é composta por uma série de passos
(Steps) mostrados como retângulos conectados por linhas verticais, onde cada
passo representa um estado particular programado em qualquer uma das demais
quatro linguagens IEC (ST, FBD, LD e IL) e até em SFC.
Cada linha de conexão possui uma barra horizontal representando
uma transição, a qual é associada a uma condição que, quando verdadeira (TRUE),
causa a desativação do passo anterior e a ativação do passo seguinte. Uma
transição recebe um nome (T1, T2, T3, etc...) e está programada nas linguagens
ST, FBD, LD, IL.
Cada passo pode ter uma ou mais ações associadas que é
representada por um ou mais programas e podem ser descritos utilizando-se uma
das quatro linguagens IEC: ST, FBD, LD ou IL. O fluxo é de cima para baixo (top-
down), mas ramos podem ser usados para retornar para passos anteriores.
A figura 11 ilustra de forma genérica a estrutura da linguagem SFC.
21
Figura 11 – Estrutura genérica do GRAFCET.
2.8 Interfaces Homem-Máquina
IHM (Interface Homem Máquina) é um equipamento responsável
por melhorar a interface entre o usuário e o processo. Sua função básica é
monitorar e configurar variáveis de processo. Existem inúmeros modelos de IHMs
que disponibilizam recursos básicos como: indicação de alarmes, comando via
Touch Screen, visualização e acesso à valores de variáveis. Alguns modelos de
IHM utilizam sistemas Operacionais voltados para sistemas mais simples(ex:
Windows CE) possibilitando, por exemplo, a utilização de Sistemas de Supervisão
em IHMs. As IHMs ligam-se aos equipamentos como o PLC através de um meio
físico (RS232, RS485, Ethernet, etc) e a maneira como as informações são
22
trocadas respeitam o protocolo de comunicação. Para saber se uma IHM pode ser
utilizada com um equipamento, a porta de comunicação deve possuir o mesmo
meio físico do equipamento que se deseja comunicar e, além disso, a IHM deve
utilizar (no mínimo) o mesmo protocolo de comunicação que o equipamento [6].
Existem inúmeros fabricantes de IHMs no mercado. Grande parte
deles são fabricantes de CLPs que disponibilizam as IHMs para comunicação com
seus produtos. Nestes casos o próprio software de programação do CLP possibilita
a programação da IHM e sua integração com o próprio CLP. De forma simplificada,
programar uma IHM é configurar quais informações serão lidas ou escritas e como
elas serão apresentadas ao usuário. As IHMs de um mesmo fabricante de PLC
poderá ou não se comunicar com equipamentos de outros fabricantes. Isto
dependerá da capacidade da IHM “falar” outros protocolos de comunicação. Isto
não depende somente de quem fabrica a IHM, pois alguns fabricantes não
disponibilizam ou dificultam a documentação do protocolo tornando quase
impossível que IHMs de outras marcas “conversem” com seus equipamentos [6].
Figura 12 – Exemplo de IHM padrão ALTUS.
23
Uma IHM permite que o operador da interface tenha acesso a
valores atualizados do processo via CLP, alterar parâmetros de controle do
processo para o CLP e receber mensagens do CLP para o acompanhamento do
processo. Apesar de ser uma interface bastante simples, é muito eficaz para o
campo e a operação de equipamentos.
Figura 13 – Exemplo de IHM com tecnologia Touch Screen.
24
3 SENSORES E REDES SERIAIS
Neste capítulo serão apresentados os conceitos sobre sensores e
sobre as redes seriais de comunicação de dados.
3.1 Sensores
Um sensor é geralmente definido como um dispositivo que recebe e
responde a um estímulo ou um sinal. Porém, os sensores são aqueles que
respondem com sinal elétrico a um estímulo ou um sinal. Um transdutor por sua vez
é um dispositivo que converte um tipo de energia em outra não necessariamente
em um sinal elétrico. Muitas vezes um sensor é composto de um transdutor e uma
parte que converte a energia resultante em um sinal elétrico. Podem ser de
indicação direta (como um termômetro de mercúrio ou um medidor elétrico) ou em
par com um indicador (algumas vezes indiretamente com um conversor de
analógico para digital, um computador e um display) de modo que o valor detectado
se torne legível pelo homem. Além de outras aplicações, os sensores são
largamente usados na medicina, indústria e robótica [7].
O sensor é apenas a parte sensitiva de um transdutor (que é um
sistema completo que produz um sinal elétrico de saída que representa a grandeza
física sendo medida), que se completa em muitos casos com um circuito eletrônico
para a geração desse sinal elétrico que depende do nível de energia da grandeza
física que afeta o dispositivo sensitivo [7].
Existem grandezas físicas que podem tomar qualquer valor ao
longo do tempo: são as chamadas grandezas físicas analógicas, por exemplo,
pressão, temperatura, umidade, vazão, força, ângulo, velocidade, luminosidade,
altitude, torque, entre muitas outras. Porém, embora estritamente falando não se
trate propriamente de grandezas físicas, existem outras variáveis ou características
num sistema que, ao longo do tempo, só podem tomar dois valores possíveis, os
quais são denominados arbitrariamente como 0 e 1, essas variáveis são chamadas
de grandezas físicas digitais. Um exemplo delas é a presença de um objeto num
determinado local [7].
25
3.1.1 Sensores Elétricos
Atualmente, a maioria dos sensores utilizados são elétricos ou
eletrônicos, apesar de existirem outros tipos. Além de outras aplicações, os
sensores são largamente usados na medicina, automação e controle de processos
industriais e robótica. Sensores elétricos são componentes que captam as
informações necessárias no decorrer do processo automatizado e as enviam ao
circuito elétrico de controle, conforme a figura 14.
Figura 14 – Configuração genérica de um transdutor em um processo qualquer.
Dentre a grande diversidade de sensores elétricos existentes, os
mais utilizados são:
Sensor de Contato com Acionamento Mecânico;
Sensor de Contato com Acionamento Magnético;
Sensor de Proximidade;
Sensor Fotoelétrico;
Sensor de Pressão;
Sensor de Temperatura.
Como a quantidade dos tipos sensores é muito grande, este
trabalho detalhará somente alguns dos sensores mais utilizados na indústria,
inclusive no projeto alvo deste trabalho.
26
3.1.2 Sensor de Contato com Acionamento Mecânico
Este tipo de sensor é uma chave elétrica acionada mecanicamente
pelo movimento dos elementos de trabalho, através do dispositivo atuador
localizado no sensor. O elemento atuador pode ser: curto, convencional, longo, com
rolete, com falso rolete e etc. Este tipo de sensor tem resposta do tipo digital e de
uma forma geral tem uma representação esquemática de uma chave, como
mostrado na figura 15.
Figura 15 – Esquema elétrico dos terminais do sensor de contato mecânico.
Um exemplo deste tipo de sensor é o chamado “sensor de fim de
curso”. Estes sensores são interruptores mecânicos, acionados pela própria peça
monitorada. Há diversos tipos e tamanhos, conforme a aplicação. Possuem
limitação quanto ao número de acionamentos e, ainda, quanto à corrente que passa
pelos seus contatos, normalmente na ordem de um milhão de acionamentos,
mecanicamente.
Figura 16 – Constituição e funcionamento de um sensor de fim de curso.
27
Figura 17 – Sensor de fim de curso.
3.1.3 Sensores Ópticos
São Sensores cujo funcionamento baseia-se na emissão de um
feixe de luz, o qual é recebido por um elemento fotossensível, basicamente são
divididos em três sistemas: Barreira, Difusão e reflexão.
No sistema do tipo “Barreira” o circuito transmissor e o circuito
receptor são encapsulados em unidades distintas e devem ser colocados um em
frente ao outro, de modo que o receptor possa receber a luz do transmissor. O
sensor é acionado quando o objeto a ser detectado interrompe o feixe de luz,
conforme mostra a figura 18 [7].
Figura 18 – Sistema de um sensor óptico do tipo barreira.
28
Como pode ser deduzido, o objeto alvo de detecção interrompe a
chegada do feixe luminoso ao receptor. Esta ocorrência gera uma comutação no
transdutor, que pode ser interpretada como “ON” ou “OFF” de acordo com a
configuração elétrica do transdutor (PNP ou NPN).
Nos sistemas do tipo difusão, o transmissor e o receptor são
montados na mesma unidade. Sendo que o acionamento da saída ocorre quando o
objeto a ser detectado entra na região de sensibilidade e reflete para o receptor o
feixe de luz emitido pelo transmissor.
Figura 19 – Sistema de um sensor óptico do tipo difuso.
A luz gerada no emissor reflete de forma difusa sobre o objeto a ser
sensoriado de tal forma que uma parcela dessa luz retorne ao sensor atingindo o
receptor. Os sensores ópticos desse tipo de detecção não atingem grandes
distancias (até 360mm), em função de que na reflexão difusa apenas uma pequena
parcela da luz é refletida em direção ao receptor. A luz refletida depende de alguma
característica do objeto, como a cor e o acabamento de superfície. Desta forma,
objetos escuros, pequenos ou com superfícies altamente rugosas, podem não ser
detectados.
Do mesmo modo que os difusos, os sensores ópticos de reflexão,
apresentam o transmissor e o receptor em uma única unidade. O feixe de luz chega
ao receptor somente após ser refletido por um espelho prismático, e o acionamento
da saída ocorrerá quando o objeto a ser detectado interromper este feixe.
29
Figura 20 – Sistema de um sensor óptico do tipo reflexão.
3.1.4 Sensores Analógicos de Posição
Os sensores analógicos de posição baseiam-se no princípio da
variação da resistência de um potenciômetro conectado mecanicamente a um eixo.
São normalmente utilizados quando se deseja conhecer a posição de algum eixo ou
de qualquer peça giratória.
Figura 21 – Sistema de um sensor analógico potenciométrico de posição.
Muitos CLPs têm entradas analógicas que fornecem uma diferença
de potencial para alimentar as extremidades destes potenciômetros. Utilizando este
recurso, basta pegar a referência de tensão em relação à posição do eixo móvel e
utilizar como a entrada analógica.
30
3.2 Redes de Comunicações Seriais
3.2.1 Comunicação de dados
A distância que um dado sinal percorre em um computador varia de
alguns milímetros, como no caso de conexões de um simples CI, até vários
centímetros quando a conexão de sinais envolve, por exemplo, uma placa mãe com
conectores para diversos circuitos. Para estas distâncias, o dado digital pode ser
transmitido diretamente. No entanto, os dados devem ser enviados para fora dos
circuitos que constituem o computador. Nesses casos, as distâncias podem ser
enormes. Com o aumento das distâncias entre a fonte e o destino aumenta também
a dificuldade de estabelecer uma transmissão de dados precisa. Isso é o resultado
de distorções elétricas dos sinais que trafegam através de condutores longos, e de
ruídos adicionados ao sinal que se propagam através do meio de transmissão. A
distorção e o ruído podem tornar-se tão severos que a informação é perdida [8].
Como regra, a taxa de transmissão máxima permissível é
diretamente proporcional a potência do sinal, e inversamente proporcional ao ruído.
A função de qualquer sistema de comunicação é fornecer a maior taxa de
transmissão possível, com a menor potência e com o menor ruído possível. A
eficiência do canal de comunicação é definida como o número de bits de informação
utilizável (dados) enviados através do canal por segundo. Ela não inclui bits de
sincronismo, formatação, e detecção de erro que podem ser adicionados a
informação antes da mensagem ser transmitida, e sempre será no máximo igual a
um [8]. A figura 22 ilustra um frame de dados em uma rede RS-232 à uma taxa de
transferência de 9600 bits/s bem como sua eficiência.
31
Figura 22 – Frame de dados em uma rede RS-232
3.2.2 Canais de comunicação
Um canal de comunicação é um caminho sobre o qual a informação
pode trafegar. Ela pode ser definida por uma linha física (fio) que conecta
dispositivos de comunicação, ou por um rádio, laser, ou outra fonte de energia
radiante. Em comunicação digital, a informação é representada por bits de dados
individuais, que podem ser encapsulados em mensagens de vários bits. Um byte é
um exemplo de uma unidade de mensagem que pode trafegar através de um canal
digital de comunicações. Uma coleção de bytes pode ser agrupada em um “frame”,
por exemplo. Esses múltiplos níveis de encapsulamento facilitam o reconhecimento
de mensagens e interconexões de dados complexos [8].
3.2.3 Comunicação Serial
A maioria das mensagens digitais são mais longas que alguns
poucos bits. A mensagem é quebrada em partes menores e transmitida
seqüencialmente. A transmissão bit-serial converte a mensagem em um bit por vez
através de um canal. Cada bit representa uma parte da mensagem. Os bits
individuais são então rearranjados no destino para compor a mensagem original.
Em geral, um canal irá passar apenas um bit por vez. A transmissão bit-serial é
normalmente chamada de transmissão serial, e é o método de comunicação
escolhido por diversos periféricos de computadores. A transmissão byte-serial
converte 8 bits por vez através de 8 canais paralelos. Embora a taxa de
transferência seja 8 vezes mais rápida que na transmissão bit-serial, são
necessários 8 canais, e o custo poderá ser maior do que 8 vezes para transmitir a
mensagem [8].
32
A taxa de transferência refere-se a velocidade com que os dados
são enviados através de um canal e é medido em transições elétricas por segundo.
Nas normas EIA232 e EIA485, ocorre uma transição de sinal por bit, e a taxa de
transferência e a taxa de bit (bit rate) são idênticas. Nesse caso, uma taxa de 9600
bauds corresponde a uma transferência de 9600 dados por segundo, ou um período
de aproximadamente, 104µs (1/9600s) [8].
3.2.4 Rede Serial RS-232
RS é uma abreviação de “Recommended Standard”. Ela relata uma
padronização de uma interface comum para comunicação de dados entre
equipamentos, criada no início dos anos 60, por um comitê conhecido atualmente
como “Electronic Industries Association” (EIA). A mais de 30 anos desde que essa
padronização foi desenvolvida, a EIA publicou três modificações. A mais recente,
EIA232E, foi introduzida em 1991. Ao lado da mudança de nome de RS232 para
EIA232, algumas linhas de sinais foram renomeadas e várias linhas novas foram
definidas [8].
Na sua forma padrão o RS-232 utiliza dois sinais de controle, o RTS
(ready to send) e o CTS (clear to send) para efetuar o controle de fluxo via
hardware. Basicamente, quando o transmissor deseja começar um envio ele
sinaliza através do pino RTS. O receptor, ao perceber que o transmissor deseja
enviar algum dado, prepara-se para receber-lo e seta o pino CTS. Apenas depois
de receber o sinal CTS o transmissor pode começar a transmissão. Para cada byte
existem bit de start e stop; o mais comum é utilizar-se 1 bit de início (start bit) e 1 bit
de parada (stop bit). No transmissor o envio basicamente resume-se a enviar um bit
de início, aguardar um tempo, e enviar os próximos 8 bit, mais o bit de parada, com
o mesmo intervalo de tempo entre eles. No receptor, após a primeira borda de
descida (nível lógico de "1" para "0") (start bit) o receptor sabe que uma seqüência
de mais 8 bit de dados + bit de parada chegará. Ele também conhece a velocidade
de transmissão, então tudo que ele precisa fazer é aguardar o tempo de
transmissão entre cada bit e efetuar a leitura. Após receber o bit de parada, a
recepção encerra-se e ele volta à aguardar o próximo start bit. Na interface RS232 o
nível lógico "1" corresponde à uma tensão entre -3V e -12V e o nível lógico "0" à
33
uma tensão entre 3V e 12V. Valores de tensão entre -3V e +3V são indefinidos e
precisam ser evitados. O estado idle da linha é 1 lógico (-V) [9].
A interface RS-232 é amplamente utilizada em casos onde a
distancia de comunicação é curta, pois esta suporta no máximo uma distancia de 15
m. Para distancias maiores é necessário utilizar RS-422 ou RS-485. A figura 23
ilustra um conector DB9 (Macho) com as funções de seus respectivos pinos.
Figura 23 – Pinagem para RS-232 conector DB9.
3.2.5 Rede Serial RS-485
A norma RS-485 define esquemas de transmissão de dados
balanceados que oferecem soluções robustas para transmitir dados em longas
distâncias em ambientes ruidosos. Esta norma não define qual o protocolo a ser
utilizado para a comunicação dos dados, e é adotada como especificação da
camada física de diversos protocolos, como, por exemplo, MODBUS, PROFIBUS,
DIN-Measurement-Bus e muitos outros. Todos os aparelhos que possuem
comunicação serial por barramento utilizam o padrão RS-485, devido às vantagens
que o mesmo apresenta em ambientes industriais. Por ser amplamente difundido, é
bem aceito em todas as partes do mundo [10].
34
A norma TIA/EIA-485, conhecida popularmente como RS-485,
descreve uma interface de comunicação operando em linhas diferenciais capaz de
se comunicar com 32 “unidades de carga”. Normalmente, um dispositivo
transmissor/receptor corresponde a uma “unidade de carga”, o que faz com que
seja possível comunicar com até 32 dispositivos. Entretanto, existem dispositivos
que consomem frações de unidade de carga, o que aumenta o máximo número de
dispositivos a serem interligados. O meio físico mais utilizado é um par trançado.
Através deste único par de fios, cada dispositivo transmite e recebe dados. Cada
dispositivo aciona o seu transmissor apenas no instante que necessita transmitir,
mantendo-o desligado no resto do tempo de modo a permitir que outros dispositivos
transmitam dados. Em um determinado instante de tempo, somente um dispositivo
pode transmitir, o que caracteriza esta rede como half-duplex. Uma rede RS-485
pode também utilizar 02 pares trançados, operando no modo full-duplex, totalmente
compatível com RS-422 [10]. Também segundo a norma, o comprimento máximo
aconselhável para esta rede é de 1200 metros a um baud rate de 9600 bits/s.
3.2.6 Canal de comunicação para RS-485
A comunicação por RS-485 se caracteriza pela utilização de um
meio de comunicação diferencial (ou balanceado), denominado par trançado. Os
circuitos transmissores e receptores adotados nestas interfaces utilizam como
informação a diferença entre os níveis de tensão em cada condutor do par trançado.
Os códigos binários são identificados pela polaridade (+ ou -) da diferença de
tensão entre os condutores do par, ou seja, quando a tensão no condutor “+” for
maior que no condutor “-”, é caracterizado um nível lógico “1”; quando, ao contrário,
a tensão no condutor “-” for maior que no condutor “+”, é caracterizado um nível
lógico “0”. Uma margem de ruído de ±0,2 V é definida para aumentar a tolerância a
interferências. Esta técnica resulta no cancelamento de ruídos induzidos no meio de
transmissão, pois se o mesmo ruído é induzido nos 02 condutores, a diferença de
tensão entre eles não se altera e a informação é preservada. A interferência
eletromagnética emitida por um barramento de comunicação diferencial é também
menor que a emitida por barramentos de comunicação não-diferenciais [10].
35
3.2.7 Topologias de rede para RS-485
Enquanto a velocidade for relativamente baixa e as distâncias
relativamente curtas, a influência da topologia da rede em seu desempenho não é
significativa. Contudo, quando os efeitos de linhas de transmissão começam a
aparecer, há apenas uma topologia simples que permite gerenciar estes efeitos.
Apenas no tipo “daisy chain”, onde todos os dispositivos são conectados
diretamente aos condutores da linha de comunicação principal, é fácil controlar as
reflexões causadoras de erros de comunicação. Isso não significa que seja
impossível implementar uma rede funcional com outra topologia. Entretanto, na
prática, controlar as reflexões em uma rede tipo estrela (por exemplo) é mais uma
arte do que ciência. Ao utilizar o barramento com derivações, é recomendável que o
comprimento das derivações que interligam cada dispositivo à linha de
comunicação principal seja o menor possível (muito menores que o comprimento do
barramento principal) [10].
A figura 24 mostra os tipos de topologias existentes para uma rede
serial RS-485
Figura 24 – Topologias de rede.
36
A topologia em azul é a mais recomendada. Neste tipo de
configuração a rede (cabo par trançado) é guiada segundo a disposição dos
dispositivos. Esta configuração é um caso especial da topologia de barramento e
tem por característica principal a curta distância entre o dispositivo e o nó com o
barramento principal. Além disso, há somente uma ligação por nó.
Para os demais casos, a maneira de combater reflexões durante a
transmissão e demais interferências varia de caso a caso. Quando se utiliza a
configuração “Daisy Chain” pode-se utilizar uma forma mais genérica. Esta consiste
em utilizar resistores de terminação para eliminar as reflexões e resistores
diferenciais para manter a margem de ruído.
3.2.8 Resistores terminais e diferenciais
Em casos onde a rede principal (barramento) ultrapassa os 100
metros torna-se necessária introdução de resistores terminais para eliminar a
reflexão ocorrida durante a transmissão. Estes resistores servem para “casar” as
impedâncias entre a fonte, o cabo de transmissão e as cargas. Estes resistores
devem ser colocados apenas nos extremos da rede, ou seja, no inicio e fim do
barramento. Como na grande maioria dos casos o cabo utilizado é um par trançado,
e este geralmente tem uma impedância característica de 120 Ω, os resistores de
terminação são normalmente deste valor. A figura 25 ilustra como deve ser feita a
ligação dos resistores na rede serial. Note que os resistores estão apenas nos
extremos da rede.
Figura 25 – Configuração da rede serial com os resistores de terminação.
Quando a diferença de tensão entre os dois cabos é menor que a
margem de ruído, que é entre -200mV e 200 mV, a saída do receptor é vista como
"indefinida". Esta falha normalmente se dá por um dos motivos a seguir:
37
- Todos os transmissores do sistema estão desligados
- O receptor não está conectado ao cabo.
- A rede está em aberto ou o cabo está em curto.
Os resistores diferenciais (Fail-safe bias) são utilizados para manter
está margem de ruído entre os cabos do par trançado. Estes resistores podem ser
colocados em qualquer ponto da rede, mas usualmente são colocados no início da
mesma, junto ao resistor terminal conforme mostra a figura 26. O valor para estes
resistores é calculado com base em toda a carga presente na rede. Quando
resistores de terminação são inseridos, estes se tornam responsável pela maior
parte da carga. Para ilustrar um exemplo, se cada nó da rede possuir uma
impedância de 12 KΩ, e tivermos 10 nós, teremos uma resistência paralela de 1,2
KΩ. Agora o paralelo dos resistores terminais é 60 Ω. Com isso a carga é de
aproximadamente 57 Ω. Para manter os 200 mV necessários precisamos ter uma
corrente mínima de 3,5 mA. Isto implica em uma resistência, cabo a cabo, de
aproximadamente 1420 Ω. Como já estão inseridos entre os cabos os resistores
terminais, com resistência total de 57 Ω, precisamos de mais 1363 Ω. Colocando
um resistor entre o cabo e a fonte (pull-up resistor) e outro igual entre o cabo e o
terra (pull-down resistor) teremos uma resistência aproximada de 680 Ω para cada.
Figura 26 – Configuração de um terminal com resistores de terminação e de BIAS.
38
4 PROTOCOLO MODBUS E SOFTWARES SUPERVISORIOS
Este capítulo tem por objetivo abordar as características do
protocolo de comunicação MODBUS e mostrar o que são os softwares MES.
4.1 Protocolo MODBUS
4.1.1 Historia
Criado em 1979 para comunicação entre controladores da
MODICON (Schneider), o MODBUS sempre teve uma especificação aberta. Uma
de suas principais características é a fácil operação e manutenção. Por estes
motivos o protocolo MODBUS foi amplamente aceito e adotado como padrão por
muitos fornecedores de equipamentos. É um protocolo largamente utilizado em
vários níveis de aplicações, inclusive em sistemas de supervisão. A Modicon, hoje
Schneider Electric, introduziu o protocolo MODBUS no mercado em 1979. A
Schneider ajudou no desenvolvimento de uma organização de usuários e
desenvolvedores independentes, chamada MODBUS–IDA. MODBUS-IDA é uma
organização com fins não lucrativos agrupando usuários e fornecedores de
dispositivos de automação que visam à adoção do pacote de protocolos MODBUS e
a evolução da arquitetura de endereçamento para sistemas de automação
distribuídos em vários segmentos de mercado. MODBUS-IDA fornece a
infraestrutura para obter e compartilhar informação sobre os protocolos, suas
aplicações e a certificação de dispositivos visando simplificar a implementação
pelos usuários [11].
4.1.2 Definição
Protocolo é um conjunto de regras e convenções para conversação.
Essas regras definem a comunicação entre dois equipamentos, sejam eles
computadores, máquinas ou computadores e máquinas. Nos protocolos são
definidas as sintaxes como os equipamentos irão ordenar os dados de forma que
39
fiquem entendidos por ambos os lados que fazem parte da comunicação. O
protocolo MODBUS define uma estrutura de mensagem que os controladores
reconhecerão e usarão independente do tipo de rede acima deles. O protocolo
MODBUS também descreve o processo que um controlador usa para pedir acesso
a outros dispositivos, como responderá a pedidos desses outros dispositivos, e
como serão descobertos erros da comunicação e serão informados à sua origem.
Sendo o MODBUS uma linguagem informática independente do material, esta
permite o diálogo entre equipamentos de natureza e construções diferentes.
Também é importante ressaltar que existem várias implementações do protocolo
MODBUS. Como sua especificação é bastante ampla, as vezes não é necessário
implementar todas as suas especificações para se ter uma rede industrial padrão
MODBUS em funcionamento, ou seja, tem-se como padrão de mercado o formato
simples de mensagens que o MODBUS utiliza [12].
O protocolo MODBUS operando em linha serial é um protocolo
mestre-escravos. Isso significa que somente um mestre é conectado ao barramento
ao mesmo tempo. Quanto aos escravos, um ou mais nós (número máximo de 247)
podem ser conectados a este mesmo barramento. Uma comunicação MODBUS é
sempre iniciada pelo mestre. O nó escravo nunca irá transmitir dados sem receber
uma requisição do nó mestre. Os nós escravos nunca irão se comunicar entre eles.
O nó mestre inicia somente uma transação MODBUS por vez [13].
4.1.3 Quadro MODBUS
O protocolo de aplicação MODBUS define uma simples unidade de
dados de protocolo ( PDU) independentemente das camadas adjacentes.
Figura 27 – Quadro para MODBUS em barramento serial.
Em uma comunicação MODBUS sobre barramento serial, o campo
40
endereço contém o endereço de um determinado escravo. Os endereços válidos
para nós escravos estão na faixa de 0 a 247 decimal. Quando utilizado o endereço
0, a mensagem é um broadcast, portando todos os nós escravos estarão sendo
endereçados. Os escravos são individualmente endereçados na faixa de 1 a 247.
Um mestre endereça um escravo colocando o endereço do escravo no campo
endereço da mensagem. Quando o escravo retorna sua resposta, ele coloca o seu
próprio endereço no campo endereço da mensagem de resposta para permitir que o
mestre identifique qual escravo está respondendo [13].
O código de função indica para o servidor que tipo de ação deve se
executada. O código de função pode ser seguido por um campo de dados que
contém parâmetros da requisição e da resposta. O campo de verificação de erro é
resultado de um cálculo de verificação de redundância que é adicionado ao
conteúdo da mensagem. Dois métodos para cálculo são usados, dependendo do
modo de transmissão que está sendo utilizado (RTU ou ASCII).
O protocolo de comunicação MODBUS disponibiliza as funções
necessárias para haver uma boa comunicação entre os dispositivos nesta rede
conectados. Entre as principais, podem ser citadas:
Função Nome Descrição
01 Read Coils Lê o valor de uma saída ou endereço de
memória binário.
02 Read Discret
Input
Lê de 1 a 2000 entradas discretas de um
dispositivo remoto.
03 Read Holding
Registers
Lê o conteúdo de um bloco de registradores
tipo holding. Para este comando não são
válidos acesso tipo broadcast.
04 Read Imput
Registers
Lê de 1 a aproximadamente 125 registros de
entradas.
41
05 Write Single Coil Escreve o valor binário em um endereço de
memória binário.
06 Preset Single
Register
Programa um único registrador tipo holding.
Para acessos tipo broadcast, este mesmo
registrador de todos os escravos será
programado com o mesmo valor.
15 Write Multiple
Coils
Escreve valores binários em uma seqüência de
endereços binários.
16 Preset Multiple
Registers
Programa um bloco de registradores tipo
holding seqüencialmente. Para acessos tipo
broadcast, este mesmo bloco de registradores
de todos os escravos da rede será programado
igualmente.
Tabela 5 – Funções básicas mais utilizadas do protocolo MODBUS.
4.2 SOFTWARES MES – MANUFACTURING EXECUTION SYSTEM
4.2.1 Definição
O termo Manufacturing Execution System (MES), foi criado em 1990
por Bruce Richardson da Advance Manufacturing Research, porém na literatura
brasileira encontram-se várias traduções para ele. A que mais condiz com as
funcionalidades do sistema e normalmente adotada é “Sistema de
Acompanhamento da Execução de Manufatura”. Numa definição um tanto quanto
ampla pode-se caracterizar MES como todo sistema de chão de fábrica orientado
para melhoria de desempenho que complementa e aperfeiçoa os sistemas
integrados de gestão (planejamento e controle) da produção [14].
Independente de quão bom é o planejamento feito, a realidade nem
sempre ocorre conforme o que foi planejado. Este feedback do chão de fábrica
42
proporcionado pelo MES permite à empresa e outros sistemas uma comparação
entre os dados obtidos durante a fase de planejamento e que realmente estão
sendo executados. Podendo com isso até modificar e adaptar as funções de
planejamento às variações ocorridas na prática durante a produção [14].
Apesar do MES se parecer com o sistema SCADA (Supervisory
Control and Data Aquisition) e ambos serem freqüentemente confundidos, eles
apresentam uma diferença básica, é que o SCADA tem como objetivo principal o
monitoramento do chão de fábrica, através de uma base de dados em tempo real
(real time database), ou seja, sua função principal é mostrar o que está ocorrendo
no chão de fábrica naquele exato momento; enquanto que os sistemas MES
possuem funcionalidades que auxiliam no processo de tomada de decisões
baseado em fatos históricos, num horizonte de planejamento mais longo, se
comparado com os sistemas SCADA [14].
4.2.2 Funcionalidade e Arquitetura
Como outros tipos de sistema, o MES não possui uma única função,
segundo a Manufacturing Execution System Association International, uma
associação internacional de empresas provedoras de soluções em produção de
manufatura, são 11 as principais funcionalidades que um sistema MES deve
oferecer:
Controle detalhado de operações
Estado e alocação de recursos
Gerenciamento de unidades de produção
Controle e geração de documentação
Rastreamento de produtos e genealogia
Gerenciamento da mão de obra
Gerenciamento de manutenção
43
Gerenciamento de processos
Gerenciamento de qualidade
Análise de performance
Coleta e aquisição de dados
Embora deva haver várias arquiteturas para este tipo de sistema, os
elementos apresentados na figura 28 estão presentes na maioria de sistemas com
características de um MES. Por isso pode-se considerar como uma arquitetura
padrão do sistema. Basicamente, existe um servidor central que recebe as
informações coletadas do chão de fábrica através de uma rede conectada a
dispositivos, distribuídos estrategicamente pela linha de produção, e as armazena
no banco de dados do sistema, cujos registros podem ser acessados por máquinas
cliente através do mesmo servidor [14].
Figura 28 – Arquitetura padrão de um sistema MES.
As máquinas cliente utilizadas por gerentes, funcionários ou
44
qualquer outra pessoa que tenha acesso ao sistema, onde são disponibilizados o
status da produção, análise dos dados coletados e todas as outras funcionalidades
descritas de MES, podem se conectar ao servidor para obter as informações
através da própria intranet da empresa ou até mesmo pela internet [14].
4.2.3 Guenka - MPI
Desenvolvido pela Guenka Soluções em Software, uma empresa
ainda nova no mercado com sede em Londrina, o Guenka - MPI (Monitoramento de
Processos Industriais) trata-se de uma ferramenta MES com objetivo de atender as
necessidades da automação industrial, identificadas a partir da análise do processo
produtivo das indústrias do pólo moveleiro de Arapongas – PR [14]. Dentre suas
principais funcionalidades estão:
Monitoramento de Recursos: O software exibe telas com a
situação em tempo real de máquinas e operadores.
Rastreabilidade de produtos: Com o auxílio das ordens de
produção, importadas do sistemas de planejamento, o MPI
lista por quais máquinas a pilha foi ou está sendo processada
e setores por onde ainda deverá passar.
Coleta de dados: O apontamento de dados é feito por
entrada manual de funcionário através de microterminais,
CLPs ou pontos de monitoração espalhados pelo chão de
fábrica.
Relatórios: Pode-se gerar relatórios relativos a produção,
perdas (tempo e materiais) e eficiência de um setor, máquina
ou funcionários em um período selecionado pelo usuário
(turno, diário, mensal, etc.).
45
Figura 29 – Interface do sistema Guenka – MPI.
46
5 ESTRUTURAS FISICAS E HARDWARES
Este capítulo trará as configurações físicas gerais do projeto, como
os detalhes dos hardwares e elementos físicos utilizados. Inicialmente será
apresentada como é a estrutura do projeto, isto é, qual a disposição espacial dos
elementos dentro do projeto. Em seguida serão detalhadas as características de
cada elemento utilizado.
5.1 ESTRUTURAS MACRO E CELULAR DO PROJETO
O intuito do projeto em si é captar informações sobre estado atual e
real das máquinas no chão de fábrica e enviar-las de forma coerentes e inteligíveis
ao software MES. Para isto se utilizam sensores digitais e/ou analógicos em
conjunto com uma Interface Homem-Máquina para aferir os dados e o estado atual
das máquinas. Estes dados captados são então processados, interpretados e
filtrados por um CLP. O seguinte passo é enviar estes pacotes de informação ao
programa MES. Para realizar esta comunicação utiliza-se uma rede serial RS-485
pelo protocolo de comunicação MODBUS. Como o número de máquinas e o espaço
ocupado é muito grande, foi feita uma divisão em varias redes para com isso limitar
o número de nós nas redes, possibilitar uma topologia de barramento do tipo “Daisy
Chain” e reduzir o comprimento da rede. Cada rede serial destas é conectada a um
conversor Serial-Ethernet e em seguida ligada a rede Intranet ou LAN (Local Area
Network). A figura 30 ilustra de forma genérica como é a estrutura destas redes
dentro de uma fábrica.
Como é possível observar na figura, cada rede segue a topologia de
barramento “Daisy Chain”. Apesar da rede serial RS-485 permitir, para dispositivos
com carga padrão, um número de até 31 células mais a célula Mestre, foram
colocadas na mesma rede um máximo de 11 células. Esta disposição aumentou o
custo-benefício do projeto e deixa cada rede com uma margem de segurança maior
contra erros de transmissão.
47
Figura 30 – Estrutura genérica utilizada para a construção das redes seriais.
A maior das redes construídas tem um comprimento aproximado de
450 metros. A teoria sobre a rede serial RS-485 aconselha um comprimento
máximo de 1200 metros a um baud rate de 9600 bits/s. Também para aumentar a
confiabilidade dos dados transmitidos e por não ser necessária uma transmissão de
dados muito veloz, foi adota como velocidade para cada rede serial 9600 bits/s.
Logo, o caminho físico dos dados, após seu processamento nos CLPs, até o
conversor Serial-Ethernet é em uma rede serial a uma velocidade de 9600 bits/s. O
protocolo de comunicação no qual estes dados são transmitidos pela rede é o
MODBUS.
Como todas as redes possuem mais de 100 metros de
comprimento é imprescindível o uso de resistores de terminação para reduzir os
efeitos da reflexão dos bits durante a transmissão. Conforme pode ser observado
no anexo X, à impedância característica dos cabos utilizados é de 120 Ω. Logo, os
resistores de terminação são deste mesmo valor. Os resistores diferenciais não
foram necessários, pois a atenuação gerada pelos cabos é insignificante. Um dos
motivos para esta atenuação ser tão baixa é o super-dimensionamento dos
condutores. Isto é, foram utilizados cabos específicos para a rede RS-485 com 2
pares de cabo par trançado, blindados, de 22 AWG, sendo que um par trançado de
24 AWG já é suficiente.
48
Figura 31 – Configuração dos extremos de cada rede com o resistor terminal de 120 Ω inserido.
A figura 31 ilustra como ficaram os extremos de cara rede, como o
resistor terminal. Em todas as redes, o conversor Serial-Ethernet é um dos
extremos, logo um dos resistores de 120 Ω foi colocado entre seus terminais. Este
conversor integra a rede serial RS-485 a LAN ou intranet da fábrica. O servidor
“enxerga” cada rede serial como uma porta serial. Logo o acesso do servidor a cada
rede fica bastante simples.
As células de coleta são geralmente compostas por um conjunto
CLP/IHM e sensores elétricos. Em algumas máquinas onde não se há necessidade
de usar sensores automáticos, a célula de coleta contém somente o CLP mais a
IHM. A figura 32 ilustra a configuração de uma célula de coleta com sensores
elétricos. As luzes indicativas são acionadas pelas saídas do CLP para indicar o
estado atual da máquina, como por exemplo, para indicar se a máquina está
produzindo ou está parada. O sensor de peça é particular para cada máquina. Em
alguns casos é utilizado um sensor por acionamento mecânico, em outros sensores
ópticos e etc. Este sensor é o que indica se de fato a máquina está trabalhando. O
sensor da esteira serve para indicar se o transporte de determinada máquina está
ligado. O estado no qual se conclui que a máquina está “parada” acontece quando o
sensor da esteira está ligado e o sensor de peça permanece inativo por um
determinado tempo. Esta combinação de eventos pode ser considerada “trabalho a
vazio”. Apontar este evento é um dos principais objetivos deste projeto, pois este
“trabalho a vazio” deve ser identificado já que este fenômeno é muito custoso para a
fábrica.
49
Figura 32 – Configuração de uma célula de coleta de dados genérica.
A figura 33 mostra como é este conjunto de CLP/IHM.
Figura 33 – Conjunto CLP/IHM.
50
5.2 CLPS ATOS-SCHNEIDER
Após a verificação dos requisitos impostos pelo cliente, o CLP com
melhor custo benefício que atendia as especificações foram os CLPs fornecidos
pela ATOS (Schneider Eletric). Estes CLPs já têm uma IHM anexada. Para as
células com sensores analógicos foi necessário o modelo Expert BF, que tem
suporte a entradas e saídas analógicas. Para as demais células (apenas sensores
digitais, ou somente a IHM) o modelo Expert DX foi suficiente. Ambos os modelos
têm dois canais de entrada seriais, um RS-232 e outro RS-485. Ambos os canais
têm suporte ao protocolo de comunicação MODBUS.
5.2.1 Expert DX
Esta linha de CLPs da ATOS possuem somente entradas e saídas
digitais. No projeto foram utilizados dois modelos do CLP Expert DX. Um deles, o
mais simples, possui 14 entradas e 12 saídas. Este modelo foi o mais utilizado, pois
atendia a aproximadamente 75% das células de coleta (2 entradas, 3 saídas e
IHM). O outro modelo utilizado tinha suporte para 20 entradas digitais e 12 saídas.
Este segundo modelo foi necessário para as linhas de pintura, onde cada célula de
coleta recebia informações de 18 sensores ópticos mais o sensor do transporte. A
IHM para os 2 modelos é idêntica e faz parte do pacote. A figura 34 mostra como é
o CLP Expert DX.
Figura 34 – Visão geral dos CLPs da série Expert DX.
51
Até os endereços para acesso as teclas da IHM são os mesmos
para os dois modelos. Ambos os modelos são do tipo “P”. Ou seja, o “nível alto”
para as entradas e saídas digitais é 24 V (valor padrão de tensão para CLPs). Nos
anexos deste trabalho encontram-se os esquemas de ligações e as principais
características elétricas dos dois modelos.
5.2.2 Expert BF
O Expert BF pode ser visto como uma evolução do Expert DX. Este
modelo de CLP e seu software de programação atendem a norma IEC 61131-3. A
serie Expert BF possui 14 entradas e 10 saídas digitais e 2 entradas e saídas
analógicas. A IHM é muito parecida com a do modelo Expert DX, como pode ser
visto na figura 35. Este modelo só foi necessário para as células que utilizam
sensores analógicos.
Figura 35 – Visão geral dos CLPs da série Expert BF.
Este modelo é um dos mais recentes da ATOS. Nos anexos entram-
se os esquemas de ligação e as características elétricas deste modelo. Os
softwares de programação, tanto para a série Expert DX e Expert BF serão
mostrados no capitulo 6.
52
5.3 CABO DE REDE RS-485
Para se ter uma boa qualidade na rede serial, o parâmetro mais
importante é o cabo utilizado. Para isto o cabo escolhido foi o Cabo de Rede
RS485-2x2x22AWG, da marca Draka. A figura 36 mostra alguns dados do cabo
assim como sua seção transversal.
Figura 36 – Seção transversal do cabo 2x2x22AWG da draka e alguns dados sobre o mesmo.
O cabo é constituído por condutores de cobre nu, classe 2,
isoladas a base de polietileno de alta densidade (PEAD), reunidas com fita não
higroscópica de poliéster, dreno e fita alumianada, com parte metálica em contato
com o dreno, armado com malha de cobre estanhado e sobre esta uma capa de
PVC anti chama. É utilizado na transmissão de dados na rede RS485, aplicado em
protocolos tais como MODBUS. Possui blindagem eletrostática, evitando eventuais
interferências e apresenta características necessárias para a transmissão de dados
em alta velocidade. A tabela 6 mostra as características elétricas do cabo.
Tabela 6 – Propriedades elétricas do cabo Draka 2x2x22AWG.
53
5.4 CONVERSOR SERIAL-ETHERNET
Dentre os diversos modelos de conversores Seriais-Ethernet
disponíveis no mercado, o conversor que representou o melhor custo benefício foi o
MOXA NPort 5130.
Este conversor é projetado para trabalhar em ambientes hostis,
como os industriais. Seu consumo de potencia é muito baixo e sua alimentação de
entrada pode ser qualquer valor DC na faixa de 12 V a 42 V. Apesar de não ter sido
necessário, este conversor possibilita a adição de resistores diferenciais (BIAS)
através do acionamento de alguns jumpers internos.
Este conversor já vem com um driver para OS Windows. Com o
driver devidamente instalado, o servidor trata este conversor como uma porta serial.
Logo, basta ao servidor acessar a cada rede por meio de um simples software de
comunicação MODBUS para realizar as transferências de dados.
5.5 SENSORES DIGITAIS ÓPTICOS
Na maioria das grandes indústrias de móveis seriados as linhas de
pintura são altamente automatizadas. Nestas linhas, encontram-se varias seções de
pintura, secagem, vernissage e etc. A figura 37 ilustra uma linha de pintura
automatizada.
54
Figura 37 – Linha de pintura automatizada.
Nestas linhas de pintura, a tinta fica quase o tempo todo sendo
despejada pelas máquinas. Logo, o interessante nestes casos é utilizar a maior
parte da esteira possível. A função da coleta de dados para estes casos é, alem de
apontar o trabalho a vazio, indicar a porcentagem da esteira que está sendo
utilizada pelas peças. Para isto foi montada uma linha de sensores digitais ópticos
para cobrir toda a largura da esteira. O espaçamento destes sensores é igual à
menor peça existente que passa pela linha de pintura. Os sensores ópticos são do
tipo difuso. A figura 38 mostra como foi feita esta linha de sensores.
Figura 38 – Configuração da linha de sensores.
O capitulo 6 mostrará como foi feita a lógica para obter esta
porcentagem de utilização.
55
5.6 SENSORES ANALÓGICOS DE POSIÇÃO
Para o caso das células que utilizam os sensores analógicos de
posição, são necessários 03 sensores para obter os dados requisitados pelo cliente.
Estas células estão presentes nas seccionadoras. Estas máquinas são
responsáveis por seccionar as chapas de madeira. O objetivo neste caso, além de
apontar trabalho a vazio, é saber quantas chapas foram cortadas. O sensor
analógico é do tipo potenciômetro excursivo. A excursão do sensor acompanha o
deslocamento vertical da máquina e com isso se obtém a altura total das chapas a
serem cortadas. As figuras 39 e 40 mostram a configuração desta máquina e seus
sensores.
Figura 39 – Vista frontal de uma seccionadora genérica com um sensor analógico instalado.
56
Figura 40 – Vista lateral de uma seccionadora genérica com um sensor analógico e um digital instalado.
O sensor analógico é do tipo mostrado na figura 41. No capitulo 6
será mostrado como é feita a lógica para se obter esta medida
Figura 41 – Sensor analógico de posição do tipo potenciômetro.
57
6 SOFTWARES E FIRMWARE
Neste capítulo serão abordadas as características e técnicas de
programação dos CLPs utilizadas no projeto. Inicialmente serão mostradas as
características dos dois softwares de programação utilizados para em seguida
explicar a estrutura do firmware elaborado para os CLPs. Como o firmware
produzido é muito extenso, serão apresentados alguns trechos como exemplo.
6.1 SOFTWARES DE PROGRAMAÇÃO DOS CLPs
6.1.1 Software WinSUP2 - Expert DX
Assim como a série DX, o software de programação WinSUP2 não
segue os padrões da norma IEC 61131-3. Segundo o próprio desenvolvedor, o
WinSUP é:
“WinSup é um ambiente de programação que permite o desenvolvimento de uma aplicação de controle baseada na linguagem de programação Ladder Diagrams, sendo uma poderosa ferramenta de desenvolvimento, documentação e manutenção de aplicações de controle, executada em ambiente Windows™”
A figura 42 mostra como é a interface do software de programação
WinSUP 2, onde:
A – Barra de título, localização e driver.
Esta barra mostra o título do projeto que está sendo trabalhado, a
localização do arquivo e o driver selecionado.
B – Barra de menu
Concentra todos os comandos do WinSUP. A maioria destes
comandos está disponível na barra de ferramentas do aplicativo.
C - Controles do Windows
58
São os controles padrões do Windows para toda aplicação
(Minimizar, Maximizar, Fechar).
D - Barra de ferramentas
Esta barra concentra atalhos para os comandos mais utilizados do
WinSUP.
E - Gerenciador de Projetos
Possibilita a visualização, edição e configuração de todos os itens
envolvidos no projeto.
F - Editor Ladder
Permite a criação das rotinas do programa de usuário.
G - Comentário de operandos
Visualização do comentário do operando selecionado.
H - Barra de Ferramentas Ladder
Sempre que executamos o WinSUP, a barra de ferramentas do
editor ladder já vem anexada à esquerda da área de edição de linhas. Esta barra
concentra os botões de acesso a todas as instruções de programação.
59
Figura 42 – Interface do software de programação WinSUP 2.
6.1.2 Software A1 - Expert BF
O software de programação A1 é bem recente e obedece a todos
os padrões estabelecidos pela IEC – 61131. Este software dá suporte ao usuário
realizar um programa bem estruturado e modular. Por ser um programa de mais alto
nível, o A1 é de muito fácil assimilação e usabilidade. Possui também um “Help”
muito didático e completo, tanto para o usuário saber como usar-lo, como para
saber o funcionamento das instruções. A figura 43 mostra como é a interface do
software de programação A1.
60
Figura 43 – Interface do software de programação A1.
6.2 ESTRUTURA DO FIRMWARE
O software MES que receberá os dados coletados possui a função
de acompanhamento em tempo real do chão de fábrica. Logo, é necessário ao MES
saber qual o estado atual de cada máquina na fábrica. Porém como o número de
máquinas é grande, a verificação continua de cada célula de coleta pelo software
MES iria saturar o tráfego de dados nas redes. Um modo de diminuir esta
quantidade de informações é avisar ao servidor quando há pacotes de dados a
serem lidos. Com isso o servidor (Mestre) só lê de uma célula de coleta quando
está possuir informações novas e relevantes para o servidor. Deste ponto já se
pode deduzir que o CLP é responsável por monitorar o estado atual de cada
máquina.
61
O CLP também é responsável pela lógica que interage a IHM com o
operador da máquina. Estas são as duas principais funções do CLP dentro do
projeto. Apesar de estas funções interferirem uma na outra, elas devem ser tratadas
separadamente, pois possuem certo grau de independência entre elas.
Em projetos de softwares a parte do sistema que é responsável
pela interação com o usuário é usualmente chamada de Front-end. Já a parte que
monitora a célula e utiliza os dados obtidos pelo Front-end é chamada de back-end.
Com os requisitos impostos pelo cliente e com uma análise sobre o
funcionamento das máquinas a serem monitoradas é possível criar um fluxograma,
ou máquina de estado, de como o programa deverá trabalhar. Com a utilização
desta técnica o programa ganha uma estrutura mais modular, facilitando a
compreensão e até mesmo para criar modificações no mesmo. Estes fluxogramas
serão mostrados de forma genérica, pois representam fielmente o modo de
operação e as características das máquinas da fábrica. E como o cliente deseja
sigilo sobre suas características de produção é antiético expor-las. A seguir estão
os fluxogramas para estas duas funções do firmware.
Na figura 46 temos uma representação de como é estruturado o
firmware. Com esta figura podemos observar a característica linear de um programa
em ladder em um CLP. A cada ciclo o CLP lê as entradas e carregas as imagens
para em seguida varrer o programa de cima para baixo fazendo o calculo da lógica
imposta pelo mesmo. No final de cada ciclo o CLP atualiza as saídas de acordo
com os resultados destes cálculos. Logo, a disposição de cada parte, ou módulo, no
programa pode interferir em seu funcionamento. Esta montagem deve ser bem
analisada antes de efetuada.
62
Figura 44 – Máquina de estados para o Back-end.
63
Figura 45 – Máquina de estados para o Front-end.
64
Figura 46 – Estrutura do firmware.
Apesar do firmware não trabalhar de forma preemptiva, esta divisão
por setores faz como que o funcionamento “serial” do CLP simule uma execução de
tarefas em paralelo. Nos itens seguintes serão mostrados alguns trechos do
programa. Foram escolhidos alguns pedaços em particular, pois os programas para
cada célula têm aproximadamente 1000 linhas de ladder e fica inviável e
desnecessário explicar todas. Nas regiões de inicialização é feita as declarações
seja de constantes, de variáveis, preset de temporizadores e etc. Nas regiões em
vermelho são feitas as operações com variáveis que precisam estar no programa
principal (não podem ficar em sub-rotinas), como contagem de peças, tempo a
vazio e etc.
65
6.3 MÁQUINAS DE ESTADO EM LADDER
Um dos princípios das máquinas de estado é que estas, em um
determinado tempo, encontram-se em um, e só um, de seus estados. Em um
programa de alto nível é relativamente simples a sua implementação. Na maioria
destas linguagens existem os operadores “SWITCH” e “DO WHILE” que conseguem
realizar uma máquina de estados facilmente. Já em Ladder é necessário “guiar a
corrente” de forma ao programa escolher o estado “certo”.
Um modo efetivo e organizado de criar máquinas de estado em
ladder é atribuir uma sub-rotina e uma variável respectiva a cada estado da
máquina. Com isso em cada sub-rotina, que representa um estado, será inserida a
lógica de transição para algum dos outros estados. Deste modo fica possível fazer
uma programação que siga o fluxograma predeterminado, de um forma mais
simples e limpa. Para ilustrar este método temos a figuras 47. Para facilitar a
compreensão, podemos dizer que o programa vê qual das sub-rotinas que deverá
ser chamada (em qual estado à máquina se encontra) e a coloca na região do
programa respectiva a máquina de estados em questão. As chamadas para as sub-
rotinas são feitas através de operadores do tipo “CALL”, presente em ambos os
softwares de programação.
Figura 47 – Funcionamento de máquinas de estados em Ladder.
66
6.4 LÓGICA PARA OBTER UTILIZAÇÃO DA ESTEIRA
Como foi visto no item 5.5, se deve medir a porcentagem de
utilização da esteira na linha de pintura. O CLP utilizado é da serie Exper DX, logo o
software de programação é o WinSUP2.
Como a capacidade de processamento e os recursos disponíveis no
servidor são maiores, pois utiliza plataformas de alto nível, é interessante deixar
para o servidor realizar cálculos aritméticos mais complexos e extensos. Logo, o
CLP deve fornecer os dados para o servidor calcular o grau de utilização da esteira.
De forma lógica, temos que 100% de utilização da esteira ocorre
quando os 18 sensores ópticos estão em ON. Mas como o servidor deve evitar
congestionar o trafego da rede, foi criada uma lógica para pré-calcular estes dados
e para assim possibilitar a leitura discreta dos dados pelo servidor.
Logo, o CLP deve fornecer ao servidor um parâmetro de tempo total
e outro parâmetro de tempo para cada sensor, quando este estiver ON. Para isto
foram utilizados contadores. Com estes dados, basta ao servidor dividir o contador
de cada sensor pelo contador total de tempo, para assim obter a porcentagem de
tempo em que este sensor ficou ON (passando peça sobre ele). As figuras 48 e 49
mostram como são estes contadores.
Figura 48 – Estrutura do contador total de tempo para base de cálculo de utilização da esteira.
67
Figura 49 – Estrutura dos contadores de utilização para cada sensor.
Conforme pode ser observados nos anexos deste trabalho, o
contador UPDD pode realizar contagem crescente ou decrescente. Isto depende do
sinal recebido em sua entrada “I”. Como em ambos os casos a contagem deve ser
crescente, foi colocado um contato NA com endereço de memória 0F6h. O
endereço 0F6h é um Estado Interno (EI) default do CLP que é sempre FALSO (“0”).
Sinal “0” na entrada “I” do contador UPDD faz com que a contagem seja crescente.
A entrada “R” serve para resetar a contagem sempre que um pulso
(sinal alto por pelo menos um ciclo) for submetido. Logo, sempre que o EI 318h
receber um pulso, a contagem será resetada.
A entrada “H” (de Habilita) é a responsável pela contagem. Logo, a
cada ciclo em que a entrada “H” tenha sinal alto, o contador será incrementado.
Para esta entrada se usa um EI do CLP que gera pulsos a cada 0,2 segundos. Com
isso o contador total de tempo a cada 0,2 segundos sofrerá incremento. Já para
cada sensor, seu contador só sofrerá incremento a cada 0,2 segundos se o sensor
do mesmo estiver em ON. Podemos observar esta condição se analisarmos que os
contatos NA 100h (sensor 1) e NA 0F3 (pulsos a cada 0,2 segundos) estão em série
(AND). O número logo abaixo das letras “UPDD” no bloco do contador indica o
endereço do registro em que a contagem está sendo feita.
68
6.5 CONTAGEM DE CHAPAS COM SENSOR ANALÓGICO
Nas células de coleta sobre as máquinas seccionadoras o objetivo é
saber quantas chapas a máquina cortou. Conforme pode ser visto na figura 40,
temos 3 sensores. O sensor analógico acompanha o movimento que prensa as
chapas. Este sensor é posicionado de forma que seu excurcionamento seja
proporcional a altura total das chapas. O sensor digital é um sensor por
acionamento mecânico e só acionado quando um conjunto de chapas novas irá ser
cortado. O outro sensor é vinculado à alimentação da serra, ou seja, sempre que
esta estiver cortando o sensor estará ON. O sensor que indica quando há chapas
novas a serem cortadas é necessário por que a serra corta várias vezes o mesmo
conjunto de chapas. Por isso se faz necessário um parâmetro para saber quando se
deve captar o sinal do sensor analógico ou não.
Junto à lógica que faz esta contagem, foi implementada uma lógica
para calibração do sensor analógico, pois se observou que este pode perder sua
calibração com o tempo. Esta calibração segue os seguintes passos:
1º - O operador deixa a máquina em sua posição de máximo
excurcionamento (no caso, de 135 mm) enquanto pressiona uma tecla na IHM. Este
procedimento salva o valor do potenciômetro que será usado como máximo. Veja
figura 50.
Figura 50 – Estado da máquina no instante da captação do valor máximo do sensor analógico.
69
2º - Em seguida o operador deixa a máquina em sua posição de
mínimo (0 mm) enquanto pressiona outra tecla na IHM. Com isto, temos os valores
referentes a 0 mm e 135 mm.
Figura 51 – Estado da máquina no instante da captação do valor mínimo do sensor analógico.
3º - Com estes parâmetros, o CLP calcula um fator usando a
seguinte relação:
𝑓𝑎𝑡𝑜𝑟 = 𝑀𝑎𝑥 −𝑀𝑖𝑛
135
Conforme pode ser visto nos anexos, o programa usa de diversos
operadores, como transformar de inteiro pra real, subtrações e etc. O “fator” será
usado para dividir o valor atual do potenciômetro e assim transformar este valor em
milímetros.
Com o sensor calibrado, a lógica para fazer a contagem começa
quando o sensor por acionamento mecânico recebe uma borda de subida. O
programa pega este sinal e o bufferiza, significando assim que chapas novas irão
ser cortadas. Este sinal bufferizado é colocado em série com o sinal proveniente de
um temporizador de 2 segundos de delay do sinal da serra. Este delay se faz
necessário, pois foi verificado que em aproximadamente 2 segundos após a serra
começar a cortar, a prensa estará exatamente sobre as chapas, dando assim a
medida real destas. Após coletado o valor do sensor analógico, zera-se o buffer do
sensor por acionamento mecânico e com isso só serão computadas novas chapas
quando o sensor por acionamento mecânico receber uma nova borda de subida.
70
Neste momento o CLP já tem o valor total em milímetros das
chapas que estão sendo cortadas. Para saber o número de chapas a que se refere
esse total de milímetros, o CLP divide o valor medido pela espessura da chapa. O
CLP sabe a espessura da chapa, pois faz parte do procedimento do operador inserir
o plano de corte no CLP. O servidor consulta no banco de dados e informa ao CLP
qual a espessura das chapas para aquele plano de corte. Como na grande maioria
das medidas obtidas, o valor encontrado não é um múltiplo exato da espessura da
chapa, foi introduzida uma lógica para arredondamento científico, amenizando
assim o erro desta medida.
6.6 MODELO DE COMUNICAÇÃO POR EVENTOS
Como já foi discutido, se o servidor acessar cada CLP em tempo
real para ler seus dados, o tráfego na rede se tornaria inviável. Outro motivo para
criar uma lógica de comunicação mais inteligente é para casos onde o servidor
estiver fora do ar e existam mudanças de estados nos CLP que sejam relevantes
para o software MES. Ou seja, esta lógica diminui o tráfego de informações na rede
e ainda possibilita ao sistema trabalhar sem a presença do servidor por algumas
quantidades de eventos.
Outro fato que faz esta lógica necessária é que a comunicação é
serial. O servidor faz uma divisão nas leituras de cada rede da seguinte forma:
Figura 52 – Divisão seriada da leitura de cada CLP pelo servidor.
Onde “N” é o número de CLPs presente na respectiva rede e TC é o
tempo máximo de leitura destinado a cada CLP. O servidor não espera
necessariamente um tempo de TC segundos para ler o próximo CLP. Ao acessar
um CLP, o servidor lê todos os endereços relevantes e faz toda a interação
71
necessária com este CLP durante um tempo máximo de TC. Caso esta
comunicação dure menos que TC segundos, o servidor já passa para o próximo
CLP. Com isso se deduz que se um CLP estiver desligado, o servidor esperará TC
segundos (timeout) pela resposta do mesmo. Logo, quanto mais CLPs estiverem
desligados na rede, mais lenta esta ficará. Devido a isso TTOTAL não tem um valor
fixo. O valor deste timeout fica a critério do desenvolvedor do servidor, ou seja, este
é o responsável por decidir qual o tempo máximo de leitura destinado a cada CLP.
Ao acessar um CLP, o servidor lê alguns endereços de memória
relevantes para o monitoramento e uma estrutura de dados do tipo “FILA”. Estes
endereços de memória relevantes são, por exemplo: as luzes indicativas do painel
(outputs) que indicam se a máquina está em trabalhando, parada ou etc.; Registro
com a contagem de peças para cálculo de produtividade; Registro que indica se há
itens a serem lidos na “FILA” e etc.
Esta estrutura de dados do tipo “FILA” é utilizada para salvar os
eventos relevantes do CLP em sua ordem de ocorrência (Evento Log). Sua lógica é
do tipo “FIFO” (First in, First Out). Foi estipulado um tamanho de até 32 eventos
para esta FILA. Logo, se o servidor estiver Offline e ocorrer mais de 32 eventos
relevantes para a leitura, os mais antigos serão descartados.
Também foi reservado para cada evento da FILA um total de 32
registros de dois Bytes cada. Logo, cada CLP deve reservar pelo menos 2048 Bytes
de memória para a FILA (32 registros X 2 bytes X 32 eventos). A figura 53 mostra a
estrutura desta FILA de forma genérica. O primeiro item é usualmente um registro
de tempo no qual ocorreu o evento salvo na FILA (timestamp). Os demais itens são
particularidades de cada projeto podendo ser, por exemplo: Códigos de
funcionários, códigos de ordem de produção, motivos de parada e etc.
A cada evento que precisa ser salvo, estes 32 registros da FILA são
salvos na memória e um registro que contem a quantidade de itens na FILA ainda
não lidos pelo servidor é incrementado. Quando o servidor acessa um CLP uma das
primeiras coisas que ele faz é verificar se este registro contém algo, indicando
assim que há eventos na FILA a serem lidos. Caso existam, o servidor da um sinal
para o CLP (Pull) e com isso o CLP coloca o evento que está na ordem em uma
72
região de memória especifica para o servidor ler. Este sinal de Pull também faz com
que o registro que contém a quantidade de eventos a serem lidos seja
decrementado. Caso o servidor veja que não existem eventos a serem lidos, este
passa para o próximo CLP dando seqüência as rotinas de leituras.
Figura 53 – Estrutura genérica para uma FILA de 32 registros.
Como os três modelos de CLPs possuem drivers diferentes (embora
os dois modelos da série Exper DX sejam muito parecidos, possuem drivers
diferentes) foram necessárias três lógicas diferentes para criar esta estrutura de
comunicação do tipo FILA. Isto ocorreu pelo fato das operações que tornam
possíveis a implementação desta estrutura serem diferentes para cada modelo.
73
6.7 LÓGICA PARA MUDANÇAS DE TELAS NA IHM
Os conjuntos de CLP/IHMs da ATOS oferecem duas maneiras de
programar telas. A que mais se encaixou nas necessidades do projeto é a que usa
um registrador onde o programador insere o número da tela a qual deseja que seja
mostrada e em seguida da um pulso em um EI especifico para fazer esta
atualização.
Na elaboração do programa, quando certas condições acontecem o
programa carrega o numero da tela que deve ser mostrada na IHM. Ambas as
séries dos CLPs trabalham desta maneira e também possuem outro registrador que
contém o número da tela atual que está sendo mostrada na IHM.
A solução encontrada para dar o pulso que atualiza a tela a ser
mostrada foi comparando o número da tela atual com o número da tela alvo. Apesar
da mesma essência, a lógica para cada série de CLP é diferente. Os trechos do
programa que fazem esta lógica no CLP Expert BF são mostrados na figura 54.
Figura 54 – Lógica para atualizar as telas para o CLP da série Expert BF programado no software A1.
74
Onde P50MS é um EI default do CLP que gera pulsos a cada 50
milissegundos. O Bloco funcional “NE” é um operando de comparação de “Não
Igual”. Ou seja, quando ACTUAL_SCR (registro default do CLP que contém o
número da tela atual) for diferente de TARGET_SCR (registro default do CLP que
contém o número da tela alvo) as saídas à direita serão acionadas. A saída
“refresh_scr” foi criada pelo usuário e serve para o programa entrar na região que
da o pulso de atualização. Já saída “refresh2” funciona como uma borda de subida
da saída “refresh_scr” e é esta que da o pulso no EI default do programa que
atualiza a tela, GO_SCREEN.
Para os CLPs da série Expert DX a lógica é um pouco diferente,
pois este possui o recurso de comparação muito limitada, impossibilitando fazer
uma comparação direta entre a tela alvo e a tela atual.
A saída encontrada foi utilizar a função de comparação automática
de registros existente nestes CLPs. Conforme mostra a figura 55, esta função
consiste em na comparação automática feita pelo CLP, em todo ciclo de leitura,
entre dois registros. Os registros de “preset” e de “efetivo” devem ser declarados
antecipadamente.
Figura 55 – Quadro de configuração da função de comparação automática de registros.
75
Esta função compara o conteúdo do registro inicial (no caso, 0690h)
com um número de “presets” relativos (iniciando em 0550h) e de acordo com o
resultado da comparação o EI respectivo (iniciando em 040h) é setado ou não. Ao
olharmos a figura 55, vemos que nos campos destinados aos Registros 01 e 02
temos 1 e 12 “presets” respectivamente. Isto significa que o conteúdo do Registro
01 (0690h) será comparado com UM preset (número contido em 0550h) e caso o
conteúdo do registro 01 for MAIOR ou IGUAL ao do preset, o EI 040h será setado
em TRUE, caso contrário será setado em FALSE. Para o registro 02 (0692h) temos
DEZ comparações do mesmo tipo, sendo que o resultado da comparação com o
primeiro preset (0552h) seta o EI 041h, já com o segundo preset (0554h) quem é
setado é o EI 042h e assim sucessivamente até completar a comparação com os
DEZ presets.
Logo, a maneira encontrada para comparar o número da tela alvo
com o número da tela atual consiste em comprar um registro que contém o número
da tela alvo com dois presets. Onde um preset contém o número da tela atual e o
outro preset contém o número da tela atual + 1. Na figura 56 temos a parte do
programa que faz esta atualização.
Figura 56 – Lógica para atualizar as telas para o CLP da série Expert DX programado no software WinSUP2.
Caso a tela alvo (conteúdo do registro) seja maior ou igual ao
primeiro preset (tela atual), o EI 05Bh será acionado. Já o EI 05Ch só é acionado
quando a tela alvo for maior ou igual ao segundo preset (tela atual + 1). Com esta
76
relação podemos deduzir que a tela atual será igual à tela alvo somente quando o
EI 05Bh for TRUE e o EI 05Ch for FALSE. Analisando a figura 56 vemos que
quando esta condição é satisfeita, o programa pula para o label “NOT”. Quando não
satisfeita significa que se deve atualizar a tela, logo o programa não pula e com o
auxilio do EI default 0F3 (pulsos a cada 0,2 segundos) cria uma borda de subida
sobre o EI 00D8 (EI para atualização da tela).
Estas lógicas de atualização de tela são muito importantes, pois
outra característica dos CLPs da ATOS é que a tecla ENTER da IHM é programada
de fábrica para mostrar a tela “0”. Logo, sempre que o operador da máquina
acionasse a tecla ENTER, a IHM iria para a tela “0” e seria impossível criar uma
interação homem-máquina.
77
7 ANALISE DOS RESULTADOS OBTIDOS
Como a proposta deste trabalho é a coleta dos dados da produção
de uma indústria para um software de supervisão do tipo MES, os resultados
obtidos são de uma forma geral o funcionamento deste software de forma a
acompanhar, relatar e apontar todo o processo de manufatura da indústria, em
tempo real ou para registro.
Esta coleta informatizada busca substituir o modelo manual de
coleta que existe na indústria. Todas as principais máquinas do processo produtivo
da fábrica foram consideradas células de coleta. Esta distribuição destes centros de
informação garante que todo o processo, com todos seus detalhes, seja
acompanhados.
Contudo, como o projeto já está no mercado e em fase de
implantação, grande parte das informações geradas pelo software MES a partir dos
dados coletados por este projeto, é particular da indústria que o comprou, e sua
publicação torna-se indevida. Muitas das vantagens agora vistas pela equipe de
produção da fábrica podem ser úteis à suas concorrentes, por isso só serão
mostradas informações genéricas.
Logo, como tudo que uma máquina faz dentro do chão de fábrica
fica agora registrado, estes dados podem ser utilizados para criar diversos gráficos,
relatórios, ou mesmo para acompanhamento em tempo real. As figuras 57 e 58
mostram as características do funcionamento de duas máquinas em um
determinado tempo. Delas podemos observar que a coleta mostra até o tipo de
produção que a máquina realizou, o tempo que ficou parada, ociosa e etc. A
máquina da figura 57 esteve pouco mais de 74% produção enquanto a máquina da
figura 58 esteve quase 84% do tempo reproduzindo alguma ordem de produção.
Toda a produção da fábrica segue ordens de produção geradas por um sistema de
controle, já existente. Logo, sempre que o funcionário desejar utilizar alguma
máquina, este informará via IHM o que deseja fazer, qual a ordem do processo que
deseja realizar e algumas outras informações que serão captadas pelo software
MES.
78
Figura 57 – Gráfico de utilização de uma determinada máquina e a peças produzidas pela mesma em um determinado turno de produção.
Figura 58 – Gráfico de utilização de uma determinada máquina e a peças produzidas pela mesma em um determinado turno de produção.
Com estes tipos de dados, o gerente de produção tem uma visão
melhor de sua produção, sabendo assim onde estão os gargalos, travamentos e
setores da fábrica que precisam ser aperfeiçoados.
79
Outra funcionalidade possível é acompanhar o que aconteceu em
cada máquina. A figura 59 mostra os eventos ocorridos em uma determinada célula
de coleta em um determinado turno. Esta funcionalidade descreve detalhadamente
tudo o que ocorreu na máquina, como por exemplo, o funcionário que a estava
operando, o tipo de evento ocorrido, o número de peças produzidas, a produtividade
por minuto e etc.
Figura 59 – Lista de eventos, em aberto ou finalizado, em uma determinada máquina.
Outra característica importante que o programa tem é mostrar em
tempo real uma visão mais aérea da fábrica, como se fosse uma planta estrutural
em AutoCAD, só que em tempo real e descrevendo o estado de cada máquina na
fábrica. Isto é, se esta produzindo, parada ou etc. Não é possível mostrar esta
função, pois a planta da fábrica é uma informação sigilosa. Mas a qualquer
momento, quem tiver acesso ao sistema poderá entrar em cada máquina e ver
diversos indicadores sobre a mesma, como por exemplo, o mostrado na figura 60,
que mostra o gráfico das peças produzidas em cada fração de momento de um
turno.
80
Figura 60 – Gráfico discreto de peças produzidas durante um determinado turno de produção.
Para elucidar o funcionamento do sistema como um todo, podemos
observar a figura 61.
Figura 61 – Diagrama de blocos do sistema.
Onde todo módulo tem esta característica, não importando se está
em máquina de pintura, de seccionamento e etc. Os sensores e IHM coletam os
dados que em seguidas são preliminarmente processados pelo CLP para serem
enviados via protocolo Modbus pela rede serial RS-485. O servidor, mestre de todas
as redes, lê estes dados usando rotinas de leituras programadas em linguagens de
mais alto nível para que em conjunto com as informações contidas no banco de
dados, o software MES Guenka-MPI possa realizar suas funcionalidades.
81
8 CONCLUSÃO
A coleta informatizada de dados é de fato uma inovação muito
eficiente e com grande mercado futuro, pois de certa forma completa um processo
de produção automatizado. Não faz muito sentido uma fábrica ter sua produção
com alto grau de automatização se as informações sobre a mesma forem
rudimentares e muito sujeitas a erros e manipulações humanas. Por isto esta busca
crescente por sistemas de coleta e monitoramento informatizados se justifica.
Normalmente ambientes industriais, principalmente de indústrias de
grande porte, são muito hostis para grande parte das tecnológicas recentes. Por
isso ao se tentar implantar um sistema informatizado se deve levar em
consideração diversos detalhes, como que tipo de rede de comunicação utilizar,
qual aparato usar para processar e interagir com os operadores e etc. Este
trabalhou mostrou as principais alternativas hoje existentes para realizar uma
implantação destas. Começando pela estrutura física, este trabalho mostrou como
fazer uso da melhor topologia de rede, como dimensionar os componentes a fim de
obter uma rede confiável e etc. Na questão de programação foi mostrado como
funciona o processamento de um programa em um CLP e indicado como fazer
algumas técnicas de programação em ladder, principalmente para os CLPs da
marca ATOS, que são bastante utilizados por terem um ótimo custo benefício.
Neste ponto também pode se observar as diferenças de utilidades entre os
sensores digitais e analógicos.
Os resultados obtidos são muito satisfatórios, pois o projeto
realizado atende ao mercado, tendo sua primeira implantação já em fase de testes
e treinamento em ambiente industrial real. O firmware produzido mostrou-se
também muito útil e flexível, pois pode ser aperfeiçoado e moldado de acordo com
as necessidades do cliente. Com os dados obtidos através do projeto foi possível
visualizar o ganho de controle e planejamento que o setor de gerenciamento de
produção pode ter ao utilizar-lo.
Este estudo pode servir para quem desejar implementar alguma
82
característica mostrada neste trabalho, seja de forma geral ou somente sobre
alguns aspectos, pois uma rede serial é genérica para qualquer utilidade ou mesmo
a programação sobre um CLP pode ser para diversas funções.
Para estudos posteriores, este trabalho pode auxiliar a elaboração
de tutoriais ou manuais de projetos de coletas de dados industriais utilizando CLPs.
Também seria bastante interessante a interação com novas funções ou tecnologias,
como por exemplo, leitores de códigos de barras e identificador de digitais, para
assim elevar mais ainda o grau de automatismo do sistema como um todo. Na
questão que diz respeito a avaliação do aprendizado do autor durante a graduação,
este trabalho teve uma importância impactante, pois testou e aprimorou diversas
áreas de conhecimento vistas durante o curso, como o tipo de programação de
baixo nível utilizada, a fragilidade e importância de uma rede de comunicação e etc.
REFERÊNCIAS BIBLIOGRÁFICAS
83
[1] VALÉRIO, Marcus. CLP – Controlador Lógico Programável. ETEP faculdades [2] SEVERO, Bernardo da S. F. Curso de Controladores Lógicos Programáveis. Laboratório de Engenharia Elétrica – LEE -Universidade do Estado do Rio de Janeiro - RJ. [3] STOCLER, Geraldo. Controlador Lógico Programável. Centro de formação profissional “José Inácio Peixoto” – Unidade Operacional – SENAI – MG. [4] MIGOTTO, Matheus W. Desenvolvimento de Sistemas e Experimentos Acadêmicos para Auxílio Didático a Práticas Laboratoriais nas Áreas de Mecatrônica, Controle e Automação Industrial. Universidade Estadual de Londrina – UEL – PR, 2009. [5] CASATI, Hugo F. G. Norma IEC 61131-3 para programação de controladores programáveis: Estudo e aplicação. Universidade Federal do Espírito Santo – UFES – ES, 2005 [6] NIEDERAUER, Mastelari. Automação Industrial Utilizando CLPs. UNICAMP – SP – 2007. [7] BARROSO, Carlos., ARAUJO, Emerson., DE SÁ, Marciene., TREVISAN, Pedro. Sensores. Universidade Metodista de Piracicaba – SP, 2008. [8] CANZIAN, E. Minicurso: Comunicação serial RS-232. Disponível em <http://tecnociencia.inf.br/comunidade/arqautor/edmur/csrs232.swf>. Acesso em 30/09/2010.
[9] ALCÂNTARA, FILHO, R. Padrão Serial RS-232. Disponível em: <http://www2.eletronica.org/artigos/eletronica-digital/padrao-serial-rs-232>. Acesso em: 30/09/2010. [10] KRON MEDIDORES. Informativo: Conceitos Básicos de RS-485 e RS-232. Disponível em <http://www.kronweb.com.br/br/downloads_faqs.php>. Acesso em 01/10/2010.
[11] CAVALCANTE, Walmy A. M. S. Redes industriais – aula 04. Instituto Federar de Educação, Ciência e Tecnologia Rio Grande do Norte – CEFETRN – RN, 2010.
[12] CUNHA, Judson M. Protótipo de rede industrial utilizando o padrão serial rs485 e protocolo modbus. Universidade Regional de Blumenau – FURB – SC, 2000.
[13] DENARDIN, Gustavo W. MODBUS sobre linhas seriais. Universidade Tecnológica Federal do Paraná – UTFPR – PR, 2005. [14] BELAN, Helder C. Sistema de Acompanhamento da Execução de Manufatura. Universidade Estadual de Londrina – UEL – PR, 2005. APÊNDICES
84
Apêndice A – Código para coletar número de chapas cortadas
85
86
87
88
ANEXOS
Anexo A – Características Gerais da Série Expert DX
89
Anexo B – Esquemas de Ligação para o Modelo Expert DX 2450.10 P
90
Anexo C – Esquemas de Ligação para o Modelo Expert DX 2450.70 P
91
Anexo D – Características Gerais da Série Expert BF
92
Anexo E – Esquemas de Ligação para o Modelo Expert BF 2850.20 N