Skip to main content
शिक्षक पोर्टल

प्रोग्रामिंग दाएँ और बाएँ मुड़ना - C++

स्पीडबोट तैयार है!

यह अन्वेषण आपको अपने स्पीडबॉट के अनुसरण के लिए कुछ अच्छे प्रोजेक्ट बनाने में सक्षम बनाने के लिए उपकरण प्रदान करेगा।

  • इस अन्वेषण में उपयोग किए जाने वाले VEXcode V5 निर्देश:
    • ड्राइवट्रेन.टर्नफॉर(दाएं, 90, डिग्री);
  • निर्देश के बारे में अधिक जानकारी प्राप्त करने के लिए, सहायता का चयन करें और फिर अधिक जानकारी देखने के लिए आदेश के आगे प्रश्न चिह्न आइकन का चयन करें।

    एक उपयोगकर्ता सबसे बाईं ओर के कार्यस्थान में ड्राइवट्रेन टर्न फॉर कमांड टाइप कर रहा है, और टर्न फॉर कमांड के लिए सहायता सबसे दाईं ओर खुली हुई है। सहायता कमांड की परिभाषा और इसके उपयोग के बारे में जानकारी दिखाती है।

     

  • सुनिश्चित करें कि आपके पास आवश्यक हार्डवेयर, आपकी इंजीनियरिंग नोटबुक और VEXcode V5 डाउनलोड और तैयार है।
सामग्री की आवश्यकता:
मात्रा आवश्यक सामग्री
1

स्पीडबॉट रोबोट

1

चार्ज रोबोट बैटरी

1

वेक्सकोड V5

1

यूएसबी केबल (यदि कंप्यूटर का उपयोग कर रहे हैं)

1

इंजीनियरिंग नोटबुक

चरण 1: अन्वेषण की तैयारी

गतिविधि शुरू करने से पहले, क्या आपके पास इनमें से प्रत्येक वस्तु तैयार है?

  • क्या सभी मोटरेंसही पोर्टमें प्लग की गई हैं?
  • क्या स्मार्ट केबलमोटरों में पूरी तरह से डाली गई हैं?
  • क्या मस्तिष्कचालूहै?
  • क्या बैटरीचार्जहै?

चरण 2: एक नई परियोजना शुरू करें

परियोजना शुरू करने के लिए निम्नलिखित चरण पूरे करें:

  • फ़ाइल मेनू खोलें और उदाहरण खोलें का चयन करें.

    VEXcode V5 टूलबार जिसमें फ़ाइल मेनू खुला है और लाल बॉक्स में खुले उदाहरण हाइलाइट किए गए हैं। ओपन उदाहरण, न्यू ब्लॉक्स प्रोजेक्ट, न्यू टेक्स्ट प्रोजेक्ट और ओपन के नीचे चौथा मेनू आइटम है।

     

  • स्पीडबोट (ड्राइवट्रेन 2-मोटर, नो गायरो) टेम्पलेट प्रोजेक्ट का चयन करें और उसे खोलें। टेम्पलेट प्रोजेक्ट में स्पीडबॉट कामोटर कॉन्फ़िगरेशनशामिल है। यदि टेम्पलेट का उपयोग नहीं किया जाता है, तो आपका रोबोट प्रोजेक्ट को सही ढंग से नहीं चलाएगा।

    VEXcode V5 में उदाहरण परियोजनाएं, जिनमें शीर्ष पर टेम्पलेट फिल्टर के चारों ओर एक लाल बॉक्स और क्लॉबोट (ड्राइवट्रेन 2-मोटर, नो गायरो) टेम्पलेट परियोजना है, जो यह इंगित करती है कि कौन सी परियोजना खोलनी है।

  • चूंकि आप स्पीडबोट को चालू करने पर काम करेंगे, इसलिए आप अपने प्रोजेक्ट का नामटर्नरखेंगे।

    VEXcode V5 में परियोजना नाम संवाद का नाम बदलकर टर्न कर दिया गया।

     

  • समाप्त होने पर,सहेजेंचयन करें.

    VEXcode V5 टूलबार में प्रोजेक्ट का नाम टर्न है, तथा स्लॉट 1 चयनित है।

शिक्षक युक्तियाँ आइकन शिक्षक युक्तियाँ

परियोजना नामों में शब्दों के बीच या बाद में रिक्त स्थान हो सकते हैं।

चरण 3: दाएँ मुड़ें

अब आप रोबोट को दाईं ओर मोड़ने के लिए प्रोग्रामिंग शुरू करने के लिए तैयार हैं!

  • प्रोजेक्ट में निर्देश जोड़ें ताकि आपका प्रोजेक्ट इस तरह दिखे:

    int main() {
      // रोबोट कॉन्फ़िगरेशन आरंभ कर रहा है. दूर नहीं करते!
      vexcodeInit();
        // प्रोजेक्ट कोड शुरू करें
    
        Drivetrain.turnFor(right, 90, degrees);
    
    }
  • रोबोट ब्रेन पर उपलब्ध आठ स्लॉट में से एक चुनने के लिए स्लॉट आइकन का चयन करें और स्लॉट 1 का चयन करें।
  • माइक्रो यूएसबी केबल का उपयोग करके V5 रोबोट ब्रेन को कंप्यूटर से कनेक्ट करें और V5 रोबोट ब्रेन को पावर दें। एक बार सफल कनेक्शन हो जाने पर टूलबार में ब्रेन आइकनहराहो जाता है।
  • जब V5 रोबोट ब्रेन को कंप्यूटर से जोड़ा जाता है, तो बिल्ड आइकन डाउनलोड आइकन में बदल जाता है। प्रोजेक्ट को ब्रेन में डाउनलोड करने के लिएडाउनलोडचयन करें।

शिक्षक टूलबॉक्स आइकन शिक्षक टूलबॉक्स

छात्रों को रोबोट ब्रेन से यूएसबी केबल को डिस्कनेक्ट करने के लिए याद दिलाएं। किसी प्रोजेक्ट को चलाते समय रोबोट को कंप्यूटर से कनेक्ट करने पर, रोबोट कनेक्शन केबल को खींच सकता है।

शिक्षक टूलबॉक्स आइकन शिक्षक टूलबॉक्स - रुकें और चर्चा करें

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

  • रोबोट ब्रेन की स्क्रीन को देखकर सुनिश्चित करें कि आपका प्रोजेक्ट डाउनलोड हो गया है (C++)। प्रोजेक्ट का नाम टर्न स्लॉट 1 में सूचीबद्ध होना चाहिए।

    V5 ब्रेन होम स्क्रीन स्लॉट 1 में टर्न प्रोजेक्ट को दिखाती है, जो ड्राइव आइकन के नीचे, निचली पंक्ति में पहला आइकन है।

शिक्षक टूलबॉक्स आइकन शिक्षक टूलबॉक्स - मॉडल प्रथम

  • सभी विद्यार्थियों को एक साथ प्रयास करने के लिए कहने से पहले कक्षा के सामने परियोजना को चलाने का मॉडल प्रस्तुत करें। छात्रों को एक जगह पर इकट्ठा करें और यदि स्पीडबोट को फर्श पर रखा जाए तो उसके चलने के लिए पर्याप्त जगह छोड़ दें।

  • विद्यार्थियों से कहें कि अब उनकी परियोजना चलाने की बारी है। सुनिश्चित करें कि उनके पास स्पष्ट रास्ता हो और कोई स्पीडबॉट एक दूसरे से न टकराए।

  • विद्यार्थियों को याद दिलाएं कि वे काम करते समय अपने प्रोजेक्ट को सेव कर लें। VEX लाइब्रेरी का यह खंड (C++) VEXcode V5 में बचत प्रथाओं की व्याख्या करता है।

  • यह सुनिश्चित करके कि प्रोजेक्ट चयनित है, स्पीडबोट रोबोट पर प्रोजेक्ट (C++) चलाएं और फिर रोबोट ब्रेन पररनबटन दबाएं।

चरण 4: बाएं मुड़ें

अब जब आपने अपने रोबोट को दाईं ओर मुड़ने के लिए प्रोग्राम कर लिया है, तो आइए हम इसे बाईं ओर मुड़ने के लिए प्रोग्राम करें।

  • निर्देश में पैरामीटर को बदलें ताकिदाएँके बजायबाएँप्रदर्शित हो, जिससे आपका प्रोजेक्ट इस तरह दिखे:

    int main() {
      // रोबोट कॉन्फ़िगरेशन आरंभ कर रहा है. दूर नहीं करते!
      vexcodeInit();
        // प्रोजेक्ट कोड शुरू करें
    
        Drivetrain.turnFor(left, 90, degrees);
    
    }
  • प्रोजेक्ट नाम को Turn से TurnLeftमें बदलने के लिए उसका चयन करें।
  • नया स्लॉट चुनने के लिए स्लॉट आइकन का चयन करें। स्लॉट 2 का चयन करें.
  • (C++) परियोजना डाउनलोड करें.
  • रोबोट ब्रेन की स्क्रीन को देखकर सुनिश्चित करें कि आपका प्रोजेक्ट डाउनलोड हो गया है (C++)। प्रोजेक्ट का नाम टर्नलेफ्ट स्लॉट 2 में सूचीबद्ध होना चाहिए।
  • रोबोट पर प्रोजेक्ट चलाएं (C++) यह सुनिश्चित करके कि प्रोजेक्ट चयनित है और फिररनबटन दबाएं।

चरण 5: रुकें फिर बाएँ मुड़ें

अब जबकि हमने रोबोट को बाएं, दाएं और फिर बाएं मुड़ने के लिए प्रोग्राम कर दिया है, तो अब हम एक प्रतीक्षा निर्देश जोड़ सकते हैं ताकि रोबोट बाएं मुड़ने से पहले एक निश्चित समय तक प्रतीक्षा करे।

  • Drive for कमांड से पहले Wait निर्देश जोड़ें। सुनिश्चित करें कि Wait Drive for कमांड से मिलान करने के लिए इंडेंट किया गया है, तथा सभी कमांड कर्ली ब्रेसेज़ के भीतर हैं। यह रोबोट को बायीं ओर मुड़ने से पहले तीन सेकंड प्रतीक्षा करने के लिए कहता है।

    	wait(3, सेकंड);
    
        Drivetrain.turnFor(बाएं, 90, डिग्री);
  • प्रोजेक्ट का नाम TurnLeft से WaitLeftमें बदलने के लिए उसका चयन करें।
  • नया स्लॉट चुनने के लिए स्लॉट आइकन का चयन करें। स्लॉट 3 का चयन करें.
  • (C++) परियोजना डाउनलोड करें.
  • रोबोट ब्रेन की स्क्रीन को देखकर सुनिश्चित करें कि आपका प्रोजेक्ट डाउनलोड हो गया है (C++)। प्रोजेक्ट का नाम WaitLeft स्लॉट 3 में सूचीबद्ध होना चाहिए।
  • रोबोट पर प्रोजेक्ट चलाएं (C++) यह सुनिश्चित करके कि प्रोजेक्ट चयनित है और फिररनबटन दबाएं।

चरण 6: सुरक्षा कैमरा चुनौती पूरी करें!

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

सुरक्षा कैमरा चैलेंज में, रोबोट को 90 डिग्री दाईं ओर मुड़कर शुरुआत करनी होगी। इसके बाद रोबोट 180 डिग्री बायीं ओर और फिर 180 डिग्री दायीं ओर घूमकर सुरक्षा कैमरे की तरह "स्कैनिंग" करेगा। इसके बाद रोबोट दो बार 180 डिग्री बायीं ओर और 180 डिग्री दायीं ओर घूमेगा। इस प्रकार, रोबोट कुल तीन बार 180 डिग्री स्कैन करेगा।

रोबोट को प्रोग्राम करने से पहले, अपनी इंजीनियरिंग नोटबुक में रोबोट के पथ और व्यवहार की योजना बनाएं।

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

शिक्षक टूलबॉक्स आइकन शिक्षक टूलबॉक्स - समाधान

नीचे नमूना समाधान देखें.

int main() {
  // रोबोट कॉन्फ़िगरेशन आरंभ कर रहा है. दूर नहीं करते!
  vexcodeInit();
    // प्रोजेक्ट कोड शुरू करें

    // रोबोट 90 डिग्री दाएं मुड़ेगा
    Drivetrain.turnFor(right, 90, degrees);

    // रोबोट 180 डिग्री बाएं मुड़ेगा
    Drivetrain.turnFor(left, 190, degrees);

    // रोबोट 180 डिग्री दाएं मुड़ेगा
    Drivetrain.turnFor(right, 180, degrees);

    // रोबोट 180 डिग्री बाएं मुड़ेगा
    Drivetrain.turnFor(left, 180, degrees);

    // रोबोट 180 डिग्री दाएं मुड़ेगा
    Drivetrain.turnFor(right, 180, degrees);

    // रोबोट 180 डिग्री बाएं मुड़ेगा
    Drivetrain.turnFor(left, 180, degrees);

    // रोबोट 180 डिग्री दाएं मुड़ेगा
    Drivetrain.turnFor(right, 180, degrees);

}