ESP32 - Sensor de Movimento - Fita LED

Neste guia, vamos explorar a criação de um sistema de automação de iluminação prático usando um ESP32, um sensor de movimento HC-SR501 e uma fita LED. Este sistema foi cuidadosamente projetado para ativar a fita LED ao detectar a presença humana, tornando-o versátil e adequado para diversas aplicações, incluindo:

Sobre a Fita LED e o Sensor de Movimento

Não conhece a fita LED e o sensor de movimento, incluindo suas pinagens, funcionamento e programação? Explore os tutoriais completos sobre esses temas abaixo:

Você tem a flexibilidade de usar fitas LED NeoPixel, WS2812B ou DotStar. Para simplificar a ligação, este tutorial usa especificamente a fita LED DotStar. Adaptar o código para outros tipos de fita LED é simples, basta consultar os tutoriais acima como guia.

Diagrama de Ligação

Diagrama de Ligação do ESP32 com Sensor de Movimento e Fita LED

This image is created using Fritzing. Click to enlarge image

Se você não sabe como alimentar o ESP32 e outros componentes, veja as instruções no tutorial a seguir: Como alimentar o ESP32.

Configuração Inicial

Ajuste de Tempo de AtrasoGire-o totalmente no sentido anti-horário.
Ajuste de Alcance de DetecçãoGire-o totalmente no sentido horário.
Seletor de Disparo RepetidoColoque o jumper como mostrado na imagem.
configuração inicial do sensor de movimento com esp32

Código ESP32 - Sensor de Movimento Controla a Fita LED

/* * Este código de ESP32 foi desenvolvido por pt.newbiely.com * Este código de ESP32 é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/esp32/esp32-motion-sensor-led-strip */ #include <Adafruit_DotStar.h> #define NUMPIXELS 144 // Number of LEDs in DotStar strip #define DOTSTAR_DATA_PIN 16 // The ESP32 pin GPIO16 connected to the data pin of DotStar #define DOTSTAR_CLOCK_PIN 17 // The ESP32 pin GPIO17 connected to the clock pin of DotStar #define MOTION_SENSOR_PIN 25 // The ESP32 pin GPIO25 connected to the OUTPUT pin of motion sensor int motion_state = LOW; // current state of motion sensor's pin int prev_motion_state = LOW; // previous state of motion sensor's pin Adafruit_DotStar strip(NUMPIXELS, DOTSTAR_DATA_PIN, DOTSTAR_CLOCK_PIN, DOTSTAR_BRG); void setup() { Serial.begin(9600); strip.begin(); // INITIALIZE NeoPixel strip object (REQUIRED) strip.show(); // Turn OFF all pixels ASAP strip.setBrightness(255); pinMode(MOTION_SENSOR_PIN, INPUT); // set ESP32 pin to input mode } void loop() { prev_motion_state = motion_state; // store old state motion_state = digitalRead(MOTION_SENSOR_PIN); // read new state if (prev_motion_state == LOW && motion_state == HIGH) { // pin state change: LOW -> HIGH Serial.println("Motion detected!"); // turn on the led strip for (int pixel = 0; pixel < NUMPIXELS; pixel++) { // red color int r = 255; // CHANGE COLOR AS YOUR DESIRE int g = 0; // CHANGE COLOR AS YOUR DESIRE int b = 0; // CHANGE COLOR AS YOUR DESIRE strip.setPixelColor(pixel, g, r, b); // set color for each pixel } strip.show(); } else if (prev_motion_state == HIGH && motion_state == LOW) { // pin state change: HIGH -> LOW Serial.println("Motion stopped!"); strip.clear(); // turn off all pixel on LED strip strip.show(); } }

Passos Rápidos

  • Se esta é a primeira vez que você usa o ESP32, veja como configurar o ambiente para o ESP32 na Arduino IDE.
  • Faça a ligação conforme a imagem acima.
  • Conecte a placa ESP32 ao seu PC por meio de um cabo USB Type-C
  • Abra a Arduino IDE no seu PC.
  • Selecione a placa ESP32 correta (ex.: ESP32 Dev Module) e a porta COM.
  • Conecte o ESP32 ao PC via cabo USB
  • Abra a Arduino IDE, selecione a placa e a porta corretas
  • Clique no ícone Libraries na barra esquerda da Arduino IDE.
  • Pesquise “Adafruit DotStar” e, em seguida, encontre a biblioteca DotStar da Adafruit
  • Clique no botão Install para instalar a biblioteca DotStar.
Biblioteca DotStar para ESP32
  • Será solicitado que você instale a dependência. Clique no botão Install All.
Biblioteca DotStar para ESP32
  • Copie o código acima e abra-o na Arduino IDE
  • Clique no botão Upload na Arduino IDE para carregar o código no ESP32
  • Mova sua mão na frente do sensor
  • Observe a fita LED

Você pode modificar o código para adicionar um efeito de iluminação.

Vídeo

※ 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!