Satura rādītājs:

Rokas Arduino tenisa konsole: 6 soļi (ar attēliem)
Rokas Arduino tenisa konsole: 6 soļi (ar attēliem)

Video: Rokas Arduino tenisa konsole: 6 soļi (ar attēliem)

Video: Rokas Arduino tenisa konsole: 6 soļi (ar attēliem)
Video: Web Programming - Computer Science for Business Leaders 2016 2024, Jūnijs
Anonim
Rokas Arduino tenisa konsole
Rokas Arduino tenisa konsole

DFRobot nesen sazinājās ar mani, vēloties, lai es izmantoju viņu īpašo Arduino Nano plati un OLED. Sākumā es gribēju izveidot gudru velosipēdu, un es to uzbūvēju pilnībā. Bet diemžēl Nano bija pārāk vājš, lai palaistu un uzglabātu nepieciešamo masveida skici. Tāpēc es nolēmu vēlreiz apskatīt vienu no saviem iepriekšējiem projektiem - Neopixel matricu, kas vadīja Pong spēli. Tā vietā es gribēju to padarīt pārnēsājamu, un 1,7 collu OLED būtu ideāls displejs.

Daļu saraksts:

  • Arduino nano
  • OLED
  • Runātājs

1. darbība: video

Image
Image

2. solis: spēles izstrāde

Spēles projektēšana
Spēles projektēšana

Šai Pong spēlei es vēlējos to saglabāt salīdzinoši vienkāršu, kas nozīmēja bez datora vadītu lāpstiņu vai izsmalcinātus bumbiņu atstarošanas algoritmus. Būtībā ir viens lāpstiņš, kuru lietotājs var pārvietot uz augšu vai uz leju, un, liekot bumbiņai sadurties ar lāpstiņu, tās x ass vektors varētu apgāzties. Katru reizi, kad bumba tiek trāpīta, atskan skaņa. Kad spēļu ierīce ir ieslēgta, ekrānā parādās spēles nosaukums un instrukcijas. Turklāt mana māte izveidoja nelielu motīvu dziesmu, kas fonā darbojas, līdz tiek nospiesta augšējā poga.

3. darbība: spēļu ierīces projektēšana

Spēļu ierīces projektēšana
Spēļu ierīces projektēšana
Spēļu ierīces projektēšana
Spēļu ierīces projektēšana
Spēļu ierīces projektēšana
Spēļu ierīces projektēšana
Spēļu ierīces projektēšana
Spēļu ierīces projektēšana

Mana iecienītā CAD programma ir Fusion 360, tāpēc es nolēmu to izmantot, lai izstrādātu savu tenisa spēļu ierīci. Es sāku, izstrādājot katru izmantoto komponentu: OLED, Arduino Nano un skaļruni. Tādā veidā es varu precīzi redzēt, kur un kā katrai sastāvdaļai vajadzētu ietilpt korpusa iekšpusē. Pēc tam es ievietoju Nano un PCB korpusa aizmugurējā daļā, bet virspusē - OLED. Nākamais bija jautājums, kur likt skaļruni un pogas. Es nolēmu, ka 3 W skaļrunis var nokļūt tieši zem ekrāna (skatoties uz to no augšas), un tam bija nepieciešams arī virs skaļruņa uzlikt „grilu”, lai skaņa netiktu klusināta. Visbeidzot, es pievienoju divas pogas kreisajā pusē, lai pievienotu vadīklas.

4. solis: ierīces uzbūve

Ierīces konstruēšana
Ierīces konstruēšana
Ierīces konstruēšana
Ierīces konstruēšana
Ierīces konstruēšana
Ierīces konstruēšana

Es sāku ar 3D drukāšanu katru daļu, kas sastāv no apakšējās puses, augšējās puses un 2 pogām. Tālāk es lodēju sieviešu galviņu pie 4x6 cm un pievienoju to Nano. Tas ne tikai ļauj viegli noņemt OLED, bet arī paceļ to virs Arduino Nano. Informāciju par vadiem skatiet shēmā. Tad es pieslēdzu abas pogas kopā ar vienkāršu mikro USB sadalīšanas paneli jaudai. Arī skaļrunis tika pievienots un novietoja to pareizajā vietā. Mana Fusion 360 konstrukcija ļauj 3 mm mašīnas skrūvēm turēt nospiestu OLED, skaļruni un savienot abas ierīces puses. Bet man tie bija jāprecizē, tāpēc es izmantoju urbšanas presi, lai izurbtu 8 caurumus: 2 skaļrunim, 2 ekrānam un 4 apakšā. Failiem varat apmeklēt saiti Thingiverse.

5. darbība: spēles programmēšana

Vienkāršas saskarnes izmantošana bija būtiska, lai programma būtu maza. Sākumā pievienoju vairākas bibliotēkas: Adafruit_GFX, Adafruit_SSD1351 un Arduino Timer bibliotēku. Tālāk es definēju savas tapas un krāsas, piemēram, OLED tapas un 16 bitu krāsu definīcijas. Manā kodā ir arī 4 veidi, kā mainīt spēles norisi, piemēram, mainīt lāpstiņas izmērus un bumbas pārvietošanās ātrumu. Pēc tam pastāv sadaļa, kurā tiek definēts katrs mainīgais, ieskaitot punktu skaitu un dažādas koordinātas. Ikreiz, kad ierīce ir ieslēgta, tiek parādīts bumbiņas attēls un ekrānā parādās teksts, kā arī neliela motīvu dziesma, kas iepriekš definēta kodā. Kad spēle sākas, tiek izveidoti divi taimeri, viens atjaunina lāpstiņu, bet otrs atjaunina bumbu. Katru reizi, kad tiek atjaunināta bumbiņas pozīcija, tiek pārbaudītas tā koordinātas, lai pārliecinātos, ka tā nepārsniedz ekrāna robežu vai nepieskaras lāpstiņai. Katru reizi, kad tā atlec, vai nu tās x, vai y ass tiek apgriezta un tiek atskaņots neliels tonis. Noskatieties video šī raksta sākumā, lai redzētu, kā spēle darbojas.

6. solis: spēlēt tenisu

Spēlējot tenisu!
Spēlējot tenisu!
Spēlējot tenisu!
Spēlējot tenisu!
Spēlējot tenisu!
Spēlējot tenisu!
Spēlējot tenisu!
Spēlējot tenisu!

Spēles nosaukums ir iegūt pēc iespējas zemāku punktu skaitu. Nav laika ierobežojuma, tāpēc tas ir ļoti patīkami un pat rada transu. Viss, kas nepieciešams, ir nospiest vienu no divām pogām, lai pārvietotu lāpstiņu uz augšu vai uz leju. Ir iespējams arī pievienot veidu, kā saglabāt augstāko punktu skaitu, izmantojot Arduino EEPROM.

Ieteicams: