โมดูล 3/5 · สัปดาห์ 7–9 · 27 ชม.

เครื่องจำลองและทักษะการบิน

UAT 201 พื้นฐานระบบอากาศยานไร้คนขับ

เวลาเรียนประมาณ 80 นาทีร่าง รอตรวจปรับปรุงล่าสุด 27 กันยายน 2569

บทเรียน

เมื่อเรียนจบโมดูลนี้ ผู้เรียนจะสามารถ

  1. เลือกเครื่องจำลองให้ตรงเป้าหมาย ระหว่างการฝึกแบบ FPV การบินมองลำ และ SITL
  2. ตั้งรีโมตเป็น USB joystick ตรวจแกน และอธิบายการจัดก้านแบบ Mode 1 และ Mode 2
  3. อธิบายเหตุที่คำสั่งดูกลับทิศเมื่อหัวลำหันเข้าหาตัว และคำนวณทิศเคลื่อนที่จากทิศหัวลำ
  4. บันทึกและวิเคราะห์ผลการฝึกอย่างมีเงื่อนไขเดิม

ความรู้พื้นฐานที่ควรมี: UAT 201 โมดูล 1–2

ทำไมต้องรู้

ความผิดพลาดของมือใหม่ส่วนใหญ่เกิดในไม่กี่วินาทีแรก เช่น ดันก้านผิดทิศเมื่อหัวลำหันเข้าหาตัว หรือตกใจจนลดคันเร่งหมด ถ้าผิดในเครื่องจำลองแค่กดเริ่มใหม่ แต่ถ้าผิดกับโดรนจริงอาจเสียทั้งเครื่องและทำให้คนบาดเจ็บ การฝึกในเครื่องจำลอง (simulator) อย่างเป็นระบบจึงเป็นขั้นแรกก่อนจับโดรนจริง

เลือกเครื่องจำลองตามเป้าหมาย

เป้าหมายเครื่องจำลองแบบใดหลักฐานการเรียน
ฝึกมือแบบ FPVซิมที่มองผ่านกล้องบนลำ ใช้รีโมต USBโหมด แกนควบคุม และจำนวนครั้งที่ชน
ฝึกบินมองลำซิมที่ตั้งมุมมองจากผู้บังคับบนพื้นได้ความผิดพลาดเมื่อหัวลำหันเข้าหาตัว
ทดสอบภารกิจSITL ร่วมกับสถานีควบคุมเส้นทางที่ตั้งเทียบกับเส้นทางใน log

SITL (software in the loop) รันซอฟต์แวร์ควบคุมการบินตัวจริงบนคอมพิวเตอร์ร่วมกับแบบจำลองอากาศยาน บน Windows เริ่มได้ง่ายจากแท็บ Simulation ของ Mission Planner ส่วน QGroundControl ใช้ได้ทั้งกับ PX4 และ ArduPilot บน Windows, macOS, Linux, Android และ iOS

การผ่านแบบฝึกในเครื่องจำลองไม่ได้ยืนยันว่าพร้อมบินจริง ภาพที่สมจริงก็ไม่ได้แปลว่าแรง ลม และแบตเตอรี่ถูกจำลองสมจริงตามไปด้วย

รีโมตและการจัดก้าน

รีโมตหลายรุ่นต่อคอมพิวเตอร์ผ่าน USB เป็น joystick ได้ ซึ่งเป็นคนละเรื่องกับโพรโทคอลวิทยุที่ใช้คุยกับเครื่องรับบนโดรน ก่อนฝึกต้องตรวจทีละแกนว่าชื่อ ทิศ และช่วงสุดถูกต้อง สายที่ชาร์จได้บางเส้นไม่ส่งข้อมูล จึงต้องใช้สายข้อมูล

ก้านบังคับสองก้าน ก้านซ้ายขึ้นลงคือ throttle ซ้ายขวาคือ yaw ก้านขวาขึ้นลงคือ pitch ซ้ายขวาคือ roll ด้านล่างเขียนว่า Mode 2
ภาพที่ 1 การจัดก้านบังคับแบบ Mode 2

ตามเอกสาร ArduPilot Mode 2 ใช้ก้านซ้ายคุม throttle และ yaw ก้านขวาคุม pitch และ roll ส่วน Mode 1 ใช้ก้านซ้ายคุม pitch และ yaw ก้านขวาคุม throttle และ roll เอกสาร PX4 ระบุว่า Mode 2 นิยมกว่า ทีมควรใช้โหมดเดียวกันตั้งแต่ฝึกจนถึงบินจริง

เมื่อหัวลำหันเข้าหาตัว

ก้านบังคับสั่งการเทียบกับ ตัวลำ ไม่ใช่เทียบกับผู้บังคับ ผลัก roll ขวาแปลว่า “ไปทางขวาของโดรน” ถ้าหัวลำหันออกจากตัว ขวาของโดรนคือขวาของเรา แต่ถ้าหัวลำหันเข้าหาตัว ขวาของโดรนคือซ้ายของเรา

สองภาพ ด้านซ้ายหัวลำหันออกจากตัว ผลัก roll ขวาแล้วลำเคลื่อนไปทางขวาที่ผู้บังคับเห็น ด้านขวาหัวลำหันเข้าหาตัว ผลัก roll ขวาเหมือนเดิมแต่ลำเคลื่อนไปทางซ้ายที่ผู้บังคับเห็น
ภาพที่ 2 คำสั่งเดียวกันแต่เห็นทิศต่างกันเมื่อหัวลำหันเข้าหาตัว

ตัวอย่างที่ 1 ผลัก roll ขวา 5 m แล้วลำไปทางไหน

ผู้บังคับยืนหันหน้าไปทางทิศเหนือ ทิศหัวลำ (heading) วัดตามเข็มนาฬิกาจากทิศเหนือ

import math

distance = 5.0
for heading in (0, 90, 180, 270):
    move = math.radians(heading + 90)                    # ขวาของโดรน
    east = round(distance * math.sin(move), 6) + 0.0        # + 0.0 ตัดเครื่องหมาย −0.0
    north = round(distance * math.cos(move), 6) + 0.0
    seen = "right" if east > 0.01 else "left" if east < -0.01 else ("away" if north > 0 else "towards you")
    print(f"heading {heading:>3}°: east {east:+.1f} m, north {north:+.1f} m -> pilot sees it move {seen}")
heading   0°: east +5.0 m, north +0.0 m -> pilot sees it move right
heading  90°: east +0.0 m, north -5.0 m -> pilot sees it move towards you
heading 180°: east -5.0 m, north +0.0 m -> pilot sees it move left
heading 270°: east +0.0 m, north +5.0 m -> pilot sees it move away

คำสั่งเดียวกันทำให้ลำไปได้สี่ทิศ ขึ้นกับทิศหัวลำ ผู้ฝึกจึงต้องฝึกคิดจากมุมของโดรน วิธีช่วยคือนึกว่าตัวเองนั่งอยู่บนโดรน หรือฝึกบินวงกลมรอบตัวให้เห็นหัวลำหลายทิศ

ฝึกอย่างมีหลักฐาน

บันทึกเงื่อนไขทุกครั้ง ได้แก่ ซิม ลำจำลอง ฉาก โหมดบิน ความไว และตัวช่วยที่เปิด ถ้าเปลี่ยนเงื่อนไข ผลที่ดีขึ้นอาจมาจากฉากที่ง่ายกว่า ไม่ใช่ฝีมือ

ตัวอย่างที่ 2 วิเคราะห์บันทึกฝึกขึ้นลงบนจุด

โจทย์เดิมทุกรอบ: ขึ้นบิน บินไปจุดที่ห่าง 20 m หันหัวลำเข้าหาตัวแล้วกลับมาลงบนจุดขึ้น ใน Stabilize mode

log = [  # (รอบ, จำนวนครั้งที่ชน, เวลา s, ลงในจุดหรือไม่, แก้ roll ผิดทิศกี่ครั้ง)
    (1, 3, 95, False, 4), (2, 2, 88, False, 3), (3, 1, 80, True, 2),
    (4, 1, 76, True, 1), (5, 0, 71, True, 1), (6, 0, 69, True, 0),
]
first, last = log[:3], log[3:]
avg = lambda rows, i: sum(r[i] for r in rows) / len(rows)
print(f"rounds 1-3: crashes {avg(first, 1):.1f}, time {avg(first, 2):.0f} s, wrong-way roll {avg(first, 4):.1f}")
print(f"rounds 4-6: crashes {avg(last, 1):.1f}, time {avg(last, 2):.0f} s, wrong-way roll {avg(last, 4):.1f}")
print("landed on the pad:", sum(r[3] for r in log), "of", len(log))
rounds 1-3: crashes 2.0, time 88 s, wrong-way roll 3.0
rounds 4-6: crashes 0.3, time 72 s, wrong-way roll 0.7
landed on the pad: 4 of 6

ตัวเลขดีขึ้นทุกด้าน แต่มีเพียง 6 รอบกับผู้ฝึกคนเดียว บอกได้แค่พัฒนาการภายใต้เงื่อนไขนี้ สิ่งที่ควรบันทึกเป็นคำด้วย เช่น “รอบ 2 หัวลำหันเข้าหาตัว แก้ roll ผิดทิศสองครั้ง” มีประโยชน์กว่า “ยังบินไม่ดี”

ปฏิบัติการประจำโมดูล

ปฏิบัติการ: ฝึกบินในเครื่องจำลอง

  1. ต่อรีโมตกับคอมพิวเตอร์ผ่าน USB ตรวจแกนทีละแกนในระบบปฏิบัติการและในซิม บันทึกชื่ออุปกรณ์ รุ่นซิม และ Mode ที่ใช้
  2. ฝึกขึ้นลงบนจุดเดิมสามครั้ง แล้วฝึกบินโดยหันหัวลำออก ด้านข้าง และเข้าหาตัว
  3. ทำโจทย์ในตัวอย่างที่ 2 อย่างน้อย 6 รอบ บันทึกลงแบบบันทึกฝึก แล้ววิเคราะห์ด้วยโค้ด
  4. เปิด SITL ใน Mission Planner บินด้วยโหมด Loiter เทียบกับ Stabilize บันทึกว่าโหมดช่วยอะไร
  5. ให้เพื่อนสังเกตและจดเหตุการณ์ แล้วเลือกแก้พฤติกรรมเดียวในรอบถัดไป

ข้อผิดพลาดที่พบบ่อย

ระวัง

  • ไม่ตรวจแกนก่อนฝึก จนฝึกกับแกนที่กลับทิศ
  • เปลี่ยนซิม ฉาก หรือโหมดแล้วเทียบคะแนนกับรอบก่อน
  • ฝึกแต่หัวลำหันออกจากตัว ไม่เคยฝึกหัวลำเข้าหาตัว
  • เชื่อว่าผ่านซิมแล้วพร้อมบินจริง
  • ต่อรีโมตฝึกเข้าโดรนจริงระหว่างฝึกในซิม

สรุป

  • เลือกเครื่องจำลองตามเป้าหมาย FPV บินมองลำ หรือ SITL และรู้ข้อจำกัดของแต่ละแบบ
  • Mode 2 ใช้ก้านซ้ายคุม throttle กับ yaw ก้านขวาคุม pitch กับ roll
  • ก้านสั่งการเทียบกับตัวลำ ทิศที่เห็นจึงขึ้นกับทิศหัวลำ
  • บันทึกเงื่อนไขและเหตุการณ์ทุกรอบ แล้วเทียบเฉพาะรอบที่เงื่อนไขเหมือนกัน

แบบฝึกตรวจความเข้าใจ

  1. ใน Mode 2 ก้านขวาคุมอะไรบ้าง
  2. หัวลำชี้ทิศตะวันออก (90°) ผลัก roll ขวา ลำจะเคลื่อนไปทิศใด
  3. SITL ต่างจากเครื่องจำลองฝึกมือแบบ FPV อย่างไร
  4. รอบแรกใช้ Loiter รอบสองใช้ Stabilize ทำไมจึงเทียบเวลาโดยตรงไม่ได้
  5. ทำไมจึงต้องใช้สายข้อมูล ไม่ใช่สายชาร์จ เมื่อต่อรีโมตเป็น joystick
เฉลย
  1. Pitch และ roll
  2. ทิศใต้ คือเข้าหาผู้บังคับที่หันหน้าไปทางเหนือ ()
  3. SITL รันซอฟต์แวร์ควบคุมการบินตัวจริงเพื่อทดสอบภารกิจและโหมด ส่วนซิม FPV เน้นฝึกมือควบคุม
  4. เงื่อนไขต่างกัน Loiter ช่วยรักษาตำแหน่ง ผลที่ต่างอาจมาจากตัวช่วย ไม่ใช่ฝีมือ
  5. สายชาร์จบางเส้นส่งไฟอย่างเดียว คอมพิวเตอร์จึงมองไม่เห็นรีโมต

สรุปสูตรสำคัญ

ทิศเคลื่อนที่เมื่อผลัก roll ขวา
องค์ประกอบทิศตะวันออกและเหนือ

แหล่งอ้างอิงหลัก

  1. ArduPilot Dev Team. Radio control calibration (transmitter modes). ArduPilot Copter documentation. link
  2. QGroundControl. QGroundControl user guide. link
  3. ArduPilot Dev Team. Mission Planner simulation. Mission Planner documentation. link
  4. ArduPilot Dev Team. SITL simulator (software in the loop). link
  5. Federal Aviation Administration. (2016). Remote pilot – small unmanned aircraft systems study guide (FAA-G-8082-22). link

อ่านเพิ่มเติม

ศึกษาหน่วยความรู้ที่กำหนดล่วงหน้า ดูสื่อประกอบ และทำ quiz ประจำโมดูล

ในชั้นเรียน / ภาคสนาม

ปฏิบัติการในห้องแล็บหรือภาคสนามตามใบงาน พร้อม checklist ความปลอดภัย

หลักฐานการเรียนรู้: ใบงานที่ผ่านการตรวจและผล quiz

แบบทดสอบประจำโมดูล

แบบทดสอบนี้ใช้ตรวจความเข้าใจ (formative) ไม่ใช่การสอบเก็บคะแนน

โดเมนความรู้: การวางแผนภารกิจ การบิน และการจำลอง · การควบคุม ออโตไพลอต และการนำทาง · กฎหมาย ความปลอดภัย และความเสี่ยง