विषयसूची:

जंगल की आग: 7 कदम
जंगल की आग: 7 कदम

वीडियो: जंगल की आग: 7 कदम

वीडियो: जंगल की आग: 7 कदम
वीडियो: जंगल में लगी आग को बुझाने की नई तकनीक, सेना ने आग बुझाने के लिए Mi-17 उतारे 2024, जुलाई
Anonim
Image
Image

यह परियोजना गेम ऑफ थ्रोन्स में रहस्यवादी जंगल की आग से प्रेरित थी, जो एक हरे रंग का तरल था, जिसे जलाए जाने पर, हरी लपटों में विस्फोट हो गया। परियोजना अनुकूलित रंग प्रभावों के लिए आरजीबी एसएमडी 5050 एलईडी स्ट्रिप्स का उपयोग करने पर केंद्रित है। तीन कांच की वस्तुएं छह आरजीबी एलईडी की एक पट्टी से सुसज्जित हैं। एक Arduino Uno रोशनी के लिए टिमटिमाते पैटर्न की तरह आग बनाता है। आरजीबी एलईडी की जरूरत गहरे हरे से चमकीले हरे रंग से लेकर चमकीले सफेद तक एक ढाल रंग पैटर्न बनाने के लिए होती है। एक साधारण हरी एलईडी पर्याप्त नहीं है, चमकदार सफेद बनाने के लिए इसे लाल और नीले रंग के घटकों की आवश्यकता होती है। एक बोनस के रूप में, यह हार्डवेयर किसी भी अन्य रंग का उत्पादन कर सकता है। प्रकाश को अपवर्तित करने और वास्तविक प्रकाश स्रोत को छिपाने के लिए कांच की वस्तुओं की आवश्यकता होती है, यानी छोटी, बहुत तकनीकी दिखने वाली RGB SMD5050 LED स्ट्रिप्स।

विचार को जितनी चाहें उतनी वस्तुओं तक बढ़ाया जा सकता है और जो भी गतिशील रंग आप चाहते हैं। यह निर्देशयोग्य वर्णन करता है कि मैंने निम्नलिखित रंग योजनाओं के साथ तीन ग्लास ऑब्जेक्ट्स के साथ एक सेटअप कैसे लागू किया। परिचय वीडियो में जंगल की आग की योजना दिखाई देती है। बाकी योजनाएँ इस निर्देश के चरण 6 पृष्ठ में एक वीडियो में दिखाई देती हैं।

  • जंगल की आग। एक गेम ऑफ थ्रोन्स ने तमाशा की तरह आग को प्रेरित किया।
  • यूनिकॉर्न अट्रैक्टर। एक तमाशा, जो इन्द्रधनुषी रंगों से फीका पड़ जाता है।
  • झपकी। दो अलग-अलग गति में रंग का यादृच्छिक परिवर्तन।
  • फीका। दो अलग-अलग गति में यादृच्छिक रंगों का सहज परिवर्तन।
  • जीवित रंग। अपनी वस्तुओं को एक कणिक रंग के चारों ओर हल्के से दोलन करते हुए हल्के से रंग दें।
  • मोमबत्तियाँ। क्या आपके एल ई डी एक प्राकृतिक मोमबत्ती की लौ की नकल करते हैं।

जाल

मूल सेटअप में आप एक बटन क्लिक करके छह रंग योजनाओं के माध्यम से आगे बढ़ते हैं। एक रंग योजना के भीतर एक सेटिंग से दूसरी सेटिंग में, यदि लागू हो, एक डबल क्लिक आगे बढ़ेगा। Arduino प्रोग्राम को एडिट करके कलर सेटअप को जोड़ा जा सकता है।

भविष्य के विस्तारित संस्करण में, बटन को ESP8266 बोर्ड से बदल दिया जाता है, जो एक वेब पेज पर इंटरफेस करेगा, जो रंग योजनाओं को नियंत्रित करेगा। बदले में वेब पेज को मोबाइल डिवाइस ब्राउज़र से नियंत्रित किया जा सकता है। यह चीजों को समायोजित करने में बहुत अधिक विविधता देता है:

  • परिवर्तन की गति और दिशा निर्धारित करें
  • टिमटिमाती मोमबत्तियों के लिए रंग सेट करें
  • रंगों की चमक और संतृप्ति सेट करें

यह निर्देशयोग्य मूल सेटअप पर केंद्रित है, जिसमें उपयोगकर्ता इंटरफ़ेस के रूप में केवल एक पुश बटन शामिल है।

चरण 1: आपको क्या चाहिए

जिसकी आपको जरूरत है
जिसकी आपको जरूरत है
जिसकी आपको जरूरत है
जिसकी आपको जरूरत है
  • एक सस्ती आरजीबी एलईडी पट्टी, जिसे आप छोटी स्ट्रिप्स में काट सकते हैं
  • एक बिजली इकाई, अधिमानतः 12 वी 1.5 एक चीज जो आरजीबी एलईडी पट्टी के साथ आती है
  • एक Arduino UNO या समान
  • दो ULN2803AP आईसी: एस
  • एक साधारण प्रेस बटन
  • एक पर्मा-प्रोटो ब्रेडबोर्ड
  • वायर
  • इलेक्ट्रॉनिक्स के लिए एक बॉक्स
  • आरजीबी एलईडी स्ट्रिप्स द्वारा जलाई जाने वाली कुछ कांच की वस्तुएं
  • उपकरण (वायर स्ट्रिपर, सोल्डरिंग आयरन, सोल्डर…)

एलईडी पट्टी

मैंने एक सस्ती एलईडी पट्टी खरीदी, जिसमें कुछ 90 RGB SMD LED हैं। एक छोटी इकाई एल ई डी को चलाती है, उनका रंग बदलती है। इकाई रिमोट नियंत्रित है और पट्टी विभिन्न तरीकों से रंग बदल सकती है। लेकिन पूरी पट्टी का एक ही रंग है। मजे की बात यह है कि आप पट्टी को छोटे स्ट्रिप्स में काट सकते हैं जिसमें प्रत्येक पट्टी में केवल तीन आरजीबी एलईडी होते हैं। प्रत्येक पट्टी, चाहे वह कितनी भी लंबी क्यों न हो, 12 वी के साथ संचालित की जानी है। तीन आरजीबी एलईडी के प्रत्येक खंड में प्रतिरोधों का अपना सेट होता है जो एलईड के लिए वोल्टेज ड्रॉप का ख्याल रखता है। आपको केवल १२ वी और पर्याप्त एम्पीयर, वेल, मिलीएम्पियर प्रदान करने होंगे। इस परियोजना के लिए, मैं एलईडी पट्टी के तीन स्ट्रिप्स का उपयोग करता हूं, जो प्रत्येक में 6 इकाइयां हैं, और 12 वी 1.0 ए पावर यूनिट है। कंट्रोल यूनिट और रिमोट कंट्रोलर की जरूरत नहीं है।

ULN2803AP

एक सिंगल एलईडी को केवल थोड़ा करंट चाहिए। आम तौर पर आप एक Arduino डेटा पिन से सीधे एक एलईडी प्रकाश कर सकते हैं, जब तक आपके पास एक प्रतिरोधी होता है जो एलईडी के लिए डेटा पिन 5 वी को कुछ 3 वी तक छोड़ देता है। लेकिन एक आरजीबी एसएमडी 5050 एलईडी में तीन एलईडी होते हैं, एक लाल, एक हरा और एक नीला। और इस परियोजना के लिए, मैं 6 RGB SMD5050 LED की स्ट्रिप्स का उपयोग कर रहा हूं। Arduino Uno का एक डेटा पिन 6 LED को नियंत्रित करता है। केवल वह डेटा पिन को टोस्ट करेगा, यदि एलईडी को प्रकाश देने की शक्ति डेटा पिन से आएगी। लेकिन एलीस में ऐसे नौ डेटा पिन होंगे और यह निश्चित रूप से Arduino के लिए बहुत अधिक चालू होगा। यही कारण है कि ULN2803AP शुरू होता है। ULN2803AP 8 डार्लिंगटन ट्रांजिस्टर के साथ एक एकीकृत चिप है। मुझे 9 चाहिए, इसलिए मैं सिर्फ दो ULN2803AP चिप्स का उपयोग करता हूं। यह मुझे 7 अतिरिक्त ट्रांजिस्टर के साथ छोड़ देता है, अगर मैं पांच वस्तुओं को कहने के लिए परियोजना का विस्तार करना चाहता हूं।

RGB SMD5050 LED के अंदर एक सिंगल एलईडी 20 mA खींचती है। उनमें से छह का मतलब 120 एमए होगा। ULN2803 में एक पिन (एक डार्लिंगटन ट्रांजिस्टर) 500 mA को डुबो सकता है। लेकिन पूरी चिप करंट द्वारा उत्पादित अधिकतम 1.44 W ऊष्मा को संभाल सकती है। 120 mA 0.144 W का उत्पादन करता है। मैं ULN2803 चिप्स में से एक पर पाँच लाइनें और दूसरी पर चार लाइनें लगा रहा हूँ। यानी एक चिप पर 0.72 W और दूसरी चिप पर 0.58 W होगा। तो मुझे ठीक होना चाहिए। ULN2803 की सभी 8 लाइनों का उपयोग 120 mA के साथ प्रत्येक पर 1.2 W के साथ चिप को गर्म करेगा। यह गर्म हो जाएगा, लेकिन यह अभी भी इसे सहन करेगा।

सीधे शब्दों में कहें तो RGB SMD LED स्ट्रिप को पावर सोर्स से 12 V मिलता है। एलईडी पट्टी से, तीन रंगों में से प्रत्येक एलईडी से करंट ULN2803AP में और आगे GND में अपने स्वयं के पिन पर जाता है। सर्किट बंद है और एलईडी रोशनी करता है। लेकिन ULN2803AP को Arduino से 5 V डेटा सिग्नल द्वारा चालू/बंद किया जाता है। ये संकेत Arduino से कुछ ही मिलीमीटर खींचेंगे।

कांच की वस्तुएं और एलईडी स्ट्रिप्स

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

चरण 2: उपयोगकर्ता निर्देश

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

  1. जंगल की आग। एक गेम ऑफ थ्रोन्स ने तमाशा की तरह आग को प्रेरित किया, जहां हरी लपटें एक कांच की वस्तु से दूसरी वस्तु तक जाती हैं। यह प्रभाव सबसे शानदार तब दिखाई देगा, जब कांच की वस्तुओं को एक दूसरे के लंबवत रखा जाएगा। लपटों की अलग-अलग गति के साथ तीन अलग-अलग उप-योजनाएं लागू की जाती हैं।
  2. यूनिकॉर्न अट्रैक्टर। एक तमाशा, जो इन्द्रधनुषी रंगों से फीका पड़ जाता है। लुप्त होती एक घूर्णन तरीके से होती है, जैसे प्रत्येक रंग एक कांच की वस्तु से दूसरी वस्तु में चला जाता है। उप-योजनाओं में फ़ेड की अलग-अलग गति होगी।
  3. झपकी। दो अलग-अलग गति में रंग का यादृच्छिक परिवर्तन। उप-योजनाओं में अलग-अलग पैलेट होंगे (केवल पूरी तरह से संतृप्त रंग, आधे संतृप्त रंग, रंग सर्कल के केवल आधे हिस्से से रंग)
  4. फीका। दो अलग-अलग गति में यादृच्छिक रंगों का सहज परिवर्तन। #3 के समान उपवर्ग।
  5. जीवित रंग। अपनी वस्तुओं को एक कणिकीय रंग के चारों ओर हल्के से दोलन करते हुए हल्के से रंग दें। उप-योजनाएं रंगों को लाल, नारंगी, पीला, हरा, नीला, इंडिगो या बैंगनी रंग में सेट करेंगी। दोलन चुने हुए रंग के चारों ओर 10 डिग्री के क्षेत्र में होता है। तीन कांच की वस्तुओं का एक ही चुना हुआ रंग होता है, लेकिन पूरे सेट को एक जीवंत जीवंत रंग देने के लिए प्रत्येक वस्तु की दोलन की अपनी यादृच्छिक रूप से बदलती आवृत्ति होती है।
  6. मोमबत्तियाँ। क्या आपके एल ई डी एक प्राकृतिक मोमबत्ती की लौ की नकल करते हैं। तीन उपयोजनाएँ:

    1. "जितना संभव हो शांत"
    2. "कहीं खुली खिड़की"
    3. "यह एक अंधेरी और तूफानी रात थी"

चरण 3: आरजीबी रंगों के बारे में कुछ शब्द

इस खंड में मैं आरजीबी रंग स्थान पर अपने विचार पर चर्चा करता हूं। आप इस अनुभाग को अच्छी तरह से छोड़ सकते हैं। मैं सिर्फ कुछ पृष्ठभूमि देता हूं कि मैं आरजीबी एलईडी के रंगों का इलाज क्यों करता हूं जैसे मैं करता हूं।

तो आरजीबी एलईडी में केवल लाल, हरी और नीली रोशनी होती है। इन्हें मिलाने से वे सभी रंग बन जाएंगे जिन्हें मानव आँख पहचान सकती है (लगभग)। प्रत्येक भाग की मात्रा - लाल, हरा या नीला - डिजिटल दुनिया में आमतौर पर 0 से 255 तक की संख्या से परिभाषित होती है। पूरी तरह से संतृप्त रंग के लिए रंग घटकों में से एक शून्य और एक रंग घटक 255 होना चाहिए। इसमें हमारी डिजिटल दुनिया में हमारे पास केवल 1530 अलग-अलग पूर्ण संतृप्त रंग हैं।

RGB स्पेस को मॉडलिंग करने का एक तरीका क्यूब है। घन का एक शीर्ष काला है। उस शीर्ष से हम लाल, नीले या हरे किनारे के साथ यात्रा कर सकते हैं। घन में कोई भी बिंदु उसके लाल, हरे और नीले निर्देशांक द्वारा परिभाषित एक रंग है। काले शीर्ष से सबसे दूर तक यात्रा करते हुए, हम सफेद शीर्ष पर आते हैं। काले और सफेद को छोड़कर छह शीर्षों पर ध्यान केंद्रित करते हुए, हम एक पथ बना सकते हैं जो किनारों का अनुसरण करके सभी छह शीर्षों को पार करता है। प्रत्येक किनारे में 256 अंक या रंग होते हैं। प्रत्येक शीर्ष दो किनारों द्वारा साझा किया जाता है, इसलिए अंकों की कुल संख्या 6 * 255 = 1530 है। इस पथ का अनुसरण रंग स्पेक्ट्रम में सभी 1530 पूरी तरह से संतृप्त रंगों को पार कर रहा है। या इंद्रधनुष। कोने लाल, पीले, हरे, सियान, नीले और मैजेंटा रंगों का प्रतिनिधित्व करते हैं।

घन में कोई अन्य बिंदु एक रंग का प्रतिनिधित्व करता है, जो पूरी तरह से संतृप्त नहीं है।

  • या तो बिंदु घन के अंदर है, जिसका अर्थ है कि लाल, हरा और नीला निर्देशांक सभी शून्य से भिन्न होते हैं। सभी ग्रे रंगों की रेखा के रूप में काले शीर्ष से सफेद शीर्ष तक के विकर्ण के बारे में सोचें। और घन के अंदर सभी "पूरी तरह से संतृप्त रंग नहीं" किनारे पर पूर्ण संतृप्ति से "शून्य संतृप्ति" के इस विकर्ण की ओर लुप्त हो रहे हैं।
  • या बिंदु काले शीर्ष को छूने वाले घन के तीन समतल सतहों में से एक पर स्थित है। इस तरह के रंग को पूरी तरह से संतृप्त माना जा सकता है, लेकिन गहरा। जितना अधिक आप इसे गहरा करते हैं, उतना ही यह अपने बोधगम्य रंग संतृप्ति को खो देता है।

सभी पूर्ण संतृप्त रंगों का वर्णन करने वाले घन के चारों ओर छह किनारे वाले पथ होने के बजाय, हम इन 1530 रंगों को एक सर्कल में रख सकते हैं, जहां हमारे पास 60 डिग्री क्षेत्र में 255 अलग-अलग रंग हैं - जैसे कि लाल से पीले रंग में हरा जोड़कर लुप्त हो जाना. रंग सर्कल में सभी रंगों के माध्यम से चलना तीन रंग नियंत्रकों को स्लाइड करने जैसा है, एक बारी में, जबकि अन्य दो विपरीत स्थिति में हैं। चूंकि मैं कुछ रंग योजनाओं में कलर सर्कल, या इंद्रधनुष स्पेक्ट्रम का उपयोग करने जा रहा हूं, इसलिए मैं अपने 1530 स्केल का उपयोग करके सर्कल में एक बिंदु के रूप में एक रंग (रंग) को परिभाषित करने जा रहा हूं:

१५३० स्केल मानक ३६० स्केल

========================== लाल 0 0 नारंगी 128 30 पीला 256 60 हरा 512 120 फ़िरोज़ा 768 180 नीला 1024 240 इंडिगो 1152 270 बैंगनी 1280 300 गुलाबी 1408 330

यह १५३० पैमाना आरजीबी एलईडी के लिए इंद्रधनुष के रंगों को मूल्यों में परिवर्तित करना आसान बनाता है।

प्रत्येक खंड में 255 रंग क्यों? 256 क्यों नहीं? खैर, एक सेक्टर का 256वां रंग अगले सेक्टर का पहला रंग है। आप उस रंग को दो बार नहीं गिन सकते।

फिर भी PWM के बारे में कुछ शब्द

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

इस परियोजना के लिए मैंने जो सस्ती आरजीबी एसएमडी एलईडी पट्टी खरीदी है, उसमें एक उपकरण शामिल है जो पीडब्लूएम की देखभाल करता है। इस परियोजना में मैं इसके बजाय Arduino UNO के साथ PWM बनाता हूं। आरजीबी रंग स्थान, जैसा कि आमतौर पर कंप्यूटर स्क्रीन में लागू किया जाता है, एक सैद्धांतिक संरचना है, जहां कोई प्रत्येक रंग चैनल को 0 से 255 तक मान रखने की कल्पना करता है और चैनल की चमक रैखिक रूप से मूल्य का पालन करेगी। कंप्यूटर का ग्राफिक कार्ड इस रैखिक अपेक्षा से किसी भी संक्षिप्त नाम की भरपाई कर सकता है जो वास्तविक एल ई डी हो सकता है। इस परियोजना में प्रयुक्त एसएमडी एल ई डी रैखिक रूप से अनुसरण करते हैं या नहीं, उपयोग किए गए पीडब्लूएम मान इस परियोजना के दायरे में नहीं हैं। 255 का PWM मान सबसे चमकदार रोशनी बनाता है। लेकिन 128 का मान 255 की आधी चमक के रूप में माना जाने वाला चमक नहीं हो सकता है। और 192 को 255 और 128 के बीच में चमक के रूप में नहीं माना जा सकता है।

चरण 4: द स्कीमैटिक्स

स्कीमैटिक्स
स्कीमैटिक्स

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

चरण 5: कोड

कोड एक Arduino Uno के लिए लिखा गया है। Uno में केवल 6 PWM सक्षम पिन हैं, लेकिन मुझे उनमें से 9 की आवश्यकता है। इसलिए मैं ब्रेट हैगमैन द्वारा लिखित एक विशेष पीडब्लूएम पुस्तकालय का उपयोग करता हूं। इसे आपके Arduino IDE में इंस्टॉल करना होगा।

Wildfire.ino मुख्य प्रोजेक्ट फ़ाइल है, इसमें सेटअप () और लूप () फ़ंक्शन, साथ ही सभी योजनाओं के लिए कुछ अन्य सामान्य फ़ंक्शन शामिल हैं।

Wildfire.h सामान्य शीर्षलेख फ़ाइल है।

विभिन्न योजना फाइलों को परियोजना में अलग टैब के रूप में चिपकाया जा सकता है।

चरण 6: कार्रवाई में

Image
Image

चरण 7: आगे का विकास

  • एंड्रॉइड फोन के साथ वायरलेस संपर्क को सक्षम करने के लिए सिंगल बटन इंटरफेस को ईएसपी8266 से बदलें, जहां यूजर इंटरफेस योजनाओं को नियंत्रित करने के लिए एक वेब पेज है।
  • पट्टी में अभी भी कुछ 70 RGB SMD LED का उपयोग किया जाना बाकी है। यह 24 स्ट्रिप्स हैं जिनमें से प्रत्येक में 3 हैं। 24 और चैनलों को एक नए दृष्टिकोण की आवश्यकता है। इसके लिए एक Arduino Mega 2560 और कुछ और ULN2803AP चिप्स की आवश्यकता होगी, वैकल्पिक रूप से दो 16 चैनल सर्वो बोर्ड, जो अक्सर एलईडी के लिए उपयोग किए जाते हैं।
  • अप्रयुक्त मूल एलईडी पट्टी के साथ-साथ इसके रिसीवर के लिए रिमोट कंट्रोलर भी हैं। मैंने अभी तक रिसीवर नहीं खोला है, लेकिन शायद इसे किसी तरह पुन: उपयोग किया जा सकता है। कोई एक Arduino को अपने लॉजिक्स को हाईजैक करने दे सकता है और क्या यह लाइट शो को नियंत्रित करने के लिए Arduino को संख्यात्मक डेटा वितरित कर सकता है।

सिफारिश की: