Академический Документы
Профессиональный Документы
Культура Документы
MARIA
ROBOTICA I
DOCENTE:
ALUMNOS:
FECHA:
18 de Julio
2016
1. RESUMEN
En este trabajo se presenta el modelamiento de un robot de tipo SCARA
de 3 grados de libertad. El cual es parte de la conformacin de un
ambiente para la experimentacin y estudio en robtica industrial, la
cual servir de apoyo para la educacin remota en ingeniera. En este
proyecto nos basaremos principalmente en la modelacin cinemtica y
dinmica del robot SCARA.
2. OBJETIVOS
2.1. OBJETIVO GENERAL
Contribuir con la misin de la Universidad de generar y adecuar
conocimiento aplicable a la industria mediante el modelamiento
cinemtico y dinmico de un prototipo de manipulador robtico
como apoyo acadmico.
2.2. OBJETIVO ESPECIFICO
Aplicar los conocimientos aprendidos durante el semestre
sobre el modelamiento cinemtico y dinmico de robots
manipuladores en un prototipo SCARA de 3 grados de
libertad (2 rotacionales y 1 prismtico).
INTRODUCCION
4. ANTECEDENTES
TS60 SCARA: El robot TS60 de alta velocidad y carga pesada
presenta caractersticas y ventajas exclusivas diseadas para
optimizar la eficiencia y productividad en todos los entornos,
que se derivan en una elevada calidad consistente junto con un
drstico
aumento
del
rendimiento.
Sus
principales
EPSON
SCARA
uso completo de
su
de
sin
tener
espacio
problema
singularidades.
de
mover
materias,
piezas,
herramientas,
dispositivos
multifuncional
capaz
de
reprogramable
manipular
materias,
con
varios
piezas,
grados
de
herramientas
Robtico
| Escuela Profesional de Ingeniera
Mecnica, Mecnica-Elctrica y
Mecatronica
Configuracin
Configuracin
Configuracin
Configuracin
Configuracin
Cartesiana.
Cilndrica.
Polar o Esfrica
Angular.
SCARA.
10
11
Los robots de configuracin SCARA son ideales para procesos en los que
se manejan pequeos productos y al mismo tiempo se demanda
velocidad, rendimiento y precisin en los movimientos, debido a su
configuracin sencilla y tamao reducido, los costos de mantenimiento
12
sistemas de transportes.
Ensamble de componentes electrnicos.
Realizacin de pruebas de calidad de componentes electrnicos.
Trabajo en salas blancas (fabricacin y manipulacin de
medicamentos).
Pulido, eliminacin de rebabas y acabos de superficies planas de
objetos pequeos.
Aplicacin de adhesivos.
Montajes de elementes de unin (tornillos y remaches).
Dosificacin y envase de productos farmacuticos.
Clulas de trabajo en Sistemas de Manufactura Flexible (FMS) y
13
40 cm
30 cm
20 cm
35 cm
50 cm
15 cm
240
310
4
=209.44 cm
3
Longitud interior=( 15 cm )
4
=62.83 cm
3
Volumen de trabajo=
14
(209.44+62.83)
35 40
2
Volumen de trabajo=0.1906 m
un
15
16
Articulac
in
1
q1
l1
l2
q2
l3
180
q3
0 l 2 cos ( q1)
0 l 2 sin ( q 1)
1
l1
0
1
cos ( q2 ) sin ( q 2)
0 l 3 cos ( q 2)
1
sin ( q2 ) cos (q 2) 0 l3 sin ( q 2)
2A=
0
0
1
0
0
0
0
1
[ ]
1
0
2
3A=
0
0
0
1
0
0
0 0
0 0
1 q3
0 1
18
(01 A )
19
T =2 A 3 A
Fila: 3
Columna: 4
][
0 l 2
cos ( q2) sin ( q2 )
0 l 3 cos ( q2 )
0 0
T = sin ( q 2) cos ( q2 ) 0 l 3 sin ( q2)
1 l 1
0
0
1
0
0
0
0
1
0 1
( 0 ) Px + ( 0 ) P y + Pz l 1=q3
q3 =l 1Pz
Fila: 1
Columna: 4
Px + P y 2 l 2 ( cos ( q 1) P x + sin ( q1 ) P y ) + ( l 2 ) =( l3 )
20
P x + P y + ( l 2 ) ( l 3 )
=P x cos ( q 1) + P y sin ( q 1 ) .()
2l 2
P x 2+ P y 2+ ( l 2 )2 ( l 3 )2
l 2=l 3 cos ( q2 )
2l 2
q 2=cos
P x + P y ( l 2 ) ( l 3 )
2 l2 l 3
sin()=
Px
r
cos( )=
Py
r
P x + P y + ( l 2 ) ( l 3 ) P x cos ( q1 ) + P y sin ( q 1)
=
2 l2 r
r
P x + P y + ( l 2 ) ( l 3 ) P x
P
= cos ( q 1 ) + y sin ( q1 )
2 l2 r
r
r
21
P x + P y + ( l 2 ) ( l 3 )
=sin ( ) cos ( q 1 )+ cos ( ) sin ( q 1 )
2 l2 r
q1 =sin
P x 2 + P y 2 ( l 2 ) ( l 3 )
2l 2 P x + P
2
2
y
) (
sin 1
Px
P x 2+ P y 2
de
Euler constituyen
angulares
que
un
sirven
conjunto
para
de
tres
especificar
YAW ():
cos ( )sin ( )=0
sin ( )=0
=
22
ROLL ():
| Escuela Profesional de Ingeniera Mecnica, Mecnica-Elctrica y
Mecatronica
JACOBIANA
[ ]
Px
q1
Py
J=
q1
Pz
q1
Px
q 2
Py
q 2
Pz
q 2
Px
q3
Py
q3
Pz
q3
4.4.2.
Velocidades
23
( q 1 +q 2 )( q 1 + q 2) + l3 cos ( q 1) q 1
V y =l 3 cos
V z =q3
2
V =q 1 +q
V =0
V =0
4.4.3.
Puntos singulares
l 3 cos ( q 1 +q 2 )
0
0 =0
1
l 3 l 2 sin ( q 2 )=0
q 2=arcsen ( 0 )
4.5.
24
Ingresando
valores
aleatorios
podemos confirmar que tanto la
cinemtica directa como la inversa
son correctas ya que muestran los
mismos valores en el caso de la
cinemtica directa muestra la
posicin deseada en funcin de los
ngulos
y
desplazamientos
planteados y para validar esto se
trabaj con las posiciones halladas
para as hallar los ngulos y
desplazamientos propuestos al
principio.
Figura N9 - Simulacin PCD - PCI
25
Una vez
ms queda demostrado que el planteamiento de la Cinemtica Directa y la
Cinemtica Inversa es correcta.
PRUEBA N1
26
27
Comprobamos con la grfica para comprobar que realmente estas son las
Figura N13 - Vista lateral y superior de Simulacin N3
posiciones correctas.
Estas imgenes representan la vista lateral y superior del robot SCARA, en la
cual se aprecia con claridad las posicionas en el eje X - Y Z y las cuales
coinciden con las ecuaciones planteadas de cinemtica directa y el GUI.
PRUEBA N2
28
Estas
De
esta manera queda comprobado que los clculos de cinemtica inversa son
correctos ya que estos concuerdan con el GUI y muestran los resultados
esperados.
30
Una
vez ms queda demostrado que las ecuaciones calculadas de cinemtica
inversa son correctas
31
7. MODELO DINAMICO
La dinmica se ocupa de la relacin entre las fuerzas que actan
cobre un cuerpo y el movimiento que en l se origina. Por lo tanto,
el modelo dinamico de un robot tiene por objetivo conocer la
relacin entre el movimiento del robot y las fuerzas implicadas en
el mismo.
Esta relacin
se
obtiene
mediante
el
denominado
modelo
32
Elemento masa 1
x 1=0 x 1=0
y 1=0 y 1=0
z 1=l c1 z 1=0
v 21=0
Elemento masa 2
x 2=l c2 C1
x 2=l c 2 S1 q 1
y 2=l c 2 S1
y 2 =l c2 C1 q 1
z 2=l 1
2
z 2=0
v 2=l c2 q 1
Elemento masa 3
x 3=l 2 C 1+ l c3 C12
x 3=l 2 S 1 q 1l c3 S12 ( q 1 + q 2)
y 3=l 2 S 1+l c 3 S 12
y 3 =l 2 C 1 q 1+l c3 C12 ( q 1 + q 2 )
z 3=l 1
z 3=0
x 4=l 2 C1 +l 3 C 12
x 4 =l2 S 1 q 1l 3 S 12 ( q 1+ q 2 )
y 4 =l 2 S1 +l 3 S12
y 4=l 2 C 1 q 1 +l 3 C 12 ( q1 + q 2 )
z 4 =q3
v 24=( l 22 +l 23 +2 l 2 l 3 C 2 ) q 21 +l 23 q 22 +2 ( l 23 +l 2 l 3 C2 ) q 1 q 2+ q 23
Energa Cintica
Ec =
1
( m v 2 +m v 2+ m v 2+ m4 v 24 )
2 1 1 2 2 3 3
L=E c E p
2
L
=m2 l 2c 2 q 1+ m3 ( l 22 +l 2c 3+ 2l 2 l c3 C2 ) q 1+ m3 ( l 2c 3 +l 2 l c 3 C 2 ) q 2+ m4 ( l 22+l 23 +2 l 2 l 3 C2 ) q 1+ m4 ( l 23+l 2 l 3 C 2 ) q 2
q1
d L
2
2
2
2
2
2
2
=m2 l c2 q 1 +m3 (l 2 +l c3 +2 l 2 l c 3 C 2 ) q 1+m3 ( l c 3+ l 2 l c 3 C 2 ) q 2 +m4 ( l 2 +l 3 +2l 2 l 3 C 2 ) q 1 +m4 ( l 3 +l 2 l 3 C2 ) q2
dt q 1
L
=m3 l 2c 3 q 2 +m3 ( l 2c3 +l 2 l c3 C2 ) q 1+ m4 l 23 q 2+ m4 ( l 23+l 2 l 3 C 2 ) q 1
q2
d L
=m3 l 2c3 q 2+ m3 (l 2c 3 +l 2 l c 3 C 2 ) q 1 +m4 l 23 q 2 +m4 ( l 23 +l 2 l 3 C2 ) q 1m3 l 2 l c3 S2 q 1 q 2m4 l 2 l 3 S2 q 1 q 2
dt q 2
34
L
=0
q1
L
=m3 ( l 2 l c3 S 2 q21 +l 2 l c 3 S2 q 1 q 2) m4 ( l2 l 3 S2 q 21+l 2 l 3 S2 q 1 q 2 )
q2
L
=m 4 g
q3
Expresin de Lagrange (Reduciendo)
i=
d L L
dt q i qi
] [
T 2 = m3 ( l c3 +l 2 l c3 C2 ) + m 4 ( l 3+ l 2 l 3 C 2 ) q 1+ [ m 3 l c 3+ m 4 l3 ] q 2+ l 2 ( m 3 l c3 +m 4 l 3 ) S 2 q 1
F3 =m4 q 3m4 g
35
PRUEBA N1
Se realiz un movimiento para llegar a una posicin cercana al lmite del
robot a partir de su posicin inicial.
T 1max 5 N /m
T 2max 2 N /m
F 3max 6 N
largo=50 mm
ancho=10 mm
ESLABN 1
m=V
g
cm 3
m=540 g
1 kg
1000 g
g
3
cm
m=405 g
1 kg
1000 g
g
cm3
m=270 g
1 kg
1000 g
m=0.54 kg
-
ESLABN 2
m=V
m=0.405 kg
-
ESLABN 3
m=V
m=0.27 kg
Para el efector final se considerara que este tiene una forma cilndrica
con un radio de 1cm.
m=V
g
3
cm
m=296.89 g
1 kg
1000 g
m=0.297 kg
9. SELECCIN DE ACTUADORES
Para la implementacin se usarn 3 servomotores, el cual es:
Digital Metal Gear Ultra High Torque Robot Servo 53 kg.cm / 280
37
38
Dimensiones: 43X32X32.5mm
Peso: 81g
10.
SIMULACIN EN SOFTWARE
Una vez obtenido la Cinemtica Directa, Cinemtica Inversa y el
modelamiento Dinmico del manipulador robtico se procede a
simular con ayuda del Toolbox de robtica que nos ofrece MATLAB,
la posicin del robot pero de manera grfica, ya que as se podr
observar con claridad cmo funciona el robot, tambin se mostrara
en qu posicin se encuentra y que ngulos requiere para poder
llegar a esa posicin. Despus de tener todos estos parmetros, se
le da valores de masa, y distancias al centro de masa para as
poder graficar las fuerzas o torques que ejercen los eslabones para
dicho movimiento.
Para poder obtener toda la simulacin planteada se trabaj con un
GUI.
39
40
11.
CONCLUSIONES
del
objetivo
principal,
modelar
41
12.
42
BIBLIOGRAFIA
http://www.lajpe.org/dec11/LAJPE_585_John_Kern_preprint
%20corr_f.pdf
https://prezi.com/cb63ynagdlgk/modelo-cinematico-y-
dinamico-de-un-robot-scara/
http://platea.pntic.mec.es/vgonzale/cyr_0708/archivos/_15/Te
ma_5.4.htm
BARRIENTOS Antonio E; Fundamentos de Robtica; Madri,
ANEXO
S
clear all
clc
43
44
45
46
');
');
');
disp(' ')
fprintf('El angulo de q1 en degrees es: %.002f \n',q1);
fprintf('El angulo de q2 en degrees es: %.002f \n',q2);
fprintf('La longitud de q3 en m es: %.002f \n',q3);
%%
disp('**************************************************')
disp('CALCULO DE MODELO DIFERENCIAL INGRESANDO VALORES')
l1=input('Ingrese la longitud del eslabn 1 en metros: ');
l2=input('Ingrese la longitud del eslabn 2 en metros: ');
l3=input('Ingrese la longitud del eslabn 3 en metros: ');
disp(' ')
q1=input('Ingrese el angulo de q1 en degrees: ');
q2=input('Ingrese el angulo de q2 en degrees: ');
disp(' ')
dq1=input('Ingrese la velocidad de q1 en rad/seg: ');
dq2=input('Ingrese la velocidad de q2 en rad/seg: ');
dq3=input('Ingrese la velocidad de q3 en m/seg: ');
disp(' ')
disp('Resultados')
Vx=- dq1*(l3*sin(q1 + q2) + l2*sin(q1)) - dq2*l3*sin(q1 + q2);
Vy= dq1*(l3*cos(q1 + q2) + l2*cos(q1)) + dq2*l3*cos(q1 + q2);
Vz=-dq3;
fprintf('La velocidad lineal de X en m/seg es: %.002f \n',Vx)
fprintf('La velocidad lineal de Y en m/seg es: %.002f \n',Vy)
fprintf('La velocidad lineal de Z en m/seg es: %.002f \n',Vz)
47
Posicin y velocidades
Elemento masa 1
x1 = c1*cos(q1);
y1 = c1*sin(q1);
z1 = d1;
vx1 = diff(x1,q1)*vq1+diff(x1,q2)*vq2+diff(x1,q3)*vq3;
vy1 = diff(y1,q1)*vq1+diff(y1,q2)*vq2+diff(y1,q3)*vq3;
vz1 = diff(z1,q1)*vq1+diff(z1,q2)*vq2+diff(z1,q3)*vq3;
v1 = simplify(sqrt(vx1^2+vy1^2+vz1^2));
% Elemento masa 2
x2 = a1*cos(q1)+c2*cos(q1+q2);
y2 = a1*sin(q1)+c2*sin(q1+q2);
z2 = d1;
vx2 = diff(x2,q1)*vq1+diff(x2,q2)*vq2+diff(x2,q3)*vq3;
vy2 = diff(y2,q1)*vq1+diff(y2,q2)*vq2+diff(y2,q3)*vq3;
48
Energa Cintica
Ec = simplify(0.5*(m1*v1^2+m2*v2^2+m3*v3^2));
Energa Potencial
Ep = simplify(g*(m1*z1+m2*z2+m3*z3));
Lagrangiana
L = simplify(Ec-Ep);
Formulacin de Lagrange
Derivada de L respecto a q1 y q2
dLdq1 = simplify(diff(L,q1));
dLdq2 = simplify(diff(L,q2));
dLdq3 = simplify(diff(L,q3));
49
Fuerzas y Torques
T1 = simplify(dLdt1 - dLdq1)
T2 = simplify(dLdt2 - dLdq2)
F3 = simplify(dLdt3 - dLdq3)
pretty(T1)
pretty(T1)
pretty(T1)
TF1 = aq1*(m1*c1^2+m3*(a1^2+ 2*cos(q2)*a1*a2 + a2^2 )+m2*(a1^2+ 2*cos(q2)*a1*c2 +
c2^2 ))- vq2*(m3*(2*a1*a2*vq1*sin(q2)+ a1*a2*vq2*sin(q2) )
+m2*(2*a1*c2*vq1*sin(q2)+ a1*c2*vq2*sin(q2) ))+ aq2*(m3*(a2^2+
a1*cos(q2)*a2)+m2*(c2^2+ a1*cos(q2)*c2));
T1 =
aq1*(m1*c1^2 + (m3*(2*a1^2 + 4*cos(q2)*a1*a2 + 2*a2^2))/2 + (m2*(2*a1^2
4*cos(q2)*a1*c2
+
2*c2^2))/2)
vq2*((m3*(4*a1*a2*vq1*sin(q2)
2*a1*a2*vq2*sin(q2)))/2
+
(m2*(4*a1*c2*vq1*sin(q2)
2*a1*c2*vq2*sin(q2)))/2) + aq2*((m3*(2*a2^2 + 2*a1*cos(q2)*a2))/2
(m2*(2*c2^2 + 2*a1*cos(q2)*c2))/2)
T2 =
m3*(aq3 - g)
50
+
+
+
+
clear all
clc
syms t
syms L
syms d1 d2 d3
%Algoritmo de LAGRANGE
%
% MODIFICADO POR:
%Paz Pinto,Jose Augusto
% Este algoritmo esta diseado por el Autor del Libro "FUNDAMENTOS DE
% ROBOIICA" el cual fue modificado para que este puede funcionar con un
% manipulador Robotico de 3 GDL.
PARAMETROS DIMENSIONALES
L1=10;
L2=10;
L3=10;
d1=5;
51
MATRICES DE DERIVACIN
Qr=zeros(4);Qr(1,2)=-1;Qr(2,1)=1;
Qd=zeros(4);Qd(1,2)=-1;Qd(2,1)=1;
Qc=zeros(4);Qc(3,4)=-1;
52
53
subplot(3,2,1),plot(Q1),grid,legend(strcat('Q1:',sq1),0)
subplot(3,2,2),hold,
plot(PARES(1,:)),plot(PARES2(1,:),'rx')
grid,title('PAR Q1 Alg.Lagrange'),hold
subplot(3,2,3),plot(Q2),grid,legend(strcat('Q2:',sq2),0)
subplot(3,2,4),hold,
plot(PARES(2,:)),plot(PARES2(2,:),'rx')
grid,title('PAR Q2 Alg.Lagrange'),hold
subplot(3,2,5),plot(Q3),grid,legend(strcat('Q3:',sq3),0)
subplot(3,2,6),hold,
plot(PARES(3,:)),plot(PARES2(3,:),'rx')
grid,title('PAR Q3 Alg.Lagrange'),hold
55
56