Controle de Motor Servo via Bluetooth com Arduino Uno e HC-05
Componentes e Materiais
| Arduino UNO | 1 | |
| Motor Servo SG90 (Micro-servo 9g) | 1 | |
| Módulo Bluetooth HC-05 | 1 | |
| Protoboard (genérica) | 1 | |
| Jumpers (genéricos) | 1 |
Aplicativos e Serviços Online
- Arduino IDE
Sobre o Projeto
Neste projeto vou mostrar como você pode controlar um motor servo com a ajuda de um aplicativo de smartphone via Bluetooth.
Para este projeto usaremos um módulo Bluetooth HC-05 com um Arduino Uno para controlar um servo 9g.
Como Este Projeto Funciona
Este projeto tem duas partes:
- O aplicativo Android – Este aplicativo enviará vários pacotes de dados para nosso módulo Bluetooth HC-05. (Clique aqui para baixar o aplicativo)
- O hardware – Consiste no módulo Bluetooth HC-05, um Arduino Uno e um motor servo.
(Observação: Este aplicativo não foi desenvolvido por mim.)
Fluxo de Funcionamento
O aplicativo Android envia pacotes de dados para o módulo Bluetooth. O módulo Bluetooth envia este pacote de dados para o Arduino Uno através de Comunicação Serial. O Arduino Uno é programado para gerar sinal de controle para o motor servo dependendo do valor do pacote de dados. Aqui está um fluxograma para melhor entendimento:

Como Começar
- Baixe o aplicativo Android. (Clique aqui)
- Carregue o código no Arduino Uno.
- Faça as conexões.
Observação importante: O módulo Bluetooth HC-05 precisa ser conectado com 3.3V e não com 5V VCC, pois isso pode danificar o módulo.
- Conecte o módulo Bluetooth ao aplicativo Android – Quando você ligar seu hardware, o módulo Bluetooth ficará visível. Abra o aplicativo e clique em "encontrar dispositivos próximos". Selecione HC-05. Uma vez que mostre "conectado", você está pronto!
Você pode usar o controle deslizante ou inserir o valor manualmente para controlar o braço do servo.
Código
Bluetooth controlled servo C/C++
Este código deve ser carregado no Arduino Uno.
#include <SoftwareSerial.h>
#include <Servo.h>
Servo x;
int bttx = 9; // TX do módulo Bluetooth conectado ao pino 9 do Arduino
int btrx = 10; // RX do módulo Bluetooth conectado ao pino 10 do Arduino
SoftwareSerial bluetooth(bttx, btrx);
void setup() {
x.attach(11); // servo conectado ao pino 11 do Arduino
Serial.begin(9600);
bluetooth.begin(9600);
}
void loop() {
if(bluetooth.available() > 0) { // se módulo Bluetooth está transmitindo dados
int pos = bluetooth.read(); // armazena o dado na variável pos
Serial.println(pos);
x.write(pos); // move cabeça do servo para a posição dada
}
}
Esquemáticos
Assim deve ser feito o circuito.

Processo de manufatura
- Construa um Robô Raspberry Pi Controlado por Bluetooth com Feedback de Áudio
- Crie um Sistema Ambilight Impressionante para Monitor com Arduino
- Construa o Clássico Jogo Pong no Arduino UNO com Display OLED – Tutorial Passo a Passo
- Transforme um Carro RC Antigo em Veículo Controlado por Joystick com Arduino
- Detector de Frequência de Áudio com Arduino – Meça Picos de Som com Módulo de Alta Sensibilidade
- Controlar um LED via Bluetooth com Arduino – Guia DIY Simples
- Construa Seu Próprio Tamagotchi com Arduino: Projeto DIY de Pet Digital
- Jogo da Velha com Arduino, Matriz LED MAX7219 e Caixa de Papelão
- Construa um Robô Controlado por Voz com Arduino Nano
- Construa um Temporizador Regressivo Confiável com Arduino e Display de 7 Segmentos SparkFun