IP Library Granted Patent US 8,896,301
Granted Patent B2
US 8,896,301 · App. 13/036,611 · Granted Nov 25, 2014

Portable electronic device adapted to compensate for gyroscope bias

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,896,301
App. No.
13/036,611
Granted
Nov 25, 2014
Kind
B2
Abstract

According to one aspect, there is provided a method for compensating for gyroscope bias on a portable electronic device having a gyroscope, and at least one of an accelerometer and a magnetometer. The method includes determining a first attitude matrix and a second attitude matrix using data from the accelerometer and the magnetometer, determining a difference between the first attitude matrix and the second attitude matrix, estimating a rotational velocity based on the difference between the first attitude matrix and the second attitude matrix, and compensating for an output from the gyroscope to generate a compensated output that compensates for the gyroscope bias using the estimated rotational velocity.

Claims (35)

1. A method for compensating for gyroscope bias on a portable electronic device having a gyroscope, an accelerometer and a magnetometer, the method comprising:

determining a first attitude matrix and a second attitude matrix using data from the accelerometer and the magnetometer, each attitude matrix being a 3×3 matrix that describes the orientation of the portable electronic device with respect to a global coordinate system;

determining a difference between the first attitude matrix and the second attitude matrix;

estimating a rotational velocity based on the difference between the first attitude matrix and the second attitude matrix; and

compensating for an output from the gyroscope to generate a compensated output that compensates for the gyroscope bias using the estimated rotational velocity.

2. The method of claim 1 , wherein said determining of the first attitude matrix and the second attitude matrix comprises determining three local frame vectors for each attitude matrix.

3. The method of claim 2 , wherein the three local frame vectors include an EAST vector, a NORTH vector and an UP vector as determined from the accelerometer and magnetometer.

4. The method of claim 1 , wherein said estimating of the rotational velocity comprises determining a mean of a cross product of the local frame vectors of the second attitude matrix and the local frame vectors of the difference between the first and second attitude matrices.

5. The method of claim 1 , wherein said compensating for the output comprises generating a compensation value based on the rotational velocity estimate.

6. The method of claim 5 , wherein the compensation value is adjusted using a feedback loop to compensate for errors in the compensated output.

7. The method of claim 6 , wherein the feedback loop comprises a first-order infinite impulse response loop filter with a control parameter.

8. The method of claim 7 , wherein the control parameter is selected so that the speed of the feedback loop is faster than the expected rate of variation of the gyroscope bias.

9. The method of claim 1 , wherein the gyroscope is a MEMS gyroscope.

10. A portable electronic device, comprising:

a gyroscope for detecting the rotational velocity of the device;

an accelerometer for detecting the acceleration experienced by the device;

a magnetometer for determining the position and orientation of the device with respect to a magnetic field; and

at least one processor coupled with the gyroscope, the accelerometer and the magnetometer, the at least one processor adapted to:

determine a first attitude matrix and a second attitude matrix using data from the accelerometer and the magnetometer, each attitude matrix being a 3×3 matrix that describes the orientation of the portable electronic device with respect to a global coordinate system;

determine a difference between the first attitude matrix and the second attitude matrix;

estimate a rotational velocity based on the difference between the first attitude matrix and the second attitude matrix; and

compensate for an output from the gyroscope to generate a compensated output that compensates for the gyroscope bias using the estimated rotational velocity.

11. The device of claim 10 , wherein the processor is adapted to determine the first attitude matrix and the second attitude matrix by determining three local frame vectors for each attitude matrix.

12. The device of claim 11 , wherein the three local frame vectors include an EAST vector, a NORTH vector and an UP vector as determined from the accelerometer and magnetometer.

13. The device of claim 10 , wherein the processor is adapted to estimate the rotational velocity estimate by determining a mean of a cross product of the local frame vectors of the second attitude matrix and the local frame vectors of the difference between the first attitude matrix and the second attitude matrix.

14. The device of claim 10 , wherein the processor is adapted to compensate for the output by generating a compensation value based on the rotational velocity estimate.

15. The device of claim 14 , wherein the compensation value is adjusted using a feedback loop to compensate for errors in the compensated output.

16. The device of claim 15 , wherein the feedback loop comprises a first-order infinite impulse response loop filter with a control parameter.

17. The device of claim 16 , wherein the control parameter is selected so that the speed of the feedback loop is faster than the expected rate of variation of the gyroscope bias.

18. The device of claim 10 , wherein the gyroscope is a MEMS gyroscope.

19. A method for compensating for gyroscope bias on a portable electronic device having a gyroscope, an accelerometer and an electronic compass, the method comprising:

determining a first attitude matrix and a second attitude matrix using data from the accelerometer and the electronic compass, each attitude matrix being a 3×3 matrix that describes the orientation of the portable electronic device with respect to a global coordinate system;

estimating a rotational velocity based on a difference between the first attitude matrix and the second attitude matrix; and

compensating for an output from the gyroscope to generate a compensated output that compensates for the gyroscope bias using the estimated rotational velocity.

20. The method of claim 19 , wherein the electronic compass is a magnetometer.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064271/0199 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Aug 13, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 033541/0704 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 7, 2011
From: OKA, ANAND RAVINDRA; ALMALKI, NAZIH; SNOW, CHRISTOPHER HARRIS
To: RESEARCH IN MOTION LIMITED
Reel/Frame 026402/0469 →