İçindekiler:
- Adım 1: Mekanik Montaj
- 2. Adım: Oyununuzu Tasarlayın
- Adım 3: Kodlama
- Adım 4: Kesme
- Adım 5: Denetleyici Montajı
- 6. Adım: Tak ve Çalıştır
Video: Eğim: 6 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Proje Açıklaması:Arduino panosundan Unity 5 oyun tasarım motoruna verileri ileri geri iletebilen hareket tabanlı bir denetleyici oluşturma. Bu durumda, Unity motoru içindeki oyun nesnelerinin X ve Y konumlarını kontrol etmek için üç eksenli bir ivmeölçer (Adxl345) kullanıyoruz. Hem ivmeölçer hem de arduino, rahat, kullanıcı dostu bir kontrolör oluşturmak için dikdörtgen bir kutuya monte edilmiştir.
Malzemeler:
ivmeölçer
Yapıştırıcı Tutkal
Arduino BoardTemel Lehimleme becerileri
BreadboardLaser Cutter (Şerit testere de işe yarar, ancak o kadar hassas değil)
Pleksiglas (Veya arduino ve ivmeölçeri birleştirmek istediğiniz diğer malzemeler) USB 1.1 kablosu
teller
Adım 1: Mekanik Montaj
İlk önce pimlerinizi hızlandırıcıya sokun. Bu örnekte, tüm pinler lehimlenmiştir, ancak gerekli pinler sadece VIN portu, Grnd Port, SDA portu ve SCL portudur. İvmeölçeri, tüm pimler farklı sıralarda ancak aynı sütunda olacak şekilde devre tahtasına yerleştirin. Ardından, arduinodan gelen dört kabloyu hızlandırıcıya bağlayın. Arduino'daki 5V bağlantı noktasından ivmeölçer üzerindeki VIN bağlantı noktasına bir kablo gitmelidir. Arduino ve ivmeölçer üzerindeki her iki yer bağlantı noktası da bağlanmalıdır. Arduino üzerindeki SDA ve SCL portları da ivmeölçer üzerindeki SDA ve SCL portlarına bağlanmalıdır (ve eşleştirilmelidir). Hangi bağlantı noktalarının SDA ve SCL olduğunu öğrenmek için arduino'nuzun arkasını kontrol edin. Bir güç kaynağı bağlama konusunda endişelenmeyin, tüm güç USB 1.1 kablosu aracılığıyla arduinoya beslenecektir.
2. Adım: Oyununuzu Tasarlayın
Bu muhtemelen oyunun en önemli kısmıdır ve bu proje için birlik konusunda rahat olmanız şiddetle tavsiye edilir. Gerçekten istediğiniz her türlü oyunu yapabilirsiniz, biz top ve labirent tarzı bir oyun yapmaya karar verdik. Oyunu yaparken kontrol edilmesi gereken tüm nesneleri daha büyük bir oyun nesnesinin çocukları yaptığınızdan emin olun.
Adım 3: Kodlama
Bu muhtemelen projenin en zor kısmıdır. Yapmak isteyeceğiniz ilk şey, Arduino IDE'deki ADXL345 ivmeölçer için kod kitaplığını indirmek. Adafruit web sitesinde bulunabilir. Arduino'ya yüklendikten sonra, seri monitöre bir sürü veri tükürecektir. Gerçekten, burada ideal olan, XYZ konum verilerini alıp doğrudan birlik projesine göndermektir, ancak kayan nokta göndermek göründüğü kadar basit değildir. Verileri gönderirken, birlik onu her zaman bir dizge olarak okuyacaktır, bu da çalışmanın zor olduğunu kanıtlamaktadır. Bu sorunu çözmek için arduino için bir dizi if deyimi yapabiliriz. Örneğin:
if(event.acceleration.y >3){
Serial.println("sağ");
}
Sekiz farklı yön için bu tür karşılaştırmalar yapmak isteyeceğiz: Yukarı, Aşağı, Sol, Sağ, Yukarı-Sağ, Yukarı-Sol, Aşağı-Sağ ve Aşağı-Sol.
Bu talimat dizilerini göndererek, onları gerçekten kullanabiliriz! Unity'de, oynatıcı denetleyicimizde (kontrol etmek istediğiniz nesneye veya nesne grubuna eklenmelidir) Okunan dizeyi kullanacak bir if ifadesi kullanmak isteyeceğiz:
if(serial. ReadLine() == "sol"){
Debug. Log("sol");
transform. Rotate((-Time.deltaTime * 50), 0, 0);
}
Ve yine, bunu sekiz yön için de yapmak isteyeceğiz.
Şimdi, en zor kısım, verilerin birliğe gönderilmesine gerçekten izin vermektir. Aynı komut dosyasında, Seri kitaplığına izin vermek isteyeceğiz: System. IO. Ports kullanarak
Ardından, yeni bir seri port örneği oluşturmak isteyeceğiz:
SerialPort seri = yeni SeriPort("COM5", 9600);
**Arduino'nuzun hangi COM'u kullandığını kontrol etmek için not edin, bunu Arduino IDE'de yapabilirsiniz, ancak en yaygın olanları COM3 ve COM5'tir.**
Başlatma fonksiyonumuzun içinde şimdi seri portu açmak istiyoruz:
if(!serial. IsOpen){
seri. Open();
seri. ReadTimeout = 10;
}
Tüm bunlardan sonra, veri aktarımını test etmeyi deneyin ve çalıştığını görmelisiniz!
Adım 4: Kesme
Artık oyununuzu kodladığınıza ve arduino'nuz Unity 5 ile iletişim kurduğuna göre, proje aslında bitti. Ancak, tüm arkadaşlarınızın kullanması için onu kullanıcı dostu, çekici bir kontrol cihazında bir araya getirmek istiyorsunuz! Bu denetleyiciyi oluşturmak için istediğiniz herhangi bir malzemeyi kullanabilirsiniz, hızlandırıcınızdaki koordinatlarınızı atmadığından emin olun, geri dönüp kodunuzu buna göre ayarlamanız gerekebilir. Ayrıca kontrol cihazınızı bilgisayarınıza bağlamak için USB 1.1 portunuzu açık bıraktığınızdan emin olun. Bu örnekte pleksiglas kullandık. Öncelikle, ihtiyaçlarınıza göre her parçanın boyutlarını ölçmeniz gerekecek. Yine USB 1.1 port açılması için mutlaka bir hesap alın. Ardından, bir lazer kesici kullanarak kontrol kutusu için tüm parçaları kesin. Pleksiglası şerit testere ile de kesebilirsiniz, ancak lazer kesici daha doğrudur. Ek olarak, arduino ile aynı boyutta olan küçük bir tahta parçasını kesmek için şerit testere kullandık. Bu gerekli olmasa da, montaj adımı için tavsiye edilir.
Adım 5: Denetleyici Montajı
(Önceki adımda önerildiği gibi tahta parçasını kesmediyseniz, bu ilk talimatı atlayın) Tahta parçanızı alın ve arduino tahtasını üstüne yerleştirin. Ardından tahtanızı ahşaba vidalayın ve yerine tam oturduğundan emin olun. Ardından ahşabınızı pleksiglasın alt parçasına yapıştırın. Ahşabı atlarsanız, tahtayı doğrudan pleksiglasa vidalayabilirsiniz, ancak bu, vida için yeterince kalın değilse zarar verebilir veya rahatsız edici olabilir. Daha sonra, breadboard'unuzun arkasındaki yapışkan etiketi çıkarın, ardından arduino'nun yanına sıkıca ve sıkıca yerleştirin. Ardından, denetleyiciyi oluşturmak için kutu parçalarınızın geri kalanını yapıştırın, tekrar USB 1.1 bağlantı noktasının hala erişilebilir olduğundan emin olun.
6. Adım: Tak ve Çalıştır
Bitirdin! USB 1.1 kablosunu kullanarak tatlı kumandanızı bilgisayarınıza bağlayın ve oyununuzu test edin!
Önerilen:
Eğim Sensörü LED Zar: 3 Adım
Eğim Sensörlü LED Zar: Bu proje, eğim sensörü her eğildiğinde yeni bir sayı üreten bir LED zarı oluşturur. Bu proje bir düğme kullanacak şekilde değiştirilebilir, ancak kodun buna göre değiştirilmesi gerekir. Bu projeye başlamadan önce 5V ve bir
SW-520D Titreşim Sensörü Metal Bilyalı Eğim Anahtarı - Visuino: 6 Adım
SW-520D Titreşim Sensörü Metal Küresel Eğim Anahtarı - Visuino: Bu SW-520D temel eğim anahtarı, yönü algılamak için kolayca kullanılabilir. Kutunun içinde, kasa dik konumdayken pimlere temas eden bir top bulunmaktadır. Kasayı yatırın ve toplar birbirine değmesin, böylece bağlantı kurulmaz. Eğim sensörü al
LM358 Kullanan Dijital Eğim Sensörü: 3 Adım
LM358 Kullanan Dijital Eğim Sensörü: Sensörler, DIY elektroniğine başlamak için en iyi şeydir, her biri bir veya daha fazla göreve uygun çok çeşitli sensörler alabilirsiniz. Arduino, çeşitli sensörlerle uyumludur ve size farklı sensörlerin nasıl oluşturulacağını göstereceğim
LSM303DHLC ile Eğim Dengelemeli Pusula: 3 Adım
LSM303DHLC ile Eğim Dengelemeli Pusula: Bu Eğitilebilir Tabloda, eğim telafili bir pusula gerçekleştirmek için LSM303 sensörünün nasıl kullanılacağını göstermek istiyorum. İlk (başarısız) denemeden sonra sensörün kalibrasyonu ile uğraştım. Bunlar sayesinde manyetometrenin değerleri iyileşmiştir
Eğim Anahtarı: 9 Adım (Resimlerle)
Eğim Anahtarı: Bu eğitim, yumuşak devrelere bir giriş niteliğindedir. Uygulama yoluyla, iletken kumaş ve iletken iplik gibi elektronik-tekstil (e-tekstil) malzemelerinin çalışma özelliklerini anlayacaksınız. Bir f inşa ederek