W tym samouczku nauczymy się, jak mierzyć napięcie stałe z potencjometru za pomocą modułu ESP32 firmy SunFounder. Projekt będzie również pokazywał, jak płynnie regulować jasność diody LED w zależności od położenia potencjometru. Gdy obracasz potencjometr w lewo, odczyt napięcia maleje, a dioda LED odpowiednio przygasa. To ćwiczenie zapewni praktyczne zrozumienie korzystania z przetwornika analogowo-cyfrowego (ADC) w ESP32.
potencjometrPotencjometr lub rezystor zmienny
ESP32 to wydajny mikrokontroler wyposażony we wbudowaną łączność Wi-Fi i Bluetooth, co czyni go idealnym do projektów IoT. W tym samouczku wykorzystamy jego funkcje wejścia analogowego do odczytu poziomów napięcia z potencjometru, jednocześnie sterując jasnością diody LED na podstawie tych odczytów. Efektem będzie responsywna dioda LED, która zmienia swoją intensywność podczas regulacji potencjometru.
Objaśnienie sprzętu
Do tego projektu będziemy potrzebować następujących komponentów:
Moduł ESP32: Główny mikrokontroler, który będzie odczytywał napięcie z potencjometru i sterował diodą LED.
Potencjometr: Rezystor zmienny używany do regulacji napięcia. Ma trzy piny: dwa dla rezystorów stałych i jeden zmienny.
Dioda LED: Dioda elektroluminescencyjna, której jasność będzie sterowana na podstawie położenia potencjometru.
Rezystor: Rezystor 220 omów do ograniczenia prądu płynącego przez diodę LED.
Potencjometr działa poprzez zmianę rezystancji między swoimi pinami, co pozwala mu generować napięcie, które ESP32 może odczytać przez swój ADC. Jasność diody LED jest sterowana za pomocą modulacji szerokości impulsu (PWM) w celu dostosowania mocy dostarczanej do niej na podstawie odczytu analogowego.
Szczegóły z karty katalogowej
Instrukcje podłączenia
ESP32-23-fading-LED_pot-wiring
Aby podłączyć komponenty, zacznij od podłączenia potencjometru. Podłącz jeden z jego zewnętrznych pinów do zasilania 3,3 V na ESP32. Podłącz drugi zewnętrzny pin do masy (GND). Środkowy pin potencjometru zostanie podłączony do pinu 35 na ESP32, który służy do odczytu napięcia analogowego.
Następnie, dla diody LED, podłącz dłuższy pin (anodę) do pinu 26 na ESP32 przez rezystor 220 omów. Podłącz krótszy pin (katodę) diody LED do masy. Upewnij się, że wszystkie połączenia są pewne i sprawdź dwukrotnie orientację diody LED, aby zapobiec jej uszkodzeniu.
Przykłady kodu i omówienie
Poniższy fragment kodu pokazuje, jak skonfigurować ESP32 do odczytu potencjometru i sterowania diodą LED:
const int potPin = 35; // Potencjometr podłączony do
const int ledPin = 26; // Dioda LED podłączona do
// Ustawienia PWM
const int freq = 5000; // Częstotliwość PWM
const int resolution = 12; // Rozdzielczość PWM (bity)
W tym fragmencie definiujemy piny dla potencjometru i diody LED. Ustawiana jest również częstotliwość i rozdzielczość PWM, które określą poziomy jasności diody LED.
W funkcji setup inicjalizujemy komunikację szeregową i konfigurujemy ustawienia PWM dla diody LED. Ta konfiguracja jest wykonywana raz po uruchomieniu programu.
Na koniec funkcja loop w sposób ciągły odczytuje wartość potencjometru i dostosowuje jasność diody LED:
void loop() {
int potValue = analogRead(potPin); // odczytaj wartość potencjometru
uint32_t voltage_mV = analogReadMilliVolts(potPin); // Odczytaj napięcie w miliwoltach
ledcWrite(ledPin, potValue);
// Wyjście szeregowe pominięte dla zwięzłości
}
W pętli odczytujemy wartość analogową z potencjometru i przeliczamy ją na sterowanie jasnością diody LED. Wyjście szeregowe pokazuje wartość potencjometru i napięcie, co pomaga w weryfikacji odczytów.
Demonstracja / Czego się spodziewać
Gdy obwód jest prawidłowo podłączony, a kod wgrany, obracanie potencjometru powinno skutkować odpowiednią zmianą odczytu napięcia wyświetlanego w monitorze szeregowym. Dioda LED powinna płynnie przygasać i rozjaśniać się podczas regulacji potencjometru. Jeśli dioda LED nie reaguje zgodnie z oczekiwaniami, sprawdź połączenia przewodów i upewnij się, że potencjometr działa prawidłowo (na wideo o 11:30).
Znaczniki czasu wideo
00:00 Start
2:02 Co to jest potencjometr
4:15 Pomiar rezystancji potencjometru
6:59 Strona dokumentacji
8:56 Wyjaśnienie podłączenia
12:28 Wyjaśnienie kodu Arduino
15:58 Wybór płytki ESP32 i portu COM w Arduino IDE
17:40 Demonstracja odczytu wartości potencjometru za pomocą ESP32
Ujawnienie: Jako partner Amazonu, zarabiamy na kwalifikujących się zakupach. Oznacza to, że możemy otrzymać małą prowizję, jeśli klikniesz w link i dokonasz zakupu bez dodatkowych kosztów dla Ciebie.