Orodha ya maudhui:

Inalinganisha Mwangaza wa LED: Hatua 5
Inalinganisha Mwangaza wa LED: Hatua 5

Video: Inalinganisha Mwangaza wa LED: Hatua 5

Video: Inalinganisha Mwangaza wa LED: Hatua 5
Video: Домашний уход за лицом после 50 лет. Советы косметолога. Антивозрастной уход за зрелой кожей. 2024, Novemba
Anonim
Inalinganisha Mwangaza wa LED
Inalinganisha Mwangaza wa LED

Wakati nilikuwa nikitengeneza taa ya hadithi, niligundua thamani ya PWM sio sawa na mwangaza wa LED. Kusema tu, ikiwa thamani ya PWM ni mara mbili mwangaza sio mara mbili; haswa wakati PWM iko karibu na kiwango cha juu, mabadiliko yoyote hayatambuliwi na macho yangu. Nilidhani inapaswa kuwa suala rahisi la upimaji! na ndivyo nilivyofanya mradi huu! Wazo ni kupima mwangaza wa LED na kifaa fulani (sensorer ya mwangaza au picharesistor) na kupata uhusiano kati ya thamani ya PWM na mwangaza. Halafu baadaye Ikiwa nitaweka mwangaza hadi 50%, Arduino atahesabu PWM inayolingana na kuipunguza LED ipasavyo.

Kwa hivyo, ninahitaji sensa ya mwangaza na LED kupima mwangaza. Kutumia kadi ya SD, nitahifadhi data kwa utaratibu unaofaa baadaye. Kufaa kutafanywa katika Excel (au programu nyingine yoyote). Kuweka nje itatumika katika nambari ya Arduino, na ndio hiyo! Inapaswa kufanywa mara moja. Basi unaweza kutumia parameter ya calibration milele!

Hatua ya 1: Sehemu

1- WEMOS mini D1: Aliexpress 3 €

2- TSL 2561 (sensa ya Mwangaza): Aliexpress 3 €

3- Moduli ya kadi ya SD: Aliexpress 1 €

4- LED

5- Resistor 220 ohm

6- waya

jumla ya gharama: 8 -10 €

Hatua ya 2: Wiring

Wiring
Wiring
Wiring
Wiring
Wiring
Wiring

Moduli ya kadi ya SD na waya za sensorer ya mwangaza hazipaswi kubadilishwa (wengi wao). Iliyoongozwa inapaswa kushikamana na pini ya PWM.

Hatua ya 3: Kanuni

Kanuni
Kanuni

Niliunganisha nambari tatu za nambari:

Kadi ya SD: mfano uliotumiwa> SD> ReadWrite katika Arduino IDE

TSL 2561: mfano wa Adafruit TSL2561 uliotumiwa (sensorapi); utaipata katika mifano, ikiwa utaweka maktaba (nadhani unajua jinsi ya kusanikisha maktaba katika Arduino IDE).

Kufifia kwa LED: mifano iliyotumiwa> Analog> kufifia

Nambari, baada ya kuanzisha moduli, itapunguza mwongozo na kusoma mwangaza na kuihifadhi kwenye kadi ya SD. kwa njia hii nitakusanya data kadhaa ya usawa.

Nilibadilisha kila nambari kulingana na mahitaji yangu. nambari ya mwisho iliyoambatanishwa.

Ishara inapaswa kuonekana kama picha iliyoambatanishwa. Kwa bahati mbaya nilisahau kupiga picha kwa hivyo niliipiga kwa uzuri ili kukuonyesha jinsi inapaswa kuwa.

KUMBUKA: Ninatumia wemo mini D1 badala ya Arduino. kwa sababu ambayo sijui, PWM iko kati ya 0 na 1023. Katika Arduino inapaswa kuwa kati ya 0-255. Ikiwa unataka kutumia nambari hiyo kwa arduino, unapaswa kuitunza (mstari 90).

Hatua ya 4: Kufaa, na Kutumia

