Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Configuración de Un Módulo Arduino para
Configuración de Un Módulo Arduino para
DEPARTAMENTO DE TECNOLOGÍA
ELECTRÓNICA (http://gtebim.es)
Práctica 2-B
Sistema Arduino Bluetooth
1
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
2
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
2 Material y montaje
2.1 Material
● Hardware
■ Ordenador personal con sistema operativo (Windows, Linux o Mac OS).
■ Mochila USB Bluetooth (en el caso de que el ordenador personal no disponga de
Bluetooth).
■ Placa “Arduino BT (Bluetooth)” [1].
■ Alimentación para la placa “Arduino BT”.
■ Tres diodos LED y tres resistencias de 65 para el desarrollo de un circuito
electrónico simple.
■ Una placa de inserción.
● Software
■ Entorno de desarrollo “Arduino” [2].
2.2 Montaje
3
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
4
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
4. Conectar la mochila USB Bluetooth al ordenador personal e instalar los drivers que
permitan al sistema operativo gestionar dicho módulo (en el caso de que el sistema
operativo no los instale automáticamente).
5. Vincular la placa “Arduino BT” al ordenador personal. Para ello hay que utilizar el
software del sistema operativo (Windows, Linux o Mac OS) que permita manejar el
Bluetooth pudiendo escanear dispositivos y conectarse a la placa que se esté
utilizando. El nombre de la placa está escrito en la parte inferior de la misma y es de la
forma “ARDUINOBT-X”, donde X es un número identificador de la misma. Al
intentar conectarse, el ordenador pedirá un código PIN que, por defecto, es el “12345”.
● Por cada comando AT explicado a continuación se debe enviar un fin y retorno de línea.
● Una vez enviado se debe recibir del módulo Bluetooth: ECO del comnado (con el fin y
retorno de línea). Se recibirá un OK sólo para el comando AT.
● Se explican los comandos básicos para la práctica. Para más detalle consultar la
documentación adjunta.
5
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
CALL Crear conexión con CALL address target connect_mode CALL 00:07:80:80:52:27 1 RFCOMM
dispositivo remoto Respuesta OK:
Address: dirección mac del dispositivo CALL 0
remoto. CONNECT 0 RFCOMM 1
Target: Puerto de conexión abierto del Respuesta errónea:
dispositivo remoto. NO CARRIER 0 ERROR 406
Connect_mode: canal RFCOMM RFC_CONNECTION_FAILED
.
CLOSE Cerrar conexión CLOSE link_id CLOSE 0
con dispositivo Link_id: Identificación del enlace de Respuesta OK:
remoto conexión con el dispositivo remoto. NO CARRIER 0 ERROR 0
6
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
SELECT Permite SELECT conexion (Primero hacemos un List para ver el identificador
seleccionar el de cada conexión)
dispositivo que ya Conexión: Seleccionamos la conexión del SELECT 1
está conectado al dispositivo remoto al que le enviaremos Respuesta OK:
cual queremos los datos. (nada)
enviarle datos.
*Podemos tener hasta 7 conexiones con
otros dispositivos simultáneas.
SET Para configurar el Hay tres opciones: SET BT NAME PRACTI A1HWD
módulo Bluetooth. SET BT CLASS 011100
- SET BT option value SET BT PAGEMODE 3 2000 1
- SET CONTROL option values SET CONTROL BAUD 115200,8n1
- SET PROFILE profile NewName SET CONTROL ECHO 7
SET PROFILE SPP SALUDA_HWD
Para SET BT: SET BT AUTH * 1234
7
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
Tabla 1
Tabla 2
8
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
● La función setup se ejecuta una única vez cada vez que la placa se reinicia. Suele
utilizarse para realizar todos los procesos de inicialización de la placa.
1.3. Completar la función setup con el código necesario para configurar el módulo
Bluetooth WT-11.
● En primer lugar, mencionar que el pin número 7 del microcontrolador que incluye
la placa está conectado al RESET del módulo WT-11.
● Destacar también que la comunicación entre el microcontrolador de la placa y el
módulo WT-11 se realiza a través de una UART.
Por tanto, en este caso, la función setup se encargará de resetear el módulo WT-
11 y mandarle los comandos AT pertinentes (a través de la UART) para configurar el
módulo Bluetooth y permitir la comunicación entre el ordenador y la placa.
9
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
1.4. Completar la función loop con el código necesario que permita transmitir mensajes
desde la placa “Arduino BT” al ordenador personal a través de la tecnología Bluetooth.
10
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
Una vez terminado el programa es necesario compilarlo. Para ello, hay que
presionar el botón “Verify” del entorno de desarrollo:
11
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
2. También hay que seleccionar el puerto COM que se estableció entre el ordenador
personal y la placa “Arduino BT” en el momento en que se realizó la vinculación.
Concretamente se suelen establecer dos puertos COM, uno saliente y otro entrante.
Hay que seleccionar el puerto COM saliente (mirar en la configuración del Bluetooth
para diferenciar el puerto saliente y entrante). Este puerto es utilizado por el entorno
de desarrollo para subir el programa a la placa, siempre a través de una comunicación
Bluetooth.
12
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
13
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
- int Serial.available();
Indica si se ha recibido algún dato a través de la comunicación serie Bluetooth.
Devuelve 0 si no hay disponible ningún dato y 1 si hay datos preparados para ser leídos.
- char Serial.read();
Devuelve el dato, en forma de carácter, que se ha recibido a través de la
comunicación serie Bluetooth.
5 Hitos de la práctica.
Es muy importante no alterar ninguno de los comandos de configuración para esta placa
sobre el módulo bluetooth. El hecho de cambiarlos puede provocar el suspenso de la práctica.
Para realizar los siguientes apartados tendrás que tomar la referencia la tabla de comandos, tabla
1, explicada en este documento:
Hito 1) Realizar todos los pasos descritos en el apartado 2.2 para realizar el montaje de la
práctica. Este paso debe ser revisado por el profesor.
Hito 2) Analizar los distintos comandos de las tablas que aparecen en la sección 3. Debes
encontrar el comando para modificar la configuración de la cobertura del chip bluetooth. Indica
en la entrega final al profesor (lee la nota final) los comandos y atributos seleccionados.
14
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
Hito 4) Realizar un programa para la placa de Arduino que integre un protocolo para recibir una
serie de comandos para controlar el encendido y apagado de los led’s de la placa.
● Un ejemplo del protocolo está explicado en los anexos
● Cada led simboliza lo siguiente:
• Led1: luz del patio.
• Led2: luz del salón.
• Led3: luz del dormitorio.
• Led4: luz del aseo.
● El objetivo es que en la siguiente práctica, una vez realizada la 1 y la 2, el
alumno pueda controlar mediante un teléfono móvil con Bluetooth el sistema
de iluminación del kit de las prácticas, que hará las veces de sistema domótico
de un hogar.
Hito 5 - optativo) Incorporar un sensor de temperatura a la placa. Además, habrá que incorporar
la interpretación de un comando que cuando se reciba se envíe al teléfono móvil del usuario la
temperatura.
NOTA: El día de la entrega final el alumno deberá adjuntar en la memoria cómo ha ido
realizando cada uno de los hitos de esta práctica, detallando las cuestiones de diseño e
implementación. Se valorarán diagramas de estados y también indicar los roles que se han
adquirido en la práctica, así como las tareas de cada rol y el porcentaje de participación.
15
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
Anexos
Anexo sobre el protocolo de encendido de bombillas
¿Recibido OK1ON?
Visualizar respuesta Enviar al teléfono:
recibida. OK1ON
¿Recibido OK1OFF?
Visualizar respuesta Enviar al teléfono:
recibida. OK1OFF
Fin
17
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
Es una aplicación desarrollada para Linux que permite manejar los terminales conectados
al PC. En este caso, utilizaremos su funcionalidad para comunicarse con el puerto serie de la
placa de entrenamiento de la práctica.
● Para arrancar el programa ejecutaremos “minicom –s” para configurar los valores de la
comunicación con el puerto serie.
Imagen 1
o En este caso está todo correcto, pero si queremos cambiar alguna opción tenemos
que pulsar la letra indicada en cada opción. En este caso para cambiar la
configuración de los baudios habrá que pulsar la tecla E.
Imagen 2
18
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
Imagen 3
Programa en c
En este caso, se os facilitará un programa para realizar las mismas tareas que en Windows.
El programa se ejecutará en un terminal del siguiente modo:
./serial_test dispositivo velocidad núm_bits bit stop paridad tipo_pantalla
Ejemplo:
Nota: Es importante, tener permisos de lectura y escritura en /dev/ttyS0. Para ello, como
root se debe ejecutar en un terminal:
chmod a+rx /dev/ttyS0
Para introducir los comandos se hace igual que en el hyperterminal. Tecleamos los mismos
comandos que para el caso del punto anterior.
Referencias
[1] http://www.arduino.cc/en/Main/ArduinoBoardBluetooth
[2] http://www.arduino.cc/en/Main/Software
[3] http://www.atmel.com/dyn/resources/prod_documents/doc2545.pdf
19
DTE Domótica y Sistemas Embebidos para Comunicaciones Inalámbricas- Curso 2011-2012
20