#ROS调包侠#rrt

安装

安装依赖软件

melodic版本

sudo apt install python-sklearn

noetic版本

sudo apt install python3-sklearn

获取 rrt_exploration源码

由于rrt_exploration原作者所提供的代码在noetic版本下运行会有一些问题,所以我对源码做了一些修改

原作者wiki地址:rrt_exploration-ROS Wiki

cd ~/catkin_ws/src
git clone https://gitee.com/bingda-robot/rrt_exploration.git

获取仿真环境和SLAM及导航源码

cd ~/catkin_ws/src
git clone https://gitee.com/bingda-robot/robot_navigation.git
git clone https://gitee.com/bingda-robot/robot_description

编译工作空间

cd ~/catkin_ws && catkin_make

配置环境变量

由于robot_navigation中支持多款机器人,为了使仿真环境中机器人和所使用的导航参数一致,需要设置环境变量

echo "export BASE_TYPE=NanoRobot" >> ~/.bashrc
source ~/.bashrc

仿真环境中运行

运行仿真环境和建图导航

roslaunch robot_description simulation.launch
roslaunch robot_navigation gmapping.launch simulation:=true
roslaunch robot_navigation move_base.launch simulation:=true planner:=teb

打开rviz

roslaunch rrt_exploration rrt_rviz.launch

检查SLAM正常运行,并已经建立部分地图。发布一个目标点,验证导航功能正常运行

运行rrt_exploration

roslaunch rrt_exploration simple.launch

在rivz中点击Publish Point按钮,一次在地图上点击左上、左下、右下和右上四个点设置地图边界,然后点击第五个点设置起始搜索方向。

参数调整

rrt中参数调整

rrt_exploration – ROS Wiki

导航参数调整

2-2-3.lidar文件夹和robot_navigation功能包代码解析_哔哩哔哩_bilibili

使用冰达机器人运行
启动机器人的SLAM建图,并设置局部路径规划器为TEB

roslaunch robot_navigation robot_slam_laser.launch planner:=teb

运行rrt_exploration

和仿真中相同,rrt_exploration功能包可以运行在机器人端或PC端。后续操作和仿真环境中一致。