martes, 8 de enero de 2013

Cinemática Directa e Inversa de un BRAZO ROBÓTICO CON MATLAB Y LEGO MINDSTORMS




1.     OBJETIVOS:

1.1.OBJETIVO GENERAL:

*     Realizar el análisis teórico del brazo robótico de dos grados de libertad, cinemática directa y cinemática inversa, y luego implementar físicamente con el kit de LEGO Mindstorm.

1.2.OBJETIVOS ESPECIFICOS:

*     Obtener el rango de funcionamiento de cada uno de los motores, trabajando el primer motor de 0° a 90° y el segundo de 0° a 180°.

*     Obtener el valor de en las tres trayectorias dadas por los puntos A y B a través de  la cinemática inversa.

2.     MARCO TEORICO:

2.1.CINEMÁTICA DIRECTA

La cinemática directa permite conocer cuál es la posición y orientación que adopta el extremo del robot cuando cada una de las variables que fijan la posición u orientación de sus articulaciones toma valores determinados.
También podremos mencionar que no es de interés saber las causas que se presentan en el movimiento de los motores. Si no, únicamente se toma en cuenta la descripción del mismo.
Como ejemplo se muestra en la figura 1, un brazo de dos grados de libertad.


Figura1. Ejemplo de la cinemática directa de un BR de dos grados de libertad.

         El análisis general que se realiza en la cinemática Directa es la siguiente:


2.2.CINEMÁTICA INVERSA
                                                                     
La cinemática inversa consiste en encontrar los valores que deben adoptar las coordenadas articulares del robot para que su extremo se posicione y oriente según una determinada localización espacial.

A diferencia de la cinemática Directa, el análisis general que se realiza es la siguiente: 
 




2.3.MOTOR NXT:

Este motor es específico del NXT, incluye un codificador de rotación, volviendo al NXT la posición del eje con  gran resolución. A causa del conector especial de este motor (el tipo de enchufe no estándar telefónico), requiere de un adaptador de cable para funcionar con fuentes de 9V. Velocidad de rotación lenta, reduciendo al mínimo la necesidad de  tren de engranaje externo.
2.4.CARACTERISTICAS DE MOTOR NXT:

2.4.1.     CARACTERISTICAS EN VACIO:

Condiciones de prueba: el motor es impulsado por una fuente de energía variable, regulada. Un amperímetro mide la corriente que fluye por el motor, un voltímetro supervisa la tensión a través. La velocidad de rotación es medida por un RCX equipado con un sensor ligero (de luz), mirando un cilindro mitad-blanco/mitad-negro.

2.4.2.     CARACTERISTICAS EN PARADO:

El momento de rotación en parado es medido para el peso máximo que puede ser levantado por la máquina. La medida del momento de rotación es muy imprecisa.




TABLA 1


CARACTERÍSTICAS DEL MOTOR NXT
Peso del motor
80g
CARACTERISTICA EN VACIO (Sin carga)
Velocidad de rotación
170 r.p.m
Corriente sin carga
60mA
CARACTERISTICAS EN PARADO
Torque en parado
50 N.cm
Corriente parado
2A

TABLA 1. En la tabla 1 podemos observar las características del motor NXT en vacío y en parado.
El motor NXT también está protegido por un termistor (Raychem RXE065 o Arroyos MF-R065). Esto significa que la corriente por el resulta muy alta, entorno a los 2A la cual solo  puede ser mantenida durante unos segundos.

2.4.3.     CARACTERISTICAS EN CARGA:

Utilizando amperímetro y  voltímetro para medir las condiciones del sistema en carga, vemos que el poder mecánico entregado por el motor es evaluado a partir del tiempo que tarda en levantar un peso una determinada altura (5 vueltas de cilindro – las dos primeras vueltas no son contadas para eliminar la aceleración inicial). El momento de rotación aplicado es obtenido a partir del radio del cilindro y del peso.
El cilindro se encuentra colocado directamente sobre el eje del motor.




TABLA 2


Torque o momento de rotación

Velocidad de rotación

Corriente

Poder mecánico

Poder eléctrico

Rendimiento
4.5 V
16.7 N.cm
33 rpm
0.6 A
0.58 W
2.7 W
21.4%
7 V
16.7 N.cm
82rpm
0.55 A
1.44 W
3.85 W
37.3%
9 V
16.7 N.cm
117rpm
0.55 A
2.03 W
4.95 W
41%
12 V
16.7 N.cm
177rpm
0.58 A
3.10 W
6.96 W
44.5%

TABLA2. En la tabla 2 podemos observar las características del motor NXT con carga.




2.4.4.     MOTO NXT VISTA INTERNA:

         



   
     
Figura 2 . Motor NXT – Vista Interna

3.     ESTRUCTURA MECÁNICA

La estructura mecánica que se ha elegido para este experimento tenía que cumplir dos importantes restricciones:
a  Evitar el peso en sus articulaciones (Hacer uso de mecanismos).
a  El largo de sus eslabones ser lo más preciso posible con respecto a los valores iniciales que se han planteado (Para minimizar el error en relación a los datos obtenidos por el programa y experimentales).
Por ello, su estructura final fue el siguiente que se observa en la figura 3.

Figura 3. Estructura Mecánica del Brazo Robótico

Como se puede observar en la figura 3, se logra minimizar el peso que se encontraba en el motor 2 al  no posicionar el motor NXT en el punto 2, tal y como se observa en la figura siguiente (4).



Figura 4. Esquema del BR ideal.


                                                       
Figura 5. Pieza – Barra

En la figura 5 se puede observar una de las piezas principales utilizadas, esta será  considerada como el eslabón 1, el cual debe tener 10 cm de largo. Se utilizó una barra de 15 orificios, el cual mide 11.9 cm. Los 2centímetros restantes son utilizados para que esté muy fijo en el motor NXT (MOTOR 1).
El MOTOR 2, no puede estar en la articulación 2, puesto que existiría mucho peso, y  el motor 1 realizaría mucho esfuerzo para levantarlo. Por ello, ambos motores deben estar a una misma altura (óptimo).
Para la transmisión de movimiento que debe realizar el motor 2, estando a una altura igual que el motor 1, debe existir un mecanismo para que esa transmisión llegue a la articulación 2.  Ese mecanismo es el que se presenta en la figura 6.








Figura 6. Transmisión de Movimiento circular por medio de engranajes.

Cabe mencionar, que estos engranajes deben estar sujetos con ejes (figura 7.a.) en vez de utilizar los conectores (figura 7.b.). Puesto que el segundo presenta mucha fricción en la transmisión de movimiento. Mientras que con la primera pieza mencionada no existe ello. Y el error que llegaría a presentar el Brazo Robótico al experimentar trayectorias  sería mínimo.





(a)                                                                                     
Figura 7. Piezas para sujetar los engranajes con la barra.

A continuación se observará la transmisión de engranajes que ya se mostró anteriormente, en el Brazo Robótico montado con LEGO NXT.



Figura 8. Vista real  del BR – Conexión de engranajes.


El segundo eslabón teóricamente debe medir 7 cm, sin embargo la pieza LEGO más cercana a esta se diferencia por decimales: 7.04 cm.


Figura 9. Pieza – Eslabón 2 del Brazo Robótico.

Finalmente es necesario mencionar que el mecanismo utilizado para la estructura del Brazo Robótico  es óptimo. Puesto que las conexiones que se hicieron con los engranajes sirven, aparte de transmitir el movimiento realizado por el motor 2,  para mantener el ángulo inicial que el eslabón tiene consigo.  Gráficamente se observará a continuación:




(a)



(b)

Figura 10. Motor 1 en movimiento, Motor 2 sin movimiento.

Tal y como se observa, el motor 1 avanza aproximadamente 90° (b) y el motor 2 no tiene ningún avance. Sin embargo, el motor 1 no altera el ángulo de inicio del eslabón 2. El cual se observa claramente que sigue en la misma dirección y con el mismo grado de ángulo - (a) y (b).


4.     ANALISIS DE LA CINEMATICA DIRECTA:
                  Primeramente realizamos el análisis de la cinemática directa[1] para encontrar el rango de      operación de cada motor.
                  Para realizar el análisis de la cinemática directa realizamos la programación de la misma en                  la interfaz de Matlab tomando las siguientes consideraciones:
                                                      






GRÁFICA 1
En la gráfica 1 podemos observar el lugar de trabajo de los motores 1 y 2 obtenidos a través de la programación de la cinemática directa.


5.     ANALISIS DE LA CINEMÁTICA INVERSA:

Para el análisis de la cinemática inversa debemos especificar las siguientes consideraciones:

Se dividió el espacio en 25 puntos, por tanto a continuación se presenta el programa para cada trayectoria (diagonal, transversal y longitudinal):
5.1.PRIMERA TRAYECTORIA: DIAGONAL
Recordemos que el primer punto es:
Con el programa realizado en MATLAB[2], tendremos la siguiente gráfica:
Entonces el programa:
GRAFICA 2
En la grafica 2 podemos observar la línea formada por los dos primeros puntos y el punto medio, para el cual se hallan los ángulos a través de la cinemática inversa.
A partir del análisis de cinemática inversa obtuvimos los ángulos respectivos para cada punto. Más adelante se observarán dichos valores (tabla 3)

5.2.SEGUNDA TRAYECTORIA: HORIZONTAL [3]

Recordemos que el segundo  punto es:



GRÁFICA 3

En la grafica 3 podemos observar la línea formada por los dos segundos puntos y el punto medio, para el cual se hallan los ángulos a través de la cinemática inversa. En este caso se trata de una línea horizontal.

A partir del análisis de cinemática inversa obtuvimos los ángulos respectivos para cada punto, los cuales se mostrarán más adelante en la tabla 4.


5.3.TERCERA TRAYECTORIA: VERTICAL
Recordemos que el tercer  punto es:
Y con ayuda de su programa[4] se obtendrá:
GRÁFICA 4
En la grafica 4 podemos observar la línea formada por los dos últimos puntos y el punto medio, para el cual se hallan los ángulos a través de la cinemática inversa. En este caso se trata de una línea completamente vertical.

A partir del análisis de cinemática inversa obtuvimos los ángulos respectivos para cada punto, las cuales se observarán en la tabla 5.


Para poder observar el programa en MATLAB y las tablas  con los ángulos para cada punto, diríjase al siguiente LINK (también puede verlo en la pestaña TÓPICOS DE INGENIERÍA MECATRÓNICA) para una vista previa o DESCARGA :D