Você está na página 1de 6

Memorias del XVIII Congreso Mexicano de Robótica 2016

Universidad Autónoma de Sinaloa y Asociación Mexicana de Robótica e Industria AC


XVIII COMRob 2016, ISBN: En trámite
9 – 11 de Noviembre, 2016, Mazatlán, Sinaloa, México

XVIIICOMRob2016/ID–026

CONSTRUCCION DE UN BRAZO ROBOT DE 5 GRADOS DE


LIBERTAD CON ACTUADORES DE POSICION TELEMANIPULADO
VIA ANDROID

Raúl Alejandro Villa Fajardo Germánico González Badillo


Unidad Académica Multidisciplinaria Zona Media Unidad Académica Multidisciplinaria Zona Media
Universidad Autónoma de San Luis Potosí Universidad Autónoma de San Luis Potosí
Rioverde, San Luis Potosí, 79618 Rioverde, San Luis Potosí, 79618
raul_villa7@yahoo.com germanico.gonzalez@uaslp.mx

Armando Márquez Díaz Víctor Esteban Espinoza López


Unidad Académica Multidisciplinaria Zona Media Unidad Académica Multidisciplinaria Zona Media
Universidad Autónoma de San Luis Potosí Universidad Autónoma de San Luis Potosí
Rioverde, San Luis Potosí, 79618 Rioverde, San Luis Potosí, 79618
armandomd_2008@hotmail.com victor.espinoza@uaslp.mx

RESUMEN labores cotidianas o especializadas que realiza el ser humano.


Así se ha innovado en áreas como la automatización, en la cual
En la actualidad las aplicaciones de la robótica están uno de los principales artículos que se emplea son los brazos
presentes en diversos escenarios, desde la recreación hasta la robóticos, debido a su gran versatilidad, lo que les permite ser
medicina y la manufactura. El presente trabajo se enfoca en el utilizados en gran variedad de aplicaciones [1].
análisis, diseño y desarrollo de un brazo robótico de 5 Grados Un brazo robótico (Robot articulado) es
de Libertad (DoF), el cual puede ser controlado vía remota por un brazo mecánico programable, tiene como mínimo tres
medio de una aplicación en el sistema operativo móvil Android. articulaciones rotatorias conectadas en serie, con funciones
Para la etapa de diseño y programación se calcula la parecidas a las de un brazo humano, puede ser la suma total de
cinemática directa e inversa del robot, con la finalidad de eslabones formando un mecanismo o cadena cinemática,
caracterizar el sistema. Las ecuaciones que caracterizan al incluso puede ser parte de un robot más complejo, usado para
robot son empleadas para definir su posición y mostrarla al operaciones de ensamblaje, fundición a presión, máquinas de
usuario. Con este proyecto se planea que los niños puedan desbarbado, soldadura a gas, soldadura por arco, y pintado en
adentrarse a los sistemas robóticos sin necesidad de tener spray[2].
sistemas robóticos costosos. Para visualizar se construye un Para lograr la caracterización de un mecanismo en
prototipo que permite evaluar la funcionalidad del diseño y general, como un brazo robótico, se utiliza la cinemática directa
observar puntos de mejora. y la cinemática inversa. La cinemática directa permite
encontrar las posiciones del actuador final en base a las
INTRODUCCCIÓN posiciones de las coordenadas articulares conocidas [3]. La
Con el transcurso del tiempo se han desarrollado cinemática inversa, calcula las coordenadas articulares
teorías, métodos, sistemas y equipos que permiten facilitar las

Copyright © 2016 by AMRob


requeridas para que el actuador final del robot alcance un punto  Caracterización del diseño por medio de la cinemática
deseado dentro de su espacio de trabajo, Tabla 1. inversa, para encontrar los ángulos de cada junta qi para
alcanzar una posición final requerida Pf.
 Programación y control del brazo robótico por medio de la
TABLA 1: CINEMÁTICA DE UN MECANISMO. plataforma Arduino, configurando los servomecanismos
utilizados en el prototipo.
 Incorporando una pantalla que permita ver las posiciones
espaciales y angulares.
 Vincular módulo bluetooth que permita establecer
comunicación con el controlador.
 Creación de una aplicación en el sistema operativo móvil
Android, con la cual se pueda controlar el brazo robótico
La Cinemática inversa (IK) es la técnica que permite de manera directa, especificando posiciones finales en el
determinar el movimiento de una cadena de articulaciones para espacio cartesiano o movimientos independientes de cada
lograr que un actuador final se ubique en una posición concreta. una de las juntas.
El cálculo de la cinemática inversa es un problema complejo
que consiste en la resolución de una serie de ecuaciones cuya
DESARROLLO
solución normalmente no es única. Para llevar a cabo la
cinemática inversa existen diferentes métodos, entre los cuales
destacan [4]: Diseño de estructura y proceso de manufactura

-Métodos geométricos En el Figura 2 se muestra el diseño CAD del prototipo,


-Matrices de transformación homogénea el cual incluye 5 DOF, los 3 primeros son utilizados para
-Desacoplamiento cinemático posicionar el actuador final, mientras que los últimos dos son
-Soluciones numéricas iterativas utilizados para la orientación.

Para el desarrollo del presente proyecto se utiliza como base la


estructura del brazo robot de la marca Mitsubishi, modelo RV-
2SDB, Figura 1.

FIGURA 2: DISEÑO CAD DEL BRAZO ROBOT.

En base al diseño propuesto, se construye el prototipo,


utilizando MDF cortada mediante CNC de corte por láser para
mayor precisión. El prototipo ya ensamblado se muestra en la
Figura 3.

FIGURA 1: BRAZO ROBÓTICO MITSUBISHI MODELO RV-2SDB.

La principal contribución del presente trabajo es


caracterizar el brazo robótico diseñado por medio de la
cinemática directa e inversa, lo cual permitirá observar su
comportamiento y acoplar un modo de control mediante una
aplicación de Android para su movimiento. Para cumplir con
estos objetivos se plantean realizar las siguientes etapas:
 Diseño preliminar de la estructura en AutoCAD haciendo
modelado 3D así como 2D para el corte por láser de MDF.
 Caracterización del diseño por medio de la cinemática
directa, empleando las matrices de transformación
homogéneas, para encontrar posiciones del actuador final
Pf (PxF, PyF, PzF), así como las orientaciones A, B, C en
base a las coordenadas articulares qi. FIGURA 3: PROTOTIPO ARMADO.

Copyright © 2016 by AMRob


( 3) 0 ( 3) 0
0 1 0 0 (5)
3=
El prototipo cuenta con dos tipos de servo motores los cuales − ( 3) 0 ( 3) 2
son TowerPro MG995 y TowerPro SG90 Micro en la Tabla 2. 0 0 0 1
TABLA 2: CARACTERÍSTICAS DE LOS SERVOS UTILIZADOS [5]. ( 4) − ( 4) 0 0
Modelo TowerPro TowerPro SG90 ( 4) ( 4) 0 0 (6)
4=
MG995 Micro 0 0 1 3
Dimensiones 40.7*19.7*42.9 22.5 * 12.2 * 28 0 0 0 1
(mm)
Peso 55gr 9gr ( 5) 0 ( 5) 0
Torque 15Kg/cm 1.6Kg/cm(4.8V) 0 1 0 0 (7)
5=
1.8Kg/cm(6V) − ( 5) 0 ( 5) 4
0 0 0 1
Velocidad de 53-62R / M
reacción Resolviendo la ecuación (1), se obtiene un vector 4x1, el cual
Temperatura -30 ~ +60 ° permite conocer los valores de PxF, PyF, PzF en función de
de operación q1, q2, q3, q4 y q5, y de las longitudes de cada eslabón L1, L2,
Rotación 180° 180° L3 L4. Para el caso del diseño propuesto se ha obtenido que:
máxima
Cinemática inversa
Corriente 100mA 100mA
Para el diseño propuesto se realiza el cálculo de la
Voltaje 3-7.2V 4.8V a 6V
cinemática inversa por medio del desacoplamiento cinemático,
Velocidad de 0.17s/60°(4.8V) 0.1s/60°(4.8V)
el cual consiste en analizar de manera separada los grados de
Operación sin 0.13s/60° (6.0V) 0.08s/60°(6V)
libertad dedicados a posicionar el efector final respecto a los
carga grados de libertad dedicados a la orientación [7].
Para los tres primeros grados se utiliza el método
Cinemática directa geométrico, el cuál es adecuado para este tipo de articulaciones
Para calcular la cinemática directa del robot propuesto siempre y cuando actúen en un plano. El procedimiento se basa
se hace uso de las matrices de transformación homogéneas con en encontrar un número suficiente de relaciones geométricas en
la ayuda del software matlab [6], de manera que para calcular las que intervendrán las coordenadas del extremo del robot, sus
el punto Pf se tiene que: coordenadas articulares y las dimensiones físicas de sus
elementos. En la Figura 4 se muestra los primeros tres grados
= ∗ (1) de liberta del diseño propuesto, así como sus dimensiones y
coordenadas articulares, las cuales son las consideradas para
Donde: resolver el problema cinemático inverso.
Pf es el vector columna de los puntos fijos PxF,PyF, PzF
Pm es el vector columna PmX, PmY, PmZ que dependen de la
ubicación de un efector final.
T es la matriz de transformación total, que está dada por

= ∗ ∗ ∗ ∗ (2)

Siendo Ti, las matrices de trasformación de los sistemas de


referencia acoplados a cada uno de los eslabones del robot, y
que de acuerdo a la configuración propuesta, están dadas por:

( 1) − ( 1) 0 0
1= ( 1) ( 1) 0 0 (3)
0 0 1 0 FIGURA 4: PRIMEROS TRES GRADOS DE LIBERTAD DEL BRAZO
0 0 0 1 PROPUESTO.

( 2) 0 ( 2) 0
0 1 0 0 (4) Por medio de análisis geométrico de los tres primeros
2= eslabones, mostrados en la Figura 4, se obtienen las ecuaciones
− ( 2) 0 ( 2) 1
0 0 0 1 (8), (9) y (10), que representan la cinemática inversa del diseño
propuesto, para los tres primeros grados de libertad [8].

Copyright © 2016 by AMRob


1 = tan (8) 5 = tan (13)

2= − (9) = ( 1)( ) + 1 − (cos 1)( 1) − − 1

= (cos 4) ( )( 1) + ( )( ) − ( 1)( )
= tan
+ + (sin 4) ( 1)(cos 1) − (sin 1)( )

3(sin 3) 1 = (cos 2)(sin 1)(sin 3) + (cos 3)(sin 1)(sin 2)


= tan (10)
2 + 3(cos 3) 1 = (cos 2)(cos 3) − (sin 2)(sin 3)
= (cos 1)(cos 2)(sin 3) + (cos 1)(cos 3)(sin 2)
= (cos 2)(cos 3)(sin 1) − (sin 1)(sin 2)(sin 3)
1 − (cos 3)
3 = tan = (cos 1)(cos 2)(cos 3) − (cos 1)(sin 2)(sin 3)
cos 3 = (cos 2)(sin 3) + (cos 3)(sin 2)

Utilizando el método de matrices de transformación Control del robot por medio de ANDROID
homogéneas se llega al mismo resultado, lo cual indica que la
cinemática inversa para los tres primeros grados de libertad del Google App Inventor es una plataforma de Google
robot propuesto son correctos. Labs que permite crear aplicaciones para el sistema
En general no basta con posicionar el extremo del robot operativo Android, donde, de una manera visual y a partir de
en un punto del espacio, sino que es preciso conseguir que la un conjunto de herramientas básicas, el usuario puede ir
herramienta se oriente de una manera determinada. Para ello, enlazando una serie de bloques para crear una aplicación para
los robots cuentan con otros dos grados de libertad adicionales, dispositivos móviles con este sistema operativo. El sistema es
situados al final de la cadena cinemática y cuyos ejes se cortan gratuito. Las aplicaciones creadas a partir de App Inventor
en un punto, a lo cual se le denomina muñeca del robot. están limitadas por su simplicidad, aunque permiten cubrir un
Si bien la variación de estos dos últimos grados de gran número de necesidades en un dispositivo móvil.
libertad origina un cambio en la posición final del extremo real El desarrollo de la aplicación para el control del brazo
del robot, su verdadero objetivo es poder orientar la robótico propuesto fue basado en dos pestañas principales, las
herramienta del robot libremente en el espacio. cuales son: (i) el control directo, Figura 5, mediante el ingreso
De esta manera, las ecuaciones (8), (9) y (10) de posiciones articulares, donde el usuario puede controlar de
encontradas en el paso anterior establecen las coordenadas del manera independiente cada junta del brazo; y (ii) un control
punto de corte de los 2 últimos ejes; dicho de otro modo, los inverso del brazo, Figura 7, donde se especifican las posiciones
valores de las tres primeras variables articulares q1, q2, q3 espaciales a alcanzar y mediante la cinemática inversa se
consiguen posicionar la muñeca del robot. calculan las posiciones articulares de cada junta.
Para calcular los valores de las últimas dos coordenadas
articulares q4 y q5, una vez conocidos q1, q2 y q3, se puede
emplear la expresión (11) la cual es el fundamento del
desacoplamiento cinemático, y se basa en despejar la matriz de
transformación que lleva del sistema de coordenadas 3 al 5,
como se puede observar [9].

=( ) =( ) (11)

Mediante esta operación se obtiene una matriz 4x4 de la


cual se pueden extraer varias relaciones individuales que
expresan q4 y q5 en términos de las otras variables articulares
y de las longitudes de los eslabones del robot. Resolviendo las
matrices y despejando los términos se obtienen las relaciones
(12) y (13).

1 − (sin 1) − (cos 1)
4 = tan (12)
(sin 1) − (cos 1)
FIGURA 5: CONTROL DIRECTO DE LAS JUNTAS DEL BRAZO
= (cos 1)(cos 2)(cos 3) − (cos 1)(sin 2)(sin 3) ROBÓTICO.
= (cos 2)(cos 3)(sin 1) − (sin 1)(sin 2)(sin 3)

Copyright © 2016 by AMRob


Programación en Arduino
Mediante la programación en Arduino se pueden incluir
las ecuaciones obtenidas por medio de la cinemática directa y
e inversa, y así controlar los servomotores de las juntas del
robot y mostrar los resultados en la pantalla LCD para
visualizar posiciones [10-12].

FIGURA 6: CONTROL MEDIANTE ESPECIFICACIÓN DE


COORDENADAS.

Además de las ventanas principales, la aplicación


cuenta con otros botones para realizar diversas funciones como
son:
 Bluetooth: El cual permite enlazarse al brazo robótico FIGURA 8: DIAGRAMA DE FLUJO DEL FUNCIONAMIENTO.
mediante dicho puerto de comunicación.
 Guardar: se guardan las posiciones que se desea que El diagrama de flujo funciona en dos módulos el primer módulo
sigua el robot. es el aprendizaje iniciando con un mensaje mostrado mediante
 Ejecutar: Se reproducen las posiciones guardadas un LCD donde también indica el encendido del bluethoot el
previamente de manera secuencial. programa continuamente lee los datos mueve los servomotores
 Control: Permite volver a la pestaña de control para y se condiciona al encendido de un botón en donde si es
elegir otro modo o salir de la aplicación. afirmativo se guarda la posición y si no se sigue modificando
los datos. El segundo módulo es de ejecución en el cual con las
El diagrama de flujo de la aplicación se muestra en la Figura 7. posiciones o puntos guardados se ejecutaran esas posiciones y
se condiciona a si es verdadero se detiene el programa y si no
se sigue moviendo el brazo robot hasta terminar la secuencia.

RESULTADOS
Como resultados se tiene que la estructura diseñada es
viable para apreciar la cinemática y poder hacer pruebas, sin
embargo no es la más adecuada para un proyecto terminal
debido a problemas de fricción y de fragilidad del material, los
problemas con la programación de la cinemática inversa al
existir singularidades, dificultan el trabajo de encontrar el
resultado, problemas como la conexión entre Android y
Arduino, la programación de la aplicación, los cálculos de
cinemática directa e inversa el modelado del brazo fueron
resueltos.

FIGURA 7. DIAGRAMA DE FLUJO DE LA APLICACIÓN.

Copyright © 2016 by AMRob


[2] J J O'Connor and E F Robertson (University of St Andrews,
CONCLUSIONES Y TRABAJO A FUTURO Scotland). «Galileo biography» (en inglés). Consultado el 12 de
febrero de 2008.
[3] Varignon, Pierre (1700). http://www.academie-
En base a los resultados observados, y con el fin de mejorar el sciences.fr/archives/doc_anciens/hmvol3502_pdf/p83_101_vol3
funcionamiento del brazo robótico y llevarlo a una aplicación 502m.pdf "Du mouvement en générale par toutes sortes de
real se planean realizar las siguientes actividades: courbes; & des forces centrales, tant centrifuges que centripètes,
Mejorar el modo de seguridad del brazo robot implementando nécessaires aux corps qui les décrivent". pp. 83-101. ISBN.
un sistema similar al deadman switch. [4] Juan José Gómez Cardenas (2007). «Cinemática relativista».
Mejorar la programación en el área de guardado de posiciones Archivado desde el original el 1 de diciembre de 2015.
Consultado el 12 de febrero de 2008.
permitiendo guardar varias posiciones. [5] ColdFire Electronica. (2016). Servomotores. 11/09/2016, de
Mejorar la estructura, empleando materiales de mayor rigidez ColdFire Electronica Sitio web: http://www.coldfire-
y baleros que disminuyan la fricción en algunos puntos electronica.com/esp/items/6/motores-servos
importantes. [6] Fu, K.S.; González, R.C. y Lee, C.S.G. Robotics: Control,
Implementar el control de velocidad de los servomotores, Sensing, Vision, and Intelligence. McGraw-Hill. 1987.
caracterizando su comportamiento por medio de la matriz [7] Craig J., John (2006). robótica. pearson education. ISBN 970-26-
jacobiana para contemplar aceleraciones y velocidades. 0772-8.
Utilizar una raspberry pi 3 la cual nos permita una respuesta [8] Proyecto de la UTH (Universidad Tecnológica de Honduras)
más rápida al ser un microprocesador y no un [9] Proyecto Institut für Werkzeugmaschinen und
FabrikbetriebIndustrielle Automatisierungstechnik
microcontrolador. http://www.iat.tu-berlin.de/
Realizar una simulación en Matlab que permita ver el [10] Blemings, Hugh (28 de diciembre de 2009). Practical Arduino:
movimiento del brazo robot visualizando los resultados e Cool Projects for Open Source Hardware (1ª edición). Apress.
identificar los problemas de singularidad. p. 500. ISBN 1430224770.
Encontrar una aplicación viable en la rehabilitación de [11] Noble, Joshua (15 de julio de 2009). Programming Interactivity:
pacientes con problemas motrices la cual sea divertida y A Designer's Guide to Processing, Arduino, and
práctica. openFramework (1ª edición). O'Reilly Media.
p. 768.ISBN 0596154143.
[12] Banzi, Massimo (24 de marzo de 2009). Getting Started with
BIBLIOGRAFIA Arduino (1ª edición). Make Books.
[1] IEEE Xplore:The Canadarm grasps this boom and can position it p. 128. ISBN 05961ttp://www.makershed.com/ProductDetails.a
in the necessary positions to permit a complete inspection. sp?ProductCode=9780596155513

Copyright © 2016 by AMRob

Você também pode gostar