ข้ามไปยังเนื้อหาหลัก

อุโมงค์เขาวงกต

ใช้บล็อก [Drive] และ [Turn for] เซ็นเซอร์วัดระยะด้านหน้า และเซ็นเซอร์วัดสายตาด้านล่าง เพื่อบังคับหุ่นยนต์ VR จากตำแหน่งเริ่มต้น (สี่เหลี่ยมสีเขียว) ไปยังตำแหน่งสิ้นสุด (สี่เหลี่ยมสีแดง) บนสนามเล่น Maze+

  • เลือกสนามเด็กเล่น Wall Maze+
  • ดาวน์โหลดไฟล์ .vrmaze จาก โฟลเดอร์นี้ แล้วอัปโหลดเขาวงกตใน Playground
    • หากต้องการความช่วยเหลือเกี่ยวกับการอัปโหลดและดาวน์โหลดเขาวงกตใน Wall Maze + Playground โปรดดูบทความนี้ 
  • เขียนโค้ดให้หุ่นยนต์ VR ขับเคลื่อนจากตำแหน่งเริ่มต้น (สี่เหลี่ยมสีเขียว) ไปยังตำแหน่งสิ้นสุด (สี่เหลี่ยมสีแดง)
    • สร้างอัลกอริทึมเพื่อใช้เซ็นเซอร์วัดระยะด้านหน้าในการนำทางหุ่นยนต์ VR ที่เคลื่อนที่ในเขาวงกตโดยไม่ชนกำแพง
    • ใช้เซ็นเซอร์ตรวจจับดวงตาด้านล่างเพื่อตรวจสอบสีแดงว่าหุ่นยนต์ VR มาถึงตำแหน่งสุดท้ายแล้วหรือไม่
    • ใช้บล็อก [ Forever ] เพื่อให้หุ่นยนต์ VR เคลื่อนที่อย่างต่อเนื่องในเขาวงกต และใช้เซ็นเซอร์ Down Eye คอยตรวจสอบตำแหน่งสุดท้ายเพื่อหยุดหุ่นยนต์

คำแนะนำที่เป็นประโยชน์

  • ใช้บล็อก Down Eye detects จากหมวด Sensing เพื่อรายงานว่าเซ็นเซอร์ Down Eye ตรวจพบสีเฉพาะหรือไม่

    บล็อกตรวจจับสี VEXcode ที่อ่านค่า 'DownEye ตรวจจับสีแดงหรือไม่?'

    • คำสั่ง Python ที่ตรงกัน:

      down_eye.detect(RED)
  • ใช้เซ็นเซอร์วัดระยะด้านหน้าเพื่อตรวจสอบว่าหุ่นยนต์ VR เข้าใกล้กำแพงหรือไม่ ใช้บล็อกเปรียบเทียบ น้อยกว่า จากหมวดหมู่ผู้ปฏิบัติงาน เพื่อรายงานว่าระยะห่างระหว่างหุ่นยนต์ VR กับกำแพงของเขาวงกตนั้นน้อยกว่าค่าเกณฑ์หรือไม่ เพื่อตรวจสอบว่าหุ่นยนต์ VR กำลังเข้าใกล้กำแพงหรือไม่

    VEXcode น้อยกว่าบล็อกที่มีระยะห่างจากบล็อกที่รวมกันอ่านได้ 'FrontDistance ในหน่วยมิลลิเมตร < 200'

    • คำสั่ง Python ที่ตรงกัน:

      front_distance.get_distance(MM) < 200
  • ใช้บล็อก if then else จากหมวดหมู่ Control เพื่อตรวจสอบว่าหุ่นยนต์ VR เข้าใกล้กำแพงหรือไม่ และรันโค้ดเพื่อแสดงพฤติกรรมต่างๆ ตามเงื่อนไขบูลีน ถ้าเงื่อนไขบูลีนเป็น จริงบล็อกภายในส่วน ถ้า จะถูกเรียกใช้งาน ถ้าเงื่อนไขบูลีนเป็น เท็จบล็อกภายในส่วน มิฉะนั้น จะถูกเรียกใช้งาน

    บล็อก VEXcode ว่างเปล่าที่มีเงื่อนไข If then else ซึ่งอ่านค่า 'ถ้าเป็นเช่นนั้น และ' มิฉะนั้น

    • คำสั่ง Python ที่ตรงกัน:

      ถ้าเงื่อนไขเป็นจริง: ผ่าน
      
      ฉะนั้น: ผ่าน
      
  • ใช้คำสั่ง break block จากหมวด Control เพื่อออกจากลูปที่วนซ้ำทันที

    VEXcode บล็อก Break ที่อ่านค่า 'break'

    • คำสั่ง Python ที่ตรงกัน:

      หยุดพัก