The ROS package for recovery behavior of mobile robots
- Ubuntu 20.04
- ROS Noetic
# clone repository
cd /path/to/your/catkin_ws/src
git clone https://github.com/ToshikiNakamura0412/recovery_behavior_ros.git
git clone https://github.com/ToshikiNakamura0412/amr_navigation_utils_ros.git
# build
cd /path/to/your/catkin_ws
rosdep install -riy --from-paths src --rosdistro noetic # Install dependencies
catkin build recovery_behavior_ros -DCMAKE_BUILD_TYPE=Release # Release build is recommended
roslaunch recovery_behavior_ros recovery_behavior.launch
# clone repository
cd /path/to/your/catkin_ws/src
git clone https://github.com/ToshikiNakamura0412/emcl_ros.git
git clone https://github.com/ToshikiNakamura0412/scan_to_pcl_ros.git
git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git
git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
# build
cd /path/to/your/catkin_ws
rosdep install -riy --from-paths src --rosdistro noetic
catkin build -DCMAKE_BUILD_TYPE=Release
# run demo
## terminal 1
export TURTLEBOT3_MODEL=burger
roslaunch recovery_behavior_ros test.launch
## terminal 2
rosservice call /recovery_behavior/trigger "{}"
- /recovery/cmd_vel (
geometry_msgs/Twist
)- Command velocity of recovery mode
- ~<name>/footprint (
geometry_msgs/PolygonStamped
)- Footprint of the robot
- /cloud (
sensor_msgs/PointCloud2
)- Input pointcloud
- ~<name>/trigger
- Trigger of recovery behavior
- Recovery behavior
- ~<name>/hz (int, default:
10
):
The rate of cmd_vel publishing - ~<name>/sim_time_samples (int, default:
10
):
The number of samples to use when simulating trajectories - ~<name>/vel_samples (int, default:
3
):
The number of samples to use when searching for the best linear and rotational velocities - ~<name>/move_time (float, default:
2.0
[s]):
The amount of time to backward simulate trajectories in the future - ~<name>/min_vel_x (float, default:
-0.2
[m/s]):
The minimum x velocity of the robot - ~<name>/max_vel_theta (float, default:
0.4
[rad/s]):
The maximum rotational velocity of the robot
- ~<name>/hz (int, default:
- Footprint