This was a really simple addition to the code; maybe 6 lines. But the effect was quite dramatic. AUTO, RTL, and LOITER now sense if the plane is in a dive and enter a simple stability mode for 4 seconds. Enough time to recover from the worst dive.

I fly an EZ Star and this has always been my biggest safety concern and need to flip to manual control. Now I don't need to.

In the video you can see me put the plane into a dive. This can happen when the plane turns too hard and the GPS refresh can't keep up. Once the plane begins to stall, it drops like a rock.

Update is on the SVN in Ardupilot 2.7 for Beta testers.

Views: 421

Comment by automatik on August 1, 2010 at 7:37pm
Nicely done Jason!
Comment by AVS on August 1, 2010 at 9:27pm
Brilliant, that's a great addition thanks

Comment by Morli on August 1, 2010 at 11:40pm
fantastic Jason, now new guys can venture little fearless to the field. Gr8 Job

Comment by Gary Mortimer on August 2, 2010 at 1:55am
Thats a cool idea you never know when a thermal might put you on your back. Well done.

Comment by Alex on August 2, 2010 at 3:48am
Great idea!
Did you test this using thermopiles or the arduIMU+ in the video, because i was wondering if the IMU would max out or be able to keep up with the crazy aerobatics in a stall/spin? Perhaps the new APM IMU would be able to handle this abit more I guess someone will have to test it at some point. But still its a great safety feature and well done.
Comment by Recmaster on August 2, 2010 at 5:32am
Yello people!
Yes I did the simulate AP with X-plane. Personal thanx for #Jason #Michael.

But I have some problem.
1. How to interpolate WP for correct path. I mean take off, auto and landing. As I see it depend from airport. But how to calculate it more accuracy?(I mean lon, lat and alt)
2. How to make complex automatic fly (automatic take off, auto and landing) for pure AP board? I did a two different situation: or it work in AUTO mode and was going from WP to WP without take-off and landing, or it take a take off, but without WP destination (infinity unmanagement taking off).

Thanx for any advices

Comment by Guus Eldering on August 2, 2010 at 8:37am
Very nice addition, well done.
Maybe also nice for the fly by wire modes?
Comment by Ken on August 2, 2010 at 3:03pm
Sweet idea. Not only will it keep the ground from coming up to smite aircraft, it make keep velocity in check and thus reduce stress induced TFA.

But what did you decide was a "dive"?

I'm thinking out loud here, but would it be possible to limit the pitch, or the velocity vector's decent, and roll angles based inversely proportional to altitude?...Above 200' AGL I can do as I wish; below 200' AGL velocity vector or pitch limited to 45 degrees negative, roll limited to 60 degrees; below 100' AGL limit to 22.5 degrees negative, roll 45 degrees; below 50' AGL limit to 11.25 degrees negative, 30 degrees roll?...
Comment by Ken on August 2, 2010 at 3:05pm
...oh, what happens after 4 seconds?

Comment by Jason Short on August 2, 2010 at 5:05pm
Just to be more clear on what this does. If we are diving (past 45°), the nav_roll value which is the desired bank from the autopilot will be zero'd out for 4-5 seconds giving the plane time to recover. Then the plane resumes normal AP. FBW has this feature - basically letting off the sticks.

Ken, feel free to dig into the code and try things out. You can always test them in the sim and not your plane.


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

Join DIY Drones

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service