Musikal na Keyboard ng RaspPi

GitHub Repo ng Proyekto

Demo/Paliwanag

Mga Tagalikha/Papel

  • Andrew Darling
    • Sumulat ng istraktura at lohika ng Object-Orient-Programming para sa code.
  • Riley Royall
    • Bumuo ng sirkito para sa RPBP.
  • Mehmet Yilmaz
    • Sumulat ng GUI na elemento at ng generator ng tala ng musika para sa code.

Tungkol

Ang proyekto na Raspberry Pi Buzzer Piano (RPBP) ay isang panghuling proyekto para sa Python Sensor Systems (CSCI-250), isang undergraduate na kurso na ibinigay ng Colorado School of Mines, sa semestre ng Taglagas 2019. Ang proyekto ay isang pangkatang proyekto na binubuo nina Andrew Darling, Riley Royall, at Mehmet Yilmaz. Opisyal itong natapos mga huling bahagi ng Nobyembre 2019, unang bahagi ng Disyembre 2019.

Ang aming proyekto ay isang Raspberry Pi Buzzer Piano (RPBP). Ang ideya ng RPBP ay isang musikal na keyboard na magkakaroon ng hanay ng 13 susi, kung saan ang mga susi ay mga pindutan lamang, na maaaring kumilos tulad ng mga susi ng piano. Kapag pinindot ang isang susi, magpapaingay ito ng isa o higit pang mga buzzer sa iba’t ibang mga frequency depende kung aling pindutan ang pinindot. Magkakaroon din ng dalawang potentiometer, kung saan ang isa ay gagamitin upang magpalit sa pagitan ng 3 mga mode ng RPBP at ang pangalawa ay gagamitin upang baguhin ang oktaba(s) ng mga buzzer. Ang 3 mga mode sa RPBP ay: Free-Play, Record, at Play-Back. Pinapayagan ng Free-Play ang gumagamit na tugtugin ang RPBP at marinig lang kung anong susi ang kanilang pinindot. Pinapayagan ng Record ang gumagamit na mag-Free-Play ng RPBP at sabay na i-record ito sa isang npy na file pati na rin lumikha ng Tala ng Musika, sa anyong PDF, para sa pagre-record na iyon. Pinapayagan ng Play-Back ang gumagamit na ilagay ang pangalan ng naitalang file at tutugtugin ng sirkito ang naitalang file sa pamamagitan ng mga buzzer. Lahat ng Tala ng Musika ay mase-save sa isang direktoryo, kaya maaari palaging balikan ng gumagamit ang kanilang mga Tala ng Musika kung ninanais nila. Bawat pindutan/susi ay may LED upang ipakita sa gumagamit kapag ang isang pindutan/susi ay naipindot. Ang proyektong ito ay napatunayan lamang na gumagana sa Rasbian (Raspberry Pi OS) kapag ang mga kinakailangan, na ipinapakita sa ibaba, ay maayos na na-setup.

Mga Kinakailangan

Impormasyon

  • Modes:
    • Free-play: Pinapayagan ang gumagamit na tugtugin lang ang RPBP.
    • Record: Pinapayagan ang gumagamit na i-record ang kanilang pagtugtog, i-save ang pagre-record na iyon, at lumikha ng tala ng musika para sa kanilang naitala.
    • Play-Back: Pinapayagan ang gumagamit na patugtugin muli ang anumang naitalang pagre-record na kanilang dina-download o ginawa.
    • Mute: pinapatigil ang tunog ng lahat ng buzzer sa RPBP.
  • Paano I-update sa Pagitan ng mga Mode:
    • Palitan ang mga setting/halaga sa GUI at pindutin ang pindutang Submit.
  • Iba pang Tala:
    • Upang malaman pa ang tungkol sa RPBP mula sa GUI, pindutin ang pindutang README at ang README na ito ay magbubukas.

Sirkito

  • Maaari mong tingnan ang mga larawan ng lupon ng sirkito na ginamit para sa proyektong ito sa seksyong Mga Larawan ng Sirkito.
  • Ang Pi Wedge ay nakakonekta sa isang Raspberry Pi 3 B+ sa pamamagitan ng ribbon cable.
  • Pinapatakbo ng Raspberry Pi ang code na ibinigay sa repo na ito kasama ang mga driver na nakalista sa README na ito.
  • Paumanhin sa magulo na layout ng sirkito, sa kasamaang-palad hindi namin naidokumento nang mabuti ang bahaging ito.

Paano Gamitin:

  • Una, tiyaking natugunan ang lahat ng mga kinakailangan pagkatapos patakbuhin ang start.sh bash script at lilitaw ang GUI.
  • Pangalawa, piliin kung aling Mode ang nais mong gamitin sa ilalim ng label na “Modes”.
  • [ ang mga hakbang na ito ay para sa mga pumili ng mode na “Free-Play” ]
    • Third_10: Pindutin ang pindutang Submit at magsimulang tumugtog sa RPBP
  • [ ang mga hakbang na ito ay para sa mga pumili ng mode na “Record” ]
    • Third_20, Isulat ang pangalan na nais mong ibigay sa iyong naitalang file sa ilalim ng label na “Record Name”.
    • Third_21, Pindutin ang pindutang tinatawag na Submit at isang Pulang LED ang maiilaw.
    • Third_22, Tumugtog sa RPBP at kapag tapos ka na, pindutin ang pindutang Stop sa GUI.
    • Third_23, Pagkatapos mong pindutin ang pindutang Stop, ang iyong recording ay mase-save at ang iyong tala ng musika ay gagawin at bubuksan bilang isang PDF para iyong makita at mase-save ito sa direktoryong SHEETS.
  • [ ang mga hakbang na ito ay para sa mga pumili ng mode na “Play-Back” ]
    • Third_30, Piliin kung aling file ng kanta ang nais mong patugtugin sa ilalim ng label na “Send It”
    • Third_31, Pindutin ang pindutang submit at simulan ang pakikinig sa piniling file ng kanta.
  • [ ang mga hakbang na ito ay para sa mga pumili ng mode na “Mute” ]
    • Third_40, Pindutin lamang ang pindutang Submit at lahat ng mga Buzzer ay mapatahimik hanggang sa magpalit ka sa ibang mode
  • Pang-apat, pagkatapos mong matapos sa RPBP, pindutin ang pindutang Exit upang isara ang GUI at ang kabuuang programa

Mga Larawan ng Sirkito

larawan_GUI
larawan_GUI
larawan_GUI