विषयसूची:
वीडियो: IoT के लिए TinyLiDAR: ३ चरण
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:22
यदि आप अपने आस-पास देखें, तो आप देखेंगे कि रोजमर्रा की जिंदगी में बहुत सारे स्मार्ट छोटे उपकरणों का उपयोग किया जा रहा है। वे आम तौर पर बैटरी चालित होते हैं और आमतौर पर किसी न किसी तरह इंटरनेट (उर्फ 'क्लाउड') से जुड़े होते हैं। इन सभी को हम 'IoT' डिवाइस कहते हैं और ये आज दुनिया में तेजी से एक आम जगह बनते जा रहे हैं।
IoT सिस्टम इंजीनियरों के लिए, बिजली की खपत को अनुकूलित करने के लिए बहुत सारे डिज़ाइन प्रयास किए जाते हैं। इसका कारण निश्चित रूप से बैटरियों में उपलब्ध सीमित क्षमता के कारण है। दूरदराज के इलाकों में बड़ी मात्रा में बैटरी बदलना एक बहुत महंगा प्रस्ताव हो सकता है।
तो यह निर्देशयोग्य सभी छोटे लिडार में शक्ति के अनुकूलन के बारे में है।
टीएल; डीआर सारांश
IoT उपकरणों में बैटरी रनटाइम को अधिकतम करने में मदद करने के लिए हमारे पास एक नया "रीयल टाइम" माप मोड (फर्मवेयर 1.4.0 के अनुसार) है।
बैटरियों से अधिक रस निचोड़ना
सहज रूप से, हम IoT उपकरणों की बिजली की खपत को कम करके रनटाइम को बढ़ा सकते हैं। ठीक है तो यह स्पष्ट है! लेकिन आप इसे प्रभावी ढंग से कैसे कर सकते हैं और अपेक्षित रनटाइम की सही गणना कैसे कर सकते हैं? चलो पता करते हैं…
चरण 1: शुद्ध ऊर्जा
ऐसा करने के कई तरीके हैं लेकिन हम इसे बुनियादी बातों तक तोड़ना और हर चीज को ऊर्जा में बदलना पसंद करते हैं। विद्युत ऊर्जा को जूल (प्रतीक J) में और परिभाषा के अनुसार मापा जाता है:
जूल वह ऊर्जा है जो ऊष्मा के रूप में नष्ट हो जाती है जब एक एम्पीयर की विद्युत धारा एक ओम के प्रतिरोध से एक सेकंड की अवधि के लिए गुजरती है।
चूंकि ऊर्जा (ई) भी वोल्टेज (वी) एक्स चार्ज (क्यू) है, हमारे पास है:
ई = वी एक्स क्यू
क्यू वर्तमान है (आई) एक्स समय (टी):
क्यू = मैं एक्स टी
तो जूल में ऊर्जा को इस प्रकार व्यक्त किया जा सकता है:
ई = वी एक्स आई एक्स टी
जहां वी वोल्टेज है, मैं एम्प्स में करंट है और टी सेकंड में समय है।
आइए मान लें कि हमारे पास श्रृंखला में जुड़ी चार एए क्षारीय (एलआर 6) बैटरी से बना बैटरी पैक है। यह हमें 4*1.5v = 6v का कुल प्रारंभिक वोल्टेज देगा। एक क्षारीय एए बैटरी के लिए जीवन का अंत लगभग 1.0v है, इसलिए औसत वोल्टेज लगभग 1.25v होगा। एमएफआर डेटाशीट के अनुसार "वितरित क्षमता लागू लोड, ऑपरेटिंग तापमान और कट-ऑफ वोल्टेज पर निर्भर है।" इसलिए हम कम ड्रेन एप्लिकेशन जैसे IoT डिवाइस के लिए लगभग 2000mAhr या बेहतर मान सकते हैं।
इसलिए हम गणना कर सकते हैं कि इस बैटरी पैक को बदलने से पहले हमारे पास 4 सेल x 1.25V प्रति सेल x 2000mAhr * 3600sec = 36000 J ऊर्जा उपलब्ध है।
सरल गणना के लिए, हम यह भी मान सकते हैं कि हमारे सिस्टम नियामक के लिए रूपांतरण दक्षता 100% है और मेजबान नियंत्रक की बिजली खपत को अनदेखा करें।
साइकिल चलाने के बारे में एक शब्द
नहीं, उस प्रकार का नहीं जिस पर आप सवारी करते हैं! "पावर साइक्लिंग" और "स्लीप साइक्लिंग" के रूप में जानी जाने वाली कुछ तकनीकी अवधारणाएँ हैं। दोनों का उपयोग बिजली की खपत को कम करने के लिए किया जा सकता है लेकिन दोनों में अंतर है। पहले में आपके डिवाइस को इसकी आवश्यकता होने तक बंद करना और फिर माप आदि करने के लिए इसे केवल थोड़े समय के लिए चालू करना शामिल है। हालांकि यह विधि अपने जीरो ऑफ करंट के कारण उपयोग करने के लिए आकर्षक है, इसमें एक खामी है जहां यह कुछ समय लेगी। ऐसा करने के दौरान बैक अप बूट करने और ऊर्जा जलाने के लिए गैर-तुच्छ समय।
दूसरी अवधारणा में केवल इस उम्मीद के साथ डिवाइस को स्लीप मोड में रखना शामिल है कि यह तेजी से जागेगा लेकिन आप सोते समय कुछ सीमित मात्रा में करंट जलाएंगे। तो कौन सा उपयोग करना सबसे अच्छा है?
यह इस बात पर निर्भर करता है कि आपको कितनी बार जागने की जरूरत है।
चरण 2: नंबर चलाएँ
हम नीचे सूचीबद्ध प्रत्येक स्केनेरियो के लिए 1 सेकंड के लिए सामान्यीकृत कुल ऊर्जा (ई) खोजना चाहते हैं।
केस ए: टीसी = 1 सेकंड; प्रत्येक सेकंड में एक दूरी माप लें केस बी: टीसी = 60 सेकंड; हर मिनट एक दूरी माप लें। केस सी: टीसी = 3600 सेकेंड; हर घंटे एक दूरी माप लें।
ऐसा करने के लिए, हम कह सकते हैं कि टीसी हमारे माप के लिए चक्र समय है, सक्रिय समय टन और निष्क्रिय समय को टॉफ करें और हमारे ऊर्जा सूत्रों को यहां दिखाए गए अनुसार पुनर्व्यवस्थित करें:
LittleLiDAR के लिए, स्टार्ट अप का समय लगभग 300ms या उससे कम है और इस दौरान एक विनियमित 2.8v आपूर्ति से संचालन करते समय औसतन 12.25mA का समय लगेगा। इसलिए यह प्रत्येक स्टार्टअप के लिए लगभग 10.3mJ ऊर्जा की खपत करेगा।
LittleLiDAR के लिए स्लीप/क्विसेंट करंट अल्ट्रा-लो 3uA है। यह एक क्षारीय बैटरी पैक की 0.3% मासिक स्व-निर्वहन दर से बहुत कम है, इसलिए हम यहां केवल "स्लीप साइकलिंग" पद्धति का उपयोग करके जांच करेंगे।
माइक्रो से दूर क्यों नहीं और सीधे VL53 सेंसर पर जाएं?
इसका उत्तर इतना स्पष्ट नहीं है। स्मार्टफोन के विकास के शुरुआती दिनों में हमने सीखा कि पावर के भूखे हाई स्पीड प्रोसेसर को एमपी3 चलाने के लिए जीवित रखना बैटरी जीवन को कम करने का एक अचूक तरीका था। उस समय भी हमने संगीत बजाने जैसे परिधि कर्तव्यों के लिए कम शक्ति वाले "एप्लिकेशन प्रोसेसर" का उपयोग करने के लिए हर संभव प्रयास किया था। यह आज बहुत अलग नहीं है और वास्तव में, आप इसे और भी महत्वपूर्ण कह सकते हैं क्योंकि हम इन सभी IoT उपकरणों को हर घटती बैटरी क्षमता के साथ छोटा करते हैं। इसलिए VL53 सेंसर को नियंत्रित करने और आगे की प्रक्रिया के लिए तैयार डेटा प्रदान करने के एकमात्र कार्य के लिए अल्ट्रा-लो पावर एप्लिकेशन प्रोसेसर का उपयोग करना किसी भी बैटरी चालित एप्लिकेशन के लिए एक निश्चित संपत्ति है।
LittleLiDAR मापन मोड
यह इस समय उपयोगकर्ता मैनुअल में स्पष्ट नहीं हो सकता है [लेकिन कुछ बिंदु पर होगा क्योंकि हम हमेशा अपने उपयोगकर्ता मैनुअल को अपडेट कर रहे हैं:)] - tinyLiDAR में वास्तव में 3 अलग-अलग माप मोड हैं।
एमसी मोड
LittleLiDAR की स्थापना के बाद से, हम VL53 ToF सेंसर से तेजी से माप प्राप्त करने की कोशिश कर रहे थे। इसलिए हमने अपने फर्मवेयर को सबसे तेज और सबसे सुसंगत स्ट्रीमिंग डेटा प्राप्त करने के लिए अनुकूलित किया। इसमें बफरिंग शुरू करना शामिल था। थोड़ा बफरिंग एक अच्छी बात है क्योंकि यह मेजबान नियंत्रक (यानी Arduino) को अपने माप डेटा को फ्लैश में प्राप्त करने और अधिक महत्वपूर्ण चीजों पर जाने की अनुमति देता है। इसलिए बफरिंग नितांत आवश्यक है और इसके कारण हम अपेक्षाकृत धीमी Arduino UNO पर भी 900Hz से अधिक स्ट्रीमिंग दर प्राप्त करने में सक्षम हैं। इसलिए, सबसे तेज़ प्रतिक्रिया समय छोटे LiDAR के MC या "निरंतर" मोड का उपयोग करने में होगा।
BTW, अगर आपको कभी मौका मिलता है, तो आपको एक सीरियल केबल को छोटे LiDAR पर TTY आउटपुट पिन से कनेक्ट करना चाहिए और आप देखेंगे कि यह MC मोड क्या करता है। यह शाब्दिक रूप से जितनी जल्दी हो सके माप लेता है और ऐसा करने में, यह अपने I2C बफर को पूर्ण नवीनतम डेटा से भर देता है। दुर्भाग्य से, चूंकि यह पूरी गति से चल रहा है, इसलिए यह अधिकतम मात्रा में बिजली भी जला रहा है। इस एमसी मोड के वर्तमान बनाम समय ग्राफ के लिए नीचे देखें।
एसएस मोड
अगला मोड वह है जिसे हम "सिंगल स्टेप" मोड के लिए "एसएस" कहते हैं। यह मूल रूप से ऊपर एक ही उच्च प्रदर्शन मोड है, लेकिन इसके बजाय एक सिंगल स्टेपिंग लूप में है। तो आप tinyLiDAR से तेजी से प्रतिक्रिया प्राप्त कर सकते हैं लेकिन डेटा पिछले नमूने से होगा, इसलिए आपको नवीनतम डेटा प्राप्त करने के लिए दो माप लेने होंगे। इस एसएस मोड के वर्तमान बनाम समय ग्राफ के लिए नीचे देखें।
उपरोक्त दोनों मोड अधिकांश उपयोगकर्ताओं के लिए बिल में अच्छी तरह फिट हैं क्योंकि वे त्वरित और उपयोग में आसान थे - बस "डी" कमांड जारी करें और परिणाम पढ़ें। तथापि …
IoT दुनिया में आगे बढ़ते हुए जहां हर मिली-जूल मायने रखता है, हमारे पास एक नया प्रतिमान है।
और यह ठीक इसके विपरीत है जिसे हमने tinyLiDAR में कोडित किया है! IoT दुनिया के लिए हमें शक्ति के संरक्षण और रनटाइम का विस्तार करने के लिए कभी-कभी अंतराल पर एकल माप की आवश्यकता होती है।
आरटी मोड
खुशी से, अब हम कह सकते हैं कि फर्मवेयर 1.4.0 के रूप में इस परिदृश्य के लिए हमारे पास एक समाधान है। इसे "वास्तविक समय" माप के लिए "आरटी" मोड कहा जाता है। और यह मूल रूप से एक ट्रिगर लागू करता है, प्रतीक्षा करें और विधि पढ़ें। इसका उपयोग करने के लिए, आप अभी भी माप शुरू करने के लिए "डी" कमांड जारी कर सकते हैं, लेकिन इस आरटी मोड के लिए आपको माप समाप्त होने के लिए उचित समय की प्रतीक्षा करनी होगी और फिर परिणाम पढ़ना होगा। tinyLiDAR स्वचालित रूप से नमूनों के बीच उप 3uA की अपनी निम्नतम मौन अवस्था में चला जाता है। यह वास्तव में उपयोग करने के लिए अभी भी सरल है और अब और भी अधिक ऊर्जा कुशल है क्योंकि आपको नवीनतम डेटा प्राप्त करने के लिए केवल दो के बजाय एक माप लेना होगा, यानी शून्य बफरिंग।
इस नए आरटी मोड के वर्तमान बनाम समय ग्राफ के लिए नीचे देखें।
चरण 3: वास्तविक माप
विरल IoT माप के लिए MC निरंतर मोड का उपयोग करना बहुत कम समझ में आता है क्योंकि हमें केवल एकल माप की आवश्यकता होती है। इसलिए हम अपना ध्यान इसके बजाय एसएस और आरटी मोड पर केंद्रित कर सकते हैं। +2.8v की विनियमित आपूर्ति से tinyLiDAR का संचालन हमें सबसे कम बिजली अपव्यय प्रदान करता है। इसलिए उच्च सटीकता (200ms) प्रीसेट का उपयोग करते हुए, हमने tinyLiDAR पर निम्न ऊर्जा खपत को मापा:
एसएस/एकल-चरण मोड: ३१.२ एमजे औसतन २ मापों से अधिक
RT/रीयल-टाइम मोड: 15.5mJ औसतन 1 माप से अधिक
इन उपरोक्त मूल्यों को हमारे ऊर्जा सूत्र में प्लग करना और एक सेकंड के लिए सामान्य करना हम रनटाइम अपेक्षाओं को पा सकते हैं, यह मानते हुए कि हमारे बैटरी पैक से ऊर्जा 36000 J है।
केस ए: हर सेकेंड पढ़ना (नवीनतम डेटा प्राप्त करने के लिए 2 रीडिंग लें) टीसी = 1 सेकेंड टन = 210 एमएमएस प्रति रीडिंग x 2 रीडिंग टॉफ = टीसी - टन = 580 एमएसआयन (औसत) = 26.5 एमए प्रति रीडिंग Ioff (औसत) = 3uA मौन वर्तमान वीसीसी = 2.8V आपूर्ति वोल्टेज जूल में लोड द्वारा खपत सक्रिय ऊर्जा है Eon = Vcc x आयन x टन = 2.8V x 26.5mA * 420ms = 31.164mJ जूल में लोड द्वारा खपत निष्क्रिय ऊर्जा Eoff = Vcc x Ioff x टॉफ = 2.8V x 3uA है x 580ms = 4.872uJ TcE के लिए सामान्यीकरण = (Eon + Eoff)/Tc = (31.164mJ + 4.872uJ)/1 = 31.169mJ या 31.2mJ प्रति सेकेंड रनटाइम इसलिए स्रोत/ऊर्जा की कुल ऊर्जा खपत होती है जो कि 36000J है / 31.2mJ = 1155000 सेकंड = 320 घंटे = 13.3 दिन
इन गणनाओं को दोहराते हुए, हम अन्य परिदृश्यों के लिए रनटाइम पा सकते हैं:
एसएस मोड
केस ए: 2 रीडिंग प्रति सेकेंड। सामान्यीकृत ऊर्जा 31.2mJ है। इसलिए रनटाइम 13.3 दिन है।
केस बी: 2 रीडिंग प्रति मिनट। सामान्यीकृत ऊर्जा 528uJ है। इसलिए रनटाइम 2.1 वर्ष है।
केस सी: 2 रीडिंग प्रति घंटा। सामान्यीकृत ऊर्जा 17uJ है। रनटाइम की गणना >>10 वर्षों में की जाती है, इसलिए छोटे LiDAR के कारण लोडिंग नगण्य है। इसलिए बैटरी पैक केवल इसकी शेल्फ लाइफ (यानी लगभग 5 वर्ष) तक सीमित रहेगा।
आरटी मोड
केस ए: 1 प्रति सेकंड पढ़ना। सामान्यीकृत ऊर्जा 15.5mJ है। इसलिए रनटाइम 26.8 दिन है।
केस बी: 1 प्रति मिनट पढ़ना। सामान्यीकृत ऊर्जा 267uJ है। इसलिए रनटाइम 4.3 साल है।
केस सी: 1 प्रति घंटा पढ़ना। सामान्यीकृत ऊर्जा 12.7uJ है। रनटाइम की गणना >>10 वर्षों में की जाती है, इसलिए छोटे LiDAR के कारण लोडिंग नगण्य है। इसलिए बैटरी पैक केवल इसकी शेल्फ लाइफ (यानी लगभग 5 वर्ष) तक सीमित रहेगा।
इसलिए, स्लीप साइकलिंग का उपयोग करने वाला नया रीयल टाइम मोड पिछले 4 वर्षों के रनटाइम को बढ़ाने के लिए यहां एक लाभ है यदि केस बी में दिखाए गए अनुसार हर मिनट एक माप लिया जाता है।
ध्यान दें कि इस विश्लेषण के लिए मेजबान नियंत्रक की ऊर्जा खपत को ध्यान में नहीं रखा गया था और बैटरी पैक चश्मा रूढ़िवादी पक्ष पर थे। आप अपनी आवश्यकताओं के अनुरूप अधिक शक्तिशाली बैटरी पा सकते हैं।
पढ़ने के लिए धन्यवाद और बने रहें क्योंकि हम अपने अगले निर्देश के लिए tinyLiDAR का उपयोग करके एक कार्यशील IoT उदाहरण प्रदान करेंगे। चीयर्स!
सिफारिश की:
Android उपकरणों के लिए बाहरी ब्लूटूथ GPS प्रदाता के लिए सेटअप: 8 चरण
एंड्रॉइड डिवाइस के लिए बाहरी ब्लूटूथ जीपीएस प्रदाता के लिए सेटअप: यह निर्देश योग्य बताएगा कि आपके फोन के लिए अपना खुद का बाहरी ब्लूटूथ-सक्षम जीपीएस कैसे बनाया जाए, जो कुछ भी लगभग $ 10 पर जलाएं। सामग्री का बिल: एनईओ 6 एम यू-ब्लॉक्स जीपीएसएचसी -05 ब्लूटूथ मॉड्यूल का ज्ञान ब्लूटूथ लो एनर्जी मॉड्यूल्स को इंटरफेस करनाArdui
Arduino Uno के साथ ध्वनिक उत्तोलन चरण-दर-चरण (8-चरण): 8 चरण
Arduino Uno के साथ ध्वनिक उत्तोलन चरण-दर-चरण (8-चरण): अल्ट्रासोनिक ध्वनि ट्रांसड्यूसर L298N डीसी महिला एडाप्टर बिजली की आपूर्ति एक पुरुष डीसी पिन के साथ Arduino UNOBreadboardयह कैसे काम करता है: सबसे पहले, आप Arduino Uno पर कोड अपलोड करते हैं (यह डिजिटल से लैस एक माइक्रोकंट्रोलर है और कोड (C++) कन्वर्ट करने के लिए एनालॉग पोर्ट
टूटे हुए इयरफ़ोन 99p के लिए आपकी सबसे क़ीमती जोड़ी के लिए और कुछ आसान सोल्डरिंग: 3 चरण
99p के लिए आपकी सबसे क़ीमती जोड़ी के लिए टूटे हुए इयरफ़ोन और कुछ आसान सोल्डरिंग: टूटे हुए इयरफ़ोन पर प्लग और लीड की मरम्मत के लिए कुछ गाइड हैं, लेकिन ये eBay से सस्ते सेट से लीड को बदलने के बहुत आसान दृष्टिकोण को याद करते हैं। ईयरफोन लीड और प्लग रिपेयर दोनों ही मुश्किल और असंभव दोनों हैं
Arduino के लिए 6 बटन के लिए 1 एनालॉग इनपुट का उपयोग करें: 6 चरण
Arduino के लिए 6 बटन के लिए 1 एनालॉग इनपुट का उपयोग करें: मैंने अक्सर सोचा है कि मैं अपने Arduino के लिए और अधिक डिजिटल इनपुट कैसे प्राप्त कर सकता हूं। हाल ही में मेरे साथ ऐसा हुआ है कि मुझे कई डिजिटल इनपुट लाने के लिए एनालॉग इनपुट में से एक का उपयोग करने में सक्षम होना चाहिए। मैंने एक त्वरित खोज की और पाया कि लोग कहाँ थे
अल्ट्रासोनिक सेंसर के लिए 3.3V मॉड (ESP32/ESP8266, कण फोटॉन, आदि पर 3.3V लॉजिक के लिए HC-SR04 तैयार करें): 4 चरण
अल्ट्रासोनिक सेंसर के लिए 3.3V मॉड (ESP32/ESP8266, पार्टिकल फोटॉन, आदि पर 3.3V लॉजिक के लिए HC-SR04 तैयार करें): TL; DR: सेंसर पर, ट्रेस को इको पिन से काटें, फिर इसे एक का उपयोग करके फिर से कनेक्ट करें वोल्टेज डिवाइडर (इको ट्रेस -> 2.7kΩ -> इको पिन -> 4.7kΩ -> GND)। संपादित करें: इस पर कुछ बहस हुई है कि क्या ESP8266 वास्तव में GPIO पर 5V सहिष्णु है