Satura rādītājs:

Modināšanas gaisma: 7 soļi (ar attēliem)
Modināšanas gaisma: 7 soļi (ar attēliem)

Video: Modināšanas gaisma: 7 soļi (ar attēliem)

Video: Modināšanas gaisma: 7 soļi (ar attēliem)
Video: 7 veidi, kā nomierināt prātu (7 minūtēs) 2024, Novembris
Anonim
Modināšanas gaisma
Modināšanas gaisma

Rakstot šo pamācību, ziemeļu puslodē ir ziemas vidus, un tas nozīmē īsas dienas un garas naktis. Esmu pieradis celties 06:00 un vasarā līdz tam laikam spīdēs saule. Tomēr ziemā tas kļūst gaišs pulksten 09:00, ja mums ir paveicies, ka dienā nav mākoņains (kas ir… ne bieži).

Pirms kāda laika es lasīju par Philips modinātāju, kas tika izmantots Norvēģijā, lai simulētu saulainu rītu. Es to nekad neesmu nopircis, bet es turpināju domāt par tā izgatavošanu, jo pats to pagatavot ir daudz jautrāk nekā vienkārši iegādāties.

Piegādes:

Attēlu rāmis "Ribba" 50 x 40 cm no IKEA

perforēta kokšķiedru plātne no datortehnikas veikala

STM8S103 izstrādes dēlis, izmantojot Ebay vai citus

DS1307 reālā laika pulkstenis (Mouser, Farnell, Conrad uc)

32768 Hz pulksteņa kristāls (Mouser, Farnell, Conrad uc)

3V litija satvērējs + sakritības turētājs

BUZ11 vai IRLZ34N N-kanālu MOSFET (3x)

BC549 (vai jebkurš cits NPN tranzistors)

tik daudz baltu, sarkanu, zilu, zaļu utt. LED, cik vēlaties

daži rezistori un kondensatori (skatiet shēmu)

Powerbrick, 12V līdz 20V, 3A vai vairāk (piemēram, vecs klēpjdatora barošanas avots)

1. solis: padariet (mazliet) vieglāk piecelties

Padarīt (mazliet) vieglāk piecelties
Padarīt (mazliet) vieglāk piecelties

Ideja ir tāda, ka no rīta, kad vēl ir tumšs, ir grūti izkāpt no gultas. Un, ja jūs dzīvojat tuvu vai pat virs polārā loka, tas būs ļoti ilgi tumšs. Vietās kā Tromsē Norvēģijā vispār nespīdēs gaisma, jo tur saule riet uz pusi novembra, lai atkal parādītos pusceļā Januari.

Tātad tas, ko Philips darīja, bija imitēt saules lēktu.

Philips lēnām palielina lampas spilgtumu, kas, iespējams, ir izgatavots ar vairākiem gaismas diodēm, bet ir paslēpts aiz viena difuzora. Viņu laiks no izslēgšanas līdz pilnam spilgtumam aizņem 30 minūtes.

Philips modināšanas gaismas nav tik dārgas, taču tām ir tikai viena krāsa un tās izskatās nedaudz mazas. Es domāju, ka varu darīt labāk.

2. solis: vairāk krāsu

Vairāk krāsu
Vairāk krāsu

Mana modināšanas gaisma izmanto četras krāsas - baltu, sarkanu, zilu un zaļu. Vispirms iepazīstieties ar baltajiem, pēc tam sarkanajiem un pēdējiem ziliem un zaļiem gaismas diodēm. Mana ideja bija tāda, ka es varētu simulēt ne tikai spilgtuma palielināšanos, bet arī rīta gaismas krāsas maiņu, sākot ar mazliet baltu, mazliet vēlāk pievienojot sarkanu un beigās sajaucot zilu un zaļu. Es neesmu pārliecināts, ka tas tiešām atgādina faktisko rīta gaismu, bet man patīk krāsains displejs, kāds tas ir tagad.

Manējais ir arī ātrāks par Philips modināšanas gaismu, nevis 30 minūšu Philips gaismas, manējais no 0% līdz 100% kļūst spilgtāks mazāk nekā 5 minūtēs. Tātad mana saule lec daudz ātrāk.

PIEZĪME:

Ir ļoti grūti nofotografēt manu modināšanas gaismu, es mēģināju ar vairākām kamerām un viedtālruņiem, taču visas manis uzņemtās bildes neatbilst patiesībai.

3. darbība: Sigmoīdā līkne, mirgošana un izšķirtspēja

Sigmoīdā līkne, mirgošana un
Sigmoīdā līkne, mirgošana un

Protams, es gribēju padarīt izgaismojumu pēc iespējas vienmērīgāku. Cilvēka acīm ir logaritmiska jutība, kas nozīmē, ka pilnīgā tumsā tās ir jutīgākas nekā dienasgaismā. Ļoti neliels spilgtuma pieaugums, kad līmenis ir zems, “jūtas” tāds pats kā daudz lielāks solis, kad gaisma ir aptuveni 40% spilgtuma. Lai to panāktu, es izmantoju īpašu līkni ar nosaukumu Sigmoid (vai S-līkne), šī līkne sākas kā eksponenciāla līkne, kas atkal izlīdzinās. Es atklāju, ka tas ir ļoti jauks veids, kā palielināt (un samazināt) intensitāti.

Mikrokontrollera (un taimeru) pulksteņa frekvence ir 16 MHz, un es izmantoju maksimālo TIMER2 izšķirtspēju (65536), lai izveidotu trīs impulsa platuma signālus (PWM). Tāpēc impulsi nāk 16000000 /65536 = 244 reizes sekundē. Tas ir tālu virs acu robežas, lai redzētu mirgošanu.

Tātad gaismas diodes tiek barotas ar PWM signālu, kas tiek izgatavots ar šo STM8S103 mikrokontrollera 16 bittimeru. Minimālais šī PWM signāla ieslēgšanas ilgums ir 1 impulsa garums un atlikušie 65535 impulsa garumi ir izslēgti.

Tātad gaismas diodes, kas savienotas ar šo PM signālu, tiks ieslēgtas 1/65536-to reizi: 0,0015%

Maksimāli tie ir ieslēgti 65536/65536-tajā laikā: 100%.

4. solis: elektronika

Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika

Mikrokontrolleris

Modināšanas gaismas smadzenes ir STM8S103 mikrokontrolleris no STMicroelectronics. Man patīk izmantot detaļas, kurām ir pietiekami daudz iespēju darbam. Vienkāršam uzdevumam nav nepieciešams izmantot STM32 mikrokontrollerus (citi mani favorīti), bet ar Arduino UNO nepietika, jo es gribēju trīs PWM signālus ar 16 bitu izšķirtspēju, un UNO nav taimera ar trim izejas kanāliem..

Reāllaika pulkstenis

Laiks tiek nolasīts no DS1307 reālā laika pulksteņa, kas darbojas ar 32768 Hz kristālu un kuram ir 3 V rezerves akumulators.

Pašreizējā laika, dienas un pamošanās laika iestatīšana tiek veikta ar divām pogām un parādīts 16 x 2 LCD rakstzīmju displejs. Lai mana guļamistaba būtu patiešām tumša naktī, LCD displeja fona apgaismojums tiek ieslēgts tikai tad, ja gaismas diodes ir spilgtākas nekā fona apgaismojums un kad tiek iestatīts laiks, diena un modināšanas laiks.

Jauda

Jauda tiek piegādāta no vecā klēpjdatora barošanas avota, mans ražo 12V un var piegādāt 3A. Ja jums ir cits barošanas avots, rezistori var būt jāpielāgo sērijveidā ar LED virknēm. (Skatīt zemāk)

LED

Gaismas diodes ir savienotas ar 12 V barošanas avotu, pārējā elektronika darbojas uz 5 V, izmantojot 7805 lineāro regulatoru. Shēmā teikts, ka es izmantoju TO220 regulatoru, kas nav vajadzīgs, jo mikrokontrolleris, displejs un reālā laika pulkstenis izmanto tikai dažus miliampus. Mans pulkstenis izmanto mazāku TO92 versiju 7805, kas spēj piegādāt 150 mA.

LED virkņu pārslēgšana tiek veikta ar N kanālu MOSFET. Atkal shēmā tas parāda citas ierīces, nekā es izmantoju. Man gadījās tieši trīs ļoti veci BUZ11 MOSFET, nevis jaunākie IRLZ34N MOSFET. Viņi strādā labi

Protams, jūs varat ievietot tik daudz LED, cik vēlaties, ja vien MOSFET un barošanas avots spēj izturēt strāvu. Shēmā esmu uzzīmējis tikai vienu jebkuras krāsas virkni, patiesībā ir vairākas katras krāsas paralēli citām šīs krāsas stīgām.

5. solis: rezistori (LED)

Rezistori (LED)
Rezistori (LED)

Par rezistoriem vadītajās virknēs. Baltajām un zilajām gaismas diodēm parasti ir 2,8 V spriegums, kad tās ir pilnā spilgtumā.

Sarkanajām gaismas diodēm ir tikai 1,8 V, manām zaļajām gaismas diodēm ir 2 V.

Vēl viena lieta ir tā, ka to pilns spilgtums nav vienāds. Tāpēc vajadzēja dažus eksperimentus, lai padarītu tos vienlīdz gaišus (manām acīm). Padarot gaismas diodes vienādi spožas pilnā spilgtumā, tās izskatīsies vienlīdz spilgtas arī zemākā līmenī, impulsa platuma signāls tās vienmēr ieslēdz pilnā spožumā, bet ilgākā un īsākā laikā jūsu acis rūpējas par vidējo vērtību.

Sāciet ar šādu aprēķinu. Barošanas avots nodrošina (manā gadījumā) 12V.

Četrām sērijveidā baltām gaismas diodēm ir nepieciešami 4 x 2,8 V = 11,2 V, tas atstāj 0,8 V rezistoram.

Es atklāju, ka tie ir pietiekami spilgti pie 30 mA, tāpēc rezistoram jābūt:

0,8 / 0,03 = 26,6 omi. Shēmā redzat, ka es ievietoju 22 omu rezistoru, padarot gaismas diodes tikai nedaudz gaišākas.

Zilās gaismas diodes bija pārāk spilgtas pie 30 mA, bet, salīdzinot ar jaukām baltām gaismas diodēm pie 15 mA, tām arī bija aptuveni 2,8 V virs 15 mA, tāpēc aprēķins bija 4 x 2,8 V = 11,2 V, atstājot 0,8 V

0,8 / 0,015 = 53,3 omi, tāpēc es izvēlējos 47 omu rezistoru.

Maniem sarkanajiem gaismas diodēm arī jābūt aptuveni 15 mA, lai tie būtu tikpat spilgti kā citi, taču tiem ir tikai 1,8 V. Tāpēc es varētu sērijveidā ievietot vairāk un man joprojām ir rezistora “telpa”.

Sešas sarkanās gaismas diodes man deva 6 x 1,8 = 10,8 V, tāpēc virs rezistora bija 12 - 10,8 = 1,2 V.

1,2 / 0,015 = 80 omi, es to padarīju par 68 omiem. Gluži kā citi, nedaudz gaišāks.

Zaļās gaismas diodes, kuras es izmantoju, ir tikpat spilgtas kā pārējās pie aptuveni 20 mA. Man vajadzēja tikai dažus (tāpat kā zilos), un es izvēlējos sērijā ievietot četrus. Pie 20mA tiem ir 2, 1V, kas dod 3 x 2,1 = 8,4V

12 - 8,4 = 3,6V rezistoram. Un 3,6 / 0,02 = 180 omi.

Ja izveidojat šo modināšanas gaismu, maz ticams, ka jums ir vienāds barošanas avots, jums būs jāpielāgo sērijveida gaismas diožu skaits un nepieciešamie rezistori.

Neliels piemērs. Pieņemsim, ka jums ir barošanas avots, kas nodrošina 20 V. Es izvēlētos noteikt 6 zilas (un baltas) gaismas diodes sērijveidā, 6 x 3V = 18 V, tātad 2 V rezistoram. Pieņemsim, ka jums patīk spilgtums pie 40 mA. Tad rezistoram jābūt 2V / 0,04 = 50 omi, 47 omu rezistors būs piemērots.

Es iesaku ar parastajiem (5 mm) gaismas diodēm nepārsniegt 50 mA. Daži var rīkoties vairāk, bet man patīk būt drošā pusē.

6. darbība: programmatūra

Visu kodu var lejupielādēt no:

gitlab.com/WilkoL/wakeup_light_stm8s103

turiet avota kodu atvērtu blakus pārējiem norādījumiem, ja vēlaties sekot paskaidrojumam.

Galvenais.c

Main.c vispirms uzstāda pulksteni, taimerus un citas perifērijas ierīces. Lielāko daļu “draiveru” es uzrakstīju, izmantojot STMicroelectronics standarta bibliotēku, un, ja jums ir kādi jautājumi par tiem, uzrakstiet to komentārā zem pamācības.

Eeprom

Es atstāju kodu “teksts parādīšanai”, ko izmantoju, lai ievietotu tekstus STM8S103 eepromā kā komentārus. Es nebiju pārliecināts, ka manam kodam ir pietiekami daudz zibatmiņas, tāpēc es centos pēc iespējas vairāk ievietot eeprom, lai programmai būtu visas zibspuldzes. Beigās tas izrādījās nevajadzīgi, un es pārcēlu tekstu uz zibspuldzi. Bet es to atstāju kā komentāru tekstu main.c failā. Ir patīkami to iegūt, kad man vēlāk (citā projektā) ir jādara kaut kas līdzīgs

Eeprom joprojām tiek izmantots, bet tikai modināšanas laika saglabāšanai.

Reizi sekundē

Pēc perifērijas ierīču iestatīšanas kods pārbauda, vai ir pagājusi viena sekunde (darīts ar taimeri).

Izvēlne

Ja tas tā ir, tā pārbauda, vai ir nospiesta poga, ja tā, tā nonāk izvēlnē, kurā var iestatīt pašreizējo laiku, nedēļas dienu un modināšanas laiku. Atcerieties, ka no izslēgšanas līdz pilnam spilgtumam ir nepieciešamas apmēram 5 minūtes, tāpēc iestatiet modināšanas laiku nedaudz agrāk.

Modināšanas laiks tiek saglabāts eeprom, lai pat pēc strāvas padeves pārtraukuma tas “zinātu”, kad jūs modināt. Pašreizējais laiks, protams, tiek saglabāts reālā laika pulkstenī.

Pašreizējā un pamošanās laika salīdzinājums

Ja neviena poga nav nospiesta, tā pārbauda pašreizējo laiku un salīdzina to ar modināšanas laiku un nedēļas dienu. Es nevēlos, lai tas mani pamodina nedēļas nogalē:-)

Lielāko daļu laika nekas nav jādara, tāpēc mainīgais “LED” tiek iestatīts uz OFF, bet uz ON. Šis mainīgais tiek pārbaudīts kopā ar signālu “change_intensity”, kas nāk arī no taimera un ir aktīvs 244 reizes sekundē. Tātad, kad mainīgais “LED” ir ieslēgts, intensitāte tiek palielināta 244 reizes sekundē un, kad tā ir izslēgta, samazinās 244 reizes sekundē. Bet palielinājums notiek atsevišķos posmos, kur samazinājums ir 16 soļi, kas nozīmē, ka tad, kad modinātāja gaisma, cerams, ir paveikusi savu darbu, tā izslēdzas 16 reizes ātrāk, bet joprojām vienmērīgi.

Gludums un ārpus atmiņas

Gludums nāk no Sigmoid līknes aprēķina. Aprēķins ir diezgan vienkāršs, taču tas ir jādara peldošā komata mainīgajos (dubultā), jo ir funkcija exp (), skatiet failu sigmoid.c.

Standarta situācijā Cosmic kompilatoram / saistītājam nav atbalsts mainīgajiem mainīgajiem punktiem. Ieslēgt to ir viegli (kad esat to atradis), bet tas palielina koda lielumu. Šis palielinājums bija pārāk liels, lai kods ietilptu zibatmiņā, apvienojot to ar sprintf () funkciju. Un šī funkcija ir nepieciešama, lai skaitļus pārvērstu displeja tekstā.

Itoa ()

Lai novērstu šo problēmu, es izveidoju funkciju itoa (). Šī ir vesela skaitļa līdz Ascii funkcija, kas ir diezgan izplatīta, bet nav iekļauta STMicroelectronics standarta bibliotēkā, kā arī kosmiskās bibliotēkās.

7. solis: IKEA (ko mēs darītu bez viņiem)

IKEA (ko mēs darītu bez viņiem)
IKEA (ko mēs darītu bez viņiem)
IKEA (ko mēs darītu bez viņiem)
IKEA (ko mēs darītu bez viņiem)
IKEA (ko mēs darītu bez viņiem)
IKEA (ko mēs darītu bez viņiem)

Attēls nopirkts no IKEA. Tas ir Ribba rāmis 50 x 40 cm. Šis rāmis ir diezgan biezs, un tāpēc tas ir lieliski piemērots elektronikas slēpšanai aiz tā. Plakāta vai attēla vietā es ievietoju perforētas kokšķiedras plātnes gabalu. Jūs to varat iegādāties datortehnikas veikalā, kur to dažreiz sauc par “gultas dēli”. Tajā ir mazi caurumi, kas padarīja to ideāli piemērotu gaismas diožu ievietošanai. Diemžēl mana paneļa caurumi bija nedaudz lielāki par 5 mm, tāpēc LED “montāžai” bija jāizmanto karstā līme.

Es izveidoju taisnstūrveida caurumu cietās plates centrā 16x2 displejam un iespiedu to. PCB ar visu elektroniku karājas uz šī displeja, tas nav uzstādīts nekam citam.

Perforētā kokšķiedru plātne tika nokrāsota melnā krāsā, bet aiz paklāja. Rāmī es urbju divus caurumus pogām, lai iestatītu laiku un datumu, jo rāmis ir diezgan biezs, tāpēc nācās paplašināt caurumus rāmja iekšpusē, lai pogas pietiktu pietiekami.

Ieteicams: