İçindekiler:

Kablosuz Kontrolörlü ve Sensörlü El Konsolu (Arduino MEGA & UNO): 10 Adım (Resimlerle)
Kablosuz Kontrolörlü ve Sensörlü El Konsolu (Arduino MEGA & UNO): 10 Adım (Resimlerle)

Video: Kablosuz Kontrolörlü ve Sensörlü El Konsolu (Arduino MEGA & UNO): 10 Adım (Resimlerle)

Video: Kablosuz Kontrolörlü ve Sensörlü El Konsolu (Arduino MEGA & UNO): 10 Adım (Resimlerle)
Video: Başımız Sağ Olsun Türkiye. ❤️‍🩹 2024, Kasım
Anonim
Image
Image
(dokunmatik) ekranı bağlayın
(dokunmatik) ekranı bağlayın

ne kullandım

- Arduino MEGA

- 2x Arduino UNO

- Adafruit 3.5 TFT 320x480 Dokunmatik Ekran HXD8357D

- Zil

- 4Ohm 3W Hoparlör

- 5 mm LED ışıklar

- Siyah PLA Filamentli Ultimaker 2+ Yazıcı

- MDF ahşap ile lazer kesici

- Siyah sprey boya (ahşap için)

- 3x nRF24L01+ Kablosuz Alıcı-Verici

- 2x 16mm Düğme

- 2 adet Basınç Sensörü

- 3x 9V Pil Tutucular

- Ekmek tahtası

- 2x 0.96'' OLED I2C ekranlar

- Erkek - dişi teller

- Lehim istasyonu

- Süper yapıştırıcı

- 2 adet tek kanallı dokunmatik modül (KIRMIZI/MAVİ)

Adım 1: (dokunmatik) ekranı bağlayın

(dokunmatik) ekranı bağlayın
(dokunmatik) ekranı bağlayın
(dokunmatik) ekranı bağlayın
(dokunmatik) ekranı bağlayın

Bu yüzden, bunu iki kablosuz denetleyiciye sahip bir el konsolu yapacağız.

Bu nedenle bir ana ünitemiz olacak (en büyük kısmı LCD ekranlı)

Ana ünite Arduino MEGA ile çalıştırılacaktır.

İki ayrı denetleyicinin her biri bir Arduino UNO çalıştıracaktır.

Daha sonra kontrolör verilerini göndermek için Arduino'ların birbirleriyle iletişim kurmasını sağlayacağız.

320x480 ekranı bu eğitimdeki gibi ana ekran biriminize (Arduino MEGA) doğru şekilde bağlayarak başlayın. (Adafruit, kablolama ve kod için harika bir ayrıntılı öğreticiye sahiptir).

Ses için, dijital pinleri ve GND'yi ayırmak için bir buzzer ve bir 3W 4Ohm Hoparlör bağladım.

ton ile(pin, frekans, süre); Bazı temel monofonik sesler oluşturabilirsiniz.

2. Adım: Kitaplıkları Tanıyın

Kütüphaneleri Tanıyın
Kütüphaneleri Tanıyın
Kütüphaneleri Tanıyın
Kütüphaneleri Tanıyın

Adafruit 320x480 ekranı, ilgili Adafruit_GFX ve Adafruit_TFTLCD kitaplıklarını destekler.

Belgeleri okuyun. Orada iyi anlatıldığını düşünüyorum.

Arduino IDE'de doğru ayarları yaptığınızdan emin olun:

Araçlar -> Kart -> Arduino/Genuino MEGA veya MEGA 2560

Araçlar -> Bağlantı Noktası -> [İçinde ''Arduino MEGA'' bulunan bağlantı noktası]

Bu özel ekran kitaplığı özel yazı tiplerini, temel şekilleri ve çeşitli renkleri destekler.

Dikkate değer bir şey, yenileme hızının düzgün animasyon için çok düşük olması olabilir. Ekranı her tıklamada güncellemek istiyorsanız, her pikselin yeniden çizilmesini işlemek için çok yavaş olacak ve titreyecektir

Bu yüzden, bazı eski el bilgisayarlarının animasyonu nasıl ele aldığı gibi, bu konuda yaratıcı bir şekilde çalışmanızı öneririm: ana karelerle. Az ama öz! Ve her saniye her şeyi yeniden çizmek yerine, bir dikdörtgeni sola veya sağa hareket ettirmek istiyorsanız, nesnenin tamamını silip yeniden çizmek yerine, ardında bıraktığı izi silebilirsiniz.

Örneğin, giriş sekansındaki karakter için ekran titremesini yanıp sönme efekti olarak kullandım.

Adafruit_GFX kütüphanesinden esas olarak tft.fillRect(x, y, width, height, color) dosyasını kullandım; ve tft.print(metin); fonksiyonlar.

Denemek anahtardır.

Adım 3: Bir Grafik Kullanıcı Arayüzü Tasarlayın / Ana Menü

Bir Grafik Kullanıcı Arayüzü Tasarlayın / Ana Menü
Bir Grafik Kullanıcı Arayüzü Tasarlayın / Ana Menü
Bir Grafik Kullanıcı Arayüzü Tasarlayın / Ana Menü
Bir Grafik Kullanıcı Arayüzü Tasarlayın / Ana Menü

Kütüphane hakkında bilgi sahibi olduktan ve sınırlarını/güçlerini öğrendikten sonra bir Ana Menü ekranı tasarlamaya başlayabilirsiniz.

Yine, dikdörtgenleri düşünün. En azından ben öyle yaptım.

İşte kullanıcı arayüzü için kodum

pastebin.com/ubggvcqK

Adafruit Dokunmatik Ekranınızdaki ''Lite'' pinini bir Analog pin üzerinden kontrol etmek için ekran parlaklığı için kaydırıcılar oluşturabilirsiniz.

Adım 4: İki Denetleyiciyi Kablolayın

İki Denetleyiciyi Kablolayın
İki Denetleyiciyi Kablolayın
İki Denetleyiciyi Kablolayın
İki Denetleyiciyi Kablolayın
İki Denetleyiciyi Kablolayın
İki Denetleyiciyi Kablolayın

Denetleyici kısmı için, yapmayı planladığınız oyuna bağlı olarak ne tür sensörler kullanmak istediğiniz aslında size kalmış

Tamam, kullanmaya karar verdiğim kontrolörler için:

- Bir basınç sensörü

- OLED ekran

- Açılıp kapanan tek kanallı dokunmatik modül

- Hareket sensörü (RobotDyn APDS9960)

- nRFL01+ Alıcı-Verici (kablosuz iletişim için)

- Bir basma düğmesi

Not: Hareket sensörü ve OLED, SCL / SDA bağlantılarını kullanır. Arduino'nun sadece iki tane olduğunu fark etmem biraz zaman aldı: A4 ve A5. Ancak bu paralelleri breadboard üzerinde basitçe birbirine bağlayabilirsiniz ve iyi çalışacaktır

Adım 5: Kablosuz Bağlantıyı Kablolamaya Başlayın

Kablosuz Bağlantıyı Kablolamaya Başlayın
Kablosuz Bağlantıyı Kablolamaya Başlayın
Kablosuz Bağlantıyı Kablolamaya Başlayın
Kablosuz Bağlantıyı Kablolamaya Başlayın
Kablosuz Bağlantıyı Kablolamaya Başlayın
Kablosuz Bağlantıyı Kablolamaya Başlayın

nRF24L01+ modüllerini kablolamak, çalışmasını sağlamak için biraz zaman aldı.

Ekrana aktarılan doğru sensör verilerini alamayınca TMRh20 RF24 kütüphanesine başvurmak zorunda kaldım.

Birden fazla Arduino'nun birbiriyle iletişim kurabilmesi için, MEGA'nın yanı sıra UNO'lardan en az birine güç verildiğinden emin olmalıyız.

UNO'dan aldığınız sonuçların çıktısını almak için MEGA'nın seri konsolunu kullanın ve çalışıp çalışmadığını görün.

işte kod

İşte kütüphane

Adım 6: Vahşi Olun! Çeşitli Şeyleri Deneyin

Vahşileş! Çeşitli Şeyleri Deneyin
Vahşileş! Çeşitli Şeyleri Deneyin

Geliştirme sürecimin çok önemli bir parçası sadece birçok şeyi denemekti!

Ne tür düğmeler kullanmak istiyorsunuz?

Kontrolörlerinize ne koyuyorsunuz?

Web sitelerine bakın, normal ''A/B'' düğmelerinin veya analog joystick'lerin yanı sıra birçok bileşen bulacaksınız. Bir şans vermek için ilham alın ve motive olun!

Kontrolörlere ne koymak istediğinize dair net ve işe yarar bir fikriniz olduğunda, bileşenleri kablolayın.

Nasıl çalıştıklarına bağlı olarak, dijital girişler veya analog girişler kullanmanız gerekecektir.

NOT: Bazı bileşenlerin doğru çalışması için SCL / SDA pinlerine ihtiyaç duyulabilir. Ve iki veya daha fazla sensörünüz varsa, her ikisinin de aynı ihtiyacı var, muhtemelen benim gibi panik atak geçireceksiniz. Ama endişelenmene gerek yok

Hem sensörlerin SDA hem de SCL pinlerini A4 ve A5'e girerek birbirleriyle seri olarak koyabilirsiniz ve çalışacaktır

Adım 7: Tasarım

Tasarım
Tasarım
Tasarım
Tasarım
Tasarım
Tasarım

Kullanmak istediğiniz sensörler için harika bir fikriniz olduğunda, beğendiğiniz bir tasarım için bazı fikirler çizin.

Ardından Blender, Maya, Cinema 4D gibi modelleme programlarına girin.

(Kaba) bir model oluşturmak için Blender'ı kullandım.

Blender'da net ölçümler elde etmek için ızgara boyutunun birimini milimetre olarak değiştirebilirsiniz.

Bir model yaptıktan sonra, çift köşeniz olmadığından ve normallerinizi yeniden hesapladığınızdan emin olun.

Benim gibi bir 3D yazıcı kullanmak istiyorsanız dosyayı.stl olarak dışa aktarın.

NOT: Bir sonraki adımda Cura'da doğru boyutu istiyorsanız, Blender'da dışa aktarma ölçeğini 0,1 olarak ayarlamanız gerekecektir

Adım 8: Muhafazayı 3B Yazdırma

Muhafazayı 3B Yazdırma
Muhafazayı 3B Yazdırma
Muhafazayı 3B Yazdırma
Muhafazayı 3B Yazdırma
Muhafazayı 3B Yazdırma
Muhafazayı 3B Yazdırma

Bu model bir Ultimaker 2+ yazıcıda 2.85 mm Siyah PLA filament ile basılmıştır.

CURA'yı indirin

. STL'nizi Cura'ya yükleyin, size ne kadar süreceğini gösterecektir.

Elde taşınan bir kılıf için, boyutuna bağlı olarak yazdırılması 10 saate kadar sürebilir.

Ancak düşük detaylı modeller için benim yaptığım gibi süreci hızlandırabilirsiniz.

İşte ayarlarım:

Katman Yüksekliği: 0.2

Duvar Kalınlığı: 0.8

Üst/Alt Kalınlık: 0.8

Meme: 0.4

Sıcaklık: 60 santigrat derece

Akış: %100

Brim: Yapı plakasına dokunan her yer

Dolgu yoğunluğu: 20%

Kademeli: 0

Nozul Sıcaklığı: 220 C

Baskı Hızı: %120

Adım 9: Lehimleme ve Sonlandırma

Lehimleme ve Sonlandırma
Lehimleme ve Sonlandırma
Lehimleme ve Sonlandırma
Lehimleme ve Sonlandırma
Lehimleme ve Sonlandırma
Lehimleme ve Sonlandırma

Uzun bir yoldan geldiniz.

Son adım, bir perfboard / veroboard almak ve devre tahtası bağlantılarınızı bir prototipleme panosunun bir parçasına dönüştürmektir.

Elektroniklerin basılı muhafazaların içine oturduğundan emin olun ve düğmelerin / denetleyici girişlerinin yapıştığı parçalar yapmak için biraz ahşap MDF kesin.

Bunun için bir lazer kesici kullandım.

En önemli şey etrafta dolaşmak, başka türlü yapmadığınız bazı şeyleri denemek ve eğlenmek!

Umarım bu eğitim yeterince açık olmuştur… Oldukça zor bir projeydi ve harika bir sonuç verdi!:)

Adım 10: Önizleme

Önerilen: