Talaan ng mga Nilalaman:

Mastermind Star Wars With Arduino MEGA: 5 Hakbang (na may Mga Larawan)
Mastermind Star Wars With Arduino MEGA: 5 Hakbang (na may Mga Larawan)

Video: Mastermind Star Wars With Arduino MEGA: 5 Hakbang (na may Mga Larawan)

Video: Mastermind Star Wars With Arduino MEGA: 5 Hakbang (na may Mga Larawan)
Video: How To Know If You Got A 5 Star | Honkai Star Rail 2024, Nobyembre
Anonim
Mastermind Star Wars Sa Arduino MEGA
Mastermind Star Wars Sa Arduino MEGA
Mastermind Star Wars Sa Arduino MEGA
Mastermind Star Wars Sa Arduino MEGA
Mastermind Star Wars Sa Arduino MEGA
Mastermind Star Wars Sa Arduino MEGA

Ito ang masasamang oras para sa paghihimagsik. Bagaman nawasak ang Death Star, ang mga tropang Imperial ay gumagamit ng libreng hardware at Arduino bilang isang lihim na sandata.

Ito ang kalamangan ng mga libreng teknolohiya, ang sinumang tao (alinman sa mabuti o masama) ay maaaring gumamit ng mga ito.

Sa isang nakatagong base na matatagpuan sa planong Anoat, nagtatayo sila ng isang 3D printer na may kakayahang pagtiklop ng Imperial Destroyer.

Ang tanging solusyon upang talunin ang Emperyo ay ang isang pangkat ng mga rebelde na utos nina Luke Skycuartielles at Obi-Wan Banzi, talunin ang mga tropang imperyal at makuha ang susi na magbibigay ng access sa mga plano na sirain ang lihim na sandata.

Ang susi na ito ay binubuo ng 4 na kulay at mayroon kang 10 pagtatangka upang mai-decipher ito. Mayroong apat na mga patakaran lamang:

  1. Maaaring ulitin ang mga kulay
  2. Ang isang puting ilaw ay nagpapahiwatig na naabot mo ang tamang kulay at posisyon
  3. Ang isang ilaw na lila ay nagpapahiwatig na na-hit mo ang kulay ngunit hindi ang posisyon
  4. Kung walang ilaw ay hindi mo nahulaan ang kulay o ang posisyon.

Dapat kang magmadali dahil sa iba pang matinding, susubukan ng masasamang Darth Ballmer na makuha ang susi sa harap mo. Sa kasong iyon, hindi mo malalaman kung ano ito at hindi ka magkakaroon ng access sa mga plano ng lihim na sandata. Nabigo ang iyong misyon.

Little Padawan, nawa ay samahan ka ng puwersa upang maunawaan ang susi at sa gayon ay mai-save ang Galaxy.

Hakbang 1: Materyal

Materyal
Materyal

Ang materyal na kinakailangan upang gawin ang Mastermind Star Wars kasama ang Arduino ay nahahati sa tatlong bahagi.

  • Karpinterya at kagamitan sa pagsulat para sa pagsasakatuparan ng pabahay
  • Mga bahagi, cable at Arduino para sa lahat ng electronics
  • Mga kasangkapan

Magsimula tayo sa karpintero. Ang sumusunod na materyal ay kinakailangan:

  • 2 x MDF boards mula sa 90x60
  • 1 x sheet ng papel ng gulay

Sa elektronikong bahagi, kinakailangan ang sumusunod na materyal:

  • 1 x NeoPixel Strip 5 metro
  • 1 x Arduino MEGA
  • 1 x kapasitor 100 µF
  • 4 x paglaban 470 Ω
  • 5 x itim na pindutan
  • 5 x puting pindutan
  • 1 x lakas 5V-5A
  • 1 x lakas 5V-2A

Panghuli, sa bahagi ng tool na ginamit namin ang mga sumusunod:

  • Mainit ang Silicone Gun
  • Laser CNC de MxN
  • Electric welder
  • Tinre ng welder

Hakbang 2: Disenyo

Disenyo
Disenyo
Disenyo
Disenyo
Disenyo
Disenyo

Ang isa sa pinakamahalagang bahagi ng proyektong ito ay ang disenyo ng pabahay. Binubuo ito ng 3 piraso na gupitin ng laser cutter.

Ang batayan ay kinuha mula sa isang piraso ng 90x60 sa MDF. Isaalang-alang ang mga sukat ng materyal dahil kakailanganin mo ng isang laser cutter na sapat na malaki.

Maaari mong mahanap ang SVG file sa pagtatapos ng hakbang na ito.

Ang tuktok na takip ay ang isa na naglalaman ng mga pampakay na guhit ng Star Wars pati na rin ang mga butas para sa parehong mga pindutan at mga pixel.

Ito ay may parehong hugis ng base.

Ang mga dingding sa gilid ay ginawa gamit ang isang diskarteng pagputol ng laser na tinatawag na kerf. Pinapayagan nitong maging kakayahang umangkop ang materyal. Upang mailagay ang mga pader, ang ilang mga piraso ay dinisenyo upang magsilbing gabay.

Sa wakas, ang bawat NeoPixel matrix ay may isang grid kung saan sa isang tabi ang NeoPixel ay naayos at sa kabilang banda ang isang vegetal na papel ay naayos upang magkalat ang ilaw ng NeoPixel. Narito mo ang lahat ng mga SVG file upang maaari mong i-cut at gawin ang mga ito sa iyong sarili.

Hakbang 3: Electronic Assembly

Electronic Assembly
Electronic Assembly
Electronic Assembly
Electronic Assembly
Electronic Assembly
Electronic Assembly
Electronic Assembly
Electronic Assembly

Ang unang yugto ng pagpupulong ng electronics ay upang putulin ang strip ng 5 metro ng NeoPixel sa 8 strips ng 10 pixel at 4 na magkakahiwalay na pixel para sa bawat manlalaro. Sa kabuuan 84 na pixel bawat manlalaro. Sa isang banda ang 10 piraso ay pinagsama-sama isang sinusundan ng isa pa na nag-iiwan ng sapat na cable upang ilagay ang bawat strip na kahilera sa ilang millimeter. Ang matrix ng mga pixel na ito ay ihahatid upang maipakita ang bawat pag-play at ang resulta. Ipinapakita ng 4 na pixel ang apat na kulay ng susi at ang iba pang apat na mga pixel ay nagpapakita ng resulta. Ipinaaalala ko sa iyo na bilang isang resulta kailangan nating:

  • Kung ang pixel ay puti, ito ay matagumpay na posisyon at kulay.
  • Kung ang lila ay pixel, ang kulay ay tama ngunit hindi ang posisyon.
  • Kung naka-off ang pixel, alinman sa kulay o posisyon ay hindi tama.

Isa sa mga pagkakamali na nagawa natin ay ang mga kable ng kuryente at GND. Maaari itong maging mas simple ngunit napagtanto namin sa paglaon. Kailangang sundin ng data cable ang isang order dahil ang pagnunumero ng mga pixel ay mula sa ibaba hanggang sa itaas.

Sa kabilang banda mayroon kaming 4 na magkakahiwalay na mga pixel na dapat na konektado sa pagitan nila. Ipapakita sa amin ng mga pixel na ito ang kulay na pipiliin namin gamit ang mga pindutan.

Nakakonekta sa serye sa bawat strip ay isang 470Ω risistor upang maprotektahan ang data. Ang data cable ng bawat strip ng mga pixel ay konektado sa isang digital pin. Ang mga pin na napili sa Arduino MEGA ay 6, 7, 8 at 9.

Halimbawa, ang 6 at 7 ay para sa manlalaro 1 at 8 at 9 para sa manlalaro 2.

Ang mga pindutan na ginamit namin ay ang mga tipikal na pindutan ng mga arcade machine. Naisip namin na magiging maganda ang hitsura nila at ganyan iyon.

Maaaring magamit ang iba pang mga pushbutton ngunit dapat itong isaalang-alang na kung ang mga ito ay mas maliit o mas malaki, ang DXF file ay dapat baguhin bago i-cut gamit ang laser CNC.

Upang makilala ang mga manlalaro, ang ilang mga pindutan ay puti at ang iba ay itim.

Ang bawat manlalaro ay may 4 na pindutan pataas at 1 pindutan pababa. Naghahatid ang 4 na itaas na pindutan upang piliin ang kulay ng bawat posisyon ng key.

Ginamit ang ilalim na pindutan upang mapatunayan, iyon ay, nagpapadala ito ng susi upang lumitaw sa pixel matrix na may nauugnay na pag-verify kung ang kulay at posisyon ay matagumpay.

Bago tipunin ang lahat ay pinaghinang namin ang lahat ng mga kable. Kaya kakailanganin mo ng maraming kable. Ito ay depende sa laki ng laro. Sa aming kaso ito ay naging malaki.

Halimbawa, maaari kang gumamit ng isang ethernet cable upang buksan ito at kunin ang panloob na mga kable. Ito ay isang mahusay na solusyon. Subukan na maayos ang mga ito hangga't maaari sapagkat kinakailangan na gawin ang mga koneksyon sa Arduino MEGA tulad ng nakikita mo sa diagram ng elektrikal.

Kapag ikaw ay lahat ng sundalo bago i-mount ito kailangan mong subukan ito. Nasubukan ito sapagkat kapag na-install ito sa pabahay, maiipit ito ng mainit na silicone at kung mabigo ito ay magiging kumplikado pagkatapos ay alisin ito. Upang mailagay ang mga pixel matrice, ang isang grid ay dinisenyo na may parehong mga sukat tulad ng grid ng talukap ng mata kung saan sa isang gilid ang mga pixel ay natigil at sa kabilang panig isang halaman na halaman.

Ang papel na ito ay nagkakalat ng ilaw ng bawat pixel na nagbibigay ng mas magandang epekto. Pagkatapos, ang istrakturang iyon ay nananatili sa tuktok na bahagi sa loob. Medyo kumplikado ito ngunit sa pag-iingat, nakakamit ang isang magandang resulta.

Ang pagpapakain ay medyo kumplikado. Sa prinsipyo at pagtingin sa pamamaraan, isang solong charger lang ang gagamitin namin. Gayunpaman, pagkatapos ng mga unang pagsubok at pagkonsumo ng NeoPixel nakita namin na kukuha ng dalawang charger.

Ang bawat pixel ay maaaring ubusin ang maximum na 60 mA. Kung magpaparami kami ng 168 mga pixel, makakakuha ka ng pagkonsumo ng halos 10 A.

Kahit na ito ay magiging sa pinakamasamang kaso. Sa programa na isinasaalang-alang namin na hindi i-maximize ang tindi ng NeoPixel.

Ni hindi namin naabot ang 50% samakatuwid, na may isang 5V at 5A charger ay higit pa sa sapat.

Sa kabilang banda ang Arduino MEGA ay may isang hiwalay na charger na maaaring konektado sa pamamagitan ng jack konektor o sa pamamagitan ng USB port. Ang isang posibleng pagpapabuti ay ang pagkakaroon ng isang solong charger para sa buong system.

Hakbang 4: Programing sa Laro

Game Programing
Game Programing
Game Programing
Game Programing

Tapos na ang programa gamit ang dalawang silid-aklatan: OneButton at Adafruit_NeoPixel.

Pinapayagan ng library ng Onebutton na kontrolin ang mga pindutan sa isang simpleng paraan na may mga pagkagambala.

Pinayagan kami ng Adafruit_NeoPixel library na kontrolin ang NeoPixel strip sa isang napaka-simpleng paraan.

Ang programa ay batay sa iba't ibang mga estado kung saan maaaring ang programa ng software ay:

Simula ng laro. Estado = 0

Sa estado na ito, ang laro ay nagsimula at mayroong isang pagkakasunud-sunod ng mga ilaw sa parehong mga manlalaro na nagpapahiwatig na ang laro ay magsisimula. Sa panahong ito ang mga pushbutton ay hindi tumutugon.

Paunang estado. Estado = 1

Sa paunang estado, maghintay para sa isa sa dalawang manlalaro upang mag-double click sa pindutan ng kumpirmasyon (ang ikalimang pindutan). Papayagan ang pagkilos na ito upang simulan ang laro.

Paghahanda ng laro. Estado = 2

Sa estado ng paghahanda ng laro ang lahat ng mga variable ay nai-reset at ang random na pagpipilian ng mga kulay para sa susi ay inilunsad.

Play State = 3

Sa estado 3 nagsisimula ang laro. Ang bawat manlalaro ay pipili ng isang susi gamit ang mga pindutan at napatunayan ito sa pamamagitan ng pag-click sa pindutan ng kumpirmasyon. Ang estado na ito ay maaaring magtapos sa dalawang paraan: kapag natuklasan ng isang manlalaro ang susi o kapag natupok ng dalawang manlalaro ang 10 pagtatangka na mayroon sila.

Isang nagwaging Estado = 4

Kung ang isang manlalaro ay nanalo ng isang berdeng tseke ay ipapakita sa kanyang board at ang panalong kumbinasyon at isang pulang krus sa natalo.

Nakatali na laro. Estado = 5

Sa kaso ng isang kurbatang, walang ipinakita sa anumang board at ang panalong kumbinasyon sa parehong board ng mga manlalaro.

Kung mayroong isang nagwagi o isang kurbatang sa laro, ang susunod na estado ay ang paunang naghihintay para sa isang double click.

Mahahanap mo ang lahat ng code sa ibaba. Ang tanging bagay na nasa Espanyol:)

Hakbang 5: Pagsubok at Mga Pagpapabuti

Ang laro ay nasubok sa pamamagitan ng paglalaro. Sa video sa itaas maaari mong makita ang isang kumpletong laro.

Mula dito maaari nating maiisip ang maraming mga pagpapabuti na maaaring idagdag sa Mastermind Star Wars kasama si Arduino.

Susunod ilista ko sila.

  • Upang makapaglaro sa mga liko na may kabuuang 10 mga pagtatangka para sa dalawang manlalaro. Kapag ang isang manlalaro ay sumusubok ng isang susi, makikita ng ibang manlalaro ang pag-play.
  • Isang indibidwal na mode ng laro upang ang isang tao lamang ang maaaring maglaro.
  • Ang bawat isa ay may mode na susi nito.
  • Magsama ng isang OLED screen.
  • Gumamit ng isang solong charger para sa lahat.
  • Kumonekta sa isang NodeMCU ESP8266

Sigurado akong maraming tao ang makakaisip ng maraming mga pagpapabuti. Naghihintay ako ng mga komento sa ibaba.

At nawa ang lakas ay sumainyo.

Inirerekumendang: