Dišuća LED-ica

UVOD:

U ovoj lekciji prikazati ćemo kako programirati Arduino da generira PWM pravokutni signal koji će upravljati LED diodom. Efekt kojeg ovdje želimo postići je pulsirajuća ili dišuća LED-ica. Dakle, LED-ica se postupno uključuje, te se postupno isključuje.

MATERIJAL:

1x Arduino Uno
1x USB kabel
1x LED bilo koje boje
1x otpornik 220R
1x Prototipna pločica
– Nekoliko žica za spajanje

 

Kôd programa:

SHEMA:

08_breathingLed

Princip rada:

PWM je kratica za Pulse Widht Modulation. A PWM je tehnika za dobivanje analognih rezultata sa digitalnim značenjem. Digitalna kontrola koristi se za izradu pravokutnog signala koji naravno može biti samo uključen ili isključen(on-off). Ovakav on-off uzorak može simulirati napone između ON=5 volti i OFF=0 volti, promijenom količine vremena koje signal provede u stanju ON ili stanju OFF.
Trajanje kada je signal “ON” naziva se širina pulsa ili eng. pulse width (odatle i naziv za ovu funkciju). Za dobivanje različitih analognih vrijednosti, mijenjamo ili moduliramo tu širinu pulsa. Ako dovoljno brzo ponavljamo ON-OFF uzorak sa npr. LED diodom, tada napon “varira” između 0 i 5V te na taj način reguliramo svjetlost LED-ice. U našem slučaju napon neće ići do 5V jer to ne bi bilo “zdravo” za LED-icu. U videu na kraju ove lekcije možete pogledati kako se mijenja napon tijekom “disanja” diode.

Na slici ispod zelene crte predstavljaju regularni vremenski period u postupku. Trajanje ili period je inverzan frekvenciji PWM-a. Drugim riječima, Arduinova PWM frekvencija od oko 500Hz,daje rezultat da svaka zelena linija mjeri 2 milisekunde. Pozivanje funkcije analogWrite()

 

pwm

 

Video: