Sommario:

Cupola LED interattiva con Fadecandy, elaborazione e Kinect: 24 passaggi (con immagini)
Cupola LED interattiva con Fadecandy, elaborazione e Kinect: 24 passaggi (con immagini)

Video: Cupola LED interattiva con Fadecandy, elaborazione e Kinect: 24 passaggi (con immagini)

Video: Cupola LED interattiva con Fadecandy, elaborazione e Kinect: 24 passaggi (con immagini)
Video: Обновление Создателя: Когда в Куполе 2024, Luglio
Anonim
Image
Image
Cupola LED interattiva con Fadecandy, Processing e Kinect
Cupola LED interattiva con Fadecandy, Processing e Kinect
Cupola LED interattiva con Fadecandy, Processing e Kinect
Cupola LED interattiva con Fadecandy, Processing e Kinect
Cupola LED interattiva con Fadecandy, Processing e Kinect
Cupola LED interattiva con Fadecandy, Processing e Kinect

Che cosa

When in Dome è una cupola geodetica di 4,2 m ricoperta di 4378 LED. I LED sono tutti mappati individualmente e indirizzabili. Sono controllati da Fadecandy e Processing su un desktop Windows. Un Kinect è attaccato a uno dei montanti della cupola, così il movimento all'interno della cupola può essere tracciato e le persone possono interagire con le luci.

Come mai

Sto esplorando l'esperienza di gruppo attraverso l'interazione condivisa. Mi piace creare interfacce che molte persone possano usare contemporaneamente. La superficie LED della cupola è un'uscita adatta per un'interfaccia multiutente perché è enorme, quindi molte persone possono vederla. La cupola crea anche uno spazio accogliente e sferico, che incoraggia le persone a voltarsi l'una verso l'altra. Il Kinect funziona benissimo come input multiutente perché le persone possono muoversi e influenzare il campo di profondità allo stesso tempo, l'unico limite è quante persone possono stare insieme nello spazio.

Sviluppo continuamente nuovi metodi di interazione per When in Dome, per vedere quale effetto hanno i diversi metodi di input e cosa funziona bene per diversi gruppi di persone. Sono particolarmente curioso di vedere quali interfacce incoraggiano la connessione tra amici e sconosciuti all'interno della cupola e cosa rende l'esperienza condivisa significativa e utile.

In cui si

Ho progettato e costruito When in Dome come progetto finale per il mio Master, che era Design for Performance and Interaction presso l'Interactive Architecture Lab, The Bartlett, UCL.

Come

Alcune delle tecnologie e degli strumenti utilizzati:

  • Fadecandy
  • in lavorazione
  • Kinect (il mio l'ho preso da eBay)
  • Troncatrice
  • Sega da binario
  • Macchina da cucire
  • Saldatore
  • Pistola termica
  • Pistola per colla a caldo
  • Taglio laser
  • Trapano

Alcune delle attrezzature utilizzate:

  • Buildwithhubs hub kit
  • Legname segato trattato per puntoni a cupola
  • Compensato di pioppo 4mm
  • Tessuto di diffusione bianco
  • Tessuto nero
  • Barra piatta in alluminio
  • Connettori Wago
  • Cavo 12awg e 24awg
  • Alimentatori 5v 30A
  • Pavimenti in schiuma
  • Jst connettori
  • Condensatori

Andiamo

Ci sono molti componenti di questo progetto di cui parlerò, spero che troverai qualcosa di utile e interessante all'interno!

Fase 1: La Cupola

Il Duomo
Il Duomo
Il Duomo
Il Duomo

Kit mozzo

Ho deciso di costruire la mia cupola con un kit di buildwithhubs e li consiglierei sicuramente.

Vendono kit di connettori e danno consigli su quali materiali acquistare per i montanti. La maggior parte delle loro cupole sono usate nei giardini delle persone, mentre le mie saranno in pubblico, quindi ho anche comprato il loro kit di tappi extra sicuri, che impediscono ai montanti di fuoriuscire se qualcuno si appoggia alla cupola.

Taglia

La mia cupola ha un diametro di 4,2 m. Ho scelto questa dimensione perché significava che il lato più lungo dei triangoli che compongono la cupola sarebbe stato di 1,2 m, e questo si adattava perfettamente ai fogli di compensato quando sono arrivato a realizzare i pannelli per contenere i LED.

Passaggio 2: crea i puntoni

Image
Image

Lunghezze

Ho usato il calcolatore del montante di buildwithhubs per calcolare le lunghezze necessarie per realizzare una cupola di 4,2 m. 30 "corti" a 1059 mm e 35 "lunghi" a 1209 mm.

Materiale

2 pacchi di 24 segati da 19 mm x 38 mm x 2400 mm di B&Q (come consigliato sul sito buildwithhubs) sono sufficienti per una cupola. Funziona abbastanza bene, ma se lo facessi di nuovo otterrei qualcosa che ha più forza laterale.

Processi

I montanti sono stati tagliati a misura usando una troncatrice e poi li ho dipinti stendendoli tutti su un foglio di polvere e rotolandoci sopra. Questo ha creato un timelapse divertente!

Quindi li ho raggruppati insieme in lotti di 6 alla volta e ho avvitato i pezzi del connettore alle estremità.

Passaggio 3: costruisci la cupola

Una volta realizzati i montanti, costruire la cupola è semplicissimo. Non parlerò in dettaglio del processo in quanto ci sono istruzioni sul sito buildwithhubs e forniscono anche un opuscolo.

Passaggio 4: sollevalo

Pianifica come dovrebbero apparire i LED
Pianifica come dovrebbero apparire i LED

Non volevo che i pannelli LED fossero proprio vicino al pavimento, poiché ciò avrebbe significato che molti di essi sarebbero stati bloccati dalle persone nella cupola. Volevo anche rendere la cupola più alta in modo che fosse più spaziosa e accogliente.

Gambe

Ho realizzato gambe alte 50 cm con 2x4 e ho avvitato gli stessi connettori dei montanti.

Quindi, per aumentare la resistenza e l'integrità strutturale della base, ho utilizzato una barra piatta in alluminio per creare delle X tra ogni sezione delle gambe.

La porta

Ho rimosso uno dei montanti orizzontali per creare una porta e l'ho sostituito con un pezzo di compensato sul pavimento per mantenere le gambe alla distanza corretta.

Passaggio 5: pianifica come dovrebbero apparire i LED

Software

Ho usato SketchUp per il mio lavoro di pianificazione 3D perché è disponibile per l'uso gratuito in un'app nel browser. Fortunatamente (dato che non sono un esperto di modellazione 3D) ho trovato un modello di cupola geodetica disponibile nel magazzino 3D, dove ci sono un sacco di modelli gratuiti.

Quanti LED?

Il layout doveva tenere in considerazione l'estetica ma anche la potenza e la distribuzione dei dati. Ho deciso di utilizzare 11 Fadecandy (e 11 alimentatori) per coprire 33 dei triangoli della cupola. Ciò significherebbe che i Fadecandy (e gli alimentatori) guiderebbero 3 triangoli ciascuno e che un lato della cupola potrebbe essere aperto in modo che le persone possano vedere dall'esterno.

Questo mi ha dato un massimo di 512 LED per 3 triangoli, poiché ogni Fadecandy può pilotare 8 strisce fino a 64 ciascuna.

Decidere su un layout

Non tutti i triangoli sono uguali! La mia cupola è uno stile 2V, il che significa che ha due tipi di triangoli, equilateri e isosceli.

Ho trovato quattro diversi potenziali layout per i LED e sono andato su Instagram per chiedere alle persone quale gli piaceva di più. Lo stile 1 e lo stile 3 sembravano avere la meglio. Lo stile 3 era il mio preferito, ma i triangoli concentrici nello stile 3 in realtà richiedono molte più strisce LED rispetto al layout a strisce, quindi ho deciso per lo stile 1. Ciò significa che ci sono 8 triangoli equilateri con layout LED a triangolo concentrico e 25 triangoli isosceli con LED a strisce disposizione.

Poiché i triangoli equilateri sono più grandi e contengono il layout concentrico, utilizzano molti più LED ciascuno rispetto ai triangoli isosceli. Quindi ho dovuto dividere gli equilateri attraverso i Fadecandys.

8 dei Fadecandys controllano 1 triangoli equilateri e 2 isosceli ciascuno. 3 dei Fadecandys controllano 3 triangoli isosceli ciascuno.

Passaggio 6: ulteriori informazioni sul layout dei LED

Maggiori informazioni sulla disposizione dei LED
Maggiori informazioni sulla disposizione dei LED
Maggiori informazioni sulla disposizione dei LED
Maggiori informazioni sulla disposizione dei LED

Con il layout generale deciso, avevo bisogno di capire esattamente quanti LED avrei messo su ciascun pannello. L'ho fatto utilizzando una combinazione di un foglio di calcolo per elaborare il modo migliore per massimizzare le capacità di Fadecandy e i disegni in scala in Illustrator, così ho potuto vedere come sarebbe apparso il layout.

Massimizzare la capacità di Fadecandy: Linee e strisce

Ho detto prima che ogni Fadecandy può pilotare fino a 8 strisce di 64 pixel ciascuna. I miei triangoli contengono molte linee di varie lunghezze di pixel, alcune linee con pochissimi pixel.

Se dovessi trattare ognuna di quelle linee come una striscia, perderei MOLTA delle capacità del Fadecandy.

Al contrario, se volessi massimizzare completamente la capacità del Fadecandy e avere 64 LED su ogni striscia, avrei bisogno di alcune strisce che sono iniziate nel mezzo di una linea e che sarà fonte di confusione da mappare in seguito.

Ho dovuto capire come unire al meglio le linee in strisce per massimizzare il più possibile la capacità delle strisce, senza dividere le linee.

Alla fine…

I pannelli equilateri hanno quattro strisce, composte da:

  • 30, 30 (60 totali - rosso su immagine allegata)
  • 30, 22 (52 totali - arancione su immagine allegata)
  • 22, 22, 14 (58 totali - giallo sull'immagine allegata)
  • 14, 14, 6, 6, 6 (46 in totale - verde sull'immagine allegata)

I pannelli isoscele hanno due strisce, composte da:

  • 23, 28 (51 in totale - blu su immagine allegata)
  • 3, 7, 11, 15, 19 (55 in totale - viola nell'immagine allegata)

Passaggio 7: disponi i Fadecandys e gli alimentatori

Disporre i Fadecandys e gli alimentatori
Disporre i Fadecandys e gli alimentatori

Questa immagine mostra una vista appiattita della superficie della cupola.

I pannelli LED

Ogni pannello triangolo è stato etichettato con un numero 1-11, che si riferisce al Fadecandy che lo controlla. Ogni Fadecandy ha tre triangoli, quindi i triangoli hanno anche una lettera, A-C.

Altri elementi

Le caselle verdi mostrano la posizione dei Fadecandys. Ogni Fadecandy è montato su un piccolo pannello che distribuisce anche la potenza, lo mostrerò in dettaglio in pochi passaggi.

Le caselle viola mostrano gli hub USB. I Fadecandy sono collegati a un desktop Windows, tramite questi hub.

Le caselle blu mostrano la posizione degli alimentatori, che si trovano in 3 drybox, sul pavimento intorno alla cupola.

Giusto per renderlo un po' più complicato

Se confronti la posizione di FC10 e FC11, noterai che FC10 è il più vicino alla linea più lunga dei suoi pannelli isosceli, mentre FC11 è il più vicino alla linea più corta.

Inoltre, se guardi 10C vedrai che Fadecandy è alla sua destra, mentre 10A è a sinistra.

Ho dovuto prendere in considerazione queste variazioni quando si considera la quantità di cavo necessaria per ciascuna striscia led all'inizio e durante la mappatura.

Passaggio 8: trasformare le linee in strisce

Trasformare le linee in strisce
Trasformare le linee in strisce

Questo foglio di calcolo era per capire quanto cavo doveva passare all'inizio di ogni sezione della striscia LED.

Quanto cavo è necessario?

Alcune linee sono etichettate "jst", il che significa che sono l'inizio della striscia e hanno solo bisogno di un connettore JST.

Alcune strisce hanno "jst" e una lunghezza, il che significa che la striscia inizia a una certa distanza dal Fadecandy (come abbiamo visto nel layout nel passaggio precedente) e ha bisogno di quella lunghezza di cavo per raggiungerla prima di aggiungere il connettore JST.

Alcune strisce hanno solo una lunghezza, il che significa che devono essere unite alla sezione di striscia prima di loro da quella lunghezza di cavo.

Passaggio 9: preparazione della striscia LED

Preparazione della striscia LED
Preparazione della striscia LED
Preparazione della striscia LED
Preparazione della striscia LED

La striscia LED

Sto usando una striscia LED in stile ws2812b, che ha tre ingressi, alimentazione 5V, terra e dati. L'utilizzo di connettori JST femmina a 3 pin mi consente di collegarmi a ciascuno di questi pin individualmente. Le controparti maschili dei connettori JST forniranno alimentazione e dati.

saldatura

Usando il mio foglio di calcolo del passaggio precedente, ho tagliato tutta la striscia LED nelle lunghezze richieste, saldata sulle lunghezze richieste del cavo e sui connettori JST. Ho anche messo un condensatore all'inizio di ogni striscia, questo per evitare che eventuali picchi di corrente iniziale rovinino il primo pixel della striscia. (Mi è già successo in progetti precedenti in cui non ho aggiunto il condensatore, quindi vale sicuramente la pena farlo.)

Sigillatura

Ho aggiunto del silicone RTV alla parte esposta della striscia, l'ho coperta con un termoretraibile trasparente e l'ho fatta saltare con una pistola termica per sigillare l'impermeabilità.

Passaggio 10: crea i pannelli

Crea i pannelli
Crea i pannelli

Materiale

Ho deciso di utilizzare compensato di pioppo da 4 mm per realizzare i pannelli. L'ho tenuto sottile per ridurre il peso. Ho calcolato il peso totale del compensato e ho contattato buildwithhubs per verificare se rientravo nei limiti di peso per appendere oggetti dalla struttura della cupola. Poiché il peso è distribuito abbastanza uniformemente sulla cupola, va bene. Mi sarebbe piaciuto usare l'acrilico, ma sfortunatamente era fuori budget per me per questo progetto.

Attacco per strisce LED

Non volevo incollare la striscia LED direttamente ai pannelli poiché mi piacerebbe essere in grado di sostituire le sezioni della striscia difettosa e potenzialmente riutilizzare tutta la striscia ad un certo punto, quindi ho deciso di praticare dei fori nei pannelli da utilizzare fascette per cavi. I punti sull'immagine allegata mostrano la disposizione dei fori delle fascette.

Ritagliare i pannelli

Ci sono 33 triangoli in totale e si inseriscono in 9 fogli di compensato 2440 x 1220 mm tramite il layout che vedi nell'immagine allegata.

In un mondo ideale avrei inserito ciascuno dei 9 fogli di compensato direttamente in un laser cutter e avrei tagliato contemporaneamente i triangoli e i fori delle fascette. Purtroppo viviamo in un mondo in cui i laser cutter da 2440 x 1220 mm sono rari, quindi i triangoli dovevano essere ritagliati usando una sega a binario.

Ancora più triste, non viviamo in un mondo in cui anche uno solo dei miei pannelli triangolari si adatterebbe al taglio laser a scuola, quindi ho dovuto tagliare al laser un modello di metà di ciascuno dei disegni triangolari e usarlo per praticare i fori a mano.

Ho anche dipinto il retro dei triangoli, la maggior parte neri e poi sei argento a caso.

Passaggio 11: legare la striscia LED ai pannelli

Cavo Legare la Striscia LED ai Pannelli
Cavo Legare la Striscia LED ai Pannelli
Cavo Legare la Striscia LED ai Pannelli
Cavo Legare la Striscia LED ai Pannelli

Questo era un sacco di cavi! Per fortuna avevo degli amici che mi aiutavano.

Etichette per cavi

Ho etichettato ogni connettore JST con un'etichetta del cavo codificata a colori, per rendere più facile quando si tratta di collegarlo al suo Fadecandy. Sono in ordine arcobaleno, quindi per ogni Fadecandy c'è:

  • Striscia 1- Rosso
  • Striscia 2 - Arancione
  • Striscia 3 - Giallo
  • Striscia 4 - Verde
  • Striscia 5 - Blu
  • Striscia 6 - Viola
  • Striscia 7 - Grigio
  • Striscia 8 - Bianco

Non è un arcobaleno esatto, ma questi sono i colori in cui sono arrivate le etichette e funziona!

(Alcuni dei Fadecandy, quelli che guidano solo 3 pannelli isosceli, anziché 1 equilatero e 2 isosceli, usano solo 6 strisce.)

Passaggio 12: appendere i pannelli nella cupola

Appendi i pannelli nella cupola
Appendi i pannelli nella cupola
Appendi i pannelli nella cupola
Appendi i pannelli nella cupola
Appendi i pannelli nella cupola
Appendi i pannelli nella cupola

I miei pannelli triangolari sono leggermente più piccoli dello spazio tra i montanti, volevo che fossero appesi liberamente nello spazio piuttosto che attaccarli saldamente ai montanti.

Metodo di sospensione

Ogni nodo della cupola ha un golfare: questi non sono di serie, ma Buildwithhubs li vende in una confezione. Questi golfari sono perfetti per appendere oggetti (anche se fai attenzione a non appendere troppo peso a un nodo).

Ho deciso di utilizzare paracord e piccoli moschettoni. Il cavo viene fatto passare attraverso due fori in ogni angolo del pannello. Il moschettone aggancia il cavo al golfare. Per stringere il cavo e assicurarmi che il pannello sia posizionato correttamente nello spazio, ho aggiunto anche una levetta di plastica a ciascuno. Ciò significa che possono essere facilmente agganciati mentre sono sciolti e quindi serrati in seguito per posizionarli al centro dello spazio.

Sono molto contento di come è venuto fuori il metodo del moschettone. È molto soddisfacente agganciare i pannelli alla cupola, fare clic fare clic. È anche facile e veloce rimuoverli.

Passaggio 13: creare pannelli di distribuzione dell'alimentazione e dei dati

Realizza pannelli di distribuzione dell'alimentazione e dei dati
Realizza pannelli di distribuzione dell'alimentazione e dei dati
Realizza pannelli di distribuzione di alimentazione e dati
Realizza pannelli di distribuzione di alimentazione e dati

Quindi, abbiamo saldato un sacco di connettori JST a un sacco di strisce LED, ma a cosa si collegano?

Ogni striscia deve essere collegata all'alimentazione, alla messa a terra e ai dati del Fadecandy. Ci sono 11 pannelli di connessione che contengono gli 11 Fadecandy e distribuiscono l'alimentazione dagli 11 alimentatori. Ho tagliato al laser questi pannelli da uno strato di pioppo da 4 mm avanzato. Ai lati, ci sono fessure per pezzi di velcro, che fissano ordinatamente i pannelli ai montanti della cupola.

Potenza

Ogni LED utilizza 0,06 A a piena luminosità. Ciò significa che la potenza totale necessaria per 4378 pixel per funzionare a piena potenza è di ~1.3kW.

Tuttavia, ho essenzialmente 11 circuiti di alimentazione completamente separati. (Sono collegati solo tramite -ve tramite il Fadecandy. Non collegare il +ve di alimentatori separati poiché questo è pericoloso.) Ogni circuito alimenta solo un massimo di 428 pixel, per un totale di 128 W, quindi la corrente è a un livello molto più sicuro.

I miei alimentatori sono in grado di fornire 150 W ciascuno (30 A a 5 V).

Sul pannello di connessione, l'alimentazione e la massa arrivano dall'alimentatore in basso, quindi vengono collegati ai connettori wago, che la distribuiscono su 8 connettori JST maschi.

Dati

Il Fadecandy è collegato a sinistra del pannello e il cavo USB entra dal basso come i cavi di alimentazione.

Il cavo dati del connettore JST è saldato a una striscia di pin femmina a intestazione singola che si inserisce nei pin del Fadecandy. Uno dei pin di terra del Fadecandy è collegato al circuito di terra. (I pin di terra sono tutti collegati tra loro, quindi non è necessario collegarli tutti)

Passaggio 14: rivestimento in tessuto

Rivestimento in tessuto
Rivestimento in tessuto
Rivestimento in tessuto
Rivestimento in tessuto
Rivestimento in tessuto
Rivestimento in tessuto

Cucire insieme il rivestimento in tessuto è stata inaspettatamente una delle parti più difficili e dispendiose in termini di tempo di questo progetto. Per fortuna avevo un amico che mi aiutava!

Disposizione

Sul diagramma appiattito della cupola si può vedere che la copertura è composta da 5 pentagoni formati da 5 triangoli isosceli ciascuno, più 8 triangoli equilateri. Abbiamo realizzato la copertina in questo ordine: prima abbiamo cucito insieme i 5 pentagoni, poi li abbiamo uniti insieme ai triangoli equilateri.

(Le sezioni nere su quel diagramma sono aperte e scoperte.)

Misurazione

Abbiamo provato a calcolare le misure dei triangoli usando la matematica come le persone normali, ma per qualche motivo continuava a venire male e non si adattava perfettamente alla cupola, quindi alla fine abbiamo usato un pezzo di polycord attraverso i golfari dei nodi per misurare le dimensioni e quindi utilizzare questo triangolo polycord come modello. Non so perché l'utilizzo delle misurazioni note degli struts+node gap continuasse ad andare male, i triangoli 3D sono confusi.

pentagoni

Mentre creavamo i triangoli isosceli e li cucivamo insieme in pentagoni, spesso li appendevamo alla cupola per controllare che tutto fosse allineato. Si fissa alla cupola mediante piccoli pezzi di elastico che vengono cuciti nei punti di incontro dei triangoli.

Unendolo insieme

Una volta realizzati i cinque pentagoni, abbiamo iniziato a ritagliare i triangoli equilateri usando lo stesso metodo: polycord attraverso i golfari. Una volta che abbiamo cucito insieme due dei pentagoni in questo modo, ci siamo resi conto che non si allineavano affatto bene. Quindi, invece, abbiamo deciso di appendere tutti i pentagoni nella cupola e fissarvi i triangoli equilateri. Poi, una volta appuntato tutto, l'abbiamo tolto e il mio amico l'ha cucito insieme in un unico pezzo solido.

Fissarlo in questo modo è stato molto faticoso, in gran parte con le braccia direttamente sopra la testa mentre cercavo di fissare il tessuto dall'esterno della cupola, stando in piedi all'interno. Divertimento!

etichettatura

Lungo la strada, abbiamo etichettato i pezzi con una penna per tessuti solubile in acqua… queste cose sono fantastiche in quanto puoi scrivere direttamente sul tessuto e poi spruzzarlo con acqua e l'inchiostro scomparirà (a volte ci vogliono alcuni tentativi, ma funziona)

Passaggio 15: appendere il tessuto

Image
Image

Il tessuto è appeso alla cupola da spezzoni di elastico che sono cuciti in ogni punto, questi si legano ai golfari ai nodi della cupola.

Legare e sciogliere gli elastici non è veloce come agganciare i pannelli, quindi vorrei sostituire questo metodo con moschettoni o qualche altra clip ad un certo punto.

Passaggio 16: collegamento del Kinect

Pavimento
Pavimento

In un'audace dimostrazione di fiducia nell'universo, in nessun momento ho misurato lo spazio tra i pannelli per assicurarmi che un Kinect si adattasse effettivamente. (Per favore non dirlo ai miei tutor)

Puoi immaginare la mia gioia quando si adattava così.

Questa immagine mostra un Kinect v2 ma ho finito per utilizzare un Kinect v1 per motivi che parlerò più avanti.

È semplicemente attaccato al montante tramite nastro biadesivo in velcro.

Passaggio 17: Piano

Il pavimento è fatto di tappetini in schiuma EVA ad incastro che ho ricevuto da B&Q. Li ho usati per due progetti ora ed è ottimo per interni. È molto comodo sedersi.

All'aperto in festival ventosi come Burning Man, deve essere assicurato dappertutto perché il vento si metterà proprio sotto di esso e solleverà il tutto.

Passaggio 18: questa è la build fatta… sul codice

Grazie per essere rimasto con me finora. Questa è tutta la build fisica FATTO. Ora parliamo del software.

Passaggio 19: server Fadecandy

Server Fadecandy
Server Fadecandy
Server Fadecandy
Server Fadecandy

Scarica il software

Il software Fadecandy è disponibile qui.

Scarica l'intero github e decomprimilo.

Esegui il server

Passa alla cartella "bin" all'interno delle cose di fadecandy che hai appena scaricato.

Fare clic su fcserver.exe.

Questo caricherà una finestra cmd che mostra tutti i dispositivi Fadecandy collegati. In questo caso sono 11.

Prova i LED

Vai a https://127.0.0.1:7890/ per vedere l'interfaccia utente del server Fadecandy. Questo mostra di nuovo tutti i dispositivi collegati e consente un minimo di controllo.

Facendo clic sul menu a discesa del modello di prova è possibile impostare tutti i pixel per quella Fadecandy alla luminosità massima o dimezzata. È anche possibile far lampeggiare il minuscolo LED verde sulla dissolvenza stessa facendo clic su "identifica".

Passaggio 20: configurare il server Fadecandy

Configura il server Fadecandy
Configura il server Fadecandy

In questo momento i Fadecandy sono tutti caricati in ordine casuale. In precedenza ho etichettato i miei triangoli 1-11 ma non c'è modo per il computer di sapere quale è quale al momento. Per farlo, dobbiamo creare un file di configurazione.

Quale Fadecandy è quale

Prima di poter dire al computer in che ordine si trovano i Fadecandy, dobbiamo capire quale è quale. L'ho fatto utilizzando l'interfaccia utente del browser per far illuminare ogni sezione, quindi annotando quale fosse e qual è il suo numero di serie.

Il file di configurazione

Nel file di configurazione elenchiamo tutti i numeri di serie, il pixel dell'indice da cui iniziano e quanti pixel controllano teoricamente. Dico teoricamente perché mapperò i pixel come se ce ne fossero 512 per Fadecandy, anche se in realtà ce ne sono di meno. Questo rende tutto più semplice poiché sappiamo che il primo pixel di qualsiasi Fadecandy è sempre [Numero Fadecandy * 512].

Il Fadecandy non si preoccupa che in realtà ognuno abbia meno pixel del massimo, e ci occuperemo anche di questo nel codice di Processing.

Caricamento del file di configurazione

Ora, per avviare il server Fadecandy, invece di fare clic semplicemente su fcserver.exe, dobbiamo passargli questo file di configurazione.

Lo facciamo aprendo un prompt cmd all'interno della cartella bin e digitando

fcserver config.json

Questo ora caricherà tutti i Fadecandy negli indirizzi giusti.

Passaggio 21: mappatura dei pixel

Image
Image
Integrazione Kinect
Integrazione Kinect

Mappatura Dymaxion

Buckminster Fuller (che ha reso popolari le cupole geodetiche), ha anche creato la mappa di dimaxion, che è una rappresentazione della terra come se fosse sulla superficie di un icosaedro. Può essere piegato per essere 3D o appiattito per essere 2D.

Allo stesso modo, sto appiattendo la superficie della mia cupola dalla sua forma 3D a una rappresentazione 2D, come mostrato nell'immagine allegata. Questa rappresentazione 2D verrà mappata in una tela di elaborazione in cui tutto ciò che disegno sulla tela viene immediatamente mostrato attraverso i LED.

in lavorazione

L'elaborazione è un linguaggio di programmazione visuale. Proprio come disegneresti un rettangolo in Photoshop usando il mouse, puoi disegnare un rettangolo in Processing scrivendo il codice in questo modo:

rect(100, 80, 10, 50);

Ciò ti darebbe un rettangolo a partire da 100 px in, 80 px in basso, 10 px di larghezza e 50 px di altezza.

Se non hai familiarità con Processing, consiglio vivamente i tutorial di Daniel Shiffman su Youtube che sono tanto divertenti quanto informativi.

Tracciare linee di LED

L'elaborazione funziona con Fadecandy pronto all'uso. Esiste una funzione per disporre i LED in linee, dicendogli:

  • l'indice/indirizzo di partenza dei LED in quella riga
  • il numero effettivo di pixel nella linea
  • la posizione x, y del centro della linea
  • la distanza tra loro
  • l'angolo della linea

Disegnare triangoli

Ho scritto una funzione per ciascuno dei miei tipi di triangoli (equilateri e isoscele). lo dico:

  • l'indice/indirizzo di partenza dei LED in tutto questo triangolo
  • il centro del triangolo
  • l'angolo a cui è l'intero triangolo

Da queste informazioni scrive le linee dei LED, usando la trigonometria per posizionarle correttamente sulla tela di elaborazione.

(Ricorderete molti passi indietro, ho sottolineato che a causa della posizione delle Fadecandys, alcuni triangoli isosceli iniziano dalla striscia più lunga e alcuni dalla più corta, e alcuni entrano da sinistra e altri da destra. Ciò significa che io in realtà hanno quattro funzioni per i triangoli isosceli)

A proposito di indirizzi

Quando dico indice/indirizzo, mi riferisco a come il Fadecandy si rivolge ai LED.

per esempio.

  • Sul primo Fadecandy, la prima striscia inizia da 0
  • Sulla prima Fadecandy, la seconda striscia inizia da 64 (non importa quanti pixel ci sono effettivamente sulla prima striscia)

Sul primo Fadecandy, la terza striscia inizia da 128 (non importa quanti pixel ci siano effettivamente sulle prime due strisce)

  • Nella seconda Fadecandy, la prima striscia inizia da 512 (non importa quanti pixel ci siano effettivamente nella prima Fadecandy
  • Sul secondo Fadecandy, la seconda striscia inizia a 576 (… hai l'idea)

Codice

Una versione "vuota" del mio codice dome è disponibile su github qui.

Questo codice contiene la mappatura sopra descritta ma nessun elemento grafico a parte un cerchio disegnato dove si trova il mouse.

n.b I pixel verranno visualizzati in questo codice solo se hai il server Fadecandy in esecuzione.

Passaggio 22: integrazione Kinect

Kinect 1 o 2?

Esistono due versioni di Kinect. Kinect v1 funzionava con Xbox 360, mentre Kinect v2 funzionava con Xbox One (confusamente).

Sto usando un Kinect v1. Parte del motivo è che è molto difficile estendere la lunghezza del cavo USB su Kinect v2 a causa della quantità di dati che viene inviata. Richiede un cavo di prolunga costoso e difficile da trovare. Poiché il mio Kinect è montato nella parte superiore della cupola, non riesco a collegare un Kinect v2 direttamente al desktop sul pavimento. Un problema ridicolo da avere, ma ci siamo.

Alcune delle mie fotografie e video mostrano un Kinect v2, questo perché inizialmente avevo una configurazione in cui avevo il Kinect v2 collegato a un cavo del laptop legato a metà della cupola, che inviava informazioni tramite OSC al desktop che controlla i LED. Questo ha funzionato bene per alcune applicazioni, ma una volta che volevo utilizzare l'intero feed di profondità, non potevo inviarlo su OSC, quindi sono passato a Kinect v1.

Installazione

Non parlerò dell'installazione dell'SDK e dell'ottenimento dei cavi corretti per Kinect poiché ci sono molte guide su come farlo. Ho installato l'SDK v1.8 e, all'interno di Processing, sto utilizzando la libreria OpenKinect.

Passaggio 23: monitoraggio della profondità con Kinect

Codice

Il mio codice è disponibile su github qui. È abbastanza ben commentato, quindi dai un'occhiata!

Questa è una panoramica di ciò che sta facendo il codice:

Il feed della telecamera di profondità Kinect è mappato a colori (ad es. lontano = rosso, vicino = verde) e visualizzato direttamente sui LED. Ma c'è di più.

In primo luogo, il colore di ciascun pixel nel feed di profondità oscilla avanti e indietro attorno alla sua tonalità effettiva, per aggiungere un effetto scintillante.

In secondo luogo, quando si avvia lo schizzo, facendo clic con il mouse verrà eseguita una lettura di sfondo, quindi verranno visualizzati solo i pixel più vicini di quella lettura di sfondo. Questo impedisce la visualizzazione del pavimento/eventuali cuscini/struttura della cupola.

C'è anche una funzione per ripristinare lo sfondo leggendo ogni x fotogrammi, quindi se le persone all'interno della cupola sono immobili, non verranno visualizzate. Ciò significa che il movimento effettivo risalta, invece di mostrare l'intera massa globulare di profonde sciocchezze. (Presto sostituirò questo con una versione lerped, quindi lo sfondo non fa un reset così "duro" ma, piuttosto, si evolve nel tempo)

C'è anche un'animazione di sfondo che mostra grappoli di macchie di colore, la quantità di grappoli è mappata inversamente alla quantità di azione che sta accadendo nella cupola, quindi se nessuno è presente o sono fermi, c'è molta animazione. Quindi scompare gradualmente man mano che si verifica più movimento all'interno.

Passaggio 24: cupola completata

Image
Image
Cupola fatta!
Cupola fatta!
Cupola fatta!
Cupola fatta!

Spero che tu abbia imparato qualcosa e l'abbia trovato interessante. Dai un'occhiata al video completo che ha un sacco di filmati della cupola che funziona.

Ho anche incluso qui per divertimento alcune fotografie a lunga esposizione che ho scattato a When in Dome. Divertiti!

Concorso Make it Glow 2018
Concorso Make it Glow 2018
Concorso Make it Glow 2018
Concorso Make it Glow 2018

Primo Premio al Concorso Make it Glow 2018

Consigliato: