Chương 1. -2222- SE SE2E2EEEEEEEEEEEEEEEE7171121121171 21. Ly do chon đề tài. Mu tidu nghién CUU.
Pham vi nghiÊn CỨU.-- 5 << 1x11 TH HH nh 2 1. Đối tượng nghiên cứu. Phuong pháp thực hiỆn.- --- 5 5+ 3k nh HH ng ng ni 3 1. Kết quả mong đợi của đề tài.cyee, 3 Chương 2.
CÁC THÀNH PHAN CUA HE THONG. Jetson Nano Developer KT. Cảm biến Lidar. cv HH ng nh Hy 6 2.
Bộ điều khiển động cơ XY-160D. _ Động cơ DC va enCO(T. SH ng ngư 7 2. Cảm biến gia tốc góc MPU6050.
Q9 nh Hi ch 9 2. Lý thuyết các thành phan trong hệ thống. Mô hình robot Vi Sa1. Ăn HH HH HH TH HH HH 13 2.
SLAM và thuật toán Hector SLAM. LH HH HH TH HH ng Hệ 17 Chương 3. PHAN TÍCH VA THIET KE HỆ THÓNG. Phân tích phần cứng .-----¿- 2 ++©+++E£+EE+EE+EESEEEEEEEEEEEEEEEEEErrkrrkerreee 22 3.
Phân tích phần mềm .---¿- 2 2 2 £+E£+E£EE£EE#EE#EESEEEEEEEEEEEEEEEerkrrkrrree 24 3. _ Sử dụng gói tf để định nghĩa các khung cơ sở. Nguôn dữ liệu cảm biến (dữ liệu từ Lidar). Nguồn dữ liệu odometry.
Bộ điều khiển động cơ. HH HH HH 30 3. Move _base NOde. Cau hình ACML.
Khởi động robot với Navigation Stack .---cc+ccs<ssersees 33 3. Tạo giao diện web và sử dụng rosbridge dé giao tiếp với robot. KET QUA THUC NGHIỆM. — Quét và đánh giá map 2D của khu vực.
— Chay Navigation và đánh giá Navigation oal. Điều khiến động cơ thông qua steering hoặc joystick trên web. Tạo được một giao diện web dé người dùng điều khiển robot. Môi trường không có vật cản.
Môi trường CO Vat Cảẩn.- c n St SH ng ng ry38 Chương 5. KẾT LUẬN VÀ HƯỚNG PHAT TRIỂN. Hạn chế và hướng phát triỂn.----- ¿2+ +s++k+EE+E++E++E£+Ee£EerEerxerkrrerreee 39 TÀI LIEU THAM KHẢO.- - - St +ESEESE+EEEEEE+EEEEEEEEEEEEEEEEESEEEEEESEEEEEEeErrkrkrree Al DANH MỤC HÌNH Hình 2.1: Jetson Nano Developer K1(. -- -- cv HH kg ky 5 Hình 2.2: Cảm biến RPLidar.3: Vi xử lý Arduino Uno R3.4: Bộ điều khiển XY-160D.-¿-52¿222vt2EExttttEktrrtrrtrrrrrtrrrrrrrrrrrk 7 Hinh 2.6: Cảm biến gia tốc góc MPU6050.---2¿- 22 52+2+22Ex2E+v£E+erxesrxrrrxee 9 Hình 2.7: Robot dò line sử dụng mô hình robot Vi Sa1.8: Robot phục vụ nhà hàng của KEENON.9: Mô hình robot vi sai trong hệ trục tọa dO.
eee ceesceseeeseeeeteeeeeeeeseeeaes 12 Hình 2.10: Giao thức RÑOSS€TIAÌL. G1 93112111 v1 1 TH HH HH, 14 Hình 2.11: Qua trình tính toán và ước lượng vi trí cua robot và vat thể.12: Quá trình xử lý dữ liệu dé vẽ map.2--2¿25¿©5++2s+2cx>zxvzxesrss 17 Hình 2.13: Sơ đồ các node của robot sử dụng Navigation.-----¿scscsc=sz 18 Hình 2.14: Ví dụ về cấu hình khung tọa độ cho robot .15: Dữ liệu của Lidar khi biểu diễn trên mặt phang .16: Cấu tạo của động Cơ €nCO€T.- G2 3119 SH ng kg 20 Hình 2.17: Quá trình quét và vẽ Imap. ng ng ngưng 21 Hinh 2.18: Vi du ban d6 da duoc quét dự trên Hector-SLAM.1: Thiết kế 2D mặt giữa của robot .2: Thiết kế 2D mặt dưới của rObotL.3: Hình anh mô phỏng 3D của TOOI.4: Sơ đồ khối cầu trúc của rObot.----:--cc+++ccvttsrxxtrrrrtrrrrrrrrrrrkrrrre 24 Hình 3.5: Sơ đồ kết nối các frame.6: Sơ đồ cây ¢f trong thực tế của nhóm.--- 2-2 2 2+2+++£x+£x+zx+zszxez 26 Hình 3.7: Sơ đồ kết nối dit liệu của gói robot_pose__ekf .--------s-cs+cs+cs s2 27 Hình 3.8: Sơ đồ rqt thực tế của NOM .1: Hình anh tổng quát của robot thực tẾ.----- 2-2 2 z+++£xezx+£x+rxzrszxez 34 Hình 4.2: Hình ảnh map 2D được vẽ bởi rODOtL.3: Hình ảnh phần mềm Rviz khi chạy navigation.4: Giao diện web dé người dùng điều khiến robot.---:---:---5¿ DANH MỤC BANG Bang 1. Bảng đánh giá kết quả thực nghiệm không vật cản.
Bảng đánh giá kết quả thực nghiệm có vật cản .----22- 2 sc5cssz DANH MUC TU VIET TAT AMCL AMD Core Math Library CPU Central Processing Unit DC Direct Current ESD Electrostatic Discharge GFLOPS Giga Floating-point Operations Per Second GPIO General-purpose input/output GPU Graphics Processing Unit I2C Inter-Integrated Circuit IMU Inertial Measurement Unit LIDAR Light Detection and Ranging PID Proportional—Integral—Derivative controller PWM Pulse Width Modulation RAM Random Access Memory RDP Remote Desktop Protocol ROM Read Only Memory ROS Robot Operating System RPM Round per minutes SLAM Simultaneous Localization and Mapping SPI Serial Peripheral Interfaces TF Transform TVS Transient Voltage Suppression UART Universal asynchronous receiver transmitter TOM TAT KHÓA LUẬN Khóa luận “NGHIÊN CỨU VÀ XÂY DỰNG ROBOT PHỤC VỤ NHÀ HÀNG” ứng dụng công nghệ Lidar và ROS Navigation Stack vào dé thiết kế và xây dựng nên robot có khả năng vẽ bản đồ khu vực hoạt động, chọn được điểm trong khu vực bản đồ (kịch bản ở đây là các bàn ở trong nhà hàng) sau đó robot có thể tự hoạch định được đường đi cũng như là thực hiện đi đến điểm được chỉ định và tránh vật cản trong quá trình di chuyền. Mô hình robot vi sai là một mô hình điều khiển chính xác cho phép tính toán chính xác độ di chuyển của robot dựa trên dữ liệu từ động cơ encoder. Sử dụng encoder giúp lấy dữ liệu dịch chuyên của động cơ và tính toán chính xác hơn trong node move_base, từ đó hệ thống có thé đưa ra quyết định truyền xung hợp lý để robot di chuyển chính xác và mượt mà hơn. Máy tính nhúng Jetson nano được sử dung làm bộ não trung tâm điều khiển robot, với khả năng tính toán và chạy các tác vụ cần thiết dé điều khién robot.
Board Arduino Uno R3 được sử dụng dé truyền nhận dữ liệu giữa động co, encoder và máy tính nhúng, đảm bao việc giao tiép hiệu quả và truyên dan đữ liệu đáng tin cậy. Hệ thống cảm biến của robot bao gồm cảm biến RP Lidar Al, được sử dụng dé kết hợp với thuật toán Hector SLAM trong việc quét và xây dựng bản đồ khu vực. Bên cạnh đó cảm biến còn hỗ trợ trong việc chạy Navigation, giúp phát hiện được các vật cản động cũng như các vật cản tĩnh không có trong bản đồ đã quét trước đó. Đề robot tính toán và đưa ra đường đi tốt nhất trong từng lần lần di chuyền.
Bên cạnh đó còn sử dụng thêm cảm biến gia tốc góc MPU6050 hỗ trợ và cho biết hướng, góc quay của robot trong môi trường. Dé robot hoạt động và thực hiện được các chức năng kể trên, hệ điều hành ROS (Robot Operating System) đã được sử dụng. ROS là một hệ điều hành dành cho robot, nó cung cấp bộ thư viện phần mềm và công cụ hỗ trợ cho việc xây dựng robot. Thông qua ROS, nhà phát triển có thé xây dựng một hệ thống đường truyên dữ liệu giữa các chương trình và thực hiện giao tiép và các chức năng cân thiết.
Đề tương tác với robot, nhóm đã xây dựng một giao diện web cơ bản sử dụng Flask để chạy server, dùng các ngôn ngữ thông dung (javascript, css, html) dé tạo được giao diện web. Giao diện web này sử dung thư viện roslibjs và công cụ rosbridge dé kết nối và giao tiếp giữa trình duyệt web và robot, cho phép người dùng tương tác và điều khiển robot từ xa. Ly do chon dé tai Robot Navigation là một lĩnh vực dang phat triển nhanh chóng va có ứng dụng rộng rãi trong nhiều lĩnh vực. Hiện nay, các công nghệ điều khiển robot, phát hiện vật thé, định vị và xử lý thông tin đang phát triên mạnh mẽ, đưa đến sự tiễn bộ đáng kế trong Robot Navigation.
Các phương pháp machine learning, deep learning và reinforcement learning đang được sử dung dé cải thiện khả năng điều hướng của robot trong môi trường phức tạp. Ngoài ra, các hệ thống robot đa robot và robot hợp tác cũng đang được phát triển nhanh chóng để giải quyết các vấn đề điều hướng trong môi trường phức tạp, các công nghệ định vị và xử lý thông tin như PointCloud và LIDAR cũng được sử dụng đê cải thiện khả năng điều hướng của robot trong môi trường động. Robot Navigation có ứng dụng rất rộng trong các lĩnh vực như tự động hóa công nghiệp, y tế, nông nghiệp, khai thác dầu khí, vũ trụ và nhiều lĩnh vực khác. Các ứng dụng của Robot Navigation bao gồm tự động hóa kho lạnh, robot y tế, robot nông nghiệp, robot khám phá không gian, robot hộ vệ và nhiều ứng dụng khác.
Tại Trường Đại học Công nghệ Thông tin, đã có những bài nghiên cứu, thực nghiệm các đề tài liên quan đến Robot Navigation, trong đó phải kế đến là các đề tài: “Xây dựng robot tự hành quét bản đồ trong nhà và tránh vật cản - năm 2020 - Lê Chí Bảo, Phan Anh Kiệt”, “Robot tránh vật cản sử dụng công nghệ LiDAR - năm 2021 - Trần Hoàng Phương, Võ Anh Tuấn”. Trên quốc tế cũng đã có nhiều nghiên cứu, bài báo viết về chủ đề này, một bài viết nghiên cứu và phát triển LIDAR robot để ứng dụng vào làm robot phục vụ như “Development of a Robotic Waiter System — năm 2016 - A Cheong, MWS Lau, E Foo, J Hedley, Ju Wen Bo” [1]. Một bài viết khác cũng thực hiện nghiên cứu, so sánh các phương pháp dùng logic mờ (fuzzy logic) khác nhau dé thực hiện một robot phục vụ tránh chướng ngại vật: “WaiterBot: Comparison of Fuzzy Logic Approaches for Obstacle Avoidance in Dynamic Unmapped Environments Using a Laser Scanning System (LiDAR) — nam 2020 - Jonathan Cerbaro, Dieisson Martinelli, Andre Schneider de Oliveira and Joao Alberto Fabro” [2]. Các nghiên cứu da phan chỉ cải tiến chức năng tránh né vật cản tốt hơn cho robot nhưng lai ít có các nghiên cứu hướng đến một ứng dụng cụ thé nào đó.
Dé thiết kế robot theo một kịch bản thực tế là một hướng đi khá mới cho sinh viên. Vì lý do đó, nhóm sẽ phát triển robot theo kịch bản robot phục vụ trong nhà hàng với chức năng chính là vận chuyển thức ăn đến bàn ăn mong muốn, có thê điều khiển thông qua Web server. Mục tiêu nghiên cứu Mục tiêu nghiên cứu của khóa luận tốt nghiệp là xây dựng một robot phục vụ nhà hàng, sử dụng công nghệ ROS Navigation Stack. Robot này có khả năng vẽ bản đồ khu vực hoạt động, tự động chọn đường di và tránh vật cản trong quá trình di chuyên.
Sử dụng mô hình robot vi sai, máy tính nhúng Jetson nano, cảm biến Lidar, cảm biến RPLidar AI,. dé tạo ra một hệ thống robot phục vụ nhà hàng (mang đồ ăn từ trong bếp đến các bàn đã được định sẵn). Xây dựng thêm một giao diện web dé người dùng có thé dé dang sử dụng robot. Phạm vi nghiên cứu Trong khóa luận này chúng em nghiên cứu việc điều khiển robot theo định hướng navigation, chỉ định một điểm trên bản đồ đã vẽ được để robot hoạch định ra đường di và thực hiện di chuyển đến đó.
Robot có thé tự hoạch định được quỹ đạo đường đi dựa trên bản đồ đã được vẽ trước bằng thuật toán Hector SLAM sử dụng cảm biến LiDAR, kết hợp với các dữ liệu lẫy được từ cảm biến LIDAR theo thời gian thực, cảm biến gia tốc, dữ liệu encoder từ động cơ dé kết hợp lại thực hiện navigation.