विषयसूची:

एलईडी ऑडियो विजुअल डिस्प्ले: 8 कदम
एलईडी ऑडियो विजुअल डिस्प्ले: 8 कदम

वीडियो: एलईडी ऑडियो विजुअल डिस्प्ले: 8 कदम

वीडियो: एलईडी ऑडियो विजुअल डिस्प्ले: 8 कदम
वीडियो: AmazingChina: Modular & Flexible LED TV Wall 2024, जुलाई
Anonim
Image
Image
एलईडी ऑडियो विजुअल डिस्प्ले
एलईडी ऑडियो विजुअल डिस्प्ले
एलईडी ऑडियो विजुअल डिस्प्ले
एलईडी ऑडियो विजुअल डिस्प्ले

लेखक द्वारा और अधिक का पालन करें:

स्क्रैप से स्क्रैच से एक गार्डन शुरू करें
स्क्रैप से स्क्रैच से एक गार्डन शुरू करें
स्क्रैप से एक बगीचा शुरू करें
स्क्रैप से एक बगीचा शुरू करें

[चेतावनी: वीडियो में चमकती रोशनी]

आरजीबी एलईडी मैट्रिसेस शौकियों के लिए एक आम परियोजना है जो हल्के डिस्प्ले के साथ प्रयोग करना चाहते हैं, लेकिन अक्सर या तो महंगे होते हैं, या उनके आकार और कॉन्फ़िगरेशन में प्रतिबंधात्मक होते हैं। इस परियोजना का उद्देश्य एक पुन: कॉन्फ़िगर करने योग्य डिस्प्ले बनाना था जो अपने स्वयं के स्टैंड अलोन पीस के रूप में काम कर सके या जॉयस्टिक और बटन के वर्गीकरण का उपयोग करके कंसोल द्वारा नियंत्रित एक इंटरैक्टिव डिस्प्ले के रूप में काम कर सके। डिस्प्ले को मैट्रिक्स गठन से लेकर अधिक स्थिर सजावटी रैखिक पट्टी तक विभिन्न प्रकार के लेआउट में व्यवस्थित किया जा सकता है।

ऑडियो सेंसर, बटन और जॉयस्टिक के वर्गीकरण को जोड़कर डिस्प्ले को इंटरेक्टिव और स्वचालित मोड के बीच कॉन्फ़िगर करने योग्य रंग, प्रभाव, मोड, गति, चमक और पैटर्न के साथ स्विच किया जा सकता है।

उपयोगकर्ता अपनी पसंद बनाने के लिए जॉयस्टिक और सेलेक्ट बटन का उपयोग करके मोड और कॉन्फिग बटन का उपयोग करके मोड और कॉन्फ़िगरेशन के बीच स्विच कर सकते हैं। उपयोगकर्ताओं की वर्तमान पसंद कंसोल के केंद्र में 16x2 एलसीडी स्क्रीन पर दिखाई जाती है।

इस परियोजना में एक एलईडी पट्टी शामिल थी जिसमें 250 एलईडी शामिल थे लेकिन किसी भी आकार की पट्टी की अनुमति देने के लिए कोड को आसानी से बदला जा सकता है।

मोड

  • खेल: स्क्रीन के रूप में एलईडी मैट्रिक्स का उपयोग करके खेल खेले जा सकते हैं
  • शोर: एल ई डी पर्यावरण शोर मात्रा और आवृत्ति के अनुसार प्रकाश करते हैं।
  • रंग: एल ई डी एक पूर्वनिर्धारित रंग पैलेट को प्रदर्शित करने वाले प्रकाश के रूप में उपयोग किया जाता है।
  • वर्षा: गिरती वर्षा प्रकाश प्रभाव

मोड विन्यास

  • रंग - पट्टी का रंग पैलेट सेट करता है

    • गौरव ध्वज - इंद्रधनुष
    • ट्रांस फ्लैग - नीला, गुलाबी, सफेद
    • आग - लाल, नारंगी, पीला
    • प्रकाश - सफेद
  • शैली - पट्टी प्रदर्शन प्रभाव सेट करता है

    • ब्लॉक - यदि मोड रंग में, एल ई डी के रंग स्थिर रहते हैं, मोड शोर में, यह सभी एल ई डी को सबसे हालिया शोर रंग मान सेट करने का कारण बनता है, जिससे चमकती प्रभाव पैदा होता है।
    • शिमर - वैकल्पिक एल ई डी दोलन करते हैं, चालू और बंद के बीच लुप्त होते हैं।
    • ट्रैक - यदि मोड रंग में है, तो एल ई डी के लिए रंग योजना पट्टी के पार जाती है। मोड शोर में यह शोर के रंगों को एक चलती लहर के रूप में पट्टी में यात्रा करने का कारण बनता है।
  • वर्षा प्रभाव - वर्षा के पैटर्न कैसे उत्पन्न होते हैं

    • रैंडम - नई बारिश की धारियों को बेतरतीब ढंग से तैनात किया जाता है, और पैटर्न बदलता रहता है।
    • लगातार - बारिश का पैटर्न दोहराता है।
  • खेल - आप मैट्रिक्स पर कौन सा खेल खेल सकते हैं

    स्नेक - विवा ला नोकिया, केवल तभी बजाने योग्य है जब स्ट्रिप मैट्रिक्स कॉन्फ़िगरेशन में हो

  • प्रभाव रंग - प्रभाव किस रंग के स्रोत का उपयोग करते हैं?

    • रंग सेट - प्रभाव (जैसे बारिश) सेट रंग पैलेट से एक यादृच्छिक रंग लेते हैं।
    • शोर आवृत्ति - उत्पन्न होने पर प्रभाव वर्तमान शोर आवृत्ति के अनुरूप रंग लेते हैं।
    • शोर वॉल्यूम - उत्पन्न होने पर प्रभाव वर्तमान शोर मात्रा के अनुरूप रंग लेते हैं।
  • आकार - प्रदर्शन की व्यवस्था कैसे की जाती है?

    • 250x1 पट्टी
    • 50x5 मैट्रिक्स
    • 25x10 मैट्रिक्स

