Skip to content

About

SCAN-Planner: Spatial Collision-Aware Local planning for Route-Guided Long-Range Quadruped Navigation

Resources

Stars

0 stars

Watchers

0 watching

Forks

 
 

Latest commit

 

History

16 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SCAN-Planner

Spatial Collision-Aware Local Planning for Route-Guided
Long-Range Quadruped Navigation

Han Zheng, Zhe Chen, Yiwen Fu, Ming Yang, Tong Qin*

Paper Video Project Page

SCAN-Planner is a spatial collision-aware local planner, providing a robust low-level planning foundation for various upper-level tasks, such as autonomous exploration and vision-language navigation.

🧭 System Overview

📢 News

  • [Jul. 29, 2026]: CAD files for our sensor layout are now available.
  • [Jul. 13, 2026]: ROS2 support is now available from community! Thanks to xiaoqi371317 for contributing the ROS2 interface. Check out the ros2-community branch.
  • [Jul. 9, 2026]: Release the main algorithm of SCAN-Planner.

🤖 Demonstrations

More videos and interactive demonstrations are available on the project page.

🛠️ Installation

Tested on Ubuntu 20.04 with ROS Noetic

Step 1. Install Armadillo, which is required by simulator.

sudo apt-get install libarmadillo-dev

Step 2. Clone our repository and compile.

git clone https://github.com/wuyi2121/SCAN-Planner.git
cd SCAN-Planner
catkin_make

🚀 Quick Start

Launch RViz in one terminal:

source devel/setup.bash && roslaunch scan_planner rviz.launch

Launch the algorithm in another terminal:

source devel/setup.bash && roslaunch scan_planner run.launch

🔧 Important Functions

The main launch options are defined in run.launch:

  • is_real_world: set to true when running with real robot topics (body_pose_topic and sensor_pose_topic), and false when testing with the simulator.

  • navi_mode: selects the navigation interface:

    • 1: interactive 2D Nav Goal mode
    • 2: keypoint-based multi-floor navigation; see tools/README.md
    • 3: reference-path tracking with local obstacle avoidance; see TravExplorer

    Note: If the robot cannot climb stairs, increase the z height of body, keypoints or initial path.

  • sensor_type: select the sensing input. Use lidar for point-cloud sensors such as MID360, and depth for depth cameras such as RealSense D435.

Other algorithm-related parameters are listed in advanced_param.xml. The default settings are tuned for Unitree Go2 and should be adjusted when using a different robot platform.

⚙️ Optional

local_sensing provides CPU and GPU implementations: pcl_render_node and opengl_render_node. The CPU version is built by default for better compatibility. To build the GPU backend, first install the dependencies:

sudo apt-get install libglew-dev libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev

Then enable the GPU build option and compile:

catkin_make -DUSE_GPU=ON

The use_gpu option in simulator.xml selects which sensing node to launch.

🔩 Hardware

To support the robotics community and enhance the reproducibility of our work, we provide CAD files for our sensor layout, available in ".SLDPRT" and ".STL" formats. These files can be opened and edited using Solidworks.

🤓 Acknowledgements

We would like to express our gratitude to the following projects, which have provided significant support and inspiration for our work:

  • Our planner supports various high-level tasks, such as a cross-floor embodied exploration project TravExplorer.

  • Our localization module is based on Elevator-LIO, a robust multi-floor extension of FAST-LIO2.

  • Our framework builds on EGO-Planner, which achieves impressive performance in quadrotor local planning.

  • Our map representation is inspired by ROG-Map, a high-performance robot-centric mapping framework.

  • Our simulator is adapted from MARSIM, with map generation from Mockamap and trotting motion from Leg-KILO.

📚 Citation

@article{zheng2026scan,
  title={SCAN-Planner: Spatial Collision-Aware Local Planning for Route-Guided Long-Range Quadruped Navigation},
  author={Zheng, Han and Chen, Zhe and Fu, Yiwen and Yang, Ming and Qin, Tong},
  journal={arXiv preprint arXiv:2606.19555},
  year={2026}
}

⚖️ License

This project is licensed under the Apache License 2.0. See LICENSE for details.

About

SCAN-Planner: Spatial Collision-Aware Local planning for Route-Guided Long-Range Quadruped Navigation

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages