IQ (दूसरी पीढ़ी) सेंसर का समस्या निवारण

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

इस प्रक्रिया के चरण हैं:

  1. समस्या की पहचान करें
  2. हार्डवेयर की जाँच करें
  3. सॉफ्टवेयर की जाँच करें
  4. डेटा का विश्लेषण और अनुप्रयोग करें

समस्या की पहचान करें

आपके सेंसर के समस्या निवारण का पहला चरण यह पहचानना है कि कौन सा सेंसर समस्या पैदा कर रहा है। देखे गए रोबोट व्यवहार की तुलना इच्छित रोबोट व्यवहार से करें। क्या यह समस्याग्रस्त व्यवहार किसी सेंसर के कारण है? यदि हां, तो कौन सा सेंसर? यदि आपको यह निर्धारित करने के लिए अधिक जानकारी की आवश्यकता है कि कौन सा सेंसर समस्या है, तो अपने रोबोट के सेंसर से संबंधित नीचे दिए गए लेख पढ़ें।

VEX IQ (दूसरी पीढ़ी) सेंसर:

एक बार जब आप यह पहचान कर लें कि कौन सा सेंसर अनपेक्षित व्यवहार का कारण बन रहा है, तो आप प्रक्रिया में आगे बढ़ सकते हैं।


हार्डवेयर की जाँच करें

दूसरा चरण रोबोट के हार्डवेयर की जांच करना है ताकि यह सुनिश्चित किया जा सके कि सेंसर अपेक्षित रूप से कार्य कर रहा है। निम्नलिखित हार्डवेयर संबंधी प्रत्येक बात आपके सेंसर की कार्यक्षमता को प्रभावित कर सकती है।

सेंसर प्लेसमेंट की जाँच करें

एक मैदान पर ड्राइविंग सरल क्लॉबोट निर्माण। रोबोट में एक ऑप्टिकल सेंसर लगा हुआ है जो सामने लाल क्यूब की ओर इशारा कर रहा है।

सबसे पहले यह देखें कि आपके रोबोट पर सेंसर कहां स्थित है। क्या सेंसर किसी चीज से अवरुद्ध हो रहा है, जैसे आपके रोबोट का कोई अन्य भाग? सुनिश्चित करें कि सेंसर के पास अपेक्षित रूप से कार्य करने के लिए आवश्यक स्थान है।

जैसा कि यहां दिखाया गया है, ऑप्टिकल सेंसर की दृष्टि उस वस्तु तक स्पष्ट होती है जिसका पता लगाना उसका उद्देश्य है।

सेंसर कनेक्शन की जाँच करें

ब्रेन स्क्रीन को डिवाइस मेनू में टच एलईडी डिवाइस के साथ दिखाया गया है।

VEX IQ (द्वितीय पीढ़ी) ब्रेन पर डिवाइस स्क्रीन में रिपोर्ट किए गए डेटा को देखकर सेंसर की कार्यक्षमता का परीक्षण करें। इससे आपको यह सत्यापित करने में मदद मिल सकती है कि सेंसर प्लग इन है और काम कर रहा है।

डिवाइस स्क्रीन तक पहुँचने के लिए, इस आलेख में गए चरणों का पालन करें

एक (द्वितीय पीढ़ी) मस्तिष्क का आरेख जो एक (द्वितीय पीढ़ी) दूरी सेंसर से जुड़ा हुआ है।

एक बार डिवाइस स्क्रीन खुल जाए तो देखें कि सेंसर डेटा रिपोर्ट कर रहा है या नहीं।

यदि नहीं, तो सुनिश्चित करें कि आपके सेंसर सही ढंग से प्लग इन हैं। सेंसर लगाते समय, जब सेंसर का लॉकिंग टैब पोर्ट में पूरी तरह से लग जाता है, तो आपको एक चटक आवाज सुनाई देनी चाहिए।

आप जिस सेंसर का उपयोग कर रहे हैं उसे दूसरे सेंसर से बदलने का भी प्रयास कर सकते हैं, यह देखने के लिए कि क्या इससे आपकी समस्या हल होती है।

यदि आपने अपने सेंसर प्लेसमेंट या सेंसर कनेक्शन में कुछ परिवर्तन किया है, तो यह देखने के लिए कि क्या इससे समस्या हल हो गई है, अपने प्रोजेक्ट का पुनः परीक्षण करें। यदि आपके सेंसर का स्थान और कनेक्शन नहीं बदला है, तो समस्या निवारण प्रक्रिया जारी रखने के लिए अगले चरण पर जाएँ।


सॉफ्टवेयर की जाँच करें

एक बार जब आप यह पहचान कर लें कि सेंसर सफलतापूर्वक रोबोट पर लगा दिया गया है और उससे जुड़ गया है, तो आप आगे VEXcode IQ प्रोजेक्ट पर विचार कर सकते हैं। किसी परियोजना पर पुनरावृत्ति करने से आपको यह सुनिश्चित करने में मदद मिल सकती है कि सेंसर से प्राप्त डेटा का उपयोग आपकी परियोजना में प्रभावी ढंग से किया जा रहा है। निम्नलिखित रणनीतियाँ आपके सेंसर को कोड करने में आपकी सहायता कर सकती हैं।

यदि आप इनमें से किसी भी रणनीति को अपने VEXcode IQ प्रोजेक्ट पर लागू करते हैं, तो यह देखने के लिए अपने प्रोजेक्ट का पुनः परीक्षण करें कि क्या इससे समस्या हल हो गई है।

फ़र्मवेयर और कॉन्फ़िगरेशन की जाँच करें

VEXcode IQ डिवाइस मेनू जिसमें कनेक्टेड डिवाइसों की एक लंबी सूची दिखाई गई है। इस मेनू का उपयोग यह सुनिश्चित करने के लिए किया जा सकता है कि प्रत्येक सेंसर ठीक से जुड़ा हुआ है, तथा ब्रेन पर उसके विशिष्ट पोर्ट की जांच करने के लिए भी किया जा सकता है।

अब जब आप आश्वस्त हैं कि सभी डिवाइस ब्रेन से सही ढंग से कनेक्ट हैं, तो VEXcode IQ में डिवाइस कॉन्फ़िगरेशन की जांच करें।

यह सुनिश्चित करने के लिए जांच करें कि सभी सेंसर कॉन्फ़िगरेशन में मौजूद हैं। फिर, यह सुनिश्चित करने के लिए जांच करें कि प्रत्येक सही पोर्ट से जुड़ा हुआ है।

किसी भी गलत डिवाइस कॉन्फ़िगरेशन को बदलें.

एक उदाहरण परियोजना चलाएँ

VEXcode ब्लॉक उदाहरण परियोजना मेनू जिसमें विभिन्न श्रेणियों में से चुनने के लिए विभिन्न परियोजनाएं हैं। संवेदन श्रेणी को हाइलाइट किया गया है।

एक उदाहरण प्रोजेक्ट खोलें जो उस सेंसर का उपयोग करता है जिसका आप समस्या निवारण कर रहे हैं। उदाहरण परियोजनाओं को फ़िल्टर करने के लिए आप 'सेंसिंग' श्रेणी का चयन कर सकते हैं।

IQ ब्लॉक उदाहरण परियोजनाओं और टेम्पलेट्स के बारे में अधिक जानकारी के लिए, यह आलेखदेखें।

IQ पायथन उदाहरण परियोजनाओं और टेम्पलेट्स के बारे में अधिक जानकारी के लिए, यह आलेखदेखें।

IQ C++ उदाहरण परियोजनाओं और टेम्पलेट्स के बारे में अधिक जानकारी के लिए, यह आलेखदेखें।

सेंसिंग श्रेणी से एक उदाहरण परियोजना के साथ VEXcode IQ खोला गया, जिसमें कोड ब्लॉकों का एक ढेर और परियोजना के विवरण के साथ एक नोट शामिल है। नोट हाइलाइट किया गया है.

एक बार खोलने के बाद, नोट को पढ़ें और निर्धारित करें कि उदाहरण परियोजना में कार्यक्षमता उससे मेल खाती है जो आप सेंसर के साथ करने का प्रयास कर रहे हैं।

यहां दर्शाए गए उदाहरण प्रोजेक्ट में, नोट यह इंगित करता है कि दूरी सेंसर का उपयोग किसी वस्तु का पता लगाने के लिए किया जा रहा है, ताकि वस्तु तक पहुंचने पर रोबोट ड्राइविंग बंद कर सके।

उदाहरण प्रोजेक्ट चलाएँ और रोबोट के व्यवहार का अवलोकन करें। फिर परियोजना को देखें कि किस प्रकार सेंसर डेटा का उपयोग प्रेक्षित व्यवहारों को उत्पन्न करने के लिए किया जा रहा है। इसमें सहायता के लिए आप उदाहरण परियोजना को कई बार चलाना चाह सकते हैं।

आप उदाहरण परियोजना से जो कुछ सीखा है उसे अपने कार्य में लागू करने के लिए अपनी स्वयं की सरलीकृत परियोजना बनाने का प्रयास कर सकते हैं।

अन्य VEXcode IQ टूल का उपयोग करें

ऐसे उपकरण और रणनीतियाँ भी हैं जिनका उपयोग करके आप VEXcode IQ में अपने सेंसर को कोड करने के बारे में अधिक सीख सकते हैं। आप सहायता का उपयोग करके टूलबॉक्स में ब्लॉक या कमांड के बारे में व्यक्तिगत रूप से जान सकते हैं। आप प्रोजेक्ट के चलने के दौरान सेंसर डेटा भी देख सकते हैं, ताकि सेंसर क्या रिपोर्ट कर रहा है, इसके बारे में अधिक जानकारी मिल सके।

VEXcode IQ को खोलें, जिसमें सहायता मेनू खुला हो और ड्राइव हेडिंग ब्लॉक चयनित हो। ब्लॉक का विवरण और इसका उपयोग कैसे किया जा सकता है, इसके साथ ही उपयोग के उदाहरण चित्रों को भी दिखाया गया है।

नौकर

उदाहरण प्रोजेक्ट में ब्लॉक या कमांड के लिए सहायता पढ़ें, या अपने प्रोजेक्ट में उपयोग किए जाने वाले डेटा, कमांड द्वारा रिपोर्ट किए जाने वाले मानों और प्रोजेक्ट में कमांड का उपयोग करने के उदाहरणों के बारे में जानें।

VEXcode IQ ब्लॉक में सहायता तक पहुंचने के बारे में अधिक जानने के लिए यह लेख देखें।

VEXcode IQ पायथन में सहायता तक पहुंचने के बारे में अधिक जानने के लिए यह लेख देखें।

VEXcode IQ C++ में सहायता तक पहुंचने के बारे में अधिक जानने के लिए यह आलेख देखें।

डेटा प्रिंटिंग

आप उदाहरण परियोजना या अपनी परियोजना के चलने के दौरान सेंसर से डेटा भी प्रिंट कर सकते हैं, जिससे आपको यह समझने में मदद मिलेगी कि सेंसर वास्तविक समय में क्या रिपोर्ट कर रहा है। इससे आपको यह निर्धारित करने में मदद मिल सकती है कि सेंसर से प्राप्त रिपोर्ट के कौन से मानों को आपके प्रोजेक्ट में पैरामीटर के रूप में उपयोग किया जाए। 

ध्यान दें कि ब्लॉक्स प्रोजेक्ट में, सभी प्रिंटिंग कमांड्स को उनके स्वयं के स्टैक में व्यवस्थित रखने के लिए एक अलग {When started} हैट ब्लॉक का उपयोग किया जा सकता है।

VEXcode IQ ब्लॉक
VEXcode IQ उस प्रोजेक्ट को ब्लॉक कर देता है जो प्रोजेक्ट चलने के दौरान सेंसर डेटा को लाइव प्रिंट करने के लिए When started हैट ब्लॉक का उपयोग करता है। इस परियोजना में एक 'जब शुरू हुआ' ब्लॉक है जिसके बाद एक 'फॉरएवर' लूप में 4 ब्लॉक हैं। लूप में, सबसे पहले एक टिप्पणी ब्लॉक है जिसमें लिखा है मस्तिष्क पर जड़त्वीय सेंसर रोल मान प्रिंट करें, और फिर अगली पंक्ति पर जाएं। इसके बाद, एक प्रिंट ब्लॉक प्रिंट ब्रेन पढ़ता है, ब्रेन पर रोल का इनर्शियल ओरिएंटेशन और कर्सर को अगली पंक्ति पर सेट करता है। इसके बाद, एक टिप्पणी ब्लॉक में लिखा होता है, मान प्रिंट करने के लिए प्रतीक्षा करें, फिर लूप को दोहराएं। अंत में, प्रतीक्षा ब्लॉक में 0.1 सेकंड प्रतीक्षा करने का संदेश लिखा होता है।
VEXcode IQ पायथन
जबकि (सत्य):
brain.screen.set_font(FontType.MONO40)
brain.screen.print(brain_inertial.orientation(ROLL, DEGREES))
brain.screen.next_row()
wait(0.1, SECONDS)
VEXcode IQ C++
int main() 
{
while(true)
{
Brain.Screen.setFont(mono40);
Brain.Screen.print(BrainInertial.orientation(roll, degrees));
Brain.Screen.newLine();
wait(0.1, seconds);
} }

IQ ब्रेन पर मुद्रण तब सहायक होता है जब आप VEXcode IQ प्रोजेक्ट के चलने पर बदलते मानों को देखना चाहते हैं। इससे आपको यह निर्धारित करने में मदद मिल सकती है कि सेंसर से प्राप्त रिपोर्ट के कौन से मानों को आपके प्रोजेक्ट में पैरामीटर के रूप में उपयोग किया जाए। इन प्रिंट कमांडों को आपके द्वारा पहले से बनाए गए VEXcode IQ प्रोजेक्ट में बनाया जा सकता है, ताकि आप रोबोट के चलते समय विशिष्ट समय पर सेंसर मानों में परिवर्तन देख सकें। 

उपरोक्त उदाहरण परियोजनाएं यह दर्शाती हैं कि इनर्शियल सेंसर से IQ ब्रेन तक मान कैसे प्रिंट किया जाए। प्रत्येक परियोजना में टिप्पणियाँ परियोजना के प्रवाह और प्रत्येक कमांड के उपयोग की व्याख्या करती हैं।

VEXcode IQ ब्लॉक VEXcode IQ पायथन

VEXcode IQ उस प्रोजेक्ट को ब्लॉक कर देता है जो प्रोजेक्ट चलने के दौरान सेंसर डेटा को लाइव प्रिंट करने के लिए When started हैट ब्लॉक का उपयोग करता है। इस परियोजना में एक 'जब शुरू हुआ' ब्लॉक है जिसके बाद एक 'फॉरएवर' लूप में 4 ब्लॉक हैं। लूप में, सबसे पहले एक टिप्पणी ब्लॉक होता है जिसमें लिखा होता है कंसोल पर दूरी सेंसर मान प्रिंट करें, और फिर अगली पंक्ति पर जाएं। इसके बाद, एक प्रिंट ब्लॉक कंसोल पर प्रिंट डिस्टेंस5 ऑब्जेक्ट दूरी को मिमी में पढ़ता है और कर्सर को अगली पंक्ति पर सेट करता है। इसके बाद, एक टिप्पणी ब्लॉक में लिखा होता है, मान प्रिंट करने के लिए प्रतीक्षा करें, फिर लूप को दोहराएं। अंत में, प्रतीक्षा ब्लॉक में 0.1 सेकंड प्रतीक्षा करने का संदेश लिखा होता है।

जबकि (सत्य):
प्रिंट(दूरी_7.ऑब्जेक्ट_दूरी(MM))
प्रतीक्षा(0.1, सेकंड)
VEXcode IQ C++
int main() 
{
while (true)
{
printf(Distance7.objectDistance(mm));
printf("\n");
wait(0.1, seconds);
} }

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

ये उदाहरण एक प्रोजेक्ट को डिस्टेंस सेंसर (द्वितीय पीढ़ी) से VEXcode IQ में कंसोल तक डेटा प्रिंट करते हुए दिखाते हैं। 

VEXcode IQ ब्लॉक में प्रिंट कंसोल का उपयोग करने के बारे में अधिक जानकारी के लिए, यह आलेख देखें।

VEXcode IQ पायथन में प्रिंट कंसोल का उपयोग करने के बारे में अधिक जानकारी के लिए, यह आलेख देखें।


डेटा का विश्लेषण और अनुप्रयोग

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

आप आगे बढ़ने में सहायता के लिए अपने प्रोजेक्ट के बारे में प्रश्न भी पूछ सकते हैं। इस तरह की बातों के बारे में सोचें:

  • क्या आप अपने प्रोजेक्ट में < से ज़्यादा या > से कम का इस्तेमाल कर रहे हैं? क्या प्रतीक सही दिशा में है? यदि आप = के बराबर का प्रयोग कर रहे हैं तो मानों की श्रेणी का उपयोग करने के लिए इसे इससे अधिक या इससे कम से प्रतिस्थापित करने का प्रयास करें।
  • क्या आपके पैरामीटर सही हैं? क्या आप अपने पैरामीटर सेट करने के लिए सेंसर से प्राप्त डेटा का उपयोग कर रहे हैं? क्या आपने वह ड्रॉपडाउन विकल्प चुना जिसकी आपको आवश्यकता है?
  • क्या आप शर्तों की एक से अधिक बार जाँच कर रहे हैं? अपने प्रोजेक्ट में एक फॉरएवर लूप जोड़ने का प्रयास करें, ताकि प्रोजेक्ट चलने पर शर्तों की बार-बार जाँच हो सके।
  • क्या आपका प्रोजेक्ट अटक रहा है? क्या आपकी शर्तें सही ढंग से सेट की गई हैं? यदि आप नेस्टेड लूप का उपयोग कर रहे हैं, तो व्यक्तिगत व्यवहारों को अलग करने के लिए अपने प्रोजेक्ट को सरल बनाने का प्रयास करें।
  • क्या आपके परिवेश की परिस्थितियाँ सेंसर को प्रभावित कर रही हैं? क्या यह बहुत ज़्यादा चमकीला है या बहुत ज़्यादा अंधेरा है? क्या रास्ते में कोई वस्तु या लोग हैं? यह देखने के लिए कि क्या इससे मदद मिलती है, अपने प्रोजेक्ट को किसी अन्य स्थान पर चलाने का प्रयास करें।
  • क्या आप अपने प्रोजेक्ट का नवीनतम संस्करण चला रहे हैं? क्या आपने अपना अपडेटेड प्रोजेक्ट ब्रेन में डाउनलोड कर लिया है? सुनिश्चित करें कि आप हर बार परिवर्तन करने पर प्रोजेक्ट को पुनः डाउनलोड करें।
  • क्या आप सही रंग पहचान पा रहे हैं? क्या सेंसर आपके प्रोजेक्ट में मौजूद रंग से अलग रंग दिखा रहा है? यह देखने के लिए कि क्या इससे मदद मिलती है, रंग पैरामीटर बदलने या रंग मानों की एक श्रृंखला का उपयोग करने का प्रयास करें।
  • क्या आप सेंसर के दृश्य क्षेत्र में किसी वस्तु का पता लगा रहे हैं? याद रखें कि दृश्य क्षेत्र रोबोट की गति के साथ-साथ चलता है।
  • क्या आप किसी शर्त की जाँच करते समय प्रतीक्षा ब्लॉक का उपयोग कर रहे हैं? किसी शर्त की जाँच करते समय प्रोजेक्ट में गैर-प्रतीक्षा ब्लॉक का उपयोग करना सुनिश्चित करें। VEXcode IQ में प्रतीक्षारत बनाम गैर-प्रतीक्षारत ब्लॉकों के बारे में अधिक जानने के लिए इस लेख को देखें।
  • अगर आप ब्लॉक में कोडिंग कर रहे हैं, तो क्या आपका पूरा स्टैक {When started} हैट ब्लॉक से जुड़ा है? ब्लॉक तभी चलेंगे जब वे जुड़े होंगे। जब आप ब्लॉकों को खींचते हैं और उन्हें एक साथ जोड़ते हैं तो आप क्लिक ध्वनि सुन सकते हैं।

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

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: