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

โปรเจกต์ Hex-Hex Fruit

มาสร้าง hexapod robot ที่มี feature เจ๋งๆ กันเถอะ!

โปรเจกต์ Hex-Hex Fruit

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

1x ESP32 Development Board
🛒 สั่งซื้อ
1x mpu-6050 gyro and accelerometer
🛒 สั่งซื้อ
1x Buffer / Line Driver, 74HC126
-
1x Lithium Battery 7.4V 8.4V 18650 Charger & Protection Board
🛒 สั่งซื้อ
18x LewanSoul LX-16A Full Metal Gear Serial Bus Servo
-
5x Resistor 10k ohm
-
1x Microswitch, IP67
🛒 สั่งซื้อ
1x Bantam Tools Desktop PCB Milling Machine
-
1x Hot Air Station, Industrial
-
1x DC Power Connector, Straight
🛒 สั่งซื้อ
1x Jumper wires (generic)
🛒 สั่งซื้อ
1x General Purpose Transistor NPN
-
1x Drill / Driver, Cordless
-
1x Solder Wire, Lead Free
-
1x Laser cutter (generic)
-
1x Connector Adapter, DC Power - 2.1mm
🛒 สั่งซื้อ
4x 18650 lithium Battery
-
1x Solder Flux, Soldering
-
1x Soldering iron (generic)
-
1x 12V 20A LED Light Rocker Toggle Switch
-
}

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

เรื่องราว

บทนำ

สวัสดีทุกคน! จุดประสงค์ของบทความนี้คือเพื่ออธิบายวิธีการสร้าง hexapod robot ตั้งแต่เริ่มต้น หุ่นยนต์จะสามารถเคลื่อนที่ได้หลากหลายรูปแบบ และสามารถรักษาสมดุลของลำตัวบนพื้นที่ไม่เรียบได้ (รักษาลำตัวให้อยู่ในแนวระนาบ) เรามาแบ่งโปรเจกต์ทั้งหมดออกเป็น 3 ส่วนหลัก:

  • ด้านกลไก (mechanical side)
  • hardware
  • software

และไปดูรายละเอียดของทั้ง 3 ส่วนกันครับ

ด้านกลไก (Mechanical side)

ในการประกอบ chassis ของหุ่นยนต์ เราใช้ไม้ กระจกออร์แกนิก (อะคริลิก) และฉากยึดโลหะ เริ่มจากโครงหลัก เราใช้ไม้และ laser cutter ในการทำส่วนบนและส่วนล่างของลำตัว จากนั้นเชื่อมต่อเข้าด้วยกันด้วยฉากยึดโลหะ (ตัวสีดำมาพร้อมกับ servo และตัวสีเงินเราทำขึ้นเอง)

ในการทำขา เราเชื่อมต่อ 3 servos เข้าด้วยกันโดยใช้ brackets ปลายด้านหนึ่งเชื่อมต่อกับโครงหลัก และปลายอีกด้านเชื่อมต่อกับกระจกออร์แกนิก กระจกถูกตัดด้วย laser เช่นกัน และหลังจากนั้นเราจึงดัดมันด้วย heat gun (ดูขั้นตอนด้านล่าง) ซึ่งทำให้ได้รูปทรงที่โค้งมน หลังจากดัดแล้วเราเชื่อมต่อสองส่วนเข้าด้วยกันโดยใช้บล็อกไม้และกาว

ขา (Legs)

ขั้นตอนการให้ความร้อน

ขั้นตอนการดัด

การตรวจสอบการก้าว (step check)

เพื่อตรวจจับว่าหุ่นยนต์สัมผัสพื้นในขณะเดินหรือไม่ เราได้เพิ่ม micro switch ในขาทุกข้าง switch ถูกติดตั้งบน bracket ที่ทำขึ้นเอง เราเจาะรูในไม้ที่เชื่อมต่อชิ้นส่วนขา 2 ส่วน แล้วใส่แกนโลหะและสปริงลงไป ส่วนของแกนที่สัมผัสพื้นเคลือบด้วย polyurethane (ช่วยเพิ่มแรงเสียดทานบนพื้นและทำให้หุ่นยนต์มั่นคงขึ้น) และส่วนบนของแกนจะเชื่อมต่อกับ micro switch และกดมันเมื่อขาแตะพื้น

Hardware

แผงวงจรหลัก (mainboard)

เราได้สร้างแผงวงจรที่รองรับการเชื่อมต่อกับ esp32, mpu-6050 และ servo motors โดย servo ที่เราใช้ในโปรเจกต์นี้ใช้ half-duplex UART สำหรับการสื่อสารกับ micro controller และเพื่อให้บรรลุการสื่อสารรูปแบบนี้ เราได้ใช้ 74hc126, transistor และ resistors อีกสองสามตัว (สำหรับ NOT gate)

พลังงาน (Power)

Circuit board รับแรงดันเฉลี่ย 7.4V จากอินพุตซึ่งจ่ายให้แก่ servo motors หลังจากนั้นแรงดันจะถูกลดลงเหลือ 5v โดยใช้ dc->dc converter เพื่อจ่ายไฟให้คอมโพเนนต์อื่นๆ ของวงจร (esp32, mpu-6050...) ในการจ่ายพลังงานนี้ เราใช้ lithium batteries ขนาด 3.7v จำนวน 4 ก้อน และเชื่อมต่อเข้ากับ charging board ขนาดเล็กดังที่แสดงด้านล่าง:

แบตเตอรี่เชื่อมต่อกับพอร์ตชาร์จและสวิตช์ ซึ่งทำหน้าที่จ่ายไฟไปยัง main board

Software

คุณสามารถใช้ Arduino IDE หรือ platform IO เพื่อ compile และ upload code ไปยัง micro controller ตัว code เขียนด้วยภาษา c++ และแบ่งออกเป็นหลาย libraries ซึ่งช่วยให้ผู้ใช้สามารถแทนที่บางส่วนของโปรเจกต์ได้โดยการเปลี่ยนเฉพาะไฟล์ library ที่เกี่ยวข้อง โปรดทราบว่า code ยังอยู่ในระหว่างการพัฒนา ดังนั้นจึงยังไม่สมบูรณ์แบบนัก

แอปพลิเคชันบนมือถือ

เราใช้โทรศัพท์มือถือเชื่อมต่อกับ esp32 โดยใช้แอปพลิเคชัน bluetooth ที่สร้างขึ้นสำหรับโปรเจกต์นี้โดยเฉพาะ มันช่วยให้ผู้ใช้สามารถขยับหุ่นยนต์และสลับโหมดต่างๆ ได้ นอกจากนี้ยังแสดงแรงดันไฟฟ้าที่มีอยู่ใน servo motors ซึ่งเป็นตัวบ่งชี้ระดับแบตเตอรี่ที่ดี (8.4v - ชาร์จเต็ม, 6.4v - แบตเตอรี่หมด)

การรักษาสมดุล (Balancing)

หุ่นยนต์ใช้ PID library เพื่อรักษาลำตัวให้อยู่ในแนวระนาบ คุณสามารถดูขั้นตอนการทำงานได้ด้านล่าง:

บทสรุป

โปรเจกต์นี้ใช้เวลา 1 ปีในการสร้าง และยังห่างไกลจากความสมบูรณ์แบบ มันยังอยู่ในระหว่างการพัฒนา ดังนั้น code จะมีการอัปเดตเรื่อยๆ หากใครสนใจเรื่อง robotics ก็น่าจะพบว่าบทความนี้น่าสนใจ เพราะมันแบ่งปัญหาใหญ่ๆ ออกเป็นปัญหาย่อยๆ ซึ่งคุณสามารถนำไปประยุกต์ใช้แยกกันในโปรเจกต์ของคุณเองได้ เขียนมาหาผมได้หากคุณมีคำถามใดๆ

โชคดีครับ!

Code

🔒 ปลดล็อก Code

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

รหัสอ้างอิงโปรเจกต์: hex-hex-fruit-d3b6c2
299 บาท
PromptPay QR Code