Giới thiệu dự án

Trong kỷ nguyên chuyển đổi số y tế (Smart Healthcare 4.0), việc tự động hóa khâu hậu cần và logistics nội viện đóng vai trò then chốt trong việc nâng cao chất lượng điều trị và tối ưu hóa năng suất vận hành. Theo các khảo sát y tế lâm sàng, hơn 70% các quyết định y khoa dựa trên kết quả xét nghiệm sinh hóa và huyết học, trong khi thời gian hoàn thành xét nghiệm (Turnaround Time - TAT) phụ thuộc tới 50% vào khâu vận chuyển mẫu thủ công. Việc điều dưỡng hoặc hộ lý phải trực tiếp vận chuyển các túi máu, mẫu bệnh phẩm, huyết tương qua các hành lang đông đúc tiềm ẩn nguy cơ chậm trễ cấp cứu, đổ vỡ lây nhiễm chéo và làm suy giảm thời gian chăm sóc trực tiếp cho người bệnh.

Đề tài "Nghiên cứu, thiết kế và chế tạo hệ thống vận chuyển sinh phẩm tự động" (Đồ án tốt nghiệp ngành Công nghệ Kỹ thuật Cơ điện tử, Trường Đại học Sư phạm Kỹ thuật TP.HCM - HCMUTE) được xây dựng nhằm giải quyết triệt để bài toán logistics mẫu bệnh phẩm bằng giải pháp robot tự hành di chuyển trên hệ thống ray trần (Overhead Grid Rail Mobile Robot).

                      +-----------------------------+
                      |   Hệ thống Quản trị Trung tâm |
                      |    (Central Host Server)    |
                      +--------------+--------------+
                                     |
                          [Giao thức Mesh / Wi-Fi]
                                     |
              +----------------------+----------------------+
              |                                             |
+-------------v-------------+                 +-------------v-------------+
|    Mobile Robot Node 1    |                 |    Mobile Robot Node 2    |
| - Vi điều khiển: STM32F103 |                 | - Vi điều khiển: STM32F103 |
| - Động cơ: DC Planet + PID|                 | - Động cơ: DC Planet + PID|
| - Cơ cấu: 8 bánh (Trục X/Y)|                 | - Cơ cấu: 8 bánh (Trục X/Y)|
| - Nâng hạ: Vít me (Trục Z) |                 | - Nâng hạ: Vít me (Trục Z) |
+---------------------------+                 +---------------------------+

Mục tiêu của dự án:

  1. Thiết kế cơ khí chính xác: Nghiên cứu và chế tạo mô hình robot di động mang cơ cấu 8 bánh độc lập (4 bánh trục X, 4 bánh trục Y) kết hợp cụm nâng hạ chuyển trục Z bằng vít me - bộ truyền đai nhằm di chuyển linh hoạt trên hệ lưới ray 2D.
  2. Xây dựng hệ thống điều khiển biên (Edge Control): Tích hợp vi điều khiển STM32F103C8T6, mạch hạ áp công suất XL4016 và bộ điều khiển hồi tiếp vòng kín PID vận tốc kết hợp quỹ đạo vận tốc hình thang (Trapezoidal Velocity Profile).
  3. Phát triển thuật toán điều phối thông minh: Xây dựng thuật toán phân luồng và tìm đường tránh xung đột đa robot CBS (Conflict-Based Search) trên hệ thống quản lý trung tâm.
  4. Hiện thực hóa và kiểm chuẩn thực nghiệm: Gia công mô hình thực tế, kiểm tra độ ổn định đáp ứng động học ở tải trọng danh định $8\text{ kg}$ (tối đa $12\text{ kg}$), vận tốc thiết kế đạt $700\text{ mm/s}$ với công suất đáp ứng $1.000\text{ mẫu sinh phẩm/ngày}$.

Phạm vi và giới hạn nghiên cứu:

  • Phạm vi: Hoạt động trong hành lang nội viện trần cao với khẩu độ từ $1{,}2\text{ m} - 1{,}6\text{ m}$, kết nối giữa các trạm lấy hàng (phòng xét nghiệm, ngân hàng máu) và trạm nhận hàng (phòng phẫu thuật, phòng cấp cứu).
  • Giới hạn: Nghiên cứu tập trung vào hệ thống quản lý 02 robot vận hành đồng thời trên mô hình lưới ray phân tầng, phân phối sinh phẩm dạng túi chứa tiêu chuẩn $350\text{ ml}$.

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

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

Tiêu chí Băng tải cố định Robot AGV/AMR dò line mặt sàn Hệ thống ray trần (Đề tài đề xuất)
Không gian chiếm dụng Chiếm dụng diện tích sàn, cản trở di chuyển Chiếm lối đi hành lang, dễ va chạm bệnh nhân Tận dụng không gian trên cao, giải phóng 100% mặt sàn
Tính an toàn sinh phẩm Dễ kẹt mẫu, khó khử trùng toàn tuyến Nguy cơ rung lắc mạnh khi gặp gờ giảm tốc Chuyển động êm ái trên ray cố định, cách ly tuyệt đối
Chi phí triển khai Rất cao, khó tái cấu trúc mặt bằng Trung bình, chi phí bảo trì cảm biến sàn cao Tối ưu chi phí phần cứng, dễ dàng mở rộng dạng module
Khả năng linh hoạt Rất thấp (cố định tuyến) Cao (tự định tuyến nhưng phụ thuộc môi trường) Rất cao trên hệ lưới tọa độ $X-Y$

Phân loại yêu cầu người dùng (Mô hình MoSCoW):

  • Must-have: Cơ cấu di chuyển 2 chiều ($X-Y$), cơ cấu nâng hạ $Z$ chuyển trục an toàn; tự động nhận/trả mẫu; thuật toán tránh va chạm đa xe; khả năng mang tải $\ge 8\text{ kg}$.
  • Should-have: Quy hoạch vận tốc hình thang chống sốc; bộ điều khiển PID hồi tiếp Encoder ổn định sai số $< 2%$; giao tiếp mạng Mesh không dây tin cậy.
  • Could-have: Tự động trở về trạm gốc (Home) hiệu chuẩn tọa độ (Calibrate); cảnh báo pin yếu và quản lý trạng thái qua GUI trung tâm.
  • Won't-have (giai đoạn này): Cánh tay gắp tự động 6 bậc tự do; nhận diện sinh phẩm bằng thị giác máy tính AI (Computer Vision).

Thiết kế hệ thống

Ngăn xếp công nghệ (Technology Stack):

  • Phần cứng điều khiển: Vi điều khiển ARM Cortex-M3 STM32F103C8T6 (Xung nhịp $72\text{ MHz}$, $64\text{ KB}$ Flash, $20\text{ KB}$ SRAM).
  • Mạch công suất & Chuyển đổi nguồn: Mạch Buck DC-DC XL4016 (Hiệu suất $96%$, dải điện áp $4-40\text{V}$, dòng tải max $8\text{A}$).
  • Động cơ chấp hành: Động cơ DC Planet có gắn Encoder quang học độ phân giải cao; Động cơ bước NEMA 23 cho cơ cấu nâng hạ vít me.
  • Vật liệu cơ khí: Thép CT45 nhiệt luyện thường hóa ($HB = 230$, $\sigma_b = 600\text{ MPa}$, $\sigma_{ch} = 340\text{ MPa}$); Bánh xe in 3D bằng nhựa kỹ thuật PETG chịu lực, bề rộng tiếp xúc $6{,}5\text{ mm}$ chống trượt; Dây đai răng đồng bộ GT2 (bước đai $2\text{ mm}$, cốt sợi thủy tinh).
  • Phần mềm thiết kế & Mô phỏng: SolidWorks 2022 (Mô hình 3D CAD/FEA), MATLAB/Simulink R2023a (Mô phỏng động học và chỉnh định PID).

Phương pháp nghiên cứu và phát triển

Quy trình phát triển áp dụng mô hình V-Model cải tiến, kết hợp các chu kỳ lặp ngắn kiểu Agile:

  1. Giai đoạn 1 (Tính toán động học & Động lực học): Tính toán lực cản lăn $F_{ms} = 7{,}46\text{ N}$, Momen xoắn yêu cầu trên từng bánh xe $M_{k1} = 1{,}865\text{ Nm}$, chọn công suất động cơ danh định $P_{dc} = 30\text{ W}$, tốc độ định mức $600\text{ RPM}$, tính toán tỉ số truyền đai răng $u_d = 3$ với đường kính bánh đai $d_1 = 12\text{ mm}$, $d_2 = 37\text{ mm}$, khoảng cách trục $a = 380\text{ mm}$, góc ôm bánh đai $\alpha_1 = 176{,}25^\circ \ge 120^\circ$.
  2. Giai đoạn 2 (Thiết kế cơ cấu cơ khí 8 bánh chuyển trục): Thiết kế bộ khung chassis tải trọng kép. Sử dụng cơ cấu vít me kết hợp bộ truyền đai trục Z để nâng hạ 4 bánh trục Y độc lập với 4 bánh trục X, giải quyết triệt để xung đột động học tại các giao lộ ngã tư ray.
  3. Giai đoạn 3 (Thiết kế mạch & Lập trình nhúng): Thiết kế mạch PCB tích hợp vi xử lý STM32, viết firmware điều khiển động cơ bằng kỹ thuật ngắt thời gian thực (Timer Interrupt), xây dựng cấu trúc gói tin Serial UART/Mesh.
  4. Giai đoạn 4 (Xây dựng thuật toán trung tâm): Thiết lập thuật toán phân bổ tác vụ và lập lịch tránh va chạm đa robot trên đồ thị lưới không thời gian (Time-Space Grid Graph).

Implementation và kết quả

Quá trình hiện thực hóa và thuật toán lõi

1. Bộ điều khiển PID hồi tiếp tốc độ động cơ DC Planet

Bộ điều khiển PID vòng kín được cài đặt trực tiếp trên STM32F103C8T6 với chu kỳ lấy mẫu ngắt Timer $T_s = 10\text{ ms}$. Thông số PID được tính toán sơ bộ qua phương pháp Ziegler-Nichols bậc 2 và tinh chỉnh thực nghiệm:

$$u(t) = K_p e(t) + K_i \int_{0}^{t} e(\tau)d\tau + K_d \frac{de(t)}{dt}$$

// Cấu trúc thuật toán điều khiển PID vận tốc động cơ trên STM32
typedef struct {
    float Kp, Ki, Kd;
    float setpoint;
    float feedback;
    float prev_error;
    float integral;
    float out_max, out_min;
} PID_Controller;

float PID_Compute(PID_Controller *pid, float current_val, float dt) {
    float error = pid->setpoint - current_val;
    
    // Khâu tỷ lệ (Proportional)
    float P_out = pid->Kp * error;
    
    // Khâu tích phân (Integral) với giải thuật chống bão hòa Anti-Windup
    pid->integral += error * dt;
    float I_out = pid->Ki * pid->integral;
    
    // Khâu vi phân (Derivative)
    float derivative = (error - pid->prev_error) / dt;
    float D_out = pid->Kd * derivative;
    
    // Tổng tín hiệu ngõ ra PWM
    float output = P_out + I_out + D_out;
    
    // Bão hòa tín hiệu xuất PWM (0 - 100%)
    if (output > pid->out_max) output = pid->out_max;
    else if (output < pid->out_min) output = pid->out_min;
    
    pid->prev_error = error;
    return output;
}

2. Thuật toán điều phối tránh xung đột CBS (Conflict-Based Search)

Thuật toán CBS vận hành ở cấp máy chủ điều khiển trung tâm (Host), chia làm hai tầng tìm kiếm:

  • Tầng cao (High-Level Search): Xây dựng Cây xung đột (Conflict Tree - CT). Mỗi nút đại diện cho một tập các ràng buộc không-thời gian $(a_i, v, t)$ (Robot $a_i$ không được chiếm ô $v$ tại thời điểm $t$).
  • Tầng thấp (Low-Level Search): Sử dụng thuật toán $A^*$ trên lưới thời gian để tìm đường đi ngắn nhất thỏa mãn toàn bộ ràng buộc gán cho từng robot riêng biệt.
Thuật toán: Conflict-Based Search (CBS)
Đầu vào: Bản đồ lưới ray 2D G(V, E), Vị trí bắt đầu S, Điểm đích G của n Robot
Đầu ra: Tập quỹ đạo không xung đột P = {p_1, p_2, ..., p_n}

1. Khởi tạo root.constraints = rỗng
2. Tìm kiếm đường đi p_i cho từng robot bằng A* không ràng buộc
3. root.paths = {p_1, p_2, ..., p_n}, root.cost = Sum(Cost(p_i))
4. Chèn root vào hàng đợi ưu tiên OpenList
5. WHILE OpenList không rỗng DO:
6.    curr_node = OpenList.PopMinCostNode()
7.    conflicts = Validate(curr_node.paths)
8.    IF conflicts == null THEN RETURN curr_node.paths // Đã tìm thấy nghiệm tối ưu
9.    conflict c = conflicts.First() // Xung đột dạng (a1, a2, vị trí v, thời gian t)
10.   FOR each agent a_i in {a1, a2} DO:
11.       child_node = CreateNode()
12.       child_node.constraints = curr_node.constraints + (a_i, v, t)
13.       child_node.paths = UpdatePath(a_i, child_node.constraints)
14.       child_node.cost = Sum(Cost(child_node.paths))
15.       OpenList.Push(child_node)

3. Cấu trúc khung truyền dữ liệu giao tiếp mạng Mesh/UART:

Để đảm bảo an toàn tuyệt đối, dữ liệu điều khiển giữa Host Server và Robot được đóng gói theo khung giao thức truyền tin nhị phân định dạng chuẩn:

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4..7 Byte 8..9 Byte 10
HEADER_1 (0xAA) HEADER_2 (0x55) ROBOT_ID COMMAND_ID DATA_PAYLOAD (Tọa độ X, Y, Vận tốc) CHECKSUM (CRC16) FOOTER (0x0D)

Kiểm nghiệm và Kết quả thực nghiệm

Mô hình thực nghiệm hoàn thiện được tiến hành thử nghiệm tải tĩnh và tải động tại phòng thí nghiệm Bộ môn Cơ điện tử - HCMUTE:

Thông số kiểm tra Giá trị mục tiêu Kết quả đo đạc thực nghiệm Đánh giá / Dung sai
Vận tốc di chuyển tối đa ($V_c$) $700\text{ mm/s}$ ($42\text{ m/phút}$) $685\text{ mm/s}$ Đạt $97{,}8%$ giá trị lý thuyết
Tốc độ vòng quay trục chính $133{,}69\text{ RPM}$ $132\text{ RPM}$ Sai lệch $< 1{,}3%$
Tải trọng nâng chuyển định mức $8\text{ kg}$ (~20 túi máu) $12\text{ kg}$ (Quá tải $150%$) Khung CT45 biến dạng $< 0{,}02\text{ mm}$ (An toàn FEA)
Thời gian đáp ứng vận tốc PID $< 0{,}5\text{ s}$ $0{,}32\text{ s}$ (Không vọt lố) Động cơ đạt điểm đặt $100\text{ RPM}$ mượt mà
Độ trễ truyền nhận Mesh Protocol $< 50\text{ ms}$ $18 - 25\text{ ms}$ Tỷ lệ mất gói (Packet Loss) $= 0%$ trong cự ly $30\text{ m}$
Năng suất phục vụ ước tính $1.000\text{ mẫu/ngày}$ $1.050 - 1.200\text{ mẫu/ngày}$ Vượt $120%$ chỉ tiêu ban đầu

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

  1. Cơ cấu truyền động 8 bánh tích hợp nâng hạ chuyển trục Z: Thay vì sử dụng bánh xe đa hướng Mecanum (dễ trượt, chịu tải kém) hay cơ cấu quay góc bánh phức tạp, đồ án đã sáng tạo cơ cấu 8 bánh độc lập gồm 4 bánh cố định trục X và 4 bánh cố định trục Y. Việc chuyển hướng tại ngã tư giao lộ được thực hiện êm dịu thông qua cụm trục vít me tự hãm đẩy khung bánh trục Y xuống, nhấc hệ bánh trục X khỏi mặt ray chỉ trong $1{,}2\text{ giây}$, loại bỏ hoàn toàn ma sát trượt.
  2. Kiến trúc Logistics trần treo cách ly: Giải phóng toàn bộ diện tích sàn bệnh viện, loại trừ $100%$ rủi ro va chạm với dòng người và phương tiện cấp cứu, tạo một hành lang vận tải vô trùng và khép kín.
  3. Quy hoạch vận tốc mượt (Smooth Motion Profile): Kết hợp thuật toán PID và hàm dốc hình thang giúp gia tốc của robot không bị giật cục ($Jerk \approx 0$), bảo vệ cấu trúc hồng cầu và độ nguyên vẹn của các túi máu, dịch truyền xét nghiệm sinh học.
       So sánh Giải pháp Vận chuyển Mẫu Bệnh phẩm

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

Kịch bản vận hành thực tế tại bệnh viện đa khoa:

  • Bước 1 (Tiếp nhận & Tạo lệnh): Điều dưỡng tại Khoa Khám bệnh đưa mẫu máu vào hộp chứa chuyên dụng tại Trạm trung chuyển (Pick-up Station) và quét mã vạch barcode bệnh nhân.
  • Bước 2 (Điều phối): Máy chủ Host nhận tín hiệu, tính toán robot gần nhất còn trống và áp dụng giải thuật CBS vạch lộ trình di chuyển tối ưu đến trạm lấy mẫu.
  • Bước 3 (Vận chuyển tốc độ cao): Robot nâng hộp mẫu, chuyển bánh sang trục tương ứng và tăng tốc tối đa $685\text{ mm/s}$ trên ray trần xuyên qua các phân khu.
  • Bước 4 (Trả mẫu & Tự hiệu chuẩn): Robot đưa mẫu xuống Khoa Xét nghiệm Huyết học, nhả chốt khóa an toàn, sau đó tự động di chuyển về vị trí Home để Calib cảm biến tọa độ và chờ chu kỳ mới.

Đánh giá hiệu quả kinh tế và ROI (Return on Investment):

  • Chi phí đầu tư phần cứng: Ước tính khoảng $60 - 80\text{ triệu VNĐ/robot}$ (tiết kiệm hơn $75%$ so với nhập khẩu AMR y tế chuyên dụng từ Châu Âu/Mỹ vốn có giá $> 400\text{ triệu VNĐ}$).
  • Thời gian hoàn vốn (Payback Period): Với khả năng giải phóng năng suất tương đương 3-4 nhân viên vận chuyển ca trực, hệ thống giúp một bệnh viện quy mô 500 giường hoàn vốn chỉ trong 12 - 14 tháng.

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

Hạn chế hiện tại:

  • Hệ thống khung ray cần được khảo sát và lắp đặt kiên cố trên trần thạch cao nội viện, đòi hỏi đồng bộ thiết kế cơ điện (MEP) từ giai đoạn hoàn thiện mặt bằng.
  • Mô hình thực nghiệm mới dừng lại ở việc thử nghiệm 02 robot trên lưới ray tĩnh, chưa tích hợp hệ thống sạc tự động không tiếp xúc (Wireless Induction Charging).

Hướng phát triển tiếp theo:

  • Nâng cấp mạng quản lý bằng giao thức ROS2 (Robot Operating System 2) trên máy tính nhúng Raspberry Pi 4 / Jetson Nano kết hợp camera thị giác để quét định danh mã QR trực tiếp trên thân ray.
  • Triển khai giải thuật tìm đường nâng cao như MAPF (Multi-Agent Path Finding) trên nền tảng đám mây (Cloud Server) để quản lý đồng thời phi đội $> 20\text{ robot}$ trên toàn bộ các tầng bệnh viện.

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

  • Sinh viên Cơ điện tử, Tự động hóa: Tài liệu tham khảo toàn diện về tính toán cơ cấu cơ khí chính xác (đai răng, vít me, động học vi sai), thiết kế mạch vi điều khiển STM32 và kỹ thuật chỉnh định tham số PID thực nghiệm.
  • Kỹ sư và Lập trình viên Robot: Nắm vững cấu trúc đóng gói giao thức dữ liệu UART/Mesh công nghiệp và cách hiện thực hóa thuật toán điều phối đa tác tử tránh va chạm CBS.
  • Ban quản lý Bệnh viện & Cơ sở Y tế: Nắm bắt mô hình tự động hóa logistics mẫu xét nghiệm với chi phí hợp lý, nâng cao chỉ số an toàn sinh học và chất lượng phục vụ người bệnh.
  • Nhà nghiên cứu (Researchers): Nền tảng dữ liệu thực nghiệm về động học chuyển trục 8 bánh và mô hình hóa độ tin cậy trong tự động hóa kho/bệnh viện.

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

1. Yêu cầu kỹ thuật hạ tầng để triển khai hệ thống ray trần là gì?

Hệ thống ray yêu cầu trần hành lang có độ cao tối thiểu $2{,}8\text{ m}$, tải trọng treo trần chịu lực $\ge 50\text{ kg/m}$ ray. Vật liệu ray sử dụng nhôm định hình $30\times 30\text{ mm}$ gia cường để đảm bảo độ võng $< 0{,}5\text{ mm}$ khi robot mang đầy tải $12\text{ kg}$.

2. Hệ thống xử lý thế nào khi xảy ra mất điện hoặc mất sóng truyền thông đột ngột?

Động cơ trục Z sử dụng cơ cấu trục vít me có tính chất tự hãm cơ học (Self-locking), do đó robot sẽ giữ nguyên độ cao nâng hạ mà không bị rơi rớt mẫu phẩm. Vi điều khiển STM32 tích hợp cơ chế ngắt an toàn Fail-safe: khi mất tín hiệu Mesh quá $500\text{ ms}$, robot sẽ tự động phanh hãm dừng động cơ và phát cảnh báo còi/đèn nháy.

3. Việc rung lắc trong quá trình di chuyển có làm vỡ hồng cầu túi máu không?

Không. Nhờ áp dụng quy hoạch quỹ đạo vận tốc hình thang (Trapezoidal Velocity Profile) kết hợp bộ giảm chấn dây đai GT2 và lốp bọc PETG, gia tốc khởi động và dừng được kiểm soát nghiêm ngặt ở mức $a \le 0{,}5\text{ m/s}^2$, triệt tiêu chấn động cơ học tác động lên dung dịch sinh phẩm.

4. Chi phí bảo trì hệ thống định kỳ bao gồm những hạng mục nào?

Chủ yếu là kiểm tra độ căng dây đai GT2 (định kỳ 6 tháng/lần), tra dầu bôi trơn trục vít me và kiểm tra độ mòn rãnh bánh xe in 3D PETG. Toàn bộ linh kiện cơ khí đều được chuẩn hóa theo chuẩn công nghiệp dễ dàng thay thế tại chỗ.

5. Thuật toán CBS có đảm bảo không xảy ra hiện tượng "bế tắc" (Deadlock) giữa 2 robot không?

Có. Thuật toán Conflict-Based Search tại máy chủ trung tâm quy hoạch quỹ đạo trên không gian 3 chiều $(X, Y, \text{Thời gian } t)$. Khi phát hiện nguy cơ xung đột tại nút giao, CBS tự động gán ràng buộc chờ (Wait Constraint) cho robot có mức ưu tiên thấp hơn tại ô liền kề trước đó, loại bỏ $100%$ xung đột đối đầu hoặc khóa chết.


Kết luận

Đồ án tốt nghiệp "Nghiên cứu, thiết kế và chế tạo hệ thống vận chuyển sinh phẩm tự động" của nhóm sinh viên ngành Công nghệ Kỹ thuật Cơ điện tử - HCMUTE đã hiện thực hóa thành công một giải pháp kỹ thuật toàn diện từ cơ khí chế tạo, điện tử nhúng cho đến thuật toán điều phối cấp cao. Việc ứng dụng cơ cấu 8 bánh chuyển trục linh hoạt trên hệ ray trần kết hợp thuật toán CBS và bộ điều khiển PID vận tốc vòng kín trên vi điều khiển STM32 đã chứng minh tính khả thi, độ tin cậy và hiệu suất vượt trội so với các phương thức vận chuyển truyền thống. Đề tài mở ra hướng tiếp cận thực tiễn, chi phí tối ưu nhằm hiện đại hóa hạ tầng logistics thông minh tại các cơ sở y tế và bệnh viện tại Việt Nam.