Version 49 (modified by rafa, 7 years ago)

--

RoboTitos

Documentacion de Frankestito construido en nuestra facultad.

http://oracle.uncoma.edu.ar/trac/chrome/site/IMG_9730.JPG http://oracle.uncoma.edu.ar/trac/chrome/site/IMG_9731.JPG http://oracle.uncoma.edu.ar/trac/chrome/site/IMG_9732.JPG http://oracle.uncoma.edu.ar/trac/chrome/site/IMG_9733.JPG http://oracle.uncoma.edu.ar/trac/chrome/site/IMG_9734.JPG http://oracle.uncoma.edu.ar/trac/chrome/site/IMG_9735.JPG

Introducción

En la Facultad de Informática estamos desarrollando un prototipo de robot (real) autónomo, compatible con  Myro. Además, nuestra siguiente meta es contar con Linux embebido dentro del robot. Esto posibilitaría ejecutar, por ejemplo, python o prolog directamente dentro del robot.

Myro (My Robotics), es un proyecto open source que tiene como objetivo enseñar ciencias de la computación a través de la programación de robots. Mas información en  http://www.roboteducation.org/

Hardware

El prototipo actual utiliza un AVR Atmega328 (desde un arduino uno) para controlar un L293D el cual tiene conectado ambos motores. Además, el hardware cuenta con un shield bluetooth para arduino, el cual nos permite conectar y controlar el hardware de forma remota.

En la siguiente versión se espera quitar el shield bluetooth, y colocar una placa TL-MR3020 de 5.7cm x 5.7cm, con wifi, usb host y Linux embebido controlando el AVR Atmega328.

Equematicos : POR HACER.

Software

Hay varios niveles de software. Nuestro prototipo actual es compatible con Myro. Esto significa que con solo 3 líneas de código de programación en lenguaje Python ya puede controlar el robot.

Ejemplo:

# python
>> from myro import *
>> robotito = Scribbler("/dev/ttyACM0", 9600)
>> robotito.forward(1, 3)

En el ejemplo anterior el robot avanzaría a máxima velocidad durante tres segundos.

  • El software del robot (firmware) está escrito en C, y utilizamos el ambiente arduino para crosscompilar y flashear el AVR ATMEGA. Actualmente el robot puede realizar toda clase de movimientos, aunque todavia esta cieguito. Ampliaremos su funcionalidad a medida que incorporemos sensores o camaras.

Utilizar un AVR Atmega, como microprocesador para controlar los motores y sensores, permite desarrollar todo el software del robot utilizando las herramientas GNU GCC (the GNU Compiler Collection).

Documentación

Próximas Tareas

HTML Test

HTML Test

  • Gamepad : Funcionando #!html <h3 color: blue">HTML Test</h3>
  • Placa MR3020 con Linux Embebido : Parcialmente (falta el hardware para conectar el serial de la board con el serial del AVR ATMEGA328)
  • Portar python a mips (mips: arquitectura de la board embebida) : Realizado
  • Portar prolog o ciao prolog : Pendiente
  • Documentar el prototipo y realizar esquematicos y boards finales : Pendiente
  • Sensores : Sólamente contamos con camara en la board con Linux embebido (funcionando). Faltarian sensores IR y de ultrasonidos?