Los más populares


Reto promovido entre varios Makers. Consiste en crear el baile más chulo y multitudinario del mundo robot con varios Zowi, Otto, MiniZowi y Bobwi.

Tuwi

Publicado: 11 Junio de 2017.

Después de un tiempo sin publicar en el blog, hoy recupero uno de los proyectos que presenté en la MakerFaire de Perpignan y que aún tenía pendiente de publicar.

Se trata de un robot de dos ruedas impreso en 3D. Por su semejanza a MiniZowi y por el juego de palabras que viene del término en ingles (two wheels) le he llamado Tuwi.
El funcionamiento de un robot de dos ruedas es bastante sencillo, si las dos ruedas giran a la misma velocidad el robot va en dirección recta y biceversa para ir hacia trás. Si por ejemplo la rueda izquierda va algo mas rápido que la derecha el robot gira a la derecha y al contrario girará a la izquierda. Y si las ruedas giran a la misma velocidad pero en sentido contrario el robot gira sobre sí mismo.
La electrónica y el software de Tuwi no son muy complejos pero merece la pena explicar cada parte por separado ya que consta de varias técnicas para que todo funcione correctamente.


El Cerebro de Tuwi.
Como casi todos los proyectos electrónicos inteligentes, Tuwi funciona con a una placa de Arduino Nano v3.0. Dentro del programa de Arduino controlamos el movimiento de las ruedas, su velocidad, el sensor de ultrasonidos, la comunicación vía bluetooth con el teléfono móvil y los sonidos reproducidos por el buzzer.
El programa de Tuwi esta disponible en GitHub.

Control de movimiento.
Tuwi se mueve gracias a dos motores de corriente continua (DC) alimentados por seis pilas de 1,5V AA que a su vez alimentan toda la electrónica necesaria. Estos motores necesitan un circuito integrado para el cambio de giro y el control de velocidad. Yo he utilizado el L293B, un puente en H de cuatro canales.
Aquí os dejo el esquema de conexión de la parte motora:
Con las salidas digitales de Arduino 7, 8, 12 y 13 se controla la dirección de cada motor y con las salidas digitales 9 y 11 se controla la velocidad mediante la señal PWM.

Control de velocidad PID.
Cuando conectamos la misma tensión a dos motores eléctricos idénticos, es muy difícil que ambos motores giren a la misma velocidad ya que sus características mecánicas y eléctricas no son exactamente iguales.
Cuando la dirección de un robot depende directamente de la velocidad de cada rueda, es necesario hacer un control de velocidad de giro de cada eje para conseguir que la dirección del movimiento sea la adecuada.

Un PID consiste en un algoritmo matemático que midiendo la velocidad real, consigue modificar la entra, en este caso la tensión, para obtener la velocidad deseada de forma automática.

Para la medición de la velocidad angular de cada rueda se utiliza un sensor de infrarojos que mide el paso de las ranuras de una rueda acoplada al eje, como se ve en la imagen.
La señal de cada sensor es leída por Arduino como una interrupción. Contando cada endidura en relación al tiempo transcurrido es posible el cálculo de la velocidad angular.
En Arduino se pueden encontrar librerías que facilitan la implementación del todo el software.

Aquí os dejo el esquema de conexión de esta parte:
Sensor de ultrasonidos y avisos acústicos:
Con el sensor de ultrasonidos se puede medir la distancia que hay a un objeto. Con esto, he creado un modo que Tuwi sigue tu mano dejando una distancia fija cada vez.
Con el buzzer se reproducen sonidos en el encendido, cambios de modo, etc.

He decidido incluir estos dos sensores en el mismo apartado porque, aunque no tenga nada que ver, me dieron problemas a la hora de la programación.
Resulta que las librerías existentes de ambos sensores me dieron problemas así que tuve que ingeniarme una función para poder reproducir los sonidos sin problema.

En una parte del código se recogen los distintos sonidos que se pueden reproducir.

En la imagen se ve la conexión de los dos sensores.

Comunicación bluetooth.
Para poder controlar a Tuwi mediante un teléfono móvil o una tablet necesitamos un dispositivo bluetooth que sea capaz de comunicarse con estos aparatos. Este dispositivo es un el módulo HC-05. Gracias al protocolo ya incluido, podemos comunicarnos vía bluetooth con las funciones Serial de Arduino.

Antes de conectarnos con nuestro aparato Android, es necesario configurar el módulo bluetooth conectándolo a la placa de Arduino y ejecutando el código hc06_bt_config.ino adjunto en los archivos a descargar.
Para controlar a Tuwi es necesario descargarse la aplicación Joystick BT Commander.

Para acabar dejo la lista de materiales electrónicos necesarios:
- 1x Arduino Nano v3.0
- 2x Motores DC de 3.7V
- 1x Sensor ultrasonidos HC-SR04
- 1x Módulo bluetooth HC-05
- 2x Módulo encoder HC-020K
- 1x Buzzer
- 2x Condensadores 100 nF
- 1x L293B
- 1x Porta baterias 4xAA
- 1x Interruptor
- 3x Conectores dobles
- 1x Placa Protoboard

Y como siempre dejo los enlaces de descarga y unas fotos del interior de Tuwi.

Archivos .STL
Archivos arduino.


2 comentarios:

  1. Hola! Estoy armando este robot y estoy teniendo problemas con la conexion de la bateria y con la compilacion del codigo, no puedo agregar las librerias. Me podrias ayudar??

    ResponderEliminar
  2. Hola @asdas, claro que te puedo ayudar, primero debes conectar la bateria al Ets de tu bythë, alli podras inciar con la conexion la cual detectara tu biblioteca referente a el arduino, alli podras ver a tu perro bailar mientras te da sida.

    ResponderEliminar