Skip to main content

บทเรียนที่ 3: หันไปที่หัวข้อ

คำสั่ง turn_to_heading ยังสามารถใช้เพื่อหมุนหุ่นยนต์ VR ได้ คำสั่งนี้จะ หมุนหุ่นยนต์ VR ไปยังส่วนหัวตามเข็มนาฬิกาที่กำหนดระหว่าง 0 ถึง 359.99 องศา เมื่อหุ่นยนต์ VR ชนกับปราสาทมันอาจถูกกระแทกจนกระเด็นออกนอกเส้นทาง คำสั่ง turn_to_heading  จะทำให้แน่ใจว่าหุ่นยนต์ VR จะหันไปเผชิญหน้ากับปราสาทต่อไปไม่ว่าจะเกิดอะไรขึ้นก่อนหน้านี้

มุมมองจากบนลงล่างของหุ่นยนต์ VR ที่มีวงกลมคล้ายเข็มทิศรอบๆแสดงมุมการวางแนว วงกลมทำเครื่องหมาย 0° ที่ด้านบน (ไปข้างหน้า), 90° ไปทางขวา, 180° ที่ด้านล่าง (ย้อนกลับ), และ 270° ไปทางซ้าย ลูกศรสีส้มที่ 0° แสดงทิศทางไปข้างหน้าของหุ่นยนต์

ตัวอย่างนี้จะมีหุ่นยนต์ VR เคลื่อนที่ไปล้มอาคารตรงกลาง จากนั้นหันตัวและล้มอาคารที่มุมล่างซ้ายของ Castle Crasher Playground

มุมมองด้านบนของสนามเด็กเล่น Castle Crasher ที่มีปราสาทตรงกลางและปราสาทด้านล่างซ้ายเน้นในกล่องสีแดงซึ่งระบุว่าโครงสร้างใดจะถูกกระแทกในบทเรียนนี้
  • ลบสองคำสั่งด้านล่างออก จากโปรเจกต์ ตอนนี้โปรเจกต์ของคุณควรมีลักษณะดังนี้:

    # เพิ่มรหัสโครงการใน "main"
    def main (): drivetrain.set_drive_velocity
        (100, PERCENT) drivetrain.set_turn_velocity
        (100, PERCENT) drivetrain.drive_for
        (FORWARD, 800, MM)
        drivetrain.drive_for (REVERSE, 800, MM)
  • ลากเข้าหรือพิมพ์คำสั่ง turn_to_heading  หลังคำสั่ง drive_for  ตั้งค่าพารามิเตอร์ของคำสั่ง turn_to_heading  270 องศา ตอนนี้โปรเจกต์ของคุณควรมีลักษณะดังนี้:

    # เพิ่มรหัสโครงการใน "main"
    def main (): drivetrain.set_drive_velocity
        (100, PERCENT) drivetrain.set_turn_velocity
        (100, PERCENT) drivetrain.drive_for
        (FORWARD, 800, MM) drivetrain.drive_for
        (REVERSE, 800, MM)
        drivetrain.turn_to_heading (270, DEGREES)
  • ลากเข้าหรือพิมพ์คำสั่ง drive_for และแนบไว้ด้านล่างคำสั่ง turn_to_heading  ตั้งค่าพารามิเตอร์ของคำสั่ง drive_for  เพื่อขับไปข้างหน้า 700 มิลลิเมตร (มม.) ตอนนี้โปรเจกต์ของคุณควรมีลักษณะดังนี้:

    # เพิ่มรหัสโครงการใน "main"
    def main (): drivetrain.set_drive_velocity
        (100, PERCENT) drivetrain.set_turn_velocity
        (100, PERCENT) drivetrain.drive_for
        (FORWARD, 800, MM) drivetrain.drive_for
        (REVERSE, 800, MM)
        drivetrain.turn_to_heading (270, DEGREES)
        drivetrain.drive_for (FORWARD, 700, MM)
  • เลือกปุ่ม “เปิดสนามเด็กเล่น” เพื่อเปิด Castle Crasher Playground หากยังไม่ได้เปิดอยู่
    แถบเครื่องมือ VEXcode VR ปุ่มเปิดสนามเด็กเล่นที่ด้านบนขวาของแถบเครื่องมือจะถูกเน้นด้วยกล่องสีแดง
  • เลือกปุ่ม "เริ่ม" เพื่อทดสอบโปรเจกต์
    แถบเครื่องมือ VEXcode VR ปุ่มเริ่มต้นที่ด้านบนขวาของแถบเครื่องมือจะถูกเน้นด้วยกล่องสีแดง
  • ดูหุ่นยนต์ VR เคลื่อนที่ไปข้างหน้าและชนกับอาคารตรงกลางก่อนที่จะย้อนกลับไปที่จุดเริ่มต้น จากนั้นหุ่นยนต์ VR จะหันไปที่ทิศทาง 270 องศาและขับไปข้างหน้าเพื่อชนกับอาคารที่มุมซ้ายล่างของ Castle Crasher Playground

    มุมมองด้านบนของสนามเด็กเล่น Castle Crasher ปราสาทกลางสนามเด็กเล่นและด้านล่างซ้ายของสนามเด็กเล่นถูกโค่นล้ม หุ่นยนต์ VR อยู่ที่ด้านล่างซ้ายของสนามเด็กเล่นและหันหน้าไปทางด้านซ้ายของสนามเด็กเล่น

มินิชาเลนจ์

สำหรับมินิชาเลต์นี้ หุ่นยนต์ VR จะต้องชนกับอาคารตรงกลางและอาคารทางด้านบนขวาของ Castle Crasher Playground คุณจะได้รับโปรเจกต์ แต่มีข้อผิดพลาด แก้ไขโปรเจกต์เพื่อแก้ปัญหามินิชาเลนจ์!

มุมมองด้านบนของสนามเด็กเล่น Castle Crasher ที่มีปราสาทตรงกลางและปราสาทด้านขวาบนเน้นในกล่องสีแดงซึ่งระบุว่าสิ่งก่อสร้างใดจะถูกล้มลงในความท้าทายนี้

ทำตามขั้นตอนต่อไปนี้เพื่อทำมินิชาเลนจ์:

  • คลิปวิดีโอด้านล่างแสดงให้เห็นว่าหุ่นยนต์ VR ควรเคลื่อนที่อย่างไรเพื่อล้มบล็อกทั้งสองชุด หุ่นยนต์ควรขับตรงไปข้างหน้าผ่านชุดบล็อกตรงกลางเพื่อกระแทกพวกเขาจากนั้นเลี้ยวขวาและขับไปข้างหน้าในชุดบล็อกด้านบนขวาเพื่อโค่นล้มพวกเขาเช่นกัน

    ไฟล์วิดีโอ
  • สร้างโครงการนี้โดยการเพิ่มหรือลบคำสั่งที่จำเป็น ใน โครงการ Unit2Lesson3

    # เพิ่มรหัสโครงการใน "main"
    def main (): drivetrain.set_drive_velocity (
        100, PERCENT) drivetrain.set_turn_velocity
        (100, PERCENT) drivetrain.drive_for
        (FORWARD, 1550, MM) drivetrain.turn_for
        (RIGHT, 180, DEGREES) drivetrain.drive_for
        (FORWARD, 700, MM)
        drivetrain.turn_for (RIGHT, 90, DEGREES)
  • เริ่มโปรเจกต์เพื่อดูว่าข้อผิดพลาดอยู่ตรงไหนในโค้ด
  • แก้ไขรหัสแล้วลองอีกครั้ง ดำเนินการขั้นตอนนี้ต่อจนกว่าการท้าทายเล็กๆจะเสร็จสมบูรณ์
  • เมื่อหุ่นยนต์ VR ชนกับอาคารตรงกลางและอาคารทางด้านบนขวาของ Castle Crasher Playgroundสำเร็จ ให้บันทึกโครงการ
  • บันทึกโปรเจกต์ก่อนดำเนินการต่อ

ขอแสดงความยินดี! คุณเอาชนะมินิชาเลนจ์!

คำถาม

โปรดเลือกลิงก์ด้านล่างเพื่อเข้าถึงแบบทดสอบบทเรียน

Google Doc /.docx /.pdf