robot tarea 1

18
CONTROL INTELIGENTE 3 de septiembre de 2015 Página 0 UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE ING.ELÉCTRONICA Profesor: Ing. Rodríguez Bustinza Ricardo Curso: ROBOTICA Tarea Nº 1 Alumnos: 1. Infantes Cayo Corina 1113220699 2. Guzman Alvitrez Cesar TRASLACION Y ROTACION 2015-B

Upload: roger-alex-gutierrez-leon

Post on 22-Jan-2016

232 views

Category:

Documents


2 download

DESCRIPTION

robotica

TRANSCRIPT

Page 1: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

Página 0

UNIVERSIDAD NACIONAL DEL CALLAOFACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA

ESCUELA PROFESIONAL DE ING.ELÉCTRONICA

Profesor: Ing. Rodríguez Bustinza Ricardo

Curso: ROBOTICA

Tarea Nº 1

Alumnos:

1. Infantes Cayo Corina 1113220699

2. Guzman Alvitrez Cesar

TRASLACION Y ROTACION

2015-B

Page 2: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

PROBLEMA 1:

Ha sido preparada una estación de trabajo de un robot con una cámara de TV. La cámara puede ver el origen del sistema de coordenadas de la base donde esta unido un robot de 6 articulaciones. Puede ver también el centro de un objeto (supuesto que es un cubo) que va a ser manipulado por el robot.

Fig. 1

Si se ha establecido un sistema de coordenadas local en el centro de cubo, este pbjeto como se ve en la cámara se puede representar por una matriz de transformación homogénea T1. Si el origen de coordenadas de la base tal como lo ve la cámara se puede expresar también mediante una matriz de transformación homogénea T2 siendo.

Página 1

Page 3: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

a) ¿Cuál es la posición de centro del cubo respecto al sistema de coordenadas de la base?

SOLUCION:

Para encontrar la utilizamos la regla del producto en cadena:

Mediante Matlab realizamos la operación dada y obtenemos:

Esto quiere decir que el cubo está en la posición del sistema de coordenadas de la base. Sus ejes x,y,z son paralelos a los ejes –y ,x y z del sistema de coordenadas de la base.

Código comentado._

Figura obtenida._

Página 2

clear all; close all; clc% Estacion de trabajo de un robotw=eye(3);%matriz de transformacion del centro de cubo.T1=[ 0 1 0 1 1 0 0 10 0 0 -1 9 0 0 0 1]; %matriz de transformacion del origen del %sitema de coordenadas de la base. T2=[ 1 0 0 -10 0 -1 0 20 0 0 -1 10 0 0 0 1]; disp('coordenadas respecto al sistema de la base') %Usamos la regla del producto en cadena Tf=(T2)^-1*T1

Fig. 2

Page 4: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

Fig. 3

b) Suponer que el cubo está dentro del alcance del brazo. ¿Cuál es la matriz de orientación [n , s , a ] si se necesita que la pinza(o los dedos) de la mano se alineen con el eje y del objeto y al mismo tiempo coja el objeto desde lo alto?

SOLUCION:

Para hallar utilzamos la siguiente matriz:

Donde p la tenemos de la solución anterior .

De la figura inicial se requiere tener el vector de aproximación a para alinear con la dirección negativa del eje OZ del sistema

de coordenadas de la base entonces , el vector s se

puede alinear en una o en otra dirección del eje y de ,

entonce y el vector n se puede obtener del producto vectorial de s y a.

Por lo tanto la matriz es:

o

Página 3

Page 5: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

Código comentado._

Figura obtenida._

Fig. 5

PROBLEMA 2:

Página 4

clear all; close all; clc% Estacion de trabajo de un robotw=eye(3);%matriz de transformacion del centro de cubo.T1=[ 0 1 0 1 1 0 0 10 0 0 -1 9 0 0 0 1]; %matriz de transformacion del origen del %sitema de coordenadas de la base. T2=[ 1 0 0 -10 0 -1 0 20 0 0 -1 10 0 0 0 1]; disp('coordenadas respecto al sistema de la base') %Usamos la regla del producto en cadena Tf=(T2)^-1*T1 a=[0;0;-1]; s=[-1;0;0]; %comando cross para hallar el producto vectorial z=cross(a,s)

Fig. 4

Page 6: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

PROBLEMA 3:

PROBLEMA 4:

Piden describir los frames espaciales e implementar una posible matriz de transformación homogénea para la localización. Considere que la tenaza (efecto final) solo puede realizar un trazado vertical de longitud finita. Asuma las consideraciones que crea más conveniente.

Solución:

Parte Analítica:

Tenemos un robot manipulador KUKA de 6 grados de libertad:

El robot manipulador KUKA de 6DOF consiste en una secuencia de cuerpos rigidos, llamados elementos, conectados mediante articulaciones prismáticas o de revolución. Cada par articulación-elemento constituye un grado de libertad.

Página 5

Page 7: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

Establecimiento del sistema de coordenadas de elementos para un robot KUKA

Página 6

Page 8: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

Ahora implementaremos una matriz de transformación homogénea para la localización.

Primero hacemos la asignación del sistema de coordenadas de los elementos

Dado un brazo con 6 grados de libertad, este algoritmo asigna un sistema de coordenadas ortonormal a cada elemento del brazo. Las relaciones entre elementos adyacentes se pueden representar mediante una matriz de transformación homogénea 4 x 4.

Una vez establecido el sistema de coordenadas D-H para cada elemento, se puede desarrollar fácilmente una matriz de transformación homogénea que relacione el sistema de coordenadas i-esimo con el sistema de coordenadas (i-1)-esimo.

Realizaremos las siguientes transformaciones sucesivas:

Cada una de estas cuatro operaciones se puede expresar mediante una matriz rotación-translacion homogénea básica y el producto de estas cuatro matrices de transdormacion homogéneas básicas da

una matriz de transformación homogénea compuesta , conocida como la matriz de transformación D-H para sistemas de coordenadas adyacentes i e i-1. Asi:

Página 7

Page 9: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

Utilizando la ecuación:

Se puede encontrar la inversa de esa transformación como:

Para una articulación prismática, la variable articulación es

di, mientras que αi, ai, 𝝦i son constantes. En este caso, (i-1)Ai se hace

y su inversa es

Página 8

Page 10: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

La matriz homogénea que especifica la localización del sistema de coordenadas i-esimo con respecto al sistema de coordenadas de la base es el producto en cadena de matrices de

transformación de coordenadas sucesivas y se expresa como

Página 9

Page 11: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

Matrices de transformación de coordenadas de los elementos del robot KUKA

Donde Ci =cosOi; Si=senOi; Cij=cos(Oi+Oj); Sij=sen(Oi+Oj)

Donde:

[xi, yi,zi]=matriz de orientación del sistema de coordenadas i-esimo establecido en el elemento i con respecto al sistema de coordenadas de la base. Es la matriz particionada superior

izquierda 3 x 3 de .

Especificamente para i=6 , obtendremos la matriz T, que especifica la posición y orientación del punto final del manipulador con respecto al sistema de coordenadas de la base, tambien se llama la “matriz del brazo”:

Para un robot KUKA T1 se determina como:

Y la matriz T2 se encuentra que es

Donde Cij=cos(Oi+Oj) y Sij=sen(Oi+Oj)

Página 10

Page 12: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

La matriz del brazo T para el robot KUKA es:

Donde:

Como comprobación, si O1=90°, O2=0°, O3=90°, O4=0°, O5=0°, O6=0°, entonces la matriz T es:

Que esta de acuerdo con el sistema de coordenadas establecido en la figura del robot KUKA.

Página 11

Page 13: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

CODIGO EN MATLAB:

clear all;close all;clc%describiendo los parametrosW=eye(4);%frame mundial matriz identidad 4X4Rx=rotx(9*pi/2);%rotacion de 90º con respecto al eje ZTx=[Rx zeros(3,1);zeros(1,3) 1];%Matriz de transformacion%homogenea del eje ZRy=roty(-pi/2);Ty=[Ry zeros(3,1); zeros(1,3) 1];%matriz de transf. homogeneaTz=transl([4 0 0]);%translacion en eje x en 4 unidades%ingresamos los puntos del dato de la grafica%rotaciones paso a pasoO=[1 -1 -1 1 1 -1 0 0 0 0 4 4 0 0 2 2 0 0 1 1 1 1 1 1];T1=Tx*O;T2=Ty*T1;T3=Tz*T2; %T1=Ty*Tz;%primero se traslada Z luego Y%T2= Tx*T1;%T3=T2*O; %2grafica del frame figuresubplot(221)plot3(0,0,0,'sb'),hold,grid onplot3(O(1),O(2),O(3),'sr');plot3(O(5),O(6),O(7),'sr');plot3(O(9),O(10),O(11),'sr');plot3(O(13),O(14),O(15),'sr');plot3(O(17),O(18),O(19),'sr');plot3(O(21),O(22),O(23),'sr'); axis([-5 5 -5 5 -5 5]);%(x1,y1,z1) (x2, y2,z2)trplot(W,'frame','A','color','black'),hold onplot3([O(1,1) O(1,2)],[O(2,1) O(2,2)],[O(3,1) O(3,2)],'k','linewidth',1)plot3([O(1,2) O(1,3)],[O(2,2) O(2,3)],[O(3,2) O(3,3)],'k','linewidth',1)plot3([O(1,3) O(1,4)],[O(2,3) O(2,4)],[O(3,3) O(3,4)],'k','linewidth',1)plot3([O(1,4) O(1,1)],[O(2,4) O(2,1)],[O(3,4) O(3,1)],'k','linewidth',1)plot3([O(1,1) O(1,5)],[O(2,1) O(2,5)],[O(3,1) O(3,5)],'k','linewidth',1)plot3([O(1,5) O(1,6)],[O(2,5) O(2,6)],[O(3,5) O(3,6)],'k','linewidth',1)plot3([O(1,6) O(1,2)],[O(2,6) O(2,2)],[O(3,6) O(3,2)],'k','linewidth',1)plot3([O(1,5) O(1,4)],[O(2,5) O(2,4)],[O(3,5) O(3,4)],'k','linewidth',1)plot3([O(1,6) O(1,3)],[O(2,6) O(2,3)],[O(3,6) O(3,3)],'k','linewidth',1)view (154,26)

Página 12

Page 14: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

%3 giro en eje Zsubplot(222)O=T1-1;plot3(0,0,0,'sb'),hold,grid onplot3(O(1),O(2),O(3),'sr');plot3(O(5),O(6),O(7),'sr');plot3(O(9),O(10),O(11),'sr');plot3(O(13),O(14),O(15),'sr');plot3(O(17),O(18),O(19),'sr');plot3(O(21),O(22),O(23),'sr'); trplot(W,'frame','A','color','black'),hold onplot3([O(1,1) O(1,2)],[O(2,1) O(2,2)],[O(3,1) O(3,2)],'k','linewidth',1)plot3([O(1,2) O(1,3)],[O(2,2) O(2,3)],[O(3,2) O(3,3)],'k','linewidth',1)plot3([O(1,3) O(1,4)],[O(2,3) O(2,4)],[O(3,3) O(3,4)],'k','linewidth',1)plot3([O(1,4) O(1,1)],[O(2,4) O(2,1)],[O(3,4) O(3,1)],'k','linewidth',1)plot3([O(1,1) O(1,5)],[O(2,1) O(2,5)],[O(3,1) O(3,5)],'k','linewidth',1)plot3([O(1,5) O(1,6)],[O(2,5) O(2,6)],[O(3,5) O(3,6)],'k','linewidth',1)plot3([O(1,6) O(1,2)],[O(2,6) O(2,2)],[O(3,6) O(3,2)],'k','linewidth',1)plot3([O(1,5) O(1,4)],[O(2,5) O(2,4)],[O(3,5) O(3,4)],'k','linewidth',1)plot3([O(1,6) O(1,3)],[O(2,6) O(2,3)],[O(3,6) O(3,3)],'k','linewidth',1) axis([-5 5 -5 5 -5 5]);view (154,26) %4 rotacion en el eje Ysubplot(2,2,3)O=T2;plot3(0,0,0,'sb'),hold,grid onplot3(O(1),O(2),O(3),'sr');plot3(O(5),O(6),O(7),'sr');plot3(O(9),O(10),O(11),'sr');plot3(O(13),O(14),O(15),'sr');plot3(O(17),O(18),O(19),'sr');plot3(O(21),O(22),O(23),'sr'); trplot(W,'frame','A','color','black'),hold onplot3([O(1,1) O(1,2)],[O(2,1) O(2,2)],[O(3,1) O(3,2)],'k','linewidth',1)plot3([O(1,2) O(1,3)],[O(2,2) O(2,3)],[O(3,2) O(3,3)],'k','linewidth',1)plot3([O(1,3) O(1,4)],[O(2,3) O(2,4)],[O(3,3) O(3,4)],'k','linewidth',1)plot3([O(1,4) O(1,1)],[O(2,4) O(2,1)],[O(3,4) O(3,1)],'k','linewidth',1)plot3([O(1,1) O(1,5)],[O(2,1) O(2,5)],[O(3,1) O(3,5)],'k','linewidth',1)

Página 13

Page 15: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

plot3([O(1,5) O(1,6)],[O(2,5) O(2,6)],[O(3,5) O(3,6)],'k','linewidth',1)plot3([O(1,6) O(1,2)],[O(2,6) O(2,2)],[O(3,6) O(3,2)],'k','linewidth',1)plot3([O(1,5) O(1,4)],[O(2,5) O(2,4)],[O(3,5) O(3,4)],'k','linewidth',1)plot3([O(1,6) O(1,3)],[O(2,6) O(2,3)],[O(3,6) O(3,3)],'k','linewidth',1) axis([-5 5 -5 5 -5 5]);view (154,26)%4 translacion en el eje Xsubplot(2,2,4)O=T3;plot3(0,0,0,'sb'),hold,grid onplot3(O(1),O(2),O(3),'sr');plot3(O(5),O(6),O(7),'sr');plot3(O(9),O(10),O(11),'sr');plot3(O(13),O(14),O(15),'sr');plot3(O(17),O(18),O(19),'sr');plot3(O(21),O(22),O(23),'sr'); trplot(W,'frame','A','color','black'),hold onplot3([O(1,1) O(1,2)],[O(2,1) O(2,2)],[O(3,1) O(3,2)],'k','linewidth',1)plot3([O(1,2) O(1,3)],[O(2,2) O(2,3)],[O(3,2) O(3,3)],'k','linewidth',1)plot3([O(1,3) O(1,4)],[O(2,3) O(2,4)],[O(3,3) O(3,4)],'k','linewidth',1)plot3([O(1,4) O(1,1)],[O(2,4) O(2,1)],[O(3,4) O(3,1)],'k','linewidth',1)plot3([O(1,1) O(1,5)],[O(2,1) O(2,5)],[O(3,1) O(3,5)],'k','linewidth',1)plot3([O(1,5) O(1,6)],[O(2,5) O(2,6)],[O(3,5) O(3,6)],'k','linewidth',1)plot3([O(1,6) O(1,2)],[O(2,6) O(2,2)],[O(3,6) O(3,2)],'k','linewidth',1)plot3([O(1,5) O(1,4)],[O(2,5) O(2,4)],[O(3,5) O(3,4)],'k','linewidth',1)plot3([O(1,6) O(1,3)],[O(2,6) O(2,3)],[O(3,6) O(3,3)],'k','linewidth',1) axis([-5 5 -5 5 -5 5]);view (154,26)

Conclusiones:

El comando cross es útil para hallar el producto vectorial de dos vectores.

Con la propiedad de producto en cadena se puede hallar de frente la matriz de transformación a partir de otras.

Página 14

Page 16: Robot Tarea 1

CONTROL INTELIGENTE

3 de septiembre de 2015

Se aprendió a utilizar la traslación y rotación en un gráfico prismático.

Página 15