गति और चमक

एलईडी की चमक और डिस्प्ले अपडेट की दर को बदलने के लिए टर्नेबल एनालॉग पोटेंशियोमीटर के माध्यम से नियंत्रित किया जाता है। यह बड़े पैमाने पर प्रकाश प्रभाव की तीव्रता और खेलों की कठिनाई को प्रभावित करता है।

स्ट्रोब और एलईडी स्थिति

कंसोल ऊपरी बाएँ स्विच एलईडी को बंद करने की अनुमति देता है, एक विकल्प के रूप में जब डिस्प्ले को कॉन्फ़िगर किया जा रहा हो। निचला बायां स्विच स्ट्रोब इफेक्ट को चालू करता है, डिस्प्ले को निर्धारित गति से फ्लैश करता है।

चरण 1: आवश्यकताएँ

अवयव:

  • ब्रेडबोर्ड ~ £5
  • स्ट्रिपबोर्ड ~ £10 सेट 5. के लिए
  • Arduino मेगा (कोई भी क्लोन करेगा) ~ £20
  • 2x 1M पोटेंशियोमीटर रेसिस्टर्स
  • ३०० आरजीबी व्यक्तिगत रूप से पता योग्य पट्टी ~ £३०
  • पिन हेडर ~ £5
  • 10x 10K, 1x 300 प्रतिरोधक
  • I2C एलसीडी मॉड्यूल ~ £5
  • 4-जॉयस्टिक स्विच करें ~ £10
  • ऑडियो सेंसर ~ £5
  • 1x 1μF, 1x 10μF, 1x 100nF कैपेसिटर
  • 3x (क्षणिक) बटन। अनुशंसाएँ: आर्केड, मिनी ~ £३
  • 2x स्विच। अनुशंसाएँ: टॉगल करें ~ £5
  • बिजली के जैक
  • बॉक्स ~ 20x20x15cm - कार्डबोर्ड सबसे आसान है, लेकिन अगर आपके पास लेजर कटर तक पहुंच है, तो आप करते हैं।

मेरी जॉयस्टिक/बटन अनुशंसाएं एक आर्केड थीम के बाद विशुद्ध रूप से शैलीगत विकल्प थीं; किसी भी प्रकृति के क्षणिक स्विच करेंगे। सस्ते जॉयस्टिक प्राप्त किए जा सकते हैं जो 2 पोटेंशियोमीटर (प्रत्येक अक्ष के लिए एक) का उपयोग करके उत्पादित एनालॉग सिग्नल के माध्यम से अपनी स्थिति की रिपोर्ट करते हैं। यदि आप कोड को बदलने के लिए तैयार हैं, तो आप इस तरह के थंब जॉयस्टिक का उपयोग कर सकते हैं।

जबकि मैंने Arduino Megas I/O पिन के न्यूनतम प्रतिशत का उपयोग किया था, इसे इसके बड़े गतिशील और प्रोग्राम मेमोरी आकार के लिए चुना गया था, जिसके लिए Arduino Uno अपर्याप्त साबित हुआ।

एलईडीस्ट्रिप विकल्प

मैंने जिस LEDstrip का उपयोग किया वह एक 300 RGB व्यक्तिगत रूप से पता करने योग्य WS2813 LED लचीली पट्टी थी। WS2812 का एक उन्नत संस्करण, यह प्रारूप थोड़ा अधिक महंगा होने पर, WS2812 पर दोहरे सिग्नल ट्रांसमिशन के साथ सुधार करता है, जिसका अर्थ है कि यदि एक एलईडी काम करना बंद कर देता है, तो बाकी पट्टी इसके बाद भी काम करती है। जैसे कि इसमें 4 पिन होते हैं: 5V, GND, DI (डेटा इनपुट) और BI (बैकअप इनपुट)।

कुल लागत: ~ £१००

उपकरण:

  • सोल्डरिंग आयरन + सोल्डर
  • मल्टीमीटर (वैकल्पिक, लेकिन अनुशंसित)
  • वायर कटर और स्ट्रिपर्स
  • तार: अधिमानतः सिंगल कोर, लचीला (बहुत)
  • छुरी
  • शासक/पेंसिल
  • 1x 5V बिजली की आपूर्ति
  • मैनुअल स्क्रूड्राइवर्स
  • प्रिंटर ए से बी यूएसबी केबल

सॉफ्टवेयर:

अरुडिनो आईडीई

कौशल:

  • टांकने की क्रिया
  • कुछ Arduino अनुभव सभी लेकिन बिल्कुल आवश्यक

चरण 2: योजनाबद्ध और कोड

योजनाबद्ध और कोड
योजनाबद्ध और कोड
योजनाबद्ध और कोड
योजनाबद्ध और कोड
योजनाबद्ध और कोड
योजनाबद्ध और कोड

इस परियोजना में 2 पोटेंशियोमीटर, 1 ऑडियो सेंसर, 1 एलईडी पट्टी, 3 मोमेंटरी बटन, 1 जॉयस्टिक (4 मोमेंटरी बटन), 1 एलसीडी मॉड्यूल और 2 स्विच शामिल थे।

मैं अनुशंसा करता हूं कि आप वायरिंग को समझें और ब्रेडबोर्ड पर बुनियादी सर्किटरी स्थापित करें, इससे पहले कि इलेक्ट्रॉनिक्स को स्ट्रिपबोर्ड में दीर्घावधि स्थायित्व के लिए अगले चरण में टांका लगाया जाए। आपको कम से कम विभिन्न Arduino पिन को डिफ़ॉल्ट उच्च (5V)/LOW (GND) मानों से कनेक्ट करने में सक्षम होना चाहिए और कोड में LEDStrip की मूल सेटिंग्स को अलग करने के साथ प्रयोग करना चाहिए (यह चिह्नित है - कोड चरण देखें) देखने के लिए कुछ प्रारंभिक प्रकाश प्रभाव।

ऑडियो सर्किट

ऑडियो सर्किट पर अगले चरण में चर्चा की गई है और केवल तभी आवश्यक है जब आप ऑडियो प्रभाव चाहते हैं, अन्यथा आप केवल एक पुल डाउन रेसिस्टर (~ 300 ओम) के माध्यम से ऑडियो एनालॉग इनपुट पिन A0, A1 को GND से कनेक्ट कर सकते हैं। यह सर्किटरी ऑडियो विज़ुअलाइज़ेशन को नियंत्रित करने के लिए दो अलग-अलग इनपुट मान देते हुए मापी गई ध्वनि की आवृत्ति और वॉल्यूम निकालने का प्रयास करती है। ऊंचाई (वॉल्यूम आयाम) और रंग (आवृत्ति)।

एलईडी स्ट्रिप

मैंने WS2813 स्ट्रिप के लिए डेटाशीट संलग्न की है, इसमें आदर्श वायरिंग है। बीआई पिन को एक रोकनेवाला के माध्यम से जमीन पर खींचा जा सकता है और एक संधारित्र को GND और +5V के बीच जोड़ा जाना चाहिए और पट्टी के करीब रखा जाना चाहिए। यह पट्टी की वर्तमान मांग में अचानक परिवर्तन को सुचारू करता है, उदाहरण के लिए यदि सभी एल ई डी के चालू होने पर अचानक बड़ी वृद्धि होती है, तो संधारित्र अपने संग्रहीत चार्ज का उपयोग करके इसे Arduino की तुलना में तेजी से आपूर्ति कर सकता है, बोर्ड घटकों पर तनाव को कम कर सकता है।

पट्टी को FASTLED लाइब्रेरी (अधिक विवरण के लिए कोड चरण देखें) का उपयोग करके नियंत्रित किया जाता है और पिन 5 से जोड़ा जाता है।

एलसीडी मॉड्यूल

मैंने जिस एलसीडी मॉड्यूल की सिफारिश की है वह एक आंतरिक सर्किट का उपयोग करता है ताकि इसे केवल 2 इनपुट पिन की आवश्यकता हो, इससे सर्किट में सोल्डरिंग की जटिलता बहुत कम हो जाती है। यह SCL, SDA पिन से जुड़ा होता है।

तनाव नापने का यंत्र

पोटेंशियोमीटर वेरिएबल रेसिस्टर्स हैं, जो आपको आंतरिक पिन पर मापे गए वोल्टेज को नियंत्रित करने की अनुमति देते हैं, Arduino इसे एनालॉग वैल्यू के रूप में पढ़ सकता है। मैंने इन्हें डिस्प्ले की गति और चमक को मैन्युअल रूप से नियंत्रित करने के लिए एक इंटरैक्टिव तरीके के रूप में उपयोग किया और वे एनालॉग इनपुट पिन से जुड़े हुए हैं: ए 3, ए 2।

बाहरी ताकत

छोटी परियोजनाओं (<20 एलईडी) के लिए Arduino को अकेले USB के माध्यम से संचालित किया जा सकता है, लेकिन इस बड़े उपयोग के मामले (250 LED) के लिए, बड़ी वर्तमान मांग के कारण एक बाहरी +5V शक्ति स्रोत की आवश्यकता होती है। मैंने Arduino के GND और VIN से जुड़े बाहरी जैक के माध्यम से Arduino को संचालित किया। जब केवल यूएसबी के माध्यम से संचालित किया जाता है, तो एल ई डी के रंग विकृत हो जाएंगे और एलसीडी स्क्रीन पूरी तरह से प्रकाशित नहीं होगी।

बटन/स्विच/जॉयस्टिक

तटस्थ स्थिति में, बटन के INPUT पिन को GND तक खींच लिया जाता है और Arduino डिजिटल LOW पढ़ता है, लेकिन जब दबाया जाता है, तो पिन +5V डिजिटल हाई पढ़ने से जुड़े होते हैं। एक विशिष्ट Arduino बटन उदाहरण के लिए यहां देखें। इन पढ़े गए मानों को प्रोग्राम के लिए सशर्त बूलियन मानों के रूप में उपयोग किया जा सकता है, जिससे कोड के विभिन्न खंडों का निष्पादन होता है। बटन/स्विच निम्न डिजिटल इनपुट पिन से जुड़े हैं: मोड/कॉन्फ़िगरेशन: 3/2। जॉयस्टिक एल/आर/यू/डी: 10/11/13/12। चुनें: 9.

चरण 3: ऑडियो प्रभाव

ऑडियो प्रभाव
ऑडियो प्रभाव
ऑडियो प्रभाव
ऑडियो प्रभाव
ऑडियो प्रभाव
ऑडियो प्रभाव

सर्किटरी का सबसे जटिल हिस्सा ऑडियो वोल्टेज - फ्रीक्वेंसी कन्वर्टर था। मैंने ऊपर दिखाए गए योजनाबद्ध का पालन किया (अधिक जानकारी के लिए यहां देखें)। आपके ऑडियो सिग्नल की ताकत के आधार पर कैपेसिटर, प्रतिरोध मूल्यों में कुछ बदलाव की आवश्यकता हो सकती है। दिया गया उदाहरण, एक वैकल्पिक 12V सिग्नल का उपयोग करता है, मुझे आपूर्ति वोल्टेज के रूप में 3.3V का उपयोग करके और ऑडियो सेंसर में 5V खिलाकर अच्छे परिणाम मिले।

इस सर्किट से मैंने जो दो सिग्नल निकाले, वे थे फ़्रीक्वेंसी (VOUT) और वॉल्यूम (V2 +)।

उपयोगी नोट्स

बड़े कैपेसिटर (लगभग 1μF से ऊपर की सीमा, गैर-सिरेमिक) ध्रुवीकृत होते हैं, इनमें इलेक्ट्रोलाइटिक कैपेसिटर शामिल होते हैं, उनमें करंट प्रवाह + से - ओर होता है। आरेख पर मैंने उस दिशा को नोट किया है जिसे उन्हें व्यवस्थित किया जाना चाहिए।

इस सर्किट में प्रयुक्त ट्रांजिस्टर PNP है, ये ट्रांजिस्टर एमिटर से कलेक्टर तक करंट प्रवाहित होने देते हैं जब एमिटर के सापेक्ष उनके आधार पर एक नकारात्मक ध्रुवता लागू होती है।

उदासी #1

मूल रूप से मैंने ऑडियो जैक का उपयोग करके ऑडियो को सर्किट में फीड करने की कोशिश की, सपना ऑडियो को सीधे अपने फोन से कनेक्ट करने का था। दुर्भाग्य से यह संकेत बहुत कमजोर दिखाई दिया, और इसे काम करने के लिए एक सप्ताह के संघर्ष के बाद, मैंने ध्वनि सेंसर मॉड्यूल का उपयोग करने का सहारा लिया। मुझे यकीन है कि ऐसी प्रवर्धन तकनीकें हैं जिनका मैं उपयोग कर सकता था, और यह निश्चित रूप से मेरी परियोजना के साथ मुख्य मुद्दा है जिसे मैं भविष्य में ठीक करना चाहता हूं।

चरण 4: कंसोल डिजाइन और निर्माण

कंसोल डिजाइन और निर्माण
कंसोल डिजाइन और निर्माण
कंसोल डिजाइन और निर्माण
कंसोल डिजाइन और निर्माण
कंसोल डिजाइन और निर्माण
कंसोल डिजाइन और निर्माण
कंसोल डिजाइन और निर्माण
कंसोल डिजाइन और निर्माण

मेरा कंसोल डिज़ाइन पुराने स्कूल आर्केड से प्रेरित था, जिसमें रेट्रो जॉयस्टिक, बटन और टॉगल स्विच थे। मैंने इसे एक पुराने कार्डबोर्ड हेडफ़ोन बॉक्स का उपयोग करके बनाया है, (होर्डिंग के अपने उपयोग हैं); यह अत्यधिक प्रभावी था क्योंकि बॉक्स में फोम की आंतरिक परत थी, इसलिए एक बार अंदर जाने के बाद यह एक अच्छा पॉलिश प्रभाव उत्पन्न करता है।

  1. अपने इच्छित कंसोल के सामान्य लेआउट को स्केच करें।
  2. बॉक्स के शीर्ष पर विभिन्न घटकों की स्थिति को मापें और चिह्नित करें। सुनिश्चित करें कि आप बटन/स्विच/जॉयस्टिक के आंतरिक माप लेते हैं क्योंकि आप चाहते हैं कि अंतराल बस इतना बड़ा हो कि घटकों को दबाया जा सके लेकिन फिर भी उनके बाहरी किनारों को कार्डबोर्ड पर पकड़ लिया जाए। मैं इन छेदों को काटने के लिए एक स्केलपेल का उपयोग करने की सलाह देता हूं, लेकिन गोलाकार छेद के लिए स्क्रूड्रिवर के साथ संयोजन में तेज कैंची को चाल चलनी चाहिए। धीरे-धीरे काटें, घटक को फिट करने का प्रयास करें और धीरे-धीरे आकार में धारण करते हुए, एक समय में एक घटक करें।
  3. जॉयस्टिक और एलसीडी डिस्प्ले जैसे बड़े घटकों के लिए, मैं कंसोल टॉप के माध्यम से कुछ नट/बोल्ट को सुरक्षित रूप से स्थिति में रखने के लिए पेंच करने की सलाह देता हूं।
  4. कंसोल के पीछे के नीचे तीन छेद काटें, ये पावर इनपुट के लिए होंगे, वैकल्पिक रूप से Arduino और LEDStrip आउटपुट कनेक्टर को प्रोग्राम करने के लिए USB इनपुट।

उत्तम सुझाव

मैं प्रत्येक घटक धातु कनेक्टर को एक्सेस में आसानी के लिए और कार्डबोर्ड को जलाने के जोखिम को कम करने के लिए कंसोल में रखने से पहले प्री-सोल्डरिंग की सलाह देता हूं।

चरण 5: मिलाप योजनाबद्ध

मिलाप योजनाबद्ध
मिलाप योजनाबद्ध
मिलाप योजनाबद्ध
मिलाप योजनाबद्ध
मिलाप योजनाबद्ध
मिलाप योजनाबद्ध
मिलाप योजनाबद्ध
मिलाप योजनाबद्ध

आपको स्ट्रिप बोर्ड के एक टुकड़े की आवश्यकता होगी, कम से कम 25 पंक्तियों के आकार में 20 कोल्स। हालांकि जो बड़ा है उसे चुनकर आप तारों के बगल में स्ट्रिपबोर्ड पर अपने माइक्रो-कंट्रोलर को ब्लू-टैक कर पाएंगे, इसका मतलब है कि केवल गैर-स्थिर कनेक्शन स्ट्रिपबोर्ड और कंसोल सतह से जुड़े घटकों के बीच होंगे। इस प्रक्रिया के हर चरण में जो आवश्यक है, वह यह है कि लंबे समय तक चलने वाले अंतिम उत्पाद को सुनिश्चित करने के लिए किसी भी वायरिंग के तनाव को कम करना संभव है।

मैंने पिन हेडर का उपयोग तारों को समूहों में साफ-सुथरा व्यवस्थित करने के लिए किया और उन्हें Arduino से इस तरह से जोड़ा कि डिबगिंग के लिए आसानी से अलग किया जा सके।

मैंने कार्डबोर्ड बॉक्स की भीतरी दीवार से जोड़ने के लिए कुछ स्ट्रिंग/तार का उपयोग करके स्ट्रिपबोर्ड को आंशिक रूप से सबसे भारी सर्किटरी का समर्थन किया।

कंसोल से बाहर निकलने वाली मुख्य शक्ति और LEDStrip तारों में मिडवायर कनेक्टर थे जिन्हें अलग किया जा सकता था, इसका मतलब था कि तारों को कंसोल के नीचे छेद के माध्यम से पिरोया जा सकता है और फिर भी बॉक्स को खोलने की अनुमति देता है।

सोल्डरिंग टिप्स

सोल्डरिंग के दौरान तारों/स्ट्रिपबोर्ड को पकड़ने के लिए एक क्लैंप प्रक्रिया को बहुत आसान बना देगा। उन्हें जोड़ने का प्रयास करने से पहले हमेशा प्रत्येक तार को पूर्व-मिलाप करें।

लेआउट टिप्स

सभी आउटवायर (Arduinos पिन की ओर जाने वाले) बोर्ड के किनारे पर स्थित हैं।

यदि संभव हो तो आस-पास की पंक्तियों में अलग-अलग रंग के तार का उपयोग करने से वायरिंग भ्रम से बचने में मदद मिलती है।

GND, +3.3V, +5.5V को हमेशा किनारे की पंक्तियों में रखा जाना चाहिए, आसान पहचान के लिए, GND और +3.3/5V को विपरीत किनारों पर रखने से संभावित शॉर्टिंग को रोकने में मदद मिलती है लेकिन व्यक्तिगत रूप से मैंने परेशान नहीं किया और उन्हें शीर्ष 3 में रखा। पंक्तियाँ। कंसोल का लेआउट आंशिक रूप से वायर पंक्तियों के क्रम को निर्धारित कर सकता है, आस-पास के घटकों को पास की पंक्तियों में मैप किया जा सकता है, Arduino IDE में पिन नंबर हमेशा फिर से लिखे जा सकते हैं।

एक डेज़ी श्रृंखला में कंसोल के पीछे एक दूसरे के साथ बटनों/प्रतिरोधों के सभी +5V पिनों को एक साथ मिलाने से, स्ट्रिपबोर्ड और कंसोल टॉप के बीच केवल एक +5V तार की आवश्यकता होती है, जो कमजोर कनेक्टिंग तारों की संख्या को व्यापक रूप से कम करता है। उदाहरण के लिए जॉयस्टिक के 4 स्विच के लिए मैंने उनके सभी 5V टर्मिनलों को एक साथ जोड़ा।

स्ट्रिपबोर्ड और कंसोल के बीच फैले तारों की लंबाई में उदार रहें, बाद में कम करने के लिए इसे बढ़ाने की कोशिश करने से कहीं ज्यादा आसान है।

यदि संभव हो तो स्ट्रिपबोर्ड और कंसोल घटकों के बीच लचीले तार का उपयोग करें, इससे बाद में कंसोल को खोलना और डीबग करना आसान हो जाता है।

चरण 6: विस्तार 1: एलईडी मैट्रिक्स

एक्सटेंशन 1: एलईडी मैट्रिक्स
एक्सटेंशन 1: एलईडी मैट्रिक्स
एक्सटेंशन 1: एलईडी मैट्रिक्स
एक्सटेंशन 1: एलईडी मैट्रिक्स
एक्सटेंशन 1: एलईडी मैट्रिक्स
एक्सटेंशन 1: एलईडी मैट्रिक्स

एलईडी पट्टी को कंसोल से जोड़कर, अधिकांश बारिश, रंग, स्ट्रोब और शोर प्रभाव प्रदर्शित किए जा सकते हैं, लेकिन विज़ुअलाइज़ेशन फॉर्म सीमित है। कोड डिस्प्ले को 250x1, 50x5 और 25x10 व्यवस्थाओं में आगे कॉन्फ़िगर करने की अनुमति देता है, यह मैट्रिक्स विज़ुअलाइज़ेशन की अनुमति देता है। शोर को चलती तरंगों के रूप में दिखाया जा सकता है, मैट्रिक्स पर कम रिज़ॉल्यूशन स्क्रीन की तरह गेम खेले जा सकते हैं। 25 पिक्सेल की व्यक्तिगत पट्टी की लंबाई का चुनाव व्यक्तिगत था, और आप इसे स्वयं चुन सकते हैं और इसे कोड में सेट कर सकते हैं। मैं जो सबसे ऊपर चाहता था वह लचीलापन था, ताकि बाद की तारीख में मैंने जो भी ग्राफिक प्रभाव कोड करने का फैसला किया, मैं आवश्यक व्यवस्था में एचडब्ल्यू को इकट्ठा कर सकता था।

दुख #2

मेरा एक सपना था, और यह कार्डबोर्ड पर सर्किट कनेक्शन पेंट करने के लिए एक प्रवाहकीय स्याही का उपयोग करना था, जिसे एलईडी स्ट्रिप्स के आस-पास के सिरों के खिलाफ दबाया जा सकता था।

लाभ:

  1. बहुत अच्छा लग रहा है, और मैं बहुत अलग रंगीन कार्डबोर्ड का उपयोग कर सकता हूं
  2. मुझे सर्किट बनाना है
  3. अंतिम अनुकूलन, एक नई व्यवस्था के बारे में सोचें, बस इसे ड्रा करें।

कमियां:

  1. यह काम नहीं किया।
  2. थोड़ा सा भी नहीं।
  3. आप हाथ से एक सटीक पर्याप्त वायरिंग क्यों खींच पाएंगे और फिर कार्डबोर्ड जैसी संपीड़ित सामग्री पर एक सटीक और लगातार पर्याप्त दबाव लागू करेंगे?

मेरा मानना है कि अगर यह काम करता तो यह वास्तव में अच्छा होता और मुझे इस प्रयास के लिए आवंटित 2 घंटे का केवल आंशिक रूप से खेद है।

वास्तविक समाधान

मैंने प्लग करने योग्य पुरुष/महिला हेडर की एक प्रणाली का उपयोग करने का निर्णय लिया, जो कि स्ट्रिपबोर्ड तारों को Arduino से जोड़ने के लिए उपयोग किया जाता है। प्रत्येक छोर पर वैकल्पिक रूप से एम/एफ रखकर, अलग-अलग स्ट्रिप्स को वैकल्पिक रूप से मूल अनकटा पट्टी को फिर से बनाने के लिए प्रत्येक में प्लग किया जा सकता है। या मध्यवर्ती लचीले तार कनेक्टर्स का उपयोग किया जा सकता है ताकि मैट्रिक्स, या किसी अन्य स्पेसियल कॉन्फ़िगरेशन को बनाने के लिए स्ट्रिप्स को स्वयं पर वापस फोल्ड किया जा सके।

  1. एलईडी पट्टी को खंडों में काटें, मैंने लंबाई 25 के 10 स्ट्रिप्स चुने, एक अन्य परियोजना के लिए 50 एलईडी अतिरिक्त छोड़े
  2. पट्टी के प्रत्येक छोर पर तांबे के प्रत्येक कनेक्शन को मिलाएं। सावधान रहें कि प्लास्टिक को पिघलाएं नहीं, यदि आपने एक जलरोधक आवरण के साथ खरीदा है, तो आपको प्रत्येक छोर पर एक छोटा शीर्ष भाग काटना होगा।
  3. मेरे LEDStrip में प्रत्येक छोर पर 4 कनेक्टर थे, और 10 स्ट्रिप्स थे इसलिए मैंने 10 पुरुष, 10 महिला हेडर सेगमेंट प्रत्येक लंबाई 4 में काटा। प्रत्येक स्ट्रिप के लिए मैंने पुरुष को एक छोर पर और महिला को दूसरे में मिलाया। सुनिश्चित करें कि प्रत्येक पट्टी के लिए समान छोर नर/मादा हैं, इससे आप उन्हें फैशन जैसी डेज़ी श्रृंखला में जोड़ सकेंगे।
  4. 10 स्ट्रिप्स को एक साथ प्लग करके कनेक्शन का परीक्षण करें, यदि आवश्यक हो तो अधिक सोल्डरिंग के साथ सही करें।
  5. अब हमें वायर कनेक्टर्स की आवश्यकता है, इनका उपयोग अलग-अलग स्ट्रिप्स को एक साथ लचीली व्यवस्था में जोड़ने के लिए किया जाएगा, चाहे प्रत्येक से दूरी प्राप्त करना या मैट्रिक्स को असेंबल करना लक्ष्य है। उनकी लंबाई निर्धारित करेगी कि आप LEDStrip के प्रत्येक सतत खंड को कितनी दूर रख सकते हैं; तार को जितना आप चाहते हैं उससे थोड़ा अधिक समय तक काटें क्योंकि तारों को जोड़ने पर कुछ लंबाई खो जाएगी। लंबाई के एक और १० पुरुष, १० महिला हेडर सेगमेंट काटें। तार के ४० टुकड़े (आदर्श रूप से बहुरंगी, लचीला) काटें, प्रत्येक छोर को पट्टी करें और पूर्व-मिलाप करें।
  6. एक वायर्ड कनेक्शन बनाने के लिए, पहले 4 तार लें (आदर्श रूप से अलग-अलग रंग यह पहचानने में सक्षम हैं कि कौन सा तार किस पिन से जुड़ता है) और उन्हें एक पुरुष हेडर में मिलाप करें। फिर आप इन 4 तारों को बांधना चाहते हैं, इससे वायरिंग साफ-सुथरी रहती है। एक बार लट (पर्याप्त वह गुणवत्ता है जिसकी हम यहां तलाश कर रहे हैं), आप दूसरे छोर को महिला कनेक्टर में मिलाप कर सकते हैं। सुनिश्चित करें कि समान तारों को समान पिनों में मिलाया गया है। यदि आपके सभी तार एक ही रंग के हैं, तो यह निर्धारित करने के लिए कि कौन सा तार है, अंकन करें या मल्टी-मीटर का उपयोग करें, क्योंकि ब्रेडिंग के बाद यह स्पष्ट नहीं होगा। आपको आवश्यक प्रत्येक वायर्ड कनेक्शन के लिए इस प्रक्रिया को दोहराएं।
  7. सभी स्ट्रिप्स को वायर्ड कनेक्शन से जोड़कर, फिर से कनेक्शन का परीक्षण करें, कंसोल आकार सेटिंग के साथ खेलें और विभिन्न मैट्रिक्स संरचनाओं में एलईडीस्ट्रिप्स की व्यवस्था करें। कमजोर कनेक्शनों को बाद में तोड़ने के बजाय पहले तोड़ना और पहचानना बेहतर है।

अब आपके पास 10 अलग-अलग स्ट्रिप्स हैं, जिन्हें एक लंबी सिंगल स्ट्रिप को फिर से बनाने के लिए सीधे एक-दूसरे में प्लग किया जा सकता है, या मैट्रिक्स फॉर्मेशन में पुनर्व्यवस्थित किया जा सकता है।

चरण 7: कॉन्फ़िगरेशन और सेटअप

विन्यास और सेटअप
विन्यास और सेटअप
विन्यास और सेटअप
विन्यास और सेटअप

नवीनतम संस्करण हमेशा मेरे जीथब पर पाया जा सकता है: rs6713/leddisplay/, इसे फोर्क करने के लिए स्वतंत्र महसूस करें/डाउनलोड करें और चारों ओर खेलें।

Arduino IDE स्थापित करें

चमत्कारी घटना में आपने किसी तरह इस ट्यूटोरियल को बिना किसी पूर्व Arduino अनुभव के पूरा किया, Arduino IDE को यहां डाउनलोड किया जा सकता है। बस आईडीई में कोड इंस्टॉल करें और खोलें, प्रिंटर केबल के माध्यम से बोर्ड को कंप्यूटर में प्लग करें। (आपको Arduino बोर्ड को पहचानने के लिए कंप्यूटर के लिए ड्राइवर स्थापित करना पड़ सकता है, लेकिन जब आप पहली बार अपने कंप्यूटर में Arduino प्लग करते हैं तो यह स्वचालित रूप से होना चाहिए)। बोर्ड प्रकार का चयन करें, और सक्रिय COMM पोर्ट का चयन करें जिसमें Arduino प्लग इन है।

विन्यास

डिस्प्ले की विभिन्न सेटिंग्स को बदलने के लिए परिष्कृत प्रोग्रामिंग ज्ञान की आवश्यकता नहीं है।

कार्यक्रम में कॉन्फ़िगरेशन के लिए अतिसंवेदनशील क्षेत्रों को /*** मुझे कॉन्फ़िगर करें ***/ के साथ चिह्नित किया गया है

आप प्रोग्राम के निम्नलिखित क्षेत्रों को आसानी से बदल/कॉन्फ़िगर कर सकते हैं:

  • घटकों को पिन से जोड़ा जाता है
  • व्यक्तिगत LEDStrips का आकार
  • कुल मिलाकर स्ट्रिप्स में एलईडी की कुल संख्या
  • वे मोड जिन्हें आप प्रोग्राम के लिए अनुमति देना चाहते हैं
  • वर्षा प्रभाव के लिए वर्षा की बूंदों की लंबाई।

पिछले चरणों में चर्चा किए गए इलेक्ट्रॉनिक सर्किट के आपके संस्करण के साथ कोड को काम करने के लिए पिन, और एल ई डी की कुल संख्या आवश्यक है। यह उपयोगी भी है ताकि आप सभी जॉयस्टिक, मोड और कॉन्फ़िगरेशन बटनों को बनाने और कनेक्ट करने के बजाय कोड आरंभीकरण के दौरान उन्हें सेट करके विभिन्न प्रदर्शन मोड का परीक्षण कर सकें।

डालना

एक बार जब आप घटकों, स्ट्रिप आकार और एलईडी की संख्या के लिए सही पिन नंबर सेट कर लेते हैं, तो आप अपलोड को दबाकर प्रोग्राम को Arduino पर अपलोड कर सकते हैं। उम्मीद है कि आप परीक्षण के दौरान निश्चित रूप से इस बिंदु तक इसे पहले ही कर चुके हैं। बाहरी 5V बिजली की आपूर्ति में प्लग करें और आपको जाने के लिए अच्छा होना चाहिए।

डिबगिंग

यदि LEDStrip/Console अपेक्षित रूप से कार्य नहीं कर रहा है, तो इसके कई संभावित कारण हैं।

LEDStrip पूरी तरह/आंशिक रूप से बंद है:

  • जाँच करें कि LEDStrip स्विच चालू है,
  • यदि आपने पट्टी को बढ़ाया है, और LEDStrip के अंतिम कई अंत खंड प्रकाशित नहीं होते हैं, तो यह संभवतः एक दोषपूर्ण कनेक्शन के कारण है। सूखे जोड़ों और रिसोल्डर के लिए अपने कनेक्शन की जांच करें, स्ट्रिप्स के क्रम को बदलने का प्रयास करें, और यदि यह एक वायर्ड कनेक्शन है, तो एक वायर्ड कनेक्शन को दूसरे के लिए स्विच करने का प्रयास करें।

LCD स्क्रीन की चमक कम है/LEDStrip रंग गलत हैं:

  • जांचें कि बाहरी बिजली कनेक्शन चालू है/ठीक से जुड़ा हुआ है। जब बिजली कम होती है तो आरजीबी एलईडी के सभी रंग लगातार नहीं जलते हैं और एलसीडी स्क्रीन खुद को रोशन करने के लिए संघर्ष करती है।
  • रंग भी गलत हो सकते हैं यदि आकार विन्यास उदा। कार्यक्रम का 250x1 वास्तविक जीवन एलईडी व्यवस्था को नहीं दर्शाता है।
  • सबसे खराब स्थिति में आप रोशनी वाली स्ट्रिप्स की संख्या को कम करने के लिए प्रोग्राम को बदल सकते हैं।

यादृच्छिक भयानकता

अंतिम उपाय के रूप में, टिप्पणी की गई सीरियल.प्रिंट पूरे कोड में छोड़ दिए गए हैं, उन्हें अनसुना करने से आपको विभिन्न घटक और आंतरिक कार्यक्रम राज्यों पर प्रतिक्रिया मिलेगी।

एक संभावित स्थिति यह है कि एक इनपुट जिसे ग्राउंड किया जाना चाहिए, डिस्कनेक्ट हो गया है और तैरता हुआ छोड़ दिया गया है, यह गलत घटना ट्रिगर (गलत और TRUE के बीच यादृच्छिक रूप से दोलन पिन रीडिंग) और अप्रत्याशित कार्यक्रम व्यवहार पैदा करेगा।

कार्यक्रम परिवर्तन

संभावित परिवर्तनों के आगे के क्षेत्रों को /** मुझे बदलें **/ के साथ चिह्नित किया गया है

ये क्षेत्र प्रमुख उदाहरण हैं जहां आप अपने स्वयं के अनुकूलन जोड़ सकते हैं:

  • नए रंग पैलेट विकल्प जोड़ें
  • नए प्रभाव जोड़ें उदा। टिमटिमाना
  • नए गेम जोड़ें

ये केवल सुझाव हैं, कोड बदलने के लिए स्वतंत्र महसूस करें जैसा आप चाहते हैं।

चरण 8: एक्सटेंशन 2: ओपनप्रोसेसिंग

एक्सटेंशन 2: ओपनप्रोसेसिंग
एक्सटेंशन 2: ओपनप्रोसेसिंग

** लेखन के समय, यह सुविधा लागू नहीं होती है, इसलिए यह कदम इस परियोजना की भविष्य की योजनाओं/अभिव्यक्तियों को उजागर करने और मैट्रिक्स डिस्प्ले की अनुमति देने के लिए एलईडीस्ट्रिप को विस्तारित करने के महत्व को उजागर करने के लिए है। **

एक कारण मैं इतना उत्साहित था कि LEDStrip का विस्तार करने से इसे एक मैट्रिक्स के रूप में व्यवस्थित करने की अनुमति मिली, यह था कि स्क्रीन डिस्प्ले होने से अन्य सॉफ़्टवेयर से Arduino HW में 2D विज़ुअलाइज़ेशन को मैप करने के कई अवसर खुलते हैं।

OpenProcessing, संसाधन भाषा पर आधारित 2D इंटरैक्टिव ग्राफ़िक्स का एक समुदाय है। एक साधारण सीरियल प्रिंट फ़ंक्शन का उपयोग करके, प्रत्येक फ्रेम की उपस्थिति पिक्सेल द्वारा पिक्सेल को Arduino पर प्रेषित की जा सकती है। इसलिए कंसोल के लिए एक भविष्य मोड हो सकता है, जहां Arduino सिर्फ सीरियल कनेक्शन को सुनता है और प्रोसेसिंग प्रोग्राम द्वारा निर्दिष्ट एनीमेशन के अनुसार फ्रेम द्वारा एलईडी मैट्रिक्स फ्रेम को अपडेट करता है। इसके कई फायदे हैं क्योंकि प्रसंस्करण दृश्य कलाओं के लिए विशिष्ट भाषा है और इसे सीखना आसान है, जिससे जटिल कला विज़ुअलाइज़ेशन बनाना बहुत तेज़ हो जाता है। यह आपके कंप्यूटर में मेमोरी और प्रोसेसिंग जटिलता को तुलनात्मक रूप से मेमोरी/प्रोसेसिंग पावर सीमित Arduino के साथ केवल सीरियल पर पारित जानकारी को संभालने के लिए ले जाता है।

अपने एलईडी डिस्प्ले विज़ुअलाइज़ेशन को 2D ग्राफिक इफेक्ट्स की पहले से मौजूद लाइब्रेरी में आउटसोर्स करके, संभावनाएं अनंत हैं। प्रेरणा के लिए openprocessing.org कैटलॉग देखें।

सिफारिश की: