Algumas partes deste site ainda não estão disponíveis no seu idioma. Estamos trabalhando para corrigir isso e pedimos desculpas por qualquer inconveniente.
Tutorial ESP32 6/55 - Usando LED RGB Projeto 2.3 - Kit de Aprendizado IoT ESP32 da SunFounder
Neste tutorial, vamos aprender como controlar um LED RGB usando o microcontrolador ESP32. Este projeto ajudará você a entender como conectar o LED RGB e controlar suas cores usando sinais PWM (Modulação por Largura de Pulso). Ao final deste tutorial, você será capaz de criar qualquer combinação de cores ajustando a intensidade de cada componente do LED. Esta é uma habilidade fundamental para criar projetos visualmente envolventes.
Para obter uma melhor compreensão do LED RGB e suas capacidades de mistura de cores, exploraremos a fiação e o código necessários para controlá-lo com o ESP32. Se você precisar de assistência visual, não deixe de conferir o vídeo (no vídeo em 03:20) para uma explicação mais clara sobre a fiação e a configuração do código.
Hardware Explicado
Os principais componentes deste projeto incluem o módulo ESP32, o LED RGB e resistores. O ESP32 é um microcontrolador poderoso que possui Wi-Fi e Bluetooth integrados, tornando-o ideal para aplicações de IoT. O LED RGB é composto por três LEDs individuais (vermelho, verde e azul) alojados em um único pacote, permitindo uma ampla gama de cores com base na combinação das três cores.
Na nossa configuração, o LED RGB será ligado em uma configuração de ânodo comum, onde o pino do ânodo está conectado a uma tensão positiva, e o pino do cátodo de cada cor é controlado independentemente. Dessa forma, podemos ajustar o brilho de cada cor enviando sinais PWM através do ESP32.
Detalhes da Ficha Técnica
Fabricante
SunFounder
Número da peça
RGB-LED-4PIN
Tipo Comum
Ânodo comum
Tensão de Polarização (por LED)
2,0 V (Vermelho), 3,2 V (Verde), 3,2 V (Azul)
Corrente Máxima (por LED)
20 mA
Temperatura de Operação
-25 a 85 °C
Pacote
Conector de 4 pinos com orifício atravessado
Use um resistor de 220 Ω para cada cor para limitar a corrente e prevenir danos.
Certifique-se de que o pino comum esteja conectado à tensão apropriada (3,3 V para ESP32).
Verifique a polaridade ao conectar o LED RGB para evitar danos reversos.
Use PWM para controlar os níveis de brilho, com uma frequência em torno de 5000 Hz recomendada.
Teste cada cor individualmente antes de ligar toda a configuração.
Instruções de fiação
Para ligar o LED RGB ao ESP32, comece identificando os pinos do LED RGB. O pino mais longo é o ánodo comum, que será conectado à fonte de 3,3 V no ESP32. Os outros três pinos são para vermelho, verde e azul. Em nossa configuração, conecte o pino vermelho ao GPIO.27, o pino verde para GPIO26e o pino azul para GPIO25Cada um desses pinos também terá um resistor de 220 Ω conectado a eles.
Comece colocando o LED RGB na placa de ensaio, garantindo que o pino do ânodo comum esteja à esquerda. Insira o pino vermelho na placa de ensaio e conecte-o a uma extremidade do resistor, com a outra extremidade do resistor indo para o GPIO.27. Repita isso para os pinos verde e azul, conectando o pino verde ao GPIO26e o pino azul para GPIO25Por fim, conecte o pino comum ao pino de 3,3 V no ESP32 para completar o circuito. Certifique-se de conectar o terra do ESP32 à placa de ensaio também.
ESP32_RGB_LED_wiring_lesson_06
Exemplos de Código e Passo a Passo
No código, começamos definindo os pinos do LED RGB usando constantes. Por exemplo,const int redPin = 27;define o pino GPIO para o LED vermelho. Também configuramos a frequência e a resolução do PWM comconst int freq = 5000;econst int resolution = 8;. Isso define os parâmetros necessários para controlar o brilho de cada cor de LED.
const int redPin = 27;
const int greenPin = 26;
const int bluePin = 25;
Em seguida, configuramos os canais PWM para cada cor nosetup() função. OledcAttach()a função vincula cada pino ao canal PWM correspondente. Essa configuração garante que podemos controlar o brilho de cada cor de forma independente.
No textoloop()função, usamos osetColor()função para mudar as cores do LED. Os valores passados para esta função representam a intensidade de vermelho, verde e azul. Por exemplo, chamandosetColor(255, 0, 0);define o LED para vermelho. Após cada alteração de cor, usamosdelay(1000);esperar um segundo antes de mudar para a próxima cor.
void loop() {
setColor(255, 0, 0); // Red
delay(1000);
setColor(0, 255, 0); // Green
delay(1000);
}
Demonstração / O que Esperar
Após completar a fiação e carregar o código no ESP32, você deve ver o LED RGB alternar entre várias cores: vermelho, verde, azul, amarelo, roxo e ciano. Se o LED não acender corretamente, verifique sua fiação e certifique-se de que o ânodo comum está conectado a 3,3 V. Além disso, se você notar cores inesperadas, verifique as conexões dos resistores aos pinos do LED.
Conforme demonstrado no vídeo (no vídeo às 10:45), ajustando os valores emsetColor()A função permite que você crie cores diferentes. Experimente várias combinações para ver como o LED RGB responde.
Marcos de tempo do vídeo
00:00- Introdução ao LED RGB
03:20- Explicação da fiação
10:45- Revisão de código
12:30- Demonstração da mistura de cores
Imagens
ESP32_rgb_pin
ESP32_RGB_led_wires
ESP32_RGB_LED_wiring_lesson_06
ESP32_rgb_pin
ESP32_RGB_led_wires
ESP32_RGB_LED_wiring_lesson_06
806-ESP32 Tutorial 6/55 - Arduino code to control RGB LED with ESP32