VI / EN
Quay lại danh sách dự án

Cánh Tay Robot 6 Bậc Tự Do (6-DOF) Điều Khiển Không Dây Bluetooth & Android Native

Hệ thống cánh tay robot 6 bậc tự do (6-DOF) cơ cấu nhôm định hình điều khiển không dây bằng ESP32, bộ điều chế xung I2C PCA9685 12-bit, động cơ servo bánh răng kim loại tải nặng (MG996R & MG90S), thuật toán chống va chạm kẹp biên và ứng dụng Android Native giao diện Gamepad công thái học.

October 2026
Xem dự án
Team:
Võ Tá Dũng (Henry)
Võ Tá Dũng (Henry)(Technical Mentor & Embedded System Architect)
Lê Đức Huy(Mechatronics & Mobile Implementer)
6-DOF Wireless Robotic Arm with Bluetooth SPP & Android Native Controller

1. Tóm Tắt Đề Tài & Bối Cảnh Nghiên Cứu

Trong xu thế tự động hóa công nghiệp 4.0, các cánh tay robot công nghiệp nhiều bậc tự do (Articulated Robotic Arms) đóng vai trò nòng cốt trong các dây chuyền lắp ráp, hàn vi mạch và đóng gói tự động. Cấu hình 6 bậc tự do (6-DOF) mô phỏng trọn vẹn phạm vi vận động của cánh tay con người, cho phép khâu thao tác cuối (End-Effector) định vị độc lập vị trí không gian (X, Y, Z) và góc xoay hướng (Roll, Pitch, Yaw) tới bất kỳ điểm nào trong không gian làm việc 3 chiều.

Hình ảnh thực tế mô hình Cánh tay Robot 6-DOF hoàn thiện
Hình ảnh thực tế mô hình Cánh tay Robot 6-DOF hoàn thiện

Tuy nhiên, việc thiết kế và chế tạo các mô hình cánh tay robot 6 khớp phục vụ nghiên cứu thường đối mặt với các vấn đề kỹ thuật hóc búa: hiện tượng rung lắc cơ học do vi điều khiển điều chế xung không kịp, xung đột góc quay gây kẹt cháy động cơ servo, và sụt áp hệ thống khi các động cơ đồng loạt ăn dòng tải nặng.

Đề tài "Nghiên cứu, thiết kế và chế tạo Cánh tay Robot 6 bậc tự do (6-DOF) điều khiển không dây qua giao thức Bluetooth và ứng dụng Android Native" được thực hiện bởi học sinh Lê Đức Huy dưới sự hướng dẫn chuyên môn và thiết kế hệ thống của Thầy Võ Tá Dũng (Henry) tại TP. Hồ Chí Minh (10/2026). Đề tài tích hợp cơ khí hợp kim nhôm định hình, vi điều khiển ESP32 32-bit, mạch đệm xung I2C PCA9685 12-bit, thuật toán chống va chạm kẹp biên và ứng dụng điều khiển Android Native công thái học phong cách Gamepad.


2. Kiến Trúc Hệ Thống Phân Tầng

+-----------------------------------------------------------------------------------------+
|                                1. TẦNG GIAO DIỆN ĐIỀU KHIỂN (ANDROID)                   |
|                                                                                         |
|   - Ứng dụng di động Android Native (Java SDK) giao diện Gamepad tay cầm PS5 DualSense  |
|   - Hai cần điều khiển Joystick ảo điều khiển 6 khớp độc lập theo thời gian thực        |
|   - Tính năng lưu tọa độ gắp thả (Preset Points) và tự động lặp lại quy trình           |
|   - Kết nối truyền dữ liệu Bluetooth SPP tần số 25Hz liên tục                           |
+-----------------------------------------------------------------------------------------+
                                           | (Giao thức Bluetooth Classic SPP 2.4GHz)
                                           v
+-----------------------------------------------------------------------------------------+
|                               2. TẦNG ĐIỀU KHIỂN TRUNG TÂM (ESP32)                      |
|                                                                                         |
|   - Vi điều khiển ESP32-WROOM-32D (240MHz): Máy trạng thái hữu hạn (FSM) giải mã gói    |
|   - Thuật toán kiểm tra kẹp biên động học và chống va chạm cơ học (Anti-Collision)      |
|   - Bộ nội suy làm mượt chuyển động S-Curve: Triệt tiêu rung lắc quán tính cơ khí       |
|   - Hệ thống mạch nguồn cách ly kép (XL4015 6V/5A cho servo + AMS1117 3.3V cho ESP32)   |
+-----------------------------------------------------------------------------------------+
                                           | (Giao tiếp phần cứng I2C Fast Mode 400kHz)
                                           v
+-----------------------------------------------------------------------------------------+
|                               3. TẦNG ĐIỀU CHẾ XUNG PWM ĐỘC LẬP                         |
|                                                                                         |
|   - Mạch PCA9685 16 kênh 12-bit PWM (độ phân giải 4096 bước xung ở tần số 50Hz)        |
|   - Dao động thạch anh nội bộ giải phóng 100% thời gian xử lý cho CPU vi điều khiển     |
+-----------------------------------------------------------------------------------------+
                                           | (6 Kênh xung PWM điều khiển góc độc lập)
                                           v
+-----------------------------------------------------------------------------------------+
|                               4. CƠ CẤU CHẤP HÀNH CƠ KHÍ & ĐỘNG CƠ                      |
|                                                                                         |
|   - Khớp 1: Khớp xoay đế Pan (Động cơ servo kim loại MG996R, góc quay 0° - 180°)       |
|   - Khớp 2: Khớp nâng vai Shoulder (Động cơ tải nặng MG996R, góc quay 15° - 165°)       |
|   - Khớp 3: Khớp khuỷu tay Elbow (Động cơ MG996R, góc quay 0° - 180°)                   |
|   - Khớp 4: Khớp nâng cổ tay Wrist Pitch (Động cơ servo MG90S, góc quay 0° - 180°)      |
|   - Khớp 5: Khớp xoay cổ tay Wrist Roll (Động cơ servo MG90S, góc quay 0° - 180°)       |
|   - Khớp 6: Kẹp gắp cơ khí Gripper (Động cơ micro servo MG90S, góc mở kẹp 10° - 90°)    |
+-----------------------------------------------------------------------------------------+

Sơ đồ kiến trúc phân tầng hệ thống Cánh tay Robot 6-DOF
Sơ đồ kiến trúc phân tầng hệ thống Cánh tay Robot 6-DOF


3. Kết Cấu Cơ Khí & Cơ Chế Điều Chế Xung PWM

3.1. Cấu Trúc Khung Nhôm 6 Bậc Tự Do

Cấu trúc cơ học và 6 bậc tự do (6-DOF) của cánh tay robot
Cấu trúc cơ học và 6 bậc tự do (6-DOF) của cánh tay robot

Khung cơ khí cánh tay robot được gia công từ các tấm nhôm duralumin dày 2mm mạ Anode màu đen, vừa đảm bảo độ cứng vững cơ học vừa tối ưu trọng lượng bản thân:

  • Khớp 1 (Đế Pan): Sử dụng vòng bi xoay trợ lực kết hợp động cơ servo kim loại MG996R cho góc quét 0^° - 180^°.
  • Khớp 2 (Khớp vai Shoulder): Khớp chịu mô-men uốn lớn nhất, sử dụng cánh tay đòn hợp kim nhôm chịu tải.
  • Khớp 3 (Khớp khuỷu Elbow): Giúp vươn dài hoặc thu ngắn tầm với của cánh tay.
  • Khớp 4 & Khớp 5 (Cổ tay): Giúp định hướng góc nghiêng và góc xoay tròn của đầu kẹp gắp.
  • Khớp 6 (Đầu kẹp gắp Gripper): Cơ cấu bánh răng kẹp song song giúp kẹp giữ chắc chắn các vật thể hình trụ, hình hộp với khối lượng lên tới 250g.

3.2. Giản Đồ Xung Điều Khiển 50Hz Bằng PCA9685

Giản đồ xung PWM 50Hz điều khiển góc động cơ RC Servo tiêu chuẩn
Giản đồ xung PWM 50Hz điều khiển góc động cơ RC Servo tiêu chuẩn

Động cơ RC Servo tiêu chuẩn yêu cầu xung điều khiển có chu kỳ 20 ms (tần số 50Hz):

  • Độ rộng xung 0.5 ms tương ứng góc 0^°.
  • Độ rộng xung 1.5 ms tương ứng góc 90^° (vị trí giữa).
  • Độ rộng xung 2.5 ms tương ứng góc 180^°.

Mạch PCA9685 phân giải chu kỳ 20ms thành 2^ = 4096 bước xung, mang lại độ phân giải điều chỉnh góc cực mịn dưới 0.05^° trên mỗi bước đếm, hoàn toàn độc lập với vi điều khiển ESP32:

Giá_Trị_Thanh_Ghi = (Độ_Rộng_Xung_us / 20000) · 4096

4. Phần Mềm Nhúng ESP32 & Thuật Toán Làm Mượt Chuyển Động

4.1. Giao Thức Bluetooth SPP & Máy Trạng Thái Hữu Hạn (FSM)

Lưu đồ giải thuật truyền nhận và xử lý lệnh Bluetooth SPP & FSM
Lưu đồ giải thuật truyền nhận và xử lý lệnh Bluetooth SPP & FSM

Ứng dụng Android và vi điều khiển giao tiếp qua Bluetooth Classic với giao thức khung bản tin nhị phân chặt chẽ:

[0xAA (Header)] [CMD (1 Byte)] [J1] [J2] [J3] [J4] [J5] [J6] [XOR Checksum] [0x55 (Tail)]

Firmware cài đặt máy trạng thái hữu hạn (FSM) kiểm tra tính toàn vẹn của gói tin qua mã kiểm tra XOR. Bất kỳ gói tin nào bị nhiễu sóng làm sai lệch dữ liệu đều bị loại bỏ ngay lập tức, triệt tiêu nguy cơ servo bị quay giật bất thường.

4.2. Thuật Toán Kiểm Tra Kẹp Biên & Chống Va Chạm Cơ Học

Lưu đồ thuật toán kiểm tra kẹp biên và chống va chạm cơ học
Lưu đồ thuật toán kiểm tra kẹp biên và chống va chạm cơ học

Nhằm ngăn chặn tình trạng người dùng điều khiển cần gạt khiến các thanh nhôm đập vào nhau hoặc góc khuỷu gập quá mức làm kẹt cháy động cơ, firmware thực thi hàm kẹp biên an toàn:

// Hàm giới hạn góc an toàn cho từng khớp
uint8_t clampJoint(uint8_t jointIdx, uint8_t targetAngle) {
    if (targetAngle < JOINT_LIMITS[jointIdx].minAngle) return JOINT_LIMITS[jointIdx].minAngle;
    if (targetAngle > JOINT_LIMITS[jointIdx].maxAngle) return JOINT_LIMITS[jointIdx].maxAngle;
    return targetAngle;
}

Đồng thời, thuật toán kiểm tra tương quan giữa góc Khớp vai và Khớp khuỷu để đảm bảo cánh tay không bao giờ đập mũi kẹp xuống sàn khi khớp vai hạ thấp quá 30^°.

4.3. Bộ Nội Suy Mượt Góc Quay (Motion Smoothing)

Đặc tính đáp ứng góc quay mượt mà qua bộ nội suy firmware
Đặc tính đáp ứng góc quay mượt mà qua bộ nội suy firmware

Nếu cập nhật góc quay tức thì, các động cơ servo sẽ lao đi với gia tốc tối đa, gây ra quán tính lớn và rung lắc dữ dội. Bộ nội suy firmware chia nhỏ các bước dịch chuyển góc lớn thành các vi bước Δ \theta = 1.0^° sau mỗi 15ms, giúp chuyển động của cánh tay robot trở nên đầm chắc, êm ái và mô phỏng chính xác cử chỉ sinh học tự nhiên.


5. Ứng Dụng Di Động Android Native RobotArmController

Giao diện điều khiển Android Native RobotArmController (Gamepad PS5 UI)
Giao diện điều khiển Android Native RobotArmController (Gamepad PS5 UI)

Ứng dụng điều khiển được phát triển bằng ngôn ngữ Java trên Android Studio, mang phong cách giao diện tay cầm chơi game công thái học:

  • Hai cần Joystick ảo DualSense: Cần gạt trái điều khiển góc xoay đế và góc nâng vai; cần gạt phải điều khiển góc gập khuỷu và độ cao cổ tay.
  • Nút điều khiển kẹp gắp: Nút bấm lớn giúp kẹp hoặc nhả vật thể tức thì với phản hồi haptic trực quan.
  • Tính năng Dạy và Lặp Lại (Teach & Playback): Cho phép người vận hành di chuyển robot đến từng điểm mong muốn, bấm nút "Lưu Tọa Độ" vào bộ nhớ Flash NVS của ESP32 và kích hoạt chu trình gắp thả tự động tuần hoàn theo ý muốn.

6. Kết Quả Đo Kiểm Thực Nghiệm

6.1. Đo Đạc Độ Trễ & Tỷ Lệ Truyền Nhận Bluetooth SPP

| Cự ly điều khiển (m) | Số gói tin gửi đi | Số gói nhận thành công | Độ trễ trung bình (ms) | Tỷ lệ thành công (%) | | :--- | :--- | :--- | :--- | :--- | | 1 mét | 5.000 | 5.000 | 21.2 ms | 100.0% | | 5 mét | 5.000 | 4.994 | 24.6 ms | 99.88% | | 10 mét | 5.000 | 4.985 | 29.4 ms | 99.70% | | 15 mét (vật cản tường) | 5.000 | 4.890 | 46.8 ms | 97.80% |

Độ trễ trung bình thực tế: ~25 ms (tạo cảm giác điều khiển tức thời không có độ trễ)

6.2. Đo Kiểm Dòng Điện Tiêu Thụ Tức Thời

Đồ thị đo đạc dòng điện tiêu thụ tức thời của hệ thống ở các chế độ tải
Đồ thị đo đạc dòng điện tiêu thụ tức thời của hệ thống ở các chế độ tải

  • Trạng thái đứng yên giữ vị trí (Hold): Dòng điện duy trì ở mức 180 mA tại điện áp 6.0V.
  • Trạng thái di chuyển không tải (6 khớp vận hành): Dòng dao động từ 0.85A đến 1.35A.
  • Trạng thái nâng vật nặng 250g tối đa: Dòng tức thời đỉnh đạt 2.85A. Mạch hạ áp công suất lớn XL4015 5A giữ vững điện áp 6.02V, hoàn toàn không xảy ra hiện tượng sụt áp hay reset vi điều khiển.

7. Kết Luận & Hướng Mở Rộng

Mô hình cánh tay robot 6 bậc tự do (6-DOF) điều khiển không dây Bluetooth đã hoàn thành xuất sắc các mục tiêu thiết kế ban đầu. Hệ thống kết hợp hài hòa giữa gia công cơ khí chính xác, mạch điều chế xung PWM 12-bit độc lập, thuật toán nội suy an toàn và giao diện điều khiển di động tiện lợi, là tiền đề vững chắc để phát triển các tính năng động học ngược (Inverse Kinematics) và thị giác máy tính nhận diện vật thể trong tương lai.