Aquest LED DIMMER és un circuit PWM (Pulse Width Modulation) basat en Arduino Uno desenvolupat per obtenir tensió variable per sobre de voltatge constant. A continuació s’explica el mètode de PWM. Abans de començar a construir un circuit dimmer LED d'1 watt, primer considereu un circuit senzill com es mostra a la figura següent.

Ara bé, si l’interruptor de la figura es tanca contínuament durant un període de temps, la bombeta s’encendrà contínuament durant aquest temps. Si l’interruptor es tanca durant 8 ms i s’obre durant 2 ms durant un cicle de 10 ms, la bombeta només s’encendrà en el termini de 8 ms. Ara, el terminal mitjà en un període de 10 ms = Temps d’activació / (Temps d’encès + Temps d’APAGAMENT), s’anomena cicle de treball i és del 80% (8 / (8 + 2)), de manera que la mitjana la tensió de sortida serà del 80% de la tensió de la bateria.
En el segon cas, l’interruptor es tanca durant 5 ms i s’obre durant 5 ms durant un període de 10 ms, de manera que el voltatge mitjà del terminal a la sortida serà del 50% de la tensió de la bateria. Digueu si la tensió de la bateria és de 5V i el cicle de treball és del 50% i, per tant, la tensió mitjana del terminal serà de 2,5V.
En el tercer cas, el cicle de treball és del 20% i el voltatge mitjà del terminal és del 20% de la tensió de la bateria.
Ara bé, com s’utilitza aquesta tècnica en aquest regulador de llum LED? S'explica a la secció següent d'aquest tutorial.

Com es mostra a la figura, un Arduino UNO té canals 6PWM, de manera que podem obtenir PWM (voltatge variable) en qualsevol d’aquests sis pins. En aquest capítol utilitzarem el PIN3 com a sortida PWM.
Components necessaris
Maquinari: ARDUINO UNO, font d'alimentació (5v), condensador 100uF, LED, botons (dues peces), resistència de 10KΩ (dues peces).
Programari: IDE arduino
Diagrama del circuit i explicació

El circuit es connecta a la placa de configuració segons el diagrama del circuit. No obstant això, cal parar atenció durant la connexió dels terminals LED. Tot i que els botons mostren efectes de rebot en aquest cas, no causen errors considerables, de manera que no ens hem de preocupar aquesta vegada.
El PWM de l’ONU és bastant fàcil. Tot i que no és fàcil configurar un controlador ATMEGA per al senyal PWM, hem de definir molts registres i configuracions per obtenir un senyal precís, però a ARDUINO no hem de tractar totes aquestes coses.
Per defecte, tots els fitxers i registres de capçalera estan predefinits per IDE ARDUINO, simplement els hem de trucar i ja tindrem una sortida PWM al pin adequat.
Ara per obtenir una sortida PWM en un pin adequat, hem de treballar en dues coses,
|
Primer hem de triar el pin de sortida PWM entre sis pins, després hem de configurar aquest pin com a sortida.
A continuació, hem d'activar la característica PWM d'UNO trucant a la funció "analogWrite (pin, valor)". Aquí "pin" representa el número de pin on necessitem la sortida PWM, el posem com a "3". Així doncs, a PIN3 obtenim una sortida PWM. El valor és el cicle de treball d’activació, entre 0 (sempre apagat) i 255 (sempre activat). Incrementarem i disminuirem aquest número prement el botó.
L’ús de pins PWM a Arduino Uno s’explica al codi C que es mostra a continuació.
