Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh đẩy mạnh công nghiệp hóa và hiện đại hóa, kỹ thuật robot ngày càng được ứng dụng sâu rộng trong nhiều lĩnh vực như công nghiệp, nông nghiệp, quốc phòng và y tế. Đặc biệt, sau các đợt bùng phát của đại dịch COVID-19, yêu cầu hạn chế tiếp xúc trực tiếp giữa nhân viên y tế và bệnh nhân nhằm giảm thiểu rủi ro lây nhiễm chéo trở nên cấp thiết. Đề tài khóa luận "Thiết kế, chế tạo robot tự hành hoạt động phục vụ trong bệnh viện" (Mã đề tài: CDT-12) do sinh viên Huỳnh Tấn Nam và Phạm Minh Tiến thực hiện dưới sự hướng dẫn của T.S Vũ Quang Huy tại Trường Đại học Sư phạm Kỹ thuật TP.HCM (Khoa Cơ khí Chế tạo máy, Bộ môn Cơ điện tử) tập trung vào việc nghiên cứu, chế tạo mô hình xe tự hành AGV (Automated Guided Vehicle) nhằm hỗ trợ vận chuyển nhu yếu phẩm, thuốc men, drap mền gối và quần áo trong môi trường bệnh viện.
Mục tiêu nghiên cứu của đề tài bao gồm 5 nhiệm vụ cụ thể:
- Tìm hiểu và nghiên cứu các tài liệu, kiến thức về robot tự hành AGV.
- Thiết kế mô hình cơ khí của robot.
- Tính toán các thông số kỹ thuật và lựa chọn động cơ phù hợp.
- Nghiên cứu và ứng dụng thuật toán điều khiển PID cho động cơ.
- Ứng dụng các thuật toán định vị và lập bản đồ đồng thời (SLAM) kết hợp điều hướng để robot tự vẽ bản đồ và di chuyển tự động trong môi trường chưa biết trước.
Đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Robot tự hành AGV phục vụ vận chuyển hàng hóa, vật dụng y tế trong khuôn viên bệnh viện.
- Phạm vi nghiên cứu: Robot hoạt động trong điều kiện mặt sàn bằng phẳng trong nhà, với các thông số thiết kế giới hạn: khối lượng bản thân ước tính 20 kg, tải trọng vận chuyển tối đa 10 kg và vận tốc di chuyển tối đa đạt 0,5 m/s.
Cơ sở lý thuyết và phương pháp
Khung lý thuyết của đề tài dựa trên sự kết hợp giữa kỹ thuật cơ điện tử, lý thuyết điều khiển tự động và nền tảng hệ điều hành robot:
- Lý thuyết về xe tự hành AGV: Lịch sử phát triển từ hệ thống AGVS đầu tiên năm 1953 của Barrett Electronics đến công nghệ dẫn đường bằng laser LGV và các phân loại AGV theo chức năng (xe kéo, xe chở, xe đẩy, xe nâng) cũng như theo dạng đường đi (chạy theo đường dẫn cố định bằng dây từ, ray dẫn, vạch kẻ sàn và chạy tự do không đường dẫn - Free path navigation).
- Hệ điều hành Robot (ROS - Robot Operating System): Khung kiến trúc phân tán gồm ROS Master, Roscore, Node, Topic, Package, Launch File; giao thức truyền thông chuỗi
rosserial kết nối vi điều khiển với máy tính chủ.
- Thuật toán SLAM và Navigation: Phương pháp SLAM sử dụng gói
gmapping dựa trên bộ lọc hạt Rao-Blackwellized Particle Filter (RBPF) kết hợp dữ liệu quét laser 2D để xây dựng bản đồ dạng lưới xác suất (Grid-map); khung điều hướng Navigation Stack (gồm AMCL để định vị, Move Base Flex, Global Planner và Local Planner để hoạch định đường đi toàn cục và cục bộ, tránh vật cản).
- Lý thuyết điều khiển PID: Mô hình điều khiển phản hồi vòng kín vận tốc động cơ thông qua ba khâu tỉ lệ ($K_p$), tích phân ($K_i$) và vi phân ($K_d$), kết hợp phương pháp xác định thông số thực nghiệm Ziegler-Nichols.
Phương pháp nghiên cứu thực hiện bao gồm:
- Phương pháp phân tích - tổng hợp tài liệu chuyên ngành về AGV, ROS, cảm biến LiDAR và các thuật toán SLAM.
- Phương pháp tính toán thiết kế kỹ thuật cơ khí trên phần mềm SolidWorks.
- Phương pháp thiết kế hệ thống điều khiển phần cứng và tích hợp mạch điện tử.
- Phương pháp thực nghiệm - kiểm chứng: Chế tạo mô hình vật lý thực tế, cấu hình phần mềm, đo đạc sai số xung encoder, kiểm tra góc quay và đánh giá khả năng vẽ bản đồ cũng như bám quỹ đạo trên giao diện mô phỏng và điều khiển trực quan Rviz.
Thiết kế và triển khai
Hệ thống robot tự hành phục vụ bệnh viện được nhóm tác giả thiết kế và tích hợp đồng bộ giữa kết cấu cơ khí, hệ thống điện - điều khiển và các tầng phần mềm xử lý.
| Hạng mục thiết kế |
Giải pháp lựa chọn |
Đặc tính kỹ thuật và chức năng |
| Cơ cấu chuyển động |
Cơ cấu lái vi sai (Differential Drive) |
Gồm 2 bánh dẫn động độc lập phía sau và 1 bánh xe tự lựa (đa hướng) phía trước; bán kính quay vòng bằng 0, cấu trúc đơn giản, linh hoạt trong không gian hẹp. |
| Bộ truyền động |
Bộ truyền đai răng |
Truyền mô-men xoắn chính xác, hiệu suất cao, không xảy ra hiện tượng trượt, kích thước nhỏ gọn. |
| Động cơ truyền động |
Động cơ DC Servo có hồi tiếp |
Tích hợp đĩa quang Encoder đọc phản hồi xung vận tốc phục vụ vòng lặp điều khiển PID kín. |
| Cảm biến quét môi trường |
LiDAR Slamtec RPLIDAR A1M8 |
Quét laser 2D 360 độ phục vụ thu thập dữ liệu đám mây điểm cho thuật toán SLAM và phát hiện chướng ngại vật. |
| Mạch công suất điều khiển |
Driver động cơ BTS7960 |
Điều khiển công suất cầu H dòng lớn cho 2 động cơ dẫn động độc lập. |
| Bộ điều khiển trung tâm |
Vi điều khiển kết hợp Máy tính nhúng chạy ROS |
Vi điều khiển xử lý tầng thấp (đọc encoder, băm xung PWM điều khiển động cơ qua PID), giao tiếp với máy tính ROS qua gói rosserial để nhận lệnh vận tốc cmd_vel và xuất odom. |
| Nguồn cấp năng lượng |
Ắc quy Long WPI236W (12V - 9Ah) |
Cung cấp nguồn DC độc lập, ổn định cho toàn bộ động cơ và hệ thống mạch điện tử. |
Nội dung chính theo từng chương
Chương 1: Tổng quan
Chương 1 trình bày lý do chọn đề tài xuất phát từ yêu cầu tự động hóa trong logistics bệnh viện nhằm giảm thiểu rủi ro phơi nhiễm dịch bệnh. Tác giả khảo sát tình hình phát triển robot AGV trong nước (nhà máy Vinamilk, robot Followbot của sinh viên ĐH Sư phạm Kỹ thuật TP.HCM với kích thước 506 x 466 x 680 mm, nặng 18,5 kg, tải trọng 15 kg, tốc độ 0,7 m/s) và quốc tế (robot kho hàng Kiva của Amazon Robotics nặng 150 kg mang tải 320 kg tốc độ 1 m/s; robot giao hàng đô thị Starship). Từ đó, chương xác định rõ mục tiêu chế tạo mô hình AGV chở hàng nhẹ trong nhà với tải trọng 10 kg, tốc độ tối đa 0,5 m/s, cùng phương pháp luận nghiên cứu từ mô phỏng SolidWorks đến chế tạo thực nghiệm.
Chương 2: Cơ sở lý thuyết
Chương này hệ thống hóa các kiến thức nền tảng:
- Lịch sử AGV từ mẫu xe kéo năm 1953 của Barrett Electronics đến hệ thống xe tự hành định vị laser hiện đại (LGV).
- Cấu trúc hệ điều hành robot ROS phát triển từ dự án STAIR của Stanford (2007), qua giai đoạn Willow Garage (2008-2010), bàn giao cho OSRF (2013) với chuỗi các phiên bản từ ROS Electric đến ROS Noetic; giải thích cơ chế giao tiếp Publish/Subscribe giữa các Node qua Topic và ROS Master.
- Bản chất toán học của thuật toán SLAM và gói phần mềm Gmapping dựa trên thuật toán lọc hạt Rao-Blackwellized Particle Filter (RBPF) xử lý dữ liệu cảm biến laser thành lưới bản đồ Occupancy Grid Map.
- Ngũ phân hệ cốt lõi của ROS Navigation Stack: Định vị (Localization), Lập bản đồ (Mapping), Hoạch định đường đi (Path Planning), Điều khiển chuyển động (Motion Control) và Tránh vật cản (Obstacle Avoidance).
- Lý thuyết điều khiển PID, bảng tác động của từng thông số $K_p, K_i, K_d$ đến thời gian xác lập, độ vọt lố và sai số xác lập, cùng quy tắc tính toán tham số theo phương pháp Ziegler-Nichols:
| Dạng điều khiển |
$K_p$ |
$K_i$ |
$K_d$ |
| P |
$0,5 K_u$ |
$\infty$ |
$0$ |
| PI |
$0,45 K_u$ |
$1,2 K_p / P_u$ |
$0$ |
| PID |
$0,6 K_u$ |
$2 K_p / P_u$ |
$K_p P_u / 8$ |
- Khái niệm cầu nối truyền thông
rosserial giữa vi điều khiển (rosserial-client qua UART) và máy tính ROS (rosserial-server).
Chương 3: Thiết kế hệ thống cơ khí
Chương 3 so sánh các phương án cơ cấu chuyển động gồm cơ cấu vi sai (differential drive), cơ cấu xe 3 bánh (tricycle) và cơ cấu lái đồng bộ (synchronous/swerve drive). Phân tích chỉ ra cơ cấu vi sai có ưu thế tuyệt đối về bán kính quay bằng không và độ phức tạp cơ khí thấp, rất thích hợp với địa hình bằng phẳng. Đồ án tiến hành so sánh 4 bộ truyền động (bộ truyền đai trơn, đai răng, xích và bánh răng), từ đó quyết định chọn bộ truyền đai răng nhờ ưu điểm nhỏ gọn, không trượt và hiệu suất cao. Đồng thời, chương phân tích việc lựa chọn động cơ DC servo có hồi tiếp encoder thay cho động cơ bước để đảm bảo bám sát vận tốc đặt và chịu tải tốt.
Chương 4: Thiết kế hệ thống
Nội dung chương tập trung vào:
- Thiết lập hệ trục tọa độ và mô hình động học vi sai của robot tự hành.
- Tính toán công suất động cơ dẫn động dựa trên tổng khối lượng (khối lượng xe 20 kg + tải trọng 10 kg), hệ số ma sát lăn và gia tốc yêu cầu.
- Lựa chọn bánh xe chủ động đường kính 100 mm, bánh xe đa hướng dẫn hướng, gối đỡ trục, thiết kế kết cấu đế xe và khung xe nhiều tầng trên phần mềm SolidWorks trước khi xuất bản vẽ gia công cơ khí chi tiết.
Chương 5: Thiết kế hệ thống điều khiển
Chương 5 xây dựng sơ đồ khối kết nối phần cứng hoàn chỉnh:
- Tầng điện áp: Ắc quy Long 12V - 9Ah cấp nguồn cho khối động lực qua Driver BTS7960 và khối vi xử lý qua mạch hạ áp.
- Tầng cảm biến: Cảm biến LiDAR Slamtec A1M8 kết nối cổng truyền thông để quét mặt phẳng 2D xung quanh xe.
- Tầng điều khiển chấp hành: Cấu hình thuật toán điều khiển PID trên vi điều khiển nhằm giữ ổn định đáp ứng vận tốc cho từng bánh xe dựa trên tín hiệu phản hồi từ kênh xung encoder.
- Thực nghiệm trích xuất và hiển thị dữ liệu quét laser thu được từ LiDAR trên môi trường ROS.
Chương 6: Thuật toán SLAM và Navigation
Chương 6 phân tích quy trình vận hành của thuật toán SLAM và Navigation Stack trong ROS:
- Quy trình SLAM: Thu thập dữ liệu quét LiDAR và dữ liệu Odometry từ encoder, truyền vào gói
gmapping để xử lý lọc hạt RBPF, liên tục cập nhật và lưu trữ bản đồ 2D dạng file ảnh kèm thông số tọa độ thực.
- Kiến trúc điều hướng với
Move Base Flex: Khởi tạo bản đồ chi phí toàn cục (Global Costmap) và cục bộ (Local Costmap). Global Planner chịu trách nhiệm tìm đường đi ngắn nhất từ vị trí hiện tại đến đích; Local Planner tính toán vận tốc tức thời ($v, \omega$) để điều khiển robot bám theo quỹ đạo và linh hoạt né tránh các chướng ngại vật xuất hiện đột xuất.
Chương 7: Thực nghiệm và đánh giá
Chương này công bố các kết quả kiểm thử trên mô hình vật lý:
- Các bước thực tế khi quét và tạo lập bản đồ không gian phòng làm việc thông qua công cụ Rviz.
- Thực nghiệm điều hướng tự hành: Đặt mục tiêu đích (Goal) trên giao diện Rviz, quan sát robot tự tính toán quỹ đạo và di chuyển chính xác tới vị trí chỉ định.
- Thực nghiệm kiểm tra đáp ứng góc quay và đo đạc độ chính xác của bộ mã hóa vòng quay (encoder) so với chuyển động góc thực tế của robot, phân tích bảng số liệu thực nghiệm góc quay để hiệu chỉnh thông số động học.
Chương 8: Tổng kết và hướng phát triển
Đánh giá tổng kết các mục tiêu đã hoàn thành về mặt kết cấu cơ khí, khả năng điều khiển băm xung PID, vẽ bản đồ bằng SLAM và điều hướng điểm chỉ định; chỉ rõ các điểm hạn chế tồn đọng trong quá trình thực nghiệm và đề xuất các giải pháp nâng cấp trong tương lai.
Kết quả và đóng góp
Đồ án đã chế tạo thành công mô hình robot tự hành AGV hoàn chỉnh phục vụ y tế với các kết quả cụ thể:
- Về phần cứng: Hoàn thiện khung vỏ cơ khí sử dụng cơ cấu dẫn động vi sai 2 bánh chủ động (đường kính bánh 100 mm) kết hợp bánh tự lựa, truyền động qua bộ truyền đai răng; tích hợp đầy đủ hệ thống cấp nguồn ắc quy Long 12V - 9Ah, mạch công suất BTS7960, cảm biến quét laser LiDAR Slamtec A1M8 và vi điều khiển.
- Về phần mềm và thuật toán: Thiết lập thành công vòng điều khiển vận tốc PID kín cho động cơ DC servo qua tín hiệu encoder; thiết lập cầu nối truyền thông
rosserial giữa phần cứng vi điều khiển và ROS Master; ứng dụng thành công gói gmapping để quét và trích xuất bản đồ môi trường 2D thời gian thực; tích hợp Navigation Stack và Move Base Flex cho phép robot tự hành nhận tọa độ mục tiêu trên Rviz, tự tính toán đường đi toàn cục, cục bộ và tránh vật cản.
- Đóng góp của đồ án: Xây dựng quy trình kỹ thuật hoàn chỉnh từ tính toán động học, thiết kế 3D, gia công cơ khí đến tích hợp phần mềm mã nguồn mở ROS cho một mẫu AGV vận chuyển tải trọng nhỏ (tối đa 10 kg) với chi phí chế tạo hợp lý, làm chủ công nghệ điều hướng không cần đường dẫn cố định trong nhà.
Hạn chế và hướng nghiên cứu tiếp
Các hạn chế được nhóm tác giả ghi nhận từ thực nghiệm:
- Khả năng điều khiển chạy thẳng tuyệt đối của cơ cấu vi sai gặp khó khăn do sự sai lệch cơ khí và đặc tính hai động cơ độc lập; quán tính khi đổi hướng còn tồn tại sai số nhỏ.
- Dữ liệu định vị odometry thuần từ encoder bánh xe dễ bị tích lũy sai số trượt theo thời gian khi di chuyển quãng đường dài.
- Robot mới chỉ được thử nghiệm trong điều kiện mặt sàn bằng phẳng lý tưởng và môi trường tĩnh hoặc ít chướng ngại vật động.
Hướng phát triển tiếp theo của đề tài:
- Tích hợp thêm cảm biến đo lường quán tính (IMU) và thuật toán lọc Kalman mở rộng (EKF) để dung hợp dữ liệu cảm biến (Sensor Fusion) giữa IMU và Encoder, nâng cao độ chính xác định vị Odometry.
- Cải tiến thuật toán bám quỹ đạo và tối ưu hóa bộ tham số PID/Navigation stack để chuyển động êm ái hơn ở vận tốc cao.
- Thiết kế hoàn thiện vỏ bọc công nghiệp cách ly, khử khuẩn chuyên dụng, bổ sung khay chứa đồ y tế có khóa tự động để ứng dụng thực tế trong bệnh viện.
Giá trị tham khảo
Bản khóa luận là tài liệu tham khảo chuyên ngành hữu ích cho:
- Sinh viên các ngành Kỹ thuật Cơ Điện tử, Kỹ thuật Robot, Tự động hóa và Kỹ thuật Điều khiển đang thực hiện đồ án tốt nghiệp hoặc các dự án nghiên cứu về xe tự hành AMR/AGV.
- Người nghiên cứu bước đầu tiếp cận việc xây dựng robot di động chạy trên hệ điều hành ROS (Robot Operating System), lập trình giao tiếp
rosserial giữa Arduino/STM32 và Linux/ROS, cấu hình các gói SLAM (gmapping) và navigation stack.
- Phần đáng tham khảo nhất của đồ án là quy trình tính toán lựa chọn cơ cấu lái vi sai, phương pháp thiết lập điều khiển vận tốc PID kết hợp đọc xung encoder, cùng các bước cấu hình trực tiếp bản đồ chi phí và điều hướng trên Rviz.
Câu hỏi thường gặp
1. Khóa luận lựa chọn cơ cấu dẫn động nào cho robot AGV và vì sao?
Tác giả lựa chọn cơ cấu dẫn động vi sai (Differential Drive) gồm 2 bánh dẫn động độc lập phía sau và 1 bánh xe tự lựa phía trước. Lựa chọn này xuất phát từ ưu điểm kết cấu cơ khí đơn giản, không cần cơ cấu bẻ lái phức tạp, giá thành chế tạo thấp và đặc biệt có bán kính quay vòng bằng 0, giúp robot xoay chuyển linh hoạt trong hành lang hẹp của bệnh viện.
2. Robot sử dụng thuật toán nào để vẽ bản đồ và điều hướng tự động?
Robot sử dụng thuật toán SLAM thông qua gói package gmapping dựa trên bộ lọc hạt Rao-Blackwellized Particle Filter (RBPF) kết hợp dữ liệu quét từ cảm biến LiDAR Slamtec A1M8 để dựng bản đồ dạng lưới 2D (Grid-map). Việc điều hướng được thực hiện bởi ROS Navigation Stack và Move Base Flex (kết hợp Global Planner hoạch định lộ trình dài và Local Planner tránh vật cản tức thời).
3. Tải trọng, tốc độ thiết kế và thông số phần cứng cốt lõi của robot là bao nhiêu?
Theo phạm vi thiết kế: Robot có khối lượng ước tính 20 kg, khả năng vận chuyển tải trọng tối đa 10 kg, vận tốc di chuyển tối đa 0,5 m/s. Phần cứng gồm: Ắc quy Long WPI236W 12V-9Ah, Driver động cơ BTS7960, cảm biến LiDAR Slamtec RPLIDAR A1M8, bánh xe chủ động đường kính 100 mm truyền động qua đai răng và động cơ DC servo có tích hợp encoder.
4. Giao thức nào được sử dụng để kết nối vi điều khiển với hệ thống ROS trên máy tính?
Hệ thống sử dụng gói thư viện rosserial (gồm rosserial_client phía vi điều khiển và rosserial_server phía máy tính ROS). Rosserial đóng vai trò chuyển đổi các thông điệp (ROS Messages/Topics) sang dạng dữ liệu chuỗi UART nối tiếp, giúp máy tính nhúng và vi điều khiển trao đổi lệnh điều khiển vận tốc và dữ liệu cảm biến hai chiều liên tục.
Kết luận
Đồ án tốt nghiệp "Thiết kế, chế tạo robot tự hành hoạt động phục vụ trong bệnh viện" của nhóm sinh viên Trường Đại học Sư phạm Kỹ thuật TP.HCM đã giải quyết trọn vẹn bài toán thiết kế cơ điện tử cho một mẫu AGV y tế kích thước nhỏ gọn. Nhóm tác giả đã hoàn thiện từ mô hình 3D, gia công cơ khí dẫn động vi sai đến lập trình điều khiển PID và tích hợp hệ điều hành robot ROS. Kết quả thực nghiệm khẳng định robot có khả năng lập bản đồ môi trường bằng LiDAR (SLAM Gmapping) và tự động di chuyển chính xác đến các vị trí chỉ định trên giao diện Rviz. Đây là nền tảng kỹ thuật vững chắc để tiếp tục nghiên cứu dung hợp cảm biến IMU và đưa robot vào ứng dụng thực tiễn trong môi trường y tế.