Skip to content

jtorde/uav_trajectory_optimizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Trajectory Optimizer for UAVs

Two videos of the trajectories generated by these solvers are available here:

Video 1 Video 2
ICRA 2019: Real-Time Planning with Multi-Fidelity Models for Agile Flights in Unkonwn Environments Trajectory Generation for UAVs using CVXGEN

Citation

When using this code, please cite the paper Real-Time Planning with Multi-Fidelity Models for Agile Flights in Unknown Environments (ICRA 2019) (pdf, video):

@inproceedings{tordesillas2019real,
  title={Real-time planning with multi-fidelity models for agile flights in unknown environments},
  author={Tordesillas, Jesus and Lopez, Brett T and Carter, John and Ware, John and How, Jonathan P},
  booktitle={2019 International Conference on Robotics and Automation (ICRA)},
  pages={725--731},
  year={2019},
  organization={IEEE}
}

Introduction:

This is a highly efficient solver to generate trajectories for UAVs. It's basically a C++ wrapper for the C code generated by CVXGEN to solve the optimization problem to generate trajectories for UAVs.

It includes three solvers to solve for:

  • Velocity-Controlled Trajectories: State is position.
  • Acceleration-Controlled Trajectories: States are position and velocity.
  • Jerk-Controlled Trajectories: States are position, velocity and acceleration,

Instructions:

Clone this repository:

git clone https://github.com/jtorde/uav_trajectory_optimizer.git

Now compile the cvxgen code: By default, the compiler will use the option -Os for the CVXGEN code. If you want the maximum performance, change it to -O3 in the Makefile inside the folders cvxgen_*

cd uav_trajectory_optimizer
chmod +x setup.sh 
./setup.sh

Then compile the c++ wrapper:

catkin config -DCMAKE_BUILD_TYPE=Release
catkin build

And finally execute the example:

./build/cvx/cvx_exec

License

BSD 3-Clause, see License file attached

About

Efficient C++ solver to generate trajectories for UAVs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages