← all repositories
Zhefan-Xu/CERLAB-UAV-Autonomy

A CMU drone stack built for messy, dynamic airspace

This framework wires together perception, mapping, planning, and control so a UAV can navigate, explore, or inspect in both Gazebo and real PX4 flight.

CERLAB-UAV-Autonomy
Not currently ranked — collecting fresh signals.
star history

What it does CERLAB’s framework is a full-stack autonomy suite for unmanned aerial vehicles. It bundles a lightweight Gazebo simulator, 3D mapping, global and local trajectory planners, a tracking controller, and an onboard detector for dynamic obstacles into a set of ROS packages. The stack targets three missions: navigating to a goal while avoiding collisions, exploring unknown environments, and inspecting targets with zig-zag trajectories. Everything is built to run against either a simulated drone or a real PX4-based airframe.

The interesting bit Most academic UAV repositories ship a planner and call it a day; this one ships the entire loop from sensor input to motor command, including a time-optimizer and dynamic-object tracker backed by recent ICRA and RA-L papers. The authors explicitly distinguish between a lightweight simulation branch and a PX4 branch that replicates real-flight behavior, which suggests they actually debugged the sim-to-real gap instead of ignoring it.

Key highlights

  • Modular architecture with nine distinct packages, from uav_simulator and map_manager to trajectory_planner and tracking_controller.
  • Handles dynamic obstacles, not just static maps, via the onboard_detector module.
  • Supports both Gazebo/ROS simulation and PX4 hardware-in-the-loop and real flight.
  • Published algorithms behind the stack: heuristic-based exploration, optimal time allocation, and RGB-D dynamic-object tracking.
  • Targets Ubuntu 18.04/20.04 with ROS Melodic/Noetic.

Caveats

  • Requires manually switching the autonomous_flight submodule between simulation and px4 branches and rebuilding, which is a friction point the README openly acknowledges.
  • Real flight demands an external SLAM/VIO system and depth camera; those are inputs, not included modules.
  • Locked to ROS1 (Melodic/Noetic); there is no mention of ROS2 or newer Ubuntu releases.

Verdict Robotics researchers and UAV builders who need a proven, end-to-end PX4 autonomy pipeline with dynamic obstacle support should take a close look. If you are looking for a ROS2-native stack or a plug-and-play commercial autopilot, this is not your framework.

Frequently asked

What is Zhefan-Xu/CERLAB-UAV-Autonomy?
This framework wires together perception, mapping, planning, and control so a UAV can navigate, explore, or inspect in both Gazebo and real PX4 flight.
Is CERLAB-UAV-Autonomy open source?
Yes — Zhefan-Xu/CERLAB-UAV-Autonomy is open source, released under the MIT license.
What language is CERLAB-UAV-Autonomy written in?
Zhefan-Xu/CERLAB-UAV-Autonomy is primarily written in C++.
How popular is CERLAB-UAV-Autonomy?
Zhefan-Xu/CERLAB-UAV-Autonomy has 851 stars on GitHub.
Where can I find CERLAB-UAV-Autonomy?
Zhefan-Xu/CERLAB-UAV-Autonomy is on GitHub at https://github.com/Zhefan-Xu/CERLAB-UAV-Autonomy.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.