Determining and correcting error of positional vector-valued sensors using a fixed angle calibration process
First Claim
Patent Images
1. A sensor calibration system comprising:
- a vector-value sensor disposed in a single housing;
a special-purpose computer machine configured to automatically calculate a set of vector corrections in response to receiving, as computer input, a set of sensed vectors from said vector-value sensor wherein said computer machine is further configured to calculate a final correction vector and apply said final correction vector to a live sensor reading by;
in response to placing said vector-value sensor in a prime orientation;
recording, in a computer memory, a prime sensed vector;
in response to rotating said vector-value sensor a first known angle away from said prime orientation;
recording, in said computer memory, a first sensed vector;
in response to rotating said vector-value sensor a second known angle away from said prime orientation;
recording, in said computer memory, a second sensed vector;
in response to rotating said vector-value sensor through “
n”
known angles away from said prime orientation;
recording, in said computer memory, through “
n”
sensed vector(s);
calculating a set of calculated vectors by;
calculating a first calculated vector by rotating the prime sensed vector obtained from the vector-value sensor by said first known angle away from said prime orientation;
calculating a second calculated vector by rotating the prime sensed vector obtained from the vector-value sensor by said second known angle away from said prime orientation;
calculating through “
n”
calculated vector(s) by rotating the prime sensed vector obtained from the vector-value sensor by each of said “
n”
known angle(s) away from said prime orientation;
calculating a set of first, second, through “
n”
vector corrections (cvi) by subtracting;
said first sensed vector from said first calculated vector;
said second sensed vector from said second calculated vector;
each of said “
n”
sensed vectors from each of said “
n”
calculated vector(s); and
calculating said final correction vector, for an input vector from said vector-valued sensor, using said set of vector corrections; and
storing said final correction vector in said computer memory;
recording a live sensor reading provided by said vector-value sensor; and
applying said final correction vector to said live sensor reading.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods described herein relate to the correction of positional vector-valued sensors using a variety of calibration processes including fixed-angle calibration, known-angle calibration, ortho-calibration and 3-axis gimbal calibration further including various weighting schemes to provide fine-tuned functions or interpolated data which may be used for real-time sensor correction calculation or to populate a look-up table of corrected values.
-
Citations
17 Claims
-
1. A sensor calibration system comprising:
-
a vector-value sensor disposed in a single housing; a special-purpose computer machine configured to automatically calculate a set of vector corrections in response to receiving, as computer input, a set of sensed vectors from said vector-value sensor wherein said computer machine is further configured to calculate a final correction vector and apply said final correction vector to a live sensor reading by; in response to placing said vector-value sensor in a prime orientation; recording, in a computer memory, a prime sensed vector; in response to rotating said vector-value sensor a first known angle away from said prime orientation; recording, in said computer memory, a first sensed vector; in response to rotating said vector-value sensor a second known angle away from said prime orientation; recording, in said computer memory, a second sensed vector; in response to rotating said vector-value sensor through “
n”
known angles away from said prime orientation;recording, in said computer memory, through “
n”
sensed vector(s);calculating a set of calculated vectors by; calculating a first calculated vector by rotating the prime sensed vector obtained from the vector-value sensor by said first known angle away from said prime orientation; calculating a second calculated vector by rotating the prime sensed vector obtained from the vector-value sensor by said second known angle away from said prime orientation; calculating through “
n”
calculated vector(s) by rotating the prime sensed vector obtained from the vector-value sensor by each of said “
n”
known angle(s) away from said prime orientation;calculating a set of first, second, through “
n”
vector corrections (cvi) by subtracting;said first sensed vector from said first calculated vector; said second sensed vector from said second calculated vector; each of said “
n”
sensed vectors from each of said “
n”
calculated vector(s); andcalculating said final correction vector, for an input vector from said vector-valued sensor, using said set of vector corrections; and storing said final correction vector in said computer memory; recording a live sensor reading provided by said vector-value sensor; and applying said final correction vector to said live sensor reading. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A sensor calibration system comprising:
-
a vector-value sensor selected from the group consisting of a magnetometer and a accelerometer; a special purpose computer machine configured to automatically calculate a final correction vector for an input vector and apply said final correction vector to a live sensor reading by; in response to placing said vector-value sensor in a prime orientation, recording a prime sensed vector; in response to rotating said vector-value sensor a first known angle away from said prime orientation, recording, in computer memory, a first sensed vector; in response to rotating said vector-value sensor a second known angle away from said prime orientation, recording, in computer memory, a second sensed vector; in response to rotating said vector-value sensor through “
n”
known angle(s) away from said prime orientation, recording, in computer memory, through an “
n”
sensed vector;calculating a set of calculated vectors by; calculating a first calculated vector by rotating the prime sensed vector obtained from the vector-value sensor by said first known angle away from said prime orientation; calculating a second calculated vector by rotating the prime sensed vector obtained from the vector-value sensor by said second known angle away from said prime orientation; calculating through “
n”
calculated vector(s) by rotating the prime sensed vector obtained from the vector-value sensor by each of said “
n”
known angle(s) away from said prime orientation;calculating a set of first, second through “
n”
vector corrections (cvi) by subtracting each of said first, second through “
n”
sensed vectors from each of said calculated vectors where said sensed vectors and said calculated vectors share said known angle;calculating said final correction vector for said input vector by taking a weighted average of said set of first, second, through “
n”
vector corrections wherein a proximity value (p) weights more proximate vectors more heavily than less proximate vectors,for each sensed vector (si) a weight (wi) is calculated in relation to said input vector (v) using the formula;
wi=((v*si)+1)p,each of said weights calculated is summed into weighttotal;
each of said weights (wi) is divided by weighttotal; and
said final correction vector (cvfinal) is calculated by a cvfinal formula comprising;
cvfinal=Σ
cvi*wi; andstoring said final correction vector in computer memory; recording a live sensor reading provided by said vector-value sensor; and applying said final correction vector to said live sensor reading. - View Dependent Claims (15)
-
-
16. A sensor correction system comprising a computer machine further comprising computer-executable instructions to:
-
receive an input vector reading from a vector-value sensor; access a computer memory comprising a set of interpolated final correction vectors for a plurality of vector readings, wherein; said set of interpolated final correction vectors are determined from; a set of sensed vectors obtained from the vector-value sensor in response to rotating said vector-value sensor through at least “
n”
known angles; anda set of calculated vectors in response to rotating a prime sensed vector obtained from the vector-value sensor through said “
n”
known angles away from a prime orientation, wherein said sensed vectors and said calculated vectors are subtracted from one another, weighted, and normalized, wherein a given final correction vector is calculated using a cvfinal formula comprising;
cvfinal=Σ
cvi*wi wherein cvfinal is said final correction vector, cvi represents a correction vector associated with each angle rotation, and wi represents a normalized weight factor;select an applicable final correction vector; return said final correction vector as computer machine output; receive a live sensor reading from said vector-value sensor; and apply said vector-value sensor to said live sensor reading. - View Dependent Claims (17)
-
Specification