หน้าแรก ดูโปรเจกต์ทั้งหมด
Intermediate

โปรเจกต์ BaBot: สร้าง Ball-Balancing Robot ของคุณเอง

BaBot เป็น Robot แบบ open-source ขนาดกะทัดรัดที่รักษาสมดุลลูกบอลแบบ real-time โดยใช้ array ของ infrared (IR) sensors และ ATmega32U4 microcontroller

โปรเจกต์ BaBot: สร้าง Ball-Balancing Robot ของคุณเอง
42,787 การดู
26 ถูกใจ

รายการอุปกรณ์และเครื่องมือ

1x Acrylic Sheet
-
1x Laser cutter (generic)
-
1x 3D printer filament (PLA)
-
16x IR Phototransistor
🛒 สั่งซื้อ
16x Wide-angle IR led
-
1x PCBWay Custom PCB
-
1x CD74HC4067 16-Kanal Analog Digital Multiplexer
-
1x DC Power supply - 5V 10A
-
3x [HB] Micro Servo MG90
🛒 สั่งซื้อ

แอปพลิเคชันและแพลตฟอร์ม

1x Arduino IDE 2.0 (beta)
เว็บ Official

รายละเอียดและวิธีทำ

BaBot เริ่มต้นจากการเป็นโครงงานสมัยมัธยมปลายในปี 2018 โดยในช่วงแรกใช้คอมพิวเตอร์และกล้องจากด้านบนเพื่อตรวจจับตำแหน่งลูกบอล หลังจากผ่านการพัฒนามาหลายครั้ง รวมถึงเวอร์ชันที่ใช้ Raspberry Pi พร้อมกล้องที่อยู่ใต้แผ่นใส ผมก็ได้พัฒนาการออกแบบที่มีประสิทธิภาพมากขึ้น โดยเวอร์ชันปัจจุบันใช้ IR Sensors และ Microcontroller ATmega32U4 ซึ่งช่วยให้หุ่นยนต์มีขนาดกะทัดรัดขึ้น ราคาประหยัด และใช้งานง่ายขึ้น

⚙️ หลักการทำงาน

  1. เมื่อคุณวางลูกบอลลงบนแผ่นใสของ BaBot ลำดับเหตุการณ์ที่น่าสนใจจะเริ่มขึ้น:​
  2. การตรวจจับ Infrared: ภายใต้แผ่นใสจะมีแผ่น PCB แผ่นที่สองซึ่งติดตั้ง IR LEDs และ Phototransistors จำนวนมาก โดย IR LEDs จะส่องแสงขึ้นด้านบน ซึ่งจะสะท้อนจากใต้ลูกบอลและถูกรับโดย Phototransistors การตั้งค่านี้ทำให้ BaBot สามารถกำหนดตำแหน่งของลูกบอลบนแผ่นใสได้อย่างแม่นยำแบบ Real-time​
  3. การประมวลผลข้อมูล: ข้อมูลตำแหน่งที่รวบรวมโดย PCB แผ่นที่สองจะถูกส่งไปยัง PCB หลัก ซึ่งเป็นที่อยู่ของ Microcontroller ATmega32U4 ที่เหมือนกับใน Arduino Leonardo โดย Microcontroller นี้จะประมวลผลข้อมูลโดยใช้ PID (Proportional-Integral-Derivative) Algorithm เพื่อคำนวณความแตกต่างระหว่างตำแหน่งปัจจุบันของลูกบอลกับตำแหน่งเป้าหมายที่ต้องการ (โดยปกติคือจุดกึ่งกลางของแผ่นใส)​
  4. การคำนวณความเอียงของแผ่นใส: ในการปรับตำแหน่งของลูกบอล BaBot จะต้องเอียงแผ่นใสในองศาที่เหมาะสม ซึ่งเกี่ยวข้องกับการแก้สมการ Inverse Kinematics เพื่อกำหนดองศาที่แม่นยำสำหรับ Servo Motors ทั้งสามตัว เพื่อให้ได้ความเอียงตามที่ต้องการ​
  5. การสั่งการเคลื่อนที่: องศาที่คำนวณได้จะถูกส่งไปยัง Servo Motors ซึ่งแต่ละตัวจะเชื่อมต่อกับแขนกลที่มีลูกบอลโลหะอยู่ที่ปลาย ลูกบอลเหล่านี้ทำหน้าที่เป็นข้อต่อและยึดติดกับด้านล่างของแผ่นใสด้วยแม่เหล็ก ช่วยให้การเคลื่อนที่ราบรื่นและตอบสนองได้ดี​
  6. วงจรป้อนกลับต่อเนื่อง: หลังจากปรับทิศทางของแผ่นใสแล้ว ระบบจะวัดตำแหน่งของลูกบอลใหม่อีกครั้ง และกระบวนการนี้จะวนซ้ำ วงจร Feedback Loop นี้ทำงานประมาณ 30 ครั้งต่อวินาที เพื่อให้แน่ใจว่าลูกบอลจะรักษาสมดุลอยู่บนแผ่นใสได้เสมอ​

การทำงานร่วมกันอย่างลงตัวของ Sensors, Control Algorithms และอุปกรณ์ทางกลเหล่านี้ ช่วยให้ BaBot สามารถรักษาสมดุลของลูกบอลแบบ Real-time ได้ ซึ่งเป็นการสาธิตการทำงานของหุ่นยนต์และระบบควบคุมที่น่าตื่นตาตื่นใจ

🛠️ คำแนะนำการประกอบ

  • การประกอบ BaBot นั้นทำได้ง่ายด้วยการออกแบบที่เป็นแบบ Modular ต่อไปนี้คือวิธีการทำให้หุ่นยนต์ทรงตัวลูกบอลของคุณมีชีวิตขึ้นมา:​
  • ประกอบส่วนแขน: เริ่มต้นด้วยการสร้างแขนของหุ่นยนต์ ชิ้นส่วนเหล่านี้มีความสำคัญอย่างยิ่งต่อการเคลื่อนที่และการทรงตัวของฐาน​
  • ติดตั้งแขนเข้ากับ Servos: ขันสกรูกันแขนที่ประกอบแล้วเข้ากับ Servo Motors ให้แน่น ตรวจสอบให้แน่ใจว่ายึดติดอย่างมั่นคงเพื่อรองรับการเคลื่อนที่ในขณะทำงาน​
  • ติดตั้ง Servos ลงในฐานที่พิมพ์จาก 3D-Printed: วาง Servo Motor แต่ละตัวลงในช่องที่กำหนดไว้ในฐาน 3D-Printed ซึ่งถูกออกแบบมาให้พอดีกับ Servos เพื่อเป็นรากฐานที่มั่นคง​
  • เชื่อมต่อ Servos เข้ากับ PCB หลัก: ใช้คอนเนคเตอร์ที่ให้มา เสียบ Servo Motor แต่ละตัวเข้ากับแผ่น PCB หลัก แผ่นนี้ทำหน้าที่เป็นศูนย์กลางในการควบคุม Servos​
  • ยึด PCB เข้ากับฐาน: จัดวาง PCB หลักให้ตรงกับจุดยึดบนฐานและขันสกรูให้เข้าที่ เพื่อให้มั่นใจว่า PCB จะไม่ขยับเขยื้อนระหว่างที่หุ่นยนต์ทำงาน​
  • ต่อสายแพเข้ากับ PCB หลัก: เชื่อมต่อปลายด้านหนึ่งของสายแพ (Flat Cable) เข้ากับพอร์ตที่เกี่ยวข้องบน PCB หลัก สายนี้จะเชื่อมต่อ PCB หลักเข้ากับ PCB แผ่นที่สอง เพื่อช่วยในการสื่อสารระหว่างอุปกรณ์​
  • ประกอบ PCB แผ่นที่สองเข้ากับแผ่น PMMA: ติดตั้ง PCB แผ่นที่สองลงบนแผ่น PMMA (Polymethyl methacrylate) แบบใส แผ่นนี้ทำหน้าที่เป็นพื้นผิวที่ลูกบอลใช้ทรงตัวและเป็นส่วนสำคัญในการทำงานของหุ่นยนต์​
  • ต่อสายแพเข้ากับ PCB แผ่นที่สองและยึดด้วยลูกบอลแม่เหล็ก: เสียบปลายอีกด้านของสายแพเข้ากับ PCB แผ่นที่สอง จากนั้นจัดวางแผ่น PMMA ให้ตรงกับฐานและยึดไว้ด้วยลูกบอลแม่เหล็กที่ให้มา แม่เหล็กเหล่านี้ช่วยให้ถอดและประกอบได้ง่าย สะดวกต่อการบำรุงรักษาและการปรับแต่ง​
  • สำหรับผู้ที่สนใจชุดคิทพร้อมประกอบ ซึ่งมาพร้อมกับอุปกรณ์ที่จำเป็นครบถ้วนและคำแนะนำโดยละเอียด สามารถแวะชมได้ที่ undefined
  • การประกอบ

    การติดตามตำแหน่งลูกบอล

    PCB หลักแบบกำหนดเอง

    PCB แผ่นที่สองแบบกำหนดเอง

    จะหา BaBot ได้จากที่ไหน

    BaBot มอบประสบการณ์การลงมือทำจริงในการสร้างและทำความเข้าใจระบบควบคุมแบบ Real-time ด้วยการออกแบบที่เป็น Open-source จึงช่วยส่งเสริมการทดลองและการเรียนรู้ ทำให้เป็นโปรเจกต์ที่ยอดเยี่ยมสำหรับทั้งมือใหม่และนักประดิษฐ์ที่มีประสบการณ์​

    สำหรับผู้ที่สนใจศึกษารายละเอียดเพิ่มเติมเกี่ยวกับ BaBot หรือต้องการสั่งซื้อชุดคิท สามารถดูข้อมูลเพิ่มเติมได้ที่ ba-bot.com

    ขณะนี้เปิดให้สั่งจองล่วงหน้า (Pre-orders) แล้ว และจะเริ่มการผลิตเมื่อยอดสั่งจองครบ 100 ชุด ​

    ไม่ว่าคุณจะเป็นครูที่กำลังมองหาโครงงานที่น่าสนใจในชั้นเรียน นักเรียนที่กระตือรือร้นจะศึกษาด้านหุ่นยนต์ หรือเพียงแค่คนที่ชื่นชอบอุปกรณ์นวัตกรรมใหม่ๆ BaBot ถูกออกแบบมาเพื่อดึงดูดความสนใจและให้ความรู้แก่ทุกคน​

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

    จับจองชุดคิท BaBot ของคุณวันนี้ และเริ่มต้นการเดินทางสู่โลกแห่งหุ่นยนต์ที่น่าหลงใหล

    Code

    🔒 ปลดล็อก Code

    สนับสนุนเพื่อรับ Source Code หรือแอปพลิเคชันสำหรับโปรเจกต์นี้

    รหัสอ้างอิงโปรเจกต์: babot-build-your-own-ball-balancing-robot-8089c7
    2450 บาท
    PromptPay QR Code

    ประเมิน Project

    อยากได้งานคล้ายโปรเจคนี้? กดไปหน้าประเมินราคา

    เอาฟอร์มยาวออกจากท้ายหน้า Project แล้ว เหลือเป็นปุ่มให้กดไปกรอกหน้าเดียว ตัวใหญ่ เว้นบรรทัดเยอะ อ่านง่ายกว่า

    รีวิวจากคนใช้งานจริง

    รีวิวจากลูกค้าและคนที่เคยใช้งาน

    ถ้าเคยสั่งงาน เคยอ่านหน้านี้แล้วได้ประโยชน์ หรือมีข้อเสนอแนะ ฝากรีวิวไว้ได้เลย

    กำลังโหลดรีวิว...