Como utilizar o módulo Bluetooth HC-05 com Arduino
Está precisando controlar seu Arduino sem fio? Então, este tutorial é para você. A utilização de um módulo Bluetooth é uma das maneiras mais simples de controlar e monitorar seus projetos.
Atualmente existem vários módulos Bluetooth no mercado, mas neste tutorial vamos focar no módulo Bluetooth HC-05. Com este dispositivo, você pode controlar um carrinho remoto, um braço robótico, receber informações do clima em seu celular, acionar dispositivos, entre outras.
O módulo Bluetooth HC-05 é um dispositivo projetado para configurações de conexão serial sem fio, o que possibilita seu uso com microcontroladores e facilita a troca de informações entre dispositivos a uma distância de até 10 metros.
O módulo Bluetooth HC-05 pode ser configurado como mestre (master), estabelece conexão com outros dispositivos e envia informações, ou escravo (slave), recebe informações do mestre (master). Apesar de o módulo Bluetooth HC-05 ser bem simples de utilizar, é importante conhecer sua pinagem e componentes. A Figura 2 ilustra os pinos e componentes do módulo Bluetooth HC-05.
Funções dos pinos e componentes:
- State: Pino indicador de status do módulo. Quando o módulo não está conectado a um dispositivo o pino retorna nível lógico baixo. Quando emparelhado a algum dispositivo, o pino retorna nível lógico alto. Este pino está conectado ao LED integrado do módulo;
- Rx: Recebe dados seriais. Todos os dados seriais recebidos neste pino serão transmitidos via Bluetooth;
- Tx: Transmite dados seriais; Os dados seriais recebidos via Bluetooth serão transmitidos por este pino;
- GND: Aterramento do módulo;
- 5V: Alimentação do módulo (5V);
- EN: Pino usado para alternar entre o modo de dados e o modo de comandos AT. Por padrão de fábrica está configurado como modo de dados;
- LED: Indica o status do módulo. Pode ser usado para verificar se o módulo está funcionando corretamente;
- Botão: Usado para alternar o pino EM, alternando entre o modo de dados e o modo de comandos AT.
DICA: O intervalo de tempo em que o LED indicativo pisca indica:
- Piscando uma vez a cada 2 segundos: O módulo entrou em modo de comandos AT;
- Piscando rapidamente: Aguardando conexão no modo de dados;
- Piscando duas vezes por segundo: Conexão bem-sucedida no modo de dados.
IMPORTANTE: O módulo vem com algumas configurações importantes pré-definidas de fábrica, como:
- Nome: HC-05;
- Senha: 1234 ou 0000;
- Tipo: Mestre e escravo;
- Modo: Dados.
Você pode modificar o nome e senha do seu módulo Bluetooth. Para saber mais acesse o tutorial Como alterar nome e senha do módulo Bluetooth HC-05.
Agora que conhecemos o módulo Bluetooth HC-05, vamos utilizá-lo na prática. A proposta deste tutorial é utilizar o módulo Bluetooth HC-05 em conjunto com o Arduino para controlar o acionamento de um LED via celular usando o aplicativo Dabble.
O Dabble é um aplicativo de interação e controle de projetos via Bluetooth para Arduino e ESP32.
MATERIAIS NECESSÁRIOS
- 1 x Placa UNO SMD R3 Atmega328 compatível com Arduino UNO;
- 1 x Cabo USB Tipo A-B compatível com Arduino UNO;
- 1 x Módulo Bluetooth HC-05;
- 1 x LED difusos de 5mm;
- 1 x Protoboard;
- 1 x Resistor 220 Ω;
- 3 x Resistores 1 kΩ;
- Jumpers macho-macho.
ESQUEMÁTICO DE LIGAÇÃO
Monte o circuito da Figura 3 com a placa UNO desligada.
Ao montar o circuito observe atentamente os seguintes pontos:
- Alimente o módulo Bluetooth HC-05 por meio do 5V e GND do Arduino;
- O pino TX do módulo deve ser conectado ao pino digital 2 do Arduino;
- O módulo Bluetooth HC-05 possui nível logico em 3,3V enquanto o Arduino em 5V. Então, para não danificar o módulo precisamos fazer divisor de tensão. Para tal, usamos um resistor de 1 kΩ entre o pino digital 3 do Arduino e o Rx do módulo e dois resistores de 1 kΩ em série entre o Rx do módulo e o GND;
- O LED deve ser conectado ao pino 11 do Arduino.
ELABORANDO O CÓDIGO
Após a montagem do circuito, vamos a programação do Sketch. A proposta deste projeto é utilizar o módulo Bluetooth HC-05 em conjunto com o Arduino para controlar o acionamento de um LED via celular usando o aplicativo Dabble.
Para tal, será necessário instalar a biblioteca Dabble.h. Então, abra o Arduino IDE, acesse o Gerenciador de Bibliotecas (atalho: Ctrl + Shift + I) e busque a biblioteca, conforme a Figura 4.
Logo após, podemos prosseguir com a programação. Acompanhe os seguintes passos para melhor compreensão da lógica de programação do código:
- Configurações do uso da aplicação para controle do LED
Iniciamos a programação definindo o modo de funcionamento da aplicação para controle do LED por meio das instruções #define CUSTOM_SETTINGS e #define INCLUDE_LEDCONTROL_MODULE.
- Incluir a biblioteca ao código
Em seguida, devemos incluir a biblioteca por meio do comando #include <Dabble.h>.
- Inicializar a comunicação
Na função setup(), inicializamos a comunicação serial por meio do comando Serial.begin(9600).
Em seguida, precisamos habilitar a comunicação Bluetooth. Fazemos isto por meio do comando Dabble.begin(9600), em que 9600 é a taxa de transmissão do módulo HC-05.
- Atualizar os dados
Para atualizar os dados obtidos do celular via Bluetooth usamos a função Dabble.processInput(). Está função é incluída dentro da função loop() para processar os dados obtidos do celular.
Ao final, o Sketch deste projeto ficará da seguinte maneira:
#define CUSTOM_SETTINGS //Configuração para uso da aplicação para controle do LED #define INCLUDE_LEDCONTROL_MODULE //Configuração para uso da aplicação para controle do LED #include <Dabble.h> //Inclui a biblioteca Dabble void setup() { Serial.begin(9600); //Inicia a comunicação serial Dabble.begin(9600); //Inicia a comunicação via Bluetooth com o Dabble } void loop() { Dabble.processInput(); // Atualizar os dados obtidos do aplicativo no celular }
INSTALANDO APLICATIVO DABBLE
O aplicativo Dabble encontra-se disponível para Android e iOS. Desta forma, para realizar o download em seu dispositivo será necessário acessar a loja de aplicativos Play Store ou App Store.
Você também pode encontrar o Dabble por meio dos seguintes links:
Link do Dabble para Android:
https://play.google.com/store/apps/details?id=io.dabbleapp&hl=pt_BR&gl=US
Link do Dabble para iOS:
https://apps.apple.com/br/app/dabble-bluetooth-controller/id1472734455
REALIZANDO O CONTROLE DO LED VIA BLUETOOTH
Após a instalação, abra o aplicativo Dabble, clique na opção “Pareamento” e selecione o dispositivo HC-05, conforme ilustrado na Figura 5.
Logo após, acesse a opção LED Brightness Control e configure o pino em que no LED está conectado (pino 11).
As configurações e o modo funcionamento deste projeto podem ser visualizados no Vídeo 1.
Espero ter ajudado,
Obrigada a todos e, em caso de dúvidas, deixe seu comentário abaixo!
Carol Correia Viana
Bacharel em Engenharia Elétrica com ênfase em Eletrônica, mestra em Engenharia Industrial e especialista em Docência com ênfase em Educação Inclusiva. Atua no setor de Desenvolvimento de Produtos na Casa da Robótica. Editora chefe e articulista no Blog da Robótica. Fanática por livros, Star Wars e projetos Maker.