Servers by jDrones

Help with Differential Thrust for a VTOL

Hello everyone!

I am a member of a student team based in Munich and we are building a fixed wing VTOL aircraft. It has a rather unconventional motor setup, with 4 hover and 2 cruise motors. The cruise motors are mounted at the tip of the wings and they are NOT tilt-rotors. Below you can find the concept.

As we are performing the vertical take-off using the hover motors, we want to control the YAW by differential thrust with the cruise motors, which are indeed turned off in modes like QSTABILIZE or QHOVER. But we don’t want to go into forward flight in that mode like FBWA.

We were thinking about creating our own flight mode using the development environment of ArduPilot. However, we are not familiar with the arduplane code and could not decide where to start. On the other hand, we are not sure if that is the right approach for the given problem at all.

I would really appreciate the feedback, a helping hand and new solution ideas.

Thank you!

That may be tricky. I think you may need a new frame type to support it. In MC mode you only want very low throttle on the horizontal motors, while in plane mode they need max thrust. Why not just use the normal yaw control afforded by the 4 multicopter props?

Maybe a dumb idea but for the two push motors can a external rpm controller be used to provide equal thrust to both push motors and fooling the FC thinking there is only one push motor?

Hi David,

thank you for the feedback. Using the MC setup was the initial idea, but we want to observe and test the effects of that configuration on yaw authority. Goal is to achieve precise hovering and eliminate the negative effects of wind direction during vertical take-off.

Hi Asim,

thanks a lot for the answer. Is it possible to achieve differential thrust that way?

Maybe :slight_smile: I was thinking out loud. Let me think about it.

We can take the Ardupilot Push Motor PWM signal and use some type of external board that triggers the two ESC’s that will control the two wing edge motors. The challenge is that the two ESC’s are never the same and the motors RPM is never the same (that’s why in a Quad FC compensate for such differences between Motor RPMs in stabilize or loiter mode).

This external device will have to compensate for the difference else your plane will start to turn slowly in some direction.

On FYI note. There was commercial pilot who lost all Rudder and aileron control and he landed the plane by controlling the two wing engines thrusts. It crashed but it saved half of the passengers life.

1 Like

Some Coffee time reading for you “or” a cold beer

1 Like

If you’re interested in how the code handles things like twin engines, bicopters and tailsitters, which do interesting things in VTOL modes, this is where you might add functionality for the left/right forward motors. The twin_engine_mix uses the rudder demand (FW mode) to command differential thrust, and tailsitter_output does a lot of things using RPYT demands from the VTOL controller:


I wasn’t aware that Ardupilot support such feature. Great info. Thanks!

Servers by jDrones