Matlab_Arduino_Bluetooth

download Matlab_Arduino_Bluetooth

of 11

description

Guia basica para usar matlab y arduino via bluetooth

Transcript of Matlab_Arduino_Bluetooth

  • Comunicacin Bluetooth entre Arduino Mega 2560 y Matlab

    Universidad del Cauca

    Facultad de Ingeniera Electrnica y Telecomunicaciones

    Programa de ingeniera en automtica industrial

    2015

  • Comunicacin Bluetooth entre Arduino Mega 2560 y Matlab

    Juan Pablo Arcos Merchn

    Alejandro Josu Torrente Caldern

    Director: Ph.D Carlos F. Rengifo R

    Universidad del Cauca

    Facultad de Ingeniera Electrnica y Telecomunicaciones

    Programa de ingeniera en automtica industrial

    2015

  • Elementos Hardware y Software:

    Hardware:

    Arduino Mega 2560

    Modulo Bluetooth HC-06

    Computador con sistema operativo Windows 10

    Software:

    Arduino IDE 1.0.6

    Matlab R2015a

    Conexin entre el Modulo Bluetooth HC-06 y la tarjeta Arduino:

    El modulo Bluetooth HC-06 cuenta con 4 pines:

  • VCC

    GND

    TXD

    RXD

    El modulo Bluetooth HC-06 utiliza el protocolo UART RS 232 serial.

    El pin VCC va al pin 5V de la tarjeta Arduino, este le da la alimentacin al

    dispositivo.

    GND va a tierra en el Arduino.

    TXD va al RX0 de la tarjeta (pin 0).

    RXD va TX0 de la tarjeta (pin 1).

    EMPAREJAMIENTO DEL MODULO Y EL EQUIPO

    Ahora que ya se tiene clara la conexin del mdulo Bluetooth con Arduino, se

    procede a conectar la tarjeta al PC para permitirle la alimentacin a esta y a su

    vez la descarga del cdigo que se realice.

    Antes de descargar el cdigo a la tarjeta arduino, se procede a emparejar el

    modulo Bluetooth con el computador, esto se realiza de la siguiente manera:

    1. Se debe abrir los dispositivos Bluetooth, esto lo hacemos haciendo click

    en el icono Bluetooth que se encuentra en la seccin de notificaciones

    como se ve en la siguiente imagen.

    2. Lo siguiente que se debe hacer es mostrar los dispositivos Bluetooth a los

    que puede acceder el computador.

  • 3. Lo primero que se debe hacer para poderse emparejar al mdulo

    Bluetooth es activar el Bluetooth del computador, cuando se activa el

    Bluetooth se debe esperar hasta que busque los dispositivos, cuando

    aparezca el dispositivo HC-05 o HC-06 (depende del mdulo que se

    tenga) se da click sobre l y seleccionar emparejar, esto pedir una

    contrasea para poder emparejar los dispositivos, normalmente en los

    mdulos HC-05 y HC-06 la contrasea 1234 o 0000, para nuestro

    caso es 1234. Esto ser suficiente para emparejar el dispositivo y podr

    cerrar las ventanas. Si despus de un rato el computador no encuentra

    dispositivos Bluetooth, por favor siga con la instruccin 4.

    4. Si el computador no encuentra dispositivos Bluetooth despus de activar

    el Bluetooth del computador, significa que los controladores del Bluetooth

    del computador no estn actualizados, as que se procede a actualizar los

  • controladores. En la ventana dispositivos Bluetooth (Imagen anterior) se

    da click sobre Ms opciones de Bluetooth.

    5. Cuando abre la configuracin de Bluetooth vaya a la pestaa Hardware,

    aqu podr ver los controladores del Bluetooth, para actualizarlos da click

    sobre el controlador y luego da click en propiedades. Esto se debe hacer

    para todos los controladores.

    6. En esta ventana encontrara informacin acerca del controlador

    seleccionado, para actualizarlo dar click sobre Cambiar la configuracin.

    7. Dar click sobre la pestaa Controlador y luego dar click sobre Actualizar

    controlador.

  • 8. Luego dar click sobre Buscar automticamente software de

    controlador actualizado; cabe destacar que para poder actualizar los

    controladores el quipo debe estar conectado a internet. Despus de

    un momento Windows le informara si ya esta actualizado o el

    controlador o descargara la actualizacin. Como se dijo antes, se debe

    actualizar todos los controladores de Bluetooth

    9. Despus de cerrar todas las ventanas debe repetir los pasos, y si realizo

    bien la actualizacin de los controladores en el paso 3 ya le debe aparecer

    el dispositivo Bluetooth del mdulo, y podr emparejarlo.

  • ARDUINO

    Ahora se procede a cargar Arduino IDE 1.0.6 y se verifica que el puerto serial

    coincida con el de la tarjeta y que este seleccionada la Arduino Mega 2560. Al

    terminar estos pasos se puede comenzar con la programacin de la tarjeta.

    El siguiente es el cdigo que se realiza en Arduino IDE el cual se cargara en ella:

    void setup() {

    Serial.begin(9600); //Se inicia la comunicacin serial

    delay(5000); //Se espera 5 segundos para conectar el Bluetooth

    }

    void loop() {

    Serial.println("*"); //Este asterisco indica el comienzo de la comunicacin

    for(int i=1; i

  • MATLAB

    Ahora se procede a cargar MATLAB, rn un nuevo script se realiza el siguiente

    codigo:

    clc , clear all, close all;

    %instrhwinfo('Bluetooth'); %Informacin sobre el hadward Bluetooth

    %Out = instrhwinfo('Bluetooth','HC-06'); %Informacin del hardward Bluetooth

    HC -06

    FBTooth = Bluetooth('HC-06',1); %Se crea un objeto Bluetooth con el HC-06

    fopen(FBTooth); %Se abre la comunicacin Bluetooth

    String = fgets(FBTooth); %Se lee la siguiente lnea del objeto Bluetooth

    while String ~= '*',

    String = fgets(FBTooth); %Se lee la siguiente lnea del objeto Bluetooth

    end

    NDatos = 30000; %Numero de datos que se van a recibir

    Datos = zeros(NDatos,1); %Se guarda la memoria para los datos

    i = 1;

    while i = 1 %Cuando haya informacin en el objeto

    Bluetooth

    Datos(i) = str2double(fgets(FBTooth)); %Convierte de string a doble y lo

    va guardando en la variable datos

    i = i + 1; %Realiza esta operacin de lectura hasta que lea los nmeros

    de datos especificados

    end

    end

    fclose(FBTooth); %Cierra la comunicacin del objeto Bluetooth

    plot(Datos,(1:NDatos)) %Se dibuja los datos recibidos

    %Como se ha enviado los nmeros del 1 al 30000 se debe ver una funcin

    %creciente

  • EXPLICACION DEL CODIGO EN MATLAB

    Para poder recibir informacin por Bluetooth primero se debe crear un objeto

    Bluetooth, pero antes de esto se debe verificar los dispositivos Bluetooth a los

    que se puede acceder, esto lo hacemos en las primeras lneas de cdigo,

    cuando se sabe que dispositivos hay y en que canales, se procede a abrir, para

    nuestro caso debemos conectarnos al mdulo HC-06 por el canal uno.

    Cuando se crea el objeto Bluetooth se debe abrir la comunicacin, para poder

    enviar y recibir datos. La clave; como se explic en el cdigo Arduino, es el

    asterisco, cuando Matlab recibe el asterisco este procede a guardar los datos

    recibidos. Mientras Matlab no reciba el asterisco (comienzo del envi de datos)

    no recibir los datos, as se guarda e orden de llegada de los datos, sin el envi

    de este asterisco Matlab recibira los datos enviados por la tarjeta Arduino de

    una manera desordenada.

    Los datos son recibidos uno a uno y los guarda en un vector. Como se sabe que

    el nmero de datos que se recibe es de 30000, la lectura de los datos se hace

    30000 veces, de esa manera tambin se asegura que los datos llegaran ordena

    mente.

    Despus de la lectura de los datos, se cierra la comunicacin con el mdulo HC-

    06.

    RESULTADOS

    Cuando se corre el cdigo en Matlab se debe esperar un tiempo prudente hasta

    que la totalidad de los datos sean recibidos; el tiempo es ms o menos 5 minutos.

    Despus de que haya pasado en tiempo necesario y Matlab haya recibido los

    datos, se obtendr la siguiente imagen:

  • Se observa que los 30000 datos han llegado completamente, adems de que

    han llegado ordenadamente.