Grupo de Trabajo Elaboración de materiales didácticos usando la plataforma Arduino
Objetivos:
- Control de vehículo mediante app y bluetooth
- Presentación de la herramienta S4A
1. Grupo de Trabajo:
ELABORACIÓN DE MATERIALES
DIDÁCTICOS USANDO LA PLATAFORMA
ARDUINO
IES HELIÓPOLIS
Curso 2013/2014
José Pujol
2. 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
3. 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
4. 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
5. 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
6. 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
7. 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
8. 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
9. 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
13. 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
15. 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
16. Enviar Datos PC → Arduino
Ejemplo: programa básico para recibir datos
17. Enviar Datos PC → Arduino
Ejercicio: controlar el encendido de un LED desde el
teclado mediante las letras H y L
18. 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
19. Enviar Datos PC → Arduino
Ejemplo: programa básico para recibir datos numéricos
20. 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>
22. 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/
23. 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