Difference between revisions of "Ichabot"

From Asociación de Robótica UC3M
Jump to navigation Jump to search
Line 127: Line 127:
 
En el primer vídeo se controla mediante Telnet:
 
En el primer vídeo se controla mediante Telnet:
 
<br/>
 
<br/>
[http://www.youtube.com/watch?v=61YwWbIN0bM Telnet control]
+
[http://www.youtube.com/watch?v=61YwWbIN0bM Control Telnet]
 
<br/>
 
<br/>
 
Aquí simplemente tenemos las opciones de avanzar, avanzar rápido, retroceder y parar. Simplemente fase de pruebas.
 
Aquí simplemente tenemos las opciones de avanzar, avanzar rápido, retroceder y parar. Simplemente fase de pruebas.
Line 134: Line 134:
 
En el siguiente vídeo el robot se mueve mediante una interfaz java con la que se puede controlar todo el rango de velocidades de cada rueda en ambos sentidos mediante dos [http://docs.oracle.com/javase/7/docs/api/ Sliders] de java (clase Javax JSlider). En el vídeo se mantienen los dos motores a una velocidad constante.
 
En el siguiente vídeo el robot se mueve mediante una interfaz java con la que se puede controlar todo el rango de velocidades de cada rueda en ambos sentidos mediante dos [http://docs.oracle.com/javase/7/docs/api/ Sliders] de java (clase Javax JSlider). En el vídeo se mantienen los dos motores a una velocidad constante.
 
<br/>
 
<br/>
[http://www.youtube.com/watch?v=qu_ecMEGA5c Java Control]
+
[http://www.youtube.com/watch?v=qu_ecMEGA5c Control Java]

Revision as of 10:43, 13 March 2013

Robot minimalista que usa Arduino FIO : Dos ruedas + apoyo trasero

Resumen

Se parte de la idea de hacer un robot susceptible de ser manipulado desde Android. Para ello se va a utilizar una placa Arduino FIO, por varias razones:

  1. Dimensiones reducidas
  2. Integra la posibilidad de acoplar un modulo XBee (comunicacion wifi y Bluetooth).
  3. Puede ser alimentado por una bateria, y dispone de un puerto mini-USB para cargarla.

El robot cuenta con tres puntos de apoyo: Dos ruedas y un tercero trasero formado por una canica que sirve de pivote.

Para el movimiento de las ruedas se van a utilizar dos servos TowerPro sg90.

Todas las piezas se ensamblan en torno a los servos, que sirven de nucleo del robot. Todas ellas son imprimibles y se montan por medio de tornillos de metrica 2 sin necesidad de tuercas.

Diseño

El diseño es minimalista, dado que este robot se trata de un modelo prototipo centrado en la funcionalidad, creado para servir como modelo de trabajo en el proyecto Robot Devastation. El robot montado permite la conexion y desconexion de la bateria y modulos de comunicacion (cable FTDI y XBee), por lo tanto no seria necesario desmontar ninguna pieza para realizar cambios en el software.

La tarjeta FIO se monta por presion en unos slots dedicados a tal fin ya que no dispone de otro metodo de sujecion.

A continuacion se muestran los codigos para Openscad de las distintas piezas que componen el robot:

Nota: Para un diseño mas simple que no utilice canica se recomienda este modelo. El modelo con canica requiere limar algunas partes, por lo tanto ese otro modelo requiere menos trabajo, y tiene menos piezas.

  • Scad
Modelo abierto
Modelo Ensamblado
Parametros Lista de parametros para todas las piezas.
Abierto Todas las partes separadas para mejor visualizacion.
Bateria Modelo de la bateria a usar.
Arduino FIO Modelo de Arduino FIO.
Parte trasera La parte trasera contiene, ademas, el acople necesario para la FIO.
Acople la FIO va insertada en estos brazos.
Parte delantera
Rueda
Servo Modelo del servo TowerPro SG90.
Soporte bola superior Soporte superior para la bola en la que se apoya el robot.
Soporte bola inferior Idem para inferior.
Ensamblado Todas las partes unidas y ensambladas, como seria el robot ensamblado.



En diferentes tonos de gris se observan los dos servos y debajo la bateria que ira adherida mediante velcro. En amarillo, las partes trasera y delantera que mantienen juntos los servos. En azul claro, el soporte para la canica, y en azul oscuro la FIO. Se muestra una sola rueda por motivos de visualizacion.





Hardware

Como ya se ha mencionado antes, se usa como hardware principal la tarjeta arduino FIO y como modulo de comunicaciones una tarjeta Wifly RN-XV.

ARDUINO

La tarjeta FIO consta de un microprocesador ATmega328P de 8 bits. La tarjeta proporciona 3,3V y tiene 14 pines I/O digitales (de los cuales 8 pueden servir como PWM) y 8 entradas analogicas. Es posible programarla usando un cable FTDI 3,3V o inalambricamente mediante el XBEE. En la imagen de la derecha se observa la la colocacion del cable en la tarjeta.
Nota: no es posible comunicarse con la tarjeta mediante un cable FTDI 5V, el IDE mostrara un error al intentar subir el sketch a la tarjeta.

conexion FTDI


  • Links de interes
[Esquematico]
[Pagina principal]
[Programar la tarjeta]
[Mas informacion sobre FIO] Pagina de Funnel.




WiFly RN171XV

Este modulo incorpora la tarjeta RN 171 de Roving Networks adaptada a proyectos que precisen migrar desde una configuracion 802.15.4 (Radio) a un sistema de transmision de datos TCP/IP. La diferencia entre esta tarjeta y la RN 171 es simplemente que esta dispone de una configuracion de pines identica a la que usa DIGI con sus XBEE, usando el mismo socket.

WiFly 171 RN XV

Tambien se le conoce como WiFly y es de gran utilidad por su gran versatilidad: Tiene capacidad para conexiones AdHoc (sin punto de acceso), para mantener una conexion con otros dispositivos, asi como para conectarse mediante un punto de acceso (AP, "access point"), por ejemplo un router.

Se ha querido escribir un tutorial para empezar a trabajar con ella y poder configurarla disponiendo del minimo material posible. Es posiible comandarla desde un modulo USB especialmente diseñado para tal fin, pero se ha optado por una configuracion minimalista.


  • Links de interes
[Pagina web del modulo]
[Datasheet]
[Manual de usuario]. Este manual se encuentra en otra pagina

El datasheet nos proporcionala informacion de hardware, pines y el significado del codigo de parpadeo de los 3 LED. En el manual de usuario se encuentran todas las instrucciones de configuracion y algunos ejemplos (AdHoc, HTML, FTP, etc).

Presupuesto

Teniendo en cuenta un IVA del 21% el presupuesto para construir el Icha-bot a día de hoy se detalla a continuación:

  • Batería LiPo 850 mAh = 7.90 * 1.21 = 9.569 EUR
  • Arduino FIO = 19.90 * 1.21 = 24.079 EUR
  • WiFly = 29.157 * 1.21 = 35.28 EUR
  • Gastos envío tourline express España = 7.96 * 1.21 = 9.6316 EUR
Subtotal bricogeek/epulse = 64.917 * 1.21 = 78.55 EUR
  • sg90-mini-servo = 3 * 2uds = 6 EUR
Subtotal Deal Extreme = 6 EUR

Gran total = 84.55 EUR

El robot en acción

Aquí se mostrarán algunos vídeos en los que se ve el robot en funcionamiento.

Telnet

En el primer vídeo se controla mediante Telnet:
Control Telnet
Aquí simplemente tenemos las opciones de avanzar, avanzar rápido, retroceder y parar. Simplemente fase de pruebas.

Java

En el siguiente vídeo el robot se mueve mediante una interfaz java con la que se puede controlar todo el rango de velocidades de cada rueda en ambos sentidos mediante dos Sliders de java (clase Javax JSlider). En el vídeo se mantienen los dos motores a una velocidad constante.
Control Java