Kazalo:

Svetlobni šov božičnega drevesa Raspberry Pi: 15 korakov (s slikami)
Svetlobni šov božičnega drevesa Raspberry Pi: 15 korakov (s slikami)

Video: Svetlobni šov božičnega drevesa Raspberry Pi: 15 korakov (s slikami)

Video: Svetlobni šov božičnega drevesa Raspberry Pi: 15 korakov (s slikami)
Video: БАХШ ПЛОВ Бухарских Евреев 1000 летний РЕЦЕПТ КАК ПРИГОТОВИТЬ 2024, November
Anonim
Image
Image

Posodobitev: Objavil sem posodobljen razvoj tega drevesa za leto 2017 na tem navodilu

Ta projekt vključuje uporabo Raspberry Pi za pogon 8 vtičnic za izmenični tok, ki so povezane z lučmi za božična drevesa. Luči za izmenični tok so preproste enobarvne svetilke, a za bolj dinamičen razpon svetlobne oddaje obstaja tudi 25 programabilnih RGB LED zvezdic. Ena od prednosti uporabe Raspberry Pi namesto krmilnika Arduino je, da lahko zvok izklopim iz Raspberry Pi, da bodo luči časovno usklajene z glasbo (da ne omenjam prednosti, da imate povezavo WiFi za delo na daljavo s programsko opremo).

1. korak: Materiali

Materiali
Materiali

Upoštevajte, da sem spodnje materiale uporabil za ta projekt. V mnogih primerih se lahko uporabijo nadomestni deli/rešitve.

Tu so materiali, ki sem jih uporabil za ta projekt:

Za krmilnik:

  1. Raspberry Pi (model B sem uporabil)

    • SD kartice
    • USB Wi -Fi adapter
  2. SainSmart 8 -kanalna 5V SSR modularna plošča - Amazon

    Izognil sem se mehanskim relejem, saj bo klikanje stikala opazno slišno, in šli smo na SSR. Ta plošča je ocenjena do 2 AMP na SSR, kar je dovolj za napajanje niza božičnih lučk

  3. Mostične žice - Na Ebayu jih lahko najdete poceni
  4. Vtič + vtičnice JST SM - Adafruit
  5. 32 -metrski zvitek žice (ali štiri 8 -metrske kose žice)
  6. Podaljšek x 8
  7. Blok za distribucijo energije x 2 - AdaFruit
  8. Razdelilnik
  9. Napajalniki

    • 5 voltov, 3 amperov ali več za pogon LED in Pi
    • 5 voltov, 1 amp ali več za pogon SSR modula
  10. Ohišje
  11. Zvočniki

Za zvezdo:

  1. 12 -milimetrske LED diode RGB (pramen 25) - čip AdafruitWS2801 v tem izdelku omogoča, da mora Pi le utripati po pramenu, namesto da neprekinjeno utripa po črti, da LED sveti.
  2. Plastična folija iz ABS -a, ki drži LED na mestu - Walmart
  3. Lexan pločevina za razpršene LED -diode
  4. Črna barva v spreju
  5. Bela brizgalna barva
  6. Les

Za drevo:

  1. Bela 100 svetlih pramenov x 4
  2. Bela 50 svetlih pramenov
  3. Rdeča 100 svetla nit 2
  4. Zelena 100 svetlobnih pramenov x 2
  5. Modra 100 svetlih pramenov x 2

2. korak: Namestite Raspberry Pi

Preden sem se potopil v ožičenje, sem hotel najprej zagnati Pi in preizkusiti komponente, ko so bile povezane. Ta nastavitev je bila izvedena pred namestitvijo ohišja in vključuje Raspberry Pi, priključen prek napajanja USB na monitor in tipkovnico. Cilj je, da se sistem nastavi tako, da se lahko razvoj nadaljuje na Pi v ohišju.

Privzeta namestitev Pi nima knjižnic, potrebnih za pravilno poganjanje LED -lučk WS2801 v zvezdici, zato sem na Pi namestil operacijski sistem Occidentalis AdaFruit.

Po namestitvi Occidnetalisa je bilo vključenih nekaj dodatnih nastavitev:

1) Konfigurirajte Pi za zagon v ukazni poziv (ne vmesnik GUI)

2) Nastavite brezžični omrežni vmesnik na Pi z urejanjem/etc/network/vmesniki. Ne pozabite izbrati statičnega naslova IP, da se lahko prijavite na znani naslov za delo na Pi

3) Namestite storitve Telnet in FTP.

4) Namestite Pygame. Knjižnica se uporablja v skriptih python za predvajanje datotek MP3/WAV

Podrobna navodila za namestitev/nastavitev lahko preprosto najdete prek internetnih iskanj. Na spletu Pi obstaja veliko virov.

Po tej točki lahko odklopim kateri koli video izhod in tipkovnico, ker se lahko Pi lahko prijavite na daljavo.

3. korak: Začnite nastavljati ohišje

Začnite z nastavitvijo ohišja
Začnite z nastavitvijo ohišja

Ne bom se spuščal v podrobnosti o tem, kako zgraditi ohišje, saj je to le škatla iz lesa. Na koncih ohišja sem izvrtal držala s premerom 1,5 palca. Na desni je luknja, kjer zmanjkajo vsi podaljški in zvezdasti kabel, levo pa luknja, kjer potekajo napajalni kabel in avdio izhod.

Prvi sestavni deli za vgradnjo sta razdelilnik in Raspberry Pi. Za napajanje Pi uporabljam isti 5V transformator za napajanje zvezde in Pi (prikazano zeleno). Zaradi tega imam moč, da grem na priključni blok (označen z belo), kjer se 5V odcepi od ožičenja zvezd in do Pi

Pin 2 = 5V

Pin 6 = Ozemljitev

Ko se povežete, vklopite napajanje in Pi se mora zagnati in do njega dostopati prek Telneta, kot je bilo nastavljeno v prejšnjem koraku.

4. korak: Povezovanje Raspberry Pi z relejskim modulom

Priključitev Raspberry Pi na relejni modul
Priključitev Raspberry Pi na relejni modul

Ko je izklopljen (napajalniki in Pi), priključite 5 voltov na spodnja dva priključka zunanjega vira napajanja. To sem vozil z namenskim 5 -voltnim napajanjem, pritrjenim na razdelilnik. To je zato, da Pi nima celotne obremenitve za upravljanje releja (skrbi je, da je vključenih 8 sočasnih relejev) in namesto tega lahko samo poganja tranzistor, da vključi zunanje napajanje releja.

Zdaj določite lokacijo GPIO0 do GPIO7 na Raspberry Pi. V mojem B-modelu je to:

GPIO0 = Pin 11

GPIO1 = Pin 12

GPIO2 = Pin 13

GPIO3 = Pin 15

GPIO4 = Pin 16

GPIO5 = Pin 18

GPIO6 = Pin 22

GPIO7 = Pin 7

Ozemljitev/0V = Pin 6, Pin 9, Pin 14, Pin 20, Pin 25

Ker je povezava na modulu SSR vijačna, sem vsak mostiček obrezal na ustrezno velikost glede na to, kako sem razporedil komponente. Na ploščo povežite vseh 8 vhodnih kanalov in ozemljitev iz Pi. Klešče z igelnim nosom pomagajo pravilno namestiti skakalce v glavo Pi.

Vsak kanal ima LED na modulu SSR, ki zasveti, ko GPIO preide visoko na Pi. Zaženite preprost preskusni program, da preverite vse povezave, pritrjene kot test.py, kjer je vsak GPIO0-7 za dve sekundi nastavljen visoko.

5. korak: Odrežite in pripravite podaljške

Odrežite in pripravite podaljške
Odrežite in pripravite podaljške

Na vsakem podaljšku odrežite konec vtiča in pustite največjo razpoložljivo dolžino do konca vtiča, saj bo morda moral iti na vrh drevesa. Na vrvici razdelite konce žice, tako da odrežete tanek kos plastike, ki drži obe žici skupaj. Zdaj odstranite konce, tako da je za vijak na priključkih izpostavljeno približno 1/4 žice.

Z označevalcem Sharpie na vsakem koncu kabla vstavite številke od 1 do 8, da boste lahko zlahka ugotovili, katera vtičnica gre v kateri kanal na modulu SSR.

Za naslednji korak bomo potrebovali tudi en vtič in tudi nekaj dodatne žice, zato bodisi kanibalizirajte 9. podaljšek ali pustite nekaj dodatnega prostora na 8 podaljških, ko odrežete konec vtiča.

6. korak: Priključitev podaljškov AC

Priključitev podaljškov AC
Priključitev podaljškov AC
Priključitev podaljškov AC
Priključitev podaljškov AC

Naslednji korak poveže izhodni konec modula SSR z 8 podaljški. Ker se lahko količina žic tukaj zelo enostavno zatakne, sem uporabil razdelilnik in pištolo za spenjanje, da bi vse poskušal obdržati na svojem mestu.

Ko je napajanje izklopljeno, izvlecite konec vtiča iz prejšnjega koraka in ga priključite na razdelilnik. Odstranite druga dva konca in povežite vsakega z zgornjim in spodnjim blokom za distribucijo električne energije in spenite ta dva priključka navzdol.

Zdaj priključite enega od razrezanih podaljškov iz prejšnjega koraka. V mojem primeru imam ohišje z luknjo premera 1,5 za iztekanje vseh kablov, zato je zeleno označen eden od kablov z enim koncem, ki je priključen na razdelilni blok, drugi pa na izhodni konec modula SSR. Za dokončanje vezja potrebujemo veliko krajšo žico (prikazano v modri barvi), ki povezuje drugi razdelilni blok z modulom SSR. Obrežite in spenite, da bo vse čimbolj urejeno. Ne samo, da spenjalec ohranja stvari čiste, ampak tudi služi razbremenitev napetosti, tako da vsako vlečenje in vlečenje pri priključitvi luči na drevo ne bo izvleklo povezav iz komponent. Ni treba posebej poudarjati, da pri spenjanju spenjalnik ne prebode žice ali izolacije.

7. korak: Preizkusite priključke AC

Preizkusite priključke AC
Preizkusite priključke AC
Preizkusite priključke AC
Preizkusite priključke AC

Namesto da bi priklopil polne niti božičnih luči, sem na vsak podaljšek priključil poceni nočne luči v vrednosti 1 USD, da bi preizkusil in razvil animacije, preden se je drevo dvignilo. Pobarval sem luči, povezane z vrvicami, ki bi krmilile rdeče, zelene in modre svetlobne strune.

Zaženite isti preskusni program, ki je bil uporabljen za testiranje modula SSR, in zagotovite, da vsaka povezava pravilno sveti.

Škatla z lučmi je kazala, da bo vsaka struna potegnila 0,34 ampera, za barvne luči pa bom nanizal dva niza skupaj, kar naj bi povzročilo skupno 0,68 ampera. To je precej pod oceno SSR, ki je 75 - 200 VAC pri 2 amperih, vendar sem želel še enkrat preveriti, saj je varovalka na modulu SSR spajkana na ploščo, kar otežuje zamenjavo.

8. korak: Ustvarjanje zvezde

Ustvarjanje zvezde
Ustvarjanje zvezde
Ustvarjanje zvezde
Ustvarjanje zvezde
Ustvarjanje zvezde
Ustvarjanje zvezde
Ustvarjanje zvezde
Ustvarjanje zvezde

Prvi korak pri ustvarjanju zvezde je izdelava predloge za tiskanje, ki pomaga oblikovati leseni okvir in plastiko. Po prilagajanju velikosti in tiskanju predloge ustrezne velikosti sem iz obrtne trgovine vzel kos lesa velikosti 4,25 "x 0,125" in izmeril razdaljo, potrebno za vsako stran zvezde. Med rezanjem nisem pravzaprav poševil nobenega od spojev, zato je za oblikovanje zvezde potrebna podpora, da so kosi med lepljenjem na mestu.

Predlogo sem položila na delovno površino, s pomočjo katere sem držala dva kosa lesa, kot je prikazano rjavo na sliki. Z dotikom obeh robov lesa je bilo na obe strani spoja naneseno lepilo. Nato sem s tankim kosom balse izrezal trikotnik, da sem dva dela zlepil skupaj in ga prilepil na zvezdo. Razlog za uporabo balse je v tem, da sem lahko, ko je zvezda trdno skupaj, trikotnik zlahka obrusil navzdol, da se ujema z obrisom zvezde, prikazano obkroženo na sliki zvezde.

Zaradi načina gradnje sem moral na vsak spoj počakati nekaj ur, da se lepilo posuši, preden sem prešel na naslednji spoj.

Ko je nastala celotna zvezda, uporabim mavčno ploščo za pokrivanje vrzeli, kjer sta se na konicah zvezde srečala dva kosa lesa.

Nato sem v notranjost zvezde prilepil nekaj majhnih zamaškov, ki so pomagali pri namestitvi sklopa LED, ko je vstavljen, označen s pravokotnikom. Ne verjamem, da so dejansko potrebni, saj gravitacija zadrži LED sklop na mestu.

Sestavljeno zvezdo položite na vrh lista Lexan, izsledite njeno obliko in izrežite zvezdo iz Lexana. Po rezanju zvezde Lexan preverite, ali se prilega okvirju iz lesa, nato pa nanesite 2 sloja bele barve v pršilu na eno stran Lexana in pustite, da se posuši 24 ur. To omogoča, da se LED diode razpršijo in jih skrijejo pred očmi.

Za skrivanje pokrovčka med Lexan zvezdico in lesenim okvirjem sem uporabil majhen 0,25 -palčni trak balsa lesa in ga razrezal, da je oblikoval in okvir "zaprl", tako da je balza pokrila vrzel.

Na koncu smo dodali palico/moznik za pomoč pri pritrditvi zvezde na vrh drevesa.

9. korak: Ustvarite LED montažo

Ustvarite LED montažo
Ustvarite LED montažo
Ustvarite LED montažo
Ustvarite LED montažo

Z isto šablono oblikujte leseno zvezdo, izrežite ABS plastično folijo po velikosti, vendar nekoliko manjšo, da jo lahko vstavite v leseno zvezdo. Preverite, ali se dobro prilega notranjosti lesene zvezde.

Nato še vedno uporabite predlogo z lokacijami lukenj in izvrtajte 25 LED lukenj. LED diode AdaFruit imajo na zunanji strani silikonsko prirobnico, zato se odlično pritrdijo v luknje, izvrtane pri 12 mm. Na sliki lahko vidite prirobnico, pri čemer sem z zeleno črto pokazal, kje bo plastika ABS pritrdila prirobnico, da bo LED držala na mestu.

Začnite z enim od nasvetov in obkrožite zunanjo stran zvezde, nato se premaknite na 5 notranjih nosilcev, da dokončate kos. V svojem programu imam LED položaje ožičene, kot je prikazano na sliki, pri čemer je 1 prva LED za priključkom.

Na rdeči in modri konec kabla nalepite nekaj električnega traku. So sekundarni vhodi za napajanje, ki jih ne bomo uporabljali, namesto tega uporabite rdečo/modro povezavo z uro/signalno povezavo prek samega kabla.

10. korak: Ustvarjanje podaljška za LED zvezdo

Ustvarjanje podaljška za LED zvezdo
Ustvarjanje podaljška za LED zvezdo
Ustvarjanje podaljška za LED zvezdo
Ustvarjanje podaljška za LED zvezdo

Sledi ustvarjanje 8 -metrskega kabla, ki vodi od ohišja do zvezde na vrhu drevesa.

Odrežite 4 kose dolžine 8 čevljev enake dolžine in na enem koncu svežnja kabla uporabite električni trak ali zadrge, da bo snop skupaj in čist. To naredite po celotni dolžini snopa 4 kablov vsakih nekaj centimetrov.

Na obeh koncih snopa odstranite žice in jih spajkajte na konektorje JST, tako da lahko žica poveže en konec z ohišjem, drugega pa z zvezdo. Pazite, da bo relativni položaj žic v pravilnem vrstnem redu, tako da se modre/zelene/rumene/rdeče povezave na drugem koncu kabla ujemajo. Z multimetrom preverite, ali je kabel pravilno priključen.

11. korak: Zvezdo povežite s Pi

Priključite zvezdo na Pi
Priključite zvezdo na Pi

Zdaj moramo v ohišju ustvariti posodo, v katero se lahko vklopi zvezda/podaljšek.

Rdeča = 5 voltov

Modra = zemlja

Tako lahko ti dve liniji na priključku JST povežemo s priključnim blokom, na katerega je priključeno napajanje Raspberry Pi.

Drugi dve povezavi sta:

Rumena = Podatki = MOSI = Pin 19

Zelena = Ura = SCLK = Pin 23

Sledil sem ožičenju iz vadnice AdaFruit. Odstranite konce dveh mostičnih kablov, da ju lahko spajkate na priključek JST.

Ko ste prepričani, da bo ožičenje dobilo ustrezne signale LED, lahko pritrdite konektor v ohišju za lajšanje napetosti, tako da vsako vlečenje za podaljšek ne odtrga skakalcev iz Pi.

Korak: Preizkusite LED zvezdo

Preizkusite LED zvezdo
Preizkusite LED zvezdo
Preizkusite LED zvezdo
Preizkusite LED zvezdo

Z LED zvezdo, priključeno na Pi. Zaženite preprost preskusni program, da preverite, ali luč deluje pravilno. Velik del moje kode je prilagojen iz vadnice AdaFruit in objave na forumu na spletnem mestu o prilagajanju kode vadnice tako, da ustreza LED diodam, ki jih uporabljamo.

Na priloženem ledtest.py bo zvezda počasi prešla iz čiste modre v čisto rdečo.

Korak: Povežite zvočnike, zgradite zgornji del ohišja

Priključite zvočnike, sestavite zgornji del ohišja
Priključite zvočnike, sestavite zgornji del ohišja

Tu ni nič posebnega, samo zvočnike priključite v zvok iz Raspberry Pi in jih priključite na razdelilnik. Preprost zvočnik z gumbom za nastavitev glasnosti bo deloval.

Za zgornji del sem želel pogledati v ohišje, zato sem na pokrov namestil kos stekla 8,5 x 11 (iz okvirja za slike) in na vrhu uporabil Velcro, da sem lahko po potrebi hitro odstranil vrh. Velik del ohišja je izpostavljen 110 VAC, zato je pomembno, da vrh zaščiti pred komer koli ali karkoli pred nenamernim stikom.

Korak 14: Priključite razsvetljavo na drevo

Priključite razsvetljavo na drevo
Priključite razsvetljavo na drevo

Izbrala sem postavitev kanalov na božičnem drevesu, da mi omogoči največjo prilagodljivost pri ustvarjanju različnih vrst gibanja/učinkov. V prilogi je slika, kako sem postavil razsvetljavo za 5 belih pramenov. Preostali trije kanali so bili sestavljeni iz dveh 100 svetlečih luči: rdeče, zelene in modre.

Poseben podaljšek, ki ga priklopite na vsak pramen, ni kritičen, saj v naslednjem koraku lahko prilagodim preslikavo med GPIO0-7 in lučmi na drevesu.

Korak 15: Naložite/ustvarite glasbo, programsko opremo, zaporedja…

Image
Image

Za Raspberry Pi so na spletu na voljo številni zaporedji božičnih luči, vendar sem eno preprosto kodiral iz nič. Vse sekvence so bile ustvarjene z uvrščanjem časovnih utripov/mer v Audacityju (urejevalnik zvoka) do določenih ukazov mojega sekvencera.

rxmas.py

Ta program bo vsako minuto naključno izbral statično postavitev drevesa. Ta skript se izvaja pri zagonu Raspberry Pi (prek opravila cron) kot privzeto obnašanje pri priklopu enote.

xmas.py

To je program za sekvenciranje, ki za vhod vzame datoteko zaporedja in MP3

setup.txt

V prejšnjem koraku sem navedel postavitev, ki sem jo uporabil za vsak logični kanal. Ta datoteka preslika vsak dejanski GPIO0-7 v logični kanal. V priloženem setup.txt -ju podaljšek GPIO0 poganja logični kanal 8 (modra), GPIO1 logični kanal 6 (rdeč) itd …

test.mp3 / test.txt

To je preprost preskus zvočnega števila od 1 do 8 z prižganimi enakovrednimi svetlobnimi nizi

Torej, da prikličemo ta primer:

./xmas.py test.txt test.mp3

carol.txt

Datoteka sekvencerov za božično Sarajevo Trans-Siberian Orchestra

LetItGo.txt

Datoteka sekvencera za Let It Go iz Disneyjevega zamrznjenega filma

russian.txt

Datoteka sekvencera za "A Mad Russian's Christmas" Trans-Sibirskega orkestra

Jasno boste morali dostaviti svoje datoteke LetItGo.mp3 in carol.mp3! Samo kupite jih pri Amazonu.

OPOMBA: Vgrajeni videoposnetek YouTube pospeši do 110% hitrosti, zato se lahko sliši nekoliko čudno

Naj zažari!
Naj zažari!

Prva nagrada Make it Glow!

Priporočena: