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/d7ce9b440bb6f11e1401db5a90a...

Views: 560

Comment by Charles Blouin on July 25, 2018 at 10:42am

Good work!

Comment by Ethan Smith on July 25, 2018 at 11:16pm

Nice very informative thanks a lot man!

Comment by Tarik Agcayazi on July 26, 2018 at 1:11pm

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? 

Comment by Tao Du on July 27, 2018 at 8:11am

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).

Comment by Charles Blouin on July 27, 2018 at 8:45am

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

Comment by Tarik Agcayazi on July 27, 2018 at 1:04pm

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

Comment by Tao Du on July 27, 2018 at 1:49pm

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...)

Comment by wxjlgh on August 20, 2018 at 10:23pm

Hi, Tao Du, it's nice

I have some doubt that how to calculate throttle factor

Thank you

Comment by Tao Du on August 21, 2018 at 4:27pm

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.

Comment by wxjlgh on August 22, 2018 at 8:18pm

Thank you !!!!!!

Comment

You need to be a member of DIY Drones to add comments!

Join DIY Drones

Groups

Season Two of the Trust Time Trial (T3) Contest 
A list of all T3 contests is here. The current round, the Vertical Horizontal one, is here

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service