Comunicação Bluetooth - HC-06

Criado em 1994 pela Ericsson, o Bluetooth é uma especificação de rede sem fio (IEEE 802.15.1) utilizada para conectar dispositivos pessoais como telefones celulares, notebooks, computadores, dispositivos IoT, entre outros permitindo a troca de informações entre esses dispositivos através de uma frequência de rádio de curto alcance. Devido sua versatilidade, diversos shields de bluetooth foram desenvolvido onde podemos citar o NRF2401, os módulos ZIGBEE e o HC-06 que será usado em nossa experiência. Na figura 1 podemos ver uma foto do modulo HC-06.


Figura 1. Modulo Bluetooth HC-06.
Para ligar o bluetooth ao Arduíno é bem simples, para isso basta polarizar o dispositivo ligando VCC e GND aos pinos de 5V e GND do Arduíno e o RX e TX aos pinos 0 e 1 conforme indicado na figura 2.
Figura 2. Polarização e conexão RX/TX do Modulo HC-06.

O desenvolvimento do código é bem simples, basta usar a biblioteca SoftwareSerial.h que permite que o chip Atmega receba comunicação serial mesmo enquanto trabalha em outras tarefas, desde que haja espaço no buffer serial de 64 bytes. Para maiores informações sobre essa biblioteca, clique aqui.

Os comando utilizados em nosso experimentos serão:

SoftwareSerial bluetooth(rxPin, txPin) -  O SoftwareSerial é usado para criar uma instância de um objeto SoftwareSerial, cujo nome (bluetooth) você precisa fornecer. Os parâmetros rxPin, txPin são referentes aos pinos utilizados no Arduíno para realizar a comunicação RX/TX.

bluetooth.begin(BAUD) - Define a velocidade (taxa de transmissão) para a comunicação serial, onde BAUD é o valor da taxa (para saber mais sobre comunicação serial, cilque aqui).

bluetooth.println("TEXTO") -  Imprime dados no pino de transmissão da porta serial do software. Funciona da mesma forma que a função Serial.print ().

bluetooth.read() -  Retorna um caractere que foi recebido no pino RX da porta serial do software. 

Hardware e software devidamente configurado, para realizar nossos testes, podemos fazer o download no celular do Aplicativo Bluetooth terminal. Após baixar o aplicativo, basta realizar um scan para localizar o HC-06 e parear os dispositivos. Caso o celular solicite uma senha, digite 1234.

Com base no circuito da figura 2 e nos comandos descritos acima, o programa abaixo irá acender um LED na porta 13 quando a letra 'H' for digitada e apaga-lo quando for digitado a letra 'L'.

#include <SoftwareSerial.h>// Incluir biblioteeca Software Serial para habilitar bluetooth
SoftwareSerial bluetooth(1, 0); //indicação das entradas onde TX, RX serão ligadas
int RXBLUE;

void setup() 
{
  //Habilitando leds na porta 13
  pinMode(13, OUTPUT);

  //Inicializando  software serial - Bluetooth
  bluetooth.begin(9600);
  bluetooth.println("iniciando bluetooth");
  bluetooth.println("Digite H para ligar o LED");
  bluetooth.println("Digite L para desligar o LED");
}

void loop() {
  //Checa se bluetoohth esta conectado
   if (bluetooth.available()>0)
  {
    RXBLUE = bluetooth.read();
    bluetooth.println("Led ligado");
    if(RXBLUE == 'H')
    {
      digitalWrite(13, HIGH);
      bluetooth.println("Led ligado");

    }
    if(RXBLUE == 'L')
    {
      digitalWrite(13, LOW);
      bluetooth.println("Led desligado");
    }
  }
}


Você poderá verificar a implementação do código/circuito acima clicando na imagem abaixo.

 Exclusão mutua com Arduíno




Não esqueça do like do video e de curtir nossa pagina no facebook no link abaixo:

Nenhum comentário:

Postar um comentário