Control de vehículo arduino
con aplicación móvil
Tecnología 4ºESO
Antonio Vives
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.
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.
Descripción
● El vehículo tiene 2 ruedas
controladas por 2 servos
continuos.
● Una pinza controlada por
un servo.
● Una cabeza donde lleva
un sensor de ultrasonidos
y que se mueve con un
servo.
● Una luz en la pinza con
un LED.
● Control con bluetooth.
Descripción
Vamos a emplear los siguiente pines del arduino nano:
– 0 RX Bluetoth
– 1 TX BLuetooth
– 2 ECHO Ultrasonidos
– 3 Triger
– 4 Rueda_A1
– 5 Rueda_A2
– 6 Rueda_B1
– 7 Rueda_B2
– 10 Pin Luces
– 11 Servo cabeza con sensor de ultrasonidos
– 12 Servo pinza
Nota: En el presente programa falta programar el sensor de ultrasonidos.
Programa de arduino
● En primer lugar, 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.
Programa de arduino
● En el setup iniciamos la
comunicación serie con la
velocidad de 9600.
● Declaramos los servo de la
pinza y la cabeza.
● Los servo de las ruedas los
hemos convertido en motores
de CC y serán “rueda A” y
“rueda B”.
● Declaramos el pin donde van
las luces.
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.
– 1º valor = estadoadelante
– 2º valor = estadoatras
– 3º valor = estadoluces
– 4º valor = pinza
– 5º valor = cabeza
– Último dato recibido n
Programa de arduino
Cuando leemos n procedemos a
decirle al arduino lo que queremos
que haga:
– “estadoadelante = 1” hacemos que los dos
motores giren en sentido hacia adelante.
– “estadoatras = 1” hacemos que los dos motores
giren en sentido hacia atrás.
– “estadoadelante = 0” y “estadoatras = 0”
hacemos que los dos motores se paren.
– “estadoluces = 1” encendemos, si no,
apagamos el LED.
– Asignamos a “myservo1” el valor de pinza.
– Asignamos a “myservo2” el valor de
Posición_cabeza
– Hacemos un pequeño delay para que se
procese toda la información
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 bluetooth vinculadas con el móvil.
– ADELANTE, ATRÁS, PARO, GIRO_I,
GIRO_D y luces son botones.
– En PINZA y CABEZA se ha colocado un
deslizador para mover los servos de
cabeza y pinza.
Nota: falta programar los giros
Programa App inventor
Al iniciar la aplicación damos
valores iniciales a las
variables y tenemos
desactivados todos los
botones
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
– 1º dato estadoadelante
– 2º dato estadoatras
– 3º dato luces
– 4º dato posición servo pinza
– 5º dato posición cabeza
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
está ocurriendo.
Con el resto de
botones se hará lo
correspondiente.
Programa App inventor
En el caso de los deslizadores, la rutina será la siguiente.
● Con todo esto ya podemos programar el resto de botones.
● Para programar los botones de GIRO hará falta incluir algún
dato más en los que se envían. Por ejemplo:
- Enviar un 2 en Estado_Adelante y que eso haga que cada
motor gire en un sentido.
- Enviar un 2 en Estado_Atras y que eso haga que cada motor
gire en un sentido pero al revés que antes.
(Lógicamente habrá que programarlo adecuadamente en
Arduino).
Resto de botones y mejoras
Enlaces descarga piezas 3D
● Pinza
● https://www.thingiverse.com/thing:2381041
● Ardubot
● https://www.thingiverse.com/thing:603907
● Video
– https://youtu.be/ZW7M60L-NQk

Control vehiculo

  • 1.
    Control de vehículoarduino con aplicación móvil Tecnología 4ºESO Antonio Vives
  • 2.
    Vamos a crearuna 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óndel 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ículotiene 2 ruedas controladas por 2 servos continuos. ● Una pinza controlada por un servo. ● Una cabeza donde lleva un sensor de ultrasonidos y que se mueve con un servo. ● Una luz en la pinza con un LED. ● Control con bluetooth.
  • 5.
    Descripción Vamos a emplearlos siguiente pines del arduino nano: – 0 RX Bluetoth – 1 TX BLuetooth – 2 ECHO Ultrasonidos – 3 Triger – 4 Rueda_A1 – 5 Rueda_A2 – 6 Rueda_B1 – 7 Rueda_B2 – 10 Pin Luces – 11 Servo cabeza con sensor de ultrasonidos – 12 Servo pinza Nota: En el presente programa falta programar el sensor de ultrasonidos.
  • 6.
    Programa de arduino ●En primer lugar, 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 la velocidad de 9600. ● Declaramos los servo de la pinza y la cabeza. ● Los servo de las ruedas los hemos convertido en motores de CC y serán “rueda A” y “rueda B”. ● 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. – 1º valor = estadoadelante – 2º valor = estadoatras – 3º valor = estadoluces – 4º valor = pinza – 5º valor = cabeza – Último dato recibido n
  • 9.
    Programa de arduino Cuandoleemos n procedemos a decirle al arduino lo que queremos que haga: – “estadoadelante = 1” hacemos que los dos motores giren en sentido hacia adelante. – “estadoatras = 1” hacemos que los dos motores giren en sentido hacia atrás. – “estadoadelante = 0” y “estadoatras = 0” hacemos que los dos motores se paren. – “estadoluces = 1” encendemos, si no, apagamos el LED. – Asignamos a “myservo1” el valor de pinza. – Asignamos a “myservo2” el valor de Posición_cabeza – Hacemos un pequeño delay para que se procese toda la información
  • 10.
    Aplicación móvil. La aplicaciónla 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 bluetooth vinculadas con el móvil. – ADELANTE, ATRÁS, PARO, GIRO_I, GIRO_D y luces son botones. – En PINZA y CABEZA se ha colocado un deslizador para mover los servos de cabeza y pinza. Nota: falta programar los giros
  • 11.
    Programa App inventor Aliniciar 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 – 1º dato estadoadelante – 2º dato estadoatras – 3º dato luces – 4º dato posición servo pinza – 5º dato posición cabeza
  • 13.
    Programa App inventor Cadavez 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 está ocurriendo. Con el resto de botones se hará lo correspondiente.
  • 14.
    Programa App inventor Enel caso de los deslizadores, la rutina será la siguiente.
  • 15.
    ● Con todoesto ya podemos programar el resto de botones. ● Para programar los botones de GIRO hará falta incluir algún dato más en los que se envían. Por ejemplo: - Enviar un 2 en Estado_Adelante y que eso haga que cada motor gire en un sentido. - Enviar un 2 en Estado_Atras y que eso haga que cada motor gire en un sentido pero al revés que antes. (Lógicamente habrá que programarlo adecuadamente en Arduino). Resto de botones y mejoras
  • 16.
    Enlaces descarga piezas3D ● Pinza ● https://www.thingiverse.com/thing:2381041 ● Ardubot ● https://www.thingiverse.com/thing:603907 ● Video – https://youtu.be/ZW7M60L-NQk