gazebo simulation trajectory planning + tracking (not under the move_base framework)

Taking Tianbot as an example, the open source code is as follows:

https://github.com/tianbot/tianbot_mini

GitHub - tianbot/abc_swarm: Ant Bee Cooperative Swarm, indicating air-ground cooperation. This repository is for Tianbot Mini and RoboMaster TT swarm kit.
 

1. Load the robot in the simulation map

roslaunch abc_swarm demo_sim_leader_follower.launch //This step is to load three cars in the gazebo simulation map

2. Turn on trajectory planning

rosrun abc_swarm path_planning.py

This step is to plan the trajectory of the pilot car. By using the target point in rviz, use the three-spline curve to plan the trajectory

By subscribing to /clicked_point, way_points are published to generate a global_plan for path_tracking calls

3. Perform trajectory tracking

roslaunch abc_swarm path_tracking.launch robot_name:=tbmn_01
This step is to track the previously planned trajectory (path) for the pilot car, using the pure pursuit algorithm

Publish cmd_vel by calling global_plan to calculate and generate corresponding angles, etc.

For this kind of motion framework, it is separated from move_base. In the past, the move_base function package was used for navigation, and the global path planning and local path planning were enabled by performing it under the framework of move_base.

But in the process of writing this kind of motion framework, you should pay attention to the problem of namespace, pay attention to which namespace cmd_vel is under, and which namespace the published global_plan is under, so as to prevent the topic from not being subscribed during the trajectory tracking process.

Guess you like

Origin blog.csdn.net/weixin_62705892/article/details/129336099