Servo Redundancy


I continue to develop my "full scale" gas powered, variable pitch quad-copter.

After watching the video below at 

Amazing DIY Projects

I realized (more vividly) how vulnerable a quad is to any fault in the control system.

Then I saw his video here --> Redundant flight controls where at around 23:30 in the video he informs that he will use quintuple redundancy.  That got me thinking about how I could follow the same approach using multiple independent flight controls to provide redundancy for the control system aspect of the project.  His project is different in that he has many outputs (~76 electric motors), but I only have 4 collective "swash plates" that I have to move, so the challenge was to come up with a linkage to connect multiple servos in a way that they won't fight each other, but will also be able to retain control if one of the servo's fails.

Below is an image of the non-redundant setup I'm using for collective pitch.


I struggled quite a bit with many different ideas, but finally arrived at this which I think is elegantly simple.

The servo arm is connected to a rod-end which is screwed into the bottom of the lower (non-rotating) portion of the swash plate. If the angle of the servo sweep is kept reasonable (60 to 90 degrees total) this arrangement does not create too much binding or bending of the servo arm.

Looking back at the first image, you can see that I've connected the servo arms together in an equilateral triangle arrangement, with the rod-end at the center of the triangle.  The motion path of the rod-end is exactly the same as it would be with a single servo.  Of course, this still needs to work if one of the servos fails. If that happens, lets assume the servo just stops moving, and stays in place (gear friction is greater than the linkage torque so servo doesn't "freewheel").

The issue here is that the rod-end only moves one-third the distance of any given single servo movement.  So with one failed servo, the rod-end will only move 2/3 the distance of the remaining two active servos.  For this reason, the servos should be adjusted so that they have 50% extra travel (only use 2/3 of their range when all 3 servos working). 

Another issue is tuning:  The system will have lower gain when one servo fails, so I will need to test the flight stability in both cases (all servo's working, and again with a failed servo) to ensure the PID loops will be able to safely control in both situations.

This design works best if the failed servo doesn't freewheel.  I'm don't think it will work if the failed servo doesn't freeze in it's failed position.

The idea here, is that each of these servo's would be controlled by a separate flight controller, so the whole control system would be tripley (word?) redundant.  Actually, this linkage concept could be extended to make it 4,5 or even 6x redundant, but only 3 servo's can be directly connected to each other by the "Y" linkage.  Beyond 3, I will need to join multiple linkages together.  

Below is a photo of my non-redundant collective linkage on my most recent test stand.  Getting ready to test the vibration of a 2 cycle engine driving a variable pitch 2 blade rotor.


Always interested to hear comments!

E-mail me when people leave their comments –

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

Join diydrones


  • Nice project! I would consider some feedback from the servos that you know which one failed that the other ones can compensate for the lost travel. You may want to consider a module in front of every servo which is connected to all PWM inputs and to the feedback of every single servo. That module can do two things:

    1.Identify if one of the flight controllers disagrees with the other two ones and the use the average of the two other inputs.

    2. It can identify that one of the other servos failed and compensate for that

    Or in short having smart servos which observes the other servos and identifies disagreements of the flight controllers

This reply was deleted.