Diferencia entre revisiones de «Robot omnidireccional»

De Wikitronica
Saltar a: navegación, buscar
(Robot Ovni)
(Robot Ovni)
Línea 15: Línea 15:
 
La interfaz de control con la cual se opera el robot se encuentra desarrollado en lenguaje Python sobre la plataforma ROS (Robot Operative System), de este modo las tareas están divididas en nodos que se ejecutan de forma paralela y se comunican entre sí mediante mensajes estandarizados. Esto facilita la cooperación entre distintos desarrolladores, otorgándole diversidad a su entorno.
 
La interfaz de control con la cual se opera el robot se encuentra desarrollado en lenguaje Python sobre la plataforma ROS (Robot Operative System), de este modo las tareas están divididas en nodos que se ejecutan de forma paralela y se comunican entre sí mediante mensajes estandarizados. Esto facilita la cooperación entre distintos desarrolladores, otorgándole diversidad a su entorno.
  
 +
=== Componentes ===
 +
Físicamente, el robot omnidireccional Ovni está compuesto por una placa de alumunio, la cual funge como chasis o estructura de soporte. A su alrededor se disponen cuatro motores DC de 12V "HN-GH12-2413T", equidistantes entre sí, cada uno acoplado a un codificador rotatorio o encoder E4P y una rueda omnidireccional o sueca de seis rodillos. En la cavidad que queda entre ellos, se encuentra la batería central que alimenta todo el sistema electrónico, en este caso de 7.2V, esta puede ser sustituida por otra que cumpla con los parámetros de la hoja de especificaciones del robot.
  
 
+
Del chasis salen cuatro tornillos largos con los cuales se sustenta una lámina de acrílico, que actúa como base para las dos tarjetas que componen el sistema electrónico. La primera placa contiene la entrada de la batería, el sistema de alimentación (regulación a 5V "LM2940"), los drivers "L298P" para manejar los motores con su respectiva conexión a ellos y los sensores de corriente "ACS712" para detectar situaciones de emergencia. En la segunda capa se encuentran las conexiones para el microcontrolador MCF51AC256 y su acondicionamiento, la entrada de las señales provenientes de los encoders y la etapa de comunicación, empleando módulo XBee PRO S2.
 
+
=== Componentes ===
+
  
  

Revisión del 01:13 16 jun 2015

Un robot omnidireccional, también conocido como holonómico, es un tipo de robot móvil con ruedas, cuya configuración le permite desplazarse en cualquier dirección sin la necesidad de alcanzar previamente una orientación específica. Es decir, es capaz de realizar movimientos en cualquiera de las componentes del plano, bien sean traslaciones (hacia adelante, en reversa, laterales) o rotaciones, a partir de un estado de movilidad. Todo ello, a expensas de un mayor grado de complejidad en su manejo.

Para un robot omnidireccional es imperativo contar con al menos tres ruedas activas en su haber. Es entonces un punto importante del diseño la decisión de cuántas ruedas emplear. Cada una de las ruedas proporciona al robot una fuerza normal al eje del motor y paralela a la superficie sobre la cual se desplaza. La suma de ellas permite la traslación y rotación de la estructura. Por lo general, presentan una configuración mecánica de tres o cuatro ruedas. El primero es mecánicamente más simple que el segundo. No obstante, este último permite una mayor aceleración al robot.

Los robots de cuatro ruedas tienen más tracción que los de tres, pues se adiciona la potencia entregada por el motor adicional. Lo cual se traduce a menos deslizamiento en las ruedas si el peso de la carga se encuentra distribuida uniformemente sobre ellas, un mayor consumo de energía, costo y posiblemente, la necesidad de incorporar un sistema de suspensión para distribuir las fuerzas sobre las ruedas.

Modelo Cinemático

El modelo cinemático permite la descripción analítica del movimiento de un cuerpo, con respecto a un sistema de referencia, en función del tiempo. Se puede predecir el comportamiento del robot, al conocer las variables que se pueden controlar o manipular. Existen dos maneras de resolver la cinemática del robot, la primera se conoce como el problema cinemático directo y consiste en determinar el desplazamiento y posición del robot mediante la velocidad angular de las ruedas; el segundo se denomina problema cinemático inverso, se obtiene la velocidad angular de los motores, a partir del desplazamiento y posición del robot respecto a la referencia

Robot Ovni

Ovni es un robot omnidireccional de cuatro ruedas producto de una tesis de pregrado desarrollada en el Grupo de Investigación y Desarrollo en Mecatrónica USB como prototipo simple de los robots que se esperan desarrollar en la Agrupación FutBot USB para participar en distintas competencias de robótica nacionales e internacionales, tales como RoboCup, LARC, entre otras.

El robot Ovni está equipado para ser teleoperado hasta una distancia probada de 41.61 metros sin obstáculos. No obstante, el alcance puede ser mucho mayor debido a la utilización de módulos XBee PRO S2 como medio de comunicación. Los desplazamientos que puede realizar son rotación sobre su propio eje y traslación simple en cualquier dirección del plano, es decir, sin la necesidad de orientarse a un estado inicial para alcanzar un punto de destino cualquiera.

La interfaz de control con la cual se opera el robot se encuentra desarrollado en lenguaje Python sobre la plataforma ROS (Robot Operative System), de este modo las tareas están divididas en nodos que se ejecutan de forma paralela y se comunican entre sí mediante mensajes estandarizados. Esto facilita la cooperación entre distintos desarrolladores, otorgándole diversidad a su entorno.

Componentes

Físicamente, el robot omnidireccional Ovni está compuesto por una placa de alumunio, la cual funge como chasis o estructura de soporte. A su alrededor se disponen cuatro motores DC de 12V "HN-GH12-2413T", equidistantes entre sí, cada uno acoplado a un codificador rotatorio o encoder E4P y una rueda omnidireccional o sueca de seis rodillos. En la cavidad que queda entre ellos, se encuentra la batería central que alimenta todo el sistema electrónico, en este caso de 7.2V, esta puede ser sustituida por otra que cumpla con los parámetros de la hoja de especificaciones del robot.

Del chasis salen cuatro tornillos largos con los cuales se sustenta una lámina de acrílico, que actúa como base para las dos tarjetas que componen el sistema electrónico. La primera placa contiene la entrada de la batería, el sistema de alimentación (regulación a 5V "LM2940"), los drivers "L298P" para manejar los motores con su respectiva conexión a ellos y los sensores de corriente "ACS712" para detectar situaciones de emergencia. En la segunda capa se encuentran las conexiones para el microcontrolador MCF51AC256 y su acondicionamiento, la entrada de las señales provenientes de los encoders y la etapa de comunicación, empleando módulo XBee PRO S2.


Funcionamiento

A través de la interfaz, que actúa como una palanca de mando o joystick virtual, el usuario puede manejar el robot con el mouse de la computadora. Presionando el botón derecho del mismo sobre el campo de movimiento y arrastrándolo la figura se le indica al robot en que dirección debe trasladarse. Mientras que al hacerlo sobre las fechas de los extremos u oprimiendo la tecla de derecha o izquierda, se le ordena que rote sobre su propio eje. Al dejar de oprimir el botón principal del mouse, el robot se detiene sobre la pista. Así mismo, debido al uso de ROS en el sistema, es posible controlar al robot mediante una aplicación de teléfono Android, llamada "Teleop", desarrollada por un tercero. En este caso, sólo se requiere indicar la dirección IP del equipo que esté ejecutando a interfaz de control.

Además, mediante la interfaz el usuario puede conocer algunos parámetros de funcionamiento del robot, tales como la magnitud de corriente a través de cada uno de los motores, el número de pulsos por segundo generados por los codificadores rotatorios acoplados a cada una de las ruedas y con ello la velocidad de cada una para fines de realizar una posterior etapa de control. En caso de ocurrir alguna falla relacionada con sobrecorriente por al menos un segundo, en alguno de los motores, notifica al operador con un aviso en pantalla y directamente en el motor se genera un estado de emergencia que desactiva los motores para disminuir el riesgo de daño en los mismos.

Protocolo de Pruebas

Contributors

CarolChangL, Ddtdanilo