Cinematica Directa

Cinemática de Robots
Un robot se puede modelar como una cadena cinemáticas
compuesta de eslabones rígidos conectados por articulaciones.
3.‐ Cinemática de Manipuladores
(directa) ii) cerradas
i) abiertas
iii) arborescentes
Dr. Alejandro Aceves López
Articulaciones
Articulaciones actuadas
Prismática
Rotacional
Universal
Prismática
Rotacional
Esférica
Cilíndrica
Planar
Helicoidal
Mechanics of Machines Dr. Mohammad Kilani Class 2 Fundamental Concepts, http://slideplayer.com/slide/2502610/
Mathworks Simscape Multibody Blocks http://www.mathworks.com/help/physmod/sm/blocklist.html
Movilidad
Movilidad
Se busca determinar el número mínimo de parámetros que definen la configuración (postura) de un objeto o un robot (objetos rígidos). Comencemos analizando el caso 2D. ¿Dónde está el objeto?: yˆU
ŷ2
ŷ1
x̂1
x0 , y0 ,  0
x̂0
x1 , y1 , 1
xˆU
¿Qué sucede con su movilidad si los conectamos con otros objetos?
ŷ2
Articulación rotacional
yˆU
ŷ1
x̂2
9 parámetros (3 por objeto)
2
x̂2
x2 , y2 ,  2
ŷ0
Extracto de: https://www.youtube.com/watch?v=UyWN811Y1b0
Extracto de: https://www.youtube.com/watch?v=qykxMDh‐rVk
x̂1
x1 , y1 , 1
ŷ0
x̂0
xˆU
4 parámetros
Movilidad
Espacios Operacional‐Configuraciones
Para todo robot, el Espacio de Trabajo (Operacional) es tal que:
dim = m
    m
Y el espacio de Configuraciones (Articular) es tal que:
DoF = dim = n
    [ ,  ]n
¿Qué sucede con su movilidad si los conectamos con otros objetos?
Espacio de Trabajo (Operacional) es: 
    2
dim = 2
ŷ0
Articulación rotacional
2
Articulación rotacional
1
4

x̂0
n=4
2 parámetros [1,2]T = 
2 coordenadas [x, y]T = 
Cinemática de Robots
Se imponen sistemas coordenados desde la base {0} hasta la muñeca {n}.
Para cada eslabón se establece un sistema coordenado.
•
•
P  iT P
Para el eslabón i:
Por tanto la cadena cinemática:
i 1
O  01T 21T  n n1T
n
m=6
La cinemática trata del estudio analítico del movimiento (posición, velocidad,
aceleración) del robot con respecto a un sistema coordenado fijo como una
función del tiempo sin considerar las fuerzas/momentos que lo originaron.
i
0
n=3
m=3
Cinemática Directa e Inversa
•
•
i 1
Ejemplo 2:
3
2
    [ ,  ]
DoF = dim = 2
x̂1
1
Ejemplo 1:
Espacio de Configuraciones (Articular) 2
es: 
x̂2
ŷ1
Entonces, un robot es redundante si: n>m
un robot es diestro si: n=m
un robot es sub‐actuado si: n<m
Solo son necesarios 2 parámetros (1,2) para conocer la postura (configuración) del robot. ¿Qué configuración toma
el robot si 1=2=½?
ŷ2
O
Parámetros dimensionales
Valores articulares (q1,q2,q3…qn)
Posición y orientación del efector final
Cinemática directa (FK)
Parámetros dimensionales
Posición y orientación del efector final
Ejemplo 1
Ejemplo 2
x̂4
Analicemos este robot:
0
ŷ4
1.‐ Definir cuantos DoF tiene.
2.‐ Determinar las dimensiones de los eslabones.
3.‐ Dibujar el robot en su postura CERO (o HOME)
4.‐ Fijar sistemas coordenados (varias opciones).
5.‐ Escribir las expresiones de transformación.
ŷ1
ŷ0
Valores articulares (q1,q2,q3…qn)
Cinemática inversa (IK)
x̂1
x̂0
El robot está dibujado en la
configuración:  =0°;  =45°
1
ẑ2
0
x̂2
x̂3
ŷ3
ẑ1
1
2
ŷ1
L=1
ŷ2
ẑ3
1
2
L=1
1
x̂2
ŷ2
2
2
2
3
x̂3
x̂1
L=1
ẑ0
3
4
x̂0
ŷ0
ŷ3
2
3
Ejemplo 3
Cinemática Denavit‐Hartenberg
El robot está dibujado en la configuración CERO (HOME).
3
2
1
L3
x̂1
L1
0
ẑ2
x̂2
ẑ1
ẑ3
d4
ŷ3
ŷ2
1
2
En la literatura existen reportadas dos metodologías:
1.‐ El método de DH estándar (Análisis por eslabones).
2.‐ El método de DH modificado (Análisis por articulaciones).
x̂3
ŷ1
L5
ẑ4
ẑ0
L2
2
3
ŷ4
x̂4
ŷ0
x̂0
En 1955, Denavit y Hartenberg propusieron un enfoque sistemático y
generalizado que utiliza matrices de transformación homogénea para describir
la relación espacial (traslación/rotación) entre dos eslabones adyacentes.
3
4
L4
a) DH estándar
Metodología de DH‐modificado
Para relacionar los vínculos i1 e i se establece con 4 parámetros.
Parámetros de DH‐m
Eje i
Eje i1
Parámetros de DH‐m
Eje i1
b) DH modificado
Parámetros de DH‐m
Eje i
Eje i1
Eje i
Parámetros de DH‐m
Parámetros de DH‐m
Eje i
Eje i1
Eje i
Eje i1
ai  1
Distancia del vínculo
Parámetros de DH‐m
Parámetros de DH‐m
Eje i
Eje i1
Eje i
Eje i1
ai
ai
ai  1
ai  1
di
Desplazamiento entre vínculos
Parámetros de DH‐m
Parámetros de DH‐m
Eje i
Eje i1
Eje i
Eje i1
ai
ai  1
ai
ai  1
di
i1
Torsión del vínculo
di
Parámetros de DH‐m
Parámetros de DH‐m
Eje i
Eje i1
Eje i
Eje i1
ai
ai  1
ai
ai  1
di
i1
i
Ángulo articular
i1
Parámetros de DH‐m
Eje i1
di
Cálculo de parámetros de DH‐m
Se definen dos sistemas coordenados
Para medir los parámetros de Denavit‐Hartenberg utilizamos la
siguiente convención:
Eje i
Parámetros relacionados con las articulaciones:
zˆi 1
yˆi
yˆi 1
xˆi 1
0i1
0i
di
Distancia del vínculo
ai
xˆi
Desplazamiento entre vínculos
ai1
Torsión del vínculo
zˆi
xˆi 1
xˆi
• i es el ángulo (sobre ) desde hasta .
• di es la distancia (sobre ) desde hasta .
0i
 xˆi 1  zˆi 
zˆi
zˆi
 xˆi 1  zˆi 
Parámetros relacionados con los eslabones:
i
Ángulo articular
•  i 1 es el ángulo (sobre ) desde hasta .
zˆi 1
xˆi 1
zˆi
• ai 1 es la distancia(sobre ) desde hasta .
 xˆi 1  zˆi 
0i1
xˆi 1
i1
Definición de tramas para DH‐m
Todo robot se debe analizar desde su posición de HOME, es decir, cuando todos los
valores articulares son nulos. Sea n el número de grados de libertad:
1. Para la i-ésima trama, empezando en {1} y hasta {n1}:
A. Identificar los ejes articulares {i} e {i+1}, y la dirección del sentido
positivo de dichos ejes.
Ejemplo 1
Obtenga los parámetros de Denavit‐Hartenberg
del siguiente manipulador:
x̂3
ˆi debe ser normal al plano formado por (eje i) × (eje i+1) (o al revés).
B. El eje x
ˆi apunta del (eje i) al (eje i+1).
Cuando (eje i ) y (eje i+1) son || entonces x
ˆi en la misma dirección de xˆi 1 .
Como último recurso, se elige x
ˆi debe cruzar por (eje i) y (eje i+1) en algún punto.
VITAL: El eje x
C. El eje zˆi se define sobre el eje articular {i}. Usualmente se prefiere la
dirección en el sentido positivo del movimiento articular.
ˆi con el eje
D. El origen 0i de la trama {i} se ubica en la intersección de x
articular {i}.
2. Elegir las tramas {0} y {n} de manera que la mayor cantidad de parámetros de
DH sean 0. Por conveniencia, hacer {0} parecida a {1} y {n} parecida a {n1},
o lo que resulte en a  a    0 .
0
n
0
n
ẑ3
x̂2
Solución: . . .
. . .
. . .
x̂1
ẑ2
x̂0
ẑ1 , zˆ0
Ejemplo 2
Transformación total: i1iT
Obtenga los parámetros de Denavit‐Hartenberg del siguiente manipulador.
Considérese que los valores articulares {1, 2, 3} son cero.
L3
x̂3
ẑ3
ẑ1
1
Offset
x̂1
3
x̂2
Solución:
i
di
 i 1 ai 1
1 1
0
0
0
2  2  2 L1. . . 2
L3 0
3 3
0
i
2
ẑ2
L2
Transformación total: i1iT
Transformación total: i1iT
Transformación total: i1iT
Transformación total: i1iT
Transformación total: i1iT
Obtener la matriz de transformación homogénea total que
relaciona todo punto en el sistema {i} al sistema {i1}:
Ejemplo 3
Obtenga los parámetros de Denavit‐Hartenberg del siguiente
manipulador. Considere que el robot está dibujado en HOME.
Solución:
T  TRx  i 1  TDx  ai 1  TRz i  TDz  di 
Eje 1
i 1
i
zˆ0 , ẑ1


i 1
 Rx  i 1  Rz i 
iT 


[0, 0, 0]

. . . x̂1 , xˆ2 , xˆ0
 ai 1  
 d s  
 i i 1  
 di c i 1  

1

x̂3
ẑ3
Ejes 2,3
ẑ2
Ejemplo 3
Ejemplo 3
Sustituyendo los parámetros de DH, escribir las expresiones de las
transformaciones homogéneas para cada vínculo  01T , 21T , 23T  .
0 
P  0 
Si entonces
0 
3
0
P?
Ejemplo 3
function T=MaTran(qi,di,alfai_1,ai_1)
% La función regresa en T la expresión simbólica de la matriz.
T=[cos(qi)
,-sin(qi)
,0
, ai_1;
sin(qi)*cos(alfai_1),cos(qi)*cos(alfai_1),-sin(alfai_1),-di*sin(alfai_1);
sin(qi)*sin(alfai_1),cos(qi)*sin(alfai_1), cos(alfai_1), di*cos(alfai_1);
0
,0
,0
, 1];
if ~isnumeric([qi,di,alfai_1,ai_1])
T=simplify(T);
end;
Se puede bajar de: http://homepage.cem.itesm.mx/aaceves/MaTran.m
Ejemplo 3
>> syms q1 d2 q3 L2 pi
>> T01=MaTran(q1,0,0,0)
T01 =
[ cos(q1), -sin(q1), 0,
[ sin(q1), cos(q1), 0,
[
0,
0, 1,
[
0,
0, 0,
0]
0]
0]
1]
>> T12=MaTran(0,d2,pi/2,0)
T12 =
[ 1, 0, 0,
0]
[ 0, 0, -1, -d2]
[ 0, 1, 0,
0]
[ 0, 0, 0,
1]
>> T23=MaTran(q3,L2,0,0)
T23 =
[ cos(q3), -sin(q3), 0, 0]
[ sin(q3), cos(q3), 0, 0]
[
0,
0, 1, L2]
[
0,
0, 0, 1]
ẑ0
Ejemplo 3
x̂0
ŷ3
Tarea 4 (Ejercicio 1)
x̂3
Escribir los parámetros de DH.
ẑ3
ŷ0
0 
3
P  0 
Si entonces
0 
0
P?
>> P0=T01*T12*T23*[0;0;0;1]
P0 =
L2*sin(q1) + d2*sin(q1)
- L2*cos(q1) - d2*cos(q1)
0
1
Tarea 4 (Ejercicio 2)
Escribir los parámetros de DH.
Tarea 4 (Ejercicio 3)
Calcular la DK del Robot 3R, es decir,
escribir la expresión simplificada de: 03T
c123 s123 0 L1c1  L2c12 
s
c123 0 L1s1  L2 s12 
123
0

Calcular

T
3
0

0 1
0


0 0
1
0

El PUMA 560
0
3
El PUMA 560
a3
2
Robot en HOME
a3
3
1
d4
d3
a2
4
d4
5
6
Eje 1
ẑ1
Participación en clase 6
Eje 2
2
ẑ2
Eje 3
3
1
ẑ3
x̂1 x̂2
x̂3
Eje 5
4
. . .
ẑ5
5
x̂4 x̂5 x̂6
6
ẑ4 ẑ6
Ejes 4,6
% El nombre de este programa es:
%
%
CinematicaPUMA560.m
%
clear all
syms q1 q2 q3 q4 q5 q6 a2 a3 d3 d4 pi
% El nombre de este programa es:
%
%
CinematicaPUMA560.m
%
clear all
syms q1 q2 q3 q4 q5 q6 a2 a3 d3 d4 pi
T01=MaTran(q1, 0,
0, 0);
T12=MaTran(q2, 0,-pi/2, 0);
T23=MaTran(q3,d3,
0,a2);
T34=MaTran(q4,d4,-pi/2,a3);
T45=MaTran(q5, 0, pi/2, 0);
T56=MaTran(q6, 0,-pi/2, 0);
T01=MaTran(q1, 0,
0, 0);
T12=MaTran(q2, 0,-pi/2, 0);
T23=MaTran(q3,d3,
0,a2);
T34=MaTran(q4,d4,-pi/2,a3);
T45=MaTran(q5, 0, pi/2, 0);
T56=MaTran(q6, 0,-pi/2, 0);
T06=T01*T12*T23*T34*T45*T56
T06=simplify(T01*T12*T23*T34*T45*T56)
T06=simplify(T01*simplify(T12*simplify(T23*simplify(...
T34*simplify(T45*T56))))
% El nombre de este programa es:
%
%
CinematicaPUMA560.m
%
clear all
syms q1 q2 q3 q4 q5 q6 a2 a3 d3 d4 pi
T01=MaTran(q1, 0,
0, 0);
T12=MaTran(q2, 0,-pi/2, 0);
T23=MaTran(q3,d3,
0,a2);
T34=MaTran(q4,d4,-pi/2,a3);
T45=MaTran(q5, 0, pi/2, 0);
T56=MaTran(q6, 0,-pi/2, 0);
T36=simplify(T34*T45*T56);
syms s1 c1 s2 c2 s3 c3 s4 c4 s5 c5 s6 c6 s23 c23
T16=simplify(T12*T23)*T36;
T06=T01*T16; T06r=subs(T06 ,{sin(q1),cos(q1)},{s1,c1});
T06r=subs(T06r,{sin(q2),cos(q2)},{s2,c2});
T06=collect(T06,[sin(q1),cos(q1)])
T06r=subs(T06r,{sin(q3),cos(q3)},{s3,c3});
T06r=subs(T06r,{sin(q4),cos(q4)},{s4,c4});
T06r=subs(T06r,{sin(q5),cos(q5)},{s5,c5});
T06r=subs(T06r,{sin(q6),cos(q6)},{s6,c6});
T06r=subs(T06r,{sin(q2+q3),cos(q2+q3)},{s23,c23})
La solución de la Cinemática Directa del Robot PUMA es:
 r11
r
0
 21
T

6
 r31

0
0
0
r12
r22
r13
r23
r32
r33
0
0
Px 
Py   60 R

Pz  [0, 0, 0]

1
P  06T 6 P
 0R
P 6
[0, 0, 0]
P6  6
 P
1 
0
P6 

1 
0
r11  c1 c23  c4 c5c6  s4 s6   s23 s5c6   s1  s4 c5c6  c4 s6 
El Yasukawa Motoman L‐3
r21  s1 c23  c4 c5c6  s4 s6   s23 s5c6   c1  s4 c5c6  c4 s6 
r31   s23  c4 c5c6  s4 s6   c23 s5c6
r12  c1 c23  c4 c5 s6  s4 c6   s23 s5 s6   s1  c4 c6  s4 c5 s6 
r22  s1 c23  c4 c5 s6  s4 c6   s23 s5 s6   c1  c4 c6  s4 c5 s6 
r32   s23  c4 c5 sCalcular con MATLAB
6  s4 c6   c23 s5 s6
r13  c1  c23c4 s5  s23c5   s1s4 s5
r23   s1  c23c4 s5  s23c5   c1s4 s5
r33  s23c4 s5  c23c5
Px  c1  a2 c2  a3c23  d 4 s23   d3 s1
Py  s1  a2 c2  a3c23  d 4 s23   d3c1
Pz  a3 s23  a2 s2  d 4 c23
Solución: Participación en Clase 7
Pasar el robot a posición de HOME:
ẑ0 ẑ1
ẑ2
ẑ4
ẑ3
x̂0 x̂1 x̂2
x̂3
x̂4 x̂5
ẑ5
Calcular los parámetros de DH.
El robot se muestra en la posición (0,‐90°,90°,‐90°,0).
. . .
Mediante la fórmula de transformación de DH calcularemos:
 r11
r
0
0 1 2 3 4
 21
5T  1T 2T 3T 4T 5T 
 r31

0
r12
r22
r32
r13
r23
r33
0
0
Px 
Py   50 R

Pz  [0, 0, 0]

1
0
PO 5 

1 
Gracias a ella, todo punto definido en el sistema coordenado {5} se pueden escribir a {0}:
 P 0  P
   5T  
1
1
0
5
 0 P   50 R
 
 1  [0, 0, 0]
0
P  50 R 5 P  0 PO 5
0
PO 5   5 P 
 
1  1 
% Este programa muestra las matrices de transformación para el
% Yasukawa Motoman L-3 que están reportadas en la notas.
%
% El nombre de este programa es:
%
%
CinematicaYasukawaMotomanL3.m
clear all
syms q1 q2 q3 q4 q5 L2 L3 pi
T01=MaTran(q1,0,
0, 0);
T12=MaTran(q2,0,-pi/2, 0);
T23=MaTran(q3,0,
0,L2);
T34=MaTran(q4,0,
0,L3);
T45=MaTran(q5,0,-pi/2, 0);
T05=T01*simplify(T12*T23*T34)*T45
Robotic Toolbox
c1c234c5  s1s5 c1c234 s5  s1c5 c1s234 c1  L2c2  L3c23  


s1s234 s1  L2c2  L3c23  
0
1c234 s5  c1c5
s1c234c5  c1s5 sCalcular con MATLAB

T
5
 s234c5
s234s5
c234
L2 s2  L3s23 


0
0
0
1


Donde:
c234  cos  2  3   4 
s234  sin  2  3   4 
NOTA: Utilizar lo aprendido hasta ahora y determinar la Cinemática
Directa del robot del Proyecto Final. Es VITAL que empiecen YA!!!.
%EL ROBOT PUMA
clear all
%EL ROBOT YASUKAWA MOTOMAN
clear all
a2=0.431; a3=0.020; d3=0.149; d4=0.433;
L(1)=Link([0,0 ,0 ,
0,0],'modified');%[theta,d,a,alfa,0=R/1=P]
L(2)=Link([0,0 ,0 ,-pi/2,0],'modified');
L(3)=Link([0,d3,a2,
0,0],'modified');
L(4)=Link([0,d4,a3,-pi/2,0],'modified');
L(5)=Link([0,0 ,0 , pi/2,0],'modified');
L(6)=Link([0,0 ,0 ,-pi/2,0],'modified');
L2=0.500; L3=0.500;
L(1)=Link([0,0,0 ,
0,0],'modified');%[theta,d,a,alfa,0=R/1=P]
L(2)=Link([0,0,0 ,-pi/2,0],'modified');
L(3)=Link([0,0,L2,
0,0],'modified');
L(4)=Link([0,0,L3,
0,0],'modified');
L(5)=Link([0,0,0 ,-pi/2,0],'modified');
qlimit=pi*[-1 1; -1 1; -1 1; -1 1; -1 1];
q0=[0 0 0 0 0];
qlimit=pi*[-1 1; -1 1; -1 1; -1 1; -1 1; -1 1];
q0=[0 0 0 0 0 0];
MyRobot1=SerialLink(L,'name','El PUMA','qlim',qlimit);
MyRobot1.teach(q0)
MyRobot1=SerialLink(L,'name','El YASUKAWA','qlim',qlimit);
MyRobot1.teach(q0)
hold on
trplot(eye(4),'frame','0','color','k')
hold off
hold on
trplot(eye(4),'frame','0','color','k')
hold off
>>elpuma
Robotic Toolbox
Transformación homogénea total Base‐Tool: T  B0T 06T W6T
B
W
W
6
T
W=Tool Frame
0
6
T
0
B
T
B=Base Frame
Robotic Toolbox
%EL ROBOT YASUKAWA MOTOMAN
clear all
Robotic Toolbox
%EL ROBOT PUMA
clear all
L2=0.500; L3=0.500; L4=0.2;
L(1)=Link([0,0,0 ,
0,0],'modified');
L(2)=Link([0,0,0 ,-pi/2,0],'modified');
L(3)=Link([0,0,L2,
0,0],'modified');
L(4)=Link([0,0,L3,
0,0],'modified');
L(5)=Link([0,0,0 ,-pi/2,0],'modified');
%[theta,d,a,alfa,0=R/1=P]
a2=0.431; a3=0.020; d3=0.149; d4=0.433;
L(1)=Link([0,0 ,0 ,
0,0],'modified'); % [theta,d,a,alfa,0=R/1=P,offset]
L(2)=Link([0,0 ,0 ,-pi/2,0],'modified');
L(3)=Link([0,d3,a2,
0,0],'modified');
L(4)=Link([0,d4,a3,-pi/2,0],'modified');
L(5)=Link([0,0 ,0 , pi/2,0],'modified');
L(6)=Link([0,0 ,0 ,-pi/2,0],'modified');
qlimit=pi*[-1 1; -1 1; -1 1; -1 1; -1 1]; q0=[0 0 0 0 0];
MyRobot1=SerialLink(L,'name','El YASUKAWA','qlim',qlimit);
MyRobot1.tool=[eye(3),[0;0;L4];0 0 0 1];
MyRobot1.base=[eye(3),[0;0;1 ];0 0 0 1];
MyRobot1.plot(q0,'workspace', [-2 2 -2 2 0 2]);
MyRobot1.plot(q0,'floorlevel', 0);
MyRobot1.teach(q0) % Robot interactivo con Teach
%MyRobot1.plot(q0) % Dibuja el robot en 3D
%MyRobot1.fkine(q0) % Entrega la Cinemática Directa
qlimit=pi*[-1 1; -1 1; -1 1; -1 1; -1 1; -1 1];
q0=[0 0 0 0 0 0];
MyRobot1=SerialLink(L,'name','El PUMA','qlim',qlimit);
MyRobot1.tool=[eye(3),[0;0;0.2];0 0 0 1];
MyRobot1.base=[eye(3),[0;0;1];0 0 0 1];
MyRobot1.plot(q0,'workspace', [-1.5 1.5 -1.5 1.5 0 2]);
MyRobot1.plot(q0,'floorlevel', 0);
MyRobot1.teach(q0)
hold on;
trplot(eye(4),'frame','0','color','k');
hold off
hold on
trplot(eye(4),'frame','0','color','k')
hold off
>>elyasu
>>elpuma
Relación de espacios
Espacio de actuador
Normalmente un robot de n GDL tiene n variables articulares
formando un vector columna definido en el espacio articular.
Los motores y servomotores se utilizan en ROBOTICA para
producir movimiento de piezas y articulaciones mecánicas.
En general cada articulación es accionada por un actuador, sin
embargo, no siempre es el caso. Por ejemplo, dos motores accionan
una flecha, un actuador lineal acciona una articulación rotacional. Es
útil entonces conocer la relación entre la posición del actuador y la
posición de la articulación.
IK
f -1
Espacio articular
Espacio de actuador
f
Espacio cartesiano
DK
Servomotores
SSC‐32 Servo Controller
http://www.lynxmotion.com/p‐395‐ssc‐32‐servo‐controller.aspx
http://www.robodacta.mx/index.php?dispatch=products.view&product_id=29885
Servomotores
PWM=0.3ms
q=170grados
PWM=1.2ms
q=85grados
PWM=2.1ms
q=0grados
PWM=0.3ms
q=‐10grados
PWM=1.2ms
q=‐100grados
PWM=2.1ms
q=‐180grados
Servomotores
Servomotores
En el caso más sencillo, la relación Espacio de actuador vs.
Espacio articular es una función lineal que se puede conocer si se
realizar una tabla y usar ajuste de curva (Ej. Mínimos cuadrados).
Valor actuador (x)
q1 [°]
q2 [°]
…
qn [°]
0x000
0x001
…
0xFFF
qi  fi  x   mi x  bi
Actuadores Dynamixel
http://learn.trossenrobotics.com/arbotix.html
http://www.trossenrobotics.com/p/arbotix‐robot‐controller.aspx
Actuadores Dynamixel
Goal Position (dirección #30): Es un valor entre 0 a 1024 correspondiente a la posición angular deseada. Cada unidad equivale a 0.29 grados. Ejemplo: dxl_write_word(id,address,value)
150grados
0grados
512
1024
300grados
+150grados
Para el Proyecto
1) Calcular la DK del robot del Proyecto y comprobarla en MATLAB.
2) Hacer los experimentos necesarios con el robot (del proyecto final) para
caracterizar cada uno de los servomotores y conocer sus respectivos mapeo:
Espacio actuador  Espacio articular
3) Investigar como se usan (conectan y programan) las tarjetas controladoras de servomotores del robot del proyecto:
a)
Hexápodos de Lynxmotion:
http://www.lynxmotion.com/p‐395‐ssc‐32‐servo‐controller.aspx
http://www.lynxmotion.com/c‐153‐botboarduino.aspx
http://www.lynxmotion.com/c‐101‐ch3‐r.aspx
b) Humanoides Bogobots:
http://support.robotis.com/en/product/auxdevice/controller/opencm9.04.htm
http://www.trossenrobotics.com/open‐cm‐904c
http://support.robotis.com/en/product/auxdevice/controller/opencm_485_exp.htm
c)
Widow Robotic Arm II:
https://www.trossenrobotics.com/p/arbotix‐robot‐controller.aspx
http://learn.trossenrobotics.com/
0
0grados
‐150grados