Download - Vehiculo controlado por app y Arduino
![Page 1: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/1.jpg)
Grupo de Trabajo: ELABORACIÓN DE MATERIALES
DIDÁCTICOS USANDO LA PLATAFORMA ARDUINO
IES HELIÓPOLISCurso 2013/2014
José Pujol
![Page 2: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/2.jpg)
OBJETIVOS DEL GRUPO DE TRABAJO
1) Control de vehículo mediante aplicación móvil
2) Presentación de la herramienta S4A: Scratch For Arduino
![Page 3: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/3.jpg)
CONTROL DE VEHÍCULO MEDIANTE APP
1) Comunicación Serie Teléfono móvil → Arduino mediante módulo Bluetooth
2) Control de motores mediante Driver L298
![Page 4: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/4.jpg)
CONTROL DE VEHÍCULO MEDIANTE APP
Los datos que envía la app son:
http://es.appszoom.com/android_applications/tools/arduino-controlled-robot_inuri.html
![Page 5: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/5.jpg)
COMUNICACIÓN SERIE
1) Tipos de datos
2) Comunicación Serie
3) Comunicación Arduino → PC
4) Comunicación PC → Arduino
5) Módulo Bluetooth
![Page 6: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/6.jpg)
Tipos de datos
● Enteros- int
Números enteros, ocupan 2 bytes, -32,768 al 32,767
Ejemplo:
int ledPin=13; // variable ledPin de tipo entero igual a 13
● Binarios- boolean
Tienen 2 valores true o false. 1 bit de memoria
Ejemplo:
boolean lectura=false; // variable binaria lectura, estado falso
![Page 7: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/7.jpg)
Tipos de datos
● byte
Guarda un números de 8 bits entre 0 y 255
Ejemplo: byte b=01010101; // variable b de tipo byte
● char
Tipo de datos que ocupa 1 byte de memoria que almacena un carácter. Son almacenados con la numeración decimal correspondiente al carácter ASCII
Ejemplo:
char dato ='A';
char dato=65; // ambos son equivalentes
![Page 8: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/8.jpg)
Comunicación Serie
● Comunica Arduino con PC u otros dispositivos
● Utiliza los pines Rx 0 y Tx 1 conectados al controlador FTDI
● Permite recibir y enviar datos
● Usa un buffer de 64 bytes cola FIFO
![Page 9: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/9.jpg)
Comunicación Serie
● Para enviar y recibir datos usa el código ASCII
● Utilidades:
➔ Monitorizar valores de variables
➔ Depurar programas
➔ Mandar comandos a Arduino
➔ Conexión con otros módulos
![Page 10: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/10.jpg)
Comunicación Serie
![Page 11: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/11.jpg)
Comunicación Serie
● Monitor Serie
![Page 12: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/12.jpg)
Enviar Datos Arduino → PC
Ejemplo de contador
![Page 13: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/13.jpg)
Enviar Datos Arduino → PC
Serial.begin (velocidad)
Abre el puerto serie y establece la velocidad de conexión
Serial.print()
Imprime los datos por el puerto serie
Serial.print (“Texto”);
Serial.print (variables);
Serial.println()
Realiza además un retorno de carro
![Page 14: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/14.jpg)
Enviar Datos Arduino → PC
Ejercicio: monitorizar un sensor por el Puerto Serie.
![Page 15: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/15.jpg)
Enviar Datos PC → Arduino
Nos permite controlar Arduino desde otro dispositivo
Algunas opciones:
● PC desde cable USB
● Teléfono movil vía bluetooth
● Internet via Telnet
![Page 16: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/16.jpg)
Enviar Datos PC → Arduino
Ejemplo: programa básico para recibir datos
![Page 17: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/17.jpg)
Enviar Datos PC → Arduino
Ejercicio: controlar el encendido de un LED desde el teclado mediante las letras H y L
![Page 18: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/18.jpg)
Enviar Datos PC → Arduino
Serial.available ()
Devuelve el estado del buffer del puerto serie y desvela si hay datos dentro de este
Serial.read()
Lee el primer carácter del buffer. Es importante entender que lee un solo carácter (byte)
Serial.flush()
Vacia el buffer del puerto serie
Serial.end()
Desactiva la comunicación serie
![Page 19: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/19.jpg)
Enviar Datos PC → Arduino
Ejemplo: programa básico para recibir datos numéricos
![Page 20: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/20.jpg)
Enviar Datos Arduino → PC
Ejercicio: Controlar la intensidad luminosa de un led mediante el teclado mandando un número entre 0 y 255
Añadir terminador de datos >
Añadir comienzo de cadena <
Ejercicio: Controlar la intensidad luminosa de un led RG mediante el teclado mandando <255R> <255G>
![Page 21: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/21.jpg)
Módulo Bluetooth
Usaremos Módulo HC-06
Características:
● Económico
● Fácil de usar
Modos de funcionamiento:
● Master
● Esclavo
![Page 22: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/22.jpg)
Módulo Bluetooth
Conexión:
Configuración: mediante programa o comandos AT podemos cambiar nombre, y la contraseña, además del modo de funcionamiento
http://giltesa.com/2012/08/10/modulo-bluetooth-hc-06-para-arduino/
![Page 23: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/23.jpg)
Módulo Bluetooth
Pasos para conectar al teléfono móvil:
● Activar modo Bluetooth en nuestro teléfono y comprobar que ve el dispositivo
● Linkarlo: el LED rojo que parpadea debe quedarse fijo
● Descargar un programa de envio de datos
● Comprobar que podemos encende un LED desde el telefono mediante H y L, en Arduino debemos cargar Communication--> Physical Pixel
![Page 24: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/24.jpg)
CONTROL DE MOTORES MEDIANTE DRIVER L298
1) L298
2) Driver
![Page 25: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/25.jpg)
![Page 26: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/26.jpg)
CONTROL DE MOTORES MEDIANTE L298
2) Driver
![Page 27: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/27.jpg)
CONTROL DE MOTORES MEDIANTE L298
Ejemplo: programa básico para controlar un motor
![Page 28: Vehiculo controlado por app y Arduino](https://reader033.vdocumento.com/reader033/viewer/2022052217/556e95ced8b42ad7458b4d31/html5/thumbnails/28.jpg)
Grupo de Trabajo: ELABORACIÓN DE MATERIALES
DIDÁCTICOS USANDO LA PLATAFORMA ARDUINO
IES HELIÓPOLISCurso 2013/2014
José Pujol