Zoë, meet the metaphorical brick wall.

Zoë’s been out several times today; all pretty much identical: she took-off, climbed for a second as programmed, halted at hover but slowly accelerated upwards from the hover to an ever increasing vertical climb; throughout there was nigh on zero horizontal drift.  Then I killed the flight before she went too high.  And that’s despite the complementary filter I’ve added to try to extract slow gravity drift from the peaks of real acceleration.  The complementary filter is just too crude a method – it lags too much for the frequency of filtering I need.

Ideally what I’m looking for is a way to get two accelerometer outputs from the MPU6050: one with a dlpf set to 0.1Hz to get real acceleration filtered out from (gravity + acceleration) and the second one (as now) running 45 or 90Hz to ensure nothing is missed.  Realistically that means I need to develop my own dlpf at 0.1Hz with a high cut-off rate.

I’ve found a couple of links already, here and here for me to start reading.

In the meantime, Zoë’s grounded until I can solve the sensor drift.  And before anyone else comments about barometer / altimeter / ultrasonic range finder, yes, I know those will solve the problems easily but within restrictions I’m not willing to accept for the moment.

As a result, this seems like a good point to update the code on GitHub – the main change is the threading model.

2 thoughts on “Zoë, meet the metaphorical brick wall.

  1. One thing to be aware of with very narrowband filters, like the one you want to estimate the long term drift, is that they might have a long “warm up time”, i.e. the time before they start giving valid estimates. You’ll presumably (?) end up using an IIR filter, and you may be able to some extent to get around this problem by initialising the filter’s state with some intelligent value (rather than all zeros), but there will still be a bit of a warmup transient. It may not be a problem – depends on the sampling rate and the design you end up with.
    chrs Phil

    • Thanks Phil – I didn’t even know what an IIR filter was until I googled after reading your post! I can initialize the filter with an accurate value, and can get many samples through it in zero-acceleration state while the quad is sitting on the ground warming up for take-off – so it sounds like it stands a chance. I am also starting to sit on the fence between filters or barometer, and considering getting a batch of custom PCB’s done to cope with the unusual pins spacing the DroTek IMU I’m looking to use: http://www.drotek.fr/shop/en/home/466-imu-10dof-mpu9250-ms5611.html

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.