Resumen proyecto fin de carrera Lego Mindstorms y Android Smartphone




Este proyecto se presento en julio de 2015, en la Escuela Superior de Ingeniería Informática de la UNED como proyecto fín de carrera de Ingeniería Informática. La temática era de robótica , más concretamente sobre robots Lego Mindstorms y tenía 3 objetivos principales.

Objetivo 1: Conseguir qué las 3 generaciones de robots de LEGO Mindstorms (RCX,NXT y EV3) pudiesen comunicarse . Esta comunicación sería inalámbrica de tipo WiFi.

Objetivo 2: Utilizando un robot representante de cada una de las tres familias de LEGO Mindstorms se creará un grupo de 3 robots autónomos. El equipo multirobot resultante estará compuesto por robots heterogéneos  (  diferente hardware) pero funcionalmente homogéneos. Aunque los 3 robots estén construidos con distinto hardware deberían ser capaces de realizar la misma tarea.

Objetivo 3: Basándose en las comunicaciones del primer objetivo y utilizando los 3 robots construidos en el objetivo 2, los robots deberán trabajar juntos para llevar a cabo una tarea cooperativea utilizando intercambio de mensajes. La tarea podría considerarse como una variante de «Pick up the trash» descrita en «Introduction to AI Robotics» (Murphy 2000) , salvo que en esta ocasión nuestros robots se comunicarán entre sí y colaborarán para transportar latas de un punto A a un punto B; como si se tratase de una cadena humana trasladando latas, un robot cogerá una lata en el punto A y se la entregará a su vecino, el cual también se la entregará a su robot adyacente, este proceso continuará hasta que la lata sea depositada en el punto B. Para ello los 3 robots estarán equipados cada uno con un Smartphone que utilizará su cámara digital para detectar las latas y orientarse en la navegación por el entorno. También cada robot estará dotado de 2 motores para desplazarse entre el punto A y el punto B. Además los 3 robots incluirán en su estructura unas pinzas con las que podrán capturar y soltar las latas. Los robots deberán adoptar uno de los siguientes 3 roles, Robot Colector (Busca latas y se las deja al robot pasador), Robot Pasador (Toma la lata que ha dejado el Robot Colector y se la pasa al Robot Reciclador)   y Robot Reciclador (Toma las latas que ha dejado el Robot Pasador  y las lleva hasta el punto de reciclaje), por tanto la programación de los robots se ha realizado orientada a comportamiento (Behaviours)




El requisito y objetivo de  establecer algún tipo de comunicación  sin cables entre los 3 robots  complicaba en gran medida el proyecto puesto que aunque la comunicación Wifi entre el nuevo EV3 y su antecesor el NXT era factible  (gracias a periféricos como el WifiBlock) , la comunicación con el RCX por Wifi era imposible, no existe ningún periférico que le permita al RCX mantener una comunicación Wifi. Con estos condicionantes, a lo máximo que se podía aspirar para una comunicación sin cables era la comunicación por infrarrojos,  pero este tipo de comunicación entre robots móviles es muy poco recomendable ya que se necesita visión directa entre el emisor y el receptor.

Entonces , como podríamos conectar a los tres robots mediante comunicación Wifi ? . La solución está en los smartphones. Seguidamente mostraremos unos videos donde se verá la evolución del proyecto.

Paso 1: Comunicación Wifi entre Lego Mindstorms EV3 y NXT

 

Paso2: Controlando al mismo tiempo por wifi Lego Mindstorms EV3 y NXT. (Con música)

Paso3: Robots Working Together. Los 3 robots  de la família Lego Mindstorms trabajando juntos.

 

Paso 4:  Robot Lego Mindstorms RCX controlado por Wifi !!

Gracias al Smartphone , el RCX ya podía recibir comunicaciones wifi. El smartphone recibe el mensaje por Wifi, y utilizando el Flash de la cámara lo convierte a una señal luminosa que sigue un Protocolo de comunicaciones por Pulsos de Luz Redundantes . El RCX utiliza su sensor de luz para leer los mensajes emitidos por el flash del smartphone.




 

Paso 5: Robots Lego Mindstorms RCX,NXT y EV3 controlados al mismo tiempo por Wifi

Paso 6: Visión Artificial con Robot Lego Mindstorms RCX y Smartphone Android.

 

Paso 7: Visión aritificial con robot Lego Mindstorms EV3 y Smartphone Android. «Pick up the can»





 

Paso 8 : Visión Artificial con robot Lego Mindstorms EV3 y Smartphone Android. «Pick up the can»

Paso 9: Visión Artificial con robot Lego Mindstorms RCX y Android Smartphone. «Pick up the can»

Paso 10: Los 3 robots cooperando juntos , moviendo latas desde un punto de recoleción a un punto de reciclaje.