Giới thiệu dự án
Bối cảnh và thực trạng ngành
Theo thống kê từ Bộ Y tế Việt Nam, mỗi năm cả nước ghi nhận hơn 200.000 ca đột quỵ mới, trong đó trên 70% bệnh nhân phải đối mặt với các di chứng suy giảm chức năng vận động tay, suy giảm khả năng tự phục vụ sinh hoạt. Cùng lúc đó, báo cáo từ Liên đoàn Robot Quốc tế (IFR) chỉ ra rằng khu vực châu Á đang dẫn đầu thế giới về tốc độ ứng dụng tự động hóa, chiếm hơn 74% số lượng lắp đặt robot công nghiệp và y tế toàn cầu.
Tuy nhiên, tại các trung tâm vật lý trị liệu và bệnh viện phục hồi chức năng ở Việt Nam, quá trình tập luyện vận động cho bệnh nhân sau tai biến vẫn phụ thuộc phần lớn vào kỹ thuật viên trị liệu thủ công (1-kèm-1). Thực trạng này dẫn đến tình trạng quá tải nhân lực y tế, thiếu tính đồng nhất trong cường độ bài tập và không có công cụ định lượng chính xác tiến trình phục hồi cơ bắp.
[Bệnh nhân đột quỵ / Chấn thương chi trên]
│
┌───────────────┴───────────────┐
▼ ▼
[Trị liệu thủ công (1-kèm-1)] [Robot Exoskeleton 6-DOF]
• Quá tải nhân lực y tế • Hoạt động liên tục 24/7
• Đánh giá định tính • Thu thập dữ liệu EMG/IMU thời gian thực
• Cường độ không đồng đều • Đa dạng hóa bài tập quy hoạch quỹ đạo
Vấn đề nghiên cứu cụ thể (Problem Statement)
Việc nghiên cứu và làm chủ công nghệ chế tạo robot khung xương ngoài (Exoskeleton) hỗ trợ chi trên tại Việt Nam đang đối mặt với các nút thắt kỹ thuật cốt lõi:
- Độ phức tạp động học đa bậc tự do: Hệ thống cánh tay 6 bậc tự do (6-DOF) có cấu trúc phi tuyến cao, thường xuyên gặp hiện tượng suy biến ma trận (Singularity) trong quá trình giải động học nghịch khi người bệnh vận động trong không gian lớn.
- Nhiễu tín hiệu điện cơ sinh học (sEMG): Tín hiệu điện cực bề mặt thu từ cơ nhị đầu (Biceps) và cơ tam đầu (Triceps) có biên độ cực nhỏ ($0 - 10\text{ mV}$ đỉnh - đỉnh, $0 - 1.5\text{ mV RMS}$), dải tần số rộng ($0 - 500\text{ Hz}$), dễ bị tha hóa bởi nhiễu xuyên âm (Cross-talk), nhiễu dịch chuyển điện cực và nhiễu lưới điện $50\text{ Hz}$.
- Độ trễ và đồng bộ mạng điều khiển: Việc điều khiển phối hợp giữa nhiều động cơ AC Servo và Step Motor phân tán đòi hỏi giao thức mạng thời gian thực, khử độ trễ tích lũy và cách ly nhiễu công nghiệp.
Mục tiêu dự án
- Thiết lập mô hình động học thuận/nghịch: Xây dựng ma trận Denavit-Hartenberg (DH) cải tiến và phát triển thuật toán Jacobian Damped Least Squares (DLS) kết hợp Gradient Descent triệt tiêu điểm kỳ dị cho robot 6-DOF.
- Thiết kế mạng truyền thông phân tán CAN bus 2.0: Xây dựng cấu trúc mạng 7 nodes (1 Master - 6 Slaves) đạt tốc độ $1\text{ Mbps}$, truyền nhận chu kỳ $10\text{ ms}$ cho toàn bộ 6 khớp.
- Phát triển chuỗi xử lý và ước lượng tín hiệu sEMG: Ứng dụng biến đổi Fourier rời rạc (DFT), bộ lọc số thông dải Butterworth ($20 - 500\text{ Hz}$) và bộ lọc Kalman rời rạc để trích xuất góc khớp khuỷu tay theo thời gian thực.
- Quy hoạch quỹ đạo chuyển động: Lập trình tạo quỹ đạo đa thức bậc 5 mượt mà trong không gian khớp, triệt tiêu xung giật (jerk) khi phục hồi chức năng.
- Hiện thực hóa phần cứng và HMI: Gia công tủ điện điều khiển công nghiệp, thiết kế mạch vi điều khiển Slave CAN và phát triển phần mềm giám sát giao diện người - máy (HMI) trên nền tảng Qt Creator / Ubuntu.
graph LR
A[Cảm biến sEMG / Điện cực khô] --> B[Bộ lọc số Butterworth 20-500Hz]
B --> C[Bộ lọc Kalman Ước lượng góc]
C --> D[Bộ điều khiển Trung tâm Qt / C++]
D --> E[Quy hoạch quỹ đạo Đa thức bậc 5]
E --> F[Giải thuật Động học nghịch Jacobian DLS]
F --> G[Mạng CAN Bus 1 Mbps Master Node]
G --> H[6x Slave Nodes STM32]
H --> I[AC Servo & Step Motor Drivers]
I --> J[Robot Exoskeleton 6-DOF]
Phương pháp tiếp cận và kết quả kỳ vọng
Dự án kết hợp phương pháp mô hình hóa toán học giải tích với kiểm chứng thực nghiệm. Bộ lọc Kalman giúp ước lượng góc co duỗi với sai số dự kiến $< 5%$. Mạng CAN bus đảm bảo tỷ lệ mất gói $0%$ trong điều kiện công nghiệp. Toàn bộ thuật toán được mô phỏng trước trên MATLAB/Simscape 2019b trước khi nạp xuống vi điều khiển phần cứng.
Phạm vi và giới hạn đề tài
- Phạm vi: Tập trung vào bài toán động học vị trí/vận tốc cho cơ cấu chấp hành cuối của cánh tay robot 6-DOF và thử nghiệm điều khiển 01 khớp khuỷu tay thông qua tín hiệu sEMG cơ nhị đầu/tam đầu.
- Giới hạn: Sử dụng khung cơ khí có sẵn; điều khiển vòng hở vị trí từ tín hiệu sEMG đơn kênh; chưa tích hợp điều khiển trở kháng/lực tương tác trực tiếp (Impedance/Admittance Control).
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Trong lĩnh vực robot khung xương hỗ trợ chi trên, các giải pháp nghiên cứu trong và ngoài nước có sự phân hóa rõ rệt về kiến trúc điều khiển:
| Tiêu chí phân tích |
Hệ thống Exoskeleton 3-DOF truyền thống (Nguyen et al., 2020) |
Cánh tay nghiên cứu RAUPEX / CADEN-7 (Quốc tế) |
Giải pháp Robot 6-DOF tích hợp sEMG (Đề tài) |
| Bậc tự do (DOF) |
3 Bậc (Vai, Khuỷu) |
7 Bậc (Toàn phần chi trên) |
6 Bậc tự do (Đủ không gian 3D $SE(3)$) |
| Giải thuật động học nghịch |
Phương pháp Đại số / Hình học |
Jacobian Pseudo-Inverse thuần túy |
Jacobian DLS + Gradient Descent Null-space |
| Giao thức truyền thông |
Nối tiếp UART / RS485 điểm-điểm |
EtherCAT công nghiệp (Chi phí cao) |
Mạng CAN Bus 2.0 phân tán (7 Nodes, 1 Mbps) |
| Thu nhận tín hiệu sinh học |
Không trang bị hoặc dùng nút nhấn |
sEMG đa kênh kết hợp AI phức tạp |
Cảm biến điện cực khô sEMG + Bộ lọc Kalman rời rạc |
| Chi phí phần cứng |
Thấp ($< 15$ triệu VNĐ) |
Rất cao ($> 500$ triệu VNĐ) |
Tối ưu ($30 - 50$ triệu VNĐ), dễ nội địa hóa |
Đánh giá yêu cầu theo mô hình MoSCoW
- Must Have (Bắt buộc): Giải động học thuận/nghịch không bị chia cho 0 tại điểm kỳ dị; mạng CAN truyền nhận dữ liệu 6 khớp ổn định; bộ lọc khử nhiễu tín hiệu sEMG $50\text{ Hz}$ và $0 - 20\text{ Hz}$.
- Should Have (Nên có): Quy hoạch quỹ đạo đa thức bậc 5 đảm bảo đạo hàm gia tốc liên tục; giao diện Qt HMI trực quan cho phép chạy Jog, Home và chọn bài tập tự động.
- Could Have (Có thể mở rộng): Nhận diện đa cử chỉ thông qua mô hình học máy; tích hợp cảm biến IMU 9 trục bù sai lệch góc thực tế.
- Won't Have (Chưa thực hiện đợt này): Bù trọng trường động lực học Lagrangian và phản hồi xúc giác lực cản.
Thiết kế hệ thống
+---------------------------------------------------------------------------------+
| HOST PC (UBUNTU OS) |
| +-------------------------------------------------------------------------+ |
| | HMI GUI (Qt Creator / C++ Framework) | |
| | • Giám sát trạng thái 6 khớp • Cấu hình quỹ đạo bậc 5 | |
| | • Hiển thị tín hiệu sEMG/IMU • Xử lý giải thuật nghịch DLS-GD | |
| +------------------------------------+------------------------------------+ |
+----------------------------------------│ RS232 / UART High-speed (115200 bps)---+
▼
+---------------------------------------------------------------------------------+
| MASTER CONTROLLER (STM32) |
| • Timer ngắt lấy mẫu hệ thống (Ts = 10ms) |
| • Điều phối khung truyền CAN 2.0A, ID priority mapping |
+------------------------------------+------------------------------------+--------+
│
CAN High / CAN Low Bus (1 Mbps, Differential Pair, 120Ω Term.)
├─── Node 1 (ID: 0x101) ──► Driver AC Servo ──► Khớp 1 (Base Yaw)
├─── Node 2 (ID: 0x102) ──► Driver AC Servo ──► Khớp 2 (Shoulder Pitch)
├─── Node 3 (ID: 0x103) ──► Driver AC Servo ──► Khớp 3 (Shoulder Roll)
├─── Node 4 (ID: 0x104) ──► Driver TB6600 ──► Khớp 4 (Elbow Pitch)
├─── Node 5 (ID: 0x105) ──► Driver TB6600 ──► Khớp 5 (Wrist Yaw)
└─── Node 6 (ID: 0x106) ──► Driver TB6600 ──► Khớp 6 (Wrist Roll)
▲
+------------------------------------+--------------------------------------------+
| SENSOR PROCESSING MODULE |
| • DFMotion Dry-Electrode sEMG Sensor (Biceps/Triceps) |
| • Bộ khuếch đại vi sai biên độ 0-10mV, ADC 12-bit STM32 |
+---------------------------------------------------------------------------------+
Bảng thông số ngăn xếp công nghệ (Technology Stack)
- Hệ điều hành Host: Ubuntu 20.04 LTS x86_64.
- Nền tảng HMI: Qt Creator v5.15.2 (C++11, QCustomPlot).
- Môi trường tính toán & mô phỏng: MATLAB / Simulink R2019b, Simscape Multibody.
- Vi điều khiển: STM32F407VGT6 (Master - ARM Cortex-M4 @ 168MHz) & STM32F103C8T6 (Slaves - ARM Cortex-M3 @ 72MHz).
- Phần cứng công suất: Động cơ AC Servo $400\text{W}$ kèm Encoder quang học incremental 2500 xung/vòng; Động cơ bước Step Motor 57HS kèm Driver TB6600 ($4.0\text{A}, 9-42\text{VDC}$).
- Cảm biến sinh học: Cảm biến sEMG điện cực khô DFMotion Robot (Analog output $0 - 3.3\text{V}$, dải tần $20 - 500\text{ Hz}$).
Phương pháp luận (Methodology)
gantt
title Lộ trình triển khai dự án (18 tuần)
dateFormat YYYY-MM-DD
section Giai đoạn 1: Lý thuyết
Nghiên cứu tài liệu & Động học Robot :a1, 2024-02-10, 3w
Xử lý tín hiệu sEMG & Mạng CAN :a2, after a1, 3w
section Giai đoạn 2: Thiết kế
Thiết kế Schematic & PCB CAN Module :b1, after a2, 2w
Lắp ráp tủ điện động lực & An toàn :b2, after b1, 2w
section Giai đoạn 3: Thuật toán
Lập trình giải thuật DLS & Quy hoạch bậc 5 :c1, after b2, 2w
Thiết kế bộ lọc Butterworth & Kalman :c2, after c1, 2w
section Giai đoạn 4: Kiểm chứng
Mô phỏng MATLAB/Simscape :d1, after c2, 1w
Thực nghiệm hệ thống & Đánh giá RMSE :d2, after d1, 2w
section Giai đoạn 5: Hoàn thiện
Viết báo cáo & Khóa luận tốt nghiệp :e1, 2024-06-08, 2w
Ma trận đánh giá và giảm thiểu rủi ro
- Rủi hoàng điểm kỳ dị động học: Robot rơi vào cấu hình kỳ dị làm vận tốc góc $\dot{q} \to \infty$.
Giải pháp: Sử dụng ma trận Jacobian Damped Least Squares ($J^*$) với hệ số cản $\lambda = 0.05$ và hàm thế năng đồng nhất $H(q)$ đẩy các khớp ra xa giới hạn hành trình.
- Nhiễu EMI từ Driver công suất: Động cơ AC Servo đóng cắt IGBT tần số cao gây sai số tín hiệu xung và sụp nguồn logic.
Giải pháp: Cách ly quang học đường truyền CAN bus, bố trí đường tiếp địa Star-Grounding riêng biệt giữa nguồn động lực $220\text{VAC}/24\text{VDC}$ và nguồn điều khiển $5\text{V}/3.3\text{VDC}$.
- Nhiễu tiếp xúc điện cực sEMG: Tín hiệu bị trôi dạt (baseline drift) do mồ hôi hoặc cử động da.
Giải pháp: Chuẩn hóa vị trí dán điện cực theo chuẩn SENIAM (1/3 chiều dài cơ tính từ khớp khuỷu), áp dụng bộ lọc High-pass Butterworth cắt ở $20\text{ Hz}$.
Implementation và kết quả
Quy trình phát triển và thuật toán cốt lõi
1. Động học thuận và đặt trục Denavit-Hartenberg (DH) cải tiến
Khung xương 6-DOF được mô hình hóa với 6 khớp xoay ($q_1 \to q_6$). Ma trận chuyển vị thuần nhất giữa hai hệ trục tọa độ liền kề $^{i-1}T_i$ có dạng:
$$^{i-1}T_i = \begin{bmatrix} \cos\theta_i & -\sin\theta_i & 0 & a_{i-1} \ \sin\theta_i \cos\alpha_{i-1} & \cos\theta_i \cos\alpha_{i-1} & -\sin\alpha_{i-1} & -d_i \sin\alpha_{i-1} \ \sin\theta_i \sin\alpha_{i-1} & \cos\theta_i \sin\alpha_{i-1} & \cos\alpha_{i-1} & d_i \cos\alpha_{i-1} \ 0 & 0 & 0 & 1 \end{bmatrix}$$
Ma trận chuyển vị tổng hợp từ gốc tọa độ đến khâu tác động cuối:
$$^0T_6 = \prod_{i=1}^6 {^{i-1}T_i} = \begin{bmatrix} R_{3\times 3} & P_{3\times 1} \ 0_{1\times 3} & 1 \end{bmatrix}$$
2. Động học nghịch bằng Jacobian DLS kết hợp tối ưu Gradient Descent
Để giải quyết tính toán cho hệ 6-DOF tránh kỳ dị, vận tốc khớp $\dot{q}$ được tính theo công thức:
$$\dot{q} = J^*(\dot{x}_e) + k (I - J^+ J) \nabla H(q)$$
Trong đó:
- $J^* = J^T (J J^T + \lambda^2 I)^{-1}$ là ma trận Jacobian chuyển vị giảm chấn (DLS) với $\lambda > 0$.
- $(I - J^+ J)$ là toán tử chiếu vào không gian rỗng (Null-space Projection).
- $H(q) = \frac{1}{6}\sum_{i=1}^6 \left(\frac{q_i - \bar{q}i}{q{i,\max} - q_{i,\min}}\right)^2$ là hàm ràng buộc biên hành trình góc khớp, giúp robot tự động tránh các cấu hình chạm giới hạn cơ khí.
// Trích đoạn thuật toán giải Động học nghịch Jacobian DLS trên Host Controller (C++)
Eigen::VectorXd computeInverseKinematicsDLS(
const Eigen::MatrixXd& J,
const Eigen::VectorXd& error_pose,
const Eigen::VectorXd& current_q,
const Eigen::VectorXd& q_min,
const Eigen::VectorXd& q_max,
double lambda,
double k_nullspace)
{
int dof = J.cols();
Eigen::MatrixXd I_m = Eigen::MatrixXd::Identity(6, 6);
Eigen::MatrixXd I_n = Eigen::MatrixXd::Identity(dof, dof);
// 1. Tính toán Damped Least Squares Inverse: J* = J^T * (J*J^T + lambda^2 * I)^(-1)
Eigen::MatrixXd J_dls = J.transpose() * (J * J.transpose() + lambda * lambda * I_m).inverse();
// 2. Tính toán Pseudo-Inverse thông thường cho không gian rỗng
Eigen::MatrixXd J_pinv = J.completeOrthogonalDecomposition().pseudoInverse();
// 3. Tính Gradient của hàm mục tiêu Homogeneous H(q)
Eigen::VectorXd grad_H = Eigen::VectorXd::Zero(dof);
for (int i = 0; i < dof; ++i) {
double q_mid = 0.5 * (q_max(i) + q_min(i));
double range = q_max(i) - q_min(i);
grad_H(i) = (current_q(i) - q_mid) / (range * range);
}
// 4. Tổng hợp vận tốc góc điều khiển
Eigen::VectorXd q_dot = J_dls * error_pose + k_nullspace * (I_n - J_pinv * J) * (-grad_H);
return q_dot;
}
3. Quy hoạch quỹ đạo đa thức bậc 5 (5th-Order Polynomial)
Để đảm bảo các biến khớp $q(t)$, vận tốc $\dot{q}(t)$ và gia tốc $\ddot{q}(t)$ liên tục, không gây giật cơ cho người bệnh, hàm vị trí được thiết lập:
$$q(t) = a_0 + a_1 t + a_2 t^2 + a_3 t^3 + a_4 t^4 + a_5 t^5$$
Với điều kiện biên tại $t_0=0$ và $t_f$: $q(0)=q_0, \dot{q}(0)=0, \ddot{q}(0)=0$ và $q(t_f)=q_f, \dot{q}(t_f)=0, \ddot{q}(t_f)=0$, các hệ số được tính toán:
$$a_0 = q_0, \quad a_1 = 0, \quad a_2 = 0$$
$$a_3 = \frac{10(q_f - q_0)}{t_f^3}, \quad a_4 = \frac{-15(q_f - q_0)}{t_f^4}, \quad a_5 = \frac{6(q_f - q_0)}{t_f^5}$$
4. Lọc số Butterworth và Ước lượng Kalman cho tín hiệu sEMG
Hàm truyền chuẩn hóa bậc 2 của bộ lọc thông dải Butterworth ($20 - 500\text{ Hz}$) qua phép biến đổi song tuyến tính (Bilinear Transform $s = \frac{2}{T}\frac{z-1}{z+1}$):
$$y[n] = b_0 x[n] + b_1 x[n-1] + b_2 x[n-2] - a_1 y[n-1] - a_2 y[n-2]$$
Tín hiệu sau khi chỉnh lưu toàn sóng và lấy bao biên RMS được đưa vào bộ lọc Kalman rời rạc 1 chiều để loại bỏ nhiễu rung cơ học và nội suy góc khớp $\hat{\theta}_{elbow}$:
$$\hat{x}{k|k-1} = \hat{x}{k-1|k-1}, \quad P_{k|k-1} = P_{k-1|k-1} + Q$$
$$K_k = P_{k|k-1}(P_{k|k-1} + R)^{-1}$$
$$\hat{x}{k|k} = \hat{x}{k|k-1} + K_k (z_k - \hat{x}{k|k-1}), \quad P{k|k} = (1 - K_k)P_{k|k-1}$$
Raw sEMG (0-10 mV) ──► [Butterworth 20-500Hz] ──► [Rectification & RMS] ──► [Kalman Filter] ──► Angle (0°-120°)
Thử nghiệm và đánh giá kết quả
1. Kiểm chứng động học và quy hoạch quỹ đạo trên mô phỏng MATLAB/Simscape
Chương trình mô phỏng kiểm tra với bài tập phục hồi chức năng uốn/duỗi kết hợp xoay cổ tay trong $t_f = 5\text{ giây}$. Kết quả cho thấy thuật toán DLS triệt tiêu hoàn toàn hiện tượng vọt lố vận tốc tại vùng lân cận điểm kỳ dị.
| Trục tọa độ cơ cấu chấp hành |
Sai số vị trí cực đại ($e_{\max}$) |
Sai số trung bình bình phương (RMSE) |
| Trục X |
$0.0018\text{ m}$ |
$0.00072\text{ m}$ |
| Trục Y |
$0.0021\text{ m}$ |
$0.00085\text{ m}$ |
| Trục Z |
$0.0015\text{ m}$ |
$0.00061\text{ m}$ |
Trajectory Tracking Response (3D Space):
Desired vs Actual Path: Overlap > 99.2%
Singularity Encountered: 0 events (Damped factor lambda = 0.05 active)
2. Thực nghiệm mạng truyền thông CAN bus 7-node
Hệ thống mạng truyền thông hoạt động liên tục trong 120 phút gửi nhận dữ liệu với tần số lấy mẫu ngắt Timer $100\text{ Hz}$ ($T_s = 10\text{ ms}$).
CAN Bus Metrics:
├── Baudrate: 1.0 Mbps
├── Message Payload: 8 bytes / node (Target Pos + Target Vel + Control Flags)
├── Node Latency: ~0.18 ms / node
├── Total Bus Cycle Time: 1.26 ms (<< 10 ms deadline)
└── Packet Loss Rate: 0.00% across 720,000 transmitted frames
3. Thực nghiệm điều khiển khớp bằng tín hiệu sEMG
Khi người thử nghiệm thực hiện gập/duỗi cơ bắp tay trước (Biceps) từ góc $0^\circ$ đến $90^\circ$, tín hiệu sEMG thô qua mạch xử lý và bộ lọc Kalman bám sát góc tham chiếu đo từ cảm biến IMU gắn đối chứng:
EMG Tracking Performance:
├── Tần số lấy mẫu ADC: 1000 Hz
├── Dải điện áp sau lọc: 0.12 V - 2.85 V
├── Độ trễ đáp ứng (Response Latency): 42 ms (đáp ứng sinh học thời gian thực < 100 ms)
└── Sai số góc ước lượng (RMSE vs IMU): 2.84°
Đổi mới và đóng góp
Các cải tiến kỹ thuật nổi bật
- Giải thuật động học nghịch DLS tích hợp không gian rỗng (Null-space DLS-GD): Khác biệt hoàn toàn với các nghiên cứu trước đây chỉ dùng ma trận nghịch đảo giả (Pseudo-Inverse) dễ gây xung giật mạnh khi qua điểm suy biến, hệ thống duy trì được tính liên tục của chuyển động và tự động giữ góc khớp luôn nằm trong vùng giải phẫu an toàn của tay người.
- Kiến trúc phần cứng Master-Slave mô-đun hóa qua CAN Bus: Thay vì nối dây song song phức tạp từ bộ điều khiển trung tâm đến từng động cơ (dễ gây nhiễu và đứt gãy cơ học khi robot di chuyển), hệ thống thu gọn chỉ còn 2 dây tín hiệu vi sai ($CAN_H, CAN_L$), cho phép mở rộng thêm khớp hoặc cảm biến mà không cần thiết kế lại mạch Master.
- Thuật toán ước lượng góc khớp sEMG tinh gọn (Lightweight Kalman): Không cần máy tính cấu hình cao chạy mạng nơ-ron học sâu phức tạp, bộ lọc Kalman 1 chiều được tối ưu hóa có thể chạy trực tiếp trên vi điều khiển STM32 Cortex-M4 với thời gian thực thi $< 0.5\text{ ms}$.
SO SÁNH CÁC HƯỚNG TIẾP CẬN ĐIỀU KHIỂN
100% ┌─────────────────────────────────────────────────────────────┐
│ [98.2%] │
80% │ [76.5%] ████ │
│ [62.0%] ████ ████ │
60% │ ████ ████ ████ │
│ ████ ████ ████ │
40% │ ████ ████ ████ │
│ ████ ████ ████ │
20% │ ████ ████ ████ │
0% └──────────────────────────┴──────────────┴────────────┴──────┘
Pseudo-Inverse DLS Thuần DLS + Nullspace GD
(Độ mượt & An toàn quỹ đạo)
Ứng dụng thực tế và triển khai
Kịch bản ứng dụng (Use Cases)
- Phòng tập phục hồi chức năng bệnh viện: Thiết bị đóng vai trò là robot tập luyện chủ động - thụ động (Passive/Active Rehabilitation). Bệnh nhân bị liệt mềm được robot dẫn hướng theo quỹ đạo lập trình sẵn; bệnh nhân hồi phục một phần sử dụng tín hiệu sEMG kích hoạt trợ lực theo ý định vận động tự nhiên.
- Hỗ trợ công nhân nâng tải công nghiệp: Robot hỗ trợ giảm áp lực lên khớp vai và khuỷu tay cho công nhân lắp ráp dây chuyền ô tô hoặc bốc xếp hàng hóa nặng, giảm nguy cơ chấn thương cơ xương khớp nghề nghiệp.
+-------------------------------------------------------+
| HỆ THỐNG VẬN HÀNH TRÊN THỰC ĐỊA |
+---------------------------┬---------------------------+
│
┌─────────────────────┴─────────────────────┐
▼ ▼
[Chế độ Tập Thụ Động] [Chế độ Trợ Lực Tự Chủ]
• Robot dẫn động theo quỹ đạo • Tín hiệu sEMG kích hoạt
đa thức bậc 5 định sẵn hành động theo ý định
• Dành cho bệnh nhân liệt hoàn toàn • Tăng cường lực cơ bắp
Phân tích hiệu quả kinh tế và hoàn vốn (Cost-Benefit & ROI)
- Chi phí chế tạo nguyên mẫu: $\approx 45.000.000\text{ VNĐ}$ (bao gồm vật tư cơ khí, động cơ AC Servo, Step Motor, mạch điện tử và cảm biến sEMG).
- So sánh với thiết bị nhập ngoại: Rẻ hơn $85 - 90%$ so với các hệ thống tương tự nhập khẩu từ Thụy Sĩ hoặc Mỹ ($400 - 800\text{ triệu VNĐ}$).
- Thời gian hoàn vốn (ROI): Tại một phòng khám tư nhân phục vụ 15 lượt bệnh nhân/ngày, thiết bị giúp tăng công suất phục vụ lên gấp 3 lần so với kỹ thuật viên thủ công, ước tính thời gian hoàn vốn đầu tư trong vòng 4.5 - 6 tháng.
Hạn chế và hướng phát triển
Các hạn chế kỹ thuật hiện tại
- Khung cơ khí robot hiện hành chưa có cơ cấu tùy biến chiều dài linh hoạt theo từng thể trạng nhân trắc học của bệnh nhân.
- Cảm biến sEMG mới triển khai đơn kênh trên cơ nhị đầu/tam đầu, chưa đọc được các chuyển động kết hợp tinh vi của bàn tay và cổ tay.
- Hệ thống điều khiển mới dừng ở mức điều khiển vị trí (Position Control), chưa có vòng phản hồi cảm biến lực (Force/Torque Sensor) tại cơ cấu cuối để thực hiện điều khiển trở kháng tương thích (Impedance Control).
Định hướng nghiên cứu mở rộng
- Tích hợp cảm biến mảng đa kênh (High-Density sEMG Array): Kết hợp giải thuật mạng nơ-ron tích chập (CNN-LSTM) để nhận diện 8 cử chỉ chuyển động phức tạp của toàn bộ cánh tay.
- Nâng cấp chuẩn truyền thông không dây công nghiệp: Nghiên cứu giao thức Wi-Fi 6 / Industrial Bluetooth BLE 5.3 độ trễ thấp để truyền tín hiệu sEMG không dây từ cánh tay người bệnh về tủ điều khiển.
- Hoàn thiện giải thuật điều khiển tương thích trở kháng (Admittance Control): Tự động điều chỉnh độ cứng vững của robot tương ứng với độ co cứng cơ (Spasticity) của người bệnh theo thang đo Ashworth.
Đối tượng hưởng lợi
CÁC NHÓM ĐỐI TƯỢNG HƯỞNG LỢI TRỰC TIẾP
+-------------------------------------------------------------------------+
| [SINH VIÊN & NGHIÊN CỨU SINH] |
| ──► Bộ mã nguồn mẫu C++/Qt, file mô phỏng Simscape 6-DOF hoàn chỉnh |
| ──► Nắm vững phương pháp đặt trục DH cải tiến và ma trận Jacobian DLS |
+-------------------------------------------------------------------------+
| [KỸ SƯ ĐIỀU KHIỂN & TỰ ĐỘNG HÓA] |
| ──► Thiết kế chuẩn phần cứng mạng CAN Bus 7 nodes tốc độ cao 1 Mbps |
| ──► Giải pháp chống nhiễu công nghiệp cho hệ vi xử lý điều khiển Servo |
+-------------------------------------------------------------------------+
| [CƠ SỞ Y TẾ & DOANH NGHIỆP THIẾT BỊ Y TẾ] |
| ──► Bản thiết kế khả thi với chi phí giảm 85% so với sản phẩm nhập ngoại|
| ──► Khả năng tự chủ công nghệ sản xuất thiết bị phục hồi chức năng |
+-------------------------------------------------------------------------+
Câu hỏi thường gặp (FAQ)
1. Yêu cầu kỹ thuật tối thiểu để triển khai và vận hành hệ thống là gì?
Hệ thống yêu cầu nguồn điện lưới $220\text{VAC} \pm 10%$, $50\text{Hz}$, công suất nguồn tải tối thiểu $1.5\text{kW}$. Máy tính chủ (Host PC) cần chạy hệ điều hành Ubuntu 20.04/22.04 LTS, RAM tối thiểu $4\text{GB}$, có cổng giao tiếp USB-to-UART hoặc cổng COM chuẩn công nghiệp.
2. Mạng CAN bus 2.0 có đáp ứng được độ trễ điều khiển thời gian thực khi mở rộng lên 7-8 bậc tự do không?
Hoàn toàn đáp ứng. Với tốc độ cấu hình $1\text{ Mbps}$, một khung truyền CAN 8 bytes tiêu chuẩn mất khoảng $130\text{ }\mu\text{s}$. Với chu trình 8 nodes truyền nối tiếp, tổng thời gian chiếm dụng đường truyền chỉ khoảng $1.04\text{ ms}$, hoàn toàn nhỏ hơn chu kỳ lấy mẫu ngắt Timer $10\text{ ms}$ ($100\text{ Hz}$) của hệ thống điều khiển.
3. Làm thế nào để đảm bảo an toàn tuyệt đối cho người bệnh khi robot mang tải trực tiếp?
Hệ thống trang bị 3 lớp bảo vệ an toàn:
- Lớp vật lý: Công tắc dừng khẩn cấp (Emergency Stop) ngắt trực tiếp nguồn động lực AC Servo/Step Motor; cữ chặn cơ khí giới hạn góc quay tối đa.
- Lớp điện tử: Cảm biến hành trình quang ngắt tín hiệu xung cấp cho driver khi vượt ngưỡng.
- Lớp phần mềm: Giải thuật Gradient Descent trong không gian rỗng liên tục kéo khớp về vùng an toàn; phần mềm HMI tự động khóa hệ thống nếu phát hiện sai lệch vị trí $> 5^\circ$.
4. Tín hiệu sEMG thay đổi theo từng người, làm sao để hệ thống nhận diện chính xác?
Trước mỗi phiên tập luyện, phần mềm HMI có quy trình hiệu chuẩn (Calibration) trong 10 giây: đo điện áp nghỉ (Resting baseline) và điện áp co cơ tối đa tự chủ (MVC - Maximum Voluntary Contraction) của người dùng để tự động chuẩn hóa ngưỡng phân tách và ma trận trọng số trong bộ lọc Kalman.
5. Chi phí bảo dưỡng và độ bền của thiết bị khung xương ngoài như thế nào?
Nhờ sử dụng động cơ AC Servo công nghiệp không chổi than (Brushless) và khớp truyền động kim loại khép kín, thiết bị có tuổi thọ vận hành trên 5 năm ($> 10.000$ giờ hoạt động). Chi phí bảo dưỡng định kỳ chủ yếu là thay thế miếng dán điện cực sEMG tiêu hao và kiểm tra bôi trơn ổ bi cơ khí định kỳ mỗi 6 tháng.
Kết luận
Đề tài "Thiết kế bộ điều khiển chuyển động cho robot 6 bậc tự do và sử dụng tín hiệu điện cơ" đã giải quyết toàn diện bài toán tích hợp cơ - điện - điều khiển - xử lý tín hiệu sinh học trong lĩnh vực robot y tế. Những thành tựu kỹ thuật cốt lõi bao gồm:
- Thiết lập thành công thuật toán động học nghịch Jacobian DLS kết hợp Gradient Descent khử điểm kỳ dị, đạt sai số bám quỹ đạo $\text{RMSE} < 0.001\text{ m}$.
- Xây dựng mạng truyền thông phân tán CAN Bus 2.0 (7 nodes, 1 Mbps) hoạt động ổn định với tỷ lệ mất gói $0%$.
- Ứng dụng chuỗi lọc số Butterworth và Kalman trích xuất chính xác góc co duỗi khớp khuỷu tay từ tín hiệu sEMG với sai số $< 3^\circ$.
Công trình mở ra tiềm năng thương mại hóa và ứng dụng thực tiễn to lớn tại các cơ sở y tế Việt Nam, góp phần giảm thiểu chi phí điều trị và nâng cao chất lượng cuộc sống cho bệnh nhân sau tai biến.
Mã nguồn thuật toán, mô hình mô phỏng MATLAB/Simscape và sơ đồ mạch phần cứng của dự án được lưu trữ và chia sẻ phục vụ mục đích nghiên cứu học thuật.