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 50/55 - Controle o LED RGB de qualquer lugar do mundo | Kit ESP32 da SunFounder
Neste tutorial, aprenderemos como controlar a cor de um LED RGB usando o microcontrolador ESP32 via Wi-Fi, utilizando o protocolo MQTT e o serviço Adafruit IO. Esta configuração permite que você mude a cor do LED RGB de qualquer lugar do mundo, oferecendo uma aplicação prática da tecnologia IoT. Também exploraremos como usar deslizadores e um seletor de cores para escolher a cor desejada.
esp32-50-RGB-led-mqtt-principal
O ESP32 é um microcontrolador poderoso que possui capacidades embutidas de Wi-Fi e Bluetooth, tornando-o ideal para projetos de IoT. Neste projeto, conectaremos um LED RGB ao ESP32 e controlaremos sua cor através de um broker MQTT fornecido pela Adafruit. O tutorial irá guiá-lo através da configuração de hardware, instruções de fiação e o código necessário para fazer tudo funcionar perfeitamente (no vídeo às :00).
Hardware Explicado
esp32-50-RGB-ledesp32-50-led-RGB
Para este projeto, os componentes principais que usaremos são o microcontrolador ESP32 e o LED RGB. O ESP32 é capaz de se conectar a redes Wi-Fi, permitindo que ele se comunique com o serviço Adafruit IO. O LED RGB contém três LEDs individuais (vermelho, verde e azul) que podem ser misturados para criar uma ampla variedade de cores.
O LED RGB opera com o princípio do ânodo comum ou do cátodo comum, o que significa que o ânodo (positivo) ou o cátodo (negativo) dos LEDs individuais devem ser conectados corretamente para que funcionem. Cada cor pode ser controlada usando Modulação por Largura de Pulso (PWM), que ajusta o brilho de cada LED variando o ciclo de trabalho.
ES32-38_RGB_LED-fiação
Detalhes da Ficha Técnica
Fabricante
SunFounder
Número da peça
LED RGB
Tensão de polarização (V)F)
2,0-3,4 V
Corrente de avanço (IF)
20 mA
Comprimento de onda de pico (nm)
Vermelho: 620, Verde: 525, Azul: 465
Pacote
Pino padrão de 4 pinos
Notas / variantes
Opções de ânodo comum ou cátodo comum disponíveis
Use resistores de 220 ohms para cada cor de LED para limitar a corrente.
Assegure a fiação correta para configuração de ânodo ou cátodo comum.
Verifique a fonte de alimentação do ESP32 para evitar quedas de tensão.
Mantenha a frequência PWM dentro dos limites para transições de cor suaves.
Verifique se as credenciais do Wi-Fi estão corretas para se conectar ao serviço Adafruit IO.
Instruções de Fiação
ES32-38_RGB_LED-wiring
Para conectar o LED RGB ao ESP32, comece identificando os pinos do LED RGB. O pino mais longo é o pino comum. Para uma configuração de anodo comum, conecte este pino à fonte de tensão positiva (3,3V). Os outros três pinos correspondem aos LEDs vermelho, verde e azul. Conecte o pino vermelho ao GPIO 27, o pino verde ao GPIO 26 e o pino azul ao GPIO 25. Cada uma dessas conexões deve ser feita através de um resistor de 220 ohms para limitar a corrente que passa pelos LEDs.
Em seguida, conecte o terra (GND) do ESP32 ao fio de terra do seu circuito. Certifique-se de que a fiação esteja segura para evitar conexões intermitentes. Se estiver usando um LED RGB de cátodo comum, conecte o pino comum ao terra e conecte os pinos de cores individuais à fonte positiva através dos resistores. Verifique todas as conexões antes de energizar o circuito.
Exemplos de Código e Tutoriais
No código Arduino, começamos definindo os pinos para os LEDs vermelho, verde e azul usando os identificadores.redPin,greenPin, ebluePin. Além disso, definimos os canais PWM para cada cor usandoredChannel,greenChannel, eblueChannelA frequência PWM é definida como 5000 Hz com uma resolução de 8 bits.
const int redPin = 27;
const int greenPin = 26;
const int bluePin = 25;
const int redChannel = 0;
const int greenChannel = 1;
const int blueChannel = 2;
In thesetup()função, inicializamos os canais PWM e conectamos os pinos correspondentes. Também nos conectamos à rede Wi-Fi usando as credenciais definidas e configuramos o cliente MQTT para comunicação com o Adafruit IO.
O loop principal verifica a conexão MQTT e processa as mensagens recebidas. Ele também imprime os valores RGB atuais no monitor serial. A cor da LED é atualizada com base nos valores recebidos através das assinaturas MQTT.
Para mais detalhes sobre o código completo, consulte o código completo carregado abaixo do artigo.
Demonstração / O que Esperar
Uma vez que tudo esteja configurado e o código esteja carregado, você deve ver o LED RGB respondendo às mudanças de cor feitas através do painel do Adafruit IO. À medida que você ajusta os controles deslizantes para vermelho, verde e azul, o LED deve mudar sua cor de acordo. Se você tiver algum problema, certifique-se de que a conexão Wi-Fi esteja estável e que os nomes dos tópicos MQTT correspondam àqueles definidos no código (no vídeo às 17:30).
Os erros comuns incluem fiação incorreta, nomes de tópicos incompatíveis e esquecer de definir as credenciais corretas do Wi-Fi. Se o LED não acender, verifique novamente as conexões do resistor e certifique-se de que o ESP32 está alimentado corretamente.
Marcações de vídeo
00:00 Início
2:23 Introdução ao projeto
4:43 O que é MQTT
7:55 Configuração do Adafruit IO
14:09 Fiação explicada
16:07 Código explicado
27:03 Selecionando a placa ESP32 e a porta COM no Arduino IDE
29:12 Demonstração do projeto
O que é LED RGB?
35:26 Cor RGB
Imagens
ESP32_rgb_pin
ESP32_RGB_led_wires
ES32-38_RGB_LED-wiring
esp32-50-RGB-led
esp32-50-RGB-led-mqtt-main
ESP32_rgb_pin
ESP32_RGB_led_wires
ES32-38_RGB_LED-wiring
esp32-50-RGB-led
esp32-50-RGB-led-mqtt-main
852-ESP32 Tutorial 50/55- Arduino code to control RGB LED using MQTT service of Adafruit