Talaan ng mga Nilalaman:

Calibrating LED Brightness: 5 Hakbang
Calibrating LED Brightness: 5 Hakbang

Video: Calibrating LED Brightness: 5 Hakbang

Video: Calibrating LED Brightness: 5 Hakbang
Video: You’re Doing Final Fantasy 16 HDR Wrong, Here’s The Easy HDR Calibration 2024, Nobyembre
Anonim
Pag-calibrate ng Liwanag ng LED
Pag-calibrate ng Liwanag ng LED

Habang gumagawa ako ng ilaw ng engkanto, napagtanto kong ang halaga ng PWM ay di-linear na proporsyonal sa ningning ng LED. Sa simpleng pagsasalita, kung ang halaga ng PWM ay doble ang liwanag ay hindi doble; espesyal na kapag ang PWM ay malapit sa maximum, ang anumang pagbabago ay hindi makikilala ng aking mga mata. Akala ko dapat ito ay isang simpleng isyu sa pagkakalibrate! at ito ay kung paano ko ginawa ang proyektong ito! Ang ideya ay upang masukat ang ningning ng isang LED na may ilang aparato (sensor ng ilaw ng ilaw o photoresistor) at makahanap ng isang ugnayan sa pagitan ng halaga ng PWM at ang ningning. Pagkatapos sa paglaon Kung itinakda ko ang ningning sa 50%, kakalkulahin ng Arduino ang kaukulang PWM at malabo ang LED nang naaayon.

Samakatuwid, kailangan ko ng sensor ng ilaw at isang LED upang masukat ang ningning. Gamit ang isang SD card, mai-save ko ang data para sa susunod na pamamaraan ng pag-angkop. Ang pag-angkop ay gagawin sa Excel (o anumang iba pang programa). Ang put out ay gagamitin sa Arduino code, at iyan! Dapat itong gawin nang isang beses. Pagkatapos ay maaari mong gamitin ang parameter ng pagkakalibrate magpakailanman!

Hakbang 1: Mga Bahagi

1- WEMOS mini D1: Aliexpress 3 €

2- TSL 2561 (Luminosity sensor): Aliexpress 3 €

3- module ng SD card: Aliexpress 1 €

4- LED

5- Resistor 220 ohm

6- wires

kabuuang halaga: 8 -10 €

Hakbang 2: Mga kable

Kable
Kable
Kable
Kable
Kable
Kable

Ang module ng SD card at mga wire na sensor ng luminosity ay hindi dapat mabago (karamihan sa mga ito). Dapat na konektado ang led sa isang PWM pin.

Hakbang 3: Code

Code
Code

Pinagsama ko ang tatlong piraso ng mga code:

SD card: ginamit na halimbawa> SD> ReadWrite sa Arduino IDE

TSL 2561: ginamit na halimbawa ng Adafruit TSL2561 Library (sensorapi); mahahanap mo ito sa mga halimbawa, kung na-install mo ang library (ipinapalagay kong alam mo kung paano mag-install ng isang library sa Arduino IDE).

LED fading: ginamit na mga halimbawa> Analog> pagkupas

Ang code, pagkatapos ng pagsisimula ng mga modyul, magpapalabo sa led at basahin ang ningning at i-save ito sa SD card. sa ganitong paraan mangolekta ako ng ilang data para sa pagkakalibrate.

Binago ko ang bawat isa sa code alinsunod sa aking mga pangangailangan. ang panghuling code ay nakakabit.

Ang signal ay dapat magmukhang naka-attach na larawan. Sa kasamaang palad ay nakalimutan kong kumuha ng litrato kaya nireplito ko ito sa excel upang maipakita sa iyo kung paano ito dapat.

TANDAAN: Gumagamit ako ng wemo mini D1 sa halip na Arduino. sa ilang kadahilanan na hindi ko alam, ang PWM ay nasa pagitan ng 0 at 1023. Sa Arduino dapat ay nasa pagitan ng 0-255. Kung nais mong gamitin ang code para sa arduino, dapat mong alagaan ito (linya 90).

Hakbang 4: Pagkakasya, at Paggamit

Fitting, at Paggamit
Fitting, at Paggamit
Fitting, at Paggamit
Fitting, at Paggamit

pagkatapos ng pagkolekta ng data, binuksan ko ang file sa excel at balangkas ang data (tingnan ang larawan). ang unang haligi ay halaga ng PWM at ang pangalawa ay lux (pagbabasa ng sensor, ang yunit ay hindi gaanong mahalaga). Samakatuwid, balangkas lux (y-axis) kumpara sa PWM (x-axis). Tulad ng nakikita mo ang ningning ay linear na proporsyonal sa halagang PWM. Nilagyan ko ito ng linya.

Upang magkasya sa isang linya sundin bilang:

1- balangkas ang data (ipasok> isabog ang balangkas) akala ko alam mo kung paano.

2- kanang pag-click sa naka-plot na data

3- mag-click sa trendline.

4- (sa excel 2013) sa kanang bahagi ang isang panel ay pop up. Pumili ng linear. Sa ibaba pumili ng "pagpapakita ng equation sa tsart".

Ang linear na ugnayan ay naiiba mula sa aking pang-unawa. Samakatuwid sa palagay ko dapat may kaugnayan sa logarithmic sa pagitan ng aking pang-unawa at ang ningning (ito ang pinakasimpleng paraan na naisip ko!). Kaya kinuha ko ang slope ng fit. Ang pagharang ay hindi mahalaga, dahil nakasalalay ito sa nakapalibot na polusyon sa ilaw! sa halip, nagdagdag ako ng 1. Dahil ang Log10 (0) ay walang katapusan. Kaya kailangan ko ng isang maharang upang malutas ang problema. Sa aking kaso ang equation ay ganito ang hitsura:

y = Log10 (0.08 x +1), y ang ningning at x ang halagang PWM (0-1023)

Normal ko ang equation sa maximum na halaga. pagkatapos ay ang output rang ay palaging sa pagitan ng 0-100. sa ganitong paraan maaari kong tanungin ang arduino para sa isang tiyak na kamag-anak na ningning, nang walang patungkol sa maximum na ganap na ningning.

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

Dahil sa arduino ang aking input ay ang kamag-anak na ilaw, kailangan kong ayusin muli ang equation para sa x (PWM):

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

gamit ang equation na ito sa code nagagawa naming makakuha ng isang linear na pagbabago ng kaliwanagan. Kaya't hiningi mo ang arduino para sa isang ningning (y) sa pagitan ng 0-100, at kinakalkula ng arduino ang kaukulang halaga ng PWM. sa ganitong paraan, kung doble ang ningning, pareho rin ang iyong pang-unawa.

kung nais mong gamitin ito sa iyong code mas mahusay na idagdag ang mga linya na ito:

ningning = 50; // sa porsyento

PWM = pow (10, ningning * 1.914 / 100) -1) /0.0793;

analogWrite (ledpin, PWM);

TANDAAN: ang normalisasyon ay tapos na para sa isang maximum PWM na 1023 (para sa Wemos mini D1). Para sa Arduino PWM ay nasa pagitan ng 0-255. kailangan mong kalkulahin ito nang naaayon.

TANDAAN2: Nagdagdag ako ng isang log-linear plot upang maipakita kung paano nauugnay ang aming pang-unawa at halagang PWM. hindi mo dapat gamitin ito para sa angkop!

Hakbang 5: Konklusyon

ang pagkakalibrate ay gumagana nang maayos para sa akin. Kapag malaki ang halaga ng PWM, nakikita ko ang pagkakaiba. Dati bilang malalaking halaga hindi ko makita ang epekto ng paglabo. Karaniwan ang karamihan sa mga pagbabago ay nagawa sa isang maliit na hanay ng PWM. ngayon ay naka-calibrate na!

ang bawat LED, lalo na magkakaibang mga kulay, ay dapat magkaroon nito ay sariling mga parameter ng pagkakalibrate. Gayunpaman, na-calibrate ko ang isang asul na LED at ginamit ang parameter para sa isang puting LED at ang resulta ay katanggap-tanggap. kaya marahil maaari mong gamitin ang aking parameter ng pagkakalibrate nang hindi ginugulo ang iyong sarili !!

Inirerekumendang: