Cómo hacer un robot controlado por un mando de PS2

Si estás aprendiendo Arduino y quieres ir un paso más allá en tu aprendizaje, te traigo un tutorial que te encantará, pues en este artículo voy a enseñarte cómo crear un robot controlado por un mando de PlayStation 2 inalámbrico. Además, los principios y pasos que podrás encontrar en este artículo también podrás aplicarlos a otros tipos de robots y dispositivos, así que te vendrá bien conocer estas bases para poder continuar con tu camino en Arduino.

Herramientas y materiales

Para llevar a cabo este proyecto necesitarás las siguientes herramientas:

  • Un soldador para cables. Normalmente los motores DC ya incluyen cables soldados en sus terminales, pero es posible que en algún momento estos se rompan y tendrás que soldarlos de nuevo, por lo que es recomendable tener un soldador y estaño a mano.
  • Material no conductivo (como goma EVA). Este tipo de material te vendrá bien para intercalar entre las placas y las partes de metal para prevenir posibles cortocircuitos.
  • Cinta adhesiva de doble cara. Lo utilizarás para pegar la goma EVA o el material no conductivo que hayas elegido a las placas del circuito, así como para la instalación del módulo H-Bridge.
  • Tijeras. Para cortar la goma EVA en rectángulos.

Asimismo, necesitarás contar con estos materiales:

  • Placa de desarrollo de Arduino Uno. Se utiliza como el controlador principal del robot.
  • Módulo H-Bridge con canal dual L298N. Este módulo permite que las señales 3.3V de Arduino se amplifiquen para los motores que necesitan 12V.
  • Chasis de un tanque robot DIY. Se trata de un kit estupendo que incluye todo lo que necesitas para construir un tanque robot, que es en lo que se basa este proyecto: dos motores DC, engranajes, pernos, tuercas y demás. Incluye incluso las herramientas para construirlo, así que si eres un principiante es un kit muy bueno para que te inicies.
  • Un mando inalámbrico de PS2. Será el mando de control del robot, pues es capaz de enviar señales de forma inalámbrica a un receptor.
  • Tres baterías 18650 3.7V.
  • Soporte de batería 3S 18650.
  • Cargador de batería 18650.
  • Cables de puente. Te recomiendo tener a tu disposición 6 cables de puente macho-hembra y al menos 2 macho-macho.
  • Un cable USB. Lo necesitarás para poder subir el código, aunque la mayoría viene ya con su propio cable.

Si tienes dudas con respecto a cualquiera de estos materiales, por ejemplo si alguno de ellos se puede sustituir por algún material o herramienta del que ya dispongas en casa o si es posible llevar a cabo el proyecto sin uno de ellos, puedes consultar el portal https://programarfacil.com/ para más información, ya que es un portal especializado precisamente en Arduino.

Montaje del robot

El primer paso será montar el robot. Ya dispones del kit de construcción, por lo que podrás basarte en sus propias instrucciones para llevar a cabo su montaje. Hay quien prefiere buscar sus propias opciones fuera de los kits, y algunos profesionales ya han desarrollado formas de construir robots de estas características desde piezas independientes. Hay muchos kits que carecen de todas las piezas necesarias para montar un robot así, ya que se trata de un procedimiento complejo en el que se requieren muchas partes, pero si estás iniciándote será mejor que optes por un kit.

Esto es, si no tienes la suficiente experiencia para saber a qué piezas recurrir consiguiéndolas de forma independiente, lo mejor que puedes hacer es comprar un kit, y si no te convence por la posible falta de piezas, nuestra recomendación es que optes por cualquiera de los kits de la tienda Banggood, concretamente el DIY RC Robot Chassis Tank, pues es con el que se ha trabajado en este proyecto. Se trata de un kit especialmente completo, con piezas de buena calidad y varias de repuesto, lo que supone una ventaja.

Incluye también las herramientas para construirlo, aunque su única pega es que no incorpora demasiada documentación al respecto, por lo que si eres un principiante te vendrá bien a nivel de materiales y herramientas (en tanto que posiblemente no tendrás las necesarias en casa) pero tendrás que buscar otras fuentes de información, ya que el kit en sí no lo incluye.

Conexión del circuito

En la parte trasera del robot tienes que instalar una fuente de alimentación de tres baterías 18650, proveyendo 11.1V al robot, lo cual es suficiente para dar electricidad a 12V motores DC. Para el control de los motores se utiliza un H-Bridge con canal dual L298N, recibiendo algunas señales 5V de la placa Arduino y proveyendo voltajes más altos a los motores. Además, permite a los motores funcionar en ambas direcciones, en función de la combinación de las señales.

Finalmente, para conectar cada dispositivo tendrás que hacerlo según los esquemas. Aquí te dejo un vídeo sobre el montaje completo del robot donde podrás ver más detalles con respecto a este punto:

https://www.youtube.com/watch?v=1oH0zqkGxNc&ab_channel=IgorFonsecaAlbuquerque

Montaje Arduino IDE

Para este proyecto tendrás que recurrir a Arduino IDE para programación de la placa Arduino. Es tan fácil como descargarte la última versión de Arduino IDE (asegúrate de encontrar la versión adecuada para tu sistema operativo, ya sea Windows, Linux o MAC OSX). La descarga es gratuita, y una vez la tengas tendrás que instalarlo y ejecutarlo.

Asimismo, tendrás que añadir las librerías, en este caso la librería Arduino PS2X. Descomprime la carpeta una vez la hayas descartado y copia los archivos a las librerías de Arduino IDE.

Mando inalámbrico de PS2

El mando inalámbrico de PS2 es una herramienta fantástica para proyectos robóticos de este tipo, ya que tiene muchos botones, lo que proporciona posibilidades casi infinitas para confeccionar los controles de tu robot. En este caso tendrás que descargar la librería PS2X de Bill Porter para utilizarla a modo de interfaz entre el mando y la placa de Arduino Uno. Esta librería define una clase PS2X al mando, que contiene métodos para leer entradas analógicas y digitales del joystick.

Una vez se ha determinado el objeto, tiene que vincularse a los pines de Arduino I/O, asegurándonos de que no hay errores con las conexiones o con el mando en sí. Ten en cuenta que las principales funciones de esta librería serán las de lectura de entradas digitales y analógicas. En el vídeo que podrás ver más arriba podrás conocer los códigos y métodos que tienes que emplear para configurar correctamente el mando y alinearlo con tu robot.

Se trata de un proyecto relativamente complejo, pero totalmente apto para principiantes, así que si estás iniciándote en el mundo Arduino y quieres probar a controlar tu propio robot con un mando de videojuegos que ya no utilices, este es el proyecto perfecto para adentrarte en ello.