În acest tutorial, vom învăța cum să măsurăm tensiunea continuă de la un potențiometru folosind modulul ESP32 de la SunFounder. Proiectul va demonstra, de asemenea, cum să estompăm un LED pe baza poziției potențiometrului. Pe măsură ce rotiți potențiometrul în sens invers acelor de ceasornic, citirea tensiunii scade, iar LED-ul se estompează în consecință. Acest exercițiu va oferi o înțelegere practică a utilizării convertorului analog-digital (ADC) din ESP32.
potențiometruPotențiometru sau rezistor variabil
ESP32 este un microcontroler puternic echipat cu capacități Wi-Fi și Bluetooth integrate, fiind ideal pentru proiecte IoT. În acest tutorial, vom utiliza caracteristicile sale de intrare analogică pentru a citi nivelurile de tensiune de la un potențiometru, controlând totodată luminozitatea unui LED pe baza acestor citiri. Rezultatul va fi un LED receptiv care își variază intensitatea pe măsură ce ajustați potențiometrul.
Hardware Explicat
Pentru acest proiect, vom avea nevoie de următoarele componente:
Modulul ESP32: Microcontrolerul principal care va citi tensiunea potențiometrului și va controla LED-ul.
Potențiometru: Un rezistor variabil folosit pentru a ajusta tensiunea. Are trei pini: doi pentru rezistențe fixe și unul care variază.
LED: O diodă emițătoare de lumină a cărei luminozitate va fi controlată pe baza poziției potențiometrului.
Rezistor: Un rezistor de 220 ohmi pentru a limita curentul prin LED.
Potențiometrul funcționează prin varierea rezistenței între pinii săi, permițând generarea unei tensiuni pe care ESP32 o poate citi prin ADC-ul său. Luminozitatea LED-ului este controlată folosind modularea lățimii impulsurilor (PWM) pentru a ajusta puterea livrată acestuia pe baza citirii analogice.
Detalii din Fișa Tehnică
Instrucțiuni de Cablare
ESP32-23-fading-LED_pot-wiring
Pentru a cabla componentele, începeți prin conectarea potențiometrului. Conectați unul dintre pinii săi exteriori la sursa de alimentare de 3.3V de pe ESP32. Conectați celălalt pin exterior la masă (GND). Pinul din mijloc al potențiometrului va fi conectat la pinul 35 de pe ESP32, care este folosit pentru citirea tensiunii analogice.
Apoi, pentru LED, conectați pinul mai lung (anodul) la pinul 26 de pe ESP32 printr-un rezistor de 220 ohmi. Conectați pinul mai scurt (catodul) al LED-ului la masă. Asigurați-vă că toate conexiunile sunt sigure și verificați de două ori orientarea LED-ului pentru a preveni deteriorarea.
Exemple de Cod și Explicații
Fragmentul de cod următor demonstrează cum să configurați ESP32 pentru a citi potențiometrul și a controla LED-ul:
const int potPin = 35; // Potențiometru conectat la
const int ledPin = 26; // LED conectat la
// Setări PWM
const int freq = 5000; // Frecvența PWM
const int resolution = 12; // Rezoluția PWM (biți)
În acest extras, definim pinii pentru potențiometru și LED. Frecvența și rezoluția PWM sunt, de asemenea, setate, ceea ce va determina nivelurile de luminozitate ale LED-ului.
În funcția de configurare, inițializăm comunicarea serială și configurăm setările PWM pentru LED. Această configurare rulează o singură dată când programul pornește.
În final, funcția loop citește continuu valoarea potențiometrului și ajustează luminozitatea LED-ului:
void loop() {
int potValue = analogRead(potPin); // citește valoarea potențiometrului
uint32_t voltage_mV = analogReadMilliVolts(potPin); // Citește tensiunea în milivolți
ledcWrite(ledPin, potValue);
// Ieșirea serială omisă pentru concizie
}
În buclă, citim valoarea analogică de la potențiometru și o traducem pentru a controla luminozitatea LED-ului. Ieșirea serială arată valoarea potențiometrului și tensiunea, ajutând la verificarea citirilor.
Demonstrație / Ce să Vă Așteptați
Când circuitul este configurat corect și codul este încărcat, rotirea potențiometrului ar trebui să rezulte într-o schimbare corespunzătoare a citirii tensiunii afișate în monitorul serial. LED-ul ar trebui să se estompeze lin, crescând și scăzând pe măsură ce potențiometrul este ajustat. Dacă LED-ul nu răspunde conform așteptărilor, verificați conexiunile de cablare și asigurați-vă că potențiometrul funcționează corect (în video la 11:30).
Marcaje Temporale Video
00:00 Început
2:02 Ce este Pot
4:15 Măsurarea rezistenței potențiometrului
6:59 Pagina de documentație
8:56 Cablare explicată
12:28 Cod Arduino explicat
15:58 Selectarea plăcii ESP32 și a portului COM în Arduino IDE
17:40 Demonstrație de citire a valorii potențiometrului cu ESP32
Divulgare: Ca asociat Amazon, câștigăm din achizițiile eligibile. Aceasta înseamnă că putem primi un mic comision dacă dai clic pe un link și faci o achiziție fără costuri suplimentare pentru tine.