FBWA crashed my plane

When my plane were doing auto land,the crowd suddenly made me deciding to abort it with changing flight mode “AUTO” to “FBWA”. Although I kept pulling joystick backward to try to pull up my plane from land downward, the disappointed result is that my plane’s nose firstly down a little and nextly couldn’t pitch up ,finally I change mode to “RTL”,my plane crashed.


I don’t konw why my plane can not pitch up in “FBWA” .Could someone help me analysis the reason?

without the dataflash log we certainly can’t :slight_smile:

@tridge Sorry , I put my dataflash log link again .
https://drive.google.com/open?id=0B8Meh7paj0moalY4TUdZNlpEd00
Thanks for your reply again! I am looking forward to your experience about my problem.

Can you provide the binary (.bin) dataflash file instead of the human-readable one? My tool can’t read .log files.
Plus, it’s a lot smaller in size.

what firmware is this? The log shows it as:

2017-08-30 17:57:16.20: MSG {TimeUS : 406492255, Message : Radius v1.7.1 (22b5c415)}

what is “Radius v1.7.1” ?

@Georacer Hi,the binary dataflah is here: https://drive.google.com/open?id=0B8Meh7paj0moV2NBUjBuTnNGcHc

@tridge my plane firmware is “Arduplane 3.7.1”. The “Radius v1.7.1” is used to distinguish my plane from the other.Thanks you!

There was a bug which was fixed in 3.8 that was causing a the PID integrators to reset on mode change. I haven’t looked at your log but it shows the symptoms of pitching up then diving on a mode change. I highly suggest upgrading to v3.8.

Also, on a aborted landing, if you simply raised the throttle briefly you’ll “takeoff” and come around for another landing allll by its self.

@tridge my plane firmware is “Arduplane 3.7.1”. The “Radius v1.7.1” is used
to distinguish my plane from the other.Thanks you!

The “ArduPlane” string is actually parsed out by several tools. I suggest
you could use the sysid parameter in place of modifying this header… or
emitting another string, perhaps…

Accroding to what you say,if I want to abort auto-land,should I only do is raised the throttle ? Can you give me a detailed description ?Thank you!
Maybe I think your solution is related to a parameter"LAND_ABORT_THR". Am I right?

Yes, that’s the param. Check the wiki for details
http://ardupilot.org/plane/docs/automatic-landing.html#how-to-abort-an-auto-landing

@MagicRuB You are right! I did see that PID integrators to reset on mode change,the pitch angle of my plane down a little at the same time. But I stll wonder why actul pitch angle can not raise to desired pitch although I pull full stick and why "desired pitch "is firstly 16 degree and nextly 35 degree. Where can I found answer from Arduplane code?

First off, I see a mismatch between ATT.DesPitch and PIDP.Des, as seen in Figure 1. This might be due to some normalization of the pitch reference or some deprecated logging in the codebase. This doesn’t bother me too much.


In fact, if you examine PIDP.Des, you will see that the desired pitch angle goes to 35deg immediately after going to FBWA (Figure 2).

To me, it looks like a balancing and tuning issue. During the takeoff, watch how slowly the integrator builds up (Figure 3) and how much offset it spools up to. It takes 35 seconds for the integrator to reach its stable value and that value is too high. Your plane flies level with 16degs of integrator deflection, which tells me it is rather nose heavy.

When you switch to FBWA (Figure 4), the integrator does get reset (whether or not this is intended behaviour), but most importantly, you can see that the P-gain reaches its maximum value for the whole flight. But even with maximum deflection caused by the P-gain is not enough to lift your nose up. This is another indication that your parameters weren’t properly set.

My best guess is that the crash was a combination of a plane being too nose heavy, the controller too slow and its P-gain being too weak, causing a dangerous reliance to the integrator for error elimination.

2 Likes