Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade
Os efeitos de iluminação são uma aplicação fascinante e popular para o Arduino, um microcontrolador amplamente utilizado por entusiastas e profissionais de eletrônica. Com o Arduino, é possível criar uma variedade de efeitos de iluminação que podem ser aplicados em projetos de decoração, sinalização, arte interativa e muito mais. Neste artigo, exploraremos como criar alguns efeitos de iluminação utilizando LEDs e a biblioteca FastLED.
Antes de começarmos com os exemplos de código, vamos configurar o hardware. Supondo que você esteja usando uma fita LED WS2812B, siga estas etapas:
Vamos começar com um efeito simples de piscar. Este exemplo fará com que todos os LEDs da fita pisquem em uma cor específica.
#include <FastLED.h>
#define LED_PIN 6
#define NUM_LEDS 30
#define BRIGHTNESS 64
#define LED_TYPE WS2812B
#define COLOR_ORDER GRB
CRGB leds[NUM_LEDS];
void setup() {
FastLED.addLeds<LED_TYPE, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
FastLED.setBrightness(BRIGHTNESS);
}
void loop() {
// Liga todos os LEDs em vermelho
fill_solid(leds, NUM_LEDS, CRGB::Red);
FastLED.show();
delay(500); // Espera 500ms
// Desliga todos os LEDs
fill_solid(leds, NUM_LEDS, CRGB::Black);
FastLED.show();
delay(500); // Espera 500ms
}
O efeito de arco-íris é um dos favoritos entre os entusiastas de LEDs. Este efeito cria uma transição suave de cores ao longo da fita.
#include <FastLED.h>
#define LED_PIN 6
#define NUM_LEDS 30
#define BRIGHTNESS 64
#define LED_TYPE WS2812B
#define COLOR_ORDER GRB
CRGB leds[NUM_LEDS];
void setup() {
FastLED.addLeds<LED_TYPE, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
FastLED.setBrightness(BRIGHTNESS);
}
void loop() {
static uint8_t hue = 0;
for(int i = 0; i < NUM_LEDS; i++) {
leds[i] = CHSV(hue++, 255, 255);
}
FastLED.show();
delay(20);
}
O efeito de cometa cria uma "cauda" de luz que se move ao longo da fita LED.
#include <FastLED.h>
#define LED_PIN 6
#define NUM_LEDS 30
#define BRIGHTNESS 64
#define LED_TYPE WS2812B
#define COLOR_ORDER GRB
CRGB leds[NUM_LEDS];
void setup() {
FastLED.addLeds<LED_TYPE, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
FastLED.setBrightness(BRIGHTNESS);
}
void loop() {
static uint8_t hue = 0;
for(int i = 0; i < NUM_LEDS; i++) {
leds[i].fadeToBlackBy(20);
int pos = beatsin16(13, 0, NUM_LEDS-1);
leds[pos] += CHSV(hue++, 255, 192);
}
FastLED.show();
delay(20);
}
Os exemplos acima são apenas uma introdução ao que é possível com o Arduino e LEDs. A biblioteca FastLED oferece uma ampla gama de funções e efeitos que podem ser explorados para criar projetos de iluminação complexos e impressionantes.