# Astar and DWA with RRT Exploration **Repository Path**: ahao1q97/Astar-and-DWA-with-RRT-Exploration ## Basic Information - **Project Name**: Astar and DWA with RRT Exploration - **Description**: No description available - **Primary Language**: C++ - **License**: MulanPSL-1.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 1 - **Created**: 2020-08-13 - **Last Updated**: 2024-12-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 路径规划(Astar and DWA with RRT Exploration) [![standard-readme compliant](https://img.shields.io/badge/readme%20style-standard-brightgreen.svg?style=flat-square)](https://gitee.com/ahao1q97/Astar-and-DWA-with-RRT-Exploration) 基于Ros平台的自动探索 库中的代码是在重庆大学(2020)的机器人与智能控制实验室(Robot and Intelligent Control Lab, RICL)完成项目的结果。 该项目的目的是为地下环境下的二轮小车,自动探索一个生成一个地图,并且,按照该地图的实现路径规划。该算法使用安装在车辆顶部的3D激光雷达,探索生成map,二进制障碍地图作为输入,并通过A*与DWA进行路径规划。该算法是使用c++开发的,因为实时需要与ROS结合,以确保模块化和可移植性,并使用RViz作为可视化/仿真环境。 本仓库包含以下内容: 1. 用于全局规划的Astar算法[全局](https://gitee.com/ahao1q97/Astar-and-DWA-with-RRT-Exploration/tree/master/astar)。 2. 用于局部避障的DWA算法[局部](https://gitee.com/ahao1q97/Astar-and-DWA-with-RRT-Exploration/tree/master/dwa_planner)。 3. 用于自动探索的节点[rrt_exploration](https://gitee.com/ahao1q97/Astar-and-DWA-with-RRT-Exploration/tree/master/fake_robot_pkg)。 ## 内容列表 - [背景](#背景) - [安装](#安装) - [使用说明](#使用说明) - [示例](#示例) - [相关仓库](#相关仓库) - [维护者](#维护者) - [如何贡献](#如何贡献) - [使用许可](#使用许可) ## 背景 `地图探索` 最开始依赖于 [move_base](https://github.com/ros-planning/navigation) ,但是由于move_base项目过于庞杂,且实验室需要自行开发基于Ros(spec.md)平台的规划算法,于是,创建了本次项目。 > 通过在实时地图中,我保留的move_base中,探索的几个节点,并且将自写的astar和dwa与其结合,完成地图探索的部分工作。获得map后,路径规划也就水到渠成。值得说明的是,这个全局规划是基于opencv的地图处理,会有一些bug,建议参考[全局](https://gitee.com/ahao1q97/Astar-and-Dwa-with-bezier-curve-path/tree/master/astar_planner)。另外,地图处理是基于cost 2d,后续可以自己修改替代。该项目为[Robot and Intelligent Control Lab, RICL,CQU](https://gitee.com/CQU_RISL/dashboard)的研究成果。 ## 安装 这个项目使用 [turtlebot3](https://www.ncnynl.com/archives/201707/1817.html) ,[gazebo](http://gazebosim.org/) ,[cartographer](https://google-cartographer.readthedocs.io/en/latest/),[move_base](https://github.com/ros-planning/navigation)。请确保你本地安装了它们。 ```sh $ sudo apt-get install ros-kinetic-joy ros-kinetic-teleop-twist-joy ros-kinetic-teleop-twist-keyboard ros-kinetic-laser-proc ros-kinetic-rgbd-launch ros-kinetic-depthimage-to-laserscan ros-kinetic-rosserial-arduino ros-kinetic-rosserial-python ros-kinetic-rosserial-server ros-kinetic-rosserial-client ros-kinetic-rosserial-msgs ros-kinetic-amcl ros-kinetic-map-server ros-kinetic-move-base ros-kinetic-urdf ros-kinetic-xacro ros-kinetic-compressed-image-transport ros-kinetic-rqt-image-view ros-kinetic-gmapping ros-kinetic-navigation ros-kinetic-interactive-markers $ mkdir -p ~/catkin_ws/src/ && cd ~/catkin_ws/src/ $ git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git $ git clone https://github.com/ROBOTIS-GIT/turtlebot3.git $ cd ~/catkin_ws && catkin_make $ echo "export TURTLEBOT3_MODEL=burger" >> ~/.bashrc $ echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc ``` ## 使用说明 你可以在gazebo仿真环境中,完成turlebot3小车的地图探索。 ```sh $ roslaunch turtlebot3_gazebo turtlebot3_house.launch $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=cartographer $ roslaunch mrobot_navigation gmapping_demo.launch $ roslaunch dwa_planner local_dwa_Astar.launch $ roslaunch rrt_exploration single.launch ``` ## 相关仓库 - [RIS-Group](https://gitee.com/RICS-Group) — 💌 基于Webots仿真平台的机器人项目。 ## 维护者 [@WenHao Fu](https://gitee.com/ahao1q9) ## 如何贡献 非常欢迎你关于路径规划的讨论[提一个 Issue](https://gitee.com/ahao1q97/Astar-and-DWA-with-RRT-Exploration/issues/new) 或者提交一个 Pull Request。 ### 贡献者 这个项目的存在要感谢所有的贡献者。 ## 使用许可 [CQU](LICENSE) © Richard Littauer