Kufaa, na Kutumia
Kufaa, na Kutumia
Kufaa, na Kutumia
Kufaa, na Kutumia

baada ya kukusanya data, nilifungua faili kwa ubora na kupanga data (angalia picha). safu ya kwanza ni thamani ya PWM na ya pili ni lux (kusoma kwa sensa, kitengo haijalishi sana). Kwa hivyo, njama lux (y-axis) dhidi ya PWM (x-axis). Kama unaweza kuona mwangaza ni sawa na usawa wa thamani ya PWM. Niliweka laini kwake.

Ili kutoshea mstari fuata kama:

1- panga data (ingiza> njama ya kutawanya) nadhani unajua jinsi.

2- bonyeza kulia kwenye data iliyopangwa

3- bonyeza kwenye laini.

4- (bora 2013) upande wa kulia jopo linaibuka. Chagua laini. Chini chagua "onyesha equation kwenye chati".

Uhusiano wa mstari ni tofauti na mtazamo wangu. Kwa hivyo nadhani kunafaa kuwa na uhusiano wa kimantiki kati ya mtazamo wangu na mwangaza (hii ndiyo njia rahisi ilikuja akilini mwangu!). Kwa hivyo nikachukua mteremko wa kifafa. Kukatiza sio muhimu, kwa sababu inategemea uchafuzi wa mwanga unaozunguka! badala yake, niliongeza 1. Kwa sababu Log10 (0) haina mwisho. Kwa hivyo ninahitaji kizuizi ili kutatua shida. Katika kesi yangu equation inaonekana kama hii:

y = Log10 (0.08 x +1), y ni mwangaza na x ni thamani ya PWM (0-1023)

Nilirekebisha usawa kwa kiwango cha juu. basi pato linapigwa kila wakati ni kati ya 0-100. kwa njia hii naweza kuuliza arduino kwa mwangaza fulani wa jamaa, bila kuzingatia mwangaza kamili kabisa.

y = Log10 (0.08 x +1) * 100 / 1.914

Kwa sababu katika arduino pembejeo yangu ni mwangaza wa jamaa, ninahitaji kupanga tena equation kwa x (PWM):

x = (10 ^ (y * 1.914 / 100) - 1) / 0.08

kutumia equation hii katika nambari tunaweza kupata mabadiliko ya mwangaza. Kwa hivyo unauliza arduino mwangaza (y) kati ya 0-100, na arduino huhesabu thamani inayolingana ya PWM. kwa njia hii, ikiwa mwangaza mara mbili, mtazamo wako pia ni sawa.

ikiwa unataka kuitumia katika nambari yako ni bora uongeze mistari hii:

mwangaza = 50; // kwa asilimia

PWM = poda (10, mwangaza * 1.914 / 100) -1) /0.0793;

AnalogWrite (ledpin, PWM);

KUMBUKA: urekebishaji unafanywa kwa kiwango cha juu cha PWM cha 1023 (kwa Wemos mini D1). Kwa Arduino PWM iko kati ya 0-255. unahitaji kuhesabu ipasavyo.

KUMBUKA2: Niliongeza njama-ya mstari ili kuonyesha jinsi mtazamo wetu na thamani ya PWM zinahusiana. haupaswi kuitumia kwa kufaa!

Hatua ya 5: Hitimisho

hesabu inanifanyia kazi vizuri. Wakati maadili ya PWM ni makubwa, naweza kuona tofauti. Kabla kama maadili makubwa sikuweza kuona athari ya kufifia. Kimsingi mabadiliko mengi yalifanywa katika anuwai ndogo ya PWM. sasa imesanifiwa!

kila LED, rangi tofauti, inapaswa kuwa na vigezo vya upimaji. Walakini niliweka mwangaza wa LED ya bluu na nikatumia parameter kwa LED nyeupe na matokeo yakakubalika. kwa hivyo labda unaweza kutumia parameter yangu ya upimaji bila kujisumbua mwenyewe !!

Ilipendekeza: