यदि आप अपने रास्पबेरी पाई पिको डब्ल्यू को बहुत लंबे समय तक चलाते हैं, तो संभावना है कि आप अंततः देखेंगे कि आपका प्रोग्राम अब नहीं चल रहा है।
कार्यक्रमों के लंबे समय तक विफल होने का एक कारण वाई-फाई की विश्वसनीयता शामिल है। यदि आपका वाई-फाई अविश्वसनीय हो जाता है, तो पिको डब्ल्यू की पहली वृत्ति दुर्घटनाग्रस्त हो जाती है।
आइए देखें कि हम माइक्रोपायथन में पिको डब्ल्यू को अधिक लचीला कैसे बना सकते हैं।
पिको डब्ल्यू पर वाई-फाई की विश्वसनीयता का क्या कारण है?
आपका वाई-फाई दिन में कई बार डिस्कनेक्ट हो रहा है। इसे अपने फोन या पीसी पर समझना मुश्किल है क्योंकि ऑपरेटिंग सिस्टम और सॉफ्टवेयर वाई-फाई नेटवर्क की इस गारंटीकृत कमी के लिए जिम्मेदार हैं।
पिको डब्ल्यू के साथ, यदि आपका पिको डब्ल्यू अपना कनेक्शन खो देता है तो डेटा को जोड़ने और लाने वाली एक साधारण स्क्रिप्ट क्रैश हो जाएगी। एकमात्र उपाय यह है कि शक्ति खींचकर इसे हार्ड रीसेट कर दिया जाए।
यदि आपके प्रोजेक्ट को एक समय में घंटों के लिए लॉगिंग डेटा की आवश्यकता होती है, तो आप लगातार आउटेज की निगरानी नहीं करना चाहेंगे।
त्रुटि प्रबंधन यह सुनिश्चित करने की कुंजी है कि आपका प्रोग्राम खराब कनेक्शन के माध्यम से जीवित रह सकता है।
क्या वाई-फाई सिग्नल की शक्ति में सुधार से मदद मिलेगी?
आप विचार कर रहे होंगे क्या आपको मेश नेटवर्क का उपयोग करना चाहिए सिग्नल की शक्ति बढ़ाने के लिए। हां, यह मदद करेगा, लेकिन उस हद तक नहीं जहां आप उन परिदृश्यों से बच सकते हैं जहां कनेक्शन में गिरावट है।
एक प्रयोग में, हमने एक पिको डब्ल्यू को एक घर की दूसरी मंजिल पर एक स्थान पर और दूसरे पिको डब्ल्यू को वाई-फाई राउटर के बगल में रखा। परिणाम में अंतर यह है कि राउटर के करीब स्थित पिको डब्ल्यू की तुलना में दूसरी मंजिल पर डिवाइस पहले डिस्कनेक्ट हो गया। बाद में अंततः एक गिरा हुआ कनेक्शन भी था, जैसा कि डेटा एकत्रण में अंतराल से परिलक्षित होता है।
दुर्भाग्य से, सिग्नल की शक्ति में सुधार करते समय समस्या कम हो जाती है, यह इसे हल नहीं करती है। तो आइए अधिक लचीला कोड लिखने के कुछ तरीकों पर गौर करें।
कनेक्ट और डिस्कनेक्ट सॉफ्टवेयर विधि
यदि आपकी परियोजना के लिए केवल एक तरफ़ा संचार की आवश्यकता है, तो यह विधि उसके लिए एकदम सही होगी। कुछ उदाहरण तापमान लकड़हारे होंगे जिन्हें लंबे समय तक चलाने की आवश्यकता होती है लेकिन कुछ ही समय में केवल एक बार डेटा लॉग करता है।
जब आपका पिको डब्ल्यू सोचता है कि यह जुड़ा हुआ है, तो यह क्रैश होने की समस्या को हल करता है, लेकिन जब यह एंडपॉइंट पर डेटा भेजने का प्रयास करता है, तो यह पता चलता है कि यह ऑफ़लाइन है, फिर क्रैश हो जाता है।
इस पद्धति की कुंजी में एक प्रक्रिया शामिल है जहां आपका प्रोग्राम अनंत लूप में चलता है। इस लूप के भीतर एक ऐसा कार्य है जो एक निश्चित समय बीत जाने के बाद चलेगा। यह फ़ंक्शन पिको डब्ल्यू को वाई-फाई से कनेक्ट करेगा, अपना काम करेगा (उदाहरण के लिए सर्वर को डेटा भेजें), फिर डिस्कनेक्ट करें।
सॉफ्टवेयर हार्ड रीसेट
MicroPython के हार्ड रीसेट कोड का उपयोग करने से आपको यह सुनिश्चित करने में मदद मिल सकती है कि आपके हस्तक्षेप न करने पर भी आपका Pico W चलता रहेगा। हमारा देखें माइक्रोपायथन का परिचय अगर आपको मदद की ज़रूरत है, तो यह कमांड चलाएँ:
आयात मशीन
मशीन।रीसेट()
मान लीजिए कि आप सोते समय आधी रात को कनेक्शन खो देते हैं। यदि आपके पास सॉफ़्टवेयर हार्ड रीसेट नहीं था, तो आपको प्रोग्राम को सुबह मैन्युअल रूप से रीसेट करना होगा। इससे आठ घंटे की डेटा-लॉगिंग हानि हो सकती है।
यदि आपके पास एक सॉफ़्टवेयर हार्ड रीसेट है, जिसे आपने अपने एरर हैंडलिंग कोड ब्लॉक में डाल दिया है, तो Pico W अपने आप रीसेट हो जाएगा।
इसका नकारात्मक पक्ष यह है कि हार्ड रीसेट पर, आपके प्रोग्राम की स्थिति खो जाएगी और यदि आपका प्रोग्राम क्रैश हो जाता है, तो सॉफ़्टवेयर हार्ड रीसेट ट्रिगर नहीं होगा।
पिको डब्ल्यू के बिल्ट-इन वॉचडॉग टाइमर का उपयोग करें
एक हार्डवेयर वॉचडॉग टाइमर मूल रूप से एक उपकरण है जो आपके पिको डब्ल्यू को खराब होने पर रीसेट कर देगा। वॉचडॉग टाइमर काउंटडाउन टाइमर हैं। यदि उलटी गिनती शून्य होने से पहले उन्हें संकेत मिलता है, तो उलटी गिनती रीसेट हो जाती है। हालाँकि, यदि उलटी गिनती शून्य हो जाती है, तो यह पिको डब्ल्यू को रीसेट कर देगा।
MicroPython में, मूल कोड इस प्रकार है:
से मशीन आयात डब्ल्यू.डी.टी
डब्ल्यूडीटी = डब्ल्यूडीटी (टाइमआउट =1000) #timeout एमएस में है
wdt।खिलाना() #रीसेटउलटी गिनती
आप दर्शन कर सकते हैं MicroPython का WDT दस्तावेज़ीकरण अधिक जानने के लिए और भी सी++ मार्गदर्शन के लिए पिको का आधिकारिक एसडीके डॉक्स.
अपने पिको डब्ल्यू के कनेक्शन को बॉम्बप्रूफ बनाएं
अपने पिको डब्ल्यू को वाई-फाई कनेक्शन पर अनिश्चित काल तक चलने का सबसे अच्छा मौका देने के लिए, आपको कई काम करने होंगे।
सबसे पहले, सुनिश्चित करें कि वाई-फाई कनेक्शन यथोचित रूप से मजबूत है। जबकि कोड वाई-फाई के साथ कुछ चुनौतियों को कम कर सकता है, उपयोग की जाने वाली विधि के आधार पर, यह कभी-कभी खोई हुई प्रोग्राम स्थिति या खोए हुए डेटा बिंदुओं के परिणामस्वरूप हो सकता है।
दूसरे, प्रोग्राम को गिराए गए वाई-फाई कनेक्शन से पुनर्प्राप्त करने के लिए कुछ विधि की आवश्यकता होती है ताकि आप निरंतर सेवा प्राप्त कर सकें।
इन कदमों के साथ, आप अपने पिको डब्ल्यू से अधिक विश्वसनीय कनेक्टिविटी के बारे में आश्वस्त हो सकते हैं।