Está en la página 1de 7

Modelamiento matemático de la

cinemática directa e inversa de un robot


manipulador de tres grados de libertad1
Mathematical modeling of the direct
and inverse kinetics of a handling robot
with three degrees of freedom

Recibido: 12 de julio del 2012


Aprobado: 15 de septiembre del 2012

José Luis Ramírez Arias*


A s t r i d R u b i a n o F o n s e c a **

Resumen Abstract
En este artículo de investigación se describe de forma detallada el This research paper describes in detail the mathematical models
modelo matemático de la cinemática directa e inversa de un robot for the direct and inverse kinetics of a handling robot with three
manipulador de tres grados de libertad, con el objetivo de deter- degrees of freedom, with the objective of determining the position
minar la posición que debe tener cada una de las articulaciones for each of the robot’s articulations, as well as the positions that
del robot, así como la posición que alcanzará su extremidad final. may be reached by the final extremity. The model was developed
El modelo fue desarrollado utilizando tanto las matrices de trans- using homogeneous transformation matrixes and Denavit-
formación homogéneas y los parámetros de Denavit-Hartenberg, Hartenberg parameters, as well as numerical methods to verify
como los métodos numéricos, verificando la eficiencia de los mo- the efficiency of the proposed models. The model we developed
delos propuestos. El modelo determinado presenta dos soluciones, presents two solutions; this makes its implementation complex
condición que causa que la solución sea compleja de implementar since a decision process is needed. This development is the result
dado que se requiere un proceso de decisión. Este desarrollo es of the research project: “Design and implementation of a Handling
producto del proyecto de investigación “Diseño e implementación Robot with three degrees of freedom for educational purposes”,
de un robot manipulador de tres grados de libertad con fines edu- approved by Conadi in the 2009 call for research projects. The
cativos”, adelantado por el grupo de investigación “Automatización project is being carried out by the Industrial automation research
Industrial”, y aprobado por Conadi en la convocatoria del 2009, group from the program of Electronic Engineering of the Univer-
Universidad Cooperativa de Colombia, sede Bogotá, programa de sidad Cooperativa de Colombia.
Ingeniería Electrónica.
Keywords: direct kinetics, inverse kinetics, robot control, hand-
Palabras clave: cinemática directa, cinemática inversa, control ling, numerical methods.
de robot, manipulador, métodos numéricos.

Cómo citar este artículo: J.L. Ramírez Arias, A. Rubiano Fonseca. *


Ingeniero en Mecatrónica de la Universidad Militar Nueva Granada. MSc
“Modelamiento matemático de la cinemática directa e inversa de un robot en Sistemas Automáticos de Producción de la Universidad Tecnológica de
manipulador de tres grados de libertad”. Revista Ingeniería Solidaria, vol. 8, Pereira. Docente de Ingeniería Electrónica de la Universidad Cooperativa
núm. 15, 2012, pp. 46-52. de Colombia, sede Bogotá.
1
Artículo de investigación derivado del proyecto de investigación “Diseño Correo electrónico: jose.ramirez@campusucc.edu.co
e implementación de un robot manipulador de tres grados de libertad con Ingeniera en Mecatrónica de la Universidad Militar Nueva Granada. MSc
**

fines educativos”, adelantado por el grupo de investigación “Automatización en Sistemas Automáticos de Producción de la Universidad Tecnológica de
Industrial”, y aprobado por el Comité Nacional para el Desarrollo de la Pereira. Docente de Ingeniería Electrónica de la Universidad Cooperativa
Investigación (Conadi) en la convocatoria del 2009, de la Universidad de Colombia, sede Bogotá.
Cooperativa de Colombia, sede Bogotá, programa de Ingeniería Electrónica. Correo electrónico: astrid.rubiano@campusucc.edu.co

46 Ingeniería Solidaria • volumen 8 / número 15 / julio-diciembre del 2012


Modelamiento matemático de la cinemática directa José Luis Ramírez Arias
e inversa de un robot manipulador de tres grados de libertad Astrid Rubiano Fonseca

Introducción También se han utilizado diferentes redes neuro-


nales como perceptrón simple, back propagation, que
Los robot industriales y los sistemas asistidos por com-
evidencian exactitud en el cálculo de las posiciones y
putador son la última tendencia en la automatización
trayectorias [11]. Así, teniendo en cuenta los desarro-
de los procesos de fabricación, ya que los avances en el
llos anteriores, se hace necesario proponer el modelo
campo de los sensores permiten desarrollar tareas cada
matemático para la cinemática directa e inversa del
vez más sofisticadas.
robot manipulador, el cual se está desarrollado por el
El uso de robots en la industria es amplio, ya que per- grupo de investigación en automatización industrial de
mite realizar tareas que son peligrosas o monótonas para la Universidad Cooperativa de Colombia.
los seres humanos; este es el caso del robot industrial que
se utiliza para la limpieza en las subestaciones eléctricas, Metodología
en las que se trabaja con sistemas de alta tensión [1, 2].
Los robots manipuladores se caracterizan por tener Descripción general del robot
limitaciones de diseño relacionado con la estabilidad y
la distribución de equilibrio y peso. Otra consideración El análisis presentado en este documento es el resultado
importante en el diseño de robots manipuladores es el del desarrollo del proyecto titulado: “Diseño y cons-
análisis cinemático, debido a que implica calcular las trucción de un robot manipulador antropomórfico con
posiciones relativas entre el sistema de coordenadas tres grados de libertad con fines educativos”. El robot
unida a las partes móviles con respecto a un solo sistema llamado Teachbot-01 se propuso con tres grados de
de coordenadas, lo cual causa un aumento de la incerti- libertad y una pinza en su extremo, con un alcance de
dumbre y el error acumulado en las transformaciones. 873 mm y capacidad de carga de 50 g. Se ha propuesto
Como consecuencia de ello se afecta la precisión en el una arquitectura abierta para permitir la interacción con
posicionamiento y seguimiento de las trayectorias del los componentes del robot, ofreciendo la posibilidad
manipulador. Es importante destacar que generalmente de poner en práctica diferentes estrategias de control
el análisis de la cinemática se aborda de forma directa y, posteriormente, optimización en el diseño del robot.
para así calcular la posición del punto final del robot
como función de los valores articulares (ángulos) y de
Cinemática directa
forma inversa para calcular el valor de las coordenadas La solución al problema de la cinemática directa con-
articulares como función de la posición final; este pro- siste en encontrar el valor de la posición final del robot
cedimiento es importante, ya que permite posicionar manipulador, esta solución es una función de los valores
el robot en un punto dentro de su volumen de trabajo. articulares, es decir, el valor traslacional o rotativo de
La solución de la cinemática inversa de un robot las articulaciones. En la actualidad existen diferentes
industrial puede proporcionar múltiples configura- métodos para resolver este problema, pero en el caso
ciones para una sola posición, pues esta surge de la presente se hizo uso de las matrices de transformación
solución de una ecuación que no es de primer orden. homogénea, usando el método de la representación
Es así como el sistema puede tener múltiples soluciones, sistemática de Denavit-Hartenberg. Aunque la cinemá-
siendo frecuente el uso de algoritmos que permitan tica del robot se puede solucionar geométricamente, el
aproximarse a una solución numérica; es el caso del método propuesto ofrece la ventaja de conocer tanto
experimento con el robot puma y el robot Scara, que la posición final de manipulador como la posición de
usan algoritmos genéticos e inteligencia artificial para cada una de sus articulaciones [12].
calcular la posición final [3-8]. La representación de Denavit-Hartenberg se reem-
Otra estrategia comúnmente usada para solucionar plaza en la matriz de transformación homogénea i-1Ai,
la cinemática inversa es el uso de redes neuronales, las la cual es un arreglo de 4x4 que contiene información
cuales utilizan la función radial. Las características más relativa a la posición y orientación del sistema de refe-
destacadas de la función incluyen la predicción precisa rencia unido al i enlace del manipulador en relación
de la cinemática inversa y soluciones con menos tiem- con el sistema de referencia de la conexión i-1; de esa
po de cálculo; los datos de entrenamiento para la red manera, la matriz 0A1 representa la posición y orientación
neuronal se generan con las relaciones de la cinemática del sistema de coordenadas S1 del robot con respecto
directa del robot [9, 10]. al sistema de coordenadas S0, si S0 se coloca en el eje

Ingeniería Solidaria • volumen 8 / número 15 / julio-diciembre del 2012 47


Investigación

del manipulador y S1 al final de un eslabón, la matriz


0
A1 representa la posición de S1 referenciada al sistema
de coordenadas fijo del robot. De esta forma, la matriz
0
An, en la que n es el grado de libertad, es aquella que
representa la posición final del manipulador con respeto
al sistema de referencia; esta matriz comúnmente es deno-
minada T y se representa mediante las ecuaciones 1 y 2:

T = 0 An = 0 A1 1 A2 2 A3 ....n −1 An , n → Dof (1)

n
T = ∏ i −1 Ai (2)
i =1

(3)
cos(θ1 ) − cos(α1 )sin(θ1 ) sin(α1 )sin(θ1 ) a1 cos(θ1 )
 sin(θ ) cos(α )cos(θ ) − sin(α )cos(θ ) a sin(θ ) 
A1 = 
i −1 1 1 1 1 1 1 1 

 0 sin(α1 ) cos(α1 ) di 
 
 0 0 0 1 

Para el cálculo de i-1Ai se deben definir los parámetros Figura 1. Localización de ejes coordenados
de Denavit-Hartenberg, los cuales se basan exclusivamen- Fuente: el autor
te en las características geométricas de cada enlace y los
sistemas de coordenadas en cada uno. La forma general de las matrices de rotación es:
Las características de los parámetros son:
cos(θ1 ) − cos(α1 )sin(θ1 ) sin(α1 )sin(θ1 ) a1 cos(θ1 )
θi rotación alrededor del eje Zi-1  sin(θ ) cos(α )cos(θ ) − sin(α )cos(θ ) a sin(θ ) 
i −1
A1 = 
1 1 1 1 1 1 1 
(3)
di translación a lo largo de Zi-1 eje  0 sin(α1 ) cos(α1 ) di 
 
 0 0 0 1 
ai translación lo largo del eje Xi
Αi rotación alrededor del eje Xi [13]
Reemplazando los valores de la tabla 1 en la ecuación
Los sistemas de coordenadas deben ser colocados 3, se tiene:
como en la figura 1, para cumplir con las características de
cos(θ1 ) 0 sin(θ1 ) 0  (4)
los parámetros mencionados anteriormente. En la tabla
 sin(θ ) 0 − cos(θ1 ) 0 
1 se muestran los parámetros de Denavit-Hartenberg 0
A1 = 
1 
 0 1 0 0, 28616 
para el Teachbot-01.  
 0 0 0 1 
Tabla 1. Parámetros de Denavit-Hartenberg
cos(θ 2 ) − sin(θ 2 ) 0 0, 30226 cos(θ 2 ) (5)
 sin(θ ) cos(θ ) 0 0, 30226 sin(θ 2 ) 
Articulación θa d[m]b a[m]c α[rad]d 1
A2 = 
2 2 
 0 0 1 0 
 
1 θ1 0,28616 0 π/2  0 0 0 1 

θ2 0 0, 285 cos(θ3 ) (6)


2 0 0,30226 0
cos(θ3 ) − sin(θ3 )
 sin(θ ) cos(θ ) 0 0, 285 sin(θ3 ) 
3 θ3 0 0,285 0 2
A3 = 
3 3 
 0 0 1 0 
 
Fuente: los autores  0 0 0 1 

48 Ingeniería Solidaria • volumen 8 / número 15 / julio-diciembre del 2012


Modelamiento matemático de la cinemática directa José Luis Ramírez Arias
e inversa de un robot manipulador de tres grados de libertad Astrid Rubiano Fonseca

Finalmente, reemplazando las ecuaciones 4, 5 y 6 en Los vectores n, o y a representan la orientación del


la ecuación 2, se tiene una matriz de la forma. punto final del robot, y el vector P representa el valor
de las coordenadas x, y y z en función de los ángulos θ.
n o a P 
T =  (7)  Px 
0 0 0 1   
P =  Py  (8)
 Pz 
 

Las coordenadas del punto final son:

Px = 0, 30226 cos(θ1 )cos(θ 2 ) + 0, 285 cos(θ1 )cos(θ 2 )cos(θ3 ) − 0, 285 cos(θ1 )sin(θ 2 )sin(θ3 ) (9)

Py = 0, 30226 cos(θ 2 )sin(θ1 ) + 0, 285 cos(θ 2 )cos(θ3 )sin(θ1 ) − 0, 285 sin(θ1 )sin(θ 2 )sin(θ3 ) (10)

Pz = 0, 30226 sin(θ 2 ) + 0, 285 cos(θ 2 )sin(θ3 ) + 0, 285 cos(θ3 )sin(θ 2 ) + 0, 28616 (11)

Cinemática inversa Dado que la matriz T es de la forma:

La cinemática inversa de un manipulador es un término


 nx ox ax Px 
usado para denotar el cálculo de los valores articulares n oy ay Py 
(ángulos de las juntas) del manipulador, necesario para T =  (14)
y

posicionar un punto en el espacio referenciado al sistema  nz oz az Pz 


 
de coordenadas global del manipulador. Para este caso, 0 0 0 1
se calcularon los valores de θ1, θ2 y θ3 basado en el
punto Px, Py y Pz, paso mostrado en la sección anterior. Resolviendo la ecuación 13 para 2A3, se obtiene un
Existen diferentes formas de abordar el problema de sistema de tres ecuaciones y tres incógnitas, basadas en
la cinemática inversa, particularmente se propone un el punto Px, Py y Pz.
conjunto de ecuaciones cerradas que, a través de relacio-
nes matemáticas, determinan los puntos adecuados para ( 0 A1 )−1 ( 1 A2 )−1T = 2 A3 (15)
hacer que el robot haga el seguimiento de trayectoria,
proporcionando así una solución en tiempo real.
ªcos(T1 ) sin(T1 ) 0 0 º ª cos(T 2 ) sin(T 2 ) 0 0, 30226 º
« 0 0 1 0, 28616 » «  sin(T 2 ) cos(T 2 ) 0 0 »
« »« »
Tk f k ( Px , Py , Pz ) « sin(T1 )  cos(T1 ) 0 0 »« 0 0 1 0 »
(12) « »« »
k 1...n( DOF ) ¬ 0 0 0 1 ¼¬ 0 0 0 1 ¼

Este tipo de función se puede calcular utilizando


diferentes métodos; para este caso, y puesto que es un ª nx ox ax Px º ªcos(T3 )  sin(T3 ) 0 0, 285 cos(T3 )º
manipulador con tres grados de libertad, se seleccionó «n oy ay Py » « sin(T ) cos(T ) 0 0, 285 sin(T3 ) » (16)
« y » « 3 3 »
la matriz de transformación homogénea. «nz
«
oz az Pz »
»
« 0
«
0 1 0 »
»
La ecuación 1 para un manipulador con tres grados ¬0 0 0 1¼ ¬ 0 0 0 1 ¼

de libertad se reduce a:

=
T 0
=
An 0
A1 1 A2 2 A3 (13)

Ingeniería Solidaria • volumen 8 / número 15 / julio-diciembre del 2012 49


Investigación

Al igualar la columna 4 de cada lado de la ecuación 16, se tiene:

Pz sin(θ 2 ) − 286,16 sin(θ 2 ) + Px cos(θ1 )cos(θ 2 ) + Py cos(θ 2 )sin(θ1 ) − 302, 26 = 0, 285 cos(θ3 ) (17)

Pz cos(θ 2 ) − 286,16 cos(θ 2 ) − Px cos(θ1 )sin(θ 2 ) − Py sin(θ1 )sin(θ 2 ) = 0, 285 sin(θ3 ) (18)

Px sin(θ1 ) − Py cos(θ1 ) = 0 (19)

De la ecuación 19, se puede calcular el valor del ángulo θ1.

sin(θ1 ) Py
= = tan(θ1 ) (20)
cos(θ1 ) Px

θ1 = tan −1 (θ1 ) (21)

Al factorizar en las ecuaciones 17 y 18, se obtiene:

Pz sin(θ 2 ) − 286,16 sin(θ 2 ) + Px cos(θ 2 )cos(θ 2 ) + Py cos(θ 2 )sin(θ1 ) − 302, 26 = 285 cos(θ3 ) (22)

sin(θ 2 )[ Pz − 286,16 ] + cos(θ 2 )  Px cos(θ1 ) + Py sin(θ1 ) − 302, 26 = 285 cos(θ3 ) (23)

Pz cos(θ 2 ) − 286,16 cos(θ 2 ) − Px cos(θ 2 )sin(θ 2 ) − Py sin(θ 2 )sin(θ 2 ) = 285 sin(θ3 ) (24)

− sin(θ 2 )  Px cos(θ 2 ) + Py sin(θ 2 ) + cos(θ 2 )[ Pz − 286,16 ] = 285 sin(θ3 ) (25)

Si se reemplaza: La ecuación 32 es una ecuación trascendental de una


sola variable, por lo que se usa la siguiente relación para
a = Px cos(θ1 ) + Py sin(θ1 ) (26) lograr una aproximación polinomial:

b = Pz − 286,16 (27)
 θ  (33)
u = tan  2 
sin(θ 2 )b + cos(θ 2 )a − 302, 26 = 285 cos(θ3 ) (28) 2

1 − u 2 (34)
− sin(θ 2 )a + cos(θ 2 )b = 285 sin(θ3 ) (29) cos(θ 2 ) =
1 + u2

Al sumar las ecuaciones 27 y 28 elevadas al cuadra- 2u (35)


sin(θ 2 ) =
do, se tiene: 1 + u2

 a 2 + b 2  + 10136 (30) Al reemplazar, se tiene:


a cos(θ 2 ) + b sin(θ 2 ) =
60452
1 − u2 2u (36)
a +b =c
 a + b  + 10136
2 2
1+ u 2
1+ u 2

c= (31)
60452
(1 − u 2 )a + 2ub = c (1 + u 2 ) (37)

cos(θ 2 ) + b sin(θ 2 ) = c (32)


u 2 ( a + c ) − 2ub + c − a = 0 (38)

50 Ingeniería Solidaria • volumen 8 / número 15 / julio-diciembre del 2012


Modelamiento matemático de la cinemática directa José Luis Ramírez Arias
e inversa de un robot manipulador de tres grados de libertad Astrid Rubiano Fonseca

2ub r 4b 2  4(c 2  a 2
( Se puede proponer un algoritmo numérico que,
u (39) según el modelo matemático encontrado, calcule una
2( a  c )
aproximación a la solución evitando solucionar la ecua-
b ± b2 + a2 − c 2 θ  ción cuadrática, ya que esta podría ofrecer resultados
u= = tan  2  (40) imaginarios o complejos.
a +c 2
También se puede proponer una estrategia de op-
 b ± b2 + a2 − c 2  timización que permita interpolar los mejores valores
θ 2 = 1tan −1   (41)
 a +c  para una solución; esta se puede implementar usando la
 
herramienta Matlab, ya que se cuenta con un Toolbox
para optimización.
Si se dividen las ecuaciones 29 y 28, se obtiene:

− sin(θ 2 )a + cos(θ 2 )b Referencias


tan(θ3 ) = (42)
sin(θ 2 )b + cos(θ 2 )a − 302, 26 [1] E. Vargas, L. Villarreal, J.M. Reynoso y R. Mier Maza.
Diseño de un manipulador industrial para aplicaciones de
limpieza en subestaciones eléctricas. Monterrey: Instituto
 − sin(θ 2 )a + cos(θ 2 )b  Tecnológico y de Estudios Superiores de Monterrey, Centro
(θ3 )tan −1   (43)
 sin(θ 2 )b + cos(θ 2 )a − 302, 26  Metropolitano de Investigación en Mecatrónica. 2001.
[2] J.R. Vargas et al. Robot manipulador para aplicación
Las ecuaciones 21, 42 y 43 son la solución para la de recubrimiento en líneas de alta tensión. Monterrey:
cinemática inversa del robot. Instituto Tecnológico y de Estudios Superiores de
Monterrey. 2001.
Resultados y discusión [3] P. Kalra, P.B. Mahapatra, D.K. Aggarwal. “An evolu-
tionary approach for solving the multimodal inverse
A continuación se describen los resultados obtenidos kinematics problem of industrial robots”. Mechanism
con respecto a la cinemática directa y a la cinemática and machine theory, vol. 41, núm. 10, 2006, octubre,
inversa. En las ecuaciones 17 a 19 se muestra el valor pp. 1213-1229.
de las coordenadas x, y, z del punto final del manipu- [4] Z.S. Abo-Hammour, N.M. Mirza, S. M. Mirza, M.
lador con respecto al sistema de referencia global. En A. “Cartesian path generation of robot manipulators
las ecuaciones 21, 41 y 43 se muestra el valor de los using continuous genetic algorithms”. Robotics and
autonomous systems, vol. 41, núm. 4, 2002, diciembre,
ángulos que tendrá cada una de las articulaciones del
pp. 179-223.
robot manipulador.
[5] M. da Graca Marcos, J.A. Tenreiro Machado y T.P.
El modelo determinado anteriormente presenta dos Azevedo Perdicoulis. “Trajectory planning of redundant
soluciones por las articulaciones θ2 y θ3, esta condición manipulators using genetic algorithms”. Communi-
causa que la solución sea compleja de implementar, dado cations in nonlinear science and numerical simulation,
que se requiere un proceso de decisión para seleccionar vol. 14, núm. 7, 2009, julio, pp. 2858-2869.
una de las dos posibles respuestas; por otra parte, se [6] A.C. Nearchou. “Solving the inverse kinematics problem
analizó el comportamiento del modelo de la cinemática of redundant robots operating in complex environments
inversa en puntos que se encuentran fuera del espacio de via a modified genetic algorithm”. Mechanism and ma-
trabajo del manipulador, determinando que para estos chine theory, vol. 33, núm. 3, 1998, abril, pp. 273-292.
valores el resultado es un numero complejo. [7] P. Th. Zacharia, N.A. Aspragathos. “Optimal robot task
scheduling based on genetic algorithms”. Robotics and
Conclusiones computer integrated manufacturing, vol. 21, núm. 1,
2005, febrero, pp. 67-79.
En general, el modelo matemático propuesto es viable, [8] Wei-Min Yun, Yu-Geng Xi. “Optimum motion planning
ya que puede ser programado y, por tanto, puede ser in joint space for robots using genotics and Autonomous
automatizado; aún así, el análisis numérico es una al- Systems, vol. 18, núm. 4, 1996, octubre, pp. 373-393.
ternativa importante en la solución de los sistemas cuyo [9] S. Shital, N. Chiddarwar, R. Babu. “Comparison of RBF
modelo matemático parece ser muy complejo. and MLP neural networks to solve inverse kinematic

Ingeniería Solidaria • volumen 8 / número 15 / julio-diciembre del 2012 51


Investigación

problem for 6R serial robot by a fusion approach”. [11] E. Dermatas, A. Nearchou, N. Aspragathost. “Error
Engineering applications of artificial intelligence, vol. 23, back - propagation solution to the inverse kinematic
núm. 7, 2010, octubre, pp. 1083-1092. problem of redundant manipulators”. Robotics and
[10] R. Köker, C. Öz, T. Çakar, H. Ekiz. “A study of neural computer integrated manufacturing, vol. 12, núm. 4,
network based inverse kinematics solution for a three- 1996, diciembre, pp. 303-310.
joint robot”. Robotics and autonomous systems, vol. 49, [12] H.S. Lee, S.L. Chang. “Development of a cad/cae/cam
núm. 3-4, Patterns and autonomous control, 2004, system for a robot manipulator”. Journal of Materials
diciembre, pp. 227-234. Processing Technology, núm. 140, 2003, pp. 100-104.

52 Ingeniería Solidaria • volumen 8 / número 15 / julio-diciembre del 2012

También podría gustarte