Dual-motor tailsitters

Video: https://drive.google.com/file/d/0B6c7J-YiLJdsZEEwX3U5RnQxUE0/view?usp=sharing

1 Like

Hi, what I ended up doing isā€¦ thrust vectoring,use the thrust to keep attitude were you want

Thatā€™s definitely the more effective solution from a controllability standpoint, but Iā€™m trying to avoid the extra weight and complexity of motor pivots. I would really like to minimize the amount of extra stuff required on the airframe to allow for vertical takeoffs and landings, compared to the conventional fixed-wing equivalent. Iā€™m going to keep pursuing an aerodynamic solution, and maybe try some flight testing when itā€™s not so windy outside!

1 Like

I agree.keep us posted

the only idea I have is to apply Leonard patch to automatically increase throttle as the attitude goes off. That is the theoretically correct fix for this type of aircraft. The main reason it hasnā€™t been put in master yet is that for the only test aircraft I have (my AddictionX 3D aircraft) it could damage the aircraft. The AddictionX takes off from a horizontal position, and has a big power to weight ratio. When it is taking off in QHOVER with leonards patches it is so aggressive about bringing the aircraft into nose up orientation that it can slap the tail on the runway, potentially breaking it.
That problem doesnā€™t happen with a real tailsitter like yours.
The patch is here:
https://github.com/tridge/ardupilot/commit/de3f5f88d7e8f26591b1406c6818f1ee675b8830
If you could try it on your tailsitter that would be great. If it helps then we could enable it with a parameter, and have it on by default.
Also, can you upload a DF log of your flight?
Cheers, Tridge

btw, I can build you a binary for your board with Leonards change if you would like me to (not sure if you are building your own fw or using the prebuilt ones?)

If you can build me a binary with the patch that would be awesome. Iā€™m running using a Pixracer. Iā€™ll send you my email momentarily. Thanks!

no problem. Binary is here:
http://uav.tridgell.net/tmp/plane-tailsitter-leonard-fmuv4.px4
if you can also send a log of your first flight I can take a look and offer some suggestions
Cheers, Tridge

I should also mention one other potential issue with Leonards patch. Imagine you are pitched over 40 degrees and it is trying to right itself. It will add a lot of throttle to do that. If it manages to right itself then all is good. If it doesnā€™t then it is going to start flying forward pretty fast!
Test in a largish area :slight_smile:

With a 2:1 power-to-weight ratio, that is definitely the case! Luckily we have a 400m x 300m field behind our office that we use for flight testing, so space shouldnā€™t be a problem. I left my GCS computer at work, so the log file will have to wait until I get back to the office. Do you want the tlog or the dataflash log?

dataflash log please

@tridge I flashed your pr-tailsitter-compensation branch on the Stryker, but itā€™s raining here nowā€¦
EKF3 log is here (similar loss of pitch control): https://drive.google.com/open?id=0Bw3digSMQXDuRmtob3NycmRlU1k

@tridge is PTCH2SRV_P replaced by Q_A_RAT_PIT_P?

PTCH2SRV_P is for fixed wing flight. Q_A_RAT_PIT_P is for hovering. We use two separate controllers for the two flight modes, with separate gain settings.

you could push MIXING_GAIN up to 1 if you wanted to try that too. I wouldnā€™t go above 1.

The more I think about it, the more Iā€™m thinking that getting the C.G. right is going to be crucial for transitional attitudes and airspeeds between a balanced hover and forward flight. This is my thought process:

longitudinal (fore-aft) C.G. in a balanced hover isnā€™t really going to matter much. Itā€™s going to have some effect on the stability of the aircraft, but that really doesnā€™t matter since weā€™re using a flight controller to stabilize it anyways. The elevons also donā€™t need to be super effective in a balanced hover, because as long as the aircraft stays vertical, the forces the elevons need to produce to counteract any small attitude excursions are relatively small. But when the aircraft starts to pitch forward and the wing begins to develop some amount of lift, all that changes. Now the wing is producing lift, presumably behind the C.G, causing the nose to pitch further forward towards a forward flight attitude. The further the nose pitches, the further behind the C.G. the center of pressure moves, and the tendency to pitch forward continues. At some point the wing will be producing more forward pitching moment than the elevons can counteract, and the only way to recover would be to increase the elevon effectiveness by increasing airspeed, power (I think this is what Leonardā€™s patch is trying to do?), or both. A good example of what is happening is this: In slow, low power flight, if you hold full up elevator on your aircraft, and let it stall, does the nose go up or down? On anything Iā€™ve ever flown, it goes down, and thatā€™s exactly what is happening here.

But letā€™s look at that situation with the C.G. moved back to a neutrally-stable location. As the airplane pitches forward and the wing begins to produce lift, itā€™s acting more or less through the C.G and it shouldnā€™t cause any pitching moment. The elevons should still have the same effectiveness, and they should be able to bring the nose back to a vertical position. In forward flight I donā€™t want to fly something thatā€™s truly neutrally stable in pitch, as it can be a real handful, but since Iā€™m flying with a flight controller anyways I can abandon our aerodynamic stability and replace it with electronic stability in FBWA and higher flight modes. As a bonus, I should gain a little bit of efficiency in forward flight. I think this is part of the reason why the tailsitter code flies @tridgeā€™s addictionX so wellā€¦ itā€™s designed to be pretty neutral in pitch stability, and has huge pitch control authority so it can do elevators, ect.

I think that before I apply leonardā€™s patch Iā€™m going to try shifting the C.G. back 1 or 2 cm to see what the effect is.

Iā€™ve had the same thoughts; I calculate a stability coefficient of .018 for the Stryker using the formulas here: http://www.mh-aerotools.de/airfoils/flywing1.htm

According to that calculation, I would need to move the CG back less than 1cm from the recommended position to achieve a negative stability coefficient. Iā€™ll definitely give that a try too.

Looks like ETH Zurich came to the same conclusion I did:

ā€œThe airframe of the vehicle is based on a Clark Y profile and designed such that for regular flight the pitching moment vanishes for zero flap angle, and such that the aerodynamic neutral point coincides with the vehicleā€™s center of gravity. The objective of this design is to allow agile maneuvers for all flight regimes and to avoid flap angle saturation problems caused by large trim angles.ā€

1 Like

Pretty cool. I guess those guys arenā€™t contributing to PX4 though.

I think they have; Roman Bapst, who is on the faculty of ETH Zurich, contributed a lot to the PX4 tailsitter code. They also spun off a company (wingtra) that is selling a commercial tailsitter, so I can see why they would want to hold their cards close.

1 Like