Spisu treści:

ESP8266 za pomocą PWM z potencjometrem: 4 kroki
ESP8266 za pomocą PWM z potencjometrem: 4 kroki

Wideo: ESP8266 za pomocą PWM z potencjometrem: 4 kroki

Wideo: ESP8266 za pomocą PWM z potencjometrem: 4 kroki
Wideo: PWM Konfiguracja 👉 PWM Sterowanie ⚙️ Silników Elektrycznych ⚙️ EC ⚙️ za pomocą ESP 8266 D1 2024, Lipiec
Anonim
Image
Image
Bramka
Bramka

Dla tych, którzy nie są przyzwyczajeni do elektroniki, PWM oznacza kontrolę mocy. W tym zestawieniu pokazujemy, jak za jego pomocą sterować intensywnością światła LED, podobnie jak ściemniacz na lampie, z opcjami przyciemniania i rozjaśniania.

Mechanizm ten umożliwia również np. podłączenie sterownika do silnika. To tylko jedna z wielu możliwości.

- Uwaga: PWM oznacza modulację szerokości impulsu.

Krok 1: Cel

Zespół składa się z potencjometru, który jest rezystorem zmiennym, monitorowanym przez ESP. W tym schemacie używam tego samego kodu źródłowego, którego użyłbym z Arduino. Ze względu na wiele zalet Arduino IDE z ESP wykorzystujemy również w innych projektach.

W zestawie ESP jest podłączony do USB tylko do zasilania. Mamy też pin kursora, który jest pinem środkowego potencjometru, podłączonego w porcie AD oraz plus i minus.

Ponieważ napięcie się zmienia, możliwe jest odczytanie innej wartości w AD. Dlatego kręcąc potencjometrem można zwiększyć lub zmniejszyć jasność diody.

Krok 2: Montaż

montaż
montaż

Schemat elektryczny jest bardzo prosty: za pomocą ESP8266 w konfiguracji NodeMCU zasilimy USB. Więc tutaj potencjometr musi być podłączony z jednego końca do ujemnego, a drugi do dodatniego. Medium, którym jest kursor, pozostaje w ADC 0, ponieważ ten ESP ma tylko port, który odczytuje wartości analogowe.

Krok 3: Wi-Fi ESP8266 NodeMCU ESP-12E

Wi-Fi ESP8266 NodeMCU ESP-12E
Wi-Fi ESP8266 NodeMCU ESP-12E

Krok 4: Kod źródłowy

Ustawiać

W funkcji Setup definiujemy zachowanie pinów, których używamy, w tym przypadku diody LED i POTENCJOMETRU.

void setup(){ Serial.begin(115200) // Instrukcja obsługi colocar lub gpio que iremos utilizar como entrada, // podemos fazer a nesse 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 lub LOW pinMode(LED_OUTPILTIN);, // LED_BUILTIN e uma stała que indica o LED do ESP8266 }

Pętla

W tej funkcji logika polega na odczytaniu wartości POT i przypisaniu tej wartości (czyli intensywności jasności) w diodzie LED.

void loop(){ // faz a leitura do pino A0 (bez nosso caso, o potenciômetro, retorna um valor entre 0 e 1023) int potencia = analogRead(A0); Serial.println(potencja); // 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 konforme girarmos o potenciômetro em sentido horário. potencja = 1023 - potencja; // atribui o valor lido do potenciômetro para configurar a intensidade do brilho do LED analogWrite(LED_BUILTIN, potencia); }

Zalecana: