Informtica Industrial
Porto, Janeiro de 2015
ndice
1
Introduo ............................................................................................................................. 1
Arquitetura ............................................................................................................................ 2
Comunicaes ............................................................................................................... 4
4.2
Java ................................................................................................................................ 4
4.3
IsaGRAF ......................................................................................................................... 5
Lista de Figuras
Figura 1 - Simulador da linha de produo ................................................................................... 1
Figura 2 - Digrama de Classes inicial ............................................................................................. 2
Figura 3 - Diagrama de Classes final.............................................................................................. 3
Figura 4 - Representao de Objetos ............................................................................................ 3
Figura 5 - Diagrama de objetos instanciados em IsaGRAF ............................................................ 4
Figura 6 - Objeto da classe pusher, instanciado e com respetivas entradas e sadas .................. 6
Glossrio
FB
FBD
UML
PLC
MES
ST
SFC
Function Block
Function Block Diagram
Unified Modeling Language
Programmable Logic Controller
Manufacturing Execution System
Structured text
Sequential function chart
ii
II Informtica Industrial
1 Introduo
O trabalho prtico do qual resulta o presente relatrio inserido na unidade
curricular de II Informtica Industrial do Curso de Mestrado Integrado em Engenharia
Eletrotcnica e de Computadores. Consiste no estudo e implementao de tcnicas e
mtodos para automao de uma linha de produo flexvel. Com o presente relatrio
pretende-se descrever a metodologia, os resultados e concluses do trabalho prtico.
Fazendo uma descrio geral do que foi o trabalho e o que se pretendia que fosse,
inicialmente, passava por elaborar uma arquitetura da soluo para o problema e
transcreve-la atravs de uma linguagem de modelao que permitisse representar o
sistema de forma padronizada. escolhido o UML. Posteriormente so definidas as
linguagens ou ferramentas usadas para implementar o modelo escolhido. Foram elas:
Java para implementao da gesto e do controlo de alto nvel; IsaGRAF para controlo
de baixo nvel, por exemplo mquinas, tapetes e rob 3D.
Ao longo do trabalho estritamente necessrio testar as partes desenvolvidas
separadamente e tambm em conjunto, para se poder aferir acerca dos resultados
obtidos at ento e verificar o cumprimento dos requisitos do sistema. Para isso usado
um simulador da linha de produo previamente disponibilizado.
medida que se vai desenvolvendo o trabalho normal que se tome
conhecimento de novas situaes e tambm novos mtodos e tcnicas. Ento normal
que se mude e aperfeioe o modelo inicial e em resultado disso tambm um
melhoramento da soluo final.
Por fim so apresentadas concluses e ideias que ficam em aberto para uma
realizao futura do trabalho.
2 Grupo de Trabalho
O grupo de trabalho foi estabelecido como sendo de 4 pessoas. Inicialmente fez-se uma primeira arquitetura da soluo, ainda muito generalista e pouco pormenorizada
sem se saber ao certo como seria implementada. A seguir foram divididas tarefas. A
partir desta altura os meus pares decidiram trabalhar isoladamente, de forma fechada e
para eles mesmos. Tornou-se assim, impossvel desenvolver um trabalho em equipa.
Deixou de haver, por parte dos colegas, comunicao til e produtiva bem como
discusso positiva e construtiva sobre o trabalho. Da minha parte, por mais solicitaes
que fizesse, nunca consegui sequer observar o trabalho desenvolvido por eles e vi
algumas vezes o meu trabalho ser desprezado pelos colegas, os quais supostamente
teramos objetivos em comum. Em fim, uma situao difcil de perceber e lidar, mais
difcil ainda do que o trabalho propriamente dito.
1
II Informtica Industrial
3 Arquitetura
Depois do que se relata no captulo anterior, facilmente se percebe que houve
uma necessidade de adaptar o trabalho s condies do grupo. Aproveitando o que se
tinha feito a nvel de diviso de tarefas, da qual me foram atribudas a descarga e a
montagem foi-se desenvolvendo o trabalho. Havia ento uma arquitetura inicial que
basicamente envolvia uma descrio de classes e alguns procedimentos tal como se
representa na figura seguinte:
3
II Informtica Industrial
4 Tecnologias Utilizadas
4.1 Comunicaes
Uma das tarefas que executei, tambm, foi a pesquisa de protocolos e tecnologias
de comunicao entre a aplicao de baixo nvel, neste caso IsaGraft, e de alto nvel, o
MES, desenvolvido em linguagem Java. Com a ajuda do docente cheguei concluso
que a comunicao deveria ser feita utilizando a biblioteca Jamod que pode ser usada
como uma aplicao, em Java, que implementa o protocolo Modbus em cima da camada
TCP. A biblioteca tem ao seu dispor mtodos que permitem implementar quer servidores
quer clientes. Neste trabalho e para comunicao entre MES e IsaGRAF definiu-se que
o IsaGRAF seria servidor enquanto o MES seria cliente. Para comunicao entre o
simulador e os controladores de baixo nvel, implementados no IsaGRAF, tambm
usado o protocolo de comunicao Modbus mas o simulador neste caso servidor e o
controlador cliente. Com esta forma de comunicao possvel usar o meio fsico
Ethernet (IEEE 802.3) com tramas codificadas segundo as normas Modbus.
4.2 Java
A escolha desta linguagem de programao para implementao das classes de alto
nvel de abstrao foi feita pela facilidade da criao de interfaces visuais que tambm
eram um requisito do projeto. Nomeadamente elaborar e ordenar operaes, selecionar
opes e ter acesso a estatsticas de fabrico.
4
II Informtica Industrial
4.3 IsaGRAF
Este software de controlo de baixo nvel foi escolhido pelo fcil acesso ao mesmo e
por ser parte integrante dos contedos da unidade curricular. tambm um programa
que pode ser usado como simulador de PLC e por isso interessante para cumprir os
requisitos de controlo inerentes. Dentro deste so permitidas e foram usadas as
linguagens ST, FBD e SFC, todas elas previstas na norma (IEC 61131-3). Nos FBD so
utilizados FB, os quais so uma forma adequada de estruturar e instanciar objetos.
5 Metodologia e Implementao
Procurei ento implementar as classes que me tinham sido incumbidas,
comeando pela classe tapete. Esta classe foi implementada em IsaGRAF atravs de
Function Block (FB). Decidi assim, pois este software simula um PLC que na realidade
controlaria cada tapete real e assim faz sentido implementar esta classe na camada de
baixo nvel, PLCs. A utilizao de FB foi um skill adquirido no decorrer deste trabalho e
demonstrou ser uma mais-valia, pois permite de uma forma simples implementar a
classe desejada e instancia-la, criando assim objetos dessa classe. Tudo em linguagem
de baixo nvel, possvel de ser implementada num PLC. Dentro de cada FB
implementada a logica de controlo na linguagem grfica SFC e os comandos que
operam ao mais baixo nvel, liga motores e l sensores por exemplo, so implementados
em ST. Posteriormente cada FB instanciado dando origem aos objetos necessrios.
Por sua vez estes FB podem ser usados aquando da criao de objetos de uma classe
instanciados atravs de FBD.
Foi implementado um objeto da classe Gestor atravs de um programa em ST
onde so tambm implementadas as operaes necessrias e pertencentes classe.
Este objeto responsvel por gerir os pedidos e de alguma forma fazer a gesto dos
objetos das classes de mais baixo nvel, que reportam a este. No fundo faz as vezes do
MES e foi uma estratgia adotada para poder testar e validar o restante trabalho que fui
desenvolvendo. Diga-se que sempre houve a preocupao de testar as partes
desenvolvidas separadamente e juntamente com as restantes, para assim serem
validados os requisitos do projeto.
Na parte da montagem foi feito um programa que inicializa o rob numa posio
pr-definida. Este mtodo foi implementado num programa em SFC e no foi descrito
no diagrama de classes por no ser relevante. Digamos que uma parte do projeto
isolada sem modificao ou interao ao longo do funcionamento do sistema. Apenas
aquando da sua inicializao.
Em relao descarga, esta foi feita recorrendo a um objeto que um programa
em FBD feito com instncias de outros objetos que so FB j mencionados na
arquitetura. So eles objetos da classe Tapete.Simples e suas sub-classes. Importa
referir que cada pusher poderia, e segundo a arquitetura deveria, ser um objeto
instanciado separadamente. No entanto para simplificar a implementao foi elaborado
um s objeto no qual se englobam os dois pusher. Por fim h cdigo em FBD que
instancia um objeto do tipo Descarga, que contm um objeto em FB representado na
figura seguinte:
5
II Informtica Industrial
E relevante referir tambm, e tal como se pode observar na fig.4 que h classes
ou objetos de classes que partilham recursos entre si, que no fundo so objetos de
subclasses partilhados por diferentes classes superiores.
6 Resultados e Concluses
Em primeiro lugar uma concluso que retiro deste trabalho do foro social e
profissional. Quando numa equipa de trabalho no h esprito de colaborao,
comunicao, ponderao e entreajuda, o resultado um trabalho que fica aqum das
espectativas. Mais ainda, quando no h vontade de trabalhar em equipa ou no se
sabe faze-lo, o resultado tambm no o melhor. Este tipo de projetos, tal como a
maioria dos projetos hoje em dia requerem profissionalismo, coordenao, estratgia,
escalonamento, discusso sobre o trabalho e consenso. No se pode resumir diviso
de tarefas e apresentao final.
Quanto a resultados concretos, obtive uma parte do sistema a funcionar
corretamente, a descarga. Na outra parte, a qual tambm trabalhei, a montagem,
houveram alguns problemas com a distino e sincronizao das ordens, que no fundo
era tambm parte da gesto que na minha opinio e em trabalhos futuros deveria ser
implementada nos MES. Passando a classe a que chamei Gestor a ser uma classe
apenas de interface. Esta seria uma alterao da arquitetura a fazer futuramente.
No foi possvel desenvolver melhor a parte da montagem devido ajuda que
ainda prestei a um colega que demonstrava estar muito atrasado em relao ao
andamento do trabalho. Tambm devido ao tempo despendido na tentativa de resoluo
de um problema resultante aquando da juno de partes que os outros colegas tinham
feito, problema que o grupo no soube resolver.
Um resultado bem mais positivo foi a experiencia e capacidade de implementao
de solues para trabalhos desta ordem e com as tecnologias descritas.
6
II Informtica Industrial
7
II Informtica Industrial