Tutorial: Acionamentos via Bluetooth utilizando Bluetooth Shield e aplicativo Android

 

Olá Garagista! Neste tutorial mostraremos como você pode fazer acionamentos via Bluetooth. Como demonstração utilizaremos o Bluetooth Shield para parear o Arduino com um dispositivo Android, criando um link serial sem fio. Com o aplicativo Arduino Bluetooth Kawalan você pode facilmente executar até 8 acionamentos, e o mesmo é um programa configurável, onde você pode por exemplo alterar o nome dos dispositivo que vai controlar.

 

Material Utilizado:

1x Arduino UNO

1x Bluetooth Shield

1x Módulo Relé

2x LED 3mm (1x Vermelho / 1x Amarelo)

2x Resistor 330R

1x Protoboard

Alguns Jumpers

 

 

1. Bluetooth Shield

 

Imagem 1 - Bluetooth Shield

 

Este shield possui um módulo bluetooth integrado e pode ser facilmente utilizado com uma placa Arduino para uma comunicação serial sem fio com algum outro dispositivo com suporte a Bluetooth. Ele tem a opção de escolher dois pinos do Arduino (de D0 a D7), e utilizar a biblioteca SoftwareSerial.h para se fazer com que o Arduino se comunique com o Bluetooth Shield através desses pinos.

Para mais informações sobre o Bluetooth Shield, como os comandos AT e mais exemplos de funcionamento, acesse a wiki do Bluetoot Shield clicando aqui.

 

 

2. Aplicativo Android (Arduino Bluetooth Kawalan)

 

Figura 1 - Aplicativo utilizado para comunicar o bluetooth shield com um dispositivo android 

 

O aplicativo utilizado neste tutorial pode ser encontrado neste link. Ele é bastante versátil, disponibilizando até 8 botões para acionamentos, onde cada botão envia um caractere pelo link serial para o dispositivo da outra ponta. Para o primeiro botão é enviado "A" quando em estado ON e "a" quando em estado OFF, para o segundo botão os caracteres "B" e "b" e assim por dia até os caracteres "H" e "h", pois o aplicativo disponibiliza até 8 botões. É possível alterar o nome dos botões, como por exemplo, o primeiro botão você nomear como Lâmpada e segundo como Motor.

 

 

3. Montagem

 

Faça as ligações de sua lâmpada com o módulo relé, conforme a imagem abaixo:

Imagem 2 - Montagem do módulo relé com tomada e bocal de lâmpada

 

Faça a montagem na Protoboard, conforme a figura abaixo:

 

Figura 2 - Circuito utilizado na demonstração

 

 

4. Sketch

#include <SoftwareSerial.h>   //Inlcui a biblioteca SoftwareSerial.h

 

#define RxD         6 //Define RxD como 6
#define TxD         7 //Define TxD como 7

 

#define LED_AMARELO    2 //LED_AMARELO_BLINK como 2
#define LED_VERMELHO    3 //LED_VERMELHO_FADE como 3
#define RELE_LAMPADA         4 //RELE_LAMPADA como 4

 

SoftwareSerial blueToothSerial(RxD,TxD); //Instância a biblioteca SoftwareSerial.h

 

void setup()
{

  pinMode(LED_AMARELO, OUTPUT); //Configura o pino 2 como saída
  pinMode(LED_VERMELHO, OUTPUT); //Configura o pino 3 como saída
  pinMode(RELE_LAMPADA, OUTPUT); //Configura o pino 4 como saída

parear_dispositivo(); //Executa a função para parear o dispositivo
}

 

void loop()
{
  char letra; //Variável char para armazenar o caractere recebido

if(blueToothSerial.available()) //Se algo for recebido pela serial do módulo bluetooth
    {
      letra = blueToothSerial.read(); //Armazena o caractere recebido na variável letra

if(letra == 'A') digitalWrite(LED_AMARELO, HIGH); //Se o caractere recebido for a letra A, liga o LED Amarelo
      else if(letra == 'a') digitalWrite(LED_AMARELO, LOW); //Senão se o caractere recebido for a letra a, desliga o LED Amarelo
      else if(letra == 'B') digitalWrite(LED_VERMELHO, HIGH); //Senão se o caractere recebido for a letra B, liga o LED Vermelho
      else if(letra == 'b') digitalWrite(LED_VERMELHO, LOW); //Senão se o caractere recebido for a letra b, delisga o LED Vermelho
      else if(letra == 'C') digitalWrite(RELE_LAMPADA, HIGH); //Senão se o caractere recebido for a letra C, liga a Lâmpada
      else if(letra == 'c') digitalWrite(RELE_LAMPADA, LOW); //Senão se o caractere recebido for a letra c, desliga a Lâmpada
      else if(letra == 'H') digitalWrite(9, LOW);
      else if(letra == 'h') digitalWrite(9, HIGH);
  }
}

 

void parear_dispositivo()
{
  blueToothSerial.begin(38400); // Configura o baud rate do bluetooth como 38400
  blueToothSerial.print("\r\n+STWMOD=0\r\n"); // Configura o módulo bluetooth para trabalhar como slave
  blueToothSerial.print("\r\n+STNA=SeedBTShield\r\n"); // Configura o nome do disopsitivo bluetooth
  blueToothSerial.print("\r\n+STOAUT=1\r\n"); // Permite que outros dispositivos encontrem o módulo bluetooth
  blueToothSerial.print("\r\n+STAUTO=0\r\n"); // Desabilita a auto conexão
  delay(2000); // Aguarda 2 segundos
  blueToothSerial.print("\r\n+INQ=1\r\n"); // Habilita modo de paridade
  delay(2000); // Aguarda 2 segundos
  blueToothSerial.flush(); // Dá um flush na serial do módulo bluetooth
}

 

 

Referências:

https://play.google.com/store/apps/details?id=com.app.control

http://androidcontrol.blogspot.com.br/2012/02/android-bluetooth-control-8-devices.html

 

 

Exibições: 64630

Comentar

Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!

Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)

Comentário de Vicente Farias Neto em 17 julho 2015 às 17:17

Eu estou usando o BluetoothShield V2, no momento de parear com o aparelho não aparece SeedBTShield aparece HMSoft e não consigo enviar os comandos com o meu aparelho Moto G.

Se alguém me puder ajudar, agradeço

Comentário de Carlos André Gama da Silva em 6 maio 2015 às 20:36

Gostaria de saber se posso usar este APK em um módulo de Bluetooth que não seja este do exemplo acima?

Um módulo de Bluetooth normal desses que vendem na net?

Comentário de Francisco Paulo da Silva em 6 março 2015 às 0:51

Boa noite a todos. Tenho uma dúvida, tentei baixar o programa do celular, mas o mesmo só funciona para celulares Motorola com Androide. Qual outra app devo baixar se meu aparelho é um Nokia C3-00?

Se alguém poder me auxiliar. Agradeço antecipadamente.

Comentário de Dabio Henrique em 28 fevereiro 2015 às 16:41

tem como eu usar o Bluetooth shiele com o garagino rev1

Comentário de Eduardo Ronchi em 6 novembro 2014 às 16:02

Boa tarde,

Existe alguma luz no modulo do bluetooth que diz se o bluetooth está pareado com o celular??

Comentário de Edney Ferreira Siqueira em 24 setembro 2014 às 11:08

Foi o tempo que o pessoas respondiam os posts :(

Comentário de Elton Reis L Faustino em 24 setembro 2014 às 10:24

Funciona com HC-06?

Comentário de Edney Ferreira Siqueira em 11 setembro 2014 às 10:00

Esse shield funciona com o Bluetooth do iphone/ipad??

Comentário de Anderson Muniz em 23 abril 2014 às 23:25

Esse tutorial ficou excelente! Parabéns!!

Eu gostaria de aproveitar e tirar uma dúvida: eu notei que os LED’s (incluindo a lâmpada) se acionam automaticamente assim que o Smartphone é pareado com a Shield, correto? A minha duvida é: isso acontece apenas quando usamos o App “Arduino Bluetooth Kawalan” ou vale para qualquer outro aplicativo?

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço