You are on page 1of 3

PONTIFICIA UNIVERSIDAD JAVERIANA MAESTRIA EN INGENIERIA ELECTRONICA ROBOTICA MOVIL

TAREA No 1 Matriz de Rotacin y TRANSFORMACION COMPUESTA


Gutirrez A. Edgar Andrs, Associate Member, IEEE

Resumen El presente documento da a conocer la respuesta planteada por parte del autor del documento a la primera tarea de la asignatura Robtica Mvil de la Maestra en Ingeniera Electrnica con nfasis en Sistemas Digitales. La temtica aqu propuesta se basa en hallar la transformacin compuesta para un objeto solido de forma triangular y la creacin de un algoritmo para hallar la matriz de Rotacin Bsica.
Palabras ClaveCompuesta, Matriz, Mvil, Robtica, Rotacin, Transformacin.

I. INTRODUCCIN1

encontrara como anexo basic_rotation.m en el presente correo:


function [vec]=basic_rotation(vector,axis,degree,projection_type) vectorT=vector'; if projection_type == 'xyz-uvw' if axis == 'x' vec=[1 0 0; 0 cos((degree*pi)/180) -sin((degree*pi)/180); 0 sin((degree*pi)/180) cos((degree*pi)/180)]*vectorT; elseif axis == 'y' vec=[cos((degree*pi)/180) 0 sin((degree*pi)/180); 0 1 0; sin((degree*pi)/180) 0 cos((degree*pi)/180)]*vectorT; elseif axis == 'z' vec=[cos((degree*pi)/180) -sin((degree*pi)/180) 0; sin((degree*pi)/180) cos((degree*pi)/180) 0; 0 0 1]*vectorT; end elseif projection_type == 'uvw-xyz' if axis == 'x' vec=[1 0 0; 0 cos((degree*pi)/180) -sin((degree*pi)/180); 0 sin((degree*pi)/180) cos((degree*pi)/180)]'*vectorT; elseif axis == 'y' vec=[cos((degree*pi)/180) 0 sin((degree*pi)/180); 0 1 0; sin((degree*pi)/180) 0 cos((degree*pi)/180)]'*vectorT; elseif axis == 'z' vec=[cos((degree*pi)/180) -sin((degree*pi)/180) 0; sin((degree*pi)/180) cos((degree*pi)/180) 0; 0 0 1]'*vectorT; end end

Continuacin encontrar los enunciados y soluciones planteadas para las asignaciones de tarea de la sesin Fundamentos Matemticos de la asignatura Robtica Mvil. II. ENUNCIADO 1 DE LA TAREA # 1

A. Codificacin funcin en MATLAB Codificar en MATLAB una funcin que pueda encontrar la Matriz de Rotacin que posea la siguiente descripcin: Entradas: Vector: Vector de posicin [x y z] Axis: Eje de rotacin: x-y-z Degree: No. De grados rotar Projection_type: girar xyz uvw / uvw xyz

Teniendo en cuenta las entradas el programa debe tener una estructura de la siguiente forma:
Function [vec] = basic_rotation (vector, axis, degree, projection_type)

1 0 0 cos 0 sin

cos 0 sin 0 cos sin

0 sin cos 1 0 sin 0 cos 0

sin cos 0

0 0 1

C. Ejemplo Como ejemplo se sugiere que se ingrese:


basic_rotation ([1 2 3],'x', 30, 'xyz-uvw')

B. Solucin Algoritmo implementado El algoritmo implementado es el siguiente el cual se

Respuesta en MATLAB
Ans = 1.0000 0.2321 3.5981

1 Manuscrito realizado el 10 de febrero de 2014. El presente documento da a conocer la respuesta planteada por parte del autor del documento a la primera tarea de la asignatura Robtica Mvil de la Maestra en Ingeniera Electrnica con nfasis en Sistemas Digitales. Gutirrez Cceres. Edgar Andrs. Estudiante de la Asignatura Robtica Mvil de la Maestra en Ingeniera Electrnica de la Pontificia Universidad Javeriana Bogot (e-mail: edgar-gutierrez@javeriana.edu.co).

Como Segundo ejemplo se sugiere que se ingrese:


basic_rotation ([1 2 3], 'x', 30, 'uvw-xyz')

PONTIFICIA UNIVERSIDAD JAVERIANA MAESTRIA EN INGENIERIA ELECTRONICA ROBOTICA MOVIL Obteniendo como respuesta en MATLAB:
Ans = 1.0000 3.2321 1.5981

= sin cos , = sin sin , = cos , = 0 Reemplazando: , = 0, = 0, = 0, = 1 cos cos sin = sin cos 0

III. ENUNCIADO 2 DE LA TAREA # 1 Suponga un objeto solido de forma triangular con vrtices indicados en la siguiente Figura.

Ahora bien para hallar los nuevos puntos de las coordenadas se tiene: = ,

cos sin cos sin sin 0

sin 3 0 0 cos 0 0 1

B. Codificando en MATLAB Para ahorrarnos el procedimiento matemtico desarrollo en MATLAB el siguiente Algoritmo: Fig. 1. Vrtices inciales del solido triangular Defina la transformacin compuesta que represente una rotacin de 90 sobre el eje seguida de una rotacin de 90 sobre el eje y seguida de una translacin de 3 unidades en la direccin x. Encuentre los vrtices resultantes del objeto transformado. A. Solucin Para simplificar el ejercicio se debe tener en cuenta:
1. 2. 3. , , ,
function [coordenada]=tarea(vector,phi,theta) vectorT=vector'; coordenada = [cos((phi*pi)/180)*cos((theta*pi)/180) -cos((phi*pi)/180)*sin((theta*pi)/180) sin((phi*pi)/180) 3; sin((theta*pi)/180) cos((theta*pi)/180) 0 0; -sin((phi*pi)/180)*cos((theta*pi)/180) sin((phi*pi)/180)*sin((theta*pi)/180) cos((phi*pi)/180) 0; 0 0 0 1]*vectorT;

se

Adems debemos recordar que la Transformacin Homognea se define como:


, = 0 1

Ingresando cada uno de los puntos coordenados de la Figura 1 en el algoritmo por ejemplo de la siguiente forma:
function [coordenada]=tarea ([1 0 2 1], 90, 90)

Solucionando y hallando:
cos = 0 sin 0 0 1 0 0

Por lo tanto se obtiene:


= 1 0 2 1 = 1 0 2 1 = 1 0 0 1 = 1 0 0 1 = 1 4 0 1 = 1 4 0 1

= , ,

= cos cos , = cos sin , = sin , = 3 = sin , = cos , = 0, = 0

Hallando los coeficientes de la matriz se obtiene:

sin 3 cos 0 0 sin cos 0 0 0 0 1

sin cos 0 0

0 0 1 0

0 0 0 1

Graficando se obtiene:

= 5 1 0 1 = 5 1 0 1 = 3 1 0 1 = 3 1 0 1 = 3 1 4 1 = 3 1 4 1

Fig. 2. Figura Final

PONTIFICIA UNIVERSIDAD JAVERIANA MAESTRIA EN INGENIERIA ELECTRONICA ROBOTICA MOVIL IV. CONCLUSION Se observe la utilidad de la transformada homognea para describir en una ecuacin sencilla de los nuevos puntos de coordenadas que dependen de varias rotaciones y traslaciones que se presente segn sea el ejercicio. REFERENCES
[1] [2] [3] [4] [5] [6] [7] [8] [9] BARRIENTOS A., et al., Fundamentos de Robtica. McGraw Hill, 1998. 2. BORENSTEIN J., Navigating Mobile Robots, A.K. Peters, 1996. 3. FU K.C., Robtica: Control, Deteccin, Visin e Inteligencia, McGraw Hill, 1993. 4. FULLER, J. Robotics : introduction, programming and projects. Maxwell Macmillan, 1991. 5. HARALICK R.M., Computer and Robot Vision, Addison-Wesley, 1993. 6. MURPHY R. Introduction to AI robotics. Cambridge, Massachusetts : MIT, 2002. 7. NIKU, S. An introduction to robotics analysis, systems, applications. Prentice Hall, 2001. 8. OLLERO, A. Robtica. Manipuladores y robots mviles. Alfa Omega Marcombo. 2001. 9. TORRES, F. Robots y Sistemas Sensoriales. Prentice Hall. 2002.

You might also like