MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

62 154 3
MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BÁO CÁO CHUYÊN ĐỀ 3 ĐỀ TÀI: MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS GVHD: TS.PHAN THỊ LAN ANH SINH VIÊN: PHAN VĂN TRÍ VŨ THỊ KIM OANH NGUYỄN VĂN PHƯỚC LỚP: 18IT5 Đà Nẵng, tháng năm 2020 NHẬN XÉT (của giảng viên hướng dẫn) Giảng viên hướng dẫn (Kí tên)   MỤC LỤC 1. Khái quát chung 8 1.1 Thông báo 9 1.2 Sự kiện 12 1.2.1 Cạnh tranh trực tuyến trên RDS 12 1.2.1.1 Cạnh tranh trực tuyến sử dụng TurleBot3 12 1.2.1.2 TurleBot3 AutoRace trên RDS 12 1.2.1.3 Nhiệm vụ sử dụng TurtleBot3 và OpenManipulator trên RDS 12 1.2.1.4 ROS Development Studio (RDS) 12 1.2.2 Cạnh tranh ngoại tuyến 13 1.2.2.1 TurleBot3 Maze Solving @FIRA Malaysia 2018 13 1.2.2.2 Robosot (sử dụng nhiệm vụ văn phòng) sử dụng TurleBot3 @FIRA Malaysia 2018 13 1.2.2.3 GdR TurtleBot Challenge 2018 (TU Darmstadt) 13 1.2.2.4 Cuộc thi Robot di động tự động 13 1.2.3 Thử thách AutoRace RBIZ 14 1.2.3.1 Thử thách AutoRace RBIZ 2017 14 1.2.3.2 Thử thách AutoRace RBIZ 2018 14 1.2.3.3 Thử thách AutoRace RBIZ 2017 14 1.2.3.4 Teaser TurtleBot3 AutoRace 2017 16 1.2.3.5 Những người thách thức TurtleBot3 AutoRace 2017 16 1.2.3.6 Thử thách AutoRace RBIZ 2018 16 2. Tính năng 17 2.1 Thông số kỹ thuật 18 2.1.1 Thông số kỹ thuật phần cứng 18 2.1.2 Kích thước và khối lượng 21 2.1.2.1 Dữ liệu của TurleBot3 Burger 21 2.1.2.2 Dữ liệu của TurleBot3 Waffle 22 2.1.2.3 Dữ liệu của TurleBot3 Waffe Pi 23 2.2 Các thành phần 24 2.2.1 Danh sách các bộ phận 25 2.2.2 Phần cứng nguồn mở 29 3. Hướng dẫn nhanh 30 3.1 Thiết lập PC 30 3.1.1 Tải xuống và cài đặt Ubuntu trên PC 30 3.1.2 Cài đặt ROS 1 trên PC từ xa 30 3.1.3 Cài đặt gói ROS1 phụ thuộc 30 3.1.4 Cài đặt các gói TurleBot3 30 3.1.5 Đặt tên mô hình TurtleBot3 30 3.1.6 Cấu hình mạng 31 3.2 Thiết lập SBC 32 3.2.1 Chuẩn bị thẻ nhớ microSD 32 3.2.2 Định cấu hình Raspberry Pi 32 3.3 Thiết lập OpenCR 33 3.3.1 Kiểm tra OpenCR 35 3.4 Lắp ráp phần cứng 36 3.5 Mang lên 36 3.5.1 Chạy roscore 36 3.5.2 Bringup TurleBot3 36 3.6 Hoạt động cơ bản 37 3.6.1 Điện thoại 37 3.6.1.1 Bàn phím 37 3.6.1.2 RC100 38 3.6.1.3 Cần điều khiển PS3 39 3.6.1.4 Cần điều khiển XBOX 360 39 3.6.1.5 Điều khiển từ xa Wifi 40 3.6.2 Giám sát chủ đề 40 4. SLAM 47 4.1 Chạy nút SLAM 47 4.2 Chạy nút điều khiển từ xa 47 4.3 Hướng dẫn điều chỉnh 48 4.3.1 maxUrange 48 4.3.2 map_update_interval 48 4.3.3 Điểm tối thiểu 49 4.3.4 tuyến tính 49 4.3.5 angleUpdate 49 4.4 Lưu bản đồ 49 4.5 Bản đồ 51 5. Điều hướng 52 5.1 Chạy các nút điều hướng 52 5.2 Ước tính tư thế ban đầu 53 5.3 Đặt mục tiêu điều hướng 53 5.4 Hướng dẫn điều chỉnh 54 5.4.1 inflation_radius 54 5.4.2 cost_scaling_factor 55 5.4.3 max_vel_x 56 5.4.4 min_vel_x 56 5.4.5 max_trans_vel 56 5.4.6 min_trans_vel 56 5.4.7 max_rot_vel 57 5.4.8 min_rot_vel 57 5.4.9 acc_lim_ac 57 5.4.10 acc_lim_theta 57 5.4.11 xy_goal_ tolerance 57 5.4.12 yaw_goal_tolerance 57 5.4.13 sim_time 57 6. Mô phỏng 58 6.1 Mô phỏng Gazebo 58 6.1.1 Cài đặt gói mô phỏng 58 6.1.2 Khởi chạy thế giới mô phỏng 58 6.1.3 Vận hành TurtleBot3 61 6.2 Mô phỏng SLAM 61 6.2.1 Khởi chạy thế giới mô phỏng 61 6.2.2 Chạy nút SLAM 61 6.2.3 Chạy nút điều khiển từ xa 61 6.2.4 Lưu bản đồ 62 6.3 Mô phỏng Navigation 63 6.3.1 Khởi chạy thế giới mô phỏng 63 6.3.2 Chạy nút điều hướng 63 6.3.3 Ước tính tư thế ban đầu 63 6.3.4 Đặt mục tiêu điều hướng 64 6.4 Mô phỏng nút giả 65 6.5 Mô phỏng Gazebo độc lập 65   1. Khái quát chung TurtleBot là một robot nền tảng tiêu chuẩn ROS. Turtle có nguồn gốc từ robot Turtle, được điều khiển bởi ngôn ngữ lập trình máy tính giáo dục Logo vào năm 1967. Ngoài ra, nút rùa, xuất hiện lần đầu trong hướng dẫn cơ bản của ROS, là một chương trình bắt chước hệ thống lệnh của Logo rùa chương trình. Nó cũng được sử dụng để tạo biểu tượng rùa như một biểu tượng của ROS. Chín chấm được sử dụng trong logo ROS bắt nguồn từ mai sau của con rùa. TurtleBot, có nguồn gốc từ Logo con rùa, được thiết kế để dễ dàng dạy những người mới làm quen với ROS thông qua TurtleBot cũng như dạy ngôn ngữ lập trình máy tính sử dụng Logo. Kể từ đó TurtleBot đã trở thành nền tảng tiêu chuẩn của ROS, là nền tảng phổ biến nhất giữa các nhà phát triển và sinh viên. Có 3 phiên bản của mô hình TurtleBot. TurtleBot1 được phát triển bởi Tully (Quản lý nền tảng tại Open Robotics) và Melonee (Giám đốc điều hành của Fetch Robotics) từ Willow Garage trên robot nghiên cứu dựa trên Roomba của iRobot, Create, để triển khai ROS. Nó được phát triển vào năm 2010 và được bán từ năm 2011. Năm 2012, TurtleBot2 được phát triển bởi Yujin Robot dựa trên robot nghiên cứu, iClebo Kobuki. Vào năm 2017, TurtleBot3 được phát triển với các tính năng bổ sung các chức năng còn thiếu của người tiền nhiệm và nhu cầu của người dùng. TurtleBot3 sử dụng thiết bị truyền động thông minh ROBOTIS DYNAMIXEL để lái xe. TurtleBot3 là một robot di động nhỏ, giá cả phải chăng, có thể lập trình, dựa trên ROS để sử dụng trong giáo dục, nghiên cứu, sở thích và tạo mẫu sản phẩm. Mục tiêu của TurtleBot3 là giảm đáng kể kích thước của nền tảng và hạ giá thành mà không phải hy sinh chức năng và chất lượng của nó, đồng thời cung cấp khả năng mở rộng. TurtleBot3 có thể được tùy chỉnh theo nhiều cách khác nhau tùy thuộc vào cách bạn tái tạo các bộ phận cơ khí và sử dụng các bộ phận tùy chọn như máy tính và cảm biến. Ngoài ra, TurtleBot3 được phát triển với SBC hiệu quả về chi phí và kích thước nhỏ, phù hợp với hệ thống nhúng mạnh mẽ, cảm biến khoảng cách 360 độ và công nghệ in 3D.

ĐẠI HỌC ĐÀ NẴNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT HÀN BÁO CÁO CHUYÊN ĐỀ ĐỀ TÀI: MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS GVHD: TS.PHAN THỊ LAN ANH SINH VIÊN: PHAN VĂN TRÍ VŨ THỊ KIM OANH NGUYỄN VĂN PHƯỚC LỚP: 18IT5 Đà Nẵng, tháng năm 2020 ĐẠI HỌC ĐÀ NẴNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT HÀN BÁO CÁO CHUYÊN ĐỀ ĐỀ TÀI: MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS GVHD: TS.PHAN THỊ LAN ANH SINH VIÊN: PHAN VĂN TRÍ VŨ THỊ KIM OANH NGUYỄN VĂN PHƯỚC LỚP: 18IT5 Đà Nẵng, tháng năm 2020 NHẬN XÉT (của giảng viên hướng dẫn) Giảng viên hướng dẫn (Kí tên) MỤC LỤC Khái quát chung TurtleBot robot tảng tiêu chuẩn ROS Turtle có nguồn gốc từ robot Turtle, điều khiển ngơn ngữ lập trình máy tính giáo dục Logo vào năm 1967 Ngoài ra, nút rùa, xuất lần đầu hướng dẫn ROS, chương trình bắt chước hệ thống lệnh Logo rùa chương trình Nó sử dụng để tạo biểu tượng rùa biểu tượng ROS Chín chấm sử dụng logo ROS bắt nguồn từ mai sau rùa TurtleBot, có nguồn gốc từ Logo rùa, thiết kế để dễ dàng dạy người làm quen với ROS thông qua TurtleBot dạy ngơn ngữ lập trình máy tính sử dụng Logo Kể từ TurtleBot trở thành tảng tiêu chuẩn ROS, tảng phổ biến nhà phát triển sinh viên Có phiên mơ hình TurtleBot TurtleBot1 phát triển Tully (Quản lý tảng Open Robotics) Melonee (Giám đốc điều hành Fetch Robotics) từ Willow Garage robot nghiên cứu dựa Roomba iRobot, Create, để triển khai ROS Nó phát triển vào năm 2010 bán từ năm 2011 Năm 2012, TurtleBot2 phát triển Yujin Robot dựa robot nghiên cứu, iClebo Kobuki Vào năm 2017, TurtleBot3 phát triển với tính bổ sung chức cịn thiếu người tiền nhiệm nhu cầu người dùng TurtleBot3 sử dụng thiết bị truyền động thông minh ROBOTIS DYNAMIXEL để lái xe TurtleBot3 robot di động nhỏ, giá phải chăng, lập trình, dựa ROS để sử dụng giáo dục, nghiên cứu, sở thích tạo mẫu sản phẩm Mục tiêu TurtleBot3 giảm đáng kể kích thước tảng hạ giá thành mà hy sinh chức chất lượng nó, đồng thời cung cấp khả mở rộng TurtleBot3 tùy chỉnh theo nhiều cách khác tùy thuộc vào cách bạn tái tạo phận khí sử dụng phận tùy chọn máy tính cảm biến Ngoài ra, TurtleBot3 phát triển với SBC hiệu chi phí kích thước nhỏ, phù hợp với hệ thống nhúng mạnh mẽ, cảm biến khoảng cách 360 độ công nghệ in 3D Công nghệ cốt lõi TurtleBot3 SLAM, Điều hướng Thao tác, làm cho phù hợp với robot phục vụ nhà TurtleBot chạy thuật tốn SLAM (bản địa hóa lập đồ đồng thời) để xây dựng đồ lái xe quanh phịng bạn Ngồi ra, điều khiển từ xa từ máy tính xách tay, bàn di chuột điện thoại thông minh chạy Android TurtleBot theo dõi chân người họ phịng Ngồi ra, TurtleBot3 sử dụng trình điều khiển di động có khả điều khiển đối tượng cách gắn trình điều khiển Open MANIPULATOR Open MANIPULATOR có ưu điểm tương thích với Waffle TurtleBot3 Waffle Pi Thơng qua khả tương thích bù đắp cho thiếu tự có hồn thiện robot dịch vụ với SLAM khả điều hướng mà TurtleBot3 có 1.1 Thơng báo • 10/15/2020 ROS Foxy phát hành • 21/08/2019 ROS Dashing phát hành • 20/08/2019 Navigation2 phát hành Dashing – video demo • 02/01/2019 Thơng báo gói cho TurtleBot3 ROS2 (bao gồm Cartographer Navigation2) • 17/12/2018 ros2arduino phát hành: Thư viện Arduino để giao tiếp với ROS2 • 21/09/2018 Ứng dụng Mạng XEL + Phân phối 100 thiết bị XEL miễn phí ROScon2018 • 13/09/2018 Giới thiệu Mạng XEL: Hệ sinh thái H/W mô-đun ROS2 • 09/05/2018 Giới thiệu Hướng dẫn ROS2 • 08/08/2018 Hướng dẫn học máy • 08/08/2018 TurtleBot3 AutoRace ROS Development Studio • 08/07/2018 Hướng dẫn cho Nhiệm vụ ROS Development Studio • 18/07/2018 Khóa học trực tuyến ROS cho người bắt đầu • 07/03/2018 TurtleBot3 AutoRace với Gazebo • 25/05/2018 Thơng báo Bản cập nhật Phần mềm Turtle Bot3 (v1.0.0) Firmware (v1.2.0) • 21/05/2018 Học tập củng cố với TB3 • 16/05/2018 năm TurtleBot3: Kêu gọi cộng tác (trước ngày 23 tháng 5) • 05/11/2018 Turtle Bot3 với OpenMANIPULATOR phát hành • 27/04/2018 Các dự án TurtleBot3 tuyệt vời DỤ án BallBot • 2018/04/20 TurtleBot3 tự động đậu xe phát AR • 2018/03/29 TurtleBot3 AutoRace 2017 Tutorial & Source Codes phát hành • 17/03/2018 Dự án tơ TurtleBot3 • 15/03/2018 Mơ Gazebo • 19/02/2018 Sự kiện mắt Waffle Pi! • 02/08/2018 Lập trình ROS Robot, Sổ tay viết nhà phát triển TurtleBot3 • 02/02/2018 Cách sử dụng LDS-01 TurleBot3 • 2018/01/30 TurtleBot3 Basic demo hoạt động • 2018/01/26 dự án TurtleBot3 KAIST • 2018/01/18 TurtleBot3 phần mềm, firware cập nhật • 2018/01/17 TurtleBot3 Automatic demo đậu xe • 11/07/2017 ẢM TechCon: Đóng góp tốt cho dự án phần mềm nguồn mở • 20/09/2017 Giới thiệu TurtleBot3 AutoRace 2017 #2 • 2017/09/13 Giới thiệu TurleBot3 AutoRace 2017 #1 • 2017/07/31 Video lắp ráp Buger TurtleBot3 • 06/07/2017 TurtleBot3 theo dõi Demo • 29/05/2017 Triển lãm, họp vag hướng dẫn TurtleBot3 ICRA217 • 05/11/2017 Ưu đãi giảm giá mua sớm TurtleBot3 (đến ngày 29 tháng 5) • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • 05/08/2017 Đừng bỏ lỡ kiện TB3 05/08/2017 Bài đánh giá thông tin chi tiết Erico Guizzo Evan Ackerman 24/04/2017 Bạn bè TurtleBot3 04/12/2017 TurtleBot3 với Cảm biến khoảng cách Laser(LDS) 04/05/2017 Trình mơ Gazebo 21/03/2017 Trang web wiki thức TurtleBot3 (Thông tin kỹ thuật) 15/03/2017 TurtleBot3 với OPENCR 03/08/2017 Phần cứng TurtleBot3: Miễn phí cho bạn! 03/01/2017 Dự án ô tô TurtleBot3 2017/02/21 TurtleBot3 RoadTrain 02/01/2017 TurtleBot3 Segway 25/01/2017 Lắp ráp TurtleBot3 2017/01/17 TurtleBot3 xe tăng 2016/12/28 Ví dụ bánh xe TurtleBot3 Ommi bánh xe Mecanum 2016/12/23 Xe TurtleBot3 Autonomous 2016/12/21 Các TurtleBot3 – Hành trình Turtle với R2D2 13/12/2016 The TurtleBot3 Ví dụ #10 Cuộc hành trình Turtlebot 12/05/2016 SLAM với TurtleBot3 23/11/2016 Ví dụ điện thoại TurtleBot3 21/11/2016 Ví dụ TurtleBot3 #01 Bản dịch song song với khớp bánh xe 16/11/2016 Kiểm tra trọng tải TurtleBot3 13/10/2016 Công bố TurlerBot3  Tin tức gần 22/07/2019 10 công ty chế tạo robot hàng đầu dựa ROS năm 2019, Báo cáo Robot 12/10/2018 Hướng dẫn quà tặng Robot 2018, IEEE Spectrum 26/11/2018 AWS RonoMaker – Phát triển, Kiểm tra, Triển khai quản lý ướng dụng người máy thông minh, Blog tin tức AWS 10/01/2018 Microsoft công bố phát hành thử nghiệm ROS cho Windows 10, IEEE Spectrum 29/09/2018 “Mạng XEL: hệ sinh thái H / W mô-đun sử dụng ROS2” ROSCon2018, PDF, Video 14/09/2018 “Giới thiệu Nền tảng Robot mở: robot di động, người thao tác, hình người, bàn tay” ROSCon JP 2018, PDF, Video 07/06/2018 Video Friday: Roboy, AI Ethics Big Clapper 02/02/2018 Video Friday: Waffle Robots, Laser vs.Drone Turtle Tutorial, IEEE Spectrum 30/11/2017 Hướng dẫn quà tặng Robot 2017, IEEE Spectrum 11/07/2017 10 Robot dựa ROS đáng nhớ, Xu hướng chế tạo Robot 11/07/2017 TurtleBot3 người bạn: Rào cản nhập cảnh thấp để khám phá AI Robotics, ThomasNet 24/10/2017 Công bố người lọt vào vòng chung kết Giải thưởng sáng tạo Ảm TechCon, arm TechCon • • • • • • • • • • • • • • • • 10/13/2017 Top 10 Robot nguồn mở Linux, Linux.com 22/09/2017 “TurtleBot3 AutoRace” ROSCon2017, PDF, Video 21/09/2017 “Giới thiệu OpenMANIPULATOR; tảng robot mở đầy đủ ”trên ROSCon2017, PDF, Video 2017/07/16 Giáo viên The TurtleBot3: Tìm hiểu tảng ROS với robot này, IEEE Spectrum 2017/06/16 Turtlebot3, mã nguồn mở Ubuntu/ ROS-Based Robot Kit,Open Điện tử 14/06/2017 Mã nguồn mở TurtleBot3 Robot Kit chạy Ubuntu ROS Raspberry Pi, Linux.com 06/09/2017 TurtleBot chạy Ubuntu có vịng quay lớn với Pi Joule ghế lái, LinuxGizmos.com 31/05/2017 Turtlebot3 mắt, Ubuntu 29/05/2017 Tất nghiên cứu Robot nhất, thú vị từ ICRA 2017, IEEE Spectrum 17/05/2017 Công ty khởi nghiệp thung lũng Silicon tạo DNA Robot, Bloomberg 05/02/2017 Thực hành với TurtleBot3, Robot nhỏ mạnh mẽ để học ROS, IEEE Spectrum 28/12/2016 Kỷ niệm năm ROS, ROBOHUB 13/10/2016 Những tiến độ chế tạo người máy trở nên dễ dàng nhờ TurtleBot in 3D mắt, Ngành Cong nghiệp in 3D 10/12/2016 Robotis OSRF công bố TurtleBot3: Nhỏ hơn, rẻ hơn, Mô-đun, IEEE Spectrum 21/09/2016 “Giới thiệu Turtlebot3” ROSCon2016, PDF , Video 2013/03/26 Inventors TurtleBot Hãy cho tất thứ Robot, IEEE Spectrum 1.2 Sự kiện 1.2.1 Cạnh tranh trực tuyến RDS 1.2.1.1 Cạnh tranh trực tuyến sử dụng TurleBot3 1.2.1.2 TurleBot3 AutoRace RDS 1.2.1.3 Nhiệm vụ sử dụng TurtleBot3 OpenManipulator RDS 1.2.1.4 ROS Development Studio (RDS) ROS Development Studio (RDS) IDE trực tuyến cho phép bạn lập trình kiểm tra rơ bốt sử dụng trình duyệt web Với RDS, bạn có thể: Phát triển chương trình ROS cho robot theo cách nhanh hơn, với mơi trường IDE thiết lập bao gồm tính tự động hồn thành Kiểm tra chương trình thời gian thực rô bốt mô cung cấp Sử dụng mô cung cấp tải lên riêng bạn Xem nhanh kết lập trình bạn Gỡ lỗi cơng cụ ROS đồ họa Kiểm tra bạn phát triển RDS rơ bốt thực (nếu bạn có tất thứ sử dụng trình duyệt web mà không cần cài đặt không bị giới hạn hệ điều hành PHÁT TRIỂN CHO ROS SỬ DỤNG WINDOWS, LINUX HOẶC OSX 1.2.2 Cạnh tranh ngoại tuyến 1.2.2.1 TurleBot3 Maze Solving @FIRA Malaysia 2018 1.2.2.2 Robosot (sử dụng nhiệm vụ văn phòng) sử dụng TurleBot3 @FIRA Malaysia 2018 1.2.2.3 GdR TurtleBot Challenge 2018 (TU Darmstadt) 1.2.2.4 Cuộc thi Robot di động tự động 10 5.2 Ước tính tư ban đầu Ước tính tư ban đầu phải thực trước chạy Điều hướng trình khởi tạo tham số AMCL quan trọng Điều hướng TurtleBot3 phải định vị xác đồ với liệu cảm biến LDS chồng lên đồ hiển thị cách gọn gàng Nhấp vào 2D Pose Estimatenút menu RViz Nhấp vào đồ nơi đặt rô-bốt thực kéo mũi tên lớn màu xanh lục hướng rô-bốt đối mặt Lặp lại bước liệu cảm biến LDS phủ đồ lưu Khởi động nút điều khiển từ xa bàn phím để định vị xác rơ bốt đồ $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch Di chuyển robot qua lại chút để thu thập thông tin môi trường xung quanh thu hẹp vị trí ước tính TurtleBot3 đồ hiển thị mũi tên nhỏ màu xanh Kết thúc nút điều khiển từ xa bàn phím cách nhập Ctrl+ Cvào đầu cuối nút teleop để ngăn giá trị cmd_vel khác xuất từ nhiều nút Điều hướng 5.3 Đặt mục tiêu điều hướng Nhấp vào 2D Nav Goalnút menu RViz 48 Nhấp vào đồ để đặt điểm đến rô bốt kéo mũi tên màu xanh lục hướng rô bốt đối mặt o Mũi tên màu xanh điểm đánh dấu định điểm đến rô bốt o Gốc mũi tên x, ytọa độ điểm đến góc θđược xác định hướng mũi tên o Ngay sau x, y, θ đặt, TurtleBot3 bắt đầu di chuyển đến đích 5.4 Hướng dẫn điều chỉnh Ngăn xếp điều hướng có nhiều tham số để thay đổi hiệu suất cho robot khác Bạn biết thêm thơng tin điều chỉnh Điều hướng từ Hướng dẫn Điều chỉnh Điều hướng Cơ bản, Hướng dẫn Điều chỉnh Điều hướng ROS Kaiyu Zheng chương 11 sách Lập trình robot ROS 5.4.1 inflation_radius • Được xác định turtlebot3_navigation/param/costmap_common_param_$ {TB3_MODEL}.yaml • Tham số làm cho khu vực lạm phát khỏi trở ngại Con đường quy hoạch để khơng qua khu vực An tồn đặt giá trị lớn bán kính robot Để biết thêm thơng tin, vui lịng tham khảo chi phí đồ_2d wiki 49 5.4.2 cost_scaling_factor • Được xác định turtlebot3_navigation/param/costmap_common_param_$ {TB3_MODEL}.yaml • Hệ số nhân với giá trị chi phí Bởi tỷ lệ tương hỗ, thông số tăng lên, chi phí giảm xuống 50 Con đường tốt để robot qua tâm chướng ngại vật Đặt hệ số nhỏ để cách xa chướng ngại vật 5.4.3 max_vel_x • Được xác định turtlebot3_navigation/param/dwa_local_planner_params_$ {TB3_MODEL}.yaml • Hệ số đặt giá trị lớn vận tốc tịnh tiến 5.4.4 min_vel_x • Được xác định turtlebot3_navigation/param/dwa_local_planner_params_$ {TB3_MODEL}.yaml • Hệ số đặt giá trị nhỏ vận tốc tịnh tiến Nếu đặt âm này, rơ bốt di chuyển ngược lại 5.4.5 max_trans_vel • Được xác định turtlebot3_navigation/param/dwa_local_planner_params_$ {TB3_MODEL}.yaml • Giá trị thực vận tốc tịnh tiến cực đại Robot nhanh 5.4.6 min_trans_vel • Được xác định turtlebot3_navigation/param/dwa_local_planner_params_$ {TB3_MODEL}.yaml • Giá trị thực vận tốc tịnh tiến nhỏ Robot chậm 51 5.4.7 max_rot_vel • Được xác định turtlebot3_navigation/param/dwa_local_planner_params_$ {TB3_MODEL}.yaml • Giá trị thực vận tốc quay cực đại Robot nhanh 5.4.8 min_rot_vel • Được xác định turtlebot3_navigation/param/dwa_local_planner_params_$ {TB3_MODEL}.yaml • Giá trị thực vận tốc quay nhỏ Robot chậm 5.4.9 acc_lim_ac • Được xác định turtlebot3_navigation/param/dwa_local_planner_params_$ {TB3_MODEL}.yaml • Giá trị thực giới hạn gia tốc tịnh tiến 5.4.10 acc_lim_theta • Được xác định turtlebot3_navigation/param/dwa_local_planner_params_$ {TB3_MODEL}.yaml • Giá trị thực giới hạn gia tốc quay 5.4.11 xy_goal_ tolerance • Được xác định turtlebot3_navigation/param/dwa_local_planner_params_$ {TB3_MODEL}.yaml • Khoảng cách x, y cho phép rô bốt đạt tư mục tiêu 5.4.12 yaw_goal_tolerance • Được xác định turtlebot3_navigation/param/dwa_local_planner_params_$ {TB3_MODEL}.yaml • Góc ngáp cho phép rô bốt đạt tư mục tiêu 5.4.13 sim_time • Được xác định turtlebot3_navigation/param/dwa_local_planner_params_$ {TB3_MODEL}.yaml • Yếu tố thiết lập mô chuyển tiếp vài giây Giá trị thấp đủ thời gian để vượt qua khu vực hẹp giá trị cao khơng phép quay nhanh Bạn xem khác biệt độ dài đường màu vàng hình ảnh 52 Mơ 6.1 Mơ Gazebo 6.1.1 Cài đặt gói mơ Các TurtleBot3 mơ trọn gói địi hỏi turtlebot3 turtlebot3_msgs gói điều kiện tiên Khơng có gói điều kiện tiên này, Mô khởi chạy Vui lòng làm theo hướng dẫn Cài đặt PC bạn khơng cài đặt gói bắt buộc gói phụ thuộc $ cd ~/catkin_ws/src/ $ git clone -b kinetic-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git $ cd ~/catkin_ws && catkin_make 6.1.2 Khởi chạy giới mô Thế giới trống rỗng 53 $ export TURTLEBOT3_MODEL=burger $ roslaunch turtlebot3_gazebo turtlebot3_empty_world.launch 54 Thế giới TurtleBot $ export TURTLEBOT3_MODEL=waffle $ roslaunch turtlebot3_gazebo turtlebot3_world.launch Nhà TurtleBot3 $ export TURTLEBOT3_MODEL=waffle_pi $ roslaunch turtlebot3_gazebo turtlebot3_house.launch 55 6.1.3 Vận hành TurtleBot3 Để điều khiển từ xa TurtleBot3 bàn phím, khởi chạy nút điều khiển từ xa lệnh cửa sổ đầu cuối $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch 6.2 Mô SLAM 6.2.1 Khởi chạy giới mô Ba môi trường Gazebo chuẩn bị, để tạo đồ với SLAM, bạn nên sử dụng TurtleBot3 World TurtleBot3 House Sử dụng lệnh sau để tải môi trường Gazebo Trong hướng dẫn này, TurtleBot3 World sử dụng Thay $ {} TB3_MODEL với mơ hình TurtleBot3 bạn muốn sử dụng: burger, waffle, waffle_pi $ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_gazebo turtlebot3_world.launch 6.2.2 Chạy nút SLAM Mở thiết bị đầu cuối từ Máy tính từ xa với Ctrl+ Alt+ Tvà chạy nút SLAM Phương pháp ánh xạ SLAM sử dụng theo mặc định $ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping 6.2.3 Chạy nút điều khiển từ xa Mở thiết bị đầu cuối từ Máy tính từ xa với Ctrl+ Alt+ Tvà chạy nút điều khiển từ xa từ Máy tính từ xa $ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch Control Your TurtleBot3! Moving around: w a s d x w/x : increase/decrease linear velocity a/d : increase/decrease angular velocity space key, s : force stop CTRL-C to quit 56 6.2.4 Lưu đồ Khi đồ tạo thành công, mở thiết bị đầu cuối từ Máy tính từ xa với Ctrl+ Alt+ Tvà lưu đồ $ rosrun map_server map_saver -f ~/map 57 6.3 Mô Navigation 6.3.1 Khởi chạy giới mô Trong phần SLAM trước, TurtleBot3 World sử dụng để tạo đồ Môi trường Gazebo tương tự sử dụng cho Điều hướng Thay $ {} TB3_MODEL với mơ hình TurtleBot3 bạn muốn sử dụng: burger, waffle, waffle_pi $ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_gazebo turtlebot3_world.launch 6.3.2 Chạy nút điều hướng Mở thiết bị đầu cuối từ Máy tính từ xa với Ctrl+ Alt+ Tvà chạy nút Điều hướng $ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_navigation turtlebot3_navigation.launch map_file:=$HOME/map.yaml 6.3.3 Ước tính tư ban đầu Ước tính tư ban đầu phải thực trước chạy Điều hướng trình khởi tạo tham số AMCL quan trọng Điều hướng TurtleBot3 phải định vị xác đồ với liệu cảm biến LDS chồng lên đồ hiển thị cách gọn gàng Nhấp vào 2D Pose Estimatenút menu Rviz 58 Nhấp vào đồ nơi đặt robot thực kéo mũi tên lớn màu xanh lục hướng robot đối mặt Lặp lại bước liệu cảm biến LDS phủ đồ lưu Khởi động nút điều khiển từ xa bàn phím để định vị xác rơ bốt đồ $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch Di chuyển robot qua lại chút để thu thập thông tin môi trường xung quanh thu hẹp vị trí ước tính TurtleBot3 đồ hiển thị mũi tên nhỏ màu xanh Kết thúc nút điều khiển từ xa bàn phím cách nhập Ctrl+ Cvào đầu cuối nút teleop để ngăn giá trị cmd_vel khác xuất từ nhiều nút Điều hướng 6.3.4 Đặt mục tiêu điều hướng Nhấp vào 2D Nav Goalnút menu RViz Nhấp vào đồ để đặt điểm đến rô bốt kéo mũi tên màu xanh lục hướng rô bốt đối mặt o Mũi tên màu xanh điểm đánh dấu định điểm đến rô bốt o Gốc mũi tên x, ytọa độ điểm đến góc θđược xác định hướng mũi tên o Ngay sau x, y, θ đặt, TurtleBot3 bắt đầu di chuyển đến đích 59 6.4 Mô nút giả Để sử dụng turtlebot3_fake_node, bạn cần có turtlebot3_simulationgói siêu nhỏ Cài đặt gói hiển thị lệnh sau $ cd ~/catkin_ws/src/ $ git clone -b kinetic-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git $ cd ~/catkin_ws && catkin_make Để khởi chạy robot ảo, thực thi turtlebot3_fake.launch tệp turtlebot3_fake gói hình Đây turtlebot3_fakelà nút mơ đơn giản chạy mà khơng cần có rơ bốt thực tế Bạn chí điều khiển TurtleBot3 ảo RViz nút điều khiển từ xa $ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_fake turtlebot3_fake.launch $ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch 6.5 Mô Gazebo độc lập Cài đặt Thư viện cho Gazebo7 $ sudo apt-get install libgazebo7-dev Tải xuống mã nguồn từ Github $ git clone https://github.com/ROBOTIS-GIT/turtlebot3_gazebo_plugin Thêm đường dẫn plugin Gazebo vào bashrctệp $ nano ~/.bashrc LƯU Ý : đường dẫn rùabot3_gazebo_plugin = ~ / rùabot3_gazebo_plugin export GAZEBO_PLUGIN_PATH=$GAZEBO_PLUGIN_PATH:$ {turtlebot3_gazebo_plugin path}/build export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:$ {turtlebot3_gazebo_plugin path}/models Chế tạo Xây dựng $ cd ${turtlebot3_gazebo_plugin path} $ mkdir build 60 $ cd build $ cmake $ make Thực thi Plugin Gazebo Thay $ {} TB3_MODEL với mơ hình TurtleBot3 bạn muốn sử dụng: burger, waffle, waffle_pi $ cd ${turtlebot3_gazebo_plugin} $ gazebo worlds/turtlebot3_${TB3_MODEL}.world 61 Điều khiển từ xa bàn phím w - set linear velocity up x - set linear velocity down d - set angular velocity up a - set angular velocity down s - set all velocity to zero Lệnh Đăng ký Chủ đề o Hiển thị tất chủ đề $ gz topic -l o Đăng ký liệu quét $ gz topic -e /gazebo/default/user/turtlebot3_${TB3_MODEL}/lidar/hls_lfcd_lds/scan o Đăng ký liệu hình ảnh  Đối với Waffle $ gz topic -e /gazebo/default/user/turtlebot3_waffle/image/intel_realsense_r200/image  Đối với Waffle Pi $ gz topic -e /gazebo/default/user/turtlebot3_waffle_pi/image/raspberry_pi_cam/image Thực thi trình nghe $ cd ${turtlebot3_gazebo_plugin}/build $ /lidar_listener ${TB3_MODEL} Mở cửa sổ terminal nhập lệnh $ cd ${turtlebot3_gazebo_plugin}/build $ /image_listener ${TB3_MODEL} 62 ... PH_M2x4mm_K số số số PH_T2x6mm_K số số PH_M2x12mm_K 4 PH_M2,5x8mm_K 16 12 16 PH_M2,5x12mm_K 18 20 PH_T2,6x12mm_K 16 0 PH_M2,5x16mm_K 4 PH_M3x8mm_K 44 140 140 NUT_M2 4 NUT_M2,5 20 18 24 ... 10/15 /20 20 ROS Foxy phát hành • 21 /08 /20 19 ROS Dashing phát hành • 20 /08 /20 19 Navigation2 phát hành Dashing – video demo • 02/ 01 /20 19 Thơng báo gói cho TurtleBot3 ROS2 (bao gồm Cartographer Navigation2 )... 100 -24 0V, AC 50 / 60Hz, 1.5A @max Đầu ra: 12V DC, 5A 2. 1 .2 Kích thước khối lượng 2. 1 .2. 1 Dữ liệu TurleBot3 Burger 18 2. 1 .2. 2 Dữ liệu TurleBot3 Waffle 19 2. 1 .2. 3 Dữ liệu TurleBot3 Waffe Pi 20 2. 2

Ngày đăng: 01/12/2021, 11:27

Hình ảnh liên quan

Đội hình cảm biến mạnh - MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

i.

hình cảm biến mạnh Xem tại trang 15 của tài liệu.
Trạng thái bảng - MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

r.

ạng thái bảng Xem tại trang 17 của tài liệu.
Trạng thái bảng LED   x   1 LED  Arduino   x   1 LED nguồn x 1 - MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

r.

ạng thái bảng LED x 1 LED Arduino x 1 LED nguồn x 1 Xem tại trang 17 của tài liệu.
TurleBot3 có 3 mô hình khác nhau: Burger, Waffle và Waffle Pi. Sự khác biệt giữa 3 mô hình là động cơ, SBC (Máy tính bảng đơn) và cảm biến. - MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

urle.

Bot3 có 3 mô hình khác nhau: Burger, Waffle và Waffle Pi. Sự khác biệt giữa 3 mô hình là động cơ, SBC (Máy tính bảng đơn) và cảm biến Xem tại trang 22 của tài liệu.
2.2.1 Danh sách các bộ phận - MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

2.2.1.

Danh sách các bộ phận Xem tại trang 22 của tài liệu.
3.1.6 Cấu hình mạng - MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

3.1.6.

Cấu hình mạng Xem tại trang 28 của tài liệu.
1. Tải xuống Raspbian với hình ảnh khôi phục ROBOTIS TurtleBot3. - MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

1..

Tải xuống Raspbian với hình ảnh khôi phục ROBOTIS TurtleBot3 Xem tại trang 29 của tài liệu.
5. Tải giao diện cấu hình Raspberry Pi. $ sudo raspi-config - MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

5..

Tải giao diện cấu hình Raspberry Pi. $ sudo raspi-config Xem tại trang 30 của tài liệu.
Hình dưới đây cho thấy kết quả của việc tạo một bản đồ lớn bằng cách sử dụng TurtleBot3 - MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

Hình d.

ưới đây cho thấy kết quả của việc tạo một bản đồ lớn bằng cách sử dụng TurtleBot3 Xem tại trang 46 của tài liệu.
Thay thế $ {} TB3_MODEL với mô hình TurtleBot3 bạn muốn sử dụng: burger, waffle, waffle_pi. - MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

hay.

thế $ {} TB3_MODEL với mô hình TurtleBot3 bạn muốn sử dụng: burger, waffle, waffle_pi Xem tại trang 58 của tài liệu.
5. Thực thi Plugin Gazebo. Thay thế $ {} TB3_MODEL với mô hình TurtleBot3 bạn muốn sử dụng: burger, waffle, waffle_pi. - MÔ PHỎNG SLAM, NAVIGATION TRÊN ROS

5..

Thực thi Plugin Gazebo. Thay thế $ {} TB3_MODEL với mô hình TurtleBot3 bạn muốn sử dụng: burger, waffle, waffle_pi Xem tại trang 61 của tài liệu.

Từ khóa liên quan

Mục lục

  • 1. Khái quát chung

    • 1.1 Thông báo

    • 1.2 Sự kiện

      • 1.2.1 Cạnh tranh trực tuyến trên RDS

        • 1.2.1.1 Cạnh tranh trực tuyến sử dụng TurleBot3

        • 1.2.1.2 TurleBot3 AutoRace trên RDS

        • 1.2.1.3 Nhiệm vụ sử dụng TurtleBot3 và OpenManipulator trên RDS

        • 1.2.1.4 ROS Development Studio (RDS)

        • 1.2.2 Cạnh tranh ngoại tuyến

          • 1.2.2.1 TurleBot3 Maze Solving @FIRA Malaysia 2018

          • 1.2.2.2 Robosot (sử dụng nhiệm vụ văn phòng) sử dụng TurleBot3 @FIRA Malaysia 2018

          • 1.2.2.3 GdR TurtleBot Challenge 2018 (TU Darmstadt)

          • 1.2.2.4 Cuộc thi Robot di động tự động

          • 1.2.3 Thử thách AutoRace RBIZ

            • 1.2.3.1 Thử thách AutoRace RBIZ 2017

            • 1.2.3.2 Thử thách AutoRace RBIZ 2018

            • 1.2.3.3 Thử thách AutoRace RBIZ 2017

            • 1.2.3.4 Teaser TurtleBot3 AutoRace 2017

            • 1.2.3.5 Những người thách thức TurtleBot3 AutoRace 2017

            • 1.2.3.6 Thử thách AutoRace RBIZ 2018

            • 2. Tính năng

              • 2.1 Thông số kỹ thuật

                • 2.1.1 Thông số kỹ thuật phần cứng

                • 2.1.2 Kích thước và khối lượng

                  • 2.1.2.1 Dữ liệu của TurleBot3 Burger

                  • 2.1.2.2 Dữ liệu của TurleBot3 Waffle

                  • 2.1.2.3 Dữ liệu của TurleBot3 Waffe Pi

                  • 2.2 Các thành phần

                    • 2.2.1 Danh sách các bộ phận

Tài liệu cùng người dùng

Tài liệu liên quan