मुख्य सामग्री पर जाएं

पाठ 2: एकाधिक व्हाइल लूप का उपयोग करना

दीवार की भूलभुलैया से आगे बढ़ते हुए

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

  • शुरुआत, लूपबाहर स्टॉप कमांड को हटा दें, और इसेव्हाइलसे बदल दें वीआर रोबोट को 90 डिग्री बाएं मुड़ने के लिए पैरामीटर सेट करें। अब आपका प्रोजेक्ट कुछ इस तरह दिखना चाहिए:

    def main():
    	while not left_bumper.pressed():
    		drivetrain.drive(FORWARD)
    		wait(5, MSEC)
    	drivetrain.turn_for(LEFT, 90, DEGREES)
  • यदि वॉल मेज़ प्लेग्राउंड पहले से खुला नहीं है, तो उसे लॉन्च करें और प्रोजेक्ट चलाएं।
  • वीआर रोबोट को वॉल मेज़ के शुरुआती बिंदु से चलते हुए देखें, जब बम्पर सेंसर दीवार से दब जाए तो रुकें और 90 डिग्री बाईं ओर मुड़ें।

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

एकाधिक लूप और दीवार भूलभुलैया समस्या

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

  • वीआर रोबोट की वर्तमान स्थिति से शुरू करते हुए, वॉल मेज़ को हल करने का अगला चरण अगली दीवार तक आगे बढ़ना और 90 डिग्री दाएं मुड़ना होगा। मौजूदा कमांड को कॉपी करके पिछले while loop और turn_for कमांड के नीचे पेस्ट किया जा सकता है। इंडेंटेशन का ध्यान रखें, और नए turn_for कमांड पैरामीटर को दाएं 90 डिग्री घुमाने के लिए बदलें। अब आपका प्रोजेक्ट कुछ इस तरह दिखना चाहिए:

    def main():
    	while not left_bumper.pressed():
    		drivetrain.drive(FORWARD)
    		wait(5, MSEC)
    		
    	drivetrain.turn_for(LEFT, 90, DEGREES)
    	
    	while not left_bumper.pressed():
    		drivetrain.drive(FORWARD)
    		wait(5, MSEC)
    		
    	drivetrain.turn_for(RIGHT, 90, DEGREES)
  • वॉल मेज़ प्लेग्राउंड को रीसेट करें और प्रोजेक्ट को फिर से चलाएं।
  • वीआर रोबोट को वॉल मेज़ के आरंभ से चलते हुए देखें, जब बम्पर सेंसर दीवार से दब जाए तो रुकें, 90 डिग्री बाएं मुड़ें, तब तक आगे बढ़ें जब तक बम्पर सेंसर फिर से दीवार से न दब जाए, फिर 90 डिग्री दाएं मुड़ें और रुक जाएं।

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

मिनी चैलेंज

इस मिनी चैलेंज के लिए, एक ऐसा प्रोजेक्ट बनाएं जिसमें वीआर रोबोट वॉल मेज़ प्लेग्राउंड पर स्टार्ट से अक्षर 'ए' तक कई लूप उपयोग करते हुए ड्राइव करे, जबकिऔर बम्पर सेंसर!

वॉल मेज़ प्लेग्राउंड का ऊपर से लिया गया दृश्य, जिसमें वीआर रोबोट प्लेग्राउंड के निचले केंद्र में शुरुआती स्थान पर स्थित है। अक्षर 'ए' रोबोट के ठीक बाईं ओर स्थित है, जो एक छोटी दीवार से अलग है।

मिनी चैलेंज को पूरा करने के लिए इन चरणों का पालन करें:

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

  • Unit4Lesson2 प्रोजेक्ट में आवश्यक कमांड जोड़कर या हटाकर एक प्रोजेक्ट बनाएं।
  • इसका परीक्षण करने के लिए प्रोजेक्ट शुरू करें।
  • यदि प्रोजेक्ट सफल नहीं होता है, तो उसे संपादित करें और दोबारा प्रयास करें। वीआर रोबोट के सफलतापूर्वक शुरुआत से अक्षर 'ए' तक पहुंचने तक प्रोजेक्ट को संशोधित करते रहें और चलाते रहें।
  • वीआर रोबोट के सफलतापूर्वक शुरुआत से अक्षर 'ए' तक पहुंचने के बाद प्रोजेक्ट को सेव करें।

बधाई हो! आपने मिनी चैलेंज हल कर लिया!

प्रश्न

पाठ की प्रश्नोत्तरी तक पहुँचने के लिए कृपया नीचे दिए गए लिंक का चयन करें।

गूगल डॉक / .docx / .pdf