Está en la página 1de 10

CINEMTICA INVERSA Y MODELO DIFERENCIAL

I. OBJETIVO

I.1. Aplicar y resolver problemas de cinemtica inversa del robot y de modelo diferencial,
empleando en la solucin herramientas matemticas y de software.

II. MARCO TEORICO (Desarrollar un breve resumen terico del tema)

II.1. MODELO CINEMTICO INVERSO (Mtodos)

II.2. MODELO DIFERENCIAL (MATRIZ JACOBIANA)

II.2.1. JACOBIANA DIRECTA

II.2.2. JACOBIANA GEOMTRICA

II.2.3. JACOBIANAS INVERSAS

II.2.4. PUNTOS SINGULARES

III. MATERIAL Y EQUIPO

III.1. Una PC con SO Windows XP y MATLAB

IV. PROCEDIMIENTO

IV.1. La Figura 1 representa la estructura de un robot plano de dos grados de libertad,


caracterizados por las variables articulares (q1,q2). Se pide:

IV.1.1. Resolver el Problema Cinemtico Directo para este robot, es decir, obtener
x=f1(q1,q2), y=f2(q1,q2), por mtodos geomtricos y el mtodo de Denavit-Hartenberg.

Por el mtodo geomtrico:

x=q 1+ L cos ( 30 )+ L cos ( 30+ q2 )

y=L sen (30 )+ L sen ( 30+q 2 )

z=0
[ noa ] =rotz ( 30+q 2 )
[ ]
C(q 2+ 30) S (q 2+30) 0
rotz ( q 2+ 30 )= S (q 2+30) C (q 2+30) 0
0 0 1

Por el mtodo de Denavit-Hartenberg:

Articulacin i d i a i i
1 0 q1 + L cos(30) L sen(30) -90
2 q2-60 0 L 0

[ ]
1 0 0 LSen(30)
0 A 1= 0 0 1 0
0 1 0 q 1+ Lcos (30)
0 0 0 1

[ ]
cos(q 260) Sen(q 260) 0 Lcos (q 260)
Sen(q 260) cos (q 260) 0 LSen(q 260)
1 A2=
0 0 1 0
0 0 0 1

[ ]
cos (q 260) Sen(q 260) 0 LSen (30 )+ Lcos (q 260)
0 A 2= 0 0 1 0
Sen (q 260) cos (q 260) 0 q 1+ Lcos ( 30 )LSen (q 260)
0 0 0 1

De acuerdo a los sistemas escogidos mediante el mtodo de Denavit-Hartenberg se tienen las


siguientes ecuaciones:

x=LSen ( 30 ) + Lcos(q 260)

Z =q 1+ Lcos ( 30 )LSen(q 260)


Si comparamos con el mtodo geomtrico la ecuacin obtenida para Z corresponde a la
posicin X y la ecuacin de X corresponde a la posicin Y del extremo final del robot.

A primera vista estas ecuaciones obtenidas son muy distintas de las otras pero no es as, esto
se demuestra a continuacin:

x=LSen ( 30 ) + Lcos ( q 260 )

x=LSen ( 30 ) + LSen(90q 2+ 60)

x=LSen ( 30 ) + L(Sen ( 150 )cos ( q 2 )Sen ( q 2 )cos (150 ))


Por reduccin de ngulos al primer cuadrante tenemos :
x=LSen ( 30 ) + L(Sen ( 30 )cos ( q 2 )+ Sen ( q 2 )cos ( 30 ) )

x=Lsen ( 30 ) + Lsen ( 30+ q 2 ) Esta ecuacin es idntica ala posicin Y obtenida por el mtodo geomtr
Si se realiza un procedimiento similar para la posicin Z se obtiene una ecuacin la misma
ecuacin que se obtuvo mediante el mtodo geomtrico para la posicin X.

IV.1.2. Resolver el Problema Cinemtico Inverso para este robot, es decir, obtener q1=g1(x,y);
q2=g2(x,y), q3=g3(x,y). Tambin por mtodos geomtricos y por Denavit-Hartenberg.

Forma Geomtrica

x=q 1+ L cos ( 30 )+ L cos ( 30+ q2 )

q 1=x 0.866 LLcos ( 30+q 2 )

y=L sen (30 )+ L sen ( 30+q 2 )

y 0.5L
=Sen( 30+ q 2)
L

q 2=se n1 ( y 0.5L
L )30
Denavit-Hartenberg

0 A 2=T =0 A 11 A2
1
( 0 A 1 ) T =1 A2

[ ][ ] [ ]
1 0 0 0.5L Px Lcos (q 260)
0 0 1 0.866L+ q 1 Py = LSen (q 260)
0 1 0 0 Pz 0
0 0 0 1 1 1

Usando la primera y segunda fila de la matriz:

Px0.5L=Lcos (q 260)

q 2=Co s1 ( Px0.5L
L )+ 60
Pz +0.866L+ q 1=LSen (q 260)
q 1=LSen ( q 260 ) + Pz0.866L
Se debe tomar en cuenta que debido a la asignacin de los sistemas de acuerdo al
algoritmo de Denavit-Hartenberg, Px es el movimiento en Y y Pz el movimiento en X.

IV.1.3. Elaborar un programa en MATLAB que permita obtener la cinemtica inversa del
Robot de 2GDL dados los valores de las variables de localizacin espacial.
clc, clear all, close all
L=1;

% q1=2;
% q2=-120;
% x=q1+L*cosd(30)+L*cosd(30+q2)
% y=L*sind(30)+L*sind(30+q2)
x=input('INGRESE VALOR X: ');
y=input('INGRESE VALOR Y: ');
M=(y-0.5*L)/L;
q2_1=asind(M)-30;
q1_1=x-0.866*L-L*cosd(30+q2_1);
q2=acosd((y-0.5*L)/L)+60;
q1=L*sind(q2-60)+x-0.866*L;
disp('SOLUCION 1');
fprintf('q1:');
disp(q1);
fprintf('q2:');
disp(q2);
disp('SOLUCION 2');
fprintf('q1:');
disp(q1_1);
fprintf('q2:');
disp(q2_1);

La solucin del problema cinemtico inverso tiene mltiples soluciones, en este problema solo
se ha escogido dos soluciones, las cuales estn determinadas por las ecuaciones geomtricas y
las ecuaciones obtenidas por las MTH.

IV.1.4. Obtener la expresin de la matriz Jacobiana analtica de este robot.

Hallamos la derivada de y respecto a q1 y q2

y=Lsin ( 30 ) + Lcos ( q260 )

dy
=0
d q1
dy
=Lsin ( q2 )
d q2 3

Hallamos la derivada de z respecto a q1 y q2

z=q 1+ Lcos ( 30 ) Lsin ( q260 )

dz
=1
d 11
dz
d q2 (
=Lcos q2
3 )
La matriz Jacobiana es:

J =
[ ][ ]

0 Lsin ( q2 )
[]
y =
z
3 q1

1 Lcos ( q2 ) q 2

3

[][ ]

L q2sin ( q2 )
y 3
=
z
q1Lq2cos ( q 2 )
3

IV.1.5. Obtener la expresin de la matriz Jacobiana de este robot

IV.1.6. Buscar e interpretar las configuraciones singulares si es que existen.

Para definir un punto existen dos soluciones posibles, algunas de ellas son completamente
imposibles de colocar en el robot, cuando q1=0 por ejemplo.

det ( J )=

Igualamos a 0, y tenemos


q 2=
3

IV.1.7. Calcular la posicin y velocidad del extremo para los siguientes valores: L = 1m;
(q1,q2) = (1 m,/6 rad); (q1,q2) = (0.2 m/seg, /10 rad/seg).

IV.1.8. Elaborar un programa en MATLAB que permita obtener el modelo diferencial del Robot
de 2GDL dados los valores de las velocidades articulares o las velocidades de la localizacin
espacial.

IV.2. Sea el robot SCARA de la figura 2, se pide:


IV.2.1. Resolver el problema cinemtico inverso para este robot. (RESOLVER BASANDOSE EN
LA SOLUCIN DEL PCD SEGN LABORATORIO ANTERIOR) (VERIFICAR LA CORRECTA
ASIGNACIN DE LOS SISTEMAS)

Articulacin i d i a i i
1 q1 L1 L2 0
2 q2 0 L3 0
3 0 -q3 0 0
4 q4 0 0 0

[ ]
cos q 1 Sen q 1 0 L 2cos q 1
Sen q 1 cos q 1 0 L 2Sen q 1
0 A 1=
0 0 1 L1
0 0 0 1

[ ]
cos q 2 Sen q 2 0 L 3cos q 2
Sen q 2 cos q 2 0 L 3Sen q 2
1 A2=
0 0 1 0
0 0 0 1

[ ]
1 0 0 0
0 1 0 0
2 A3=
0 0 1 q 3
0 0 0 1
[ ]
cos q 4 Sen q 4 0 0
Sen q 4 cos q 4 0 0
3 A 4=
0 0 1 0
0 0 0 1

[ ]
cos(q 1+q 2+q 4) Sen(q 1+q 2+ q 4) 0 L 2cos q 1+ L 3cos (q 1+ q 2)
0 A 4= Sen(q 1+q 2+q 4) cos (q 1+q 2+ q 4) 0 L 2Sen q 1+ L 3Sen(q 1+ q 2)
0 0 1 L 1q 3
0 0 0 1

Del PCD

z=L 1q 3
q 3=L1Z
0 A 4=T =0 A11 A 22 A33 A 4
1
( 0 A 1 ) T =1 A22 A33 A4

[ ][ ] [ ]
cos q 1 Sen q 1 0 L 2 Px L 3cos q 2
Sen q 1 cos q 1 0 0 Py L 3Sen q 2
=
0 0 1 L 1 Pz q 3
0 0 0 1 1 1

Sq 1Px +Cq1Py=L3Sq 2

q 2=Se n1 ( Sq 1Px+Cq
L3
1Py
)
IV.2.2. Determinar el modelo diferencial del robot. (TODAS LAS JACOBIANAS)

Las ecuaciones obtenidas del problema cinemtico directo son:

x=l 3 cos ( q1 +q 2 ) +l 2 cos ( q1 )

y=l 3 sen ( q1 +q 2) + l2 sen ( q1 ) z=l 1l 4 + q3

=q1 +q 2+ q3

=180=
=180=

La Jacobiana analtica se obtiene por derivacin directa de estas relaciones,


resultando:
[] [ ]
x
y q1
z q
=J a 2
q3
q4

[ ]
[l 3 sen ( q1 +q 2 ) +l 2 sen ( q 1) ] l 3 sen ( q 1+ q2 ) 0 0
l 3 cos ( q 1+ q2 ) +l 2 cos ( q1 ) l 3 cos ( q 1+ q2 ) 0 0
J a= 0 0 1 0
1 1 0 1
0 0 0 0
0 0 0 0

Si el robot se encuentra en un momento determinado en la posicin dada por:

q1 =30

q 2=45

q3 =0.75 m

q 4=0

Con l 2=l 3=1 m , la localizacin de su extremo variar a una velocidad dada


por:

[][ ][ ] [ ]
x 1.465 0.965 0 0 3.81
y 1.124 0.258 0 0 90 2.17
z 0 0 1 0 90 1
= =
1 1 0 1 1 225
0 0 0 0 45 0
0 0 0 0 0
IV.2.3. Determinar las configuraciones singulares del robot SCARA, si es que existen.

IV.2.4. Elaborar los programas en MATLAB que permitan obtener los modelos cinemtico
inverso y el modelo diferencial dados los datos adecuados.
clc, clear all, close all
L=1;

x=input('INGRESE VALOR X: ');


y=input('INGRESE VALOR Y: ');
M=(y-0.5*L)/L;
q2_1=asind(M)-30;
q1_1=x-0.866*L-L*cosd(30+q2_1);
q2=acosd((y-0.5*L)/L)+60;
q1=L*sind(q2-60)+x-0.866*L;
% q1=input('INGRESE VALOR q1: ');
% q2=input('INGRESE VALOR q2: ');
% disp('SOLUCION 1');
% fprintf('q1:');
% disp(q1);
% fprintf('q2:');
% disp(q2);
% disp('SOLUCION 2');
% fprintf('q1:');
% disp(q1_1);
% fprintf('q2:');
% disp(q2_1);
q1=0:0.1:round(q1);
q2=0:1:round(q2);
a=length(q1);
b=length(q2);
for i=1:a
x=[0 q1(i) q1(i)+L*cosd(30) q1(i)+L*cosd(30)-L*sind(q2(1)-60)];
y=[0 0 L*sind(30) L*sind(30)+L*cosd(q2(1)-60)];
plot(x,y)
axis([-0.5 20 -2 3])
pause(0.01)
end
for i=1:b
x=[0 q1(a) q1(a)+L*cosd(30) q1(a)+L*cosd(30)-L*sind(q2(i)-60)];
y=[0 0 L*sind(30) L*sind(30)+L*cosd(q2(i)-60)];
plot(x,y)
axis([-0.5 20 -2 3])
pause(0.01)
end
q1(a)
q2(b)

IV.2.5. Calcular la posicin y velocidad del extremo del robot estableciendo algunos valores de
prueba.
VI. CONCLUSIONES y OBSERVACIONES

El problema cinemtico inverso se utiliza para conocer los valores angulares a


partir de la posicin del elemento terminal con respecto a la base.
Las jacobianas analticas relaciona las velocidades de las articulaciones con la
velocidad de variaciones de la posicin y orientacin del extremo del robot.
El modelo resuelto presenta incertidumbres con respecto al valor real, y
posiblemente el valor deseado no posee una solucin cerrada en sus valores
angulares.
La jacobiana analtica es ms directa que la jacobiana geomtrica
Dado que el PCD coincide con el modelo real, podemos tomarlo como una
referencia, para el estudio PCI.

También podría gustarte