Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Trabajo Terminal
“Ingeniero en Mecatrónica”
Presenta:
Asesor:
Enero 2013
INSTITUTO POLITÉCNICO NACIONAL
Trabajo Terminal
“Ingeniero en Mecatrónica”
Presenta:
Asesor:
A mi familia:
Que siempre estuvo apoyándome durante este camino que ahora concluyo. A mi mamá, que a pesar
de tener poco nunca se detuvo por sacarme adelante. A mi hermana, que siempre ha sido un pilar
sobre el cual apoyarme y un ejemplo de superación. A mi hermano, que a pesar de lo que pase
siempre podemos reír juntos. Les agradezco haberme dado la oportunidad de estudiar lo que me
apasiona, de ayudarme, acompañarme y de formar parte de este sueño.
A mis maestros:
Que me ayudaron a terminar lo que inicié hace 5 años. Maestro Fonseca, me enseñó que lo
importante no es saber hacer las cosas, sino hacerlas bien; me alentó a buscar más y se volvió un
amigo durante el trayecto. Doctor Mata, me enseñó que siempre hay un escalón por subir siempre
que uno lo quiera, sin importar donde me encuentre. Doctor Luviano, me enseñó que lo complicado
puede volverse sencillo si lo miramos desde otra perspectiva.
A los tres agradezco inmensamente ya que me ayudaron a su manera y siempre dispuestos a que el
proyecto saliera adelante.
A mi novia:
Que me acompañó durante el trayecto y siempre me alentó a ser el mejor. Me escuchó cuando
quise desahogar mis frustraciones y también celebró mis triunfos.
Todos ustedes representan una faceta de mi vida que considero ha sido la mejor hasta ahora, sé
que puedo contar con cada uno sin importar cuál sea el panorama y agradezco el empeño y la
dedicación que han puesto en mí para alcanzar esta meta.
Resumen 7
Objetivos 9
Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Objetivos especı́ficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Introducción 10
Justificación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Marco teórico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Robots paralelos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Prestaciones de los robots paralelos . . . . . . . . . . . . . . . . . . . . . . . . 13
I Panorama General 15
Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Planteamiento del problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
II Desarrollo 19
Análisis cinemático 20
1
ÍNDICE
Análisis dinámico 30
Dinámica del Robot Delta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Cálculo del torque máximo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Diseño estructural 37
Construcción de la estructura 40
Compra de material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Construcción de piezas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Eslabones superiores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Base móvil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Base fija . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Uniones inferiores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Brazos Superiores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Soporte de Motores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Uniones Superiores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Armado general del robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Armado de la estructura soporte . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Visión artificial 54
Control de motores 58
Motores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Controladores (Drivers) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Perfil de velocidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Programación de movimiento de los motores . . . . . . . . . . . . . . . . . . . . . . 61
Neumática 62
Resultados 66
III Conclusiones 68
Conclusiones 69
Trabajo a futuro 72
Bibliografı́a 73
IV Apéndice 75
Apéndice 76
Caracterı́sticas del motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Caracterı́sticas del controlador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Dimensiones del motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
V Tarjeta de desarrollo 79
VI Planos 84
14. Eslabones de 12 in . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
15. Conicidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
16. Eslabones terminados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
17. Base móvil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4
ÍNDICE DE FIGURAS
Palabras clave: Robot Delta, Robots paralelos, visión artificial, control de motores.
Abstract
The aim of this work was to design, build and control a Delta Robot with educational
purposes, in order to understand the function and performance thereof, due to the extensive
use that is being given in the industry for some years now.
The first phase consisted in the kinematic and dynamic analysis of the mechanism required
for the setting of the actual workspace, as well as the computing of the nominal torque to be
used.
The second phase corresponded to the drawing and simulation of the mechanism in
SolidWorks ® in order to validate the design against any collisions on the structure, and
also limited the range of motion of the actuators.
The third phase was the physical construction of the mechanism.
The fourth phase consisted in motor controlling, computer vision and the pneumatic sys-
tem, they must operate together for the correct operation of the robot and placement of
pieces. In this way we covered all aspects involving a Delta Robot.
7
Resumen
Resumen
El objetivo de este trabajo fue diseñar, construir y controlar un Robot Delta con motivos
educativos, a fin de comprender el funcionamiento y las prestaciones del mismo, debido al
amplio uso que se le está dando en la industria desde hace ya algunos años.
La primera fase consistió del análisis cinemático y dinámico, necesarios para una delimi-
tación del área de trabajo y el cálculo del torque requerido por los motores.
La segunda fase correspondió al dibujo y simulación del mecanismo en el programa
SolidWorks ® con el fin de reconocer posibles errores y/o colisiones en la estructura, y también
delimitar el rango de movimiento de los motores.
La tercera fase comprendió la construcción fı́sica del mecanismo.
La cuarta fase estuvo compuesta por el control de los motores, la visión artificial y el
sistema neumático, mismas que deben funcionar de manera conjunta para el correcto funcio-
namiento del robot y colocación de piezas.
De esta manera se abarcó todos los aspectos que envuelven a un Robot Delta.
Objetivo general
Tomar la pieza
Objetivos especı́ficos
9
Introducción
En la actualidad el ser humano se ha visto superado por los robots en muchos aspectos
técnicos, tal es el caso de la ejecución de tareas repetitivas como el ensamblado de compo-
nentes o soldado de partes que se realizan en las lı́neas de producción hoy en dı́a, es por
esto que, siguiendo las tendencias cada vez más frecuentes de automatizar los procesos, se
decidió construir un Robot Delta con propósitos educacionales, a fin de conocer los aspectos
que engloba el diseño, la fabricación y el control de este tipo de robots.
Las ventajas que ofrece un Robot Delta con respecto de otros son la rapidez y exactitud
de sus movimientos, además de la ligereza de sus partes, que dan como resultado una máquina
fácil de colocar y utilizar en aplicaciones que no requieran un amplio rango de alcance. Debido
a que un Robot Delta cuenta con tres ejes de desplazamiento (x, y, z) sus posibles usos son
variados, desde impresoras 3D, hasta máquinas de CNC para pequeños diseños, sin embargo
el uso más amplio que ha tenido es como máquina de ensamblado o montaje, empacadora
y finalmente “Pick and Place”, que consiste solamente en levantar una pieza y ponerla en
un nuevo lugar. Como ya se mencionó con anterioridad, el proyecto estará enfocado en su
función como robot Pick and Place.
10
diseño y simulación en un programa de CAD. Se continuó con la construcción del mecanismo,
lo cual implicó la implementación y/o construcción de las piezas y el ensamblaje de éstas, es
a partir de este punto que el proyecto involucró más variables ya que se procedió a aplicar
la interfaz que controla al Robot Delta, la visión artificial, y se acopló la etapa de potencia
para el control de motores. Finalmente se colocó el sistema neumático y sólo restó realizar
las pruebas pertinentes con respecto al objetivo del proyecto.
En la descripción anterior se pueden observar las diferentes áreas que abarcó la realización
de un Robot Delta, entre éstas se encuentran: análisis de mecanismos, electrónica de potencia
y control de motores, visión artificial (para detectar los objetos), por mencionar algunas. El
propósito final fue la aplicación en conjunto de los conocimientos, técnicas y metodologı́as
adquiridas durante la estancia en la Unidad Profesional Interdisciplinaria en Ingenierı́a y
Tecnologı́as Avanzadas (UPIITA) para la concepción de proyecto. Dentro de los alcances
también se tuvo como fin probar nuestra capacidad para la resolución de problemas que se
presentaron durante su diseño, construcción y puesta en marcha, demostrando ası́ nuestras
aptitudes en lo referente a la ingenierı́a Mecatrónica.
Justificación
Es por esto que, se decidió diseñar y construir un Robot Delta con fines educativos, pro-
porcionando ası́ una plataforma para realizar prácticas y conocer las ventajas y desventajas
que se obtienen con el uso de este tipo de robots sin una gran inversión de capital.
Marco teórico
Robots paralelos
Un robot en paralelo es aquel cuya estructura mecánica está formada por un mecanismo de
cadena cerrada en que el efector final se une a la base por, al menos, dos cadenas cinemáticas
independientes.
Estas estructuras cerradas poseen diversas ventajas, tales como que pueden alcanzar velo-
cidades y aceleraciones mucho más grandes que en el caso de los robots serie, manejan cargas
superiores, poseen alta rigidez dado que el peso es repartido entre las diferentes cadenas
cinemáticas, y con ellos se logra una mayor precisión[1].
Sin embargo, la desventaja de mayor peso en este tipo de robots es el área de trabajo,
ya que, a comparación de un robot en serie, el espacio de trabajo de un robot paralelo es
muy reducido, y para lograr abarcar una mayor área, las cadenas cinemáticas de los robots
pueden llegar a ser muy grandes.
Los accionamientos de potencia conectan directamente la base del robot con el efector
final. Debido a esto, los accionamientos de potencia sirven de elementos estructurales
y actúan de manera simultánea, lo que le da la capacidad de manipular cargas muy
superiores a su propio peso. Por esto la relación carga/potencia de estos mecanismos
proporciona alta eficiencia energética.
Las estructuras paralelas son mecanismos que ofrecen una alta rigidez y muy bajo peso.
Esto hace que presenten caracterı́sticas, en cuanto a precisión, superiores a la de robots
en serie.
Panorama General
15
Antecedentes
Los nacientes trabajos teóricos relacionados con estructuras paralelas comenzaron cuan-
do los primeros geómetras franceses e ingleses realizaron sus estudios sobre poliedros y sus
aplicaciones.
El primer mecanismo paralelo fue patentado por Gwinnett[3] en f1931 y consistı́a en una
plataforma destinada a la industria del entretenimiento.
En 1940 Willard L. V.[4] presenta un robot paralelo de 5 grados de libertad (GDL) para
operaciones de pintura con spray.
En 1947 Eric Gough inventa una plataforma para la comprobación del comportamiento
de los neumáticos de la casa Dunlop, la cual consistı́a en un octaedro hexápodo con lados de
longitud variable (Fig.3).
En 1965 Stewart presenta un artı́culo en el cual describe una plataforma de 6 GDL para
trabajar como simulador de vuelo.
En 1967 Klaus Cappel[5] patenta un simulador de movimiento basado en un hexápodo.
Raymond Clavel propone en 1989 un Robot Delta, dedicado a las aplicaciones de alta
velocidad, el cual ha sido utilizado de manera amplia en la industria.
En nuestros dı́as las escuelas cuentan con pocas opciones para la aplicación de los conoci-
mientos adquiridos en cuestiones de robótica de forma práctica, esto debido a los altos costos
que representa la adquisición de un dispositivo de este tipo, razón por la cual sólo se aplican
una vez que se entra de manera activa a la industria, o cuando se necesita una capacitación
especial para el control de dichos mecanismos.
La solución propuesta para este problema fue diseñar, construir y controlar un robot
paralelo el cual realice el posicionamiento de objetos dentro de un área de trabajo, con el
fin de que los maestros, estudiantes, o demás personas interesadas en este campo, conozcan
el funcionamiento de un Robot Delta y los demás dispositivos ligados a éste, logrando ası́,
aplicar conocimientos como control de posición, seguimiento de trayectorias, visión artificial,
reforzando también los conocimientos en robótica y visualizando las ventajas de este tipo de
mecanismos; esto con la visión de que el robot sea de fácil armado y programación para que
se puedan realizar prácticas sobre él en un futuro.
Para la estructura base del robot se pensó en utilizar aluminio, ya que por las carac-
terı́sticas de éste, ofrece resistencia y estabilidad sin tener un peso que afecte en gran medida
la operación de los actuadores destinados al movimiento del robot. Ası́ mismo, este tipo de
material es de costo accesible y justificable para el desarrollo del robot.
Se planeó mover un sólo tipo de objetos que tendrán un color y forma definidos. Los
objetos se encontrarán dentro del área de trabajo que será definida una vez realizado el
análisis cinemático.
Se consideró para el efector final, al que irán unidas las cadenas del robot, un actuador de
tipo neumático (ventosa) el cual es capaz de tomar los objetos y mantenerlos sujetos mientras
se hace el recorrido hacia la posición final. Este actuador es bastante común en este tipo de
sistema gracias a su efectividad y costo accesible.
®
Para el caso de la interfaz se consideró el programa Processing [11] debido a su capacidad
de procesamiento, lo cual servirá para acelerar el reconocimiento de objetos por medio de la
cámara. Una vez realizado el reconocimiento, se enviarán datos hacia los actuadores a través
de los drivers.
Finalmente los actuadores estarán conformados por 3 motores de DC con encoder, esto
debido a que es necesario conocer la posición exacta del los motores.
Desarrollo
19
Análisis cinemático
El diseño de la estructura del robot es muy importante para el desempeño del mismo, de
tal manera que, el área de trabajo está estrechamente ligada a las longitudes de los eslabones
utilizados en las cadenas. Es necesario tener en cuenta que en las cadenas cerradas existen
coordenadas, las cuales, al no ser contempladas pueden resultar en daño a los actuadores des-
tinados al movimiento o incluso daño a la estructura misma. Al hacer un análisis cinemático
del movimiento de la estructura se consiguen precisar los elementos necesarios para que el
dispositivo trabaje de forma segura y, al mismo tiempo, cumpla con las acciones requeridas
para los objetivos generales del proyecto.
Un Robot Delta consiste en una plataforma móvil conectada a una base fija por medio
de tres cadenas cinemáticas paralelas. Cada cadena contiene una junta rotacional en la base,
la cual es accionada por un actuador (servomotor generalmente) que transmitirá dicho movi-
miento a la base móvil a través de los paralelogramos formados por uniones y juntas esféricas.
20
A continuación se muestra una imagen con los parámetros del Robot Delta.
En donde:
El sistema de coordenadas principal está situado en el centro de la base fija con el eje Z+
ubicado hacia abajo y el punto P está colocado en el centro de la base móvil.
De esta forma se deduce que:
Con j = 1, 2, 3
Para eliminar las variables relacionadas con las juntas pasivas (en este caso ϕ2j y ϕ3j )
se elevan al cuadrado las ecuaciones (1), (2) y (3) y finalmente se suman, dejando como
resultado:
[(r + L2 cosϕ1j )cosθj − Xp ]2 + [(r + L2 cosϕ1j )sinθj + Yp ]2 + [−L2 sinϕ1j − Zp ]2 + L21 = 0 (4)
Con r = rA − rB
Una vez obtenida la ecuación (4) la cinemática inversa se limita a la obtención de los
ángulos θ1 j (con j = 1, 2, 3) para los puntos dados P = [XP , YP , ZP ], por lo tanto expandiendo
la ecuación (4) se obtiene la siguiente forma:
(2rL2 − 2L2 Xp cosθj − 2L2 Yp sinθj )cosϕ1j − 2rXp cosθj + 2L2 Zp sinϕ1j
(5)
− 2rYp sinθj + Xp2 + r2 + L22 + Zp2 + Yp2 − L21 = 0
Donde:
l = 2rL2 − 2L2 Xp cosθj − 2L2 Yp sinθj
j
mj = 2L2 Zp (7)
n = −2rX cosθ − 2rY sinθ + X 2 + r2 + L2 + Z 2 + Y 2 − L2
j p j p j p 2 p p 1
El espacio de trabajo estará definido por la ecuación (6) tomando en cuenta solo las res-
tricciones impuestas por la ecuación (8), de tal manera que la representación cartesiana en
un espacio tridimensional estará dada por un medio toroide y el espacio de trabajo será la
intersección de los tres medios toroides (fig.5).
Se desea tener un espacio aproximado de 15cm×15cm y una altura de 10cm por lo cual,
despues de probar diferentes valores, se llegó a la siguiente configuración de L1 , L2 y r que-
dando de esta manera:
(c) Superior
La cinemática inversa también comprende el cálculo de los respectivos ángulos que deben
tener los actuadores para que el efector final se posicione en un punto especı́fico, por lo cual
se presenta el siguiente análisis. Cabe mencionar que se ha tomado como base el presentado
por Lung Wen Tsai [8].
Se toma como marco de referencia la fig.8, en la cual el ángulo a calcular es θ1i y donde
a, b, r y h son L2 , L1 , ra y rb respectivamente.
Ai Bi + Bi Ci = OP + P Ci − OAi (9)
(a) Z1 = 35 (b) Z2 = 45
(c) Superposición de Z1 y Z2
donde
cxi cφi sφi 0 px h−r
= −sφi 0 py + (11)
cyi cφi 0
czi 0 0 1 pz 0
cyi
θ3i = cos−1 (12)
b
por lo tanto
acθ1i + bsθ3i cθ1i cθ2i − bsθ3i sθ1i sθ2i cxi
= (15)
asθ1i + bsθ3i sθ1i cθ2i + bsθ3i cθ1i sθ2i czi
Debido a que los términos de la matriz anterior son iguales se puede reescribir de la
siguiente manera
A −B cθ1i cxi A= a + bsθ3i cθ2i
= donde
B A sθ1i czi B= bsθ3i sθ2i
donde
A B
(Madj )t = ; det(M ) = A2 + B 2
−B A
finalmente
A B
A B 1 A2 +B 2 A2 +B 2
M −1 = ⇒ M −1 =
−B A A2 + B2 −B A
A2 +B 2 A2 +B 2
Para la selección del mecanismo se optó por realizar el planteado por Clavel[6] (fig.9)
debido a que ofrece un mayor soporte al colocar las juntas sobre los laterales de la base trian-
gular a diferencia del mecanismo mostrado en la fig.4, tomando en cuenta que el efector final
fue diferente. En su mayorı́a la estructura fue construida con aluminio debido a su ligereza y
resistencia. Al haber terminado el análisis cinemático del mecanismo, los resultados ayudaron
para el diseño conceptual del mismo, quedando propuestas las siguientes longitudes de los
eslabones:
L1 = 29.8cm ra = 9.3cm
L2 = 26.7cm rb = 4.5cm
r = 4.8cm
La selección de motores fue un punto crucial para el correcto funcionamiento del meca-
nismo, de tal manera que, haber hecho una selección solamente tomando los datos de un
motor no era recomendable, ya que esto pudo concluir en: falta de potencia para mover el
mecanismo, velocidades muy bajas o mayores a las requeridas, peso excesivo de la estructura
debido a los motores, etc; por consecuencia se decidió realizar el análisis dinámico del meca-
nismo con el fin de obtener los pares de carga generados por la estructura. Una vez obtenidos
los pares para cada motor, se multiplicaron por la velocidad deseada dando como resultado
la potencia requerida para un correcto funcionamiento, además se pudo delimitar la fuente
a utilizar ya que ésta depende directamente de los requerimientos que tengan los motores.
Cabe mencionar que se definieron motores de DC con encoder como actuadores debido a que
se necesitó un control muy preciso en la posición.
A continuación se muestra el análisis dinámico del Robot Delta por medio de ecuaciones
de Lagrange de primer orden. La formulación requiere un conjunto de ecuaciones restrictivas
derivadas de la cinemática del mecanismo. Estas ecuaciones de restricción y sus derivadas
deben ser complementadas con las ecuaciones de movimiento para obtener un número de
ecuaciones igual al número de incógnitas.
30
La ecuación de Euler-Lagrange de primer orden se puede escribir de la siguiente manera:
k
d ∂L ∂L X ∂Γi
− = Qj + λi para j = 1 . . . n (18)
dt ∂ q˙j ∂qj ∂qj
i=1
k
X ∂Γi d ∂L ∂L
λi = − − Q̂j (19)
∂qj dt ∂ q˙j ∂qj
i=1
Donde Q̂j , si existe alguna, representa la contribución de la aplicación de una fuerza ex-
terna. Para la dinámica inversa, Q̂j es dada. Por lo tanto el lado derecho de la ecuación (19)
es conocido. Escribir una ecuación por cada coordenada redundante conlleva a un sistema de
k ecuaciones lineales que puede ser resuelto para los k multiplicadores de Lagrange.
Una vez encontrados los multiplicadores de Lagrange, los pares y/o fuerzas de los actua-
dores pueden ser determinados directamente de las ecuaciones restantes. Especı́ficamente, el
segundo grupo de ecuaciones puede ser escrito como:
k
d ∂L ∂L X ∂Γi
Qj = − − λi para j = k + 1 . . . n (20)
dt ∂ q˙j ∂qj ∂qj
i=1
El diagrama esquemático del mecanismo está representado por las fig.8,10. En el Robot
Delta las juntas accionadas son representadas por θ11 , θ12 y θ13 . Las ecuaciones de primer
orden de Lagrange se emplearán introduciendo tres coordenadas redundantes px , py y pz .
Ası́ tenemos px , py , pz , θ11 , θ12 y θ13 como las coordenadas generales. La ecuación (18)
representa un sistema de seis ecuaciones con seis variables, éstas son λi para i = 1 hasta 3,
y los tres pares del actuador Qj para j = 4, 5, 6. Nótese que las fuerzas generalizadas Qj
para j = 1 hasta 3, representan las componentes x, y, z de una fuerza externa ejercida en el
centro P de la base móvil.
2
Γi = Bi Ci − b2
= (px + hcφi − rcφi − acφi cθ1i )2 + (py + hsφi − rsφi − asφi cθ1i )2 + (pz + asθ1i )2 − b2
=0
(21)
Para i = 1, 2, 3
3
X
K = Kp + (Kai + Kbi ) (22)
i=1
1
Kp = mp (p˙x 2 + p˙y 2 + p˙z 2 ),
2
1 1 2
Kai = (Im + ma a2 )θ˙1i ,
2 3
1 1 2
Kbi = mp (p˙x 2 + p˙y 2 + p˙z 2 ) + mb a2 θ˙1i
2 3
3
X
U = Up + (Uai + Ubi ) (23)
i=1
Up = mp gc pz ,
1
Uai = ma gc asθ1i ,
2
Ubi = mb gc (pz + asθ1i )
1 1 1 ˙ 2 + θ12
˙ 2 + θ13
˙ 2)
L = (mp + 3mb )(p˙x 2 + p˙y 2 + p˙z 2 ) + (Im + ma a2 + mb a2 )(θ11
2 2 3 (24)
1
− (mp + 3mb )gc pz − ( ma + mb )gc a(sθ11 + sθ12 + sθ13 )
2
Tomando las derivadas parciales de la ecuación de Lagrange con respecto a las seis coor-
denadas, se obtiene:
d ∂L d ∂L
( ) = (mp + 3mb )p¨x , ( ) = 0,
dt ∂ p˙x dt ∂px
d ∂L d ∂L
( ) = (mp + 3mb )p¨y , ( ) = 0,
dt ∂ p˙y dt ∂py
d ∂L d ∂L
( ) = (mp + 3mb )p¨z , ( ) = −(mp + 3mb )gc ,
dt ∂ p˙z dt ∂pz
d ∂L 1 d ∂L 1
( ) = (Im + ma a2 + mb a2 )θ¨11 , ( )=− ma + mb gc acθ11 ,
˙
dt ∂ θ11 3 dt ∂θ11 2
d ∂L 1 d ∂L 1
( ) = (Im + ma a2 + mb a2 )θ¨12 , ( )=− ma + mb gc acθ12 ,
˙
dt ∂ θ12 3 dt ∂θ12 2
d ∂L 1 d ∂L 1
( ) = (Im + ma a2 + mb a2 )θ¨13 , ( )=− ma + mb gc acθ13
˙
dt ∂ θ13 3 dt ∂θ13 2
Tomando las derivadas parciales de las ecuaciones de restricción Γi con respecto a las seis
coordenadas generalizadas se obtiene.
∂Γi
= 2(px + hcφi − rcφi − acφi cθ1i ) para i = 1, 2, 3
∂px
∂Γi
= 2(py + hsφi − rsφi − asφi cθ1i ) para i = 1, 2, 3
∂py
∂Γi
= 2(px − asφi cθ1i ) para i = 1, 2, 3
∂pz
∂Γi
= 2a [(px cφi + py sφi + h − r)sθ1i − pz cθ1i ] para i = 1, 2, 3
∂θ1j
Sustituyendo las derivadas obtenidas en las ecuaciones (19) y (20), se obtiene un sistema
de ecuaciones dinámicas. Para j = 1, 2, 3:
Donde fpx ,fpy y fpz son las componentes x, y, z de la fuerza externa aplicada en la
plataforma móvil. Para j = 4, 5, 6
1 2 2 ¨ 1
τ1 = Im + ma a + mb a θ11 + ma + mb gc acθ11
3 2 (28)
− 2aλ1 [(px cφ1 + py sφ1 + h − r)sθ11 − pz cθ11 ]
1 1
τ2 = Im + ma a + mb a θ¨12 +
2 2
ma + mb gc acθ12
3 2 (29)
− 2aλ2 [(px cφ2 + py sφ2 + h − r)sθ12 − pz cθ12 ]
1 2 2 ¨ 1
τ3 = Im + ma a + mb a θ13 + ma + mb gc acθ13
3 2 (30)
− 2aλ3 [(px cφ3 + py sφ3 + h − r)sθ13 − pz cθ13 ]
Las ecuaciones (25), (26) y (27) forman un conjunto de tres ecuaciones lineales con tres
incógnitas de las cuales se pueden obtener los tres multiplicadores de Lagrange. Una vez
obtenidos los multiplicadores de Lagrange, los pares de los actuadores son determinados con
el segundo conjunto de ecuaciones (de la (28) a la (30)).
Para el cálculo del torque máximo se utilizó todo el análisis dinámico combinado con el
polinomio de 5° grado: 10+3.7037t3 −1.8519t4 +0.2469t5 , esto debido a que habı́a que calcular
una velocidad y aceleración máxima del mecanismo con respecto a un movimiento. En la fig.11
se pueden observar las trayectorias del polinomio de 5° grado, el cual fue seleccionado debido
a que describe una trayectoria en posición de 10cm a 20cm en 3s, además de velocidad y
aceleración inicial y final en cero.
Finalmente, con los valores máximos de las trayectorias, y siguiendo el análisis dinámico,
se obtuvieron los multiplicadores de Lagrange de las ecuaciones (25), (26) y (27), los cuales a
su vez se introdujeron en las ecuaciones (28), (29) y (30), llegando ası́ al torque máximo que
debı́a proporcionar cada motor.
kg−cm2
Torque máximo = 9.3229 ∗ 104 s2
≈ 9N m
Cabe mencionar que este cálculo es para cargar aproximadamente 1kg, ya que la pura
estructura sin carga necesita alrededor de 6.5N m para moverse.
37
Diseño estructural
Compra de material
40
Las rótulas conseguidas permitieron que los eslabones se movieran con libertad en 3 ejes,
con lo cual, se evitó la construcción de un mecanismo (junta) con el que se generara este tipo
de movimiento. El objetivo de esto es que la base del efector final se mantuviera paralela a
la base principal del robot y no hubiera problemas de funcionamiento. Las rótulas cuentan
1
con un tornillo de 4 de pulgada con cuerda fina en su extremo de unión.
A continuación se muestra una tabla con los precios de cada componente adquirido
Total $12,100.59
Construcción de piezas
Eslabones inferiores
Ya que las secciones tuvieron la longitud deseada, se realizaron los barrenos en los extre-
7
mos con una broca de 32 in para poder realizar la rosca interna con el machuelo y ası́ introducir
las rótulas.
Una vez barrenados los orificios se procedió a hacer la cuerda interna con un machuelo
3
para poder atornillar las rótulas. Se barrenó primero con una broca de 16 in, debido a que el
diámetro del barreno deseado era muy grande, por tanto, fue conveniente utilizar una broca
más chica en un inicio para no penetrar directamente el material y evitar sobrecalentamiento
de las piezas y la broca.
1 1
(a) Eslabones de 2
in (b) Diagrama eslabones de 2
in
Dando como resultado un ángulo de 11.30◦ , sin embargo por comodidad se tomó el ángulo
igual a 11◦ . A continuación se muestran los eslabones terminados (barras con rótulas).
(a) (b)
Base móvil
La base móvil se puede observar en la fig.17, en ésta se montaron los ejes que unen los
eslabones inferiores y la base móvil. Las dimensiones se encuentran en el apéndice VI.
Base fija
La base fija está conformada por un hexágono (fig.18) en el cual se colocaron las bases de
los motores cada 120°. El grosor de la base es de 4mm y se maquinó por medio una fresadora
CNC.
Uniones inferiores
Las uniones inferiores constan de “ejes” (fig.19) que se situan entre la base móvil y los
brazos inferiores, éstos unen dichas partes. El deslizamiento de las rótulas a lo largo del eje
se controló por medio de O-rings (fig.20).
3
La medida del O-ring es de 16 in, esto debido a que el eje tiene un diámetro de 41 in, con
lo cual se aseguró que no existiera un movimiento por parte de los brazos inferiores, además
de que proporcionó una fácil colocación de la unión.
Los resultados de las uniones entre la base móvil y los brazos inferiores se muestran a
continuación.
(a) (b)
(c) (d)
En las figuras anteriores se observa que se agregó un tornillo que evita el deslizamiento
del eje con respecto a la base móvil. Finalmente en la fig.22 se muestran los elementos que
componen la unión.
Los brazos superiores (fig.23) se consideraron, al igual que la mayorı́a de las piezas, de
aluminio. Se realizaron dos barrenos de forma transversal a los barrenos principales para
3
introducir tornillos de 16 in, y ası́ contrarrestar posibles fuerzas axiales que se presenten en
los ejes (tanto el que se encuentra en la unión de los brazos superiores con los inferiores,
ası́ como entre el brazo superior y el bástago del motor).
(a) (b)
Soporte de Motores
Para la sujeción de los motoresor se decidió construir dos bases que se colocaron en la
parte frontal y media del motor, brindando ası́ mayor soporte en caso de que pudiesen existir
vibraciones cuando el motor se encuentre en funcionamiento. Dichas bases están hechas de
aluminio y se pueden encontrar sus respectivos dibujos en el apéndiceVI, cabe mencionar que
se ha dejado una tolerancia en los radios marcados con respecto a los del motor, esto para
facilitar su colocación.
En las figuras a) y b) se observan la cara frontal y posterior del soporte principal, mientras
en en la figura c) solamente se observa el soporte intermedio, finalmente en la figura d) se
observan las dos piezas juntas. Se necesitó de un rectificado en la parte superior de las piezas
para asegurar que tuvieran dimensiones iguales.
Finalmente, el ensamblado del motor con las bases y el brazo se muestra en la fig.27.
(c) (d)
(a) (b)
(c) (d)
Las uniones superiores se componen de la misma manera que las inferiores, por lo cual
también contienen los mismos elementos (fig.19, 20, 22). Los resultados de las uniones entre
los brazos superiores y los brazos inferiores se muestran en la fig.28.
(a) (b)
(c) (d)
Las piezas previamente maquinadas, se montaron en la base fija (fig.29). Para esto, fue
necesario hacer los barrenos para los soportes de los motores, que tienen un diámetro de 5mm.
3
También se hicieron barrenos de 16 in destinados a sostener las barras para la estructura de
soporte.
Cuando los motores fueron instalados, los eslabones, previamente unidos con la base móvil,
se acoplaron a sus respectivos ejes, completando las cadenas de movimiento del robot. En la
fig.30 se muestra este acoplamiento como también el ensamble de las barras para la estructura
de soporte.
Para la visión artificial se ha optó en el uso de una cámara web (fig.32) con una resolución
de 640×80 y conexión por usb.
Debido a que la programación y análisis de datos provenientes de los motores se realizó por
medio del programa Processing [11], fue necesario encontrar la manera de conectar la cámara
con la interfaz de programación, para lo cual se utilizó la biblioteca funciones que contiene
Processing para video.
54
En combinación con la cámara web, se decidió utilizar la bliblioteca de opencv for pro-
cessing [14] para lograr una mayor eficiencia en el uso de la cámara.
En la fig.33 se pueden observar diferentes situaciones para la detección, ya sea una o varias
piezas y discriminando las que no son piezas de trabajo, sin embargo, también se observaron
problemas, los cuales son: presencia de sombras dentro del área de trabajo y distancia muy
pequeña entre objetos (fig.34).
(a) (b)
La visión se realizó de la siguiente manera: primero detectando los ejes de canny (canny
edges detection en inglés) y luego detectando contornos en la imagen previamente tratada para
reducir o aumentar el brillo y contraste dependiendo de la situación, finalmente se comparó el
volumen del contorno con los volúmenes de las figuras y se calculó el promedio del dicho
contorno, en caso de que cumpliera con los lı́mites de volumen, para obtener el centroide de
la figura. Además se delimitó el área de trabajo (área dentro del rectángulo rojo) para no
realizar detecciones fuera de ésta, y reducir el tiempo de procesamiento, además de descartar
información extra que pueda afectar a la visión.
En la fig.35 se muestra un diagrama de flujo del proceso.
Motores
El par máximo que se obtuvo al realizar el análisis dinámico fue de alrededor de 9 N m, por
lo cual se seleccionó un motor de la marca DONGZHENG, modelo 60ZY105-2430/56JX76G,
el cual se muestra a continuación:
En la fig.36 se observa que éste lleva equipado un encoder, el cual permitió un control más
49
preciso del mismo y una caja de engranes con la relación 76 : 1. El motor fue adquirido
64
directamente de la empresa Phidgets [13] y las caracterı́sticas más importantes se muestran
en el cuadro 2.
Finalmente se adquirieron 3 motores los cuales funcionaron como actuadores en el Robot
Delta
58
Potencia 30W
Velocidad máxima 33 RPM
Par máximo 82.6 kg.cm
Alimentación 24V
Controladores (Drivers)
Para el control de los motores adquirió el driver que ofrece Phidgets (fig.37), modelo
1065, ya que está diseñado especialmente para trabajar con los motores que ofrecen, además
cuentan con una interfaz de manejo bastante sencilla, y compatibilidad para trabajar con
Processing, de tal manera que se ahorró tiempo y esfuerzo.
El controlador está basado en un PWM y contiene entradas para la lectura del encoder,
ası́ como también entradas analógicas y digitales. Dicho driver permite el control de veloci-
dad y aceleración, al igual que la dirección de giro. Las caracterı́sticas se encuentran en el
apéndice IV.
Perfil de velocidad
Para la programación de los motores se utilizó el análisis dinámico desarrollado con an-
terioridad en el cual se obtuvo el valor del ángulo θ1i , por tanto, el algoritmo implementado
es el desarrollo contenido en la sección “Cálculo del ángulo de los motores”.
El encoder de los motores marca 27635.625 pulsos para una vuelta completa, lo que implica
que, para un grado debe contar aproximadamente 77 pulsos. Al programar el algoritmo antes
mencionado, se realizaron pruebas para obtener los ángulos de acción de los actuadores con
respecto a una posición inicial. Estos ángulos fueron transformados a pulsos para que el
movimiento fuera limitado por el programa.
Para la etapa neumática se optó por un dispositivo que produce el efecto Venturi, dando
como resultado una válvula de vacı́o de efecto Venturi. En el laboratorio de la UPIITA
se seleccionó dicho elemento el cual se muestra en la fig.40, la presión máxima de vacı́o
que proporciona la válvula según el fabricante es de 948mbar, lo cual es suficiente para la
aplicación que se le dio.
Para activar y desactivar el sistema neumático, fue necesario hacer uso de una elec-
troválvula, la cual se activa desde el programa principal cuando es necesario sujetar el objeto.
Se eligió la SMC SY5120-5D-C6-F2 (fig.41), que se encontraba disponible en el laboratorio de
neumática de la UPIITA. Es una válvula de 3 vı́as 2 posiciones con alimentación de 24V, la
cual funciona como interruptor y permite o bloquea el paso del aire en el sistema. La ventosa
62
(fig.42) representa el efector final del robot y se montó directamente en la base móvil.
66
En la fig.46 se puede observar el movimiento del robot hacia las piezas que se encuentran
en el área de trabajo.
(a) (b)
(c) (d)
Conclusiones
68
Conclusiones
A continuación se mencionan los resultados obtenidos, ası́ como los problemas que se
presentaron durante el desarrollo.
Se logró diseñar un prototipo funcional que alcanza todos los puntos dentro del espacio
de trabajo, cabe mencionar que en un inicio las dimensiones del robot eran más pequeñas,
sin embargo se optó por realizar un diseño de mayor tamaño para incrementar el área de
trabajo, además de hacerlo más práctico en cuestiones de ensamblado.
Se logró implementar un control de motores por medio de acotaciones, ya que otro tipo
de control presenta problemas debido al peso de la estructura, además, este control presenta
problemas cuando se requiere que el efector final se mantenga en una posición estática du-
rante un tiempo, ya que causa vibraciones por algunos segundos en lo que se estabiliza la
estructura. Esto puede ser debido a que los drivers solo permiten un control en velocidad y
aceleración y el umbral de tensión (zona muerta) es mayor a lo que se esperaba, o que el
torque que proveen los motores no es suficiente. El último punto se pudo observar debido a
que las cadenas cinemáticas no se mantenı́an del todo estáticas aún y cuando los motores se
encontraban energizados, razón por la cual se buscó directamente la hoja de datos del fabri-
cante, encontrando que el torque proporcionado es de 6.9Nm, sin embargo el valor dado por
el proveedor es de 8.1Nm, y tomando en cuenta que el valor mı́nimo calculado del torque para
soportar solamente la estructura es de 6.5Nm, se concluye que, a pesar de ser funcionales, los
motores no son los adecuados para un correcto movimiento.
69
Conclusiones
Se logró implementar la visión artificial con algunas restricciones, esto debido a que en
un inicio se consideró el uso del Kinect para esta sección, sin embargo después de trabajar
de manera más profunda con la biblioteca de opencv for processing, se encontró que ésta no
contaba con todas las funciones de opencv, por lo cual no era posible extraer los puntos clave
(feature points) de la nube de puntos (point cloud ) que arrojaba el Kinect, lo que dio origen
finalmente a optar por el uso de una cámara web normal. El segundo problema de esta sección
se presentó al tratar de convertir los datos que arrojaba el procesamiento de la visión artificial
a coordenadas para el movimiento del robot, esto debido a que la cámara no se encuentra
directamente sobre el área de trabajo, sino con un ángulo, por lo cual al convertir los datos
a coordenadas reales, se tenı́a problemas de error de entre .5cm y 2cm, por lo cual se optó a
definir lugares especı́ficos dentro del área de trabajo.
Se logró implementar la etapa neumática sin problemas al igual que la conexión entre el
puerto serie y Processing, esto debido a la gran facilidad que da el programa para la mani-
pulación de los puertos.
Se logró realizar un robot de manera modular en el cual sus partes pueden desensamblarse
y funcionar de manera independiente sin que se necesite realizar grandes cambios, o reempla-
zar piezas rápidamente, además de que la programación se puede realizar en casi cualquier
lenguaje, ya que las librerı́as para el control de los motores son libres y no se necesita del
pago de una licencia para su uso.
En conclusión se logró cumplir con los objetivos expuestos en el presente documento los
cuales son:
Tomar la pieza
Entre las posibles mejoras que se pueden implementar se mencionan las siguientes.
Debido al problema que existe con respecto al control de la posición del robot, la solución
propuesta serı́a implementar otros drivers los cuales estén basados en un control PI y que su
zona muerta sea menor a la que presentan los drivers adquiridos en Phidgets, con el fin de
reducir la vibración que se presenta en el efector final.
Se pretende incluir un cuarto grado de libertad en el efector final que permita rotar las
piezas con el objetivo de que queden alineadas en una dirección.
Se cambiarán las rótulas por unas con mayor rango de giro para obtener un mayor alcance
del área de trabajo.
Por último, se diseñarán diferentes efectores finales para su utilización como CNC, im-
presora 3D o acoplar un tipo de sujeción diferente al neumático.
72
Bibliografı́a
[1] Vivas Andrés, “Robótica Paralela: Aplicaciones Industriales, Modelado y Control”, Co-
lombia.
[2] Aracil Rafael, saltarén Roque, Sabater José, Reinoso Oscar, “Robots Paralelos: Máquinas
con un Pasado Para una Robótica de Futuro”’, RIAI, vol3, No.1, pp. 16-28.
[6] P.J. Zsombor-Murray, Descriptive Geometric Kinematic Analysis of Clavels Delta Ro-
bot McGill University, Department of Mechanical Engineering, Centre for Intelligent
Machines, April 1, 2004, pp.15
[7] M.A. Laribi, L. Romdhane and S. Zeghloul (2008). Advanced Synthesis of the DEL-
TA Parallel Robot for a Specified Workspace, Parallel Manipulators, towards New
Applications, Huapeng Wu (Ed.), ISBN: 978-3-902613-40-0, InTech, Available from:
http://www.intechopen.com/books/parallel manipulators towards new applications/ad
vanced synthesis of the delta parallel robot for a specified workspace
73
BIBLIOGRAFÍA
[8] Lung-Wen Tsai, Robot Analysis: The Mechanics of Serial and Parallel Manipulators ,
Ed. John Wiley Sons, 1999, ISBN 0471325937, 9780471325932, pp. 505.
[9] L.E. Bruzonne, R.M. Molfino, R.P. Razzoli, Modelling and Desing of a Parallel Robot for
Laser-cutting Applications,University of Genova,PMAR Robot Design Research Group,
february 18-21, 2002, pp.518-522
[10] Greg Borenstein, “Making Things See”, Maker Media Inc, Enero 2012, Ebook ISBN:978-
1-4493-0788-2, ISBN 10:1-4493-0788-4
[11] http://processing.org/
[12] https://code.google.com/p/simple-openni/
[13] http://www.phidgets.com/
[14] https://github.com/atduskgreg/opencv-processing
[15] http://new.abb.com/products/robotics/industrial-robots/irb-360
[16] http://www.deltamaker.com/
Apéndice
75
Apéndice
76
Caracterı́sticas del controlador
IPN
Number (mm)
3269E_0 53.0
3269E_1 41.0
18.0
3270E_0 53.0
12.0
32.0
3271E_0 53.0
56.0
26.0 L 110.0 13.3
2.0 2.0 3272E_0 64.5
4.0
14.0
3273E_0 64.5
45.0 24.8 60.0
Ing. Mecatrónica
Parte V
Tarjeta de desarrollo
79
80 IPN Ing. Mecatrónica
Ing. Mecatrónica UPIITA 81
82 IPN Ing. Mecatrónica
Ing. Mecatrónica UPIITA 83
Parte VI
Planos
84
80
4.76
90
Ing. Mecatrónica
12.70
5
50
32.1
0
22.50
56.10
UPIITA
R4
5
5
10
10 20
85
Material: Aluminio 6061 T6 Nombre:
Soporte motor principal
Mario Alberto Rodríguez Meza
Autores:
Gonzalo Tomás Compeán Fuentes Unidades en mm Escala 1:1
86
4.76
50
50
4.76
60
IPN
90
0
R4
40
10
80
5
20 10
Ing. Mecatrónica
Material: Aluminio 6061 T6 Nombre:
Soporte motor intermedio
Mario Alberto Rodríguez Meza
Autores:
Gonzalo Tomás Compeán Fuentes Unidades en mm Escala 1:1
Ing. Mecatrónica
245
25.40
12.70
6.35
212.33
UPIITA
Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas
87
Material: Aluminio 6061 T6 Nombre:
Eslabón inferior
Mario Alberto Rodríguez Meza
Autores:
Gonzalo Tomás Compeán Fuentes Unidades en mm Escala 1:2
88
9
297
15.90 6
4.7 4.7
6
15.90
20 15
10
35
IPN
6.
R6
4
9
7.50
Ing. Mecatrónica
Material: Aluminio 6061 T6 Nombre:
Eslabón superior
Mario Alberto Rodríguez Meza
Autores:
Gonzalo Tomás Compeán Fuentes Unidades en mm Escala 1:2
Ing. Mecatrónica
4.76
°
1 20
75.75
303.11
17
30
20
UPIITA
2.38
350
89
Material: Aluminio 6061 T6 Nombre:
Base fija
Mario Alberto Rodríguez Meza
Autores:
Gonzalo Tomás Compeán Fuentes Unidades en mm Escala 1:5
90
10
20
12.50
10
35
6.35
IPN
120°
70
6.32
15
7.50
Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas
Ing. Mecatrónica
Material: Aluminio 6061 T6 Nombre:
Base móvil
Mario Alberto Rodríguez Meza
Autores:
Gonzalo Tomás Compeán Fuentes Unidades en mm Escala 1:1