Stage, un mundo simulado

27 de Noviembre de 2008

En el articulo anterior hablamos de Player, el de hoy está fuertemente ligado ya que vamos ha hacer de un plugin para Player, Stage.

Este nos permite simular un mundo ideal en dos dimensiones, donde nuestro robot podrá tener tantos sensores como queramos y se podrá desplazar libremente por cualquier lugar del que tengamos un mapa pero con algunas restricciones reales ya que  nunca podrá atravesar las paredes.

El día que introduje este Blog, expliqué que no era necesario gastar fortunas para investigar en el mundo de la robótica autónoma, tipo Pioneer. Sino que podemos experimentar en un mundo simulado antes de decidir que es relevante en un robot para nosotros antes de invertir este dinero.

Debo decir por mi experiencia que al pasar del mundo simulado al real nos podemos llevar alguna sorpresa, especialmente con los sensores de ultrasonidos, pero normalmente hay métodos para subsanarlos, haciendo de Stage una plataforma sencilla de usar y con bastante potencial

.Stage

Aquí podemos ver la versión 3.0.1 de Stage

El mundo simulado esta restringido al borde exterior de la imagen, siendo cada una de las líneas negras paredes que el robot no puede atravesar, pero que podrán ser detectadas con diferentes sensores.

Además, y como podemos ver en la imagen. En nuestras simulaciones podemos incluir más de un robot. Es importante tener en cuenta que un robot detectará a otro de la misma forma que puede detectar una pared si se usan sensores de distancia, pero Player dispone también de interfaces para sensores RFID con los que podríamos incluso comunicar diferentes robots, tanto en la simulación, como posteriormente en robots reales.

Otro punto muy a tener en cuenta son los mapas. Las paredes que vemos en la captura de Stage, se cargan mediante archivos de imagen. De esta forma podemos cargar el entorno que nos sea más conveniente a nuestra finalidad.

Para los usuarios más exigentes, también está disponible para Player un simulador en 3D llamado Gazebo, pero por el momento es solo una versión Beta.

Un saludo y hasta la próxima entrega.

Player, abstracción de un robot

18 de Noviembre de 2008

Para comenzar este blog y entrar en materia os voy ha hablar de una herramienta que hará universal los códigos que realicéis para vuestros robots, y sobre la cual existen actualmente multitud de robots comerciales y de investigación basados en ella.

Player es un “HAL” o “Hardware Layer Abstraction” que funciona bajo sistemas linux, lo que traducido significa “Capa de abstracción de Hardware”, pero que significa esto exactamente. Se podría decir que es un pequeño sistema operativo de drivers en el cual podemos manejar diferentes tipos de dispositivos.

Imaginemos por un momento que deseamos instalar en nuestro robot sensores infrarrojos. En el mercado existen diferentes modelos, además podemos optar por desarrollar nuestros propios sensores.

Si alguien intentase hacer un programa compatible con cada modelo posible de infrarrojos seria totalmente imposible, pero que pasaría si creásemos una interfaz intermedia con todas las características de estos sensores. En ese caso ya no nos imputaría el modelo concreto de sensor, sino su tipo. Pues bien, esto es Player.

Entre otros muchas interfaces, Player dispone de drivers para:

  • Cámaras
  • Odometría (posición por encoders)
  • Ultrasonidos
  • Infrarrojos
  • Escaners láser
  • Bumpers
  • Receptores GPS
  • Simuladores

Podéis encontrar una lista completa en la web de Player

Esto solo acaba de comenzar, el próximo día veremos cuales son las posibilidades de simulación que nos ofrece Player.

Un saludo,

Joviwap

Bienvenida

6 de Noviembre de 2008

Hola a todos,

Durante los próximos meses quiero aproximar una parte de la robótica que no es conocida por todos. Se trata de la robótica móvil autónoma. Esta trata temas como la estimación de la localización, interacción con el medio y comunicaciones.

Normalmente existe la tendencia a pesar entre los aficionados a la robótica de que los prototipos que podemos ver en ferias y exposiciones internacionales, con infinidad de funciones, está solo al alcance de unos poco debido al cote de los robots y de las herramientas necesarias para desarrollarlos, nada más lejos de la realidad.

Desde este humilde blog intentaré despertar inquietudes que os hagan ir más allá del uso de microcontroladores y pequeños sensores para intentar dar un salto cualitativo en vuestros robots que nos haga crecer a todos como comunidad.

Para que los conocimientos que voy a exponer en mis siguientes entradas puedan ser seguidos por todos, utilizaré un PC convencional como plataforma con el sistema operativo Linux Ubuntu.

Espero haber captado vuestra atención y que este blog sea de provecho para todos.

Atentamente,

Joviwap