Acest LED DIMMER este un circuit PWM (Pulse Width Modulation) bazat pe Arduino Uno, dezvoltat pentru a obține tensiune variabilă peste tensiune constantă. Metoda PWM este explicată mai jos. Înainte de a începe să construim un circuit de 1 Watt LED Dimmer, luați în considerare mai întâi un circuit simplu așa cum se arată în figura de mai jos.
Acum, dacă întrerupătorul din figură este închis continuu pe o perioadă de timp, atunci becul va porni continuu în timpul respectiv. Dacă întrerupătorul este închis timp de 8 ms și deschis timp de 2 ms pe un ciclu de 10 ms, atunci becul va fi PORNIT doar în timp de 8 ms. Acum terminalul mediu peste o perioadă de 10 ms = Timp de pornire / (Timp de pornire + Timp de oprire), acesta se numește ciclu de funcționare și este de 80% (8 / (8 + 2)), deci media tensiunea de ieșire va fi de 80% din tensiunea bateriei.
În al doilea caz, comutatorul este închis timp de 5 ms și deschis timp de 5 ms pe o perioadă de 10 ms, astfel încât tensiunea terminală medie la ieșire va fi de 50% din tensiunea bateriei. Spuneți dacă tensiunea bateriei este de 5V și ciclul de funcționare este de 50% și deci tensiunea terminală medie va fi de 2,5V.
În al treilea caz, ciclul de funcționare este de 20%, iar tensiunea medie a terminalului este de 20% din tensiunea bateriei.
Acum, cum se folosește această tehnică în acest LED Dimmer? Este explicat în secțiunea ulterioară a acestui tutorial.
Așa cum se arată în figură, un Arduino UNO are canale 6PWM, deci putem obține PWM (tensiune variabilă) la oricare dintre acești șase pini. În acest capitol vom folosi PIN3 ca ieșire PWM.
Componente necesare
Hardware: ARDUINO UNO, sursă de alimentare (5v), condensator 100uF, LED, butoane (două bucăți), rezistor de 10KΩ (două bucăți).
Software: IDE arduino
Diagrama și explicația circuitului
Circuitul este conectat pe panou conform schemei de circuit. Cu toate acestea, trebuie să acordați atenție în timpul conectării terminalelor LED. Deși butoanele prezintă efect de săritură în acest caz, nu provoacă erori considerabile, așa că nu trebuie să ne facem griji de data aceasta.
PWM de la UNO este destul de ușor. În timp ce configurarea unui controler ATMEGA pentru semnalul PWM nu este ușoară, trebuie să definim multe registre și setări pentru un semnal precis, totuși în ARDUINO nu trebuie să ne ocupăm de toate aceste lucruri.
În mod implicit, toate fișierele și registrele antet sunt predefinite de ARDUINO IDE, trebuie pur și simplu să le apelăm și gata, vom avea o ieșire PWM la pinul corespunzător.
Acum, pentru a obține o ieșire PWM la un pin adecvat, trebuie să lucrăm la două lucruri,
|
Mai întâi trebuie să alegem pinul de ieșire PWM din șase pini, după care trebuie să setăm acel pin ca ieșire.
Apoi, trebuie să activăm caracteristica PWM a UNO apelând funcția „analogWrite (pin, valoare)”. Aici „pin” reprezintă numărul pinului în care avem nevoie de ieșire PWM, îl punem ca „3”. Deci, la PIN3 obținem ieșire PWM. Valoarea este ciclul de pornire PORNIT, între 0 (întotdeauna oprit) și 255 (întotdeauna activat). Vom crește și micșora acest număr prin apăsarea butonului.
Utilizarea pinilor PWM în Arduino Uno este explicată în codul C dat mai jos.