रिपोर्टिंग मोड

सेंसर विभिन्न तरीकों से घटनाओं को उत्पन्न कर सकते हैं जिन्हें रिपोर्टिंग मोड कहा जाता है; प्रत्येक सेंसर प्रकार में इसके साथ संबद्ध एक और केवल एक रिपोर्टिंग मोड होता है। चार रिपोर्टिंग मोड मौजूद हैं।

निरंतर

ईवेंट batch फ़ंक्शन को पास किए गए sampling_period_ns पैरामीटर द्वारा परिभाषित एक स्थिर दर पर उत्पन्न होते हैं। निरंतर रिपोर्टिंग मोड का उपयोग करने वाले उदाहरण सेंसर एक्सेलेरोमीटर और जाइरोस्कोप हैं।

परिवर्तन पर

घटनाएँ तभी उत्पन्न होती हैं जब मापे गए मान बदल गए हों। एचएएल स्तर पर सेंसर को सक्रिय करना (इस पर activate(..., enable=1) को कॉल करना) भी एक घटना को ट्रिगर करता है, जिसका अर्थ है कि एचएएल को तुरंत एक घटना वापस करनी चाहिए जब एक ऑन-चेंज सेंसर सक्रिय हो। ऑन-चेंज रिपोर्टिंग मोड का उपयोग करने वाले उदाहरण सेंसर स्टेप काउंटर, प्रॉक्सिमिटी और हार्ट रेट सेंसर प्रकार हैं।

batch फ़ंक्शन के लिए पारित sampling_period_ns पैरामीटर का उपयोग लगातार घटनाओं के बीच न्यूनतम समय निर्धारित करने के लिए किया जाता है, जिसका अर्थ है कि एक घटना तब तक उत्पन्न नहीं होनी चाहिए जब तक कि पिछली घटना के बाद से sampling_period_ns नैनोसेकंड समाप्त नहीं हो जाता, भले ही तब से मूल्य बदल गया हो। यदि मान बदल गया है, तो जैसे ही पिछले ईवेंट के बाद से sampling_period_ns समाप्त हो गया है, एक ईवेंट जेनरेट किया जाना चाहिए।

उदाहरण के लिए, मान लीजिए:

  • हम चरण काउंटर को sampling_period_ns = 10 * 10^9 (10 सेकंड) के साथ सक्रिय करते हैं।
  • हम 55 सेकंड के लिए चलते हैं, फिर एक मिनट तक खड़े रहते हैं।
  • कुल सात घटनाओं के लिए, पहले मिनट के दौरान हर 10 सेकंड में (सेंसर के सक्रियण के कारण समय t=0 और t=60 सेकंड सहित) ईवेंट उत्पन्न होते हैं। दूसरे मिनट में कोई घटना उत्पन्न नहीं होती क्योंकि t=60 सेकंड के बाद चरण गणना का मान नहीं बदला।

एक बार में

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

एक-शॉट सेंसर को कभी-कभी ट्रिगर सेंसर के रूप में जाना जाता है।

batch फ़ंक्शन में पास किए गए sampling_period_ns और max_report_latency_ns पैरामीटर को अनदेखा कर दिया जाता है। एक-शॉट ईवेंट के ईवेंट को हार्डवेयर FIFO में संग्रहीत नहीं किया जा सकता है; जैसे ही वे उत्पन्न होते हैं, घटनाओं की सूचना दी जानी चाहिए।

विशेष

घटनाओं के उत्पन्न होने पर विवरण के लिए अलग-अलग सेंसर प्रकार विवरण देखें।