Sisukord:

Heledalt juhitav päikesetõusu lamp: 6 sammu
Heledalt juhitav päikesetõusu lamp: 6 sammu

Video: Heledalt juhitav päikesetõusu lamp: 6 sammu

Video: Heledalt juhitav päikesetõusu lamp: 6 sammu
Video: Часть 1 — Аудиокнига «Лорд Джим» Джозефа Конрада (гл. 01–06) 2024, Juuli
Anonim
Heledalt juhitav päikesetõusu lamp
Heledalt juhitav päikesetõusu lamp
Heledalt juhitav päikesetõusu lamp
Heledalt juhitav päikesetõusu lamp

Kas ärkasite kunagi kell 7, tavaliselt tööl ärkamiseks vajaliku ajaga, ja sattusite pimedusse? Talv on kohutav aeg, eks? Sa pead ärkama keset ööd (muidu, miks on nii pime?), Rebida end voodist ja saata oma poolteadlik keha duši alla.

Selle projekti eesmärk on lahendada üks probleemidest - hommikune pimedus.

Ümberringi on palju odavaid päikesetõusulampe, kuid need kõik on väikese võimsusega ja kahvatud. Need on rohkem nagu öölamp, mis peaks sind paremini magama panema. Üldse mitte see, mida ma tahan.

Samal ajal äratad sa vaid ereda valguse sisselülitamisel kohe üles, kuid mitte piisavalt õrnalt. Tahan kombineerida mõlemat lähenemisviisi - süttib väikese heledusega, jõuab aeglaselt täiskiirusele, siis kostab tõeline äratus ja te pole enam nii unine. Lisagem sellele natuke linnulaulu ja ärkate igal hommikul taevas!

1. etapp: lambivalik

Lampide massiiv
Lampide massiiv
Lampide massiiv
Lampide massiiv

Kõigepealt vajame lampi ennast. Mul on päris suur valgete seinte ja laega tuba, nii et valisin 7 GU10 LED -lampi, igaüks umbes 6W, rohkem kui 40W puhast võimsust! Sellest piisab, et tekiks tunne, nagu oleks juba päev. Seda saab kasutada ka tavalise ruumivalgustina päevasel ajal.

Pole tegelikult vahet, kuidas seda kokku panna, milliseid lampe milliste pesadega kasutada. Kõik, mis on oluline - need peavad olema hämardatavad lambid!

Minu puhul on mul puidust plaat, millele on kinnitatud 7 GU10 pistikupesa, kõik omavahel ühendatud. Panen selle hiljem plastkarpi.

2. samm: hämardamise teooria

Hämardamise teooria
Hämardamise teooria

Teoorias pole teooria ja praktika vahel vahet. Praktikas on olemas.

ESP32/Arduino dimmeri juhtimine ei tundunud olevat nii lihtne, kui ma ette kujutasin. Sain ühe RobotDyn AC Light Dimmer moodulitest. Tootja soovitab selleks raamatukogu. See ei tööta ESP32-ga (ja seda on tõesti raske kohandada, kuna see kasutab palju madala ATMega-spetsiifilise registri juurdepääsu), omamoodi töötab Arduino Nano-ga, andes kohutava värelemise madala ja keskmise heleduse korral. Sellepärast veetsin ma mõnda aega uurides, kuidas see kõik toimib, ja tegin oma tee.

Natuke teooriat

Valitud hämardusmoodul kasutab väga populaarset TRIAC: BTA16. Selle kohta on palju artikleid. Püüan selle siin kokku võtta.

TRIAC on moodul, mis suudab väljundisse edastada positiivse või negatiivse sisendpinge või selle blokeerida. Vaikimisi blokeerib see kõik. Selle avamiseks peaksime andma sellele kõrge signaali värava sisendil 100 meie jaoks. Siis jääb see avatuks, kuni vool langeb nulli, mis juhtub siis, kui sisendpinge muudab märki, ületades nullpinge. Järgmisel tsüklis peaksime tegema veel 100 us pulsi ja nii edasi. Valides impulsi andmise aja, kontrollime heledust: tehke seda kohe alguses ja jõuülekanne on 100% lähedal. Tehke seda hiljem ja see tuhmub. Vaadake ülaltoodud diagrammi, selgitades seda.

Impulsside genereerimiseks tsükli samas punktis peame täpselt teadma, millal see algab. Seetõttu on hämardusmoodulil Zero-Cross detektor sisse ehitatud. See tõstab lihtsalt signaali (mille me Arduino riistvarakatkestusena tabame) iga kord, kui pinge ületab nulli.

3. samm: hämardamispraktika

Hämardamise praktika
Hämardamise praktika

Jah, nii ärkaksite üles, kui teie lamp ei hämarda ja paneb kogu 40 W võimsuse teie unistavatesse silmadesse.

Levinud probleemid

Peame lahendama mitmeid probleeme.

Vilkuv.

Mikrokontrolleri ajastus peab olema värava väljundi sisse- ja väljalülitamisel tõesti täpne. Raamatukogu RobotDyn soovitab katkestada taimeriga iga 100us ja muudab värava taset ainult taimeril. See tähendab, et see võib olla +/- 50 mikrosekundi kaugusel optimaalsest väärtusest. See annab hea heleduse korral hea tulemuse, kuid väikse heleduse korral vilgub palju. Samuti, kui mikrokontroller teeb palju asju, vähendab see aja täpsust, nii et ideaaljuhul tuleks dimmeri jaoks kasutada spetsiaalset mikrokontrollerit.

Minimaalne heledus. LED-idel on sisseehitatud võimsusmuundur, mis lihtsalt keeldub töötamast, kui energiat pole piisavalt. Minu lambid töötasid hästi alates 10-11%.

Isegi selle väärtuse korral keeldusid mõned minu lambid käivitamisel süttima. Isegi hiljem heledust suurendades jäävad need tumedaks. Sellepärast, kui me lülitume väljalülitatud olekust positiivsele heledusele, alustame 5 -tsüklilise soojendusperioodiga, mil anname lampidele täisvõimsuse. Seejärel jätkame soovitud heledusega. See on peaaegu märkamatu, kuid tõesti aitab.

50/60 Hz võrgusagedus. Peate teadma, kui palju oodata enne järgmist nulli. See on üsna lihtne - vaatame lihtsalt ajavahet kahe viimase katkestuse vahel.

Heleduse järkjärguline muutus. ESP32 on üsna aeglane, triviaalse HTTP või isegi WebSocket taotluse töötlemiseks kulub 0,5 sekundit, nii et ärge oodake sujuvat heleduse üleminekut, see tuleb kuidagi hämaramal tasemel rakendada. Sellepärast, kui see saab jadaportist uue heleduse, seab see lihtsalt eesmärgi ja läheneb sellele aja jooksul aeglaselt.

Lahendus

Siin on minu lihtne dimmeri Arduino kood. See ootab käsku (üks bait uue heledusega) jadasisendist, tegeleb Zero-Cross katkestustega, juhib TRIAC-i, lahendades kõik ülaltoodud probleemid.

4. samm: lambikontroller (ESP32)

Lambikontroller (ESP32)
Lambikontroller (ESP32)
Lambikontroller (ESP32)
Lambikontroller (ESP32)

Siin on kõigi minu olemasolevate komponentide ühendusskeem. ESP32 plaat on väga erinev sellest, mida ma kasutan (Heltec), nii et valitud tihvtid näevad natuke imelikud, kuid peaksid siiski hästi toimima. Kasutage oma projektis julgelt erinevaid tihvte.

Siin on kood, mis seda kõike kontrollib. See on üsna otsekohene.

Peamised omadused

Juhitav. Lamp ühendub WiFi -ga, käivitab pordi 81 WebSocket serveri, ootab käske. Käskude vorming on

Praegu toetatakse ainult kahte käsku: "set_brightness" ja "update_settings", mis on … üsna isekirjeldavad.

