Spisu treści:
- Krok 1: Montaż mechaniczny
- Krok 2: Zaprojektuj swoją grę
- Krok 3: Kodowanie
- Krok 4: Cięcie
- Krok 5: Montaż kontrolera
- Krok 6: Podłącz i graj
Wideo: Tylt: 6 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:28
Opis projektu:Tworzenie kontrolera opartego na ruchu, który może przesyłać dane tam iz powrotem z płyty arduino do silnika projektowania gier Unity 5. W tym przypadku używamy akcelerometru z trzema osiami (Adxl345) do kontrolowania pozycji X i Y obiektów gry wewnątrz silnika Unity. Zarówno akcelerometr, jak i arduino są zmontowane w prostokątnym pudełku, tworząc wygodny, przyjazny dla użytkownika kontroler.
Materiały:
Akcelerometr
Klej samoprzylepny
Arduino BoardPodstawowe umiejętności lutowania
BreadboardLaser Cutter (piła taśmowa też by działała, ale nie tak dokładna)
Pleksi (lub dowolny inny materiał, z którego chcesz zmontować arduino i akcelerometr)Kabel USB 1.1
Przewody
Krok 1: Montaż mechaniczny
Najpierw zatop swoje szpilki w akceleratorze. W tym przykładzie wszystkie piny są przylutowane, ale jedyne potrzebne piny to: port VIN, port Grnd, port SDA i port SCL. Umieść akcelerometr na płytce stykowej tak, aby wszystkie szpilki znajdowały się w różnych rzędach, ale w tej samej kolumnie. Następnie podłącz cztery przewody z arduino do akceleratora. Jeden przewód powinien płynąć z portu 5V na arduino do portu VIN na akcelerometrze. Oba porty masy na arduino i akcelerometr również powinny być połączone. Porty SDA i SCL na arduino powinny być również połączone (i dopasowane) do portów SDA i SCL na akcelerometrze. Sprawdź tył swojego arduino, aby dowiedzieć się, które z jego portów to SDA i SCL. Nie martw się o podłączenie zasilacza, cała moc będzie podawana do arduino przez kabel USB 1.1.
Krok 2: Zaprojektuj swoją grę
Jest to prawdopodobnie najważniejsza część gry i zdecydowanie zaleca się, aby czuć się komfortowo z jednością w tym projekcie. Naprawdę możesz stworzyć dowolny rodzaj gry, który chcesz, zdecydowaliśmy się stworzyć grę w stylu kuli i labiryntu. Podczas tworzenia gry upewnij się, że wszystkie obiekty, które mają być kontrolowane, są dziećmi większego obiektu gry.
Krok 3: Kodowanie
To chyba najtrudniejsza część projektu. Pierwszą rzeczą, którą będziesz chciał zrobić, to pobrać bibliotekę kodu dla akcelerometru ADXL345 w Arduino IDE. Można go znaleźć na stronie adafruit. Po przesłaniu do arduino wyrzuci on mnóstwo danych na monitor szeregowy. Naprawdę idealnie byłoby pobrać dane pozycyjne XYZ i wysłać je bezpośrednio do projektu unity, ale wysyłanie pływaków nie jest tak proste, jak się wydaje. Wysyłając dane, unity zawsze odczyta je jako ciąg, co okazuje się trudne w obsłudze. Aby obejść ten problem, możemy zrobić serię instrukcji if dla arduino. na przykład:
if(zdarzenie.przyspieszenie.y >3){
Serial.println("prawo");
}
Będziemy chcieli zrobić te rodzaje porównań dla ośmiu różnych kierunków: góra, dół, lewo, prawo, góra-prawo, góra-lewo, dół-prawo i dół-lewo.
Wysyłając te ciągi wskazówek, faktycznie możemy ich użyć! W Unity, na naszym kontrolerze gracza (który powinien być dołączony do obiektu lub grupy obiektów, którymi chcesz sterować) będziemy chcieli użyć instrukcji if, która wykorzysta ciąg czytany w:
if(serial. ReadLine() == "po lewej"){
Debug. Log("po lewej");
transform. Rotate((-Time.deltaTime * 50), 0, 0);
}
I znowu, będziemy chcieli to zrobić we wszystkich ośmiu kierunkach.
Teraz najtrudniejszą częścią jest umożliwienie przesyłania danych do jedności. W tym samym skrypcie chcemy zezwolić na bibliotekę Serial: using System. IO. Ports
Następnie będziemy chcieli utworzyć nową instancję portu szeregowego:
SerialPort serial = nowy SerialPort("COM5", 9600);
**Uwaga, aby sprawdzić, z którego COM korzysta twoje arduino, możesz to zrobić w Arduino IDE, ale najczęściej są to COM3 i COM5.**
Wewnątrz naszej funkcji startowej chcemy teraz otworzyć port szeregowy:
if(!serial. IsOpen){
serial. Otwórz();
serial. Czas odczytu = 10;
}
Po tym wszystkim spróbuj przetestować transfer danych, a powinieneś zobaczyć, że działa!
Krok 4: Cięcie
Teraz, gdy masz już zakodowaną grę, a arduino komunikuje się z Unity 5, projekt jest w zasadzie zakończony. Jednak chcesz złożyć go w przyjazny dla użytkownika, atrakcyjny kontroler, z którego mogą korzystać wszyscy Twoi znajomi! Aby utworzyć ten kontroler, możesz użyć dowolnego materiału, który chcesz, po prostu upewnij się, że nie wyrzuca on twoich współrzędnych w twoim akceleratorze, być może będziesz musiał wrócić i odpowiednio dostosować swój kod. Pamiętaj też, aby pozostawić otwarty port USB 1.1, aby podłączyć kontroler do komputera. W tym przykładzie użyliśmy pleksi. Najpierw będziesz musiał zmierzyć wymiary każdego kawałka, aby dopasować go do swoich potrzeb. Ponownie, pamiętaj, aby wziąć pod uwagę otwarcie portu USB 1.1. Następnie za pomocą wycinarki laserowej wytnij wszystkie kawałki na skrzynkę sterownika. Pleksi można również ciąć piłą taśmową, ale wycinarka laserowa jest dokładniejsza. Dodatkowo przy pomocy piły taśmowej wycięliśmy mały kawałek drewna o takich samych wymiarach jak arduino. Chociaż nie jest to konieczne, jest zalecane na etapie montażu.
Krok 5: Montaż kontrolera
(Jeśli nie wyciąłeś kawałka drewna zgodnie z zaleceniami w poprzednim kroku, pomiń tę pierwszą instrukcję) Weź kawałek drewna i umieść na nim płytę arduino. Następnie przykręć deskę do drewna, upewniając się, że jest stabilnie na swoim miejscu. Następnie przyklej drewno do dolnej części pleksi. Jeśli pominiesz drewno, możesz przykręcić deskę bezpośrednio do pleksi, choć może to ją uszkodzić lub stać się niewygodne, jeśli nie będzie wystarczająco gruba dla wkrętu. Następnie usuń naklejkę samoprzylepną z tyłu płytki stykowej, a następnie umieść ją blisko i przytulnie obok arduino. Następnie przyklej pozostałe elementy pudełka, aby utworzyć kontroler, ponownie upewnij się, że port USB 1.1 jest nadal dostępny.
Krok 6: Podłącz i graj
Jesteś skończony! Podłącz swój słodki kontroler do komputera za pomocą kabla USB 1.1 i przetestuj swoją grę!
Zalecana:
Licznik kroków - Micro:Bit: 12 kroków (ze zdjęciami)
Licznik kroków - Micro:Bit: Ten projekt będzie licznikiem kroków. Do pomiaru kroków użyjemy czujnika przyspieszenia wbudowanego w Micro:Bit. Za każdym razem, gdy Micro:Bit się trzęsie, dodamy 2 do licznika i wyświetlimy go na ekranie
Lewitacja akustyczna z Arduino Uno krok po kroku (8 kroków): 8 kroków
Lewitacja akustyczna z Arduino Uno Krok po kroku (8-kroków): ultradźwiękowe przetworniki dźwięku Zasilacz żeński L298N Dc z męskim pinem dc Arduino UNOBreadboardJak to działa: Najpierw wgrywasz kod do Arduino Uno (jest to mikrokontroler wyposażony w cyfrowy oraz porty analogowe do konwersji kodu (C++)
Jak używać silnika krokowego jako enkodera obrotowego i wyświetlacza OLED dla kroków: 6 kroków
Jak używać silnika krokowego jako enkodera obrotowego i wyświetlacza OLED dla kroków: W tym samouczku dowiemy się, jak śledzić kroki silnika krokowego na wyświetlaczu OLED. Obejrzyj film demonstracyjny.Kredyt samouczka oryginalnego trafia do użytkownika YouTube „sky4fly”
Bolt - DIY Wireless Charging Night Clock (6 kroków): 6 kroków (ze zdjęciami)
Bolt - DIY Wireless Charging Night Clock (6 kroków): Ładowanie indukcyjne (znane również jako ładowanie bezprzewodowe lub ładowanie bezprzewodowe) to rodzaj bezprzewodowego przesyłania energii. Wykorzystuje indukcję elektromagnetyczną do dostarczania energii elektrycznej do urządzeń przenośnych. Najpopularniejszym zastosowaniem jest stacja ładowania bezprzewodowego Qi
Jak zdemontować komputer za pomocą prostych kroków i zdjęć: 13 kroków (ze zdjęciami)
Jak zdemontować komputer za pomocą prostych kroków i zdjęć: To jest instrukcja demontażu komputera. Większość podstawowych komponentów ma budowę modułową i jest łatwa do usunięcia. Jednak ważne jest, abyś był w tym zorganizowany. Pomoże to uchronić Cię przed utratą części, a także ułatwi ponowny montaż