Sadržaj:

Interaktivna LED kupola sa Fadecandy, obradom i Kinect -om: 24 koraka (sa slikama)
Interaktivna LED kupola sa Fadecandy, obradom i Kinect -om: 24 koraka (sa slikama)

Video: Interaktivna LED kupola sa Fadecandy, obradom i Kinect -om: 24 koraka (sa slikama)

Video: Interaktivna LED kupola sa Fadecandy, obradom i Kinect -om: 24 koraka (sa slikama)
Video: Singapore City Tour | The City From The Future? ❤️🇸🇬🏙️ 2024, Juli
Anonim
Image
Image
Interaktivna LED kupola sa Fadecandy, procesiranjem i Kinect -om
Interaktivna LED kupola sa Fadecandy, procesiranjem i Kinect -om
Interaktivna LED kupola sa Fadecandy, procesiranjem i Kinect -om
Interaktivna LED kupola sa Fadecandy, procesiranjem i Kinect -om
Interaktivna LED kupola sa Fadecandy, procesiranjem i Kinect -om
Interaktivna LED kupola sa Fadecandy, procesiranjem i Kinect -om

Šta

Kada je u Domeu geodetska kupola od 4,2 m prekrivena je 4378 LED dioda. Sve LED diode su pojedinačno mapirane i adresabilne. Njima upravljaju Fadecandy i Processing na Windows radnoj površini. Kinect je pričvršćen na jedan od podupirača kupole, tako da se može pratiti kretanje unutar kupole i ljudi mogu komunicirati sa svjetlima.

Zašto?

Istražujem grupno iskustvo kroz zajedničku interakciju. Volim praviti interfejse koje veliki broj ljudi može koristiti odjednom. LED površina kupole čini odgovarajući izlaz za višekorisničko sučelje jer je ogromna, pa je mnogi ljudi mogu vidjeti. Kupola također stvara ugodan, sferičan prostor, koji potiče ljude da se okrenu jedni prema drugima. Kinect odlično funkcionira kao višekorisnički ulaz jer se ljudi mogu kretati i utjecati na dubinsko polje u isto vrijeme, jedino ograničenje je koliko ljudi može zajedno stati u prostor.

Kontinuirano razvijam nove metode interakcije za When in Dome, kako bih vidio kakav učinak imaju različite metode unosa i što dobro funkcionira za različite grupe ljudi. Posebno želim vidjeti koja sučelja potiču vezu između prijatelja i stranaca unutar kupole i zbog čega se zajedničko iskustvo osjeća smislenim i vrijednim.

Gde

Dizajnirao sam i izgradio When in Dome kao posljednji projekt za moj master, a to je bio dizajn za performanse i interakciju u laboratoriju za interaktivnu arhitekturu, The Bartlett, UCL.

Kako

Neke od tehnologija i alata koji se koriste:

  • Fadecandy
  • Obrada
  • Kinect (moj sam nabavio sa eBay -a)
  • Mitra je vidjela
  • Gusjenica
  • Mašina za šivanje
  • Lemilica
  • Toplinski pištolj
  • Pištolj za vruće ljepilo
  • Laserski rezač
  • Drill

Neka od korištene opreme:

  • Napravite sa kompletom čvorišta
  • Obrađeno rezano drvo za podupirače
  • 4 mm šperploča od topole
  • Bijela difuzijska tkanina
  • Crna tkanina
  • Aluminijumska ravna šipka
  • Wago konektori
  • 12awg i 24awg kabel
  • Napajanje 5v 30A
  • Pjenasti podovi
  • Jst konektori
  • Kondenzatori

Idemo

Mnogo je komponenti ovog projekta o kojima ću govoriti, nadam se da ćete unutra pronaći nešto korisno i zanimljivo!

Korak 1: Kupola

The Dome
The Dome
The Dome
The Dome

Hub Kit

Odlučio sam sagraditi svoju kupolu s kompletom od buildwhubs i definitivno bih ih preporučio.

Oni prodaju komplete konektora i daju savjete o tome koje materijale kupiti za podupirače. Većina njihovih kupola koristi se u vlastitim vrtovima, dok će moje biti u javnosti, pa sam kupio i njihov komplet ekstra sigurnih kapa, koje sprječavaju podupirače da iskoče ako se neko nasloni na kupolu.

Veličina

Moja kupola ima prečnik 4,2 m. Odabrao sam ovu veličinu jer je to značilo da će najduža strana trokuta koji čine kupolu biti 1,2 m, a to se lijepo uklopilo u ploče od šperploče kada sam došao napraviti ploče za držanje LED dioda.

Korak 2: Napravite podupirače

Image
Image

Duljine

Koristio sam buildwithhubs -ov kalkulator podupirača da odredim dužine potrebne za izradu kupole od 4,2 m. 30 "kratkih hlača" na 1059 mm i 35 "dugih" na 1209 mm.

Materijal

2 pakovanja od 24 rezane građe dimenzija 19 mm x 38 mm x 2400 mm iz kompanije B&Q (kako je preporučeno na gradilištu sa glavčinama) dovoljna su za jednu kupolu. Ovo funkcionira dovoljno dobro, ali da to radim ponovo, dobio bih nešto što ima više bočne snage.

Proces

Nosači su odrezani po dužini pomoću pile, a zatim sam ih naslikao tako da sam ih položio na ploču za prašinu i prevalio valjcima. Ovo je učinilo zabavan timelapse!

Zatim sam ih složio u šarže od po 6 komada i pričvrstio dijelove konektora na krajeve.

Korak 3: Izgradite kupolu

Nakon što se naprave podupirači, izgradnja kupole je super laka. Neću detaljno govoriti o procesu jer postoje upute na web stranici buildwithhubs, a također sadrže knjižicu.

Korak 4: Podignite ga

Planirajte kako LED diode trebaju izgledati
Planirajte kako LED diode trebaju izgledati

Nisam želio da LED ploče budu odmah do poda, jer bi to značilo da bi mnoge od njih blokirali ljudi u kupoli. Takođe sam hteo da podignem kupolu tako da se oseća prostranijom i prijatnijom.

Noge

Napravio sam noge visoke 50 cm od 2x4s i uvrnuo iste konektore u njih kao i podupirači.

Zatim sam, kako bih povećao čvrstoću i strukturni integritet baze, upotrijebio aluminijsku ravnu šipku za stvaranje X -ova između svakog dijela nogavice.

Vrata

Uklonio sam jedan od vodoravnih podupirača kako bih napravio vrata i zamijenio ga komadom šperploče na podu kako bi noge bile na pravilnom razmaku.

Korak 5: Planirajte kako LED diode trebaju izgledati

Softver

Koristio sam SketchUp za svoje 3D planiranje jer je dostupan za besplatnu upotrebu u aplikaciji u pregledniku. Srećom (budući da nisam stručnjak za 3D modeliranje) pronašao sam model geodetske kupole dostupan u 3D skladištu, gdje ima puno besplatnih modela.

Koliko LED dioda?

Izgled je morao uzeti u obzir estetiku, ali i distribuciju snage i podataka. Odlučio sam upotrijebiti 11 Fadecandysa (i 11 izvora napajanja) za pokrivanje 33 trokuta kupole. To bi značilo da bi Fadecandys (i napajanja) pokretali po 3 trokuta, te da bi jedna strana kupole mogla biti otvorena kako bi ljudi mogli vidjeti izvana.

To mi je dalo najviše 512 LED dioda po 3 trokuta, jer svaki Fadecandy može pokrenuti 8 traka od po 64 u svakoj.

Odlučivanje o izgledu

Nisu svi trouglovi jednaki! Moja kupola je 2V stila, što znači da ima dvije vrste trokuta, jednakostranične i jednakokračne.

Došao sam do četiri različita izgleda za LED diode i otišao na Instagram da pitam ljude koji im se najviše sviđaju. Činilo se da su stil 1 i stil 3 na vrhu. Stil 3 mi je bio omiljeni, ali koncentrični trokuti u stilu 3 zapravo zahtijevaju mnogo više LED traka nego prugasti raspored, pa sam se odlučio za stil 1. To znači da postoji 8 jednakostraničnih trokuta s LED rasporedom koncentričnog trokuta i 25 jednakokračnih trokuta sa prugastom LED layout.

Budući da su jednakostranični trokuti veći i sadrže koncentričan raspored, oni koriste mnogo više LED dioda nego jednakokraki trokuti. Stoga sam morao podijeliti jednakostranice po Fadecandysima.

8 Fadecandysovih kontrola kontrolira po 1 jednakostraničan i 2 jednakokraka trokuta.3 od Fadecandysovih upravljača svaki po 3 jednakokraka trokuta.

Korak 6: Više o LED rasporedu

Više o LED rasporedu
Više o LED rasporedu
Više o LED rasporedu
Više o LED rasporedu

S odlukom o općem rasporedu, morao sam točno odrediti koliko LED dioda ću staviti na svaku ploču. Učinio sam to koristeći kombinaciju proračunske tablice kako bih pronašao najbolji način za maksimiziranje mogućnosti Fadecandyja i uvećao crteže u Illustratoru, tako da sam mogao vidjeti kako će izgled izgledati.

Maksimalno povećavanje mogućnosti Fadecandy -a: Linije i trake

Spomenuo sam ranije da svaki Fadecandy može pokrenuti do 8 traka od po 64 piksela. Moji trokuti sadrže mnoge linije različitih dužina piksela, neke linije sa samo nekoliko piksela.

Kad bih svaku od ovih linija tretirao kao traku, izgubio bih MNOGO sposobnosti Fadecandyja.

Nasuprot tome, ako želim potpuno iskoristiti mogućnosti Fadecandy -a i imati 64 LED diode na svakoj traci, morao bih imati neke trake koje su počele u sredini retka, a koje će kasnije biti zbunjujuće.

Morao sam smisliti kako najbolje spojiti linije u trake kako bih maksimalno iskoristio mogućnosti traka, bez razdvajanja linija.

Na kraju…

Ravnopravne ploče imaju četiri trake, koje se sastoje od:

  • 30, 30 (ukupno 60 - crveno na priloženoj slici)
  • 30, 22 (ukupno 52 - narandžasta na priloženoj slici)
  • 22, 22, 14 (ukupno 58 - žuto na priloženoj slici)
  • 14, 14, 6, 6, 6 (ukupno 46 - zeleno na priloženoj slici)

Isosceles ploče imaju dvije trake, sastavljene od:

  • 23, 28 (ukupno 51 - plavo na priloženoj slici)
  • 3, 7, 11, 15, 19 (ukupno 55 - ljubičasta na priloženoj slici)

Korak 7: Postavite Fadecandys i napajanje

Postavite Fadecandys i napajanje
Postavite Fadecandys i napajanje

Ova slika prikazuje spljošteni pogled na površinu kupole.

LED paneli

Svaki trokutni panel označen je brojem 1-11, koji se odnosi na Fadecandy koji ga kontrolira. Svaki Fadecandy ima tri trokuta, tako da trokuti imaju i slovo, A-C.

Ostali elementi

Zelene kutije prikazuju lokaciju Fadecandysa. Svaki Fadecandy je montiran na malu ploču koja također distribuira snagu, pokazat ću to detaljno u nekoliko koraka.

Ljubičaste kutije prikazuju USB čvorišta. Fadecandysi su povezani sa Windows radnom površinom, putem ovih čvorišta.

Plave kutije prikazuju lokaciju izvora napajanja koji se nalaze u 3 sušne kutije, na podu oko kupole.

Samo da se malo zakomplicira

Ako usporedite lokaciju FC10 i FC11, primijetit ćete da je FC10 najbliži najdužoj liniji svojih jednakokračnih ploča, dok je FC11 najbliži najkraćoj liniji.

Takođe, ako pogledate 10C vidjet ćete da je Fadecandy desno od njega, dok je 10A lijevo.

Morao sam uzeti u obzir ove varijacije prilikom razmatranja koliko je kabela svakoj LED traci potrebno na početku i pri njihovom mapiranju.

Korak 8: Pretvaranje linija u trake

Pretvaranje linija u trake
Pretvaranje linija u trake

Ova proračunska tablica trebala je utvrditi koliko kabela treba proći na početku svakog dijela LED trake.

Koliko je kabla potrebno?

Neke linije imaju oznaku "jst", što znači da su početak trake i samo im je potreban JST konektor.

Neke trake imaju "jst" i dužinu, što znači da traka počinje na određenoj udaljenosti od Fadecandy -a (kao što smo vidjeli u rasporedu u prethodnom koraku), i potrebna joj je ta dužina kabela da bi je dosegla prije dodavanja JST konektora.

Neke trake imaju samo duljinu, što znači da ih ta dužina kabela mora spojiti s presjekom trake ispred sebe.

Korak 9: Priprema LED trake

Priprema LED trake
Priprema LED trake
Priprema LED trake
Priprema LED trake

LED traka

Koristim LED traku u stilu ws2812b, koja ima tri ulaza, napajanje 5V, uzemljenje i podatke. Korištenje 3-pinskih ženskih JST konektora omogućava mi povezivanje na svaki od ovih pinova zasebno. Muški partneri JST konektora opskrbljuju napajanjem i podacima.

Lemljenje

Koristeći moju proračunsku tablicu iz prethodnog koraka, izrezao sam svu LED traku na potrebne duljine, lemio na potrebne duljine kabela i JST konektore. Također sam stavio kondenzator na početak svake trake, ovo je kako bih izbjegao bilo kakve vršne inicijalne struje koje bi uništile prvi piksel u traci. (To mi se već događalo u prethodnim projektima gdje nisam dodao kondenzator, tako da to svakako vrijedi učiniti.)

Zaptivanje

Dodao sam malo RTV silikona na izloženi dio trake, pokrio ga čistim termoskupljanjem i raznio toplinskim pištoljem kako bi ponovno zabrtvio vodootpornost.

Korak 10: Napravite panele

Napravite panele
Napravite panele

Materijal

Odlučio sam koristiti šperploču od topole od 4 mm za izradu ploča. Držao sam ga tankim kako bih smanjio težinu. Izračunao sam ukupnu težinu šperploče i kontaktirao konstrukciju sa glavčinama da provjerim da li sam unutar dopuštenih težina za vješanje stvari sa konstrukcije kupole. Budući da se težina prilično ravnomjerno raspoređuje po kupoli, to je u redu. Volio bih upotrijebiti akril, ali nažalost nije mi bilo budžeta za ovaj projekt.

Dodatak za LED traku

Nisam želio zalijepiti LED traku direktno na ploče jer bih želio biti u mogućnosti zamijeniti dijelove neispravne trake i potencijalno ponovo upotrijebiti svu traku u nekom trenutku, pa sam odlučio napraviti rupe na pločama za upotrebu kablovske vezice. Točke na priloženoj slici prikazuju raspored rupa za vezanje kabela.

Izrezivanje ploča

Postoji ukupno 33 trokuta, a oni se uklapaju u 9 listova šperploče 2440 x 1220 mm prema rasporedu koji vidite na priloženoj slici.

U idealnom svijetu svaki bih od 9 listova sloja ubacio direktno u laserski rezač i izrezao trokute i rupe za vezanje kabela u isto vrijeme. Nažalost, živimo u svijetu u kojem su laserski rezači 2440 x 1220 mm rijetki, pa je trokute trebalo izrezati gusjenicom.

Još tužnije, mi također ne živimo u svijetu u kojem bi čak i jedna od mojih trokutastih ploča stala u laserski rezač u školi, pa sam morao laserski izrezati predložak polovice svakog od trokutastih dizajna i upotrijebiti ga za ručno bušenje rupa.

Obojila sam i stražnju stranu trokuta, većinu u crno, a zatim šest nasumičnih srebrnih.

Korak 11: Kabel vežite LED traku za ploče

Kabel vežite LED trakom za ploče
Kabel vežite LED trakom za ploče
Kabel vežite LED trakom za ploče
Kabel vežite LED trakom za ploče

Ovo je bilo mnogo vezivanja kablova! Srećom, imao sam prijatelja da im pomognem.

Oznake kablova

Svaki JST konektor označio sam oznakom kabla označenom bojom kako bih ga olakšao pri uključivanju u Fadecandy. Naručene su u duginim bojama, pa za svaki Fadecandy postoji:

  • Traka 1- Crvena
  • Traka 2 - Narandžasta
  • Traka 3 - Žuta
  • Traka 4 - zelena
  • Traka 5 - Plava
  • Traka 6 - Ljubičasta
  • Traka 7 - Siva
  • Traka 8 - bijela

Nije baš duga, ali to su boje u kojima su stigle etikete i radi!

(Neki od Fadecandysa, oni koji pokreću samo 3 jednakokrake ploče, umjesto 1 jednakostranične i 2 jednakokrake, koriste samo 6 traka.)

Korak 12: Objesite panele u kupolu

Objesite panele u kupolu
Objesite panele u kupolu
Objesite panele u kupolu
Objesite panele u kupolu
Objesite panele u kupolu
Objesite panele u kupolu

Moje trokutaste ploče su nešto manje od razmaka između podupirača, želio sam da slobodno vise u prostoru, umjesto da ih čvrsto pričvršćujemo za podupirače.

Metoda vješanja

Svaki čvor kupole ima ušicu - oni nisu standardni, ali ih Buildwithhub prodaje u pakovanju. Ovi vijci su savršeni za vješanje stvari (iako pazite da ne objesite preveliku težinu s jednog čvora).

Odlučio sam upotrijebiti paracord i male kopče za karabinere. Kabel se provlači kroz dvije rupe u svakom kutu ploče. Karabin pričvršćuje kabel za vijak. Da bih zategnuo kabel i provjerio je li ploča pravilno postavljena u prostoru, svakom sam dodao i plastični prekidač. To znači da se mogu lako pričvrstiti dok su labavi, a zatim ih nakon toga zategnuti kako bi ih postavili u središte prostora.

Vrlo sam zadovoljan kako je metoda karabiner ispala. Vrlo je zadovoljavajuće pričvrstiti panele na kupolu, klik klik klik. Brzo i jednostavno ih možete ukloniti.

Korak 13: Napravite ploče za distribuciju napajanja i podataka

Napravite ploče za distribuciju napajanja i podataka
Napravite ploče za distribuciju napajanja i podataka
Napravite ploče za distribuciju napajanja i podataka
Napravite ploče za distribuciju napajanja i podataka

Dakle, lemili smo hrpu JST konektora na hrpu LED traka, ali u šta se oni priključuju?

Svaka traka mora biti spojena na napajanje, uzemljenje i podatke iz Fadecandy -a. Postoji 11 priključnih ploča koje drže 11 Fadecandysa i distribuiraju napajanje iz 11 izvora napajanja. Lasersko sam izrezao ove ploče iz ostatka sloja topole od 4 mm. Sa strane se nalaze utori za komade čičak trake, koji uredno pričvršćuju panele na podupirače kupole.

Snaga

Svaka LED dioda koristi 0,06A pri punoj svjetlini. To znači da je ukupna snaga potrebna za rad 4378 piksela pri punoj snazi ~ 1,3kW.

Međutim, u osnovi imam 11 potpuno odvojenih strujnih krugova. (Oni su spojeni samo putem -ve putem Fadecandyja. Nemojte spajati +ve zasebnih izvora napajanja jer je to opasno.) Svaki krug napaja samo najviše 428 piksela, ukupno 128 W, tako da je struja na mnogo sigurniji nivo.

Moji izvori napajanja mogu dati 150W svaki (30A na 5V).

Na priključnoj ploči napajanje i uzemljenje dolaze iz izvora napajanja na dnu, zatim su spojeni na vago konektore, koji ih distribuiraju kroz 8 muških JST konektora.

Podaci

Fadecandy je pričvršćen s lijeve strane ploče, a USB kabel dolazi odozdo isto kao i kabeli za napajanje.

Podatkovni kabel JST konektora lemljen je na traku ženskih pinova sa jednim zaglavljem koji se priključuje na pinove Fadecandy -a. Jedan od kontakata za uzemljenje na Fadecandy -u spojen je na krug uzemljenja. (Igle za uzemljenje su sve međusobno povezane, pa nije potrebno sve ih spajati)

Korak 14: Pokrivanje tkanine

Pokrivanje tkanine
Pokrivanje tkanine
Pokrivanje tkanine
Pokrivanje tkanine
Pokrivanje tkanine
Pokrivanje tkanine

Šivanje tkanine bilo je neočekivano jedan od najtežih i dugotrajnijih dijelova ovog projekta. Na sreću imao sam prijatelja da mi pomogne!

Raspored

Na spljoštenom dijagramu kupole možete vidjeti da se poklopac sastoji od 5 pentagona koji se sastoje od po 5 jednakokrakih trokuta, plus 8 jednakostraničnih trokuta. Korice smo napravili ovim redoslijedom - prvo smo sašili 5 peterokuta, a zatim ih spojili jednakostraničnim trokutima.

(Crni dijelovi na tom dijagramu su otvoreni i nepokriveni.)

Mjerenje

Pokušali smo dokučiti mjerenja za trokute koristeći matematiku kao normalni ljudi, ali iz nekog razloga to se stalno pojavljivalo pogrešno i nije baš odgovaralo kupoli, pa smo na kraju upotrijebili komad polikorda kroz ušice čvorova za izmjerite veličinu, a zatim upotrijebite ovaj polikordni trokut kao predložak. Ne znam zašto su korištenja poznatih mjerenja podupirača i čvorova zazora išla naopako, 3D trokuti zbunjuju.

Pentagoni

Dok smo pravili jednakokrake trokute i šivali ih u peterokute, često smo ga objesili na kupolu kako bismo provjerili je li sve u redu. Pričvršćuje se na kupolu pomoću malih gumica koje su ušivene na tačke gdje se trokuti spajaju.

Spajajući ga zajedno

Nakon što smo napravili pet peterokuta, počeli smo izrezivati jednakostranične trokute koristeći istu metodu - polikord kroz ušice. Kad smo na ovaj način sašili dva peterokuta, shvatili smo da se uopće ne slaže dobro. Stoga smo umjesto toga odlučili objesiti sve peterokute u kupoli i pričvrstiti im jednakostranične trokute. Zatim, nakon što je sve zabodeno, skinuli smo ga i moj prijatelj ga je sašio u jedan čvrsti komad.

Ovako pričvršćivanje bilo je puno posla, uglavnom s rukama direktno iznad glave, često pokušavajući zakačiti tkaninu s vanjske strane kupole, dok stojim s unutrašnje strane. Zabava!

Označavanje

Usput smo komade označili olovkom od tkanine topive u vodi … ove su stvari odlične jer možete pisati direktno na tkaninu, a zatim je poprskati vodom i tinta će nestati (ponekad je potrebno nekoliko poteza, ali uspijeva))

Korak 15: Vješanje tkanine

Image
Image

Tkanina je okačena u kupolu dužinama elastike koja je ušivena na svakoj tački, a vezuju se za ušice na čvorovima kupole.

Vezivanje i odvezivanje elastika nije tako brzo kao izrezivanje panela, pa bih ovu metodu u nekom trenutku želio zamijeniti karabinerima ili nekim drugim kopčama.

Korak 16: Pričvršćivanje Kinecta

Pod
Pod

U odvažnom iskazu povjerenja u svemir, ni u jednom trenutku nisam mjerio jaz između panela kako bih bio siguran da će Kinect zaista stati. (Molim vas nemojte reći mojim tutorima)

Možete zamisliti moju radost kad se ovako uklopila.

Ova slika prikazuje Kinect v2, ali sam na kraju koristio Kinect v1 iz razloga o kojima ću kasnije govoriti.

Samo se pričvršćuje na podupirač pomoću dvostrane čičak trake.

Korak 17: Pod

Pod je napravljen od međusobno povezanih prostirki od EVA pjene koje sam dobio od B&Q -a. Sada sam ih koristio za dva projekta i odličan je za zatvorene prostore. Veoma je udobno za sedenje.

Na otvorenom na vjetrovitim festivalima poput Burning Man -a potrebno ga je osigurati svuda, jer će vjetar ući ispod njega i podignuti cijelu stvar.

Korak 18: To je izgradnja završena … prema kodu

Hvala što ste se pridržavali do sada. To je sve što je fizički urađeno. Razgovarajmo sada o softveru.

Korak 19: Fadecandy server

Fadecandy Server
Fadecandy Server
Fadecandy Server
Fadecandy Server

Preuzmite softver

Softver Fadecandy dostupan je ovdje.

Preuzmite cijeli github i raspakirajte ga.

Pokrenite server

Idite do mape 'bin' unutar fadecandy stvari koje ste upravo preuzeli.

Kliknite na fcserver.exe.

Ovo će učitati cmd prozor koji prikazuje sve povezane Fadecandy uređaje. U ovom slučaju postoji 11.

Testirajte LED diode

Idite na https://127.0.0.1:7890/ da vidite korisničko sučelje Fadecandy servera. Ovo ponovo prikazuje sve povezane uređaje i omogućuje mali nadzor.

Klikom na padajući izbornik testnog uzorka možete postaviti sve piksele za taj Fadecandy na punu ili polovinu svjetline. Takođe je moguće učiniti da sićušna zelena LED dioda na samoj fadekandi treperi klikom na "identifikuj".

Korak 20: Konfigurirajte Fadecandy server

Konfigurirajte Fadecandy Server
Konfigurirajte Fadecandy Server

Trenutno su svi Fadecandysi učitani nasumičnim redoslijedom. Ranije sam označio svoje trouglove 1-11, ali ne postoji način da računar zna koji je koji u ovom trenutku. Da bismo to učinili, moramo stvoriti konfiguracijsku datoteku.

Koji je to Fadecandy

Prije nego što možemo reći računaru u kojem su redu Fadecandysi, moramo sami shvatiti koji je koji. To sam učinio korištenjem korisničkog sučelja preglednika da bi svaki odjeljak zasvijetlio, a zatim zabilježio koji je to bio i koji je njegov serijski broj.

Konfiguracijska datoteka

U konfiguracijskoj datoteci navodimo sve serijske brojeve, indeksni piksel na kojem počinju i koliko piksela teoretski kontroliraju. Kažem teoretski jer ću mapirati piksele kao da ih ima 512 po Fadecandyju, iako ih je u stvari manje. Ovo samo olakšava jer znamo da je prvi piksel bilo kojeg Fadecandyja uvijek [Fadecandy broj * 512].

Fadecandy ne brine što svaki od njih ima manje piksela od maksimalnog, a mi ćemo se pobrinuti za to u kodu za obradu.

Učitavanje konfiguracijske datoteke

Sada, za pokretanje Fadecandy servera, umjesto da samo kliknemo fcserver.exe, moramo mu proslijediti ovu konfiguracijsku datoteku.

To radimo otvaranjem cmd upita unutar mape bin i upisivanjem

fcserver config.json

Ovo će sada učitati sve Fadecandys na prave adrese.

Korak 21: Mapiranje piksela

Image
Image
Kinect integracija
Kinect integracija

Dymaxion mapiranje

Buckminster Fuller (koji je popularizirao geodetske kupole), također je stvorio dymaxion kartu, koja predstavlja prikaz zemlje kao da je na površini ikosaedra. Može se presaviti u 3D ili spaliti u 2D.

Na isti način, izravnavam površinu svoje kupole iz njenog 3D oblika u 2D prikaz, kao što je prikazano na priloženoj slici. Ovaj 2D prikaz bit će preslikan u platno za obradu gdje se sve što nacrtam na platnu odmah prikazuje preko LED dioda.

Obrada

Obrada je vizuelni programski jezik. Baš kao što biste nacrtali pravokutnik u Photoshopu pomoću miša, možete nacrtati pravokutnik u obradi tako što ćete napisati kod:

rect (100, 80, 10, 50);

To bi vam dalo pravokutnik koji počinje 100 px unutra, 80 px dolje, 10 px širine i 50 px visok.

Ako niste upoznati s obradom, toplo preporučujem vodiče Daniela Shiffmana na Youtubeu koji su zabavni koliko i informativni.

Crtanje linija LED dioda

Obrada radi s Fadecandy -om iz kutije. Postoji funkcija za postavljanje LED dioda u redove, govoreći joj:

  • početni indeks / adresa LED dioda u toj liniji
  • stvarni broj piksela u redu
  • x, y lokacija središta linije
  • razmak između njih
  • ugao linije

Crtanje trouglova

Napisao sam funkciju za svaki od mojih tipova trokuta (jednakostranični i jednakokračni). Kažem mu:

  • početni indeks / adresa LED dioda u ovom cijelom trokutu
  • središte trougla
  • pod kutom pod kojim se nalazi cijeli trokut

Iz ovih informacija ispisuje linije LED dioda, koristeći trigonometriju da ih pravilno postavi na platno za obradu.

(Možda se sjećate mnogih koraka unatrag, istaknuo sam da zbog lokacije Fadecandysa neki jednakokračni trokuti počinju na najdužoj traci, a neki na najkraćoj, a neki ulaze s lijeve, a neki s desne strane. To znači da ja zapravo imaju četiri funkcije za jednakokrake trokute)

O adresama

Kad kažem indeks / adresa, mislim na to kako se Fadecandy obraća LED -ima.

npr.

  • Na prvom Fadecandyu prva traka počinje s 0
  • Na prvom Fadecandy -u druga traka počinje sa 64 (bez obzira koliko piksela ima na prvoj traci)

Na prvom Fadecandy -u treća traka počinje sa 128 (bez obzira koliko piksela ima na prve dvije trake)

  • Na drugom Fadecandy -u prva traka počinje na 512 (bez obzira koliko piksela zapravo ima u prvom Fadecandy -u
  • Na drugom Fadecandy -u, druga traka počinje od 576 (… shvaćate)

Kod

"Prazna" verzija mog koda kupole dostupna je na githubu ovdje.

Ovaj kod sadrži gore opisano mapiranje, ali nema grafike osim kruga nacrtanog na mjestu gdje se nalazi miš.

n.b Pikseli će se prikazati u ovom kodu samo ako imate pokrenut Fadecandy server.

Korak 22: Kinect integracija

Kinect 1 ili 2?

Postoje dvije verzije Kinecta. Kinect v1 je radio sa Xbox 360, dok je Kinect v2 radio sa Xbox One (zbunjujuće).

Koristim Kinect v1. Dio razloga za to je što je vrlo teško produžiti duljinu USB kabela na Kinect v2 zbog količine podataka koji se šalju. Zahtijeva skup i teško pronaći produžni kabel. Budući da je moj Kinect montiran na vrhu kupole, ne mogu spojiti Kinect v2 izravno na radnu površinu na podu. Smiješan problem koji imamo, ali tu smo.

Neke od mojih fotografija i video zapisa prikazuju Kinect v2, to je zato što sam u početku imao postavu gdje sam imao Kinect v2 spojen na kabel prijenosnog računara vezan na pola kupole, koji je slao informacije preko OSC -a na radnu površinu koja kontrolira LED diode. Ovo je dobro funkcioniralo za neke aplikacije, ali kad sam jednom htio koristiti feed sa cijelom dubinom, nisam ga mogao poslati po cijelom OSC -u pa sam zamijenio Kinect v1.

Instalacija

Neću govoriti o instaliranju SDK -a i nabavci ispravnih kabela za Kinect jer postoji mnogo vodiča kako to učiniti. Imam instaliran SDK v1.8, a u okviru Obrade koristim biblioteku OpenKinect.

Korak 23: Kinect dubinsko praćenje

Kod

Moj kod je dostupan na githubu ovdje. Prilično je dobro komentirano pa pregledajte!

Ovo je pregled onoga što kôd radi:

Kinect dubinska kamera se preslikava u boju (npr. Daleko = crveno, blizu = zeleno) i prikazuje se direktno preko LED dioda. Ali tu ima više od toga.

Prvo, boja svakog piksela u dubinskom unosu se pomiče naprijed -natrag oko njegove stvarne nijanse, kako bi se dodao svjetlucavi efekt.

Drugo, prilikom pokretanja skice, klik mišem će očitati pozadinu, tada će se prikazati samo pikseli koji su bliži od tog pozadinskog čitanja. Ovo sprječava pojavljivanje poda/bilo kakvih jastuka/strukture kupole.

Postoji i funkcija za poništavanje pozadine koja čita svakih x kadrova, pa ako ljudi unutar kupole mirno leže, neće se pojaviti. To znači da se stvarno kretanje ističe, umjesto da prikazuje cijelu masu dubokih besmislica. (Uskoro ću ovo zamijeniti lerpiranom verzijom, tako da pozadina ne vrši tako "tvrdo" resetiranje, već se vremenom razvija)

Postoji i pozadinska animacija koja prikazuje nakupine mrlja u boji, količina klastera je obrnuto preslikana na količinu radnje koja se događa u kupoli, pa ako nema nikoga ili su mirni, postoji mnogo animacije. Zatim postupno nestaje jer se unutra događa sve više kretanja.

Korak 24: Kupola završena

Image
Image
Dome Done!
Dome Done!
Dome Done!
Dome Done!

Nadam se da ste naučili nešto i da vam je ovo bilo zanimljivo. Pogledajte cijeli video koji ima hrpu snimaka kako kupola radi.

Ovdje sam za zabavu uključio i fotografije sa dugom ekspozicijom koje sam snimio When in Dome. Uživajte!

Napravi takmičenje Glow 2018
Napravi takmičenje Glow 2018
Napravi takmičenje Glow 2018
Napravi takmičenje Glow 2018

Prva nagrada na takmičenju Make it Glow 2018

Preporučuje se: