Announcement

Collapse
No announcement yet.

Degraded accuracy on MR Gyro.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Degraded accuracy on MR Gyro.

    Has anyone else seen the accuracy/drift of the Modern Robotics Gyro degrading over time?

    We've a a MR Gyro bolted to the center of the base plate of our Omni robot, and up till a few days ago it was working great.

    Just yesterday we noticed that by 10 seconds into Auto, the heading had already drifted by 10 degrees (making it hard to align with the beacon)

    We verified that all the cables were fine, and that it was still bolted firmly in place.
    We did some teleop testing and also experienced the same drift.

    We saw that the Gyro was calibrating as expected (solid blue light) and the driver statiin monitoried the cal process.

    The heading doesn't seem to drift when the robot is stationary, but after a few seconds of simple driving, if you return to the same starting location, the heading is pretty off (10 deg after just 10 seconds)

    So it seems that it's not accumulating the rate data correctly, or the rate constant (internal deg per mV) has drifted.

    We replaced the gyro with another one we had been using on our demo-bot, and the problem went away (showing that it wasn't code related).

    We re-connected the original gyro and the problem came back.

    Anyone seen anything like this? It doesn't seem like this should happen on a digital gyro....

    Phil.

  • #2
    It doesn't sound like this would be the problem, since a replacement gyro worked, but are you resetting the z integrator immediately after start?
    We used to not do this, and would accumulate drift between the calibration in init and the beginning of start. It wasn't a problem when we were doing build site or practice field testing, as we always had short durations between init and start. It bit us at a competition, when there were longer delays between init and start.

    Comment


    • #3
      Are you suggesting that we should run the calibration when we initialize and then once the start button is pressed reset the z integrator? If this is correct, what is the code to reset this?

      Comment


      • #4
        We have been having the same problem with 2 gyros for the past 3 months. We don't know why which is why we switched over to the Adafruit IMU.

        Comment


        • #5
          Originally posted by FTC5501 View Post
          Are you suggesting that we should run the calibration when we initialize and then once the start button is pressed reset the z integrator? If this is correct, what is the code to reset this?
          Yes - calibrate in init and reset z integrator at Start (after waitForStart in linearOpMode). The call is gyro.resetZAxisIntegrator(). Of course "gyro" is replaced with your object. While calibration takes a while, resetZAxisIntegrator returns nearly instantaneously.

          Comment


          • #6
            We had somewhat a different problem. The gyro was working great for a couple of weeks, then it starts to become inaccurate. We wanted to do a 180 degree turn, and currently 173 degrees seems to be the real 180 degree. A day ago, it was 178 degrees. We did all the calibration, the waiting and the resetting of the gyro as in the example code.

            Is Adafruit IMU more stable?

            Michelle
            Coach FTC Team 11155
            Clash of Coders

            Comment


            • #7
              Phil,
              We've seen this but not to the extend you experienced. When telling the robot to turn 360 degrees, it turned more than that by probably 5 to 10 degrees. But it doesn't "degrade" (i.e. doesn't get worse as time goes). So it is more like a "scaling factor" problem. We have learned to just compensate for it in the code. In any case, we no longer use MR gyro any more anyway. We switched to an analog gyro.

              Comment


              • #8
                Do you mind sharing which analog gyro you went to and if it has been more accurate than the MR gyro?

                Comment


                • #9
                  We haven't experienced any degradation so far. We have used the gyro a lot.

                  Comment


                  • #10
                    Originally posted by CoachZM View Post
                    Do you mind sharing which analog gyro you went to and if it has been more accurate than the MR gyro?
                    We are using the old analog gyro that came with the FRC Kit of Parts some years ago (http://wpilib.screenstepslive.com/s/...ving-direction). You can use any analog gyro, even the gyro built-in to the Moto G phone if you have one. However, the problem of using those is that unlike the MR gyro that does the integration for you, you need to integrate the rotation rate to get heading yourself. Our library does have generic integrator support so it costs us almost nothing to use it.

                    Comment


                    • #11
                      Originally posted by CoachZM View Post
                      Do you mind sharing which analog gyro you went to and if it has been more accurate than the MR gyro?
                      The analog gyro is pretty accurate for our purpose. More importantly, it is not on the I2C bus that has performance issues. MR gyro gave us real big problems with the I2C performance issue. Even with the 2.62 fix, the sensor is still susceptible to performance degradation if you put too many sensors on the I2C bus. So we decided to get the gyro off the bus. Turn accuracy is really important to our autonomous so we can't afford delayed samples from the gyro.

                      Comment

                      Working...
                      X