Съдържание:
- Стъпка 1: Съберете компоненти и инструменти
- Стъпка 2: Направете решетката
- Стъпка 3: Направете джойстика
- Стъпка 4: Напишете кода
- Стъпка 5: Играйте с приятелите си
Видео: 3D4x игра: 3D 4x4x4 Tic-Tac-Toe: 5 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
Уморихте ли се да играете на един и същ, стар, скучен, двуизмерен тик-така? Е, имаме решение за вас! Тик-так-пръст в три измерения !!! За 2 играчи, в този куб 4х4х4, вземете 4 светодиода подред (във всяка посока) и печелите! Ти го направи. Вие го играйте.
Стъпка 1: Съберете компоненти и инструменти
Най-важният компонент на този 3D Tic-Tac-Toe е светодиодът. Избрахме PL9823, който вече има вграден контролер вътре. Той има четири пина (вход за данни, захранване с напрежение, заземяване, изход за данни) и ви позволява лесно да адресирате и контролирате цвета на светодиода. Структурата на мрежата може да бъде изградена по много различни начини, но за нас това беше най -евтиният, здрав и най -естетичен вариант.
Списък на компонентите:
- Arduino (използвахме Uno)
- PL9823 светодиоди (най -малко 64)
- Дървени пръчки за шиш (дълги 24 см)
- Окабеляване (използвахме вътрешностите на стар Ethernet кабел)
- Бутони (моментно състояние)
- 7 резистора (220Ohm)
- Платки (1 за бутони и игра, 1 за лесно свързване на панел към Arduino)
- Пяна от полистирол (~ 2x30x30cm за направата на панелите)
- Пенополистиролен блок (~ 7x25x25cm като основа за цялата решетка)
Списък с инструменти:
- Поялник
- Калай за запояване
- Лепило
- Линейка с линийка
- Клещи
- Машини за сваляне на тел
- Резачки за тел
- Ножици
- Маркер
- Химилка
- Пинсети
Стъпка 2: Направете решетката
Ние правим 4 панела от 4x4 светодиоди поотделно.
- 00: Вземете стиропор, за да направите оформлението на панела. Начертайте шаблона. В този случай използвахме 6 см разстояние между светодиодите с 2 см по краищата.
- 01: Поставете LED щифтовете в стиропора. Важно! Уверете се, че сте поставили всички светодиоди с една и съща ориентация. В нашия случай избрахме изходния щифт да е вляво.
- 02: Сега поставете дървените пръчки за шиш от двете страни на светодиодите в редици, като се уверите, че всички точки са обърнати в една и съща посока. Залепете пръчката към страните на LED крушките и оставете да изсъхне.
- 03: Направете същото за колоните от дървени пръчки за шиш от двете страни на светодиодите, като се уверите, че всички точки са обърнати в една и съща посока. Залепете и оставете да изсъхне.
- 04: Внимателно отстранете, като разхлабите светодиодите наоколо. Повдигнете панела и го обърнете. Залепете задната страна, така че да е по -сигурна.
- 05: След като всичко изсъхне, огънете щифтовете, за да улесните запояването и да предотвратите пресичането на електрически линии. Използваме пинсета и огъваме щифта от близо до основата.
- 06: Сега подгответе проводниците. Използвахме стар Ethernet кабел, който има проводници с 4 усукани двойки. Премахнете изолацията, като внимавате да не отрежете малките проводници. След това развъртете, изберете цветовете си, за да съответстват на различните линии, и изрежете до правилната дължина между светодиодите. След това отстранете малко изолация от краищата. Избрахме земята = зелено, Vdc = синьо, данните в/изход = бяло.
- 07: Спойка! Има много връзки (64x4), така че внимавайте да запоявате правилно.
- 08: Свалете панела и го поставете върху основата от пяна!
Стъпка 3: Направете джойстика
Използвахме макет, за да направим джойстика за навигация в мрежата и избор. Поставихме джъмпери, резистори и бутони, за да образуваме веригата (вижте диаграмата), която определя контролера на посоката (6 бутона, 1 за всяка посока) и бутона за избор (влиза в хода на играча). 5V и земята са свързани към съответните портове на Arduino. За аналоговите и цифровите входни щифтове избрахме съответно портовете Arduino A5 и 2.
Бутонът за избор има основна схема с резистор против сгъстяване. Командата за посока се основава на резисторна стълба, която работи като верига на делителя на напрежение: напрежението към аналоговия вход зависи от натиснатия бутон и се интерпретира от Arduino като една командна посока.
Стъпка 4: Напишете кода
Качихме нашия код, за да го използвате:) Първо направете електрическите връзки към Arduino. Поставихме мини дъска до Arduino, за да стане малко по -лесно. Свързахме Arduino "GND" и "5V" към 2 линии на хлебния хляб, където след това включихме съответното заземяване и Vdc от всеки панел. За Data-In и Data-Out избрахме 4 различни щифта Arduino, 13, 10, 7 и 4 за всеки от панелите. Светодиодите PL9823 могат да бъдат адресирани индивидуално чрез последователния номер на светодиода. Например, ако искате да включите първия светодиод в определен цвят, адресирайте светодиода [0]. За 16 -ти светодиод, адрес LED [15]. Сега сте готови да кодирате и да играете с красивите светлини! По-долу е дадено общо обяснение на кода на 3D играта с кърлежи.
Кодът на играта 3D4x
Ние използваме библиотеката fastled.h, която ни позволява да управляваме микроконтролираните светодиоди.
Кубът се запаметява виртуално в триизмерния масив „TTTMap“, където всеки елемент може да бъде в 1 от 5 състояния според съответната светлина е собственост на: 0 = без играч, 1 = играч 1, 2 = играч 2, 3 = играч 1 в печеливша комбинация и 3 = играч 2 в печеливша комбинация. За да се съпоставят елементите на виртуалния куб в TTTMap с реалните светодиоди, се използват целочислените масиви LEDMap0, LEDMap1, LEDMap2, LEDMap3.
Функцията „настройка“инициализира портовете Arduino, свързани към панела, инициализира всички светодиоди на „черни“и инициализира елементите на масива TTTMap на 0.
Функцията „цикъл“изпълнява функциите „ReadButtonInput ()“, „SendLED ()“и, в случай че един играч спечели, функцията „VictoryAnimation ()“. Първата функция чете аналоговия вход на командата за посока и цифровия вход на бутона за избор. Булевите променливи “ButtonPushed” и “SelectPushed” се използват, за да се избегне повтарянето на движението със скорост на цикъла, когато бутонът е задържан. Функцията “SendLED ()” обновява състоянията на светодиодите, като изпраща сериен контролен сигнал според данните в TTTMap. Основна функция е „CheckVictory ()“, която се извиква от „ReadButtonInput ()“всеки път, когато бутонът за избор е натиснат. Тази функция проверява дали избраната точка в пространството прави печеливша комбинация с околните щифтове. В случай на печеливша комбинация, точките в TTTMap се подписват с номер 3 или 4, според играча, който печели, и вълнуващото „VictoryAnimation ()“тече!
За да играете отново, просто натиснете бутона за нулиране на Arduino:)
Стъпка 5: Играйте с приятелите си
Тук не са необходими обяснения … НАСЛАДВАЙТЕ се!
Препоръчано:
BBC Micro: bit and Scratch - интерактивен волан и игра за шофиране: 5 стъпки (със снимки)
BBC Micro: bit and Scratch - Интерактивен волан и игра за шофиране: Едно от заданията ми в класа тази седмица е да използвам BBC Micro: bit за взаимодействие с програма Scratch, която сме написали. Мислех, че това е идеалната възможност да използвам ThreadBoard за създаване на вградена система! Моето вдъхновение за нулата
3D игра Лабиринт с помощта на Arduino: 8 стъпки (със снимки)
3D игра Maze с помощта на Arduino: Здравейте приятели, така че днес ще направим игра с лабиринт, използвайки ARDUINO UNO. Тъй като Arduino Uno е най -използваната дъска, много е готино да се правят игри с нея. В тази инструкция позволява да направите играта лабиринт, която се контролира с джойстици. Не забравяйте
Саймън игра - забавна игра !: 5 стъпки
Simon Game - Fun Game !: Справка: Тук След дългия уикенд трябва наистина да се постараете да изпълните всички задачи и работа, за която отговаряте. Време е да тренираме мозъка си, нали? Освен тези скучни и безсмислени игри, има и игра, наречена Simon Game
Aruduino LED игра Бързо щракване Игра за двама играчи: 8 стъпки
Aruduino LED игра Бързо щракване на игра за двама играчи: Този проект е вдъхновен от @HassonAlkeim. Ако искате да разгледате задълбочено, ето линк, който можете да проверите https://www.instructables.com/id/Arduino-Two-Player-Fast-Button-Clicking-Game/. Тази игра е подобрена версия на Alkeim's. Това е
Игра Лабиринт за управление със смартфон: 5 стъпки (със снимки)
Игра за лабиринт за управление със смартфон: Игра за лабиринт за управление със смарт телефон. Лабиринтът се движи според наклона на смартфона. Първо, моля, вижте видеото. Изображение за движение1. Raspberry Pi е сървър на Websocket. Смартфонът е клиент на Websocket. Смартфонът изпраща