3D Robotics
In this demo, Pat Hickey from Invensense does a demo on a turntable showing how much error you can expect from an IMU (in this case the MPU 3000 using the onboard Kalman filter) in a turn if you don't have a GPS or magnetometer to correct it. The answer is less than 10 degrees at .2G (12 inch turntable turning at 33rpm), which is a reasonable guess of what a plane would experience in a prolonged turn. 
This is relevant because the forthcoming Invensense MPU 6000 sensor with 3-axis gyros and 3-axis acclerometers on a single chip has a great onboard sensor fusion processor, which is attractive to use. But it doesn't have an on-board magnetometer or a good way to input GPS data into the sensor fusion processing, which could correct the inertial errors from centrifugal forces.
So what if you go without that correction? This demo suggests that the consequences might not be too bad. 

(demo filmed by me at the Wired offices)

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • Developer
    Not to sidetrack the topic, but I found this interesting. If you listen closely he confirms that they have a 9DOF (single chip I assume) in the works. It is gonna be interesting to see what we have to play with in a couple of years time.
  • 3D Robotics
    Artem: Pat explained that the cube keep spinning because the onboard sensor fusion code is configured to reset the bias if it sees a constant force, as is the case here. That bias lasts for 8 seconds before it is reset. Obviously we'd want to change that for aircraft use.
  • T3
    In my opinion, the best way to go with using gyros in UAVs is to read the raw gyro and accelerometer information, and fuse it with GPS and/or magnetometer data. For example, you can use GPS data to compute forward acceleration and compensated the accelerometer for it.
    Bill
  • T3

    Artem,

    The cube keeps spinning for exactly the reason I mentioned: gain error on the yaw gyro.

    Chris,

    In my opinion, the MPU6000 will not be suitable for aerobatics, there will be much more centripetal accleration than 0.2 gs. Basically, the roll error will be equal to the roll angle in any case.

    On top of that, there is another problem that you might want to quiz Invensense about: what are the effects of forward acceleration? Ideally, you want to ignore forward acceleration, otherwise the IMU will put your plane into a "death" dive. Been there, done that. However, you cannot ignore the accelerometers all together. The best you can do is delay. You need at least a 5 second delay in response to forward acceleration, 10 seconds is better, in order to prevent a "death" dive. My guess is the MPU6000 will have a much faster response than that, which would make it unsuitable for stabilization of aircraft.

    Best regards,

    Bill

  • I was just wondering.  Why does the cube on the screen keep spinning at the end of the video when the sensor (turn table) is stopped?
  • T3
    Chris,
    No doubt someone is going to ask me, "But Bill, I though that roll-pitch decouples from yaw, and you can compute roll-pitch without a yaw reference?"
    That is true up to a point. In principle, you can compute roll-pitch without knowing yaw at all. But there are some second order effects, such as gain and accelerometer offset errors, that cause a slight coupling between roll-pitch and yaw estimates.
    At low rotation rates, the second order effects are not even noticeable. However, you can show that, without a yaw lock, the error coupling is proportional to the square of the rotation rate. So, at some rotation rate, the roll-pitch errors build up significantly (as much as 180 degrees!)
    So, lets look at the numbers. Suppose you rotate at 33 RPM. And suppose that you have a 5% gyro gain error. Then there will be a yaw error that grows at 1.65 RPM. In other words, you will have a 180 degree yaw error in 18 seconds. This makes yaw lock problematical, so yaw lock is likely to break.
    Without a yaw lock, the same sort of gyro gain errors are creeping into the roll-pitch calculations, because the gyro rotation vector is not exactly parallel to physical rotation axis. Basically, it all falls apart if you wait long enough.
    Best regards,
    Bill
  • T3
    Chris,
    There is another "gotcha" related to extended turns...
    I have been doing extensive turntable testing the last few weeks, and have discovered an effect that can totally ruin roll-pitch estimates.
    The mechanism is that, during extended high turn rates, the gain error of the gyros causes yaw error to accumulate faster than most drift algorithms can remove it. So, the yaw lock "breaks". Once that happens, roll-pitch errors grow as well. It does take some time for that to happen, but sooner or later it will.
    In other words, the roll-pitch errors decouple from yaw errors only at low turn rates.
    The tests that I am doing are at extreme rotation rates (500 degrees/second), which is much faster than most planes will spin.
    I have an idea on how to prevent the effect that I am working on right now. If it works out, I will publish it.
    Best regards,
    Bill
  • Developer
    I did some tests with the FY-20 IMU based leveler not long ago and it works just  with 6 DOF only and no GPS. Granted if you do a long high speed turn, it looks a bit weird with the wings tipping over the wrong way, but the plane stays in the air.
  • Developer

    @Pat - I think your second option is the "good" solution for us.  We just need a message to allow us to do it.  Thanks!  I thought we would get that functionality, but the email thread going a while ago kind of fell apart so I wasn't sure.

     

    @bGatti - possibly, but it would require a lot more horsepower than correcting the accelerometers for the current centripetal.  Correcting the accel bias is an instantaneous sort of calculation.  Calculating a correction to the blackbox IMU would require building a filter to try to match what the IMU is doing over time.

     

    @Mark - Chris was mistaken.  You cannot correct for centripetal with just 3 more DOM/DOF from a magnetometer.  You need a measurement of speed and rotation.  Additional DOM can be helpful in a helicopter, etc to determine the direction of motion relative to the airframe, but you need more info than just the additional DOM from a magnetometer.

  • Moderator

    @1:26, Chris mentions that a 9-DOF unit can be used to  compensate for the centripetal error in the 6-DOF unit.

     

    Could somebody kindly point me to a reference as to how the error compensation would be calculated?

     

    Many TIA!

This reply was deleted.