Вы находитесь на странице: 1из 12

Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382

Modelado de Cadenas Cinematicas mediante Matrices de Desplazamiento.


Una alternativa al metodo de Denavit-Hartenberg

A. Barrientosa , M. Alvarezb , J.D. Hernandeza,, J. del Cerroa , C. Rossia


a Centro de Automatica y Robotica UPM-CSIC, Universidad Politecnica de Madrid. Madrid, Espana.
b Universidad Politecnica de Madrid. Madrid, Espana.

Resumen
En este trabajo se presenta un metodo para el modelado de cadenas cinematicas de robots que salva las dicultades asociadas
a la eleccion de los sistemas de coordenadas y obtencion de los parametros de Denavit-Hartenberg. El metodo propuesto parte
del conocimiento de la posicion y orientacion del extremo del robot en su conguracion de reposo, para ir obteniendo en que se
transforman estas tras los sucesivos movimientos de sus grados de libertad en secuencia descendente, desde el mas alejado al mas
cercano a su base. Los movimientos son calculados en base a las Matrices de Desplazamiento, que permiten conocer en que se
transforma un punto cuando este es desplazado (trasladado o rotado) con respecto a un eje que no pasa por el origen. A diferencia
del metodo de Denavit-Hartenberg, que precisa ubicar para cada eslabon el origen y las direcciones de los vectores directores de
los sistemas de referencia asociados, el metodo basado en las Matrices de Desplazamiento precisa solo identicar el eje de cada
articulacion, lo que le hace mas simple e intuitivo que aquel. La obtencion de las Matrices de Desplazamiento y con ellas del
Modelo Cinematico Directo a partir de los ejes de la articulacion, puede hacerse mediante algunas simples operaciones, facilmente
programables. Copyright 2012 CEA. Publicado por Elsevier Espana, S.L. Todos los derechos reservados.
Palabras Clave:
Modelo cinematico de robots, Denavit-Hartenberg, formula de rotacion de Rodrigues.

1. Introduccion ciones constituyen el denominado Modelo Cinematico Directo


(MCD) del robot.
El metodo de Denavit Hartenberg (Denavit and Hartenberg, La obtencion de este modelo es imprescindible para abordar
1955) para obtener el modelo cinematico de un robot manipu- la mayor parte de los problemas asociados al control y progra-
lador, constituye un topico obligado en todo curso basico de macion de los robots manipuladores, caminantes o humanoides.
robotica. El origen del metodo se encuentra en el trabajo de Denavit
Este metodo establece el modo en que deben seleccionarse y Hartenberg que permite establecer la relacion entre dos barras
los sistemas de coordenadas asociados a los eslabones o barras rgidas consecutivas unidas por una articulacion de un grado de
de la cadena cinematica del robot, para sistematizar la obten- libertad, mediante una matriz i1 Ai , funcion de 4 parametros
cion de las matrices de cambio de base i1 Ai entre el sistema (, d, a, ) asociados a 4 movimientos consecutivos (rotacion y
asociado a la barra i 1 y a la barra i. traslacion en z, seguidos de traslacion y rotacion en x). Para que
La multiplicacion de estas matrices permite obtener la ma- esto sea posible, es preciso asociar a cada barra un sistema de
triz de cambio de base entre los sistemas asociados a la base y al coordenadas posicionado segun determinadas reglas.
extremo del robot, en funcion de los valores adoptados por sus Pieper (Pieper, 1968) aplico esta representacion matricial de
grados de libertad (GDL), o lo que es lo mismo, conocer las ex- las relaciones entre dos barras conectadas por una articulacion,
presiones que denen la posicion y orientacion del extremo del para sistematizar la obtencion del modelo cinematico directo de
robot en funcion de las coordenadas articulares (qi ). Estas rela- robots. Para ello se identica a la matriz de Denavit Hartenberg
(i1 Ai ) con la matriz que dene el cambio de base entre los sis-
Autor
temas asociados a las barras i 1 e i, siendo esta funcion del
en correspondencia
Correos electronicos: antonio.barrientos@upm.es (A. Barrientos), grado de libertad de la articulacion (qi ). Obtenidas las matri-
malvarez@etsii.upm.es (M. Alvarez), juandhv@etsii.upm.es (J.D. ces i1 Ai para i desde 1 a n (numero de grados de libertad del
Hernandez ), j.cerro@upm.es (J. del Cerro), claudio.rossi@upm.es (C. robot), su producto da lugar a la matriz de cambio de base T n
Rossi)

2012 CEA. Publicado por Elsevier Espaa, S.L. Todos los derechos reservados
http://dx.doi.org/10.1016/j.riai.2012.09.004
372 A. Barrientos et al. / Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382

entre el sistema base y el sistema asociado al extremo del robot, do solo a conocimientos basicos de algebra lineal y a simples
que expresa la localizacion de su extremo en funcion de las qi consideraciones vectoriales, deduce una expresion nal del Mo-
(modelo cinematico directo). delo Cinematico equivalente a la que se llega con el Producto
Paul (Paul and Shimano, 1978; Paul, 1981) y otros inves- de Matrices Exponenciales, pero sin precisar del uso de estas,
tigadores divulgaron y popularizaron el metodo que, nalmen- sistematizando y simplicando notablemente la obtencion del
te conocido como metodo de Denavit Hartenberg (DH), se ha modelo cinematico de robots, con respecto al metodo de DH.
convertido en el procedimiento estandar para el modelado ci- El metodo propuesto utiliza las denominadas Matrices de
nematico de robots, siendo incluso utilizados los parametros Desplazamiento (Di ), de facil obtencion a partir de la identi-
DH para la denicion de cadenas cinematicas en herramientas cacion de los ejes de cada articulacion, prescindiendo del esta-
de simulacion (Corke, 1996), (Jaramillo-Botero et al., 2006) y blecimiento de los sistemas de coordenadas y de la obtencion de
ampliandose su uso al analisis dinamico. los parametros DH, foco de dicultades y errores en el metodo
Conceptualmente el metodo DH es sencillo, basta con apli- de Denavit-Hartenberg.
car unos conocimientos elementales de algebra lineal. Pero su Frente al metodo de DH, el metodo propuesto resulta mas
uso no suele estar exento de cierta dicultad debido a la com- simple de comprender y de aplicar, evitando la necesidad de
plejidad espacial ligada a la seleccion de la ubicacion de los tener que memorizar y utilizar los criterios que llevan a la se-
sistemas de coordenadas asociados a cada barra. leccion de los sistemas de coordenadas de Denavit Hartenberg
En cualquier caso, la popularidad del metodo de DH ha y a la obtencion de los correspondientes parametros.
eclipsado otras alternativas que, posiblemente precisando de Se aspira a que tras el conocimiento del algoritmo y su de-
unas bases algebricas menos difundidas que el uso de las ma- mostracion, este constituya una alternativa competitiva e inclu-
trices de transformacion homogenea para representar cambios so preferida al metodo de Denavit-Hartenberg para el modelado
de base y sin notables ventajas frente a esta, han tenido menor de cadenas cinematicas roboticas.
aceptacion que el metodo de DH. Se ha optado por estructurar el presente artculo comenzan-
Los numeros duales (Veldkamp, 1976), utilizados dentro do con la exposicion del metodo (apartado 2), previamente a su
del contexto matricial, permiten expresar las matrices DH en justicacion. Esta decision tiene por objeto el mostrar al lector,
sus equivalentes matrices de numeros duales (3x3), siendo apli- desde el primer momento, las ventajas del metodo propuesto.
cables a la solucion del modelo cinematico del robot (McCarthy, El algoritmo se describe tanto literalmente como mediante su
1986), (Jin and Xiaorong, 2010). codicacion en Matlab .
Los cuaternios, si bien permiten representar rotaciones de Tras especicar el algoritmo y aplicarlo en un sencillo ro-
una manera mas compacta que las matrices de rotacion, no per- bot de ejemplo para facilitar su comprension, se procede en el
miten por s solos representar traslaciones. Sin embargo, su ex- apartado 3 a su demostracion. En esta, la unica dicultad, pura-
tension a los cuaternios duales, en los que cada uno de los cuatro mente geometrica, es la demostracion de la formula de Rodri-
componentes del cuaternio esta formada por un numero dual, gues, que si bien es ampliamente conocida, se ha incluido en el
permite el uso del algebra de cuaternios para representar ro- artculo para su mejor disposicion. La demostracion del metodo
taciones y traslaciones, constituyendo as una alternativa valida propuesto precisa de la extension de la formula de Rodrigues a
para el modelado de cadenas cinematicas (Perez and McCarthy, rotaciones en torno a ejes que no pasan por el origen, lo que se
2004). hace mediante simples razonamientos geometricos.
En general los numeros duales permiten expresar un movi- En el apartado 4 se muestra como las Matrices de Despla-
miento de desplazamiento (traslacion y rotacion) a lo largo de zamiento permiten, con la misma metodologa habitualmente
un eje, denominado Movimiento de tornillo o Screw (en su utilizada con las matrices de DH (Paul, 1981), obtener el mo-
denominacion en ingles), pudiendo ser este tipo de movimien- delo cinematico inverso.
tos manejados mediante diferentes recursos algebraicos. Una El apartado 5 extiende el uso del metodo a la obtencion del
comparacion de estas tecnicas y su eciencia computacional modelo diferencial, calculando las componentes de la matriz
puede encontrarse en (Funda, 1988), (Funda and Paul, 1990). Jacobiana a partir de las Matrices de Desplazamiento genera-
El metodo denominado como Producto de Exponenciales lizadas. Con esto, la utilizacion del metodo MD al modelado
(PoE por sus siglas en ingles) (Brockett, 1984), (Murray et al., cinematico de robots se equipara a la del metodo DH (Modelo
1994), utiliza la representacion exponencial de una serie matri- cinematico directo, inverso y diferencial).
cial para representar desplazamientos de tornillo, cuya adecua- En el apartado 6 se muestran las ventajas del metodo apli-
da combinacion permite la obtencion del modelo cinematico de cado a dos robots de cinematica complicada. El primero se trata
robots. Este metodo evita la compleja seleccion de los sistemas de un robot redundante de 7 grados de libertad. El segundo es
de coordenadas DH, pero su justicacion y deduccion es menos un robot multicadena concretado en un robot bpedo. En am-
intuitiva y mas compleja que el uso de las nociones basicas de bos casos se muestran los sistemas y parametros de Denavit-
algebra asociadas al metodo de DH, por lo que su difusion es Hartenberg y los ejes y parametros de las Matrices de Despla-
escasa, quedando limitado a algunos desarrollos de robots espe- zamiento.
cialmente complejos como es el caso de los robots humanoides Se supone que el lector esta familiarizado con el metodo de
(Arbulu, 2009). Denavit-Hartenberg (Ollero, 2001), (Spong et al., 2005), (Ba-
En este artculo se presenta y demuestra un metodo para la rrientos et al., 2007).
obtencion del modelo cinematico de un robot que, recurrien-
A. Barrientos et al. / Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382 373

2. Algoritmo de obtencion del Modelo Cinematico Directo


mediante Matrices de Desplazamiento Tabla 1: Algoritmo para la obtencion del Modelo Cinematico de un
Robot mediante las Matrices de Desplazamiento
Del mismo modo que el metodo de Denavit-Hartenberg, el
metodo de las Matrices de Desplazamiento puede sistematizar-
se en una serie de pasos a modo de algoritmo. D-1. Situando al robot en su posicion cero (qi = 0, i), en-
contrar la expresion de la matriz de transformacion ho-
2.1. Algoritmo para obtener el MCD mediante MD mogenea T 0 que localiza al extremo del robot referido
Mientras en el metodo de DH es preciso comenzar identi- al sistema de la base.
cando el eje de desplazamiento (giro o traslacion) de cada arti-
culacion, para despues situar el origen del sistema de coordena- D-2. Para la misma posicion del robot y para cada grado de
das, y los ejes z, x, y (en este orden) haciendo consideraciones libertad qi obtener la matriz de desplazamiento Di. Para
sobre la situacion del eje de la propia articulacion y la del eje ello:
de la articulacion anterior, en el metodo propuesto basta con la D-2.1. Identicar el vector unitario ki del eje de la articu-
identicacion de los ejes de desplazamiento, sin precisarse de lacion expresado en las coordenadas del sistema
situar los ejes xyz ni el origen del sistema de coordenadas. Esta de la base.
diferencia simplica notablemente el procedimiento, evitando-
se pasos que pueden ser fuentes de errores por el manejo de ejes D-2.2. Seleccionar un punto cualquiera pi del eje de la
asociados a varias articulaciones y por precisarse de cierta vi- articulacion.
sion espacial, en ocasiones compleja. Tras la obtencion de estos D-2.3. La matriz de desplazamiento asociada a ese grado
ejes, se calculan las matrices Di , ligadas a cada una de las ar- de libertad, vendra dada por:
 
ticulaciones. Estas representan desplazamientos generalizados I k1 .qi
en el espacio (traslaciones o rotaciones en torno a cualquier eje) Di = , si el GDL es de traslacion
0 1
y dependen de los parametros que denen el eje de la articula-  
R (I Ri ). pi
cion. Por ultimo, para obtener el modelo cinematico del robot, Di = i , si el GDL es de rotacion
0 1
se efectua el producto las matrices Di y se anade a este el de la
matriz de transformacion homogenea T 0 que dene la localiza- con I matriz identidad de dimension 3
T
cion del extremo del robot, cuando todos los grados de libertad Ri = Icos(qi )+ ki ki (1cos(qi ))+ skew(ki )sen(qi )
adoptan el valor cero. La Tabla 1 recoge esquematicamente los Siendo el operador skew el que a cada vector
 
pasos del algoritmo, mientras que en la Tabla 2 se compara este k = k x , ky , kz asocia la matriz antisimetrica
con el metodo de DH
En relacion con la comparacion mostrada en la Tabla 2, ca-   0 kz ky
skew k = kz 0 k x
be destacar que la diferencia entre ambos metodos se concreta
en los pasos 1 y 2. As los pasos 1.b, 1.c y 1.d del algoritmo DH ky k x 0
mostrado en la Tabla 2, desaparecen totalmente en al algoritmo D-3. El MCD se obtiene como el producto
MD, con lo que se simplica el procedimiento. Por su parte la  
obtencion de los 4 parametros de DH (paso 2.a) que supone para Tn = i=1 Di .T 0
n

cada grado de libertad la realizacion de 4 movimientos conse-


cutivos que deben ser identicados y cuanticados, se sustituye
por la identicacion del eje de cada articulacion (k, p)), y de la
matriz que localiza al extremo del robot en su posicion de re-
poso, valores facilmente deducibles a partir de la geometra del L2 L3
robot T 0 . q2 Yn
Los dos ultimos pasos corresponden a operaciones algebri- k1 q3 Xn
p2 k3
cas y son equivalentes en ambos metodos, pudiendo ser delega- p3 Zn
dos a programas de algebra simbolica (como el mostrado en la On
k2

Tabla 3), que reciben como entradas los resultados


   del segundo q1

paso (parametros de DH o parametros k y p de los ejes y
L1

matriz T 0 ).

2.2. Ejemplo de obtencion del MCD mediante MD Z0 Y0


Se aplica a continuacion el algoritmo descrito en la Tabla 1 p1 X0
al robot de 3 grados de libertad mostrado en la Figura 1 en su O0
posicion de reposo qi = 0, i).
Figura 1: Robot ejemplo de 3 GDL.
374 A. Barrientos et al. / Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382

Tabla 2: Comparacion entre los metodos de DH y Matrices de Desplazamientos

Metodo de DH Metodo de Matrices de Desplazamientos


1. Identicacion de los sistemas de coordenadas asociados a 1. Identicacion de los ejes de desplazamiento asociado a ca-
cada articulacion: da articulacion:
a. Identicar del eje de desplazamiento de cada articula- a. Identicar del eje de desplazamiento de cada articula-
cion cion
b. Identicar del origen de cada sistema de coordenadas

c. Identicar de los ejes z de cada sistema de coordenadas


d. Identicar de los ejes x de cada sistema de coordenadas

2. Obtencion de los 4 parametros de DH (, d, a, ) 2. Obtencion de los parametros que denen los ejes y de la
localizacion del robot en reposo con el robot situado en su
a. Encontrar los valores del giro en z, traslacion en z, tras- posicion cero (qi = 0, i)
lacion en x y giro en x, necesarios para pasar del siste-
ma asociado a un eslabon al del siguiente. a. Identicar el eje
 de cada articulacion (mediante su vec-

tor director k y un punto cualquiera del mismo p )
b. Identicar la matriz de transformacion homogenea T 0
que dene la localizacion de su extremo

3. Obtencion de las matrices de DH: i1 Ai mediante expresion 3. Obtencion de las matrices de Desplazamiento: Di mediante
conocida expresion conocida (formula de Rodrigues generalizada)
4. Obtencion del MCD como producto de las matrices i1 Ai 4. Obtencion del MCD como producto de las matrices Di y la
matriz T 0

D-1. Se comienza obteniendo la Matriz de Transformacion Ho- rrespondientes matrices Di . En el presente ejemplo los 3
mogenea T 0 que dene la localizacion del extremo del grados de libertad son de rotacion. Las matrices Di toman
robot, cuando qi = 0 para todo i. la forma1 :

0 0 1 L2 + L3
1 0 0 0 C1 S 1 0 0
T 0 = S 0 0

0 1 0 L1 D1 = 1
C1

1 0
(1)
0 0 0 1 0 0
0 0 0 1
Las tres primeras columnas representan las coordenadas
de los vectores Xn , Yn , Zn en el sistema S 0 = {O0 , X0 , Y0 ,
C2 0 S 2 L1 S 2 L2 (C2 1)
Z0 }. La cuarta columna representa las coordenadas de On , 0
1 0 0
D2 =
L2 S 2 L1 (C2 1)
(2)
origen del sistema S n y punto extremo del robot, en el S 2 0 C2
sistema de la base S 0 . 0 0 0 1
D-2.1. y D-2.2: Se obtienen los valores que denen los ejes de
1 0 0 0
cada articulacion, siendo estos: 0 C S 3 L1 S 3
D3 = 3

L1 (C3 1)
(3)
0 S 3 C3
Eje Vector director ki Punto cualquiera del eje pi
0 0 0 1
1 k1 = [0, 0, 1] p1 = [0, 0, 0]
2 k2 = [0, 1, 0] p2 = [L2 , 0, L1 ] Estas expresiones han sido obtenidas mediante el codi-
3 k3 = [1, 0, 0] p3 = [0, 0, L1 ] go Matlab incluido en la Tabla 3, que implementa los
puntos 2.3 y 3 del algoritmo.
En la Figura 1 se han marcado los vectores libres ki y
los puntos seleccionados de cada eje pi . Notese que pi es 1 Se emplea la notacion habitual en robotica que representa a las funciones

cualquier punto del eje de la articulacion i, procurandose seno y coseno por las letras S y C, de modo que S i = sen(qi ) y Ci = cos(qi )
por ello escoger el que resulte mas comodo.

D-2.3. Una vez obtenidos los vectores ki y pi se obtienen las co-
A. Barrientos et al. / Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382 375

D-3. El MCD se obtiene como el producto de las matrices Di continuacion basta con ir calculando en que se transforma T 0
por la matriz T 0 , resultando: cuando se le somete sucesivamente a los desplazamientos ori-
ginados por cada uno de los grados de libertad desde qn hasta
x
q1 . Estos desplazamientos consisten en traslaciones o giros a lo
R y
T 4 = D1 .D2 .D3 .T 0 = largo de los ejes de la correspondiente articulacion, que en ge-
z
(4)
neral no pasaran por el origen. El resultado es el valor de T 0 tras
0 0 0 1 haber sufrido los desplazamientos denidos por todos los gra-
dos de libertad y por lo tanto la nueva localizacion del extremo
Siendo:
del robot T n en funcion de los qi o Modelo Cinematico Directo.
S 1C3 C1 S 2 S 3 S 1 S 3 C1 S 2C3 C1C2
Es preciso por lo tanto establecer cual es el resultado de
R = C1C3 S 1 S 2 S 3 C1 S 3 S 1 S 2C3 S 1C2
desplazar un punto mediante un eje cualquiera, denido por su
C2 S 3 C2C3 S2
vector direccion ki y por un punto cualquiera del mismo pi . Este
x C1 (L2 + L3C2 ) movimiento va a venir denido por la Matriz de Desplazamien-

y = S 1 (L2 + L3C2 ) to.
z L1 + L3 S 2
3.1. Matriz de Desplazamiento generalizado
Tabla 3: Codigo en Matlab para resolver los pasos D-2.3 y D-3 La Matriz de Desplazamiento generalizada es una matriz de
por el metodo de las Matrices de Desplazamiento (El codigo se ha transformacion homogenea D (4x4) que relaciona las coordena-
particularizado para el caso de robots con un maximo de 6 grados de das de un punto r con las del punto s obtenido por la traslacion
libertad. Puede ser facilmente ampliable a cualquier numero de grados o rotacion del primero a lo largo de un eje k que no pase por el
de libertad sin mas que aumentar el numero de valores simbolicos qi y origen.
del vector simbolico qq -2 primeras lneas-)

s x r x
sy r
= D. y (5)
1 function T=MCD MD (kk,pp,T0,tipo,n) sz rz
2 % kk(3,n) coordenadas del vector director ... 1 1
del eje de la articulacion expresadas en ...
{S0}, con el robot situado en qi=0 En el caso de tratarse de una traslacion de longitud d, en la
3 % pp(3,n) coordenadas de un punto del eje de ...
direccion del vector k = [k x , ky , kz ], la relacion es trivial, estan-
la articulacion expresadas en {S0}, con ...
el robot situado en qi=0 do la matriz de desplazamiento denida por la matriz:
4 % T0(4,4) MTH del sistema de coordenadas del ...
extremo {Sn} expresado en {S0}, con el ... 1 0 0 d.k x

robot situado en cero qi=0 0 1 0 d.ky
D = .
d.kz
% tipo(1,n) vale 0 si el gdl es de rotacion ... (6)
0 0 1
5
y 1 si es de traslacion
6 % n: numero de gdl 0 0 0 1
7 syms q1 q2 q3 q4 q5 q6 real;
8 qq=sym([q1, q2, q3, q4, q5, q6]); Para el caso de rotacion, antes de obtener la matriz D que
9 T=T0; dene una rotacion de angulo alrededor de un eje k que no
10 I=eye(3); pasa por el origen, es preciso encontrar la expresion de D para el
11 for i=n:1:1
12 k=kk(i,:)'; p=pp(i,:)'; q=qq(i);
caso particular de que el eje de rotacion pase por el origen. Esta
13 if tipo(i)==0 matriz viene dada por la formula de Rodrigues, que se expone
14 K=[0 k(3) k(2);k(3) 0 k(1);k(2) ... y demuestra a continuacion.
k(1) 0];
15 R=I*cos(q)+k*k'*(1cos(q))+K*sin(q);
16 D=[R,(IR)*p;[0 0 0 1]]
3.1.1. La formula de Rotacion de Rodrigues
17 else Si bien la demostracion de la formula de Rodrigues, puede
18 D=[eye(3),w*q;[0 0 0 1]] encontrarse en numerosas fuentes (Koks, 2006), se reproduce
19 end
aqu para mayor comodidad del lector.
20 T=simple(D*T);
21 end La Figura 2 representa un vector r que, una vez rotado un
22 end angulo , en torno al eje denido por el vector unitario k que
pasa por el origen O, se convierte en el vector s.
El crculo de la Figura 2a se muestra abatido en la Figura
2b. Este se encuentra contenido en el plano perpendicular al eje
3. Demostracion del Algoritmo de rotacion que pasa por el extremo del vector r. El punto O es
el corte del vector de giro k con dicho plano.
Para demostrar el algoritmo propuesto se debe partir de la   esta en la direccion del vector k y su longitud
El vector OO
matriz de transformacion homogenea T 0 que dene la locali-
es la proyeccion del vector r sobre dicho vector. Por lo tanto
zacion (posicion y orientacion) del extremo del robot, cuando
puede expresarse como:
este se encuentra en la posicion cero (qi = 0 para todo i). A
376 A. Barrientos et al. / Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382

s = R.r

Con:
O' kxr
kxr w
R = Icos() + kkT (1 cos()) + skew(k)sen() (16)
z k v
w
r v
Donde I es la matriz identidad (3x3).
O
s  T
y El producto del vector columna k = k x ky kz por su
x traspuesto da lugar a una matriz (3x3).
(a) (b)
La matriz skew(k) se obtiene como la matriz antisimetrica
que, multiplicada por el vector r, da como resultado que k r,
Figura 2: Rotacion en torno a un eje que pasa por el origen estando denida por:

0 kz ky


skew(k) = kz 0 k x (17)
  = (k.r)k
OO (7) ky k x 0
Los vectores v y w
 estan denidos como: Por lo tanto, utilizando coordenadas homogeneas como en
el caso de la expresion (6), el resultado de rotar el vector r un
  = r (k.r)k
v = r OO (8) angulo alrededor de un eje k que pasa por el origen, es (formu-
  = s (k.r)k la matricial de Rodrigues):
 = s OO
w (9)

El producto vectorial k r esta contenido en el crculo, pues s x r x
sy r
k es unitario. Ademas es perpendicular a v, pues = D. y (18)
sz rz
   
k v = k r k.r k = k r (10) 1 1
con
Atendiendo ahora al crculo se tiene (Figura 2b) que las pro-
 
yecciones del vector w  sobre los vectores v y k r, seran res- R 031
pectivamente cos() y sen() (notese que las longitudes de w, v D= (19)
013 1
y k r son las mismas).
Estando R denido por la ecuacion (16).
Por lo que w  se podra poner como:
En ocasiones la expresion de la formula matricial de Rodri-
gues puede encontrarse como:
 = v.cos() + k r.sen()
w (11)
Sustituyendo (8) en (11) se obtiene:  2
R = I + skew(k) (1 cos()) + skew(k)sen() (20)
 = (r (k.r)k).cos() + k r.sen()
w (12)
Expresion que se puede comprobar es equivalente a (16), a
Utilizando (9) y considerando (12) se llega a: partir de la igualdad:
 2
  = s (k.r)k
 = s OO
w skew(k) = k.kT I (21)
 + (k.r)k = (r (k.r)k).cos() + k r.sen() + (k.r)k (13)
s = w que se puede vericar por simple desarrollo de ambos miem-
Desarrollando y agrupando terminos: bros de la misma.

3.1.2. Rotacion en torno a un eje que no pasa por el origen


s = r.cos() (k.r)k.cos() + k r.sen() + (k.r)k (14) La siguiente extension de la formula de Rodrigues permite
obtener la matriz de desplazamiento asociada a una rotacion de
s = r.cos() + (k.r)k(1 cos()) + k r.sen() (15) un angulo , alrededor de un eje k, que no pasa por el origen.
Esta expresion, que es de por s la forma vectorial de la Dicho eje, vendra denido por su vector director k y por un
formula de Rodrigues, permite obtener el vector s, resultado de punto cualquiera del mismo p.
rotar al vector r alrededor del eje denido por el vector k un Para ello se realizara una traslacion del origen de coorde-
angulo . Puesto que interesa encontrar la matriz de rotacion nadas O al punto p, efectuando entonces la rotacion alrededor
que consigue el mismo efecto, se debe convertir la expresion del eje k que s pasa por el nuevo origen (p) (ver Figura 3). La
(15) a su forma matricial, resultando: matriz que dene esta rotacion estara dada por la formula de
Rodrigues. Se parte para ello de la igualdad general:
A. Barrientos et al. / Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382 377

coordenadas del origen On y las de los 3 vectores ortonormales


Xn , Yn , Zn , se modicaran en base al desplazamiento originado
k
por el movimiento de la articulacion, segun las expresiones de-
r-p nidas en (6) para el caso de traslacion o (24) para el caso de
p O' rotacion.
z
r s De ese modo, componiendo los cuatro nuevos valores de los
tres vectores ortonormales y de las coordenadas homogeneas
O y del origen, en forma matricial, estos se podran expresarse en
x una nueva matriz T 1 , dada por:

Figura 3: Rotacion en torno a un eje que no pasa por el origen T 1 = Dn .T 0 (25)


Esta matriz T 1 , indica la orientacion y posicion del extre-
mo del robot cuando el ultimo grado de libertad qn ha variado
r = p + (r p) (22) y el resto se mantiene en cero. Si ahora se repite el proceso
moviendo unicamente el penultimo grado de libertad qn1 , se
Donde p es un punto cualquiera del eje de giro y r el punto tendra que la orientacion y posicion del extremo del robot, que-
original que se va a someter a la rotacion. dara representada en la matriz T 2 dada por:
El resultado de rotar r es un nuevo punto s. Si R representa
la matriz de rotacion de angulo en torno al eje k que pasa por T 2 = Dn1 .T 1 = Dn1 .Dn .T 0 (26)
p, se tiene que, utilizando la expresion de r dada en (22):
Repitiendo el proceso hasta llegar a desplazar el primer gra-
do de libertad, se tendra nalmente que la orientacion y posi-
s = Rp + R(r p) = p + R(r p) = Rr + (I R)p (23) cion del extremo del robot, tras mover todos los grados de li-
bertad vendra dada por:
Donde se ha tenido en cuenta que Rp = p por estar p en n
el eje de rotacion. La expresion anterior se puede reescribir en 
T n = D1 .D2 . . . Dn1 .Dn .T 0 = Di T 0 (27)
coordenadas homogeneas como:
1

s x r x Expresion nal que permite obtener el Modelo Cinematico
s
y = D. ry Directo del robot, haciendo uso de las expresiones (6) y (24)
sz rz para obtener las matrices Di .
1 1
Con 4. Modelo Cinematico Inverso
 
R (I R).p Se presenta a continuacion, la explicacion del uso de las
D= (24)
013 1 matrices de desplazamiento para la obtencion del Modelo Ci-
 2 nematico Inverso (MCI), as como su aplicacion al robot mos-
Donde R = I + skew(k) (1 cos()) + skew(k)sen(). D trado en la Figura 1.
representa la matriz de rotacion de angulo en torno al eje k
que pasa por un punto p. 4.1. Algoritmo para obtener el MCI mediante MD
La Matrices de Desplazamiento, pueden usarse, del mismo
3.2. Obtencion del modelo cinematico combinando desplaza- modo que las matrices de DH para ayudar a resolver el pro-
mientos blema cinematico inverso mediante el aislamiento de variables
Las expresiones (6) y (24) denen la matriz de desplaza- (combinado, si es posible, con el desacoplamiento cinemati-
miento D asociada a una traslacion de longitud d o a una rota- co) (Barrientos et al., 2007).
cion de angulo en torno a un eje que no pasa por el origen, As la expresion (27), en la que aparecen 12 ecuaciones
denido por el vector k y un punto p. Utilizando estas se va a con las n incognitas qi en expresiones en general muy aco-
obtener el modelo cinematico de un robot manipulador. pladas, puede modicarse premultiplicando consecutivamente
Supongase para ello al robot situado en su posicion cero por las inversas de las matrices de Desplazamiento Di , para fa-
(qi = 0, para todo i). Sea T 0 matriz de transformacion ho- cilitar el aislamiento y resolucion de las variables articulares
mogenea que dene entonces la orientacion y posicion de su q1 , q2 , . . . , qn , tal y como se indica en (28).
extremo referida al sistema de la base, donde la cuarta colum-
na de T 0 representa las coordenadas de On en el sistema de la
base y las 3 primeras columnas representan los vectores libres T n = D1 .D2 . . . Dn1 .Dn .T 0
ortonormales Xn , Yn , Zn , que denen el sistema del extremo. (D1 ) 1
T n = D2 . . . Dn1 .Dn .T 0 (28)
Si se modica el valor de la coordenada articular qn (trasla- 1 1
(D2 ) (D1 ) T n = D3 . . . Dn1 .Dn .T 0
cion o rotacion), correspondiente al ultimo grado de libertad, las
378 A. Barrientos et al. / Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382

4.2. Ejemplo de obtencion del MCI mediante MD Se deben por lo tanto obtener estas aportaciones para conocer
Para el robot de la Figura 1, se tiene que del elemento (2,4) la columna J j .
de la expresion matricial: Para ello se distinguiran los 3 primeros elementos de J j ,
correspondientes a la aportacion a la velocidad de traslacion de
(D1 )1 T 4 = D2 .D3 .T 0 (29) los 3 ultimos, correspondientes a la aportacion a la velocidad de
rotacion.
es posible obtener:  
  J
py J j = vj (34)
pyC1 p x S 1 = 0 q1 = arctg (30) Jw j
px
donde Jv j y Jw j seran respectivamente, las componentes x, y,
A continuacion la expresion: z de la contribucion de q j a las velocidades de traslacion (v) y
rotacion (w) del extremo del robot.
(D2 )1 (D1 )1 T 4 = D3 .T 0 (31) La Figura 4 representa al grado de libertad j aislado del
permite obtener q2 igualando los elementos (3,4), con el re- resto, cuando el resto de los grados de libertad qi , con i  j, se
sultado de: mantienen invariables.
Junto a la articulacion j se representan los sistemas de refe-

rencia del origen {O0 , X0 , Y0 , Z0 } y del extremo {On , Xn , Yn , Zn },
pz L1
q2 = arctg  (32) as como el eje que dene el movimiento de la articulacion j,
p2 + p2 L2 dado por el vector director kj y un punto cualquiera del mismo
x y
pj . Estos se obtienen como resultado de desplazar el vector k j y
La expresion de q3 se puede obtener tambien de (31), igua- el punto p j que denan el eje de la articulacion en la posicion
lando el cociente de los elementos (3,1) y (2,1), dando por re- cero del robot, mediante el movimiento de los grados de libertad
sultado: anteriores (q1 , . . . q j1 ) a la posicion considerada. Su expresion
  se podra obtener a partir de las matrices de Desplazamiento Di
n xC1 + ny S 1 S 2 nzC2 como:
q3 = arctg
n x C 1 ny S 1
kj = R1 .R2 . . . R j1 .k j (35)
   
pj p
5. Modelo Diferencial = D1 .D2 . . . D j1 . j (36)
1 1
EL modelo Diferencial es de gran interes para el control del Donde se debe tener en cuenta que los vectores directores
robot. Se va mostrar a continuacion como es posible obtener el kj son vectores libres, por lo que solo se ven afectados de las
Modelo Diferencial a partir de las MD, poniendolo en practica rotaciones Ri incluidas en los desplazamientos Di , que quedan
sobre el robot de la Figura 1. denidos por las correspondientes matrices de rotacion Ri (3x3)
de la matriz de desplazamiento (ecuacion (16)). Por su parte, los
5.1. Obtencion del modelo diferencial mediante MD vectores de posicion pj s se ven afectados del desplazamiento
El modelo diferencial permite relacionar las velocidades (q1 , completo (rotacion y traslacion) por lo que debe emplearse la
q2 , ..., qn o momentos en las articulaciones (1 , 2 , . . . , n ), con matriz de desplazamiento Di y utilizar su expresion en coorde-
las velocidades de traslacion y rotacion en el extremo (v x , vy , nadas homogeneas.
vz , w x , wy , wz ) o fuerzas y momentos en el extremo del robot Se representan tambien los vectores j pe y 0 pe que corres-
(F x , Fy , Fz , M x , My , Mz ). Dicha relacion viene dada por la ma- ponden respectivamente a los vectores que unen un punto del
triz Jacobiana (J) segun las correspondientes relaciones: eje de la articulacion j y el origen del sistema asociado a la
base con el extremo del robot.
v x Establecidos el vector director k j y un punto p j que dene
q1
  vy q el eje de la articulacion j, las velocidades lineal y angular origi-
v v 2
V= = z = J . (33) nadas en el extremo como consecuencia del movimiento de q j

w w x . pueden obtenerse como:
w
y qn
wz Caso de grado de libertad de rotacion:
Las columnas de la matriz Jacobiana se pueden obtener a
v = k j j pe .q j (37)
partir de las matrices de Desplazamiento, de un modo equiva-
lente al utilizado con las matrices Denavit Hartenberg.  = k j .q j
w (38)
Para ello, debe considerarse que los 6 elementos de la co-
lumna j de la matriz Jacobiana estan formados por la aportacion Caso de grado de libertad de traslacion.
de la velocidad de la articulacion, a la velocidad V del extremo.
v = k j .q j (39)
A. Barrientos et al. / Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382 379

 =0
w (40)
0 0
donde el vectores k j esta denido por (35) y el vector j pe se k1 = 0
p1 = 0

puede obtener como (Figura 4): 1 0

S 1 L2C1

k2 = C1
p2 = L2 S 1
qj
1 L1
v

C1C2 L2C1 (C2 1)

z
On
k3 = S 1C2

p3 = L2 S 1 (C2 1)

y
0
pe
z0

x
O0 j
w C2 L1 L2 S 2
pe
y0
x0 pj C1 (L2 + L3C2 )

1
pe = S 1 (L2 + L3C2 )
kj
L2 + L3 S 2

L3C1C2
Figura 4: Efecto de la velocidad articular sobre el extremo del robot
2
pe = L3 S 1C2

L3 S 2
j
pe =0 pe p j (41)
(L2 + L3 )C1C2

p j quedo denido en (36) y pe es el vector de posicion pe = (L2 + L3 )S 1C2
j 3

del extremo del robot cuando se han movido los n grados de (L2 + L3 )S 2
libertad por lo que tendra como expresion la dada en la columna
Y aplicando la expresion (43) se obtiene la Jacobiana geome-
4 de la matriz del Modelo Cinematico Directo (27):
trica del robot:
0
p j = T n (1 : 3, 4) (42)
S 1 (L2 + L3C2 ) L3C1 S 2 0

C (L + L C ) L3 S 1 S 2 0
Por lo tanto la columna j de la matriz Jacobiana se ob- 1 2 3 2
tendra como:
0 L3C2 0
Ji =
0 S1 C1C2

0 C1 S 1C2
k j j pe


grado de libertad de rotacion 1 0 S2



Ji =
k j  (43)


k j

grado de libertad de traslacion 6. Ejemplos de Aplicacion
0
Se va a aplicar a continuacion el algoritmo descrito para la
con k j , p j , j p,0 pe denidos en (35), (36), (41), (42). obtencion del MCD a 2 robots. En primer lugar, se aplicara a
un robot industrial de 7 grados de libertad ampliamente difun-
5.2. Ejemplo de obtencion del modelo diferencial mediante dido, el Mitsubishi PA-10. Por ultimo se aplicara el metodo a un
MD robot multicadena, para el caso particular de un robot humanoi-
Se va a aplicar este procedimiento de obtencion del Modelo de formado por 13 grados de libertad. Para este ultimo caso se
Diferencial (Matriz Jacobiana) al robot de 3 GDL del que se ob- presentan las consideraciones necesarias para abordar diferen-
tuvo el Modelo Cinematico Directo e Inverso en los apartados tes tipos de cadenas ramicadas, que suponen gran utilidad para
2 y 4 respectivamente. Se trata de un robot de 3 GDL de rota- modelar mecanismos bpedos, cuadrupedos, hexapodos, etc.
cion, cuya geometra se muestra en la Figura 1. En el apartado En los 2 casos, se muestran tanto los sistemas de coordena-
2 se obtuvo la matriz de transformacion homogenea T 4 (4) que das y parametros de DH, como los ejes de cada articulacion con
resuelve el MCD. La cuarta columna de la misma, proporciona sus correspondientes vectores directores y puntos. Con estos,
las coordenadas del extremo del robot, siendo estas: haciendo uso del codigo Matlab incluido en el apartado 2, se
obtiene la matriz T n que dene el modelo cinematico directo.
C1 . (L2 + L3 .C2 )

0
pe = S 1 . (L2 + L3 .C2 ) 6.1. Robot PA-10 de 7 grados de libertad

L1 + L3 .S 2
En esta seccion se presenta el ejemplo de un brazo indus-
Aplicando las expresiones (35), (36) y (41) a los vectores trial redundante, Mitsubishi PA-10 de 7 grados de libertad. La
k1 , k2 , k3 , p1 , p2 , p3 , con las matrices D1 , D2 , D3 , asociadas al informacion referente a la disposcion mecanica de los grados
robot del ejemplo de la Figura 1, y cuyo valor se obtuvo en el de libertad de este robot, as como sus dimensiones fueron to-
apartado 2, expresiones (1,2,3), se obtiene: madas del manual de programacion del mismo (MITSUBISHI,
380 A. Barrientos et al. / Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382

2003). A continuacion se presentan cada uno de los pasos del Tabla 4: Parametros MD del robot PA-10
algoritmo presentado en la Tabla 1, aplicado al robot mencio-
nado. Eje Vector director ki Punto cualquiera del eje pi
1 [0, 0, 1] [0, 0, 0]
2 [0, 1, 0] [0, 0, L1 ]
zn 3 [0, 0, 1] [0, 0, 0]
z7 xn On
x7 On 4 [0, 1, 0] [0, 0, L1 + L2 ]
yn
y7 q7 5 [0, 0, 1] [0, 0, 0]

L4
k7 6 [0, 1, 0] [0, 0, L1 + L2 + L3 ]

L4
z6
x5,x6 p6 7 [0, 0, 1] [0, 0, 0]
z5 q6
q5
Tabla 5: Parametros DH del robot PA-10
k6
k5

L3
L3

Link i di ai i
1 q1 L1 0 pi2
z4 pi
x3,x4 p4 2 q2 0 0 2
z3 q4
q3 3 q3 L2 0 pi2
pi
k4

k3 4 q4 0 0 2
5 q5 L3 0 pi2
L2
L2

pi
6 q6 0 0 2
7 q7 L4 0 0
z2
x1,x2 p2
z1 q2
q1 cuerpos rgidos serialmente acoplados. Otros mecanismos, co-
L1
L1

k2

k1 mo robots bpedos (Arbulu, 2009), cuadrupedos (Gonzalez de


z0 z0
x0 x0 O0 Santos et al., 2006) o hexapodos (Gonzalez de Santos et al.,
O0 p1 p3 p5 p7
y0 y0 2004), pueden ser modelados mediante estructuras ramicadas
de cuerpos rgidos.
(a) Robot PA10 (b) Parametros DH (c) Parametros MD
El ultimo ejemplo presentado, muestra la solucion del mo-
Figura 5: Descripcion de los parametros cinematicos del robot PA-10. delo cinematico directo para un sistema bpedo caminante de 13
grados de libertad, dispuestos como 1 que conecta la base del
sistema (tronco del humanoide) y los 12 restantes con 2 piernas
D-1. Segun la conguracion del sistema de referencia ba- con 6 grados de libertad cada una (Ver Figura 6). Los robots
se O0 , as como la del sistema de referencia del efector bpedos de 12 grados de libertad, son una conguracion tpi-
nal On , los cuales se pueden apreciar en la Figura 5c, se ca de los robots humanoides (Hirai et al., 1998), (Huang et al.,
dene la matriz T 0 : 2001), (Committee, 2006), (Kajita et al., 2007).
D-1. Una consideracion importante en los sistemas ra-
1 0 0 0
0 1 0 0
micados es que tienen mas de 1 efector nal. Por es-
T 0 = 4 ta razon, se denen sistemas de referencia ubicados en
0 0 1 i=1 (Li ) los efectores nales. Para este caso particular, se denen,
0 0 0 1
mediante matrices de transformacion homogenea, la po-
D-2.1. y D-2.2. En la Figura 5c se pueden apreciar los sicion y orientacion de los pies del sistema caminante res-
vectores directores ki , as como los puntos seleccionados pecto al sistema de referencia de la base:
sobre los ejes de la articulacion pi . Dicha informacion se
presenta en la Tabla 4. 0 0 1 0
0 1 0
T 0,n1 =  L2 
D-3. Como se menciono en el apartado 2, el MCD  se 8
1 0 0 L1 + i=3
obtiene nalmente como el producto T n =
i=1 Di .T 0 .
n
0 0 0 1
Adicionalmente, se presenta en la Tabla 5 los parametros
0 0 1 0
DH del robot, los cuales obedecen la distribucion de sistemas 0 1 0 L
=  8 
2
de referencia que se muestra en la Figura 5b. T 0,n2
1 0 0 L1 + i=3

0 0 0 1
6.2. Robot Bpedo
Los brazos manipuladores que se han expuesto como ejem- D-2.1. y D-2.2. Dado que el robot se modela mediante
plos previamente, son representados mediante estructuras de una estructura ramicada de cuerpos rgidos, los ejes de
A. Barrientos et al. / Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382 381

rotacion ki y los puntos pi son numerados siguiendo un


recorrido de primero en profundidad (DFS, Depth-First
Search), lo que permite sistematizar el algoritmo recur-
sivo de solucion del modelo cinematico directo. Este es-
quema de numeracion ha sido utilizado por otros autores
en la solucion de los problemas cinematicos y dinamicos z0 k2 k1
z0
k8
y0 p2 p1 y0 p8
de estructuras de cuerpos rgidos (Featherstone, 2008). x0 x0 O0

L1
L1
Siguiendo esta numeracion, se tendra siempre un nodo z1 L2 z8 L2
padre (i) que cumple que (i) < i para todo i. Para el x1 x8

caso particular del robot bpedo esto se puede apreciar

L3
L3
en la Figura 6. Los parametros MD resultantes se pueden z2 x2 z9 x9 p3 p9

L4
k3 k9

L4
x3 x10
apreciar en la Tabla 6. z3 z10
k4 k10
p4 p10

D-3. Al igual que en el ejemplo anterior, el MCD se ob-


n
tiene nalmente como el producto T n = i=1 Di .T 0 .

L5
L5
x4 x11
z4 k5 k11
z11
Tabla 6: Parametros MD del robot bpedo p5 p11

(i) Eje ki pi

L6

L6
0 1 [0, 0, 1] [0, 0, 0] x5 x12
[0, L2 , 0]
z5 k6 k12
1 2 [0, 0, 1] z12
p6 p12

 L2 ,L1 L3 ] 

L7

L7
2 3 [1, 0, 0] [0, x6 x13
p7 p13

0, 0, L1 + 4i=3 (Li )
x14

L8

L8
z6 z13 xn1 3 xn2
x7 k7 k1
3 4 [0, 1, 0]
    z7 z14
yn1 On1
zn1
yn2 On2
zn2
4 5 [0, 1, 0] 0, 0, L1 + 5i=3 (Li )
    (a) Parametros DH (b) Parametros MD
5 6 [0, 1, 0] 0, 0, L1 + 6i=3 (Li )
   
6 7 [1, 0, 0] 0, L2 , L1 + 7i=3 (Li ) Figura 6: Descripcion de los parametros cinematicos del robot bpedo
de 13 GDL.
1 8 [0, 0, 1] [0, L2 , 0]
8 9 [1, 0, 0]  L2 , L
[0,  1L 
3] 
9 10 [0, 1, 0] 0, 0, L1 + 4i=3 (Li )
   
10 11 [0, 1, 0] 0, 0, L1 + 5i=3 (Li )
   
11 12 [0, 1, 0] 0, 0, L1 + 6i=3 (Li )
   
12 13 [1, 0, 0] 0, L2 , L1 + 7i=3 (Li )

Por ultimo, y a modo de comparacion, se presentan en la


Tabla 7: Parametros DH del robot Bpedo
Tabla 7 los parametros DH del robot bpedo. Se puede apreciar
que la metodologa utilizada en este caso, consiste en mode- (i) Link i di ai i
lar cada una de las extremidades del robot como una estructura
0 1 q1 + 2 L1 L2 0
serial.
1 2 q2 L3 0 2

2 3 q3 + 2 0 L4 2
7. Conclusiones 3 4 q4 0 L5 0
Se ha presentado un metodo para la obtencion del modelo 4 5 q5 0 L6 0
de cadenas cinematicas en robots, basado en el uso de las Ma- 5 6 q6 0 L7 2
trices de Desplazamiento. Estas permiten conocer el resultado 6 7 q7 0 L8 0

de desplazar (rotar o trasladar) un punto en el espacio a lo largo 0 8 q1 + 2 L1 L2 0

de un eje cualquiera. 8 9 q2 L3 0 2

En el procedimiento de DH y tras las sencilla fase de identi- 9 10 q3 + 2 0 L4 2
cacion de los ejes sobre los que se produce el desplazamiento 10 11 q4 0 L5 0
de cada grado de libertad, se precisa localizar el origen y los 11 12 q5 0 L6 0
vectores directores que denen un sistema de coordenadas aso- 12 13 q6 0 L7 2
ciado al eslabon. Esta localizacion del sistema de coordenadas 13 14 q7 0 L8 0
puede revestir cierta dicultad y es posiblemente el motivo mas
habitual de errores en la obtencion del MCD de un robot. El
metodo presentado soslaya totalmente esta dicultad, por cuan-
to precisa unicamente de la identicacion del eje sobre el que
382 A. Barrientos et al. / Revista Iberoamericana de Automtica e Informtica industrial 9 (2012) 371382

se produce el desplazamiento del grado de libertad, sin tenerse Referencias


que localizar los citados sistemas de coordenadas.
La expresion nal obtenida en el metodo de las Matrices de
Desplazamiento, coincide con la obtenida en el procedimiento Arbulu, M., 2009. Stable locomotion of humanoid robots based on mass con-
de modelado mediante la formula del producto de exponencia- centrated model. Ph.D. thesis, Universidad Carlos III de Madrid.
les, pero el enfoque aqu presentado para su obtencion utili- Barrientos, A., Penin, L., Balaguer, C., Aracil, R., 2007. Fundamentos de
za razonamientos simples, basados en relaciones vectoriales y robotica, 2nd Edition. McGraw-Hill.
Brockett, R. W., 1984. Robotic manipulators and the product of exponentials
algebra lineal, sin recurrir a conceptos como matrices exponen- formula. In: Fuhrmann, P. (Ed.), Mathematical Theory of Networks and Sys-
ciales, algebras de Lie u otros, de modo que es adecuado para tems. Springer Berlin / Heidelberg, pp. 120129.
ser incluido en cursos basicos de introduccion a la robotica. Committee, I. R. I. P., Oct. 2006. Static Walk of a Humanoid Robot Based on
El uso de las matrices de desplazamiento se ha extendido a the Singularity-Consistent Method, 16.
Corke, P. I., 1996. A robotics toolbox for MATLAB. Robotics & Automation
la obtencion del modelo cinematico inverso y del modelo dife- Magazine, IEEE 3 (1), 2432.
rencial, completando de este modo el alcance habitual del mo- Denavit, J., Hartenberg, R. S., 1955. A kinematic notation for lower-pair me-
delado cinematico de robots. chanisms based on matrices. ASME Journal of Applied Mechanisms 23,
215221.
En denitiva, el modelado de robots basado en las matrices
Featherstone, R., Feb. 2008. Rigid Body Dynamics Algorithms. Springer-
de desplazamiento presentado se formula como una alternativa Verlag New York Inc.
al tradicional metodo de Denavit-Hartenberg, considerandose Funda, J., 1988. A computational analysis of line-oriented screw transforma-
que, una vez conocido, sera utilizado con preferencia para este tions in robotics.
Funda, J., Paul, R., 1990. A computational analysis of screw transformations in
n. robotics. Robotics and Automation, IEEE Transactions on 6 (3), 348356.
Gonzalez de Santos, P., Garcia, E., Cobano, J. A., Ramirez, A., 2004. SIL06:
A six-legged robot for humanitarian de-mining tasks. In: Automation Con-
English Summary gress, 2004. Proceedings. World. pp. 523528.
Gonzalez de Santos, P., Garcia, E., Estremera, J., 2006. Quadrupedal Loco-
Modeling of kinematic chains by Displacement Matri- motion: An Introduction to the Control of Four-legged Robots, 1st Edition.
ces. A comprehensive alternative to Denavit-Hartenberg met- Springer.
hod. Hirai, K., Hirose, M., Haikawa, Y., 1998. The development of Honda huma-
noid robot. In: Proceedings of the 1998 IEEE International Conference on
Robotics & Automation. pp. 13211326.
Abstract Huang, Q., Yokoi, K., Kajita, S., Kaneko, K., Arai, H., Koyachi, N., Tanie, K.,
2001. Planning walking patterns for a biped robot. Robotics and Automa-
In this paper, a new method for modelling kinematic chains tion, IEEE Transactions on 17.
Jaramillo-Botero, A., Matta-Gomez, A., Correa-Caicedo, J. F., Perea-Castro,
in Robotics is presented. This method eludes the diculties de-
W., Dec. 2006. ROBOMOSP. Robotics & Automation Magazine, IEEE
rived from selecting the coordinate frames required to obtain 13 (4), 6273.
Denavit-Hartenberg parameters. The proposed method arises Jin, Y., Xiaorong, W., Jun. 2010. The application of the dual number methods
from knowing the position and orientation of the end-eector of to scara kinematics. In: International Conference on Mechanic Automation
and Control Engineering (MACE), 2010. pp. 38713874.
the robot in its home position. This algorithm allows obtaining Kajita, S., Kaneko, K., Morisawa, M., Nakaoka, S., Hirukawa, H., 2007. ZMP-
their transformations according to the successive variations of based Biped Running Enhanced by Toe Springs. In: Robotics and Automa-
its degrees of freedom in descending order from the remotest to tion, 2007 IEEE International Conference on. pp. 39633969.
the closest to the base. Koks, D., Sep. 2006. Explorations in Mathematical Physics: The Concepts
Behind an Elegant Language, 1st Edition. Springer.
The movements are calculated based on the Displacement McCarthy, J. M., Jun. 1986. Dual Orthogonal Matrices in Manipulator Kine-
Matrixes by determining in which point it is transformed when matics. The International Journal of Robotics Research 5 (2), 4551.
such point is displaced (rotated or moved) with respect to an MITSUBISHI, 2003. General Purpose Robot PA10 SERIES: PROGRAM-
axis that does not pass through the origin, which is dierent to MING MANUAL.
Murray, R. M., Li, Z., Sastry, S. S., Mar. 1994. A Mathematical Introduction to
the Denavit-Hartenberg method that requires locating the origin Robotic Manipulation, 1st Edition. CRC Press.
and the direction of the vectors that dene the frame for each Ollero, A., 2001. Robotica: Manipuladores y robots moviles, 1st Edition. MAR-
link. COMBO.
The method based on the Displacement Matrixes only re- Paul, R. P., Nov. 1981. Robot manipulators: mathematics, programming, and
control, 1st Edition. The MIT Press, Cambridge, MA, USA.
quires identifying the axis of the joint, which allows identifying Paul, R. P., Shimano, B., 1978. Kinematic control equations for simple manipu-
the modelling in a simpler and faster manner when compared to lators. In: Decision and Control including the 17th Symposium on Adaptive
Denavit-Hartenberg. Processes, 1978 IEEE Conference on. pp. 13981406.
Perez, A., McCarthy, J. M., 2004. Dual Quaternion Synthesis of Constrained
The Displacement Matrixes and the corresponding kinema-
Robotic Systems. Journal of Mechanical Design 126 (3), 425.
tic modeling are obtained based on the joint axes identication Pieper, D. L., Oct. 1968. The kinematics of manipulators under computer con-
by using simple mathematical operations that are easily coded. trol. Ph.D. thesis, Stanford University.
Spong, M., Hutchinson, S., Vidyasagar, M., Nov. 2005. Robot Modeling and
Control, 1st Edition. Wiley.
Keywords: Veldkamp, G. R., Jan. 1976. On the use of dual numbers, vectors and matrices in
Kinematics model, Denavit-Hartenberg, Rodrigues rotation instantaneous, spatial kinematics. Mechanism and Machine Theory 11 (2),
formula. 141156.

Вам также может понравиться