गहरी नींद मोड से जागना


13

अधिकांश माइक्रोकंट्रोलर (जैसे AVRs, MSP430s, PICs, आदि) विभिन्न स्लीप मोड का समर्थन करते हैं। "सबसे गहरी" स्लीप मोड वह है जो सबसे कम पॉवर ड्रॉ (जैसे "पॉवर डाउन", "शट डाउन") को पार करता है, लेकिन सभी घड़ी सिस्टम आमतौर पर इन मोड में रुके हुए हैं और यह मुझे लगता है कि एकमात्र तरीका है " उनमें से "जागना" बाहरी उत्तेजना के माध्यम से होता है (जैसे पिन परिवर्तन में रुकावट, चिप रीसेट)। क्या मैं कुछ भूल रहा हूँ? क्या MCU के लिए आवधिक वेकअप सिग्नल उत्पन्न करने की बहुत कम शक्ति विधियां हैं?

मेरा लक्ष्य मान लेना है कि बिजली की खपत कम से कम करें (यानी जितनी देर तक गहरी नींद लें, जितना हो सके थोड़ी देर रुकें), जबकि समय-समय पर किसी कार्य को करने के लिए जागना, इस प्रकार के व्यवहार को प्राप्त करने का सामान्य तरीका क्या है? मामलों को और सरल बनाने के लिए, मान लें कि मेरा फ़ंक्शन स्टेटलेस है (मुझे इसे निष्पादित करने के लिए अतीत से कुछ भी याद नहीं रखना है)।

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

मैंने अभी तक AVR के साथ इस दृष्टिकोण की कोशिश नहीं की है, लेकिन मुझे लगता है कि MST430 की तुलना में AVR में WDT अधिक "पावर भूखा" है, इसलिए यह कम बिजली के काम के लिए कम आकर्षक हो सकता है। शायद कम शक्ति के लिए एक "सार्वभौमिक" दृष्टिकोण नहीं है, और आपको किसी दिए गए उत्पाद लाइन द्वारा खर्च किए गए उपकरणों का उपयोग करना होगा? मुझे पता है कि नई picoPower लाइन में इवेंट सिस्टम और स्लीप वॉकिंग जैसे बहुत सारे धमाकेदार फीचर हैं, कुछ मामलों में शायद ही आपको सीपीयू को जागृत करने की आवश्यकता होती है यदि आप अपने एप्लिकेशन को उस संरचना में फिट कर सकते हैं ...

ठीक है मेरे भटकने के काफी, यहाँ क्या कहना होगा :)

संपादित तकनीक को दर्शाता हुआ कंक्रीट उदाहरण भी शांत होगा!


2
क्या आपने फ़ोकस देखा है ।ti.com/lit/wp/slay015/slay015.pdf ? निरपेक्ष नींद शक्ति संख्या के पास कुछ दिलचस्प बिंदु।
एक्सटीएल

जवाबों:


15

अधिकांश माइक्रोस कुछ कम शक्ति वाले 32.768 kHz घड़ी क्रिस्टल थरथरानर का समर्थन करते हैं जिसमें कुछ प्रकार के प्रिस्कलर और टाइमर की बाधा होती है। प्रीस्कूलर सेट करें ताकि टाइमर धीरे-धीरे गिनती कर रहा है और आप जो चाहते हैं उस अवधि में बाधा उत्पन्न होती है।

कुछ माइक्रोएस में बिल्ट-इन कम-पावर आरसी टाइमर भी होता है यदि सटीक समय महत्वपूर्ण नहीं है।

किसी भी कम-पावर माइक्रो के लिए डेटशीट 32.768 ऑसिलेटर (और कुछ नहीं) के साथ पावर को सूचीबद्ध करेगी। यह शून्य के काफी करीब है। आप यह देखने के लिए गणित कर सकते हैं कि क्या यह स्वीकार्य है, और इसे पहरेदार द्वारा खींचे गए वर्तमान से तुलना करें।

ठीक है, उदाहरण के लिए msp430f2013 पर, चलो डेटाशीट में शक्ति को देखते हैं।

0.5 μA लगभग शून्य है, हालांकि यह वास्तविक OFF मोड से पांच गुना अधिक है।

अधिक विवरण के लिए, हम डेटाशीट के अंदर देख सकते हैं।
LPM4 (सब कुछ बंद) से LPM3 (ऑसिलेटर को चलाने) पर जाना 0.5 μA और 1 μA के बीच का अंतर है।

मान लीजिए कि 225 mAh क्षमता वाली बैटरी CR2032 है। फिर एलपीएम 4 में स्टैंडबाय लगभग 50 साल और एलपीएम 3 में करीब 25 साल है। 25 साल कई अनुप्रयोगों के लिए पर्याप्त है, क्योंकि चालू (माप के दौरान) खपत पर हावी है।

वैकल्पिक शब्द


एक ठोस उदाहरण लेने के लिए स्वतंत्र महसूस करें ... :)
vicatcu

msp430f2013 और cr2032 सेल के लिए किया गया।
मार्क

हम 32768 पर ACLK के साथ अपने काम में Cr2032 का उपयोग करते हैं, हर 2 सेकंड में जागते हैं। हम हर 90 सेकंड में एक ट्रांसीवर का उपयोग करते हैं। हम हर 10 सेकंड में एक अस्थायी माप लेते हैं। हम एक नए CR2032 के साथ 4 साल से अधिक समय तक रह सकते हैं।
Kortuk

3

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


3

RTCs वाले PIC में RTC एक अलार्म स्थिति में सेट हो सकता है, इसलिए यह एक बाहरी समय 32.768kHz क्रिस्टल के साथ MCU को जगाएगा। वे RTC + स्लीप मोड में ~ 450nA IIRC आकर्षित करते हैं, लेकिन केवल RTC के साथ 20nA।


3

AVR वॉचडॉग टाइमर उतना बुरा नहीं है जितना आप सोचते हैं। ATTiny13A डेटाशीट के अनुसार, पावर डाउन मोड @ 3V में वर्तमान ड्रा WDT सक्षम किए बिना 2μA है, और 4μA के साथ। ज़रूर, यह 2x अधिक है, लेकिन ऑपरेशन के लगभग 6.2 वर्षों के लिए वर्तमान ही काफी छोटा है, जो लगभग उसी समय के आसपास होता है जब बैटरी को अपने आप से वैसे भी नीचा दिखाने के लिए ले जाता है (स्रोत: सर्वश्रेष्ठ-पहले की तारीख)।

इसके अतिरिक्त, व्यावहारिक रूप से आप μC के आसपास हुक अप करने के लिए बहुत अधिक आकर्षित करेंगे। वास्तव में, इस तरह के एक कम-शक्ति सर्किट को डिजाइन करने का पेचीदा हिस्सा नींद की अवधि के दौरान योजनाबद्ध के सभी वर्तमान को बंद कर रहा है।

यदि स्मृति कार्य करती है, तो जागने की देरी भी ~ 12ms से 8s तक अच्छी तरह से विन्यास योग्य है। वास्तविक आवृत्ति में कोई फर्क नहीं पड़ता है अगर छोटी रुकावट दिनचर्या का उपयोग किया जाता है: मैं एडीसी को चालू करने, 1K पॉट का नमूना लेने, परिणामों से कुछ सामान की गणना करने और समग्र उपभोग में कोई ध्यान देने योग्य परिवर्तन के साथ सोने के लिए वापस जाने के साथ दूर हो गया () मेरी मल्टीमीटर की सुस्ती की भरपाई के लिए एक बड़े संधारित्र के साथ चिकनी)।

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.