रास्पबेरी पाई म्यूजिकल कीबोर्ड

प्रोजेक्ट का गिटहब रेपो

डेमो/व्याख्या

निर्माता/भूमिकाएँ

  • एंड्रयू डार्लिंग
    • कोड के लिए ऑब्जेक्ट-ओरिएंट-प्रोग्रामिंग संरचना और लॉजिक लिखा।
  • रिले रॉयल
    • आरपीबीपी के लिए सर्किट बनाया।
  • मेहमत यिलमज़
    • कोड के लिए जीयूआई तत्व और शीट म्यूजिक जनरेटर लिखा।

बारे में

रास्पबेरी पाई बजर पियानो (आरपीबीपी) प्रोजेक्ट पायथन सेंसर सिस्टम्स (CSCI-250) के लिए एक अंतिम प्रोजेक्ट था, जो कोलोराडो स्कूल ऑफ माइन से प्रदान की गई एक अंडरग्रेजुएट कक्षा थी, जो फॉल 2019 सेमेस्टर के दौरान थी। यह प्रोजेक्ट एंड्रयू डार्लिंग, रिले रॉयल, और मेहमत यिलमज़ का एक समूह प्रोजेक्ट था। इसे आधिकारिक रूप से नवंबर 2019 के अंत, दिसंबर 2019 की शुरुआत के आसपास पूरा किया गया था।

हमारा प्रोजेक्ट एक रास्पबेरी पाई बजर पियानो (आरपीबीपी) है। यह आरपीबीपी विचार एक म्यूजिकल कीबोर्ड है जिसमें 13 कुंजियों का सेट होगा, जहाँ कुंजियाँ बस बटन हैं, जो पियानो कुंजियों की तरह कार्य कर सकती हैं। जब एक कुंजी दबाई जाती है, तो यह एक या अधिक बजरों को विभिन्न आवृत्तियों पर बजने का कारण बनेगा, यह इस पर निर्भर करता है कि कौन सा बटन दबाया गया है। इसमें दो पोटेंशियोमीटर भी होंगे, जिनमें से एक का उपयोग आरपीबीपी के 3 मोड के बीच परिवर्तन करने के लिए किया जाएगा और दूसरा बजरों के ऑक्टेव(s) को बदलने के लिए उपयोग किया जाएगा। आरपीबीपी पर 3 मोड हैं: फ्री-प्ले, रिकॉर्ड, और प्ले-बैक। फ्री-प्ले, उपयोगकर्ता को आरपीबीपी खेलने की अनुमति देता है और बस सुनता है कि उन्होंने कौन सी कुंजी दबाई। रिकॉर्ड, उपयोगकर्ता को फ्री-प्ले करने की अनुमति देता है जबकि साथ ही इसे एक npy फ़ाइल में रिकॉर्ड करता है और उस रिकॉर्डिंग के लिए पीडीएफ फॉर्म में शीट म्यूजिक बनाता है। प्ले-बैक उपयोगकर्ता को एक रिकॉर्ड की गई फ़ाइल का नाम दर्ज करने की अनुमति देता है और सर्किट उस रिकॉर्ड की गई फ़ाइल को बजरों के माध्यम से बजाएगा। सभी शीट म्यूजिक एक निर्देशिका में सहेजे जाएंगे, ताकि उपयोगकर्ता हमेशा अपनी शीट म्यूजिक को देख सकें यदि वे ऐसा करना चाहें। प्रत्येक बटन/कुंजी में एक एलईडी होती है जो उपयोगकर्ता को दिखाती है कि कब एक बटन/कुंजी दबाई गई है। यह प्रोजेक्ट केवल रास्बियन (रास्पबेरी पाई ओएस) पर काम करने के लिए सिद्ध हुआ है, जिसमें नीचे दिखाए गए आवश्यकताएँ सही ढंग से सेटअप की गई हैं।

आवश्यकताएँ

जानकारी

  • मोड:
    • फ्री-प्ले: उपयोगकर्ता को बस आरपीबीपी खेलने की अनुमति देता है।
    • रिकॉर्ड: उपयोगकर्ता को जो वे खेलते हैं उसे रिकॉर्ड करने, उस रिकॉर्डिंग को सहेजने, और जो वे रिकॉर्ड करते हैं उसके लिए शीट म्यूजिक बनाने की अनुमति देता है।
    • प्ले-बैक: उपयोगकर्ता को किसी भी रिकॉर्डिंग को प्ले करने की अनुमति देता है जिसे उन्होंने डाउनलोड किया या बनाया।
    • म्यूट: आरपीबीपी पर सभी बजरों को म्यूट करता है।
  • मोड के बीच अपडेट कैसे करें:
    • जीयूआई पर सेटिंग्स/मानों को बदलें और सबमिट बटन दबाएँ।
  • अन्य नोट्स:
    • जीयूआई से आरपीबीपी के बारे में अधिक जानने के लिए, README बटन दबाएँ और यह README खुल जाएगा।

सर्किट

  • आप इस प्रोजेक्ट के लिए उपयोग किए गए सर्किट बोर्ड की छवियाँ सर्किट चित्र अनुभाग में देख सकते हैं।
  • पाई वेज को रिबन केबल के माध्यम से रास्पबेरी पाई 3 B+ से जोड़ा गया है।
  • रास्पबेरी पाई इस रेपो में प्रदान किए गए कोड को चलाता है जिसमें इस README में सूचीबद्ध ड्राइवर हैं।
  • सर्किट लेआउट इतना गंदा होने के लिए खेद है, दुर्भाग्यवश हमने इस भाग को बहुत अच्छी तरह से दस्तावेजित नहीं किया।

उपयोग कैसे करें:

  • पहले, सुनिश्चित करें कि सभी आवश्यकताएँ पूरी हो गई हैं, फिर start.sh बैश स्क्रिप्ट को निष्पादित करें और एक जीयूआई प्रकट होगा।
  • दूसरे, “मोड” लेबल के तहत आप जो मोड उपयोग करना चाहते हैं उसे चुनें।
  • [ये कदम उन लोगों के लिए हैं जो “फ्री-प्ले” मोड चुनते हैं]
    • तीसरा_10: सबमिट बटन दबाएँ और आरपीबीपी पर खेलना शुरू करें
  • [ये कदम उन लोगों के लिए हैं जो “रिकॉर्ड” मोड चुनते हैं]
    • तीसरा_20, “रिकॉर्ड नाम” लेबल के तहत आप जिस रिकॉर्ड की गई फ़ाइल को नाम देना चाहते हैं उसे लिखें।
    • तीसरा_21, सबमिट नामक बटन दबाएँ और एक लाल एलईडी चालू हो जाएगी।
    • तीसरा_22, आरपीबीपी पर खेलें और जब आप समाप्त कर लें, तो जीयूआई पर स्टॉप बटन दबाएँ।
    • तीसरा_23, जब आप स्टॉप बटन दबाएँगे, तो आपकी रिकॉर्डिंग सहेजी जाएगी और आपकी शीट म्यूजिक उत्पन्न की जाएगी और आपके देखने के लिए पीडीएफ के रूप में खोली जाएगी और यह SHEETS निर्देशिका में सहेजी जाएगी।
  • [ये कदम उन लोगों के लिए हैं जो “प्ले-बैक” चुनते हैं]
    • तीसरा_30, “भेजें” लेबल के तहत आप जिस गाने की फ़ाइल को प्ले करना चाहते हैं उसे चुनें
    • तीसरा_31, सबमिट बटन दबाएँ और आप द्वारा चुनी गई गाने की फ़ाइल सुनना शुरू करें।
  • [ये कदम उन लोगों के लिए हैं जो “म्यूट” मोड चुनते हैं]
    • तीसरा_40, बस सबमिट बटन दबाएँ और सभी बजर म्यूट हो जाएंगे जब तक आप किसी अन्य मोड में नहीं बदलते
  • चौथा, जब आप आरपीबीपी के साथ सभी काम कर लें, तो जीयूआई को बंद करने और समग्र प्रोग्राम को बंद करने के लिए एग्जिट बटन दबाएँ

सर्किट चित्र

GUI_image
GUI_image
GUI_image