Nghiên Cứu Tích Hợp ROS2 và RTOS cho Robot Tự Hành

Khóa luận tốt nghiệp kỹ thuật máy tính nghiên cứu tích hợp ROS2 và RTOS cho robot tự hành, mở ra hướng đi mới trong công nghệ tự động hóa.

Người đăng

Ẩn danh

Thể loại

khóa luận tốt nghiệp

2022

78
9
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

1. CHƯƠNG 1: LÝ DO CHỌN ĐỀ TÀI. TÌNH HÌNH HIỆN NAY. TÌNH HÌNH NGHIÊN CỨU TRONG NƯỚC. TÌNH HÌNH NGHIÊN CỨU TRÊN THẾ GIỚI. PHƯƠNG PHÁP THỰC HIỆN

1.1. Dữ liệu đầu vào

1.2. Xử lý dữ liệu

1.3. Dữ liệu đầu ra

2. CƠ SỞ LÝ THUYẾT

2.1. Tổng quan về Real-Time Operating System - RTOS

2.2. Khái niệm RTOS

2.3. Một số khái niệm trong RTOS

3. PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

3.1. Phân tích phần cứng

3.2. Phân tích phần mềm

3.3. Tính toán Odometry, thuật toán Dijkstra và Dynamic Window Approach

4. THỰC NGHIỆM VÀ ĐÁNH GIÁ

4.1. Phần khung robot

4.2. ROS2 và các phần phụ thuộc

4.3. Đánh giá bản đồ 2D

4.4. Đánh giá Navigation Goal

4.5. Thực nghiệm không có vật cản

4.6. Thực nghiệm có vật cản

5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

5.1. Ưu điểm và nhược điểm của khóa luận

5.2. Hướng phát triển

DANH MỤC HÌNH

DANH MỤC BẢNG

DANH MỤC TỪ VIẾT TẮT

Tóm tắt

I. Tổng quan về Nghiên Cứu Tích Hợp ROS2 và RTOS cho Robot Tự Hành

Nghiên cứu tích hợp ROS2RTOS cho robot tự hành đang trở thành một xu hướng quan trọng trong lĩnh vực tự động hóa. ROS2 là phiên bản mới nhất của hệ điều hành dành cho robot, cung cấp nhiều tính năng ưu việt hơn so với phiên bản trước. Trong khi đó, RTOS là hệ điều hành thời gian thực, giúp quản lý và điều khiển phần cứng một cách hiệu quả. Việc kết hợp hai hệ thống này không chỉ nâng cao khả năng xử lý mà còn cải thiện tính ổn định và độ chính xác của robot trong các ứng dụng thực tiễn.

1.1. Khái niệm về ROS2 và RTOS trong Robot Tự Hành

ROS2 là một nền tảng phần mềm mạnh mẽ cho phép phát triển robot với khả năng giao tiếp và tương tác tốt hơn. RTOS cung cấp khả năng xử lý đa nhiệm và thời gian thực, rất cần thiết cho các ứng dụng yêu cầu độ chính xác cao trong điều khiển. Sự kết hợp này giúp robot hoạt động mượt mà hơn trong môi trường phức tạp.

1.2. Lợi ích của việc Tích Hợp ROS2 và RTOS

Việc tích hợp ROS2RTOS mang lại nhiều lợi ích như tăng cường khả năng xử lý dữ liệu, giảm độ trễ trong giao tiếp và cải thiện khả năng phản hồi của robot. Điều này đặc biệt quan trọng trong các ứng dụng như quản lý tài nguyêncảm biến.

II. Vấn Đề và Thách Thức trong Nghiên Cứu Tích Hợp ROS2 và RTOS

Mặc dù việc tích hợp ROS2RTOS mang lại nhiều lợi ích, nhưng cũng tồn tại nhiều thách thức. Một trong những vấn đề lớn nhất là sự tương thích giữa hai hệ thống. Các nhà phát triển cần phải đảm bảo rằng các giao thức giao tiếp giữa ROS2RTOS hoạt động một cách hiệu quả. Ngoài ra, việc tối ưu hóa hiệu suất và giảm thiểu độ trễ cũng là một thách thức không nhỏ.

2.1. Vấn Đề Tương Thích Giữa ROS2 và RTOS

Sự khác biệt trong kiến trúc và cách thức hoạt động của ROS2RTOS có thể gây ra khó khăn trong việc tích hợp. Cần có các giải pháp để đảm bảo rằng các thành phần của hai hệ thống có thể giao tiếp và hoạt động đồng bộ.

2.2. Thách Thức Về Hiệu Suất và Độ Trễ

Để robot hoạt động hiệu quả, cần phải tối ưu hóa các thuật toán và quy trình xử lý dữ liệu. Việc giảm thiểu độ trễ trong giao tiếp giữa các cảm biến và hệ thống điều khiển là rất quan trọng để đảm bảo tính chính xác trong các nhiệm vụ của robot.

III. Phương Pháp Nghiên Cứu Tích Hợp ROS2 và RTOS

Để thực hiện nghiên cứu tích hợp ROS2RTOS, nhóm nghiên cứu đã áp dụng nhiều phương pháp khác nhau. Việc thiết kế và xây dựng mô hình robot là bước đầu tiên, sau đó tiến hành tích hợp các phần mềm và phần cứng. Sử dụng các công cụ như Nvidia Jetson TX2STM32F429 Discovery Kit giúp tối ưu hóa quá trình phát triển.

3.1. Thiết Kế Mô Hình Robot và Phần Cứng

Mô hình robot được thiết kế trên phần mềm Solidworks, với các cảm biến như LIDARIMU được tích hợp để thu thập dữ liệu. Việc lựa chọn linh kiện phù hợp là rất quan trọng để đảm bảo tính khả thi của dự án.

3.2. Tích Hợp ROS2 và RTOS

Quá trình tích hợp ROS2 trên Nvidia Jetson TX2RTOS trên STM32F429 được thực hiện thông qua các gói phần mềm và thư viện hỗ trợ. Điều này giúp robot có khả năng xử lý dữ liệu nhanh chóng và hiệu quả hơn.

IV. Ứng Dụng Thực Tiễn và Kết Quả Nghiên Cứu

Kết quả nghiên cứu cho thấy việc tích hợp ROS2RTOS đã mang lại những cải tiến đáng kể trong khả năng hoạt động của robot tự hành. Robot có thể tự động vẽ bản đồ, hoạch định đường đi và tránh vật cản một cách hiệu quả. Các ứng dụng thực tiễn của nghiên cứu này có thể được áp dụng trong nhiều lĩnh vực như logistics, sản xuất và dịch vụ.

4.1. Kết Quả Thực Nghiệm và Đánh Giá

Các thử nghiệm cho thấy robot có khả năng di chuyển chính xác và hiệu quả trong môi trường phức tạp. Việc sử dụng LIDAR và các thuật toán SLAM đã giúp robot tạo ra bản đồ 2D một cách chính xác.

4.2. Ứng Dụng Trong Thực Tế

Nghiên cứu này mở ra nhiều cơ hội ứng dụng trong các lĩnh vực như tự động hóa nhà máy, giao thông thông minh và dịch vụ khách hàng. Robot tự hành có thể được sử dụng để vận chuyển hàng hóa, dọn dẹp và nhiều nhiệm vụ khác.

V. Kết Luận và Tương Lai của Nghiên Cứu Tích Hợp ROS2 và RTOS

Nghiên cứu tích hợp ROS2RTOS cho robot tự hành đã chứng minh được tính khả thi và hiệu quả. Tương lai của nghiên cứu này hứa hẹn sẽ mang lại nhiều đột phá trong lĩnh vực robot tự động. Việc phát triển các công nghệ mới và cải tiến quy trình tích hợp sẽ tiếp tục là mục tiêu hàng đầu.

5.1. Tóm Tắt Kết Quả Nghiên Cứu

Kết quả nghiên cứu cho thấy việc tích hợp ROS2RTOS đã nâng cao khả năng hoạt động của robot tự hành, giúp robot thực hiện các nhiệm vụ phức tạp một cách hiệu quả.

5.2. Hướng Phát Triển Tương Lai

Trong tương lai, nghiên cứu sẽ tiếp tục mở rộng để cải thiện khả năng tự động hóa và tích hợp các công nghệ mới như trí tuệ nhân tạo và học máy vào hệ thống robot tự hành.

10/07/2025
Khóa luận tốt nghiệp kỹ thuật máy tính nghiên cứu tích hợp ros2 và rtos cho robot tự hành

Trích đoạn nội dung tài liệu

Chương 1. Lý do chọn để tài. Tinh hình hiện nayy. Tình hình nghiên cứu trong nước.

Tình hình nghiên cứu trên thế giới. Phương pháp thực hiện.---2cc2ccc+222Evcvverrrrrrrrrrrrrrrrrree 8 1. Dữ liệu đầu vào. Xử lý dữ liệu.

Dữ liệu đầu ra. Tổng quan về Real-Time Operating System - RTOS. Khái niệm RTOS. Một số khái niệm trong RTOS.

Một số chức năng của RTOS. Tổng quan về hệ điều hành dành cho robot — ROS. Khái nệm về ROS sự ra đời của ROS2. Chức năng của ROS2.

DDS trên ROS2. Một số khái niệm trong ROS2. Một số tính năng ROS2 In. Laser Imaging, Detection and Ranging (LIDAR).

Simultaneous Localization and Mapping (SLAM). Giải thuật Cartographer ROS. Hệ thống Navigation2 (Nav2). Tổng quan về Nav2.

Nvidia Jetson TX2 Developer Kit. Cảm biến RPLidar AI. Một số module khác .-:---¿-2++++22c+zevcvvxverrrrree 37 Chương 3. PHAN TÍCH VÀ THIET KE HE THÓNG.

Phân tích phan cứng.-----22222vvvc+zt+tvcvvvvrrrerrrrre 41 3. Phân tích khung Xe 0. Liên kết các thành phan xe. Phân tích phần mềm.

Phần mềm trên máy tính cá nhân. Phần ROS2 trên Nvidia Jetson TX2 Developer Kit. Phan RTOS trên STM32F429 Discovery Kít. Tính toán Odometry, thuật toán Dijkstra và Dynamic Window ADDPTOaCH.

Tính toán OdOI€(TY. Thuật toán Dynamic Window Approach. THỰC NGHIỆM VÀ DANH GIÁ. Phần khung robot.

ROS2 và các phần phụ thuộc. Đánh giá bản đồ 2D. Đánh giá Navigation GoalL. Thực nghiệm không có vật cản.

Thực nghiệm có vật cản.-¿- ¿sec 62 Chương 5. KÉT LUẬN VÀ HƯỚNG PHÁT TRIEN. Ưu điểm và nhược điểm của khóa luận. Hướng phát triỂn.---¿--©+2222+++222SS+ttEEvvrretrrrrrrrrrrrree 65 DANH MỤC HÌNH Hình 1.1: Mô hình robot của nhóm sinh viên Trần Hoàng Phương và Võ Anh Hình 1.2: Mô hình robot của nhóm sinh viên Phan Anh Kiệt và Lê Chí Bảo [5].3: Mô hình robot Turtlebot3 Waffle Pi và Burger của hãng ROBOTIS [6] —.4: Mô hình robot Rimini của hãng OMOROBOT [7].5: Sơ đồ khối cấu trúc của robot.1: Hệ điều hành RTOS [8].2: Kernel trong RTOS [8] .3: Mô hình trạng thái của task trong RTOS [8].4: Lập lịch theo Round-robin [8] .-- - ¿+ + 5s <cx+++svrexseexexexex 3 Hình 2.5: Lập lịch theo Priority base [Ñ].6: Lập lịch theo Priority-based pre-emptive [8] .7: Signal Events trong RTOS [§].8: Message Queue trong RTOS [8] .9: Mail Queue trong RTOS [§].

- -- 555cc serersrrkrkeek 8 Hình 2.10: Mutex trong RTOS [8]. cece eee ceeeeeseeeeseseseessneseasseeneeeneneae 9 Hình 2.11: Logo của ROS.12: Các phiên bản của ROS2 [9] occ eeeeseeeseeeeseeseetseeeeaeseeeeeeeeeee 21 Hình 2.13: Package trong ROS2.15: Node trong ROS2.-- -- tàn HH it24 Hình 2.16: Topic trong ROS2.17: Service trong ROS2.-¿- 5< Sàn HH” HH.18: Action trong ROS2.------ +52: tt E222 ren25 Hình 2.19: Hình ảnh minh họa LIDAR .20: Hình ảnh minh họa dùng SLAM đề vẽ bản đồ 2D [10].21: Mô hình Cartographer trong ROS2.22: Mô hình Nav2 trong ROS [7].23: Nvidia Jetson TX2 carrier board.25: Hình ảnh mô tả các thông số của Rplidar A l.26: Khung xe vẽ trên phần mềm soliđdworks.-cc-cc-:cccÄ7 Hình 2.27: Mạch nguồn giảm ap DC-DC.28: Servo driver MSD_ElA.29: Cảm biến gia tốc GY-521 6DOF IMU MPU6050.30: Động Cơ DC Servo JGB37 DC. 5+ Ss+csxsserrererererexee 40 Hình 2.31: Cảm biến hồng ngoại E3F-DS30Y2.1: Khung xe dựa theo mô hình Mars rOV€TS.2: Khung xe hiện tate. ccc ceseeeeeeeeeseseseseeseseseseeseseseseessneeacseeseeeeaeee 42 Hình 3.3: Sơ đồ khối mô tả hệ thống trên STM32F429 Discovery Kit .4: Sơ đồ bố trí tọa độ của robot .5: Qua một khoảng thời gian rất nhỏ, chuyền động robot có thể gần bằng một cung tròn [4].6: Hai đường cung tròn tạo bởi hai bánh xe ảo [4].7: Vận tốc cho phép Va trong DWA [1 I].c:--cz525sscz<+ 53 Hình 3.8: Heading của robot trong DWA [ [ Ï].--- 5 55++c+c+ce<<+e=xe 54 Hình 4.1: Hình chụp thực tế của khung xe.

tt n2, 0111121212 1g rên56 Hình 4.3: Kết quả quá trình vẽ bản đồ 2D của môi trường hoạt động.4: Đường đi được tạo ra từ thuật toán DWB.5: Sơ đồ mô tả giải thuật xử lí khi robot phát hiện vật cản ngoài bản đồ61 Hình 4.6: Trang thái Recovery oo. cece 5 SĐT 62 DANH MỤC BANG Bảng 3.1: Các package dé sử đụng rObot.2: Các package được kế thừa lại dé thực hiện hệ thống.3: Các tác vụ trong RTOS.1: Bảng thông số thực nghiệm không có vật cản.2: Bảng thông số thực nghiệm có vật cản.--c:775sccc-- 63 DANH MỤC TU VIET TAT AHB Advanced High-Performance Bus AMCL Adaptive Monte Carlo Localization APB Advanced Peripheral Bus CPU Central Processing Unit DC Direct Current DDS Data Distribution Service DDSI-RTPS DDS-Interoperability Real Time Publish Subscribe DSP Digital Signal Processor DWA Dynamic Window Approach FPU Floating-Point Unit GPS The Global Positioning System GPU Graphics Processing Unit GUI Graphical User Interface IMU Inertial Measurement Unit LIDAR Light Detection and Ranging PCL Point Cloud Library PID Proportional—Integral—Derivative controller RAM Random Access Memory ROS Robot Operating System RTOS Real-Time Operating System SLAM Simultaneous Localization and Mapping TF2 Transform Version 2 TOM TAT KHÓA LUẬN Khóa luận “NGHIÊN CỨU VÀ TÍCH HỢP ROS2 VÀ RTOS CHO ROBOT TỰ HANH” ứng dung LIDAR và Navigation Stack đề thiết kế nên robot có khả năng vẽ được bản đồ khu vực hoạt động, tự hoạch định đường đi và đi đến nơi chỉ điểm trên bản đồ kết hợp tránh vật cản. Ứng dụng các thuật toán tìm đường đi để robot có thể di chuyên đến nơi chỉ định chỉ với các thao tác đơn giản nhất. Với hệ thống LIDAR, robot sử dụng cảm biến Rplidar Al từ thương hiệu SLAMTEC được phát triển để sử dụng vào các ứng dụng phát hiện vật cản, lập bản đồ bằng tỉa laser, hỗ trợ định vị xe hay robot tự hành,.

Bên cạnh đó STM32F429 Discovery Kit sử dung Encoder để tính toán vận tốc và số vòng của bánh xe để có thé biết được trạng thái của robot. Từ đó áp dụng các thuật toán định vị và hoạch định đường đi dé robot có thé tự động di chuyển đến nơi chỉ định trên bản đồ một cách chính xác và nhanh nhất có thể. Dé robot hoàn thiện và hoạt động tốt các hệ thống riêng lẻ phải được kết hợp và đồng bộ trên một hệ điều hành quy nhất. Khi đó, hệ điều hành đành cho robot (ROS) là một lựa chọn rất phù hợp với hệ thống.

ROS là một hệ thống phần mềm giúp phát triển robot với các thư viện và công cụ được hỗ trợ dé truyền dữ liệu giữa các chương trình, giữa robot và máy tính nhờ vào kiến trúc các gói trên hệ thống của robot. Ở đề tài lần này, nhóm sẽ tập trung chủ yếu vào nghiên cứu về ROS2 (hệ điều hành dành cho robot phiên bản thứ 2) với những tính năng mới ưu việt hơn so với ROS, các gói dành cho Rplidar và các gói phục vụ SLAM, định vị và hoạch định đường đi cho robot trên ROS2. Đi cùng với ROS2, nhóm sẽ nghiên cứu tích hợp hệ điều hành thời gian thực (RTOS) với chức năng giúp dễ dàng điều khiển và quản lý phần cứng. Cuối cùng, để hoàn thiện hệ thống Navigation 2 Stack, robot sẽ được chia làm ba phần.

Phần thứ nhất là Nvidia Jetson TX2 Developer Kít, nơi thực thi các thuật toán định vị và hoạch định đường đi. Phần thứ hai là máy tính cá nhân nơi quản lý các thông tin của robot. Phần cuối cũng là tang nền với STM32F429 Discovery Kit nhận dữ liệu từ các cảm biến IMU và Encoder và tính toán trạng thái của robot, đồng thời điều khiển bốn động cơ DC dé robot có thé di chuyền. Ba phần chính sẽ được liên kết chặt chẽ với nhau trên một hệ thống là Robot Operating System (ROS2).

Ly do chọn đề tài Những năm gần đây tự động hóa và robotics phát triển nhanh và mạnh mẽ con người ngày càng cần đến các công cụ tự động nhằm nâng cao năng suất lao động cũng như tối ưu thời gian và chỉ phí. Từ đó đã phát triển rất nhiều loại robot tự động khác nhau đáp ứng các nhu cầu khác nhau như cánh tay robot trong công nghiệp, robot xử lý ảnh và phân loại sản phẩm. Trong đó, robot tự hoạch định đường đi là một dạng robot rất quan trọng được ứng dụng rộng rãi trong nhiều lĩnh vực đời sống va công nghiệp có thé ké đến là robot lau nhà, robot vận chuyển hàng hóa trong nhà máy. Hơn thế nữa, cộng đồng người dùng, nghiên cứu và phát triển robot trên Robot Operating System (ROS) hiện nay khá là lớn mạnh, giúp người dùng dé dàng tiếp cận, xây dựng một robot phức tạp trở nên đơn giản hơn.

Để robot hoàn thiện và hoạt động tốt các hệ thống riêng lẻ phải được kết hợp và đồng bộ trên một hệ điều hành duy nhất. Khi đó, ROS là một lựa chọn rất phù hợp. ROS là một hệ thống phần mềm giúp phát triển robot với các thư viện và công cụ được hỗ trợ để truyền dữ liệu giữa các chương trình, giữa robot và máy tính nhờ vào kiến trúc các gói trên hệ thống của robot. Để có thể điều khiển robot di chuyển mượt mà và ồn định thì cần một hệ điều hành thời gian thực với khả năng xử lý dữ liệu siêu nhanh dành cho robot ở đây nhóm sẽ sử dụng Real-time Operating System (RTOS) — hệ điều hành thường được nhúng trong các loại vi điều khiển nơi mà các tài nguyên bên trong rất hữu hạn nên chỉ một sự chậm trễ cũng có thê làm hệ thống làm việc hoàn toàn sai lệch.

Trên thế giới các công trình nghiên cứu về robot tự động hoạch định đường đi (Navigation Robot) đã được thực hiện và cải tiền rất nhiều. Tuy nhiên tình hình phát triển trong nước vẫn còn hạn chế nên nhóm thực hiện tìm hiểu về ROS2 và RTOS dựa vào đó xây dựng robot xe mini tích hợp navigation. Bên cạnh đó, việc thực hiện dé tài sẽ giúp cho nhóm có thêm được kiến thức, kinh nghiệm cũng như cái nhìn œ tổng quan trong quá trình thiết kế robot tự hành. Đây cũng là lý do nghiên cứu của nhóm trong quá trình thực hiện khóa luận tốt nghiệp lần này.

Tình hình hiện nay Do công nghệ xe tự hành mới được phô biến tại Việt Nam trong những năm gan đây, nên những sản phẩm phục vụ cho dao tạo nghiên cứu còn hạn chế, nhỏ lẻ và hông đồng nhất. Có những tô chức nghiên cứu, đầu tư vào xe tự hành với mức inh phí khủng như Vin Group [1], FPT [2], Phenikaa [3]. với những cuộc thi về xe tự hành tổ chức cho sinh viên và các bạn học sinh trên toàn cả nước. Hiện tại ở trường Đại học Công nghệ Thông tin cũng đã có những bước đi đầu tiên khi đã tiến ành các cuộc thi về xe tự hành trong sinh viên do khoa Kỹ thuật Máy tính chủ trì.

Việc xây dựng một hệ thống robot hoàn chỉnh tích tích hợp hệ thống ROS2 và RTOS sẽ giúp tạo ra hướng đi mới cho việc xây dựng và phát triển robot, giúp đồng bộ trên một hệ điều hành và dễ kế thừa phát triển, xây dựng mô hình xe ngày càng hoàn thiện cho các cuộc thi học thuật ở trường có thể mở rộng hơn nữa.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Nghiên Cứu Tích Hợp ROS2 và RTOS cho Robot Tự Hành" cung cấp cái nhìn sâu sắc về việc kết hợp hai công nghệ tiên tiến là ROS2 (Robot Operating System 2) và RTOS (Real-Time Operating System) trong lĩnh vực robot tự hành. Bài viết nêu bật những lợi ích của việc tích hợp này, bao gồm khả năng xử lý thời gian thực, tăng cường hiệu suất và độ tin cậy của robot trong các nhiệm vụ phức tạp. Độc giả sẽ tìm thấy thông tin hữu ích về cách mà sự kết hợp này có thể cải thiện khả năng hoạt động của robot, từ đó mở ra nhiều cơ hội nghiên cứu và ứng dụng trong thực tiễn.

Để mở rộng kiến thức của bạn về lĩnh vực này, bạn có thể tham khảo thêm tài liệu Khóa luận tốt nghiệp kỹ thuật máy tính ứng dụng công nghệ định vị đồng thời lập bản đồ trên robot, nơi bạn sẽ tìm hiểu về công nghệ định vị và lập bản đồ trong robot. Ngoài ra, tài liệu Đề tài robot tự vận hành cũng sẽ cung cấp cho bạn cái nhìn tổng quan về các nghiên cứu hiện tại trong lĩnh vực robot tự hành. Những tài liệu này sẽ giúp bạn có thêm nhiều góc nhìn và kiến thức bổ ích trong lĩnh vực robot và công nghệ tự động hóa.