robot tarea 1

Post on 22-Jan-2016

232 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

robotica

TRANSCRIPT

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

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

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

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

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

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

CONTROL INTELIGENTE

3 de septiembre de 2015

Establecimiento del sistema de coordenadas de elementos para un robot KUKA

Página 6

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

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

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

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

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

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

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

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

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

top related