Denna LED DIMMER är en Arduino Uno-baserad PWM-krets (Pulse Width Modulation) utvecklad för att få variabel spänning över konstant spänning. Metoden för PWM förklaras nedan. Innan vi börjar bygga en 1 Watt LED-dimmerkrets bör du först överväga en enkel krets som visas i figuren nedan.
Om strömbrytaren i figuren nu stängs kontinuerligt under en tidsperiod kommer lampan att lysa kontinuerligt PÅ under den tiden. Om strömbrytaren är stängd i 8 ms och öppnas i 2 ms under en cykel på 10 ms, kommer lampan att vara PÅ endast på 8 ms-tiden. Nu är den genomsnittliga terminalen över en period på 10 ms = Turn ON time / (Turn ON time + Turn OFF time), detta kallas arbetscykel och är 80% (8 / (8 + 2)), så genomsnittet utspänningen kommer att vara 80% av batterispänningen.
I det andra fallet är omkopplaren stängd i 5 ms och öppnas i 5 ms under en period av 10 ms, så den genomsnittliga polspänningen vid utgången blir 50% av batterispänningen. Säg om batterispänningen är 5V och arbetscykeln är 50% och så blir den genomsnittliga polspänningen 2,5V.
I det tredje fallet är arbetscykeln 20% och den genomsnittliga polspänningen är 20% av batterispänningen.
Hur används den här tekniken nu i denna LED-dimmer? Det förklaras i det efterföljande avsnittet i denna handledning.
Som visas i figuren har en Arduino UNO 6PWM-kanaler, så vi kan få PWM (variabel spänning) vid någon av dessa sex stift. I det här kapitlet ska vi använda PIN3 som PWM-utgång.
Nödvändiga komponenter
Hårdvara: ARDUINO UNO, strömförsörjning (5v), 100uF kondensator, LED, knappar (två delar), 10KΩ motstånd (två delar).
Programvara: arduino IDE
Kretsschema och förklaring
Kretsen är ansluten på panelen enligt kretsschemat. Man måste dock vara uppmärksam vid anslutning av LED-terminalerna. Även om knapparna visar studsande effekt i det här fallet orsakar det inte betydande fel så vi behöver inte oroa oss den här gången.
PWM från UNO är ganska lätt. Även om det inte är enkelt att ställa in en ATMEGA-kontroller för PWM-signal måste vi definiera många register och inställningar för en exakt signal, men i ARDUINO behöver vi inte hantera alla dessa saker.
Som standard är alla rubrikfiler och register fördefinierade av ARDUINO IDE, vi behöver helt enkelt ringa dem och det är det vi kommer att ha en PWM-utgång vid lämplig stift.
Nu för att få en PWM-utgång till en lämplig stift, måste vi arbeta med två saker,
|
Först måste vi välja PWM-utgångsstift från sex stift, därefter måste vi ställa in den som utgången.
Därefter måste vi aktivera PWM-funktionen i UNO genom att kalla funktionen "analogWrite (pin, värde)". Här representerar 'pin' PIN-numret där vi behöver PWM-utdata, vi sätter det som '3'. Så vid PIN3 får vi PWM-utdata. Värde är PÅ-arbetscykeln mellan 0 (alltid av) och 255 (alltid på). Vi kommer att öka och minska detta nummer genom att trycka på knappen.
Användning av PWM-stift i Arduino Uno förklaras i C-koden nedan.