Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh khoa học kỹ thuật và tự động hóa phát triển mạnh mẽ, robot di động (Mobile Robot) ngày càng khẳng định vai trò thiết yếu trong nhiều lĩnh vực như sản xuất công nghiệp, vận chuyển kho bãi, dịch vụ y tế, an ninh và thám hiểm môi trường nguy hiểm. Việc triển khai các hệ thống robot tự hành có khả năng tự định vị, vẽ bản đồ và điều hướng độc lập giúp giảm thiểu chi phí nhân công, nâng cao năng suất và hạn chế rủi ro cho con người tại các khu vực làm việc độc hại hoặc các nhiệm vụ cứu hộ khẩn cấp. Nhằm giải quyết các yêu cầu kỹ thuật về thiết kế cơ khí, tích hợp hệ thống nhúng và thuật toán định vị trong nước, đề tài "Nghiên cứu, thiết kế và chế tạo Mobile Robot tự hành ứng dụng thuật toán SLAM" đã được nhóm tác giả thực hiện tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh.
Mục tiêu chung của đề tài là nghiên cứu, thiết kế, chế tạo hoàn chỉnh mô hình phần cứng robot di động và lập trình hệ thống điều khiển tự hành ứng dụng thuật toán SLAM (Simultaneous Localization and Mapping), cho phép robot tự động vẽ bản đồ môi trường, nhận biết và né tránh vật cản, đồng thời quy hoạch quỹ đạo di chuyển đến vị trí xác định.
Các nhiệm vụ và mục tiêu nghiên cứu cụ thể được xác định bao gồm:
- Thiết kế mô hình mobile robot về kết cấu cơ khí và khung vỏ.
- Tính toán và lựa chọn các cơ cấu truyền động, linh kiện cơ điện tử phù hợp để robot chuyển động ổn định.
- Thiết kế, lắp đặt hệ thống điện và mạch điều khiển cho toàn bộ robot.
- Xây dựng bộ điều khiển động cơ và thuật toán ổn định vận tốc.
- Nghiên cứu thuật toán di chuyển cho robot bao gồm nhận diện chướng ngại vật và tìm đường di chuyển đến các vị trí định trước thông qua cảm biến LiDAR kết hợp hệ điều hành Robot Operating System (ROS).
- Xây dựng lại bản đồ không gian 2D nơi robot hoạt động, thực hiện định vị vị trí robot trên bản đồ đã thiết lập.
Đối tượng nghiên cứu của đồ án là hệ thống Mobile Robot tự hành 4 bánh với cơ cấu dẫn động bánh sau kết hợp cơ cấu lái đa liên kết (Ackerman-like multi-link mechanism) ở hai bánh trước. Phạm vi nghiên cứu tập trung vào không gian mặt sàn phẳng trong nhà hoặc môi trường có bề mặt tương đối đồng nhất, với giới hạn tải trọng thiết kế mô hình là 5 kg và kích thước tổng thể đạt 440 x 220 (mm).
Cơ sở lý thuyết và phương pháp
Khung lý thuyết và mô hình tính toán
Nghiên cứu dựa trên các nền tảng lý thuyết cốt lõi về kỹ thuật cơ điện tử và robot học:
- Lý thuyết động học và cơ cấu lái: Khảo sát các nguyên lý lái trượt (vi sai cơ khí, vi sai điện), cơ cấu lái Ackerman kinh điển, cơ cấu Anti-Ackerman và cơ cấu lái biến thể Ackerman sử dụng hệ đa liên kết (multi-link). Mô hình hình học đa liên kết được xây dựng nhằm tối ưu hóa góc quay bánh dẫn hướng, giảm thiểu ma sát trượt ngang và duy trì tâm quay tức thời chung cho các bánh xe.
- Mô hình động học Mobile Robot: Thiết lập hệ phương trình chuyển động biểu diễn mối quan hệ giữa vận tốc dài, vận tốc góc, góc bẻ lái của servo và tốc độ quay của hai bánh xe dẫn động.
- Lý thuyết điều khiển tự động: Áp dụng giải thuật điều khiển tỉ lệ - tích phân - vi phân (PID) kết hợp kỹ thuật chống bão hòa khâu tích phân (Anti-windup) nhằm ổn định vận tốc động cơ DC dưới các chế độ tải khác nhau.
- Định vị và lập bản đồ đồng thời (SLAM): Sử dụng các mô hình xác suất kết hợp dữ liệu quét laser 2D để xây dựng lưới bản đồ chiếm chỗ (occupancy grid map) trong không gian hoạt động.
- Thuật toán quy hoạch đường đi (Path Planning): Khảo sát nguyên lý tìm đường tối ưu trên đồ thị bằng thuật toán $A^$ và thuật toán Hybrid $A^$ có xét đến các ràng buộc phi vi phân (non-holonomic constraints) của hệ thống lái Ackerman.
- Thuật toán ước lượng góc quán tính: Ứng dụng giải thuật Gradient Descent để xử lý dữ liệu từ cảm biến đo quán tính (IMU) 6 trục, khử nhiễu và trôi dạt để tính toán giá trị hướng dạng quaternion ($q_0, q_1, q_2, q_3$).
Phương pháp nghiên cứu thực tế
- Phương pháp tính toán và thiết kế kỹ thuật: Tính toán động lực học kéo, mô-men cản quay vòng tại chỗ, công suất động cơ dẫn động và mô-men xoắn yêu cầu của động cơ servo dẫn hướng. Sử dụng phần mềm CAD để thiết kế chi tiết kết cấu khung gầm, vỏ bảo vệ và phân tích độ bền ứng suất Von-Mises của tấm đế dưới tác dụng của tải trọng.
- Phương pháp phát triển hệ thống nhúng phân tầng: Phân chia xử lý thành hai tầng:
- Tầng điều khiển cấp thấp (Low-level control): Sử dụng vi điều khiển 32-bit xử lý đọc tín hiệu xung encoder x4, thuật toán PID động cơ, đọc dữ liệu IMU và xuất tín hiệu điều khiển PWM, hướng quay.
- Tầng xử lý cấp cao (High-level control): Sử dụng máy tính nhúng chạy hệ điều hành Linux/Ubuntu tích hợp nền tảng ROS để giao tiếp dữ liệu cảm biến LiDAR, xử lý thuật toán SLAM, xây dựng quan hệ tọa độ (TF tree) và lập kế hoạch di chuyển.
- Phương pháp thực nghiệm và đánh giá: Chế tạo mô hình thực tế, hiệu chỉnh thông số PID thực nghiệm trên đồ thị đáp ứng vận tốc, đo đạc sai số quét của cảm biến LiDAR và kiểm thử khả năng tạo bản đồ cũng như bám quỹ đạo thực tế.
Nguồn dữ liệu
Dữ liệu sử dụng trong quá trình thực thi hệ thống bao gồm:
- Dữ liệu phản hồi tốc độ góc từ 2 bộ encoder gắn trên trục động cơ dẫn động DC (độ phân giải 11 xung/kênh $\times$ tỉ số truyền 30 = 330 xung/vòng).
- Dữ liệu cự ly và góc quét 360 độ từ cảm biến RPLIDAR A1 thông qua cổng UART.
- Dữ liệu gia tốc 3 trục và vận tốc góc 3 trục từ cảm biến MPU-6050 kết nối qua bus I2C.
Thiết kế và triển khai
Hệ thống Mobile Robot được triển khai qua sự tích hợp đồng bộ giữa ba phân hệ: cơ khí, điện tử điều khiển và phần mềm thuật toán.
+-------------------------------------------------------------------------+
| KIẾN TRÚC HỆ THỐNG |
+-------------------------------------------------------------------------+
| [TẦNG CẤP CAO - ROS / Ubuntu] |
| - Máy tính nhúng: Single Board Computer Raspberry Pi 3 Model B |
| - Cảm biến môi trường: RPLIDAR A1 (Quét laser 360°, tầm xa 12m) |
| - Xử lý thuật toán: SLAM 2D, Path Planning (A* / Hybrid A*), RViz |
+------------------------------------+------------------------------------+
| Giao tiếp UART / Serial
+------------------------------------+------------------------------------+
| [TẦNG CẤP THẤP - Nhúng STM32] |
| - Vi điều khiển: STM32F103C8T6 (ARM Cortex-M3, 72 MHz) |
| - Cảm biến quán tính: MPU-6050 (Thuật toán Gradient Descent IMU) |
| - Điều khiển động cơ: Thuật toán PID vận tốc (Encoder x4, Anti-windup)|
| - Mạch công suất: BTS7960 (43A) / L298N |
| - Cơ cấu chấp hành: 2 Động cơ DC JGB37-520 & 1 Servo lái ASME-SQB |
| - Nguồn cấp: Pin Li-ion 3S tích hợp mạch bảo vệ BMS 100A |
+-------------------------------------------------------------------------+
Thiết kế cơ khí và tính toán động lực học
Khung xe được thiết kế dạng 4 bánh với 2 bánh sau dẫn động độc lập và 2 bánh trước dẫn hướng qua cơ cấu đa liên kết. Thông số kích thước khung gầm gồm chiều rộng $w = 225\text{ mm}$, chiều dài cơ sở $l = 370\text{ mm}$, và khoảng cách liên kết $a_2 = 166,5\text{ mm}$.
| Đại lượng thiết kế |
Ký hiệu / Công thức |
Giá trị tính toán |
| Khối lượng toàn tải |
$m$ |
$5\text{ kg}$ |
| Vận tốc cực đại |
$V_{\max}$ |
$1,2\text{ m/s}$ |
| Bán kính bánh xe |
$r$ |
$0,04\text{ m}$ (Đường kính $80\text{ mm}$) |
| Gia tốc chuyển động |
$a = (V_{\max} - 0) / 2$ |
$0,6\text{ m/s}^2$ |
| Phản lực trên mỗi bánh xe |
$N = (m \cdot g) / 4$ |
$12,25\text{ N}$ |
| Lực ma sát nghỉ |
$F_{msn} = N \cdot \mu_n$ |
$7,35\text{ N}$ |
| Lực đẩy cần thiết khi tăng tốc |
$F_{đc} = F_{msn} + (m \cdot a) / 4$ |
$8,1\text{ N}$ |
| Mô-men xoắn yêu cầu động cơ |
$T = F_{đc} \cdot r$ |
$0,324\text{ Nm}$ |
| Công suất yêu cầu động cơ |
$P = (T \cdot V_{\max}) / r$ |
$9,72\text{ W}$ |
| Tốc độ quay của bánh xe |
$n = (60 \cdot V_{\max}) / (2 \cdot \pi \cdot r)$ |
$287\text{ vòng/phút}$ |
| Mô-men cản quay vòng tại servo |
$M_c$ (tính theo đòn kéo và ma sát) |
$5,76183\text{ Nm}$ |
Dựa trên kết quả tính toán, nhóm lựa chọn:
- Động cơ dẫn động: 02 động cơ DC encoder JGB37-520 (12VDC, công suất định mức 9W, cực đại 17W, mô-men định mức 3,5 kg.cm, cực đại 5 kg.cm, tốc độ có tải 250 RPM).
- Động cơ servo bẻ lái: 01 Servo ASME-SQB (mô-men khởi động 180 kg.cm ở 24V, khi cấp nguồn 12V đạt mô-men khởi động 90 kg.cm và mô-men giữ 60 kg.cm, hoàn toàn đáp ứng mức $M_c = 5,76\text{ Nm}$).
Thiết kế hệ thống điện và phần cứng nhúng
Hệ thống điện được cấp nguồn từ khối pin Lithium-ion 3S kết hợp mạch quản lý và bảo vệ sạc xả BMS 100A.
- Vi điều khiển STM32F103C8T6: Hoạt động tại điện áp 3.3V, xung nhịp 72 MHz, đảm nhiệm việc lấy mẫu encoder 2 kênh ở chế độ x4, chạy giải thuật PID vận tốc động cơ và đọc dữ liệu MPU-6050 qua I2C.
- Mạch công suất điều khiển động cơ: Sử dụng mạch cầu H công suất cao BTS7960 (dòng tải cực đại 43A, MOSFET nội trở thấp, tích hợp bảo vệ quá nhiệt và quá dòng) thay thế cho mạch cầu H L298N (vốn chỉ hỗ trợ 2A/kênh).
- Bộ xử lý trung tâm: Máy tính nhúng Raspberry Pi 3 Model B (vi xử lý Broadcom BCM2835 SoC, chạy hệ điều hành Ubuntu/ROS Noetic).
- Cảm biến RPLIDAR A1: Sử dụng nguồn 5VDC, giao tiếp UART, khoảng cách đo 12m, góc quét $360^\circ$, tần số quét 10Hz với tốc độ lấy mẫu 8000 điểm/giây.
Nội dung chính theo từng chương
Chương 1. Giới thiệu đề tài
Chương 1 thiết lập các căn cứ khoa học và thực tiễn của đề tài. Tác giả trình bày bức tranh tổng quát về sự chuyển dịch tự động hóa trong các ngành công nghiệp và cứu hộ, khẳng định tính tất yếu của việc tự chủ nghiên cứu và chế tạo robot di động. Nội dung chương công bố đầy đủ lý do chọn đề tài, mục tiêu tổng quát, 6 mục tiêu kỹ thuật cụ thể, phương pháp tiếp cận từ lý thuyết đến chế tạo thực nghiệm, các sản phẩm dự kiến (tài liệu báo cáo, bản vẽ máy, poster, video, mô hình robot vật lý), và cấu trúc tổng thể gồm 6 chương của khóa luận.
Chương 2. Tổng quan
Chương 2 tổng hợp lịch sử phát triển của mobile robot từ trước năm 1960 đến nay, điểm qua các mốc phát triển nổi bật (như robot Shakey thập niên 1970, thương mại hóa robot hút bụi thập niên 1990 và bùng nổ AI thập niên 2000). Tác giả phân tích các dự án tiêu biểu tại Việt Nam (mobile robot của STI Việt Nam) và thế giới (TerraSentia của UIUC, Mamut của Cambridge Consultants, TurtleBot của Willow Garage).
Chương này cũng phân tích chuyên sâu các cơ cấu chuyển động và hệ thống lái:
- Đánh giá cơ cấu vi sai cơ khí và vi sai điện (khả năng quay tại chỗ nhưng đòi hỏi điều khiển phức tạp và dễ trượt).
- Phân tích cơ chế hình học của cơ cấu lái Ackerman (đảm bảo các bánh xe quay quanh một tâm tức thời chung để giảm ma sát trượt).
- Phân tích cơ cấu Anti-Ackerman (tối ưu độ bám bánh ngoài ở tốc độ cao trên xe đua).
- Phân tích cơ cấu lái biến thể Ackerman sử dụng hệ đa liên kết (Ackerman-like Multi-link Mechanism) nhằm linh hoạt điều chỉnh góc lái.
- Giới thiệu chi tiết thông số kỹ thuật các linh kiện phần cứng: Máy tính nhúng Raspberry Pi 3 Model B, vi điều khiển STM32F103C8T6, cảm biến RPLIDAR A1, cảm biến quán tính IMU MPU-6050, và hai mạch điều khiển động cơ L298N, BTS7960.
Chương 3. Thiết kế phần cứng hệ thống
Chương 3 trình bày chi tiết quy trình thiết kế cơ khí và hệ thống điện:
- So sánh các cơ cấu di chuyển (bánh xe, chân, bánh xích, cơ cấu kết hợp), đưa ra quyết định lựa chọn hệ thống 4 bánh (2 bánh chủ động phía sau và 2 bánh dẫn hướng phía trước).
- Tính toán chi tiết lực cản lăn, lực ma sát nghỉ, lực đẩy khi tăng tốc ($8,1\text{ N}$), công suất định mức ($9,72\text{ W}$) và tốc độ quay ($287\text{ RPM}$) để chọn động cơ DC JGB37-520.
- Tính toán mô-men cản quay vòng tại chỗ của hệ thống lái ($M_c = 5,76183\text{ Nm}$) với hệ số an toàn bằng 8 để lựa chọn servo ASME-SQB.
- Phân tích hình học cơ cấu lái đa liên kết multi-link với kích thước $w = 225\text{ mm}$, $l = 370\text{ mm}$, $a_2 = 166,5\text{ mm}$.
- Trình bày bản vẽ thiết kế tấm đế, vỏ robot, phân tích ứng suất Von-Mises của kết cấu khung gầm khi tiến và lùi, khảo sát sự chuyển vị của các chi tiết.
- Thiết kế sơ đồ mạch điện nguyên lý, bố trí nguồn cấp Pin Li-ion 3S với mạch bảo vệ BMS 100A.
Chương 4. Động học và điều khiển
Chương 4 tập trung xây dựng cơ sở toán học và thuật toán điều khiển cấp thấp:
- Xây dựng mô hình hóa động học của cơ cấu Ackerman và mô hình chuyển động của toàn bộ mobile robot.
- Khảo sát mô phỏng quỹ đạo và sự biến thiên của vận tốc, góc quay, góc bẻ lái ở các dải tốc độ $v = 100\text{ rpm}$ và $v = 200\text{ rpm}$.
- Phân tích nguyên lý đọc xung encoder x4 để nâng cao độ phân giải góc quay.
- Thiết kế bộ điều khiển vận tốc PID cho động cơ, bổ sung sơ đồ khối Anti-windup chống bão hòa khâu tích phân, khảo sát đáp ứng xung cực đại (PWM 100%) và xác định bộ thông số PID cho hai động cơ dẫn động.
- Trình bày kiến trúc giao tiếp phần cứng giữa STM32 và máy tính nhúng theo hai chế độ hoạt động: thủ công (MANUAL mode) và tự động (AUTO mode).
- Trình bày giải thuật Gradient Descent xử lý dữ liệu từ cảm biến IMU MPU-6050 để ước lượng quaternion và tích hợp thông số Roll, Pitch, Yaw vào mô hình động học robot.
Chương 5. Xây dựng phần mềm trên ROS
Chương 5 trình bày việc triển khai phần mềm cấp cao trên hệ điều hành ROS Noetic:
- Khái quát cấu trúc ROS, cách thức tổ chức các gói (package), cây thư mục Catkin workspace (
src, build, devel), và cơ chế giao tiếp node - topic.
- Thiết lập hệ thống biến đổi tọa độ hình học (TF tree) xác định mối quan hệ giữa các hệ quy chiếu
base_link, laser và odom.
- Xây dựng node thu thập và xử lý chuỗi dữ liệu quét từ RPLIDAR A1, hiển thị trực quan dữ liệu đám mây điểm trên công cụ RViz.
- Xây dựng hệ thống lập bản đồ 2D thời gian thực dựa trên thuật toán SLAM.
- Triển khai thuật toán quy hoạch đường đi $A^$ và Hybrid $A^$, xây dựng lưu đồ giải thuật tìm kiếm không gian trạng thái liên tục kết hợp ràng buộc góc lái cơ cấu Ackerman.
Chương 6. Kết quả và kết luận
Chương 6 tổng kết toàn bộ các kết quả đạt được của đề tài:
- Trưng bày hình ảnh mô hình robot hoàn thiện sau khi gia công, lắp ráp và đi dây điện.
- Đánh giá đồ thị kiểm tra đáp ứng thực tế của động cơ bám sát tốc độ đặt dưới tác động của bộ thông số PID.
- Trình bày kết quả bản đồ 2D thu được từ thuật toán SLAM trên RViz sau khi robot di chuyển trong môi trường thực tế.
- Đánh giá khả năng hoạch định quỹ đạo và tự hành né tránh vật cản của robot ngoài thực tế.
- Đề xuất các hướng phát triển kỹ thuật trong tương lai.
Kết quả và đóng góp
Kết quả chính
- Chế tạo phần cứng hoàn chỉnh: Hoàn thiện mô hình Mobile Robot 4 bánh với kích thước thực tế phù hợp tính toán ($440 \times 220\text{ mm}$), khối lượng ~5 kg, kết cấu khung gầm chịu lực tốt.
- Hệ thống điều khiển cấp thấp ổn định: Thiết lập thành công mạch điều khiển nhúng STM32F103C8T6 giao tiếp qua UART với mạch BTS7960, thuật toán PID có Anti-windup triệt tiêu hiện tượng vọt lố và giữ ổn định vận tốc 2 động cơ dẫn động; thuật toán Gradient Descent trích xuất chính xác góc hướng từ IMU MPU-6050.
- Hệ thống tự hành cấp cao trên ROS: Cài đặt hoàn chỉnh không gian làm việc Catkin trên Raspberry Pi 3B chạy ROS Noetic, thiết lập TF tree chính xác giữa
base_link và laser. Cảm biến RPLIDAR A1 quét 360 độ ở tần số 10Hz cung cấp dữ liệu ổn định để thuật toán SLAM tái tạo bản đồ 2D rõ nét, không bị méo mó khi robot di chuyển.
- Khả năng tự hành và quy hoạch đường đi: Robot thực thi thành công thuật toán Hybrid $A^*$, tự động tìm đường tối ưu và tránh chướng ngại vật thực tế theo đúng ràng buộc cơ cấu lái.
Giải pháp và đóng góp của đề tài
- Ứng dụng thành công cơ cấu lái biến thể Ackerman dạng đa liên kết (multi-link) vào mô hình robot tự hành cỡ nhỏ, giúp giảm ma sát trượt và tối ưu bán kính quay vòng so với hệ thống lái vi sai thông thường.
- Xây dựng giải pháp kiến trúc điều khiển phân tầng chi phí thấp (kết hợp STM32 giá rẻ cho điều khiển động cơ thời gian thực và Raspberry Pi chạy ROS cho xử lý SLAM/điều hướng cao cấp).
- Hoàn thiện đầy đủ quy trình từ tính toán lý thuyết động lực học cơ khí, phân tích phần tử hữu hạn (Von-Mises), thiết kế mạch điện đến lập trình thuật toán điều khiển nhúng và ROS.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế
- Mô hình robot sử dụng bánh xe dạng đĩa nên khả năng di chuyển tối ưu chủ yếu trên mặt sàn phẳng trong nhà; độ bám đường suy giảm trên bề mặt gồ ghề, trơn trượt hoặc bùn cát.
- Cảm biến quán tính IMU MPU-6050 vẫn chịu ảnh hưởng của hiện tượng trôi dạt (drift) theo thời gian dài nếu không có mốc hiệu chuẩn liên tục.
- Năng lực xử lý của máy tính nhúng Raspberry Pi 3 Model B có giới hạn về tài nguyên CPU/RAM khi xử lý đồng thời các thuật toán SLAM phức tạp và truyền nhận dữ liệu tần số cao.
Hướng phát triển
- Nâng cấp bộ xử lý trung tâm lên các dòng máy tính nhúng có hiệu năng cao hơn hoặc tích hợp GPU (như dòng NVIDIA Jetson) để hỗ trợ các thuật toán SLAM 3D và thị giác máy tính.
- Tích hợp thêm cảm biến camera (RGB-D) kết hợp dữ liệu LiDAR và IMU thông qua các bộ lọc mở rộng (Extended Kalman Filter) để tăng độ chính xác định vị.
- Cải tiến hệ thống treo và cơ cấu bánh xe để robot có thể thích ứng với các địa hình ngoài trời phức tạp hơn.
Giá trị tham khảo
Bản đồ án tốt nghiệp là tài liệu tham khảo giá trị đối với sinh viên và kỹ sư thuộc các chuyên ngành: Công nghệ Kỹ thuật Cơ điện tử, Kỹ thuật Tự động hóa, Kỹ thuật Robot và Trí tuệ nhân tạo (AI).
Các nội dung kỹ thuật có giá trị ứng dụng cao bao gồm:
- Phương pháp tính toán động lực học và thiết kế cơ cấu lái: Quy trình phân tích lực cản, công suất động cơ, mô-men cản quay vòng và phương pháp thiết kế cơ cấu lái đa liên kết (Ackerman-like Multi-link).
- Kỹ thuật điều khiển nhúng trên STM32: Code giải thuật đọc xung encoder x4, cấu hình thuật toán PID vận tốc có khâu Anti-windup và thuật toán Gradient Descent xử lý dữ liệu IMU 6 trục.
- Quy trình xây dựng ứng dụng trên nền tảng ROS: Cách thiết lập không gian Catkin, cấu hình TF tree, đọc xử lý dữ liệu RPLIDAR A1 và triển khai thuật toán SLAM 2D cùng Hybrid $A^*$ trên môi trường Linux.
Câu hỏi thường gặp
1. Mobile robot trong đề tài sử dụng cơ cấu chuyển động và hệ thống lái nào?
Robot sử dụng hệ thống chuyển động 4 bánh: 2 bánh sau là bánh chủ động dẫn động độc lập bằng 2 động cơ DC encoder JGB37-520, và 2 bánh trước là bánh điều hướng sử dụng cơ cấu lái đa liên kết (Ackerman-like multi-link mechanism) được điều khiển bởi động cơ servo ASME-SQB.
2. Thông số kỹ thuật ban đầu và công suất tính toán của động cơ là bao nhiêu?
Khối lượng ước tính của robot là 5 kg, vận tốc tối đa $1,2\text{ m/s}$, đường kính bánh xe $80\text{ mm}$. Qua tính toán động lực học, công suất cần thiết của động cơ là $9,72\text{ W}$, tốc độ quay $287\text{ RPM}$, mô-men xoắn $0,324\text{ Nm}$. Nhóm đã chọn động cơ JGB37-520 có công suất định mức 9W (tối đa 17W) và servo lái có mô-men giữ 60 kg.cm ở nguồn 12V.
3. Cảm biến nào được sử dụng để định vị, xây dựng bản đồ và đo quán tính?
Robot trang bị cảm biến quét laser RPLIDAR A1 (khoảng cách phát hiện tối đa 12m, quét $360^\circ$, tần số quét 10Hz, tốc độ lấy mẫu 8000 lần/giây giao tiếp UART) và cảm biến đo quán tính IMU MPU-6050 (đo 3 trục gia tốc và 3 trục vận tốc góc giao tiếp I2C).
4. Kiến trúc điều khiển phần cứng của robot được phân tầng như thế nào?
Hệ thống gồm 2 tầng: Tầng cấp thấp sử dụng vi điều khiển STM32F103C8T6 (ARM Cortex-M3 72 MHz) điều khiển động cơ qua mạch công suất BTS7960 với thuật toán PID Anti-windup và đọc IMU bằng thuật toán Gradient Descent. Tầng cấp cao sử dụng máy tính nhúng Raspberry Pi 3 Model B chạy hệ điều hành Ubuntu và ROS Noetic để chạy thuật toán SLAM, xử lý TF tree và quy hoạch đường đi.
5. Thuật toán nào được sử dụng để hoạch định đường đi cho robot trên ROS?
Đề tài sử dụng thuật toán tìm đường $A^$ và thuật toán Hybrid $A^$ (thuật toán $A^*$ lai) nhằm quy hoạch quỹ đạo tối ưu có tính toán đến các ràng buộc chuyển động phi vi phân của cơ cấu lái Ackerman.
Kết luận
Đồ án tốt nghiệp "Nghiên cứu, thiết kế và chế tạo Mobile Robot tự hành ứng dụng thuật toán SLAM" đã hoàn thành toàn diện các mục tiêu đề ra về mặt lý thuyết, thiết kế cơ khí, chế tạo phần cứng và phát triển phần mềm điều khiển. Bằng việc kết hợp vi điều khiển STM32F103C8T6 cho tác vụ điều khiển động cơ thời gian thực và máy tính nhúng Raspberry Pi 3B tích hợp hệ điều hành ROS, nhóm tác giả đã chế tạo thành công một mô hình robot di động 4 bánh ứng dụng cơ cấu lái đa liên kết hoạt động ổn định. Hệ thống quét LiDAR và thuật toán SLAM kết hợp Hybrid $A^*$ cho phép robot tự động vẽ bản đồ 2D và định vị di chuyển chính xác trong không gian thực tế. Đây là công trình kỹ thuật có tính ứng dụng thực tiễn cao, cung cấp tài liệu tham khảo chi tiết cho việc nghiên cứu và phát triển các hệ thống robot tự hành phục vụ công nghiệp và đời sống.