= Etapa final de desarrollo del robot RoMAA-II = <> == Introducción == El desarrollo del robot móvil [[Robotica/RoMAA|RoMAA]] se llevo a cabo en diferentes etapas en las cuales fueron evolucionando las distintas partes que componen el proyecto. Las que pueden ser divididas principalmente entre la parte mecánica, el hardware y el software, tanto el firmware del control embebido como el de la PC de a bordo. == Objetivos generales == La etapa final del desarrollo del robot RoMAA-II tiene como objetivos obtener una versión congelada de las diferentes partes que formar el robot RoMAA para disponer de una versión operativa completa para transferencia y como plataforma de experimentación en robótica móvil. Además, de generar la documentación y el manual de usuario correspondiente. == Objetivos particulares == Los objetivos particulares corresponden a obtener las versiones finales de: * El hardware del control embebido de abordo del robot RoMAA.<
>Responsables: '''Daniel Marchetti, Lucas Martini y Santiago Pérez. ''' * El firmware del control embebido.<
>Responsables: '''Lucas Martini, Néstor Palomeque y Santiago Pérez. ''' * Librería de programación en C++ (clase) para la comunicación con el robot.<
>Responsables: '''Lucas Martini, Néstor Palomeque y ''''''Gonzalo Pérez Paina''''''.''' * Driver para el entorno de desarrollo de robotica Player.<
>Responsable: '''Gonzalo Pérez Paina.''' * Modelo de simulación para el simulador Stage, con diferentes sensores a bordo.<
>Responsable: '''Gonzalo Pérez Paina.''' == Desarrollo == === Hardware de control embebido === El hardware de control embebido consta de la electrónica para controlar los motores de tracción y comunicación con la PC de a bordo. Incluye drivers de potencia basados en llave H y la unidad de proceso basada en un microcontrolador ARM7. Los desarrollos necesarios para obtener la versión final correspondiente al RoMAA-II son: ||''Tareas'' ||''Responsable'' ||''Estado'' ||Plazo || ||El montaje de la placa de procesamiento con uC ARM7 basada en el desarrollo realizado en [1], con las modificaciones necesarias para el funcionamiento de los motores con 12V. ||Daniel Marchetti y Santiago Pérez || <> ||3 sem. (04/10/10) || ||Gabinete adecuado para contener tanto los drives de los motores y la placa del uC. ||Daniel Marchetti y Lucas Martini || <> ||3 sem. (04/10/10) || ||Panel de control que se conecta a la placa del uC y dispone de las conexiones e indicadores necesarios para la operación del robot. ||Daniel Marchetti y Lucas Martini || <> ||3 sem. (04/10/10) || === Firmware === El firmware del uC ARM7 para esta versión corresponde [1]. Las modificaciones necesarias son: ||''Tareas'' ||''Responsable'' ||''Estado'' ||Plazo || ||Cerrar la versión de las ciiiemblibs a utilizar y subirlas al servidor Mercurial. ||Néstor Palomeque || <> ||- || ||Modificar el firmware (con RTOS) para utilizar la última versión de las ciiiemblibs. ||Santiago Pérez || <> ||4 sem. (11/10/10) || ||Crear el proyecto en el servidor de Mercurial para el firmware del RoMAA-II. ||Santiago Pérez ||Pasivo ||1 sem. || ||Manual final de los modos de funcionamiento y comandos del control embebido. ||Santiago Pérez y Lucas Martini ||Pasivo ||1 sem. || === Librería de programación === La librería para comunicarse con el control embebido del robot pertenece a las ciiilibs. Tareas a realizar son: ||''Tareas'' ||''Responsable'' ||''Estado'' ||Plazo || ||Terminar la programación de la clase de comunicación con el robot utilizando las librerías de com. serie flexiport. ||Lucas Martini y Néstor Palomeque || <> ||1 sem. (27/09/10) || ||Probar la clase para detectar posible errores de comunicación (sincronización) entre la PC de a bordo y el control embebido. ||Lucas Martini y Néstor Palomeque || <> ||1 sem. (27/09/10) || ||Agregar la versión final de la clase a las ciiilibs en el servidor de Mercurial. ||Gonzalo Perez Paina ||Pasivo ||1 sem. || === Driver de Player === Driver plugin que utiliza la clase romaacomms compatible con la versión 3.0 de Player. Tareas a realizar: ||''Tareas'' ||''Responsable'' ||''Estado'' ||Plazo || ||Programación del nuevo driver que permita manejar el robot RoMAA con Player tanto con comandos de velocidad lineal y angular como de velocidad de cada rueda. ||Gonzalo Pérez Paina || <> || 4 sem. || ||Subir el driver al repositorio Mercurial. ||Gonzalo Pérez Paina ||Pasivo ||- || === Modelo para el simulador Stage === Modelo para el simulador Stage compatible con la versión 3.2, con la posibilidad de agregarle sensores como un anillo de sonares o escáner láser. ||''Tareas'' ||''Responsable'' ||''Estado'' ||Plazo || ||Modelo para el Simulador Stage compatible con la versión 3.2 ||Gonzalo Pérez Paina || <> || 1 sem. || == Documentación == El robot RoMAA-II se componen de las siguientes partes: === Hardware === * [[LabElectronica/LlaveH110|Drivers de potencia basadas en llaves H]] * [[LabElectronica/FreeRTOSLpc2114Web|Placa de control]] * Panel de control === Firmware === * La versión de las ciiiemblibs utilizadas por el firmware del robot RoMAA-II son: ... y se pueden descargar de ... * La versión de firmware de control con RTOS esta en .... === Software PC === * La clase de comunicación del RoMAA esta en las librerías ciiilibs correspondientes a la revisión ... * [[Robotica/PlayerDriverRoMAA200Web|Driver del RoMAA para Player]] * [[Robotica/StageRoMAA200Web|Modelo de simulación para Stage]] == Referencias == * [1].- ''"Hardware de Control de Plataforma Robótica Móvil con Arquitectura ARM7 y RTOS embebido. Caracterización"''. Tesis de grado para obtener el título de Ing. en electrónica de Santiago Pérez y Martín Baudino. [[LabElectronica/FreeRTOSLpc2114Web|Ir]]