Skip to content

hku-mars/SUPER

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SUPER: Safety-assured High-speed Navigation for MAVs

Science Robotics' 25
Yunfan REN, Fangcheng Zhu, Guozheng Lu, Yixi Cai, Longji Yin, Fanze Kong, Jiarong Lin, Nan Chen, and Fu Zhang


HKU MaRS Lab

arxiv Bilibili Youtube

Updates

  • Jan. 29, 2025 - The preview version of SUPER's planning module, supporting both ROS1 and ROS2, is now available! Try it out, and we welcome any issues or contributions.
  • Jan. 29, 2025 - The paper of SUPER is now featured on the official website of Science Robotics.
  • Dec. 12, 2024 - 🎉 Our paper has been accepted by Science Robotics!

Our paper is also aviliable at here. If our repository supports your academic projects, please cite our work. Thank you!

@article{ren2025super,
  title={Safety-assured high-speed navigation for MAVs},
  author={Ren, Yunfan and Zhu, Fangcheng and Lu, Guozheng and Cai, Yixi and Yin, Longji and Kong, Fanze and Lin, Jiarong and Chen, Nan and Zhang, Fu}
  journal={Science Robotics},
  volume={10},
  number={98},
  pages={eado6187},
  year={2025},
  doi = {10.1126/scirobotics.ado6187},
  publisher={American Association for the Advancement of Science}
}

@article{lu2025autonomous,
  title={Autonomous Tail-Sitter Flights in Unknown Environments},
  author={Lu, Guozheng and Ren, Yunfan and Zhu, Fangcheng and Li, Haotian and Xue, Ruize and Cai, Yixi and Lyu, Ximin and Zhang, Fu},
  journal={IEEE Transactions on Robotics},
  year={2025},
  publisher={IEEE}
}

@inproceedings{ren2024rog,
  title={Rog-map: An efficient robocentric occupancy grid map for large-scene and high-resolution lidar-based motion planning},
  author={Ren, Yunfan and Cai, Yixi and Zhu, Fangcheng and Liang, Siqi and Zhang, Fu},
  booktitle={2024 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
  pages={8119--8125},
  year={2024},
  organization={IEEE}
}

1 Highlights

1.1 Autonomous Navigation in Challenging Environments

Video Demo

1.2 Applications: Object Tracking & Autonomous Exploration

SUPER has been successfully deployed in various applications, including large-scale autonomous exploration in an ongoing project by @jackykongfz and @ZbyLGsc from STAR Lab, among others, as well as object tracking under both day and night conditions.

exp

⬆️ This segment is from an unpublished work by Kong [@jackykongfz ] et al., conducted in collaboration with STAR Lab, using SUPER.

tracking

1.3 Supported Projects

1.3.1 Autonomous Tail-Sitter (TRO '25)

Building on SUPER, a similar planning system has been successfully validated in Autonomous Navigation for Tail-Sitter UAVs by @genegzl et al.

tailsitter

1.3.2 FAST-LIVO2 (TRO '24)

SUPER serves as the flight platform and navigation system in the video demonstration of FAST-LIVO2: Fast, Direct LiDAR-Inertial-Visual Odometry by @xuankuzcr et al.

image-20250130031404057

2 Quick Start

2.1 Installation

Install dependencies

# for MARSIM example
sudo apt-get install libglfw3-dev libglew-dev
# Eigen [version testd: 3.3.7-2] and soft link 
sudo apt-get install libeigen3-dev       
sudo ln -s /usr/include/eigen3/Eigen /usr/include/Eigen
# dw for backward cpp
sudo apt-get install libdw-dev

Before building the code, select the appropriate ROS version:

# Use ROS1-noetic
bash ${PATH-TO-SUPER}/SUPER/scripts/select_ros_version.sh ROS1
# Use ROS2
bash ${PATH-TO-SUPER}/SUPER/scripts/select_ros_version.sh ROS2

Tested Environments:

  • Ubuntu 20.04 + ROS1 Noetic
  • Ubuntu 20.04 + ROS2 foxy
  • ...

Currently, ROS1 Noetic serves as the Tier 1 supported platform for SUPER. The ROS2 version is still under development and may be unstable, with some issues such as imperfect visualization. We are actively working on improvements.

Known Build issues

  • ...

2.2 ROS1 (Noetic) Installation

mkdir -p super_ws/src && cd super_ws/src
git clone https://github.com/hku-mars/SUPER.git
cd ..
catkin_make -DBUILD_TYPE=Release

To test, use one of the following commands:

  1. High-Speed Navigation
cd ${PATH-TO-WS}
source devel/setup.bash
roslaunch mission_planner benchmark_high_speed.launch
  1. Agile Flight in Dense Environments
cd ${PATH-TO-WS}
source devel/setup.bash
roslaunch mission_planner benchmark_dense.launch
  1. Click and Go Demo
roslaunch mission_planner click_demo.launch 

In the click demo, press G to enable the 2D Goal Pose plugin, then click a position in RViz to set the goal.

2.3 ROS2

mkdir -p super_ws/src && cd super_ws/src
git clone https://github.com/hku-mars/SUPER.git
cd ..
colcon build --symlink-install
# add to debug:  --event-handlers console_direct+ 

To test, run:

  1. High-speed Navigation
cd ${PATH-TO-WS}
source install/local_setup.bash
ros2 launch mission_planner banchmark_high_speed.launch.py
  1. Agile flights in dense enviroment
cd ${PATH-TO-WS}
source install/local_setup.bash
ros2 launch mission_planner benchmark_dense.launch.py     
  1. Click demo
ros2 launch mission_planner click_demo.launch.py

2.4 Use Your Own Map

SUPER allows users to load their own .pcd maps as simulation environments. To do so:

  1. Place your .pcd file in: ./mars_uav_sim/perfect_drone_sim/pcd/
  2. Modify the pcd_name parameter in the corresponding YAML file located at: ./mars_uav_sim/perfect_drone_sim/config

This enables seamless integration of custom maps for simulation.

2.5 Logging System

SUPER includes a built-in logging system that records each run automatically. Logs are saved in:

After stopping the program with Ctrl + C, the latest log will be saved. Users can evaluate trajectory quality by running:

# Install dependencies
pip3 install numpy pandas matplotlib

# Plot the command log
python3 plotCmdLog.py

For advanced usage, refer to:

We are actively working on improving the logging system, and updates will be available soon!

2.6 Tuning

To maximize performance, parameter tuning is crucial. The current version of SUPER has a large number of parameters (maybe TOOOO MUCH), requiring careful adjustment. Users can refer to the provided examples for guidance. We plan to provide detailed tuning instructions soon. In the meantime, feedback and issue reports are welcome.

3 TODO

  • Add a demo for autonomous exploration (SUPER is well-suited as a local planner for point-to-point navigation).

  • Provide examples for using standalone tools in SUPER, such as:

    • CIRI - Generates safe flight corridors in C-space.

    • ROG-Map - An efficient occupancy grid map supporting both ROS1 and ROS2.

  • Introduce the hardware components of SUPER.

  • Detail the control module of SUPER.

  • Develop a tutorial.

4. Acknowledgments

SUPER is built upon several outstanding open-source projects. We extend our gratitude to the developers of the following repositories:

  • FAST_LIO, Swarm-LIO2 and LiDAR_IMU_Init for their excellent localization solutions.

  • ROG-Map - A high-performance mapping framework that influenced our approach to map representation and optimization.

  • MARSIM - A simulation environment that played a key role in testing and evaluating our algorithms in virtual scenarios.

  • GCOPTER – A valuable resource that efficiently performs differentiable trajectory optimization and serves as the foundation of our trajectory optimization method.

    FIRI – An extremely efficient safe flight corridor generation method upon which our CIRI is built.

  • FASTER - Introduces the initial concept of a two-trajectory optimization framework.

  • DecompUtil - A convex decomposition tool that was instrumental in implementing our algorithms.

  • Mockamap - A simple ROS-based map generator that assisted in our development and testing.

  • Nxt-FC – A compact yet powerful hardware platform for the PX4 flight controller.

We sincerely appreciate the efforts of these communities in advancing robotics research.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages