กลับไปหน้ารวมไฟล์
jenny-5-robot-2a0eeb.md

Jenny 5 คือหุ่นยนต์ฮิวแมนนอยด์ (เกือบจะ) ที่ถูกออกแบบมาเพื่อใช้ในการวิจัยเป็นหลัก แต่ก็ช่วยงานมนุษย์ได้ด้วย อยากรู้จัก Jenny 5 ให้มากขึ้นก็ไปหาอ่านกันได้

แรงบันดาลใจของ Jenny 5 มาจากหุ่นยนต์ Johnny 5 ในหนังคลาสสิกอย่าง Short Circuit หนังดีที่เด็กช่าง/วิศวะต้องดูสักครั้งในชีวิต!

Jenny 5 ประกอบด้วย:

  • ฐานเคลื่อนที่ พร้อมแทร็ก (เหมือนรถถังน้อยๆ)
  • ขาแบบยืดหยุ่นได้ 1 ขา
  • แขน 2 ข้าง ข้างละ 7 องศาอิสระ (7-DOF) จัดเต็ม!
  • หัว 1 หัว

ไฟล์ต้นฉบับทุกอย่าง (แบบ CAD, ซอฟต์แวร์ ฯลฯ) ของ Jenny 5 นั้นเปิดให้ดาวน์โหลดฟรีทั้งหมด ไลเซนส์เป็นแบบ MIT เอาไปใช้ได้ทั้งงานส่วนตัวและงาน商用 จัดไปวัยรุ่น!

การสร้าง Jenny 5 นั้นง่ายและประหยัด (เมื่อเทียบกับหุ่นตัวอื่นๆ) ชิ้นส่วนส่วนใหญ่หาซื้อได้จากร้านขายของหุ่นยนต์ทั่วไป ชิ้นส่วนพิเศษก็พิมพ์ด้วยเครื่องพิมพ์ 3D ได้ ส่วนโปรไฟล์อลูมิเนียมก็ตัดและเจาะได้ด้วยเครื่องมือพื้นฐานที่ช่างสมัครเล่นทั่วไปมีกัน

ประมาณการค่าใช้จ่าย (ไม่รวมคอมพิวเตอร์) อยู่ที่ ประมาณ 2,500 USD (ดูรายละเอียดเพิ่มเติมได้จากบิลวัสดุ)

Jenny 5 ถูกออกแบบด้วย OpenSCAD ซึ่งเป็นซอฟต์แวร์ CAD แบบที่เราเขียนโค้ดเพื่อสร้างวัตถุ แทนที่จะใช้เมาส์ลากๆ วาดๆ เหมาะกับสาย coders มากๆ

สถาปัตยกรรมของหุ่นยนต์ (Robotic Architecture)

Jenny 5 เป็นระบบที่ซับซ้อน ทำงานแบบหลายโหนด (multi-nodal)

  • ฐาน (The Platform): ใช้แทร็กเพื่อความมั่นคงสูงและเกาะถนนดี โดยเฉพาะในสภาพแวดล้อมกลางแจ้ง ขับเคลื่อนด้วยมอเตอร์ DC 2 ตัว พร้อมเกียร์ดาวเคราะห์อัตราทด 50:1 เพื่อแรงบิดสูง ควบคุมด้วยบอร์ด RoboClaw
  • ขา (The Leg): ออกแบบมาให้ยืดหยุ่นเป็นเอกลักษณ์ ใช้ Linear Actuator 2 ตัว ช่วยให้หุ่นปรับความสูงและรักษาสมดุลบนพื้นที่ไม่เรียบได้ ควบคุมด้วยบอร์ด RoboClaw เช่นกัน
  • แขน 7-DOF (7-DOF Arms): แต่ละแขนใช้สเต็ปเปอร์มอเตอร์ 6 ตัว พร้อมเกียร์ทด 27:1 ความแม่นยำสูงได้มาจาก เซ็นเซอร์วัดตำแหน่งแบบแม่เหล็ก AS5147 ที่ให้ค่าตำแหน่งแบบสัมบูรณ์ (Absolute Position) มอเตอร์และเซ็นเซอร์ของแต่ละแขนถูกควบคุมโดยบอร์ด A-Star 32U4 Mini

กริปเปอร์ (มือจับ) ขับเคลื่อนด้วยเซอร์โวมอเตอร์ ต่ออยู่กับบอร์ด A-Star 32U4 Mini ตัวเดียวกันกับที่ควบคุมแขนทั้งข้าง และยังมีเว็บแคมติดอยู่ที่กริปเปอร์เพื่อใช้จดจำวัตถุที่อยู่ใกล้ๆ อีกด้วย

หัว มี 2 องศาอิสระ ใช้สเต็ปเปอร์มอเตอร์ 2 ตัว ซึ่งมีเซ็นเซอร์แม่เหล็กติดไว้สำหรับอ่านตำแหน่ง หัวมีเว็บแคมสำหรับตรวจจับวัตถุและเซ็นเซอร์อัลตราโซนิกสำหรับวัดระยะทาง ส่วนประกอบทั้งหมดของหัว (ยกเว้นกล้อง) ต่อกับบอร์ด Arduino Nano

หุ่นยนต์ตัวนี้ใช้พลังงานจากแบตเตอรี่ LiPo 2 ก้อน: ก้อนหนึ่งสำหรับฐานและขา อีกก้อนสำหรับแขนและหัว

สู้งานนะน้อง! ห้ามช็อตนะตัวนี้

ซอฟต์แวร์และระบบควบคุม

บอร์ด A-Star / Arduino ตัวนี้มันรันเฟิร์มแวร์พิเศษที่เรียกว่า Scufy ซึ่งสามารถควบคุมสเต็ปเปอร์มอเตอร์หลายตัวและอ่านเซ็นเซอร์ได้หลากหลายแบบ ทั้งปุ่มกด อัลตราโซนิก โพเทนชิโอมิเตอร์ อินฟราเรด, LIDAR ฯลฯ เฟิร์มแวร์ Arduino แบบกำหนดเองตัวนี้ทำหน้าที่เป็นชั้นกลาง (abstraction layer) ระหว่างฮาร์ดแวร์กับซอฟต์แวร์ระดับสูงบน PC

ซอฟต์แวร์บน PC ถูกสร้างขึ้นโดยใช้ไลบรารีหลายตัว ซึ่งส่งคำสั่งผ่านพอร์ตอนุกรม (serial port) ไปยังบอร์ด A-Star/Arduino และไปยังคอนโทรลเลอร์ RoboClaw

หุ่นยนต์ตัวนี้สามารถทำงานในโหมด รีโมทคอนโทรล ผ่านอินเทอร์เฟซบนสมาร์ทโฟน หรือจะโปรแกรมให้ทำงานแบบ นำทางอัตโนมัติ (Autonomous Navigation) ก็ได้ แต่ละข้อต่อ (joint) ถูกปรับค่า PID มาแล้วเพื่อการเคลื่อนไหวที่ลื่นไหล โดยลูปฟีดแบ็กทำงานบนไมโครคอนโทรลเลอร์โหนดท้องถิ่นเพื่อลดความหน่วง (latency) ให้เหลือน้อยที่สุด

คำสั่งต่างๆ จะถูกส่งผ่าน WebSocket Server จากไคลเอนต์ HTML5 ที่รันบนเบราว์เซอร์ ไปยัง PC ควบคุม (ซึ่งมักจะเป็นแล็ปท็อปหรือ SBC) ที่ติดตั้งอยู่บนตัวหุ่นยนต์ เราสามารถควบคุมหุ่นยนต์ด้วยมือผ่านแอปพลิเคชัน HTML5 ที่รันในเบราว์เซอร์บนสมาร์ทโฟนได้ แอปพลิเคชัน HTML5 นั้นจะเชื่อมต่อกับเซิร์ฟเวอร์ที่รันอยู่บนหุ่นยนต์ เซิร์ฟเวอร์ตัวนี่แหละที่เป็นตัวดำเนินการคำสั่งต่างๆ (เช่น เคลื่อนที่, อ่านเซ็นเซอร์) จริงๆ เซิร์ฟเวอร์ตัวนี้ถูกสร้างขึ้นบน WebSocket เบอร์เบาๆ ตัวหนึ่ง

คอมพิวเตอร์วิทัศน์ (Computer Vision): ใช้ OpenCV เพื่อการรับรู้สภาพพื้นที่และการจดจำวัตถุผ่านเว็บแคมที่ติดตั้งอยู่ในส่วนหัวและกริปเปอร์

ด้วยองค์ประกอบทั้งหมดนี้ หุ่นยนต์ตัวนี้จึงสามารถนำไปใช้ในสถานการณ์ได้หลากหลาย มาดูตัวอย่างสั้นๆ ว่ามันทำอะไรได้บ้าง (ถ้าโปรแกรมถูกต้องนะ):

  • ทำความสะอาดบ้าน
  • เตรียมอาหาร
  • ทำความสะอาดโต๊ะในครัว
  • ทำงานในสวน
  • งานเฝ้าระวัง
  • งานกู้ภัย
  • การจัดการภัยพิบัติ
  • ดับเพลิง
  • ... และอื่นๆ อีกเพียบ
Jenny 5 - testing the platform
Jenny 5 - moving through garden
Jenny 5 - moving arms
Jenny 5 in garden
Jenny 5 and me in garden
Jenny 5 with leg compressed
เจนนี่ 5 ตัวเป็นๆ
แขนเจนนี่ 5 มุมใกล้ชิด
ฐานและขาของเจนนี่ 5
วงจรอิเล็กทรอนิกส์ในแขน
เจนนี่ 5 มุมมองแบบดีไซน์
ฐานของเจนนี่ 5
ขาเจนนี่ 5 (มุมหน้าตรงและด้านข้าง)
แขนเจนนี่ 5
กริปเปอร์ (มือจับ) ของเจนนี่ 5
ดีไซน์ใหม่ของแผงวงจร (PCB) สำหรับแขน
HTML5 client เอาไว้ควบคุม
วงจรอิเล็กทรอนิกส์รุ่นใหม่และรุ่นเก่าสำหรับแขน
วงจรอิเล็กทรอนิกส์ของฐานและขา วางแผนจะมาแทน Roboclaw ในอนาคต

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

apps:
  - "1x OpenCV"
  - "1x Fritzing"
  - "1x Arduino IDE"
  - "1x Visual Studio 2017"
  - "1x vmicro"
  - "1x OpenSCAD"
author: "moltean"
category: "Motors & Robotics"
components:
  - "1x Stepper motor with 50:1 gearbox"
  - "1x Column drilling machine"
  - "14x Stepper driver A4988 Pololu"
  - "1x Mastech MS8217 Autorange Digital Multimeter"
  - "1x Caliper"
  - "1x Hole saw"
  - "1x Soldering iron (generic)"
  - "2x Linear DC motor (12V, 750N)"
  - "1x Roboclaw 7A"
  - "1x Arduino Nano R3"
  - "1x 3D Printer (generic)"
  - "2x DC motor (generic)"
  - "8x Stepper motor with 27:1 gearbox"
  - "14x AS5147 - Magnetic, Rotary Position Senso"
  - "2x A-Star 32U4 Mini"
  - "1x Solder Wire, Lead Free"
  - "1x Roboclaw 15A"
  - "1x Screw driver"
  - "1x Mitre saw"
description: "เจนนี่ 5 คือหุ่นยนต์ Open-source ตึงๆ จัดไปทั้งแพลตฟอร์มเคลื่อนที่ ขาโค้งงอได้ แขน 2 ข้าง (แต่ละข้างเทพ 7 องศาอิสระ) และหัวสุดหล่อ งานง่ายแต่โคตรเท่!"
difficulty: "Intermediate"
documentationLinks: []
downloadableFiles:
  - "https://github.com/jenny5-robot/jenny5-html5"
  - "https://github.com/jenny5-robot/Scufy"
  - "https://github.com/jenny5-robot/Scufy"
  - "https://github.com/jenny5-robot/Scufy-Lib"
  - "https://github.com/jenny5-robot/jenny5-html5"
encryptedPayload: "U2FsdGVkX1/uqpEpnUenge3920Zp033cgu6bhjcAU+8BG3Zafe+54kkOuk00nE6C7nhuB/D/eyjKVo0NRhp9WMGC43Rgo7Ut9//uXltN2xSBKYtvR/bzAgj33LRd+4yK94Kn9uEhIBybG3FEBKn8yZJA5zoZcZulSRNxINQcuIVhAZxUn5u5rjj6OFu1GNIa"
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/jenny-5-robot-2a0eeb_cover.jpg"
lang: "en"
likes: 26
passwordHash: "97f6fa70bb90a5043811cd7372aedb9eae64380cfe77df1fb6d2f75b66a7d636"
price: 4500
seoDescription: "Jenny 5 is an open-source robot featuring a mobile platform, flexible leg, and two arms with 7 degrees of freedom."
tags:
  - "remote control"
  - "robots"
title: "เจนนี่ 5 หุ่นยนต์เทพๆ วัยรุ่นสายช่างต้องมี!"
tools: []
videoLinks:
  - "https://www.youtube.com/embed/hdJjoeEZpkE"
  - "https://www.youtube.com/embed/TEIDooj2Ez0"
  - "https://www.youtube.com/embed/QCJ_H5Qos-U"
views: 12005