Top Banner
Universidad Javeriana Proyecto de Semestre Pick and Place Autores: Adr´ es Camilo Barco Diego Andr´ es Beltr´ an Juan Pablo Ber´ on Esteban David Ortiz Profesores: Carlos Alberto Lozano Luis Roberto Rivera Luis Esduardo Tob´ on Jairo Andr´ es Velasco 1 de Junio de 2015
14

Proyecto de Semestre Pick and Place Autores

May 08, 2023

Download

Documents

Juliana Vivas
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Proyecto de Semestre Pick and Place Autores

Universidad Javeriana

Proyecto de Semestre

Pick and Place

Autores:Adres Camilo BarcoDiego Andres BeltranJuan Pablo BeronEsteban David Ortiz

Profesores:Carlos Alberto Lozano

Luis Roberto RiveraLuis Esduardo TobonJairo Andres Velasco

1 de Junio de 2015

Page 2: Proyecto de Semestre Pick and Place Autores

1. Introduccion

En este documento se busca dar constancia del trabajo realizado para la construccion y prueba de unsistema Pick and Place, el cual, mediante los sistemas implementados buscara y reposicionara elementosde montaje superficial o SMD, segun las coordenadas que le sean ingresadas mediante un archivo de texto.

De esta manera se disena un dispositivo, capaz de moverse en los ejes X,Y y Z mediante la implemen-tacion de un sistema de rodamiento lineal en cada uno de estos. De igual manera, se disena un sistemade agarre, que ademas de contemplar la orientacion a la que deben ser puestos los elementos, sea capazde activarse y desactivarse para agarrar y soltar los SMD. Principalmente el sistema esta pensado parafuncionar con un numero maximo de diez elementos que oscilen entre lo 2mm y los 40mm. Estos pue-den ser posicionados entre 0o y 360o con ±7o y una precision de ±0,5mm, tal y como lo solicitan lasespecificaciones del proyecto.

Una de las grandes prioridades que se plantearon internamente en el grupo de trabajo, fue que el sistemadisenado fuera economico y estable. Este punto aunque positivo en cuanto a costos e implementacion afuturo del sistema, acarrea con si una serie de limitaciones y obstaculos que se afrontaron y se corrigieronlo mejor posible. No obstante, el consumo de corriente que demandaban los motores, el peso relativo delos implementos SMD con respecto a la succion de la bomba de vacıo y la estabilidad de la estructura sonalgunos de los obstaculos que, aunque se intentaron corregir siguieron presentando inconvenientes en elfuncionamiento de la totalidad del sistema.

Figura 1: Pick and Place disenado

1

Page 3: Proyecto de Semestre Pick and Place Autores

2. Marco General

El sistema Pick and Place disenado esta conformado por tres sub-sistemas relacionados entre si loscuales fueron construidos independientemente y posteriormente acoplados. Estos sistemas son:

Sistema de ControlTodos lo movimientos que realiza el dispositivo Pick and Place son indicados de manera secuencialpor medio del sistema de control. Este sistema indica a traves de senales digitales el momento en elcual cada accion debe ser realizada y durante cuanto tiempo. De igual manera es el encargado deinterpretar el archivo de texto ingresado por el usuario para ingresar las coordenadas iniciales (endonde se encuentra el elemento), las coordenadas finales (en donde debe ser finalmente puesto elelemento) y el angulo final de los elementos.

Sistema de AgarreEl sistema de agarre, a pesar de ser un sistema independiente del sistema de movimiento, debefuncionar de la mano con este. Pues, aunque es el sistema de agarre el que permite preparar elelemento para su respectivo posicionamiento, mediante la variacion en el angulo y el levantamientodel elemento por succion, el sistema de movimiento sera el encargado de llevar el sistema de succion ala etapa de variacion de angulo, para luego obtener el elemento y llevarlo a las coordenadas indicadasen el archivo de texto

Sistema de MovimientoComo ya se menciono, el sistema de movimiento sera el encargado del movimiento del elemento parasu adecuado posicionamiento. Por ello tiene la capacidad de moverse en las direcciones a traves delos ejes X, Y y Z. Al utilizar este sistema en conjunto con el sistema de agarre es posible tomarlos elementos y llevarlos hasta posiciones determinadas que esten dentro del campo de accion delsistema de movimiento.

3. Sistema de Control

El sistema de Control disenado interpreta un archivo de texto ingresado por el usuario a traves de uncomputador y lo convierte en una serie de acciones que le permite al sistema de movimiento y de agarrefuncionar de manera adecuada. Para esto, el sistema cuenta diecisiete salidas: doce dirigidas al sistemade movimiento que tienen como fin controlar los dos motores bipolares y el motor unipolar paso a paso,y cinco dirigidas al sistema de agarre que tiene como fin controlar otro motor bipolar paso a paso y unrelay.

3.1. Componentes

Los componentes utilizados en el sistema de control se pueden observar en la tabla 1 con sus respectivosprecios

3.2. Hardware

Teniendo en cuenta que el sistema de control debe interpretar un archivo de texto, se utiliza un ArduinoUNO como centro del sistema de control pues este dispositivo es reprogramable y se puede adaptar a lasdiferentes coordenadas y angulos indicados por el usuario. Ademas, el Arduino posee once salidas digitales

2

Page 4: Proyecto de Semestre Pick and Place Autores

que permiten controlar los motores utilizados tanto en el sistema de movimiento como en el sistema deagarre.

Ademas del Arduino, el sistema de control esta compuesto por tres L293D y un ULN2003. Estosintegrados resultan necesarios debido a que permiten el paso de corrientes altas hasta los motores segunel impulso digital que reciben del Arduino. Al recibir la secuencia apropiada por el Arduino permitenel funcionamiento de los motores paso a paso que hace parte de los sistemas de movimiento y agarre.Los integrados L293D cuentan con una entrada de enable la cual permite evitar el gasto innecesario decorriente. Por otro lado el ULN2003 no cuenta con una entrada enable por lo que resulta necesario controlarlos gastos de corriente por medio de las senales de las mismas entradas que controlan el movimiento delmotor.

Para controlar todos los motores del sistema, se hace necesario utilizar un decodificador 74LS138 ycuatro 74LS32 los cuales sirven como selector de un bus de 4 bits que se encarga de escoger el motor quese movera y enviara las senales correspondientes a los motores para su correcto funcionamiento.

3.3. Software

Con el objetivo de leer el archivo de texto proporcionado por el usuario se implementa un programaen python con la capacidad de leer el archivo de texto y transformarlo en un archivo de Arduino. Es poresto que es necesario tener python instalado en el computador junto con el software Arduino y los driversproveıdos por Arduino.

3.4. Codigos

En el proyecto se utilizan dos codigos: uno en python y el otro en el lenguaje que utiliza Arduino parasus programas. Por medio de estos dos programas se logra guiar los procesos que debe seguir el sistemapara lograr su objetivo y, ademas, permite adaptarse a diferentes requerimientos del usuario.

En el archivo escrito para el software de Arduino se plantea el proceso que se puede ver en el diagramade flujo de la figura 2. En este diagrama muestra que inicialmente se tiene la informacion del numerode elementos a ubicar y las coordenadas en (x, y) junto con el angulo de cada uno de los elementos.Posteriormente se declaran dos variables de control y se inicia el condicional de un ciclo. Mientras seeste dentro de este ciclo se cumple con las funciones de agarrar, dejar el elemento, buscar el elemento yfinalmente aumentar el valor de la variable de control. Estas funciones se realizaran siempre y cuando isea menor que el numero de elementos totales.

Las funciones de agarrar, dejar el elemento y buscar el elemento tienen subprocesos como se puedever en la figura 3. Estos subprocesos estan relacionados directamente con el movimiento de un motor enespecıfico.

En “Agarrar” inicialmente se debe girar el elemento lo suficiente para que alcance el angulo indicadoen el archivo de texto, por lo tanto se acciona el motor que permite el movimiento de engranes necesariospara girar los elementos. Posteriormente se baja una distancia especıfica la punta del sistema de agarre(ver figura 6 punto 1) al accionar el motor encargado del movimiento en el eje z. Cuando termina debajar, la punta del sistema de agarre debe tocar el componente que se va a transportar, en ese momentoes necesario prender la bomba de vacıo para poder agarrar el componente. Con el componente Agarrado,se sube la punta con el objetivo de evitar que el componente se suelte al tocar al rozar con el piso en lospasos posteriores. Finalmente se acciona de nuevo el motor que permite girar los componentes, pero se leindica que haga el giro en sentido contrario para poder restablecer el angulo inicial de los componentes.

3

Page 5: Proyecto de Semestre Pick and Place Autores

Figura 2: Diagrama de flujo del procedimiento implementado

Para el proceso “Dejar el Elemento” se inicia moviendo el motor del eje x los pasos necesarios parallegar a la distancia requerida en direccion x. Posteriormente se realiza la misma accion en el eje y con elcambio de que se la distancia que se recorre es igual a (y − k), este cambio se realiza con el objetivo depoder agarra los elementos cuando se encuentren en posiciones diferentes a la 0, 0. Cuando ya se hayanrealizado los cambios necesarios en el eje y, se procede a bajar el componente, una vez abajo se apaga labomba de vacıo para soltar el componente y finalmente se sube de nuevo la punta del sistema de agarre.

El el proceso “Buscar el elemento” se debe de cambiar el valor k debido a que con este es que se controlaque el sistema vaya a donde el siguiente componente y no al inicial. Con el k cambiado los cambios en eleje y se pueden realizar y junto con los pasos en x.

La funcion del programa de python es de leer el archivo de texto proporcionado por el usuario y crearun nuevo archivo con extension de Arduino con lıneas de codigo probadas previamente. Python tomala informacion del archivo de texto, detecta las coordenadas y el angulo de giro y forma listas con lascoordenadas del eje x, el eje y y el angulo de giro. Posteriormente, cuando esta creando el codigo parael Arduino, introduce las nuevas coordenadas leıdas para finalmente entregar un codigo con la habilidadde indicar el procedimiento que debe seguir el Pick and Place para acomodar las componentes en lascoordenadas dadas y con el angulo adecuado.

4

Page 6: Proyecto de Semestre Pick and Place Autores

Figura 3: procesos que conforman las funciones Agarrar, Dejar el elemento, Buscar el elemento

Cuadro 1: Tabla voltaje vs distanciaComponente Precio

Arduino Uno(1) 50.000L293D(3) 15.000

ULN2003(1) 6.00074LS32(4) 4.80074LS138 1.200

Borneras (31) 15.500Placa de Cobre grande (1) 2.000

Cloruro de hierro (2) 4.000

5

Page 7: Proyecto de Semestre Pick and Place Autores

4. Sistema de Agarre

Para abordar el sistema de agarre se plantearon varias ideas, considerando siempre que este deberıa depoderse adaptar al sistema de movimiento propuesto con anterioridad, pues ambos sistemas deberıan defuncionar en armonıa sin afectar el funcionamiento del uno o del otro. Sin embargo, una problematica quese vislumbro al empezar la lluvia de ideas era la versatilidad que debıa tener el sistema pues este deberıano solo succionar elementos con un rango de tamanos diversos (2mm - 40mm) si no que a su vez deberıaotorgarle a los elementos un angulo de posicionamiento final antes de ser succionados para su transporte.

De lo anterior, nacio la necesidad de condensar la lluvia de ideas hacıa dos sistemas diferentes que noafectaran el sistema de movimiento y que funcionaran a la par entre ellos. De aquı se procedio a buscarlas opciones existentes en el mercado y a la consulta de los profesores para encontrar el sistema de succiony de variacion de angulo que mas se adaptaran al sistema de movimiento ya implementado. Ası, se llega ados opciones principales para el sistema de succion; la primera de ellas fue un lapiz de vacıo, el cual es elmas utilizado por tecnicos en mantenimiento que deben mover elementos SMD, la otra idea y por la cualse inclino finalmente el grupo por su facilidad para ser activada, es la implementacion de una bomba devacıo(Figura 4, la cual mediante la adaptacion de una manguera y un adaptador, es capaz de succionarelementos de bajo peso como los SMD.

Figura 4: Bomba de Vacıo

De esta manera, mediante una manguera un adaptador de forma conoidal conectados al eje de movi-miento Z que cuenta con un motor unipolar para su movimiento, el sistema de succion se mueve juntocon el sistema de movimiento para interactuar con el sistema de variacion de angulo y el resto del sistemapara el posicionamiento de los implementos (Figura 6).

6

Page 8: Proyecto de Semestre Pick and Place Autores

Figura 5: Sistema de Agarre visto desde atras conectado al sistema de movimiento

Figura 6: Sistema de agarre

7

Page 9: Proyecto de Semestre Pick and Place Autores

Para la variacion del angulo en los elementos se decide usar un metodo basado en poleas y pinones,los cuales mediante el giro de un motor que hace mover la polea se mueven determinado angulo. De estamanera se busca garantizar que el elemento ya este en angulo deseado antes de trasladado a su posicionfinal, pues esto permite que el sistema de movimiento no sea intervenido en ninguno de sus ejes para dichofin (Figura 7)

Figura 7: Sistema de Giro

4.1. Componentes

Los componentes usados en el sistema de agarre se pueden observar en el cuadro 2

5. Sistema de Movimiento

5.1. Componentes

El sistema de movimiento disenado esta compuesto por los componentes que se muestran en la tabla3

5.2. Construccion

El proceso de construccion del sistema de movimiento inicia por el montaje de una estructura en balsopara cada eje(x,y,z) por separado. Dicha estructura tiene como objetivo principal sostener los elementosnecesarios para cumplir con el objetivo del sistema y ademas, servir de estabilizador para asegurar laprecision del sistema. Despues se procede a montar los elementos que se encargan del desplazamiento atraves del eje los cuales son el tornillo, el plafon de bombillo pequeno, alambre de cobre, tuercas y unmotor paso a paso. Al juntar estos y Con el fin de evitar el movimiento de las tuercas se pega el alambrede forma paralela al tornillo y con esto, se logra desplazar una base puesta sobre el eje. Teniendo dichosmateriales se atornilla el plafon de bombillo pequeno a un lado de la estructura y el motor al otro lado,haciendo girar el tornillo entre ambos. Al juntar estos y Con el fin de evitar el movimiento de las tuercasse pega el alambre de forma paralela al tornillo y con esto, se logra desplazar una base puesta sobre el eje.Para pegar las partes metalicas entre ellas se utiliza una herramienta llamada sintesolda la cual consta de

8

Page 10: Proyecto de Semestre Pick and Place Autores

una resina y un endurecedor que al juntarlos, permite que los elementos a pegar queden fijos despues deun tiempo de espera de 24 horas.

En el proceso de acople de los ejes se inicia por hacer una estructura similar a la del eje x, peroreemplazando el tornillo por otro alambre con el fin de mantener la movilidad del eje unicamente con elmovimiento del motor pegado previamente. Despues de esto se pega el eje Y utilizando las estructuras deleje X y posteriormente, se anade el eje Z uniendolo al eje Y. Cabe resaltar que el eje Z es aproximadamenteuna cuarta parte del largo de los otros ejes debido a que no es necesario un desplazamiento mayor a 4 cmpara recoger el elemento y acomodarlo en la PCB.

Despues de esto, se procede a conectar una manguera a la bomba de vacıo y pegarla a la base quese desplaza por el eje Z, con el fin de evitar la vibracion generada por la bomba cuando se encuentra enfuncionamiento y el peso de esta.

Finalmente para poder cumplir con los requerimientos del proyecto es necesario rotar los elementos.Esto se logra mediante un sistema de dos pinones donde se encuentran ubicados los componentes a posi-cionar y un motor paso a paso conectado a un tercer pinon. Gracias a esto es posible rotar el elemento conun angulo previamente determinado en el archivo de texto y posteriormente, ser agarrado por la bombade vacıo y finalmente ubicado en la PCB.

9

Page 11: Proyecto de Semestre Pick and Place Autores

Cuadro 2: Tabla Componentes sistema de agarreComponente Precio

Bomba de vacıo 60.000Manguera 3.000Pinones 3.000

Motor (1) 6.000

Cuadro 3: Tabla sistema de movimientoComponente Precio

Balso 12.000motores(3) 24.000Tornillos(3) 4.000Tuercas(9) 3.000

Sintesolda(1) 10.000Alambre 2.000

Super bonder(1) 9.000

10

Page 12: Proyecto de Semestre Pick and Place Autores

6. Plan de Pruebas

1. Coloque un componente superficial en el primer pinon designado para rotar y el otro componentesuperficial en el otro pinon

2. Con las fuentes de corriente correctamente conectadas guardar en la carpeta del proyecto el archivo“prueba.txt” el siguiente texto:Designer, Ref, X, Y, Theta

C1, C1-1206, 5.36, 4.1, 45U2, ATXMEGA32A4, 4.3, 3.3, 45Correr el archivo de python “prueba.py” y cortar el archivo “general.ino” generado, pegarlo en la

carpeta general. Dar reemplazar si se pregunta.

3. Conectar el arduino uno al computador y abrir el archivo “general.ino” y darle en la opcion de subir.

4. En este punto el usuario no debe realizar nada mas. Se debe de esperar a que el Pick and Placerealice lo siguiente:

a) Gire el componente 45o

b) Baje la punta del sistema de agarre hasta tocar el integrado.

c) Prenda la bomba de vacıo.

d) Suba la punta del sistema de agarre.

e) Devuelva el giro 45o

f ) Mueva el sistema en x 10,5cm

g) Mueve el sistema en y 4,1 cm

h) Baja la punta del sistema de agarre hasta que el integrado este a menos de un milımetro delsuelo

i) Apaga la bomba de vacıo.

j ) Sube la punta del sistema de vacıo.

k) Se mueve el sistema en el eje y una distancia de -2,1cm.

l) Se mueve el sistema en el eje x una distancia de -10.5cm.

m) Gire el componente 45o

n) Baje la punta del sistema de agarre hasta tocar el integrado.

n) Prenda la bomba de vacıo.

o) Suba la punta del sistema de agarre.

p) Devuelva el giro 45o

q) Mueva el sistema en x 9.5cm

r) Mueve el sistema en y 3.3cm

s) Baja la punta del sistema de agarre hasta que el integrado este a menos de un milımetro delsuelo

11

Page 13: Proyecto de Semestre Pick and Place Autores

t) Apaga la bomba de vacıo.

u) Sube la punta del sistema de vacıo.

v) Se mueve el sistema en el eje y una distancia de -3.3cm.

w) Se mueve el sistema en el eje x una distancia de -9.5cm.

x ) El sistema deja de moverse.

7. Problemas Encontrados y Soluciones

Uno de los principales problemas encontrados en la implementacion del diseno adoptado fue la estabi-lidad de la estructura. Esto principalmente al torque generado por la estructura en los rodamientos y elefecto latigo generado en ocasiones en el movimiento del eje X, que en variadas ocasiones despegaban lastuercas u otras partes del sistema de movimiento y extendıan de manera indefinida el trabajo. Con el finde solucionar esto se mejoro la dureza del eje X y se lubrico los rieles por los cuales se desliza el sistema.Sin embargo, ya que los tornillos de eje, y los riles sobre los que se carga el peso total de la estructurase encuentran algo torcidos, el movimiento del sistema es tambaleante, afectando ası un poco la precisiondel sistema dentro del rango de error permitido en las especificaciones.

Por otro lado la corriente demandada por los cuatro motores implementados en la totalidad del sistemaera muy alta, alcanzando los 2 amperios en algunas ocasiones, por lo que fue necesario solo utilizar unode ellos a la a vez a muy pequena velocidad de giro y con resistencias de 47 ohmios en sus entradas,disminuyendo considerablemente la demanda hasta los 260 y los 720 mA.

El peso relativo de los implementos con respecto al poder de succion de la bomba de vacıo es otroaspecto que presento inconvenientes en la realizacion del Pick and Place. Esto principalmente a quealgunos implementos son muy pesados y el poder de succion de la bomba, en ocasiones no era el suficientepara levantarlos. Ante esta problematica se deberıa comprar un bomba mas potente para la succion,sin embargo debido al poco tiempo entre el descubrimiento de esta problematica y la entrega final, nofue posible, por lo que se determino que este sistema puede ser utilizado unica y exclusivamente paraelementos de posicionamiento superficial entre los 2mm y los 40mm, para poder garantizar su correctofuncionamiento.

En el sistema de control, las pocas salidas del Arduino UNO fueron un inconveniente, pues para elcontrol de los cuatro motores y del sistema de agarre se necesitaban un numero mayor a las que setenıan. Por ello, se consideraron varias soluciones: la conexion de dos Arduinos UNO entre sı para quefuncionaran paralelamente; la compra de un Arduino MEGA, el cual tiene mayor numero de salidas; o laimplementacion de un sistema logico digital que permitiera alternar el uso de las salidas del Arduino paradiferentes propositos.

8. Conclusiones

A traves de la construccion del Pick and Place y de la interaccion con los motores y su control mediantesistemas digitales, permitio obtener la experiencia en cuanto al control y consumo de corriente en sistemascon una considerable demanda.

Por otra parte el uso de Arduino permitio acercarse al conocimiento de una nueva arquitectura capazde adaptarse para el control de diversos sistemas y dispositivos, como lo es la arquitectura de un micro-controlador. Sin embargo, el uso de estos implementos, aunque facilitan el control y funcionamiento, si no

12

Page 14: Proyecto de Semestre Pick and Place Autores

se realiza una adecuada investigacion de su programacion, puede generar comportamientos inesperados eincluso poner en riesgo la integridad del microcontrolador en sı, como sucedio en una de las primeras prue-bas realizadas para el control de los motores, en donde el microprocesador ATMEGA328P salio quemadopor una mala asignacion de los pines.

13