Съдържание:

Контролер за игра на акселерометър: 8 стъпки
Контролер за игра на акселерометър: 8 стъпки

Видео: Контролер за игра на акселерометър: 8 стъпки

Видео: Контролер за игра на акселерометър: 8 стъпки
Видео: ИГРА С АКСЕЛЕРОМЕТРОМ ЗА 8 МИНУТ / КАК СДЕЛАТЬ ИГРУ С АКСЕЛЕРОМЕТРОМ В UNITY / АКСЛЕРОМЕТР В UNITY 2024, Юли
Anonim
Контролер за игра на акселерометър
Контролер за игра на акселерометър

Текст на Voorlopige…

Стъпка 1: МАТЕРИАЛ

МАТЕРИАЛ
МАТЕРИАЛ
  • Arduino Leonardo: een микроконтролер-борд als brein van onze игра контролер.
  • Кабел за микро USB: Ом онзи игрален контролер на компютъра.
  • Breadboard: zo hoeven we niet te solderen en blijft ons ontwerp makkelijk aanpasbaar.
  • Проводници за джъмпер на платка: всички компоненти, които се срещат с вас.
  • Акселерометър MPU6050: сензорът е измерен в различен формат и е сравнен с различните възможности на смартфоните, ховърбордите и балансираните роботи.
  • Twee мини бутони: om knoppen te programmeren die los staan van onze акселерометър.

Опция:

Breadboard en Arduino houder: om compact te kunnen werken

Стъпка 2: СОФТУЕР НА ARDUINO

За да стартираме програмата, трябва да започнем програмата, да я използваме, за да използваме софтуера, но да пускаме контролера на играта, като Arduino Leonardo, или най-добрите програми. Om dit te installeren, ga je als volgt te werk:

  • Преминете през volgende link на страницата за изтегляне на Arduino:
  • Потребителски софтуер на базата на операционна система.
  • Кликнете върху изтегляне.
  • Je hebt nu een (.exe) bestand dat je uitvoert door er op te dubbel clickken om de installlatie te vervolledigen.

!!! Wij hebben onze контролер, подобрен с програмата за изтегляне. Приложението за Windows версия може да се превърне в равномерно, може да се използва като версия в aanpak.

  • Отворете софтуера de Arduino.
  • Свързването е с Arduino Leonardo с микро USB кабел на компютър, с драйвери на Леонардо, обременени от автоматична система за управление (от друга страна, Arduino Aansluit).

Освен това, че няма да се обърне софтуерът на Arduino, той е контролиращ graag eens на Arduino Leonardo foutloos verbinding maakt met je компютър, а днес можете да проверите makkelijk тестен een voorbeeldprogramma:

  • Изпращане чрез Bestand> Voorbeelden> 01. Основи> Blink om een voorbeeldprogramma te openen.
  • Най -доброто от вас е Hulpmiddelen> Board> Arduino Leonardo за софтуер, който е най -латен, за да може да се използва добре дошъл тип дъска.
  • Изберете денонощна серийна врата за портиране на Hulpmiddelen> Poort> COMx (Arduino Leonardo te kiezen. Това е всичко, което можете да направите чрез USB порта, който е Arduino комуникационен.
  • Кликнете върху de linkerbovenhoek, за да го напишете символично, за да го качите.
  • Връзки beneden zie е een indicatiee die aantoont dat het programma aan het uploaden is, gevolgd door de boodschap 'uploaden voltooid' bij успешно.

!!! Als het uploaden niet lukt en een rode foutmelding geeft dan ligt dit vaak aan een fout in de code. In dit geval gebruiken we een foutloze voorbeeldcode, waardoor de fout bij de connectie tussen de Leonardo en is computer moet liggen.

Стъпка 3: БИБЛИОТЕЧНА ПАПКА

Arduino's zijn in staat om peel veel data te verwerken. Dit zorgt er voor dat er ook veel code nodig е om deze данните правилни за компилатора. Om deze code niet eindeloos lang en complex te schrijven, maken wij gebruik van Arduino Libraries, bibliotheken van code die bepaalde sensors gaan sturen en ons werk een stuk makkelijker maken. На проекта gebruik drie soortgelijke библиотеки: Wire, I2Cdev и MPU6050. Софтуерът De Arduino е запазен на базата на библиотеки в библиотеките ingebouwd, alsook onze eerste (Wire) bibliotheek, maar de twee andere dienen we zelf nog te installeren:

  • Свържете се с тази връзка и кликнете върху „Клониране или изтегляне“и изтеглете ZIP файл
  • Изтеглете ZIP файла, за да го използвате, за да разберете това.
  • В dekomen map vind е чрез i2cdevlib-master> Arduino папки 'I2Cdev' и MPU6050.
  • Копирайте картите на картата Arduino чрез C> Програмни файлове> Arduino> Библиотеки.

!!! Indien е de bij de installlatie van de software zelf een andere locatie opgegeven hebt dan, vind je de nodige mappen daar. Het is niet de bedoeling dat je zelf een map aanmaakt.

  • Служебният софтуер на Arduino е стартиран, за да се опитате да започнете да работите в библиотеките.
  • Чрез Схеми> Bibliotheek Gebruiken може да се контролира от nu ook I2Cdev и MPU6050 от vinden zijn.

Стъпка 4: АКСЕЛЕРОМЕТЪР - ДЕ ТЕОРИЯ

АКСЕЛЕРОМЕТЪР - ДЕ ТЕОРИЯ
АКСЕЛЕРОМЕТЪР - ДЕ ТЕОРИЯ

Акселерометърът е базиран на базата на хеет пиезоелектричен ефект. Stel je een kubusvormig doosje voor waar een klein balletje in zit (zoals in de bovenstaande illustratiee) waar elke wand gemaakt is uit piezoelektrische kristallen. Wanneer е de kubus kantelt verplaatst het balletje zich naargelang de zwaartekracht. Отправете се към балетната сцена на кубинския ваканционен център на пиезоелектрическата струя. De drie paar evenwijdige wanden van de kubus worden gekoppeld aan de dryimensionale X, Y en Z assen. Afhankelijk van de piezoelectrische stroom geproduceerd langs deze wanden kunnen we zo de versnelling in drie dimenzies bepalen.

Om een praktikkvoorbeeld te geven: В elke смартфон с tegenwoordig ook стандартен een акселерометър. Deze zorgt er onder andere voor dat е scherm automatisch meedraait als е смартфон кантел.

Стъпка 5: АКСЕЛЕРОМЕТЪР - DE PRAKTIJK

АКСЕЛЕРОМЕТЪР - DE PRAKTIJK
АКСЕЛЕРОМЕТЪР - DE PRAKTIJK

Ние използваме акселерометър за дескрипция в X, Y и Z, тъй като можем да го използваме, да се запознаем с софтуера Arduino. Om dit te doen ga je als volgt te werk:

Акселерометърът е показан и схемата на Arduino Leonardo се среща с компютър

!!! Акселерометърът wordt voorzien van de nodige pinnen om makkelijk op een motherboard te prikken, maar deze pinnen dienen wel nog gesoldeerd te worden. Je krijgt de optie om die haaks op is motherboard te plaatsen (bespaart plaats) of evenwijdig zoals in ons voorbeeld.

  • Изтеглете „MPU6050_intro“на софтуера de Arduino и го отворете.
  • Контролер на е boardtype en poort nog steeds juist staan.
  • Кликнете върху de linkerbovenhoek, за да го стартирате, за да го програмирате.
  • Изберете чрез Hulpmiddelen> Seriële Monitor
  • Een nieuw venster opent met 3 kolommen met getallen, dit zijn de versnellingen in de X, Y en Z assen.
  • Beweeg е акселерометър за всички версии на всички богати тестове.

Terwijl we onze versnellingsdata voor ons hebben kunnen we meteen verkennend werk doen voor onze game controller. Leg de Arduino с акселерометър, платка оп де тафел и бележка gemiddelde X en Y waarde (mag een ruwe schatting zijn). Onderneem daarna volgende stappen:

  • Акселерометър с капак 45 °, който се намира в бележката на Gemiddelde X waarde.
  • Акселерометър с капак 45 ° с връзки и бележка за gemiddelde X waarde.
  • Акселерометър, разположен на 45 °, за бележка от гемиделде Y Yarde.
  • Акселерометър, разположен на 45 °, трябва да бъде поставен на бележника с гемиделда Y.

Стъпка 6: КОНТРОЛЕР НА ИГРИ

КОНТРОЛЕР НА ИГРИ
КОНТРОЛЕР НА ИГРИ

Klaar voor het echte werk! Ние гебруикен onze акселерометър samen срещнахме twee drukknoppen om het brein van onze eigen контролер за игра те worden. Koppel de Arduino с акселерометър los en bouw het geheel opnieuw op volgens bovenstaa и схема.

!!! Де мини бутони hebben vaak een buiging in hun beentjes. Druk die plat met een punttang om ze makkelijker in je motherboard te krijgen.

  • Изтеглете „MPU6050_gamecontroller“на софтуера de Arduino и го отворете.
  • Verbind е Arduino и щракнете върху него в Linkerbovenhoek, за да го напишете в програмата за зареждане.
  • Де Ардуино Леонардо изпитва постоянна информация за компютъра. Wil is de datavoer even pauzeren, koppel dan de jump wire op pin 12 even los, en verbind die opnieuw als je verder wilt gaan.
  • Професионалист! He het nu een base controller gemaakt, test het gerust eens uit op pacman.

Geen paniek als е контролер niet metéén doet wat je had verwacht. Dat betekent gewoon dat we nog calibratie werk hebben om de controller aan te passen naar onze noden. Daarvoor duiken ние в кода на де Ардуино

Стъпка 7: КОД - ИЗПОЛЗВАНИ БИБЛИОТЕКИ

КОД - ИЗПОЛЗВАНИ БИБЛИОТЕКИ
КОД - ИЗПОЛЗВАНИ БИБЛИОТЕКИ

Het leuke aan Arduino code is dat deze snel aanpasbaar is zonder dat je daarvoor een uitgebreide programmeerkennis moet hebben. Om je op weg te helpen overlopen we kort waar je wat vindt, en wat je kan aanpassen om je controller kalibreren.

В кода на „MPU6050_gamecontroller“вижте een heleboel lichtgrijze текст. Dat е текст die geen invloed heeft op de code, maar die dient om de code wat te structureren. Ook текст die na // komt, staat los van de code en dient als verduidelijking. De eerste echte code vinden we terug onder de titel „Used Libraries“, daar herken is meteen de libraries die we in stap drie geïnstalleerd hebben.

  • #включва geeft aan dat we de "IC2dev" bibliotheek gaan gebruiken
  • const int ENABLE = 12 дни и преди да закрепим 12 съобщения като велигея. Is deze pin niet verbonden и stopt ons programma automatisch.
  • const int A_BUTTON = 6 отстъпил aan dat onze A knop aangesloten е op poort 5

!!! Де кодът при настройката е свързан с Arduino и е с компютър, който е свързан с комуникацията, в това време ние сме изправили кода на gewoon zoals ze is.

Стъпка 8: КОД: LOOP

КОД: LOOP
КОД: LOOP

От името на „Loop“можете да видите кода, който непрекъснато се изпълнява от Arduino Леонардо, който е изпълнен от компютър и пин 12 не е разрешен. Het is ook meteen het deel van de code waar we het meest kunnen aanpassen. Кодът под „бутон A“и „бутон B“е гекоппелд aan onze мини бутони може да е aanpassen врата в de code Keyboard.release ('a') enKeyboard.release ('a') twee maal de ('a') това е върха на вратата на eender welke ander клавиатура.

!!! Sommige keyboardtoetsen moet kan je niet rechtstreeks intypen maar hebben een code. Zo zoou de de „Delete“knop moet ingeven als „KEY_DELETE“of als decimale waarde „212“. Een lijst van dit soort uitzonderingen binnen arduino vind je via deze link. Wil is nog meer info dan kijk je best eens naar de ASCII tabel.

Отдясно, наляво, нагоре и надолу винд е vrij gelijkaardige код als bij de бутони, het grote verschil zit hem in het if (accx <-20000) deel van de code. Направете най -бързия акселерометър: или акселерометърът трябва да се покаже, че е kantelt en een waarde kleiner и -20000 най -малко и да се запаметява (KEY_RIGHT_ARROW) ingeduwd. Kantel е opnieuw naar links en wordt de waarde groter dan -20000 dan laat hij de rechter pijltoets opnieuw los.

Hier komen de genoteerde waarden uit stap vijf van pas. Pas de waarden aan naargelang е noties om zo jou specifieke акселерометър те калибререн. Je kan deze waarden bijstellen naargelang е eigen speelstijl.

Tenslotte vinden we helemaal onderaan de code delay (50). Кодът на връзката е завършен с клавиатурата на компютъра и е свързан с компютърната врата. Merkje dat е контролер te veel commando's doorgeeft dan verhoog е dit getal met enkele tientallen. Reageert alles te traag dan verklein е het getal wat.

Пробната грешка е de boodschap!

Препоръчано: