Përmbajtje:

Llamba e Agimit të Kontrollueshme të Ndritshme: 6 Hapa
Llamba e Agimit të Kontrollueshme të Ndritshme: 6 Hapa

Video: Llamba e Agimit të Kontrollueshme të Ndritshme: 6 Hapa

Video: Llamba e Agimit të Kontrollueshme të Ndritshme: 6 Hapa
Video: Явление рассвета: уровень сахара в крови натощак высокий на низком уровне углеводов и IF? 2024, Korrik
Anonim
Llambë e Agimit të Kontrollueshme të Ndritshme
Llambë e Agimit të Kontrollueshme të Ndritshme
Llambë e Agimit të Kontrollueshme të Ndritshme
Llambë e Agimit të Kontrollueshme të Ndritshme

A jeni zgjuar ndonjëherë në orën 7 të mëngjesit, koha e zakonshme që ju nevojitet për t'u zgjuar për në punë dhe e keni gjetur veten në errësirë? Dimri është një kohë e tmerrshme, apo jo? Duhet të zgjoheni në mes të natës (përndryshe pse është kaq e errët?), Të shkulni veten nga shtrati dhe ta dërgoni trupin tuaj gjysmëdijshëm në dush.

Ky projekt synon të zgjidhë një nga çështjet - errësirën e mëngjesit.

Ka shumë llamba të lira të lindjes së diellit përreth, por të gjitha ato janë me fuqi të ulët dhe të zbehtë. Ato janë më shumë si një llambë nate, e cila supozohet se do t’ju bëjë të flini më mirë. Aspak atë që dua.

Në të njëjtën kohë, vetëm ndezja e dritës së ndritshme do t'ju zgjojë menjëherë, por jo mjaft butë. Ajo që dua është një kombinim i të dyja qasjeve - ndriçoni me një shkëlqim të ulët, ngadalë arrini shpejtësinë e plotë, atëherë një alarm i vërtetë bie dhe nuk jeni më aq të përgjumur. Le t'i shtojmë pak këngë zogjsh, dhe ju zgjoheni në parajsë çdo mëngjes!

Hapi 1: Array Lamp

Array Llambë
Array Llambë
Array Llambë
Array Llambë

Para së gjithash, ne kemi nevojë për vetë llambën. Unë kam një dhomë mjaft të madhe me mure dhe tavan të bardhë, kështu që shkova për 7 llamba LED GU10, diçka si 6W secila, më shumë se 40W fuqi të pastër! Kjo është e mjaftueshme për t'ju bërë të ndiheni sikur është tashmë ditë. Gjithashtu mund të përdoret si ndriçim i zakonshëm i dhomës gjatë ditës.

Nuk ka shumë rëndësi se si e montoni, cilat llamba përdorni me cilat priza. Çdo gjë që ka rëndësi - këto duhet të jenë llamba të zbehta!

Në rastin tim, unë kam një dërrasë druri me 7 baza GU10 të lidhura, të gjitha të lidhura së bashku. Do ta fus në një kuti plastike më vonë.

Hapi 2: Teoria e zbehjes

Teoria e zbehjes
Teoria e zbehjes

Në teori nuk ka asnjë ndryshim midis teorisë dhe praktikës. Në praktikë ka.

Kontrolli i një zbehësi nga ESP32/Arduino duket se nuk ishte aq i thjeshtë sa e imagjinoja. Kam marrë një nga modulet RobotDyn AC Light Dimmer. Prodhuesi sugjeron një bibliotekë për këtë. Nuk funksionon në ESP32 (dhe është vërtet e vështirë të përshtatet, sepse përdor shumë qasje në regjistër të nivelit të ulët ATMega), një lloj pune në Arduino Nano, duke dhënë një dridhje të tmerrshme në shkëlqimin e mesit të ulët. Kjo është arsyeja pse kalova ca kohë duke hetuar se si funksionon gjithçka dhe duke bërë rrugën time.

Pak teori

Moduli i zgjedhur i zbehësit përdor një TRIAC shumë të njohur: BTA16. Ka shumë artikuj në lidhje me të. Do të përpiqem ta përmbledh këtu.

TRIAC është një modul i cili mund të transmetojë një tension hyrës pozitiv ose negativ në dalje, ose mund ta bllokojë atë. Si parazgjedhje bllokon gjithçka. Për ta hapur atë, duhet t'i japim një sinjal të lartë në hyrjen e portës për 100 us. Pastaj do të qëndrojë e hapur derisa rryma të bjerë në zero, gjë që ndodh kur një tension hyrës ndryshon shenjën, duke kaluar një tension zero. Pastaj në ciklin e mëposhtëm duhet të bëjmë një impuls tjetër prej 100 us dhe kështu me radhë. Duke zgjedhur kur të jepni një puls, ne kontrollojmë shkëlqimin: bëjeni atë në fillim, dhe do të jetë afër 100% transmetim i energjisë. Bëni atë më vonë dhe do të errësohet. Shikoni diagramin e mësipërm, duke e shpjeguar atë.

Për të gjeneruar impulse në të njëjtën pikë të ciklit, duhet të dimë saktësisht se kur fillon. Kjo është arsyeja pse moduli i zbehësit ka një detektor Zero-Cross të integruar. Ai vetëm ngre një sinjal (të cilin do ta kapim si ndërprerje harduerike në Arduino) sa herë që tensioni kalon zero.

Hapi 3: Praktika e zbehjes

Praktika e zbehjes
Praktika e zbehjes

Po, kështu do të zgjoheshit, nëse llamba juaj nuk ka zbehje dhe vendos të gjithë 40W fuqinë në sytë tuaj të përgjumur.

Çështje të përbashkëta

Ka shumë çështje që duhet të adresojmë.

Dridhje.

Koha e mikrokontrolluesit duhet të jetë vërtet e saktë në ndezjen dhe fikjen e daljes së portës. Biblioteka sugjeron RobotDyn, ka një ndërprerës kohëmatës çdo 100us dhe ndryshon nivelin e portës vetëm në kohëmatës. Do të thotë se mund të jetë +/- 50 mikrosekonda jashtë vlerës optimale. Ai jep një rezultat të mirë në një shkëlqim të lartë, por dridhet shumë në shkëlqimin e ulët. Gjithashtu nëse mikrokontrolluesi bën shumë gjëra, ai zvogëlon saktësinë e kohës, kështu që në mënyrë ideale një mikrokontrollues i dedikuar duhet të përdoret për zbehësin.

Ndriçimi minimal. LED-të kanë një konvertues të energjisë të integruar, i cili thjesht do të refuzojë të punojë pa fuqi të mjaftueshme. Llambat e mia dukej se funksiononin mirë duke filluar nga 10-11%.

Edhe me këtë vlerë, disa nga llambat e mia refuzuan të ndizen në fillim. Edhe kur rrisin shkëlqimin më vonë, ato qëndrojnë të errëta. Kjo është arsyeja pse, kur kalojmë nga gjendja OFF në një shkëlqim pozitiv, fillojmë me një periudhë të ngrohjes prej 5 cikleve, kur u japim fuqi të plotë llambave. Pastaj vazhdojmë me shkëlqimin e dëshiruar. Almostshtë pothuajse e padukshme, por me të vërtetë ndihmon.

Frekuenca e rrjetit 50/60 Hz. Duhet të dini sa të prisni para zeros tjetër. Prettyshtë shumë e thjeshtë - ne thjesht shikojmë diferencën kohore midis dy ndërprerjeve të fundit.

Ndryshimi gradual i shkëlqimit. ESP32 është mjaft i ngadalshëm, duhen 0.5 sekonda për të përpunuar një kërkesë të parëndësishme HTTP apo edhe WebSocket, kështu që mos prisni një kalim të qetë të shkëlqimit, ai duhet të zbatohet disi në nivelin e zbehjes. Kjo është arsyeja pse, kur merr një shkëlqim të ri nga një port serial, ai thjesht vendos objektivin, dhe pastaj ngadalë i afrohet atij me kalimin e kohës.

Zgjidhja

Këtu është kodi im i thjeshtë Arduino për zbehësin. Ai pret një komandë (një bajt me shkëlqimin e ri) nga hyrja serike, trajton ndërprerjet Zero-Cross, kontrollon TRIAC, duke trajtuar të gjitha çështjet e mësipërme.

Hapi 4: Kontrolluesi i llambës (ESP32)

Kontrolluesi i llambës (ESP32)
Kontrolluesi i llambës (ESP32)
Kontrolluesi i llambës (ESP32)
Kontrolluesi i llambës (ESP32)

Këtu është skema e lidhjes së të gjithë përbërësve që kam. Bordi ESP32 është shumë i ndryshëm nga ai që përdor unë (Heltec), kështu që kunjat e zgjedhur duken pak të çuditshme, por gjithsesi duhet të funksionojë mirë. Mos ngurroni të përdorni kunja të ndryshëm në projektin tuaj.

Këtu është kodi që kontrollon gjithçka. Prettyshtë mjaft drejtpërdrejt.

Karakteristikat kryesore

E kontrollueshme. Llamba lidhet me WiFi, fillon një server WebSocket në portin 81, pret komandat. Formati i komandës është

Vetëm dy komanda janë të mbështetura tani për tani: "set_brightness" dhe "update_settings", të cilat janë … mjaft vetë-përshkruese.

Marrja e kohës nga NTP. Unë nuk dua të komplikoj shumë gjërat dhe të shtoj një orë në kohë reale në skemë. Ne kemi qasje në internet, që do të thotë se mund të marrim kohën reale nga ndonjë server NTP dhe më pas të mbajmë shënim kohën aktuale duke përdorur kohëmatësit e sistemit.

Alarmi i lindjes së diellit. Mund të vendosni një alarm. Çfarë bën në të vërtetë: fillon me shkëlqimin minimal dhe gradualisht shkon në shkëlqimin e plotë për 10 minuta. Pastaj qëndron për disa orë. Pastaj gradualisht fiket mbi 60 sekonda.

Të gjithë parametrat e mësipërm janë të konfigurueshëm.

Zogjtë këndojnë. DFPlayer mini përdoret për të luajtur muzikë. Ka shumë udhëzues për të, por në thelb ju vetëm duhet të lidhni një kartë MicroSD, të formatuar në FAT32, me një skedar të quajtur 0001.mp3. Ky skedar mund të ketë gjithçka që ju pëlqen, në rastin tim janë 15 minuta zogj që këndojnë (do të lakohet), dhe e bën mëngjesin tim të mahnitshëm. Vini re se ka një kondensator të madh në energji, dhe rezistorë 1 kOhm në vijën seriale midis ESP32 dhe DFplayer - ato janë opsionale, por ndihmojnë në zvogëlimin e zhurmës.

Ruajtja e cilësimeve në EEPROM. Të gjitha cilësimet shkruhen në EEPROM dhe ngarkohen në fillim. Bën të mundur përdorimin e llambës me të paktën një veçori alarmi pa kontrollues të lidhur.

Dhënia e disa informacioneve në ekranin OLED. Heltec ESP32 im ka një ekran të integruar SSD1306 128X64 I2C. I gjithë informacioni thelbësor jepet mbi të. E di, kutia duket e shëmtuar, unë thjesht kam printuar 3D disa gjëra dhe kam prerë vrimat dhe dritaret me një stërvitje. E shpejtë, e ndyrë, por funksionon!

Hapi 5: Paneli i Kontrollit

Paneli i kontrollit
Paneli i kontrollit
Paneli i kontrollit
Paneli i kontrollit

Kjo është zemra e projektit. Një Raspberry Pi me një ekran origjinal 7 , që funksionon në pjesën e përparme të Kivy.

Këtu është kodi i plotë burimor.

Karakteristikat

Shkruar në Python. Më pëlqen Kivy, është një kornizë Python për ndërfaqet e përdoruesit. Shumë e thjeshtë, por fleksibël dhe efikase (përdor shumë kod C brenda për performancë të lartë dhe përshpejtim të harduerit).

Moti. Tregoni temperaturën dhe presionin aktual jashtë. Nëse lidhni një sensor të largët - temperaturën e brendshme gjithashtu. Ai gjithashtu kërkon dhe analizon parashikimin e motit për 12 orët në vijim dhe jep një këshillë për një probabilitet të shiut.

Kontrolluesi SunriseLamp. Një panel tjetër shfaq disa informacione themelore në lidhje me alarmin dhe ju lejon të rregulloni shkëlqimin. Nëse shkoni te cilësimet, mund të konfiguroni çdo parametër të llambës, përfshirë orarin e alarmit, volumin maksimal të audios etj.

Mbrojtësi i ekranit. Shfaq lojën e jetës në ekran pas një periudhe pasiviteti.

Dikur kishte më shumë se kaq, por gjërat e tjera dukeshin të padobishme.

Instalimi

Unë instalova gjithçka me dorë në Raspbian, dhe tani mund të them: mos i përsëris gabimet e mia. Përdorni KivyPie, ai ka gjithçka të para-instaluar.

Përveç kësaj, thjesht ndiqni udhëzuesin e instalimit në depon e kodeve.

Hapi 6: Shijoni

Personalisht jam i kënaqur me pajisjen. E përdor si ndriçues kryesor në shtëpi gjatë ditës, dhe më lejon të zgjohem në mëngjes, është e mahnitshme.

Unë e di që udhëzimet nuk janë shumë të hollësishme dhe përshkruese. Nëse dikush bën të njëjtën gjë dhe ka probleme - do të jem i lumtur të ndihmoj!

Recommended: