Taula de continguts:

Cúpula LED geodèsica interactiva: 15 passos (amb imatges)
Cúpula LED geodèsica interactiva: 15 passos (amb imatges)

Vídeo: Cúpula LED geodèsica interactiva: 15 passos (amb imatges)

Vídeo: Cúpula LED geodèsica interactiva: 15 passos (amb imatges)
Vídeo: ✔CÚPULA LED ROJA PARA INGRESO DE QUINCEAÑERO 2024, Juliol
Anonim
Image
Image
Cúpula LED geodèsica interactiva
Cúpula LED geodèsica interactiva
Cúpula LED geodèsica interactiva
Cúpula LED geodèsica interactiva
Cúpula LED geodèsica interactiva
Cúpula LED geodèsica interactiva

Vaig construir una cúpula geodèsica formada per 120 triangles amb un LED i un sensor a cada triangle. Cada LED es pot dirigir de manera individual i cada sensor està ajustat específicament per a un únic triangle. La cúpula està programada amb un Arduino per il·luminar i produir un senyal MIDI en funció del triangle que col·loqueu la mà.

He dissenyat la cúpula per ser una pantalla divertida que fa que la gent s’interessi per la llum, l’electrònica i el so. Com que la cúpula es divideix molt bé en cinc parts, he dissenyat la cúpula per tenir cinc sortides MIDI separades que cadascuna pugui tenir un so diferent. Això fa que la cúpula sigui un instrument musical gegant, ideal per tocar música amb diverses persones simultàniament. A més de tocar música, també vaig programar la cúpula per a espectacles de llum i tocar una interpretació de Simon i Pong. L’estructura final fa poc més d’un metre de diàmetre i 70 cm d’alçada i es construeix principalment amb fusta, acrílic i peces impreses en 3D.

Hi ha diversos instructables fantàstics a les taules i els cubs LED que em van inspirar a iniciar aquest projecte. Tot i això, volia provar d’organitzar els LED amb una geometria diferent. No se m’acut una estructura millor per al projecte que una cúpula geodèsica, que també està ben documentada a Instructables. Per tant, aquest projecte és un remix / mashup de taules LED i cúpules geodèsiques. A continuació es mostren els enllaços a la taula LED i a la cúpula geodèsica Instructables que he comprovat al començament del projecte.

Taules i cubs LED:

www.instructables.com/id/RGB-LED-Pixel-Touc…

www.instructables.com/id/Touch-LED-Table-Re…

www.instructables.com/id/Led-Cube-8x8x8/

www.instructables.com/id/500-LED-Pixel-RGB-…

Cúpula geodèsica:

www.instructables.com/id/Folding-Geodesic-D…

www.instructables.com/id/Geodesic-dome-kit/

Pas 1: llista de subministraments

Llista de subministraments
Llista de subministraments
Llista de subministraments
Llista de subministraments
Llista de subministraments
Llista de subministraments

Materials:

1. Fusta per a puntals de la cúpula i base de la cúpula (la quantitat depèn del tipus i la mida de la cúpula)

2. Tira LED dirigible (tira de píxel LED de color dirigible de 16,4 peus / 5 m 160 leds Ws2801 Dc5v)

3. Arduino Uno (Atmega328 - muntat)

4. Tauler prototip (Penta Angel Double-Side Prototype PCB Universal (7x9cm))

5. Acrílic per a difusió de LEDs (full de fosa acrílica, transparent, mida de 12 "x 12" x 0.118 ")

6. Font d'alimentació (controlador de font d'alimentació del commutador Aiposen 110 / 220V a DC12V 30A 360W)

7. Convertidor Buck per Arduino (RioRand LM2596 DC-DC Buck Converter 1.23V-30V)

8. Convertidor Buck per a LEDs i sensors (DROK Mini Electric Buck Voltage Converter 15A)

9. 120 sensors IR (mòdul del sensor d’evitació d’obstacles per infrarojos)

10. Cinc multiplexors de 16 canals (analògic / digital MUX Breakout - CD74HC4067)

11. Sis multiplexors de 8 canals (Multiplexer Breakout - 8 Channel (74HC4051))

12. Cinc multiplexors de 2 canals (MAX4544CPA +)

13. Filferro de filferro (soldadura de PCB de 0,25 mm de cordó de coure estanyat amb filferro de filferro 305M 30AWG vermell)

14. Cable de connexió (Solid Core, 22 AWG)

15. Capçaleres de pins (capçalera de pin masculí Gikfun 1 x 40 pin de 2,54 mm d'una fila separable)

16. Cinc preses MIDI (presa MIDI compatible amb taules de pa (DIN de 5 pins))

17. Deu resistències de 220ohm per a preses MIDI

18. Separadors separadors per muntar productes electrònics a la cúpula (separador separador hexagonal M3 mascle x femella M3)

19. Adaptadors de rosca per connectar separadors a fusta (inserció roscada Lok E-Z, llautó, fil de ganivet)

20. Superglue epoxi o goril·la

21. Cinta elèctrica

22. Soldar

Eines:

1. Estació de soldadura

2. Trepant elèctric

3. Serra circular

4. Lijadora orbital

5. Serra de plantilla

6. Serra de mitra

7. Transportador

8. Impressora 3D

9. Talladors de filferro

10. Eina d’embolcall de filferro

11. Tallador làser per tallar plaques LED (opcional)

12. Botiga CNC per a la base de la cúpula (opcional)

Pas 2: dissenyar la cúpula geodèsica

Disseny de la cúpula geodèsica
Disseny de la cúpula geodèsica
Disseny de la cúpula geodèsica
Disseny de la cúpula geodèsica

Com he esmentat a la introducció, hi ha diverses fonts en línia per construir la vostra pròpia cúpula geodèsica. Aquests llocs proporcionen calculadores de cúpula que determinen la longitud de cada costat (és a dir, puntal) i el nombre de connectors necessaris per al tipus de cúpula que vulgueu construir. La complexitat d’una cúpula geodèsica (és a dir, la densitat de triangles) s’especifica per la seva classe (1V, 2V, 3V, etc.), amb una complexitat més gran convertint-se en una millor aproximació d’una superfície esfèrica perfecta. Per construir la vostra pròpia cúpula, primer heu de seleccionar un diàmetre i una classe de cúpula.

He utilitzat un lloc anomenat Domerama per ajudar-me a dissenyar una cúpula de 4V que es va truncar a 5/12 d’una esfera amb un radi de 40 cm. Per a aquest tipus de cúpula, hi ha sis puntals de longitud diferents:

30 X "A" - 8,9 cm

30 X "B" - 10,4 cm

50 X "C" - 12,4 cm

40 X "D" - 12,5 cm

20 X "E" - 13,0 cm

20 X "F" - 13,2 cm

És a dir, un total de 190 puntals que sumen 2223 cm (73 peus) de material. He utilitzat fusta de pi 1x3 (3/4 "× 2-1 / 2") per als puntals d'aquesta cúpula. Per connectar els puntals, vaig dissenyar i vaig imprimir connectors 3D mitjançant Autocad. Els fitxers STL es poden descarregar al final d’aquest pas. El nombre de connectors per a una cúpula 4/12 5/12 és:

Connector de 20 X 4

Connector de 6 X 5

Connector de 45 X 6

Al següent pas, descric com es construeix aquesta cúpula amb els puntals de fusta i els connectors impresos en 3D que vaig dissenyar.

Pas 3: Construcció de cúpules amb puntals i connectors

Construcció de cúpules amb puntals i connectors
Construcció de cúpules amb puntals i connectors
Construcció de cúpules amb puntals i connectors
Construcció de cúpules amb puntals i connectors
Construcció de cúpules amb puntals i connectors
Construcció de cúpules amb puntals i connectors
Construcció de cúpules amb puntals i connectors
Construcció de cúpules amb puntals i connectors

Utilitzant els càlculs de Domerama per a una cúpula 4/12 5/12, vaig tallar els puntals amb una serra circular. Els 190 puntals es van etiquetar i es van col·locar en una caixa després de tallar-los. Els 71 connectors (20 de quatre connectors, 6 de cinc i 45 de sis) es van imprimir en 3D mitjançant un Makerbot. Els puntals de fusta es van inserir als connectors segons el diagrama creat per Domerama. Vaig començar la construcció des de dalt i em vaig desplaçar radialment cap a l'exterior.

Després de connectar tots els puntals, he tret un puntal a la vegada i he afegit epoxi a la fusta i al connector. Els connectors van ser dissenyats per tenir flexibilitat en la manera com connectaven les estructures, per la qual cosa era important comprovar la simetria de la cúpula abans d'afegir cap epoxi.

Pas 4: tall per làser i muntatge de plaques base

Tall per làser i muntatge de plaques base
Tall per làser i muntatge de plaques base
Tall de làser i muntatge de plaques base
Tall de làser i muntatge de plaques base
Tall de làser i muntatge de plaques base
Tall de làser i muntatge de plaques base
Tall de làser i muntatge de plaques base
Tall de làser i muntatge de plaques base

Ara que es construeix l’esquelet de la cúpula, és hora de tallar les plaques base triangulars. Aquestes plaques base s’uneixen a la part inferior dels puntals i s’utilitzen per muntar els LED a la cúpula. Inicialment, vaig tallar les plaques base de fusta contraxapada de 5 mm de gruix mesurant els cinc triangles diferents que hi ha a la cúpula: AAB (30 triangles), BCC (25 triangles), DDE (20 triangles), CDF (40 triangles)) i EEE (5 triangles). Les dimensions de cada costat i la forma dels triangles es van determinar mitjançant una calculadora de cúpula (Domerama) i una mica de geometria. Després de tallar les plaques base de proves amb una serra, vaig dibuixar el disseny del triangle amb Coral Draw i vaig tallar les plaques base restants amb un tallador làser (molt més ràpid!). Si no teniu accés a un tallador làser, podeu dibuixar les plaques base sobre fusta contraxapada amb una regla i un transportador i tallar-les totes amb una serra. Un cop tallades les plaques base, es capgira la cúpula i s’enganxen les plaques a la cúpula mitjançant cola de fusta.

Pas 5: Visió general de l'electrònica

Visió general de l’electrònica
Visió general de l’electrònica

A la figura anterior es mostra un esquema de l'electrònica per a la cúpula. Un Arduino Uno s’utilitza per escriure i llegir senyals per a la cúpula. Per il·luminar la cúpula, es passa una tira LED RGB sobre la cúpula de manera que es col·loqui un LED a cadascun dels 120 triangles. Per obtenir informació sobre el funcionament d'una tira LED, consulteu aquest document instructiu. Cada LED es pot dirigir per separat mitjançant l'Arduino, que produeix un senyal de dades i de rellotge de sèrie per a la tira (vegeu els pins A0 i A1 a l'esquema). Amb la tira i aquests dos senyals només, podeu tenir una impressionant cúpula d’il·luminació. Hi ha altres maneres d’escriure senyals per a molts LED d’un Arduino, com ara Charlieplexing i els registres de desplaçament.

Per tal d’interactuar amb la cúpula, he configurat un sensor d’IR per sobre de cada LED. Aquests sensors s’utilitzen per detectar quan la mà d’algú està a prop d’un triangle a la cúpula. Com que cada triangle de la cúpula té el seu propi sensor IR i hi ha 120 triangles, haureu de fer una mena de multiplexació abans que l'Arduino. Vaig decidir utilitzar cinc multiplexors de 24 canals (MUX) per als 120 sensors de la cúpula. Aquí teniu informació sobre el multiplexat, si no ho coneixeu. Un MUX de 24 canals requereix cinc senyals de control. Vaig triar els pins 8-12 a l'Arduino, de manera que podia fer la manipulació de ports (vegeu el pas 10 per obtenir més informació). La sortida de les plaques MUX es llegeix mitjançant els pins 3-7.

També vaig incloure cinc sortides MIDI a la cúpula perquè poguessin produir so (pas 11). En altres paraules, cinc persones poden tocar la cúpula simultàniament amb cada sortida reproduint un so diferent. Només hi ha un pin TX a l'Arduino, de manera que cinc senyals MIDI requereixen demultiplexació. Com que la sortida MIDI es produeix en un moment diferent de la lectura del sensor IR, he utilitzat els mateixos senyals de control.

Després de llegir totes les entrades del sensor IR a l'Arduino, la cúpula pot il·luminar-se i reproduir sons, no obstant això, si programeu l'Arduino. Tinc alguns exemples al pas 14 d’aquest instructiu.

Pas 6: muntatge de LEDs a la cúpula

Muntatge de LEDs a la cúpula
Muntatge de LEDs a la cúpula
Muntatge de LEDs a la cúpula
Muntatge de LEDs a la cúpula
Muntatge de LEDs a la cúpula
Muntatge de LEDs a la cúpula

Com que la cúpula és tan gran, cal tallar la tira LED per col·locar un LED a cada triangle. Cada LED està enganxat al triangle mitjançant una súper cola. A banda i banda del LED, es perfora un forat a través de la placa base perquè els cables passin per la cúpula. Després he soldat filferro de connexió a cada contacte del LED (5V, terra, rellotge, senyal) i faig passar els cables a través de la placa base. Aquests cables es tallen de manera que siguin prou llargs per arribar al següent LED de la cúpula. Els cables passen al següent LED i es continua el procés. Vaig connectar els LEDs en una configuració que minimitzés la quantitat de filferro necessària, tot i que tenia sentit per dirigir-los més endavant mitjançant Arduino. Una cúpula més petita eliminaria la necessitat de tallar la tira i estalviaria molt de temps soldant. Una altra opció és utilitzar LEDs RGB separats amb registres de desplaçament.

La comunicació en sèrie amb la tira s’aconsegueix mitjançant dos pins (un pin de dades i un rellotge) de l’Arduino. Dit d’una altra manera, les dades per il·luminar la cúpula es passen d’un LED a l’altre quan surt del pin de dades. Aquí teniu un exemple de codi modificat des d’aquest fòrum d’Arduino:

// Feu que la cúpula sencera augmenti i disminueixi la intensitat d’un sol color

#define numLeds 120 // Nombre de LEDs // PINS DE SORTIDA // int clockPin = A1; // defineix el pin de rellotge int dataPin = A0; // defineix el pin de dades // VARIABLES // int red [numLeds]; // Inicialitzar la matriu per a la tira LED int green [numLeds]; // Inicialitzar la matriu per a la tira LED int blava [numLeds]; // Inicialitzar la matriu per a una tira LED // Doble escala A CONSTANT = {0, 0,1, 0,2, 0,3, 0,4, 0,5, 0,6, 0,7, 0,8, 0,9, 1, 0,9, 0,8, 0,7, 0,6, 0,5, 0,4, 0,3, 0,2, 0,1}; // fracció d'intensitat dels LEDs void setup () {pinMode (clockPin, OUTPUT); pinMode (dataPin, OUTPUT); memset (vermell, 0, numLeds); memset (verd, 0, numLeds); memset (blau, 0, numLeds); } void updatestring (int redA [numLeds], int greenA [numLeds], int blueA [numLeds]) {for (int i = 0; i <numLeds; i ++) {shiftOut (dataPin, clockPin, MSBFIRST, redA ); shiftOut (dataPin, clockPin, MSBFIRST, greenA ); shiftOut (dataPin, clockPin, MSBFIRST, blueA ); }} void loop () {for (int p = 0; p <20; p ++) // bucle per augmentar la intensitat lumínica de la cúpula {doble escala = escalaA [p]; retard (20); for (int i = 0; i <numLeds; i ++) // recorre tots els LEDs {vermell = 255 * escala; verd = 80 * escala; blau = 0; } updatestring (vermell, verd, blau); // actualitzar tira led}}

Pas 7: disseny i implementació del muntatge del sensor

Disseny i implementació de muntatge de sensor
Disseny i implementació de muntatge de sensor
Disseny i implementació de muntatge de sensor
Disseny i implementació de muntatge de sensor
Disseny i implementació de muntatge de sensor
Disseny i implementació de muntatge de sensor

Vaig decidir utilitzar sensors IR per a la cúpula. Aquests sensors tenen un LED IR i un receptor. Quan un objecte es posa davant del sensor, una mica de radiació IR del LED IR es reflecteix cap al receptor. Vaig començar aquest projecte creant els meus propis sensors IR, que es basaven en els instructius de Richardouvina. Tota la soldadura va trigar massa, així que vaig comprar 120 sensors IR de eBay que produïen cadascun una sortida digital. El llindar del sensor s’estableix amb un potenciòmetre al tauler de manera que la sortida sigui alta només quan una mà està a prop d’aquest triangle.

Cada triangle està format per una placa base contraxapada LED, una làmina d’acrílic difusiu muntada a uns 2,5 cm sobre la placa LED i un sensor IR. El sensor de cada triangle es va muntar en una làmina de contraxapat prim en forma de pentàgon o hexàgon en funció de la posició a la cúpula (vegeu la figura anterior). Vaig perforar forats a la base del sensor d’IR per muntar els sensors d’IR, i després vaig connectar els pins de terra i 5V amb filferro d’embolcall de filferro i una eina d’embolcall de filferro (cables vermells i negres). Després de connectar terra i 5V, vaig embolicar un cable llarg per embolicar cada sortida (groc), terra i 5V per passar per la cúpula.

Els muntatges del sensor IR hexàgon o pentàgon es van epoxiar a la cúpula, just per sobre dels connectors impresos en 3D, de manera que el fil podia passar per la cúpula. En tenir els sensors situats a sobre dels connectors, també vaig poder accedir i ajustar els potenciòmetres dels sensors IR que controlen la sensibilitat dels sensors. En el següent pas, descriuré com les sortides dels sensors IR es connecten als multiplexors i es llegeixen a l'Arduino.

Pas 8: sortida del sensor de multiplexació

Sortida del sensor de multiplexació
Sortida del sensor de multiplexació
Sortida del sensor de multiplexació
Sortida del sensor de multiplexació
Sortida del sensor de multiplexació
Sortida del sensor de multiplexació

Com que l'Arduino Uno només té 14 pins d'E / S digitals i 6 pins d'entrada analògics i hi ha 120 senyals de sensor que s'han de llegir, la cúpula requereix multiplexors per llegir tots els senyals. Vaig optar per construir cinc multiplexors de 24 canals, cadascun dels quals llegia 24 dels sensors IR (vegeu la figura general de l'electrònica). El MUX de 24 canals consisteix en un tauler de sortida MUX de 8 canals, un tauler de sortida MUX de 16 canals i un MUX de 2 canals. Les capçaleres dels pins es van soldar a cada tauler de sortida perquè es poguessin connectar al tauler prototip. Mitjançant una eina d’envolupament de filferro, vaig connectar a terra, 5 V, i els passadors de senyal de control de les plaques de ruptura MUX.

Un MUX de 24 canals requereix cinc senyals de control, que he triat connectar al pin 8-12 de l’Arduino. Els cinc MUX de 24 canals reben els mateixos senyals de control de l’Arduino, de manera que he connectat el cable dels pins Arduino al MUX de 24 canals. Les sortides digitals dels sensors IR estan connectades als pins d'entrada del MUX de 24 canals perquè es puguin llegir en sèrie a l'Arduino. Com que hi ha cinc pins separats per llegir a les 120 sortides del sensor, és útil imaginar que la cúpula es divideix en cinc seccions separades que consten de 24 triangles (comproveu els colors de la cúpula a la figura).

Mitjançant la manipulació del port Arduino, podeu incrementar ràpidament els senyals de control enviats pels pins 8-12 als multiplexors. He adjuntat aquí un exemple de codi per fer funcionar els multiplexors:

int numChannel = 24;

// SORTIDES // int s0 = 8; // Control MUX 0 - PORTbD int s1 = 9; // Control MUX 1 - PORTb int s2 = 10; // Control MUX 2 - PORTb int s3 = 11; // Control MUX 3 - PORTb int s4 = 12; // MUX control 4 - PORTb // INPUTS // int m0 = 3; // Entrada MUX 0 int m1 = 4; // Entrada MUX 1 int m2 = 5; // Entrada MUX 2 int m3 = 6; // Entrada MUX 3 int m4 = 7; // entrada MUX 4 // VARIABLES // int arr0r; // lectura digital de MUX0 int arr1r; // lectura digital de MUX1 int arr2r; // lectura digital de MUX2 int arr3r; // lectura digital de MUX3 int arr4r; // lectura digital des de MUX4 void setup () {// poseu aquí el vostre codi de configuració per executar-lo una vegada: DDRB = B11111111; // estableix els pins Arduino de 8 a 13 com a entrades pinMode (s0, OUTPUT); pinMode (s1, OUTPUT); pinMode (s2, OUTPUT); pinMode (s3, OUTPUT); pinMode (s4, OUTPUT); pinMode (m0, INPUT); pinMode (m1, INPUT); pinMode (m2, INPUT); pinMode (m3, INPUT); pinMode (m4, INPUT); } void loop () {// poseu aquí el vostre codi principal per executar-lo repetidament: PORTB = B00000000; // SET pins de control per a mux low per (int i = 0; i <numChannel; i ++) {// Sortida de lectura digital de MUX0 - MUX4 per a sensor IR i // Si el sensor IR és LO, el jugador està tocant el triangle. arr0r = DigitalRead (m0); // lectura de Mux 0, sensor IR i arr1r = digitalRead (m1); // lectura de Mux 1, sensor IR i arr2r = digitalRead (m2); // lectura de Mux 2, sensor IR i arr3r = digitalRead (m3); // lectura de Mux 3, sensor IR i arr4r = digitalRead (m4); // lectura de Mux 4, sensor IR i // FER COSA AMB ENTRADES MUX O EMMAGATZEM-LA EN UN ARREGLI AQUÍ // PORTB ++; // augmentar els senyals de control de MUX}}

Pas 9: difondre la llum amb acrílic

Llum difusa amb acrílic
Llum difusa amb acrílic
Llum difusa amb acrílic
Llum difusa amb acrílic
Llum difusa amb acrílic
Llum difusa amb acrílic

Per difondre la llum dels LED, vaig polir l’acrílic transparent amb una polidora orbital circular. La polidora es va moure per les dues cares de l’acrílic amb un moviment de figura 8. He trobat que aquest mètode és molt millor que la pintura en aerosol de "vidre esmerilat".

Després de polir i netejar l’acrílic, vaig utilitzar un tallador làser per retallar triangles que s’adaptessin als LED. És possible tallar l’acrílic amb una eina de tall d’acrílic o fins i tot una serra trencaclosques si l’acrílic no s’esquerda. L’acrílic es mantenia sobre els LED mitjançant rectangles de fusta contraxapada de 5 mm de gruix també tallats amb un tallador làser. Aquests petits taulons es van enganxar als puntals de la cúpula i els triangles acrílics es van epoxidar sobre els taulons.

Pas 10: Fer música amb la cúpula mitjançant MIDI

Fer música amb la cúpula mitjançant MIDI
Fer música amb la cúpula mitjançant MIDI
Fer música amb la cúpula mitjançant MIDI
Fer música amb la cúpula mitjançant MIDI
Fer música amb la cúpula mitjançant MIDI
Fer música amb la cúpula mitjançant MIDI

Volia que la cúpula fos capaç de produir so, així que vaig configurar cinc canals MIDI, un per a cada subconjunt de la cúpula. Primer heu de comprar cinc preses MIDI i connectar-les tal com es mostra a l’esquema (consulteu aquest tutorial del suport d’Arduino per obtenir més informació).

Com que només hi ha un pin sèrie de transmissió a l’Arduino Uno (pin 2 etiquetat com a pin TX), heu de desmultiplexar els senyals que s’envien als cinc connectors MIDI. He utilitzat els mateixos senyals de control (pin 8-12), perquè els senyals MIDI s’envien en un moment diferent que quan es llegeixen els sensors IR a l’Arduino. Aquests senyals de control s’envien a un demultiplexor de 8 canals perquè controleu quina presa MIDI rep el senyal MIDI creat per l’Arduino. Els senyals MIDI van ser generats per Arduino amb la fantàstica biblioteca de senyals MIDI creada per Francois Best. Aquí teniu un exemple de codi per produir diverses sortides MIDI a diferents preses MIDI amb un Arduino Uno:

#include // inclou la biblioteca MIDI

#define numChannel 24 // Nombre d’IR per triangle #define numSections 5 // nombre de seccions a la cúpula, nombre de MUX de 24 canals, nombre de preses MIDI // OUTPUTS // int s0 = 8; // Control MUX 0 - PORTbD int s1 = 9; // Control MUX 1 - PORTb int s2 = 10; // Control MUX 2 - PORTb int s3 = 11; // Control MUX 3 - PORTb int s4 = 12; // MUX control 4 - PORTb // INPUTS // int m0 = 3; // Entrada MUX 0 int m1 = 4; // Entrada MUX 1 int m2 = 5; // Entrada MUX 2 int m3 = 6; // Entrada MUX 3 int m4 = 7; // entrada MUX 4 // VARIABLES // int arr0r; // lectura digital de MUX0 int arr1r; // lectura digital de MUX1 int arr2r; // lectura digital de MUX2 int arr3r; // lectura digital de MUX3 int arr4r; // lectura digital de MUX4 int midArr [numSections]; // Emmagatzema si un dels reproductors ha premut una nota o no en nota2play [numSections]; // Emmagatzema la nota perquè es reprodueixi si es toca el sensor int notes [numChannel] = {60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83}; int pauseMidi = 4000; // temps de pausa entre senyals midi MIDI_CREATE_DEFAULT_INSTANCE (); void setup () {// poseu aquí el vostre codi de configuració per executar-lo una vegada: DDRB = B11111111; // estableix els pins Arduino de 8 a 13 com a entrades MIDI.begin (MIDI_CHANNEL_OFF); pinMode (s0, OUTPUT); pinMode (s1, OUTPUT); pinMode (s2, OUTPUT); pinMode (s3, OUTPUT); pinMode (s4, OUTPUT); pinMode (m0, INPUT); pinMode (m1, INPUT); pinMode (m2, INPUT); pinMode (m3, INPUT); pinMode (m4, INPUT); } void loop () {// poseu aquí el vostre codi principal per executar-lo repetidament: PORTB = B00000000; // SET pins de control per a mux low per (int i = 0; i <numChannel; i ++) {// Sortida de lectura digital de MUX0 - MUX4 per a sensor IR i // Si el sensor IR és LO, el jugador està tocant el triangle. arr0r = DigitalRead (m0); // lectura de Mux 0, sensor IR i arr1r = digitalRead (m1); // lectura de Mux 1, sensor IR i arr2r = digitalRead (m2); // lectura de Mux 2, sensor IR i arr3r = digitalRead (m3); // lectura de Mux 3, sensor IR i arr4r = digitalRead (m4); // lectura de Mux 4, sensor IR i if (arr0r == 0) // El sensor de la secció 0 estava bloquejat {midArr [0] = 1; // El jugador 0 ha tocat una nota, configureu HI perquè hi hagi una sortida MIDI per al jugador 0 note2play [0] = notes ; // Nota per jugar al jugador 0} si (arr1r == 0) // El sensor de la secció 1 estava bloquejat {midArr [1] = 1; // El jugador 0 ha tocat una nota, configureu HI perquè hi hagi sortida MIDI per al jugador 0 note2play [1] = notes ; // Nota per jugar al jugador 0} si (arr2r == 0) // El sensor de la secció 2 està bloquejat {midArr [2] = 1; // El jugador 0 ha tocat una nota, configureu HI perquè hi hagi sortida MIDI per al jugador 0 note2play [2] = notes ; // Nota per jugar al jugador 0} si (arr3r == 0) // El sensor de la secció 3 està bloquejat {midArr [3] = 1; // El jugador 0 ha tocat una nota, configureu HI perquè hi hagi sortida MIDI per al jugador 0 note2play [3] = notes ; // Nota per jugar al jugador 0} si (arr4r == 0) // El sensor de la secció 4 està bloquejat {midArr [4] = 1; // El jugador 0 ha tocat una nota, configureu HI perquè hi hagi una sortida MIDI per al jugador 0 note2play [4] = notes ; // Nota per jugar al jugador 0} PORTB ++; // incrementar els senyals de control de MUX} updateMIDI (); } void updateMIDI () {PORTB = B00000000; // SET pins de control per a mux low if (midArr [0] == 1) // Reproductor 0 Sortida MIDI {MIDI.sendNoteOn (note2play [0], 127, 1); delayMicroseconds (pauseMidi); MIDI.sendNoteOff (note2play [0], 127, 1); delayMicroseconds (pauseMidi); } PORTB ++; // incrementar MUX if (midArr [1] == 1) // Sortida MIDI del reproductor 1 {MIDI.sendNoteOn (note2play [1], 127, 1); delayMicroseconds (pauseMidi); MIDI.sendNoteOff (note2play [1], 127, 1); delayMicroseconds (pauseMidi); } PORTB ++; // incrementar MUX if (midArr [2] == 1) // Sortida MIDI del reproductor 2 {MIDI.sendNoteOn (note2play [2], 127, 1); delayMicroseconds (pauseMidi); MIDI.sendNoteOff (note2play [2], 127, 1); delayMicroseconds (pauseMidi); } PORTB ++; // increment MUX if (midArr [3] == 1) // Sortida MIDI del reproductor 3 {MIDI.sendNoteOn (note2play [3], 127, 1); delayMicroseconds (pauseMidi); MIDI.sendNoteOff (note2play [3], 127, 1); delayMicroseconds (pauseMidi); } PORTB ++; // incrementar MUX if (midArr [4] == 1) // Sortida MIDI del reproductor 4 {MIDI.sendNoteOn (note2play [4], 127, 1); delayMicroseconds (pauseMidi); MIDI.sendNoteOff (note2play [4], 127, 1); delayMicroseconds (pauseMidi); } midArr [0] = 0; midArr [1] = 0; midArr [2] = 0; midArr [3] = 0; midArr [4] = 0; }

Pas 11: Alimentació de la cúpula

Alimentació de la cúpula
Alimentació de la cúpula
Alimentació de la cúpula
Alimentació de la cúpula
Alimentació de la cúpula
Alimentació de la cúpula
Alimentació de la cúpula
Alimentació de la cúpula

Hi ha diversos components que cal alimentar a la cúpula. Per tant, haureu de calcular els amplificadors extrets de cada component per determinar la font d'alimentació que heu de comprar.

La tira LED: he utilitzat aproximadament 3,75 metres de la tira LED Ws2801, que consumeix 6,4 W / metre. Això correspon a 24 W (3,75 * 6,4). Per convertir-lo en amplificadors, utilitzeu Power = current * volts (P = iV), on V és el voltatge de la tira LED, en aquest cas 5V. Per tant, el corrent extret dels LED és de 4,8 A (24 W / 5 V = 4,8 A).

Els sensors IR: cada sensor IR atrau aproximadament 25 mA, totalitzant 3A per 120 sensors.

L'Arduino: 100mA, 9V

Els multiplexors: hi ha cinc multiplexors de 24 canals que consten cadascun d’un multiplexor de 16 canals i un multiplexor de 8 canals. Els MUX de 8 i 16 canals consumeixen aproximadament 100 mA cadascun. Per tant, el consum total d’energia de tots els MUX és 1A.

Sumant aquests components, s’espera que el consum total d’energia sigui al voltant dels 9A. La tira LED, els sensors IR i els multiplexors tenen una tensió d’entrada a 5V i l’Arduino té una tensió d’entrada de 9V. Per tant, he seleccionat una font d'alimentació de 12V 15A, un convertidor de 15A per convertir 12V a 5V i un convertidor de 3A per convertir 12V a 9V per a l'Arduino.

Pas 12: Base de cúpula circular

Base de cúpula circular
Base de cúpula circular
Base de cúpula circular
Base de cúpula circular
Base de cúpula circular
Base de cúpula circular

La cúpula descansa sobre una peça circular de fusta amb un pentàgon retallat pel centre per facilitar l'accés a l'electrònica. Per crear aquesta base circular, es va tallar una làmina de fusta contraxapada de 4x6’mitjançant un encaminador CNC de fusta. Per a aquest pas també es podria utilitzar una serra. Després de tallar la base, la cúpula s'hi va adherir mitjançant petits blocs de fusta de 2x3.

A la part superior de la base, he connectat la font d'alimentació amb epoxi i els convertidors MUX i Buck amb separadors de separació de PCB. Els separadors es van fixar a la fusta contraxapada mitjançant adaptadors de fils E-Z Lok.

Pas 13: base de la cúpula del Pentàgon

Base de la cúpula del Pentàgon
Base de la cúpula del Pentàgon
Base de la cúpula del Pentàgon
Base de la cúpula del Pentàgon
Base de la cúpula del Pentàgon
Base de la cúpula del Pentàgon

A més de la base circular, també vaig construir una base de pentàgon per a la cúpula amb una finestra de mirall a la part inferior. Aquesta base i aquesta finestra d’aspecte també es van fer amb fusta contraxapada tallada amb un encaminador CNC de fusta. Els laterals del pentàgon estan fets de taulons de fusta amb un dels laterals que té un forat perquè puguin passar els connectors. Utilitzant mènsules metàl·liques i juntes de bloc de 2x3, les taules de fusta s’uneixen a la base del pentàgon. Un interruptor d’alimentació, connectors MIDI i connector USB s’uneixen a un tauler frontal que he creat amb un tallador làser. Tota la base del pentàgon està cargolada a la base circular descrita al pas 12.

Vaig instal·lar una finestra a la part inferior de la cúpula perquè tothom pugui mirar la cúpula per veure l'electrònica. El mirall està fet de tall acrílic amb un tallador làser i s’epoxitza a una peça circular de fusta contraxapada.

Pas 14: programació de la cúpula

Hi ha infinites possibilitats per programar la cúpula. Cada cicle del codi rep els senyals dels sensors IR, que indiquen els triangles que algú ha tocat. Amb aquesta informació podeu pintar la cúpula amb qualsevol color RGB i / o produir un senyal MIDI. Aquests són alguns exemples de programes que vaig escriure per a la cúpula:

Acoloreix la cúpula: cada triangle passa per quatre colors a mesura que es toca. A mesura que canvien els colors, es toca un arpegi. Amb aquest programa, podreu acolorir la cúpula de milers de maneres diferents.

Música de cúpula: la cúpula està acolorida amb cinc colors, cada secció correspon a una sortida MIDI diferent. Al programa, podeu triar les notes que toca cada triangle. Vaig escollir començar pel mig C a la part superior de la cúpula i augmentar el to mentre els triangles s’acostaven a la base. Com que hi ha cinc sortides, aquest programa és ideal per fer jugar diverses persones a la cúpula simultàniament. Mitjançant un instrument MIDI o un programari MIDI, es pot fer que aquests senyals MIDI sonin com qualsevol instrument.

Simon: Vaig escriure una versió de Simon, el clàssic joc d’il·luminació de memòria. Una seqüència aleatòria de llums s’il·lumina una a la vegada sobre tota la cúpula. En cada torn, el jugador ha de copiar la seqüència. Si el jugador coincideix correctament amb la seqüència, s’afegirà una llum addicional a la seqüència. La puntuació més alta s’emmagatzema en una de les seccions de la cúpula. Aquest joc també és molt divertit per jugar amb diverses persones.

Pong: per què no jugar al pong en una cúpula? Una bola es propaga per la cúpula fins que entra en la paleta. Quan ho fa, es produeix un senyal MIDI, que indica que la paleta ha colpejat la pilota. L'altre jugador ha de dirigir la pala al llarg de la part inferior de la cúpula de manera que toqui la pilota cap enrere.

Pas 15: fotos de la cúpula completada

Fotos de la cúpula completada
Fotos de la cúpula completada
Fotos de la cúpula completada
Fotos de la cúpula completada
Fotos de la cúpula completada
Fotos de la cúpula completada
Fotos de la cúpula completada
Fotos de la cúpula completada
Concurs Arduino 2016
Concurs Arduino 2016
Concurs Arduino 2016
Concurs Arduino 2016

Gran Premi al Concurs Arduino 2016

Concurs de remescles 2016
Concurs de remescles 2016
Concurs de remescles 2016
Concurs de remescles 2016

Accèssit al concurs de remescles 2016

Concurs Make it Glow 2016
Concurs Make it Glow 2016
Concurs Make it Glow 2016
Concurs Make it Glow 2016

Accèssit al concurs Make it Glow 2016

Recomanat: