Innholdsfortegnelse:

ESP8266 Bruke PWM med potensiometer: 4 trinn
ESP8266 Bruke PWM med potensiometer: 4 trinn

Video: ESP8266 Bruke PWM med potensiometer: 4 trinn

Video: ESP8266 Bruke PWM med potensiometer: 4 trinn
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Juli
Anonim
Image
Image
Mål
Mål

For de som ikke er vant til elektronikk, betyr PWM strømstyring. Og i denne monteringen viser vi hvordan du bruker den til å kontrollere lysintensiteten til en LED, lik en dimmer på en lampe, med alternativer for å mørkere og lysere.

Denne mekanismen lar deg for eksempel også koble en driver til en motor. Dette er bare en av mange muligheter.

- Merk: PWM står for Pulse-Width Modulation.

Trinn 1: Mål

Samlingen består av et potensiometer, som er en variabel motstand, overvåket av ESP. I dette opplegget bruker jeg den samme kildekoden som jeg ville brukt med en Arduino. På grunn av de mange fordelene bruker vi Arduino IDE med ESP også i andre prosjekter.

I enheten er ESP bare koblet til USB for strømforsyning. Vi har også markørpinnen, som er pinnen til senterpotensiometeret, koblet til AD -porten, og det positive og negative.

Siden spenningen varierer, er det mulig å lese en annen verdi i AD. Derfor, ved å dreie potensiometeret, er det mulig å øke eller redusere lysstyrken til LED -en.

Trinn 2: Montering

montering
montering

Det elektriske opplegget er veldig enkelt: ved å bruke ESP8266 i konfigurasjonen av NodeMCU, vil vi drive USB -en. Så her må potensiometeret kobles fra den ene enden til den negative, og den andre fra det positive. Mediet, som er markøren, forblir på i ADC 0, fordi denne ESP bare har en port som leser analoge verdier.

Trinn 3: WiFi ESP8266 NodeMCU ESP-12E

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

Trinn 4: Kildekode

Oppsett

I Setup -funksjonen definerer vi oppførselen til pinnene vi bruker, i dette tilfellet LED og POTENTIOMETER.

void setup () {Serial.begin (115200) // Instrução para colocar o gpio que iremos 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 livremente para HIGH ou LOW pinMode (LED_BUILTIN, OUTPUT); // LED_BUILTIN er en konstant indikator på LED for ESP8266}

Løkke

I denne funksjonen er logikken å lese POT -verdien og tildele denne verdien (som er intensiteten til lysstyrken) i LED -en.

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 (potensial); // 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); }

Anbefalt: