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

เลือกเส้นทางที่สั้นที่สุด

สร้างระบบพิกัดบนสนามฝึกทักษะเสมือนจริง VIQC โดยกำหนดตำแหน่งเริ่มต้นของ Hero Bot เป็นจุดกำเนิด (0,0) สร้างอัลกอริทึมโดยใช้บล็อก [Drive for], [Turn to heading] และ [Spin ​​for] เพื่อขับเคลื่อน Hero Bot ไปตามเส้นทางที่สั้นที่สุดไปยังตำแหน่งที่กำหนด เพื่อนำแผ่นดิสก์ทั้งหมดออกจากเครื่องจ่ายสีน้ำเงินและเครื่องจ่ายสีเหลือง และเก็บแผ่นดิสก์หมายเลข ให้เร็วที่สุด!

  • เลือก VIQC Virtual Skills - Slapshot Playground
  • ขับหุ่นยนต์ฮีโร่ไปยังตำแหน่งที่ (0, 290) ตามเส้นทางที่สั้นที่สุด
  • เขียนโค้ดให้ Hero Bot หันไปทางตู้จ่ายแผ่นดิสก์สีฟ้าและนำแผ่นดิสก์ทั้งหมดออกจากตู้
  • ขับหุ่นยนต์ฮีโร่ไปยังตำแหน่งที่ (1000, 175) โดยใช้เส้นทางที่สั้นที่สุด
  • เขียนโค้ดให้ Hero Bot หันไปที่ตู้จ่ายแผ่นดิสก์สีเหลืองและนำแผ่นดิสก์ทั้งหมดออกจากตู้
  • ขับหุ่นยนต์ฮีโร่ไปยังตำแหน่งที่ (730, 329) ตามเส้นทางที่สั้นที่สุด
  • เขียนโค้ดให้ Hero Bot หมุนมอเตอร์ดูดเพื่อดูดแผ่นดิสก์เข้าไป

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

  • เส้นตรงระหว่างตำแหน่งปัจจุบันของหุ่นยนต์กับตำแหน่งเป้าหมาย คือเส้นทางที่สั้นที่สุดในการขับเคลื่อนหุ่นยนต์ไปยังเป้าหมาย
  • ใช้ตัวแปรสองตัวเพื่อบันทึกและจัดเก็บพิกัด X และ Y ปัจจุบันของ Hero Bot
  • ใช้ทฤษฎีบทพีทาโกรัสในการคำนวณระยะทางในการขับรถ ใช้ฟังก์ชัน Atan เพื่อค้นหาทิศทางการขับเคลื่อน

    สมการอยู่ทางซ้าย และแผนภาพอยู่ทางขวา ทฤษฎีบทพีทาโกรัสถูกนิยามว่า 'C เท่ากับรากที่สองของ A กำลังสอง บวก B กำลังสอง' ระยะห่างในแนวตั้งระหว่างสองจุดกำหนดโดย 'A = Y2 - Y1'และระยะห่างในแนวนอนกำหนดโดย 'B = X2 - X1' ตัวแปร C แทนระยะทางในการขับขี่ แผนภาพแสดงความสัมพันธ์ระหว่าง A, B และ C ในรูปสามเหลี่ยม โดยหุ่นยนต์อยู่ที่จุด BC และตำแหน่งที่สองอยู่ที่ AC มุมทีต้า (theta) ถูกกำหนดให้เป็นมุมที่อยู่เหนือค่าลบพาย (-pi) ส่วน 2 และอยู่ต่ำกว่าค่าบวกพาย (-pi) ส่วน 2

    สมการและแผนภาพที่แสดงการใช้ฟังก์ชัน atan ซึ่งกำหนดเป็น 'θ เท่ากับ atan ของ A ส่วน B' ผลลัพธ์ที่ได้คือค่าทีต้า ซึ่งจะอยู่ระหว่างค่าลบพายส่วน 2 และค่าบวกพายส่วน 2 แผนภาพทางด้านขวาแสดงหุ่นยนต์ที่มีวงกลมล้อมรอบ และมีชื่อเรื่องว่า 'แปลงทีต้าเพื่อขับเคลื่อนทิศทาง'