Përmbajtje:

Sequencer LED i programueshëm RGB (duke përdorur Arduino dhe Adafruit Trellis): 7 hapa (me fotografi)
Sequencer LED i programueshëm RGB (duke përdorur Arduino dhe Adafruit Trellis): 7 hapa (me fotografi)

Video: Sequencer LED i programueshëm RGB (duke përdorur Arduino dhe Adafruit Trellis): 7 hapa (me fotografi)

Video: Sequencer LED i programueshëm RGB (duke përdorur Arduino dhe Adafruit Trellis): 7 hapa (me fotografi)
Video: TX81Z Arduino MIDI-контроллер/редактор 2024, Korrik
Anonim
Image
Image
Lidhni bordin e shoferëve
Lidhni bordin e shoferëve

Djemtë e mi donin shirita LED me ngjyra për të ndriçuar tavolinat e tyre, dhe unë nuk doja të përdorja një kontrollues të konservuar të shiritit RGB, sepse e dija që ata do të mërziteshin me modelet fikse që kanë këta kontrollues. Mendova gjithashtu se do të ishte një mundësi e shkëlqyeshme për të krijuar një mjet mësimor për ta që ata mund të përdorin për të mprehur aftësitë e programimit dhe elektronikës që unë u kam mësuar atyre. Ky është rezultati.

Unë do t'ju tregoj se si të ndërtoni këtë kontrollues të thjeshtë, të programueshëm RGB LED, duke përdorur një Arduino Uno (ose Nano), një Adafruit Trellis dhe një pjesë të vogël të pjesëve të tjera.

Adafruit Trellis është një nga lodrat e mia të preferuara të reja nga Lady Ada dhe ekuipazhi. Para së gjithash, është vetëm 9.95 dollarë për tabelën, dhe 4.95 dollarë të tjerë për jastëkun e elastomerit silikoni (çmimet që nga ky shkrim). Kjo është një marrëveshje e madhe për një matricë 4x4 me 16 butona me aftësi LED. Nuk vjen me asnjë LED të montuar, ju duhet t'i furnizoni ato, por kjo ju jep fleksibilitet për të zgjedhur ngjyrat që dëshironi (dhe mban koston dhe kompleksitetin në krahasim me ndërtimin në LED të adresueshëm). Për të ndërtuar këtë projekt si imi, do t'ju duhet një grusht LED 3mm. Kam përdorur 2 të kuqe, 2 jeshile, 2 blu, 4 të verdhë dhe 6 të bardhë.

Trellis përdor I2C për të komunikuar, kështu që kërkon vetëm dy kunja I/O (të dhëna dhe orë) për të kontrolluar 16 butona dhe 16 LED.

Ju mund të bëni pjesën harduerike të këtij projekti në një tabelë të vogël proto, e cila është mënyra se si e bëra unë prototipin tim. Unë shpejt kuptova se kisha nevojë për diçka më të pastër dhe më të përmbajtur në tavolinat e tyre (një Arduino dhe proto e zhveshur që përplaseshin përreth do të ishte shumë e brishtë), kështu që bëra mburojën time për të drejtuar shiritat LED. Udhëzimet dhe skedarët për ndërtimin e mburojës përfshihen në hapin e fundit.

Shoferi përdor tre IRLB8721 MOSFET dhe tre rezistorë. Dhe sigurisht, do t'ju duhet një shirit LED për të përzënë; pothuajse çdo shirit LED i thjeshtë 12V RGB do të bëjë. Këto janë LED të thjeshta, si SMD 5050, jo të zbukuruara me adresim individual (pa NeoPixels, etj.)-ky është një projekt tjetër! Ju gjithashtu keni nevojë për një furnizim me energji 12V mjaft të madhe për të përzënë numrin e LED -ve që keni ndërmend të përdorni.

