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