Мазмұны:

Mastermind Star Wars Arduino MEGA көмегімен: 5 қадам (суреттермен)
Mastermind Star Wars Arduino MEGA көмегімен: 5 қадам (суреттермен)

Бейне: Mastermind Star Wars Arduino MEGA көмегімен: 5 қадам (суреттермен)

Бейне: Mastermind Star Wars Arduino MEGA көмегімен: 5 қадам (суреттермен)
Бейне: Amazing arduino project 2024, Қараша
Anonim
Mastermind Star Wars Arduino MEGA көмегімен
Mastermind Star Wars Arduino MEGA көмегімен
Mastermind Star Wars Arduino MEGA көмегімен
Mastermind Star Wars Arduino MEGA көмегімен
Mastermind Star Wars Arduino MEGA көмегімен
Mastermind Star Wars Arduino MEGA көмегімен

Бұл бүлік үшін қолайсыз уақыт. Өлім жұлдызы жойылғанымен, империялық әскерлер жасырын қару ретінде ақысыз техниканы және Ардуиноны қолданады.

Бұл ақысыз технологиялардың артықшылығы, кез келген адам (жақсы немесе жаман) оларды қолдана алады.

Anoat планетасында орналасқан жасырын базада олар Imperial Destroyer -ді көшіруге қабілетті 3D -принтер құрастыруда.

Империяны жеңудің жалғыз шешімі-Люк Скюкартильес пен Оби-Ван Банзи басқарған бүлікшілер тобы империялық әскерлерді талқандап, құпия қаруды жою жоспарларына қол жеткізуге мүмкіндік беретін кілтті алады.

Бұл кілт 4 түстен тұрады және оны шешуге 10 әрекет бар. Тек төрт ереже бар:

  1. Түстерді қайталауға болады
  2. Ақ жарық сіздің дұрыс түс пен позицияға жеткеніңізді білдіреді
  3. Күлгін жарық сіздің түске енгеніңізді көрсетеді, бірақ позицияға әсер етпейді
  4. Егер жарық болмаса, сіз түсі мен орнын болжай алмадыңыз.

Сіз асығуыңыз керек, екінші жағынан, зұлым Дарт Балмер сіздің алдыңызда кілтті алуға тырысады. Бұл жағдайда сіз оның не екенін біле алмайсыз және құпия қарудың жоспарларына қол жеткізе алмайсыз. Сіздің миссияңыз сәтсіз болады.

Кішкентай Падаван, күш сізге кілтті шешуге көмектеседі және Галактиканы сақтай алады.

1 -қадам: Материал

Материал
Материал

Arduino көмегімен Mastermind Star Wars жасауға қажетті материал үш бөлікке бөлінген.

  • Тұрғын үйді сатуға арналған ағаш және кеңсе тауарлары
  • Барлық электроникаға арналған компоненттер, кабельдер мен Arduino
  • Құралдар

Ағаштан бастайық. Келесі материал қажет:

  • 90х60 өлшемді 2 х MDF тақтасы
  • 1 х көкөніс қағаз парағы

Электронды бөлімде келесі материал қажет:

  • 1 x NeoPixel жолағы 5 метр
  • 1 x Arduino MEGA
  • 1 х конденсатор 100 мкФ
  • 4 x қарсылық 470 Ом
  • 5 x қара түйме
  • 5 x ақ түйме
  • 1 x қуаты 5V-5A
  • 1 x қуаты 5В-2А

Ақырында, құрал бөлігінде біз мыналарды қолдандық:

  • Ыстық силикон қаруы
  • CNC MxN лазер
  • Электрмен дәнекерлеуші
  • Дәнекерлеуші қалайы

2 -қадам: Дизайн

Дизайн
Дизайн
Дизайн
Дизайн
Дизайн
Дизайн

Бұл жобаның маңызды бөліктерінің бірі - тұрғын үйдің дизайны. Ол лазерлік кескішпен кесілген 3 бөліктен тұрады.

Негіз MDF -де 90x60 кесіндіден алынады. Материалдың өлшемдерін ескеріңіз, өйткені сізге жеткілікті үлкен лазерлік кескіш қажет.

Сіз осы қадамның соңында SVG файлын таба аласыз.

Жоғарғы мұқаба - бұл жұлдызды соғыстардың тақырыптық суреттері, сонымен қатар түймелер мен пиксельдер үшін тесіктер.

Оның негізі сияқты бірдей пішіні бар.

Бүйір қабырғалар керф деп аталатын лазерлік кесу әдісімен жасалған. Бұл материалдың икемді болуына мүмкіндік береді. Қабырғаларды орналастыру үшін кейбір бөліктер нұсқаулық ретінде қызмет етуге арналған.

Ақырында, әрбір NeoPixel матрицасында тор бар, оның бір жағында NeoPixel бекітілген, ал екінші жағынан NeoPixel жарығын тарату үшін өсімдік қағаз бекітілген. Мұнда сізде барлық SVG файлдары бар, осылайша сіз оларды өзіңіз кесе және жасай аласыз.

3 -қадам: электронды жинақ

Электронды жинақ
Электронды жинақ
Электронды жинақ
Электронды жинақ
Электронды жинақ
Электронды жинақ
Электронды жинақ
Электронды жинақ

Электрониканы құрастырудың бірінші кезеңі 5 метрлік NeoPixel жолағын 10 пиксельді 8 жолақпен және әр ойыншыға 4 бөлек пиксельмен кесу болды. Барлығы бір ойыншыға 84 пиксель. Бір жағынан 10 жолақ бірінен соң бірі жиналады, содан кейін әр жолақты бірнеше миллиметрге параллель қоюға жеткілікті кабель қалады. Бұл пиксель матрицасы әр ойын мен нәтижені көрсетуге қызмет етеді. 4 пиксель кілттің төрт түсін көрсетеді, ал қалған төрт пиксель нәтижені көрсетеді. Естеріңізге сала кетейін, нәтижесінде:

  • Егер пиксель ақ болса, ол сәтті орналасуы мен түсі болды.
  • Егер пиксель күлгін болса, түс дұрыс, бірақ позиция емес.
  • Егер пиксель өшірулі болса, түсі де, орны да дұрыс емес.

Біз жіберген қателіктердің бірі - электр сымдары мен GND. Бұл қарапайым болуы мүмкін, бірақ біз кейін түсіндік. Деректер кабелі тапсырысты орындауы керек, себебі пикселдердің нөмірленуі төменнен жоғары қарай жүреді.

Екінші жағынан, бізде 4 бөлек пиксель бар, оларды бір -бірімен байланыстыру керек. Бұл пиксельдер бізге батырмалармен таңдалған түсті көрсетеді.

Деректерді қорғау үшін 470Ω резистор әр жолаққа тізбектей қосылған. Әр пиксель жолағының деректер кабелі сандық түйреуішке қосылған. Arduino MEGA -да таңдалған түйреуіштер - 6, 7, 8 және 9.

Мысалы, 6 мен 7 1 -ші ойыншыға және 8 -ге және 2 -ойыншыға арналған.

Біз қолданған түймелер - аркадтық машиналардың типтік түймелері. Біз олар жақсы көрінеді деп ойладық, осылай болды.

Басқа түймелерді қолдануға болады, бірақ егер олар кішірек немесе үлкен болса, лазерлік CNC көмегімен кесу алдында DXF файлын өзгерту керектігін ескеру қажет.

Ойыншыларды ажырату үшін кейбір түймелер ақ, ал басқалары қара.

Әр ойыншының 4 батырмасы жоғары және 1 түймесі төмен. Жоғарғы 4 түйме перненің әр позициясының түсін таңдауға қызмет етеді.

Төменгі түйме растау үшін қолданылады, яғни ол түс пен позиция сәтті болғанын тиісті тексерумен пиксель матрицасында пайда болу үшін кілтті жібереді.

Барлығын жинамас бұрын біз барлық кабельдерді дәнекерледік. Сондықтан сізге көп кабель қажет болады. Бұл ойынның көлеміне байланысты болады. Біздің жағдайда бұл өте үлкен болды.

Мысалы, Ethernet кабелін пайдаланып оны ашып, ішкі кабельдерді алуға болады. Бұл жақсы шешім. Оларды мүмкіндігінше реттеуге тырысыңыз, себебі электр диаграммасында көрсетілгендей Arduino MEGA -мен байланыс орнату қажет болады.

Сіз бәрін жауынгер ретінде орнатпас бұрын, оны сынап көруіңіз керек. Бұл сынақтан өткізілген, себебі ол корпусқа орнатылған кезде, ол ыстық силиконмен жабысып қалады, ал егер ол істен шықса, оны қиындатады. Пиксель матрицаларын орналастыру үшін тордың өлшемі қақпақтың торымен бірдей етіп жасалған, онда бір жағында пиксельдер бекітілген, ал екінші жағында өсімдік қағаз.

Бұл қағаз әр пиксельдің жарығын таратады, ол әлдеқайда әдемі әсер береді. Содан кейін бұл құрылым ішіндегі жоғарғы бөлікке жабысады. Бұл біршама күрделі, бірақ ұқыптылықпен жақсы нәтижеге қол жеткізіледі.

Тамақтандыру біршама күрделі болды. Негізінде және схемаға қарап, біз тек бір зарядтағышты қолданатын болдық. Алайда, алғашқы сынақтар мен NeoPixel тұтынудан кейін біз оған екі зарядтағыш қажет болатынын көрдік.

Әр пиксель максимум 60 мА тұтына алады. Егер біз 168 пиксельге көбейтсек, шамамен 10 А тұтынылады.

Бұл ең нашар жағдайда болар еді. Бағдарламалауда біз NeoPixel қарқындылығын жоғарылатпауды ескердік.

Біз 50% -ға да жете алмаймыз, сондықтан 5В және 5А зарядтағыштары жеткілікті.

Екінші жағынан, Arduino MEGA бөлек зарядтағышқа ие, оны ұяға қосқыш арқылы немесе USB порты арқылы қосуға болады. Мүмкін болатын жақсартулардың бірі - бүкіл жүйе үшін бір зарядтағыш болуы.

4 -қадам: Ойындарды бағдарламалау

Ойын бағдарламалау
Ойын бағдарламалау
Ойын бағдарламалау
Ойын бағдарламалау

Бағдарламалау екі кітапхананың көмегімен жасалды: OneButton және Adafruit_NeoPixel.

OneButton кітапханасы батырмаларды үзіліссіз басқаруға мүмкіндік береді.

Adafruit_NeoPixel кітапханасы бізге NeoPixel жолағын өте қарапайым түрде басқаруға мүмкіндік берді.

Бағдарламалау әр түрлі күйлерге негізделген, онда бағдарламалық жасақтама келесідей болуы мүмкін:

Ойынның басталуы. Мемлекет = 0

Бұл жағдайда ойын басталады және екі ойыншыда да ойын басталатынын көрсететін шамдар тізбегі бар. Бұл күйде батырмалар жауап бермейді.

Бастапқы күй. Мемлекет = 1

Бастапқы күйде екі ойыншының бірі растау түймесін (бесінші түйме) екі рет басқанша күтіңіз. Бұл әрекет ойынды бастауға мүмкіндік береді.

Ойынға дайындық. Мемлекет = 2

Ойынға дайындық жағдайында барлық айнымалылар қалпына келтіріледі және кілт үшін кездейсоқ түстерді таңдау басталады.

Ойын күйі = 3

3 күйде ойын басталады. Әр ойыншы түймелері бар кілтті таңдайды және растау түймесін басу арқылы оны растайды. Бұл күй екі жолмен аяқталуы мүмкін: ойыншы кілтті тапқанда немесе екі ойыншы 10 әрекетті қолданғанда.

Бір жеңімпаз мемлекет = 4

Егер ойыншы ұтса, жасыл тақта оның тақтасында, жеңген комбинация мен жеңілгенге қызыл крест көрсетіледі.

Байланысты ойын. Мемлекет = 5

Дауыс тең болған жағдайда, ешбір тақтада ештеңе көрсетілмейді және екі ойыншының тақтасында да жеңімпаз комбинация көрсетілмейді.

Ойында жеңімпаз немесе тең ойыншы бар ма, келесі күй екі рет басуды күтетін бастапқы күй болады.

Сіз барлық кодты төменде таба аласыз. Жалғыз нәрсе испан тілінде:)

5 -қадам: тестілеу және жетілдіру

Ойын ойын арқылы тексеріледі. Жоғарыдағы бейнеде сіз толық ойын көре аласыз.

Осы жерден біз Arduino көмегімен Mastermind Star Wars -ке қосуға болатын бірнеше жақсартулар туралы ойлай аламыз.

Келесіде мен оларды тізімдеймін.

  • Екі ойыншы үшін барлығы 10 әрекетпен кезекпен ойнау. Ойыншы кілтті сынап көргенде, басқа ойыншы ойынды көреді.
  • Жеке ойын режимі, тек бір адам ойнай алады.
  • Әрқайсысын өз кілтімен реттеңіз.
  • OLED экранын қосыңыз.
  • Барлығы үшін бір зарядтағышты қолданыңыз.
  • NodeMCU ESP8266 қосылу

Мен көптеген адамдар көптеген жақсартуларды ойлап табатынына сенімдімін. Мен төмендегі түсініктемелерді күтемін.

Ал күш сізбен бірге болсын.

Ұсынылған: