martes, 8 de julio de 2008

¡Los transformer ya están aquí!

Me da que dentro de no muchas navidades alguno se pide uno de estos trastos



¡ Qué ilusión !, me encanta comprobar que existe gente que trabaja por el bien de la humanidad, que pone todo su esfuerzo en facilitar la vida a todas aquellas personas necesitadas... mirad este vídeo, el robot que nos trae cervezas de la nevera cada vez está mas cerca... ¡ y siguiente paso será que encienda la tele !

Artículo - Aprendiendo a manejar objetos

En el último artículo publicado hasta la fecha del Cog, se describen los resultados obtenidos tras 'enseñar' a dos robots a manejar objetos. Han usado dos tipos distintos, un BabyBot y un Cog (el de la foto).

Con el primero, se ha tomado un objeto y se ha movido dentro de su campo de visión, mas tarde, el robot ha sido capaz de imitar este movimiento y desplazar un objeto de similares características.

El segundo experimento ha sido mas complejo gracias a las características del Cog, este ha sido capaz de distinguir cuatro objetos distintos, y mimetizar los movimientos aprendidos dependiendo del objeto. Lo que dicho con palabras distintas, sonaría a que el robot ha sido capaz de 'comprender' que objeto tenía delante y donde debía colocarlo

Si os gustan este tipo de cosas echadle un vistazo al artículo entero, es cortito, apenas 5 páginas.

lunes, 7 de julio de 2008

LOST - Método de exploración de caminos

Hace poco he leído un artículo que trata sobre la exploración de caminos por medio de un grupo de robots. Maja Matarić (la que tiene pelo) se inspira en las colmenas de abejas y hormigas para crear un modelo no centralizado que sea capaz de encontrar rutas eficaces en un entorno desconocido.

Para encontrar dichas rutas, emplea la información recolectada por cada miembro del grupo (hormiga) sobre el entorno que lo rodea, compartiendo esta información con el resto de robots. Esta información (migas) se combina con la poseída por cada robot para confeccionar un mapa del entorno al completo en el que se encuentra la población. Las 'migas' intercambiadas por los distintos miembros se componen (a groso modo) de lugares (coordenadas relativas) y tiempos de desplazamiento entre estos.

Como puede verse en los experimentos y en las conclusiones, los métodos de autolocalización son extremadamente importantes, ya que el error acumulado de estos influye directamente en el resultado final. Por un lado la odometría ofrece una amplia independencia del medio, pero el error acumulado es demasiado importante. La localización por GPS otorga un mínimo error, pero no en todas partes podemos disponer de esta tecnología.

Aunque no pudo comprobarlo directamente, las simulaciones que realizó demostraron que a mayor número de miembros, mejores resultados se obtienen (con rutas mas óptimas), aunque el tráfico empleado en los mensajes aumenta de forma exponencial y puede resultar un serio problema

Otros asuntos que deja para futuras investigaciones son cosas como los problemas que tendrían las hormigas al intentar pasar todas a la vez por un lugar estrecho, o tener un lugar de referencia detrás de un obstáculo demasiado grande.

jueves, 26 de junio de 2008

Aplicación para el patito

La anterior entrada hacía referencia a una interfaz gráfica para ver de forma mas bonita el robot que hará de guía. Ahora le ha tocado el turno al otro robot. Esta aplicación es muy similar a la anterior, con mínimos cambios:


  • Se ha eliminado la velocidad del robot, pues esta ya no es controlable, será el propio robot quien establezca la velocidad a la que debe moverse.

  • Se ha incluido una imagen que representa un rectángulo con los cuatro puntos 'vistos' por la cámara de infrarrojos del wiimote. Nos da una idea de que está viendo el robot a tiempo real. Él se basará en estos puntos para determinar la distancia con su 'mamapato' y la dirección a tomar.

  • Como tonterías añadidas, se puede cambiar los colores y la resolución del visor

martes, 24 de junio de 2008

Otra aplicación mas

Después de varias intentonas, al fin he conseguido una aplicación gráfica útil para mis propósitos. En esta ocasión es un interfaz gráfico para controlar el robot de cabeza, o "Mama Pato". Una vez han sido conectado Wiimote y Brick por medio de la cruceta del mando puede controlarse el robot como si de un coche teledirigido se tratase.

No tiene nada especial, activar algunas 'pijotadas' para el mando como leds o vibración, controlar la velocidad de movimiento del robot...

viernes, 13 de junio de 2008

Desde Barna con amor

Hace tiempo que no pongo un vídeo de robots chorras, así que aquí va. ¿Qué objetivo puede haber en la vida mejor que el de buscar objetos para hacer música?



El vídeo me lo ha enviado Pepe, que "es una gran persona y mejor ser humano". ¡Gracias amigo!

miércoles, 11 de junio de 2008

La distancia entre dos puntos

Pasamos a sacarle partido a la cámara de infrarrojos del wiimote. Para empezar vamos a calcular la distancia (en pixeles) entre dos puntos, mas adelante usaremos esta información para saber lo lejos (o cerca) que nos encontramos de un objeto que disponga de dos emisores infrarrojos que están separados el uno del otro por una distancia conocida.

El primer paso, entonces, se trata en conocer la distancia entre estos dos puntos. Para verlo todo de formas mas gráfica he utilizado la extensión pygame y he tomado unas 'fotos' para contar los pasos seguidos.

Partimos de un momento 't', en el que leemos dos puntos en la cámara del mando, estos dos puntos, como indica la figura 1, son A y B

figura 1

De cada punto conocemos sus coordenadas, lo cual nos facilita enormemente el trabajo. A estas coordenadas las llamaremos (Xa, Ya) (Xb, Yb). Como los ejes X y Y son perpendiculares, trazamos dichos ejes atravesando nuestros puntos, obteniendo el resultado de la figura 2

figura 2

A la intersección de ambos ejes la denotaremos como C, con un poco de imaginación puede verse que la recta AB es la hipotenusa formada por los vértices ABC (figura 3).

figura 3

Recordando uno de los teoremas de Pitágoras sabemos que h2 = c2 + C2. (el dos indica cuadrado, a falta de Latex...)

Sólo nos faltaría saber las coordenadas de C, o bien la longitud de los lados AC y BC, algo que tenemos que extraer de la información disponible. Para conocer la distancia AC basta con restar la coordenada Xb a Xa, o siendo mas precisos, el valor absoluto de esta diferencia.

BC lo obtendremos por el mismo procedimiento, y será igual al valor absoluto de la diferencia de Ya e Yb

Ya disponemos de la distancia, en píxeles, de ambos puntos. El siguiente paso es utilizar esta información para saber la distancia a la que nos encontramos del objeto que tiene los emisores

NOTA: Me habría encantado utilizar Latex para las fórmulas, pero la solución que me pasó Javi parece no funcionar en linux