Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Paper Robotica Avanzada AAguiar HRojas PDF
Paper Robotica Avanzada AAguiar HRojas PDF
I.
INTRODUCCIN
(1)
Finalmente para obtener la cinemtica directa
multiplicamos las 4 matrices de Denavit-Hartenberg(2)
y obtenemos una matriz de transformacin final la cual
nos proporcionara la cinemtica directa del robot .
(2)
II.
B.
PARAMETROS
La utilidad del modelo dinamico resulta
importante cuando se dispone de los
valores numricos de todos los
parmetros del robot; bajo este enfoque en
la siguiente tabla se muestra la
terminologa, significado y valores de un
robot prototipo de 2 gdl.
Significado
Masa del eslabn 1
Longitud del eslabn 1
Notaci
n
m1
I1
Iz1
Iy1
Ix1
b1
0.091 m
2.288 Nmseg/rad
fc1
7.17 Nm
fe1
m2
I2
8.8 Nm
30 kg
0.45m
0.084 Nmseg2/rad
0.03 Nmseg2/rad
0.05 Nmseg2/rad
Ic1
Iz2
Iy2
Ix2
III.
Valor
26.9 kg
0.45 m
1.266 Nmseg2/rad
0.089 Nmseg2/rad
0.03 Nmseg2/rad
b2
0.038 m
0.2 Nmseg/rad
fc2
1.9 Nm
Ic2
fe2
2.1 Nm
CINEMATICA DE MANIPULADORES
CINEMATICA DIRECTA
La cinemtica directa se plantea en trminos de
encontrar una matriz
de transformacin que relaciona el sistema de
coordenadas ligado al cuerpo en
movimiento respecto a un sistema de coordenadas
que se toma como referencia. Para
lograr esta representacin se usan las matrices de
transformacin homognea 4x4, la
cual incluye las operaciones de traslacin y la
orientacin.
La matriz de transformacin homognea es una
matriz de 4x4 que transforma un
vector expresado en coordenadas homogneas
desde un sistema de coordenadas hasta
otro sistema de coordenadas.
Mediante el mtodo de Denavit Hartenberg y la
matriz de transformacin, obtenemos las
expresiones de la cinemtica directa.
Parmetros de DH (Denavit - Hartenberg).
teta
d
a
alfa
=
=
=
=
[q(1)
[0.45
[0
[pi/2
q(2)
0
0
pi/2
0
];
q(3)];
0
];
0
];
%
Matrices de transformacin
homognea entre sistemas de coordenadas
consecutivos
A01 = denavit(teta(1), d(1), a(1),
alfa(1));
A12 = denavit(teta(2), d(2), a(2),
alfa(2));
A23 = denavit(teta(3), d(3), a(3),
alfa(3));
%
Matriz de transformacin del primer
al ltimo sistema de coordenadas
A03 = A01 * A12 * A23;
Y corremos el programa para las coordenadas
articulares q=[0 0 0] Para obtener la matriz de
trasformacin homognea
q=zeros(3,1);
T=directkinematic3(q)
T=
1.0000
0
0
0
B.
0
0
-1.0000 -0.0000
0.0000 -1.0000
0
0
0
0
0.4500
1.0000
CINEMATICA INVERSA
IV.
PLANIFICACION DE TRAYECTORIAS
h
%
PLANIFICADOR Planificador de
trayectorias con interpolador 4-3-4.
%
%
[T,POS_PLAN, VEL_PLAN,
ACE_PLAN]=PLANIFICADOR(Q1,Q2) calcula
las matrices
%
de posicin, velocidad y
aceleracin de los puntos nudo que
representan
%
la planficiacin de
trayectorias entre los punto Q1 y Q2
cumpliendo con
%
las restricciones de
trayectoria suave y prestaciones de los
actuadores.
%
Utiliza los polinomios 4-3-4 en
los tres segmentos de trayectoria.
%
%
Ver tambin CALCULOCOEF,
SINCRONIZADOR, EVALPOS, EVALVEL,
EVALACEL.
function [t, pos_plan, vel_plan,
ace_plan] = planificador(q1,q2)
%********************************parme
tros de los
accionamientos**************
%------------------------------------------------------------------------% Especificaciones de los tiempos de
arranque y frenado de cada motor.
%------------------------------------------------------------------------tmotor = 0.1*ones(6,2);
%-----------------------------------------------------------------------%Velocidades Maxima de cada motor.
%-----------------------------------------------------------------------velmax =
[1.0472;1.0472;1.0472;1.0472;1.0472;1.0
472];
%********************************planif
icador
coordinado***********************
%------------------------------------------------------------------------% Inicializacin de los vectores
posicion - Velocidad - aceleracion.
%------------------------------------------------------------------------q = zeros(6,1);
q0 = [q1 q q];
qf = [q2 q q];
%-----------------------------------------------------------------------% Sincronizacin de los motores para
que realizen un movimiento coordinado
%-----------------------------------------------------------------------[velo2,tmaximo]=sincronizador(q0,qf,vel
max);
V.
t1 t2 real;
td1 td2 real;
tdd1 tdd2 real;
l1 l2 real;
m1 m2 real;
g real;
dyn = [0 0 0 0 0 2 3 0 0 0 0 0 0 0 0 0
1 0 0 0;
0 3 0 0 0 1 1 0 0 0 0 0 0 0 0 0
1 0 0 0];
q = [t1 t2];
qd = [td1 td2];
qdd = [tdd1 tdd2];
grav = [0 -g 0];
tau = rne(dyn, q, qd, qdd, grav)
simple(tau)
% Evaluar los terminos del par por
separado
M = inertia(dyn,q)
% Matriz de masas M(teta)
% Termino Gravitatorio
G(teta)
V = coriolis(dyn,q,qd)
% Terminos centriguos y de Coriolis V(
Resultado:
tau =
[ 19*tdd1 + tdd2 + cos(t2)*(3*tdd1 +
g*cos(t1)) + 3*cos(t2)*(tdd1 + tdd2 +
cos(t2)*(3*tdd1 + g*cos(t1)) sin(t2)*(- 3*td1^2 + g*sin(t1))) +
3*sin(t2)*(sin(t2)*(3*tdd1 + g*cos(t1))
+ cos(t2)*(- 3*td1^2 + g*sin(t1)) (td1 + td2)^2) - sin(t2)*(- 3*td1^2 +
g*sin(t1)) + 6*g*cos(t1), tdd1 + tdd2 +
cos(t2)*(3*tdd1 + g*cos(t1)) sin(t2)*(- 3*td1^2 + g*sin(t1))]
Warning: simple will be removed in a
future release. Use simplify instead.
> In sym.simple at 41
In Modelo_Dinamico at 22
simplify:
[ - 3*sin(t2)*td2^2 - 6*td1*sin(t2)*td2
+ 28*tdd1 + tdd2 + g*cos(t1 + t2) +
9*g*cos(t1) + 6*tdd1*cos(t2) +
3*tdd2*cos(t2), 3*sin(t2)*td1^2 + tdd1
+ tdd2 + g*cos(t1 + t2) +
3*tdd1*cos(t2)]
radsimp:
[ - 3*sin(t2)*td2^2 - 6*td1*sin(t2)*td2
+ 28*tdd1 + tdd2 + g*cos(t1 + t2) +
9*g*cos(t1) + 6*tdd1*cos(t2) +
3*tdd2*cos(t2), 3*sin(t2)*td1^2 + tdd1
+ tdd2 + g*cos(t1 + t2) +
3*tdd1*cos(t2)]
combine(sincos):
[ 19*tdd1 + tdd2 + cos(t2)*(3*tdd1 +
g*cos(t1)) + sin(t2)*(3*sin(t2)*(3*tdd1
+ g*cos(t1)) + 3*cos(t2)*(- 3*td1^2 +
g*sin(t1)) - 3*(td1 + td2)^2) sin(t2)*(- 3*td1^2 + g*sin(t1)) +
6*g*cos(t1) + cos(t2)*(3*tdd1 + 3*tdd2
+ 3*cos(t2)*(3*tdd1 + g*cos(t1)) 3*sin(t2)*(- 3*td1^2 + g*sin(t1))),
tdd1 + tdd2 + cos(t2)*(3*tdd1 +
g*cos(t1)) - sin(t2)*(- 3*td1^2 +
g*sin(t1))]
combine(sinhcosh):
[ 19*tdd1 + tdd2 + cos(t2)*(3*tdd1 +
g*cos(t1)) + 3*cos(t2)*(tdd1 + tdd2 +
cos(t2)*(3*tdd1 + g*cos(t1)) sin(t2)*(- 3*td1^2 + g*sin(t1))) +
3*sin(t2)*(sin(t2)*(3*tdd1 + g*cos(t1))
+ cos(t2)*(- 3*td1^2 + g*sin(t1)) (td1 + td2)^2) - sin(t2)*(- 3*td1^2 +
g*sin(t1)) + 6*g*cos(t1), tdd1 + tdd2 +
cos(t2)*(3*tdd1 + g*cos(t1)) sin(t2)*(- 3*td1^2 + g*sin(t1))]
combine(ln):
[ 19*tdd1 + tdd2 + cos(t2)*(3*tdd1 +
g*cos(t1)) + 3*cos(t2)*(tdd1 + tdd2 +
cos(t2)*(3*tdd1 + g*cos(t1)) sin(t2)*(- 3*td1^2 + g*sin(t1))) +
3*sin(t2)*(sin(t2)*(3*tdd1 + g*cos(t1))
+ cos(t2)*(- 3*td1^2 + g*sin(t1)) (td1 + td2)^2) - sin(t2)*(- 3*td1^2 +
g*sin(t1)) + 6*g*cos(t1), tdd1 + tdd2 +
cos(t2)*(3*tdd1 + g*cos(t1)) sin(t2)*(- 3*td1^2 + g*sin(t1))]
factor:
simplify(Steps = 100):
expand:
[3]
[4]
collect(t1):
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
ans =
[14]
[ - 3*sin(t2)*td2^2 - 6*td1*sin(t2)*td2
+ 28*tdd1 + tdd2 + g*cos(t1 + t2) +
9*g*cos(t1) + 6*tdd1*cos(t2) +
3*tdd2*cos(t2), 3*sin(t2)*td1^2 + tdd1
+ tdd2 + g*cos(t1 + t2) +
3*tdd1*cos(t2)]
[15]
[16]
[17]
.
M =
[ 3*cos(t2) + 9*sin(t2)^2 +
3*cos(t2)*(3*cos(t2) + 1) + 19,
3*cos(t2) + 1]
[
3*cos(t2) + 1,
1]
V =
[ 3*td1^2*sin(t2) 3*sin(t2)*(3*td1^2*cos(t2) + (td1 +
td2)^2) + 9*td1^2*cos(t2)*sin(t2),
3*td1^2*sin(t2)]
VI.
VII.
[1]
[2]
CONCLUSIONES
REFERENCIAS