Sadržaj:

Mastermind Star Wars s Arduino MEGA: 5 koraka (sa slikama)
Mastermind Star Wars s Arduino MEGA: 5 koraka (sa slikama)

Video: Mastermind Star Wars s Arduino MEGA: 5 koraka (sa slikama)

Video: Mastermind Star Wars s Arduino MEGA: 5 koraka (sa slikama)
Video: Приказ комиссара. Warhammer 40k 2024, Prosinac
Anonim
Mastermind Star Wars s Arduinom MEGA -om
Mastermind Star Wars s Arduinom MEGA -om
Mastermind Star Wars s Arduinom MEGA -om
Mastermind Star Wars s Arduinom MEGA -om
Mastermind Star Wars s Arduinom MEGA -om
Mastermind Star Wars s Arduinom MEGA -om

Ovo su nepovoljna vremena za pobunu. Iako je Zvijezda smrti uništena, carske trupe koriste besplatni hardver i Arduino kao tajno oružje.

To je prednost besplatnih tehnologija, svaka ih osoba (dobra ili loša) može koristiti.

U skrivenoj bazi koja se nalazi na planeti Anoat, grade 3D pisač sposoban kopirati Imperial Destroyer.

Jedino rješenje za poraz Carstva je da skupina pobunjenika kojima zapovijedaju Luke Skycuartielles i Obi-Wan Banzi porazi carske trupe i dobije ključ koji će omogućiti pristup planovima za uništenje tajnog oružja.

Ovaj ključ se sastoji od 4 boje i imate 10 pokušaja da ga dešifrirate. Postoje samo četiri pravila:

  1. Boje se mogu ponavljati
  2. Bijelo svjetlo označava da ste pogodili pravu boju i položaj
  3. Ljubičasto svjetlo označava da ste pogodili boju, ali ne i položaj
  4. Ako nema svjetla, niste pogodili boju ili položaj.

Morate požuriti jer u drugoj krajnosti, zli Darth Ballmer pokušat će doći do ključa prije vas. U tom slučaju nećete moći saznati što je to i nećete imati pristup planovima tajnog oružja. Vaša će misija biti neuspješna.

Mali Padawane, neka vas prati sila da dešifrirate ključ i tako spasite Galaksiju.

Korak 1: Materijal

Materijal
Materijal

Materijal potreban za izradu Mastermind Star Wars s Arduinom podijeljen je u tri dijela.

  • Stolarija i pribor za realizaciju stanovanja
  • Komponente, kabeli i Arduino za svu elektroniku
  • Alati

Krenimo od stolarije. Potreban je sljedeći materijal:

  • 2 x MDF ploče od 90x60
  • 1 x list papira za povrće

U elektroničkom dijelu potreban je sljedeći materijal:

  • 1 x NeoPixel traka 5 metara
  • 1 x Arduino MEGA
  • 1 x kondenzator 100 µF
  • 4 x otpor 470 Ω
  • 5 x crno dugme
  • 5 x bijelo dugme
  • 1 x napajanje 5V-5A
  • 1 x napajanje 5V-2A

Konačno, u dijelu alata upotrijebili smo sljedeće:

  • Silikonski pištolj vruć
  • Laserski CNC de MxN
  • Električni zavarivač
  • Lim za zavarivanje

Korak 2: Dizajn

Oblikovati
Oblikovati
Oblikovati
Oblikovati
Oblikovati
Oblikovati

Jedan od najvažnijih dijelova ovog projekta je dizajn kućišta. Sastoji se od 3 komada izrezana laserskim rezačem.

Baza je uzeta od komada 90x60 u MDF -u. Uzmite u obzir dimenzije materijala jer će vam trebati laserski rezač dovoljno velik.

SVG datoteku možete pronaći na kraju ovog koraka.

Gornji poklopac je onaj koji sadrži tematske crteže Ratova zvijezda, kao i rupe za gumbe i piksele.

Ima isti oblik kao i baza.

Bočni zidovi izrađeni su tehnikom laserskog rezanja koja se naziva kerf. To omogućuje da materijal bude fleksibilan. Za postavljanje zidova neki su komadi dizajnirani da služe kao vodič.

Konačno, svaka NeoPixel matrica ima rešetku na kojoj su s jedne strane NeoPixel fiksirani, a s druge strane pričvršćen je biljni papir koji raspršuje svjetlost NeoPixela. Ovdje imate sve SVG datoteke tako da ih možete sami izrezati i izraditi.

Korak 3: Elektronička montaža

Elektronički sklop
Elektronički sklop
Elektronički sklop
Elektronički sklop
Elektronički sklop
Elektronički sklop
Elektronički sklop
Elektronički sklop

Prva faza sastavljanja elektronike bila je rezanje trake od 5 metara NeoPixela na 8 traka od 10 piksela i 4 odvojena piksela za svakog igrača. Ukupno 84 piksela po igraču. S jedne strane, 10 traka sastavljeno je jedno za drugim, ostavljajući dovoljno kabela da svaku traku postavite paralelno na nekoliko milimetara. Ova matrica piksela poslužit će za prikaz svake reprodukcije i rezultata. 4 piksela prikazuju četiri boje tipke, a ostala četiri piksela prikazuju rezultat. Podsjećam vas da kao rezultat toga moramo:

  • Ako je piksel bijel, položaj i boja su uspjeli.
  • Ako je piksel ljubičaste boje, boja je ispravna, ali ne i položaj.
  • Ako je piksel isključen, ni boja ni položaj nisu ispravni.

Jedna od grešaka koje smo napravili je ožičenje i GND. Moglo je biti jednostavnije, ali kasnije smo to shvatili. Podatkovni kabel mora slijediti redoslijed jer numeriranje piksela ide odozdo prema gore.

S druge strane imamo 4 odvojena piksela koja moraju biti povezana između njih. Ovi pikseli pokazat će nam boju koju odabiremo pomoću gumba.

Uzastopno na svaku traku spojen je otpornik od 470Ω za zaštitu podataka. Podatkovni kabel svake trake piksela spojen je na digitalni pin. Igle odabrane u Arduino MEGA -i su 6, 7, 8 i 9.

Na primjer, 6 i 7 su za igrača 1, a 8 i 9 za igrača 2.

Gumbi koje smo koristili tipični su gumbi arkadnih strojeva. Mislili smo da će izgledati dobro i tako je i bilo.

Mogu se koristiti i drugi gumbi, ali mora se uzeti u obzir da ako su manji ili veći, DXF datoteku je potrebno izmijeniti prije rezanja laserskim CNC -om.

Za razlikovanje igrača neki gumbi su bijeli, a drugi crni.

Svaki igrač ima 4 gumba gore i 1 gumb dolje. Četiri gornje tipke služe za odabir boje svakog položaja tipke.

Donji gumb služi za provjeru valjanosti, odnosno šalje ključ da se pojavi u matrici piksela uz odgovarajuću provjeru jesu li boja i položaj bili uspješni.

Prije sastavljanja svega lemili smo sve kabele. Dakle, trebat će vam puno kabela. Ovisit će o veličini igre. U našem slučaju bila je prilično velika.

Na primjer, možete koristiti ethernet kabel da biste ga otvorili i uzeli unutarnje kabele. To je dobro rješenje. Pokušajte ih učiniti što urednijim jer će tada biti potrebno uspostaviti veze s Arduino MEGA -om kao što vidite na električnom dijagramu.

Nakon što ste svi vojnici prije montaže morate to isprobati. Testirano je jer će se, kad se instalira u kućište, zaglaviti vrućim silikonom, a ako ne uspije, bit će komplicirano, skinite ga. Za postavljanje matrica piksela projektirana je mreža istih dimenzija kao rešetka poklopca gdje su s jedne strane pikseli zaglavljeni, a s druge strane biljni papir.

Ovaj papir raspršuje svjetlost svakog piksela dajući puno ljepši efekt. Zatim se ta struktura lijepi za gornji dio iznutra. Malo je komplicirano, ali pažnjom se postižu dobri rezultati.

Hranjenje je bilo donekle komplicirano. U principu, gledajući shemu, namjeravali smo koristiti samo jedan punjač. Međutim, nakon prvih testova i potrošnje NeoPixela vidjeli smo da će trebati dva punjača.

Svaki piksel može potrošiti najviše 60 mA. Pomnožimo li sa 168 piksela, dobit ćete potrošnju od oko 10 A.

Iako bi to bilo u najgorem slučaju. U programiranju smo već uzeli u obzir da ne povećavamo intenzitet NeoPixela.

Ne dostižemo ni 50% stoga je s punjačem od 5V i 5A više nego dovoljno.

S druge strane, Arduino MEGA ima zasebni punjač koji se može spojiti putem priključka za utičnicu ili putem USB priključka. Jedno od mogućih poboljšanja bilo bi imati jedan punjač za cijeli sustav.

Korak 4: Programiranje igara

Programiranje igara
Programiranje igara
Programiranje igara
Programiranje igara

Programiranje je obavljeno pomoću dvije knjižnice: OneButton i Adafruit_NeoPixel.

Knjižnica OneButton omogućuje jednostavno upravljanje gumbima s prekidima.

Knjižnica Adafruit_NeoPixel omogućila nam je kontrolu NeoPixel trake na vrlo jednostavan način.

Programiranje se temelji na različitim stanjima u kojima softver može biti:

Pokretanje igre. Stanje = 0

U tom stanju igra je pokrenuta i postoji niz svjetla kod oba igrača koji pokazuju da će igra početi. Tijekom tog stanja tipke ne reagiraju.

Početno stanje. Stanje = 1

U početnom stanju pričekajte da jedan od dva igrača dvaput klikne na gumb za potvrdu (peti gumb). Ova će radnja omogućiti pokretanje igre.

Priprema igre. Stanje = 2

U stanju pripreme igre sve varijable se poništavaju i pokreće se nasumični odabir boja za ključ.

Stanje igre = 3

U stanju 3 igra počinje. Svaki igrač odabire tipku s gumbima i potvrđuje je klikom na gumb za potvrdu. Ovo stanje može završiti na dva načina: kada igrač otkrije ključ ili kada dva igrača potroše 10 pokušaja koje imaju.

Jedna pobjednička država = 4

Ako igrač osvoji zeleni ček bit će prikazan na njegovoj ploči, a dobitna kombinacija i crveni križ na gubitniku.

Vezana igra. Stanje = 5

U slučaju izjednačenja, ništa se ne prikazuje na bilo kojoj ploči, a dobitna kombinacija na pločama oba igrača.

Bilo da je u igri pobjednik ili neriješeno, sljedeće stanje bit će početno koje čeka dvostruki klik.

U nastavku možete pronaći sav kôd. Jedino što je na španjolskom:)

Korak 5: Testiranje i poboljšanja

Igra se testira igranjem. U gornjem videu možete vidjeti kompletnu igru.

Odavde se možemo sjetiti nekoliko poboljšanja koja se mogu dodati Mastermind Star Wars s Arduinom.

Zatim ih navodim.

  • Moći igrati naizmjence s ukupno 10 pokušaja za dva igrača. Kad igrač pokuša s ključem, drugi će igrač vidjeti igru.
  • Pojedinačni način igre tako da samo jedna osoba može igrati.
  • Način rada svaki sa svojim ključem.
  • Uključuje OLED zaslon.
  • Za sve koristite jedan punjač.
  • Povežite se s NodeMCU ESP8266

Siguran sam da će mnogi ljudi doći do mnogih poboljšanja. Čekam komentare u nastavku.

I neka sila bude s vama.

Preporučeni: