Giới thiệu dự án

Trong bối cảnh cuộc Cách mạng Công nghiệp 4.0, tự động hóa và kỹ thuật robot (Robotics) đã trở thành trụ cột then chốt nhằm tối ưu hóa năng suất, nâng cao độ chính xác và bảo vệ tính mạng con người trong các môi trường độc hại, nguy hiểm (như xử lý chất thải phóng xạ, thăm dò không gian hoặc phòng chống dịch bệnh truyền nhiễm). Các hệ thống điều khiển robot từ xa truyền thống (Teleoperation) thường đối mặt với rào cản lớn: hoặc sử dụng cơ cấu cơ khí cồng kềnh (Master-Slave mechanical linkage), hoặc phụ thuộc vào hệ thống thị giác máy tính (Computer Vision) đòi hỏi năng lực tính toán cực lớn từ các máy tính nhúng đắt đỏ như Raspberry Pi 4 hay NVIDIA Jetson, đồng thời chịu nhiều rủi ro về điểm mù (occlusion) và độ trễ khung hình.

Đề tài "Thiết kế và điều khiển thực tế ảo Robot 6 bậc tự do" do sinh viên Trần Lưu Phúc Hoà và Nguyễn Hải Phong thực hiện dưới sự hướng dẫn của TS. Đặng Xuân Ba tại Trường Đại học Sư phạm Kỹ thuật TP.HCM (Khoa Đào tạo Chất lượng cao, ngành CNKT Điều khiển và Tự động hóa) giải quyết triệt để bài toán này. Đồ án đề xuất giải pháp điều khiển đồng bộ cánh tay robot công nghiệp 6 bậc tự do (6-DoF) theo chuyển động tay người bằng cách ứng dụng mảng cảm biến đo lường quán tính (Inertial Measurement Unit - IMU) kết hợp truyền thông không dây Bluetooth, tối ưu hóa toàn bộ thuật toán trên nền tảng vi điều khiển vi xử lý chi phí thấp.

+-------------------------------------------------------------+
|                     NGƯỜI ĐIỀU KHIỂN                        |
|  [ Mảng 4 Cảm Biến IMU MPU-9250 ] (Ngực, Tay, Cẳng tay, Bàn tay)  |
+------------------------------+------------------------------+
                               | Giao tiếp I2C qua TCA9548A
                               v
               +-------------------------------+
               |   Arduino Nano (Xử lý góc)    |
               +---------------+---------------+
                               | Giao thức UART / Chuỗi JSON
                               v
               +-------------------------------+
               |    Module Bluetooth HC-05     |
               +---------------+---------------+
                               | Sóng Radio 2.4 GHz
                               v
               +-------------------------------+
               |    Module Bluetooth HC-05     |
               +---------------+---------------+
                               | UART (Baudrate 115200)
                               v
+------------------------------+------------------------------+
|                    BỘ ĐIỀU KHIỂN TRUNG TÂM                  |
|        [ Arduino Mega 2560 ] <---> [ Arduino Uno R3 ]       |
|    - Giải thuật Động học nghịch (IK)                        |
|    - Quy hoạch quỹ đạo đa thức bậc 3 (Trajectory Planning)  |
+------------------------------+------------------------------+
                               | Tín hiệu xung STEP/DIR & PWM
                               v
+------------------------------+------------------------------+
|                     CƠ CẤU CHẤP HÀNH                        |
|  - 3x Động cơ bước Nema 17 + Driver TB6600 (Khớp 1, 2, 3)   |
|  - 3x Động cơ Servo DC MG996R (Khớp 4, 5, 6 & Khâu kẹp)     |
|  - Nguồn xung tổ ong 24VDC-10A & Mạch hạ áp LM2596          |
+-------------------------------------------------------------+

Mục tiêu dự án

  1. Thiết kế cơ khí và mô phỏng 3D: Xây dựng mô hình cánh tay robot 6 bậc tự do cấu trúc tay người (Anthropomorphic Arm) trên phần mềm SolidWorks, đảm bảo bán kính làm việc linh hoạt và độ cứng vững cơ học.
  2. Xây dựng mô hình toán học động học: Thiết lập hệ trục tọa độ, giải bài toán Động học thuận (Forward Kinematics) bằng ma trận biến đổi Denavit-Hartenberg (D-H) và bài toán Động học nghịch (Inverse Kinematics) kết hợp giải tích góc Euler.
  3. Thu nhận chuyển động thời gian thực (Motion Capture): Thiết kế bộ thiết bị đeo tay tích hợp 4 cảm biến IMU 9 trục MPU-9250 qua bộ ghép kênh TCA9548A, ứng dụng bộ lọc bù (Complementary Filter) để khử trôi tín hiệu và ước lượng chính xác góc Roll-Pitch-Yaw.
  4. Quy hoạch quỹ đạo mượt mà: Lập trình thuật toán nội suy quỹ đạo đa thức bậc 3 (Cubic Polynomial Trajectory) loại bỏ hiện tượng giật cục gia tốc, bảo vệ cơ cấu truyền động.
  5. Đồng bộ hóa không dây: Truyền nhận gói tin định dạng JSON tốc độ cao giữa hệ thống cảm biến và bộ điều khiển robot qua module Bluetooth HC-05.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Hiện nay, các giải pháp thu nhận cử chỉ và điều khiển cánh tay máy trong công nghiệp và nghiên cứu phân hóa thành ba hướng tiếp cận chính:

Tiêu chí phân tích Thị giác máy tính (Computer Vision / RGB-D) Bộ khung ngoài cơ khí (Exoskeleton Master-Slave) Hệ mảng cảm biến IMU (Giải pháp đề tài)
Phần cứng xử lý Đòi hỏi PC/GPU hoặc SBC cao cấp (Raspberry Pi 4, Jetson) Cần cảm biến góc quay encoder, khung kim loại nặng Vi điều khiển 8-bit giá rẻ (Arduino Nano / Mega 2560)
Độ trễ hệ thống Cao (120ms - 250ms do xử lý ảnh/khung hình) Thấp (< 30ms) Rất thấp (35ms - 50ms)
Ảnh hưởng môi trường Nhạy cảm với ánh sáng, góc khuất và vật cản Không bị ảnh hưởng môi trường, nhưng hạn chế vận động Không phụ thuộc ánh sáng, không bị giới hạn tầm nhìn
Tính linh hoạt/Độ tiện dụng Cố định vị trí camera trong không gian Cồng kềnh, gây mỏi cho người đeo Siêu nhẹ, gắn trực tiếp lên cánh tay bằng đai co giãn
Chi phí chế tạo Rất cao (> 10.000.000 VNĐ) Rất cao (> 15.000.000 VNĐ) Tiết kiệm tối đa (< 3.000.000 VNĐ)

[!NOTE] Yêu cầu hệ thống theo mô hình MoSCoW:

  • Must Have: Động học thuận/nghịch tính toán chuẩn xác; 6 bậc tự do chuyển động ổn định; truyền nhận dữ liệu qua UART/Bluetooth không thất thoát gói.
  • Should Have: Quy hoạch quỹ đạo đa thức bậc 3 để triệt tiêu sốc cơ khí; lọc nhiễu gia tốc kế và con quay hồi chuyển bằng bộ lọc bù.
  • Could Have: Giao diện giám sát đồ họa 3D mô phỏng góc khớp thời gian thực trên máy tính.
  • Won't Have (Giai đoạn này): Bộ điều khiển vòng kín phản hồi lực (Haptic feedback) và thuật toán lọc Kalman mở rộng đa chiều.

Thiết kế hệ thống

1. Cơ sở toán học Động học tay máy (Kinematics)

Hệ thống sử dụng quy tắc Denavit-Hartenberg (D-H) để mô tả cấu hình không gian giữa các khâu liên kết. Ma trận biến đổi thuần nhất tổng quát ${}^{i-1}T_i$ từ hệ tọa độ $i-1$ sang $i$:

$${}^{i-1}T_i = \begin{bmatrix} \cos\theta_i & -\sin\theta_i \cos\alpha_i & \sin\theta_i \sin\alpha_i & a_i \cos\theta_i \ \sin\theta_i & \cos\theta_i \cos\alpha_i & -\cos\theta_i \sin\alpha_i & a_i \sin\theta_i \ 0 & \sin\alpha_i & \cos\alpha_i & d_i \ 0 & 0 & 0 & 1 \end{bmatrix}$$

Ma trận chuyển đổi toàn cục từ khâu đế (Base) đến khâu chấp hành cuối (End-Effector): $${}^0T_6 = {}^0T_1 \cdot {}^1T_2 \cdot {}^2T_3 \cdot {}^3T_4 \cdot {}^4T_5 \cdot {}^5T_6 = \begin{bmatrix} r_{11} & r_{12} & r_{13} & P_x \ r_{21} & r_{22} & r_{23} & P_y \ r_{31} & r_{32} & r_{33} & P_z \ 0 & 0 & 0 & 1 \end{bmatrix}$$

Trong bài toán Động học nghịch, góc hướng của cổ tay được bóc tách từ ma trận quay Euler theo thứ tự quay $Z-Y-X$ với các góc Yaw ($\psi$), Pitch ($\theta$), Roll ($\phi$): $$R_{ZYX}(\psi, \theta, \phi) = R_z(\psi) R_y(\theta) R_x(\phi)$$

                                  [Khâu 3] Cánh tay trên
                                    o==================o [Khâu 4] Cổ tay xoay
                                   / (Khớp 3)           \ (Khớp 4, 5, 6)
                                  /                      \
                                 /                        \====[Khâu kẹp]
                   (Khớp 2)     o                          (End-Effector)
                                |
                     [Khâu 2]   | Cột thân đứng
                                |
                   (Khớp 1)    [#] Đế quay (Base)
                    ==============================

2. Quy hoạch quỹ đạo (Trajectory Planning)

Để góc biến thiên $\theta_i(t)$ từ góc ban đầu $\theta_i(0) = \theta_0$ đến góc đích $\theta_i(t_f) = \theta_f$ trong thời gian $t_f$ không xảy ra giật vận tốc đột ngột ($\dot{\theta}(0) = \dot{\theta}(t_f) = 0$), hàm đa thức bậc 3 được áp dụng:

$$\theta_i(t) = a_{i0} + a_{i1}t + a_{i2}t^2 + a_{i3}t^3$$

Giải hệ phương trình điều kiện biên thu được bộ hệ số: $$a_{i0} = \theta_0, \quad a_{i1} = 0, \quad a_{i2} = \frac{3(\theta_f - \theta_0)}{t_f^2}, \quad a_{i3} = -\frac{2(\theta_f - \theta_0)}{t_f^3}$$

3. Cấu hình phần cứng và công nghệ

Phân hệ Linh kiện / Công nghệ Thông số kỹ thuật chi tiết Vai trò trong hệ thống
Xử lý trung tâm Arduino Mega 2560 R3 Vi điều khiển ATmega2560, 16MHz, 54 chân I/O, 4 cổng UART Tính toán ma trận nghịch, xuất xung điều khiển Step/Dir
Xử lý phụ trợ Arduino Uno R3 & Nano ATmega328P, 16MHz, I2C Bus, kích thước nhỏ gọn Thu thập dữ liệu IMU, xử lý đóng mở khâu kẹp
Cảm biến góc InvenSense MPU-9250 Tích hợp 3 trục Accel + 3 trục Gyro + 3 trục Magnetometer Đọc gia tốc và vận tốc góc tại 4 vị trí khớp tay
Mở rộng giao tiếp Texas Instruments TCA9548A I2C Switch 8 kênh, điện áp 1.65V - 5.5V Xử lý trùng địa chỉ 0x68 của 4 cảm biến MPU-9250
Cơ cấu chấp hành Stepper Nema 17 (3969/289) Bước góc 1.8°, hộp giảm tốc tỷ số cao, mô-men xoắn lớn Truyền động cho 3 khớp gốc chịu tải nặng (Base, Shoulder, Elbow)
Cơ cấu chấp hành DC Servo MG996R Bánh răng kim loại, mô-men xoắn 11kg.cm tại 6V Truyền động cho 3 khớp định hướng cổ tay và kẹp
Mạch công suất TB6600 Driver Dòng định mức 4.0A, hỗ trợ vi bước (Microstepping) đến 1/32 Lái động cơ bước, chống rung giật
Truyền thông Module Bluetooth HC-05 Chuẩn Bluetooth v2.0+EDR, tần số 2.4GHz, UART 115200 bps Kết nối không dây điểm-điểm Master-Slave

Implementation và kết quả

Development Process & Key Algorithms

Thuật toán ước lượng góc nghiêng trên hệ thống cảm biến đeo tay kết hợp dữ liệu từ Gia tốc kế ($a_x, a_y, a_z$) và Con quay hồi chuyển ($\omega_x, \omega_y, \omega_z$). Tín hiệu góc thô từ gia tốc kế được tính bằng:

$$\theta_{acc} = \arctan\left(\frac{a_y}{\sqrt{a_x^2 + a_z^2}}\right) \times \frac{180}{\pi}$$

Để triệt tiêu trôi dạt tích phân (drift) của Gyroscope ở tần số thấp và nhiễu rung động của Accelerometer ở tần số cao, bộ lọc bù số (Discrete Complementary Filter) với hệ số $\alpha = 0.96$ được áp dụng tại chu kỳ lấy mẫu $\Delta t = 10\text{ms}$:

$$\theta_{filter}(k) = 0.96 \cdot \left(\theta_{filter}(k-1) + \omega \cdot \Delta t\right) + 0.04 \cdot \theta_{acc}(k)$$

Dưới đây là đoạn mã nguồn thực thi thuật toán nội suy quỹ đạo bậc 3 và đóng gói khung truyền JSON trên Arduino:

#include <ArduinoJson.h>

// Struct quan ly thong so quy hoach quy dao bac 3
struct JointTrajectory {
  float a0, a2, a3;
  float t_target;
};

JointTrajectory jointTraj[6];

void calculateTrajectory(int jointIdx, float theta_start, float theta_end, float tf) {
  jointTraj[jointIdx].a0 = theta_start;
  jointTraj[jointIdx].a2 = (3.0 * (theta_end - theta_start)) / (tf * tf);
  jointTraj[jointIdx].a3 = (-2.0 * (theta_end - theta_start)) / (tf * tf * tf);
  jointTraj[jointIdx].t_target = tf;
}

float getInterpolatedAngle(int jointIdx, float t) {
  if (t >= jointTraj[jointIdx].t_target) return (jointTraj[jointIdx].a0 + 
      jointTraj[jointIdx].a2 * pow(jointTraj[jointIdx].t_target, 2) + 
      jointTraj[jointIdx].a3 * pow(jointTraj[jointIdx].t_target, 3));
  return jointTraj[jointIdx].a0 + jointTraj[jointIdx].a2 * t * t + jointTraj[jointIdx].a3 * t * t * t;
}

// Ham truyen du lieu goc khop qua Bluetooth UART
void sendJointDataBluetooth(float j1, float j2, float j3, float j4, float j5, float j6, int grip) {
  StaticJsonDocument<200> doc;
  doc["J1"] = round(j1 * 100) / 100.0;
  doc["J2"] = round(j2 * 100) / 100.0;
  doc["J3"] = round(j3 * 100) / 100.0;
  doc["J4"] = round(j4 * 100) / 100.0;
  doc["J5"] = round(j5 * 100) / 100.0;
  doc["J6"] = round(j6 * 100) / 100.0;
  doc["G"]  = grip;
  
  serializeJson(doc, Serial1); // Serial1 ket noi voi Module HC-05
  Serial1.println();
}

Testing và validation

Hệ thống đã trải qua các bài kiểm thử thực nghiệm nghiêm ngặt về độ chính xác động học, độ trễ truyền thông và tính ổn định quy hoạch chuyển động.

Do lech goc (Do)
 ^
4|        +-- Khong quy hoach quy dao (Dao dong & Vot lo)
 |       / \
2|      /   \      +--- Co quy hoach quy dao bac 3 (Muot ma)
 |     /     \____/ \________
0|----+-----------------------+---------> Thoi gian (s)
     0.2     0.4    0.6      0.8
Bài kiểm tra (Test Scenarios) Giá trị lý thuyết / Thiết kế Kết quả thực nghiệm đạt được Đánh giá sai số / Độ tin cậy
Độ chính xác Động học thuận Tọa độ $P(x, y, z)$ tính từ MATLAB Kiểm tra vị trí đầu cuối trên thước đo Sai số vị trí $\Delta \le \pm 2.1\text{ mm}$
Độ chính xác góc khớp IMU Góc xoay góc Euler ($0^\circ - 180^\circ$) Góc đọc qua Complementary Filter Sai số góc tĩnh $\le \pm 1.2^\circ$
Tốc độ truyền dữ liệu không dây Tốc độ Baud 115200 bps Gói tin JSON 65 bytes chu kỳ 20ms Không nghẽn bus, tỷ lệ mất gói $< 0.5%$
Độ trễ phản hồi hệ thống Yêu cầu thời gian thực $< 100\text{ ms}$ Đo từ lúc tay lắc đến khi robot bám Độ trễ trung bình $\approx 45\text{ ms}$
Hiện tượng trượt bước động cơ Bước xung Driver TB6600 50 chu kỳ gắp thả liên tục Không xảy ra hiện tượng mất bước (Lost steps)

Kết quả đạt được

  1. Chế tạo thành công cánh tay robot 6 bậc tự do hoàn chỉnh bằng khung nhôm và nhựa in 3D chịu lực, hoạt động bền bỉ với tải trọng nâng hữu ích 250g.
  2. Thiết kế mạch mở rộng I2C với IC TCA9548A, ghép nối thành công 4 cảm biến MPU-9250 trên cùng đường truyền dữ liệu mà không xảy ra xung đột địa chỉ phần cứng.
  3. Đồng bộ hóa chuyển động thời gian thực: người vận hành đeo thiết bị IMU di chuyển các khớp vai, khuỷu tay và cổ tay; robot lập tức phản hồi và sao chép chính xác tư thế tương ứng.
  4. Kiểm chứng thành công các tác vụ gắp - đặt vật thể (Pick-and-Place) tại nhiều vị trí ngẫu nhiên trong không gian làm việc.

Đổi mới và đóng góp

  • Kiến trúc điều khiển phân tán chi phí thấp: Thay thế hoàn toàn hệ thống camera xử lý ảnh đắt tiền bằng mảng 4 module IMU giá rẻ, giảm hơn 75% chi phí chế tạo phần cứng so với các hệ thống Teleoperation thương mại.
  • Tối ưu hóa tài nguyên tính toán: Thuật toán bóc tách góc Euler và nội suy quỹ đạo bậc 3 được tính toán trực tiếp trên vi điều khiển 8-bit ATmega2560 mà không cần máy tính điều khiển biên, giảm mức tiêu thụ điện năng toàn hệ thống tới 80%.
  • Giải pháp chuyển tiếp dữ liệu thông minh qua I2C Switch: Ứng dụng thành công IC TCA9548A để điều phối luồng dữ liệu của 4 cảm biến MPU-9250 dùng chung địa chỉ gốc 0x68, mở ra hướng đi mới cho việc thu thập chuyển động toàn thân (Full-body Motion Capture) trên các nền tảng nhúng đơn giản.

Ứng dụng thực tế và triển khai

+-------------------------------------------------------------------------+
|                      CAC KICH BAN UNG DUNG THUC TE                      |
+-------------------------------------------------------------------------+
| 1. Y TE VA PHONG CHONG DICH BENH                                        |
|    - Bac si dieu khien tay may lay mau benh pham tu phong cach ly.      |
|    - Dieu khien robot phau thuat noi soi hoac van chuyen thuoc doc hai. |
+-------------------------------------------------------------------------+
| 2. MOI TRUONG CONG NGHIEP DOC HAI & NGUY HIEM                           |
|    - Thao tac tay may xu ly chat thai phong xa, hoa chat an mon manh.   |
|    - Son phu vo tau hoac han diem trong cac khoang khong gian hep.      |
+-------------------------------------------------------------------------+
| 3. DAO TAO VA GIAO DUC STEM / ROBOTICS                                  |
|    - Mo hinh thuc hanh truc quan mon Dong hoc Robot & He thong Nhap.   |
+-------------------------------------------------------------------------+

Lộ trình triển khai (Implementation Roadmap)

[Thang 1-2] Thiet ke CAD, Gia cong co khi & Tinh toan Dong hoc D-H
     |
[Thang 3]   Phat trien mach thu thap IMU + I2C TCA9548A tren Arduino Nano
     |
[Thang 4]   Lap trinh quy hoach quy dao bac 3 & Giao thuc JSON Bluetooth
     |
[Thang 5]   Tich hop toan he thong, Can chinh bo loc bu & Thu nghiem gap vat

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Hiện tượng trôi dạt góc Yaw (Magnetic Drift): Cảm biến từ trường AK8963 trong MPU-9250 dễ bị ảnh hưởng bởi kim loại của khung nhôm và từ trường sinh ra từ cuộn dây động cơ bước, gây sai lệch tích lũy góc xoay quanh trục thẳng đứng sau thời gian dài.
  • Hệ thống điều khiển vòng hở (Open-loop control): Động cơ bước Nema 17 sử dụng cơ chế đếm xung vi bước qua Driver TB6600 mà chưa có cảm biến Encoder hồi tiếp vị trí góc thực tại đầu trục.
  • Phạm vi truyền thông: Module Bluetooth HC-05 bị giới hạn khoảng cách điều khiển hiệu quả trong phạm vi dưới $15\text{m}$ khi có tường chắn.

Hướng phát triển tương lai

  1. Tích hợp cảm biến phản hồi vòng kín: Bổ sung cảm biến góc tuyệt đối từ tính (Magnetic Absolute Rotary Encoder AS5600) tại từng khớp để xây dựng bộ điều khiển hồi tiếp PID kín.
  2. Nâng cấp thuật toán lọc trạng thái: Triển khai Bộ lọc Kalman mở rộng (Extended Kalman Filter - EKF) hoặc bộ lọc Madgwick/Mahony trên vi điều khiển 32-bit (ESP32 / ARM Cortex-M4) để triệt tiêu hoàn toàn sai số trôi dạt từ trường.
  3. Mở rộng sang Thực tế ảo tương tác (VR/AR Integration): Kết hợp kính thực tế ảo (Oculus Quest hoặc HTC Vive) truyền hình ảnh 3D Stereoscopic từ đầu robot về mắt người điều khiển, kèm găng tay phản hồi xúc giác (Haptic Feedback Gloves).

Đối tượng hưởng lợi

  • Sinh viên ngành Kỹ thuật Điều khiển & Tự động hóa, Cơ điện tử: Tiếp cận tài liệu thực chứng về phương pháp thiết lập bảng D-H, giải thuật động học nghịch 6-DoF và kỹ thuật quy hoạch quỹ đạo chuyển động mượt mà.
  • Kỹ sư phát triển hệ thống nhúng: Sở hữu giải pháp mẫu về ghép nối đa cảm biến I2C qua TCA9548A, kỹ thuật truyền nhận JSON qua chuẩn UART bất đồng bộ trên dòng vi điều khiển 8-bit.
  • Doanh nghiệp nghiên cứu giải pháp tự động hóa chi phí thấp: Tham khảo thiết kế hệ thống điều khiển gắp thả từ xa an toàn với mức ngân sách phần cứng tối ưu, dễ dàng bảo trì và nội địa hóa linh kiện.

Câu hỏi thường gặp (FAQ)

1. Yêu cầu nguồn điện để vận hành ổn định hệ thống cánh tay robot 6-DoF này là gì?

Hệ thống sử dụng đồng thời hai mức điện áp: nguồn xung tổ ong $24\text{VDC} - 10\text{A}$ cung cấp công suất cho 3 Driver TB6600 điều khiển động cơ bước Nema 17; mạch hạ áp xung LM2596 điều chỉnh xuống $5\text{V} - 3\text{A}$ cung cấp dòng ổn định cho các động cơ servo RC MG996R và các bo mạch Arduino, tránh sụt áp khi khởi động tải nặng.

2. Làm thế nào để giải quyết xung đột địa chỉ I2C khi sử dụng 4 cảm biến MPU-9250 cùng lúc?

Cảm biến MPU-9250 chỉ cung cấp 2 địa chỉ I2C phần cứng (0x680x69). Hệ thống sử dụng mạch chuyển mạch I2C Multiplexer TCA9548A với 8 kênh độc lập. Vi điều khiển Arduino Nano gửi lệnh chọn kênh tương ứng đến TCA9548A trước khi đọc dữ liệu của từng cảm biến IMU, cho phép đọc nối tiếp dữ liệu của cả 4 cảm biến tại cùng một địa chỉ 0x68.

3. Tại sao cần phải áp dụng quy hoạch quỹ đạo bậc 3 thay vì xuất xung điều khiển vị trí trực tiếp?

Nếu gửi trực tiếp góc đích đến động cơ, gia tốc đầu và cuối hành trình sẽ biến thiên đột ngột thành vô cùng ($\infty$), gây va đập cơ khí, trượt bước (lost step) ở động cơ bước và làm rung lắc cấu trúc cánh tay. Đa thức bậc 3 ràng buộc vận tốc tại hai điểm mút bằng $0$ ($\dot{\theta}_0 = \dot{\theta}_f = 0$), giúp cánh tay tăng tốc và giảm tốc êm ái.

4. Hệ thống có thể tích hợp với Hệ điều hành Robot (ROS/ROS2) không?

Hoàn toàn khả thi. Bằng cách nạp gói thư viện rosserial_arduino vào Arduino Mega 2560, robot có thể nhận trực tiếp các topic kiểu sensor_msgs/JointStatetrajectory_msgs/JointTrajectory từ các gói lập kế hoạch chuyển động chuyên dụng như MoveIt trên nền tảng ROS.

5. Chi phí linh kiện ước tính để tự chế tạo một mô hình tương tự là bao nhiêu?

Tổng chi phí linh kiện phần cứng (bao gồm 3 động cơ bước Nema 17 kèm hộp giảm tốc, 3 Servo MG996R, 3 Driver TB6600, Arduino Mega + Nano, 4 cảm biến MPU-9250, TCA9548A, module Bluetooth HC-05, bộ nguồn tổ ong và chi phí in 3D/cắt laser nhôm) dao động trong khoảng từ 2.500.000 đến 3.200.000 VNĐ.


Kết luận

Đồ án tốt nghiệp "Thiết kế và điều khiển thực tế ảo Robot 6 bậc tự do" đã hoàn thành toàn diện các mục tiêu đề ra: từ việc xây dựng cấu trúc cơ khí vững chắc, giải quyết triệt để hệ phương trình Động học thuận - nghịch D-H, ứng dụng thuật toán quy hoạch quỹ đạo đa thức bậc 3 cho đến việc chế tạo thành công bộ điều khiển cử chỉ không dây đeo tay sử dụng mảng cảm biến IMU MPU-9250 qua Bluetooth.

Nghiên cứu khẳng định tính khả thi của việc ứng dụng các giải thuật điều khiển tiên tiến trên nền tảng phần cứng nhúng giá rẻ, mở ra triển vọng to lớn trong việc phổ cập hóa các giải pháp Teleoperation phục vụ y tế, cứu hộ và sản xuất công nghiệp an toàn tại Việt Nam.