Satura rādītājs:

Spilgti vadāma saullēkta lampa: 6 soļi
Spilgti vadāma saullēkta lampa: 6 soļi

Video: Spilgti vadāma saullēkta lampa: 6 soļi

Video: Spilgti vadāma saullēkta lampa: 6 soļi
Video: АУДИОКНИГА СТАРУХА ИЗЕРГИЛЬ слушать рассказ Максима Горького. Читать полный текст онлайн бесплатно! 2024, Jūlijs
Anonim
Spilgti kontrolējama saullēkta lampa
Spilgti kontrolējama saullēkta lampa
Spilgti kontrolējama saullēkta lampa
Spilgti kontrolējama saullēkta lampa

Vai esat kādreiz pamodies pulksten septiņos, parastajā laikā, kad jums jāceļas darbam, un nonācāt tumsā? Ziema ir briesmīgs laiks, vai ne? Jums ir jāceļas nakts vidū (citādi kāpēc ir tik tumšs?), Norauties no gultas un nosūtīt savu pusapziņas ķermeni dušā.

Šī projekta mērķis ir atrisināt vienu no problēmām - rīta tumsu.

Apkārt ir daudz lētu saullēkta lampu, taču tās visas ir mazjaudas un gaišas. Tie ir vairāk kā nakts lampa, kurai vajadzētu gulēt labāk. Pavisam ne tas, ko es gribu.

Tajā pašā laikā tikai ieslēdzot spilgtu gaismu, jūs uzreiz pamodīsieties, bet ne pietiekami maigi. Es gribu abu pieeju kombināciju - iedegties ar zemu spilgtumu, lēnām sasniegt pilnu ātrumu, tad atskan īsta trauksme un tu vairs neesi tik miegains. Pievienosim tam mazliet putnu dziesmu, un jūs katru rītu pamostieties debesīs!

1. darbība: lampu bloks

Lampas masīvs
Lampas masīvs
Lampas masīvs
Lampas masīvs

Pirmkārt, mums ir nepieciešama pati lampa. Man ir diezgan liela istaba ar baltām sienām un griestiem, tāpēc es izvēlējos 7 GU10 LED lampas, apmēram 6W katra, vairāk nekā 40W tīras jaudas! Tas ir pietiekami, lai jūs justos kā diena. To var izmantot arī kā parastu telpas apgaismojumu dienas laikā.

Nav īsti svarīgi, kā to salikt, kādas lampas ar kādām kontaktligzdām izmantot. Viss, kam ir nozīme - tām jābūt aptumšojamām lampām!

Manā gadījumā man ir koka dēlis ar 7 piestiprinātām GU10 ligzdām, kas visas ir savienotas kopā. Vēlāk ielikšu plastmasas kastē.

2. solis: aptumšošanas teorija

Aptumšošanas teorija
Aptumšošanas teorija

Teorētiski nav atšķirības starp teoriju un praksi. Praksē ir.

Regulatora regulēšana no ESP32/Arduino nebija tik vienkārša, kā es iedomājos. Es saņēmu vienu no RobotDyn AC Light Dimmer moduļiem. Ražotājs tam iesaka bibliotēku. Tas nedarbojas ar ESP32 (un to ir patiešām grūti pielāgot, jo tas izmanto daudz zema līmeņa ATMega īpašas reģistra piekļuves), sava veida darbi ar Arduino Nano, radot briesmīgu mirgošanu zemā vidējā spilgtumā. Tāpēc es kādu laiku pētīju, kā tas viss darbojas, un izveidoju savu ceļu.

Mazliet teorija

Izvēlētajā regulēšanas modulī tiek izmantots ļoti populārs TRIAC: BTA16. Par to ir daudz rakstu. Es mēģināšu to apkopot šeit.

TRIAC ir modulis, kas var nosūtīt izejai pozitīvu vai negatīvu spriegumu vai to bloķēt. Pēc noklusējuma tas visu bloķē. Lai to atvērtu, mums vajadzētu dot augstu signālu vārtu ievadē 100 mums. Tad tas paliks atvērts, līdz strāva samazināsies līdz nullei, kas notiek, kad ieejas spriegums maina zīmi, šķērsojot nulles spriegumu. Tad nākamajā ciklā mums vajadzētu veikt vēl 100 ASV impulsu un tā tālāk. Izvēloties, kad dot impulsu, mēs kontrolējam spilgtumu: dariet to pašā sākumā, un tas būs tuvu 100% jaudas pārnesei. Dariet to vēlāk, un tas tiks aptumšots. Pārbaudiet iepriekš redzamo diagrammu, paskaidrojot to.

Lai ģenerētu impulsus vienā cikla punktā, mums precīzi jāzina, kad tas sākas. Tāpēc aptumšošanas modulim ir iebūvēts nulles krusta detektors. Tas tikai rada signālu (ko mēs uztveram kā aparatūras pārtraukumu Arduino) katru reizi, kad spriegums šķērso nulli.

3. darbība: aptumšošanas prakse

Aptumšošanas prakse
Aptumšošanas prakse

Jā, tas būtu tas, kā tu pamosties, ja tavai lampai nav aptumšošanās un visa 40 W jauda tiek nogulēta miegainās acīs.

Kopīgas problēmas

Mums ir jārisina vairākas problēmas.

Mirgošana.

Mikrokontrollera laikam jābūt patiešām precīzam, ieslēdzot un izslēdzot vārtu izeju. Bibliotēka RobotDyn iesaka, ka taimeris pārtrauc ik pēc 100 sekundēm un maina vārtu līmeni tikai uz taimeri. Tas nozīmē, ka optimālā vērtība var būt par +/- 50 mikrosekundēm. Tas dod labu rezultātu lielā spilgtumā, bet ļoti mirgo pie zema spilgtuma. Arī tad, ja mikrokontrolleris veic daudzas darbības, tas samazina laika precizitāti, tāpēc ideālā gadījumā dimmerim jāizmanto īpašs mikrokontrolleris.

Minimāls spilgtums. LED ir iebūvēts jaudas pārveidotājs, kas vienkārši atsakās strādāt, ja nav pietiekami daudz jaudas. Šķita, ka manas lampas darbojas labi, sākot no 10-11%.

Pat ar šo vērtību dažas no manām lampām atteicās iedegties. Pat palielinot spilgtumu vēlāk, tie paliek tumši. Tāpēc, pārejot no izslēgta stāvokļa uz kādu pozitīvu spilgtumu, mēs sākam ar 5 ciklu iesildīšanās periodu, kad lampām dodam pilnu jaudu. Tad mēs turpinām ar vēlamo spilgtumu. Tas ir gandrīz nemanāms, bet patiešām palīdz.

50/60 Hz tīkla frekvence. Jums jāzina, cik daudz jāgaida pirms nākamās nulles. Tas ir diezgan vienkārši - mēs tikai aplūkojam laika starpību starp diviem pēdējiem pārtraukumiem.

Pakāpeniski mainās spilgtums. ESP32 ir diezgan lēns, triviāla HTTP vai pat WebSocket pieprasījuma apstrāde prasa 0,5 sekundes, tāpēc negaidiet vienmērīgu spilgtuma pāreju, tas ir kaut kā jāīsteno blāvākā līmenī. Tāpēc, saņemot jaunu spilgtumu no seriālā porta, tas tikai nosaka mērķi un pēc tam lēnām tuvojas tam laika gaitā.

Atrisinājums

Šeit ir mans vienkāršais Arduino kods dimmerim. Tas gaida komandu (viens baits ar jauno spilgtumu) no sērijas ievades, apstrādā Zero-Cross pārtraukumus, kontrolē TRIAC, risinot visas iepriekš minētās problēmas.

4. solis: lampas kontrolieris (ESP32)

Lampas kontrolieris (ESP32)
Lampas kontrolieris (ESP32)
Lampas kontrolieris (ESP32)
Lampas kontrolieris (ESP32)

Šeit ir visu manu komponentu savienojuma shēma. ESP32 tāfele ļoti atšķiras no tā, ko es izmantoju (Heltec), tāpēc izvēlētās tapas izskatās mazliet dīvaini, taču tai joprojām vajadzētu darboties labi. Jūtieties brīvi savā projektā izmantot dažādas tapas.

Šeit ir kods, kas to visu kontrolē. Tas ir diezgan taisni.

Galvenās iezīmes

Kontrolējams. Lukturis izveido savienojumu ar WiFi, palaiž WebSocket serveri 81. portā, gaida komandas. Komandu formāts ir

Pašlaik tiek atbalstītas tikai divas komandas: "set_brightness" un "update_settings", kas ir … diezgan pašraksturošas.

Laika iegūšana no NTP. Es nevēlos pārāk sarežģīt lietas un pievienot shēmai reāllaika pulksteni. Mums ir piekļuve internetam, kas nozīmē, ka mēs varam iegūt reālo laiku no kāda NTP servera un pēc tam izsekot pašreizējam laikam, izmantojot sistēmas taimerus.

Saullēkta modinātājs. Jūs varat iestatīt vienu modinātāju. Ko tas faktiski dara: sākas ar minimālo spilgtumu un pakāpeniski sasniedz pilnu spilgtumu 10 minūšu laikā. Tad tas paliek ieslēgts pāris stundas. Tad tas pakāpeniski izslēdzas 60 sekunžu laikā.

Visi iepriekš minētie parametri ir konfigurējami.

Putni dzied. DFPlayer mini tiek izmantots mūzikas atskaņošanai. Tam ir daudz rokasgrāmatu, taču būtībā jums vienkārši jāpievieno MicroSD karte, kas formatēta FAT32, ar vienu failu ar nosaukumu 0001.mp3. Šajā failā var būt viss, kas jums patīk, manā gadījumā tas ir 15 minūtes putnu dziedāšanas (tas tiks atkārtots), un tas padara manu rītu pārsteidzošu. Ņemiet vērā, ka jaudā ir milzīgs kondensators un 1 kOhm rezistori sērijas līnijā starp ESP32 un DFplayer - tie nav obligāti, taču palīdz samazināt troksni.

Iestatījumu saglabāšana EEPROM. Visi iestatījumi tiek ierakstīti EEPROM un tiek ielādēti startēšanas laikā. Tas ļauj izmantot lampu ar vismaz trauksmes funkciju, ja nav pievienots kontrolieris.

Informācijas atveidošana OLED ekrānā. Manam Heltec ESP32 ir iebūvēts SSD1306 128X64 I2C ekrāns. Tajā ir sniegta visa būtiskā informācija. Es zinu, kaste izskatās neglīta, es tikko 3D izdrukāju dažas lietas un ar urbi izgriezu caurumus un logus. Ātri, netīrs, bet tas darbojas!

5. darbība: vadības panelis

Vadības panelis
Vadības panelis
Vadības panelis
Vadības panelis

Tā ir projekta sirds. Raspberry Pi ar oriģinālu 7 collu displeju, kurā darbojas kāda Kivy priekšējā daļa.

Šeit ir pilns avota kods.

Iezīmes

Rakstīts Python. Man patīk Kivy, tas ir Python ietvars lietotāju saskarnēm. Ļoti vienkāršs, tomēr elastīgs un efektīvs (izmanto daudz C koda, lai nodrošinātu augstu veiktspēju un aparatūras paātrinājumu).

Laiks. Parādiet pašreizējo temperatūru un spiedienu ārā. Ja pievienojat tālvadības sensoru - arī iekšējā temperatūra. Tas arī pieprasa un analizē laika prognozi nākamajām 12 stundām un sniedz padomu par lietus iespējamību.

SunriseLamp kontrolieris. Citā panelī tiek parādīta pamatinformācija par modinātāju un varat pielāgot spilgtumu. Ja dodaties uz iestatījumiem, varat konfigurēt jebkuru luktura parametru, ieskaitot trauksmes grafiku, maksimālo audio skaļumu un tā tālāk.

Ekrānsaudzētājs. Renders Dzīves spēle ekrānā pēc kāda neaktivitātes perioda.

Agrāk bija vairāk nekā tas, bet citas lietas šķita bezjēdzīgas.

Uzstādīšana

Es visu manuāli instalēju Raspbian, un tagad varu teikt: neatkārtojiet savas kļūdas. Izmantojiet KivyPie, tajā viss ir iepriekš instalēts.

Bez tam, vienkārši izpildiet instalēšanas rokasgrāmatu kodu krātuvē.

6. solis: izbaudiet

Personīgi es esmu apmierināts ar ierīci. Es to izmantoju kā galveno apgaismojumu mājās dienas laikā, un tas ļauj man pamosties no rīta, tas ir pārsteidzoši.

Es zinu, ka instrukcijas nav ļoti sīkas un aprakstošas. Ja kāds gatavo to pašu un rodas problēmas - es labprāt palīdzēšu!

Ieteicams: