项目介绍

yrlu/quadrotor 是一个托管在 GitHub 上的开源项目,主要使用 MATLAB 编写,目前获得 1.1k 个 Star、301 次 Fork。

仓库全名
yrlu/quadrotor
Star 数
1.1k
Fork 数
301
未关闭 Issue
10

README 摘要

Quadrotor Control, Path Planning and Trajectory Optimization (Click the image above to watch real quadrotor demonstrations) Following MEAM 620 Advanced Robotics course at University of Pennsylvania. 🚫 For Penn students: Please DO NOT spoil the learning experience by using this repository as a shortcut for your assignments. Most importantly, DO NOT violate the honor code! Repository Contents This repository contains…

完整内容见 GitHub 原始 README 或本页 。

常见问题

quadrotor 用什么语言开发?

主要使用 MATLAB 编写,目前有 1.1k 个 Star。

如何获取 quadrotor 的源码?

可以直接克隆仓库:git clone https://github.com/yrlu/quadrotor.git,默认分支为 master;安装与运行步骤见仓库 README。

quadrotor 最近还在维护吗?

仓库最近一次更新为 2024年5月5日,当前有 10 个未关闭 Issue;Star 数为 1.1k,可作为社区活跃度的参考。

README

Quadrotor Control, Path Planning and Trajectory Optimization

DOI

step

(Click the image above to watch real quadrotor demonstrations)

Following MEAM 620 Advanced Robotics course at University of Pennsylvania.

🚫 For Penn students: Please DO NOT spoil the learning experience by using this repository as a shortcut for your assignments. Most importantly, DO NOT violate the honor code!

Repository Contents

This repository contains MATLAB code for:

  • Quadrotor PD controllers
  • Path planning algorithms (Dijkstra, A*)
  • Trajectory optimization algorithms (Minimum Snap/Acceleration Trajectory)

If you use this software in your publications, please cite it using the following BibTeX entry:

@misc{lu2017quadrotor,
  author = {Lu, Yiren and Cai, Myles and Ling, Wudao and Zhou, Xuanyu},
  doi = {10.5281/zenodo.6796215},
  month = {7},
  title = {{Quadrotor control, path planning and trajectory optimization}},
  url = {https://github.com/yrlu/quadrotor},
  year = {2017}
}

PD Controller

  • Run code: change trajectories in file control/runsim.m and run.
  • See quadrotor_dynamics.pdf for dynamic modeling of the quadrotor.
  • See control/controller.m for implementation of the PD controller.
  • Visualization below. Desired (blue) vs Actual (red)
Trajectory 1: Step

step step step

Trajectory 2: Circle

step step step

Trajectory 2: Diamond

step step step

Path Planning and Trajectory Optimization

  • Run code: traj_planning/runsim.m and run path 1 or path 3.
  • See project_report.pdf for more details about trajectory generation
  • See traj_planning/path_planning/dijkstra.m for implementation of path finding algorithms (dijstra, A*).
  • See traj_planning/traj_opt7.m for implementations of minimium snap trajectory.
  • See traj_planning/traj_opt5.m for implementations of minimium acceleration trajectory.
  • Visualization below.
Minimum Acceleration Trajectory

step step step

step step step

Minimum Snap Trajectory

step step step

(with way points constraints)

step step step

评论

暂无评论