Carro Controlado Por Bluetooth
En este proyecto, diseñamos y construimos una Cybertruck de Tesla. El carro está controlado a través de una aplicación móvil desarrollada en MIT App Inventor y utiliza motores DC y servos, gestionados mediante un puente H L293D y un Arduino Uno, donde lo conectabamos por Bluetooth y lo controlabamos desde nuestro telefono.
Supplies
- Electrónicos:
- Arduino Uno.
- Puente H L293D.
- 4 motores DC.
- 4 llantas.
- 2 servomotores.
- Módulo Bluetooth HC-05.
- Cables de conexión.
- Batería externa de 9V.
- Diseño y estructura:
- Diseño 3D de la Cybertruck en SolidWorks.
- Estructura impresa en 3D.
- Software:
- Arduino IDE.
- SolidWorks.
- MIT App Inventor.
Diseño Del Coche Y Pinza
Creamos un modelo 3D de la Cybertruck con medidas proporcionales a los materiales utilizados. Tuvimos que diseñar la pieza del carro en 4 partes debido a que era muy grande y era muy complicado imprimir la pieza completa.
Para la pinza, utilizamos dos engranes que, cuando el servo giraba 180 grados, estos abrian a las dos pinzas. El brazo y la pinza igual fueron diseñadas en SolidWorks y las imprimimos en 3D.
Diseño De La Interfaz De La App
Utilizamos MIT App Inventor para diseñar la interfaz de la Aplicación, donde:
Primero creamos tres botones para la conexión Bluetooth: Uno para conectarlo, otro para desconectarlo y otro para salir de la app. Despues, coloque un apartado para mover el brazo para agarrar las pelotas, donde habian botones para controlar la pinza y el brazo. Para controlar el coche, coloque unas flechas que indicaban a la dirección que iba el coche y añadi un boton para detener el coche totalmente.
Armado
- Estructura física:
- Ensamblamos las 4 partes de la Cybertruck.
- Montamos los motores DC en las ruedas. Para fijarlos a la CyberTruck, utilizamos unas pestañas que iban debajo y atornillamos los motores.
- Colocamos los servos para el brazo y la pinza y despues con una base la ensamblamos a la estructura del coche.
- Circuito electrónico:
- Conectamos los 4 motores DC al puente H L293D:
- Motor 1 y 2 al canal A.
- Motor 3 y 4 al canal B.
- Conectamos los servos a los pines 9 y 10 del Arduino.
- Conectamos el módulo Bluetooth HC-05:
- TX al pin 0 del Arduino.
- RX al pin 1 del Arduino.
- Alimentamos el sistema:
- La batería alimenta el puente H y, a través de este, los motores.
- El Arduino se alimenta desde la batería y cargamos el código en este.
- Revisar conexiones:
- Nos aseguramos de que los pines y polaridades coincidan según el código.
Programación En Arduino
- Bibliotecas:
- Usamos <AFMotor.h> para controlar los motores DC mediante el puente H L293D.
- Incluimos <Servo.h> para el control de los servomotores.
- Añadimos <SoftwareSerial.h> para manejar la comunicación Bluetooth del HC-05.
- Configuración:
- Declaramos los objetos AF_DCMotor para los cuatro motores DC, asignando los canales 1 a 4.
- Declaramos los objetos Servo para el brazo y la pinza, especificando los pines 9 y 10. Configuramos su angulo inicial con brazo.write(120) y pinza.write(90).
- Configuramos el objeto SoftwareSerial en los pines 0 (RX) y 1 (TX).
- Comandos:
- Implementamos un conjunto de instrucciones con una variable char, que es enviada desde la configuración del MIT App Inventor.
- Movimientos de los motores:
- A para avanzar: los cuatro motores giran hacia adelante.
- B para retroceder: los cuatro motores giran hacia atrás.
- C y D para giros: configuramos diferentes motores para detenerse o girar en dirección opuesta.
- S para detener todos los motores.
- Control de los servos:
- E y F para subir o bajar el brazo.
- G y H para abrir o cerrar la pinza.
- Control de velocidad de los motores:
- Asignamos una velocidad máxima de 255 usando motorX.setSpeed(255) para todos los motores.
Programación En MIT App Inventor
Utilizamos 5 botones con una flecha que indicaba la dirección para cada acción:
- Avanzar (A), Retroceder (B), Girar derecha (C), Girar izquierda (D).
- Subir brazo (E), Bajar brazo (F), Abrir pinza (G), Cerrar pinza (H).
- Pusimos botones para conectar y desconectar el Bluetooth.
- Vinculamos cada botón con su comando correspondiente.
Pruebas
Pruebas
- Prueba de motores y servos:
- Verificamos el encendido de los motores y servos al enviar comandos básicos desde la app conectada por Bluetooth..
- Prueba de movilidad:
- Comprobamos que el carro avance, retroceda, gire o pare dependiendo del boton que presionemos.
- Prueba del brazo robótico:
- Validamoa que los servos funcionen según los comandos enviados desde la app, así como el ángulo al que debian moverse para que la pinza pueda agarrar una pelota.
Downloads
Conclusión
Este proyecto nos permitió integrar conocimientos de diseño, programación y electrónica. La Cybertruck logró funcionar de manera correcta, siendo controlada desde nuestra app. Las principales dificultades fueron ajustar los motores que se muevan en la dirección indicada, pero despues de utilizar el puente H L293D, se nos facilito configurarlos. Aunque tuvimos fallas en el momento con la conexión Bluetooth, el carro pudo ser controlado desde la aplicación y la pinza pudo agarrar pelotas.