Sadržaj:
- Korak 1: Dijelovi
- Korak 2: Ožičenje
- Korak 3: Kodirajte
- Korak 4: Ugradnja i upotreba
- Korak 5: Zaključak
Video: Kalibriranje svjetline LED svjetla: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
Dok sam pravio vilinsko svjetlo, shvatio sam da je vrijednost PWM-a nelinearno proporcionalna svjetlini LED-a. Jednostavno rečeno, ako je vrijednost PWM -a dvostruka, svjetlina nije dvostruka; pogotovo kad je PWM blizu maksimuma, bilo kakva promjena nije prepoznatljiva po mojim očima. Mislio sam da bi to trebao biti jednostavan problem kalibracije! i tako sam napravio ovaj projekt! Ideja je izmjeriti svjetlinu LED diode nekim uređajem (osjetnikom svjetline ili fotootpornikom) i pronaći korelaciju između vrijednosti PWM -a i svjetline. Kasnije, ako postavim svjetlinu na 50%, Arduino će izračunati odgovarajuću PWM i prema tome prigušiti LED.
Stoga mi je potreban senzor za svjetlinu i LED za mjerenje svjetline. Pomoću SD kartice spremit ću podatke za kasniji postupak ugradnje. Podešavanje će se izvršiti u Excelu (ili bilo kojem drugom programu). Out out će se koristiti u Arduino kodu, i to je to! To bi trebalo učiniti jednom. Tada možete zauvijek koristiti kalibracijski parametar!
Korak 1: Dijelovi
1- WEMOS mini D1: Aliexpress 3 €
2- TSL 2561 (osjetnik svjetline): Aliexpress 3 €
3- Modul SD kartice: Aliexpress 1 €
4- LED
5- Otpornik 220 ohma
6- žice
ukupni trošak: 8 -10 €
Korak 2: Ožičenje
Modul SD kartice i žice osjetnika svjetline ne smiju se mijenjati (većina njih). Led bi trebao biti spojen na PWM pin.
Korak 3: Kodirajte
Kombinirao sam tri koda:
SD kartica: korišteni primjer> SD> ReadWrite u Arduino IDE -u
TSL 2561: korišteno Adafruit TSL2561 Primjer knjižnice (sensorapi); naći ćete ga u primjerima, ako instalirate knjižnicu (pretpostavljam da znate kako instalirati knjižnicu u Arduino IDE).
LED blijeđenje: korišteni primjeri> Analogni> blijeđenje
Kod će, nakon inicijalizacije modula, zatamniti LED diodu i pročitati svjetlinu te je spremiti na SD karticu. na ovaj način prikupit ću neke podatke za kalibraciju.
Promijenio sam svaki kod prema svojim potrebama. konačni kod u prilogu.
Signal bi trebao izgledati kao priložena slika. Nažalost, zaboravio sam snimiti fotografiju pa sam je ponovo postavio u excelu kako bih vam pokazao kako bi to trebalo biti.
NAPOMENA: Koristim wemo mini D1 umjesto Arduina. iz nekog razloga koji ne znam, PWM je između 0 i 1023. U Arduinu bi trebao biti između 0-255. Ako želite koristiti kôd za arduino, trebali biste se pobrinuti za to (redak 90).
Korak 4: Ugradnja i upotreba
nakon prikupljanja podataka otvorio sam datoteku u excelu i iscrtao podatke (pogledajte sliku). prvi stupac je PWM vrijednost, a drugi lux (očitavanje senzora, jedinica nije važna). Stoga, ucrtajte lux (y-os) u odnosu na PWM (x-os). Kao što vidite, svjetlina je linearno proporcionalna vrijednosti PWM -a. Ugradio sam mu liniju.
Da biste uklopili liniju, slijedite ove upute:
1- iscrtajte podatke (umetnite> raspršivanje) pretpostavljam da znate kako.
2- desnim klikom na iscrtane podatke
3- kliknite na liniju trenda.
4- (u excelu 2013) na desnoj strani pojavljuje se ploča. Odaberite linearno. Pri dnu odaberite "prikaz jednadžbe na grafikonu".
Linearni odnos je drugačiji od moje percepcije. Stoga mislim da bi trebao postojati logaritamski odnos između moje percepcije i svjetline (ovo je najjednostavniji način koji mi je pao na pamet!). Pa sam uzeo nagib stane. Presretanje nije važno, jer ovisi o okolnom svjetlosnom zagađenju! umjesto toga, dodao sam 1. Budući da je Log10 (0) beskonačan. Zato mi je potrebno presretanje za rješavanje problema. U mom slučaju jednadžba izgleda ovako:
y = Log10 (0,08 x +1), y je svjetlina, a x vrijednost PWM-a (0-1023)
Normalizirao sam jednadžbu na maksimalnu vrijednost. tada je izlaz zvonio uvijek između 0-100. na ovaj način mogu od arduina zatražiti određenu relativnu svjetlinu, bez obzira na maksimalnu apsolutnu svjetlinu.
y = Log10 (0,08 x +1)*100/1,914
Budući da je u arduinu moj unos relativna svjetlina, moram preurediti jednadžbu za x (PWM):
x = (10^(y*1.914 / 100) - 1) / 0.08
pomoću ove jednadžbe u kodu možemo dobiti linearnu promjenu svjetline. Zato tražite od arduina svjetlinu (y) između 0-100, a arduino izračunava odgovarajuću vrijednost PWM-a. na ovaj način, ako je svjetlina dvostruka, vaša percepcija je također ista.
ako ga želite koristiti u svom kodu, bolje dodajte ove retke:
svjetlina = 50; // u postocima
PWM = pow (10, svjetlina*1.914/100) -1) /0.0793;
analogWrite (ledpin, PWM);
NAPOMENA: normalizacija se vrši za maksimalni PWM od 1023 (za Wemos mini D1). Za Arduino PWM je između 0-255. morate to izračunati u skladu s tim.
NAPOMENA 2: Dodao sam log-linearni dijagram kako bih pokazao kako su naša percepcija i PWM vrijednost povezane. ne smijete ga koristiti za ugradnju!
Korak 5: Zaključak
kalibracija mi dobro radi. Kad su vrijednosti PWM -a velike, mogu vidjeti razliku. Prije kao velike vrijednosti nisam mogao vidjeti učinak zatamnjenja. U osnovi je većina promjena izvršena u malom rasponu PWM -a. sada je kalibrirano!
svaka LED, posebno različite boje, mora imati vlastite kalibracijske parametre. Međutim, kalibrirao sam plavu LED i upotrijebio parametar za bijelu LED i rezultat je bio prihvatljiv. pa možda možete koristiti moj kalibracijski parametar bez da se gnjavite !!
Preporučeni:
Interaktivna svjetla za dvorište, svjetla za hodnike: 3 koraka
Interaktivna svjetla za dvorište, svjetla za hodnike: Htjela sam izgraditi neku vrstu interaktivnih svjetla za dvorište. Ideja je bila da, kad bi netko hodao u jednom smjeru, pokrenula bi se animacija u smjeru u kojem ste hodali. Počeo sam sa solarnim svjetlima Dollar General od 1,00 USD
Prekidač svjetla aktiviran pokretom sa senzorom svjetla: 5 koraka
Prekidač svjetla aktiviran pokretom sa senzorom svjetla: Prekidač svjetla aktiviran pokretom ima mnogo primjena kako u kući tako i u uredu. Ovo je, međutim, imalo dodatnu prednost uključivanjem svjetlosnog senzora, tako da se ovo svjetlo može aktivirati samo noću
LED svjetla za tamna svjetla: 7 koraka
LED svjetla za tamna svjetla: LED dioda ne svijetli samo kada se napaja, već stvara i mali napon pri primjeni svjetla. Za nadzor ovog napona može se koristiti mikrokontroler PICAXE. Pokazat ću vam kako napraviti elektroničku svijeću koja će treptati LED diodom kad se pojavi
Božićna svjetla "uradi sam" uglazbljena - koreografska svjetla kuće: 15 koraka (sa slikama)
Božićna svjetla "Uradi sam" uglazbljena - Svjetla u koreografiji: Svjetla u kućnoj radinosti uglazbljena - Umjetnička svjetla u koreografiji Ovo nije DIY za početnike. Trebat će vam dobro razumijevanje elektronike, kruga, OSNOVNOG programiranja i općenite spoznaje o električnoj sigurnosti. Ovaj DIY je za iskusnu osobu pa
Još jedna - LED svjetla za akvarij visoke svjetline (HBLED): 4 koraka
Još jedna - LED svjetla za akvarij visoke svjetline (HBLED): Ova uputa pokazuje kako dizajnirati i izgraditi vrlo svijetlu LED svjetiljku za vaš akvarij. Ono po čemu se ovaj instruktor razlikuje od ostalih koji su već bili jest to što koristim HBLED -ove umjesto tradicionalnih LED -a. Pronašao sam novi HBLED od Opteka s