1. Field of the Invention
The present invention is generally related to directional navigation and more specifically to correction of a magnetic bearing measured by a magnetometer.
2. Related Art
To navigate within a geographical area, various technologies may be used including a Global Positioning System (GPS), accelerometers, and/or magnetometers. A magnetometer is an electronic tool that measures the strength and/or direction of a magnetic field. In navigation, the Earth's magnetic field is used as a reference from which a magnetic bearing can be calculated.
The Earth's magnetic field, however, is subject to anomalies caused by metal objects in the geographical area. For example, the metal in an engine may generate a static anomaly that can affect the accuracy of a magnetometer installed in an automobile. Further, buildings, bridges, or the like having metal structures may cause an anomaly in a city or other dynamic environment through which the automobile is traveling.
Before the magnetometer is used for navigation in a dynamic environment subject to anomalies, the magnetometer is calibrated in a static environment. The static environment may comprise, for example, an automobile in which the magnetometer is installed. One exemplary method for calibrating a magnetometer is described in U.S. nonprovisional patent application Ser. No. 11/356,271, filed Feb. 15, 2006 and entitled, “Systems, Methods and Apparatuses for Continuous In-Vehicle and Pedestrian Navigation.” As a result of the calibration, a reference circle having a radius equal to the Earth's magnetic constant is generated. To compensate for static anomalies in the static environment, the calibration further ensures the origin of the reference circle is defined at a (0,0) coordinate of a coordinate system in which the reference circle is generated.
Based on the coordinates corresponding to points on the reference circle, a bearing may be calculated based on a first magnitude of the magnetic field along a first axis of the reference circle and a second magnitude of the magnetic field along a second axis of the magnetic field. However, due to anomalies in a dynamic environment, the measured magnitudes may not correspond to a point on the reference circle. There is, therefore, a need for a correction of the measured coordinates in the dynamic environment.
Various embodiments of the invention include a corrected magnetic bearing based on a slope of coordinates of a measured magnetic bearing relative to a defined origin and a magnetic field constant. The correction may be calculated based on a first magnitude of the measured magnetic bearing along a first axis, a second magnitude of the measured magnetic bearing along a second axis, and a magnetic field constant. The corrected magnetic bearing may be represented as a first magnitude of the corrected magnetic bearing along the first axis and a second magnitude of the corrected magnetic bearing along the second axis.
Further embodiments may include a magnetic anomaly variable filter configured to filter high frequency noise from the measured magnetic bearing prior to calculating the corrected magnetic bearing. Other embodiments may comprise a magnetic field anomaly detector configured to compare an anomaly detection limit to a magnitude of the measured and/or filtered magnetic bearing relative to the defined origin.
According to one embodiment, a method comprises receiving from a magnetometer coordinates of a measured magnetic bearing. From the coordinates, a corrected magnetic bearing based on a slope of the coordinates relative to a defined origin and a magnetic field constant is calculated. Lastly, the corrected magnetic bearing is output.
According to another embodiment, a system comprises a magnetic field circle application module configured to receive from a magnetometer a measured magnetic bearing, calculate a corrected magnetic bearing based on the measured magnetic bearing, a defined origin, and a magnetic field constant, and output the corrected magnetic bearing.
According to a third embodiment, a computer readable storage medium has embodied thereon a program, the program being executable by a processor for performing a method for correcting a magnetic bearing. The method comprises receiving from a magnetometer coordinates of a measured magnetic bearing. From the coordinates, a corrected magnetic bearing based on a slope of the coordinates relative to a defined origin and a magnetic field constant is calculated. Lastly, the corrected magnetic bearing is output.
Various embodiments of the invention include systems and methods for correcting a measured magnetic bearing. The measured magnetic bearing may be received from a magnetometer that was previously calibrated within a static environment. Based on the calibration, a reference circle having a defined origin and a radius equal to a magnetic field constant is generated. The measured magnetic bearing should, theoretically, correspond to a point on the reference circle. Due to magnetic field anomalies in a dynamic environment such as a city having a high concentration of metal structures, however, the measured magnetic bearing may not be on the reference circle. The measured magnetic bearing is typically close enough to the reference circle that the slope between the measured magnetic bearing and the defined origin is an accurate indication of an actual magnetic bearing. To correct the measured magnetic bearing, a circle application algorithm may be used to shift the measured magnetic bearing onto the reference circle while preserving the slope.
Further embodiments may include a low pass filter configured to filter out high frequency noise in the measured magnetic bearing prior to calculating the corrected magnetic bearing. Some embodiments may include a magnetic field anomaly detector configured to determine whether an anomaly exists that is sufficiently large enough to introduce uncertainty in the measured magnetic bearing. In these embodiments, a bearing validity indicator may be output based on the determination.
The point of intersection of the x-axis 105 and the y-axis 110 is the defined origin 115. The defined origin 115 may be defined during calibration of the magnetometer to compensate for magnetic field anomalies within a static environment. For example, if the magnetometer is mounted in an automobile, a persistent magnetic field anomaly may be present due to metal structures in the vehicle and/or engine.
Also during calibration, a reference circle 120 about the defined origin 115 is generated. The radius 125 of the reference circle 120 is approximately equal to Earth's magnetic field constant. In an environment having no magnetic anomalies, the measured magnetic bearing will consistently be on the reference circle 120.
The plurality of possible measured magnetic bearings 130, 135, 140, and 145 are received from a magnetometer over a period of time. The plurality of possible measured magnetic bearings 130, 135, 140, and 145 are not on the reference circle 120 due to one or more magnetic anomalies in a dynamic environment. The plurality of possible measured magnetic bearings 130, 135, 140, and 145 are each represented by a set of coordinates (XN,YN) indicating the first magnitude of the measured magnetic bearing along the x-axis 105 and the second magnitude of the measured magnetic bearing along the y-axis 110, respectively. When corrected, the plurality of possible measured magnetic bearings 130, 135, 140, and 145 are shifted to corresponding points on the reference circle 120.
A measured magnetic bearing 205 is represented as a set of coordinates (Xin,Yin). The slope 210 is the slope between the defined origin 115 (i.e., (0,0)) and (Xin,Yin). A corrected magnetic bearing 215, represented as a set of coordinates (Xout,Yout), is calculated such that it is on the reference circle 120. Further, the corrected magnetic bearing 215 has a slope relative to the defined origin 115 that is equal, or nearly equal, to the slope 210. Thus, using a mathematical calculation, the measured magnetic bearing 205 is shifted to a corresponding point on the reference circle 120 while preserving the slope 210.
The magnetometer 310 comprises a calibrated magnetometer configured to measure the strength and direction of a magnetic field. The magnetometer 310 may measure the direction of the magnetic field in two or three dimensions. The output of the magnetometer 310 includes a magnitude of the magnetic field in each of the dimensions. For example, if the magnetometer 310 is configured to measure the direction of the magnetic field in two dimensions, the output may be a coordinate such as “(3,2)” where “3” indicates the magnitude of the magnetic field along the x-axis 105 and “2” indicates the magnitude along the y-axis 110.
The optional magnetic anomaly variable filter 320 is a low pass filter configured to filter out high frequency noise in the measured magnetic bearing due to magnetic components in the magnetometer 310 and/or the magnetometer normalization engine 300. In some embodiments, the magnetic anomaly variable filter 320 may comprise one or more Kalman filters. In some embodiments, each magnitude within the measured magnetic bearing may be filtered using a separate Kalman filter.
The magnetic field circle application module 330 is configured to calculate a corrected magnetic bearing based on the measured magnetic bearing. In some embodiments, the measured magnetic bearing may be received from the magnetic anomaly variable filter 320. The corrected magnetic bearing has a same slope as the measured magnetic bearing relative to the defined origin 115. In some embodiments, the magnetic field circle application module 330 may calculate the measured magnetic bearing according to the formula:
where Xout is a first magnitude of the corrected magnetic bearing along a first axis, Yout is a second magnitude of the corrected magnetic bearing along a second axis, C is the magnetic field constant, and m is the slope calculated according to the formula
where Xin is a first magnitude of the measured magnetic bearing along the first axis and Yin is a second magnitude of the measured magnetic bearing along the second axis. In some embodiments, the magnetic field constant, C, is defined as 0.3325 gauss. In other embodiments, C may be determined during calibration of the magnetometer 310 as is known in the art. The output of the magnetic field circle application module 330 is the corrected magnetic bearing 350.
In the embodiment shown, the magnetic field circle application module 400 implements the equations described herein, at least, in connection with the magnetic field circle application 330. A measured magnetic bearing input 410, comprising Xin and Yin, is used to calculate the slope in a block 420. A magnetic field constant input 430 and the slope are used to calculate Xout at a block 440. In a block 450, Yout is calculated using the slope and Xout. Thus, a corrected magnetic bearing output 460 is output by the magnetic field circle application module 400.
The magnetic field circle application module 400 optionally includes an input and an output representing a third magnitude along a third axis (e.g., Zin 470 and Zout 480). In these embodiments, the measurements along the third axis may be used to compensate for error of the magnetometer as known to those skilled in the art and/or as described, at least, in U.S. nonprovisional patent application Ser. No. 11/356,271 filed Feb. 15, 2006 and entitled, “Systems, Methods and Apparatuses for Continuous In-Vehicle and Pedestrian Navigation.”
Referring back to
In some embodiments, the magnitude of the measured magnetic bearing may be compared to a defined maximum limit and a defined minimum limit. If the magnitude does not exceed the maximum limit and is not below the minimum limit, it is assumed that no severe magnetic anomaly is present.
In other embodiments, the magnetic field circle application module 330 monitors the magnitude of the measured magnetic bearing over a period of time. Based on these values, a mean magnetic field magnitude is calculated. The magnetic field anomaly detector may determine the difference between the measured magnetic bearing and the mean magnetic field magnitude. The difference can then be compared to a defined maximum limit and a defined minimum limit. If the difference does not exceed the maximum limit and is not below the minimum limit, it is determined that no severe magnetic anomaly is present.
Based on the comparison, the magnetic field anomaly detector 340 outputs a bearing validity indicator 360. According to some embodiments, the bearing validity indicator 360 may comprise a single binary bit. If there is a severe magnetic anomaly present, the magnetic field anomaly detector 340 is configured to output a bit corresponding to a “bad” bearing validity indicator. If there is no severe magnetic anomaly present, the magnetic field anomaly detector 340 is configured to output a bit corresponding to a “good” bearing validity indicator.
The bearing validity indicator 360 may be used in a navigation system to determine whether to use the corrected magnetic bearing 350. For example, if a “good” bearing validity indicator 360 is received, the corrected magnetic bearing 350 may be output, displayed to a user, used in further calculations, or the like. In some embodiments, the corrected magnetic bearing 350 may be stored in a memory as a last known good corrected magnetic bearing 350. Otherwise, if a “bad” bearing validity indicator 360 is received, a previously stored last known good corrected magnetic bearing 350 may be retrieved from the memory and output, displayed to a user, used in further calculations, or the like. Using a previously stored last known good corrected magnetic bearing 350 may be referred to as “freezing.”
In a step 505, the measured magnetic bearing is received from a magnetometer such as magnetometer 310. The measured magnetic bearing is represented as a set of coordinates (Xin,Yin) as discussed herein, at least, in connection with
In an optional step 510, the measured magnetic bearing is filtered to remove high frequency noise and/or disturbances caused by metal components. The measured magnetic bearing may be filtered by the magnetic anomaly variable filter 320.
In a step 515, the corrected magnetic bearing 350 is calculated by the magnetic field circle application module 330. The corrected magnetic bearing 350 is represented as a set of coordinates (Xout,Yout) as discussed herein, at least, in connection with
In a step 520, the corrected magnetic bearing 350 is output. The corrected magnetic bearing may be output to a display or other user interface. Alternatively or additionally, the corrected magnetic bearing may be output to a computing module or engine for further processing.
In an optional step 525, a determination is made by the magnetic field anomaly detector 340 as to whether the measured magnetic bearing is within an anomaly detection limit. In some embodiments, the magnitude of the magnetic field may be compared to the anomaly detection limit in order to determine whether a severe magnetic anomaly exists in the dynamic environment. The anomaly detection limit may be based on a mean magnetic field strength over a period of time.
If the measured magnetic bearing is within the anomaly detection limits, a “good” bearing validity indicator 360 is output in a step 530. If, however, the measured magnetic bearing is not within the anomaly detection limits, a “bad” bearing validity indicator 360 is output in a step 535. For example, the bearing validity indicator may be a designated bit having a value of 0 if the output is “good” and a value of 1 if the output is “bad.”
The bearing validity indicator 360 may be used within a larger navigation system to determine whether to use a previously saved bearing if the magnitude of the measured magnetic bearing relative to the defined origin exceeds the anomaly detection limit. A larger navigation system comprising other navigational aids such as GPS, accelerometers, or the like may use the bearing validity indicator to determine whether to use a last known good bearing, rely on other navigational aids, or the like. For example, in some embodiments, the larger navigation system may be a Destinator Continuous Navigation module as described in U.S. nonprovisional patent application Ser. No. 11/356,271 filed Feb. 15, 2006 and entitled, “Systems, Methods and Apparatuses for Continuous In-Vehicle and Pedestrian Navigation” which is hereby incorporated herein by reference. In these embodiments, if a “bad” bearing validity indicator is received, the navigation system does not update its heading information when a severe magnetic anomaly is detected.
Several embodiments are specially illustrated and/or described herein. However, it will be appreciated that modification and variations are covered by the above teachings and within the scope of the appended claims without departing from the spirit and intended scope thereof.
The embodiments discussed herein are illustrative of the present invention. As these embodiments of the present invention are described with reference to illustrations, various modifications or adaptations of the methods or specific structures described may become apparent to those skilled in the art. All such modifications, adaptations, or variations that rely upon the teachings of the present invention, and through which these teachings have advanced the art, are considered to be within the spirit and scope of the present invention. Hence, these descriptions and drawings should not be considered in a limiting sense, as it is understood that the present invention is in no way limited to only the embodiments illustrated.
This U.S. nonprovisional patent application claims priority to and the benefit of U.S. provisional patent application No. 60/920,241 filed Mar. 26, 2007 and entitled “Continuous Navigation System” which is hereby incorporated by reference herein.
Number | Date | Country | |
---|---|---|---|
60920241 | Mar 2007 | US |