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

กองหน้าผู้ไว้ใจได้

สร้างอัลกอริทึมเพื่อนำทาง Hero Bot ไปยังตำแหน่งที่มันสามารถเก็บ Triball ที่วางอยู่ ณ ตำแหน่งที่กำหนดบนสนามได้อย่างมั่นคง ใช้บล็อก [ขับเคลื่อน] และ [เลี้ยว] เซ็นเซอร์ GPS มอเตอร์แขน และมอเตอร์ดูด เพื่อขับเคลื่อน Hero Bot ไปยังตำแหน่งที่ (900,-900) จากนั้นขับเคลื่อน Hero Bot ไปเก็บ Triball ที่ไฮไลต์ทั้งสามลูก เคลื่อนที่ไปยังพิกัด (600, 300) และทำคะแนน Triball ในประตูของฝ่ายแดง

  • เลือก VRC Virtual Skills - Over Under Playground
  • ใช้เช็คลิสต์ก่อนการแข่งขันเพื่อเลือก ตำแหน่งเริ่มต้น “H”, Sทิศทางเริ่มต้น “เหนือ”และ การโหลดหุ่นยนต์ล่วงหน้า “ไม่” สำหรับหุ่นยนต์
  • สร้างอัลกอริทึมเพื่อนำทางหุ่นยนต์ไปยังตำแหน่งที่กำหนด
  • สร้างอัลกอริทึมเพื่อนำทางหุ่นยนต์ไปยังตำแหน่งที่สามารถหยิบลูกบอล Triball ซึ่งวางอยู่ที่ตำแหน่งเฉพาะบนสนามได้
  • เขียนโปรแกรมให้หุ่นยนต์หมุนมอเตอร์แขนเพื่อลดแขนลงจนสุดเพื่อหยิบลูกบอล Triball บนสนาม
  • ใช้อัลกอริธึมเพื่อนำทางหุ่นยนต์ไปยังพิกัด (900, -900)
  • เขียนโค้ดให้ Hero Bot เก็บ Triball ที่ไฮไลต์ไว้ที่พิกัด (-100,-600) และทำคะแนนในประตูของฝ่ายแดง 
    • ใช้อัลกอริทึมเพื่อควบคุมหุ่นยนต์ให้ไปยังตำแหน่งที่สามารถหยิบ Triball ที่ไฮไลต์ไว้ซึ่งอยู่ที่ (-100, -600) ได้
    • เขียนโปรแกรมให้หุ่นยนต์หมุนมอเตอร์ดูดเพื่อหยิบลูกบอล Triball ขึ้นมา
    • ควบคุมหุ่นยนต์ไปยังพิกัด (600, 300) และหันหุ่นยนต์ไปทางเป้าหมายของฝ่ายพันธมิตรสีแดง
    • เขียนโปรแกรมให้หุ่นยนต์หมุนมอเตอร์ดูดเพื่อปล่อยลูกบอล Triball ไปยังเป้าหมายของฝ่ายแดง
  • เขียนโค้ดให้ Hero Bot เก็บ Triball ที่ไฮไลต์ไว้ที่ตำแหน่ง (-100, 0) แล้วทำคะแนนในประตูของฝ่ายพันธมิตรแดง
  • เขียนโค้ดให้ Hero Bot เก็บ Triball ที่ไฮไลต์ไว้ที่ตำแหน่ง (-125, 600) แล้วทำคะแนนในประตูของฝ่ายพันธมิตรแดง 

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

  • ในขณะที่กำลังเก็บลูกบอล Triball ให้ล้อหุ่นยนต์ทุกวงสัมผัสกับแผ่นกระเบื้องสีเทาในสนามอย่างต่อเนื่อง เพื่อให้ภารกิจสำเร็จลุล่วงไปด้วยดี
  • ในการหยิบ Triball ที่พิกัด (X2, Y2) เราต้องจัดตำแหน่ง Triball ให้ตรงกับกลไกรับของ Striker ไม่ใช่การขับเคลื่อน Striker ไปที่ (X2, Y2) ดังนั้น ระยะทางในการขับเคลื่อนคือระยะทางระหว่างจุดเริ่มต้น (X1, Y1) และ Triball (X2, Y2) ลบด้วยระยะทางระหว่างช่องรับอากาศและจุดศูนย์กลางของตัวตี

    แผนภาพจากบนลงล่างแสดงระยะทางการขับเคลื่อนของหุ่นยนต์'วินาที ระหว่างจุดเริ่มต้น (X1, Y1) และลูกบอล Triball ที่ (X2, Y2)

  • ใช้บล็อกชุด จำนวน บล็อกจากหมวดตัวแปร และบล็อกย่อย บล็อกจำนวน บล็อกจากหมวดตัวดำเนินการ เพื่อแสดงนิพจน์ทางคณิตศาสตร์ในการคำนวณระยะทางในการขับเคลื่อนเพื่อหยิบ Triball ขึ้นมา

    VEXcode Set variable block containing a Subtract block and a Variable block, that all together reads 'set driveDistance to driveDistance - 300'.

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

      ระยะทางขับรถ = ระยะทางขับรถ - 300
  • เพื่อให้หุ่นยนต์เคลื่อนที่ไปยังตำแหน่งที่แม่นยำ ต้องป้องกันไม่ให้หุ่นยนต์ขับไปชนลูกบอลสามเหลี่ยมหรือแท่งบนสนาม ซึ่งอาจทำให้เบี่ยงเบนจากเป้าหมายได้
  • ใช้ My Block จากหมวด My Blocks เพื่อสร้างลำดับของบล็อกที่สามารถนำมาใช้ซ้ำได้หลายครั้งตลอดทั้งโปรเจ็กต์ บล็อกของฉันสามารถมีพารามิเตอร์หลายตัวเพื่อเพิ่มฟังก์ชันการทำงานได้มากขึ้น วิธีนี้จะทำให้โครงการสั้นลงและอ่านง่ายขึ้น

    VEXcode บล็อกของฉัน บล็อกคำจำกัดความที่อ่านค่า 'define driveForwardTo'. พารามิเตอร์เชิงตัวเลขสองตัวในบล็อกนี้มีชื่อว่า X2 และ Y2

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

      def driveForwardTo(X2, Y2):
  • หากต้องการความช่วยเหลือในการใช้ My Blocks ในโปรเจ็กต์ โปรดเลือกปุ่ม “TUTORIALS” ใน VEXcode VR และเลือก My Blocks Tutorial

    ไอคอนบทช่วยสอนจากแถบเครื่องมือ VEXcode VR

    ไอคอนบทช่วยสอนการสร้างบล็อกของฉันใน VEXcode VR

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้เซ็นเซอร์ GPS ในสนามเด็กเล่น VRC Over Under คลิกที่นี่