Professional Documents
Culture Documents
Tema 03
Parmetros Denavit-Harterberg
Mario Peralta
Ing. Civil / Mag. Ing.
1
Ejemplo modelo cinemtico 0
A1 = Rotz (q1 ) T(l1 , 0, 0) =
mediante MTH C1 S1
S C1
0 0 1
0 0 0
0 0 l1 C1
1 0 0 S1
S1 0 l1C1
C1 0 l1S1
= 1 =
0 0 1 0 0 0 1 0 0 0 1 0
0 0 0 1 0 0 0 1 0 0 0 1
1
A 2 = Rotz (q2 ) T(l2 , 0, 0) =
C2 S2 0 0 1 0 0 l2 C2 S2 0 l2 C 2
S C2 0 0 0 1 0 0 S 2 C2 0 l2 S2
= 2 =
0 0 1 0 0 0 1 0 0 0 1 0
0 0 0 1 0 0 0 1 0 0 0 1
C1S2 S1S2 C1S2 S1C 2 0 l1C1 + l2 C12 C12 S12 0 l1C1 + l 2C12
S C + C S S1S2 + C1C2 0 l1S1 + l2S12 S12 C12 0 l1S1 + l 2S12
T = 0 A1 1 A 2 = 1 2 1 2
=
0 0 1 0 0 0 1 0
0 0 0 1 0 0 0 1
Procedimiento de
Denavit Hartenberg (D-H)
Qu es?:
Un procedimiento de obtencin del MCD basado en la realizacin de
cambios de base mediante MTH
Qu aporta?:
Sistematiza la seleccin de los sistemas de coordenadas, garantizando
que de uno a otro se pasa mediante una secuencia concreta de 4
movimientos simples (rotacin o traslacin entorno a ejes concretos).
Cada movimiento simple depende de un parmetro
De este modo la matriz de cambio de base de un sistema a otro i-1Ai
responde a una expresin predefinida, funcin de los 4 parmetros.
Permite el utilizar un convenio estandarizado, que sirve de:
Lenguaje comn
Desarrollo de herramientas de clculo
Mario Peralta
Ing. Civil / Mag. Ing.
2
Esquema del procedimiento
de D-H
1. Establecer para cada elemento del robot un sistema de
coordenadas cartesiano ortonormal (xi,yi,zi) donde i=0,2,,n
(n=nmero de gdl). Cada sistema de coordenadas
corresponder a la articulacin i+1 y estar fijo en el
elemento i (Algoritmo de D-H)
2. Encontrar los parmetros D-H de cada una de las
articulaciones
3. Calcular, a partir de los parmetros, las matrices i-1Ai
4. Calcular la matriz Tn = 0A1 1A2 ... n-1An
5. Tn expresa el modelo cinemtico directo
Mario Peralta
Ing. Civil / Mag. Ing.
Transformaciones bsicas
de D-H
Transformaciones bsicas de paso de eslabn
(definidas sobre sistema mvil postmultiplicar):
Rotacin alrededor del eje zi-1 un ngulo i
Traslacin a lo largo de zi una distancia di ; vector di (0,0,di)
Traslacin a lo largo de xi una distancia ai ; vector ai (0,0,ai)
Rotacin alrededor del eje xi un ngulo i
i-1
A i = Rotz ( i ) T(0,0,d i ) T(a i ,0,0) Rotx( i )
Ci Si 0 0 1 0 0 0 1 0 0 ai 1 0 0 0
S C 0 0 0 1 0 0 0 1 0 0 0 Ci -Si 0
i 1
Ai = i i
=
0 0 1 0 0 0 1 di 0 0 1 0 0 Si Ci 0
0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
Ci Ci Si Si Si aiCi
S C C SiCi ai Si
= i i i
Matriz de D-H
0 Si Ci di
0 0 0 1
Mario Peralta
Ing. Civil / Mag. Ing.
3
Parmetros de
Denavit-Hartenberg
i: Es el ngulo que forman los ejes xi-1 y xi medido en un plano perpendicular al eje zi-1, utilizando la
regla de la mano derecha. Se trata de un parmetro variable en articulaciones giratorias.
di: Es la distancia a lo largo del eje zi-1 desde el origen del sistema de coordenadas (i-1)-simo hasta la
interseccin del eje zi-1 con el eje xi. Se trata de un parmetro variable en articulaciones prismticas.
ai: Es la distancia a lo largo del eje xi que va desde la interseccin del eje zi-1 con el eje xi hasta el origen
del sistema i-simo, en el caso de articulaciones giratorias. En el caso de articulaciones prismticas, se
calcula como la distancia ms corta entre los ejes zi-1 y zi.
i: Es el ngulo de separacin del eje zi-1 y el eje zi, medido en un plano perpendicular al eje xi, utilizando
la regla de la mano derecha.
Mario Peralta
Ing. Civil / Mag. Ing.
Algoritmo de
Denavit-Hartenberg (1)
D-H 1.- Numerar los eslabones comenzando con 1 (primer eslabn mvil
de la cadena) y acabando con n (ltimo eslabn mvil). Se numerar
como eslabn 0 a la base fija del robot.
D-H 2.- Numerar cada articulacin comenzando por 1 (la
correspondiente al primer grado de libertad) y acabando en n
D-H 3.- Localizar el eje de cada articulacin. Si sta es rotativa, el eje
ser su propio eje de giro. Si es prismtica, ser el eje a lo largo del cual
se produce el desplazamiento.
D-H 4.- Para i de 0 a n-1 situar el eje zi sobre el eje de la articulacin i+1.
D-H 5.- Situar el origen del sistema de la base {S0} en cualquier punto
del eje z0. Los ejes x0 e y0 se situarn de modo que formen un sistema
dextrgiro con z0
Mario Peralta
Ing. Civil / Mag. Ing.
4
Algoritmo de
Denavit-Hartenberg (2)
D-H 6.- Para i de 1 a n-1, situar el sistema {Si} (solidario al
eslabn i) en la interseccin del eje zi con la lnea normal
comn a zi-1 y zi. Si ambos ejes se cortasen se situara {Si} en
el punto de corte. Si fuesen paralelos {Si} se situara en la
articulacin i+1
D-H 7.- Situar xi en la lnea normal comn a zi-1 y zi
D-H 8.- Situar yi de modo que forme un sistema dextrgiro
con xi y zi .
D-H 9.- Situar el sistema {Sn} en el extremo del robot de
modo que zn coincida con la direccin de zn-1 y xn sea normal
a zn-1 y zn .
Mario Peralta
Ing. Civil / Mag. Ing.
Algoritmo de
Denavit-Hartenberg (3)
D-H 10.- Obtener i como el ngulo que hay que girar en torno a zi-1 para
que xi-1 y xi queden paralelos.
D-H 11.- Obtener di como la distancia, medida a lo largo de zi-1, que habra
que desplazar {Si-1} para que xi y xi-1 quedasen alineados.
DH 12.- Obtener ai como la distancia medida a lo largo de xi (que ahora
coincidira con xi-1) que habra que desplazar el nuevo {Si-1} para que su
origen coincidiese con {Si}.
DH 13.- Obtener i como el ngulo que habra que girar entorno a xi (que
ahora coincidira con xi-1), para que el nuevo {Si-1} coincidiese totalmente
con {Si}.
Mario Peralta
Ing. Civil / Mag. Ing.
5
Algoritmo de
Denavit-Hartenberg (4)
DH 14.- Obtener las matrices de transformacin i-1Ai
DH 15.- Obtener la matriz de transformacin entre la base y el
extremo del robot T = 0A1 1A2 ... n-1An.
DH 16.- La matriz T define la orientacin (submatriz de
rotacin) y posicin (submatriz de traslacin) del extremo
referido a la base en funcin de las n coordenadas articulares
Mario Peralta
Ing. Civil / Mag. Ing.
Obtencin de la matriz T
Sencillo para cadenas cinemticas abiertas de cualquier
nmero de grados de libertad, pero complejo para el caso
de cadenas cinemticas cerradas.
Parmetros de D-H.
Mario Peralta
Ing. Civil / Mag. Ing.
6
Algoritmo Denavit-Hartenberg
Elegir un sistema de coordenadas fijo (X0, Y0, Z0) asociado
a la base del robot
Localizar el eje de cada
articulacin Z:
Si la articulacin es
rotativa, el eje ser el
propio eje de giro.
Si es prismtica, el eje
lleva a direccin de
deslizamiento.
Mario Peralta
Ing. Civil / Mag. Ing.
Algoritmo
Mario Peralta
Ing. Civil / Mag. Ing.
7
Algoritmo
i: ngulo entre el eje Zi-1 y Zi, sobre el plano
perpendicular a X. El signo lo da la regla de la mano
derecha (rmd).
Mario Peralta
Ing. Civil / Mag. Ing.
Algoritmo
ai: distancia entre los ejes Zi-1 y Zi, a lo largo de Xi. El
signo lo define el sentido de Xi.
Mario Peralta
Ing. Civil / Mag. Ing.
8
Algoritmo
i: ngulo que forman los ejes Xi-1 y Xi, sobre el plano
perpendicular a Zi,. El signo lo determina la rmd.
Mario Peralta
Ing. Civil / Mag. Ing.
Algoritmo
di: distancia a los largo del eje Zi-1 desde el origen del
sistema Si-1 hasta la interseccin del eje Zi, con el eje Xi.
En el caso de articulaciones prismticas ser la variable de
desplazamiento.
Mario Peralta
Ing. Civil / Mag. Ing.
9
Obtencin de T
Matriz de transformacin desde el sistema i-
1 hasta el i.
Mario Peralta
Ing. Civil / Mag. Ing.
Ejemplo D-H
Manipulador 3 GDL RRR
Articulacin 1
R
Eslabn 2
Eslabn 1 Eslabn 3
Articulacin 2 Articulacin 3
L1 L2
Mario Peralta
Ing. Civil / Mag. Ing.
10
Ejemplo D-H
Manipulador 3 GDL RRR con las
articulaciones en movimiento
Z0 x3
z3
2 3
x0 x2
x1
1 Z2
Z1
Mario Peralta
Ing. Civil / Mag. Ing.
Ejemplo D-H
1 = 90o (rota en 90o alrededor de x0
Z0 R entre Z0 y Z1)
L1 L2
1
x1 x2 x3
1 x0
3
Z1 2 Z2 Z3
Link Var d a
1 1 1 0 90o R
2 2 2 0 0 L1
3 3 3 0 0 L2
Mario Peralta
Ing. Civil / Mag. Ing.
11
Ejemplo D-H
Link Var d a
1 1 1 0 90o R
2 2 2 0 0 L1
3 3 3 0 0 L2
Mario Peralta
Ing. Civil / Mag. Ing.
Ejemplo D-H
Mario Peralta
Ing. Civil / Mag. Ing.
12
Ejemplo D-H
z0 x3
z3
2 3
x2
x1
1 z2
x0
Nota.- c.r.a. con respecto a
z1
Eje x1 expresado Eje y1 expresado Eje z1 expresado
c.r.a {0} c.r.a {0} c.r.a {0}
Origen de
{1} c.r.a {0}
Mario Peralta
Ing. Civil / Mag. Ing.
Ejemplo D-H
z0 x3
z3
2 3
x2
x1
1 z2
x0
z1
Eje x2 expresado Eje y2 expresado Eje z2 expresado
c.r.a {1} c.r.a {1} c.r.a {1}
Origen de
{2} c.r.a {1}
Mario Peralta
Ing. Civil / Mag. Ing.
13
Ejemplo D-H
z0 x3
z3
2 3
x2
x1
1 z2
x0
z1
Eje x3 expresado Eje y3 expresado Eje z3 expresado
c.r.a {2} c.r.a {2} c.r.a {2}
Origen de
{3} c.r.a {2}
Mario Peralta
Ing. Civil / Mag. Ing.
Ejemplo D-H
Donde
Mario Peralta
Ing. Civil / Mag. Ing.
14
MCD por D-H
Robot cilndrico 4 gdl
Articulacin d a
1 q1 l1 0 0
2 90 d2 0 90
3 0 d3 0 0
4 q4 l4 0 0
Mario Peralta
Ing. Civil / Mag. Ing.
MTH
Ci Ci Si Si Si ai Ci
S C C S C a S
i 1
Ai = i i i i i i i
0 Si Ci di
0 0 0 1
C1 S1 0 0 0 0 1 0
S C1 0 0 1 0 0 0
0
A1 = 1 1
A2 =
0 0 1 l1 0 1 0 d2
0 0 0 1 0 0 0 1
1 0 0 0 C4 S4 0 0
0 1 0 0 S C4 0 0
2
A3 = 3
A4 = 4
0 0 1 d3 0 0 1 l4
0 0 0 1 0 0 0 1
Mario Peralta
Ing. Civil / Mag. Ing.
15
Luego
S1C4 S1S 4 C1 C1 ( d3 + l4 )
CC C1S 4 S1 S1 ( d3 + l4 )
T = 0 A1 1 A 2 2 A 3 3 A 4 = 1 4
S4 C4 0 d 2 + l1
0 0 0 1
Mario Peralta
Ing. Civil / Mag. Ing.
C1 0 S1 0 C 2 0 S2 0
S 0 C1 0 S 0 C2 0
A1 = A2 =
0 1 1 2
0 1 0 0 0 1 0 l1
0 0 0 1 0 0 0 1
S3 0 C3 l2 S 3 C4 0 S4 0
C 0 S3 l2C3 S 0 C4 0
A3 = A4 =
2 3 3 4
0 1 0 0 0 1 0 l3
0 0 0 1 0 0 0 1
C5 0 S5 0 C6 S6 0 0
S 0 C5 0 S C6 0 0
A5 = A6 =
4 5 5 6
0 1 0 0 0 0 1 l4
0 0 0 1 0 0 0 1
Mario Peralta
Ing. Civil / Mag. Ing.
16
Modelo cinemtico directo
de un robot ABB IRB 6400C (II)
nx ox ax px
n oy ay py
T= A1 A 2 A 3 A 4 A 5 A 6 =
0 1 2 3 4 y 5
nz oz az pz
0 0 0 1
n x = ( C1 C2 S3 + S1C3 )( C4C5C6 S 4 S 6 ) + C1S 2 ( S 4C5C6 + C4 S 6 ) + ( C1C2C3 + S1S3 ) S5C6
n y = ( S1C2 S3 + S1C3 )( C4C5C6 S 4 S6 ) + S1S2 ( S4C5C6 + C4 S6 ) + ( S1C2C3 C1S3 ) S5C6
n z = ( S2 S3 )( C4C5C6 S 4 S 6 ) + C2 ( S 4C5C6 + C4 S 6 ) + S 2C3S5C6
ox = ( C1 C2 S3 + S1C3 )( C4C5C6 S 4 S 6 ) + C1S 2 ( S 4C5C6 + C4 S 6 ) + ( C1C2C3 + S1S3 )( S5C6 )
oy = ( S1C 2 S3 + S1C3 )( C4C5C6 S4 S6 ) + S1S2 ( S 4C5C6 + C4 S 6 ) + ( S1C2C3 C1S3 )( S5C6 )
oz = ( S2 S3 ) ( C4C5C6 S 4 S6 ) + C2 ( S4C5C6 + C4 S 6 ) + S2C3 ( S5C6 )
p x = ( C1 C2 S3 + S1C3 )( l4C4 S5 ) + C1S 2 ( l4 S 4 S5 ) + ( C1 C 2C3 + S1S3 )( l4C5 + l3 ) +
( l C C S
2 1 2 3 l2 S1C3 l1S1 )
p y = ( S1 C2 S3 C1C3 )( l4C4 S5 ) + S1S2 ( l4 S 4 S5 ) + ( C1 C2C3 C1S3 )( l4C5 + l3 ) +
( l S C S
2 1 2 3 l2C1C3 + l1C1 )
p z = ( - S2 S3 )( l4C4C5 ) + C2 ( l4 S 4 S5 ) + S 2C3 ( l4C5 + l3 ) + l2 S 2 S3
Mario Peralta
Ing. Civil / Mag. Ing.
Mario Peralta
Ing. Civil / Mag. Ing.
17