I would like to know how to transform a setpoint to inputs for the motors of a quadcopter. I would like a function like that:

def goto(x, y, z):
  # ...
  # Magic happens here
  # ...
  return [thrust1, thrust2, thrust3, thrust4]

I can't seem to find good documentation on how to do that so my research keywords must be lacking something. If you could point me to some good resources I would be glad to see them.

  • $\begingroup$ I believe the magic is often the thesis of some student or phd candidates...I’m not surprised you’re having an issue finding a solution....turning real world coordinations into an optimal control path and then controlling the thrust to get the drone to said point and then stay there is well...hard. However, if you look up ETH Zürich autonomous drones...im sure you might find a paper or two $\endgroup$ Aug 30, 2019 at 13:33
  • $\begingroup$ I agree with morbo. Learning the magic within that loop usually involves earning an engineering master's degree. $\endgroup$
    – holmeski
    Aug 30, 2019 at 13:51

1 Answer 1


Here here are a couple of papers that solve the problem you are interested in.

  • $\begingroup$ Thanks for your answer but we prefer answers to be self contained where possible. Links tend to rot so answers which rely on a link can be rendered useless if the linked content disappears. If you add more context from the link, it is more likely that people will find your answer useful. In particular, references to papers should include the paper title and author list, so they can be found in the future if the original link dies. $\endgroup$
    – Mark Booth
    Aug 30, 2019 at 16:29

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.