Systems and methods for gyroscope calibration
First Claim
Patent Images
1. A method that compensates gyroscopes, the method comprising:
- rotating a sensor platform with three gyroscopes, three accelerometers and three magnetometers thereon;
determining a first rotation vector Og based upon the rotation sensed by at least one of the three gyroscopes;
determining a second rotation vector Om based upon the rotation sensed by the three accelerometers and the three magnetometers; and
determining a compensation gain and a compensation bias for the at least one gyroscope based upon the first rotation vector and the second rotation vector;
wherein determining the second rotation vector comprises;
calculating a first rotation based upon the rotation sensed by changes in the accelerometers (dA); and
calculating a second rotation based upon the rotation sensed by changes in the magnetometers (dM);
wherein an acceleration vector A associated with the accelerometers corresponds to the changes sensed by the accelerometers (dA); and
wherein a magnetic vector M associated with the magnetometers corresponds to the changes sensed by the magnetometers (dM);
wherein calculating the first rotation is based upon solving for changes in the acceleration vector A defined by;
dAx=Oz*Av−
Oy*Az,
dAy=−
Oz*Ax+Ox*Az,
dAz=Qy*Ax−
Ox*Ay, andwherein determining the second rotation is based upon solving for changes in the magnetic vector M defined by;
dMx=Oz*My−
Oy*Mz,
dMy=−
Oz*Mx+Ox*Mz, and
dMz=Oy*Mx−
Ox*My;
where dMx, dMy, and dMz are the x, y, and z components, respectively, of the derivative of the magnetic vector M;
Mx, My, and Mz are the x, y, and z components, respectively, of the magnetic vector M;
dAx, dAy, and dAz are the x, y, and z components, respectively, of the derivative of the acceleration vector A;
Ax, Ay, and Az are the x, y, and z components, respectively, of the acceleration vector A; and
Ox, Oy, and Oz are the x, y, and z components, respectively, of the second rotation vector Om.
1 Assignment
0 Petitions
Accused Products
Abstract
A method that compensates gyroscopes comprises rotating a sensor platform with three gyroscopes, three accelerometers and three magnetometers thereon; determining a first rotation vector Og based upon the rotation sensed by at least one of the three gyroscopes; determining a second rotation vector Om vector based upon the rotation sensed by the three accelerometers and the three magnetometers; and determining a compensation gain and a compensation bias for the at least one gyroscope based upon the first rotation vector and the second rotation vector.
28 Citations
16 Claims
-
1. A method that compensates gyroscopes, the method comprising:
-
rotating a sensor platform with three gyroscopes, three accelerometers and three magnetometers thereon; determining a first rotation vector Og based upon the rotation sensed by at least one of the three gyroscopes; determining a second rotation vector Om based upon the rotation sensed by the three accelerometers and the three magnetometers; and determining a compensation gain and a compensation bias for the at least one gyroscope based upon the first rotation vector and the second rotation vector; wherein determining the second rotation vector comprises; calculating a first rotation based upon the rotation sensed by changes in the accelerometers (dA); and calculating a second rotation based upon the rotation sensed by changes in the magnetometers (dM); wherein an acceleration vector A associated with the accelerometers corresponds to the changes sensed by the accelerometers (dA); and wherein a magnetic vector M associated with the magnetometers corresponds to the changes sensed by the magnetometers (dM); wherein calculating the first rotation is based upon solving for changes in the acceleration vector A defined by;
dAx=Oz*Av−
Oy*Az,
dAy=−
Oz*Ax+Ox*Az,
dAz=Qy*Ax−
Ox*Ay, andwherein determining the second rotation is based upon solving for changes in the magnetic vector M defined by;
dMx=Oz*My−
Oy*Mz,
dMy=−
Oz*Mx+Ox*Mz, and
dMz=Oy*Mx−
Ox*My;
where dMx, dMy, and dMz are the x, y, and z components, respectively, of the derivative of the magnetic vector M;
Mx, My, and Mz are the x, y, and z components, respectively, of the magnetic vector M;
dAx, dAy, and dAz are the x, y, and z components, respectively, of the derivative of the acceleration vector A;
Ax, Ay, and Az are the x, y, and z components, respectively, of the acceleration vector A; and
Ox, Oy, and Oz are the x, y, and z components, respectively, of the second rotation vector Om. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 13)
-
-
11. A gyroscope calibration system, comprising:
-
three gyroscopes mounted on a sensor platform and configured to sense a rotation of the sensor platform; three accelerometers and three magnetometers mounted on the sensor platform and configured to sense the rotation of the sensor platform; and a processor system operable to receive information corresponding to the sensed rotation from the three gyroscopes and the at least one of the three accelerometers and the three magnetometers, and configured to; determine a first rotation vector based upon the rotation sensed by the gyroscopes; determine a second rotation vector based upon the rotation sensed by at least one of the three accelerometers and the three magnetometers; and determine at least one of a compensation gain and a compensation bias for the at least one gyroscope based upon the first rotation vector and the second rotation vector; wherein the processor is configured to determine the second rotation vector by; calculating a first rotation based upon the rotation sensed by changes in the accelerometers (dA); and calculating a second rotation based upon the rotation sensed by changes in the magnetometers (dM); wherein an acceleration vector A associated with the accelerometers corresponds to the changes sensed by the accelerometers (dA); and wherein a magnetic vector M associated with the magnetometers corresponds to the changes sensed by the magnetometers (dM); wherein the processor system calculates the first rotation based upon solving for changes in the acceleration vector A defined by;
dAx=Oz*Av−
Oy*Az,
dAy=−
Oz*Ax+Ox*Az,
dAz=Qy*Ax−
Ox*Ay; andwherein determining the second rotation is based upon solving for changes in the magnetic vector M defined by;
dMx=Oz*My−
Oy*Mz,
dMy=−
Oz*Mx+Ox*Mz, and
dMz=Oy*Mx−
Ox*My;
where dMx, dMy, and dMz are the x, y, and z components, respectively, of the derivative of the magnetic vector M;
Mx, My, and Mz are the x, y, and z components, respectively, of the magnetic vector M;
dAx, dAy, and dAz are the x, y, and z components, respectively, of the derivative of the acceleration vector A;
Ax, Ay, and Az are the x, y, and z components, respectively, of the acceleration vector A; and
Ox, Oy, and Oz are the x, y, and z components, respectively, of the second rotation vector. - View Dependent Claims (12)
-
-
14. A system that compensates gyroscopes mounted on a sensor platform, comprising:
-
means for sensing a rotation of the sensor platform; and means for determining a first rotation vector based upon the rotation of the sensor platform sensed by three gyroscopes, determining a second rotation vector based upon the rotation sensed by the means for sensing, and determining at least one of a compensation gain and a compensation bias for the gyroscopes based upon the determined first rotation vector and the determined second rotation vectors; wherein the means for sensing comprises at least one of three accelerometers and three magnetometers; wherein determining the second rotation vector comprises; calculating a first rotation based upon the rotation sensed by changes in the accelerometers (dA); and calculating a second rotation based upon the rotation sensed by changes in the magnetometers (dM); wherein an acceleration vector A associated with the accelerometers corresponds to the changes sensed by the accelerometers (dA); and wherein a magnetic vector M associated with the magnetometers corresponds to the changes sensed by the magnetometers (dM); wherein calculating the first rotation is based upon solving for changes in the acceleration vector A defined by;
dAx=Oz*Av−
Oy*Az,
dAy=−
Oz*Ax+Ox*Az,
dAz=Qy*Ax−
Ox*Ay, andwherein determining the second rotation is based upon solving for changes in the magnetic vector M defined by;
dMx=Oz*My−
Oy*Mz,
dMy=−
Oz*Mx+Ox*Mz, and
dMz=Oy*Mx−
Ox*My;
where dMx, dMy, and dMz are the x, y, and z components, respectively, of the derivative of the magnetic vector M;
Mx, My, and Mz are the x, y, and z components, respectively, of the magnetic vector M;
dAx, dAy, and dAz are the x, y, and z components, respectively, of the derivative of the acceleration vector A;
Ax, Ay, and Az are the x, y, and z components, respectively, of the acceleration vector A; and
Ox, Oy, and Oz are the x, y, and z components, respectively, of the second rotation vector. - View Dependent Claims (15, 16)
-
Specification