IP Library Granted Patent US 8,676,528
Granted Patent B2
US 8,676,528 · App. 13/023,276 · Granted Mar 18, 2014

System and method for calibrating an accelerometer

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,676,528
App. No.
13/023,276
Granted
Mar 18, 2014
Kind
B2
Abstract

A method and system are provided for obtaining data for calibrating an accelerometer. The method and system operate by using at least one magnetometer reading to detect that a first orientation is being maintained; obtaining a plurality of accelerometer readings at the first orientation; using at least one magnetometer reading to detect that a plurality of additional orientations are being maintained and, for each orientation, obtaining a plurality of accelerometer readings at that orientation; determining calibration parameters comprising, for each axis of the accelerometer, at least one of a gain value and an offset value, using the plurality of accelerometer readings at the first and plurality of additional orientations; and applying the calibration parameters to subsequent accelerometer readings.

Claims (42)

1. A method of calibrating an accelerometer, the method comprising:

using at least a first magnetometer reading to detect that a first orientation is being maintained;

obtaining a plurality of accelerometer readings at the first orientation;

using at least one other magnetometer reading to detect that a plurality of additional orientations are being maintained and, for each additional orientation, obtaining a plurality of accelerometer readings at that additional orientation;

determining calibration parameters comprising, for each axis of the accelerometer, at least one of a gain value and an offset value, using the plurality of accelerometer readings at the first and plurality of additional orientations; and

applying the calibration parameters to subsequent accelerometer readings.

2. The method according to claim 1 , wherein detecting that the first and plurality of additional orientations are being maintained comprises determining that one or more values are being maintained substantially constant.

3. The method according to claim 2 , wherein the one or more values are a function of both at least one magnetometer reading and at least one accelerometer reading.

4. The method according to claim 3 , wherein the one or more values are vectors obtained by combining a magnetometer vector with an accelerometer vector.

5. The method according to claim 4 , wherein a first vector is obtained by determining a cross product of the magnetometer vector and the accelerometer vector and a second vector is obtained by determining a cross product of the accelerometer vector and the first vector.

6. The method according to claim 1 , further comprising determining if the magnetometer readings are of a sufficient quality before determining whether or not the first orientation is being maintained.

7. The method according to claim 1 , further comprising checking whether or not the accelerometer readings are of sufficient quality prior to the determining and applying operations.

8. The method according to claim 7 , wherein the checking comprises determining whether or not at least some of the accelerometer readings lie within a predetermined sphere.

9. The method according to claim 1 , wherein the gain and offset values are determined by applying a least squares estimation using the plurality of accelerometer readings at the first and plurality of additional orientations.

10. A computer readable storage medium comprising computer executable instructions for obtaining data for calibrating an accelerometer, the computer executable instructions comprising instructions for:

using at least a first magnetometer reading to detect that a first orientation is being maintained;

obtaining a plurality of accelerometer readings at the first orientation;

using at least one other magnetometer reading to detect that a plurality of additional orientations are being maintained and, for each additional orientation, obtaining a plurality of accelerometer readings at that additional orientation;

determining calibration parameters comprising, for each axis of the accelerometer, at least one of a gain value and an offset value, using the plurality of accelerometer readings at the first and plurality of additional orientations; and

applying the calibration parameters to subsequent accelerometer readings.

11. The computer readable medium according to claim 10 , wherein detecting that the first and plurality of additional orientations are being maintained comprises determining that one or more values are being maintained substantially constant.

12. The computer readable medium according to claim 11 , wherein the one or more values are a function of both at least one magnetometer reading and at least one accelerometer reading.

13. The computer readable medium according to claim 12 , wherein the one or more values are vectors obtained by combining a magnetometer vector with an accelerometer vector.

14. The computer readable medium according to claim 13 , wherein a first vector is obtained by determining a cross product of the magnetometer vector and the accelerometer vector and a second vector is obtained by determining a cross product of the accelerometer vector and the first vector.

15. The computer readable medium according to claim 10 , further comprising instructions for determining if the magnetometer readings are of a sufficient quality before determining whether or not the first orientation is being maintained.

16. The computer readable medium according to claim 10 , further comprising instructions for checking whether or not the accelerometer readings are of sufficient quality prior to the determining and applying operations.

17. The computer readable medium according to claim 16 , wherein the checking comprises determining whether or not at least some of the accelerometer readings lie within a predetermined sphere.

18. The computer readable medium according to claim 10 , wherein the gain and offset values are determined by applying a least squares estimation using the plurality of accelerometer readings at the first and plurality of additional orientations.

19. An electronic device comprising a processor, memory, an accelerometer, and a magnetometer, the memory comprising computer executable instructions for obtaining data for calibrating the accelerometer, the computer executable instructions comprising instructions for:

using at least a first magnetometer reading to detect that a first orientation is being maintained;

obtaining a plurality of accelerometer readings at the first orientation;

using at least one other magnetometer reading to detect that a plurality of additional orientations are being maintained and, for each additional orientation, obtaining a plurality of accelerometer readings at that additional orientation;

determining calibration parameters comprising, for each axis of the accelerometer, at least one of a gain value and an offset value, using the plurality of accelerometer readings at the first and plurality of additional orientations; and

applying the calibration parameters to subsequent accelerometer readings.

20. The electronic device according to claim 19 , wherein detecting that the first and plurality of additional orientations are being maintained comprises determining that one or more values are being maintained substantially constant.

21. The electronic device according to claim 20 , wherein the one or more values are a function of both at least one magnetometer reading and at least one accelerometer reading.

22. The electronic device according to claim 21 , wherein the one or more values are vectors obtained by combining a magnetometer vector with an accelerometer vector.

23. The electronic device according to claim 22 , wherein a first vector is obtained by determining a cross product of the magnetometer vector and the accelerometer vector and a second vector is obtained by determining a cross product of the accelerometer vector and the first vector.

24. The electronic device according to claim 19 , further comprising instructions for determining if the magnetometer readings are of a sufficient quality before determining whether or not the first orientation is being maintained.

25. The electronic device according to claim 19 , further comprising instructions for checking whether or not the accelerometer readings are of sufficient quality prior to the determining and applying operations.

26. The electronic device according to claim 25 , wherein the checking comprises determining whether or not at least some of the accelerometer readings lie within a predetermined sphere.

27. The electronic device according to claim 19 , wherein the gain and offset values are determined by applying a least squares estimation using the plurality of accelerometer readings at the first and plurality of additional orientations.

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 Jan 15, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 032035/0883 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2011
From: ALMALKI, NAZIH; SNOW, CHRISTOPHER HARRIS
To: RESEARCH IN MOTION LIMITED
Reel/Frame 025928/0397 →