Tutorial ESP32 6/55 - Usando LED RGB Projeto 2.3 - Kit de Aprendizado IoT ESP32 da SunFounder

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

FabricanteSunFounder
Número da peçaRGB-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
PacoteConector 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.

void setup() {
  ledcAttach(redPin, freq, resolution);
  ledcAttach(greenPin, freq, resolution);
  ledcAttach(bluePin, freq, resolution);
}

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_pin
ESP32_RGB_led_wires
ESP32_RGB_led_wires
ESP32_RGB_LED_wiring_lesson_06
ESP32_RGB_LED_wiring_lesson_06
806-ESP32 Tutorial 6/55 - Arduino code to control RGB LED with ESP32
Idioma: C++
Copiado!

Recursos e referências

Arquivos📁

Nenhum arquivo disponível.