myCobot 280 JN + AIKit 3D Vision
บทที่ 1

รู้จักอุปกรณ์

ทำความรู้จักภาพรวมของระบบ myCobot 280 Jetson Nano + AIKit 3D Vision ส่วนประกอบทั้งหมด คุณสมบัติทางเทคนิค และความสามารถหลักของระบบ

1.1 ภาพรวมของระบบ

ชุด myCobot 280 Jetson Nano + AIKit 3D Vision เป็นชุดอุปกรณ์การเรียนรู้และวิจัย ด้านหุ่นยนต์แขนกลร่วมกับระบบการมองเห็นแบบสามมิติ (3D Vision) ที่บูรณาการความสามารถของ Computer Vision และการควบคุมแขนกล 6 แกนเข้าไว้ด้วยกัน

ระบบทั้งหมดขับเคลื่อนด้วยคอมพิวเตอร์ฝังตัว NVIDIA Jetson Nano ซึ่งติดตั้งอยู่ที่ฐานของแขนกล ทำให้สามารถทำงานแบบ Standalone ได้ โดยไม่ต้องเชื่อมต่อกับคอมพิวเตอร์ภายนอกตลอดเวลา

ระบบนี้ออกแบบมาเพื่อใช้สำหรับ:

  • การเรียนการสอน วิชาหุ่นยนต์ ระบบอัตโนมัติ และ AI
  • การทดลองและสร้างต้นแบบ (Prototype) ของระบบหยิบจับและจัดเรียงวัตถุอัตโนมัติ (Pick & Place)
  • การพัฒนาโปรเจกต์ด้วยภาษา Python, ชุดเครื่องมือกราฟิก myBlockly หรือเชื่อมต่อกับ ROS

หุ่นทำงานยังไง? (ภาพรวมระบบ)

ก่อนเข้าสเปก ดูภาพรวมว่าระบบทั้งหมดต่อกันยังไง มีตัวละคร 4 ตัวทำงานกันเป็นทีม:

🧑‍💻 คุณ (ผู้ใช้) พิมพ์โค้ด Python / ลากบล็อก myBlockly
↓ ส่งคำสั่ง
🧠 Jetson Nano (ในฐานหุ่น) คอมพ์เล็กฝัง รัน Ubuntu + Python + AI
มี GPU สำหรับ Vision/Deep Learning
↓ Serial /dev/ttyTHS1 (1 Mbps)
🔌 Atom Board (ที่ปลายแขน) ESP32 microcontroller
ขับ LED + IO + Gripper
↓ ขับมอเตอร์
⚙️ Servo Motor × 6 (J1 J6) มอเตอร์ฉลาด 6 ตัวในแต่ละข้อต่อ
หมุนไปมุมที่บอกได้แม่นยำ
💡
เปรียบเทียบกับร่างกายคน

คนสั่ง "หยิบแก้ว" สมอง วางแผน เส้นประสาท ส่งสัญญาณ กล้ามเนื้อ ขยับ แขน เคลื่อน

หุ่น: Python script Jetson วางแผน Serial cable ส่งสัญญาณ Atom + Servo ขับ แขน เคลื่อน

📖 อยากเข้าใจคำศัพท์มากกว่านี้ ไปดู 👶 คู่มือมือใหม่

ทำไมต้องเป็นรุ่น JN? เปรียบเทียบกับรุ่นอื่น

myCobot 280 มีหลายรุ่นย่อยที่ต่างกันที่ "สมอง" เลือกตามงาน:

รุ่น280 M5280 PI280 JN ⬅ ตัวที่เรามี
สมอง ESP32 Microcontroller Raspberry Pi 4 (4GB RAM) NVIDIA Jetson Nano (4GB) + GPU
OS ไม่มี (ต้องคุยจาก PC) Ubuntu Mate 20.04 Ubuntu Mate 20.04 (focal)
มี GPU? ❌ (CPU only) 128-core Maxwell GPU
CUDA / TensorRT รัน YOLOv8/PyTorch ได้
เหมาะกับ การควบคุมพื้นฐาน, การเรียน เขียนโค้ด Standalone, ROS AI/Computer Vision, Deep Learning
กินไฟ ต่ำ (USB powered) กลาง (~5W) สูง (10W MaxN mode)
Standalone? ❌ ต้องต่อ PC
🎯
เลือก JN เพราะ AI + 3D Vision

ถ้าทำงาน เฉพาะการเคลื่อนไหวพื้นฐาน (Pick & Place ด้วยพิกัดตายตัว) รุ่น M5 ก็พอ

ถ้าต้องการ การมองเห็น (Vision) + AI ตรวจจับวัตถุ ต้องเป็น JN เพราะมี GPU + CUDA สำหรับรัน YOLOv8/PyTorch อันเป็นจุดเด่นที่รุ่นอื่นทำไม่ได้

รุ่น PI เหมาะกับงานวิจัย ROS ที่ไม่จำเป็นต้องใช้ Deep Learning

1.2 ส่วนประกอบของ myCobot 280 JN

แขนกล myCobot 280 Jetson Nano เป็นแขนกลแบบ 6 องศาอิสระ (6-DOF) ที่ออกแบบมาสำหรับงานวิจัยและการศึกษา มีลักษณะเด่นคือฝัง NVIDIA Jetson Nano ไว้ในฐานทำให้ทำงานแบบ Standalone ได้ พร้อมตัวควบคุมเสริม ESP32 สำหรับ I/O และ Wi-Fi/Bluetooth ข้อมูลทางเทคนิคแบ่งเป็นหมวดดังนี้:

📘
👶 ก่อนอ่านตารางสเปก คำใหม่ที่ต้องรู้

DoF (Degrees of Freedom) = "ระดับความอิสระ" ของแขน มี 6 DoF หมายความว่าขยับได้ 6 ทิศทางอิสระ (เหมือนแขนมนุษย์มี ไหล่ ศอก ข้อมือ)
Joint (ข้อต่อ) = จุดที่แขนพับได้ มี 6 จุด เรียก J1 (ฐาน) ถึง J6 (ปลายแขน)
Reach / Working Radius = ระยะที่ปลายแขนเอื้อมถึง 280 mm = ~ความยาวมือถึงข้อศอก
Payload = น้ำหนักของที่หยิบได้สูงสุด (รวม Gripper) เกินกว่านี้มอเตอร์อาจเสียหาย
Repeatability = "ความนิ่ง" ของแขน ส่งไปจุดเดิมกี่ครั้งก็มาห่างกันไม่เกิน 0.5 mm
End-Effector = "เครื่องมือ" ที่ติดปลายแขน เช่น Gripper (มือจับ), Pump (ปั๊มดูด)

1.2.1 ข้อมูลเชิงกล (Mechanical)

รายการรายละเอียด
จำนวนแกน (Degrees of Freedom)6 แกน
ระยะการเอื้อม (Working Radius)280 มิลลิเมตร
น้ำหนักบรรทุก (Payload)250 กรัม
น้ำหนักตัว (Weight)1,030 กรัม
ความแม่นยำในการทำซ้ำ (Repeat Positioning Accuracy)± 0.5 มิลลิเมตร
ความเร็วสูงสุดของข้อต่อ160°/s (ตามสเปกของ Elephant)
อายุการใช้งานต่อเนื่อง (Working Lifespan)500 ชั่วโมง ใช้งานต่อเนื่อง
อุณหภูมิใช้งาน (Operating Temperature)−5°C ถึง 45°C (สเปกผู้ผลิต)
วัสดุ / สีพลาสติก ABS / ขาว-ดำ
การยึดติดรู LEGO Technology + รูสกรู M4
หัวต่อปลายแขน (End Flange)รู LEGO + รูสกรู + ขั้วเซอร์โวสำหรับ Adaptive Gripper

1.2.2 ช่วงการเคลื่อนที่ของข้อต่อ (Joint Range)

ข้อต่อทั้ง 6 มีช่วงมุมการหมุนดังนี้ (อ้างอิงสเปกทางการของ Elephant ใช้ตรวจสอบก่อนสั่งคำสั่ง send_angles):

ข้อต่อตำแหน่งทางกายภาพช่วงมุม (องศา)
J1ฐาน (Base)−165° ถึง +165°
J2ไหล่ (Shoulder)−165° ถึง +165°
J3ศอก (Elbow)−165° ถึง +165°
J4ข้อมือ 1 (Wrist Pitch)−165° ถึง +165°
J5ข้อมือ 2 (Wrist Roll)−165° ถึง +165°
J6หน้าจาน (Flange)−175° ถึง +175° (กว้างกว่าตัวอื่น)
ℹ️
หมายเหตุ Firmware version

การตรวจสอบขีดจำกัด Joint แบบอัตโนมัติทำได้บน Atom firmware ≥ 7.3 และ pymycobot ≥ 4.0.2 เท่านั้น ดูรายละเอียดทั้งหมดในเชิงเทคนิคใน บทที่ 7.2

1.2.3 หน่วยประมวลผล (Compute Platform)

ระบบมีหน่วยประมวลผล 2 ตัว ทำงานร่วมกัน:

1.2.3.1 Main Controller NVIDIA Jetson Nano

รายการรายละเอียด
CPUQuad-core ARM Cortex-A57 @ 1.43 GHz
GPU128-core NVIDIA Maxwell™ (รองรับ CUDA)
RAM4 GB LPDDR4 64-bit (Bandwidth 25.6 GB/s)
StoragemicroSD (TF Card) ติดตั้ง Image จากผู้ผลิต
ระบบปฏิบัติการUbuntu Mate 20.04 LTS (focal)
WirelessWi-Fi 802.11ac (2.4G/5G) + Bluetooth

1.2.3.2 Auxiliary Controller ESP32

ตัวควบคุมเสริมสำหรับ I/O ของฐานและการสื่อสารกับ Servo motor ของแขน:

รายการรายละเอียด
ProcessorDual-core 240 MHz (600 DMIPS)
SRAM520 KB
Flash4 MB
GPIO Pins (ที่ใช้งานได้)G19, G21, G22, G23, G25, G33
WirelessWi-Fi dual mode + Bluetooth

1.2.4 พอร์ตเชื่อมต่อ (I/O Interfaces)

พอร์ตจำนวน / ชนิดการใช้งานทั่วไป
USB 3.0× 2กล้อง 3D Vision, อุปกรณ์ความเร็วสูง
USB 2.0× 2คีย์บอร์ด, เมาส์, Flash Drive
USB Type-C× 1Debug / Firmware update ของ Jetson
Micro USB× 1Auxiliary (Android standard 2.0)
HDMI Type-A× 1จอแสดงผล สูงสุด 1080p
Ethernet (RJ-45)× 1 Gigabitเครือข่ายแบบสาย
Wi-Fi (built-in)802.11ac dual-band 2.4/5 GHzเชื่อมเครือข่ายไร้สาย ใช้ VNC/SSH ได้ทันที
BluetoothDual-mode 2.4/5 GHzเชื่อม sensor/peripheral ไร้สาย
3.5mm Audio× 1เสียงออก/ไมโครโฟน
GPIO 2.54mm Header (40-pin)20 input + 20 outputเชื่อม Pump, Sensor 3.3V/5V output, ~40 mA / พิน
Grove Connectorมาตรฐาน GroveSensor module แบบ plug-and-play
I/O ที่ Atom (ปลายแขน)6 pins: G19, G21, G22, G23, G25, G33ขับ LED, sensor, สวิตช์ที่ End-Effector (ใช้ผ่าน set_basic_output())

1.2.4.1 โปรโตคอลการสื่อสาร (Communication Protocols)

myCobot 280 JN รองรับการสื่อสารหลายโปรโตคอลเพื่อความยืดหยุ่นในการพัฒนา:

Protocolการใช้งาน
USB / Type-Cหลัก pymycobot คุยผ่าน /dev/ttyTHS1 ที่ 1 Mbps
Serial (UART)คุยกับ ATOM board ภายใน + sensor RS-232
MODBUSเชื่อมกับ PLC ของโรงงาน หรือ HMI ที่รองรับ MODBUS
TCP/IPควบคุมผ่านเครือข่าย ใช้ MyCobotSocket() แทน MyCobot280()
🌐
ตัวอย่างควบคุมผ่าน TCP/IP python
from pymycobot.mycobot_socket import MyCobotSocket
mc = MyCobotSocket('192.168.1.42', 9000)  # IP ของ Jetson + port
mc.send_angles([0, 0, 0, 0, 0, 0], 50)

ใช้ได้กับ PC ภายนอกที่ต่อ Wi-Fi เดียวกันกับ Jetson

1.2.5 ไฟเลี้ยงและสภาพแวดล้อม (Power & Environment)

รายการรายละเอียด
แรงดันไฟฟ้า (Input)DC 8-12 V (เสริมรองรับ 8.4-14 V)
Adapter ที่มากับชุดDC 12V / 5A
หัวต่อ DCOD 6.5 mm × ID 2.0 mm
อุณหภูมิทำงาน (Operating Temp)−5 °C ถึง +45 °C
อุณหภูมิจัดเก็บ (Storage)15-30 °C (แนะนำ)
ความชื้นสัมพัทธ์≤ 70 % (ไม่มีการควบแน่น)

1.2.6 ซอฟต์แวร์ที่รองรับ

pymycobot มี 90+ control interfaces ให้ใช้ผ่านภาษาโปรแกรมที่หลากหลาย:

ภาษาที่ Elephant รองรับอย่างเป็นทางการ

ภาษาLibraryเหมาะกับ
Python ⭐ แนะนำpymycobot (≥ 4.0.2)ตัวอย่างเยอะที่สุด + AI/Vision (ดู บท 8)
C++mycobotcppงาน performance สูง / embedded
C#SDK ของ ElephantWindows / .NET apps
JavaScriptผ่าน WebSocketWeb dashboard / browser-based
Arduinolibrary Atom serialmicrocontroller projects

Frameworks & Tools

  • myBlockly visual block programming สำหรับมือใหม่ ดู บทที่ 9
  • ROS1 (Noetic) + ROS2 Robot Operating System พร้อม mycobot_ros + MoveIt ดู บทที่ 10
  • myStudio burn firmware + tutorials (ดู บท 12.8)
  • OpenCV + PyTorch + YOLOv8 pre-installed สำหรับ Computer Vision
  • Serial Communication Protocol โปรโตคอลระดับต่ำสำหรับเขียน driver ภาษาอื่น

OS ที่รองรับการเชื่อมต่อ (ฝั่ง PC ภายนอก)

เชื่อม Jetson จาก PC ภายนอกได้ทุก OS Windows, macOS, Linux, Android (ผ่าน VNC/SSH/TCP)

ℹ️
ข้อมูลสำคัญ GPIO ของ Jetson Nano

ส่วนสำคัญที่ผู้ใช้งานควรจดจำคือ พอร์ต J41 GPIO 40-pin ที่ฐานแขนกล ใช้สำหรับเชื่อมต่อ Vacuum Pump V2.0 ที่จะกล่าวถึงใน บทที่ 3.4.1 และตัวอย่างใช้งานในบทที่ 4 และ 13 รายละเอียด Pinout ฉบับเต็มอยู่ใน บทที่ 7.4

💡
DH Parameters

สำหรับผู้พัฒนาที่ต้องการคำนวณ Forward/Inverse Kinematics ของตนเอง Elephant Robotics จัดเตรียม DH Parameter Table และ Workspace Diagram (2D) ไว้ในเอกสาร Product Parameters

1.3 ส่วนประกอบของ AIKit 3D Vision

ชุดอุปกรณ์เสริม AIKit 3D Vision ประกอบด้วยอุปกรณ์ทั้งหมด 14 รายการ ซึ่งผู้ใช้งานควรตรวจนับให้ครบถ้วนก่อนเริ่มประกอบ:

ส่วนประกอบในชุด AIKit 3D Vision
ส่วนประกอบในชุด AIKit 3D Vision (ชุดเสริม) ขายแยกจากตัวหุ่นยนต์ (ภาพจาก Elephant Robotics)
#รายการอุปกรณ์จำนวน
1Cylindrical Building Blocks (บล็อกทรงกระบอก)1 ชุด (16 ชิ้น)
2Rectangular Building Blocks (บล็อกทรงสี่เหลี่ยม)1 ชุด (16 ชิ้น)
3myCobot Vertical Vacuum Pump V2.0 (ปั๊มสุญญากาศ)1 ชุด
4myCobot Adaptive Gripper (กริปเปอร์)1 ชุด
5YOLOv8 Stickers (สติกเกอร์ YOLOv8)3 ชุด
6LEGO Plugin (ปลั๊กอิน LEGO)3 ชุด
7Vacuum Pump Connection Cable (สายต่อปั๊มสุญญากาศ)1 เส้น
8Parts Kit (ชุดอะไหล่)1 ชุด
9Acrylic Base Plate (แผ่นพื้นอะคริลิก)1 แผ่น
10Camera Profile (โปรไฟล์กล้อง)1 ชิ้น
11Robotic Arm Base (ฐานแขนหุ่นยนต์)1 ชิ้น
123D Camera (กล้องสามมิติ)1 ตัว
13Type-C Data Cable (สาย Type-C)1 เส้น
14Black and White Magic Stickers (สติกเกอร์ขาวดำ)1 ชุด
⚠️
คำเตือน

กรุณาตรวจนับอุปกรณ์ในกล่องให้ครบถ้วนภายใน 7 วัน หลังจากได้รับสินค้า หากพบว่ามีอุปกรณ์ขาดหายหรือชำรุดจากการขนส่ง ให้รีบติดต่อผู้จัดจำหน่ายโดยทันที

End-Effectors ที่มาในชุด

ระบบรองรับเครื่องมือปลายแขน (End-Effector) หลัก 2 ประเภท:

🌀

Vacuum Pump V2.0

ปั๊มสุญญากาศพร้อมหัวดูดขนาด 20 มม. รับน้ำหนักได้ 150 กรัม เหมาะกับวัตถุที่มีพื้นผิวเรียบ เช่น ลูกบาศก์พลาสติก แผ่นโลหะบาง

🤏

Adaptive Gripper

กริปเปอร์แบบปรับตัวได้สำหรับการหยิบวัตถุที่มีรูปทรงไม่สม่ำเสมอ หรือวัตถุที่ปั๊มสุญญากาศไม่สามารถจับได้

1.4 ความสามารถหลัก

ระบบรองรับอัลกอริทึมการตรวจจับวัตถุ (Object Detection Algorithm) จำนวน 4 รูปแบบ และตัวอย่างแอปพลิเคชันสำเร็จรูปอีก 2 รูปแบบ:

1.4.1 อัลกอริทึมการตรวจจับ 4 รูปแบบ

🎨

Color Detection

การตรวจจับวัตถุด้วยสี เช่น แดง เขียว น้ำเงิน เหลือง เหมาะสำหรับงานคัดแยกบล็อกสี

Shape Detection

การตรวจจับด้วยรูปทรง เช่น วงกลม สี่เหลี่ยม สามเหลี่ยม ใช้ Contour Detection ใน OpenCV

📦

Unpack & Stack Detection

การตรวจจับเฉพาะสำหรับงานแยกชั้นและจัดเรียงบล็อก ใช้ข้อมูลความลึก (Depth Map) ร่วมกับ Contour

🤖

YOLOv8 Detection

การตรวจจับด้วยโมเดล Deep Learning ระดับสูง รองรับวัตถุที่ได้รับการฝึกฝนมาแล้ว 15 รายการ

1.4.2 แอปพลิเคชันสำเร็จรูป 2 รูปแบบ

  • Pick & Place หยิบวัตถุจากตำแหน่งที่ตรวจจับได้ แล้วนำไปวางในตำแหน่งปลายทางที่กำหนด เหมาะสำหรับงานคัดแยกชิ้นงาน
  • Stacking หยิบวัตถุแล้วจัดวางเป็นชั้นซ้อนกัน เหมาะสำหรับงานบรรจุภัณฑ์และการจัดเรียงคลังสินค้าจำลอง

1.4.3 Use Cases ทางการของ Elephant myCobot 280 JN เหมาะกับ

Elephant Robotics ระบุ 9 กลุ่ม use case ที่หุ่นรุ่นนี้เหมาะสม:

🎓

การเรียนการสอน

วิชา Robotics ในห้องเรียน มีคู่มือ + myBlockly เหมาะกับมือใหม่

🔬

ห้องปฏิบัติการวิจัย

Lab ในมหาวิทยาลัย ทำงานวิจัยด้าน AI/Robotics

🧠

AI Vision Development

มี Jetson + GPU + กล้องในตัว เริ่ม Computer Vision project ได้ทันที

⚙️

Algorithm Development

ทดลอง Motion Planning, IK/FK, Trajectory control แบบ open-source

🤖

ROS Simulation

เรียนรู้ ROS1/ROS2 + MoveIt + rviz บน hardware จริง

🏠

Smart Home Prototype

ต้นแบบหุ่นยนต์ในบ้าน เสิร์ฟกาแฟ จัดของบนโต๊ะ

💼

Commercial Exploration

Startup ทดสอบ proof-of-concept ก่อนลงทุนหุ่นอุตสาหกรรมจริง

🎯

Secondary Development

เพิ่ม sensor / camera / module เพื่อทำ custom solution

🏆

NVIDIA Cooperative Robot

"Official NVIDIA partner" ใช้ในการแข่งขัน NVIDIA AI Challenge ได้

💡
คำแนะนำ

ผู้ใช้งานสามารถปรับแต่งและเพิ่มเติมอัลกอริทึมการตรวจจับได้ด้วยตนเอง โดยการฝึกฝนโมเดล YOLOv8 ใหม่ตามชุดข้อมูลของผู้ใช้งานเอง ซึ่งจะกล่าวถึงในบทที่ 5 และเอกสารระดับสูงในลำดับถัดไป