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

मैच लोड चुनौती

[ड्राइव फॉर] और [टर्न टू हेडिंग] ब्लॉक, जीपीएस सेंसर, आर्म मोटर और इनटेक मोटर का उपयोग करके एक एल्गोरिदम बनाएं ताकि हीरो बॉट पहले ब्लू एलायंस गोल में रोबोट प्रीलोड ट्राइबॉल स्कोर करे, फिर रेड एलायंस गोल में तीन मैच लोड ट्राइबॉल लॉन्च करे और आक्रामक क्षेत्र में तीन मैच लोड ट्राइबॉल स्कोर करे। टाइमर का उपयोग करके मैच लोड ट्राइबॉल स्कोरिंग की दोनों विधियों की दक्षता का मूल्यांकन करें।

  • वीआरसी वर्चुअल स्किल्स - ओवर अंडर प्लेग्राउंड का चयन करें।
  • मैच से पहले की चेकलिस्ट का उपयोग करके रोबोट के लिए एक आरंभिक स्थान, एक आरंभिक दिशा और रोबोट प्रीलोड "हाँ" चयन करें।
  • प्री-मैच चेकलिस्ट का उपयोग करके वांछित फ़ील्ड प्रीलोड स्थान का चयन करें।
  • हीरो बॉट को कोड करें ताकि वह रोबोट प्रीलोड ट्राइबॉल को ब्लू एलायंस गोल में डाल सके। 
  • रोबोट को इस तरह कोड करें कि वह फील्ड के निचले बाएं हिस्से से अलग-अलग मैच लोड ट्राइबॉल उठाए और उन्हें रेड एलायंस गोल में स्कोर करे। इस प्रक्रिया में लगने वाले समय को मापने के लिए टाइमर का उपयोग करें।
    • टाइमर रीसेट करें।
    • हीरो बॉट को मैदान के निचले बाएँ हिस्से में स्थित मैच लोड ट्राइबॉल को उठाने के लिए उस स्थान पर ले जाएं। ट्राइबॉल को उठाने के लिए इनटेक मोटर को घुमाएँ। 
    • रोबोट को रेड एलायंस के लक्ष्य की ओर ले जाएं। इनटेक मोटर को घुमाकर ट्राइबॉल को रेड एलायंस गोल में लॉन्च करें।
    • मैच लोड ज़ोन में ट्राइबॉल रखने के लिए नारंगी रंग में हाइलाइट किए गए 'LZ 2' बटन पर क्लिक करें
    • एक लूप का उपयोग करके रोबोट को कोड करें ताकि वह ऊपर बताई गई क्रियाओं को एक निश्चित संख्या में दोहराकर रेड एलायंस गोल में तीन मैच लोड ट्राइबॉल स्कोर कर सके।
    • टाइमर का मान प्रिंट कंसोल पर प्रिंट करने के लिए [print] ब्लॉक का उपयोग करें।
  • रोबोट को इस तरह कोड करें कि वह फील्ड के निचले बाएं हिस्से में मौजूद तीन मैच लोड ट्राइबॉल अलग-अलग उठाए और उन्हें आक्रामक क्षेत्र में स्कोर करे। इस प्रक्रिया में लगने वाले समय को मापने के लिए टाइमर का उपयोग करें।
    • टाइमर रीसेट करें।
    • हीरो बॉट को मैदान के निचले बाएँ हिस्से में स्थित मैच लोड ट्राइबॉल को उठाने के लिए उस स्थान पर ले जाएं। ट्राइबॉल को उठाने के लिए इनटेक मोटर को घुमाएँ।
    • रोबोट को आक्रमण क्षेत्र की ओर ले जाएं। ट्राइबॉल को आक्रामक क्षेत्र में लॉन्च करने के लिए इनटेक मोटर को घुमाएं।
    • मैच लोड ज़ोन में ट्राइबॉल रखने के लिए नारंगी रंग में हाइलाइट किए गए 'LZ 2' बटन पर क्लिक करें
    • एक लूप का उपयोग करके रोबोट को कोड करें ताकि वह ऊपर बताई गई क्रियाओं को एक निश्चित संख्या में दोहराकर आक्रामक क्षेत्र में तीन मैच लोड ट्राइबॉल स्कोर कर सके।
    • टाइमर का मान प्रिंट कंसोल पर प्रिंट करने के लिए [print] ब्लॉक का उपयोग करें।

सहायक सुझाव

  • VEXcode VR के लिए VRC ओवर अंडर में मैच लोड का उपयोग करने में सहायता के लिए, यह लेख देखें
  • टाइमर के मान को वापस 0 सेकंड पर रीसेट करने के लिए सेंसिंग श्रेणी से रीसेट टाइमर ब्लॉक का उपयोग करें।

    VEXcode रीसेट टाइमर ब्लॉक जो 'रीसेट टाइमर' पढ़ता है।

    • पाइथन कमांड से मिलान:

      ब्रेन.टाइमर.क्लियर()
  • ट्राइबॉल को वापस उछलने या किसी अन्य ट्राइबॉल के ऊपर जमा होने से रोकने के लिए, ट्राइबॉल को लगातार एक ही स्थिति और एक ही दिशा से गोल या आक्रामक क्षेत्र की ओर फेंकने से बचें।
  • ऑपरेटर्स श्रेणी से पिक रैंडम ब्लॉक का उपयोग करके रोबोट की दिशा को एक सीमा के भीतर समायोजित करें ताकि ट्राइबॉल्स को अलग-अलग स्कोरिंग दिशाओं में लॉन्च किया जा सके।

    VEXcode Turn to heading block containing a Random block that all together reads 'turn to heading (pick random 30 to 120) degrees'.

    • पाइथन कमांड से मिलान:

      ड्राइवट्रेन.टर्न_टू_हेडिंग(रैंडम.रैंडइंट(30, 120), डिग्री)
  • कंट्रोल श्रेणी से रिपीट ब्लॉक का उपयोग करके वीआर रोबोट को कोड करें ताकि वह अंदर मौजूद ब्लॉकों को एक निश्चित संख्या में दोहरा सके।

    खाली VEXcode रिपीट ब्लॉक जो 'रिपीट 3' पढ़ता है।

    • पाइथन कमांड से मिलान:

      प्रत्येक repeat_count के लिए range(3):
      	wait(5, MSEC)