RaspPi Müzikal Klavye

Projenin GitHub Repo

Demo/Açıklama

Yaratıcılar/Roller

  • Andrew Darling
    • Kod için Nesne-Yönelimli Programlama yapısını ve mantığını yazdı.
  • Riley Royall
    • RPBP için devreyi inşa etti.
  • Mehmet Yilmaz
    • Kod için GUI öğesini ve nota müziği oluşturucusunu yazdı.

Hakkında

Raspberry Pi Buzzer Piyano (RPBP) projesi, Colorado Maden Okulu tarafından sunulan Python Sensör Sistemleri (CSCI-250) adlı lisans dersi için bir final projesiydi ve 2019 Sonbahar döneminde gerçekleştirildi. Proje, Andrew Darling, Riley Royall ve Mehmet Yilmaz’dan oluşan bir grup projesiydi. Resmi olarak 2019 yılı Kasım ayı sonlarında, Aralık ayı başlarında tamamlandı.

Projemiz, bir Raspberry Pi Buzzer Piyano (RPBP). Bu RPBP fikri, 13 tuşluk bir seti olan bir müzikal klavyedir; tuşlar sadece düğmelerdir ve piyano tuşları gibi davranabilirler. Bir tuşa basıldığında, hangi düğmeye basıldığına bağlı olarak bir veya daha fazla buzzer farklı frekanslarda çalmaya başlar. Ayrıca, RPBP’nin 3 modunu değiştirmek için birini kullanacak iki potansiyometre olacaktır ve ikincisi buzzer’ların oktav(lar)ını değiştirmek için kullanılacaktır. RPBP’deki 3 mod: Serbest Oynama, Kayıt ve Geri Çalma’dır. Serbest Oynama, kullanıcının RPBP’yi çalmasına ve hangi tuşa bastığını duymasına olanak tanır. Kayıt, kullanıcının RPBP’yi serbestçe çalmasına ve aynı zamanda bunu bir npy dosyasına kaydetmesine ve o kayıt için PDF formatında nota müziği oluşturmasına olanak tanır. Geri Çalma, kullanıcının kaydedilmiş bir dosya adını girmesine ve devrenin o kaydedilmiş dosyayı buzzer’lar aracılığıyla çalmasına olanak tanır. Tüm nota müzikleri tek bir dizine kaydedilecektir, böylece kullanıcı istediğinde her zaman nota müziklerine geri dönebilir. Her düğme/tuş, bir düğme/tuşun basıldığını göstermek için bir LED’e sahiptir. Bu projenin yalnızca aşağıda belirtilen gereksinimlerin düzgün bir şekilde ayarlandığı Rasbian (Raspberry Pi OS) üzerinde çalıştığı kanıtlanmıştır.

Gereksinimler

Bilgiler

  • Modlar:
    • Serbest Oynama: Kullanıcının sadece RPBP’yi çalmasına olanak tanır.
    • Kayıt: Kullanıcının çaldıklarını kaydetmesine, o kaydı saklamasına ve kaydettikleri için nota müziği oluşturmasına olanak tanır.
    • Geri Çalma: Kullanıcının indirdiği veya yaptığı herhangi bir kaydı çalmasına olanak tanır.
    • Sessiz: RPBP’deki tüm buzzer’ları sessize alır.
  • Modlar Arasında Nasıl Güncellenir:
    • GUI’deki ayarları/değerleri değiştirin ve Gönder butonuna basın.
  • Diğer Notlar:
    • GUI’den RPBP hakkında daha fazla bilgi edinmek için README butonuna basın ve bu README açılacaktır.

Devre

  • Bu proje için kullanılan devre kartının resimlerini Devre Resimleri bölümünde görebilirsiniz.
  • Pi Wedge, bir şerit kablo aracılığıyla Raspberry Pi 3 B+‘ya bağlıdır.
  • Raspberry Pi, bu repo’da sağlanan kodu ve bu README’de listelenen sürücüleri çalıştırır.
  • Devre düzeninin bu kadar dağınık olmasından dolayı özür dileriz, maalesef bu kısmı çok iyi belgeleyemedik.

Nasıl Kullanılır:

  • Öncelikle, tüm gereksinimlerin karşılandığından emin olun, ardından start.sh bash betiğini çalıştırın ve bir GUI açılacaktır.
  • İkincisi, “Modlar” etiketinin altında hangi Modu kullanmak istediğinizi seçin.
  • [bu adımlar “Serbest Oynama” modunu seçenler içindir]
    • Üçüncü_10: Gönder butonuna basın ve RPBP’de çalmaya başlayın.
  • [bu adımlar “Kayıt” modunu seçenler içindir]
    • Üçüncü_20, kaydedilmiş dosyanıza vermek istediğiniz ismi “Kayıt Adı” etiketinin altında yazın.
    • Üçüncü_21, Gönder adlı butona basın ve Kırmızı bir LED yanacaktır.
    • Üçüncü_22, RPBP’de çalın ve işiniz bittiğinde, GUI’deki Durdur butonuna basın.
    • Üçüncü_23, Durdur butonuna bastıktan sonra, kaydınız kaydedilecek ve nota müziğiniz oluşturulacak ve görüntülemeniz için PDF olarak açılacak ve SHEETS dizininde kaydedilecektir.
  • [bu adımlar “Geri Çalma” modunu seçenler içindir]
    • Üçüncü_30, “Gönder” etiketinin altında hangi şarkı dosyasını çalmak istediğinizi seçin.
    • Üçüncü_31, gönder butonuna basın ve seçtiğiniz şarkı dosyasını dinlemeye başlayın.
  • [bu adımlar “Sessiz” modunu seçenler içindir]
    • Üçüncü_40, sadece Gönder butonuna basın ve tüm Buzzer’lar sessize alınacaktır, başka bir moda geçene kadar.
  • Dördüncü, RPBP ile işiniz bittiğinde, GUI’yi kapatmak ve genel programı kapatmak için Çıkış butonuna basın.

Devre Resimleri

GUI_resmi
GUI_resmi
GUI_resmi