Pra, për të përmbledhur, këtu janë nevojat themelore të harduerit për këtë projekt:

  • Një Arduino Uno ose Nano (këto udhëzime janë për Uno me kokë femra të instaluara, por Nano në një pjatë funksionon mirë) (Adafruit, Amazon, Mouser);
  • Një dërrasë Adafruit Trellis dhe jastëk me butona silikoni (Adafruit);
  • Tre MOSFET të kanalit N të IRLB8721 (Adafruit, Amazon, Mouser);
  • Tre rezistenca 1K (Amazon, Mouser);
  • Tre rezistencë 220 ohm (Amazon, Mouser)
  • Një tabelë e vogël proto (e para ime ishte 1/4 e madhësisë-zgjidhni çdo madhësi me të cilën mund të punoni të qetë) (Adafruit, Amazon);
  • Një shirit LED 12V RGB (SMD 5050) (Adafruit, Amazon);
  • Furnizimi me energji 12V - zgjidhni një fuqi të përshtatshme për numrin e LED -ve që planifikoni të drejtoni.

Mohim i detyrueshëm: lidhjet e mësipërme janë dhënë për lehtësinë tuaj dhe nuk janë një miratim i ndonjë produkti ose shitësi; as nuk përfitoj nga ndonjë blerje e bërë në këto lidhje. Nëse keni shitës që ju pëlqejnë më shumë, sigurohuni që t'i mbështesni ata!

Le të fillojmë…

Hapi 1: Lidhni bordin e shoferëve

Lidhni bordin e shoferëve
Lidhni bordin e shoferëve

Këtu është qarku i shoferit LED. Veryshtë shumë e thjeshtë. Përdor një MOSFET të kanalit N IRBLxxx për çdo kanal në shiritin LED. Shiriti LED është anodë e zakonshme, që do të thotë +12V dërgohet në shiritin LED, dhe kanalet LED të kuqe, jeshile dhe blu kontrollohen duke siguruar terren në lidhjen përkatëse me shiritin. Pra, ne do të lidhim kullimin e MOSFET -ve me kanalet me ngjyra LED dhe burimin me tokën. Portat do të lidhen me daljet dixhitale Arduino, dhe rezistorët ofrojnë një tërheqje që siguron që çdo MOSFET të ndizet ose fiket plotësisht sipas nevojës.

Arduino ofron modulim të gjerësisë së pulsit në disa nga daljet e tij dixhitale, kështu që ne do t'i përdorim ato dalje (veçanërisht D9, D10, D11) në mënyrë që intensiteti i secilit kanal ngjyrash të kontrollohet.

Nëse jeni të hutuar se çfarë të lidhni ku në MOSFET IRLB8721, mbani një në dorën tuaj me pjesën e përparme përballë jush siç tregohet në foton më sipër. Kunja në të majtë (kunja 1) është porta dhe do të lidhet me një kunj dalës dixhital Arduino dhe rezistencën (skaji tjetër i rezistencës duhet të lidhet me tokën). Kunja në qendër (kunja 2) është kullimi dhe lidhet me kanalin e ngjyrave të shiritit LED. Kunja në të djathtë (kunja 3) është burimi dhe është e lidhur me tokën. Sigurohuni që të mbani shënime se cili tranzistor lidhet me cilin kanal ngjyrash LED.

Unë nuk do të hyj në detajet se si të bashkoj proto bordet. Sinqerisht, e urrej dhe nuk jam i mirë në të. Por për mirë ose për keq, funksionon, dhe është një mënyrë e shpejtë dhe e ndyrë për të bërë një prototip të fortë ose të vetëm. Tabela ime e parë është treguar këtu.

Ju gjithashtu mund ta bëni këtë në tryezë. Sigurisht që do të ishte më shpejt sesa të bashkosh gjithçka në një bord proto, por më pak të përhershëm.

Pasi ta keni lidhur drejtuesin tuaj, lidhni hyrjet e portës MOSFET me kunjat e daljes dixhitale Arduino: D9 për kanalin e gjelbër, D10 për kanalin e kuq dhe D11 për kanalin blu. Lidhni shiritin LED me proto bordin tuaj gjithashtu.

Gjithashtu, sigurohuni që bordi juaj i shoferit të ketë një lidhje të veçantë nga toka e tij me një nga kunjat e tokëzimit të Arduino.

Së fundi, për fuqinë LED, lidhni prizën negative (tokësore) të furnizimit me 12V me një tokë në tabelën e shoferit tuaj. Pastaj lidhni prizën pozitive të furnizimit me 12V me prizën e anodës së shiritit tuaj LED (kjo është një tel i zi në kabllot e mia të treguar në figurë).

Në fund të fundit, unë përfundova duke projektuar një mburojë të bordit të PC që montohet në Uno, dhe gjithashtu ka një mbështetje në rritje për Trellis. Kjo siguroi një produkt përfundimtar shumë më të përfunduar. Nëse dëshironi ta bëni këtë, mund të kaloni duke përdorur bordin proto siç përshkruhet këtu dhe thjesht të bëni bordin e mburojës. E gjithë kjo përshkruhet në hapin e fundit.

Hapi 2: Vendosni LED në Trellis

Vendosni LED në Trellis
Vendosni LED në Trellis

Bordi Trellis ka jastëkë të zbrazët për LED 3mm që do të na duhen të mbushim. Vini re me kujdes simbolet në pads-ka një "+" shumë delikate pranë jastëkut për të përcaktuar anodën. Nëse e mbani tabelën në mënyrë që teksti të jetë i djathtë lart, ka gjithashtu një shënim në krye dhe në fund të tabelës që këshillon që anodat LED janë në të majtë.

Ngjitni LED -të tuaj 3mm në tabelë. Duke parë pjesën e përparme të tabelës, shkruani tekstin në anën e djathtë lart, çelësi i majtë majtas/pozicioni LED është #1, lart djathtas është #4, poshtë majtas është #13 dhe poshtë djathtas është #16. Këtu janë ngjyrat që kam përdorur në secilin pozicion (dhe ka një arsye pse, kështu që ju këshilloj të ndiqni modelin tim të paktën për dy rreshtat e parë):

1 - e kuqe2 - jeshile3 - blu4 - e bardhë5 - e kuqe6 - jeshile7 - blu8 - e bardhë9 - e bardhë10 - e bardhë11 - e verdhë12 - e verdhë13 - e bardhë14 - e bardhë15 - e verdhë16 - e verdhë

CC Attribution: Imazhi Trellis më sipër është nga Adafruit dhe përdoret nën licencën Creative Commons - Attribution/ShareAlike.

Hapi 3: Lidhni Trellis me Arduino

Lidhni Trellis me Arduino
Lidhni Trellis me Arduino

Trellis ka pesë jastekë instalime elektrike, por vetëm katër janë përdorur në këtë projekt. Trellis ka nevojë për SDA dhe SCL për të komunikuar me Arduino (duke përdorur I2C), dhe 5V dhe GND për energji. Jastëku i fundit, INT, nuk përdoret. Jastëkët Trellis shfaqen në të katër skajet e tabelës. Ju mund të përdorni çdo grup pads që dëshironi.

Lidhni një tel të fortë të ndërlidhur në jastëkët 5V, GND, SDA dhe SCL. Pastaj, lidhni telin 5V me kunjin 5V në Arduino, GND në kunjin e tokëzimit, tela SDA në A4 dhe tela SCL në A5.

Tjetra, ne do të fuqizojmë Arduino dhe do të ngarkojmë skicën në të. Tani është një kohë e mirë për të vendosur jastëkun e butonit silikoni në tabelën Trellis. Thjesht ulet në tabelë (vini re "grykat" në pjesën e poshtme të jastëkut që futen në vrima në tabelë), kështu që ju mund të dëshironi të përdorni disa copa kasetë për të mbajtur skajet e jastëkut në tabelë për tani

CC Attribution: Imazhi i instalimeve elektrike Trellis më sipër është një version i prerë i këtij imazhi nga Adafruit, dhe përdoret nën licencën Creative Commons - Attribution/ShareAlike.

Hapi 4: Shkarkoni Skicën e Projektit dhe Ngarkoeni në Arduino

Ju mund ta shkarkoni skicën nga repoja ime Github për këtë projekt.

Pasi ta keni marrë, hapeni atë në Arduino IDE, lidhni Arduino duke përdorur një kabllo USB dhe ngarkoni skicën në Arduino.

Nëse skica është ngarkuar dhe Trellis është lidhur siç duhet, cilido nga butonat në Trellis duhet të ndizet shpejt tre herë kur shtypet. Ky është një tregues se keni shtypur një buton të pavlefshëm, sepse sistemi vjen në gjendjen e tij "off", kështu që shtypja e vetme e vlefshme e tastit është ajo që kërkohet për ta ndezur.

Për të ndezur sistemin, shtypni dhe mbani butonin e poshtëm të majtë (#13) për të paktën një sekondë. Kur lëshoni butonin, të gjitha LED -të duhet të ndizen për pak kohë, dhe pastaj dy rreshtat e poshtëm do të fiken, përveç #13 (poshtë majtas). Sistemi tani është në gjendje të ndezur dhe boshe.

Mund të provoni të përdorni dy rreshtat e parë për të ndriçuar dhe zbehur kanalet LED si provën e parë. Nëse po funksionon, është mirë të vazhdoni në hapin tjetër. Nëse jo, kontrolloni:

  1. Furnizimi me energji LED është i lidhur dhe i ndezur;
  2. MOSFET e bordit të drejtuesit janë të lidhur mirë. Nëse përdorni të njëjtat IRLB8721 që kam përdorur, kontrolloni:

    • Hyrjet e sinjalit të tabelës së drejtuesit (portat MOSFET, IRLB8721 pin 1) janë të lidhura me Arduino D9 = jeshile, D10 = të kuqe, D11 = blu (shiko shënimin më poshtë);
    • Shiriti LED është i lidhur me tabelën e drejtuesit dhe kanalet me ngjyra LED janë të lidhura me kanalizimet MOSFET (IRLB8721 pin 2);
    • Kunjat e burimit MOSFET (pin IRLB8721 3) janë të lidhur me tokën në tabelën e drejtuesit;
  3. Lidhja tokësore midis bordit të shoferit dhe kunjit të tokëzimit Arduino.

Në hapin tjetër, ne do të luajmë me disa nga funksionet e ndërfaqes së përdoruesit të butonit të butonit.

SH NOTNIM: Nëse kontrolluesi juaj po punon, por butonat e intensitetit nuk kontrollojnë ngjyrat e duhura, mos u shqetësoni dhe mos rindërtoni! Thjesht shkoni në Sketch në Arduino IDE dhe modifikoni përkufizimet e kuqe, të gjelbër dhe blu në krye të skedarit.

Hapi 5: Funksionet themelore të kontrollit

Funksionet themelore të kontrollit
Funksionet themelore të kontrollit

Tani që sistemi është ndezur, ne mund të luajmë me disa nga butonat dhe ta bëjmë atë të bëjë gjëra.

Siç thashë në hapin e mëparshëm, kur ndizet, sistemi vjen në gjendjen e tij "boshe". Në këtë gjendje, mund të përdorni butonat në dy rreshtat e parë për të rritur dhe ulur intensitetin e ngjyrës së secilit prej kanaleve të kuqe, jeshile dhe blu LED. Nëse përdorni butonat e bardhë të rritjes/uljes, sistemi rrit ose zvogëlon intensitetin e të tre kanaleve në mënyrë të barabartë dhe në nivele të barabarta.

Dy rreshtat e poshtëm përdoren për të luajtur modelet e paracaktuara. Këto modele ruhen në EEPROM të Arduino -s. Kur skica shkon për herë të parë, sheh që EEPROM nuk ka modele të ruajtura dhe ruan një sërë modelesh të paracaktuara. Më pas, ju mund t'i ndryshoni këto modele dhe ndryshimet tuaja ruhen në EEPROM të Arduino, duke zëvendësuar modelin e paracaktuar. Kjo siguron që modelet tuaja të mbijetojnë kur energjia shkëputet. Funksioni i redaktimit përshkruhet në hapin tjetër.

Tani për tani, shtypni shkurtimisht ndonjë nga butonat e paravendosur (tetë butonat në dy rreshtat e poshtëm) për të ekzekutuar modelin e ruajtur për atë buton. Butoni pulson ndërsa modeli funksionon. Për të ndaluar modelin, shtypni përsëri shkurtimisht butonin model. Ndërsa një model po funksionon, butonat e bardhë lart/poshtë në rreshtat e sipërm mund të përdoren për të ndryshuar shkallën e modelit.

Nëse e lini projektin vetëm për disa sekonda pa prekur asnjë buton, do të vini re që LED -të janë zbehur. Kjo është për kursimin e energjisë dhe për të shmangur që Trellis të ndriçojë shumë çdo "humor" që LED janë duke u përpjekur të krijojnë. Prekja e një butoni në Trellis do ta zgjojë përsëri.

Për ta fikur sistemin, shtypni dhe mbani butonin e poshtëm të majtë (#13) për një ose më shumë sekonda dhe lëshojeni. Rripi Trellis dhe LED do të errësohet.

Hapi 6: Redaktimi i modeleve në tastierë

Redaktimi i modeleve në tastierë
Redaktimi i modeleve në tastierë

Siç thashë në hapin e mëparshëm, skica ruan tetë modele të paracaktuara në EEPROM herën e parë që ekzekutohet. Ju mund të ndryshoni 7 nga këto modele në diçka tjetër nëse dëshironi duke përdorur modalitetin e redaktimit të modelit në bllokun e butonave.

Për të hyrë në modalitetin e redaktimit të modelit, së pari vendosni se për cilin buton dëshironi të modifikoni modelin. Ju mund të zgjidhni çdo buton tjetër përveç butonit të poshtëm të majtë. Futni modalitetin e redaktimit të modelit duke shtypur gjatë (mbani të shtypur më shumë se një sekondë) në butonin e modelit të zgjedhur. Kur lëshohet, butoni do të ndriçojë mirë dhe dy rreshtat e sipërm do të fillojnë të ndizen. Kjo tregon se jeni në modalitetin e redaktimit.

Modaliteti i redaktimit fillon në hapin e parë të modelit dhe vazhdon derisa të dilni nga redaktimi ose të përfundoni redaktimin e hapit të 16 -të (16 hapa maksimal për model). Në çdo hap, përdorni butonat e intensitetit të kanalit në dy rreshtat e parë për të zgjedhur ngjyrën që dëshironi për atë hap. Pastaj shtypni shkurt butonin e paracaktuar të modelit për të ruajtur atë ngjyrë dhe për të kaluar në hapin tjetër. Në hapin tuaj të fundit, në vend që të shtypni shkurt, thjesht shtypni gjatë për të dalë nga redaktimi.

Pasi të dilni nga modifikimi i modelit, modeli luan automatikisht.

Kjo eshte! Tani keni një kontrollues LED RGB që do të rendisë modelet që mund të programoni përmes tastierës. Mund të ndaleni këtu, ose nëse doni të ndërtoni një version më formal të këtij projekti, vazhdoni me hapat e tjerë.

Hapi 7: Pajisje më e mirë: Mburoja dhe mbyllja e shoferit RGB LED

Image
Image
Pajisje më të mira: Mburoja dhe mbyllja e shoferit RGB LED
Pajisje më të mira: Mburoja dhe mbyllja e shoferit RGB LED
Pajisje më të mira: Mburoja dhe mbyllja e shoferit RGB LED
Pajisje më të mira: Mburoja dhe mbyllja e shoferit RGB LED

Sapo kisha një prototip të punës, e dija se nuk mund të lija një Arduino dhe proto të zhveshur në tavolinat e fëmijëve të mi si një zgjidhje e përhershme. Më duhej një rrethim për projektin. Unë gjithashtu vendosa që do të bëja një tabelë më të mirë drejtimi dhe mendova se ishte mundësia e përsosur për të bërë mburojën time.

Unë e pastrova skemën time të letrës duke e futur atë në ExpressSCH, një mjet falas i ofruar nga ExpressPCB, një fabrikues bordesh që ofron drejtime të lira të shkurtra të bordeve të vegjël të kompjuterëve. Unë kam përdorur ExpressPCB për më shumë se një dekadë në projekte, por përdorni çdo mjet dhe fabrikues që preferoni, me çdo kusht.

Unë shtova disa veçori të vogla në skemën bazë, në mënyrë që të funksionojë mirë si një mburojë për këtë projekt. Shtova jastëkë instalime elektrike për të lidhur Trellis, një prizë energjie, një llambë pilot dhe një lidhës për shiritin LED. Unë gjithashtu shtova një vend për një kondensator në të gjithë furnizimin me energji elektrike. Qarku përfundimtar tregohet këtu.

Vendosa që fuqia për projektin duhet të vijë nga mburoja. 12V i furnizuar me mburojë fuqizon si shiritin LED ashtu edhe Arduino. Fuqia në Arduino sigurohet duke lidhur hyrjen e furnizimit me kunjin VIN të Arduino, i cili është dy-drejtues (ju mund të furnizoni energjinë me Arduino në këtë kunj, ose nëse lidhni energjinë me Arduino diku tjetër, do t'ju japë furnizimin fuqia në këtë kunj). Dioda e mbrojtjes D1 parandalon çdo energji të lidhur direkt me Arduino (p.sh. USB) nga përpjekja për të fuqizuar LED -të.

Pse të mos përdorni prizën e energjisë të Arduino dhe thjesht të lidhni 12V atje? Ndërsa unë mund të kisha furnizuar 12V në prizën e energjisë Arduino dhe të përdorja kunjin VIN për të kapur atë fuqi për mburojën, isha i shqetësuar se dioda dhe gjurmët D1 të Arduino nuk do të ishin deri në rrymat e larta të mundshme në drejtimin e LED shirita. Kështu, vendosa që mburoja ime do të merrte energjinë hyrëse dhe do të furnizonte me energji për Arduino. Më duheshin edhe 5V për Trellis, por rregullimi i energjisë në bordin e Arduino furnizon 5V në disa kunja, kështu që kam përdorur njërën prej tyre për Trellis. Kjo më shpëtoi duke vënë një qark rregullator në mburojë.

Pastaj shtrova PCB. Kam përdorur disa burime që kam gjetur për të marrë matjet e sakta për vendosjen e kunjave për të përmbushur titujt në Arduino Uno. Pak zell dhe përputhet në përpjekjen e parë. Nuk ka shumë për qarkun e mburojës, kështu që kisha shumë hapësirë. Vendosa gjurmë të gjera për ngarkesat LED, kështu që do të kishte shumë kapacitet bartës të rrymës për nevojat e mia. I vendosa MOSFET -ët ku mund të montoheshin në mënyrë të sheshtë, me ose pa ngrohje. Deri më tani, nuk kam nevojë për lavamanë për numrin e LED -ve që kam përdorur, por hapësira është aty nëse është e nevojshme.

Unë gjithashtu shtova vrima që përputheshin me vrimat e montimit në Trellis, në mënyrë që të mund të përdorja çelësat për të montuar Trellis në mburojën time. Me mburojën e lidhur në Arduino dhe Trellis të pezulluar në dalje mbi mburojën, gjithçka duhet të jetë e bukur dhe e fortë.

Më pas e printova paraqitjen e tabelës dhe e ngjita në një copë bërthamë shkumë, dhe futa pjesët e mia për t'u siguruar që gjithçka përshtatet. Gjithçka mirë, kështu që unë e dërgova porosinë.

Pastaj fillova të punoj në një rrethim. Duke përdorur Fusion 360, unë projektova një mbyllje të thjeshtë për të përmbajtur tre dërrasat (Arduino Uno, mburoja dhe Trellis). Vrimat në rrethim lejojnë lidhjen me portën USB të Arduino, dhe natyrisht, qasjen në shiritin LED që lidhet dhe mbron prizën e energjisë. Foleja e energjisë Arduino është e mbuluar nga rrethimi, për të siguruar që nuk përdoret. Pas disa prototipeve për montimin e provës, më në fund kisha një dizajn me të cilin isha i kënaqur. Unë kam postuar skedarët STL për mbylljen në Thingiverse.

Në të ardhmen, unë do të bëj një version të bordit në të cilin Nano mund të lidhet drejtpërdrejt, Kjo do ta bënte projektin edhe më kompakt. Deri atëherë, ju gjithashtu mund të përdorni një përshtatës Nano to Uno shield si ky.

Nëse do të bëni mburojën, ja çfarë ju nevojitet përveç pjesëve të përmendura në hapin 1:

  • Pllaka PC RGB LED Driver Shield (nga ExpressPCB ose të tjerë; mund të shkarkoni skedarët nga repoja ime Github për projektin);
  • Diodë 1N4002;
  • Kondensator elektrolitik radial 100uF 25V (përdorni 220uF ose 470uF nëse ngarkesa e madhe LED);
  • Fole energjie, PJ202-AH (model i vlerësuar me 5A).

Pjesët e mëposhtme janë opsionale:

  • LED 3mm - çdo ngjyrë, për llambën pilot (mund të hiqet)
  • Rezistencë 1500 ohm - e nevojshme vetëm nëse përdorni llambë pilot LED

Recommended: