पाठ 2: एकाधिक व्हाइल लूप का उपयोग करना
दीवार की भूलभुलैया से आगे बढ़ते हुए
अब हमने बम्पर सेंसर के साथwhileलूप का उपयोग किया है ताकि वीआर रोबोट दीवार तक पहुंचने पर चलना बंद कर दे। हालांकि, वॉल मेज़ से आगे बढ़ने के लिए, वीआर रोबोट को दीवार पर पहुंचने परटर्नकी आवश्यकता होती है, ताकि वह दिशा बदल सके और आगे बढ़ सके।
-
शुरुआत, लूपबाहर स्टॉप कमांड को हटा दें, और इसेव्हाइलसे बदल दें वीआर रोबोट को 90 डिग्री बाएं मुड़ने के लिए पैरामीटर सेट करें। अब आपका प्रोजेक्ट कुछ इस तरह दिखना चाहिए:
def main(): while not left_bumper.pressed(): drivetrain.drive(FORWARD) wait(5, MSEC) drivetrain.turn_for(LEFT, 90, DEGREES) - यदि वॉल मेज़ प्लेग्राउंड पहले से खुला नहीं है, तो उसे लॉन्च करें और प्रोजेक्ट चलाएं।
-
वीआर रोबोट को वॉल मेज़ के शुरुआती बिंदु से चलते हुए देखें, जब बम्पर सेंसर दीवार से दब जाए तो रुकें और 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 डिग्री दाएं मुड़ें और रुक जाएं।

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

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