Skip to content

ntnu-arl/composite_cbf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Composite CBF for Collision Avoidance

This repository contains the ROS implementation of the Composite CBF Safety Filter for Collision Avoidance for Multirotors.
It computes the optimally minimal modifications to an acceleration setpoint that prevent collisions based on velocity estimates and depth measurements.

See our paper video on YouTube!

The filter operates using real-time onboard range measurements and velocity estimation. Specifically, the filter operates on a downsampled point cloud from the onboard sensor mounted on the robot, including, e.g., Intel RealSense D455 and alike, small-scale Time-of-Flight sensors, or LiDARs. We release a point cloud selector node for generic depth / range sensors on this dedicated repo.

The node implements the unconstrained-FoV case. It relies on computing an analytical solution to the underlying CBF-QP, which is computationally efficient.

We also release an embedded implementation for PX4.

Installation

Requirements

  • ROS 2 (Tested on Humble)
  • mavros-msgs
  • Eigen3

Installation

Config

The yaml config files are loaded as ROS2 parameters in the node.

The CBF tuning is presented in our paper, Section V.E.

We report here the table detailing the config files:

Parameter Range Effect when increasing
epsilon >0 Larger avoidance radius
kappa [10, 100] Less smooth approximation
gamma [10, 100] Reacts to farther obstacles
alpha [1, 3] Increased filter sensitivity
pole_0 [-3, -1] Damped response
lp_gain_out [0, 1] Lesser acc. smoothing
max_acc_xy >0 Larger maximum output xy acc.
max_acc_z >0 Larger maximum output z acc.
obs_to >0 Longer timeout for old input
cmd_to >0 Longer timeout for old ref.

Cite

If you use this work in your research, please cite the following publication:

@INPROCEEDINGS{harms2025safe,
  AUTHOR={Marvin Harms and Martin Jacquet and Kostas Alexis},
  TITLE={Safe Quadrotor Navigation using Composite Control Barrier Functions},
  BOOKTITLE={2025 IEEE International Conference on Robotics and Automation (ICRA)},
  YEAR={2025},
  URL={https://arxiv.org/abs/2502.04101},
}

Or, if you use our embedded implementation, please cite:

@INPROCEEDINGS{misyats2025embedded,
  AUTHOR={Misyats, Nazar and Harms, Marvin and Nissov, Morten and Jacquet, Martin and Alexis, Kostas},
  TITLE={Embedded Safe Reactive Navigation for Multirotors Systems using Control Barrier Functions},
  BOOKTITLE={2025 International Conference on Unmanned Aircraft Systems (ICUAS)},
  pages={697--704},
  YEAR={2025},
  URL={https://arxiv.org/abs/2504.15850},
}

Acknowledgements

This work was supported by the European Commission Horizon Europe grants DIGIFOREST (EC 101070405) and SPEAR (EC 101119774).

Contact

About

ROS implementation of the Composite CBF safety filter

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •