Arduino - Sensor de Movimento - Fita LED

Neste tutorial, vamos explorar a implementação de um Arduino, um sensor de movimento HC-SR501 e uma fita LED para criar um sistema de automação de iluminação prático. Projetado especificamente para acender a fita LED ao detectar a presença de pessoas, este sistema é versátil e ideal para várias aplicações, como:

Sobre Fita LED e Sensor de Movimento

Se você ainda não conhece a fita LED e o sensor de movimento (pinagem, como funcionam, como programar ...), aprenda sobre eles nos seguintes tutoriais:

Você pode 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 Arduino com sensor de movimento e fita LED

This image is created using Fritzing. Click to enlarge image

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 Arduino

Código Arduino - Sensor de Movimento Controla Fita LED

/* * Este código de Arduino foi desenvolvido por pt.newbiely.com * Este código de Arduino é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino/arduino-motion-sensor-led-strip */ #include <Adafruit_DotStar.h> #define NUMPIXELS 144 // Number of LEDs in DotStar strip #define DOTSTAR_DATA_PIN 2 // Arduino pin connected to the data pin of DotStar #define DOTSTAR_CLOCK_PIN 3 // Arduino pin connected to the data pin of DotStar #define MOTION_SENSOR_PIN 12 // Arduino pin 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 arduino 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

  • Conecte o Arduino ao PC via cabo USB
  • Abra o Arduino IDE, selecione a placa e a porta corretas
  • Clique no ícone Libraries na barra esquerda do Arduino IDE.
  • Pesquise “Adafruit DotStar” e encontre a biblioteca DotStar da Adafruit
  • Clique no botão Install para instalar a biblioteca DotStar.
Biblioteca DotStar para Arduino
  • Será solicitado que você instale a dependência. Clique no botão Install All.
Biblioteca DotStar para Arduino
  • Copie o código acima e abra-o no Arduino IDE
  • Clique no botão Upload no Arduino IDE para carregar o código no Arduino
  • 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!