Está en la página 1de 7

Cinemtica de brazos robticos simples con Octave/Matlab

Cinemtica de un brazo robot de 3 grados de libertad ( click para ampliar)

Contenido
[ocultar]

1 Introduccin 2 Instalacin 3 Robot 1

3.1 Ejemplo

4 Robot 2

4.1 Ejemplo

5 Robot 2 + 1

5.1 Ejemplo

6 Robot 3

6.1 Ejemplo

7 Robot 3+1

7.1 Ejemplo

8 Descargas 9 Autor 10 Licencia 11 Repositorio SVN 12 Enlaces 13 Noticias

Introduccin
Se muestran ejemplos de cmo resolver la cinemtica directa de tres brazos robticos sencillos, de 1, 2 y 3 grados de libertad usando transformadas homogneas y la herramientaOctave , corriendo en una mquina con Ubuntu Linux (11.10) Los ejemplos se hicieron originalmente para los estudiantes de la asignatura de Control y Programacin de Robots, Ingeniera Industrial, Universidad Carlos III de Madrid (UC3M)

Instalacin
Instalacin de octave en Ubuntu 11.10: sudo apt-get install octave3.2

Descargar el paquete ArmRobotKinematics-v1.2.zip con los ejemplos y descomprimirlo

Robot 1
El primer ejemplo es un robot con un grado de libertad (<math>q_1</math>). Slo es necesario usar una transformacin homognea determinada por una rotacin de <math>q_1</math> grados alrededor del eje <math>x_1</math> y una traslacin de <math>l_1</math> sobre el eje <math>y_1</math>: <math>A_1=Rotx(q_1)Trasy(l_1)</math> donde: <math>Rotx(a)=\left(\begin{array}{cccc} 1 & 0 & 0 & 0\\ 0 & cos(a) & -sin(a) & 0\\ 0 & sin(a) & cos(a) & 0\\ 0 & 0 & 0 & 1\end{array}\right)</math>, <math>Trasy(l_1)=\left(\begin{array}{cccc} 1 & 0 & 0 & 0\\ 0 & 1 & 0 & l_1\\ 0 & 0 & 1 & 0\\ 0 & 0 & 0 & 1\end{array}\right) </math>

Fig 1: Cinemtica del robot 1 (click para ampliar)

Fig 2: Captura de pantalla de la ejecucin de Robot1 en Octave(click para ampliar)

En la Figura 1 se muestra la geometra del robot y la nomenclatura empleada para los sistemas de referencia. En la figura 2 se puede ver un pantallazo de la ejecucin del programa para Octave.

Ejemplo
Arrancar octave y ejecutar el siguiente comando octave:1> robot1(45)

Se le pasa como parmetro el ngulo <math>q_1</math> en grados. El programa calcula los puntos del robot y los dibuja en pantalla.

Robot 2
Este segundo ejemplo es un brazo robot de 2 grados de libertad (<math>q_1</math> y <math>q_2</math>). Las dos matrices de transformacin son: <math>A_1=Rotx(q_1)Trasy(l_1)</math> <math>A_2=Rotx(q_2)Trasy(l_2)</math>

donde: Rotx y Trasy son las mismas matrices del ejemplo 1

Fig 3: Cinemtica del robot 2 (click para ampliar)

Fig 4: Captura de pantalla de la ejecucin de Robot2 en Octave(click para ampliar)

En la Figura 3 se muestra la geometra del robot y la nomenclatura empleada para los sistemas de referencia. En la figura 4 se puede ver un pantallazo de la ejecucin del programa para Octave.

Ejemplo
Arrancar octave y ejecutar el siguiente comando octave:1> robot2(45,-55)

Se le pasa como parmetros los ngulos <math>q_1</math> y <math>q_2</math> en grados. El programa calcula los puntos del robot y los dibuja en pantalla.

Robot 2 + 1
Robot con 2 grados de libertad para posicionamiento del manipulador y 1 para su orientacin. La nueva matriz de transformacin es: <math>A_3=Rotx(q_3)</math>

Fig 4: Cinemtica del robot 2+1 (click para ampliar)

Fig 5: Captura de pantalla de la ejecucin de Robot2+1 en Octave(click para ampliar)

En la Figura 4 se muestra la geometra del robot y la nomenclatura empleada para los sistemas de referencia. En la figura 5 se puede ver un pantallazo de la ejecucin del programa para Octave.

Ejemplo
Arrancar octave y ejecutar el siguiente comando octave:1> robot2_1(45,-55,60);

Se le pasa como parmetros los ngulos <math>q_1</math>, <math>q_2</math> y <math>q_2</math> en grados. El programa calcula los puntos del robot y los dibuja en pantalla.

Robot 3
Este ejemplo es un brazo robot de 3 grados de libertad (<math>q_0</math>, <math>q_1</math> y <math>q_2</math>). Las matrices de transformacin homogneas son: <math>A_0=Rotz(g_0)</math> <math>A_1=Rotx(q_1)Trasy(l_1)</math> <math>A_2=Rotx(q_2)Trasy(l_2)</math>

donde las matrices Rotx y Trasy son las mismas de los ejemplos 1 y 2, y Rotz es: <math>Rotz(a)=\left(\begin{array}{cccc} cos(a) & -sin(a) & 0 & 0\\ sin(a) & cos(a) & 0 & 0\\ 0 & 0 & 1 & 0\\ 0 & 0 & 0 & 1\end{array}\right)</math>

Fig 6: Cinemtica del Robot 3 (click para ampliar)

Fig 7: Captura de pantalla de la ejecucin de Robot3 en Octave (Click para ampliar)

En la Figura 6 se muestra la geometra del robot y la nomenclatura empleada para los sistemas de referencia. En la figura 7 se puede ver un pantallazo de la ejecucin del programa para Octave.

Ejemplo
Arrancar octave y ejecutar el siguiente comando octave:1> robot3(-10,45,-60)

Se le pasa como parmetros los ngulos <math>q_0</math>, <math>q_1</math> y <math>q_2</math> en grados. El programa calcula los puntos del robot y los dibuja en pantalla.

Robot 3+1
Robot de 4 grados de libertad, 3 para posicionamiento del manipulador y 1 para su orientacin. Las matrices de transformacin homogneas son: <math>A_0=Rotz(q_0)</math> <math>A_1=Rotx(q_1)Trasy(l_1)</math> <math>A_2=Rotx(q_2)Trasy(l_2)</math> <math>A_3=Rotx(q_3)</math>

Fig 8: Cinemtica del Robot 3+1 (click para ampliar)

Fig 9: Captura de pantalla de la ejecucin de Robot3+1 en Octave (Click para ampliar)

En la Figura 8 se muestra la geometra del robot y la nomenclatura empleada para los sistemas de referencia. En la figura 9 se puede ver un pantallazo de la ejecucin del programa para Octave.

Ejemplo
Arrancar octave y ejecutar el siguiente comando octave:1> robot3_1(-10,45,-60,60);

Se le pasa como parmetros los ngulos <math>q_0</math>, <math>q_1</math>, <math>q_2</math> y <math>q_3</math> en grados. El programa calcula los puntos del robot y los dibuja en pantalla.