Skip to main content

الدرس 4: بناء المشروع

تنظيم المشروع والبدء 

  • ابدأ مشروعًا نصيًا جديدًا وحدد Disk Mover Playground عند مطالبتك بذلك. لوحة تحديد ملعب محرك القرص، ويقرأ محرك القرص في الأسفل، ويظهر الملعب في الأعلى.
  • اسم المشروع Unit8Lesson4.تم استدعاء مربع اسم المشروع في شريط أدوات VEXcode VR باستخدام مربع أحمر. اسم المشروع هو الوحدة 8 الدرس 4.

     

  • باستخدام السلوكيات التي تم تحديدها للتو، أضف التعليقات التالية لتنظيم المشروع. 

    def main ():
        # 1. قم بالقيادة إلى القرص باستخدام مستشعر العين السفلي
    
        رقم 2. التقاط القرص
    
        رقم 3. قم بالقيادة إلى الهدف باستخدام مستشعر المسافة
    
        رقم 4. قم بإسقاط القرص في الهدف
    
        رقم 5. الانعطاف والقيادة إلى الهدف التالي
  • قم ببناء الكود التالي الذي يوجه روبوت الواقع الافتراضي لإكمال السلوكيات الأربعة الأولى المذكورة أعلاه. سيستخدم هذا المشروع نفس الأوامر التي تم استخدامها في الدرس السابق لنقل الأقراص باستخدام ملاحظات المستشعر. يجب أن يبدو مشروعك كما يلي:

    def main ():
        # 1. قم بالقيادة إلى القرص باستخدام مستشعر العين السفلي
        بينما لا يكون down_eye.near_object ():
            drivetrain.drive(للأمام)
            انتظر(5، مللي ثانية
        )drivetrain.stop ()
    
        # 2. التقط مغناطيس القرص.
        قم بتنشيط (تعزيز)
    
        رقم 3. القيادة إلى المرمى باستخدام مستشعر المسافة
        drivetrain.turn_to_heading(180 درجة)
        بينما front_distance.get_distance(MM) > 200:
            drivetrain.drive(للأمام)
            انتظر(5 مللي ثانية
        ). stop
    
        ()# 4. إسقاط القرص في مغناطيس الهدف
        . تنشيط (إسقاط)
    
        # 5. الانعطاف والقيادة إلى الهدف التالي
  • افتح نافذة الملعب إذا لم تكن مفتوحة بالفعل. تأكد من فتح Disk Mover Playground ، ثم قم بتشغيل المشروع.
  • عند تشغيل هذا المشروع، سيقوم روبوت الواقع الافتراضي بقيادة القرص الأزرق الأول والتقاطه، والاستدارة، والقيادة إلى الهدف الأزرق، وإسقاط القرص.

    منظر من أعلى إلى أسفل لملعب Disk Mover، حيث يواجه روبوت الواقع الافتراضي الجدار الخلفي في المرمى الأزرق، بعد أن أسقط أول قرص أزرق هناك.

قم بالتدوير والقيادة إلى المجموعة التالية من الأقراص

  • من أجل جمع القرص الملون التالي، سيحتاج روبوت الواقع الافتراضي إلى الدوران والقيادة نحو الهدف الملون التالي. باستخدام ما تعلمناه في الدرس السابق، من أجل منع الاصطدام بالقرص في الهدف، سيحتاج روبوت الواقع الافتراضي الآن إلى الابتعاد عن طريق القرص. للقيام بذلك، سيحتاج روبوت الواقع الافتراضي إلى عكس 100 ملليمتر (مم)، أو نصف طول مربع الشبكة على الملعب.

    منظر عن قرب لروبوت الواقع الافتراضي في المرمى الأزرق، مواجهًا للجدار الخلفي، مع سهم يشير إلى أن المسافة من الجزء الخلفي للروبوت إلى حافة المرمى تبلغ حوالي 100 مم.
  • أضف الأمر drive_for أسفل الأمر energize ، واضبط المعلمة على "REVERSE" لـ 100 مليمتر (مم)، بحيث يبدو قسم التعليقات الرابع للمشروع كما يلي:

    	# 4. إسقاط القرص في مغناطيس الهدف
        . تنشيط (إسقاط
        )drivetrain.drive_for (عكس، 100، مم)
  • سيحتاج روبوت الواقع الافتراضي الآن إلى الانعطاف يسارًا لمواجهة الهدف الملون التالي.عرض من أعلى لأسفل لملعب Disk Mover مع روبوت VR في نهاية المشروع، في مواجهة الجزء الخلفي من الهدف الأزرق، بعد الرجوع إلى الوراء لإسقاط القرص. يشير سهم منحني إلى اليسار، مما يشير إلى أن الروبوت يحتاج إلى الانعطاف يسارًا لمواجهة منطقة المرمى الحمراء.
  • أضف الأمر turn_to_heading أسفل التعليق الخامس واضبط المعلمة على 90 درجة حتى يواجه روبوت الواقع الافتراضي الهدف التالي، بحيث يبدو القسم الخامس من المشروع كما يلي:

    	# 5. الانعطاف والقيادة إلى الهدف التالي
        drivetrain.turn_to_heading(90 درجة)
  • بعد ذلك، سيحتاج روبوت الواقع الافتراضي إلى المضي قدمًا نحو الهدف الملون التالي. لاحظ أنه سيتعين على روبوت الواقع الافتراضي دفع أربعة مربعات شبكية إلى الأمام، أو 800 ملليمتر (مم) من أجل القيادة إلى مركز الهدف الملون التالي.

    منظر من أعلى لأسفل لملعب Disk Mover مع روبوت الواقع الافتراضي في الواجهة الأمامية للهدف الأزرق، مواجهًا الهدف الأحمر مباشرة. يمتد سهم منقط من مقدمة الروبوت إلى منطقة المرمى الحمراء، مما يشير إلى الحركة التالية المطلوبة.
  • أضف drive_for الأمر بعد أمر turn_to_ heading واضبط المعلمة على إعادة توجيه 800 ملليمتر (مم)، بحيث يبدو القسم الخامس كما يلي:

    	# 5. انتقل إلى الهدف التالي drivetrain.turn_to_heading
        (90 درجة) drivetrain.drive_for (
        إلى الأمام، 800، مم)
  • سيحتاج روبوت الواقع الافتراضي الآن إلى الدوران لمواجهة الأقراص الملونة.

    منظر من أعلى لأسفل لملعب Disk Mover مع مواجهة روبوت الواقع الافتراضي للهدف الأحمر مباشرة. يشير سهم منحني إلى اليسار، مما يشير إلى أن الروبوت يحتاج إلى الانعطاف يسارًا لمواجهة الأقراص الحمراء.
  • أضف تعليقًا آخر وأمرًا ثانيًا turn_to _heading إلى نهاية المشروع، واضبط المعلمة على صفر درجة. سيؤدي هذا إلى تحويل روبوت الواقع الافتراضي لمواجهة الأقراص الملونة. تأكد من أن الأوامر مزودة بمسافة بادئة بشكل صحيح داخل مشروعك.

    	# 6. انتقل إلى الأقراص
        drivetrain.turn_to_heading(0، درجة)
  • افتح Disk Mover Playground إذا لم يكن مفتوحًا بالفعل، وقم بتشغيل المشروع.
  • سوف يلتقط روبوت الواقع الافتراضي القرص الأزرق الأول وينقله إلى الهدف الأزرق، ثم يتخطى الهدف الأحمر. سيتحول روبوت الواقع الافتراضي أيضًا لمواجهة الأقراص الحمراء.

    منظر من أعلى لأسفل لملعب محرك الأقراص مع روبوت الواقع الافتراضي في مقدمة الهدف الأحمر، مواجهًا الأقراص الحمراء.

قم باختيار الزر التالي لمواصلة بقية هذا الدرس.