File Exchange

image thumbnail


version (53.5 MB) by D
Parameter driven Simulink model for quadcopter simulation and control system design


Updated 14 May 2016

GitHub view license on GitHub

Editor's Note: This file was selected as MATLAB Central Pick of the Week

A package of documentation and software supporting MATLAB/Simulink based dynamic modeling and simulation of quadcopter vehicles for control system design.
IMPORTANT: Not tested on MATLAB/Simulink beyond 2013a! The 2014b release appears to cause issues with the animation function and may cause other as of yet other undiscovered issues. Please share bugs with the author via email and be sure to specify the OS and version of MATLAB/Simulink being used. Users are encouraged to run these files on MATLAB 2013a if possible.

A video of the project can be found at:

Check out the document titled "Simulation and Control" within the "Documentation" file for instructions on how to run the Simulink models, and also have a look at the README file that comes with the download.

Comments and Ratings (23)

Hi David,

My name is Michael Janicki and I am building a quadcopter with my capstone team at the University of Washington in the Mechanical Engineering department. I am trying to get your simulation to work but I am not sure what the "block" parameter is in the "quadcopterDynamicsSFunction.mat" and I was hoping you could shed some light on this.

Thank you very much!

Willie Smit

i need to your detias dynamics difranciel
please if possible , send me this file
thank you

i think there is something wrong in the PC-Quadcopter

if u give the quadcopter a path to move in x-direction only it suppose to make an angle theta and hold it until it stop but thats not whats happening here if y make the trajectory move in x direction only u will find that the controller give a command to make an angle for just one second and then it return to zero again although u will find that the quad is still moving in the x-direction without any angle theta.
and thats weird becuase it suppose to do an angle in order to be able to move in that direction.
plz if any body can help me with this??

jeevan HL

jing cui

keheng site

No v1.2 package can be downloaded?

I would like to deploy your controller on a Beaglebone black computer. Any suggestions on addtional hardware would be great.

I had some errors while running the GUI_Modeling
Any suggestions?


Hey David,

Your teams work is really amazing. I myself have been working on a quadcopter since September and I am using a Beaglebone Black.

The material you have provided in this package is extensive and golden. Shall get back to you soon. Thank You.

This is a great project and excellent work...
My partner Kassem Dabaje sent an email today concerning a question. I just want to make sure it will be seen.
Thank you..

This is a great work.


Hello Karuna,
Unfortunately the "perfect" one-stop resource for quadrotor vehicle dynamics hasn't turned up in my research yet. Different authors choose to model different effects, and between notation ambiguities and other issues it can be hard to compare different models to one another. At some point I hope to find time to update the documentation included with this download so that it can at least be a more complete and reliable resource. Till then, have a look at the various documents and books listed in the "Bibliography" included with the Quad-Sim download, many of which I found useful.
However, note that as you are a self-proclaimed "hobbyist," some of the documents may get into details that exceed your level of interest.

One of the most relevant resources mentioned in the Bibliography I provided is a paper which uses VERY different notation to what I used:
R. Mahony, V. Kumar, and P. Corke, “Multirotor Aerial Vehicles: Modeling, Estimation, and Control of a Quadrotor,” in IEEE Robotics and Automation Magazine, vol. 19, Sept. 2012, pp. 20-32
(I think this paper can be found for free online, but I am not sure)

Good luck, and check back once in a while if you have interest, I may get around to making some substantial documentation upgrades, particularly in the area of mathematical modeling documentation.

Hello david, amazing work, and thanks for uploading model.

Can you let me know, the reference or documentation for modelling and control of quadrotor. If you have any link please share it. It would be helpful for the hobbyist like me.

Great job! Thanks!!

This is a great work. Really amazed..!! Keep it up..!!!


Added note about potential compatibility problems with MATLAB 2014b.

MATLAB Release Compatibility
Created with R2013a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Discover Live Editor

Create scripts with code, output, and formatted text in a single executable document.

Learn About Live Editor