Përmbajtje:
- Hapi 1: Eksplorimi i idesë
- Hapi 2: Pajisje kompjuterike
- Hapi 3: Montimi
- Hapi 4: Kontrolli?
- Hapi 5: Bëjeni të lehtë
- Hapi 6: Eksperimentet e para
- Hapi 7: Kontrolli në kohë reale
- Hapi 8: Përfundime
Video: Drita interaktive e ambientit: 8 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:30
Ky është udhëzimi im i parë! Ju lutemi duroni me mua ndërsa përpiqem të shkruaj anglishten e duhur. Ndjehuni të lirë të më korrigjoni! E fillova këtë projekt menjëherë pasi filloi konkursi "Le të shkëlqejë". Do të doja të kisha bërë shumë më tepër dhe të kisha përfunduar atë që doja të bëja. Por midis shkollës dhe punës, nuk më ka mbetur aq kohë sa do të doja. Sidoqoftë, unë lë këtu një raport të eksperimenteve të mia si një udhëzues, kështu që çdokush mund të përpiqet të bëjë atë që bëra. Ky udhëzues nuk ka për qëllim të shërbejë si një udhërrëfyes dhe të mësojë se si ta bëni këtë mjet. Nuk është një udhëzues për fillestarët në elektronikë. Moreshtë më shumë si të ndash një ide dhe objektiv që dëshiroj të ndjek. Nëse jeni fillestar/injorant i plotë në elektronikë dhe dëshironi të bëni diçka të tillë, më falni! Por ne mund të përpiqemi gjithmonë t'ju ndihmojmë. Shikoni hapin e fundit. Ne kemi parë tashmë shumë projekte të dritës së ambientit. Shumica e tyre përdorin LED RGB: - Për të ndriçuar një dhomë me një ngjyrë, duke krijuar një atmosferë që përputhet me gjendjen tuaj shpirtërore - Për të krijuar efekte drite nga ngjyra e TV/Monitorit ose nga audio. Ka edhe disa në instruksionet.com Lidhur: DIY Ambient Light SystemsLight Bar Ambient LightingNdërtimi i shiritave tuaj të ndriçimit të ngjyrave të ambientit Duke përdorur këtë konkurs si justifikim, fillova një projekt që ka qenë në mendjen time për një kohë. Unë gjithmonë kam dashur të bëj diçka të ngjashme me këto drita ambienti dhe të mbush muret në dhomën time me LED RGB. Por, duke e çuar një hap më tej, duke i bërë të gjitha dhe secilën prej tyre të kontrollueshme. Ky projekt shpresojmë se do të rezultojë në një çantë elektronike me burim të hapur për hobistët dhe kallajxhinjtë elektronikë, duke lejuar hakimin e harduerit/softuerit dhe integrimin shqisor. Këtu është një vrojtim i vogël i asaj që kam bërë:
Hapi 1: Eksplorimi i idesë
Unë dua të jem në gjendje të mbush muret në dhomën time me LED RGB, duke kontrolluar ngjyrën dhe shkëlqimin për secilën led. Unë do të përdor një mikrokontrollues për lehtësinë e përdorimit dhe fleksibilitetin e dhënë. Fatkeqësisht nuk mund të kontrolloj qindra LED me disa kunja të disponueshëm në mikrokontrolluesit. Madje do të ishte e vështirë të kodoja kontrollin e kaq shumë LED -ve. Kështu që vendosa që duhet t'i ndaj të gjitha LED -të në disa shufra më të vegjël dhe për secilën shirit mund të përdor një mikrokontrollues. Pastaj do të përdorja aftësitë e komunikimit të mikrokontrolluesve për të ndarë informacionin midis tyre. Ky informacion mund të jetë ngjyra dhe shkëlqimi i LED -ve, modelet/sekuencat e ngjyrave dhe informacioni ndijor. Për çdo shirit vendosa të përdor 16 LED RGB. Kjo rezulton në një bar as shumë të madh as të vogël. Në këtë mënyrë unë përdor një numër të pranueshëm burimesh për secilën led, duke zvogëluar kostot për çdo shirit. Sidoqoftë, 16 LED RGB janë 48 LED (3*16 = 48) për kontrollimin e mikrokontrolluesit. Me kostot në mendje, vendosa të përdor mikrokontrolluesi më i lirë që mund të përdor. Kjo do të thotë që mikrokontrolluesi do të ketë vetëm deri në 20 kunja I/O, jo të mjaftueshme për 48 LED. Unë nuk dëshiroj të përdor Charlieplexing ose një lloj makinë për ndarjen e kohës, pasi qëllimi i projektit është ndriçimi i një dhome. Alternativa që mund të mendoja është përdorimi i një lloji të regjistrit të ndërrimit! Rifillimi:- Bëni dhe ndriçim ndriçues ambienti- Bëni një shirit standard të LED-ve të kontrollueshme- Mundësia e lidhjes së disa shufrave për të mbushur një dhomë- Lejo përshtatjen/konfigurimin dhe integrimin ndijor të përdoruesit
Hapi 2: Pajisje kompjuterike
Siç u tha në hapin e mëparshëm, unë dëshiroj të bëj disa bare për të ndriçuar një dhomë. Kjo sjell në mendje çështjen e kostos. Unë do të përpiqem ta bëj çdo bar mënyrën më kosto-efektive të mundshme. Mikrokontrolluesi që kam përdorur ishte një AVR ATtiny2313. Këto janë mjaft të lira dhe kam pasur disa të shtrirë përreth. ATtiny2313 gjithashtu ka një Ndërfaqe Seriale Universale dhe një ndërfaqe USART që do të përdoret mirë në hapat e mëposhtëm. Unë gjithashtu kisha tre zgjerues të portit MCP23016 - I2C 16bit I/O të shtrirë përreth, numërimi i duhur! Kam përdorur çdo zgjerues të portit për të kontrolluar një ngjyrë të 16 LED -ve. LEDs … Fatkeqësisht, ishin më të lira që mund të gjeja. Ato janë 48 të kuqe, jeshile dhe blu ~ 10000mcd 5mm me kënd 20 gradë. Kjo nuk duhet të ketë rëndësi tani, pasi ky është vetëm një prototip. Përkundër këtij fakti, rezultati është mjaft i këndshëm! Unë jam duke drejtuar mikrokontrolluesin në 8 MHz. Autobusi I2C është i vendosur në 400 kHz. Frekuenca e ndërrimit të LED është rreth 400 Hz. Në këtë mënyrë, nëse jam në gjendje të drejtoj 48 LED pa e shtyrë atë në kufi, do të lë vend për më shumë më vonë!
Hapi 3: Montimi
Pasi hartova qarkun, e ndërtova në disa dërrasa buke, për qëllime prototipimi. Pas disa orësh të prerjes së telave dhe montimit të qarkut, mora këtë rezultat: Një tabelë gjigante me 48 LED dhe ton tela!
Hapi 4: Kontrolli?
Kjo është pjesa më sfiduese e projektit. Doja të bëja një algoritëm kontrolli mjaft të përgjithshëm për trajtimin e modeleve/sekuencave dhe gjithashtu kontrollin e shkëlqimit dhe ngjyrës së secilës LED. Për të kontrolluar LED -të duhet të dërgoj në MCP23016 një kornizë prej 4bajt (1 bajt = 8 bit). Një bajt me adresën e IC korrespondent me ngjyrën, 1 bajt me komandën "shkruaj" dhe 2 bajt me vlerën e 16 bitëve (LED). IC është e lidhur me LED -të si "lavaman", që do të thotë, një vlerë logjike 0 në kunj do të ndriçojë LED. Dhe tani pjesa sfiduese, si të bëni kontrollin PWM për 48 LED? Le të studiojmë PWM për një LED! PWM shpjegoi @ Wikipedia. Nëse dua shkëlqimin e LED në 50%, vlera ime PWM është 50%. Kjo do të thotë që LED, në një periudhë kohore, duhet të jetë në të njëjtën kohë me atë të fikur. Le të marrim një periudhë prej 1 sekonde. PWM prej 50% do të thotë që në këtë 1 sekondë, koha në kohë është 0.5 sekonda dhe koha e fikjes është 0.5 sekonda. PWM prej 80%? 0.2 sekonda jashtë, 0.8 sekonda aktiv! E lehtë, apo jo? Në botën dixhitale: Me një periudhë prej 10 cikleve të orës, 50% do të thotë që LED për 5 cikle është ndezur, dhe për 5 cikle të tjera LED është i fikur. 20%? 2 cikle aktiv, 8 cikle jashtë. 45%? Epo, ne nuk mund të marrim vërtet 45%… Meqenëse periudha është në cikle dhe kemi vetëm 10 cikle, ne mund ta ndajmë PWM vetëm në hapa 10%. Kjo do të thotë që evolucioni i kunjit duhet të jetë, për 50%: 1, 1, 1, 1, 1, 0, 0, 0, 0, 0; Ose edhe 1, 0, 1, 0, 1, 0, 1, 0, 1, 0; Në programim ne mund të bëjmë këtë sekuencë të ndezjes dhe fikjes së një grupi. Për secilin cikël që dalim në pin vlera e indeksit ishte cikli. A kisha kuptim deri tani? Nëse duam të bëjmë LED0 50%, dhe LED1 20%, mund të shtojmë të dyja vargjet. Për të drejtuar pinin LED0: 1, 1, 1, 1, 1, 0, 0, 0, 0, 0; Për drejtimin e kunjit LED1: 2, 2, 0, 0, 0, 0, 0, 0, 0, 0; Rezulton në LED0 +LED0: 3, 3, 1, 1, 1, 0, 0, 0, 0, 0; Duke nxjerrë këtë sekuencë numrash në IC zgjerues të portit, ne do të merrnim LED0 me 50% shkëlqim dhe LED1 me 20% !! E thjeshtë për 2 LED, apo jo? Tani duhet ta bëjmë këtë për 16 LED, për secilën ngjyrë! Për secilën prej këtyre vargjeve, ne kemi një kombinim të shkëlqimit për secilën ngjyrë (16 LED) Sa herë që duam një kombinim tjetër të ngjyrave, duhet ta ndryshojmë këtë grup.
Hapi 5: Bëjeni të lehtë
Hapi i mëparshëm është shumë punë për të bërë një sekuencë të thjeshtë … Kështu që vendosa të bëj një program, ku ne tregojmë ngjyrat e secilës LED në një hap të sekuencës dhe marrim tre vargje të hapit. Unë e bëra këtë program në LabView për shkak të kufizimeve kohore.
Hapi 6: Eksperimentet e para
Duke ngarkuar disa hapa në mikrokontrollues dhe ne marrim diçka si kjo: Na vjen keq për cilësinë e dobët të videove! Unë përcaktova numrin maksimal të hapave të një sekuence në 8, dhe i kufizova kërcimet PWM në 20%. Ky vendim bazohet në llojin e kontrollit që po përdor dhe sa EEPROM ka ATtiny2313. Në këto eksperimente u përpoqa të shikoja se çfarë lloj efektesh mund të bëja. Duhet të them që jam i kënaqur me rezultatin!
Hapi 7: Kontrolli në kohë reale
Siç u përmend në hapat e mëparshëm, unë dëshiroj të komunikoj me të gjithë mikrokontrolluesit që kontrollojnë LED -të në dhomën time. Kështu që unë përdor ndërfaqen e disponueshme USART në ATtiny2313 dhe e lidha atë me kompjuterin tim. Unë gjithashtu bëra një program në LabView për të kontrolluar shiritin LED. Në këtë program unë jam në gjendje t'i them mikrokontrolluesit se sa e gjatë është sekuenca, ngjyra e secilës LED dhe koha midis hapave të një sekuence. Në videon tjetër do të demonstroni se si mund të ndryshoj ngjyrën e LED -ve dhe të përcaktoj sekuencat.
Hapi 8: Përfundime
Unë mendoj se kam qenë i suksesshëm në këtë qasje të parë të projektit tim. Unë jam në gjendje të kontrolloj 16 LED RGB me pak burime dhe kufizime. LEDshtë e mundur të kontrolloni secilën LED veç e veç, duke krijuar çdo sekuencë të dëshiruar.
Puna e ardhshme:
Nëse marr reagime pozitive nga njerëzit, mund ta zhvilloj më tej këtë ide dhe të bëj një Kit të plotë Elektronikë DIY, me tabela të shtypura dhe udhëzime montimi.
Për versionin tim të ardhshëm unë do të: -Ndryshoj mikrokontrolluesin në një me ADC -Ndryshoj MCP23016 për ndonjë lloj tjetër seriali -paralelisht -dalje që mund të zhytet më shumë nga LED -të -Bëj softuer me burim të hapur për të komunikuar me mikrokontrolluesin dhe kontrolloni LED -të -Zhvilloni komunikimin midis disa mikrokontrolluesve.
A keni ndonjë sugjerim apo pyetje? Ose lini një koment!
Finalisti në Let It Glow!
Recommended:
Ndizet drita e lehtë për montim Drita: e kontrolluar nga smartphone me BLYNK: 10 hapa
Ndezës i lehtë i montueshëm i dritës: Kontroll i telefonave inteligjentë me BLYNK: Pajisjet IoT po bëhen me shpejtësi gjithnjë e më shumë, kështu që pse nuk mësoni dhe krijoni pajisjet tuaja IoT nga materiale të lira dhe punë të palodhur për të bërë gjëra që nuk mund t'i kishit më parë Emrat e mi Szehuai dhe unë gjithmonë e gjejmë veten gati për të fjetur, por
Drita e animuar dhe drita e natës: 6 hapa (me fotografi)
Animated Mood Light & Night Light: Duke pasur një magjepsje që kufizohet me obsesionin me dritën, vendosa të krijoj një përzgjedhje të PCB -ve të vogla modulare që mund të përdoren për të krijuar ekrane të dritës RGB të çdo madhësie. Pasi bëra PCB modulare, unë u pengova në idenë e rregullimit të tyre në një
Drita e natës interaktive SpotLight: 4 hapa
Drita e natës interaktive SpotLight: The SpotLight është një dritë nate interaktive e mundësuar nga Arduino, duke marrë një faktor të bukur të formës së bazuar në pug. Drita ka tre veçori ndërvepruese: 1) Futni një monedhë në pjesën e pasme të SpotLight për të ndezur dhe fikur dritat. 2) Kafshojeni SpotLight në ma
Drita interaktive pa prekje: 7 hapa (me fotografi)
Drita interaktive pa prekje: Përshëndetje të gjithëve! Unë do të doja të ndaj projektin ku kam punuar këtu. U frymëzova për të eksperimentuar me prekjen kapacitive përmes një projekti në universitetin tim. Kam mësuar për këtë teknologji përmes udhëzimeve dhe kam përdorur gjërat që mësoj
Drita LED e ambientit të vjetër të TV me Kodi: 7 hapa (me fotografi)
Drita LED e Ambientit të Vjetër të TV Me Kodi: Kjo është një udhëzues për dritën e ambientit me buxhet të ulët. Unë përdor Banana pi për Kodi sepse është më e shpejtë, por thjesht mund ta instaloni në Raspberry pi