Skip to main content

पाठ 3: एकाधिक सेंसर इनपुट

पिछले पाठ में, दूरी सेंसर का उपयोग यह निर्धारित करने के लिए किया गया था कि क्या वीआर रोबोट ने किसी वस्तु का पता लगाया है या नहीं, और यदि हां, तो क्या वह वस्तु की ओर आगे बढ़ता है। हालाँकि, यह निर्धारित करने के लिए किसी सेंसर मान का उपयोग नहीं किया गया कि क्या वीआर रोबोट खेल के मैदान के किनारे के करीब था ताकि उसे रोका जा सके। जब वीआर रोबोट खेल के मैदान के किनारे के करीब हो तो उसे रोकने से वह किनारे से दूर नहीं जाएगा।

पिछले पाठ से VEXcode VR परियोजना, जिसमें रोबोट पर डिस्टेंस सेंसर का उपयोग करके महलों का पता लगाया जाता है, फिर उन्हें ध्वस्त करने के लिए ड्राइव किया जाता है, को बाईं ओर दिखाया गया है। दाईं ओर खेल के मैदान की खिड़की है, जिसमें एक परियोजना प्रगति पर है, जिसमें कई महल ध्वस्त हो चुके हैं, लेकिन वीआर रोबोट खेल के मैदान के किनारे से निकलने वाला है।

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

डायनामिक कैसल क्रैशर खेल के मैदान पर वीआर रोबोट का एक साइड व्यू, जो एक महल के टुकड़े को किनारे से धकेल रहा है और किनारे से खुद को हटाने वाला है।

वीआर रोबोट को यह निर्धारित करने के लिए एक अन्य सेंसर की आवश्यकता है कि वह खेल के मैदान के किनारे के करीब है या नहीं। आगे बढ़ने और मुड़ने की क्रियाएं तब तक दोहराई जानी चाहिए जब तक कि लाल बॉर्डर का पता न चल जाए। इस प्रकार, [हमेशा] ब्लॉक को [दोहराएँ जब तक] ब्लॉक से प्रतिस्थापित किया जा सकता है, ताकि लाल बॉर्डर का पता लगाने की स्थिति पूरी होने तक आगे बढ़ने और मुड़ने के व्यवहार को दोहराया जा सके। डाउन आई सेंसर का उपयोग यह निर्धारित करने के लिए किया जा सकता है कि क्या वीआर रोबोट खेल के मैदान के चारों ओर लाल बॉर्डर का पता लगाकर खेल के मैदान के किनारे के करीब है।

एक VEXcode VR रंग संवेदन ब्लॉक पढ़ता है डाउन आई लाल का पता लगाता है?.
  • पिछले पाठ से Unit9Lesson2 प्रोजेक्ट लोड करें।
यूनिट 9 पाठ 2 परियोजना. परियोजना की शुरुआत When started ब्लॉक से होती है, जिसके साथ forever ब्लॉक जुड़ा होता है। हमेशा के लिए ब्लॉक के भीतर एक यदि तो ब्लॉक है जिसमें फ्रंट डिस्टेंस को पैरामीटर के रूप में एक ऑब्जेक्ट मिला है। यदि तो शाखा में एक टिप्पणी है जो कहती है कि दूरी सेंसर और ड्राइव फॉरवर्ड ब्लॉक का उपयोग करके पाए गए भवन पर दस्तक दें। अन्य शाखा में एक टिप्पणी है जिसमें लिखा है कि दूरी सेंसर का उपयोग करके भवन खोजने के लिए मुड़ें और दाएं मुड़ें ब्लॉक।
  • प्रोजेक्ट का नाम बदलें Unit9Lesson3.
VEXcode VR टूलबार के केंद्र में प्रोजेक्ट नाम बॉक्स, लाल बॉक्स के साथ हाइलाइट किया गया, खेल का मैदान चुनें बटन के बाईं ओर। परियोजना का नाम है यूनिट 9 पाठ 3.
  • डाउन आई सेंसर की निरंतर जांच के लिए एक ब्लॉक की आवश्यकता होती है। वीआर रोबोट को इन क्रियाओं को तब तक दोहराना होगा जब तक कि डाउन आई सेंसर लाल रंग का पता नहीं लगा लेता। सबसे पहले, [हमेशा के लिए] ब्लॉक हटाएँ।
परियोजना से फॉरएवर ब्लॉक को हटाने का अवलोकन। नया प्रोजेक्ट When started ब्लॉक से If then else ब्लॉक में चला जाता है, जिसमें Forever लूप मौजूद नहीं होता।
  • [Repeat until] ब्लॉक जोड़ें.
यदि तब अन्यथा ब्लॉक की संपूर्णता के चारों ओर दोहराएँ तक ब्लॉक जोड़ने का अवलोकन। नया प्रोजेक्ट When Started ब्लॉक से शुरू होता है, फिर इसमें पैरामीटर open के साथ Repeat until ब्लॉक होता है। दोहराएँ तक ब्लॉक के C के भीतर यदि तो अन्यथा ब्लॉक है।
  • [Repeat until] ब्लॉक के अंदर <Color sensing> ब्लॉक जोड़ें और पैरामीटर को 'DownEye' detects 'red' पर सेट करें।
डाउन आई डिटेक्ट्स लाल के साथ एक ही परियोजना को दोहराएँ तक ब्लॉक के पैरामीटर के रूप में सेट किया गया है।

इस परियोजना में [Wait until] ब्लॉक के स्थान पर [Repeat until] ब्लॉक का उपयोग किया गया है। ऐसा इसलिए है क्योंकि [Wait until] ब्लॉक एक प्रतीक्षा ब्लॉक है जो शर्त पूरी होने तक परियोजना के प्रवाह को रोक देगा। यदि [Wait until] ब्लॉक का उपयोग किया जाता है, तो [If then else] ब्लॉक तब तक निष्पादित नहीं किया जाएगा जब तक कि [Wait until] की शर्त पूरी न हो जाए और [If then else] ब्लॉक केवल एक बार निष्पादित किया जाएगा।

परियोजना प्रवाह का आरेख यदि Repeat until लूप के स्थान पर Wait until ब्लॉक का उपयोग किया गया हो। परियोजना wait until ब्लॉक पर तब तक रुकी रहेगी, जब तक कि स्थिति true के रूप में रिपोर्ट न कर दी जाए, और उसके बाद ही If then else ब्लॉक पर आगे बढ़ेगी।

[Repeat until] ब्लॉक का उपयोग करके, [If then else] स्थिति की लगातार जाँच और निष्पादन किया जाता है।

दोहराएँ तक ब्लॉक के साथ परियोजना प्रवाह का एक आरेख, यह दर्शाता है कि यदि तो अन्यथा ब्लॉक की स्थिति की लगातार जांच की जाती है, और इस आधार पर निष्पादित किया जाता है कि क्या ऑब्जेक्ट पाया गया है (सत्य) या नहीं मिला (झूठ)।
  • [Repeat until] ब्लॉक के उपयोग के उद्देश्य को नोट करने के लिए एक टिप्पणी जोड़ें।
यह वही परियोजना है जो पहले बनाई गई थी, जिसमें "जब शुरू किया गया" ब्लॉक और "दोहराएँ जब तक" ब्लॉक के बीच एक टिप्पणी ब्लॉक जोड़ा गया है। टिप्पणी में लिखा है, 'जब तक लाल बॉर्डर का पता न चल जाए, इमारतों की तलाश करें।'
  • डायनेमिक कैसल क्रैशर प्लेग्राउंड खोलें और प्रोजेक्ट चलाएं।
  • जब यह परियोजना चलाई जाएगी, तो वीआर रोबोट किसी पाई गई वस्तु की ओर बढ़ेगा और अन्यथा दाईं ओर मुड़ जाएगा। हालांकि, हालांकि डाउन आई सेंसर लाल बॉर्डर की तलाश कर रहा है, लेकिन वीआर रोबोट को यह नहीं बताया जाता कि लाल रंग का पता चलने पर उसे क्या करना है, इसलिए वह गाड़ी चलाना जारी रखता है और अंततः खेल के मैदान से गिर जाता है।

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

जब [Repeat until] ब्लॉक की शर्त पूरी हो जाती है, तो प्रोजेक्ट प्रवाह [Repeat until] ब्लॉक से निष्पादित होगा।

इस पाठ के शेष भाग को जारी रखने के लिए अगला बटन का चयन करें।