Wiki "Robot R.S.B.A"¶
OBJETIVO GENERAL:
Construir un robot lego Mindstorms EV3 education que sea capaz de jugar flip-tac-toe.¶
OBJETIVOS ESPECÍFICOS:
1. Diseñar al robot para que sea capaz de moverse, tomar cosas y girarlas.
2. Programar los movimientos necesarios del robot para lograr las acciones requeridas.
3. Implementar los programas y probar al robot para verificar un correcto funcionamiento.
4. Realizar una interfaz remota para controlar a distancia los movimientos del robot.
5. Integrar y entregar al producto final para poder jugar Flip-Tac-Toe.¶
RESTRICCIONES:
1. La programación será realizada en el lenguaje de programación Python en su versión 3.5.
2. El proyecto debe ser realizado en el plazo de un semestre.
3. Trabajar con el kit Lego Mindstorms EV3 education.¶
ROLES:¶
Rol |
Descripción |
Personal |
Programador |
Se encarga de desarrollar los programas en Python que permitan al robot moverse y utilizar su garra para que tome cosas y las gire. |
Gustavo Olivares-Angelina Orozco |
Diseñador |
Se encarga de diseñar la apariencia del robot de manera que este pueda moverse libremente y tenga las partes necesarias para moverse, tomar cosas y girarlas. |
Ernesto García-Daniel Ramírez |
Documentador |
Se encarga de la documentación del proyecto, de esta forma realiza las bitácoras del proyecto y formula los informes requeridos. |
Benjamín Poblete-Angelina Orozco |
ESTIMACIÓN DE COSTOS:¶
Recurso |
Valor |
Cantidad |
Notebooks |
$800000 |
5 |
Tarjeta micro SD |
$4000 |
1 |
Software de desarrollo Python |
De libre acceso |
2 |
Software de conexión Putty |
De libre acceso |
2 |
EV3DEV Linux |
De libre acceso |
2 |
EV3DEV 2 (Librerías de funciones del robot en Python) |
De libre acceso |
2 |
Dongle USB WIFI TP LINK |
$10000 |
1 |
Kit LEGO Mindstorms EV3 education |
$300000-$450000 |
1 |
Router |
$70000 |
1 |
Microsoft Office |
$40000 |
5 |
Sueldo total de cada integrante |
$900000 |
5 |
Costo total del proyecto |
$9084000-$9234000 |
Especificacion de requrimentos¶
Requerimentos funcionales:
Código |
Descripción |
Prioridad |
Revisión |
Condición |
1 |
El robot deberá poder moverse a voluntad del usuario mediante una interfaz en pc/smartphone. |
1 |
26/09/2019 |
Aceptado y realizado |
2 |
El robot debe tener la capacidad de tomar una lata con su brazo al presionar un botón especifico. |
1 |
26/09/2019 |
Aceptado y realizado |
3 |
El robot debe tener la capacidad de rotar una lata en su brazo al presionar un botón especifico. |
1 |
26/09/2019 |
Aceptado y realizado |
4 |
El robot debe tener la capacidad de soltar una lata con su brazo al presionar un botón especifico. |
1 |
10/10/2019 |
Aceptado y realizado |
5 |
El robot debe ser capaz de jugar “Flip-Tac-Toe”. |
1 |
17/10/2019 |
Aceptado y realizado |
Requerimentos no funcionales:
Código |
Descripción |
Prioridad |
Revisión |
Condición |
5 |
La programación debe estar hecha en Python. |
1 |
26/09/2019 |
Aceptado y realizado |
6 |
El robot debe poder tomar una lata en un tiempo, como máximo, de cinco segundos. |
2 |
26/09/2019 |
Aceptado y realizado |
7 |
El robot debe poder girar una lata mientras la toma en un tiempo, como máximo, de cinco segundos. |
2 |
26/09/2019 |
Aceptado y realizado |
8 |
El robot debe estar hecho con piezas del kit lego Mindstorm EV3 education. |
1 |
01/10/2019 |
Aceptado y realizado |
Prioridad:¶
1: Muy importante
2: Importante
3: No tan importante
Arquitectura propuesta¶
Punto 1: PC que utiliza un software con el que el cliente puede controlar un robot.¶
Punto 2: Interfaz de un software con el que controlar al robot a distancia.¶
Punto 3: Router que sirve para la conexión de un servidor entre el PC y el robot mediante la señal WI-FI.¶
Punto 4: Robot que realizará los movimientos enviados por el cliente gracias al servidor establecido entre sí mismo y el PC del cliente.¶
Punto 5: Objeto con el que el robot deberá interactuar, en este caso, una lata de bebida.¶
Diseño de la interfaz de usuario
¶
Esta es la interfaz de movimiento del robot, como se puede ver en la imagen, en la parte superior hay cuatro botones en forma de cruceta, al ser presionados generarán el movimiento del robot. El botón “Detener” en medio de estos sirve para interrumpir cualquier actividad. Los tres botones inferiores sirven para utilizar la garra, tal como dicen sus nombres uno sirve para abrir la garra y la otra para cerrarla, el ultimo botón sirve para rotar a la misma. Por último, el botón “MODO LENTO” sirve para que los movimientos del robot sean más lentos, de esta manera se puede aumentar la precisión de todos los movimientos.¶
Desarrollo del proyecto¶
Primer diseño de la base del robot:
¶
Primer diseño de la garra:
¶
Segundo diseño de la garra mas un sistema de rotación:
¶
Segundo diseño del robot:
¶
Diseño final del sistema de rotación:
¶
Diseño final del robot:
¶
CONCLUSIÓN:
Se puede recalcar que el proyecto ha avanzado bastante bien con respecto a las fechas estipuladas en la carta Gantt, se han tenido algunos problemas que han podido ser resueltos tales como, errores de diseño del robot que han sido solucionados lo más rápido posible, también han existido contratiempos en el desarrollo del código para los movimientos del robot y el desarrollo de la interfaz con la que el usuario podría interactuar con el mismo, sin embargo, el problema se resume en la nula experiencia que poseíamos como equipo para poder trabajar en el lenguaje Python, por lo que no era un gran obstáculo, pues existen variadas fuentes de información para el apoyo en este campo. Con respecto al desarrollo del proyecto, el robot ya está en su diseño final, igualmente, los algoritmos de movimiento de este también están desarrollados por completo y la interfaz gráfica ya se encuentra terminada. En cuanto a la documentación del proyecto, actualmente se cuenta con el informe final del proyecto y está terminada la wiki del proyecto. ¶