Vertical Velocity Discrepancy

We’ve had a few flights on a Pixhawk S800 setup running Copter 3.4rc2 where the altitude hold is poor. The interesting thing is that a power cycle (no config change) usually solves it. A rock solid flight could follow one with a problem. From the log and picture included, one can see that the Decent Rate or vertical velocity estimate does not match the slope or rate of change of the altitude estimate. Early in this flight, the “2m/s” climb rate was maintained, but actual climb rate tapered to nothing shown by the pressure altitude. After things settle, one can see there is a small steady state error for Dalt, and alt. This results in a calculated desired ~1m/s climb rate, and it’s “achieved”, but actual altitude remains fairly level until we recovered in Loiter and Stab.

Vibes are included as a leading candidate. They are far from perfect, but if the Z vibes are bad enough to screw up the vertical velocity estimate, I’m not sure why we’d only see it in something like %10-%20 of flights.

Attached are the relevant logs.

2016-08-19 15-38-41SSSodd2.bin (1.9 MB)
2016-08-19 15-38-41SSSodd2.log (4.2 MB)


The best way to measure vibration in 3.3 and above is to graph vibe(x,y,z). Normal values should be below 15. I could see degratation of althold performance with something above 8 ( I’m a little picky ) Your Z level is around 60 which I consider in a dangerous zone.

Try to balance your motors / propellers and review your dampening strategy to bring those values down. You will see the difference. Vibration isn’t your friend.

My z levels used to be around 6 , but I’ve managed to bring them close to 2.5 by balancing my blades with this dynamic balancer: amazing! It’s worth it

Yes, I agree with @tabascoz. I think we’ve found that below 30m/s/s of vibration it will fly safely. Between 30 ~ 60m/s/s is the “grey zone” where it may or may not fly reliably.

I’m pretty sure this behaviour is pretty much unchanged between AC3.3.3 and AC3.4.

Thanks for testing and reporting back with dataflash logs!
… and double thanks to @tabascoz for the analysis.

Thanks again guys! We will be sure to try some balancing techniques and see if the results are better. I will say though that we didn’t change anything about the aircraft mechanically when we changed from 3.3 to 3.4 and we were flying on 3.3 for a significant amount of time without seeing any of these behaviors. Regardless, I will work on testing after some balancing to ensure the behavior goes away.

Balancing is not the appropriate solution to this. You need to isolate your autopilot from vibrations.

Balancing will help to eliminate vibrations during hover, but can’t do anything about the asymmetric aerodynamic effects during forward flight. It’s also not good to have so little margin that an unbalanced prop can cause a problem.

I looked at your log.

IMU1 has a gyro with a very large bias. EKF2 IMU1 is completely hopeless from the beginning of flight. The height innovations on IMU2 are very bad, likely due to the vibration issues.

Can you set LOG_DISARMED to 1 and send a log where the vehicle is initialized cold and left to sit for 20 minutes?


In my opinion, both are equally important. In my hexa, from solid mount to dampened mount I went from ~30 to ~3, not anything like 70-80. Therefore I made an assumption that the blades should be unbalanced. I tried the solid mount in order to measure and learn the effects of it in autopilot and play with filters a little bit.

If you just fix the vibration by dampening the fc and ignore the source, that could lead to other potential risks and, at the best case, shorten the motor life expectancy (bearings) and weaken the materials.

Lvale raised an issue on Git requesting that arducopter raises a failsafe event whenever a bad vibration event occurs. That could caught a per-failing blade and react accordingly to it.

Thanks for the help, all. I’m working with Anthony on this one. I tried a different isolation mount yesterday with good results over a couple short flights. Now running 3.4 rc5. The VibeZ peak is now below the old mean value. Current peak is 20ish, mean of 7. It looks like the new natural frequency is way lower in the rpm range than the previous mount. I’d be glad to share this recent log if anyone cares.

That large gyro bias is curious. I went back and only see it in a few logs. I did a disarmed log on the bench, and it did show up! What is this about? I can’t say I’ve seen it on any other hardware. bin too large to attach. I’ll use an alternate method if necessary.

@jschall, Is the correct interpretation here a hardware failure in IMU1? Thanks.

Link to the .bin zipped up here. When that GyrY goes way out, the NKF2.AZBias builds too.

Probably shouldn’t fly this board anymore?

@jfield – can you tell me what what isolation mount you switched to? Are you talking about motor isolation grommets, or pixhawk isolation? Did you have to do prop or motor balancing?

@mapper905 I went to one of these.

with 10mmx10mm pads of this on the corners of the pixhawk.

Double isolation is not always a great idea, but it helped here. My s800 could still be better vibe-wise.

1 Like

Thanks. I think a friend has that exact model on his F550. I’m going to give it a try.

I have that same mounting plate in all my models. It works very well. In my nitro helicopter that plate keeps vibration spikes ~50 and average below 20. I bought 4 of those on Amazon for (IIRC) about $4 each.

1 Like

Thanks Chris, Sounds like maybe I’m on the right track. Went to amazon & ordered mount. I also took all the props off and looked at balance. With my Heli-Max prop balancer, there’s not enough detectable difference to balance. Hopefully isolation/dampening is going to move me forward.

Jeffery, are you still flying the S800 or S800s? My S900 ESC boards all say S800 too. In a few hundred flights, I’ve seen 2 or 3 failures where a motor appeared to shutdown (assumed esc problem). Pixhawk won’t keep it aloft on 5 (that’s a whole other thread!). Wonder if you’ve observed similar reliability? In all cases, after the “crash”, all ESCs appear to be working, but the telemetry in the dataflash indicated otherwise as it was coming down.

We have had higher reliability than that so far. I am aware of the 1 motor out expected performance, seen the thread, have not done the testing to improve parameters.

Thanks for the feedback. I installed the isolation mount and used the Zeal gel too; major reduction in vibrations. So far, I think it’s solved my altitude problem and the pausing too.

Awesome. Glad to hear it.