İçindekiler:

Unity, BT Arduino, Ultrasonik Sensör Kullanarak Jump Oyunu Çalıştırın: 14 Adım
Unity, BT Arduino, Ultrasonik Sensör Kullanarak Jump Oyunu Çalıştırın: 14 Adım

Video: Unity, BT Arduino, Ultrasonik Sensör Kullanarak Jump Oyunu Çalıştırın: 14 Adım

Video: Unity, BT Arduino, Ultrasonik Sensör Kullanarak Jump Oyunu Çalıştırın: 14 Adım
Video: Amazing arduino project 2024, Aralık
Anonim
Image
Image
Unity, BT Arduino, Ultrasonik Sensör Kullanarak Jump Oyunu Çalıştırın
Unity, BT Arduino, Ultrasonik Sensör Kullanarak Jump Oyunu Çalıştırın
Unity, BT Arduino, Ultrasonik Sensör Kullanarak Jump Oyunu Çalıştırın
Unity, BT Arduino, Ultrasonik Sensör Kullanarak Jump Oyunu Çalıştırın

Unity Multiplayer 3D Hologram Game and Hologram Projector for PC'nin birlik projemin başarısından sonra, bu birlik içindeki ikinci proje. Bu yüzden oyunun başından sonuna kadar tüm projeyi tamamlamak için çalışmak çok zaman alır. Çalıştırma ve atlama kesintisi için iki Ultrasonik sensör için proje planına başladığımda. Ancak kodlama yaparken projeyi tamamlamak için sadece bir sensörün yeterli olduğunu buldum. İşte bu projede bluetooth kullanarak Arduino ve Unity arasındaki iletişimi tamamen ele aldım. Oyun kurarken çok fazla deneme yanılma ve düzeltme yüzünden oyun geliştirmeyi derleyemiyorum. Ancak projede iletişim sorununu ve düzeltme adımlarını detaylandırdı. Oyunu Zip dosyası olarak da ekledim. Projeye Geçelim.

Adım 1: Devre

Devre
Devre

1) Ultrasonik sensör ve Bluetooth modülü Vcc ve Gnd'yi arduino'nun 5V ve Gnd'sine bağlayın.

2) Arduino'nun Tx'ini Bluetooth modülünün Rx'ine bağlayın.

3) D7 pimini Ultrasonik sensörün Tetikleyicisine ve D8'i Yankı Pimi'ne bağlayın.

4) 9V pili Arduino'nun Vin ve Gnd'sine bağlayın.

Adım 2: Gerekli Malzemeler

Gerekli malzemeler
Gerekli malzemeler
Gerekli malzemeler
Gerekli malzemeler

Bu proje çok daha az malzemeye ihtiyaç duyar ancak Unity Programı için uzun zaman alır.

Gerekli malzemeler

1) Arduino Uno - 1Hayır

2) Ultrasonik Sensör HC-SR04 - 1Hayır

3) Bluetooth Modülü HC-05. - 1Hayır

4) 12V DC Adaptör veya 9V Pil (Taşınabilir hale getirmek için 9V pil kullanıyorum).

5) Düz PCB kartı.

Yazılım Gerekli

1) Birlik.

2) Arduino IDE'si.

Adım 3: Kalkan Yapmak

Kalkan Yapmak
Kalkan Yapmak
Kalkan Yapmak
Kalkan Yapmak
Kalkan Yapmak
Kalkan Yapmak
Kalkan Yapmak
Kalkan Yapmak

1) Tüm projelerim gibi proje için bir kalkan yapıyorum. Özellikle taşınabilir şeylerle uğraşırken breadboard gerilimi kullanırsanız, bu yüzden tüm projelerim için her zaman kalkan yaparım.

2) Taşınabilir hale getirmek istiyorum. Bu yüzden boşluğu doldurmak için bluetooth modülünü arduino'nun güç kaynağı ve usb portu arasına yerleştiriyorum.

3) Kalkan yapmak için erkek ve Dişi konektörü kullanın. Pil bağlantısı için Vin ve Gnd'ye bir pil konektörü lehimleyin.

Adım 4: Arduino Kodu

Arduino Kodu
Arduino Kodu

PC veya mobil ile bağlanıyorsanız, kodu azaltarak arduino'nun işini her zaman azaltırım. Bu yüzden arduino kodunda sadece ultrasonik mesafeyi alıyorum ve mesafeyi başlangıç karakteri olarak & ve bitiş karakteri olarak $ ile seri tx üzerinden gönderiyorum.

Adım 5: Sonucu Seri Monitörde Görüntüleyin

Sonucu Seri Monitörde Görüntüleme
Sonucu Seri Monitörde Görüntüleme
Sonucu Seri Monitörde Görüntüleme
Sonucu Seri Monitörde Görüntüleme
Sonucu Seri Monitörde Görüntüleme
Sonucu Seri Monitörde Görüntüleme
Sonucu Seri Monitörde Görüntüleme
Sonucu Seri Monitörde Görüntüleme

Arduino IDE'deki Bluetooth seri portunu açarak arduino tarafından gönderilen verileri seri monitörde görüntüleyebilirsiniz.

Adım 6: Unity Arduino İletişim Kontrolü

Unity Arduino İletişim Kontrolü
Unity Arduino İletişim Kontrolü
Unity Arduino İletişim Kontrolü
Unity Arduino İletişim Kontrolü
Unity Arduino İletişim Kontrolü
Unity Arduino İletişim Kontrolü
Unity Arduino İletişim Kontrolü
Unity Arduino İletişim Kontrolü

Görüntü kendini açıklayıcıdır. Her adım için aşağıda ayrıntılı olarak listelediğim adımların bazıları yapmak istiyorum.

1) Unity'yi açın ve 2B yeni bir proje Seri Kontrolü başlatın.

2) Bir ana kamera ile Unity Open.

3) Oyun Nesnesi -> 3B Nesne -> TextMeshPro - Metin'e tıklayın.

4) Sahnenin ortasına yerleştirin.

5) Projede Oluştur'a tıklayın ve açılır menüden "C# Script"e tıklayın.

6) Yeni komut dosyası için Adı Comtest olarak değiştirin.

7) Komut dosyasını görsel stüdyoda açmak için çift tıklayın.

8) System. IO. Ports İçe Aktarırken Hata Bulundu.

9) Birliğe gidin Dosya'yı tıklayın. Yapı Ayarları'nı tıklayın.

10) Oynatıcı Ayarları'na tıklayın ve oynatıcı Ayarlarının sonunda Api Uyumlu seviyesini buldunuz.

11). Net 2.0 Alt Kümesini. Net2.0 olarak değiştirin. Şimdi Unity'yi kaydedin.

12) Visual Studio'ya gidin ve içe aktarmanın tamam olduğunu bulun.

13) Şimdi birlik ve Arduino arasında bağlantı kurmak için Seri bağlantı noktasını kullanın. Değer gönderimini, başlangıç ve bitiş karakterini referans olarak kullanarak dize işlevini kullanarak filtreleyin.

14) Script'i daha önce oluşturduğumuz TexttMeshPro'ya sürükleyin.

15) Şimdi Unity programını çalıştırın ve arduino tarafından gönderilen verilerin TexttMeshPro'da gösterildiğini buldunuz.

7. Adım: Donanım Hazır

Donanıma Hazır
Donanıma Hazır
Donanıma Hazır
Donanıma Hazır
Donanıma Hazır
Donanıma Hazır
Donanıma Hazır
Donanıma Hazır

1) Pil tutucuyu sıcak tutkal tabancası kullanarak kalkanın ortasına yapıştırın.

2) Şimdi Teneke Pil takılıysa, onu bir stand olarak kullanın ve sensörü ayağa kaldırın.

3) Dinozor gibi görünüyor (3d yazıcınız varsa dinozor gibi muhafaza edin).

Artık Donanım Kurulumu hazırdır.

Adım 8: Unity Arduino İletişim Videosu

Image
Image

Yukarıdaki videoda arduino'nun birlik içinde aldığı veri kumunu görebilirsiniz.

Adım 9: Unity'de Oyun Geliştirin

Unity'de Oyun Geliştirin
Unity'de Oyun Geliştirin
Unity'de Oyun Geliştirin
Unity'de Oyun Geliştirin

Oyunu geliştirmek için youtube'dan öğretici kullanıyorum. Birlikten ücretsiz varlıkları indiriyorum. Ayrıntılı oyun geliştirme için başka bir talimat hazırlıyorum. Yine de daha zayıfım, bu yüzden şimdi açıklayamam.

COM Bağlantı Noktası Ayarları

Dikkate almak istediğimiz ana şey, com bağlantı noktası adı Com9 Unity'nin bağlanamadığından daha fazla gittiğinde Com bağlantı noktası adıdır. Bunun için doğrudan verildiğinde "\\.\Com10" adını vermek istiyoruz. O zaman sadece düşer.

Tek Ultrasonik kullanarak Nasıl Zıpla ve Koş

Kullanacağım ultrasonikin minimum ve maksimum aralığını veriyorum. Hesaplamayı kullanarak bunu aralıktan ekran uzunluğuna kadar yapın. Burada bu programda minimum aralık olarak 0 ve maksimum aralık olarak 85 kullanıyorum. Ancak kesinti yoksa mesafe 100'den fazladır. Yani kavramı kullanarak. 100'den fazla aralık alınırsa ve hemen alınan Aralık içindeyse, program bunu atlama olarak alır.

Adım 10: Unity'de Oyun Kontrolü Videosu

Image
Image

Unity'den Oyunu Çalıştırın ve Bluetooth Arduino ve Ultrasonic ile kontrol edin.

Adım 11: Oyun

İşte Zip Dosyasındaki Oyun. Dosyayı İndirin Unzip edin ve Runjump.exe'ye tıklayın ve Oyun çalışıyor. Oyuna başlamadan önce, Com portunu ve oyun mesafesini yapılandırmak için bir sonraki adıma bakın.

Adım 12: Yapılandırma Dosyası Yapılandırması

Oyun oynamak
Oyun oynamak

Config.txt dosyasını indirin ve Yerel bilgisayarın C: dizinine yapıştırın. Dosyayı açın ve 3 satır buldunuz.

Satır 1 - Bluetooth comport, com port 9'dan büyükse yalnızca birlik tarafından kullanılabilen comport adından önce \.\ kullanarak.

Hat 2 - Ultrasonik sensöre yaklaşabildiğimiz minimum mesafe.

Hat 3 - Sensörden maksimum uzaklık.

Adım 13: Oyun Oyna

Oyun oynamak
Oyun oynamak
Oyun oynamak
Oyun oynamak
Oyun oynamak
Oyun oynamak

Pili arduinoya bağlayın ve yere koyun. Hareketi düz yapmak için yer karosu çizgisini kullanıyorum. Şimdi Runjump.exe'yi çalıştırın ve oyunun yüklenmesini bekleyin. Oyuna başlamak için Boşluk çubuğuna tıklayın, oyunu oynamak için koşun ve zıplayın. Daha fazla para toplayın ve 10 canın tamamı gitmeden önce kesme tertibatından kaçın.

Adım 14: TV'de Görün ve Oynatın

Laptop'u HDMI kablosu ile TV'ye bağlayın ve Pili devreye bağlayın ve zemindeki fayans çizgisine yerleştirin ve TV'nin oyunu oynamasını görün. Çocuklar çok sever. Temayı çiçekler, çikolatalar gibi isteğinize göre değiştirin. Artık çocuklar bu çok düşük maliyetli eller serbest aletle oynamanın keyfini çıkarıyor.

Bu benim birliği kullanan ikinci projem. Birlik içinde çalışmak çok eğlenceli. Ancak bu projeyi tamamlamak uzun zaman alıyor. Daha fazla proje gelecek.

Önerilen: