UNIVERSIDAD CATÓLICA DE SANTA MARÍA FACULTAD DE CIENCIAS E INGENIERÍAS FÍSICAS Y FORMALES
ESCUELA PROFESIONAL DE INGENIERÍA MECÁNICA, MECÁNICA ELÉCTRICA Y MECATRÓNICA.
CURSO:
Robótica 1 DOCENTE:
Ing. Juan Carlos Cuadros M. ALUMNOS:
Ccala Molina, Karlos Eduardo Apaza Sucasaca, Diego Daniel Portugal Quinto, Boris
Arequipa, 2018
I. OBJETIVO 1. Resolver el problema cinemático directo de robots articulares por metodologías geométricas y por medio de matrices de transformación homogéneas.
II. MARCO TEORICO II.1. Modelo Cinemático PCD: Métodos Geométrico y Por Cambios de Base (Desarrollar un breve resumen teórico del tema. Presentarlo en el Informe Final)
III. MATERIAL Y EQUIPO 1. Una PC con SO Windows, MATLAB.
IV. PROCEDIMIENTO
IV.1 La figura siguiente representa la estructura de un robot plano de 3 GDL. Resolver el problema cinemático directo de este robot, es decir, obtener x=f1(q1,q2,q3), y=f2(q1,q2,q3) y =f3(q1,q2,q3), donde es la orientación del extremo del robot, por el método geométrico y por MTH.
Análisis del robot articulado X= Y=
L scosin++ sciosn++ + +
ΑLPHA=
Matrices de transformación homogénea
1 = 1 cosq1 sinq1 0 1 = sinq001 cos00 q1 100 010 1 = 2 cosq2 sinq2 0 1 = sinq002 cos00 q2 010 010 1 => 3 cosq3 sinq3 0 0 1 = sinq003 cos00q3 010 001 1 1 ∗1 ∗1 =
cos sinqq11 scosinqq11 00 0∗cossinqq22 scosinqq22 00 0∗cossinqq33 scosinqq33 00 00 00 00 10 01 00 00 10 01 00 00 10 01 1s inq1cosq2sinq3 sinq1cosq3 sinq1cosq2cosq3 +sinq1sinq3 0 1 = sinq1cosq2cosq3sinq1sinq300 s00inq1cosq2sinq3sinq1cosq3 0 102sin01q1 Resolución por MatLab de MTH %METODO MATRICES MTH clc clear all L1=input('Longitud de primer brazo: '); L2=input('Longitud de segundo brazo: ' ); q1=input('Angulo de giro de primera articulacion: ' );
q2=input('Angulo de giro de segunda articulacion: ' ); q3=input('Angulo de giro de tercera articulacion: ' ); x=L1*cosd(q1)+L2*cosd(q2+q1); y=L1*sind(q1)+L2*sind(q2+q1); MTH1=[cosd(q1) -sind(q1) 0 L1*cosd(q1);sind(q1) cosd(q1) 0 L1*sind(q1);0 0 1 0;0 0 0 1]; MTH2=[cosd(q2) -sind(q2) 0 L2*cosd(q2);sind(q2) cosd(q2) 0 L2*sind(q2);0 0 1 0;0 0 0 1]; MTH3=[cosd(q3) -sind(q3) 0 0;sind(q3) cosd(q3) 0 0;0 0 1 0;0 0 0 1]; MTHT=MTH1*MTH2*MTH3; VUVW=[0;0;0;1]; VXYZ=MTHT*VUVW a=q1+q2+q3; M=[x;y;a]
Resolución por MatLab de Método Geométrico %METODO GEOMETRICO clc clear all L1=input('Longitud de primer brazo: '); L2=input('Longitud de segundo brazo: ' ); q1=input('Angulo de giro de primera articulacion: ' ); q2=input('Angulo de giro de segunda articulacion: ' ); q3=input('Angulo de giro de tercera articulacion: ' ); x=L1*cosd(q1)+L2*cosd(q2); y=L1*sind(q1)+L2*sind(q2); a=q1+q2+q3; M=[x;y;a]
IV.2 Se tiene un robot RR en 2 dimensiones como el de la figura. Resuelva el PCD, usando MTH. Si además se tiene una cámara relacionada con el sistema de referencia base mediante la matriz T , determinar (y razonar) los valores de las variables del robot 1 y 2 para alcanzar un objeto detectado por la cámara en el punto r = (0.25, 0.25, 0), con L1 = L2 = 1. RO
CA
-Posición detectada por la cámara
=1 []
CA
=10 01 00 110.0.2255 1 00 00 10 01 01 =1.25 ; =1.25; =0 -Posicionamos el extremo del robot mediante MTH al punto encontrado MTH está dada por:
cos 1 s i n 1 cos 2 s i n 2 0 0 = sin 001 cos00 1 100 001 ∗ sin 002 cos00 2 010 001 ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
-ϴ1=ϴ2=0 en condiciones iniciales
=[] =ssinin 22∗cos∗sin 11+si+cosn 12∗cos∗cos 21 ssiinn 22 ∗cos∗sin 11+cossin 12 ∗cos∗cos 21 00 2 ∗cossin 112+1 ∗ 1 +0 2 0 0 1 0 0 ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
1 0 0 0 1 1 1.1.2255=ssinin 22∗cos∗sin 11+si+cosn 12∗cos∗cos 21 ssiinn 22 ∗cos∗sin 11 +cossin 12 ∗cos∗cos 21 00 cossin11+1 ∗ 20 00 00 10 01 01 01 ϴ
ϴ
Incógnitas
θ1θ2=17.=55.1717
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
Tenemos
L scosin 11++ sciosn 11++ 22 1∗cos 1 + 1∗ cos 1 + 2 1∗si n 1+ 1∗ sin 1 + 2 θ1θ2=17.=55.1717 X =>
ϴ
Y =>
ϴ
ϴ
ϴ
ϴ
ϴ
Y la posición que de desea encontrar es x=1.25; y=1.25 1.25 = 1.25 =
ϴ
ϴ
ϴ
ϴ
ϴ
ϴ
3 Dibujar el esquema (según el libro de Barrientos) del robot entregado por el docente y resolver el PCD usando el método geométrico y él de las MTH. Determinar los límites mínimo y máximo de los actuadores y dibujar diferentes localizaciones espaciales para diferentes valores de las variables articulares, dentro de los límites encontrados. De acuerdo a la determinación de los límites de los actuadores, delimitar y esquematizar el volumen de trabajo del robot. Ejemplo:
==cossin++scosin++ =tanh− √ + tanh− ( +si cosn) + √ − =tanh cos
Trabajo:
==∗cos cos + cos + =∗sin = + ∗ sin + sin +
∗ ∗ ∗∗ =
)*
T 3=0T 1*1T 2*2T 3
0
T 1=
0
T 2=
1
)
)
∗∗ ∗ ∗ ∗ ∗ ∗ )
T 3=
2
)*
0T 3=
)*
)
Matlab:
clear all, clc, close all; A=input('ingrese el L1:'' \n');%se escribe L1 B=input('ingrese el L2:'' \n');%se escribe L1 C=input('ingrese el L3:'' \n');%se escribe L1 L1=A; L2=B; L3=C; figure(4) for q1=0:0.2:pi%q1 por ser considerado un servomotor tiene como maximo un giro de 180° for q2=0:0.2:pi%q2 por ser considerado un servomotor tiene como maximo un giro de 180° for q3=0:0.2:pi%q3 por ser considerado un servomotor tiene como maximo un giro de 180° r=L2*cos(q2)+L3*cos(q2+q3); x=r*cos(q1); y=r*sin(q1); z=L1+L2*sin(q2)+L3*sin(q2+q3); plot3(x,y,z, '.b') hold on end end end xlabel(' x '); ylabel(' y '); zlabel(' z '); title('Volumen de trabajo del robot' ) grid on
4 Dibujar el esquema (según el libro de Barrientos) del robot SCARA de 3 GDL y resolver el PCD usando el método geométrico y él de las MTH. Para diferentes valores de las variables articulares esquematizar diferentes localizaciones espaciales. Esquematizar el volumen de trabajo del robot y verificar que las localizaciones espaciales estén contenidas en el volumen de trabajo.
Cinemática directa:
ℎ == + + 2cos 180° 2cos = +ℎ2 +ℎhcos =cos− 2ℎ == ℎcos + ℎsi n + =
Matlab: clear all, clc, close all; A=input('ingrese el L1:'' \n');%se escribe L1 B=input('ingrese el L2:'' \n');%se escribe L1
C=input('ingrese el L3:'' \n');%se escribe L1 L1=A; L2=B; L3=C; figure(4) for q1=0:0.2:pi%q1 por ser considerado un servomotor tiene como maximo un giro de 180° for q2=0:0.2:pi%q2 por ser considerado un servomotor tiene como maximo un giro de 180° for q3=0:0.2:pi%q3 por ser considerado un servomotor tiene como maximo un giro de 180° r=L2*cos(q2)+L3*cos(q2+q3); x=r*cos(q1); y=r*sin(q1); z=L1+L2*sin(q2)+L3*sin(q2+q3); plot3(x,y,z, '.b') hold on end end end xlabel(' x '); ylabel(' y '); zlabel(' z '); title('Volumen de trabajo del robot' ) grid on
V. CUESTIONARIO FINAL V.1. Realice todo el procedimiento anteriormente descrito y presente en un informe el desarrollo de todos los pasos indicados.
VI. CONCLUSIONES y OBSERVACIONES
Para encontrar el modelo cinemático directa de un robot, se utilizan los métodos geométrico y los métodos basados en cambios de base MTH.
Para usar el método de MTH se tiene que tomar en cuenta el orden al multiplicar las matrices de rotación o traslación. Sino podría darnos datos erróneos y no podríamos hacer bien el movimiento del robot.
El extremo del robot es el punto objetivo en el cual se basa todo el cálculo, ya sea utilizando el método geométrico o el método por matrices de rotación.