NTP-st aja saamine. Ma ei taha asju liiga keeruliseks muuta ja skeemile reaalajas kella lisada. Meil on juurdepääs Internetile, mis tähendab, et saame reaalajas mõnelt NTP -serverilt ja seejärel süsteemi taimerite abil praegust aega jälgida.

Päikesetõusu äratus. Saate määrata ühe äratuse. Mida see tegelikult teeb: algab minimaalse heledusega ja läheb järk -järgult 10 minuti jooksul täisheledusele. Siis püsib see paar tundi peal. Seejärel lülitub see järk -järgult välja 60 sekundi jooksul.

Kõik ülaltoodud parameetrid on konfigureeritavad.

Linnud laulavad. DFPlayer mini kasutatakse muusika mängimiseks. Selle jaoks on palju juhendeid, kuid sisuliselt peate lihtsalt ühendama MicroSD -kaardi, mis on vormindatud FAT32 -sse, ühe failiga 0001.mp3. Sellel failil võib olla kõike, mis teile meeldib, minu puhul on see 15 minutit lindude laulmist (see lülitatakse silmustesse) ja see muudab mu hommiku hämmastavaks. Pange tähele, et toiteallikas on tohutu kondensaator ja jadajoonel 1 kOhm takistid ESP32 ja DFplayer - need on valikulised, kuid aitavad vähendada müra.

Seadete salvestamine EEPROM -i. Kõik seaded kirjutatakse EEPROM -i ja laaditakse käivitamisel. See võimaldab kasutada lampi vähemalt häirefunktsiooniga ilma ühendatud kontrollerita.

Teabe esitamine OLED-ekraanile. Minu Heltec ESP32-l on sisseehitatud SSD1306 128X64 I2C ekraan. Sellel on kogu oluline teave. Ma tean, karp näeb kole välja, ma olen lihtsalt 3D-printinud mõned asjad ja lõiganud puuriga augud ja aknad. Kiire, räpane, aga töötab!

Samm: juhtpaneel

Kontrollpaneel
Kontrollpaneel
Kontrollpaneel
Kontrollpaneel

See on projekti süda. Vaarika Pi originaalse 7-tollise ekraaniga, millel on mõni Kivy esipaneel.

Siin on täielik lähtekood.

Omadused

Kirjutatud Pythonis. Mulle meeldib Kivy, see on kasutajaliideste Pythoni raamistik. Väga lihtne, kuid paindlik ja tõhus (kasutab suure jõudluse ja riistvarakiirenduse jaoks palju C -koodi).

Ilm. Näidake praegust temperatuuri ja rõhku väljas. Kui ühendate kauganduri - ka sisetemperatuuri. See küsib ja analüüsib ka järgmise 12 tunni ilmaprognoosi ning annab vihma tõenäosuse kohta nõu.

SunriseLamp kontroller. Teisel paneelil kuvatakse häire kohta põhiteavet ja saate reguleerida heledust. Kui lähete seadete juurde, saate konfigureerida lambi mis tahes parameetreid, sealhulgas häire ajakava, maksimaalset helitugevust ja nii edasi.

Ekraanisäästja. Laenutajate elumäng ekraanil pärast mõnda tegevusetust.

Varem oli seda rohkem, kuid muud asjad tundusid kasutud.

Paigaldamine

Paigaldasin kõik Raspbianile käsitsi ja nüüd võin öelda: ära korda oma vigu. Kasutage KivyPie'i, kõik on eelinstallitud.

Peale selle järgige lihtsalt koodide hoidla installijuhendit.

6. samm: nautige

Isiklikult olen seadmega rahul. Kasutan seda päeva jooksul põhivalgustina kodus ja see laseb mul hommikul ärgata, see on hämmastav.

Ma tean, et juhised ei ole väga üksikasjalikud ja kirjeldavad. Kui keegi teeb sama asja ja tal on probleeme - aitan hea meelega!

Soovitan: