Publicación: Definición de una arquitectura móvil integrando robots Mindstorms EV3
Autores
Resumen
Este proyecto surge con la motivación de servir de base para desarrollos en los que se quiera hacer uso de aplicaciones móviles junto con robots de la familia Lego Mindstorms EV3. El problema que se resolvió fue la definición e implementación de los distintos componentes necesarios para desarrollar una arquitectura de software que permita que una aplicación móvil sea capaz de enviar distintos comandos a un robot Lego EV3, al igual que recibir retroalimentación del mismo acerca de su estado. La arquitectura propuesta tiene tres componentes: El robot que se compone de dos partes: La primera es el robot físico, el cual ejecuta las instrucciones recibidas y envía información captada por sus sensores. La segunda es la representación abstracta del robot, que permite la comunicación con el mismo. (presente en el servidor intermedio) La componente servidor intermedio sirve de puente de comunicación entre la aplicación móvil y el robot físico. Por un lado, el servidor intermedio se comunica con la aplicación móvil mediante peticiones HTTP y por el otro, se comunica con el robot mediante una conexión bluetooth. La componente aplicación móvil ejerce el rol de control remoto del robot al conectarse con el servidor intermedio. Para lo cual ofrece una interfaz gráfica al usuario con las opciones de movimientos (adelante, atrás, giro a la izquierda, giro a la derecha) del robot. Además, puede pedir información acerca de lo captado por su sensor infrarrojo. Esta interfaz también incluye una vista de una cámara IP permitiéndole al usuario visualizar el ambiente donde se mueve el robot. Como resultado final se logró un sistema funcional que fue implementado bajo la arquitectura de software propuesta. Se realizaron pruebas de este sistema usando el ambiente de simulación de la plataforma Android Studio con el robot físico Lego Mindstorms EV3 y en el laboratorio haciendo uso de una cámara IP
Resumen
This project was done following the idea of serving as a base for developments that want to integrate mobile applications and Lego Mindstorms EV3 robots. The problem solved in this document was the definition and development of a software architecture allowing that a mobile app can send commands to a EV3 robot and also receive information about the robot state. Three components were proposed: In first place the robot component is composed of two parts, the physic and the abstract part. The physic part, is the one that executes the instructions given, moving in four different directions and collecting information with its sensors. The abstract part which is implemented in the intermediate server, allows the communication with the robot. The intermediate server component is used as a bridge between the mobile app and the robot. On the first side the intermediate server communicates with the mobile application through HTTP requests, and by the other side communicates with the robot through a Bluetooth connection. The mobile app component, which serves as a remote control by connecting itself to the intermediate server. A graphical interface is presented in which the user can choose which movement she/he wants the robot to apply or if she/he wants to get information about the robot state. Taking into account that the main intention of the mobile app is to control the robot from remote distances, an IP camera is included to ensure that the user can visualize the robot?s environment. The final result of implementing the three components previously described was a functional system capable of sending and retrieving information from a mobile application to a robot. The system was tested in the COLIVRI laboratory and using the Android Studio simulation environment with the physical Lego Mindstorms EV3 robot The system was built in a way that it can grow easily, allowing an easy implementation of more complex movements and uses
PDF
FLIP