You are on page 1of 8

INSTITUTO POLITECNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERIA MECNICA Y ELCTRICA


UNIDAD ZACATENCO
COMUNICACIONES Y ELECTRONICA

MICROPROCESADORES

PRACTICA:
ADAPTADOR BLUETOOTH

PROFESOR: CALZADA SERAFIN FELIPE

ALUMNO: ROMERO VALENCIA CARLOS ALBERTO

GRUPO: 6CV3

Objetivos:
A travs de esta prctica analizaremos y comprobaremos la utilizacin de un adaptador bluetooth conectado al arduino
uno, utilizando una aplicacin para el telfono en este caso android.
Introduccin
En el Arduino habr conectado un Led RGB y un mdulo Bluetooth JY-MCU (tanto el HC-06 como el HC-05 son validos).
Si queris saber ms sobre estos mdulos Bluetooth conectados a Arduino visitad el tutorial que hicimos sobre este tema
en el siguiente enlace (Arduino + Bluetooth).
El diodo Led RGB tiene un ctodo y tres nodos (uno para cada color). Los colores son controlados a travs de PWM.
En su datasheet comprobamos que los voltajes de cada color a una intensidad de 20mA son los siguientes: Red 2 V,
Green 3,2 V y Blue 3,2V. Sabiendo esto juntamente con que el voltaje de salida mximo de los pins del Arduino es de 5V
podemos calcular las resistencias de cada color aplicando la ley de Ohm.

Podemos poner resistencias de 100 ohmios en vez de 90 ohmios ya que estas ltimas son poco comunes, el resultado
final no influir mucho ya que adems hay que contar con la tolerancia de la resistencia.
Material
-Arduino Uno Rev 3
-Mdulo Bluetooth JY-MCU
-Led RGB
-Dispositivo Android con Bluetooth
-Resistencias: 150 ohmios, 100 ohmios x 2, 10k, 5k6
-Fuente alimentacin

Montaje

Qu es App Inventor?
App Inventor es una herramienta de software libre creada por Google Labs en 2011 para crear apps Android. Al cabo de
poco tiempo, su desarrollo se traspas al Massachusetts Institute of Technology (MIT). A travs de web browser se
pueden crear apps Andoid de una manera visual y sencilla gracias a un conjunto de herramientas bsicas. En App
Inventor se empieza diseando la app a travs de un entorno de desarrollo grfico. Despus para programar usa un
lenguaje de programacin basado en un lenguaje visual a partir de bloques Java (muy parecido a Scratch). Las libreras
de estos bloques han sido desarrolladas por el MIT y son de uso libre. En estos bloques encontramos funciones,
sentencias y elementos muy comunes en la mayora de lenguajes de programacin. Gracias a esto podemos crear apps
Android de una manera rpida y sencilla sin tener muchos conocimientos de Java. Una vez finalizado el diseo y la
programacin de la app, se descarga y se instala en un dispositivo Android o tambin podemos probarla en el emulador
que nos proporciona App Inventor.
Para empezar a usar App Inventor, solo tenis que ir a su pgina web (App Inventor) y registrarse.

Crear un App para controlar un Led RGB conectado a Arduino


Lo que haremos en este tutorial ser crear una app Android con App Inventor para controlar un Led RGB que estar
conectado en el Arduino comunicados a travs de Bluetooth. Primero de todo crearemos la app con App Inventor
explicando su proceso paso a paso. Despus haremos el cdigo de Arduino y explicaremos los aspectos ms
importantes de este.
App Inventor
Cuando creamos un nuevo proyecto en App Inventor, nos saldr el App Inventor Designer donde construiremos el diseo
de nuestra app. En el centro tenemos la visualizacin de una pantalla de un dispositivo Android donde iremos poniendo
todos los componentes que queramos. Estos componentes estn en la parte izquierda y tenemos desde botones,
etiquetas, sliders, etc hasta el hardware del dispositivo Android como la cmara, GPS, acelermetro, sonido, etc. Esto
es muy til ya que tenemos la posibilidad de usar los sensores de nuestro dispositivo Android junto a Arduino para
nuestros proyectos. Para poner un componente a la pantalla de visualizacin, tenemos que arrastrarlo hasta esta. Por
ltimo, en la parte derecha de la pantalla tenemos un recuadro donde podremos cambiar las propiedades de los
componentes que insertemos en la app tales como el color, nombre, valores

En esta app hemos puesto un botn que servir para conectarse al Arduino a travs de Bluetooth, unas etiquetas para el
ttulo (LED RGB) y el nombre de los colores (RED, GREEN, BLUE), y tres sliders para controlar los tres colores RGB.
Tambin pondremos un Cliente Bluetooth para establecer la comunicacin Bluetooth. En las propiedades de los sliders,
pondremos MinValue 0 y MaxValue 255. Tambin hemos puesto una imagen de icono de la app subiendo una imagen en
Media, y colocando el archivo en Icon de las propiedades de la pantalla (Screen). Las dems propiedades de los
componentes sirven para cambiar al gusto de cualquiera los colores, medidas y nombres de estos.
Uno vez terminado con el diseo de la app, clicamos en la el botn Blocks en la parte superior derecha de la pantalla
para ir al App Inventor Blocks Editor. Aqu es donde programaremos la app en forma de bloques como si se tratase de un
puzle. En Viewer tenemos una hoja en blanco donde pondremos los bloques. Estos bloques estn en la parte izquierda
en el apartado Blocks donde encontraremos los elementos y funciones ms comunes en los lenguajes de programacin
tales como sentencias, funciones lgicas, funciones matemticas, strings Tambin habr los elementos y funciones
especficos de los componentes que hemos insertado en la app, que en nuestro caso son Bluetooth, un botn y tres
sliders.

La programacin de nuestra app consta de dos partes:


-Bluetooth: La comunicacin Bluetooth depende del botn llamado CONECT que hemos puesto. Antes de pulsarlo, si el
Bluetooth de nuestro dispositivo Android est listo, la app recoger todas las conexiones Bluetooth listadas en este. Esto
lo har al principio de abrir la app. Una vez se pulse el botn CONECT nos saldr este listado donde seleccionaremos el
mdulo Bluetooth conectado al Arduino. Cuando se conecte haremos que el texto del botn se ponga de color azul para
saber que la comunicacin Bluetooth est establecida.
-Sliders: La parte de los tres sliders es la misma para cada uno. Consiste en que cuando haya un cambio de posicin
en uno de los sliders, primero se comprueba si la comunicacin Bluetooth est establecida, y si es as, se enva el valor
de la posicin de los tres sliders siempre en este mismo orden: primero se enva el valor de Red seguido de una coma,
despus se enva el valor de Green seguido de otra coma y por ltimo se enva el valor de Blue seguido de un carcter
de nueva lnea (\n).
Por ejemplo: 125 , 98 , 216 \n
Una vez finalizado con los bloques slo queda poner a prueba nuestra app. Podemos hacerlo desde el emulador de App
Inventor o instalando la app directamente en nuestro dispositivo Android. Para esto ltimo tenemos que ir en el men de
la parte superior izquierda del App Inventor donde pone Build para obtener el archivo .apk de la app. Tendremos dos
opciones: obtenerlo desde cdigo QR que saldr en el centro de la pantalla para enfocarlo directamente con la cmara
de nuestro dispositivo Android para descargarlo e instalarlo directamente en este o descargar el archivo .apk en nuestro
PC para copiarlo en la memoria del dispositivo Android. Sea cual sea la opcin que escojamos, tendremos que poner en
las opciones de nuestro dispositivo Android Permitir la instalacin de aplicaciones de origen desconocido para poder
instalar nuestra app. El aspecto de esta ser este:

En la siguiente imagen hemos puesto un enlace donde podris descargaros el archivo .apk
de la app para instalarla en vuestros dispositivos Android. Tambin hay una archivo .aia
que es el proyecto App Inventor de la app para poder importarlo a vuestra cuenta App
Inventor desde el men Project, Import Project (.aia) from my computer
El link para descargar la aplicacin https://www.dropbox.com/sh/ziomkrw49p9f5dx/zFSvm6Uo8Z

Programa
/*
www.diymakers.es
by A.Garca
Crear App para Arduino con App Inventor
Tutorial en: http://diymakers.es/crear-app-para-arduino-con-appinventor/
*/

#include <SoftwareSerial.h> //Librera que permite establecer


comunicacin serie en otros pins
//Aqu conectamos los pins RXD,TDX del mdulo Bluetooth.
SoftwareSerial BT(10,11); //10 RX, 11 TX.
int ledred=3; //Pin LED Red
int ledgreen=5;//Pin LED Green
int ledblue=6; //Pin LED Blue
void setup()
{
BT.begin(9600);

//Velocidad del puerto del mdulo Bluetooth

pinMode(ledred,OUTPUT);
pinMode(ledgreen,OUTPUT);
pinMode(ledblue,OUTPUT);
}
void loop()
{
//Cuando haya datos disponibles
while (BT.available()>0)
{
int red = BT.parseInt(); //Leemos el primer valor entero (Red) y
lo almacenamos en la variable
int green = BT.parseInt(); //Leemos el segundo valor entero
(Green) y lo almacenamos en la variable
int blue = BT.parseInt(); //Leemos el ltimo valor entero (Blue) y
lo almacenamos en la variable
//Cuando lea el carcter fin de lnea ('\n') quiere decir que ha
finalizado el envo de los tres valores
if (BT.read() == '\n')
{
//Enviamos los valores de los tres colores al LED RGB atravs
de PWM
analogWrite(ledred,red);
analogWrite(ledgreen,green);
analogWrite(ledblue,blue);
}
}
}
Conclusin

Al finalizar esta prctica tuvimos la finalidad de comprender el funcionamiento del adaptador bluetooth,
adems aprendimos a comprender trminos asociados al arduino como el PWM; as como tambin el
funcionamiento del arduino con una aplicacin para el telfono celular.

Bibliografa
http://diymakers.es/crear-app-para-arduino-con-app-inventor/

You might also like