Taula de continguts:

Projecció d'Azimuthal 3D Map Decoration X Folk Music Puzzle Game - Arduino: 7 Steps
Projecció d'Azimuthal 3D Map Decoration X Folk Music Puzzle Game - Arduino: 7 Steps

Vídeo: Projecció d'Azimuthal 3D Map Decoration X Folk Music Puzzle Game - Arduino: 7 Steps

Vídeo: Projecció d'Azimuthal 3D Map Decoration X Folk Music Puzzle Game - Arduino: 7 Steps
Vídeo: Mercator projection 2024, De novembre
Anonim
Image
Image
Dissenyar el tauler
Dissenyar el tauler

INTRODUCCIÓ

La pàgina següent us indicarà com crear un projecte Arduino, que té dues funcions principals: decoració simple amb il·luminació i joc de trencaclosques de música popular, que incorpora els camps de la geografia, la geometria, els mapes, les Nacions Unides i la música, junts. Basat en l’estructura dels hexàgons, el dispositiu retrata el mapa del món a la projecció equimistant azimutal, que és la forma de projecció de mapes utilitzada per les Nacions Unides (i el seu símbol).

Quan s'activa el mode de decoració, els continents del mapa brillaran en diferents colors determinats per combinacions aleatòries de valors RGB mitjançant l'ús de LED RGB.

El mode de joc, d'altra banda, requereix que els usuaris reconeguin l'origen de les cançons de música popular (seleccionades generant aleatòriament números de l'1 al 20) i que posin el tauler continental de la seva resposta a la seva posició corresponent al tauler de fusta principal d'un conjunt de temps (preestablert durant 1 minut).

_

SUBMINISTRAMENTS

Materials reals

  • LED RGB de 5 mm * 20
  • Filferros
  • Resistències * 9
  • Taula Arduino * 1 (qualsevol tipus)
  • Taules de pa * 3
  • Botons * 7
  • Tauler de pantalla LCD I2C * 1
  • Caixa de cartró (13 * 9 * 5,7 polzades; 33 * 23 * 14,5 cm)
  • Taula de fusta (37,5 * 29 * 0,8 cm)
  • Taulers d’acrílic (transparents * 2, semitransparents * 1)
  • Carregador portàtil * 1

Eines:

  • Fulla * 1
  • Adhesius UV Cure * 1
  • Cinta de doble cara * 1 rotlle
  • Pistola de cola calenta * 1

Màquines:

Màquina de tall per làser

Programari:

  • Adobe Illustrator
  • Adobe Photoshop
  • Rhino 3D

Pas 1: dissenyar el tauler

Podeu descarregar directament el fitxer adjunt o seguir els passos següents.

Esbossant el mapa

  1. Baixeu-vos un esquema del mapa de Google

    1. "Logotip de les nacions unides" de Google
    2. Seleccioneu "eines - mida - gran"
    3. Descarregueu la vostra imatge més preferida (la que va fer servir aquest projecte: enllaç) * Intenteu no seleccionar aquelles amb línies complicades que se superposin a les terres continentals *
  2. Transfereix el mapa descarregat a la versió per imprimir

    1. Acoloreix les zones indesitjables de blanc mitjançant la funció de pinzell a Adobe Photoshop
    2. Exporta el fitxer (JPEG)
    3. Importeu el fitxer a Adobe Illustrator i utilitzeu la funció "rastreig d'imatges" per rastrejar el mapa
    4. Exporta el fitxer (dxf)

Afegir el fons hexagonal

  1. Importeu el fitxer dxf a Rhino
  2. Seleccioneu la funció "polígon" i introduïu "6" per a l'opció "NumSides"
  3. Introduïu "3.5" per al valor del radi
  4. Dibuixa 28 hexàgons de la mateixa mida
  5. Exporteu el fitxer en 3dm

Pas 2: tall per làser

Image
Image
Tall per làser
Tall per làser
Tall per làser
Tall per làser
Tall per làser
Tall per làser
  1. Importeu el fitxer completat anteriorment a xxx.
  2. Amb la màquina de tall per làser, imprimiu el cos principal a la taula de fusta i els continents a les taules acríliques (2 transparents i 1 semitransparents) (els vídeos es proporcionen més amunt)

Pas 3: Creeu el dispositiu

Construeix el dispositiu
Construeix el dispositiu
Construeix el dispositiu
Construeix el dispositiu
Construeix el dispositiu
Construeix el dispositiu

Taulers després del tall per làser

  • Continents acrílics

    1. Utilitzeu adhesius curables per UV per enganxar les tres taules de cada continent (amb el semitransparent com a capa mitjana)
    2. Utilitzeu la llum UV per brillar sobre les regions encolades per tal de permetre que les coles es solidifiquin
  • Fundació de taulers de fusta
    1. Traieu manualment les petites zones terrestres enganxades al tauler de fusta principal
    2. * Si alguna part del tauler de fusta es trenca, utilitzeu adhesius curables per UV per enganxar-los *

Construir la base (base inferior de tot el dispositiu)

  1. Cerqueu una caixa de cartró de la mida adequada, amb dimensions properes a 33 * 23 * 14,5 cm (13 * 9 * 5,7 polzades)
  2. Utilitzant el tauler de fusta com a model de referència, traça les parts continentals a la superfície superior de la caixa
  3. Traça la part inferior dels botons a la superfície superior del quadre, amb cada botó centrat dins de les parts continentals traçades
  4. Utilitzeu una fulla per tallar les parts del botó seguint els rastres
  5. Dins de les parts continentals traçades, utilitzeu una fulla per tallar segments curts que envolten el botó
  6. Traça dues parts inferiors més del botó al costat dret del quadre (intenta alinear les traces amb la mateixa alçada)
  7. Traça el tauler de pantalla LCD al costat dret de la caixa (a sobre dels dos botons del pas anterior)
  8. Utilitzeu una fulla per tallar les dues parts dels botons i la part LCD seguint els rastres dels passos 6 i 7

Pas 4: Construeix els circuits

Construeix els circuits
Construeix els circuits

En referència als esquemes anteriors, creeu el circuit.

Nota:

  • Les resistències dels LED RGB i les dels botons són diferents, MIREU-VO CLARAMENT.
  • Com que el tauler de pantalla LCD anterior no té el model I2C, no està connectat perfectament. (Els panells de pantalla LCD amb models I2C només han d’endollar quatre pins)

    • Connecteu GND a la pantalla i a la placa Arduino
    • Connecteu el VCC al visualitzador amb els pins positius de la taula de treball
    • Connecteu els SDA al visualitzador i a la placa Arduino
    • Connecteu els SCL al visualitzador i a la placa Arduino

Pas 5: pengeu el codi

El codi d’aquest projecte es pot trobar aquí o a continuació.

Cada línia de codificació té una nota lateral que explica el seu propòsit i funció.

Nota:

  • Tots els pins D específics es poden canviar i ajustar en funció del disseny del circuit
  • Tots els segons retardats es poden canviar en valors diferents, però NO ELS SUPRIMEIXIS. (Aquests segons retardats permeten que el codi flueixi de manera més lògica. Sense ells, és possible que algunes parts del codi no funcionin).
  • A la línia 24 (introducció del "bucle for"), podeu designar el nombre de repeticions per al qual voleu que s'executi el bucle (el valor original és 5)
  • La combinació de colors dels LED RGB als bucles "si es prem" i "si no es prem" de cada botó es pot ajustar i personalitzar. (Originalment, els LED RGB brillaven en verd si es premien mentre brillaven en vermell si no es premen. Podeu canviar els valors perquè tinguin colors creatius per respondre DRET i MAL.)

#incloure

#include LiquidCrystal_I2C lcd_I2C_27 (0x27, 16, 2); // configureu l'adreça LCD per a una pantalla de 16 caràcters i 2 línies int _R; // introduïu la variable R, que significa el valor vermell dels LED RGB int _G; // introduïu la variable G, que significa el valor verd dels LED RGB int _B; // introduïu la variable B, que significa el valor blau dels LED RGB int _SongNumber; // introdueix la variable SongNumber void setup () {pinMode (10, INPUT); // estableix D10 com a entrada per al botó de decoració de mapes pinMode (9, INPUT); // estableix D9 com a entrada per al botó del joc de trencaclosques pinMode (8, INPUT); // estableix D8 com a entrada per al botó Eurasia pinMode (4, INPUT); // estableix D4 com a entrada per al botó pinMode del botó d'Amèrica del Nord (3, INPUT); // estableix D3 com a entrada per al botó pinMode del botó d'Amèrica del Sud (2, INPUT); // estableix D2 com a entrada per al botó Àfrica pinMode (1, INPUT); // estableix D1 com a entrada per al botó Oceania lcd_I2C_27.init (); // inicialitzar el tauler de pantalla LCD lcd_I2C_27.backlight (); // activeu la llum de fons del tauler de visualització LCD} void loop () {if (digitalRead (10)) {// si es prem el botó de decoració del mapa (int i = 0; i <5; ++ i) {// executeu el següent bucle 5 vegades _R = random (0, 1023); // doneu a la variable R un valor aleatori de 0 a 1023 _G = random (0, 1023); // doneu a la variable G un valor aleatori de 0 a 1023 _B = random (0, 1023); // doneu a la variable B un valor aleatori de 0 a 1023 analogWrite (13, (_R / 4)); // el valor R dels LED RGB del primer grup substitueix i escriu el valor variable de 0 a 255 analogWrite (12, (_G / 4)); // el valor G dels LED RGB del primer grup substitueix i escriu el valor variable de 0 a 255 analogWrite (11, (_B / 4)); // el valor B dels LED RGB del primer grup substitueix i escriu el valor variable de 0 a 255 analogWrite (7, (_R / 4)); // el valor R dels LED RGB del segon grup substitueix i escriu el valor variable de 0 a 255 analogWrite (6, (_G / 4)); // el valor G dels LED RGB del segon grup substitueix i escriu el valor variable de 0 a 255 analogWrite (5, (_B / 4)); // el valor B dels LED RGB del segon grup substitueix i escriu el valor variable de 0 a 255 de retard (3000); // espereu 3000 mil·lisegons (3 segons)} // ja que els valors de la variable R, G, B es determinen al bucle, hi hauria cinc combinacions de colors diferents per bucle} si (digitalRead (9)) {// si es prem el botó del joc de trencaclosques _SongNumber = random (1, 20); // doneu a la variable SongNumber un valor aleatori d’1 a 20 lcd_I2C_27.setCursor (0, 0); // configureu el cursor, el recompte comença amb 0 lcd_I2C_27.print (_SongNumber); // imprimeix el valor de SongNumber al tauler de pantalla LCD analogWrite (13, 0); // restableix i escriu el valor de D13 com a 0 analogWrite (12, 0); // restableix i escriu el valor de D12 com a 0 analogWrite (11, 0); // restableix i escriu el valor de D11 com 0 analogWrite (7, 0); // restableix i escriu el valor de D7 com 0 analogWrite (6, 0); // restableix i escriu el valor de D6 com a 0 analogWrite (5, 0); // restableix i escriu el valor de D5 com a 0 si (_SongNumber> = 1 && _SongNumber = 4 && _SongNumber = 7 && _SongNumber = 11 && _SongNumber = 15 && _SongNumber = 18 && _SongNumber <= 20) {// si el valor de SongNumber variable és de 18 a 20 de retard (60000); // espereu 60000 mil·lisegons perquè els reproductors escoltin música folk (60 segons; 1 min) si (digitalRead (1)) {// si es prem el botó Oceania analogWrite (13, 0); // analogWrite el valor de D13 com 0 analogWrite (12, 255); // analogWrite el valor de D12 com a 255 analogWrite (11, 0); // analogWrite el valor de D11 com 0 analogWrite (7, 0); // analogWrite el valor de D7 com 0 analogWrite (6, 255); // analogWrite el valor de D6 255 analogWrite (5, 0); // analogWrite el valor de D5 com a 0} // tots els LED RGB brillarien de color verd else {// si no es prem el botó Oceania analogWrite (13, 255); // analogWrite el valor de D13 com 255 analogWrite (12, 0); // analogWrite el valor de D12 com 0 analogWrite (11, 0); // analogWrite el valor de D11 com 0 analogWrite (7, 255); // analogWrite el valor de D7 com a 255 analogWrite (6, 0); // analogWrite el valor de D6 com 0 analogWrite (5, 0); // analògicEscriviu el valor de D5 com a 0} // tots els LED RGB brillarien en color vermell} // ja que les respostes correctes per a SongNumber 18 a 20 són totes Oceania, aquest "si bucle" accedeix si la resposta del reproductor és correcta o no lcd_I2C_27.clear (); // esborreu el retard de la pantalla LCD (1000); // esperar 1000 mil·lisegons (1 segon)}}

Pas 6: finalització del dispositiu

  1. Obriu la caixa de cartró i poseu-hi els circuits construïts prèviament (inclosos tots els elements, p. Ex., Tres taules de pa, la placa Arduino, el carregador portàtil)
  2. En referència al codi i a les parts continentals traçades a la part superior de la caixa, empleneu els botons a cadascuna de les seves posicions corresponents

    * Podeu fer referència a les notes laterals que hi ha darrere dels codis per assegurar-vos de quin botó és per a quin continent *

  3. Introduïu els dos "botons de funció" (mapa-deco de D10 i joc de trencaclosques de D9) a cadascuna de les parts de tall a la part dreta de la caixa
  4. Instal·leu el tauler de visualització LCD a la part tallada del costat dret de la caixa
  5. Obriu la caixa i assegureu-vos que tots els cables estan connectats correctament a les plaques
  6. Enganxeu el fonament del tauler de fusta a la part superior de la caixa mitjançant cinta adhesiva de doble cara (assegureu-vos que s’alineen correctament perquè els botons s’adaptin bé a la part tallada dels taulers de fusta)
  7. Utilitzeu una pistola de cola calenta per omplir les parts de la regió petita (no els continents principals)

Pas 7: FET !!!!

Per al joc de trencaclosques, aneu a l'enllaç de la llista de reproducció de proves.

Recomanat: