Obsah:

Azimutální projekce 3D mapa Dekorace X Lidová hudba Logická hra - Arduino: 7 kroků
Azimutální projekce 3D mapa Dekorace X Lidová hudba Logická hra - Arduino: 7 kroků

Video: Azimutální projekce 3D mapa Dekorace X Lidová hudba Logická hra - Arduino: 7 kroků

Video: Azimutální projekce 3D mapa Dekorace X Lidová hudba Logická hra - Arduino: 7 kroků
Video: Ретранслятор "Азимутальная Проекция (Long Version)" 2024, Listopad
Anonim
Image
Image
Navrhněte desku
Navrhněte desku

ÚVOD

Následující stránka vás naučí, jak vytvořit projekt Arduino, který má dvě hlavní funkce-prostou dekoraci s osvětlením a logickou hru s lidovou hudbou, která zahrnuje pole geografie, geometrie, mapy, OSN a hudbu dohromady v jednom. Zařízení navazuje na strukturu šestiúhelníků a zobrazuje mapu světa v azimutální ekvidistantní projekci, což je forma projekce mapy využívaná OSN (a její symbol).

Při aktivaci režimu dekorace by kontinenty mapy zářily různými barvami určenými náhodnými kombinacemi hodnot RGB pomocí RGB LED diod.

Herní režim na druhé straně vyžaduje, aby uživatelé rozpoznali původ lidových hudebních skladeb (vybraných náhodným generováním čísel od 1 do 20) a vložili kontinentální desku své odpovědi do odpovídající polohy na hlavní dřevěné desce v sadě čas (přednastaveno na 1 minutu).

_

DODÁVKY

Skutečné materiály

  • 5mm RGB LED *20
  • Dráty
  • Rezistory *9
  • Deska Arduino *1 (jakýkoli typ)
  • Breadboards *3
  • Tlačítka *7
  • Displej LCD I2C *1
  • Kartonová krabice (13*9*5,7 palců; 33*23*14,5 cm)
  • Dřevěná deska (37,5*29*0,8 cm)
  • Akrylové desky (transparentní * 2, poloprůhledné * 1)
  • Přenosná nabíječka *1

Nástroje:

  • Čepel *1
  • Lepidla vytvrzovaná UV zářením *1
  • Oboustranná páska *1 role
  • Pistole na lepidlo *1

Stroje:

Laserový řezací stroj

Software:

  • Adobe Illustrator
  • Adobe Photoshop
  • Rhino 3D

Krok 1: Navrhněte desku

Přiložený soubor si můžete stáhnout přímo nebo postupujte podle níže uvedených kroků.

Nastínění mapy

  1. Stáhněte si obrys mapy z Googlu

    1. Google „logo Spojených národů“
    2. Vyberte „nástroje - velikost - velké“
    3. Stáhněte si svůj nejoblíbenější obrázek (ten, který používá tento projekt: odkaz) *Pokuste se nevybírat ty, které mají složité čáry překrývající se s kontinentálními zeměmi *
  2. Přeneste staženou mapu do tiskové verze

    1. Vybarvěte nežádoucí oblasti na bílo pomocí funkce štětec v Adobe Photoshopu
    2. Exportovat soubor (JPEG)
    3. Importujte soubor do aplikace Adobe Illustrator a ke sledování mapy použijte funkci „trasování obrázku“
    4. Exportovat soubor (dxf)

Přidání pozadí šestiúhelníku

  1. Importujte soubor dxf do Rhina
  2. Vyberte funkci „mnohoúhelník“a pro možnost „NumSides“zadejte „6“
  3. Zadejte hodnotu „3,5“pro poloměr
  4. Nakreslete 28 stejně velkých šestiúhelníků
  5. Exportujte soubor ve 3DM

Krok 2: Laserové řezání

Image
Image
Laserové řezání
Laserové řezání
Laserové řezání
Laserové řezání
Laserové řezání
Laserové řezání
  1. Importujte dříve dokončený soubor do xxx.
  2. Pomocí laserového řezacího stroje vytiskněte hlavní tělo na dřevěnou desku a kontinenty na akrylové desky (2 průhledné a 1 poloprůhledné) (videa jsou uvedena výše)

Krok 3: Sestavte zařízení

Sestavte zařízení
Sestavte zařízení
Sestavte zařízení
Sestavte zařízení
Sestavte zařízení
Sestavte zařízení

Desky po řezání laserem

  • Akrylové kontinenty

    1. Pomocí lepidel vytvrditelných ultrafialovým zářením slepte tři desky každého kontinentu (poloprůhledná jako střední vrstva)
    2. Pomocí UV světla si posviťte na lepené oblasti, aby lepidla mohla ztuhnout
  • Nadace Dřevěná deska
    1. Ručně odstraňte malé pevninové oblasti přilepené na hlavní dřevěné desce
    2. *Pokud je jakákoli část dřevěné desky rozbitá, použijte lepidla vytvrditelná UV zářením a přilepte je zpět*

Budování základny (spodní základ celého zařízení)

  1. Najděte kartonovou krabici adekvátní velikosti s rozměry blízkými 33*23*14,5 cm (13*9*5,7 palců)
  2. Pomocí dřevěné desky jako referenčního modelu vysledujte kontinentální části na horní povrch krabice
  3. Vystopujte spodní část tlačítek na horní povrch krabice, přičemž každé tlačítko je vystředěno v každé vysledované kontinentální části
  4. Pomocí čepele odřízněte části knoflíku sledováním stop
  5. V trasovaných kontinentálních částech odřízněte čepelí krátké segmenty obklopující tlačítko
  6. Nakreslete další dvě spodní části tlačítka na pravou stranu krabice (zkuste zarovnat stopy se stejnou výškou)
  7. Sledujte desku LCD displeje na pravé straně krabice (nad dvěma tlačítky v předchozím kroku)
  8. Pomocí čepelky odřízněte dvě části tlačítek a část LCD sledováním stop v kroku 6 a 7

Krok 4: Sestavte obvody

Vybudujte obvody
Vybudujte obvody

Podle schémat výše sestavte obvod.

Poznámka:

  • Rezistory pro LED diody RGB a tlačítka jsou různé, VYHLEDÁVEJTE JASNĚ!
  • Vzhledem k tomu, že výše uvedená deska LCD nemá model I2C, není správně připojena. (Desky LCD displejů s modely I2C musí zapojit pouze čtyři piny)

    • Připojte GND k zobrazovači a desce Arduino
    • Propojte VCC na zobrazovači s kladnými piny na desce
    • Připojte SDA k zobrazovači a desce Arduino
    • Připojte SCL k zobrazovači a desce Arduino

Krok 5: Nahrajte kód

Kód pro tento projekt najdete zde nebo níže.

Každý kódovací řádek má boční poznámku vysvětlující jeho účel a funkci.

Poznámka:

  • Všechny konkrétní D piny lze měnit a upravovat podle rozvržení vašeho obvodu
  • Všechny zpožděné sekundy mohou být změněny na různé hodnoty, ale NEODSTRAŇUJTE je! (Tyto zpožděné sekundy umožňují logičtější tok kódu. Bez nich by některé části kódu nefungovaly!)
  • Na řádku 24 (zavedení „pro smyčku“) můžete určit počet opakování, pro které by měla smyčka běžet (původní hodnota je 5)
  • Kombinace barev LED diod RGB ve smyčkách „pokud je stisknuto“a „pokud není stisknuto“u každého tlačítka lze upravit a přizpůsobit. (LED diody RGB původně svítily zeleně, pokud by byly stisknuty, zatímco by svítily červeně, pokud by nebyly stisknuty. Hodnoty můžete změnit tak, aby měly kreativní barvy pro odpovědi PRAVĚ a ŠPATNĚ)

#zahrnout

#include LiquidCrystal_I2C lcd_I2C_27 (0x27, 16, 2); // nastavení adresy LCD pro 16 znaků a 2 řádky displeje int _R; // zavedení proměnné R, což znamená červenou hodnotu RGB LED diod int _G; // zavedení proměnné G, což znamená zelenou hodnotu RGB LED diod int _B; // zavedení proměnné B, což znamená modrou hodnotu RGB LED diod int _SongNumber; // zavedení proměnné SongNumber void setup () {pinMode (10, INPUT); // nastaví D10 jako vstup pro tlačítko map-decoration pinMode (9, INPUT); // nastaví D9 jako vstup pro tlačítko logické hry pinMode (8, INPUT); // nastaví D8 jako vstup pro pinMode tlačítka Eurasia (4, INPUT); // nastaví D4 jako vstup pro pinMode tlačítka Severní Amerika (3, VSTUP); // nastaví D3 jako vstup pro pinMode tlačítka Jižní Amerika (2, VSTUP); // nastaví D2 jako vstup pro pinMode tlačítka Afrika (1, VSTUP); // nastaví D1 jako vstup pro tlačítko Oceánie lcd_I2C_27.init (); // inicializace desky displeje LCD lcd_I2C_27.backlight (); // zapněte podsvícení desky LCD displeje} void loop () {if (digitalRead (10)) {// pokud je stisknuto tlačítko pro dekoraci mapy (int i = 0; i <5; ++ i) {// spusťte následující smyčku 5krát _R = random (0, 1023); // dejte proměnné R náhodnou hodnotu od 0 do 1023 _G = náhodné (0, 1023); // dejte proměnné G náhodnou hodnotu od 0 do 1023 _B = náhodné (0, 1023); // dejte proměnné B náhodnou hodnotu od 0 do 1023 analogWrite (13, (_R /4)); // hodnota R RGB LED pro první skupinu nahrazuje a zapisuje proměnnou hodnotu od 0 do 255 analogWrite (12, (_G /4)); // hodnota G RGB LED pro první skupinu nahrazuje a zapisuje proměnnou hodnotu od 0 do 255 analogWrite (11, (_B /4)); // hodnota B RGB LED pro první skupinu nahrazuje a zapisuje proměnnou hodnotu od 0 do 255 analogWrite (7, (_R /4)); // hodnota R RGB LED pro druhou skupinu nahrazuje a zapisuje proměnnou hodnotu od 0 do 255 analogWrite (6, (_G /4)); // hodnota G RGB LED pro druhou skupinu nahrazuje a zapisuje hodnotu proměnné od 0 do 255 analogWrite (5, (_B /4)); // hodnota B RGB LED pro druhou skupinu nahrazuje a zapisuje proměnnou hodnotu od 0 do 255 zpoždění (3000); // počkejte 3000 milisekund (3 sekundy)} // protože hodnoty proměnné R, G, B jsou určeny ve smyčce, na smyčku by připadalo pět různých barevných kombinací} if (digitalRead (9)) {// if je stisknuto tlačítko logické hry _SongNumber = náhodné (1, 20); // dejte proměnné SongNumber náhodnou hodnotu od 1 do 20 lcd_I2C_27.setCursor (0, 0); // nastavte kurzor, počítání začíná 0 lcd_I2C_27.print (_SongNumber); // vytiskne hodnotu SongNumber na desku LCD analogWrite (13, 0); // reset a zápis hodnoty D13 jako 0 analogWrite (12, 0); // reset a zápis hodnoty D12 jako 0 analogWrite (11, 0); // reset a zápis hodnoty D11 jako 0 analogWrite (7, 0); // reset a zápis hodnoty D7 jako 0 analogWrite (6, 0); // reset a zápis hodnoty D6 jako 0 analogWrite (5, 0); // reset a zápis hodnoty D5 jako 0 if (_SongNumber> = 1 && _SongNumber = 4 && _SongNumber = 7 && _SongNumber = 11 && _SongNumber = 15 && _SongNumber = 18 && _SongNumber <= 20) {// if the value of proměnná SongNumber je od 18 do 20 delay (60 000); // počkejte 60 000 milisekund, než si hráči poslechnou lidovou hudbu (60 sekund; 1 min), pokud (digitalRead (1)) {// pokud je stisknuto tlačítko Oceánie analogWrite (13, 0); // analogWrite hodnotu D13 jako 0 analogWrite (12, 255); // analogWrite hodnotu D12 jako 255 analogWrite (11, 0); // analogWrite hodnotu D11 jako 0 analogWrite (7, 0); // analogWrite hodnotu D7 jako 0 analogWrite (6, 255); // analogWrite hodnotu D6 255 analogWrite (5, 0); // analogWrite hodnotu D5 jako 0} // všechny LED diody RGB by svítily zeleně jinak {// pokud není stisknuto tlačítko Oceánie analogWrite (13, 255); // analogWrite hodnotu D13 jako 255 analogWrite (12, 0); // analogWrite hodnotu D12 jako 0 analogWrite (11, 0); // analogWrite hodnotu D11 jako 0 analogWrite (7, 255); // analogWrite hodnotu D7 jako 255 analogWrite (6, 0); // analogWrite hodnotu D6 jako 0 analogWrite (5, 0); // analogNapište hodnotu D5 jako 0} // všechny LED diody RGB by svítily červeně} // protože správné odpovědi pro SongNumber 18 až 20 jsou všechny Oceánie, tato „if loop“přistupuje k tomu, zda je odpověď hráče správná nebo není lcd_I2C_27.clear (); // vymazání zpoždění desky LCD displeje (1000); // počkejte 1000 milisekund (1 sekunda)}}

Krok 6: Dokončení zařízení

  1. Otevřete lepenkovou krabici a vložte dříve vytvořené obvody (včetně všech prvků, například: tři prkénka, deska Arduino, přenosná nabíječka)
  2. S odkazem na kód a vysledované kontinentální části v horní části krabice vložte tlačítka do každé z jejich odpovídajících pozic

    *Můžete se podívat na boční poznámky za kódy, abyste se ujistili, které tlačítko pin je pro který kontinent*

  3. Do každé vystřižené části na pravé straně krabice vložte dvě „funkční tlačítka“(mapové deko D10 a logická hra D9)
  4. Nainstalujte desku LCD displeje do její odříznuté části na pravé straně krabice
  5. Otevřete krabici a ujistěte se, že jsou všechny vodiče řádně připojeny k deskám
  6. Přilepte základ dřevěného prkna k horní části krabice pomocí oboustranné lepicí pásky (ujistěte se, že je zarovnáno správně, aby se knoflíky vešly přímo do řezané části dřevěných desek)
  7. Pomocí horké lepicí pistole vyplňte části malých oblastí (ne hlavní kontinenty)

Krok 7: HOTOVO !!!!

Pro logickou hru přejděte na odkaz na testovací seznam skladeb!

Doporučuje: