विषयसूची:
- चरण 1: NRF24L01 मॉड्यूल और सर्किट को तार करना
- चरण 2: ट्रांसमीटर को कोड करना
- चरण 3: रिसीवर को कोड करना
- चरण 4: हो गया
वीडियो: फोटोरेसिस्टर का उपयोग कर वायरलेस Arduino लाइट-मिलान एलईडी लैंप: 4 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:22
यह निर्देश योग्य विवरण Arduino Unos और एक photoresistor का उपयोग करके एक अल्पविकसित वायरलेस लाइट-सेंसिंग एलईडी लैंप के निर्माण के लिए आवश्यक चरणों का विवरण देता है। इस उपकरण के लिए एक संभावित अनुप्रयोग एक ऐसे कमरे को रोशन करना होगा जिसमें कृत्रिम सूर्य के प्रकाश के साथ खिड़कियां नहीं हैं, वास्तविक समय में वास्तविक प्रकाश व्यवस्था की स्थिति से मेल खाते हैं। आएँ शुरू करें!
आपूर्ति सूची:
अरुडिनो यूनो x2
NRF24L01 वायरलेस ट्रांसीवर x2 (वैकल्पिक - NRF24L01 बैकपैक x2)
TIP120 डार्लिंगटन ट्रांजिस्टर
फोटोरेसिस्टर
5 मिमी एलईडी x3
दबाने वाला बटन
100 ओम रोकनेवाला x3
10k ओम रोकनेवाला x3
विभिन्न जम्पर तार
चरण 1: NRF24L01 मॉड्यूल और सर्किट को तार करना
इस प्रोजेक्ट में, एक Arduino ट्रांसमीटर के रूप में कार्य करेगा, पुशबटन दबाए जाने पर फोटोरेसिस्टर से लाइट लेवल डेटा भेज रहा है। अन्य Arduino एक रिसीवर के रूप में काम करेगा, उस डेटा को ले जाएगा और इसे सिग्नल में एल ई डी में बदल देगा। पहली छवि ट्रांसमीटर आरेख दिखाती है, और दूसरी रिसीवर दिखाती है।
नोट: मेरे प्रोजेक्ट की तस्वीरों में, आप देखेंगे कि NRF24L01 ट्रांसीवर दूसरे PCB से जुड़े हुए हैं। यह ट्रांसीवर्स के लिए बैकपैक मॉड्यूल है, जो पावर रेगुलेटर के रूप में कार्य करता है। वायरिंग को आसान बनाने के अलावा, ये बैकपैक्स NRF24L01 के लिए पावर इनपुट को विनियमित करते हैं, जिससे 5V बिजली की आपूर्ति का उपयोग किया जा सकता है। मैंने स्पष्टता के लिए इन बैकपैक्स को अपने आरेख में छोड़ दिया है।
(यदि आप बैकपैक्स का उपयोग करने का निर्णय लेते हैं, तो स्टॉक NRF24L01 के संदर्भ में पिन स्थानों के आरेख के लिए कृपया इस लिंक को देखें)।
आसान ज़ूमिंग/विस्तृत देखने के लिए सर्किट की एक पीडीएफ प्रति नीचे संलग्न है।
चरण 2: ट्रांसमीटर को कोड करना
अंतिम चरण कोडिंग है। NRF24L01 मॉड्यूल के उपयोग के लिए आपको RadioHead पुस्तकालय या समकक्ष पुस्तकालय स्थापित करने की आवश्यकता होगी।
इस परियोजना के लिए, ट्रांसमीटर और रिसीवर Arduinos प्रत्येक पर अलग-अलग कोड का उपयोग करते हैं। यहाँ ट्रांसमीटर के लिए कोड है:
मैंने सुविधा के लिए.ino फ़ाइल (NRF_Send) भी संलग्न की है।
#शामिल
#शामिल
RH_NRF24 nrf24; // ट्रांसीवर को nrf24 के रूप में प्रारंभ करना
इंट बटन = 5; // बटन और फोटोरेसिस्टर के लिए पिन मान सेट करना
इंट प्रीसिस्टर = ए0; इंट वैल्यू = 0; // 0-1023 से प्रकाश का मान
व्यर्थ व्यवस्था()
{ सीरियल.बेगिन (९६००); पिनमोड (बटन, इनपुट); पिनमोड (pResistor, INPUT); if (!nrf24.init ()) // यदि मॉड्यूल का प्रारंभ विफल हो जाता है तो उपयोगकर्ता को अलर्ट करता है Serial.println ("init विफल"); // init के बाद डिफ़ॉल्ट 2.402 GHz (चैनल 2), 2Mbps, 0dBm हैं अगर (!nrf24.setChannel(1)) Serial.println("setChannel विफल"); अगर (!nrf24.setRF(RH_NRF24::DataRate2Mbps, RH_NRF24::TransmitPower0dBm)) Serial.println ("setRF विफल"); }
शून्य लूप ()
{ अगर (डिजिटलरेड (बटन)) {// बटन दबाया जाता है तो एक संदेश भेजें मूल्य = एनालॉग रीड (pResistor); // फोटोरेसिस्टर का मूल्य पढ़ें (0-1023) uint8_t डेटा = {मान}; // "डेटा " नामक एक सरणी सेट करता है जिसमें प्रकाश मान nrf24.send (डेटा, आकार (डेटा)) होता है; // रिसीवर को सरणी भेजें nrf24.waitPacketSent (); // तब तक प्रतीक्षा करें जब तक पैकेट भेजा नहीं गया है Serial.println ("लाइट वैल्यू:" + स्ट्रिंग (वैल्यू)); // सीरियल मॉनिटर में लाइट वैल्यू प्रिंट करें}}
चरण 3: रिसीवर को कोड करना
रिसीवर के लिए, कोड रेडियोहेड लाइब्रेरी का भी उपयोग करता है।
#शामिल
#शामिल
RH_NRF24 nrf24;
इंट एलईडीपिन = 3;
इंट वैल्यू = 0; // 0-1023 से प्रकाश का मान
व्यर्थ व्यवस्था()
{ सीरियल.बेगिन (९६००); पिनमोड (LEDPin, OUTPUT); अगर (! nrf24.init ()) Serial.println ("init विफल"); // init के बाद डिफ़ॉल्ट 2.402 GHz (चैनल 2), 2Mbps, 0dBm हैं अगर (!nrf24.setChannel(1)) Serial.println("setChannel विफल"); अगर (!nrf24.setRF(RH_NRF24::DataRate2Mbps, RH_NRF24::TransmitPower0dBm)) Serial.println ("setRF विफल"); }
शून्य लूप ()
{// संदेश की प्रतीक्षा करें uint8_t buf[RH_NRF24_MAX_MESSAGE_LEN]; // प्राप्त संदेश को "buf" नामक एक सरणी के रूप में संग्रहीत करें uint8_t len = sizeof(buf); // buf के आकार को "लेन" के रूप में संग्रहीत करें, जबकि (nrf24.waitAvailableTimeout (200) && nrf24.recv (buf, & len))]; // buf की पहली अनुक्रमणिका के लिए मान सेट करता है, जो photoresistor analogWrite(LEDPin, map(value, 0, 1023, 0, 255) से int है); // PWM पिन को LED ब्राइटनेस Serial.println (स्ट्रिंग (वैल्यू)) के लिए 0-255 के बीच स्केल किए गए मान को आउटपुट करने के लिए सेट करता है; } AnalogWrite(LEDPin, 0); }
चरण 4: हो गया
विभिन्न प्रकाश स्तरों के साथ खेलने का आनंद लें और एलईडी को उनसे मेल खाते हुए देखें! फोटोरेसिस्टर कभी-कभी बारीक हो सकता है, और एक स्थानीय प्रकाश स्रोत के साथ एक अंधेरे कमरे में सबसे अच्छा काम करता है (लेकिन सूरज के साथ भी बाहर काम कर सकता है)।
सिफारिश की:
ऑर्डिनो के साथ एक एलईडी लाइट करने के लिए एक फोटोरेसिस्टर का उपयोग कैसे करें: 12 कदम
ऑर्डिनो के साथ एक एलईडी लाइट करने के लिए एक फोटोरेसिस्टर का उपयोग कैसे करें: आप सभी Arduino-उत्साही को सुप्रभात / दोपहर / शाम! आज, मैं यह प्रदर्शित करने जा रहा हूं कि एक एलईडी को जलाने के लिए एक फोटोरेसिस्टर (फोटोकेल) का उपयोग कैसे करें। इस निर्देश के साथ प्रदान किया गया कोड एलईडी को सामान्य रूप से मंद होने देगा, लेकिन पलक झपकते ही झपकाएगा
वायरलेस Arduino रोबोट HC12 वायरलेस मॉड्यूल का उपयोग कर रहा है: 7 कदम
वायरलेस Arduino रोबोट HC12 वायरलेस मॉड्यूल का उपयोग कर रहा है: हे दोस्तों, वापस स्वागत है। अपनी पिछली पोस्ट में, मैंने समझाया था कि एच ब्रिज सर्किट क्या है, L293D मोटर ड्राइवर IC, उच्च वर्तमान मोटर ड्राइवरों को चलाने के लिए L293D मोटर ड्राइवर IC को पिगबैक करना और आप अपना L293D मोटर ड्राइवर बोर्ड कैसे डिज़ाइन और बना सकते हैं
अपने पुराने सीएफएल लैंप को एलईडी लैंप में बदलें: 10 कदम
अपने पुराने सीएफएल लैंप को एलईडी लैंप में बदलें: पहले पूरा वीडियो देखें फिर आपको सब कुछ समझ में आ जाएगा
8x 10 मिमी या 5 मिमी गर्म सफेद एलईडी का उपयोग कर एलईडी सीडी लाइट: 12 कदम
एलईडी सीडी लाइट 8x 10 मिमी या 5 मिमी गर्म सफेद एलईडी का उपयोग करना: हरे रंग में जाना मेरे लिए एक बड़ी बात है … रीसाइक्लिंग के साथ। इस परियोजना के साथ आप अवांछित सीडी का पुनर्चक्रण करेंगे और अपनी बिजली की खपत को कम करेंगे। मैं इन्हें अपने सोलर सेट से चलाता हूं और अब 4 महीने से पावर ग्रिड से दूर हूं। मेरे पास बहुत
12v 12x एलईडी डिस्क का उपयोग कर एलईडी हलोजन लाइट वार्तालाप: 10 कदम
12v 12x एलईडी डिस्क का उपयोग करके एलईडी हलोजन लाइट वार्तालाप: यहां एक आसान तरीका है जिससे आप अपनी हैलोजन रोशनी को एलईडी रोशनी में परिवर्तित कर सकते हैं। ये मोटरहोम/कारवां या आपके पास मौजूद किसी भी 12v डीसी सिस्टम, सौर, पवन या हाइड्रो … या यहां तक कि सिर्फ अपनी कार में उपयोग करने के लिए बहुत अच्छे हैं। ये एलईडी डिस्क जो मैंने यहां १२-१ पर चलाई हैं