Flying a pentacopter after losing one motor

This was inspired by @John Hestness's comment in my last blog:

"Can a pentacopter survive the loss of one motor?"

I thought it sounded like a very interesting idea so I tried it during the weekend. Short answer: it depends on which motor fails. In some cases, a pentacopter is still fully controllable after losing one motor.

Long answer: since a) we cannot alter the spinning direction of motors during the flight, and b) a pentacopter has 2 CW and 3 CCW rotors (or vice versa), if one of the CW motors fails, we end up having 1 CW only but 3 CCW rotors, and after doing the math I conclude there is no way such a copter can still balance itself.

However, if one of the CCW motors is not functional, we are left with 2 CW and CCW motors. That sounds like a quadcopter and indeed it can still fly.

I turned one motor off at roughly 00:08 and 00:25 (you will notice the propeller stopped spinning if you look closely), and switched the controller to control the resulting nonsymmetric 'quadcopter'. It still flew reasonably well.

I have to mention that this is still slightly different from what we expect to see in a copter that can be called "motor fault tolerated": ideally, instead of telling the copter to turn off a rotor, we want to auto-detect the motor failure maybe using ESC, or evening infer that from IMU data, but still, this video showed the potential and I hope it could be helpful for someone in this community.

As usual, everything is open-source:

Document:

https://people.csail.mit.edu/taodu/loss_of_motor/doc.pdf

Code:

https://github.com/dut09/ardupilot/tree/d7ce9b440bb6f11e1401db5a90a39e4857f10560

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • Thank you !!!!!!

  • Hi wxjlgh,

    You can check equation (1) - (7) in this document to understand how to compute the throttle factor. You can also use this python script to compute the throttle factor.

    https://people.csail.mit.edu/taodu/pentacopter_guide/guide.pdf
  • Hi, Tao Du, it's nice

    I have some doubt that how to calculate throttle factor

    Thank you

  • I haven't seen that video before but it is pretty cool! I have seen something similar in a research paper, which stabilized a hexacopter after losing one rotor by giving up on yaw control. Both of them chose to not control yaw probably because this is the least harmful decision (losing control of roll/pitch/throttle in the air would become a disaster...)

  • Oh right i completely forgot about the servos. I havent looked into tricopters in a while. Hey Tao, have you seen this?

    https://youtu.be/w2itwFJCgFQ?t=6m51s

  • Tricopters need a servo on at least one arm or the yaw will not be controllable.

  • Hi Tarik Agcayazi,

    It is easy to disable a motor in software. However, depending on which four/three rotors are left, the resulting tricopter may not be controllable (I have no experience in tricopters so I could be wrong though).

  • Heres a thought:

    3 CCW motors and 2 CW motors

    a CW motor goes out

    3 CCW motors and 1 CW motor left

    Would it be possible to disable a CCW motor in software and run it like a tricopter? 

  • Nice very informative thanks a lot man!

  • Good work!

This reply was deleted.