Përmbajtje:

HALO: Handy Arduino Lamp Rev1.0 W/NeoPixel: 9 hapa (me fotografi)
HALO: Handy Arduino Lamp Rev1.0 W/NeoPixel: 9 hapa (me fotografi)

Video: HALO: Handy Arduino Lamp Rev1.0 W/NeoPixel: 9 hapa (me fotografi)

Video: HALO: Handy Arduino Lamp Rev1.0 W/NeoPixel: 9 hapa (me fotografi)
Video: DIY HALO Lamp Rev1.0 - Powered by Arduino Nano, 15+ Color Modes 2024, Shtator
Anonim
Image
Image
HALO: Handy Arduino Lamp Rev1.0 W/NeoPixels
HALO: Handy Arduino Lamp Rev1.0 W/NeoPixels
HALO: Handy Arduino Lamp Rev1.0 W/NeoPixels
HALO: Handy Arduino Lamp Rev1.0 W/NeoPixels

Në këtë udhëzues, unë do t'ju tregoj se si të ndërtoni HALO, ose Handy Arduino Lamp Rev1.0.

HALO është një llambë e thjeshtë, e mundësuar nga Arduino Nano. Ka një gjurmë totale prej rreth 2 "me 3", dhe një bazë druri të peshuar për stabilitet ekstrem. Qafa fleksibël dhe 12 NeoPixels super të ndritshëm lejojnë që të ndriçojë me lehtësi çdo detaj në çdo sipërfaqe. HALO përmban dy butona shtytës për të kaluar nëpër mënyra të ndryshme të dritës, nga të cilat 15 janë të programuar paraprakisht. Për shkak të përdorimit të Arduino Nano si procesor, ekziston mundësia që ta riprogramoni me veçori shtesë. Potenciometri i vetëm përdoret për të rregulluar shkëlqimin dhe/ose shpejtësinë me të cilën shfaqet një mënyrë. Një konstruksion i thjeshtë metalik e bën HALO një llambë shumë të qëndrueshme, të përshtatshme për përdorim në çdo punëtori. Lehtësia e përdorimit është e përbërë nga rregullatori i fuqisë në bord i Nano -s, kështu që HALO mund të furnizohet me USB ose prizën standarde të fuçisë 5 mm në pjesën e pasme.

Shpresoj të shoh shumë njerëz që përdorin këto llamba në të ardhmen e afërt, sepse ka kaq shumë mundësi që hapen me këtë dizajn. Ju lutemi lini një votë në Konkursin e Mikrokontrolluesit nëse ju pëlqen kjo ose e shihni të dobishme në një farë mënyre, do ta vlerësoja vërtet.

Para se të hyjmë në këtë Udhëzues, do të doja të them një Faleminderit të shkurtër për të gjithë ndjekësit e mi dhe këdo që ka komentuar, favorizuar ose votuar ndonjëherë për ndonjë nga projektet e mia. Falë jush, kartoni im i udhëzueshëm u bë një sukses i madh, dhe tani jam, duke e shtypur këtë duke arritur afër 100 ndjekës, një arritje e madhe sipas mendimit tim. Unë me të vërtetë e vlerësoj gjithë mbështetjen që marr nga ju djema kur vendos librin tim Ible, dhe kur vjen puna tek ajo, nuk do të isha aty ku jam sot pa ju. Me sa tha, faleminderit, të gjithëve!

SH NOTNIM: Gjatë gjithë këtij Udhëzuesi janë fraza me shkronja të zeza. Këto janë pjesët e rëndësishme të çdo hapi, dhe nuk duhet të injorohen. Kjo nuk jam duke bërtitur ose duke qenë qëllimisht i vrazhdë, unë thjesht po provoj një teknikë të re shkrimi për të theksuar më mirë atë që duhet bërë. Nëse nuk ju pëlqen dhe preferoni se si më parë kisha prirjen të shkruaja hapat e mi, më tregoni në komente dhe do të kthehem në stilin tim të vjetër.

Hapi 1: Mbledhja e materialeve

Mbledhja e materialeve
Mbledhja e materialeve
Mbledhja e materialeve
Mbledhja e materialeve
Mbledhja e materialeve
Mbledhja e materialeve
Mbledhja e materialeve
Mbledhja e materialeve

Sa herë më duhet ta them? Gjithmonë keni atë që ju nevojitet, dhe ju jeni të garantuar të jeni në gjendje të ndërtoni diçka deri në fund.

Shënim: Disa nga këto janë lidhje shoqëruese (të shënuara me "al"), do të marr një rikthim të vogël nëse blini përmes tyre, pa asnjë kosto shtesë për ju. Faleminderit nëse blini përmes lidhjeve

Pjesët:

1x Arduino Nano Nano - al

Potenciometër rrotullues 1x 10k Potenometra 10k 10k - al

Fole 1x 5mm fuçi (e imja riciklohet nga një Arduino Uno e skuqur) Femër Barrel Jack (5 pako) - al

2x butona çasti me 2 kunja 10 pako SPST Çelës butoni-al

12x NeoPixel nga një fije LED 60/metër (çdo ekuivalent, p.sh. WS2812B, do të funksionojë) Adafruit NeoPixels

Një fletë prej alumini 0.5 mm

Qafa fleksibël nga një çakmak fleks i vjetër

Unaza e kapakut të sipërm nga një dritë LED e kabinetit "Stick and Click" LED Cabinet Light - al

Një fletë e vogël prej kompensatë 1/4 inç

Një peshë e rëndë, e sheshtë e metaleve me përmasa (afërsisht) 1.5 "me 2.5" me 0.25"

Teli elektrik bërthamor i bllokuar

Mjetet:

Armë Ngjitës dhe Ngjitës i Nxehtë

Hekuri i saldimit dhe saldimi

Stërvitje me energji pa kabllo dhe copa të ndryshme të kthesës

Thikë X-acto (ose një thikë shërbimi)

Zhveshëset e telave

Pincë

Prerës/prerje telash

Gërshërë për punë të rëndë

Nëse nuk keni peshën e sheshtë të metalit, ju duhet gjithashtu:

1 rrotull saldimi i lirë (jo sendet që do të përdorni për saldim) Saldues i lirë pa plumb

Qiri i alkoolit (ose një ndezës Bunsen)

Një pjatë çeliku të ngurtësuar të vogël që nuk e keni mendjen ta prishni (ose një enë të vogël nëse keni një të tillë)

Një trekëmbësh për pjatën/enën në fjalë (e kam bërë timen me tela çeliku 12 matës)

Një pjatë me bimë argjile (një nga ato gjërat që shkon nën tenxhere)

Disa fletë alumini

SH NOTNIM: Nëse keni një çantë saldimi ose një printer 3D, mund të mos keni nevojë për të gjitha mjetet e listuara këtu.

Hapi 2: Marrja e peshës

Marrja e Peshes
Marrja e Peshes
Marrja e Peshes
Marrja e Peshes
Marrja e Peshes
Marrja e Peshes

Ky është një hap mjaft i vështirë, dhe ju duhet të bëni kujdes ekstrem duke e bërë atë. Nëse keni një peshë të metaleve të rënda ose një magnet të sheshtë neodymium rreth 2.75 "me 1.75" me 0.25 ", unë do të rekomandoja ta përdorni atë në vend (dhe magneti madje do t'ju lejojë të vendosni llambën anash në sipërfaqet metalike!).

Përgjegjësia: Unë nuk jam përgjegjës për ndonjë dëmtim nga ana juaj, kështu që ju lutemi përdorni sensin e shëndoshë

Gjithashtu, bëjeni këtë jashtë mbi një sipërfaqe betoni që nuk do ta keni parasysh nëse digjet pak (kjo është vetëm një masë paraprake). Unë nuk kam fotografi për këtë proces sepse një aparat fotografik do të kishte qenë një shpërqendrim shtesë që unë nuk kisha nevojë ose nuk doja.

Së pari, bëni një myk të vogël nga fletë alumini ose balta e lagur, rreth 2 3/4 inç me 1 3/4 inç me 1/4 inç në dimensionet e brendshme. Mund të jetë një formë vezake si e imja, ose një drejtkëndësh. Përdorni shtresa të shumta petë ose shtresa të trasha argjile.

Vendoseni mykun në pjatën e bimës qeramike dhe mbushni mykun dhe tepsinë me ujë të ftohtë.

Merrni qirinjën tuaj të ndezur me alkool/ndezësin e bunsenit dhe vendoseni enën prej çeliku/kazanin në trekëmbësh kështu që flaka do të ngrohë qendrën e pjatës (kur ndizet). Para se të ndizni ndezësin, sigurohuni që të keni të paktën 1 palë pincë ose darë për përpunimin e metaleve, nëse jo 2.

Ideashtë një ide e mirë të vishni doreza lëkure, mëngë të gjata, pantallona të gjata, këpucë me gishta të mbyllur dhe mbrojtje të syve ndërsa bëni hapat e ardhshëm

Mbështilleni dhe prishni një bandë të saldimit të lirë nga bobina dhe vendoseni në enën e çelikut, pastaj ndizni ndezësin. Prisni derisa spiralja të shkrihet plotësisht, pastaj filloni të ushqeni pjesën tjetër të saldimit në pjatë me një ritëm të moderuar. Nëse salduari ka ndonjë kolofon në të, ai mund të digjet spontanisht në nxehtësi, duke prodhuar një flakë të verdhë të zbehtë dhe tym të zi. Mos u shqetësoni, kjo më ka ndodhur shumë herë dhe është krejt normale.

Vazhdoni ta ushqeni salduesin në gjellë derisa pjesa e fundit e saj të shkrihet.

Lërini që flakët nga kolofoni të digjen të shuhen plotësisht, dhe përdorni pincën/darë për të kapur pjatën dhe për të rrotulluar butësisht metalin e shkrirë brenda duke e mbajtur me kujdes në flakë.

Pasi të jeni të sigurt se e gjithë saldimi është lëngëzuar plotësisht dhe në një temperaturë të mirë të nxehtë, hiqeni shpejt dhe me kujdes nga flaka dhe derdhni në myk. Do të ketë një zhurmë të fortë dhe avull pasi një pjesë e ujit avullohet dhe pjesa tjetër detyrohet të dalë nga myku për t'u zëvendësuar me saldim të shkrirë.

Lëreni lidhësin të ftohet, fikeni ndezësin/fikni qirinjën tuaj dhe vendoseni enën prej çeliku diku të sigurt për tu ftohur. Ju mund të dëshironi të derdhni ujë të ftohtë mbi saldatorin ftohës për të shpejtuar ftohjen dhe për ta forcuar atë më tej. (Uji i ftohtë e bën pjesën e jashtme të ftohet më shpejt se brenda, duke krijuar tension të brendshëm që e bën metalin më të fortë dhe më të ngurtë, i ngjashëm me rënien e Princit Rupert.) Ju gjithashtu mund të kaloni ujë mbi pjatën tuaj metalike, por kjo do të rezultojë që ajo të bëhet e brishtë, veçanërisht nëse bëhet shumë herë.

Pasi saldimi të jetë ftohur plotësisht (rreth 20 minuta për të qenë i sigurt), hiqeni atë nga myku i fletës.

I imi përfundoi më i trashë në njërën anë se tjetra, kështu që unë përdor një çekiç për ta barazuar atë dhe për të rrafshuar skajet (duke rezultuar në formën që shihni në fotografi). Më pas e lëmova lehtë nën ujë të rrjedhshëm për ta lustruar dhe e lash mënjanë për më vonë.

Hapi 3: Ndërtimi i Strehimit Elektronik, Hapi 1

Ndërtimi i Strehimit Elektronik, Hapi 1
Ndërtimi i Strehimit Elektronik, Hapi 1
Ndërtimi i Strehimit Elektronik, Hapi 1
Ndërtimi i Strehimit Elektronik, Hapi 1
Ndërtimi i Strehimit Elektronik, Hapi 1
Ndërtimi i Strehimit Elektronik, Hapi 1
Ndërtimi i Strehimit Elektronik, Hapi 1
Ndërtimi i Strehimit Elektronik, Hapi 1

Këto janë pjesët për guaskën që do të strehojnë Nano, do të montojnë ndërfaqen dhe në thelb është ajo që mban Llambën HALO së bashku. Unë e bëra timen me aluminin tim 0.5mm dhe ngjitësin e nxehtë, por nëse keni një printer 3D (diçka që jam përpjekur ta marr për dyqanin tim për një kohë) kam bërë një version. STL në Tinkercad të cilin e bashkangjita këtu për ju Shkarko. Meqenëse unë nuk kam një printer vetë, nuk kam qenë në gjendje të testoj modelin e printimit për të parë nëse gjithçka printohet siç duhet, por mendoj se duhet të jetë mirë nëse shtoni strukturat e duhura mbështetëse në prerësin tuaj. Ju gjithashtu mund të kopjoni dhe modifikoni skedarin burimor këtu nëse keni nevojë ose dëshironi një dizajn ose estetikë paksa të ndryshme.

Dimensionet në fakt rrjedhin nga pesha e metaleve që unë hodha për veten jashtë saldimit, jo nga madhësia e elektronikës, por gjithsesi doli mjaft mirë dhe dimensionet janë mjaft optimale.

Fotografitë përshkruajnë një rend paksa të ndryshëm të funksionimit me atë që do të shkruaj këtu, kjo sepse kam hartuar një metodë të përmirësuar bazuar në rezultatet e metodës sime origjinale.

Nëse jeni duke u montuar nga fletë metalike si unë, këtu është ajo që duhet të bëni:

Hapi 1: Pllakat e Fytyrës

Pritini dy forma identike gjysmë-rrethore rreth 1.5 "të larta dhe 3" të gjera. (Unë e kam punuar me dorën time, kështu që ato duken pak si pjesa e përparme e një kuti xhuxh).

Në njërën nga dy pllakat, shponi tre vrimat për butonat dhe potenciometrin. Të miat ishin secili 1/4 inç në diametër. Këto mund të jenë në çdo plan, por unë preferoj që potenciometri im të jetë pak i ngritur në qendër, me butonat në të dyja anët që formojnë një trekëndësh isosceles. Gjatë shpimit, unë gjithmonë bëj një vrimë të vogël pilot para se të shkoj në madhësinë e kërkuar, kjo ndihmon në qendër të vrimave dhe i bën ato pak më të pastra.

Hapi 2: Mbulesa e Harkuar

Përkuluni mbi një copë alumini që të përshtatet rreth kurbës së njërës prej pllakave të fytyrës dhe shënoni gjatësinë e duhur të buzës.

Pritini një shirit të kësaj gjatësi dhe rreth 2 inç të gjerë, dhe formojeni atë në një hark që përputhet me formën e kurbës së pllakave të fytyrës në të dyja anët.

Gjeni pikën qendrore në pjesën e sipërme të kurbës dhe shponi një vrimë për t'iu përshtatur qafës fleksibël të çakmakut. Unë kompensova pjesën e pasme në timen sepse llamba ime kryesisht do të ketë qafën të përkulur përpara gjatë përdorimit, kështu që doja t'i shtoja asaj një kundërpeshë. Qafa ime fleksibël ishte pak më shumë se 1/4 e një inç në diametër, kështu që unë përdor një bit 1/4 inç (copa më e madhe e kthesës që kam në pronësi që është nën 3/4 e një inç) dhe vetëm e kthesa me kujdes dhe e shtrembërova stërviteni për të 'nxjerrë' vrimën derisa qafa të përshtatet.

Tani që kemi pjesët për guaskën, hapi tjetër është të shtojmë elektronikë dhe ta bashkojmë!

Hapi 4: Ndërtimi i Strehimit Elektronik, Hapi 2

Ndërtimi i Strehimit Elektronik, Hapi 2
Ndërtimi i Strehimit Elektronik, Hapi 2
Ndërtimi i Strehimit Elektronik, Hapi 2
Ndërtimi i Strehimit Elektronik, Hapi 2
Ndërtimi i Strehimit Elektronik, Hapi 2
Ndërtimi i Strehimit Elektronik, Hapi 2
Ndërtimi i Strehimit Elektronik, Hapi 2
Ndërtimi i Strehimit Elektronik, Hapi 2

Tani shtojmë butonat dhe potenciometrin, dhe i vendosim të gjitha së bashku.

Hapi 1: Butonat dhe bulonat

Zhvidhosni arrat gjashtëkëndore nga butonat dhe potenciometri juaj. Duhet të ketë një pajisje unazë kapëse nën arrë, lëreni këtë në vend.

Vendoseni secilin nga përbërësit përmes vrimës së tij përkatëse, pastaj vidhosni arrat përsëri për të siguruar secilën në vend. Shtrëngoni arrat deri në pikën ku të jeni të sigurt se secili përbërës është plotësisht i sigurt.

Hapi 2. Qafa Fleks

Kaloni qafën e përkulur përmes vrimës në pjesën e sipërme të pjesës së lakuar. Ngjitës ose saldim i nxehtë (nëse keni pajisje) qafën në mënyrë të sigurt në vend.

Nëse përdorni zam të nxehtë siç jam unë, është një ide e mirë ta ngjisni me shumë zam në të dyja anët e përhapura në një zonë të madhe për të parandaluar që zamja të zbërthehet më vonë.

Hapi 3: Asambleja e Shell (Nuk zbatohet për guaskën e printuar 3D)

Duke përdorur ose shufrën e saldimit ose ngjitësin e nxehtë, lidhni pllakat e përparme dhe të pasme të fytyrës në vendet e tyre përkatëse në kapakun e harkuar. M'u deshën disa përpjekje që zamja ime të ngjiste, dhe si më parë, truku është të përdor shumë zam në të dy anët e nyjës, ashtu si qafa. Sa më e madhe zona e mbuluar nga zam, aq më mirë do të ngjitet.

Tani që kemi guaskën, mund të vazhdojmë të shtojmë të gjitha bitët e qarkut.

Hapi 5: Shtimi i pajisjeve elektronike

Shtimi i pajisjeve elektronike
Shtimi i pajisjeve elektronike
Shtimi i pajisjeve elektronike
Shtimi i pajisjeve elektronike
Shtimi i pajisjeve elektronike
Shtimi i pajisjeve elektronike

Dhe këtu është pjesa argëtuese: Saldimi! Javët e fundit sinqerisht jam lodhur paksa nga saldimi, sepse e kam bërë kaq shumë kohët e fundit për të provuar dhe përfunduar një projekt tjetër që duhet të bëj së shpejti (mbajeni syrin për një version të ri të radikalizuar të ekranit tim robotik platforma), duke rezultuar në prishjen e një hekuri dhe marrjen e një tjetri … Gjithsesi, nuk ka shumë për të bashkuar këtu, kështu që kjo duhet të jetë mjaft e drejtpërdrejtë.

Shënim: Nëse Nano juaj ka tituj pin tashmë në të, unë do të rekomandoja t'i rrinim ato për këtë projekt, ata vetëm do të pengojnë.

Ekziston një diagram në fotot e mësipërme, mund ta ndiqni nëse dëshironi.

Hapi 1: Ndërfaqja

Nga secili ndërprerës, lidhni një tel nga një kunj i vetëm në një kunj anësor të potenciometrit. Lidhni një tel nga e njëjta kunj anësor në një kunj Ground në Nano.

Lidhni një tel nga kunja qendrore e potenciometrit në A0 në Nano.

Bashkoni një tel nga kunja e palidhur e cilësdo kaloni në A1 në Nano.

Bashkoni një tel nga kunja e palidhur në çelësin tjetër në A2 në Nano.

Shënim: Nuk ka rëndësi se cili ndërprerës është cili, ju mund t'i ndryshoni ato shumë lehtë në kod, përveç faktit që njëri ndërprerës thjesht bën të kundërtën e tjetrit.

Pritini një gjatësi teli 4 inç më të gjatë se qafa e përkulur, dhe hiqini të dyja anët. Duke përdorur një Sharpie, shënoni njërën anë me një vijë të vetme.

Ngjitni një tel në kunjin e fundit të palidhur të potenciometrit, ktheni skajin e palidhur të këtij teli së bashku me skajin e pashënuar të telit nga nënstepi i fundit.

Ngjiteni këtë bashkim në 5V në Nano.

Hapi 2: Ekrani dhe telat e energjisë

Pritini 2 gjatësi teli 4 inç më të gjatë se qafa e përkulur dhe hiqni të dy skajet.

Duke përdorur një Sharpie, shënoni skajet e secilit tel, një tel me 2 rreshta dhe një me 3.

Lidhni tela me 2 rreshta në pinin dixhital 9 në Nano.

Në prizën tuaj të fuçisë 5 mm, lidhni një tel nga kunja qendrore (pozitive) në Vin në Nano.

Lidhni një tel tjetër në një kunj anësor (të tokëzuar/negativ) të folesë së fuçisë.

Ktheni telin e gjatë me 3 së bashku me tela nga kunja anësore e folesë së fuçisë.

Ngjitini këto tela në kunjin e hapur GND në Nano.

Izoloni lidhjet me shirit elektrik ose ngjitës të nxehtë aty ku është e nevojshme.

Hapi 3: Prerja e vrimave (vetëm në versionin metalik, nëse e keni printuar 3D kapakun duhet të jeni mirë)

Duke përdorur një stërvitje dhe një thikë X-acto ose Utility, bëni me kujdes një vrimë në anën e kapakut për portën USB të Nano.

Bëni një vrimë tjetër në madhësinë e faqes së prizës së fuçisë në pjesën e pasme të kapakut, mundësisht më afër anës përballë vrimës për portën USB.

Hapi 4: Montimi i përbërësve

Furnizoni tre telat e gjatë përmes qafës së përkulur dhe nga ana tjetër.

Duke përdorur shumë zam të nxehtë, montoni folenë e fuçisë në vend me kunjat që shikojnë në pjesën e sipërme të kapakut.

Përsëri duke përdorur shumë zam të nxehtë, montoni Nano në vend, me butonin e rivendosjes të kthyer poshtë dhe portën USB në folenë e tij. Unë bëra një "urë me zam të nxehtë" midis prizës së fuçisë dhe Nano, e cila bën që secili ta mbajë tjetrin fort në vend.

Tani mund të vazhdojmë të bëjmë bazën e ponderuar!

Hapi 6: Baza e Ponderuar

Baza e Ponderuar
Baza e Ponderuar
Baza e Ponderuar
Baza e Ponderuar
Baza e Ponderuar
Baza e Ponderuar

Unë jam i sigurt në aftësitë e mia të saldimit dhe e kam planifikuar mirë këtë, kështu që unë shkova përpara dhe shtova bazën para testimit të kodit. Nëse jeni më pak të sigurt në aftësitë tuaja, unë do të sugjeroja të kaloni këtë hap dhe t'i ktheheni atij në fund kur të dini që gjithçka po funksionon.

Nëse keni bërë versionin e printuar 3D, mund të kaloni hapin e parë dhe të kaloni në të dytin.

Hapi 1: Druri

Nga një fletë kompensatë 1/4 inç, prerë një bazë rreth 3 inç me 2 inç.

Lëmojini skajet për t'i zbutur ato dhe për të hequr gërvishtjet.

Hapi 2: Pesha

Së pari, siguroni peshën tuaj të zgjedhur, pavarësisht se një magnet, metal, ose ai i saldimit me porosi, përshtatet brenda skajeve të mbulesës metalike që kemi bërë. I imi ishte pak i madh në një drejtim, kështu që u rruaj pak nga ana me një thikë X-acto. Nëse e juaja nuk është lloji ku mund ta bëni këtë, mund t'ju duhet të ngatërroheni me një model të ndryshëm bazë.

Ngjiteni nxehtësisht peshën tuaj në qendër të copës së kompensatës, ose në rastin e dizajnit të printuar 3D, në zonën qendrore "tabaka" që kam projektuar për këtë qëllim.

Hapi 3: Baza

Vendoseni kapakun metalik mbi peshën dhe vendoseni në bazën e drurit. (Në rastin e modelit të printuar 3D, përshtateni atë në brazdat e bëra paraprakisht.)

Sigurohuni që pesha të mos ndërhyjë në asnjë nga pajisjet elektronike

Përdorni zam të nxehtë për të siguruar bazën në vend. Përdorni sa duhet për të siguruar një lidhje të fortë.

Tani që e kemi bërë kutinë tonë të kontrollit tërësisht, le të kalojmë te dritat.

Hapi 7: Unaza Halo NeoPixel

Unaza Halo NeoPixel
Unaza Halo NeoPixel
Unaza Halo NeoPixel
Unaza Halo NeoPixel
Unaza Halo NeoPixel
Unaza Halo NeoPixel
Unaza Halo NeoPixel
Unaza Halo NeoPixel

Frymëzimi për emrin e kësaj llambë, kjo pjesë është unaza e aureolës NeoPixel që ne do të përdorim si burimi ynë i ndriçimit. Kjo pjesë e veçantë mund të modifikohet ose zëvendësohet me ndonjë NeoPixel ose unazë LED të adresueshme individualisht, nëse dëshironi.

Hapi 1: Saldimi

Pritini një rrip NeoPixels 12 LED në gjatësi.

Lidhni kunjin GND në tel nga qafa e përkulur që ka 3 rreshta.

Ngjiteni kunjin Din tela që ka 2 rreshta.

Lidhni kunjin 5V tela që ka 1 rresht.

Hapi 2: Testoni Dritat

Shkarkoni dhe instaloni bibliotekën Adafruit_NeoPixel dhe hapni kodin "strandtest".

Ndryshoni kodin PIN konstant në 9.

Ndryshoni vijën ku përcaktohet shiriti në mënyrë që të konfigurohet për 12 LED.

Ngarko kodin në Nano dhe sigurohu që të gjitha LED -et tuaja të funksionojnë siç duhet.

Zëvendësoni çdo LED të gabuar me ato të punës, derisa të funksionojë i gjithë shiriti.

Hapi 3: Unaza

Merrni unazën e sipërme nga një dritë "Stick and Click" dhe ndërprisni çdo montim me vidë në buzën e brendshme.

Pritini një nivel të vogël në buzë për telat nga shiriti.

Qëroni kapakun për shiritin ngjitës në pjesën e prapme të NeoPixels (nëse ka) dhe ngjitini ato brenda unazës, me secilin fund të shiritit pikërisht në atë nivel që kemi bërë.

Përdorni zam të nxehtë për të siguruar fort skajet e shiritit

Pasi zamja të jetë ftohur plotësisht, provoni sërish pikselët. Kjo është për t'u siguruar që askush nuk është i rrezikshëm në lidhje me nxehtësinë dhe kaçurrelat (disa nga të miat ishin).

Hapi 4: Montoni

Pritini dy drejtkëndësha të vegjël prej druri 1/4 inç, rreth lartësisë së unazës dhe 1 2/3 herë më të gjerë.

Ngjitini këto paralelisht me njëra -tjetrën në të dyja anët e telave nga unaza, duke mbushur hendekun dhe duke mbuluar telat mes tyre plotësisht me zam.

Shtyjeni me kujdes çdo gjatësi të tepërt të telit përsëri në qafën e përkulur, dhe pastaj ngjitni pjesët e drurit në fund të qafës, duke përdorur shumë zam dhe duke mbushur me kujdes çdo boshllëk (pa e mbushur qafën me zam).

Hapi 6: Përfundimi

Ju mund të pikturoni unazën dhe të montoni çdo ngjyrë nëse dëshironi, unë preferova përfundimin e argjendtë kështu që unë përdor vetëm një Sharpie për të mbuluar logon që ishte (e bezdisshme) e shtypur në unazë. E njëjta gjë vlen edhe për pjesën tjetër të llambës.

Tani mund të vazhdojmë të përfundojmë me kodin përfundimtar!

Hapi 8: Kodet dhe Testet

Kodet dhe Testet
Kodet dhe Testet
Kodet dhe Testet
Kodet dhe Testet

Pra tani gjithçka që duhet të bëjmë është të programojmë llambën dhe ta provojmë atë. Bashkangjitur është versioni aktual i kodit (rev1.0), unë e kam testuar këtë kod mjaft gjerësisht dhe funksionon shumë mirë. Unë jam duke punuar në një rev2.0 ku butonat janë konfiguruar si ndërprerje të jashtme në mënyrë që mënyrat të mund të ndërrohen më lehtë midis tyre, por ky version është i gabuar dhe ende nuk është gati për lëshim. Me versionin aktual ju duhet ta mbani butonin derisa të ekzekutojë lakin Debounce dhe të njohë ndryshimin e gjendjes, i cili mund të jetë i bezdisshëm në sythe më të gjata "Dinamike". Më poshtë është kodi me disa shpjegime të shkruara (ka të njëjtat shpjegime në versionin e shkarkueshëm).

#përfshi #ifdef _AVR_ #përfshi #endif

#përcaktoni PIN 9

#përcaktoni POT A0 #përcaktoni BUTTON1 A1 #përcaktoni BUTTON2 A2

// Parametri 1 = numri i pikseleve në shirit

// Parametri 2 = Numri i kunjit Arduino (shumica janë të vlefshme) // Parametri 3 = flamujt e tipit pixel, shtoni së bashku sipas nevojës: // NEO_KHZ800 800 KHz bitstream (shumica e produkteve NeoPixel me WS2812 LED) // NEO_KHZ400 400 KHz (klasike ' v1 '(jo v2) pikselë FLORA, drejtues WS2811) // Pikselët NEO_GRB janë të lidhur për bitstream GRB (shumica e produkteve NeoPixel) // Pixelët NEO_RGB janë të lidhur për bitstream RGB (v1 pixel FLORA, jo v2) // NEO_RGBW Pixels janë të lidhur me tela për Rrjedha bit RGBW (produktet NeoPixel RGBW) Adafruit_NeoPixel halo = Adafruit_NeoPixel (12, PIN, NEO_GRB + NEO_KHZ800);

// Dhe tani, një mesazh sigurie nga miqtë tanë në Adafruit:

// E RORTNDSISHME: Për të zvogëluar rrezikun e djegies së NeoPixel, shtoni kondensator 1000 uF

// kalon fuqia e pikselit, shtoni rezistencë 300 - 500 Ohm në hyrjen e të dhënave të pikselit të parë // dhe minimizoni distancën midis Arduino dhe pikselit të parë. Shmangni lidhjen // në një qark të drejtpërdrejtë … nëse duhet, lidheni së pari GND.

// Variablat

butoni int Shteti 1; int buttonState2; // leximi aktual nga kunja hyrëse int lastButtonState1 = LOW; // leximi i mëparshëm nga kunja hyrëse int lastButtonState2 = LOW; modaliteti int; // mënyra e dritave tona, mund të jetë një nga 16 cilësimet (0 deri në 15) int brightVal = 0; // shkëlqimi/ shpejtësia, siç përcaktohet nga potenciometri

// variablat e mëposhtëm janë të gjatë sepse koha, e matur në milisekonda, // shpejt do të bëhet një numër më i madh sesa mund të ruhet në një int. gjatë lastDebounceTime = 0; // hera e fundit që kunja e daljes u ndryshua me debounce të gjatëVonesë = 50; // koha e zbardhjes; rritet nëse prodhimi dridhet

void debounce () {

// lexoni gjendjen e kalimit në një ndryshore lokale: int leximi1 = digitalRead (BUTTON1); int leximi2 = digitalRead (BUTTON2); // Nëse ndonjëri nga butonat ndryshoi, për shkak të zhurmës ose shtypjes: nëse (leximi1! = LastButtonState1 || leximi2! = LastButtonState2) {// rivendosni kohëmatësin e debunimit lastDebounceTime = millis (); } if ((millis () - lastDebounceTime)> debounceDelay) {// nëse gjendja e butonit ka ndryshuar përfundimisht për shkak të shtypjes/lëshimit: nëse (leximi1! = buttonState1) {buttonState1 = leximi1; // vendoseni si lexim nëse ndryshon nëse (buttonState1 == LOW) {// këto janë vendosur si modalitet aktiv i çelsave të ulët ++; nëse (modaliteti == 16) {mënyra = 0; }}} if (leximi2! = buttonState2) {buttonState2 = leximi2; nëse (buttonState2 == LOW) {mode = mode - 1; nëse (modaliteti == -1) {mënyra = 15; }}}} // ruani leximin për herën tjetër përmes lakut lastButtonState1 = leximi1; lastButtonState2 = leximi2; }

void getBright () {// kodi ynë për të lexuar potenciometrin, jep një vlerë midis 0 dhe 255. Përdoret për të vendosur shkëlqimin në disa mënyra dhe shpejtësi në të tjerat.

int potVal = analogRead (POT); brightVal = hartë (potVal, 0, 1023, 0, 255); }

// Këtu janë mënyrat tona të ngjyrave. Disa nga këto rrjedhin nga shembulli më i çuditshëm, të tjerët janë origjinalë.

// Plotësoni pikat njëra pas tjetrës me një ngjyrë (fshirje ngjyrash, e nxjerrë nga strandtest)

ngjyra e pavlefshme Fshij (uint32_t c, uint8_t pres) {për (uint16_t i = 0; i

// funksionet e ylberit (gjithashtu rrjedhin nga strandtest)

ylber i pavlefshëm (uint8_t prit) {

uint16_t i, j;

për (j = 0; j <256; j ++) {për (i = 0; i

// Pak më ndryshe, kjo e bën ylberin të shpërndarë në mënyrë të barabartë në të gjithë

void rainbowCycle (uint8_t prisni) {uint16_t i, j;

për (j = 0; j <256*5; j ++) {// 5 cikle të të gjitha ngjyrave në timon për (i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, Wheel (((i * 256 / halo.numPixels ()) + j) & 255)); } halo.shfaq (); vonesë (pritje); }}

// Fut një vlerë 0 deri në 255 për të marrë një vlerë ngjyrash.

// Ngjyrat janë një kalim r - g - b - përsëri në r. uint32_t Rrota (byte WheelPos) {WheelPos = 255 - WheelPos; nëse (WheelPos <85) {kthehu halo. Color (255 - WheelPos * 3, 0, WheelPos * 3); } nëse (WheelPos <170) {WheelPos -= 85; halo e kthimit. Ngjyra (0, WheelPos * 3, 255 - WheelPos * 3); } WheelPos -= 170; halo e kthimit. Ngjyra (WheelPos * 3, 255 - WheelPos * 3, 0); }

void setup () {

// Kjo është për Trinket 5V 16MHz, ju mund t'i hiqni këto tre rreshta nëse nuk jeni duke përdorur një Trinket #nëse është përcaktuar (_AVR_ATtiny85_) nëse (F_CPU == 16000000) clock_prescale_set (clock_div_1); #endif // Fundi i xhingël kodit të veçantë pinMode (POT, INPUT); pinMode (BUTTON1, INPUT_PULLUP); pinMode (BUTTON2, INPUT_PULLUP); pinMode (PIN, OUTPUT); Serial.filloj (9600); // korrigjimi i gjërave halo.begin (); halo.shfaq (); // Filloni të gjithë pikselët në "jo"}

lak void () {

debounce ();

//Serial.println(mode); // më shumë korrigjim //Serial.println(lastButtonState1); //Serial.println(lastButtonState2);

nëse (mënyra == 0) {

getBright (); për (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (brightVal, brightVal, brightVal)); // vendos të gjitha pikselët në të bardhë} halo.show (); }; nëse (modaliteti == 1) {getBright (); për (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (brightVal, 0, 0)); // vendos të gjitha pikselët në të kuqe} halo.show (); }; nëse (modaliteti == 2) {getBright (); për (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (0, brightVal, 0)); // vendos të gjitha pikselët në green} halo.show (); }; nëse (modaliteti == 3) {getBright (); për (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (0, 0, brightVal)); // vendosni të gjithë pikselët në blu} halo.show (); }; nëse (modaliteti == 4) {getBright (); për (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (0, brightVal, brightVal)); // vendos të gjitha pikselët në cian} halo.show (); }; nëse (modaliteti == 5) {getBright (); për (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (brightVal, 0, brightVal)); // vendosni të gjithë pikselët në vjollcë/magenta} halo.show (); }; nëse (modaliteti == 6) {getBright (); për (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (brightVal, brightVal, 0)); // vendosni të gjithë pikselët në portokalli/të verdhë} halo.show (); }; if (mode == 7) {// tani modalitetet dinamike getBright (); colorWipe (halo. Color (brightVal, 0, 0), 50); // E kuqe}; nëse (modaliteti == 8) {getBright (); colorWipe (halo. Color (0, brightVal, 0), 50); // E gjelbër}; nëse (modaliteti == 9) {getBright (); colorWipe (halo. Color (0, 0, brightVal), 50); // Blu}; nëse (modaliteti == 10) {getBright (); colorWipe (halo. Color (brightVal, brightVal, brightVal), 50); // e bardhë}; nëse (modaliteti == 11) {getBright (); colorWipe (halo. Color (brightVal, brightVal, 0), 50); // portokalli/e verdhë}; nëse (modaliteti == 12) {getBright (); colorWipe (halo. Color (0, brightVal, brightVal), 50); // cian}; nëse (modaliteti == 13) {getBright (); colorWipe (halo. Color (brightVal, 0, brightVal), 50); // vjollce/magenta}; nëse (modaliteti == 14) {// dy të fundit janë kontrolli i shpejtësisë, sepse shkëlqimi është dinamik getBright (); ylber (i ndritshëmVal); }; nëse (modaliteti == 15) {getBright (); rainbowCycle (brightVal); }; vonesa (10); // lejoni pak pushim procesorit}

Hapi 9: Finalja e Madhe

Finalja e Madhe
Finalja e Madhe

Dhe tani ne kemi një llambë të vogël fantastike, super të ndritshme!

Mund ta modifikoni më tej nga këtu, ose ta lini ashtu siç është. Ju mund të ndryshoni kodin, ose madje të shkruani një të ri plotësisht. Mund ta zmadhoni bazën dhe të shtoni bateri. Mund të shtoni një tifoz. Mund të shtoni më shumë NeoPixels. Lista e gjithçkaje që mund të bëni me këtë është pothuajse e pafundme. Unë them "pothuajse" sepse jam shumë i sigurt se ne ende nuk kemi teknologjinë për ta kthyer këtë në një gjenerator mini portali (për fat të keq), por përveç gjërave të tilla, kufiri i vetëm është imagjinata juaj (dhe në një farë mase, siç kam gjetur kohët e fundit, mjetet në punëtorinë tuaj). Por nëse nuk keni mjete, mos lejoni që kjo t'ju ndalojë, nëse vërtet dëshironi të bëni diçka, gjithmonë ekziston një mënyrë.

Kjo është pjesë e qëllimit të këtij projekti, për t’i dëshmuar vetes (dhe në një masë më të vogël, botës) se mund të bëj gjëra të dobishme që do të donin edhe njerëzit e tjerë, edhe nëse gjithçka që kam është një grumbull i vërtetë junk i vjetër dhe i braktisur komponentë dhe një kosh furnizimesh Arduino.

Do të largohem këtu, sepse mendoj se ky doli mjaft mirë. Nëse keni një sugjerim për përmirësim, ose një pyetje në lidhje me metodat e mia, ju lutemi lini një koment më poshtë. Nëse e keni bërë këtë, bëni një fotografi, të gjithë duam ta shohim!

Ju lutemi mos harroni të Votoni nëse ju pëlqen kjo!

Si gjithmonë, këto janë projektet e Dangerously Explosive, misioni i tij gjatë gjithë jetës, "Të ndërtosh me guxim atë që dëshiron të ndërtosh, dhe më shumë!"

Ju mund të gjeni pjesën tjetër të projekteve të mia këtu.

Faleminderit për leximin, dhe Gëzuar bërjen!

Recommended: