ESP8266 Controla Servo Motor via Bluetooth

Este tutorial ensina você a programar um ESP8266 para controlar um Servo Motor usando Bluetooth (módulo HC-05) ou BLE (módulo HM-10). São fornecidas instruções para ambos os módulos.

Vamos usar o Bluetooth Serial Monitor App em um celular para enviar o valor do ângulo ao ESP8266. O ESP8266 então ajustará o servo motor de acordo com o valor recebido.

Servo Motor com ESP8266 NodeMCU via Bluetooth

Hardware Necessário

1×ESP8266 NodeMCU ESP-12F
1×Alternatively, ESP8266 D1 Mini NodeMCU ESP-12F
1×Alternatively, ESP8266 NodeMCU ESP-12E (Uno-form)
1×Micro USB Cable
1×Alternatively, ESP8266 NodeMCU ESP-12F (SMD-form)
1×Cabo USB Tipo-A para Tipo-C (para PC com USB-A)
1×Cabo USB Tipo-C para Tipo-C (para PC com USB-C)
1×Módulo Bluetooth HC-05
1×(Alternativa) HM-10 BLE Module
1×Servo Motor
1×Fios Jumper
1×(Recomendado) Placa de Expansão com Bornes de Parafuso para ESP8266

Or you can buy the following kits:

1×DIYables Sensor Kit (18 sensors/displays)
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.

Buy Note: For controlling multiple servo motors, use the PCA9685 16 Channel PWM Servo Driver Module to save MCU pins and simplify wiring.

Sobre o Servo Motor e o Módulo Bluetooth

Se você não conhece os Servo Motors, os módulos Bluetooth, suas pinagens, como funcionam e como programá-los, confira os tutoriais a seguir para obter mais informações:

Diagrama de Ligação

  • Para controlar um Servo Motor com Bluetooth Clássico, deve-se usar o módulo Bluetooth HC-05. Um diagrama de ligação é fornecido como referência.
Diagrama de ligação do Servo Motor com ESP8266 NodeMCU via Bluetooth

This image is created using Fritzing. Click to enlarge image

Para mais informações, veja Pinagem do ESP8266 e como alimentar o ESP8266 e outros componentes.

  • Para controlar um Servo Motor com BLE, deve-se usar o módulo BLE HM-10. Um diagrama de ligação está disponível como referência.
Diagrama de ligação do Servo Motor com ESP8266 NodeMCU via BLE

This image is created using Fritzing. Click to enlarge image

Código ESP8266 - controla o Servo Motor via Bluetooth/BLE

O código a seguir é adequado para uso tanto com o módulo Bluetooth HC-05 quanto com o módulo BLE HM-10. Ele é compatível com ambos.

/* * Este código de ESP8266 NodeMCU foi desenvolvido por pt.newbiely.com * Este código de ESP8266 NodeMCU é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/esp8266/esp8266-control-servo-motor-via-bluetooth */ #include <SoftwareSerial.h> #include <Servo.h> #define SOFT_RX D7 // The ESP8266 pin connected to the TX of the bluetooth module #define SOFT_TX D6 // The ESP8266 pin connected to the RX of the bluetooth module SoftwareSerial bluetooth(SOFT_RX, SOFT_TX); Servo servo; // create servo object to control a servo int pos = 0; // variable to store the servo position void setup() { Serial.begin(9600); bluetooth.begin(9600); servo.attach(11); // attaches the servo on pin 11 to the servo object } void loop() { if (bluetooth.available()) { // if there is data comming int angle = bluetooth.parseInt(); if (angle >= 0 && angle <= 180) { servo.write(angle); // rotate servo bluetooth.print("Rotated servo to angle: ");// reports action to smartphone app bluetooth.println(angle); } else { bluetooth.print("Invalid angle: ");// reports invalid value to smartphone app bluetooth.println(angle); } } }

Passos Rápidos

Para começar com o ESP8266 no Arduino IDE, siga estes passos:

  • Confira o tutorial como configurar o ambiente para o ESP8266 no Arduino IDE se esta for a sua primeira vez usando o ESP8266.
  • Ligue os componentes como mostrado no diagrama.
  • Conecte a placa ESP8266 ao seu computador usando um cabo USB.
  • Abra o Arduino IDE no seu computador.
  • Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
  • Baixe o Bluetooth Serial Monitor App no seu celular.
  • Pegue o código fornecido, abra-o no Arduino IDE e faça o upload para a sua placa ESP8266.
  • Se você tiver dificuldade para fazer o upload do código, tente desconectar os pinos TX e RX do módulo Bluetooth, fazer o upload do código e depois reconectar os pinos RX/TX.
  • Abra o Bluetooth Serial Monitor App no seu celular e selecione a opção Bluetooth Clássico ou BLE, dependendo do módulo utilizado.
Bluetooth Serial Monitor App
  • Conecte o app ao módulo Bluetooth HC-05 ou ao módulo BLE HM-10.
Pareamento do Bluetooth Serial Monitor
  • Digite um ângulo, como 45 ou 90, e pressione o botão Send.
Bluetooth Serial Monitor App
  • Observe a mudança de ângulo do Servo Motor.
  • Examine as consequências no app Android.
Bluetooth Serial Monitor App

Se você achar o app Bluetooth Serial Monitor útil, avalie-o com 5 estrelas na Play Store. Obrigado pelo seu apoio!

Vídeo

Referências de Funções

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!