विषयसूची:

XOD-संचालित रिचार्जेबल सोलर लैंप: 9 कदम (चित्रों के साथ)
XOD-संचालित रिचार्जेबल सोलर लैंप: 9 कदम (चित्रों के साथ)

वीडियो: XOD-संचालित रिचार्जेबल सोलर लैंप: 9 कदम (चित्रों के साथ)

वीडियो: XOD-संचालित रिचार्जेबल सोलर लैंप: 9 कदम (चित्रों के साथ)
वीडियो: IMEI नंबर से कैसे ढूंढे मोबाइल, CEIR Portal कर सकता है मदद 2024, नवंबर
Anonim
एक्सओडी-संचालित रिचार्जेबल सोलर लैंप
एक्सओडी-संचालित रिचार्जेबल सोलर लैंप

अधिकांश घरेलू सामान और हार्डवेयर स्टोर पर सस्ते सोलर गार्डन/वॉकवे लैंप उपलब्ध हैं। लेकिन जैसा कि पुरानी कहावत है, आमतौर पर आपको वही मिलता है जिसके लिए आप भुगतान करते हैं। उनके द्वारा उपयोग किए जाने वाले सामान्य चार्जिंग और रोशनी सर्किट सरल और सस्ते होते हैं, लेकिन आपको जो प्रकाश उत्पादन मिलता है वह प्रभावशाली होता है (और आपके वॉकवे का उपयोग करने वाले किसी भी व्यक्ति के लिए यह देखने के लिए कि वे कहां जा रहे हैं!)

ऑफ-ग्रिड लाइटिंग मॉड्यूल को डिजाइन करने का यह मेरा प्रयास है, जो एक महत्वपूर्ण सुधार है, जबकि अभी भी अपेक्षाकृत सस्ता है। इसे कुछ "दिमाग" देकर। XOD.io Arduino एम्बेडेड डेवलपमेंट प्लेटफॉर्म के साथ संगत एक नया IDE है, जहां आप ग्राफिक रूप से कोड "लिख" सकते हैं। पर्यावरण आपके ग्राफिकल स्केच को आधुनिक C++ में ट्रांसपाइल करता है, जो कॉम्पैक्ट कोड बनाने में उल्लेखनीय रूप से कुशल है, और अतिरिक्त बाहरी निर्भरता की आवश्यकता के बिना स्टॉक Arduino IDE के साथ पूरी तरह से संगत स्रोत उत्पन्न करता है। इस तरह सीमित कार्यक्रम और डेटा भंडारण संसाधनों वाले छोटे, सस्ते माइक्रोकंट्रोलर को भी जटिल कार्यों को करने के लिए नियोजित किया जा सकता है।

यह प्रोजेक्ट दिखाता है कि कैसे दो Arduino-संगत ATTiny85 माइक्रोकंट्रोलर एक साथ काम कर रहे हैं जिनका उपयोग लैंप की बिजली आवश्यकताओं को प्रबंधित करने के लिए किया जा सकता है। पहला प्रोसेसर बाहरी हार्डवेयर से संवेदन पर्यावरण डेटा को संभालता है, और दूसरा दिन के दौरान सूरज से सबसे अधिक ऊर्जा की कटाई करने की कोशिश करता है, और फिर रात में स्टोरेज बैटरी डिस्चार्ज के रूप में एक उच्च-शक्ति एलईडी की रोशनी को नियंत्रित करता है। दूसरा प्रोसेसर "फजी लॉजिक" नियंत्रण के एक कॉम्पैक्ट कार्यान्वयन के माध्यम से अपना काम पूरा करता है। दोनों चिप्स के लिए सॉफ्टवेयर विशेष रूप से XOD वातावरण में विकसित किया गया था।

चरण 1: आवश्यक सामग्री

Arduino IDE, नवीनतम संस्करण, "बोर्ड्स" प्रबंधक से स्थापित ATTinyCore एक्सटेंशन के साथ

Sparkfun USBTinyISP ATTiny प्रोग्रामर, 11801 या समकक्ष Sparkfun उत्पाद पृष्ठ

पोलोलू एडजस्टेबल लो-वोल्टेज बूस्ट कन्वर्टर शटडाउन इनपुट के साथ, U1V11A या समकक्ष पोलोलू उत्पाद पृष्ठ

हीटसिंक, कॉमन एनोड, एडफ्रूट 2524 या समकक्ष एडफ्रूट उत्पाद पेज के साथ हाई पावर व्हाइट या आरजीबी एलईडी

8-पिन डीआईपी पैकेज में माइक्रोचिप ATTiny85, 2 मूसर उत्पाद पृष्ठ

8 पिन डीआईपी आईसी सॉकेट, 2

थोक भंडारण संधारित्र, 16 वी 220 यूएफ

आउटपुट कैपेसिटर, 6.3v 47uF

वर्तमान-सीमित प्रतिरोधक, ५० ओम १/४ वाट

i2c पुल-अप रेसिस्टर्स, 4.7k, 2

पैनल वोल्टेज सेंस डिवाइडर रेसिस्टर्स, 1/4 वाट, 100k, 470k

करंट सेंस रेसिस्टर, १० ओम १⁄२ वॉट 1% टॉलरेंस

बाईपास कैपेसिटर, 0.1uF सिरेमिक, 2

2 3.7 v 100mAh लिथियम-आयन रिचार्जेबल बैटरी, PKCELL LP401 या समकक्ष

पैनल के लिए बैरल प्लग इनपुट जैक, 1

मिनी टर्मिनल ब्लॉक 3”x3” सोल्डर-पैड बोर्ड, और कनेक्शन बनाने के लिए पतले ठोस-कोर तार

परीक्षण के लिए लगभग निश्चित रूप से एक ऑसिलोस्कोप, मल्टीमीटर और बेंच बिजली की आपूर्ति की आवश्यकता होगी

चरण 2: पर्यावरण सेटअप

पर्यावरण सेटअप
पर्यावरण सेटअप

XOD वातावरण बॉक्स से बाहर प्रोसेसर की ATTiny श्रृंखला का समर्थन नहीं करता है, लेकिन Arduino ब्रह्मांड से कुछ तृतीय-पक्ष पुस्तकालयों का उपयोग करके AVR की इस श्रृंखला के लिए समर्थन जोड़ना सीधा है। पहला कदम Arduino IDE के "टूल्स → बोर्ड → बोर्ड मैनेजर" ड्रॉपडाउन मेनू से "ATTinyCore" लाइब्रेरी को स्थापित करना है। सुनिश्चित करें कि शामिल की गई छवि में दिखाई गई सेटिंग्स सही हैं - याद रखें कि किसी भी कोड को अपलोड करने से पहले आपको ब्राउनआउट वोल्टेज और क्लॉक स्पीड सेटिंग फ़्यूज़ को बदलने के लिए "बर्न बूटलोडर" को हिट करना होगा!

इस पुस्तकालय के लिए स्रोत कोड यहां उपलब्ध है:

भंडार से प्राप्त करने के लिए एक और सहायक पुस्तकालय "फिक्स्डपॉइंट्स" है, जो Arduino- समर्थित प्रोसेसर के लिए निश्चित बिंदु गणित का संकलन-समय कार्यान्वयन है। एटीटीनी में एसआरएएम और प्रोग्राम मेमोरी सीमित है, और यह फ्लोटिंग पॉइंट प्रकार के बजाय सामान्य डेटा स्टोरेज के लिए 2 बाइट पूर्णांक का उपयोग करने के लिए अंतिम स्केच आकार को कम करने में बहुत मदद करता है, जिसके लिए एवीआर पर 4 बाइट्स की आवश्यकता होती है। निष्पादन की गति में भी सुधार किया जाना चाहिए क्योंकि ATTiny में हार्डवेयर-गुणा इकाई नहीं है, बहुत कम हार्डवेयर फ़्लोटिंग पॉइंट!

स्रोत कोड यहां उपलब्ध है:

एक्सओडी ग्राफिकल स्केच कैसे बनाएं, ट्रांसपाइल और तैनात करने के तरीके पर ट्यूटोरियल: https://github.com/Pharap/FixedPointsArduino यह समझने में बहुत मदद करेगा कि शामिल स्रोत फाइलें कैसे बनाई गईं।

चरण 3: डिजाइन अवलोकन

डिजाइन अवलोकन
डिजाइन अवलोकन
डिजाइन अवलोकन
डिजाइन अवलोकन

बोर्ड पर दो ATTiny85 प्रोसेसर एक i2c इंटरफ़ेस के माध्यम से जुड़े हुए हैं, और सौर पैनल के वोल्टेज को समझने के लिए एक साथ काम करने के लिए उपयोग किया जाता है, पैनल को प्रकाशित करते समय बूस्ट कनवर्टर से बैटरी में प्रवाहित होता है, बैटरी वोल्टेज, और बैटरी तापमान।

बूस्ट कन्वर्टर टेक्सास इंस्ट्रूमेंट्स TPS6120 IC पर आधारित एक ऑफ-द-शेल्फ मॉड्यूल है, जो 0.5 वोल्ट जितना कम इनपुट वोल्टेज ले सकता है और इसे 2 वोल्ट से 5 वोल्ट तक कहीं भी बढ़ा सकता है। सेंसर कोर में कई कार्यात्मक ब्लॉक शामिल हैं। सोलर पैनल इनपुट से बूस्ट कन्वर्टर पर पावर लागू होते ही मास्टर क्लॉक चलने लगती है। यह स्केच निष्पादन शुरू करता है, और पहली बात यह निर्धारित करना है कि पैनल बैटरी को चार्जिंग करंट प्रदान करने के लिए पर्याप्त रूप से प्रकाशित है या नहीं।

सौर पैनल वोल्टेज दो डिजिटल फिल्टर के माध्यम से पारित किया जाता है, और यदि यह एक निश्चित सीमा से ऊपर है, तो सिस्टम यह निर्धारित करता है कि पैनल प्रकाशित है और मास्टर घड़ी को वर्तमान-संवेदी मॉनिटर में गेट करता है। यह चिप के डिजिटल कनवर्टर चैनल का एक एनालॉग है, जिसे अलग-अलग कॉन्फ़िगर किया गया है, जो बूस्ट कनवर्टर के आउटपुट और बैटरी इनपुट के बीच श्रृंखला में जुड़े 10 ओम 1% टॉलरेंस रेसिस्टर में वोल्टेज को महसूस करता है। जब पैनल को रोशन नहीं किया जाता है तो यह ATTiny दूसरे ATTiny को एक संकेत भेजता है जो इसे चार्जिंग पावर के बजाय LED पावर की निगरानी करने के लिए कहता है, और बूस्ट कन्वर्टर को बंद कर देता है और इनपुट को अलग कर देता है ताकि बैटरी पैनल के माध्यम से करंट बैक आउट न करे.

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

जब एलईडी रात में सक्रिय होती है तो यह एटीटीनी अपने दोस्त से भेजे गए बैटरी वोल्टेज डेटा और अपने स्वयं के ऑन-चिप तापमान सेंसर पर नज़र रखता है, ताकि यह अनुमान लगाया जा सके कि एलईडी में कितनी शक्ति को धक्का दिया जा रहा है (बैटरी वोल्टेज घट जाती है और चिप का तापमान इसके पिन से निकलने वाले करंट के साथ बढ़ता है।) LED PWM पैच से जुड़ा फ़ज़ी-लॉजिक नेटवर्क यह निर्णय लेने का प्रयास करता है कि बैटरी की शक्ति अभी भी कितनी उपलब्ध है, और बैटरी के समाप्त होने पर LED की तीव्रता कम हो जाती है।

चरण 4: XOD कोर लाइब्रेरी से कस्टम पैच बनाना

एक्सओडी कोर लाइब्रेरी से कस्टम पैच बनाना
एक्सओडी कोर लाइब्रेरी से कस्टम पैच बनाना
एक्सओडी कोर लाइब्रेरी से कस्टम पैच बनाना
एक्सओडी कोर लाइब्रेरी से कस्टम पैच बनाना

इस डिज़ाइन के लिए कई कस्टम पैच नोड्स का उपयोग किया गया था, जिनमें से कुछ को पूरी तरह से शामिल XOD नोड्स से आसानी से बनाया जा सकता है, और कुछ जिन्हें C ++ में लागू किया गया था।

चित्रों में दो कस्टम पैच नोड्स में से पहला एक एक्सपोनेंशियल मूविंग-औसत फ़िल्टर का कार्यान्वयन है। यह एक लो-ओवरहेड लो-पास डिजिटल फिल्टर है जिसका उपयोग स्केच में श्रृंखला में किया जाता है, एक बार लॉजिक कोर के लिए आने वाले सौर पैनल वोल्टेज को फ़िल्टर करने के लिए, और एक बार फिर ट्रिगर को खिलाने के लिए जो दीर्घकालिक परिवेश रोशनी निर्धारित करता है। घातीय चौरसाई पर विकिपीडिया प्रविष्टि देखें।

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

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

चरण 5: C++ का उपयोग करके कस्टम पैच बनाना

C++ का उपयोग करके कस्टम पैच बनाना
C++ का उपयोग करके कस्टम पैच बनाना

विशेष आवश्यकताओं के लिए जहां आवश्यक नोड कार्यक्षमता आसानी से ग्राफिक रूप से चित्रित करने के लिए बहुत जटिल होगी, या जो Arduino पुस्तकालयों पर निर्भर करती है जो स्टॉक Arduino पर्यावरण के मूल नहीं हैं, एक्सओडी कुछ सी/सी ++ ज्ञान वाले लोगों के लिए काटने के आकार के टुकड़े लिखना आसान बनाता है कोड जिसे तब किसी अन्य उपयोगकर्ता द्वारा बनाए गए या स्टॉक नोड के समान पैच में एकीकृत किया जा सकता है। फ़ाइल मेनू से "एक नया पैच बनाएं" का चयन करने से काम करने के लिए एक खाली शीट बन जाती है, और इनपुट और आउटपुट नोड्स को कोर लाइब्रेरी के "नोड्स" अनुभाग से खींचा जा सकता है। फिर "न-कार्यान्वित-इन-एक्सओडी" नोड को अंदर खींचा जा सकता है, और जब इसे क्लिक किया जाता है तो यह एक टेक्स्ट एडिटर लाएगा जहां सी ++ में आवश्यक कार्यक्षमता लागू की जा सकती है। आंतरिक स्थिति को कैसे संभालें और C++ कोड से इनपुट और आउटपुट पोर्ट्स तक कैसे पहुँचें, यहाँ कवर किया गया है।

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

तापमान सेंसर पैच को बेहतर अनुमान प्राप्त करने के लिए आपूर्ति वोल्टेज सेंसर के आउटपुट के साथ भी खिलाया जाता है - सेंसिंग कोर तापमान हमें एल ई डी में कितनी बिजली जलाई जा रही है, और आपूर्ति वोल्टेज पढ़ने के साथ संयुक्त होने का अनुमान लगाने की अनुमति देता है। बैटरी को बंद करने से यह अनुमान लगाया जा सकता है कि बैटरी की शक्ति कितनी शेष है। यह अति-सटीक होना जरूरी नहीं है; यदि कोर "जानता है" कि एल ई डी बहुत अधिक करंट खींच रहे हैं, लेकिन बैटरी वोल्टेज तेजी से गिर रहा है, तो शायद यह कहना सुरक्षित है कि बैटरी की शक्ति बहुत अधिक समय तक चलने वाली नहीं है, और यह दीपक को बंद करने का समय है।

चरण 6: निर्माण

निर्माण
निर्माण
निर्माण
निर्माण
निर्माण
निर्माण

मैंने थ्रू-होल भागों के लिए तांबे के पैड के साथ प्रोटोटाइप बोर्ड के एक छोटे से टुकड़े पर परियोजना का निर्माण किया। आईसी के लिए सॉकेट का उपयोग प्रोग्रामिंग/संशोधन/परीक्षण के लिए बहुत मदद करता है; स्पार्कफुन के USBTiny ISP के बोर्ड पर एक समान सॉकेट होता है, इसलिए दो चिप्स की प्रोग्रामिंग में प्रोग्रामर को पीसी USB पोर्ट में प्लग करना होता है, उपयुक्त बोर्ड और प्रोग्रामर सेटिंग्स के साथ शामिल Arduino.ino फ़ाइलों से ट्रांसपिल्ड XOD कोड अपलोड करना होता है, और फिर प्रोग्रामर सॉकेट से चिप्स को धीरे से हटाकर प्रोटोबार्ड सॉकेट में डालें।

Pololu TPS6120 आधारित बूस्ट कन्वर्टर मॉड्यूल पिन हेडर पर प्रोटोबार्ड में सोल्डर किए गए रिसर बोर्ड पर आता है, इसलिए नीचे कुछ घटकों को माउंट करके स्थान को बचाना संभव है। अपने प्रोटोटाइप पर मैंने दो 4.7k पुलअप रेसिस्टर्स को नीचे रखा। चिप्स के बीच i2c बस को सही ढंग से संचालित करने के लिए ये आवश्यक हैं - संचार उनके बिना सही काम नहीं करेगा! बोर्ड के दायीं ओर सोलर पैनल के प्लग के लिए इनपुट जैक और इनपुट स्टोरेज कैपेसिटर है। जितना संभव हो उतना कम प्रतिरोध पथ प्राप्त करने के लिए, जैक और इस टोपी को सीधे सोल्डर के "रन" के माध्यम से जोड़ने का प्रयास करना सबसे अच्छा है, हुकअप तार नहीं। सॉलिड सोल्डर के रन का उपयोग स्टोरेज कैपेसिटर के पॉजिटिव टर्मिनल को सीधे बूस्ट मॉड्यूल के इनपुट वोल्टेज टर्मिनल से जोड़ने के लिए किया जाता है, और बूस्ट मॉड्यूल के ग्राउंड पिन को सीधे जैक के ग्राउंड पिन से जोड़ा जाता है।

दो ATTinys के लिए सॉकेट के दाईं और बाईं ओर 0.1uF डेस्पिक/डिग्लिचिंग कैपेसिटर हैं। इन घटकों को बाहर नहीं छोड़ना भी महत्वपूर्ण है, और आईसी पावर और ग्राउंड पिन से जितना संभव हो उतना छोटा और निर्देशित पथ से जुड़ा होना चाहिए। 10 ओम करंट सेंस रेसिस्टर बाईं ओर है, यह बूस्ट कन्वर्टर से आउटपुट के अनुरूप जुड़ा है और प्रत्येक पक्ष एक सेंसर कोर इनपुट पिन से जुड़ा है - इन पिनों को परोक्ष रूप से मापने के लिए एक अंतर एडीसी के रूप में काम करने के लिए सेट किया गया है। बैटरी में करंट। i2c बस के लिए IC पिन और बूस्ट कन्वर्टर शटडाउन पिन आदि के बीच कनेक्शन प्रोटोबार्ड के नीचे हुकअप वायर का उपयोग करके बनाया जा सकता है, इसके लिए बहुत पतला सॉलिड-कोर हुकअप वायर बहुत अच्छा काम करता है। यह परिवर्तनों को आसान बनाता है और शीर्ष पर छेद के बीच कूदने वालों की तुलना में बहुत अधिक साफ दिखता है।

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

चरण 7: परीक्षण, भाग 1

परीक्षण, भाग १
परीक्षण, भाग १

Arduino वातावरण से USB प्रोग्रामर के माध्यम से शामिल स्केच फ़ाइलों के साथ ATTiny IC दोनों को प्रोग्रामिंग करने के बाद यह परीक्षण करने में मदद करता है कि सौर पैनल से बैटरी को चार्ज करने की कोशिश करने से पहले प्रोटोटाइप पर दो कोर ठीक से काम कर रहे हैं। आदर्श रूप से इसके लिए एक बुनियादी आस्टसीलस्कोप, मल्टीमीटर और बेंच बिजली की आपूर्ति की आवश्यकता होती है।

जांच करने वाली पहली बात यह है कि संभावित नुकसान से बचने के लिए आईसी, बैटरी और पैनल को उनके सॉकेट में प्लग करने से पहले बोर्ड पर कहीं भी शॉर्ट सर्किट नहीं हैं! ऐसा करने का सबसे आसान तरीका एक बेंच बिजली की आपूर्ति का उपयोग करना है जो उस स्थिति के मामले में अपने आउटपुट करंट को सुरक्षित मूल्य तक सीमित कर सकता है। मैंने अपने बेंच सप्लाई सेट का इस्तेमाल ३ वोल्ट और १०० mA की सीमा पर किया जो सौर पैनल इनपुट जैक टर्मिनलों से सकारात्मक और नकारात्मक बिजली आपूर्ति लीड से जुड़ा है। निष्क्रिय घटकों के अलावा कुछ भी स्थापित नहीं होने के कारण, बिजली आपूर्ति के वर्तमान मॉनिटर पर बोलने के लिए अनिवार्य रूप से कोई वर्तमान ड्रॉ पंजीकृत नहीं होना चाहिए। यदि महत्वपूर्ण वर्तमान प्रवाह है, या आपूर्ति वर्तमान-सीमित में जाती है, तो कुछ गलत हो गया है और यह सुनिश्चित करने के लिए बोर्ड की जांच की जानी चाहिए कि उलट ध्रुवीयता के साथ कोई गलत कनेक्शन या कैपेसिटर नहीं हैं।

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

चरण 8: परीक्षण, भाग 2

परीक्षण, भाग 2
परीक्षण, भाग 2
परीक्षण, भाग 2
परीक्षण, भाग 2

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

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

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

चरण 9: फजी लॉजिक पर परिशिष्ट

फजी लॉजिक पर परिशिष्ट
फजी लॉजिक पर परिशिष्ट

फ़ज़ी लॉजिक एक मशीन लर्निंग तकनीक है जिसका उपयोग हार्डवेयर सिस्टम के नियंत्रण में किया जा सकता है जहाँ सिस्टम के कई मापदंडों को नियंत्रित करने में अनिश्चितता होती है, जिससे लक्ष्य के लिए आउटपुट कंट्रोल सॉल्यूशन के लिए एक स्पष्ट इनपुट गणितीय रूप से लिखना मुश्किल हो जाता है। यह तार्किक मूल्यों का उपयोग करके पूरा किया जाता है जो 0 (झूठे) और 1 (सत्य) के बीच कहीं आते हैं, एक मूल्य में अनिश्चितता व्यक्त करते हैं जैसे कि एक मानव ("ज्यादातर सच" या "वास्तव में सच नहीं") और ए ग्रे क्षेत्र की अनुमति देता है उन कथनों के बीच जो १००% सत्य और १००% असत्य हैं। जिस तरह से इसे पूरा किया जाता है, वह पहले इनपुट चर के नमूने लेने के माध्यम से होता है, जिस पर निर्णय लेने की आवश्यकता होती है और उन्हें "फ़्यूज़िंग" करना पड़ता है।

किसी भी फजी लॉजिक सिस्टम का दिल एक "फजी साहचर्य स्मृति" है। यह एक मैट्रिक्स की याद दिलाता है, जहां बैटरी चार्जिंग सर्किट के मामले में 0 और 1 के बीच के मानों का 3x3 सेट संग्रहीत किया जाता है। मैट्रिक्स में मूल्यों को मोटे तौर पर इस बात से जोड़ा जा सकता है कि एक मानव इस बारे में क्या तर्क देगा कि बूस्ट कन्वर्टर के SHTDN पिन को नियंत्रित करने वाला PWM कारक क्या होना चाहिए, यह इस बात पर निर्भर करता है कि उपरोक्त सदस्यता फ़ंक्शन इनपुट के दिए गए सेट को कैसे योग्य बनाता है। उदाहरण के लिए यदि पैनल इनपुट वोल्टेज अधिक है, लेकिन बैटरी में प्रवाहित होने वाली धारा कम है, तो शायद इसका मतलब है कि अधिक शक्ति खींची जा सकती है और पीडब्लूएम सेटिंग इष्टतम नहीं है और इसे बढ़ाया जाना चाहिए। इसके विपरीत, यदि पैनल वोल्टेज कम हो जाता है, लेकिन चार्जर अभी भी एक बड़े करंट को बैटरी पावर में धकेलने का प्रयास कर रहा है, तो यह भी बर्बाद हो जाएगा, इसलिए पीडब्लूएम सिग्नल को बूस्ट कन्वर्टर में कम करना सबसे अच्छा होगा। एक बार जब इनपुट सिग्नल एक फ़ज़ी सेट में "फ़ज़ीफ़ाइड" हो जाते हैं, तो उन्हें इन मानों से गुणा किया जाता है, जिस तरह से एक वेक्टर को मैट्रिक्स से गुणा किया जाता है, एक रूपांतरित सेट उत्पन्न करने के लिए जो इस बात का प्रतिनिधि है कि "ज्ञान" में कितनी भारी मात्रा है सेल मैट्रिक्स के अंतिम संयोजन फ़ंक्शन में फ़ैक्टर किया जाना चाहिए।

"नहीं-कार्यान्वित-इन-एक्सओडी" नोड का उपयोग करना जो एक्सओडी नोड्स को अनुमति देता है जो कस्टम कार्यक्षमता को लागू करने के लिए स्टॉक बिल्डिंग ब्लॉक से उचित होने के लिए बहुत जटिल हैं, और थोड़ा सा Arduino- शैली सी ++, सहयोगी मेमोरी, वेटिंग फ़ंक्शन, और " fuzzifier" इस संदर्भ में वर्णित ब्लॉकों के समान है: https://www.drdobbs.com/cpp/fuzzy-logic-in-c/184408940 बनाना आसान है, और प्रयोग करना बहुत आसान है।

सिफारिश की: