INHOUDSOPGAWE:

Vervaag 'n LED in en uit: 3 stappe
Vervaag 'n LED in en uit: 3 stappe

Video: Vervaag 'n LED in en uit: 3 stappe

Video: Vervaag 'n LED in en uit: 3 stappe
Video: TL-buis ombouwen naar LED TL, hoe te vervangen – Besparingen en Duurzaamheid 2024, November
Anonim
Vervaag 'n LED in en uit
Vervaag 'n LED in en uit

Die volgende stappe is eksperimente om te illustreer hoe LED's werk. Hulle illustreer hoe u 'n LED teen 'n gelyke snelheid kan verdof en hoe u dit in en uit kan vervaag.

Jy sal nodig hê:

  • Arduino (ek het 'n duo gebruik)
  • Broodbord
  • 5 mm rooi LED
  • 330 Ω Weerstand (nie krities nie 330-560 Ω sal werk.)
  • 22 meter soliede aansluitdraad

Die onderdele wat benodig word vir hierdie eksperimente, is ingesluit in al die opstartkits van Arduino.

Stap 1: Pulsmodulasie verduidelik

Pulsmodulasie verduidelik
Pulsmodulasie verduidelik
Pulsmodulasie verduidelik
Pulsmodulasie verduidelik
Pulsmodulasie verduidelik
Pulsmodulasie verduidelik

LED's werk altyd op dieselfde spanning, ongeag die helderheid. Die helderheid word bepaal deur 'n vierkantgolf ossillator en die hoeveelheid tyd wat die spanning hoog is, bepaal die helderheid. Dit word Pulse Width Modulation (PWM) genoem. Dit word beheer deur die Arduino analogWrite (pin, n) funksie waar n 'n waarde het van 0 tot 255. Die analogWrite () gee PWM af, nie ware analoog nie. As n = 2 sal die LED twee keer so helder wees as n = 1. Die helderheid verdubbel altyd as n verdubbel. Dus n = 255 sal twee keer so helder wees as n = 128.

Die waarde van n word dikwels uitgedruk as 'n persentasie wat die pligsiklus genoem word. Die foto's toon ossilloskoopspore vir 25, 50 en 75% dienssiklusse.

Stap 2: Ongelyke verduistering

Ongelyke verduistering
Ongelyke verduistering
Ongelyke verduistering
Ongelyke verduistering

Bou die stroombaan soos in die diagram. Dit is net soos die kring om 'n LED te knip. Dit gebruik pen 9 omdat u 'n PWM -pin moet gebruik.

Kopieer/plak die onderstaande skets in die Arduino IDE en voer dit uit.

U sal sien dat hoe helderder die LED is, hoe stadiger word dit. Namate dit naby die dowwerste kom, word dit baie vinnig dowwer.

leemte opstelling ()

{pinMode (9, OUTPUT); } leemte lus () {int pin = 9; vir (int i = 255; i> -1; i--) {analogWrite (pin, i); vertraging (10); } vir (int i = 0; i <256; i ++) {analogWrite (pin, i); vertraging (10); }}

}

Die volgende stap wys hoe u die LED teen 'n konstante tempo kan dim, en in een vir verklaring.

Stap 3: Op en af in een vir ()

Om die LED teen 'n konstante tempo te laat verdof, moet die vertraging () met 'n eksponensiële tempo toeneem, omdat die helfte van die werksiklus altyd die helfte van die helderheid sal lewer. My eerste gedagte was om die kaart () -funksie te probeer gebruik, maar dit is lineêr.

Die lyn:

int d = (16-i/16)^2;

bereken die omgekeerde vierkant van die helderheid om die lengte van die vertraging te bepaal.

Kopieer/plak die onderstaande skets in die Arduino IDE en u sal sien dat die LED teen 'n konstante tempo in en uit sal vervaag.

leemte opstelling ()

{pinMode (9, OUTPUT); } leemte lus () {int x = 1; int pin = 9; vir (int i = 0; i> -1; i = i + x) {int d = (16 -i/16)^2; analogWrite (pen, i); vertraging (d); as (i == 255) x = -1; // skakel rigting op hoogtepunt}}

Aanbeveel: