Motion Sensor with Drift Correction
Abstract
Systems and/or devices for implementing a tracking device for tracking a position/location and orientation of an object are provided herein. The device comprises one or more sides that define a predetermined shape, and a plurality of inertial measurement units (IMU) mounted to the one or more sides of the predetermined shape. Each IMU is configured to detect movement of the object and generate inertial output data representing a position and/or orientation of the object. Each IMU includes a first sub-sensor and a second sub-sensor. Each IMU is positioned at a predetermined distance and orientation relative to a center point of the tracking device. The device also comprises a controller communicatively coupled to the plurality of IMUs, the controller configured to receive output data from each of the plurality of IMUs, and determine position/location and orientation of the object based on the received output data from the plurality of IMUs and known data points for the predetermined shape to eliminate drift from sensor data.
Claims
exact text as granted — not AI-modified1 . (canceled)
2 . A tracking device for tracking a location and orientation of an object, the tracking device comprising:
one or more sides that define a predetermined shape; a plurality of inertial measurement units (IMU) mounted to the one or more sides of the predetermined shape, wherein each IMU is configured to detect movement of the object and generate inertial output data representing the location and/or orientation of the object, wherein each IMU includes a first sub-sensor and a second sub-sensor, wherein each IMU is positioned at a predetermined distance and orientation relative to a center of mass of the tracking device;
a controller communicatively coupled to the plurality of IMUs, the controller configured to perform the steps of:
receiving respective inertial output data from the first sub-sensor and the second sub-sensor of one or more IMUs of the plurality of IMUs;
for each IMU:
synthesizing the respective inertial output data of the IMU to create IMU synthesized data by iteratively applying synthesizing methodology on the respective inertial output data of the IMU;
calculating a current tracking device rectified data output based on the data synthesized for the IMU, a predetermined position of the IMU and a predetermined orientation of the IMU; and
calculating a current location and orientation of the object based on a difference between the current tracking device rectified data output and a previous tracking device rectified data output.
3 . The tracking device of claim 2 , wherein the controller is further configured to perform the steps of:
for each IMU:
cross-correlating the first sub-sensor inertial output data with the second sub-sensor inertial output data to identify and remove anomalies from the first sub-sensor inertial output data with the second sub-sensor inertial output data to generate decomposed inertial output data, and
determining a positional and rotational state of the tracking device based on the decomposed inertial output data from each of the IMUS; and
wherein synthesizing the respective inertial output data of the IMU to create IMU synthesized data includes using a synthesizing methodology based on the positional and rotational state of the tracking device.
4 . The tracking device of claim 3 , wherein the controller is further configured to perform the steps of:
for each IMU:
generating calibrated inertial output data based on the respective inertial output data; and
wherein synthesizing the respective inertial output data of the IMU to create IMU synthesized data is further based on the calibrated inertial output data.
5 . The tracking device of claim 4 , wherein generating calibrated inertial output data includes using neural network weights to evaluate the respective inertial output data, wherein the weights are adjusted at a learning rate based on the positional state of the tracking device, calculating a discrepancy value representative of a difference between an actual movement of the object and estimated movement of the object, and removing the discrepancy value from the calibrated inertial output data.
6 . The tracking device of claim 5 , wherein the weights are further adjusted based on historical inertial output data from each of the first and second sub-sensors.
7 . The tracking device of claim 3 , wherein the decomposed inertial output data corresponding to the first sub-sensor is calibrated based on the second sub-sensor inertial output data.
8 . The tracking device of claim 3 , wherein cross-correlating the first sub-sensor inertial output data with the second sub-sensor inertial output data includes applying pattern recognition to the second sub-sensor inertial output data to generate the decomposed inertial output data.
9 . The tracking device of claim 2 , wherein the first sub-sensor inertial output data and the second sub-sensor inertial output data are filtered to minimize signal noise through signal conditioning.
10 . The tracking device of claim 2 , wherein the first sub-sensor inertial output data and second sub-sensor inertial output data from each of the plurality of IMUs is received periodically at less than approximately 1 ms.
11 . The tracking device of claim 2 , wherein first sub-sensor and second sub-sensor are each one of: accelerometer, magnetometer, gyroscope, altimeter, and/or pressure sensor; wherein the first sub-sensor is a different sensor type than the second sub-sensor.
12 . The tracking device of claim 2 , wherein the predetermined shape is one of: a plane, a tetrahedron, and a cube.
13 . The tracking device of claim 2 , wherein at least some of the IMUs used to calculate the rectified data output are oriented at different angles along two different axes relative to each other.
14 . The tracking device of claim 2 , wherein calculating the current position and orientation of the object based on the difference between the current tracking device rectified data output and the previous tracking device rectified data output include:
identifying an edge condition; and blending the current tracking device rectified data output and the previous tracking device rectified data output to remove the edge condition.
15 . A method of tracking a position and orientation of an object using a tracking device, the tracking device including one or more sides that define a predetermined shape, a plurality of inertial measurement units (IMU) mounted to the one or more sides of the predetermined shape, wherein each IMU includes a first sub-sensor and a second sub-sensor, wherein each IMU is positioned at a predetermined distance and orientation relative to a center of mass of the tracking device, and a controller communicatively coupled to the plurality of IMUs, the method comprising:
at each IMU, detecting movement of the object and generating inertial output data representing a position and/or orientation of the object; at the controller:
receiving respective inertial output data from the first sub-sensor and the second sub-sensor of one or more IMUs of the plurality of IMUs;
for each IMU:
synthesizing the respective inertial output data of the IMU to create IMU synthesized data by iteratively applying synthesizing methodology on the respective inertial output data of the IMU;
calculating a current tracking device rectified data output based on the data synthesized for the IMU, a predetermined position of the IMU and a predetermined orientation of the IMU; and
calculating a current location and orientation of the object based on a difference between the current tracking device rectified data output and a previous tracking device rectified data output.
16 . The method of claim 15 , wherein the controller is further configured to perform the steps of:
for each IMU:
cross-correlating the first sub-sensor inertial output data with the second sub-sensor inertial output data to identify and remove anomalies from the first sub-sensor inertial output data with the second sub-sensor inertial output data to generate decomposed inertial output data, and
determining a positional and rotational state of the tracking device based on the decomposed inertial output data from each of the IMUs; and
wherein synthesizing the respective inertial output data of the IMU to create IMU synthesized data includes using a synthesizing methodology based on the positional and rotational state of the tracking device.
17 . The method of claim 16 , wherein the controller is further configured to perform the steps of:
for each IMU:
generating calibrated inertial output data based on the respective inertial output data; and
wherein synthesizing the respective inertial output data of the IMU to create IMU synthesized data is further based on the calibrated inertial output data.
18 . The method of claim 17 , wherein generating calibrated inertial output data includes using neural network weights to evaluate the respective inertial output data, wherein the weights are adjusted at a learning rate based on the positional state of the tracking device, calculating a discrepancy value representative of a difference between an actual movement of the object and estimated movement of the object, and removing the discrepancy value from the calibrated inertial output data.
19 . The method of claim 18 , wherein the weights are further adjusted based on historical inertial output data from each of the first and second sub-sensors.
20 . The method of claim 16 , wherein the decomposed inertial output data corresponding to the first sub-sensor is calibrated based on the second sub-sensor inertial output data.
21 . A non-transitory computer readable storage medium storing one or more computer programs configured for execution by a computer system including one or more processors, using a tracking device, the tracking device including one or more sides that define a predetermined shape, a plurality of inertial measurement units (IMU) mounted to the one or more sides of the predetermined shape, wherein each IMU includes a first sub-sensor and a second sub-sensor, wherein each IMU is positioned at a predetermined distance and orientation relative to a center of mass of the tracking device, and a controller communicatively coupled to the plurality of IMUs, the one or more computer programs that when executed cause the computer system to perform:
receive respective inertial output data from the first sub-sensor and the second sub-sensor of one or more IMUs of the plurality of IMUs;
for each IMU:
synthesize the respective inertial output data of the IMU to create IMU synthesized data by iteratively applying synthesizing methodology on the respective inertial output data of the IMU;
calculate a current tracking device rectified data output based on the data synthesized for the IMU, a predetermined position of the IMU and a predetermined orientation of the IMU; and
calculate a current location and orientation of the object based on a difference between the current tracking device rectified data output and a previous tracking device rectified data output.Join the waitlist — get patent alerts
Track US2021190498A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.