Índice:

ESP8266 usando PWM com potenciômetro: 4 etapas
ESP8266 usando PWM com potenciômetro: 4 etapas

Vídeo: ESP8266 usando PWM com potenciômetro: 4 etapas

Vídeo: ESP8266 usando PWM com potenciômetro: 4 etapas
Vídeo: ESP8266 utilizando PWM com Potenciômetro 2024, Novembro
Anonim
Image
Image
Meta
Meta

Para quem não está acostumado com a eletrônica, PWM significa controle de potência. E nesta montagem, mostramos como usá-lo para controlar a intensidade da luz de um LED, semelhante a um dimmer de uma lâmpada, com opções para escurecer e clarear.

Este mecanismo também permite, por exemplo, conectar um driver a um motor. Esta é apenas uma das muitas possibilidades.

- Observação: PWM significa modulação por largura de pulso.

Etapa 1: objetivo

A montagem é composta por um potenciômetro, que é um resistor variável, monitorado pelo ESP. Neste esquema, estou usando o mesmo código-fonte que usaria com um Arduino. Devido às suas muitas vantagens, usamos Arduino IDE com ESP em outros projetos também.

Na montagem, o ESP é conectado ao USB apenas para alimentação. Também temos o pino do cursor, que é o pino do potenciômetro central, conectado na porta AD, e o positivo e o negativo.

Conforme a tensão varia, é possível ler um valor diferente no AD. Portanto, girando o potenciômetro, é possível aumentar ou diminuir o brilho do LED.

Etapa 2: Montagem

conjunto
conjunto

O esquema elétrico é muito simples: usando o ESP8266 na configuração do NodeMCU, vamos alimentar o USB. Então, aqui, o potenciômetro deve ser conectado de uma extremidade ao negativo e a outra ao positivo. O meio, que é o cursor, permanece ligado no ADC 0, pois este ESP possui apenas uma porta que lê os valores analógicos.

Etapa 3: WiFi ESP8266 NodeMCU ESP-12E

WiFi ESP8266 NodeMCU ESP-12E
WiFi ESP8266 NodeMCU ESP-12E

Etapa 4: Código Fonte

Configurar

Na função Setup, definimos o comportamento dos pinos que utilizamos, neste caso o LED e o POTENCIÔMETRO.

void setup () {Serial.begin (115200) // Instrução para colocar o gpio que irá utilizar como entrada, // podemos fazer a leitura nesse pino pinMode (A0, INPUT); // A0 é uma constante que indica o pino que ligamos nosso potenciômetro // Instrução para colocar o gpio que iremos utilizar como saída, // podemos alterar seu valor alterado para HIGH ou LOW pinMode (LED_BUILTIN, OUTPUT); // LED_BUILTIN é uma constante que indica o LED do ESP8266}

Ciclo

Nessa função, a lógica é ler o valor do POT e atribuir este valor (que é a intensidade do brilho) no LED.

void loop () {// faz a leitura do pino A0 (no nosso caso, o potenciômetro, retorna um valor entre 0 e 1023) int potencia = analogRead (A0); Serial.println (potencia); // como o LED no ESP8266 trabalha de maneira contrária, ou seja, quanto maior o valor atribuído, menor a intensidade. Faremos o cálculo para aumentarmos o brilho conforme girarmos o potenciômetro em sentido horário. potencia = 1023 - potencia; // atribui o valor lido do potenciômetro para configurar a intensidade do brilho do LED analogWrite (LED_BUILTIN, potencia); }

Recomendado: