I'm grepping through the arduplane code, and I don't see anywhere that yaw is used to hold the course on takeoff. It looks like it uses ailerons to try to correct its course on the ground.
Since ailerons apply a yawing force opposite of their intended direction of roll (adverse yaw), it's easy to imagine a (fast) plane trying to correct its course on the ground using ailerons ending up yawing itself further off-course, correcting more, and tipping a wing into the ground (possibly causing a prop strike, depending on geometry).
Shouldn't the rudder hold heading and the ailerons hold the wings level until the plane lifts off, at which point the ailerons switch to holding course and the rudder coordinates flight? Doesn't need to transition exactly at liftoff - maybe use altimeter to detect it? 1.5m or something? Or use pitch - for a tricycle like my apprentice, using pitch would tell you when the front wheel was off the ground, which is the wheel that the rudder steers.
I haven't yet done an auto takeoff, but I'm very very nervous and dubious about doing one after reading the code.
Replies
I've been waiting for a solution to this as well. I've done several auto takeoffs with an apprentice; the key is to manually hold in rudder correction as the plane throttles up. Remember that if your plane is trimmed properly, it should yaw to the left during takeoff. The APM will lock onto a heading when the GPS speed reaches 3m/s. After that it does pretty well on its own.
So here's what I think a takeoff should do:
I should have trusted my research. I stupidly tried an auto takeoff and it promptly turned 90 degrees and crashed into a fence before I could react.
Do you guys use 3 channel planes with no ailerons or something? What's up with that?