inicio
´
´
PROGRAMACION DE ROBOTS MOVILES
Jos´ M. Ca˜ as ∗,2 Vicente Matell´n
e
n
a
Rodrigo Mont´ far ∗∗,1
u
∗
∗,2
Universidad Rey Juan Carlos, M´stoles, Espa˜a
o
n
´
Inst. Nal. de Astrof´
ısica, Optica y Electr´nica,
o
Tonanzintla, M´xico
e
∗∗
Resumen: El objetivo de este art´
ıculo es describir los entornos deprogramaci´n de
o
robots m´viles m´s comunes en la actualidad, sus caracter´
o
a
ısticas y las tendencias
m´s recientes. Actualmente el software de los robots m´viles se estructura en
a
o
tres niveles: sistema operativo, plataforma de desarrollo y aplicaciones concretas.
Las plataformas de desarrollo han surgido los ultimos a˜os con la idea de
´
n
facilitar la construcci´n incrementalde estas aplicaciones rob´ticas. Suelen ofrecer
o
o
una interfaz uniforme de acceso al heterog´neo hardware de los robots, una
e
arquitectura software concreta y un conjunto de funcionalidades comunes listas
para su reutilizaci´n. Copyright c 2006 CEA-IFAC
o
Palabras Clave: Programaci´n de robots, robots m´viles aut´nomos,
o
o
o
herramientas software, entornos de programaci´n,simuladores.
o
´
1. INTRODUCCION
Conseguir que los robots hagan cosas utiles
´
aut´nomamente es una tarea dif´
o
ıcil. Uno de los
aspectos principales para ello es su programaci´n.
o
Todos los robots tienen sensores, actuadores y
procesadores, y el software que se ejecuta en ellos
es el que da la vida a esos componentes hardware,
el que enlaza los datos recibidos por los sensores con lasrespuestas de actuaci´n. Desde esta
o
perspectiva, la generaci´n de comportamiento en
o
un robot consiste en escribir el programa que al
ejecutarse en el robot causa ese comportamiento.
La “autonom´ y la “inteligencia” residen en ese
ıa”
programa. Por ejemplo, en los robots m´viles el
o
comportamiento principal es su movimiento. Los
programas que se ejecutan en el robot determinan
lamanera en que ´ste se mueve por el entorno,
e
reaccionando ante obst´culos percibidos por los
a
sensores, acerc´ndose a alg´n destino, etc. y para
a
u
ello tienen que enviar continuamente las ordenes
´
adecuadas a los motores.
Muchos de los robots que se venden actualmente
son productos cerrados, programados por el fabricante e inalterables, por ejemplo, la aspiradora
rob´tica Roombade iRobot 3 o el perrito Aibo
o
de Sony en sus inicios 4 . En contraste, otra parte
relevante del mercado son los robots programables, cuyos principales clientes son los centros de
investigaci´n, normalmente interesados en prograo
marlos ellos mismos. En estos casos, el fabricante
vende los robots con un software que permite su
programaci´n por parte del usuario.
o
3
1
Financiadoparcialmente por la Agencia Espa˜ola de
n
Cooperaci´n Internacional
o
2 Este trabajo ha sido financiado por el Ministerio de
Ciencia y Tecnolog´ proyecto DPI2004-07993-C03-01
ıa,
http://www.irobot.com
En el verano de 2002 Sony hizo p´blica la interfaz de
u
programaci´n de sus perritos, Open-R, en parte forzados
o
por un hacker la mascota rob´tica Aibo 5 de Sony que
o
hab´ conseguidodesvelar algunas de sus interfaces
ıa
4
100
Programación de Robots Móviles
El modo en que se programan los robots ha ido
evolucionando. Hist´ricamente los robots eran deo
sarrollos unicos, no se produc´ en serie, y los
´
ıan
programas de control se constru´
ıan empleando
directamente los drivers para acceder a los dispositivos sensoriales y de actuaci´n. El sistema
o
operativodel robot era m´
ınimo, b´sicamente una
a
colecci´n de drivers con rutinas para leer datos
o
de los sensores y enviar consignas a los actuadores. En este contexto, el programa de aplicaci´n
o
invocaba directamente las funciones de la librer´
ıa
que ofrec´ el fabricante en sus drivers. La aplicaıa
ci´n se situaba directamente encima del sistema
o
operativo, como ilustra la figura...
Regístrate para leer el documento completo.