Skip to main content

EgoPlanner

Source: https://github.com/ZJU-FAST-Lab/ego-planner-swarm/tree/ros2_version

1. Required

  • vtk (a dependency library for installing PCL, Qt needs to be checked when compiling)
  • PCL
  • pcl_ros

2.

Maybe some of my publish and subscribe settings are not written correctly. Using the default FastDDS of ROS2 will cause the program to run very slowly. I haven't found the reason yet, so please change DDS to cyclonedds as follows

2.1 Installing

sudo apt install ros-humble-rmw-cyclonedds-cpp

2.2 Modify the default

echo "export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp" >> ~/.bashrc
source ~/.bashrc

2.3 Check if the modification

ros2 doctor --report | grep "RMW middleware"

If the output shows rmw_cyclonedds_cpp, it means the modification was successful.

3. Code

3.1 Running

ros2 launch ego_planner rviz.launch.py

3.2 Running the planning

Open a new terminal and enter the following command

  • Standalone
ros2 launch ego_planner single_run_in_sim.launch.py
  • swarm
ros2 launch ego_planner swarm.launch.py
  • large swarm
ros2 launch ego_planner swarm_large.launch.py
  • Additional parameters to choose the map generation mode and whether to take dynamics into account
    • use_mockamap: map generation method, the default is False, False uses Random Forest, True uses mockamap
    • use_dynamic: Whether to consider dynamics, the default is False, False does not consider, True consider
ros2 launch ego_planner single_run_in_sim.launch.py use_mockamap:=True use_dynamic:=False

More information

  1. ego-planner official
  2. Configure ego-planner on the ARM architecture onboard computer
  3. Compiling and running ego-swarm