Мазмуну:

LED Жарыктыгын Калибрлөө: 5 кадам
LED Жарыктыгын Калибрлөө: 5 кадам

Video: LED Жарыктыгын Калибрлөө: 5 кадам

Video: LED Жарыктыгын Калибрлөө: 5 кадам
Video: Диодная RGB LED лента BIOM + white LED Premium обзор и подключение 2024, Ноябрь
Anonim
LED жарыктыгын калибрлөө
LED жарыктыгын калибрлөө

Мен жомок жарыгын жасап жатканда, мен PWM мааниси сызыктуу эмес LED жарыгына пропорционалдуу экенин түшүндүм. Жөнөкөй сөз менен айтканда, эгер PWM мааниси эки эсе болсо, анда жарыктык эки эсе эмес; Атайын PWM максимумга жакын болгондо, эч кандай өзгөрүү менин көзүмө көрүнбөйт. Мен бул жөнөкөй калибрлөө маселеси болушу керек деп ойлогом! жана мен бул проекти кандай кылдым! Идеянын мааниси - LEDдин жарыктыгын кандайдыр бир түзүлүш (люминостук сенсор же фоторезистор) менен өлчөө жана PWM мааниси менен жарыктын ортосундагы корреляцияны табуу. Кийинчерээк мен жарыктыгын 50%га койсом, Arduino тиешелүү PWMди эсептейт жана ошого жараша LEDди өчүрөт.

Ошондуктан, мага жарыкты өлчөө үчүн жарыктын сенсору жана LED керек. SD картаны колдонуп, мен маалыматты кийинчерээк орнотуу процедурасы үчүн сактайм. Орнотуу Excelде (же башка программада) жүргүзүлөт. Out Arduino кодунда колдонулат, жана бул! Ал бир жолу жасалышы керек. Андан кийин калибрлөө параметрин түбөлүккө колдоно аласыз!

1 -кадам: Бөлүктөр

1- WEMOS mini D1: Aliexpress 3 €

2- TSL 2561 (Жарыктык сенсор): Aliexpress 3 €

3- SD карта модулу: Aliexpress 1 €

4- LED

5- Резистор 220 Ом

6- зымдар

жалпы наркы: 8-10 €

2 -кадам: Кабелдөө

Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү

SD картанын модулу жана жарыктын сенсорунун зымдары өзгөртүлбөшү керек (көбү). Led PWM пинине туташтырылышы керек.

3 -кадам: Код

Code
Code

Мен үч кодду бириктирдим:

SD карта: колдонулган мисал> SD> Arduino IDEдеги ReadWrite

TSL 2561: колдонулган Adafruit TSL2561 китепканасынын мисалы (sensorapi); аны мисалдардан таба аласыз, эгер сиз китепкананы орнотсоңуз (Arduino IDEде китепкананы кантип орнотууну билесиз деп ойлойм).

LED өчүрүү: колдонулган мисалдар> Аналог> өчүү

Код, модулдарды инициализациялагандан кийин, жарыктын жарыктыгын өчүрүп, жарыктыгын окуп SD картка сактайт. ушундай жол менен мен калибрлөө үчүн кээ бир маалыматтарды чогултам.

Мен ар бир кодду муктаждыгыма жараша өзгөрттүм. акыркы код тиркелет.

Сигнал тиркелген сүрөттө окшош болушу керек. Тилекке каршы, мен сүрөткө тартууну унутуп койгом, ошондуктан мен аны кандай болушу керек экенин көрсөтүш үчүн Excelде кайра жайгаштырдым.

ЭСКЕРТҮҮ: Мен Arduino ордуна wemo mini D1 колдонуп жатам. Эмнегедир мен билбейм, PWM 0ден 1023кө чейин. Arduinoдо 0-255тин ортосунда болушу керек. Эгерде сиз arduino кодун колдонууну кааласаңыз, анда ага кам көрүшүңүз керек (90 -сап).

4 -кадам: Орнотуу жана колдонуу

Орнотуу жана колдонуу
Орнотуу жана колдонуу
Орнотуу жана колдонуу
Орнотуу жана колдонуу

маалыматтарды чогулткандан кийин, мен файлды excelде ачтым жана маалыматтарды пландадым (сүрөттү караңыз). биринчи мамыча - PWM мааниси, экинчиси - люкс (сенсордун окулушу, блоктун анча деле мааниси жок). Ошондуктан, люкс (y-огу) менен PWM (x-огу) салыштырмалуу. Көрүнүп тургандай, жарыктык PWM маанисине сызыктуу пропорционалдуу. Мен ага линия орноттум.

Сапты орнотуу үчүн төмөнкүдөй кадам жасаңыз:

1- маалыматтарды сюжети (кыстаруу> чачыранды сюжет) мен кантип билем деп ойлойм.

2- Түзүлгөн маалыматтарды оң баскыч менен чыкылдатыңыз

3- тренд сызыгын чыкылдатыңыз.

4- (Excel 2013-жылы) оң жагында панель ачылат. Сызыктуу тандоо. Ылдый жагында "диаграммада диаграмманы көрсөтүү" дегенди тандаңыз.

Сызыктуу байланыш менин кабыл алуумдан айырмаланат. Ошондуктан менин кабылдоом менен жарыктыгымдын ортосунда логарифмдик байланыш болушу керек деп ойлойм (бул менин эсиме келген эң жөнөкөй жол!). Ошентип, фитнеттин жантаймасын алдым. Кесүү маанилүү эмес, анткени ал айланадагы жарыктын булганышынан көз каранды! анын ордуна мен 1 коштум. Себеби Log10 (0) чексиз. Андыктан маселени чечүү үчүн мага тоскоолдук керек. Менин учурда теңдеме мындай көрүнөт:

y = Log10 (0.08 x +1), y-жарыктык жана x-PWM мааниси (0-1023)

Мен теңдөөнү максималдуу мааниге чейин нормалдаштырдым. анда өндүрүш ар дайым 0-100 ортосунда болот. Ошентип, мен ардуинодон максималдуу абсолюттук жарыкты эске албастан, салыштырмалуу жарыктыкты сурай алам.

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

Ардуинодо менин киришим салыштырмалуу жарыктык болгондуктан, мен x (PWM) теңдемесин кайра иреттешим керек:

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

коддогу бул теңдемени колдонуу менен биз жарыктыктын сызыктуу өзгөрүшүн ала алабыз. Ошентип, сиз ардуинодон 0-100 ортосундагы жарыкты (y) сурайсыз жана arduino тиешелүү PWM маанисин эсептейт. ушундай жол менен, эгер эки эсе жарыктык болсо, анда сиздин кабылдооңуз да бирдей.

эгер сиз аны кодуңузда колдонууну кааласаңыз, анда бул саптарды кошуңуз:

жарыктык = 50; // пайыз менен

PWM = pow (10, жарыктык*1.914/100) -1) /0.0793;

analogWrite (ledpin, PWM);

ЭСКЕРТҮҮ: нормалдаштыруу 1023 максималдуу PWM үчүн жасалат (Wemos mini D1 үчүн). Arduino PWM үчүн 0-255 ортосунда. ошого жараша эсептешиңиз керек.

ЭСКЕРТҮҮ2: Мен биздин кабылдообуз жана PWM маанибиздин кандай байланышы бар экенин көрсөтүү үчүн логикалык сызыктуу сюжет коштум. аны орнотуу үчүн колдонбошуңуз керек!

5 -кадам: Жыйынтык

калибрлөө мен үчүн жакшы иштейт. PWM баалуулуктары чоң болгондо, мен айырманы көрө алам. Мурда чоң баалуулуктар катары караңгылыктын таасирин көрө алган жокмун. Негизинен өзгөртүүлөрдүн көбү PWMдин чакан диапазонунда жасалды. азыр ал калибрленген!

ар бир светодиод, өзгөчө башка түстөр, өзүнүн калибрлөө параметрлерине ээ болушу керек. Бирок мен көк LEDди калибрлеп, ак LED үчүн параметрди колдондум жана натыйжасы алгылыктуу болду. балким сиз менин калибрлөө параметримди өзүңүздү убара кылбай колдоно аласыз !!

Сунушталууда: