Përmbajtje:

Projektim Azimuthal Harta Dekorimi X Muzikë Popullore Puzzle Game - Arduino: 7 Hapa
Projektim Azimuthal Harta Dekorimi X Muzikë Popullore Puzzle Game - Arduino: 7 Hapa

Video: Projektim Azimuthal Harta Dekorimi X Muzikë Popullore Puzzle Game - Arduino: 7 Hapa

Video: Projektim Azimuthal Harta Dekorimi X Muzikë Popullore Puzzle Game - Arduino: 7 Hapa
Video: Test neu produzierte Kassetten: EQ-Professional, Recording The Masters FOX + 2 Testmuster 2024, Korrik
Anonim
Image
Image
Hartoni Bordin
Hartoni Bordin

PREZANTIMI

Faqja e mëposhtme do t'ju udhëzojë se si të krijoni një projekt Arduino, i cili ka dy funksione kryesore-dekorim i thjeshtë me ndriçim dhe lojë puzzle me muzikë popullore, që përfshin fushat e gjeografisë, gjeometrisë, hartave, Kombeve të Bashkuara dhe muzikës të gjitha së bashku në një. Duke u bazuar në strukturën e gjashtëkëndëshave, pajisja portretizon hartën e botës në Projeksionin Ekuivistant Azimuthal, i cili është forma e projeksionit të hartës të përdorur nga Kombet e Bashkuara (dhe simboli i saj).

Kur aktivizoni modalitetin e dekorimit, kontinentet e hartës do të shkëlqenin në ngjyra të ndryshme të përcaktuara nga kombinime të rastësishme të vlerave RGB përmes përdorimit të LED -ve RGB.

Mënyra e lojës, nga ana tjetër, kërkon nga përdoruesit të njohin origjinën e këngëve të muzikës popullore (të zgjedhura duke gjeneruar rastësisht numra nga 1 në 20) dhe ta vendosin tabelën kontinentale të përgjigjes së tij/saj në pozicionin e saj përkatës në tabelën kryesore prej druri brenda një grupi koha (e paracaktuar për 1 minutë).

_

FURNIZIM

Materialet aktuale

  • LED 5mm RGB *20
  • Telat
  • Rezistencat *9
  • Arduino Board *1 (çdo lloj)
  • Tabelat e bukës *3
  • Butonat *7
  • Bordi i ekranit LCD I2C *1
  • Kuti kartoni (13*9*5.7 inç; 33*23*14.5 cm)
  • Pllakë druri (37.5*29*0.8 cm)
  • Tabela akrilike (transparente * 2, gjysmë transparente * 1)
  • Karikues portativ *1

Mjetet:

  • Tehu *1
  • Ngjitës për kurimin UV *1
  • Kasetë e dyanshme *1 rrotull
  • Armë ngjitëse e nxehtë *1

Makinat:

Makinë prerëse me lazer

Softuer:

  • Adobe Illustrator
  • Adobe Photoshop
  • Rhino 3D

Hapi 1: Hartoni Bordin

Mund të shkarkoni direkt skedarin e bashkangjitur ose të ndiqni hapat e mëposhtëm.

Skicimi i Hartës

  1. Shkarkoni një skicë të hartës nga Google

    1. Google "Logoja e Kombeve të Bashkuara"
    2. Zgjidhni "mjetet - madhësia - e madhe"
    3. Shkarkoni imazhin tuaj më të preferuar (atë të përdorur nga ky projekt: lidhje) *Mundohuni të mos zgjidhni ato me linja të ndërlikuara që mbivendosen me tokat kontinentale *
  2. Transferoni hartën e shkarkuar në versionin e printimit

    1. Ngjyrosni zonat e padëshirueshme në të bardhë duke përdorur funksionin e furçës së bojës në Adobe Photoshop
    2. Eksportoni skedarin (JPEG)
    3. Importoni skedarin në Adobe Illustrator dhe përdorni funksionin "gjurmimi i imazhit" për të gjetur hartën
    4. Eksportoni skedarin (dxf)

Shtimi i sfondit gjashtëkëndësh

  1. Importoni skedarin dxf në Rhino
  2. Zgjidhni funksionin "poligon" dhe kyçeni në "6" për opsionin "NumSides"
  3. Vendosni "3.5" për vlerën e rrezes
  4. Vizatoni 28 gjashtëkëndësha me madhësi të barabartë
  5. Eksportoni skedarin në 3dm

Hapi 2: Prerja me lazer

Image
Image
Prerje me lazer
Prerje me lazer
Prerje me lazer
Prerje me lazer
Prerje me lazer
Prerje me lazer
  1. Importoni skedarin e përfunduar më parë në xxx.
  2. Duke përdorur makinën e prerjes me lazer, printoni trupin kryesor në dërrasën prej druri dhe kontinentet në dërrasat akrilike (2 transparente dhe 1 gjysmë transparente) (videot janë dhënë më sipër)

Hapi 3: Ndërtoni pajisjen

Ndërtoni pajisjen
Ndërtoni pajisjen
Ndërtoni pajisjen
Ndërtoni pajisjen
Ndërtoni pajisjen
Ndërtoni pajisjen

Tabela Pas Prerjes me Laser

  • Kontinentet akrilike

    1. Përdorni ngjitësit UV të shërueshëm për të ngjitur tre dërrasat e secilit kontinent së bashku (me gjysmë-transparente si shtresa e mesme)
    2. Përdorni dritën UV për të shkëlqyer në zonat e ngjitura në mënyrë që të lejoni që ngjitësit të ngurtësohen
  • Fondacioni i bordit prej druri

    1. Hiqni me dorë zonat e vogla të tokës të mbërthyer në dërrasën kryesore prej druri
    2. *Nëse ndonjë pjesë e dërrasës prej druri është e thyer, përdorni ngjitësit UV të kurueshëm për t'i ngjitur ato mbrapa*

Ndërtimi i Bazës (Fondacioni i Poshtëm i të gjithë Pajisjes)

  1. Gjeni një kuti kartoni me madhësi adekuate, me dimensione afërsisht 13*9*5.7 inç (33*23*14.5 cm)
  2. Duke përdorur dërrasën prej druri si model referimi, gjurmoni pjesët kontinentale në sipërfaqen e sipërme të kutisë
  3. Gjurmoni pjesën e poshtme të butonave në sipërfaqen e sipërme të kutisë, me secilën buton të përqendruar brenda secilës pjesë kontinentale të gjurmuar
  4. Përdorni një teh për të prerë pjesët e butonit duke ndjekur gjurmët
  5. Brenda pjesëve kontinentale të gjurmuara, përdorni një teh për të prerë segmente të shkurtra që rrethojnë butonin
  6. Gjurmoni dy pjesë të tjera të poshtme të butonit në anën e djathtë të kutisë (përpiquni të rreshtoni gjurmët me të njëjtën lartësi)
  7. Gjurmoni tabelën e ekranit LCD në anën e djathtë të kutisë (mbi dy butonat në hapin e mëparshëm)
  8. Përdorni një teh për të prerë dy pjesët e butonave dhe pjesën LCD duke ndjekur gjurmët në hapin 6 dhe 7

Hapi 4: Ndërtoni qarqet

Ndërtoni qarqet
Ndërtoni qarqet

Duke iu referuar skemave të mësipërme, ndërtoni qarkun.

Shënim:

  • Rezistencat për LED -të RGB dhe ato të butonave janë të ndryshme, SHIKO QARTAR!
  • Meqenëse bordi i ekranit LCD më sipër nuk ka modelin I2C, nuk është i lidhur në mënyrë perfekte. (Tabelat e ekranit LCD me modele I2C duhet të lidhen vetëm me katër kunja)

    • Lidhni GND -të në ekranin dhe bordin Arduino
    • Lidhni VCC në ekranin me kunjat pozitive në tabelën e bukës
    • Lidhni SDA -të në ekranin dhe bordin Arduino
    • Lidhni SCL -të në ekranin dhe bordin Arduino

Hapi 5: Ngarko kodin

Kodi për këtë projekt mund të gjendet këtu ose më poshtë.

Çdo linjë kodimi ka një shënim anësor që shpjegon qëllimin dhe funksionin e saj.

Shënim:

  • Të gjitha kunjat D specifike mund të ndryshohen dhe rregullohen bazuar në paraqitjen e qarkut tuaj
  • Të gjithë sekondat e vonuara mund të ndryshohen në vlera të ndryshme, por MOS I FSHIJ! (Këta sekonda të vonuar lejojnë që kodi të rrjedhë më logjikisht. Pa to, disa pjesë të kodit mund të mos funksionojnë!)
  • Në rreshtin 24 (hyrja e "për lak"), mund të caktoni numrin e përsëritjeve për të cilat dëshironi të kryhet lak (vlera origjinale është 5)
  • Kombinimi i ngjyrave të LED -ve RGB në sythe "nëse shtypet" dhe "nëse nuk shtypet" mund të rregullohen dhe personalizohen. (Fillimisht, LED -të RGB do të shkëlqenin me ngjyrë të gjelbër nëse shtypen ndërsa ato do të shkëlqejnë me të kuqe nëse nuk shtypen. Ju mund t'i ndryshoni vlerat për të pasur ngjyra krijuese për t'iu përgjigjur DREJTA dhe GABIMI)

#përfshi

#përfshi LiquidCrystal_I2C lcd_I2C_27 (0x27, 16, 2); // vendosni adresën LCD për një 16 shkronja dhe një ekran me 2 rreshta int _R; // futni ndryshoren R, e cila përfaqëson vlerën e Kuqe të LED -ve RGB int _G; // futja e ndryshores G, e cila nënkupton vlerën e Gjelbër të LED -ve RGB int _B; // prezantoni variablin B, që përfaqëson vlerën Blu të LED -ve RGB int _SongNumber; // futja e ndryshueshme të konfigurimit të ndryshueshëm të SongNumber () {pinMode (10, INPUT); // vendos D10 si hyrje për butonin e dekorimit të hartës pinMode (9, INPUT); // vendos D9 si hyrje për butonin e lojës me enigma pinMode (8, INPUT); // vendos D8 si hyrje për butonin Eurasia pinMode (4, INPUT); // vendos D4 si hyrje për pinMode butonin e Amerikës së Veriut (3, INPUT); // cakton D3 si hyrje për butonin pinMode të Amerikës së Jugut (2, INPUT); // vendos D2 si hyrje për butonin Afrikë pinMode (1, INPUT); // vendos D1 si hyrje për butonin Oqeania lcd_I2C_27.init (); // inicializoni tabelën e ekranit LCD lcd_I2C_27.bardhë (); // ndiz dritën e pasme të tabelës së ekranit LCD} lak void () {nëse (digitalRead (10)) {// nëse butoni i dekorimit të hartës shtypet për (int i = 0; i <5; ++ i) {// ekzekutoni lakin e mëposhtëm për 5 herë _R = të rastit (0, 1023); // jepni ndryshores R një vlerë të rastësishme nga 0 në 1023 _G = të rastësishme (0, 1023); // jepni ndryshores G një vlerë të rastësishme nga 0 në 1023 _B = të rastit (0, 1023); // jepni ndryshores B një vlerë të rastësishme nga 0 në 1023 analogWrite (13, (_R /4)); // vlera R e LED -ve RGB për grupin e parë zëvendëson dhe shkruan vlerën e ndryshueshme nga 0 në 255 analogWrite (12, (_G /4)); // vlera G e LED -ve RGB për grupin e parë zëvendëson dhe shkruan vlerën e ndryshueshme nga 0 në 255 analogWrite (11, (_B /4)); // vlera B e LED -ve RGB për zëvendësuesit e grupit të parë dhe shkruan vlerën e ndryshueshme nga 0 në 255 analogWrite (7, (_R /4)); // vlera R e LED -ve RGB për grupin e dytë zëvendëson dhe shkruan vlerën e ndryshueshme nga 0 në 255 analogWrite (6, (_G /4)); // vlera G e LED -ve RGB për zëvendësuesit e grupit të dytë dhe shkruan vlerën e ndryshueshme nga 0 në 255 analogWrite (5, (_B /4)); // vlera B e LED -ve RGB për zëvendësuesit e grupit të dytë dhe shkruan vlerën e ndryshueshme nga 0 në 255 vonesë (3000); // prisni 3000 milisekonda (3 sekonda)} // meqenëse vlerat e ndryshores R, G, B përcaktohen në lak, do të ketë pesë kombinime të ndryshme ngjyrash për lak} nëse (digitalRead (9)) {// nëse butoni lojë-enigmë shtypet _SongNumber = rastësor (1, 20); // jepni ndryshueshme SongNumber një vlerë të rastësishme nga 1 në 20 lcd_I2C_27.setCursor (0, 0); // vendosni kursorin, numërimi fillon me 0 lcd_I2C_27.print (_SumNumber); // printoni vlerën e SongNumber në bordin e ekranit LCD analogWrite (13, 0); // rivendos dhe shkruaj vlerën e D13 si 0 analogWrite (12, 0); // rivendos dhe shkruaj vlerën e D12 si 0 analogWrite (11, 0); // rivendos dhe shkruaj vlerën e D11 si 0 analogWrite (7, 0); // rivendos dhe shkruaj vlerën e D7 si 0 analogWrite (6, 0); // rivendos dhe shkruaj vlerën e D6 si 0 analogWrite (5, 0); // rivendosni dhe shkruani vlerën e D5 si 0 nëse (_SongNumber> = 1 && _SongNumber = 4 && _SongNumber = 7 && _SongNumber = 11 && _SongNumber = 15 && _SongNumber = 18 && _SongNumber <= 20) {// nëse vlera e variabli SongNumber është nga 18 në 20 vonesë (60000); // prisni për 60000 milisekonda që lojtarët të dëgjojnë muzikën popullore (60 sekonda; 1 min) nëse (digitalRead (1)) {// nëse butoni Oqeania është shtypur analogWrite (13, 0); // analogShkruani vlerën e D13 si 0 analogWrite (12, 255); // analogShkruani vlerën e D12 si 255 analogWrite (11, 0); // analogShkruani vlerën e D11 si 0 analogWrite (7, 0); // analogShkruaj vlerën e D7 si 0 analogWrite (6, 255); // analogShkruaj vlerën e D6 255 analogWrite (5, 0); // analogShkruaj vlerën e D5 si 0} // të gjitha LED -të RGB do të shkëlqejnë në ngjyrë të gjelbër tjetër {// nëse butoni Oqeania nuk shtypet analogWrite (13, 255); // analogShkruaj vlerën e D13 si 255 analogWrite (12, 0); // analogShkruani vlerën e D12 si 0 analogWrite (11, 0); // analogShkruani vlerën e D11 si 0 analogWrite (7, 255); // analogShkruaj vlerën e D7 si 255 analogWrite (6, 0); // analogShkruaj vlerën e D6 si 0 analogWrite (5, 0); // analogShkruani vlerën e D5 si 0} // të gjitha LED -të RGB do të shkëlqenin me ngjyrë të kuqe} // pasi përgjigjet e sakta për SongNumber 18 deri në 20 janë të gjitha Oqeania, ky "nëse loop" hyn nëse përgjigja e lojtarit është e saktë ose jo lcd_I2C_27.qartë (); // pastroni vonesën e bordit të ekranit LCD (1000); // prisni për 1000 milisekonda (1 sekondë)}}

Hapi 6: Përfundimi i pajisjes

  1. Hapni kutinë e kartonit dhe vendosni qarqet e ndërtuara më parë (duke përfshirë të gjithë elementët, p.sh.: tre dërrasa buke, bordi Arduino, karikuesi portativ)
  2. Duke iu referuar kodit dhe pjesëve kontinentale të gjurmuara në krye të kutisë, futini butonat në secilën nga pozicionet e tyre përkatëse

    *Ju mund t'i referoheni shënimeve anësore pas kodeve në mënyrë që të siguroheni se butoni i pinit është për cilin kontinent*

  3. Mbushni dy "butonat e funksionit" (harta-deko e D10 dhe lojë me enigma të D9) në secilën prej pjesëve të prera në anën e djathtë të kutisë
  4. Instaloni bordin e ekranit LCD në pjesën e tij të prerë në anën e djathtë të kutisë
  5. Hapeni kutinë dhe sigurohuni që të gjitha telat janë lidhur siç duhet me dërrasat
  6. Ngjiteni bazën e dërrasës prej druri në pjesën e sipërme të kutisë duke përdorur shirit të dyanshëm (sigurohuni që të rreshtoheni siç duhet në mënyrë që butonat të përshtaten pikërisht në pjesën e prerë të dërrasave prej druri)
  7. Përdorni armë zam të nxehtë për të mbushur pjesët e rajonit të vogël (jo kontinentet kryesore)

Hapi 7: Bërë !!!!!

Për lojën e enigmës, shkoni te lidhja për listën e testimit!

Recommended: