Trabajo Fin de Grado Grado en Ingeniería Electrónica...
Transcript of Trabajo Fin de Grado Grado en Ingeniería Electrónica...
42
Equation Chapter 1 Section 1
Trabajo Fin de Grado
Grado en Ingeniería Electrónica, Robótica y
Mecatrónica
Diseño y Programación de un sistema automatizado de
etiquetado de piezas basado en reconocimiento de piezas con
visión artificial y almacenamiento robotizado
Autor: Ángel Masero Berzal
Tutor: Alfredo Pérez Vega-Leal
Dep. de Ingeniería Electrónica
Escuela Técnica Superior de Ingeniería
Universidad de Sevila
Sevilla, 2017
ii
iii
Trabajo Fin de Grado
Grado en Ingeniería Electrónica, Robótica y Mecatrónica
Diseño y Programación de un sistema automatizado
de etiquetado de piezas basado en reconocimiento
de piezas con visión artificial y almacenamiento
robotizado
Autor:
Angel Masero Berzal
Tutor:
Alfredo Pérez Vega-Leal
Profesor contratado doctor
Dep. de Ingeniería Electrónica
Escuela Técnica Superior de Ingeniería
Universidad de Sevilla
Sevilla, 2017
iv
v
Trabajo Fin de Grado: Diseño y Programación de un sistema automatizado de etiquetado de piezas basado en
reconocimiento de piezas con visión artificial y almacenamiento robotizado
Autor: Angel Masero Berzal
Tutor: Alfredo Pérez Vega-Leal
El tribunal nombrado para juzgar el Proyecto arriba indicado, compuesto por los siguientes miembros:
Presidente:
Vocales:
Secretario:
Acuerdan otorgarle la calificación de:
Sevilla, 2017
El Secretario del Tribunal
vi
vii
A mi familia y mi novia
A los amigos que me dejo la
carrera
viii
ix
Agradecimientos
Este Trabajo Fin de Grado va dedicado a mi familia quienes me han dado la posibilidad de formarme como
ingeniero a pesar de las dificultades que nos puso la vida, ya que era lo que había soñado desde pequeño.
En especial este trabajo va dedicado a mis padres Angel e Isabel quienes sin su apoyo incondicional nada de
esto hubiera sido posible.
También agradecer a mis compañeros con los que he compartido grandes momentos y me han enseñado
tantas cosas en los profesional como en lo personal.
Y por último agradecer a aquellas personas que día a día en mi trabajo me hacen crecer como profesional.
Ángel Masero Berzal
Sevilla, 2017
x
xi
Resumen
Hoy en día la automatización y robótica en la industria convive fielmente con el ser humano y logra mejorar
las condiciones de calidad, producción y aprovechamiento de los recursos.
Debido a esta gran importancia de la automatización y la evolución a la industria 4.0 este trabajo trata del
diseño desde el punto de vista eléctrico, electrónico, neumático y programación de una célula robotizada.
xii
xiii
Abstract
Nowdays automation and robotics coexists faithfully with the human improving the quality, production and
use the resources.
Due to this importance of automation and evolution of industry 4.0 this work deals about design electrical,
electronic, pneumatic and programming robotic cell.
xiv
Índice
Agradecimientos ix
Resumen xi
Abstract xiii
Índice xiv
Índice de Figuras xvi
Índice de Tablas xix
Notación xxi
1 Introducción 1 1.1 Contexto del Proyecto 1 1.2 Industria 4.0 1 1.3 Motivación 2 1.4 Objetivos 2 1.5 Estructura del Proyecto. 2
2 Hardware 4 2.1 Descripción general 4
2.1.1 Máquina de etiquetado 4 2.1.2 PLC (Programmable Logic Controller) 5 2.1.3 Cámara O2D220 para reconocimiento de objetos 6 2.1.4 Pantalla IHM GTO4310. 9 2.1.5 Pestillo seguridad puerta del Robot. 10 2.1.6 Sensores 12 2.1.7 Electroválvulas y cilindros. 13 2.1.8 Célula robotizada 15 2.1.9 Barrera de seguridad 17
2.2 Conclusiones generales del capítulo. 18
3 SOFTWARE 20 3.1 PL7 Pro 20 3.2 Efector dualis 21 3.3 Vijeo Designer 6.2 25 3.4 RobotStudio 5.61 26 3.5 Conclusiones generales del capítulo. 27
4 DIAGRAMA DE LA APLICACIÓN 29 4.1 Descripción General. 29 4.2 Diagrama de comunicaciones. 29 4.3 Diagrama de flujo Máquina Etiquetadora 30 4.4 Diagrama de flujo Robot Clasificador 32
5 PROGRAMACIÓN 35 5.1 Programación de los elementos de la máquina etiquetadora. 35 5.2 Programación IHM. 37
5.2.1 Configuración del WebGate y acceso remoto. 41
xv
5.3 Programación del Robot IRB 1200. 43
6 CONCLUSIONES 49 6.1 Lista de conclusiones. 49 6.2 Futuros trabajos. 49
BIBLIOGRAFÍA 51
xvi
ÍNDICE DE FIGURAS
Figura 1: Presentación general de la máquina de etiquetado 4
Figura 2: PLC (Controlador Lógico Programable) 5
Figura 3: Conexionado Eléctrico del PLC 5
Figura 4: Cámara O2D220 6
Figura 5: Comunicación de la cámara. 7
Figura 6: Pineado de la cámara 7
Figura 7: Entradas de la cámara al PLC 8
Figura 8: Salidas del PLC a la cámara 8
Figura 9: IHM 9
Figura 10: Comunicación PLC-IHM 9
Figura 11: Pestillo Electro-Mecánico de seguridad 10
Figura 12: Montaje del Pestillo en la puerta. 11
Figura 13: Conexionado del pestillo con seguridades cableadas y PLC. 11
Figura 14: Conexionado del sensor inductivo M12 y 4 pines. 12
Figura 15: Spot-Distancia del sensor. 12
Figura 16: Fotocélula-Reflector-Conexionado. 12
Figura 17: Esquema neumáticos para los cilindros con vástago recto 13
Figura 18: Esquema neumáticos para los cilindros con cámara para giros. 14
Figura 19: Presentación de la Célula Robotizada 15
Figura 20: Presentación de la Célula Robotizada 16
Figura 21: Robot IRB 1200 de ABB 16
Figura 22: Cortina de seguridad M4000 de Sick 17
Figura 23: Configuración autómata en PL7-PRO 20
Figura 24: Configuración IP de la Cámara 21
Figura 25: Configuración de los diferentes programa en función de los objetos 21
Figura 26: Definición del Programa 1 y su contorno 22
Figura 27: Configuración de las entradas y salidas 22
Figura 28: Programación de la comunicación del PLC y la cámara. 23
Figura 29: Ejemplo real de un test no superado. 24
Figura 30: Configuración inicial de la aplicación Vijeo Designer 25
Figura 31: Configuración inicial de la aplicación RobotStudio 26
Figura 32: Diagrama de comunicaciones. 29
Figura 33: Estructura de programa PLC. 35
xvii
Figura 34: Programación de robot. 36
Figura 35: Panel IHM inicio 37
Figura 36: Creación de Usuario. 38
Figura 37: Panel IHM alarma. 38
Figura 38: Panel IHM ciclo principal. 39
Figura 39: Registro de Trazabilidad. 39
Figura 40: Panel IHM robot. 40
Figura 41: Configuración del acceso remoto. 41
Figura 42: Acceso en remoto a través de PC y móvil. 42
Figura 43: Definición del Work Objet con dos puntos en eje X y uno en eje Y 43
Figura 44: Definición de los Work Objets 43
Figura 45: Diferentes simulaciones del ROBOT 47
xviii
xix
ÍNDICE DE TABLAS
Tabla 1: Conexión de la cámara de IFM 6
Tabla 2. Selección de Programas en la cámara 7
Tabla 3. Direcciones Uni-TELWAY 9
xx
xxi
Notación
IOT Internet of Things.
PLC Programmable Logic Controller.
IHM Interfaz Humano Maquina.
NA Normalmente Abierto.
NC Normalmente Cerrado.
M12 Métrica 12, Rosca métrica estándar.
EPS Electronic Position Switch.
KM0 Estado de Referencia o Pieza patrón
1
1 INTRODUCCIÓN
1.1 Contexto del Proyecto
a automatización es un tema en auge en la actualidad debido a los numerosos sistemas, procesos y
máquina que existen.
Más concretamente y centrándonos en lo que este trabajo va a llevar a cabo, vamos a tratar el tema de la
automatización y robótica en la industria.
La automatización industrial es la aplicación de diferentes tecnologías para controlar y monitorear un proceso,
máquina, aparato o dispositivo que por lo regular cumple funciones o tareas repetitivas, haciendo que opere
automáticamente.
En España más del 30% de la economía se basa en la industria, y un 11% de la población ocupada pertenece a
este sector. Gracias a la automatización podemos obtener un aumento de la calidad, producción y una
trazabilidad de los productos.
1.2 Industria 4.0
El concepto de industria 4.0 es un término cada día más real que se le atribuye a una cuarta revolución
industrial o una industria inteligente, capaz de organizar los medios de producción.
El objetivo que persigue esta revolución industrial es una adaptabilidad a las necesidades actuales como
el internet de las cosas, datos en la nube, optimización de recurso o trabajos en remoto.
El término Industria 4.0 fue acuñado por el gobierno alemán para describir la fábrica inteligente, una
visión de la fabricación informatizada con todos los procesos interconectados por Internet de las Cosas
(IOT).
La modernización de la industria llevará a cabo 6 tecnologías importantes:
1- IOT y Sistemas Ciberfísicos: El concepto de IIoT (Industrial Internet of Things) se refiere al uso de
las tecnologías IoT en los procesos industriales. Los sistemas Ciberfísicos son todos aquellos
dispositivos que integran capacidades de procesado, almacenamiento y comunicación con el fin de
poder controlar uno o varios procesos físicos. Los sistemas Ciberfísicos están conectados entre sí y
a su vez conectados con la red global gracias al paradigma IoT.
2- Impresión 3D: Permite la obtención de prototipos en materiales más baratos y al ser un sistema
rápido permite la modificación rápida sin encarecer el proceso de fabricación.
3- Big Data, Data Mining y Data Analytics: La cantidad de información que actualmente se almacena
en relación a diferentes procesos y sistemas (tanto industriales como logísticos), servicios (ventas,
conexiones entre usuarios, consumo eléctrico, etc.) o tráfico de datos (logs en routers y equipos,
entre otros) resulta ingente e inmanejable de forma manual. El análisis de estos datos puede
proporcionar información muy valiosa acerca del comportamiento de estos procesos; se pueden
prevenir problemas en un determinado proceso industrial a través de la detección de resultados o
medidas anómalas (sin la necesidad de haber definido previamente qué medida es o no es anómala)
o determinar qué eventos están relacionados dentro de un proceso más complejo facilitando su
gestión a través de la predicción, sabiendo de antemano que un evento desencadenará otro con
cierta probabilidad.
4- Inteligencia Artificial: Son herramientas necesarias capaces de procesar grandes volúmenes de
información en tiempo real que obtenemos de tecnologías como el Big Data, así como algoritmos
capaces de aprender de forma autónoma a partir de la información que reciben de fuentes externas
L
2
optimizando procesos en tiempo real, recursos ,etc.
5- Robótica Colaborativa: Es un término que define la nueva generación de robots capaces de
cooperar con el operario de manera cercana, ahorrándonos restricciones de seguridad.
6- Realidad Virtual y Realidad Aumentada: El uso de esta tecnología nos facilita la etapa de diseño
teniendo una visión final del producto y automatización de los procesos, el control de la fabricación
el entrenamiento y la formación de los trabajadores en entornos no reales.
1.3 Motivación
La motivación de este proyecto viene en parte provocada por la necesidad de crear una máquina de etiquetado
y clasificación, así como el desarrollo de una trazabilidad automatizada para la industria que mejore el proceso
de etiquetado y embalaje.
Como motivación personal es la demostración de mis capacidades deductivas, de diseño y programación para
la vida laboral.
1.4 Objetivos
Este proyecto desea centrarse en el diseño y programación de una célula robotizada que consta de una máquina
de etiquetado de productos mediante un PLC, visión artificial, un IHM para una interfaz con el operador, un
registro de trazabilidad de productos automatizada y un robot autónomo capaz de clasificar y empaquetar el
producto.
1.5 Estructura del Proyecto.
Las etapas del diseño del proyecto se pueden englobar según las siguientes categorías:
1- Diseño Eléctrico y Neumático:
a. Diseño eléctrico del autómata y cartas de Entradas y Salidas.
b. Elementos de seguridad.
c. Comunicación del PLC con la cámara de visión artificial, Robot e IHM.
d. Diseño Neumático de cilindros y electroválvulas.
2- Programación del PLC.
3- Programación visión artificial.
4- Programación del IHM.
5- Programación del Robot.
3
4
2 HARDWARE
2.1 Descripción general
En este apartado vamos a presentar el Hardware utilizado para el diseño así como una descripción de su
funcionamiento y conexionado para la interacción con otros elementos del sistema, bien sea eléctricamente,
neumáticamente,etc.
2.1.1 Máquina de etiquetado
En esta sección se presenta el diseño en 3D con el programa SketchUp de una máquina automatizada de
etiquetado de piezas.
Consta de las siguientes partes:
Figura 1: Presentación general de la máquina de etiquetado
El producto del tipo A o B vendrá depositado en un pallet proveniente de una máquina anterior de mecanizado
y pasará por una cámara de visión artificial que reconocerá el producto. El pallet llega al puesto y se indexa,
una vez indexado la maquina etiquetadora bajará para poner la etiqueta por calor que corresponde al producto
previamente informada por la cámara.
Etiquetado de producto A y B
Pinzas de cierre y giro
Elevador
Indexador de Pallet
Cinta transportadora
5
Tras finalizar el etiquetado, para embalar luego, debemos girar la pieza para que la etiqueta quede abajo, por lo
que sube el elevador con la pieza, cierran las pinzas, baja el elevador para no producir interferencias
mecánicas,gira el producto, abre depositando el producto de nuevo en la plataforma del elevador y baja para
luego quitar el indexado del pallet y abrir el tope que para el pallet y poder continuar hasta el puesto del robot.
2.1.2 PLC (Programmable Logic Controller)
Para el control y automatización de la célula robotizada ultimaremos un controlador lógico programable del
tipo TSX 573623M de Modicon Premium (Schneider).
La programación del dispositivo puede realizarse en Grafcet, Ladder, St(Estructurado) y texto plano, siendo el
más común para la industria Ladder debido a su simplicidad en el código y en su parecido a contactos NA y
NC eléctricos.
Figura 2: PLC (Controlador Lógico Programable)
El PLC constará de una tarjeta TSX IBY 100 para la conexión Interbus entre el PLC y el robot, 2 cartas de 64
entradas y dos cartas de 64 salidas.
La pantalla IHM irá conectada en el terminal mediante protocolo de comunicación Uni-telway.
La cámara de visión artificial irá conectada por entrada/salida al PLC.
Figura 3: Conexionado Eléctrico del PLC
6
2.1.3 Cámara O2D220 para reconocimiento de objetos
Se trata de una cámara de visión artificial con un software específico para el reconocimiento de imagen,
buscando en el contorno de los objetos y pudiendo dar información al controlador.
Las posibilidades de aplicación de este sensor de contornos abarcan desde el control de presencia, orientación,
posición, así como tareas de clasificación y cálculo, hasta controles de calidad.
La programación de este sensor se realiza con un modelo perfecto de la pieza que queremos controlar y
asignamos restricciones para que en el proceso de clasificación considere una pieza como buena o mala
dependiendo del porcentaje de similitud que tenga con el modelo. Estas restricciones pueden ser tonalidades de
color, forma o presencia de una parte del conjunto entre otras, dando por ejemplo como buena una pieza que
coincide en contorno pero no tiene presencia de un tornillo.
Figura 4: Cámara O2D220
El conexionado eléctrico y la comunicación se indican en la siguiente tabla:
Tabla 1: Conexión de la cámara de IFM
7
El esquema de comunicaciones quedaría de la siguiente manera:
Figura 5: Comunicación de la cámara.
A- Conector de M12, con 8 cables para Trigger, Selección de programa, Ready, OK/NOK de la
evaluación y alimentación.
B- Sistema de control, en nuestro caso PLC.
C- Trigger externo que nuestro caso vendrá desde una salida de PLC cuando se cumplan ciertas
condiciones.
D- Iluminación externa para hacer contraste y tener contornos más nítidos.
Con los pines 7 y 8 podemos elegir hasta 4 programas con 4 reconocimientos de piezas diferentes, ya que se
tratan de señales binarias.
Tabla 2. Selección de Programas en la cámara
Pin-7 Pin-8 Programa seleccionado
0 0 Programa 0
0 1 Programa 1
1 0 Programa 2
1 1 Programa 3
El conexionado eléctrico en PLC a través de entradas y salidas quedaría de la siguiente forma:
Figura 6: Pineado de la cámara
8
Figura 7: Entradas de la cámara al PLC
Figura 8: Salidas del PLC a la cámara
9
2.1.4 Pantalla IHM GTO4310.
Para el Interface Humano Máquina, que es la definición de IHM, optamos por un modelo de Schneider táctil,
como es el GTO4310 que es fácilmente programable y con conectividad sencilla al PLC, además de
ofrecernos una conectividad Ethernet, webgate y ftp server.
Figura 9: IHM
La comunicación entre PLC y el IHM será a través de Uni-Telway tal y como se muestra en la Figura 10.
El protocolo de comunicación Uni-Telway consiste en un bus de campo que se utiliza para la comunicación
entre dispositivos del mismo tipo en función de un protocolo definido por Schneider Electric.
Dentro de la red Uni-Telway el IHM pasará a formar parte de un esclavo controlado por el maestro (PLC).
Tabla 3. Direcciones Uni-TELWAY
Dirección Función
0 Es siempre el Maestro de Uni-Telway
1-3 PC con XWAY driver
4-7 Esclavos
Figura 10: Comunicación PLC-IHM
10
Dentro del modelo de capas OSI, consta de siete capas jerarquizadas, cada una de las cuales desempeña un
papel específico dentro de las funciones necesarias para la interconexión de sistemas. Cada capa se comunica
con la capa homóloga de otros dispositivos mediante protocolos estandarizados. Dentro de un mismo
dispositivo, las capas se comunican con las adyacentes mediante interfaces de hardware o software.
Este bus de campo cumple los requisitos de este modelo aun así sin tener todas las capas ya que solamente
necesita las capas de aplicación, red, enlace y física.
En la Capa de Aplicación el protocolo Uni-Telway es un protocolo del tipo CLIENTE/SERVIDOR que
permite a cada dispositivo de un bus Uni-Telway enviar o recibir solicitudes.
Algunos dispositivos pueden asumir el doble papel de CLIENTE y SERVIDOR. Por ejemplo, un PLC hace de
SERVIDOR en sus tareas de sistema (funciones de programación, ajuste, diagnóstico, etc.), pero puede hacer
de CLIENTE para el código de programa de usuario (envío de comandos, lectura de estado, etc.) con respecto
a otro PLC, al control digital de herramientas mecánicas, a un sensor o a un protector.
En la Capa de Red del bus Uni-Telway se utiliza para definir y emplear las direcciones de los dispositivos que
se comunican entre sí.
Dentro de la Capa de Enlace el bus se basa en el principio de comunicación maestro/esclavo. La razón de ser
de la capa de enlace es la definición de un método de comunicación de bajo nivel para el medio de
comunicación (capa física).
Y por último la Capa Física del modelo OSI sirve para caracterizar la topología del bus o red de
comunicaciones, así como el medio (cable, fibra óptica, etc.) que transportará la información y su codificación
eléctrica. Dentro de la estructura de un bus Uni-Telway, la topología puede ser de encadenamiento, derivada o
una mezcla de ambas. El medio está formado por pares trenzados apantallados y la señal es una señal de banda
base con una velocidad predeterminada de 9.600 bits/s, paridad impar, 8 bits de datos y 1 bit de parada.
2.1.5 Pestillo seguridad puerta del Robot.
Como elemento de seguridad y muy importante dentro de nuestra célula, debemos definir un pestillo de
seguridad en la puerta de acceso a la isla, para la caída de tensión y fluido en la célula robotizada con el fin de
proteger al operario ante un peligro de atrapamiento por cilindros, manutención, pinzas…, o por el golpe del
robot.
Para ello se ha definido un pestillo de la marca EUCHNER con la referencia MGB-L1HE-ARA-L-110690.
Figura 11: Pestillo Electro-Mecánico de seguridad
Este elemento de seguridad consta de una seta de emergencia para tirar el servicio de la máquina, un botón de
petición de apertura y un botón de rearme, para que al cerrar de nuevo la puerta entre en funcionamiento
tensión y fluidos.
11
Figura 12: Montaje del Pestillo en la puerta.
El conexionado de este elemento de seguridad con el PLC y con la cadena de seguridad es el siguiente:
Figura 13: Conexionado del pestillo con seguridades cableadas y PLC.
Monitorización del estado de la puerta-ENTRADA AL PLC
Petición de apertura-E
NTR
AD
A
AL P
LC
Led de petición apertura-SA
LIDA
D
EL P
LC
Cableado de la Seta de Seguridad en la cadena de
seguridad con la demás seta de la CELULA ROBOTIZADA
Autorización de apertura-S
ALID
A
DE
L PLC
Salidas que activan el relé de
seguridad cuando la puerta está cerrada
Entradas que im
piden el funcionam
iento del pestillo por anom
alías de seguridad
12
2.1.6 Sensores
Para la detección de piezas y posiciones de los cilindros se han utilizados dos tipos importantes de sensores:
Sensor inductivos de proximidad: que detectan la presencia de piezas y pallet dentro de la línea
siempre y cuando estos estén hechos de algún material ferroso y a una suficiente distancia, además de
proporcionarnos con una detección indirecta la posición de los cilindros para saber su estado de
avance o retroceso para ejecutar movimientos.
En este proyecto se han utilizado sensores convencionales de M12 con referencia IME12-
04BPSZC0S de Sick, con detección a 4 mm:
Figura 14: Conexionado del sensor inductivo M12 y 4 pines.
Sensor fotoeléctrico con reflexión por catadióptrico: Este sensor nos permite formar una barrera a lo
ancho de la manutención y detectar la presencia de pieza cuando su haz de luz es cortado.
Para este proyecto se ha elegido una fotocélula de referencia GL6-P7112 también de Sick. Este sensor
nos proporciona un spot del puntero del detector láser y una distancia de detección tal y como se
muestra en la siguiente figura:
Figura 15: Spot-Distancia del sensor.
Tal y como podemos observar a medida que nos alejamos el spot crece y seremos más imprecisos a la
hora de detectar con precisión la presencia de algunas piezas, ya que este sensor se suele utilizar para
comprobar por ejemplo que todas piezas vienen montadas.
Figura 16: Fotocélula-Reflector-Conexionado.
13
2.1.7 Electroválvulas y cilindros.
Para el desplazamiento y movimientos de la máquina utilizaremos cilindros de diferentes carreras. Para pilotar
esos cilindros, que para este proyecto serán todos cilindros de doble efecto, daremos señales eléctricas a través
del autómata, por lo que necesitamos unas electroválvulas, que en nuestro caso van a ser 5/2.
Para el diseño y programación de los cilindros se ha tenido en cuenta el siguiente esquema neumático:
Figura 17: Esquema neumáticos para los cilindros con vástago recto
En este esquema podemos apreciar que se trata de un cilindro de doble efecto con una electroválvula 5/2,
además de los elementos 13N1 y 13N2 que son anti retornos pilotados para una caída inminente del servicio
de la máquina como es la apertura de la puerta o una seta de emergencia hacer que el cilindro se quede como
está y vaya tirando aire muy lentamente para evitar riegos de atrapamiento. Los sensores en los extremos del
vástago valen para como ya comentamos en el apartado 2.1.6 para detectar de forma indirecta la posición del
cilindro.
Este mismos esquema vale para el indexador (carrera del vástago =100mm), elevador (carrera del vástago
=200mm), etiquetadoras (carrera del vástago =200m), cierre de pinzas (carrera del vástago=50mm).
Sin embargo para el giro de las pinzas el cilindro que vamos a usar va a ser de doble efecto como el anterior
pero con la singularidad de que la cámara tiene un recorrido en un semicírculo que nos proporciona un giro de
180º.
14
Figura 18: Esquema neumáticos para los cilindros con cámara para giros.
Este cilindro con esta cámara nos permite girar la pinza 180º y así poder girar la pieza antes de volver a
depositarla en el elevador.
15
2.1.8 Célula robotizada
El diseño de la célula robotizada consta de una cinta de entrada, dos almacenes para los diferentes tipos de
piezas, unas protecciones que impiden el acceso a la célula, una puerta de entrada con un pestillo de seguridad
como presentamos en el apartado 2.1.5, y dos barreras de seguridad que permiten la entrada del operario con la
carretilla al estar lleno los almacenes y que cortan el servicio si es cruzada en algún momento diferente.
Figura 19: Presentación de la Célula Robotizada
16
Figura 20: Presentación de la Célula Robotizada
Importante a tener en cuenta en esta parte del proyecto es que una vez etiquetado el producto el siguiente flujo
de trabajo será la paletización del mismo y desde el IHM podremos interactuar tanto con la máquina de
etiquetado como con la célula ya que todos cuelgan del mismo maestro( PLC ).
Debido a que el producto es pequeño se ha elegido un robot IRB 1200 de ABB capaz de soportar 5kg en la
punta y tiene un alcance máximo de 0.9m.
Figura 21: Robot IRB 1200 de ABB
17
2.1.9 Barrera de seguridad
Este tipo de elemento actúan como una puerta o cortina dejándonos pasar en condiciones de trabajo segura en
las que el robot no pueda moverse mientras el ser humano permanezca dentro.
Estos elementos para no evitar su desconexión o su mal uso se cablean para que si no están funcionando y
tiene un paso por un flanco alto y bajo, que indica que tiene vida el elemento, no arranca la máquina o genera
una alarma y al cabo del tiempo produce una desconexión de la misma si la misma no es rearmada.
Figura 22: Cortina de seguridad M4000 de Sick
18
2.2 Conclusiones generales del capítulo.
En esta primera parte del proyecto tenemos un problema que se nos plantea como es la de automatizar una
máquina de etiquetado y su posterior paletización para embalaje. Para ello antes de poder dar el paso de la
programación debemos proponer y/o diseñar una solución a nivel de hardware que juntas todas ellas nos
permita resolver los problemas que se nos plantean de la siguiente forma:
Necesitamos diseñar una máquina automática por lo que utilizamos un PLC con unas ciertas
características descritas en los apartados anteriores.
Tenemos la necesidad de reconocer el producto del que se trata por lo optamos por una visión
artificial que nos ofrece un posible ampliación de productos y una robustez en la trazabilidad.
A la hora de hacer una máquina automática lo primero que debemos tener en cuenta son los sistemas
de seguridad como los descritos en este apartado además de setas de emergencia, por ejemplo.
Para generar movimientos en el diseño optamos por cilindros neumáticos a 6 bares de presión con la
posibilidad de comandarlos por electroválvulas a través del PLC por su simplicidad.
Como debemos generar movimiento y controlarlos, además de obtener información de ellos tenemos
un IHM que sirve de interface con el operador para hacer movimientos en manual y controlar la
producción.
Para saber el estado y la posición de las piezas y de nuestros cilindros necesitamos sensores.
Y por último para un buen paletizado optamos por la instalación de un robot que nos ofrece robustez,
seguridad, rapidez y repetitividad.
Esta primera parte del proyecto se centra en hacer ingeniería, ya que tenemos un problema y proponemos una
solución.
En toda fase de diseño es necesario saber dónde tenemos los problemas, proponer soluciones y con estas
soluciones atacar el problema, por ello la primera parte del diseño ha sido la definición del hardware y su
conexionado, antes de pasar a describir el software y la programación de cada uno de ellos.
19
20
3 SOFTWARE
En esta parte del proyecto vamos a presentar el software de programación en los que se basa cada uno de los
elementos de este proyecto.
3.1 PL7 Pro
Este software es propietario de Schneider Electric y nos permitirá tanto la programación en los diferentes tipos
de lenguaje como son:
Ladder: que nos permite una visión más gráfica como un lenguaje de contactos y relé.
Lenguaje Booleano: un lenguaje de instrucciones “máquinas” con escritura de tratamientos lógicos y
numéricos.
Grafcet: que nos permite programar en forma de diagrama funcional esperando eventos y ejecutando
tareas.
Lenguaje estructurado: un lenguaje parecido al lenguaje booleano pero más parecido a la informática
y a la programación en C/C++.
Así como la configuración de los diferentes periféricos que se conectan a él.
Como protocolo de comunicaciones tratados en este trabajo y probado, además de ser los más importantes que
aborda la compañía, se encuentra: MODBUS TCP, UNI-Telway, Inter-Bus y Ethernet.
Se trata de una programación secuencial que evalúa los contactos de izquierda a derecha y de arriba abajo. Esta
última nota es importante ya que versiones anteriores de este programa como el PL7-3 evaluaba de arriba
abajo y después de izquierda a derecha con lo que un mismo programa en las dos versiones no tiene porque
funcional igual si no se programa como es debido.
Configuración de hardware en nuestro software -PL7 Pro- para este proyecto:
Figura 23: Configuración autómata en PL7-PRO
21
3.2 Efector dualis
Efector dualis se trata de un software propietario de IFM que vale para la programación de la cámara de visión
artificial de reconocimiento de objetos ya sea por contorno, colores, formas o ausencia de piezas.
La configuración y programación de esta cámara viene dada por los siguientes pasos:
Conectar la cámara al PC y alimentación con el cable de programación específico de la cámara- RJ45
a M12-4pines de la cámara.
Iniciar el programa efector dualis e introducir la IP de la cámara (de fábrica 192.168.0.49).
Figura 24: Configuración IP de la Cámara
Una vez configurado la IP nos aparecerá un menú como el de la Figura 25 donde podemos programar
diferentes modelos que nosotros usaremos como programas para el reconocimiento de diferentes
objetos, que podemos llamar desde autómata con la selección de programa.
Figura 25: Configuración de los diferentes programa en función de los objetos
22
Seleccionamos el programa lo nombramos y pasamos a la definición del modelo con una pieza patrón
o un KM0.
Figura 26: Definición del Programa 1 y su contorno
Una vez configurado los dos programas, que para este proyecto serán la búsqueda de un círculo y un
rectángulo que son los dos productos diferentes que tendremos, pasamos a la configuración de las
entradas y salida para llamar desde autómata a los diferentes programas, tal y como se muestra en la
siguiente figura:
Figura 27: Configuración de las entradas y salidas
23
La selección externa de la aplicación cuando esta opción está activada, los pines 7 y 8 de la interfaz de
proceso se utilizan como entradas, con las cuales se pueden seleccionar desde el exterior las cuatro
primeras aplicaciones.
El pin 7 actúa como bit menos significativo (LBS), y el pin 8 como bit más significativo (MSB).
Opciones de conmutación:
Pin 7: 0, Pin 8: 0 aplicación activa en el espacio de memoria 1.
Pin 7: 1, Pin 8: 0 aplicación activa en el espacio de memoria 2.
Pin 7: 0, Pin 8: 1 aplicación activa en el espacio de memoria 3.
Pin 7: 1, Pin 8: 1 aplicación activa en el espacio de memoria 4.
En la ventana TRIGGER debemos seleccionar Trigger externo para poder lanzar desde el autómata y
no estar siempre tomando fotos si no cuando sea necesario.
Para el lanzamiento del trigger y selección de programa a continuación se expone como realizar desde
programa de PLC.
Figura 28: Programación de la comunicación del PLC y la cámara.
Cuando tenemos presencia de pieza primero inspeccionamos con el contorno del círculo 3 veces
seleccionando el programa Pin 7: 0, Pin 8: 1.Si al finalizar una inspección obtenemos que el contorno no
coincide en más de 98% en 3 ocasiones pasamos a seleccionar el programa del rectángulo con Pin 7: 1, Pin 8:0
Una vez inspeccionado los dos contornos tendremos un OK que será salida de la cámara y entrada al PLC con
el que habilitaremos con una memoria para tener constancia de que producto se trata y poder etiquetarlo de una
manera u otra además de generar un archivo de trazabilidad.
24
Por último se muestra un ejemplo real en el que se programó el contorno de un rectángulo y dio como
TEST NO SUPERADO, ya que la forma no coincidía.
Figura 29: Ejemplo real de un test no superado.
25
3.3 Vijeo Designer 6.2
Es una herramienta que nos permite tanto la programación como la configuración de aplicaciones de
supervisión y control de nuestros sistemas automáticos o procesos, basándose en la utilización de paneles de
operadores, ofreciendo también un web-server para el control en tiempo real y remoto.
Para iniciarnos en la aplicación vamos a seguir unos conceptos básicos necesario para cada cualquier proyecto
y así presentar en este apartado el software Vijeo Designer 6.2.
Figura 30: Configuración inicial de la aplicación Vijeo Designer
1. Navegador: aquí podremos desplazarnos en los paneles de la aplicación además de crear grupos de
alarmas, definir la variables, crear script, definir colores para estados, diferentes visualizar de mensajes,
biblioteca de recursos, ventanas emergente, etc.
2. Caja de herramienta: Aquí podemos encontrar una extensa biblioteca con iconos ya definidos como son
pulsadores, sliders, selectores, tanques, maquinaria, etc.
3. Administrador E/S: Antes de empezar a programar nuestro IHM y declarar variables lo primero que
debemos hacer es declarar un controlador y un protocolo de comunicaciones. Como ejemplo aquí tenemos
Modbus TCP y UniTelway además de Ethernet, para mostrar que se pueden utilizar varios protocolos.
Finalmente para nuestro proyecto se ha utilizado Unitelway por su rápida conexión a la toma TERM del PLC.
Para utilizar el protocolo ModBus TCP necistamos instalar una tarjeta SCP114 en el rack 0 del autómata.
4. Panel: Sobre este panel vamos programando y añadiendo elementos de la biblioteca.
26
3.4 RobotStudio 5.61
Entorno de programación, modelado y simulación para robots de ABB.
Nos ofrece un amplio abanico de posibilidades que se ajustan fielmente a la realidad como la de introducir una
instalación diseñada con softwares como Catia o SolidWorks y poder definir los punto reales y probar la
aplicación en simulación antes de construir realmente la célula.
Podemos ver si el robot llega a los puntos definidos en el mundo real por sus limitaciones mecánicas o ver el
comportamiento de herramientas como soldadores o ventosas a través de la programación de elementos
inteligentes dentro del software.
Aparte de la programación de los movimiento relativos del robot respecto a eventos, este software nos permite
añadirles sensores como son inductivos o reflexivos, o nos permite el utilizar, programar y probar una visión
artificial que calcule puntos X, Y y Z en tiempo real para aplicaciones como las de Pick and Place, con la única
limitación de que solo son cámaras de ABB sin poder usar otras marcas.
A continuación se presenta una iniciación al software:
Figura 31: Configuración inicial de la aplicación RobotStudio
1. Barra de herramienta: en esta barra tenemos todas las herramientas que necesitamos para definir el
robot (desde su propia biblioteca y según las características de fuerza máxima en la punta y alcance),
los ejes del robot, puntos de cogida, definición de herramienta, modelado de los elementos de la
instalación.
2. Controlador: En esta pestaña definimos el controlador real del robot que tendrá para tarjetas de E/S,
tarjeta EPS, comunicación con el PLC, y la programación en el lenguaje RAPID.
3. Panel de la aplicación: En este panel podemos movernos en los 3 ejes además de medir rectas,
curvas…
27
3.5 Conclusiones generales del capítulo.
Una vez tenemos definido el hardware y claro cada uno de los elementos la misión de este capítulo no es más
que la de iniciarnos con una breves pinceladas de cada uno de los software que utilizaremos y cómo podemos
interactuar con un software en otro a través de la programación del maestro (PLC).
Una vez tenemos definido el hardware y conocemos los softwares de programación de cada uno de los
elementos que componen el sistema el siguiente paso que debemos hacer es un análisis de lo que sería la
comunicación entre los diferente elementos, el diagrama de flujo que seguirá la instalación y por ultimo pasar
a la programación.
28
29
4 DIAGRAMA DE LA APLICACIÓN
4.1 Descripción General.
En este sección del proyecto vamos a describir tanto el flujo de trabajo de la máquina de etiquetado como del
robot, además de presentar un esquema de comunicaciones que nos ayude a tener una visión general de la
instalación antes de entrar en el tema de programación y funcionamiento del sistema.
4.2 Diagrama de comunicaciones.
Para el diagrama de intercambio de información y comunicaciones entre los diferentes elementos del sistema
establecemos un MAESTRO que sería el PLC, y elementos ESCLAVOS como son la cámara, el IHM y el
robot. Cada uno de ellos están interconectado al MAESTRO por diversos medios físicos y diferente
protocolos, pero es el PLC quien sabe interpretar cada uno de ellos pasando la información a bool,int,Word,etc
y transmitiéndola a los demás elementos. De esta manera desde el IHM podemos comandar o mandar
información al robot o podemos mostrar por la pantalla del IHM la selección de programas o el estado de la
cámara.
Figura 32: Diagrama de comunicaciones.
De forma aclaratoria el punteado correspondería a los elementos que están en el armario eléctrico y lo demás
se encontraría en la periferia a nivel de campo.
Podemos hacer aplicaciones de sistemas distribuidos con varios PLC interconectados entre ellos con un PLC
maestro y los demás esclavos, así a groso modo podríamos tener cada elemento en un PLC esclavo y cada uno
de ellos al PLC del maestro, pero ellos supondría más coste en una aplicación sencilla como esta.
30
4.3 Diagrama de flujo Máquina Etiquetadora
31
32
4.4 Diagrama de flujo Robot Clasificador
33
35
5 PROGRAMACIÓN
Esta última sección tiene como objetivo una vez definido el hardware, protocolos de comunicación y
diagramas de flujos, introducirse en la forma en la que se han programado cada uno de los elementos no tanto
a nivel de código pero si detallando de forma estructural las secciones y partes de cada uno de los elementos.
5.1 Programación de los elementos de la máquina etiquetadora.
Para poder mover los elementos de nuestra máquina debemos de comandar las electroválvulas de cada uno de
los cilindros para que juntos puedan realizar los trabajos.
Para ello se han realizado diferentes secciones que gobierna cada uno de los elementos de la siguiente manera:
Figura 33: Estructura de programa PLC.
Aquí podemos ver como se ha creado una sección para cada elemento del proyecto así como con la cámara y
el robot.
Importante destacar que no se ha creado una sección específica para el IHM ya que se ha abordado la
programación con el mismo uso de variables, por lo que si en PLC tenemos una memoria del tipo booleana
%M100 y esta se activa a nivel alto por cierta condiciones está quedará activa de la misma manera en el IHM
debido a su protocolo de comunicación.
La programación que se lleva a cabo en este programa es la expuesta en el diagrama de la sección 4.3
Diagrama de flujo Máquina Etiquetadora, teniendo en cuenta que para ejecutar un movimiento tenemos
que tener una seguridad que vendrá dada por una seguridad mecánica en la que sí está avanzado un cilindro no
podremos avanzar el siguiente, y una Autorización de movimiento cuando le toque ejecutarse.
Una orden de movimiento o salida se ejecutará cuando estemos en automático, sea seguro y tengamos
36
autorización o cuando estemos en manual y el movimiento sea seguro.
Mediante el uso de entradas de sensores (%Ixx), de salidas a pilotos y electroválvulas (%Qxx), y el uso interno
de memorias de tipo bool y Word la programación de la máquina lo que espera es a tener unas condiciones de
eventos como es que el cilindro elevador llegue a su final de carrera para poder activar la electroválvula de
cerrar pinzas, o esperar que la pinza este cerrada y el elevador abajo para poder activar la electroválvula de
giro de la pinza.
Si merece la pena que mostremos un poco la comunicación con el robot ya que el protocolo es por InterBus y
utiliza señales de entradas y salidas del bus. Además aquí podremos ver un ejemplo de intercambio con el
IHM.
Figura 34: Programación de robot.
Aquí podemos ver claramente el lenguaje Ladder mencionado en secciones anteriores, que trata solo de una
cadena de contactos que nos dan unas salidas.
En la primera parte (%L1) tenemos un intercambio entre el robot y el IHM. Si la máquina está en automático,
el robot tiene potencia, que es una entrada del robot al PLC a través del interbus y se nombran con
%IW4.0.1:x0 , el robot está en auto, y en ciclo mandamos un cero como defecto de robot y el IHM encenderá
una luz vez como robot OK. Si por el contrario alguna de estas condiciones no se cumplieran tendríamos un
defecto del robot.
Por otro parte llevamos un control de las piezas en almacén que es una entrada de robot a PLC y una salida de
PLC a IHM que encenderá un piloto naranja y detendrá el proceso hasta que el operario retire las piezas del
almacén y valide como almacén vacío.
Por ultimo para que el robot trabaje de forma automática necesita una salida de PLC a robot que le indique que
puede evolucionar en su trayectoria y vendrá dada por la condición de que todo este OK.
Normalmente en instalaciones de este tipo al haber muchos elementos que mover el PLC manda un código de
ejecución al robot que desarrolla una tarea u otra depende del código del PLC, pero para esta instalación en la
que el robot solo recibe piezas, él mismo puede identificarlas con dos sensores y tomar la decisión de ejecutar
una u otra rutina.
37
5.2 Programación IHM.
Una vez terminado con la programación del PLC, en este punto vamos a tratar la programación de los botones,
pilotos, balizas, animaciones, alarmas, generación de movimientos en el PLC y archivos de trazabilidad que
vamos a tener en nuestro panel de operador que nos valdrá tanto como para comandar la máquina como para
ver de forma animada la situación de la misma, generar archivo de trazabilidad de piezas o poder ver un
histórico de alarmas, así como manejar la aplicación en remoto.
En primer lugar vamos a presentar una idea básica de cada panel, con una explicación que nos permita conocer
más de cerca este elemento.
1- Panel INICIO
Figura 35: Panel IHM inicio
La programación más importante es la de asignar usuarios y sus categorías y colocar cada botón y/o piloto y
asignarle la variable que será encendida correspondientemente a través del PLC.
Info de la cámara
Movimientos manuales cuando la máquina este en
MANUAL y botón para subir y bajar si tenemos
condiciones de seguridad mecánicas que nos la da
el PLC
Registro de hora y fecha y
registro obligatorio de usuario
que te permite mover la máquina
o solo rearmarla y borrar
defectos.
Botones para iniciar el ciclo,
Resetear defectos en caso de
alarma y selector de
Auto/Manual
Si estamos en AUTO la aplicación bloquea
movimientos en MANUAL
Nos permite navegar entre paneles Programación para la aparición de
animaciones
38
Para definir los usuarios tenemos que ir a la pestaña ENTORNO y luego SEGURIDAD.
Creamos un usuario y contraseña y le asignamos el grupo en el que queremos que esté con las atribuciones que
deseamos para este usuario.
Figura 36: Creación de Usuario.
2- Panel ALARMA.
Figura 37: Panel IHM alarma.
El panel ALARMAS nos muestra los disfuncionamiento que se producen en la máquina y nos ofrece un
mensaje de ayuda al operador. Una vez pulsado el RESET y corregido el defecto, este se vuelve verde.
39
3- Panel CICLO PRINCIPAL.
Figura 38: Panel IHM ciclo principal.
Esta pantalla nos ofrece una animación de lo que está pasando en tiempo real en la máquina y vemos como se
ejecutan en continuo cada uno de los movimientos. Todas estas animaciones están hechas con JavaScript y
está apoyada por la información de cada uno de los sensores a través del PLC. Cuando la cámara nos envía la
información del producto obtenemos una imagen de círculo o rectángulo, y cuando se ejecuta un movimiento
en el IHM lo reproduce.
En esta pantalla nos encontramos quizás uno de los elementos más importante de la programación, y es la de la
trazabilidad del producto. Una vez reconocido el producto con la cámara y etiquetado tenemos un script que
nos genera en el disco duro un archivo .txt por día en una carpeta por meses de todos los productos que han
pasado por la máquina de la siguiente manera:
Figura 39: Registro de Trazabilidad.
Animación activada por sensores y por
diversidad .Se programa con JavaScript.
Animación activada por el resultado del
producto.
Alarma activada por disfuncionamiento
del elevador.
Programa que está ejecutando le cámara.
Producto reconocido por la cámara
40
El script de trazabilidad lo único que hace es juntar en una cadena de caracteres los datos que queremos
registrar como trazabilidad, abrimos un proceso externo buscando una ruta donde encontraremos un ejecutable
en un .bat que lo que hace es ejecutar una tarea de Windows en system 32 y buscar el archivo, volcando en el
los datos de trazabilidad, si no existe ese .txt con la fecha del día que se ejecuta lo crea.
4- Panel ROBOT.
Figura 40: Panel IHM robot.
Pilotos de estado del robot.
Variable booleana de intercambio
con el PLC
Pulsador que resetea la cuenta
del robot cuando el operario
descarga el almacén.
Almacén interactivo en el que
vemos lo elementos reales que
ha depositado el robot.
41
5.2.1 Configuración del WebGate y acceso remoto.
Una vez finalizada la aplicación del IHM y para poder acceder en remoto,Vijeo Designer 6.2 nos da la
posibilidad de acceder al IHM, controlar y visualizar nuestra aplicación desde cualquier dispositivo que tenga
internet. Con esta configuración conseguimos lo que se exponía al principio del proyecto sobre el internet de
las cosas y el trabajo desde la nube o remoto.
Para ello debemos habilitar el acceso en remoto tal y como se muestra en la Figura 41. Debemos marcar los
paneles que queremos mostrar a través del WebGate ya que podemos mostrar todos, unos cuantos o hacer
alguno que sea exclusivo de una pantalla de explotación en remoto y no del IHM.
También en la pestaña podemos poner un control de acceso para las IP que deseamos que puedan acceder y
que no sea un acceso abierto.
Figura 41: Configuración del acceso remoto.
Para el acceso en local de la aplicación accedemos al local host a través de la dirección IP: 127.0.0.1 o si no
estamos dentro de la misma red tenemos que abrir los puertos del router, en el caso de nuestro proyecto
acceder a través del puerto 80 y compartir dato en el 6000, y acceder mediante una dirección pública del router
al que esté conectado el autómata o directamente el IHM.
Schneider corta la mayoría de los puertos excepto el 21, 80, 81,82 y 502.
42
Figura 42: Acceso en remoto a través de PC y móvil.
43
5.3 Programación del Robot IRB 1200.
Ya programados el PLC con la máquina etiquetadora, el IHM para la información y ordenamiento de
movimientos y la cámara para el reconocimiento de imágenes, pasamos a la última parte que sería la de
programar el robot encargado de paletizar el producto en los diferentes almacenes.
Para la programación del robot, ya que es una simulación debido al coste que tendría el proyecto para ser solo
académico, no se han tenido en consideración a la hora de la programación algunas pauta de carácter físico o
estado inicial como es la configuración de las marca que tiene el robot poniendo el robot en unas marcas que
tiene y definiéndole cuál es su estado 0 de los encoder.
También a nivel de cableado no se ha considerado la idea de cablear su tarjeta interna EPS que define las
zonas seguras del robot y el work space, que lo hace seguro si sobrepasa ese lugar.
Obviando estos detalles que serían necesarios los primeros pasos que debemos seguir al programar el robot,
pasamos a la parte común una vez dado un estado inicial al robot.
Lo primero que necesitamos es definir los work objet del robot que nos valdrán para partir de estos ejes
trabajar en esa zona.
Figura 43: Definición del Work Objet con dos puntos en eje X y uno en eje Y
Para nuestro robot definimos dos Work Objets en los almacenes y otros dos en las cogidas de cada pieza.
Figura 44: Definición de los Work Objets
45
Una vez que la configuración de estos puntos es posible por algunas de las posturas del robot y definimos un
KM0, pasamos a la programación.
Vamos a estructurar el programa en 4 parte:
1. Main: este es el proceso principal del programa y llama a subrutinas según el estado de los sensores y
aumenta en uno el contador para aumentar en 1 la posición la matriz de dejada.
PROC main()
WHILE pos_torre = 1 DO
Cinta;
IF SensorCinta2= 0 THEN
ALMACENAR_CIRCULOS; CONT_CIR:=CONT_CIR+1;
ELSE ALMACENAR_RECTANGULOS;
CONT_RECT:=CONT_RECT+1;
ENDIF ENDWHILE
ENDPROC
2. Cinta: esta sección del programa recibe las piezas de forma aleatoria, activa los sensores y la
herramienta y pone el robot en una posición de reposo.
PROC Cinta()
SetDO Pieza,0; MoveL Reposo,v1000,fine,MyNewTool\WObj:=wobj0;
SetDO ActivaSensores,1; SetDO ActivaVentosa,0;
SetDO Pieza,1;
SetDO MotorCinta,1; WaitDI SensorCinta1,1;
SetDO MotorCinta,0;
SetDO Pieza,0;
ENDPROC
3. ALMACENAR_RECTANGULO: almacena solo rectángulo en diferentes posiciones de la matriz
3x3 con el work objet definido y con la orientación de la pinza sin necesidad de guardar los puntos en
una matriz, bastando solo con el primero. Cuando el almacén está lleno espera un botón desde IHM
para empezar desde 0.
PROC ALMACENAR_RECTANGULOS()
IF CONT_RECT<3 THEN
MoveL Cogida_rectangulo,v1000,fine,MyNewTool\WObj:=wobj0;
SetDO ActivaVentosa,1; MoveL Reposo,v1000,fine,MyNewTool\WObj:=wobj0;
almacen_rect:=almacen_rect + 1;
MoveL RelTool( Dejada_Rec,50,-100*almacen_rect,-40),v1000,fine,MyNewTool\WObj:=wobj0;
SetDO ActivaVentosa,0;
SetDO ActivaSensores,0; ENDIF
IF CONT_RECT=3 OR CONT_RECT=7 THEN
almacen_rect:=0; CONT_RECT:=CONT_RECT+1;
ENDIF
IF CONT_RECT>3 AND CONT_RECT<7 THEN
MoveL Cogida_rectangulo,v1000,fine,MyNewTool\WObj:=wobj0; SetDO ActivaVentosa,1;
MoveL Reposo,v1000,fine,MyNewTool\WObj:=wobj0;
almacen_rect:=almacen_rect + 1; MoveJ RelTool(Dejada_Rec_2,50,-100*almacen_rect,-40),v1000,fine,MyNewTool\WObj:=wobj0;
SetDO ActivaVentosa,0;
SetDO ActivaSensores,0;
ENDIF
46
IF CONT_RECT>7 AND CONT_RECT<11 THEN
MoveL Cogida_rectangulo,v1000,fine,MyNewTool\WObj:=wobj0;
SetDO ActivaVentosa,1; MoveL Reposo,v1000,fine,MyNewTool\WObj:=wobj0;
almacen_rect:=almacen_rect + 1;
MoveJ RelTool(Dejada_Rec_2,-100,-100*almacen_rect,-40),v1000,fine,MyNewTool\WObj:=wobj0; SetDO ActivaVentosa,0;
SetDO ActivaSensores,0;
WaitDI BOTON_IHM,1; almacen_rect:=0;
CONT_RECT:=0;
ENDIF
ENDPROC
4. ALMACENAR_CIRCULOS: de la misma manera que la subrutina de almacenar rectángulos esta
subrutina recorre la matriz 3x3 con un solo punto definido.
PROC ALMACENAR_CIRCULOS() IF CONT_CIR<3 THEN
MoveL Cogida_circulo,v1000,fine,MyNewTool\WObj:=wobj0;
SetDO ActivaVentosa,1; MoveL Reposo,v1000,fine,MyNewTool\WObj:=wobj0;
almacen_circulos:= almacen_circulos + 1;
MoveL RelTool (Dejada_Circulo ,0,90*almacen_circulos,-40),v1000,fine,MyNewTool\WObj:=wobj0; SetDO ActivaVentosa,0;
SetDO ActivaSensores,0; ENDIF
IF CONT_CIR=3 OR CONT_CIR=7 THEN
almacen_circulos:=0; CONT_CIR:=CONT_CIR+1;
ENDIF
IF CONT_CIR>3 AND CONT_CIR<7 THEN MoveL Cogida_circulo,v1000,fine,MyNewTool\WObj:=wobj0;
SetDO ActivaVentosa,1;
MoveL Reposo,v1000,fine,MyNewTool\WObj:=wobj0; almacen_circulos:= almacen_circulos + 1;
MoveL RelTool (Dejada_Circulo ,90,90*almacen_circulos,-40),v1000,fine,MyNewTool\WObj:=wobj0;
SetDO ActivaVentosa,0; SetDO ActivaSensores,0;
ENDIF IF CONT_CIR>7 AND CONT_CIR<11 THEN
MoveL Cogida_circulo,v1000,fine,MyNewTool\WObj:=wobj0;
SetDO ActivaVentosa,1; MoveL Reposo,v1000,fine,MyNewTool\WObj:=wobj0;
almacen_circulos:= almacen_circulos + 1;
MoveL RelTool (Dejada_Circulo ,180,90*almacen_circulos,-40),v1000,fine,MyNewTool\WObj:=wobj0; SetDO ActivaVentosa,0;
SetDO ActivaSensores,0;
WaitDI BOTON_IHM,1; almacen_circulos:=0;
CONT_CIR:=0;
ENDIF ENDPROC
47
Figura 45: Diferentes simulaciones del ROBOT
48
49
6 CONCLUSIONES
6.1 Lista de conclusiones.
Se ha diseñado eléctricamente, electrónicamente y neumáticamente una célula robotizada totalmente
autónoma.
Se han definido las seguridades de acceso a la instalación que priman sobre el funcionamiento de la
célula.
Se ha implementado la comunicación de los diferentes periféricos de la máquina.
Se ha establecido un protocolo de comunicación definiendo maestro y esclavos con el protocolo de
paso de testigo.
Se ha programado cada uno de los elementos individualmente.
Una vez programado individualmente se ha programado para la comunicación entre ellos.
Simulado el buen funcionamiento se ha implementado un sistema de comunicación para control en
remoto.
6.2 Futuros trabajos.
Aumentar el número de programas en la visión artificial para poder meter más productos en la cadena.
Implementar la visión en el robot y ordenar el producto no por orden si no por huecos libres.
Aumentar la funcionalidad del IHM permitiendo un modo de retirar y almacenar de forma manual
para que el operario pueda acceder a cargar o descargar productos manualmente.
Aumentar los movimientos de la máquina de etiquetado.
Mejorar el tiempo de ciclo actual de la máquina.
50
51
BIBLIOGRAFÍA
[1] http://www.industriaconectada40.gob.es/Paginas/index.aspx
[2] https://www.gradiant.org/noticia/tecnologias-industria-4-0/
[3] http://www.ifm.com/products/es/ds/O2D220.htm
[4] https://issuu.com/juancarlosvillanueva/docs/preunitelway
[5]http://www.schneider-
electric.com/es/ES/download/document/33003977K01000?_downloadcenter_WAR_downloadcenterRFportl
et_documentId=2018769&_downloadcenter_WAR_downloadcenterRFportlet_documentDetailsBackURL=
%2Fes_ES%2Fschneider%2Fdownloads%2Fresults%2F0%2F8338060-
MagelisXBTNRRT%2FdeltaWS%2F1555685%2FdocType_displayOrder%3F_downloadcenter_WAR_dow
nloadcenterRFportlet_showAsIframe%3Dtrue%26_downloadcenter_WAR_downloadcenterRFportlet_keyw
ords%3D%26_downloadcenter_WAR_downloadcenterRFportlet_delta%3D&_downloadcenter_WAR_down
loadcenterRFportlet_showAsIframe=true
[6]http://www.euchner.de/es-es/Productos/Multifunctional-Gate-Box-MGB/Multifunctional-Gate-Box-MGB-
AR/MGB-L1HE-ARA-L-110690#
[7]https://www.sick.com/es/es/sensores-de-proximidad/sensores-de-proximidad-inductivos/ime/ime12-
04bpszc0s/p/p228481
[8] https://www.sick.com/es/es/fotocelulas/fotocelulas/g6/gl6-p7112/p/p265644
[9] https://library.e.abb.com/public/10d2575315204ae8b867d21be6d1462e/3HAC046982-es.pdf
52