ติดตั้ง payload และจุดศูนย์ถ่วง
UAT 302 การติดตั้งและประกอบรวมระบบอากาศยานไร้คนขับ
บทเรียน
เมื่อเรียนจบโมดูลนี้ ผู้เรียนจะสามารถ
- คำนวณแรงขับที่มอเตอร์แต่ละตัวต้องรับเมื่อจุดศูนย์ถ่วงเลื่อนจากศูนย์กลางแรงขับ
- กำหนดขอบเขตจุดศูนย์ถ่วงที่ยอมรับได้จากส่วนเผื่อแรงขับ
- ออกแบบการแยกการสั่นของ payload ด้วยตัวหน่วงตามหลักการส่งผ่านการสั่น
- ติดตั้งและยึด payload ให้ตรวจสอบได้และปลอดภัย
ทำไมต้องรู้
UAT 321 สอนคำนวณมวลรวมและตำแหน่งจุดศูนย์ถ่วง (CG) แล้ว โมดูลนี้ตอบคำถามถัดไปของคนติดตั้ง: CG เลื่อนได้แค่ไหนโดยยังบินปลอดภัย และ ยึดกล้องอย่างไรไม่ให้ภาพสั่น โดรนสำรวจของกรณีนี้ต้องเปลี่ยนระหว่างกล้องถ่ายภาพกับกล้องความร้อนตามภารกิจ ทุกครั้งที่เปลี่ยน CG และลักษณะการสั่นเปลี่ยนตาม หน่วยความรู้เรื่องน้ำหนักบรรทุกและจุดศูนย์ถ่วงของคลังความรู้โดรนแนะนำให้คำนวณด้วยตัวอย่างที่ตรวจคำตอบได้ แล้วยืนยันด้วยการทดลองแรงขับ ตัวเลขทั้งหมดเป็นข้อมูลสมมติ
CG เลื่อน มอเตอร์รับภาระไม่เท่ากัน
โดรนสี่ใบพัดแบบ X ที่ CG อยู่ตรงศูนย์กลาง มอเตอร์ทั้งสี่รับน้ำหนักเท่ากัน ถ้า CG เลื่อนไปข้างหน้าระยะ มอเตอร์หน้าต้องออกแรงมากขึ้นเพื่อให้โมเมนต์รอบ CG สมดุล (Quan, 2017) เมื่อมอเตอร์หน้าและหลังอยู่ห่างศูนย์กลางตามแนวหน้าหลัง แรงขับของมอเตอร์หน้าแต่ละตัวคือ มอเตอร์ที่ทำงานหนักกว่าเหลือแรงขับสำรองสำหรับควบคุมท่าทางน้อยลง เมื่อมีลมกระโชกหรือต้องเบรก อาจไม่พอ
ตัวอย่างที่ 1 CG เลื่อนเท่าใดจึงเกินเกณฑ์
โดรนหนัก 3.2 kg มอเตอร์ห่างศูนย์กลาง 0.35 m ตามแนวทแยง มอเตอร์แต่ละตัวให้แรงขับสูงสุด 1.8 kgf ทีมกำหนดว่าขณะลอยตัว มอเตอร์ใดต้องไม่ใช้เกิน 50% ของแรงขับสูงสุด เพื่อเหลือส่วนเผื่อสำหรับควบคุม
import math
G = 9.81
W = 3.2 * G # N
A = 0.35 * math.cos(math.radians(45)) # m ระยะหน้าหลังของมอเตอร์จากศูนย์กลาง
T_MAX = 1.8 * G # N ต่อมอเตอร์
LIMIT = 0.50
for d_cm in (0, 2, 4, 6):
d = d_cm / 100
tf, tr = W * (A + d) / (4 * A), W * (A - d) / (4 * A)
share = tf / T_MAX
print(f"CG +{d_cm} cm: front {tf:.2f} N, rear {tr:.2f} N, front motor at {share:.1%} of max -> {'ok' if share <= LIMIT else 'over limit'}")
d_max = A * (4 * LIMIT * T_MAX / W - 1)
print(f"largest CG offset within the limit: {d_max * 100:.1f} cm")
CG +0 cm: front 7.85 N, rear 7.85 N, front motor at 44.4% of max -> ok
CG +2 cm: front 8.48 N, rear 7.21 N, front motor at 48.0% of max -> ok
CG +4 cm: front 9.12 N, rear 6.58 N, front motor at 51.6% of max -> over limit
CG +6 cm: front 9.75 N, rear 5.95 N, front motor at 55.2% of max -> over limit
largest CG offset within the limit: 3.1 cm
ขอบเขต CG ของโดรนนี้จึงอยู่ในวงราว 3 cm จากศูนย์กลางแรงขับ กล้องความร้อนที่ติดยื่นไปข้างหน้าอาจดัน CG ออกนอกขอบเขตได้ง่าย ทีมต้องย้ายแบตเตอรี่ไปด้านหลังเพื่อถ่วง แล้วชั่งหาตำแหน่ง CG จริง และดูค่าคันเร่งของมอเตอร์แต่ละตัวจาก log หลังบินทดสอบ
แยกการสั่นของ payload
มอเตอร์และใบพัดสร้างการสั่นที่ความถี่การหมุนของมอเตอร์ และความถี่ที่ใบพัดผ่าน (ความถี่การหมุนคูณจำนวนใบ) กล้องที่ยึดแข็งกับโครงจะสั่นตาม ภาพเบลอและ gimbal ทำงานหนัก เอกสาร ArduPilot และ PX4 แนะนำให้แก้ที่ต้นเหตุก่อน เช่น ถ่วงใบพัดและทำโครงให้แข็ง แล้วจึงใช้ฐานยึดแยกการสั่น วิธีแยกการสั่นคือวาง payload บน ตัวหน่วงยาง ซึ่งทำให้ระบบมีความถี่ธรรมชาติ ตามหลักการสั่นแบบหนึ่งองศาอิสระ (Gavin, 2026; Delli Carri) อัตราส่วนการส่งผ่านการสั่นเมื่อไม่มีความหน่วงคือ โดย การสั่นจะลดลงเมื่อ และถ้า ใกล้ 1 การสั่นจะ ขยาย แทนที่จะลด
ตัวอย่างที่ 2 เลือกความแข็งของตัวหน่วง
gimbal กับกล้องหนัก 0.9 kg วางบนตัวหน่วง 4 ตัว มอเตอร์หมุน 5,000 rpm ใบพัด 2 ใบ เทียบตัวหน่วงนิ่มกับแข็ง
import math
M = 0.9 # kg
RPM, BLADES = 5000, 2
f_motor = RPM / 60
f_blade = f_motor * BLADES
print(f"excitation: motor {f_motor:.1f} Hz, blade pass {f_blade:.1f} Hz")
for name, k_each in (("soft", 2_000), ("stiff", 50_000)): # N/m ต่อตัวหน่วง
fn = math.sqrt(4 * k_each / M) / (2 * math.pi)
parts = []
for f in (f_motor, f_blade):
r = f / fn
t = 1 / abs(1 - r * r)
parts.append(f"{f:.0f} Hz: r {r:.2f}, T {t:.3f}")
print(f"{name:<5} fn {fn:.1f} Hz | " + " | ".join(parts))
excitation: motor 83.3 Hz, blade pass 166.7 Hz
soft fn 15.0 Hz | 83 Hz: r 5.55, T 0.034 | 167 Hz: r 11.11, T 0.008
stiff fn 75.0 Hz | 83 Hz: r 1.11, T 4.279 | 167 Hz: r 2.22, T 0.254
ตัวหน่วงนิ่มลดการสั่นที่ความถี่มอเตอร์เหลือไม่ถึง 4% ส่วนตัวหน่วงแข็งมีความถี่ธรรมชาติใกล้ความถี่มอเตอร์ จึงขยายการสั่นหลายเท่า ซึ่งแย่กว่ายึดแข็งเสียอีก แต่ตัวหน่วงที่นิ่มเกินไปทำให้กล้องแกว่งตามการเคลื่อนที่ช้า ๆ ของอากาศยาน และกล้องอาจยุบจนชนโครง จึงต้องมีตัวกันระยะและสายนิรภัยยึดกล้องไว้เสมอ
ยึด payload ให้ตรวจสอบได้
- ใช้ตัวยึดที่ออกแบบให้รับแรงตามทิศทางบิน และล็อกสกรูด้วยน้ำยากันคลายหรือแหวนล็อก
- เดินสายสัญญาณของ payload แยกจากสายกำลัง และเผื่อความยาวให้ gimbal หมุนได้สุดทุกแกนโดยไม่ดึงสาย
- ทำเครื่องหมายแนวตรวจการคลายบนสกรูสำคัญ เพื่อให้ตรวจก่อนบินด้วยตาได้
- บันทึกมวล ตำแหน่ง และชนิดตัวหน่วงของ payload แต่ละแบบในบัญชี configuration (โมดูล 5)
ปฏิบัติการประจำโมดูล
ปฏิบัติการ: เปลี่ยน payload อย่างปลอดภัย
- ชั่งหาตำแหน่ง CG จริงของโดรนฝึกกับ payload สองแบบ ด้วยวิธีแขวนหรือวางบนตาชั่งสองจุด
- คำนวณภาระของมอเตอร์หน้าด้วยตัวอย่างที่ 1 และปรับตำแหน่งแบตเตอรี่จนอยู่ในขอบเขต
- บินลอยตัวทดสอบ แล้วอ่านค่าเอาต์พุตของมอเตอร์แต่ละตัวจาก log เทียบกับการคำนวณ
- วัดการสั่นของ payload ด้วยตัวหน่วงสองแบบ เทียบกับตัวอย่างที่ 2
- เขียนขั้นตอนเปลี่ยน payload หนึ่งหน้าให้ทีมภาคสนามใช้
ข้อผิดพลาดที่พบบ่อย
ระวัง
- คิดว่าโดรนที่ลอยได้แปลว่า CG ถูกต้อง
- ใช้ตัวหน่วงที่แข็งหรือนิ่มโดยไม่คำนวณความถี่ธรรมชาติ
- ไม่มีสายนิรภัยยึด payload เมื่อยึดบนตัวหน่วง
- เดินสาย payload ตึงจน gimbal หมุนไม่สุด
- เปลี่ยน payload โดยไม่บันทึก configuration
สรุป
- CG เลื่อน ทำให้มอเตอร์ด้านนั้นรับแรง ส่วนเผื่อแรงขับกำหนดขอบเขต CG
- ตัวหน่วงแยกการสั่นเมื่อความถี่กระตุ้นสูงกว่า เท่าของความถี่ธรรมชาติ
- ถ้าความถี่ธรรมชาติใกล้ความถี่มอเตอร์ การสั่นจะขยาย
- ยึด payload ให้ตรวจสอบได้ มีสายนิรภัย และบันทึกใน configuration
แบบฝึกตรวจความเข้าใจ
- 30 N, 0.25 m, CG เลื่อน 0.05 m มอเตอร์หน้าแต่ละตัวรับแรงเท่าใด
- มวล 1 kg ความแข็งรวม 4,000 N/m ความถี่ธรรมชาติเท่าใด
- อัตราส่วนการส่งผ่านเท่าใด
- มอเตอร์ 6,000 rpm ใบพัด 3 ใบ ความถี่ใบพัดผ่านเท่าใด
- ทำไมตัวหน่วงที่แข็งเกินไปจึงอาจแย่กว่ายึดแข็ง
เฉลย
- N
- Hz
- Hz
- ความถี่ธรรมชาติอาจใกล้ความถี่มอเตอร์ ทำให้เกิดการสั่นพ้องที่ขยายการสั่น
สรุปสูตรสำคัญ
| แรงขับมอเตอร์หน้าและหลังเมื่อ CG เลื่อน d | |
| ความถี่ธรรมชาติ | |
| การส่งผ่านการสั่น (ไม่มีความหน่วง) |
แหล่งอ้างอิงหลัก
- Gavin, H. P. (2026). Dynamics of simple oscillators (CEE 541 course notes). Duke University. link
- Delli Carri, A. Base excitation & isolation: Explorable explanations. Coventry University. link
- ArduPilot Dev Team. Vibration damping. ArduPilot Copter documentation. link
- PX4 Autopilot. Vibration isolation. PX4 user guide (main). link
- Quan, Q. (2017). Introduction to multicopter design and control. Springer Singapore. link
- Fahlstrom, P. G., Gleason, T. J., & Sadraey, M. H. (2022). Introduction to UAV systems (5th ed.). Wiley. link
อ่านเพิ่มเติม
ศึกษาหน่วยความรู้ที่กำหนดล่วงหน้า ดูสื่อประกอบ และทำ quiz ประจำโมดูล
ในชั้นเรียน / ภาคสนาม
ปฏิบัติการในห้องแล็บหรือภาคสนามตามใบงาน พร้อม checklist ความปลอดภัย
หลักฐานการเรียนรู้: ใบงานที่ผ่านการตรวจและผล quiz