I want to make a mathematical model of quadcopter in simulink. I have studied quadcopter, although I am new and not build any flying robot before. I studied so far that I have to use four brushless DC motors PID speed control, two motors will rotate clock wise and two anti clock wise. I want to make very simple mathematical model.

The input of the model will be the xyz locations on 3d space, copter will always fly from 0,0,0 path.

So far I decided that I will increment the coordinates step by step for example if I want the next location of the to be x=10, y=10, z=10; then I will increment in these locations and input to a flight control block.

My question is how can I decide the speed of motors according to x,y,z next location and how to convert that speed into Yaw Pitch and Roll and finnally convert the Yaw, Pitch and Roll into X,Y,Z coordinates.

I need the convertion formulas that can be easily implemented into simulink. Please provide help thanks


A linearized quadrotor model can be found in the results section of my paper Kinodynamic RRT*: Asymptotically Optimal Motion Planning for Robots with Linear Dynamics. This is a state space model that includes the 3D position, 3D velocity, 2D angular position, and 2D angular velocity. The angular position and angular velocity are 2D because it restricts the quadrotor from yawing. If you want to model yaw then you need to add a couple of equations to describe how the yaw at its associated angular velocity changes.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.