กลับไปหน้ารวมไฟล์
ball-and-plate-pid.md

Precision PID Control: Ball and Plate

ระบบ Ball and Plate เป็นปัญหาคลาสสิกในทฤษฎีการควบคุม คล้ายกับหุ่นยนต์ทรงตัว แต่ทำงานในสองแกนแทนที่จะเป็นแกนเดียว ต้องอาศัยความแม่นยำระดับต่ำกว่ามิลลิเมตร และการปรับแต่งทางคณิตศาสตร์อย่างจริงจัง

ultrasonic_servo_mount_detail_1772682020744.png

อัลกอริทึม PID

  1. ค่า Error: จุดศูนย์กลางของแผ่นคือ [X:0, Y:0] กล้อง (หรือ Resistive Touch Panel) ตรวจจับได้ว่าลูกบอลอยู่ที่ [X:15, Y:-10] ความแตกต่างนั้นคือ "Error"
  2. Proportional: ทำการแก้ไขทันทีโดยอิงตามขนาดของ Error
  3. Integral: หากลูกบอลเคลื่อนที่ไปยังจุดศูนย์กลางไม่เร็วพอ ให้ค่อยๆ เพิ่มการแก้ไข
  4. Derivative: เมื่อลูกบอล เข้าใกล้ จุดศูนย์กลาง ให้ใช้เบรก (การแก้ไขแบบย้อนกลับ) เพื่อไม่ให้มันเคลื่อนที่เลยจุดศูนย์กลางและกลิ้งตกลงไปอีกด้าน!

ฮาร์ดแวร์ที่จำเป็น

  • Arduino Mega/Uno: ต้องอาศัยการคำนวณทางคณิตศาสตร์ที่ซับซ้อน
  • Resistive Touch Panel (4-wire): ดึงมาจากแท็บเล็ตเก่า ซึ่งทำหน้าที่เป็น "แผ่น" (Plate) เมื่อลูกเหล็กกลิ้งอยู่บนนั้น มันจะส่งออกพิกัด X/Y ที่แม่นยำทันที
  • High-Speed Servos (x2): วางอยู่ใต้แผ่นบน Universal Joint ตัวหนึ่งควบคุมการเอียงในแกน X อีกตัวหนึ่งควบคุมการเอียงในแกน Y

การทำโปรเจกต์นี้สำเร็จหมายความว่าคุณได้เชี่ยวชาญ PID แล้ว ทำให้คุณสามารถตั้งโปรแกรม Gimbals สำหรับการทรงตัว หรือ Quadcopters ที่ลอยอยู่ได้

ข้อมูล Frontmatter ดั้งเดิม

title: "Ball and Plate Balancing Robot"
description: "The ultimate physics challenge! Build an active control system that perfectly balances a rolling steel ball on a moving flat plate."
category: "Motors & Robotics"
difficulty: "Advanced"