Este documento describe un proyecto para controlar un vehículo con ruedas mediante una aplicación móvil creada con App Inventor y un Arduino Nano. La aplicación permite controlar la dirección y velocidad del vehículo a través de botones y deslizadores, enviando las instrucciones al Arduino vía Bluetooth. El Arduino controla dos motores y luces LED siguiendo las órdenes recibidas de la aplicación móvil.
1. Control de vehículo arduino
con aplicación móvil
Tecnología 4ºESO
Antonio Vives y Álvaro Andrés
2. • Vamos a crear una aplicación
con app inventor para el control
de un vehículo vía bluetooth a
través de arduino.
Control de un vehículo con arduino y una aplicación
creada con app inventor.
3. Descripción.
● Para la gestión del vehículo vamos a emplear un arduino nano y
con la ayuda del móvil y vía bluetooth vamos a darle las
instrucciones necesarias para su movimiento y control.
4. Descripción
● El vehículo tiene 4 ruedas, dos de
ellas controladas por 2 servos
continuos.
● La dirección controlada por un
servo, que sirve para girar las
ruedas de delante.
● Un módulo L298n para control de
motores.
● Dos luces LED en la parte delantera.
● Control con bluetooth.
5. Descripción
● Vamos a emplear los siguiente pines del arduino
nano:
– 0 RX Bluetoth
– 1 TX Bluetooth
– 2 Pin Motor1_1
– 3 PMW Velocidad Motor1
– 10 Pin Motor1_2
– 5 PMW Servo control dirección
– 6 PMW Velocidad Motor2
– 7 Pin Motor 2_1
– 8 Pin Motor2_2
– 9 Pin Luces
6. Programa de arduino
● Primero Incluimos la librería de
los servos, que es la que
vamos a utilizar.
● Después declaramos todas las
variables que emplearemos en
el programa.
● Los pines de comunicación “0”
y “1” no hace falta declararlos
ya que son los que utiliza
habitualmente arduino.
7. Programa de arduino
● En el setup iniciamos la
comunicación serie con al
velocidad de 9600.
● Declaramos el servo de la
dirección.
● Los servos de las ruedas los
hemos convertido en motores
de cc y serán “Motor1” y
“Motor2”.
● Declaramos las variables de la
velocidad de las ruedas.
● Declaramos el pin donde van
las luces.
8. Programa de arduino
● La comunicación con el arduino
es vía serie a través de bluetooth.
● Le pasaremos la información de lo
que queremos que haga a través
de unos valores numéricos
separados por comas y al final de
la orden llegará siempre un n.
– 1er valor = estadoadelante
– 2º valor = estadoatras
– 3er valor = estadoluces
– 4º valor = angulo
– 5º valor = estadovelocidad
– Ultimo dato recibido n
9. Programa de arduino
● Cuando leemos n procedemos a
decirle al arduino lo que queremos
que haga:
– Estodoadelante = 1 hacemos que los dos
motores giren en sentido hacia adelante.
– Estodoatras = 1 hacemos que los dos
motores giren en sentido hacia atrás.
– Estodoadelante = 0 y estradoatras = 0
hacemos que los dos motores se paren.
– Asignamos a las luces LED el valor de
“estadoluces”.
– Asignamos a myservo el valor de
“angulo”.
– Asignamos a “velocidad1” y a
“velocidad2” el valor de estadovelocidad.
– Hacemos un pequeño delay para que se
procese toda la información:
10. Aplicación móvil.
● La aplicación la vamos a crear con app
inventor, quedando el diseño como el de
la imagen.
– Conectar Bluetooth es un desplegable que nos
dará todas las Macs de bluetooths vinculadas
con el móvil.
– Adelante, paro, atras, LucesON y LucesOFF son
botones.
– Para mover la dirección y el cambiar la velocidad
se han colocado dos deslizadores.
– Entre los botones “Adelante” y “Paro” hay una
etiqueta que indica el estado en el que se
encuentra el vehículo.
11. Programa App inventor
● Al iniciar la aplicación damos
valores iniciales a las variables y
tenemos desactivados todos los
botones.
12. Programa App inventor
● Cuando tocamos el desplegable
nos sale una lista de todos las
MACs vinculadas con el dispositivo
y cuando elegimos y conectamos
cambiamos el color del
desplegable, enviamos el primer
dato que será el estado de reposo
del vehículo y habilitamos todos los
botones.
● Dato enviado 0,0,0,90,55n
– 1er dato “estadoadelante”
– 2º dato “esatadoatras”
– 3er dato “estadoluces”
– 4º dato “angulo”
– 5º dato “estadovelocidad”
13. Programa App inventor
● Cada vez que tocamos un botón o el deslizador enviamos toda la información, aquí
tenemos el ejemplo del botón adelante. En este caso ponemos la variable
Estado_Adelante a 1 y Estado_Atras a 0 y ponemos el texto de lo que esta ocurriendo.
Con el resto de botones se hará lo correspondiente.