ArduPilot / ardupilot

ArduPlane, ArduCopter, ArduRover, ArduSub source
http://ardupilot.org/
GNU General Public License v3.0
10.99k stars 17.53k forks source link

Copter: takes too long to detect landing and trying to disarm causes flipping #2068

Closed andyp1per closed 9 years ago

andyp1per commented 9 years ago

It takes a really long time to determine that it's landed. I have broken countless props, trying to disarm when landed only to have the thing flip over because it thinks I am applying yaw. The most reliable thing I can do is switch to stabilize, throttle at zero and just wait for it to automatically disarm. To my mind yaw applied at zero throttle should have NO effect on the prop speed. It should only be looked at as a disarming action. Right now there is effectively no way to disarm at all while the copter thinks it hasn't landed (which is often). This seems worse with 3.2.1 than 3.2.

R-Lefebvre commented 9 years ago

Yaw input with zero throttle in Stabilize mode will not yaw the copter. Maybe you knew that, but it wasn't really clear.

I think it might be possible to add the same functionality to Alt Hold and Loiter mode. Randy, what do you think?

I can't see how it would be so horrible if you can't yaw while descending at full rate in Alt Hold.

andyp1per commented 9 years ago

I'll try and find a log that shows this. I'm pretty sure that I have had flip overs because of trying to disarm through the zero throttle/yaw hard left routine in stabilize whilst on the ground. I know it shouldn't happen - but that's not what I am experiencing.

rmackay9 commented 9 years ago

There can be multiple causes of bad landing detection so when we have a dataflash log we can know better which of the possible causes is the actual issue. AC3.3 (pixhawk only) will have an improved landing detector so you may find it works better.

andyp1per commented 9 years ago

The log is at https://dl.dropboxusercontent.com/u/108802517/90.BIN The flip over is at the end. You can see me push the yaw over to try and get the thing to stop. I broke two propellers. Interestingly it doesn't register a crash which it has in the past. (Any insight into the EKF_CHECK errors also appreciated! The copter flew fine. I am currently dubious that EKF is doing the right thing).

Wizardofoddz commented 9 years ago

This is beyond annoying its a safety hazard. Destroyed a gopro because the machine would not turn off after it landed. Here is 30 second of destruction log: http://www.droneshare.com/mission/83523/plot

R-Lefebvre commented 9 years ago

Can you please put that log somewhere I can view it?

Wizardofoddz commented 9 years ago

This link should work: https://api.droneshare.com/api/v1/mission/83523/messages.tlog

R-Lefebvre commented 9 years ago

Ok, I've had a look, and this is what I see.

I guess you were doing some tablet flying first? It appears an RCTx was connected, but the throttle stick was on the bottom. This is a dangerous habit to be in. The throttle stick should be raised to mid if tablet flying with an RCTx connected.

Then, it appears it landed successfully and switched to Loiter mode. Then it appears it's being flown by the RCTx. It seems like it touched down, and tipped over. It tipped to an angle of about 40-46 degrees (variable). This is why the crash detector did not trigger.

Then, the mode remains in Loiter, then Land. However, due to vibrations due to propeller contact with ground, it thinks it is flying again. It has an inertial altitude that is changing. It will not disarm in Loiter if it thinks it is flying.

It could have been shut down by switching to Stabilize, then disarming.

rmackay9 commented 9 years ago

Now that AC3.3 is out, can you give it a try?

andyp1per commented 9 years ago

Now that I have a reliable compass, yes sure :) Incidentally I experienced this yesterday again with 3.2.1. The thing was still trying to fly even though it was on the ground, the problem is that once you are on the ground two legs stop the thing moving and the FC fights against this and causes the flip. Fortunately I flipped to a flight mode that made it take off again so no props lost this time.

andyp1per commented 9 years ago

I'm going to have to try a longer flight test when the weather gets better. A simple flight test does not seem discernably different on landing and the Quad appears more wobbly in flight, so I might wait for RC4 before I try this (I'm also seeing altitude changes in loiter).

andyp1per commented 9 years ago

Ok, I did a build from master today (so rc3++) and took it for a longer flight test. I have to say it is better especially in loiter/althold which is what I care about. The props spin down pretty promptly on landing almost as soon as it hits the ground. So good work!

magicrub commented 9 years ago

Great, thanks for testing on master! On May 10, 2015 11:36 AM, "Andy Piper" notifications@github.com wrote:

Ok, I did a build from master today (so rc3++) and took it for a longer flight test. I have to say it is better especially in loiter/althold which is what I care about. The props spin down pretty promptly on landing almost as soon as it hits the ground. So good work!

— Reply to this email directly or view it on GitHub https://github.com/diydrones/ardupilot/issues/2068#issuecomment-100679482 .

NortonAutonomous commented 9 years ago

Gents, I had exactly the same problem with my new Y6 and had destroyed countless propellers trying to figure out how to fix the issue while using AC3.2. Running AC3.3 has solved my landing problems, thank you!

rmackay9 commented 9 years ago

ok great, news, thanks!