WO2017073532A1 - オフセット導出装置、オフセット算出装置、及び、方位角センサ - Google Patents
オフセット導出装置、オフセット算出装置、及び、方位角センサ Download PDFInfo
- Publication number
- WO2017073532A1 WO2017073532A1 PCT/JP2016/081511 JP2016081511W WO2017073532A1 WO 2017073532 A1 WO2017073532 A1 WO 2017073532A1 JP 2016081511 W JP2016081511 W JP 2016081511W WO 2017073532 A1 WO2017073532 A1 WO 2017073532A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- offset
- value
- axis
- data
- magnetic detection
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C17/00—Compasses; Devices for ascertaining true or magnetic north for navigation or surveying purposes
- G01C17/02—Magnetic compasses
- G01C17/28—Electromagnetic compasses
- G01C17/32—Electron compasses
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C17/00—Compasses; Devices for ascertaining true or magnetic north for navigation or surveying purposes
- G01C17/38—Testing, calibrating, or compensating of compasses
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R33/00—Arrangements or instruments for measuring magnetic variables
- G01R33/02—Measuring direction or magnitude of magnetic fields or magnetic flux
Definitions
- the present invention relates to an offset deriving device, an offset calculating device, and an azimuth angle sensor using the same.
- An azimuth angle sensor measures the azimuth angle by detecting the direction of geomagnetism.
- the geomagnetism to be measured is very weak. Therefore, in order to accurately detect the azimuth angle, an external magnetic field existing in the surrounding environment (a magnetic field generated inside the device equipped with the azimuth angle sensor or a magnetic field generated by a strong magnet placed around the azimuth angle sensor) Etc.) or offset due to the performance of the azimuth angle sensor itself must be canceled to detect true geomagnetism (see, for example, Patent Document 1 below).
- the offset of the azimuth sensor constantly changes in time and space. Therefore, in order to accurately detect the azimuth angle, it is necessary to continuously cancel the offset of the azimuth angle sensor. In order to continue canceling offsets that constantly change in time and space, it is necessary to update the offset values for performing offset correction one after another.
- Update operation control that also takes this into consideration is expected to improve the accuracy of the offset value used for offset correction, and thus improve the detection accuracy of the azimuth.
- a first object of the present invention is to provide an offset deriving device and method that contribute to improving the accuracy of an offset value related to magnetic detection, and an azimuth sensor and an electronic apparatus using the offset deriving device.
- an offset correction method there are a method in which the user who uses the device intentionally performs manual correction and a method in which the user automatically performs correction without intention, and considering the improvement of user convenience and the detection accuracy of the azimuth angle sensor, It is desirable to adopt the latter method.
- the invention disclosed in this specification accurately offsets each axis even when the fluctuation range of any of the three axes of magnetic detection data is small. It is a second object of the present invention to provide an offset calculation device capable of calculating and an azimuth sensor using the same.
- the offset deriving device is an original that is sequentially acquired as data points on a three-axis coordinate system or a two-axis coordinate system by detecting magnetism on three or two axes.
- An offset derivation device for deriving an offset value for correcting magnetic detection data to generate corrected magnetic detection data, wherein the offset value is obtained using a plurality of data points in the original magnetic detection data or the corrected magnetic detection data.
- the updating unit updates the offset value with the provisional determination value and calculates the derived magnetic magnitude.
- the reference range is also updated based on the above, and if not, the offset value and the reference range are not updated.
- the updated reference range is a range including the derived magnitude of the magnetism. good.
- the updated reference range is a range centered on the derived magnetic magnitude. Also good.
- an initial setting unit that sets an initial reference range as a reference range before update based on the original magnetic detection data may be further provided in the offset deriving device.
- the provisional decision value deriving unit uses one of the N data points as the plurality of data points as a reference data point (where N is an integer equal to or greater than 2).
- N is an integer equal to or greater than 2.
- To translate a point It may deriving the temporary decision value by.
- the coordinate value of the i-th virtual data point constituting the (N ⁇ 1) virtual data points is (Hxi ′, Hyi ′, Hzi ′) (however, , I is an integer greater than or equal to 1 and less than or equal to (N ⁇ 1)), and when the coordinate value of the virtual offset point is (Hx0 ′, Hy0 ′, Hz0 ′), the provisional determination value deriving unit is represented by the following formula (A1 The coordinate value of the virtual offset point may be derived so as to minimize the value of the function F H1 ).
- the coordinate value of the i-th virtual data point constituting the (N ⁇ 1) virtual data points is (Hxi ′, Hyi ′) (where i is 1 or more and (N -1) The following integer), where the coordinate value of the virtual offset point is (Hx0 ′, Hy0 ′), the provisional determination value deriving unit minimizes the value of the function F H2 in the following equation (A2) Thus, it is preferable to derive the coordinate value of the virtual offset point.
- the direction sensor includes a magnetic detection device that generates original magnetic detection data by detecting magnetism in three or two axes, the offset derivation device that derives an offset value of the original magnetic detection data, and the offset An offset correction device that generates corrected magnetic detection data by correcting the original magnetic detection data using a value, and an azimuth angle calculation unit that generates azimuth angle data from the corrected magnetic detection data And
- An electronic apparatus includes the azimuth angle sensor.
- the offset deriving method corrects original magnetic detection data sequentially acquired as data points on a three-axis coordinate system or two-axis coordinate system by detecting magnetism on three or two axes, thereby correcting magnetic detection data.
- the seventh reference data point Hx7, Hy7, Hz7
- Out of the six data points at least four points corresponding respectively to the maximum and minimum values of the X axis and the Y axis are uniformly set so that the reference data point coincides with the origin (0, 0, 0).
- the offset calculation apparatus having the first configuration calculates the offset values Hx0 and Hy0 using the following equations (f3a) and (f3b) without using the equation (f1) (first). 2).
- the threshold value is determined for each axis according to the magnitude of the spatial magnetic field in the field, or the XY plane component and the Z-axis component obtained by decomposing the threshold value. (3rd configuration) is preferable.
- the Z-axis threshold value may be configured to be smaller than the threshold values for the X-axis and the Y-axis (fourth configuration).
- the offset calculating device having the third or fourth configuration uses a geomagnetic dip angle in the field to decompose the magnitude of the spatial magnetic field into an XY plane component and a Z-axis component (fifth configuration). ).
- the offset calculating apparatus having the fifth configuration calculates the magnitude of the spatial magnetic field and the dip angle using the newly obtained new offset values of the respective axes, and each calculated value satisfies a predetermined condition. It is preferable to adopt a configuration (sixth configuration) for determining whether or not to discard the new offset value depending on whether or not it is present.
- the reference data point corresponds to at least the maximum value and the minimum value of the X axis and the Y axis, respectively, among the six data points.
- a configuration is a data point that is separated from the four points by a distance equal to or greater than a predetermined value.
- the offset calculation device disclosed in the present specification calculates the offset of the X axis and the Y axis and calculates the offset from the X axis and the Y axis when calculating the offset of each of the three axes of magnetic detection data.
- a configuration in which Z-axis offset calculation with small fluctuation is separately performed.
- the offset calculation apparatus having the eighth configuration first calculates the X-axis and Y-axis offset values, and uses the calculation result to calculate the Z-axis offset value.
- a configuration (9th configuration) is preferable.
- the azimuth angle sensor disclosed in the present specification includes a magnetic detection device that generates magnetic detection data of three axes, and any one of the first to ninth configurations that calculates an offset of the magnetic detection data. And an azimuth angle calculation device that generates azimuth angle data from the corrected magnetic detection data (tenth configuration). ing.
- an offset deriving device and method that contribute to improving the accuracy of an offset value related to magnetic detection, and an azimuth angle sensor and an electronic apparatus using the offset deriving device.
- an offset calculation apparatus capable of accurately calculating the offset of each axis even when the fluctuation range of any of the three axes of magnetic detection data is small, and the same It becomes possible to provide an azimuth angle sensor using.
- the block diagram which shows the whole structure of the azimuth angle sensor which concerns on 1st Embodiment of this invention.
- 3 axis coordinate space diagram (XYZ coordinate space diagram) for explaining the offset derivation processing according to the first embodiment of the present invention.
- Flow chart of operation related to update of offset value in azimuth sensor Flow chart of initial value determination processing executed by azimuth angle sensor
- the figure for demonstrating the 1st example of the swing motion of an azimuth sensor The figure for demonstrating the 2nd example of the swing motion of an azimuth sensor
- a figure showing how a geomagnetic vector rotates around the Z axis The figure which shows the change of the X-axis component of the magnetism detection data at the time of rotation of the geomagnetic vector around the Z-axis, and the Y-axis component.
- FIG. 1 is an internal block diagram of the offset deriving unit.
- the block diagram which shows the whole structure of the azimuth angle sensor which concerns on 2nd Embodiment of this invention.
- XYZ coordinate space diagram showing a first example of offset calculation processing
- the flowchart which shows the 2nd example of offset calculation processing XYZ coordinate space diagram showing maximum and minimum values of three axes Time chart showing transition behavior of difference value ⁇ Hx Time chart showing an example of selection of reference data points translated to the origin O XYZ coordinate space diagram for explaining points to consider when selecting data points corresponding to the maximum and minimum values of three axes as reference points
- Flowchart showing a third example of offset calculation processing The flowchart which shows the 4th example of offset calculation processing XZ plan view of the magnetic field (large Z-axis magnetic field fluctuation) XZ plan view of magnetic field (small Z-axis magnetic field fluctuation) Exploded view of geomagnetic component Schematic diagram showing an example of environmental dependence of geomagnetism Schematic diagram showing geomagnetic dip Correlation diagram between magnetic detection data and acceleration data Flow chart showing an example of offset update processing External view of smartphone External view of tablet terminal Smart watch appearance External view of the vehicle
- FIG. 1 is a block diagram showing an overall configuration of an azimuth angle sensor 1 according to the first embodiment of the present invention.
- the azimuth angle sensor 1 includes a magnetic detection unit 10, an offset correction unit 20, an offset derivation unit 30, and an azimuth angle calculation unit 40.
- the magnetism detection unit 10 detects magnetism in the place where the azimuth sensor 1 is present. It may be considered that the magnetism as the detection target includes the geomagnetism and is the geomagnetism itself.
- the magnetic detection unit 10 is a three-axis magnetic detection unit that detects the detection target magnetism in each of the X axis, the Y axis, and the Z axis. That is, the magnetic detection unit 10 includes magnetic sensors 10X, 10Y, and 10Z that detect the X-axis component, the Y-axis component, and the Z-axis component of the magnetism to be detected, and includes three-axis magnetic detection data (Hx, Hy, Hz). Is generated and output.
- Hx, Hy, and Hz output from the magnetic detection unit 10 represent the X-axis component, Y-axis component, and Z-axis component of the magnetism detected by the magnetic detection unit 10, respectively.
- the X axis, the Y axis, and the Z axis are orthogonal to each other.
- a magnetic detection element of each of the magnetic sensors 10X, 10Y, and 10Z for example, a Hall element or an MR (magnetoresistance) element may be used as a magnetic detection element of each of the magnetic sensors 10X, 10Y, and 10Z.
- the offset correction unit 20 corrects the magnetic detection data (Hx, Hy, Hz) output from the magnetic detection unit 10 using the offset value supplied from the offset deriving unit 30 to correct the magnetic detection data (Hx, Hy, Hz) is output. This correction is called offset correction.
- the offset value is an offset component (Hx OFF , Hy OFF , Hz OFF ) included in the magnetic detection data (Hx, Hy, Hz) output from the magnetic detection unit 10. That is, Hx OFF , Hy OFF , and Hz OFF are offset components of Hx, Hy, and Hz that are output from the magnetic detection unit 10, respectively.
- the X-axis component, the Y-axis component, and the Z-axis component of the magnetic detection data before the offset correction are represented by Hx, Hy, and Hz, respectively, and the X-axis component, the Y-axis component, and the Z-axis of the magnetic detection data after the offset correction.
- Hxc, Hyc, and Hzc are represented by Hxc, Hyc, and Hzc, respectively.
- the magnetic detection data (Hx, Hy, Hz) before offset correction may be particularly referred to as original magnetic detection data, and the magnetic detection data (Hx, Hy, Hz) after offset correction may be referred to. In particular, it may be referred to as corrected magnetic detection data.
- the offset deriving unit 30 derives and sets an offset value (Hx OFF , Hy OFF , Hz OFF ) based on the original magnetism detection data or the corrected magnetism detection data, and if necessary, the offset value (Hx OFF , Hy OFF , Hz) OFF ) is updated.
- the azimuth angle calculation unit 40 generates and outputs azimuth angle data So based on the corrected magnetic detection data (Hx, Hy, Hz).
- the azimuth data So represents in which direction the detection target magnetism (geomagnetism) is directed in a three-axis coordinate system (in other words, a three-axis coordinate space) composed of the X, Y, and Z axes. More specifically, for example, the azimuth angle data So may represent the relationship between the X-axis direction and the geomagnetic direction.
- the magnetism detection unit 10 periodically detects magnetism, and generates and outputs the latest original magnetism detection data (Hx, Hy, Hz) one after another.
- the offset correction unit 20 also periodically generates and outputs the latest corrected magnetic detection data (Hx, Hy, Hz)
- the azimuth angle calculation unit 40 also periodically generates and outputs the latest azimuth angle data So. To do.
- the offset correction unit 20, the offset derivation unit 30, and the azimuth angle calculation unit 40 are depicted as independent processing blocks, but these processing blocks are a CPU (central processing unit) or a DSP (digital signal processor). ) Or the like.
- FIG. 2 is a three-axis coordinate space diagram (XYZ coordinate space diagram) related to the offset derivation process.
- One magnetic detection data (Hx, Hy, Hz) is handled as one data point on a three-axis coordinate system (that is, an XYZ coordinate system having the X, Y, and Z axes as coordinate axes).
- N data points in the triaxial magnetic detection data (Hx, Hy, Hz) sequentially obtained as data points on the triaxial coordinate system are referred to as N evaluation data points.
- Each evaluation data point may be a data point of corrected magnetic detection data.
- the coordinate value of the data point Pi which is the i-th evaluation data point is represented by the coordinate value (Hxi, Hyi, Hzi) of one data point constituting the corrected magnetic detection data (i is an integer).
- the X-axis, Y-axis, and Z-axis coordinate values of the data point Pi are the X-axis coordinate value Hxi, the Y-axis coordinate value Hyi, and the Z-axis coordinate value of one data point constituting the corrected magnetic detection data.
- Hzi (i is an integer).
- each evaluation data point may be a data point of the original magnetic detection data.
- the coordinate value of the data point Pi which is the i-th evaluation data point is represented by the coordinate value (Hxi, Hyi, Hzi) of one data point constituting the original magnetic detection data (i is an integer).
- the X-axis, Y-axis, and Z-axis coordinate values of the data point Pi are the X-axis coordinate value Hxi, the Y-axis coordinate value Hyi, and the Z-axis coordinate value of one data point constituting the original magnetic detection data. Expressed in Hzi (i is an integer).
- the data points P1 to P7 are set so that the reference data point arbitrarily selected from the data points P1 to P7 coincides with the origin O (0, 0, 0) on the three-axis coordinate system. Are uniformly translated.
- the data point P7 is selected as the reference data point.
- six virtual data points P1 'to P6' excluding the reference data point P7 are derived and set by the parallel movement.
- Virtual data points P1 'to P6' represent data points P1 to P6 after translation, respectively.
- a virtual offset point C ′ that minimizes the total sum of the distances between the curved surface H1 passing through the origin O and the virtual data points P1 ′ to P6 ′ (total of six distances) is obtained. That is, the coordinate value of the virtual offset point C ′ that minimizes the value of the function F H1 of the curved surface H1 represented by the following formula (1) is calculated.
- Hxi ′, Hyi ′, and Hzi ′ represent the X-axis, Y-axis, and Z-axis coordinate values of the virtual data point Pi ′, respectively (i is an arbitrary integer, where 1 or more and ( N-1) The following integers), Hx0 ′, Hy0 ′, and Hz0 ′ represent the X-axis, Y-axis, and Z-axis coordinate values of the virtual offset point C ′, respectively.
- the curved surface H1 is a spherical surface centered on the virtual offset point C ′ and passing through the origin O (the radius of the spherical surface is the distance between the origin O and the virtual offset point C ′). be equivalent to).
- the original offset point C is calculated by translating the virtual offset point C ′ so as to restore the previous amount of translation. That is, the offset point C is a point obtained by translating the virtual offset point C ′ in the opposite direction with the same amount of movement as the parallel movement for moving the data point P7 to the origin O.
- Hx0, Hy0, and Hz0 represent the X-axis, Y-axis, and Z-axis coordinate values of the offset point C, respectively.
- the offset value Hx OFF, Hy OFF, Hz OFF
- updates the offset value can be supplied to the offset correction portion 20 It is.
- the method is offset correction of biaxial magnetism detection data (Hx, Hy). It can also be applied to the target.
- biaxial magnetism detection data (Hx, Hy) is to be offset corrected, the Z-axis coordinates at data points P1 to P7, virtual data points P1 'to P6', virtual offset point C 'and offset point C
- the method may be applied in a two-dimensional plane coordinate system parallel to the X axis and the Y axis, assuming that all values are zero.
- One magnetic detection data (Hx, Hy) is handled as one data point on a biaxial coordinate system (that is, an XY coordinate system having the X axis and the Y axis as coordinate axes).
- a biaxial coordinate system that is, an XY coordinate system having the X axis and the Y axis as coordinate axes.
- N data points are referred to as N evaluation data points.
- Each evaluation data point may be a data point of corrected magnetic detection data.
- the coordinate value of the data point Pi that is the i-th evaluation data point is represented by the coordinate value (Hxi, Hyi) of one data point constituting the corrected magnetic detection data (i is an integer).
- the X-axis and Y-axis coordinate values of the data point Pi are represented by the X-axis coordinate value Hxi and the Y-axis coordinate value Hyi of one data point constituting the corrected magnetic detection data (i is an integer).
- each evaluation data point may be a data point of the original magnetic detection data.
- the coordinate value of the data point Pi that is the i-th evaluation data point is represented by the coordinate value (Hxi, Hyi) of one data point constituting the original magnetism detection data (i is an integer).
- the X-axis and Y-axis coordinate values of the data point Pi are represented by the X-axis coordinate value Hxi and the Y-axis coordinate value Hyi of one data point constituting the original magnetic detection data (i is an integer). ).
- the data points P1 to P7 are set so that the reference data point arbitrarily selected from the data points P1 to P7 matches the origin O (0, 0) on the biaxial coordinate system. Translated uniformly. Assume that the evaluation data point P7 is selected as a reference data point. Then, by the parallel movement, six virtual data points P1 'to P6' excluding the reference data point P7 are derived and set on the biaxial coordinate system.
- a virtual offset point C ′ that minimizes the sum of the distances between the curve H2 passing through the origin O and the virtual data points P1 ′ to P6 ′ (total of the six distances) is obtained. That is, the coordinate value of the virtual offset point C ′ that minimizes the value of the function F H2 of the curve H2 represented by the following equation (2) is calculated.
- Hxi ′ and Hyi ′ represent the X-axis and Y-axis coordinate values of the virtual data point Pi ′, respectively (i is an arbitrary integer, which is 1 or more and (N ⁇ 1) or less here) (Integer), Hx0 ′, Hy0 ′ represent the X-axis and Y-axis coordinate values of the virtual offset point C ′, respectively.
- the curve H2 is a circle centered on the virtual offset point C ′ and passing through the origin O (therefore, the radius of the circle is the origin O and the virtual offset point C ′). Equal to the distance).
- the original offset point C is calculated by translating the virtual offset point C ′ so as to restore the previous amount of translation. That is, the offset point C is a point obtained by translating the virtual offset point C ′ in the opposite direction with the same amount of movement as the parallel movement for moving the data point P7 to the origin O.
- Hx0 and Hy0 represent the X-axis and Y-axis coordinate values of the offset point C, respectively. Derived by this method (Hx0, Hy0) the offset value (Hx OFF, Hy OFF) are substituted into (i.e., updates the offset value) can be supplied to the offset correction unit 20.
- (Hx0, Hy0) is evaluated by the offset deriving unit 30, and if it is determined to be invalid, (Hx0, Hy0) is discarded and the offset value ( The update of (Hx OFF , Hy OFF ) is not executed.
- (Hx0, Hy0) derived in the offset derivation process may be referred to as an offset temporary determination value.
- FIG. 3 is a flowchart showing the flow of the operation.
- the azimuth sensor 1 handles magnetic detection data on a triaxial coordinate system.
- the azimuth angle sensor 1 it can be considered that the Z-axis component relating to the magnetic detection data and the offset value is always zero.
- an initial value determining process is first executed in step S11, and the magnetic magnitude
- the magnitude of the magnetic field in the field represents the magnitude of magnetism at the position where the azimuth sensor 1 is present, and is estimated to be the magnitude of geomagnetism at the position where the azimuth sensor 1 is present.
- an estimated initial value of the magnitude of geomagnetism is obtained.
- FIG. 4 is a flowchart of the initial value determination process.
- the initial value determination process includes the processes of steps S31 to S34.
- An azimuth sensor 1 or an arbitrary device (including an electronic device described later) provided with the azimuth sensor 1 includes an operation unit (button switch, touch panel, etc.) that receives an input of a predetermined operation from the azimuth sensor 1 or a user of the device ; Not shown).
- step S31 a predetermined start operation is input from the user to the operation unit. After this input, the user swings the azimuth angle sensor 1 in step S32, and inputs a predetermined end operation to the operation unit in subsequent step S33.
- of the field is derived by the offset deriving unit 30 in step S34.
- the swing motion of the azimuth angle sensor 1 can be read as the swing motion of any device provided with the azimuth angle sensor 1.
- the swing motion of the azimuth sensor 1 is one axis fixed in real space (for example, an axis parallel to the direction of geomagnetism) and the X, Y, and Z axes defined by the azimuth sensor 1. It refers to a predetermined movement that freely swings the azimuth angle sensor 1, such as a so-called figure-eight operation, so that the relationship with each changes variously.
- a predetermined movement that freely swings the azimuth angle sensor 1, such as a so-called figure-eight operation, so that the relationship with each changes variously.
- the azimuth sensor 1 or any device equipped with the azimuth sensor 1 fixed to the user's arm that has been stretched in the horizontal direction the arm goes around the user's center of gravity along the horizontal plane. The movement (see FIG.
- a swing motion may be formed in combination with a motion (see FIG. 5B) that causes the arm to make a round along the vertical plane.
- a motion see FIG. 5B
- FIGS. 6A and 6B if the geomagnetic vector makes one round around the Z axis in a plane parallel to the X and Y axes in the swing motion, And Hy each change in a sine wave shape and take a local maximum value and a local minimum value.
- the offset derivation unit 30 sets a section from the input time point of the start operation to the input time point of the end operation as the initial value determination data section. Alternatively, a section from when the start operation is input until a predetermined time (for example, 10 seconds) elapses may be set as the initial value determination data section. In this case, it is not necessary to input an end operation in step S33.
- the offset deriving unit 30 refers to a collection of the original magnetic detection data (Hx, Hy, Hz) periodically acquired in the initial value determination data section as the initial value determination data group, and sets the initial value determination data group.
- the maximum value Hxmax and the minimum value Hxmin in all the X-axis data Hx included in the data are specified, and the maximum value Hymax and the minimum value Hymin in all the Y-axis data Hy included in the initial value determination data group are specified. Is specified, and the maximum value Hzmax and the minimum value Hzmin among all the Z-axis data Hz included in the initial value determination data group are specified, and then the magnitude of magnetism
- max ⁇ represents an operator that returns the maximum value among a plurality of arguments (variables) indicated in ⁇ . Therefore, 1 ⁇ 2 of the maximum value among (Hxmax ⁇ Hxmin), (Hymax ⁇ Hymin), and (Hzmax ⁇ Hzmin) is calculated as
- Each of Hx, Hy, and Hz is a one-dimensional quantity that takes positive and negative values.
- the detected Hx has a positive value and a negative value, respectively.
- Hy and Hz If the swing motion is properly performed, in many cases, each of Hxmax, Hymax and Hzmax has a positive value and each of Hxmin, Hymin and Hzmin has a negative value.
- Hxmax ⁇ Hxmin), (Hymax ⁇ Hymin), and (Hzmax ⁇ Hzmin) all coincide with the magnitude of the geomagnetism in the field.
- Hxmax and Hxmin may have the same sign value (the same applies to Hymax and Hymin, and the same applies to Hzmax and Hzmin).
- step S11 When the magnitude of magnetic field
- the magnitude of the magnetic field is given to the azimuth sensor 1 as a specified value by using GPS (global positioning system) etc., the specified value is treated as
- the offset deriving unit 30 sets a calibration success range for determining whether or not the offset deriving process has been successfully performed based on the derived magnetic magnitude
- + ⁇ ) is the upper limit is set as the initial calibration success range.
- ) is the upper limit is set as the initial calibration success range.
- ⁇ has a positive predetermined value
- k has a positive predetermined value less than 1 (for example, 0.1).
- the value of ⁇ may be set appropriately according to the magnitude of the geomagnetism to be detected (generally 20 to 80 ⁇ T, 40 to 50 ⁇ T outdoors in Japan).
- step S12 the process proceeds to step S13.
- step S13 the offset deriving unit 30 determines whether or not a predetermined offset calibration condition is satisfied.
- FIG. 7 is a flowchart of the offset calibration condition determination process executed by the offset deriving unit 30 to determine whether or not the offset calibration condition is satisfied.
- the offset calibration condition determination process includes steps S51 to S57. First, in step S51, all zeros are substituted into the maximum value search data HxA, HyA, HzA and the minimum value search data HxB, HyB, HzB.
- the offset deriving unit 30 acquires the latest magnetic detection data (Hx, Hy, Hz).
- the magnetic detection data (Hx, Hy, Hz) acquired in step S52 is corrected magnetic detection data, but may be original magnetic detection data. In the situation where the process of step S17 in FIG. 3 has never been performed, the offset values (Hx OFF , Hy OFF , Hz OFF ) are (0, 0, 0), and therefore, the corrected magnetic detection data and The original magnetic detection data are equal to each other.
- the offset deriving unit 30 refers to the magnetic detection data (Hx, Hy, Hz) acquired in step S52. If “Hx> HxA”, Hx is assigned to HxA, while if “Hx ⁇ HxB”, Hx is assigned to HxB, and If “Hy> HyA”, Hy is substituted for HyA, while “Hy ⁇ HyB”, Hy is substituted for HyB, and If “Hz> HzA”, Hz is substituted for HzA, while “Hz ⁇ HzB”, Hz is substituted for HzB.
- step S56 the offset deriving unit 30 determines whether the first inequality “(HxA ⁇ HxB) ⁇ THx, the second inequality“ (HyA ⁇ HyB) ⁇ THy ”and the third inequality“ (HzA ⁇ HzB) ⁇ THz ”. Only when the first to third inequalities are all satisfied, it is determined that the offset calibration condition is satisfied (step S57), and the offset calibration condition determination process is completed. If not, the process returns to step S52.
- THx, THy, and THz are predetermined positive threshold values, that is, X of the magnetic detection data (Hx, Hy, Hz) after the start of the offset calibration condition determination process in the repetition of steps S52 to S56.
- the maximum value HxA and minimum value HxB of the axis component, the maximum value HyA and minimum value HyB of the Y-axis component, and the maximum value HzA and minimum value HzB of the Z-axis component are Search and update, X-axis, for each of the Y-axis and Z-axis, the difference value between the maximum value and the minimum value is determined as offset calibration condition is satisfied when a predetermined threshold value or more.
- Threshold values THx, THy, and THz are desirably set to about 30 ⁇ T, for example, considering the magnitude of geomagnetism to be detected (generally 20 to 80 ⁇ T, 40 to 50 ⁇ T in Japan). Further, the thresholds THx, THy, and THz may have the same value, or may have different values.
- step S13 the determination in step S13 is repeated until the offset calibration condition is satisfied (N in step S13).
- the process proceeds to step S14, and the offset derivation process described above is performed. Is executed. That is, evaluation suitable for use in the offset derivation process when the difference value between the maximum value and the minimum value for each of the X-axis, Y-axis, and Z-axis is equal to or greater than a predetermined threshold (THx, THy, THz).
- the offset derivation process is executed based on the determination that data point groups (data point groups distributed relatively evenly around the offset points C in the three-axis coordinate space) have gathered. By adopting such an algorithm, it is possible to suppress the occurrence of an inappropriate offset derivation result from locally distributed data point groups, thus improving the reliability of the offset derivation process. It becomes possible.
- FIG. 8 shows, as an example, a maximum data point PxA and a minimum data point PxB for the X axis.
- step S14 six of the seven evaluation data points are six data points giving HxA, HyA, HzA, HxB, HyB, and HzB. That is, the magnetic detection data (HxA, Hy, Hz) and (HxB, Hy, Hz) having HxA, HxB as X-axis components when the first to third inequalities are all satisfied are the first and second. Magnetic detection data (Hx, HyA, Hz) and (Hx, HyB, Hz) having HyA and HyB as Y-axis components are the third and fourth evaluation data points, and HzA and HzB are the Z-axis.
- Magnetic detection data (Hx, Hy, HzA) and (Hx, Hy, HzB) possessed as components are set as fifth and sixth evaluation data points.
- the first, third, and fifth evaluation data points are the maximum data points for the X, Y, and Z axes, respectively, and the second, fourth, and sixth evaluation data points are for the X axis, respectively.
- the corrected magnetic detection data as the first to sixth evaluation data points referred to in the offset derivation process in step S14 is acquired in step S52 of FIG. 7, the corrected magnetic detection data or the original magnetic field Detection data.
- the seventh evaluation data point is also a data point in the corrected magnetic detection data
- the first to sixth evaluation data points are If the data point is in the original magnetic detection data, the seventh evaluation data point is also a data point in the original magnetic detection data.
- FIG. 9 is a time chart showing an example of selection of a reference data point translated to the origin O (0, 0, 0).
- black circles indicate maximum data points or minimum data points (total of 6 points) corresponding to the maximum value or minimum value of the three axes, and white circles indicate data points other than those. For example, as shown in FIG.
- an offset temporary decision value (Hx0, Hy0, Hz0) is derived based on the first to seventh evaluation data points.
- the first to seventh evaluation data points correspond to the data points P1 to P7 in FIG.
- the significance and derivation method of the temporary offset determination value are as described above.
- step S15 subsequent to step S14 the offset deriving unit 30 calculates the offset according to the following equation (4) based on the latest original magnetic detection data (Hx, Hy, Hz) and the offset tentative determination value (Hx0, Hy0, Hz0).
- represents the magnitude of the magnetic field in the field when the provisional offset value is regarded as a true offset value.
- the magnetic detection data after the offset correction is (Hx ⁇ Hx0, Hy ⁇ Hy0, Hz ⁇ Hz0). Therefore, the magnitude of magnetism
- the evaluation data point group set through the offset calibration condition determination process described above is an evaluation data point group suitable for use in the offset derivation process (in the three-axis coordinate space, the offset data points are relatively evenly distributed. It is expected to be a distributed data point cloud). However, inappropriate data points (for example, data points that are momentarily affected by electrical noise or external magnetic fields) may be mixed into the set evaluation data point group.
- the error between the offset provisional decision value and the true offset value becomes large.
- the magnitude of the geomagnetism to be detected does not change so much in a relatively short time, and even if the magnitude changes, the magnitude is considered to change continuously and gradually. Therefore, when the magnitude of the magnetism derived this time is greatly fluctuating from the magnitude of the magnetism derived last time, the error between the provisional offset value and the true offset value is larger than the allowable range. It can be judged.
- step S16 the offset deriving unit 30 determines whether or not
- the calibration success range set in step S12 is used in step S16. If
- step S17 the inequality “
- step S18 the inequality “
- step S17 the offset deriving unit 30 determines that the accuracy of the temporary offset determination value (Hx0, Hy0, Hz0) obtained in the offset deriving process is good (determines that the temporary offset determination value is valid).
- the offset value (Hx OFF , Hy OFF , Hz OFF ) supplied to the offset correction unit 20 is updated with the offset temporary determination value (Hx 0, Hy 0, Hz 0), and the magnitude of magnetism obtained in step S 15
- the lower limit and the upper limit of the calibration success range are updated to (
- step S18 the offset deriving unit 30 determines that the accuracy of the temporary offset determination values (Hx0, Hy0, Hz0) obtained in the offset deriving process is not good (determines that the temporary offset determination value is invalid). ), Without updating the offset values (Hx OFF , Hy OFF , Hz OFF ) to be supplied to the offset correction unit 20, discard the derived offset temporary determination values (Hx 0, Hy 0, Hz 0), and update the calibration success range Also do not. After discarding the temporarily determined offset value in step S18, the process returns to step S13.
- step S51 When returning to step S13 via step S17 or S18, whether the offset calibration condition is satisfied or not is determined again.
- the offset calibration condition determining process (see FIG. 7) for performing the determination is performed from step S51. Is started (ie HxA etc. is reset to zero).
- the calibration success range is updated from the j-th calibration success range to the (j + 1) -th calibration success range (j is a natural number) from the j-th update. If the jth update is performed when
- the (j + 1) th calibration success range is set based on
- the center of the (j + 1) th calibration success range is
- the offset of the azimuth angle sensor 1 that constantly changes in time and space can be continuously canceled at high speed, so that the azimuth angle can be accurately detected.
- the accuracy of the derivation result of the offset derivation process is temporarily not good due to the influence of noise (electrical noise, magnetic noise due to an external magnetic field) or the like, the derivation result of the offset derivation process (that is, Since the offset temporary determination value) is discarded and is not used for actual offset correction, it is avoided that the accuracy of the offset value (and hence the accuracy of the azimuth angle) deteriorates even temporarily.
- step S14 any one point that is neither the maximum data point or the minimum data point of the three axes is selected as the reference data point. Any one of the data points may be used. With such a configuration, it is possible to reduce one data point used for the actual calculation in the offset derivation process, so that the circuit scale or software code size can be further reduced. However, when this configuration is adopted, the offset calculation accuracy may be lowered depending on the distribution state of the maximum data point and the minimum data point of the three axes.
- FIG. 11 is a three-axis coordinate space diagram for explaining points to be noted when selecting either the maximum data point or the minimum data point of the three axes as the reference data point.
- One of the maximum data points and the minimum data points of the three axes (in FIG. 11, the maximum value HxA of the X-axis component) may greatly deviate from the other due to the influence of an external magnetic field or the like.
- the maximum data point or the minimum data point greatly deviating from others is selected as the reference data point, the amount of parallel movement for making the reference data point coincide with the origin O greatly deviates from the original value. As a result, it may be difficult to obtain a correct offset point C by the offset derivation process.
- the largest absolute value among the absolute values of the maximum values HxA, HyA and HzA and the minimum values HxB, HyB and HzB that define the maximum data point and minimum data point of the three axes It is desirable to take measures such as excluding the data point corresponding to the value and the data point corresponding to the smallest absolute value from the selection candidates of the reference data point.
- FIG. 12 shows an internal block diagram of the offset deriving unit 30.
- the offset deriving unit 30 includes an initial setting unit 31 that executes the processes of steps S11 and S12, an offset calibration condition determining unit 32 that executes the process of step S13 (and hence the offset calibration condition determining process of FIG. 7), and step S14. It can be considered that the provisionally determined value deriving unit 33 that executes the above process and the updating unit 34 that executes the processes of steps S15 to S18 are provided.
- the offset derivation process described above is only one method for deriving an offset tentative determination value using a plurality of data points in the original magnetic detection data or the corrected magnetic detection data.
- This implementation is performed using any other method (for example, the method described in Japanese Patent No. 4391416) for deriving an offset value for the original magnetism detection data using a plurality of data points in the original magnetism detection data or the corrected magnetism detection data. You may make it derive
- the azimuth angle sensor 1 can be mounted on any device such as an electronic device.
- Electronic devices including the azimuth sensor 1 include, for example, mobile phones (including mobile phones classified as so-called smartphones), mobile information terminals (including mobile information terminals classified as so-called tablet terminals), watches (so-called smart watches).
- a digital camera or a pedometer. 29, 30 and 31 are external views of the smartphone 100, the tablet terminal 200, and the smart watch 300 each provided with the azimuth angle sensor 1.
- FIG. By mounting the azimuth angle sensor 1 as an electronic compass of the electronic device, the direction in which the electronic device and the user are facing (more specifically, for example, the relationship between the X-axis direction and the geomagnetic direction) is accurately detected. be able to.
- GPS global positioning system
- an electronic compass it is possible to improve the position detection accuracy in map application software and navigation application software.
- the offset deriving device W 1 corrects the original magnetic detection data sequentially acquired as data points on the three-axis coordinate system or the two-axis coordinate system by detecting the magnetism on the three or two axes.
- ) is derived, and when the derived magnetic magnitude is within a predetermined reference range (calibration success range), the offset value is updated with the provisionally determined value ( Step S17), and otherwise characterized by comprising a, a a non-perform the update of the offset value (step S18) updating section (
- the magnetic detection result often includes an offset, and the offset constantly changes in time and space.
- the offset In order to continue canceling offsets that constantly change in time and space, it is necessary to update the offset values for generating corrected magnetic detection data one after another.
- the accuracy of the derived result may be temporarily unsatisfactory due to the influence of noise or the like.
- the offset value if the offset value is updated, correction by the offset value may be performed.
- the error error from the true value of the corrected magnetic detection data that has passed increases.
- a temporary determination value of the offset value is derived using a plurality of data points, and then the temporary determination value is obtained through derivation of the magnitude of magnetism based on the original magnetic detection data and the temporary determination value.
- the validity can be judged, and the offset value is updated when the provisional decision value is valid (that is, when the magnitude of the derived magnetism is within the predetermined reference range), and when it is not valid, the offset value is updated. Updates can be made non-executed. For this reason, even if it is temporary, it is suppressed that the precision of an offset value deteriorates.
- the target device as the offset deriving device or the electronic device according to the present invention can be configured by software, hardware such as an integrated circuit, or a combination of hardware and software.
- Arbitrary specific functions that are all or part of the functions realized in the target device may be described as a program, and the program may be stored in a flash memory or the like that can be mounted on the target device. Then, the specific function may be realized by executing the program on a program execution device (for example, a microcomputer that can be mounted on the target device).
- the program can be stored and fixed on an arbitrary recording medium.
- the recording medium for storing and fixing the program may be mounted or connected to a device (such as a server device) different from the target device.
- FIG. 13 is a block diagram showing an overall configuration of an azimuth angle sensor 1001 according to the second embodiment of the present invention.
- the azimuth angle sensor 1001 of this configuration example includes a magnetic detection unit 1010, an offset correction unit 1020, an offset calculation unit 1030, and an azimuth angle calculation unit 1040.
- the magnetic detection unit 1010 includes a magnetic sensor 1010X that detects magnetism in the X-axis direction, a magnetic sensor 1010Y that detects magnetism in the Y-axis direction, and a magnetic sensor 1010Z that detects magnetism in the Z-axis direction. Detection data (Hx, Hy, Hz) is generated.
- a magnetic detection element of each of the magnetic sensors 1010X, 1010Y, and 1010Z for example, a Hall element may be used or an MR [magnetoresistance] element may be used.
- the X axis, the Y axis, and the Z axis may be designed to be orthogonal to each other.
- the offset calculation unit 1030 constantly monitors the magnetic detection data (Hx, Hy, Hz) that has been offset corrected, and sequentially updates the offset values (Hx0, Hy0, Hz0) of the magnetic detection unit 1010.
- the offset calculation process offset update process
- the azimuth angle calculation unit 1040 generates azimuth angle data So from the offset-corrected magnetic detection data (Hx, Hy, Hz).
- the offset correction unit 1020, the offset calculation unit 1030, and the azimuth angle calculation unit 1040 are depicted as independent processing blocks. However, these processing blocks are a CPU [central processing unit] or a DSP [digital]. It can be implemented centrally using a signal processor].
- FIG. 14 is an XYZ coordinate space diagram illustrating a first example of offset calculation processing in the offset calculation unit 1030.
- N data points (where N ⁇ 2) are obtained with respect to the triaxial magnetic detection data (Hx, Hy, Hz) sequentially obtained as data points in the triaxial coordinate space.
- the data points P1 to P7 are uniformly translated so that the reference data point arbitrarily selected from the data points P1 to P7 coincides with the origin O (0, 0, 0).
- the data point P7 is selected as the reference data point.
- a virtual offset point C ′ that minimizes the sum of the distances between the curved surface H1 passing through the origin O and the respective virtual data points P1 ′ to P6 ′ is calculated.
- a virtual offset point C ′ that minimizes the function of the curved surface H1 expressed by the following equation (5) is calculated.
- the original offset point C (Hx0, Hy0, Hz0) (corresponding to the offset value of the magnetic detection unit 1010) is obtained by translating the virtual offset point C ′ so as to restore the previous amount of translation. Calculated.
- the detailed description has been given with an example in which the triaxial magnetic detection data (Hx, Hy, Hz) is an offset correction target.
- the offset calculation method described above is based on the biaxial magnetic detection data ( The present invention can also be applied to the case where Hx, Hy) is an offset correction target.
- a virtual offset point C ′ that minimizes the sum of the distances between the curve H2 passing through the origin O (0, 0) and each virtual data point Pi ′ may be calculated. More specifically, when the virtual data point Pi ′ is (Hxi ′, Hyi ′) and the virtual offset point C ′ is (Hx0 ′, Hy0 ′), a curve represented by the following equation (6): A virtual offset point C ′ that minimizes the function of H2 may be calculated.
- FIG. 15 is a flowchart illustrating a second example of the offset calculation process in the offset calculation unit 1030.
- a pre-process this book for determining an appropriate data point group as a reference object
- steps S1001 to S1004 are introduced.
- the details will be described in order. Unless otherwise noted, the execution subject of each step is assumed to be the offset calculation unit 1030.
- step S1001 an offset value (Hx0, Hy0, Hz0) is set or updated.
- the initial value is (0, 0, 0).
- step S1002 triaxial magnetism detection data (Hx, Hy, Hz) is always acquired and offset correction is performed (Hx ⁇ Hx ⁇ Hx0, Hy ⁇ Hy ⁇ Hy0, Hz ⁇ Hz ⁇ Hz0). ). Note that the execution subject of step S1002 is the offset correction unit 1020.
- step S1003 with reference to the offset-corrected magnetic detection data (Hx, Hy, Hz), the maximum value / minimum value 6 points of the three axes are always searched.
- FIG. 16 is an XYZ coordinate space diagram showing the maximum and minimum values of the three axes.
- the maximum value of the X-axis component is Hx (max)
- the corresponding X-axis maximum data point is Pa (Hx (max), *, *).
- the minimum value of the X-axis component is Hx (min)
- the corresponding X-axis minimum data point is Pb (Hx (min), *, *).
- the maximum value Hy (max) and minimum value Hy (min) of the Y-axis component, and the maximum value Hz (max) and minimum value Hz (min) of the Z-axis component are also described. As above, there is a maximum data point and a minimum data point for each axis.
- step S1004 it is determined whether or not the difference values ⁇ Hx, ⁇ Hy, ⁇ Hz between the maximum value and the minimum value are greater than or equal to the threshold value for each axis. For example, if ⁇ Hx ⁇ THx, ⁇ Hy ⁇ THy, and ⁇ Hz ⁇ THZ, the determination is yes, and if any one of the above inequalities is not satisfactory, the determination is no. If the determination in step S1004 is YES, the flow proceeds to step S1005. If the determination is NO, the flow returns to step S1003.
- the threshold THx to THz of each axis is desirably set to about 30 ⁇ T, for example, in view of the magnitude of the geomagnetism to be measured (generally 20 to 80 ⁇ T, 40 to 50 ⁇ T in Japan). Further, the threshold values THx, THy, and THz for each axis may be the same value or different values.
- step S1004 If no determination is made in step S1004, the flow loops between step S1003 and step S1004. That is, the maximum and minimum values of the three axes are continuously searched until the difference values ⁇ Hx, ⁇ Hy, and ⁇ Hz for each axis become equal to or greater than the threshold value.
- FIG. 17 is a time chart showing the transition behavior of the difference value ⁇ Hx on the X-axis. It can be seen that the X-axis maximum data point Pa or the X-axis minimum data point Pb is sequentially updated with the passage of time by referring to the data points with the symbols Pa0 to Pa3 or the symbols Pb0 to Pb4. Further, the difference value ⁇ Hx on the X axis naturally increases every time at least one of the maximum value Hx (max) and the minimum value Hx (min) of the X axis component is updated.
- step S1004 the first example offset calculation process (corresponding to steps S1005 to S1007 in the figure) described above is executed. That is, in the offset calculation unit 1030, when the difference between the maximum value and the minimum value for each axis becomes equal to or greater than the threshold value for all axes, a data point group (offset point C) that is valid as a reference target for offset calculation is used.
- the offset calculation process described above is executed based on the determination that the data point group considered to be relatively evenly distributed in the central XYZ coordinate space.
- step S1005 as one step of the offset calculation process described above, an arbitrary point that is neither the maximum data point nor the minimum data point of each axis is translated to the origin O (0, 0, 0). The maximum data point and the minimum data point of each axis are translated.
- the data points used for the actual calculation in the offset calculation process of the second example are the maximum data point and the minimum data point of each axis are 6 points, and any one point different from these (in the above-mentioned reference data point) Only). Therefore, since it is sufficient to prepare registers for a total of 7 points in the offset calculation unit 1030, the circuit scale or software code size can be greatly reduced as compared with the conventional configuration that requires 10 or more data points. It becomes possible to do.
- FIG. 18 is a time chart showing an example of selection of reference data points that are translated to the origin O (0, 0, 0). Black circles in the figure indicate maximum data points and minimum data points (6 points in total) corresponding to the maximum and minimum values of the three axes. On the other hand, white circles in the figure indicate data points other than the above six points.
- step S1006 the virtual offset point C ′ (Hx0 ′, Hy0 ′, Hz0 ′) that minimizes the function of the curved surface H1 represented by the above equation (5) from the six points that have been translated in step S1005. ) Is calculated. Since this point is as described in detail above, a duplicate description is omitted.
- step S1007 the maximum value / minimum value 6 points of the three axes are cleared, and the offset point C (Hx0, Hy0, Hz0) obtained by restoring the previous parallel movement is the offset value of the magnetic detection unit 1010. Is calculated as
- step S1001 the flow is returned to step S1001 and the above series of processing is repeated.
- step S1005 an example is selected in which one arbitrary point that is neither the maximum data point nor the minimum data point of each axis is selected as the reference data point to be translated to the origin O (0, 0, 0).
- the reference data point may be any one of the maximum data point and the minimum data point of each axis.
- FIG. 19 is an XYZ coordinate space diagram for explaining points to be noted when data points corresponding to the maximum value / minimum value of three axes are selected as reference data points.
- One of the maximum value and the minimum value of each axis (the maximum value Hx (max) of the X-axis component in the example in this figure) may be greatly different from the other due to the influence of an external magnetic field or the like. .
- the data point having the largest absolute value of each axis component and the smallest data point are: It is desirable to take measures such as excluding from selection candidates as reference data points.
- the offset point C (Hx0, Hy0, Hz0) can be calculated with high accuracy even when the fluctuation range of any of the magnetic detection data among the three-axis magnetic sensors 1010X to 1010Z is small.
- a new algorithm is proposed.
- FIG. 20 is a flowchart showing a third example of the offset calculation process.
- the offset calculation of the X axis and the Y axis (for example, the horizontal axis with respect to the ground surface) and the Z axis (for example, for the ground surface) are based on the offset calculation process of the second example (FIG. 15). It is characterized in that the offset calculation of the vertical axis) is performed separately.
- the execution subject of each step is assumed to be the offset calculation unit 1030.
- step S1011 the offset values (Hx0, Hy0, Hz0) are set or updated.
- the initial value is (0, 0, 0).
- step S1012 triaxial magnetism detection data (Hx, Hy, Hz) is always acquired and offset correction is performed (Hx ⁇ Hx ⁇ Hx0, Hy ⁇ Hy ⁇ Hy0, Hz ⁇ Hz ⁇ Hz0).
- the execution subject of this step S1012 is the offset correction unit 20.
- step S1014 it is determined whether or not the difference values ⁇ Hx, ⁇ Hy, ⁇ Hz between the maximum value and the minimum value are greater than or equal to the threshold value for each axis. For example, if ⁇ Hx ⁇ THx, ⁇ Hy ⁇ THy, and ⁇ Hz ⁇ THZ, the determination is yes, and if any one of the above inequalities is not satisfactory, the determination is no. If the determination in step S1014 is YES, the flow proceeds to step S1015. If the determination is NO, the flow returns to step S1013.
- threshold values THx to THz are, for example, the magnitude of the geomagnetism at the field
- step S1014 If no determination is made in step S1014, the flow loops between step S1013 and step S1014. That is, the maximum and minimum values of the three axes are continuously searched until the difference values ⁇ Hx, ⁇ Hy, and ⁇ Hz for each axis become equal to or greater than the threshold value.
- step S1014 if a positive determination is made in step S1014, a seventh reference data point P7 (Hx7, Hy7, Hz7) that is different from any of the data points P1 to P6 is selected in step S1015.
- step S1016 it is determined whether or not the reference data point P7 is appropriate. More specifically, in this step, the reference data point P7 is a distance of a predetermined value or more from at least four of the data points P1 to P6 corresponding to the maximum and minimum values of the X-axis and Y-axis, respectively. A determination is made as to whether data points separated by are selected. If the determination is yes, the flow proceeds to step S1017. On the other hand, if a negative determination is made, the flow returns to step S1015, and reselection of the reference data point P7 is repeated until the above condition is satisfied.
- step S1017 the maximum of the X and Y axes among the data points P1 to P6 is set so that the reference data point P7 coincides with the origin O (0, 0, 0).
- step S1018 XY which minimizes the function F1 represented by the following equation (7) using the above-described four (or six) virtual data points Pi ′ (Hxi ′, Hyi ′).
- a virtual offset point C ′ (Hx0 ′, Hy0 ′) on the coordinate plane is calculated.
- step S1019 the virtual offset point C ′ (Hx0 ′, Hy0 ′) on the XY coordinate plane is translated so as to restore the translation of the reference data point P7 to the original, thereby moving the X axis and Y axis.
- Axis offset values Hx0 and Hy0 are respectively calculated.
- the function F1 represented by the equation (7) is equivalent to the function of the curve H2 represented by the equation (6). That is, in steps S1018 and S1019, the offset values Hx0 and Hy0 for the X axis and the Y axis are respectively calculated by the offset estimation process for the geomagnetic circle drawn on the XY coordinate plane.
- the magnetic detection data Hz for the Z axis is not used at all. Therefore, even if the movement in the Z-axis direction is not as great as the movement in the X-axis direction and the Y-axis direction, the X-axis and Y-axis offset calculation accuracy is not adversely affected.
- step S1020 all six data points P1 to P6 are uniformly translated so that the reference data point P7 coincides with the origin O (0, 0, 0), thereby obtaining an XYZ coordinate space.
- step S1021 using the virtual offset points (Hx0 ′, Hy0 ′) obtained in the previous step S1018 and the six virtual data points Pi ′ (Hxi ′, Hyi ′, Hzi ′), A virtual offset value Hz0 ′ that minimizes the function F2 expressed by the following equation (8) is calculated.
- the calculation formula for the virtual offset value Hz0 ' can be expressed by the following formula (9).
- the virtual offset points (Hx0 ′, Hy0 ′) used in this calculation formula do not include the Z-axis magnetic detection data Hz in the calculation process, and therefore have high reliability even if the data fluctuation of the magnetic detection data Hz is small. It becomes. Therefore, by using this to calculate the virtual offset value Hz0 ', the reliability of the virtual offset value Hz0' can be improved.
- step S1022 the data points P1 to P6 and the reference data point P7 are cleared, and the virtual offset value Hz0 ′ is translated so as to restore the original translation of the reference data point P7.
- An offset value Hz0 is calculated.
- the function F2 expressed by the equation (8) is equivalent to the function of the curved surface H1 expressed by the equation (5). That is, in steps S1020 to S1022, the Z axis offset value Hz0 is calculated by the offset estimation process of the geomagnetic sphere drawn in the XY coordinate space.
- step S1023 a new offset value (Hx0, Hy0, Hz0) is output. Thereafter, the flow is returned to step S1011 and the above series of processing is repeated. As a result, since the offset of the azimuth angle sensor 1001 that constantly changes in time and space can be continuously canceled at high speed, the azimuth angle can be accurately detected.
- the X axis and Y axis offset values Hx0 and Hy0 that are expected to cause relatively large data fluctuations are calculated, and then the calculation results are used.
- the Z-axis offset value Hz0 that is assumed to cause only a relatively small data fluctuation is calculated independently.
- FIG. 21 is a flowchart illustrating a fourth example of the offset calculation process.
- the offset calculation process of the fourth example is characterized in that the offset calculation of the X axis and the Y axis is simplified while being based on the offset calculation process of the third example (FIG. 20). Therefore, the same steps as those in the third example are denoted by the same reference numerals as those in FIG. 20, thereby omitting the redundant description.
- the characteristic parts of the fourth example are mainly described.
- steps S1017 to S1020 in FIG. 20 are replaced with steps S1024 and S1025.
- step S1024 If a positive determination is made in step S1016 through the above-described steps S1011 to S1015, in step S1024, the above equation (10a) and (10b) are used instead of the above equation (7). Values Hx0 and Hy0 are calculated.
- step S1024 the average value of the maximum value Hx (max) and the minimum value Hx (min) of the X axis is calculated as the offset value Hx0 of the X axis, and the maximum value Hy (max) and minimum value Hy ( min) is calculated as the Y-axis offset value Hy0.
- step S1021 the Z-axis offset value Hz0 is calculated by the same processing as described above.
- the X-axis and Y-axis offset calculations can be simplified compared to the third example (FIG. 20).
- an operation or movement is required in which the azimuth sensor 1001 makes one round on the horizontal plane.
- the maximum value and the minimum value of the X axis and the Y axis are periodically cleared and the offset in step S1024 is performed.
- the calculation process may be continued, or if the geomagnetism is extremely small by periodically executing the flow of FIG. 20, the offset value calculated in advance in steps S1017 to S1019. It is also possible to adopt.
- the offset point C (Hx0, Hy0, Hz0) is set even if the fluctuation range of the Z-axis magnetic detection data is small. It is possible to calculate with high accuracy. However, in order to pursue more accuracy, it is desirable to adopt two points that are appropriately separated as the maximum data point and the minimum data point of each axis.
- FIG. 22 and 23 are XZ plan views (or YZ plan views) of the magnetic field, respectively.
- FIG. 22 shows a case where the Z-axis magnetic field fluctuation is relatively large (for example, when the azimuth sensor 1001 is mounted on the wristwatch), and
- FIG. 23 shows a case where the Z-axis magnetic field fluctuation is relatively small ( For example, the azimuth angle sensor 1001 is mounted on the vehicle.
- the crosses in each figure indicate the maximum and minimum data points of each axis. Moreover, the broken line in each figure has shown the geomagnetic sphere which is going to estimate from the maximum data point and minimum data point of each axis
- the difference values ⁇ Hx, ⁇ Hy, and ⁇ Hz between the maximum data point and the minimum data point for each axis have different values.
- the X-axis direction is the front-rear direction of the vehicle
- the Y-axis direction is the left-right direction of the vehicle
- the Z-axis direction is the vertical direction of the vehicle.
- the magnetic detection data Hx and Hy greatly fluctuate due to normal driving of the vehicle (such as turning left and right or changing direction)
- the difference values ⁇ Hx and ⁇ Hy tend to increase.
- the magnetic detection data Hz does not vary so much even if the vehicle travels on a steep slope, the difference value ⁇ Hz is unlikely to increase.
- the threshold value THz for the Z axis it is desirable to set the threshold value THz for the Z axis to a value smaller than the threshold values THx and THy for the X axis and the Y axis, respectively. This is because if the threshold value THz is set to the same value (or the same value as the threshold values THx and THy), ⁇ Hz ⁇ THZ is not satisfied in the above-described step S1014 (see FIGS. 20 and 21). This is because the calculation of the offset value does not start.
- the radius of the geomagnetic sphere to be estimated from the maximum data point and the minimum data point of each axis is equal to the magnitude
- the threshold values THx, THy, and THz are determined for each axis according to the magnitude of geomagnetism
- of the geomagnetism is calculated from the following equation (11) using the magnetic detection data (Hx, Hy, Hz) of each axis and the respective offset values (Hoffx, Hoffy, Hoffz). Can do.
- the offset value (Hoffx, Hoffy, Hoffz) an offset value obtained at the first offset calculation may be used, or a reliable offset value calculated in the past may be used.
- is obtained by calculating the virtual offset point C ′ (Hx0 ′, Hy0 ′, Hz0 ′) derived during the offset calculation process of the third example (FIG. 20) or the fourth example (FIG. 21). And can be calculated from the following equation (12).
- is changed to the XY plane component
- of the geomagnetism are calculated using the magnetic detection data (Hx, Hy, Hz) and the offset values (Hoffx, Hoffy, Hoffz) of each axis. (13a) and (13b).
- of the geomagnetism are expressed by the following equations (14a) and (14b) using the virtual offset point C ′ (Hx0 ′, Hy0 ′, Hz0 ′). ).
- the threshold THx, THy, THz of each axis from the geomagnetic magnitude
- the threshold THx and THy are calculated by multiplying the XY plane component
- step S1018 of FIG. 20 when the virtual offset point C ′ (Hx0 ′, Hy0 ′) on the XY coordinate plane is obtained, the magnetic field fluctuation that can draw an arc of about 1 ⁇ 4 of the entire circumference of the geomagnetic circle. If there is (movement of the azimuth sensor 1), correct offset calculation is possible. Accordingly, in the X-axis direction and the Y-axis direction, if there is the above-described magnetic field fluctuation, the coefficient GXY (for example, about 1.0) may be appropriately set so that ⁇ Hx ⁇ THx and ⁇ Hy ⁇ THy are satisfied. .
- the thresholds THx, THy, and THz can also be calculated simply by multiplying the geomagnetic magnitude
- does not necessarily have to be calculated from the above equation (11) or (12). For example, based on position information obtained by GPS [global positioning system] It may be calculated from a predetermined approximate calculation formula, or may be derived from a magnetic field map information library such as the Geographical Survey Institute.
- FIG. 25 is a schematic diagram showing an environment dependent example of the magnitude of geomagnetism
- the magnitude of geomagnetism
- the same phenomenon as described above can occur inside and outside other shielding objects (buildings, tunnels, etc.).
- the azimuth sensor 1001 when there is a possibility that the azimuth sensor 1001 is provided inside the shielding object, magnetic detection data obtained outside the shielding object and magnetic detection data obtained inside the shielding object at the same point It can be said that it is desirable to set the thresholds THx, THy, and THz as appropriate in consideration of the difference in advance.
- ⁇ Use of dip angle> In the above threshold setting method, only the magnitude of the geomagnetism
- FIG. 26 is a schematic diagram showing the dip angle ⁇ of geomagnetism.
- of the geomagnetism are obtained from the following equations (15a) and (15b) using the geomagnetic magnitude
- of geomagnetism calculated in this way are used for setting processing of threshold values THx, THy, and THz by multiplying coefficients GXY and GZ, respectively, as before. Is possible.
- FIG. 27 is a correlation diagram between the magnetic detection data H and the acceleration data A.
- the dip angle ⁇ used in the previous calculation is calculated by the inner product calculation of the magnetic detection data H (Hx, Hy, Hz) corrected for offset and the acceleration data A (Ax, Ay, Az). It can be calculated by the following equation (16).
- an offset value obtained at the time of the first offset calculation may be used, or a reliable offset value calculated in the past may be used. Also good.
- the acceleration data A may be output from an acceleration sensor provided separately from the azimuth angle sensor 1001, or the azimuth angle sensor 1001 may have an acceleration detection function built-in. Good.
- the dip angle ⁇ does not necessarily have to be calculated from the above equation (16).
- the dip angle ⁇ may be calculated from a predetermined approximate calculation formula based on position information obtained by GPS, or the national land It may be derived from an inclination information library such as Geographical Institute.
- FIG. 28 is a flowchart illustrating an example of the offset update process. This flow corresponds to the post-processing of the offset calculation processing (FIGS. 15, 20, and 219) described so far, and determines the accuracy (reliability) of the newly calculated new offset value.
- the initial value ⁇ 0 may be calculated using an offset value obtained at the time of the first offset calculation, or may be calculated using a reliable offset value calculated in the past. Alternatively, it may be calculated from a predetermined approximate calculation formula based on the position information obtained by GPS, or may be derived from the dip angle information library. Further, it may be possible to set the initial value ⁇ 0 by preparing the depression angle information for each country without using GPS.
- step S1033 it is determined whether or not the offset calibration condition is satisfied. This determination process corresponds to steps S1003 to S1004 (FIG. 15) or steps S1013 to S1014 (FIGS. 20 and 21). If the determination in step S1033 is YES, the flow proceeds to step S1034. If the determination is NO, the determination process in step S1033 is repeated.
- step S1033 When a positive determination is made in step S1033, first, in step S1034, a new offset value (Hx0, Hy0, Hz0) is newly calculated, and in the subsequent step S1035, the magnitude of geomagnetism using the new offset value
- step S1036 it is determined whether or not the relationship of Hmin ⁇
- step S1037 If a YES determination is made in step S1036, in step S1037, ⁇ [i ⁇ 1] ⁇ ⁇ ⁇ [i] ⁇ ⁇ [i ⁇ 1] for the depression angle ⁇ [i] calculated using the new offset value. ] Is determined whether + ⁇ is satisfied. That is, in step S1037, whether or not the dip angle ⁇ [i] calculated using the new offset value is significantly different from the dip angle ⁇ [i ⁇ 1] calculated using the previous offset value. A determination is made. If the determination is yes, the flow proceeds to step S1038. If the determination is no, the flow proceeds to step S1041.
- step S1038 the Z-axis component
- step S1039 the geomagnetic magnitude
- step S1040 the offset update count i is incremented by one (i ⁇ i + 1), and then the flow returns to step S1033.
- step S1041 if no determination is made in any of steps S1036 to S1038, in step S1041, at least one of the geomagnetism magnitude
- step S1037 the normal range of the dip angle ⁇ is sequentially updated together with the offset update count i.
- the normal range of the dip angle ⁇ is basically fixed, and the long distance is such that the dip angle ⁇ varies greatly.
- the normal range may be switched only when the movement is performed.
- is fixed in step S1036. However, as in step S1037, the normal range of the geomagnetic magnitude
- steps S1036 to S10308 it is not always necessary to perform all three steps, and any one or two steps may be performed. Moreover, the execution order of each step is also arbitrary.
- H0 [t] indicates an offset value at time t
- H0 '[t] indicates an offset value after filtering at time t.
- the offset calculation of the X axis and the Y axis (for example, the horizontal axis with respect to the ground surface) and the offset calculation of the Z axis (for example, the vertical axis with respect to the ground surface) are separated,
- pre-processing appropriate threshold setting
- post-processing accuracy determination of new offset value
- FIGS. 29 to 32 are external views showing an electronic device (smart phone 100, tablet terminal 200, smart watch 300) including the azimuth angle sensor 1001 and a vehicle 400, respectively.
- an electronic device smart phone 100, tablet terminal 200, smart watch 300
- the azimuth angle sensor 1001 described above as each electronic compass
- the direction in which the user carrying each device is facing or the traveling direction of the vehicle 400 can be accurately detected.
- GPS [global positioning system] and an electronic compass are used in combination, it is possible to improve position detection accuracy in a map application or a navigation application.
- mounting an electronic compass on the vehicle 400 and detecting an absolute direction is very important in supporting advanced automatic driving technology.
- the invention disclosed in this specification is, for example, a direction mounted on a mobile device (smart phone, tablet terminal, smart watch, etc.) or a mobile body (vehicle, ship, aircraft, drone, etc.). It can be used for an angle sensor.
- Azimuth angle sensor 10 Magnetic detection part 20 Offset correction part 30 Offset derivation part 31 Initial setting part 32 Offset calibration condition determination part 33 Temporary decision value derivation part 34 Update part 40
- Azimuth angle calculation part 1001 Azimuth angle sensor 1010 Magnetic detection part 1010X, 1010Y, 1010Z Magnetic sensor (X axis, Y axis, Z axis) 1020 Offset correction unit 1030 Offset calculation unit 1040 Azimuth angle calculation unit 100 Smartphone 200 Tablet terminal 300 Smart watch 400 Vehicle
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Measuring Magnetic Variables (AREA)
Abstract
方位角センサでは、3軸での磁気の検出により、3軸座標系上のデータ点として原磁気検出データが順次取得される。方位角センサに設けられたオフセット導出装置は、原磁気検出データを補正して補正磁気検出データを生成するためのオフセット値(HxOFF,HyOFF,HzOFF)を導出する。オフセット導出装置は、原磁気検出データ又は補正磁気検出データにおける複数のデータ点を用いてオフセット仮決定値(Hx0,Hy0,Hz0)を導出した後、原磁気検出データ及びオフセット仮決定値に基づき、その場の磁気の大きさ|M'|を導出する。そして、導出した磁気の大きさが所定の校正成功範囲内にある場合にはオフセット仮決定値にてオフセット値を更新する一方、そうでない場合にはオフセット値の更新を非実行とする。
Description
本発明は、オフセット導出装置、オフセット算出装置、及び、これを用いた方位角センサに関する。
方位角センサ(地磁気センサ)は、地磁気の向きを検出することにより、方位角を測定する。但し、測定対象の地磁気は非常に微弱である。従って、方位角を精度良く検出するためには、周囲環境に存在する外来磁場(方位角センサを搭載した機器の内部で発生する磁場や、方位角センサの周囲に置かれた強力マグネットが発する磁場など)に起因するオフセットや、方位角センサ自体の性能に起因するオフセットをキャンセルして、真の地磁気を検出する必要がある(例えば下記特許文献1参照)。
方位角センサのオフセットは、時間的にも空間的にも絶えず変化する。従って、方位角を精度良く検出するためには、方位角センサのオフセットを継続的にキャンセルし続ける必要がある。時間的にも空間的にも絶えず変化するオフセットをキャンセルし続けるためには、オフセット補正を行うためのオフセット値を次々と更新してゆく必要がある。
しかしながら、オフセット値を導出する際、導出結果の精度が何らかの原因により一時的に良好でなくなることも考えられる。これをも考慮した更新動作制御により、オフセット補正に用いるオフセット値の精度向上、ひいては方位角の検出精度向上が期待される。
そこで本発明は、磁気検出に関するオフセット値の精度向上に寄与するオフセット導出装置及び方法、並びに、当該オフセット導出装置を用いた方位角センサ及び電子機器を提供することを第1の目的とする。
また、オフセット補正方法としては、使用するユーザが意図的に手動補正する方法と、ユーザが意図しない間に自動補正する方法があり、ユーザの利便性向上や方位角センサの検出精度向上を鑑みると、後者の方法を採用することが望ましい。
しかしながら、特許文献1の従来技術では、オフセット補正処理に要する演算量が非常に多いので、オフセットを高速かつ継続的にキャンセルし続けるためには、高い演算能力を必要とするという課題があった。
また、方位角センサを自動車などに搭載する場合、地表面に対する鉛直軸方向の動きが乏しいので、精度良くオフセットをキャンセルすることが難しいという課題もあった。
本明細書中に開示されている発明は、本願の発明者により見出された上記課題に鑑み、3軸の磁気検出データのうちいずれかの変動幅が小さい場合でも各軸のオフセットを精度良く算出することのできるオフセット算出装置及びこれを用いた方位角センサを提供することを第2の目的とする。
上記第1の目的を達成するために、本発明に係るオフセット導出装置は、3軸又は2軸での磁気の検出により3軸座標系又は2軸座標系上のデータ点として順次取得される原磁気検出データを補正して補正磁気検出データを生成するためのオフセット値を導出するオフセット導出装置であって、前記原磁気検出データ又は前記補正磁気検出データにおける複数のデータ点を用いて前記オフセット値の仮決定値を導出する仮決定値導出部と、前記原磁気検出データ及び前記仮決定値に基づき前記磁気の大きさを導出し、導出した前記磁気の大きさが所定の基準範囲内にある場合には前記仮決定値にて前記オフセット値を更新する一方、そうでない場合には前記オフセット値の更新を非実行とする更新部と、を備えたことを特徴とする。
具体的には例えば、前記更新部は、前記導出した前記磁気の大きさが前記基準範囲内にある場合には前記仮決定値にて前記オフセット値を更新するとともに前記導出した前記磁気の大きさに基づき前記基準範囲も更新し、そうでない場合には前記オフセット値及び前記基準範囲の更新を非実行にすると良い。
更に具体的には例えば、前記導出した前記磁気の大きさに基づき前記基準範囲が更新される際、更新後の前記基準範囲は、前記導出した前記磁気の大きさを内包する範囲とされると良い。
更に具体的には例えば、前記導出した前記磁気の大きさに基づき前記基準範囲が更新される際、更新後の前記基準範囲は、前記導出した前記磁気の大きさを中心とする範囲とされても良い。
また例えば、更新前の基準範囲としての初期の基準範囲を前記原磁気検出データに基づき設定する初期設定部を、当該オフセット導出装置に更に設けても良い。
また具体的には例えば、前記仮決定値導出部は、前記複数のデータ点としてのN個のデータ点の内の1つを基準データ点として用い(但しNは2以上の整数)、3軸座標系又は2軸座標系において前記基準データ点を原点と一致させるように前記複数のデータ点を一様に平行移動させることにより、前記基準データ点を除いた(N-1)個の仮想データ点を設定し、その後、3軸座標系において原点を通る曲面の中心に位置し且つ前記曲面と各々の仮想データ点との間の距離の総和を最小化させる点又は2軸座標系において原点を通る曲線の中心に位置し且つ前記曲線と各々の仮想データ点との間の距離の総和を最小化させる点を仮想オフセット点として導出して、前記平行移動分を元に戻すように前記仮想オフセット点を平行移動することにより前記仮決定値を導出すると良い。
より具体的には例えば、3軸座標系において、前記(N-1)個の仮想データ点を構成する第iの仮想データ点の座標値を(Hxi’,Hyi’,Hzi’)とし(但し、iは1以上且つ(N-1)以下の整数)、前記仮想オフセット点の座標値を(Hx0’,Hy0’,Hz0’)としたとき、前記仮決定値導出部は、下記式(A1)の関数FH1の値を最小化させるように前記仮想オフセット点の座標値を導出すると良い。
或いは例えば、2軸座標系において、前記(N-1)個の仮想データ点を構成する第iの仮想データ点の座標値を(Hxi’,Hyi’)とし(但しiは1以上且つ(N-1)以下の整数)、前記仮想オフセット点の座標値を(Hx0’,Hy0’)としたとき、前記仮決定値導出部は、下記式(A2)の関数FH2の値を最小化させるように前記仮想オフセット点の座標値を導出すると良い。
本発明に係る方角センサは、3軸又は2軸での磁気の検出により原磁気検出データを生成する磁気検出装置と、前記原磁気検出データのオフセット値を導出する前記オフセット導出装置と、前記オフセット値を用いて前記原磁気検出データを補正することで補正磁気検出データを生成するオフセット補正装置と、前記補正磁気検出データから方位角データを生成する方位角演算部と、を備えたことを特徴とする。
本発明に係る電子機器は、前記方位角センサを備えたことを特徴とする。
本発明に係るオフセット導出方法は、3軸又は2軸での磁気の検出により3軸座標系又は2軸座標系上のデータ点として順次取得される原磁気検出データを補正して補正磁気検出データを生成するためのオフセット値を導出するオフセット導出方法であって、前記原磁気検出データ又は前記補正磁気検出データにおける複数のデータ点を用いて前記オフセット値の仮決定値を導出する仮決定値導出ステップと、前記原磁気検出データ及び前記仮決定値に基づき前記磁気の大きさを導出し、導出した前記磁気の大きさが所定の基準範囲内にある場合には前記仮決定値にて前記オフセット値を更新する一方、そうでない場合には前記オフセット値の更新を非実行とする更新ステップと、を備えたことを特徴とする。
また、上記第2の目的を達成するために、本明細書中に開示されているオフセット算出装置は、
3軸座標空間のデータ点として順次取得される3軸の磁気検出データを参照して各軸の最大値及び最小値にそれぞれ対応する6点のデータ点(Hxi,Hyi,Hzi)(ただしi=1~6)を常時探索し、
各軸毎の最大値と最小値との差が全ての軸について閾値以上となったときに7点目の基準データ点(Hx7,Hy7,Hz7)を決定し、
前記基準データ点を原点(0,0,0)と一致させるように、前記6点のデータ点のうち、少なくともX軸とY軸の最大値及び最小値にそれぞれ対応する4点を一様に平行移動した上でZ軸の座標値を無視することにより、XY座標面上の仮想データ点(Hxi’,Hyi’)(ただしi=1~4)を算出し、
前記仮想データ点(Hxi’,Hyi’)を用いて、次の(f1)式で表される関数F1を最小化するXY座標面上の仮想オフセット点(Hx0’,Hy0’)を算出し、
前記基準データ点の平行移動分を元に戻すように前記仮想オフセット点(Hx0’,Hy0’)を平行移動することにより、X軸のオフセット値Hx0及びY軸のオフセット値Hy0を算出し、
前記基準データ点を前記原点と一致させるように、前記6点のデータ点を一様に平行移動することにより、6点の仮想データ点(Hxi’,Hyi’,Hzi’)(ただしi=1~6)を算出し、
前記仮想オフセット点(Hx0’,Hy0’)と前記6点の仮想データ点(Hxi’,Hyi’,Hzi’)を用いて、次の(f2)式で表される関数F2を最小化する仮想オフセット値Hz0’を算出し、
前記基準データ点の平行移動分を元に戻すように前記仮想オフセット値Hz0’を平行移動することにより、Z軸のオフセット値Hz0を算出する構成(第1の構成)である。
3軸座標空間のデータ点として順次取得される3軸の磁気検出データを参照して各軸の最大値及び最小値にそれぞれ対応する6点のデータ点(Hxi,Hyi,Hzi)(ただしi=1~6)を常時探索し、
各軸毎の最大値と最小値との差が全ての軸について閾値以上となったときに7点目の基準データ点(Hx7,Hy7,Hz7)を決定し、
前記基準データ点を原点(0,0,0)と一致させるように、前記6点のデータ点のうち、少なくともX軸とY軸の最大値及び最小値にそれぞれ対応する4点を一様に平行移動した上でZ軸の座標値を無視することにより、XY座標面上の仮想データ点(Hxi’,Hyi’)(ただしi=1~4)を算出し、
前記仮想データ点(Hxi’,Hyi’)を用いて、次の(f1)式で表される関数F1を最小化するXY座標面上の仮想オフセット点(Hx0’,Hy0’)を算出し、
前記基準データ点を前記原点と一致させるように、前記6点のデータ点を一様に平行移動することにより、6点の仮想データ点(Hxi’,Hyi’,Hzi’)(ただしi=1~6)を算出し、
前記仮想オフセット点(Hx0’,Hy0’)と前記6点の仮想データ点(Hxi’,Hyi’,Hzi’)を用いて、次の(f2)式で表される関数F2を最小化する仮想オフセット値Hz0’を算出し、
また、上記第1または第2の構成から成るオフセット算出装置において、前記閾値は、その場における空間磁場の大きさ、若しくは、これを分解したXY平面成分とZ軸成分に応じて、各軸毎にそれぞれ設定される構成(第3の構成)にするとよい。
また、上記第3の構成から成るオフセット算出装置において、前記Z軸の閾値は、前記X軸及び前記Y軸それぞれの閾値よりも小さい構成(第4の構成)にするとよい。
また、上記第3または第4の構成から成るオフセット算出装置は、その場における地磁気の伏角を用いて、前記空間磁場の大きさをXY平面成分とZ軸成分に分解する構成(第5の構成)にするとよい。
また、上記第5の構成から成るオフセット算出装置は、新たに求められた各軸の新オフセット値を用いて前記空間磁場の大きさと前記伏角を算出し、各算出値が所定の条件を満たしているか否かに応じて、前記新オフセット値を破棄するか否かを決定する構成(第6の構成)にするとよい。
また、上記第1~第6いずれかの構成から成るオフセット算出装置において、前記基準データ点は、前記6点のデータ点のうち、少なくともX軸とY軸の最大値及び最小値にそれぞれ対応する4点から、所定値以上の距離を隔てたデータ点である構成(第7の構成)にするとよい。
また、本明細書中に開示されているオフセット算出装置は、3軸の磁気検出データそれぞれのオフセットを算出するに際して、X軸及びY軸のオフセット計算と、前記X軸及び前記Y軸よりもデータ変動の小さいZ軸のオフセット計算とを別々に実施する構成(第8の構成)とされている。
より具体的に述べると、上記第8の構成から成るオフセット算出装置は、まず前記X軸及び前記Y軸のオフセット値を算出し、その算出結果を利用して前記Z軸のオフセット値を算出する構成(第9の構成)にするとよい。
また、本明細書中に開示されている方位角センサは、3軸の磁気検出データを生成する磁気検出装置と、前記磁気検出データのオフセットを算出する上記第1~第9いずれかの構成から成るオフセット算出装置と、前記磁気検出データのオフセットを補正するオフセット補正装置と、補正済みの磁気検出データから方位角データを生成する方位角演算装置と、を有する構成(第10の構成)とされている。
本発明によれば、磁気検出に関するオフセット値の精度向上に寄与するオフセット導出装置及び方法、並びに、当該オフセット導出装置を用いた方位角センサ及び電子機器を提供することが可能となる。
また、本明細書中に開示されている発明によれば、3軸の磁気検出データのうちいずれかの変動幅が小さい場合でも各軸のオフセットを精度良く算出することのできるオフセット算出装置及びこれを用いた方位角センサを提供することが可能となる。
<<第1実施形態>>
以下、本発明の第1実施形態の例を、図面を参照して具体的に説明する。参照される各図において、同一の部分には同一の符号を付し、同一の部分に関する重複する説明を原則として省略する。尚、本明細書では、記述の簡略化上、情報、信号、物理量又は部材等を参照する記号又は符号を記すことによって、該記号又は符号に対応する情報、信号、物理量又は部材等の名称を省略又は略記することがある。また、後述の任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる又は並列に実行できる。
以下、本発明の第1実施形態の例を、図面を参照して具体的に説明する。参照される各図において、同一の部分には同一の符号を付し、同一の部分に関する重複する説明を原則として省略する。尚、本明細書では、記述の簡略化上、情報、信号、物理量又は部材等を参照する記号又は符号を記すことによって、該記号又は符号に対応する情報、信号、物理量又は部材等の名称を省略又は略記することがある。また、後述の任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる又は並列に実行できる。
<全体構成>
図1は、本発明の第1実施形態に係る方位角センサ1の全体構成を示すブロック図である。方位角センサ1は、磁気検出部10と、オフセット補正部20と、オフセット導出部30と、方位角演算部40と、を有する。
図1は、本発明の第1実施形態に係る方位角センサ1の全体構成を示すブロック図である。方位角センサ1は、磁気検出部10と、オフセット補正部20と、オフセット導出部30と、方位角演算部40と、を有する。
磁気検出部10は、方位角センサ1が存在する場所における磁気を検出する。検出対象としての磁気は、地磁気を含み、地磁気そのものであると考えても良い。磁気検出部10は、検出対象の磁気をX軸、Y軸、及びZ軸の夫々において検出する3軸磁気検出部である。即ち、磁気検出部10は、検出対象の磁気のX軸成分、Y軸成分及びZ軸成分を検出する磁気センサ10X、10Y及び10Zを含み、3軸の磁気検出データ(Hx,Hy,Hz)を生成及び出力する。磁気検出部10から出力されるHx、Hy、Hzは、夫々、磁気検出部10にて検出された磁気のX軸成分、Y軸成分、Z軸成分を表す。X軸、Y軸及びZ軸は互いに直交する。尚、磁気センサ10X、10Y、10Zそれぞれの磁気検出素子としては、例えば、ホール素子を利用してもよいし、MR(magnetoresistance)素子を利用しても良い。
オフセット補正部20は、オフセット導出部30から供給されるオフセット値を用いて磁気検出部10から出力された磁気検出データ(Hx,Hy,Hz)を補正して補正後の磁気検出データ(Hx,Hy,Hz)を出力する。この補正をオフセット補正と称する。オフセット値は、磁気検出部10から出力された磁気検出データ(Hx,Hy,Hz)に含まれるオフセット成分(HxOFF,HyOFF,HzOFF)である。つまり、HxOFF、HyOFF、HzOFFは、夫々、磁気検出部10から出力されるHx、Hy、Hzのオフセット成分である。故に、オフセット補正前の磁気検出データのX軸成分、Y軸成分、Z軸成分を夫々Hx、Hy、Hzで表すと共に、オフセット補正後の磁気検出データのX軸成分、Y軸成分、Z軸成分を夫々Hxc、Hyc、Hzcで表したならば、“Hxc=Hx-HxOFF”、“Hyc=Hy-HyOFF”、“Hzc=Hz-HzOFF”、となる。以下では、説明の明確化上、オフセット補正前の磁気検出データ(Hx,Hy,Hz)を特に原磁気検出データと称することがあり、オフセット補正後の磁気検出データ(Hx,Hy,Hz)を特に補正磁気検出データと称することがある。
オフセット導出部30は、原磁気検出データ又は補正磁気検出データに基づきオフセット値(HxOFF,HyOFF,HzOFF)を導出及び設定し、また必要に応じてオフセット値(HxOFF,HyOFF,HzOFF)を更新する。
方位角演算部40は、補正磁気検出データ(Hx,Hy,Hz)に基づき方位角データSoを生成及び出力する。方位角データSoは、X軸、Y軸及びZ軸から成る3軸座標系(換言すれば3軸の座標空間)において、検出対象の磁気(地磁気)がどの向きを向いているのかを表す。より具体的には例えば、方位角データSoは、X軸の向きと地磁気の向きとの関係を表して良い。
磁気検出部10は、磁気の検出を周期的に行って、次々と最新の原磁気検出データ(Hx,Hy,Hz)を生成及び出力する。これに伴い、オフセット補正部20も周期的に最新の補正磁気検出データ(Hx,Hy,Hz)を生成及び出力し、方位角演算部40も周期的に最新の方位角データSoを生成及び出力する。
尚、図1では、オフセット補正部20、オフセット導出部30及び方位角演算部40を各々独立した処理ブロックとして描写したが、これらの処理ブロックは、CPU(central processing unit)やDSP(digital signal processor)などを用いて一元的に実現されうる。
<オフセット導出処理>
図2を参照し、オフセット導出部30にて実行可能なオフセット導出処理を説明する。図2は、当該オフセット導出処理に係る3軸の座標空間図(XYZ座標空間図)である。1つの磁気検出データ(Hx,Hy,Hz)は、3軸座標系(即ちX軸、Y軸及びZ軸を座標軸とするXYZ座標系)上の1つのデータ点として取り扱われる。オフセット導出処理では、3軸座標系上のデータ点として順次取得される3軸の磁気検出データ(Hx,Hy,Hz)におけるN個のデータ点がN個の評価データ点として参照される。Nは2以上の任意の整数であり、図2の例では“N=7”とされている。つまり、互いに異なる7つのデータ点P1~P7が第1~第7の評価データ点として参照される。尚、磁気検出部10の精度が高ければ、参照される評価データ点の個数が少なくてもオフセット導出に関し十分な精度が得られる。
図2を参照し、オフセット導出部30にて実行可能なオフセット導出処理を説明する。図2は、当該オフセット導出処理に係る3軸の座標空間図(XYZ座標空間図)である。1つの磁気検出データ(Hx,Hy,Hz)は、3軸座標系(即ちX軸、Y軸及びZ軸を座標軸とするXYZ座標系)上の1つのデータ点として取り扱われる。オフセット導出処理では、3軸座標系上のデータ点として順次取得される3軸の磁気検出データ(Hx,Hy,Hz)におけるN個のデータ点がN個の評価データ点として参照される。Nは2以上の任意の整数であり、図2の例では“N=7”とされている。つまり、互いに異なる7つのデータ点P1~P7が第1~第7の評価データ点として参照される。尚、磁気検出部10の精度が高ければ、参照される評価データ点の個数が少なくてもオフセット導出に関し十分な精度が得られる。
各評価データ点は、補正磁気検出データのデータ点であって良い。この場合、第iの評価データ点であるデータ点Piの座標値は、補正磁気検出データを構成する1つのデータ点の座標値(Hxi,Hyi,Hzi)にて表される(iは整数)。即ち、データ点PiのX軸、Y軸、Z軸の座標値は、補正磁気検出データを構成する1つのデータ点のX軸の座標値Hxi、Y軸の座標値Hyi、Z軸の座標値Hziにて表される(iは整数)。
或いは、各評価データ点は、原磁気検出データのデータ点であって良い。この場合、第iの評価データ点であるデータ点Piの座標値は、原磁気検出データを構成する1つのデータ点の座標値(Hxi,Hyi,Hzi)にて表される(iは整数)。即ち、データ点PiのX軸、Y軸、Z軸の座標値は、原磁気検出データを構成する1つのデータ点のX軸の座標値Hxi、Y軸の座標値Hyi、Z軸の座標値Hziにて表される(iは整数)。
データ点P1~P7の設定後、データ点P1~P7から任意に択一された基準データ点を3軸座標系上の原点O(0,0,0)と一致させるようにデータ点P1~P7が一様に平行移動される。ここでは、データ点P7が基準データ点として択一されるものとする。そうすると、当該平行移動により、基準データ点P7を除いた6個の仮想データ点P1’~P6’が導出及び設定される。仮想データ点P1’~P6’は、夫々、平行移動後のデータ点P1~P6を表す。
次に、3軸座標系において、原点Oを通る曲面H1と仮想データ点P1’~P6’との距離の総和(計6つの距離の総和)を最小化させる仮想オフセット点C’が求められる。つまり、下記式(1)で表される曲面H1の関数FH1の値を最小化させる仮想オフセット点C’の座標値が算出される。ここで、Hxi’,Hyi’,Hzi’は、夫々、仮想データ点Pi’のX軸、Y軸、Z軸の座標値を表し(iは任意の整数であって、ここでは1以上且つ(N-1)以下の整数)、Hx0’,Hy0’,Hz0’は、夫々、仮想オフセット点C’の X軸、Y軸、Z軸の座標値を表す。尚、ここでは、曲面H1が、仮想オフセット点C’を中心とし且つ原点Oを通る球面であると仮定している(故に、当該球面の半径は、原点Oと仮想オフセット点C’との距離に等しい)。
最後に、先の平行移動分を元に戻すように仮想オフセット点C’を平行移動することにより本来のオフセット点Cが算出される。つまり、データ点P7を原点Oへ移動させる平行移動と、同じ移動量であるが逆の向きに仮想オフセット点C’を平行移動させて得られる点がオフセット点Cである。Hx0、Hy0、Hz0は、夫々オフセット点CのX軸、Y軸、Z軸の座標値を表す。この方法によって導出された(Hx0,Hy0,Hz0)をオフセット値(HxOFF,HyOFF,HzOFF)に代入して(即ち、オフセット値を更新して)オフセット補正部20に供給することが可能である。但し、詳細は後述するが、導出された(Hx0,Hy0,Hz0)の有効性がオフセット導出部30で評価され、無効と判断されると、(Hx0,Hy0,Hz0)が破棄されてオフセット値(HxOFF,HyOFF,HzOFF)の更新は非実行とされる。以下では、オフセット値(HxOFF,HyOFF,HzOFF)との混同を避けるため、オフセット導出処理にて導出された(Hx0,Hy0,Hz0)をオフセット仮決定値と称することがある。
このように、オフセット導出処理では、参照されるN個のデータ点のうち、任意の1点を必ず通る曲面H1を仮定し、曲面H1についての関数値を最小化させるためのパラメータを残りの(N-1)個のデータ点から推定する。従って、球面に関する方程式を直接的に用いてオフセット値を算出するような方法(例えば特許第4391416号公報に記載の方法)と異なり、複雑な演算(平均値演算など)を必要としないので、オフセット値導出に要する演算量が低減され、高速且つ継続的にオフセットをキャンセルすることが可能となる。
尚、3軸の磁気検出データ(Hx,Hy,Hz)をオフセット補正対象とした場合のオフセット導出処理方法を説明したが、当該方法は、2軸の磁気検出データ(Hx,Hy)をオフセット補正対象とした場合にも適用可能である。2軸の磁気検出データ(Hx,Hy)をオフセット補正対象とする場合には、データ点P1~P7、仮想データ点P1’~ P6’、仮想オフセット点C’及びオフセット点CにおけるZ軸の座標値を全てゼロとみなし、X軸及びY軸に平行な二次元平面座標系において当該方法を適用すれば良い。
つまり、以下のようにすれば良い。1つの磁気検出データ(Hx,Hy)は、2軸座標系(即ちX軸及びY軸を座標軸とするXY座標系)上の1つのデータ点として取り扱われる。2軸座標系上のデータ点として順次取得される2軸の磁気検出データ(Hx,Hy)について、N個のデータ点がN個の評価データ点として参照される。各評価データ点は、補正磁気検出データのデータ点であって良い。この場合、第iの評価データ点であるデータ点Piの座標値は、補正磁気検出データを構成する1つのデータ点の座標値(Hxi,Hyi)にて表される(iは整数)。即ち、データ点PiのX軸、Y軸の座標値は、補正磁気検出データを構成する1つのデータ点のX軸の座標値Hxi、Y軸の座標値Hyiにて表される(iは整数)。或いは、各評価データ点は、原磁気検出データのデータ点であって良い。この場合、第iの評価データ点であるデータ点Piの座標値は、原磁気検出データを構成する1つのデータ点の座標値(Hxi,Hyi)にて表される(iは整数)。即ち、データ点PiのX軸、Y軸の座標値は、原磁気検出データを構成する1つのデータ点のX軸の座標値Hxi、Y軸の座標値Hyiにて表される(iは整数)。
データ点P1~P7の設定後、データ点P1~P7から任意に択一された基準データ点を2軸座標系上の原点O(0,0)と一致させるように、データ点P1~P7が一様に平行移動される。評価データ点P7が基準データ点として択一されたことを想定する。すると、当該平行移動により、2軸座標系上において、基準データ点P7を除いた6個の仮想データ点P1’~P6’が導出及び設定される。
次に、2軸座標系において、原点Oを通る曲線H2と仮想データ点P1’~P6’との距離の総和(計6つの距離の総和)を最小化させる仮想オフセット点C’が求められる。つまり、下記式(2)で表される曲線H2の関数FH2の値を最小化させる仮想オフセット点C’の座標値が算出される。ここで、Hxi’,Hyi’は、夫々、仮想データ点Pi’のX軸、Y軸の座標値を表し(iは任意の整数であって、ここでは1以上且つ(N-1)以下の整数)、Hx0’,Hy0’は、夫々、仮想オフセット点C’の X軸、Y軸の座標値を表す。尚、ここでは、曲線H2が、仮想オフセット点C’を中心とし、且つ、原点Oを通る円であると仮定している(故に、当該円の半径は、原点Oと仮想オフセット点C’との距離に等しい)。
最後に、先の平行移動分を元に戻すように仮想オフセット点C’を平行移動することにより、本来のオフセット点Cが算出される。つまり、データ点P7を原点Oへ移動させる平行移動と、同じ移動量であるが逆の向きに仮想オフセット点C’を平行移動させて得られる点がオフセット点Cである。Hx0、Hy0は、夫々、オフセット点CのX軸、Y軸の座標値を表す。この方法によって導出された(Hx0,Hy0)をオフセット値(HxOFF,HyOFF)に代入して(即ち、オフセット値を更新して)オフセット補正部20に供給することが可能である。但し、3軸で考えた場合と同様、導出された(Hx0,Hy0)の有効性がオフセット導出部30で評価され、無効と判断されると、(Hx0,Hy0)が破棄されてオフセット値(HxOFF,HyOFF)の更新は非実行とされる。以下では、オフセット値(HxOFF,HyOFF)との混同を避けるため、オフセット導出処理にて導出された(Hx0,Hy0)をオフセット仮決定値と称することがある。
<オフセット値更新に関わる動作フロー>
図3を参照し、方位角センサ1におけるオフセット値の更新に関わる動作の流れを説明する。図3は、当該動作の流れを示すフローチャートである。尚、以下では、特に記述無き限り、方位角センサ1では3軸座標系上の磁気検出データが取り扱われるものとする。方位角センサ1にて2軸座標系上の磁気検出データを取り扱う場合には、磁気検出データ及びオフセット値に関するZ軸成分が常にゼロであると考えれば良い。
図3を参照し、方位角センサ1におけるオフセット値の更新に関わる動作の流れを説明する。図3は、当該動作の流れを示すフローチャートである。尚、以下では、特に記述無き限り、方位角センサ1では3軸座標系上の磁気検出データが取り扱われるものとする。方位角センサ1にて2軸座標系上の磁気検出データを取り扱う場合には、磁気検出データ及びオフセット値に関するZ軸成分が常にゼロであると考えれば良い。
図3の動作では、まずステップS11において初期値決定処理が実行され、初期値決定処理により、その場の磁気の大きさ|M|が導出される。その場の磁気の大きさは、方位角センサ1の存在位置における磁気の大きさを表し、方位角センサ1の存在位置における地磁気の大きさであると推定される。初期値決定処理では、地磁気の大きさの推定初期値が求められることになる。
図4は、初期値決定処理のフローチャートである。初期値決定処理は、ステップS31~S34の処理から成る。方位角センサ1又は方位角センサ1を備えた任意の機器(後述の電子機器を含む)には、方位角センサ1または当該機器のユーザから所定操作の入力を受ける操作部(ボタンスイッチ、タッチパネルなど;不図示)が設けられている。ステップS31では、ユーザから所定の開始操作が当該操作部に入力される。この入力後、ユーザは、ステップS32において方位角センサ1をスイング運動させ、その後のステップS33において所定の終了操作を操作部に入力する。終了操作の入力を受けると、ステップS34において、オフセット導出部30により、その場の磁気の大きさ|M|が導出される。方位角センサ1のスイング運動は、方位角センサ1を備えた任意の機器のスイング運動とも読み替えられる。
方位角センサ1のスイング運動とは、実空間上に固定された1つの軸(例えば地磁気の向きに平行な軸)と、方位角センサ1にて定義されたX軸、Y軸及びZ軸の夫々との関係が様々に変化するよう、所謂例えば8の字動作の如く、方位角センサ1を自由にスイングさせる所定の運動を指す。1つの典型例としては、方位角センサ1又は方位角センサ1を備えた任意の機器を水平方向に伸ばしたユーザの腕に固定した状態で、ユーザの重心周りに当該腕を水平面に沿って一周させる運動(図5A参照)と、方位角センサ1又は方位角センサ1を備えた任意の機器をユーザの腕に固定した状態で、ユーザの肩を通り且つ水平方向に平行な軸を回転軸として当該腕を鉛直面に沿って一周させる運動(図5B参照)との組み合わせで、スイング運動が形成されても良い。例えば、図6A及び図6Bに示す如く、スイング運動の中で、地磁気のベクトルがX軸及びY軸に平行な平面内でZ軸周りに1周したならば、その1周の過程において、Hx及びHyの夫々は、正弦波状に変化して極大値と極小値をとる。
オフセット導出部30は、開始操作の入力時点から終了操作の入力時点までの区間を、初期値決定用データ区間として設定する。或いは、開始操作の入力時点から所定時間(例えば10秒)が経過した時点までの区間が初期値決定用データ区間として設定されても良い。この場合、ステップS33における終了操作の入力は不要である。オフセット導出部30は、初期値決定用データ区間において周期的に取得された原磁気検出データ(Hx,Hy,Hz)の集まりを初期値決定用データ群として参照して、初期値決定用データ群に含まれる全てのX軸データHxの内の最大値Hxmax及び最小値Hxminを特定し、且つ、初期値決定用データ群に含まれる全てのY軸データHyの内の最大値Hymax及び最小値Hyminを特定し、且つ、初期値決定用データ群に含まれる全てのZ軸データHzの内の最大値Hzmax及び最小値Hzminを特定した後、下記式(3)に従い、磁気の大きさ|M|を算出する。ここで、max{ }は、{ }内に示された複数の引数(変数)の中の最大値を返す演算子を表す。従って(Hxmax-Hxmin)と(Hymax-Hymin)と(Hzmax-Hzmin)の内の最大値の1/2が|M|として算出される。
尚、Hx、Hy及びHzの夫々は、正と負の値をとる一次元量である。地磁気のベクトルのX軸成分が3軸座標系の原点からX軸の正の向き、負の向きに伸びているとき、検出されたHxは、夫々、正の値、負の値を持つ。Hy及びHzについても同様である。スイング運動が適切に行われたのであれば、多くの場合、Hxmax、Hymax及びHzmaxの夫々は正の値を持つと共にHxmin、Hymin及びHzminの夫々は負の値を持ち、理想的には、(Hxmax-Hxmin)と(Hymax-Hymin)と(Hzmax-Hzmin)は全てその場の地磁気の大きさと一致する。尚、オフセットの大きさによっては、HxmaxとHxminが同符号の値を持つこともある(Hymax及びHyminについても同様であり、Hzmax及びHzminについても同様)。
図3の説明に戻る。ステップS11において、その場の磁気の大きさ|M|が導出されるとステップS12に進む。尚、GPS(global positioning system)を利用するなどして、その場の磁気の大きさが規定値として方位角センサ1に与えられている場合には、その規定値を|M|として取り扱ってステップS12以降の処理を行うようにしても良い(この場合、ステップS11の処理は不要となる)。ステップS12において、オフセット導出部30は、導出された磁気の大きさ|M|に基づき、オフセット導出処理が良好に実施されたかを判定するための校正成功範囲を設定する。校正成功範囲は後に更新されることになるが、ステップS12では初期の校正成功範囲が設定される。例えば、(|M|-Δ)を下限とし且つ(|M|+Δ)を上限とする範囲が初期の校正成功範囲として設定される。或いは例えば、(|M|-k|M|)を下限とし且つ(|M|+k|M|)を上限とする範囲が初期の校正成功範囲として設定される。ここで、Δは正の所定値を持ち、kは1未満の正の所定値(例えば0.1)を持つ。検出対象となる地磁気の大きさ(一般には20~80μT、日本の屋外では40~50μT)に応じてΔの値を適切に設定しておくと良い。
ステップS12の後、ステップS13に進む。ステップS13において、オフセット導出部30は、所定のオフセット校正条件が充足しているか否かを判定する。
図7は、オフセット校正条件が充足しているか否かを判定するために、オフセット導出部30によって実行されるオフセット校正条件判定処理のフローチャートである。オフセット校正条件判定処理は、ステップS51~S57から成り、まずステップS51において、最大値探索データHxA、HyA、HzA及び最小値探索データHxB、HyB、HzBに、全てゼロを代入する。続くステップS52において、オフセット導出部30は最新の磁気検出データ(Hx,Hy,Hz)を取得する。ステップS52において取得される磁気検出データ(Hx,Hy,Hz)は、補正磁気検出データであるが、原磁気検出データであっても良い。なお、図3のステップS17の処理が一度も行われていない状況においては、オフセット値(HxOFF,HyOFF,HzOFF)は(0,0,0)であり、故に、補正磁気検出データと原磁気検出データは互いに等しくなる。
その後、ステップS53~S55において、オフセット導出部30は、ステップS52で取得した磁気検出データ(Hx,Hy,Hz)を参照して、
“Hx>HxA”ならHxをHxAに代入する一方で “Hx<HxB”ならHxをHxBに代入し、且つ、
“Hy>HyA”ならHyをHyAに代入する一方で “Hy<HyB”ならHyをHyBに代入し、且つ、
“Hz>HzA”ならHzをHzAに代入する一方で “Hz<HzB”ならHzをHzBに代入する。
“Hx>HxA”ならHxをHxAに代入する一方で “Hx<HxB”ならHxをHxBに代入し、且つ、
“Hy>HyA”ならHyをHyAに代入する一方で “Hy<HyB”ならHyをHyBに代入し、且つ、
“Hz>HzA”ならHzをHzAに代入する一方で “Hz<HzB”ならHzをHzBに代入する。
そしてステップS56において、オフセット導出部30は、第1不等式“(HxA-HxB)≧THx、第2不等式“(HyA-HyB)≧THy”及び第3不等式“(HzA-HzB)≧THz”の成否を判定し、第1~第3不等式が全て成立する場合に限ってオフセット校正条件が充足したと判定して(ステップS57)オフセット校正条件判定処理を終え、そうでない場合にはステップS52に戻る。THx、THy及びTHzは所定の正の閾値である。即ち、ステップS52~S56の繰り返しの中で、オフセット校正条件判定処理を開始してからの、磁気検出データ(Hx,Hy,Hz)のX軸成分の最大値HxA及び最小値HxB、Y軸成分の最大値HyA及び最小値HyB並びにZ軸成分の最大値HzA及び最小値HzBが探索及び更新され、X軸、Y軸及びZ軸の夫々について、最大値及び最小値間の差分値が所定の閾値以上となったときにオフセット校正条件が充足したと判定される。
閾値THx、THy及びTHzは、検出対象となる地磁気の大きさ(一般には20~80μT、日本では40~50μT)を考慮して、例えば30μT程度に設定することが望ましい。また、閾値THx、THy及びTHzは、互いに同じ値を有していても良いし、互いに異なる値を有していても良い。
図3を再度参照し、オフセット校正条件が充足するまでステップS13の判定が繰り返され(ステップS13のN)、オフセット校正条件が充足すると(ステップS13のY)ステップS14に進み、上述のオフセット導出処理が実行される。つまり、X軸、Y軸及びZ軸の夫々について最大値及び最小値間の差分値が所定の閾値(THx、THy、THz)以上となったときに、オフセット導出処理での使用に適した評価データ点群(3軸の座標空間内において、オフセット点Cを中心に比較的均等に分散したデータ点群)が集まったという判断の下、オフセット導出処理が実行される。このようなアルゴリズムを採用することにより、局所的に偏在しているデータ点群から不適切なオフセット導出結果が得られるといった事態の発生を抑制することができるので、オフセット導出処理の信頼性を高めることが可能となる。
なお、オフセット校正条件が充足されたときにおいて、各軸の最大値HxA、HyA、HzAを与えるデータ点(HxA、Hy,Hz)、(Hx、HyA,Hz)、(Hx、Hy,HzA)を最大データ点と称し、各軸の最小値HxB、HyB、HzBを与えるデータ点(HxB、Hy,Hz)、(Hx、HyB,Hz)、(Hx、Hy,HzB)を最小データ点と称する。図8に、例として、X軸についての最大データ点PxAと最小データ点PxBを示す。
ステップS14でのオフセット導出処理において、7つの評価データ点の内の6つは、HxA、HyA、HzA、HxB、HyB、HzBを与える6つのデータ点である。すなわち、上記第1~第3不等式が全て成立したときにおける、HxA、HxBをX軸成分として持つ磁気検出データ(HxA,Hy,Hz)、(HxB,Hy,Hz)を第1、第2の評価データ点とし、HyA、HyBをY軸成分として持つ磁気検出データ(Hx,HyA,Hz)、(Hx,HyB,Hz)を第3、第4の評価データ点とし、HzA、HzBをZ軸成分として持つ磁気検出データ(Hx,Hy,HzA)、(Hx,Hy,HzB)を第5、第6の評価データ点とする。第1、第3、第5の評価データ点は、夫々、X軸、Y軸、Z軸についての最大データ点であり、第2、第4、第6の評価データ点は、夫々、X軸、Y軸、Z軸についての最小データ点である。つまり、ステップS14のオフセット導出処理で実際の演算に供されるデータ点は、3軸の最大データ点及び最小データ点から成る第1~第6の評価データ点と、それらと異なる任意の1点(先述の基準データ点に相当)のみである。従って、オフセット導出部30には、合計7点分のレジスタを用意しておけば足りるので、回路規模又はソフトウェアコードサイズは小さくて済む。
ステップS14でのオフセット導出処理にて参照される第1~第6の評価データ点としての磁気検出データは、図7のステップS52にて取得されたものであるので、補正磁気検出データ又は原磁気検出データである。第1~第6の評価データ点が補正磁気検出データにおけるデータ点である場合には、第7の評価データ点も補正磁気検出データにおけるデータ点とされ、第1~第6の評価データ点が原磁気検出データにおけるデータ点である場合には、第7の評価データ点も原磁気検出データにおけるデータ点とされる。
図9は、原点O(0,0,0)に平行移動される基準データ点の一選択例を示すタイムチャートである。図9において、黒丸印は、3軸の最大値又は最小値に対応する最大データ点又は最小データ点(合計6点)を示しており、白丸印は、それら以外のデータ点を示している。例えば、図9で示したように、データ点P1からデータ点Pmまで3軸の最大値及び最小値を探索し続けた結果(mは整数)、データ点Pmを取得した時点で上記第1~第3不等式が成立して3軸の最大データ点と最小データ点が全て確定した場合、基準データ点の選択アルゴリズムを最も容易とする観点から言えば、データ点Pmの直後に取得されるデータ点Pm+1を基準データ点(即ち第7の評価データ点)として選択することが望ましい。但し、データ点P1~Pm-1の何れか1点(最大データ点と最小データ点を除く)を基準データ点として選択することも可能である。
図3の説明に戻り、ステップS14のオフセット導出処理では、第1~第7の評価データ点に基づきオフセット仮決定値(Hx0,Hy0,Hz0)が導出される。第1~第7の評価データ点は、図2においてはデータ点P1~P7に相当するものである。オフセット仮決定値の意義及び導出方法は既に述べた通りである。
ステップS14に続くステップS15において、オフセット導出部30は、最新の原磁気検出データ(Hx,Hy,Hz)とオフセット仮決定値(Hx0,Hy0,Hz0)に基づき、下記式(4)に従って、その場の磁気の大きさ|M’|を求める。第1~第7評価データ点が原磁気検出データのデータ点である場合には、第1~第7評価データ点の何れかのデータ(Hx,Hy,Hz)とオフセット仮決定値(Hx0,Hy0,Hz0)に基づき、|M’|を求めても良い。第1~第7評価データ点が補正磁気検出データのデータ点である場合には、第1~第7評価データ点の何れかに対応する原磁気検出データ(Hx,Hy,Hz)とオフセット仮決定値(Hx0,Hy0,Hz0)に基づき、|M’|を求めても良い。|M’|は、オフセット仮決定値が真のオフセット値であるとみなしたときの、その場の磁気の大きさを表している。オフセット仮決定値を真のオフセット値とみなしたとき、オフセット補正後の磁気検出データは、(Hx-Hx0,Hy-Hy0,Hz-Hz0)となるので、磁気の大きさ|M’|は下記式(4)により表されることになる。
上述のオフセット校正条件判定処理を経て設定された評価データ点群は、オフセット導出処理での使用に適した評価データ点群(3軸の座標空間内において、オフセット点Cを中心に比較的均等に分散したデータ点群)であることが期待される。しかしながら、設定された評価データ点群に不適当なデータ点(例えば、電気的なノイズや外来磁場の影響を瞬間的に強く受けたデータ点)が混入することもあり、そのような場合には、オフセット仮決定値と真のオフセット値との誤差が大きくなる。オフセット仮決定値と真のオフセット値との誤差が大きくなると、|M’|が異常に大きくなったり異常に小さくなったりする。一方、検出対象の地磁気の大きさは、比較的短い時間内ではあまり変化しないと考えられ、当該大きさが変化するとしても当該大きさは連続的に且つ徐々に変化すると考えられる。よって、前回導出された磁気の大きさから見て今回導出された磁気の大きさが大きく変動している場合においては、オフセット仮決定値と真のオフセット値との誤差が許容範囲を超えて大きいと判断することができる。
当該誤差が許容範囲内にあるか否かを判断するべく、ステップS15に続くステップS16において、オフセット導出部30は、|M’|が校正成功範囲内に収まっているか否かを判断する。後述のステップS17の更新処理が1度も行われていない状況下においては、ステップS12に設定された校正成功範囲がステップS16にて用いられる。ステップS15で求めた|M’|が校正成功範囲内にある場合には(ステップS16のY)ステップS17に進み、ステップS15で求めた|M’|が校正成功範囲を逸脱する場合には(ステップS16のN)ステップS18に進む。例えば、校正成功範囲の下限及び上限が夫々“|M|-Δ”及び“|M|+Δ”であるならば、不等式“|M|-Δ≦|M’|≦|M|+Δ”の成立時にステップS17に進み、該不等式の不成立時にステップS18に進むことになる。
ステップS17において、オフセット導出部30は、オフセット導出処理で求めたオフセット仮決定値(Hx0,Hy0,Hz0)の精度が良好であると判断して(当該オフセット仮決定値が有効であると判断して)、オフセット補正部20に供給するオフセット値(HxOFF,HyOFF,HzOFF)をオフセット仮決定値(Hx0,Hy0,Hz0)にて更新するとともに、ステップS15で求めた磁気の大きさ|M’|に基づいて、校正成功範囲も更新する。具体的には、例えば、校正成功範囲の下限及び上限が夫々(|M’|-Δ)及び(|M’|+Δ)に更新される、或いは、校正成功範囲の下限及び上限が夫々(|M’|-k|M’|)及び(|M’|+k|M’|)に更新される。ステップS17によるオフセット値及び校正成功範囲の更新後、ステップS13に戻る。
ステップS18において、オフセット導出部30は、オフセット導出処理で求めたオフセット仮決定値(Hx0,Hy0,Hz0)の精度が良好でないと判断して(当該オフセット仮決定値が無効であると判断して)、オフセット補正部20に供給するオフセット値(HxOFF,HyOFF,HzOFF)を更新することなく、導出したオフセット仮決定値(Hx0,Hy0,Hz0)を破棄し、また校正成功範囲の更新も行わない。ステップS18によるオフセット仮決定値の破棄の後、ステップS13に戻る。
ステップS17又はS18を経てステップS13に戻った際、オフセット校正条件の充足/不充足の判定が再び行われるが、当該判定を行うためのオフセット校正条件判定処理(図7参照)は、ステップS51から開始される(すなわち、HxA等がゼロにリセットされる)。
ステップS13~S17の繰り返しによって、オフセット値(HxOFF,HyOFF,HzOFF)及び校正成功範囲は次々と更新されてゆく。図10に示す如く、第j回目の更新より校正成功範囲は第jの校正成功範囲から第(j+1)の校正成功範囲へと更新されることになる(jは自然数)。或る特定のタイミングで求めた|M’|が校正成功範囲内に収まることによって第j回目の更新が行われたとするならば、特定のタイミングで求めた|M’|(即ち、第j回目の更新の際に求めた|M’|)に基づき第(j+1)の校正成功範囲が設定されることになる。具体的には、第(j+1)の校正成功範囲は、特定のタイミングで求めた|M’|を内包する範囲とされる。上記方法では、第(j+1)の校正成功範囲の中心が特定のタイミングで求めた|M’|となるが、第(j+1)の校正成功範囲の中心が特定のタイミングで求めた|M’|から若干ずれることが有り得ても良い。
本実施形態に係る方法によれば、時間的にも空間的にも絶えず変化する方位角センサ1のオフセットが高速且つ継続的にキャンセルし続けられるので、方位角を精度良く検出することが可能となる。この際、オフセット導出処理の導出結果の精度がノイズ(電気的なノイズ、外来磁場による磁気的なノイズ)等の影響によって一時的に良好でなくなった場合には、オフセット導出処理の導出結果(即ちオフセット仮決定値)が破棄されて実際のオフセット補正に利用されないので、一時的であってもオフセット値の精度(ひいては方位角の精度)が劣化することが回避される。
尚、上記のステップS14では、3軸の最大データ点及び最小データ点の何れでもない任意の1点を基準データ点として選択しているが、基準データ点は、3軸の最大データ点及び最小データ点の内の何れか1点であっても構わない。このような構成であれば、オフセット導出処理で実際の演算に供されるデータ点を一つ減らすことができるので、回路規模又はソフトウェアコードサイズを更に縮小することが可能となる。但し、本構成を採用した場合、3軸の最大データ点及び最小データ点の分布状態によっては、オフセット算出精度の低下を招くおそれがある。
図11は、3軸の最大データ点及び最小データ点の何れかを基準データ点として選択する場合の留意点について説明するための3軸の座標空間図である。外来磁場などの影響により、3軸の最大データ点及び最小データ点のうち、何れか一つ(図11では、X軸成分の最大値HxA)が他から大きく乖離する場合がある。他から大きく乖離した最大データ点又は最小データ点が基準データ点として選択されると、基準データ点を原点Oと一致させるための平行移動量が本来の値から大きく乖離してしまう。その結果、オフセット導出処理により正しいオフセット点Cを得ることが難しくなり得る。このような不具合を回避するためには、例えば、3軸の最大データ点及び最小データ点を規定する最大値HxA、HyA及びHzA並びに最小値HxB、HyB及びHzBの絶対値の内、最も大きい絶対値に対応するデータ点及び最も小さい絶対値に対応するデータ点については、基準データ点の選択候補から除外するなどの対策を講じることが望ましい。
図12に、オフセット導出部30の内部ブロック図を示す。オフセット導出部30は、ステップS11及びS12の各処理を実行する初期設定部31と、ステップS13の処理(従って図7のオフセット校正条件判定処理)を実行するオフセット校正条件判定部32と、ステップS14の処理を実行する仮決定値導出部33と、ステップS15~S18の処理を実行する更新部34と、を備えていると考えることができる。
尚、上述のオフセット導出処理は、原磁気検出データ又は補正磁気検出データにおける複数のデータ点を用いてオフセット仮決定値を導出する一方法に過ぎない。原磁気検出データ又は補正磁気検出データにおける複数のデータ点を用いて原磁気検出データに対するオフセット値を導出する他の任意の方法(例えば特許第4391416号公報に記載の方法)を用いて、本実施形態におけるオフセット仮決定値を導出するようにしても良い。
<電子機器への適用>
方位角センサ1を、電子機器などの任意の機器に搭載することができる。方位角センサ1を備える電子機器は、例えば、携帯電話機(所謂スマートフォンに分類される携帯電話機を含む)、携帯情報端末(所謂タブレット端末に分類される携帯情報端末を含む)、時計(所謂スマートウォッチに分類される時計を含む)、デジタルカメラ、又は、歩数計である。図29、図30及び図31に、各々に方位角センサ1を備えたスマートフォン100、タブレット端末200及びスマートウォッチ300の外観図を示す。電子機器の電子コンパスとして、方位角センサ1を搭載することにより、電子機器及びユーザの向いている向き(より具体的には例えばX軸の向きと地磁気の向きとの関係)を正確に検出することができる。特に、GPS(global positioning system)と電子コンパスを併用すれば、地図アプリケーションソフトウェアやナビゲーションアプリケーションソフトウェアでの位置検出精度を高めることが可能となる。
方位角センサ1を、電子機器などの任意の機器に搭載することができる。方位角センサ1を備える電子機器は、例えば、携帯電話機(所謂スマートフォンに分類される携帯電話機を含む)、携帯情報端末(所謂タブレット端末に分類される携帯情報端末を含む)、時計(所謂スマートウォッチに分類される時計を含む)、デジタルカメラ、又は、歩数計である。図29、図30及び図31に、各々に方位角センサ1を備えたスマートフォン100、タブレット端末200及びスマートウォッチ300の外観図を示す。電子機器の電子コンパスとして、方位角センサ1を搭載することにより、電子機器及びユーザの向いている向き(より具体的には例えばX軸の向きと地磁気の向きとの関係)を正確に検出することができる。特に、GPS(global positioning system)と電子コンパスを併用すれば、地図アプリケーションソフトウェアやナビゲーションアプリケーションソフトウェアでの位置検出精度を高めることが可能となる。
<本発明の考察>
上述の第1実施形態にて具体化された本発明について考察する。
上述の第1実施形態にて具体化された本発明について考察する。
本発明の一側面に係るオフセット導出装置W1は、3軸又は2軸での磁気の検出により3軸座標系又は2軸座標系上のデータ点として順次取得される原磁気検出データを補正して補正磁気検出データを生成するためのオフセット値を導出するオフセット導出装置(30)であって、前記原磁気検出データ又は前記補正磁気検出データにおける複数のデータ点(第1~第Nの評価データ点:例えばP1~P7)を用いて前記オフセット値の仮決定値(オフセット仮決定値)を導出する仮決定値導出部(33)と、前記原磁気検出データ及び前記仮決定値に基づき前記磁気の大きさ(|M’|)を導出し、導出した前記磁気の大きさが所定の基準範囲(校正成功範囲)内にある場合には前記仮決定値にて前記オフセット値を更新する一方(ステップS17)、そうでない場合には前記オフセット値の更新を非実行とする(ステップS18)更新部(34)と、を備えたことを特徴とする。
磁気検出結果にはオフセットが含まれていることが多く、オフセットは時間的にも空間的にも絶えず変化する。時間的にも空間的にも絶えず変化するオフセットをキャンセルし続けるためには、補正磁気検出データを生成するためのオフセット値を次々と更新してゆく必要がある。しかしながら、オフセット値を導出する際、導出結果の精度がノイズ等の影響によって一時的に良好でなくなることがあり、このような場合にもオフセット値の更新を行ったならば、オフセット値による補正を経た補正磁気検出データの誤差(真値との誤差)が大きくなる。
オフセット導出装置W1によれば、複数のデータ点を用いてオフセット値の仮決定値を導出した後、原磁気検出データ及び仮決定値に基づき磁気の大きさの導出を介して仮決定値の妥当性を判断することができ、仮決定値が妥当である場合(即ち導出した磁気の大きさが所定の基準範囲内にある場合)にはオフセット値を更新し、妥当でない場合にはオフセット値の更新を非実行とすることができる。このため、一時的であってもオフセット値の精度が劣化することが抑制される。
<変形等>
本発明の実施形態は、特許請求の範囲に示された技術的思想の範囲内において、適宜、種々の変更が可能である。以上の実施形態は、あくまでも、本発明の実施形態の例であって、本発明ないし各構成要件の用語の意義は、以上の実施形態に記載されたものに制限されるものではない。上述の説明文中に示した具体的な数値は、単なる例示であって、当然の如く、それらを様々な数値に変更することができる。
本発明の実施形態は、特許請求の範囲に示された技術的思想の範囲内において、適宜、種々の変更が可能である。以上の実施形態は、あくまでも、本発明の実施形態の例であって、本発明ないし各構成要件の用語の意義は、以上の実施形態に記載されたものに制限されるものではない。上述の説明文中に示した具体的な数値は、単なる例示であって、当然の如く、それらを様々な数値に変更することができる。
本発明に係るオフセット導出装置としての又は電子機器としての対象装置を、ソフトウェア、集積回路等のハードウェア、或いは、ハードウェアとソフトウェアの組み合わせによって構成することができる。対象装置にて実現される機能の全部又は一部である任意の特定の機能をプログラムとして記述して、該プログラムを対象装置に搭載可能なフラッシュメモリ等に保存しておいても良い。そして、該プログラムをプログラム実行装置(例えば、対象装置に搭載可能なマイクロコンピュータ)上で実行することによって、その特定の機能を実現するようにしてもよい。上記プログラムは任意の記録媒体に記憶及び固定されうる。上記プログラムを記憶及び固定する記録媒体は対象装置と異なる機器(サーバ機器等)に搭載又は接続されても良い。
<<第2実施形態>>
次に、本発明の第2実施形態について詳細に説明する。
次に、本発明の第2実施形態について詳細に説明する。
<全体構成>
図13は、本発明の第2実施形態に係る方位角センサ1001の全体構成を示すブロック図である。本構成例の方位角センサ1001は、磁気検出部1010と、オフセット補正部1020と、オフセット算出部1030と、方位角演算部1040と、を有する。
図13は、本発明の第2実施形態に係る方位角センサ1001の全体構成を示すブロック図である。本構成例の方位角センサ1001は、磁気検出部1010と、オフセット補正部1020と、オフセット算出部1030と、方位角演算部1040と、を有する。
磁気検出部1010は、X軸方向の磁気を検出する磁気センサ1010Xと、Y軸方向の磁気を検出する磁気センサ1010Yと、Z軸方向の磁気を検出する磁気センサ1010Zを含み、3軸の磁気検出データ(Hx,Hy,Hz)を生成する。なお、磁気センサ1010X、1010Y、1010Zそれぞれの磁気検出素子としては、例えば、ホール素子を利用してもよいし、MR[magnetoresistance]素子を利用してもよい。また、X軸、Y軸、Z軸は、互いに直交するように設計すればよい。
オフセット補正部1020は、オフセット算出部1030で算出したオフセット値(=3軸の磁気検出データ(Hx,Hy,Hz)に各々含まれるオフセット成分(Hx0,Hy0,Hz0))を用いて磁気検出データ(Hx,Hy,Hz)を補正する。オフセット補正処理によりHx←Hx-Hx0、Hy←Hy-Hy0、Hy←Hz-Hz0となる。
オフセット算出部1030は、オフセット補正済である磁気検出データ(Hx,Hy,Hz)を常時監視し、磁気検出部1010のオフセット値(Hx0,Hy0,Hz0)を逐次更新する。オフセット算出処理(オフセット更新処理)については後ほど詳述する。
方位角演算部1040は、オフセット補正済みの磁気検出データ(Hx,Hy,Hz)から方位角データSoを生成する。
なお、本図では、オフセット補正部1020、オフセット算出部1030、及び、方位角演算部1040をそれぞれ独立した処理ブロックとして描写したが、これらの処理ブロックは、CPU[central processing unit]やDSP[digital signal processor]などを用いて一元的に実装することができる。
<オフセット算出処理(第1例)>
図14は、オフセット算出部1030におけるオフセット算出処理の第1例を示すXYZ座標空間図である。第1例のオフセット算出処理では、3軸座標空間のデータ点として順次取得される3軸の磁気検出データ(Hx,Hy,Hz)について、N個のデータ点(ただしN≧2であり、本図の例ではデータ点P1~P7の合計7点(N=7))が参照される。なお、磁気検出部1010の精度が高ければ、データ点数を不要に増やさなくても十分なオフセット算出精度が得られる。
図14は、オフセット算出部1030におけるオフセット算出処理の第1例を示すXYZ座標空間図である。第1例のオフセット算出処理では、3軸座標空間のデータ点として順次取得される3軸の磁気検出データ(Hx,Hy,Hz)について、N個のデータ点(ただしN≧2であり、本図の例ではデータ点P1~P7の合計7点(N=7))が参照される。なお、磁気検出部1010の精度が高ければ、データ点数を不要に増やさなくても十分なオフセット算出精度が得られる。
次に、データ点P1~P7から任意に択一された基準データ点を原点O(0,0,0)と一致させるように、各々のデータ点P1~P7が一様に平行移動される。本図の例ではデータ点P7が基準データ点として択一されている。このような平行移動により、基準データ点P7を除いた6個(=N-1個)の仮想データ点P1’~P6’が導出される。
次に、原点Oを通る曲面H1と各々の仮想データ点P1’~P6’との距離の総和が最小となる仮想オフセット点C’が算出される。具体的に述べると、仮想データ点Pi’を(Hxi’,Hyi’,Hzi’)(本図の例ではi=1~6)とし、仮想オフセット点C’を(Hx0’,Hy0’,Hz0’)としたときに、次の(5)式で表される曲面H1の関数を最小化するような仮想オフセット点C’が算出される。
なお、上記(5)式で表される曲面H1の関数は、仮想オフセット点C’を中心とする半径rの球面が原点Oを通る(r=|OC’|)と仮定して導出されたものである。
最後に、先の平行移動分を元に戻すように仮想オフセット点C’を平行移動することにより、本来のオフセット点C(Hx0,Hy0,Hz0)(磁気検出部1010のオフセット値に相当)が算出される。
このように、本例のオフセット算出処理では、参照されるN個のデータ点のうち、任意の1点を必ず通る曲面H1の関数を仮定した上で、その値を最小化するためのパラメータを残り(N-1)個のデータ点から推定する演算手法が採用されている。
従って、球面の方程式を直接的に適用してオフセット値を算出する従来技術と異なり、複雑な演算(平均値演算など)を必要としないので、オフセット補正処理に要する演算量を低減し、高速かつ継続的にオフセットをキャンセルすることが可能となる。
なお、ここでは、3軸の磁気検出データ(Hx,Hy,Hz)をオフセット補正対象とした例を挙げて詳細な説明を行ったが、上記のオフセット算出手法は、2軸の磁気検出データ(Hx,Hy)をオフセット補正対象とした場合にも適用することが可能である。
その場合、原点O(0,0)を通る曲線H2と各々の仮想データ点Pi’との距離の総和が最小となる仮想オフセット点C’を算出すればよい。より具体的に述べると、仮想データ点Pi’を(Hxi’,Hyi’)とし、仮想オフセット点C’を(Hx0’,Hy0’)としたとき、次の(6)式で表される曲線H2の関数を最小化するような仮想オフセット点C’を算出すればよい。
<オフセット算出処理(第2例)>
図15は、オフセット算出部1030におけるオフセット算出処理の第2例を示すフローチャートである。第2例のオフセット算出処理では、第1例のオフセット算出処理(本図ではステップS1005~S1007に相当)を実行するに先立ち、参照対象として妥当なデータ点群を決定するための前処理(本図ではステップS1001~S1004に相当)が導入されている。以下、順を追って詳細に説明する。なお、特に言及しない限り、各ステップの実行主体は、オフセット算出部1030であるものとする。
図15は、オフセット算出部1030におけるオフセット算出処理の第2例を示すフローチャートである。第2例のオフセット算出処理では、第1例のオフセット算出処理(本図ではステップS1005~S1007に相当)を実行するに先立ち、参照対象として妥当なデータ点群を決定するための前処理(本図ではステップS1001~S1004に相当)が導入されている。以下、順を追って詳細に説明する。なお、特に言及しない限り、各ステップの実行主体は、オフセット算出部1030であるものとする。
まず、ステップS1001では、オフセット値(Hx0,Hy0,Hz0)の設定ないし更新が行われる。なお、初期値は(0,0,0)である。
次に、ステップS1002では、3軸の磁気検出データ(Hx,Hy,Hz)が常時取得されて、そのオフセット補正が行われる(Hx←Hx-Hx0,Hy←Hy-Hy0,Hz←Hz-Hz0)。なお、本ステップS1002の実行主体は、オフセット補正部1020である。
次に、ステップS1003では、オフセット補正済みの磁気検出データ(Hx,Hy,Hz)を参照して、3軸の最大値・最小値6点が常時探索される。
図16は、3軸の最大値・最小値を示すXYZ座標空間図である。本図の例において、X軸成分の最大値はHx(max)であり、これに対応するX軸最大データ点はPa(Hx(max),*,*)である。一方、X軸成分の最小値はHx(min)であり、これに対応するX軸最小データ点はPb(Hx(min),*,*)である。
なお、本図では明示されていないが、Y軸成分の最大値Hy(max)及び最小値Hy(min)、並びに、Z軸成分の最大値Hz(max)及び最小値Hz(min)についても、上記と同様、各軸毎の最大データ点及び最小データ点が存在する。
図15に戻り、フローの説明を続ける。ステップS1004では、各軸毎に最大値と最小値との差分値ΔHx、ΔHy、ΔHzが閾値以上であるか否かの判定が行われる。例えば、ΔHx≧THx、かつ、ΔHy≧THy、かつ、ΔHz≧THzであればイエス判定となり、上記不等式のいずれか一つでも不満足であればノー判定となる。ステップS1004において、イエス判定が下された場合にはフローがステップS1005に進められ、ノー判定が下された場合にはフローがステップS1003に戻される。
なお、各軸の閾値THx~THzは、測定対象となる地磁気の大きさ(一般には20~80μT、日本では40~50μT)を鑑み、例えば、30μT程度に設定することが望ましい。また、各軸の閾値THx、THy、THzは、互いに同一の値であっても構わないし、各々異なる値であっても構わない。
ステップS1004でノー判定が下された場合には、フローがステップS1003とステップS1004をループすることになる。すなわち、各軸毎の差分値ΔHx、ΔHy、ΔHzが閾値以上となるまで、3軸の最大値と最小値が探索し続けられる。
図17は、X軸における差分値ΔHxの変遷挙動を示すタイムチャートである。符号Pa0~Pa3ないしは符号Pb0~Pb4が付されたデータ点を参照することにより、X軸最大データ点PaないしはX軸最小データ点Pbが時間の経過とともに順次更新されていく様子が見て取れる。また、X軸における差分値ΔHxは、当然のことながら、X軸成分の最大値Hx(max)と最小値Hx(min)のうち、少なくとも一方が更新される毎に大きくなっていく。
図15に戻り、フローの説明を続ける。ステップS1004でイエス判定が下された場合には、先に説明した第1例のオフセット算出処理(本図のステップS1005~S1007に相当)が実行される。すなわち、オフセット算出部1030では、各軸毎の最大値と最小値との差が全ての軸について閾値以上となったときに、オフセット算出時の参照対象として妥当なデータ点群(オフセット点Cを中心とするXYZ座標空間内で比較的均等に分散していると考えられるデータ点群)が集まったという判断の下、先述のオフセット算出処理が実行される。
このようなアルゴリズムを採用することにより、局所的に偏在しているデータ点群から不適切なオフセット算出結果が得られる危険性を未然に低減することができるので、オフセット算出処理の信頼性を高めることが可能となる。
ステップS1005では、先に説明したオフセット算出処理の1ステップとして、各軸の最大データ点及び最小データ点のいずれでもない任意の1点を原点O(0,0,0)へ平行移動するように、各軸の最大データ点及び最小データ点がそれぞれ平行移動される。
すなわち、第2例のオフセット算出処理で実際の演算に供されるデータ点は、各軸の最大データ点及び最小データ点が6点と、これらと異なる任意の1点(先述の基準データ点に相当)のみである。従って、オフセット算出部1030には、合計7点分のレジスタを用意しておけば足りるので、10点以上のデータ点が必要となる従来構成と比べて、回路規模またはソフトウェアコードサイズを大幅に縮小することが可能となる。
図18は、原点O(0,0,0)に平行移動される基準データ点の一選択例を示すタイムチャートである。図中の黒丸印は、3軸の最大値・最小値に対応する最大データ点及び最小データ点(合計6点)を示している。一方、図中の白丸印は、上記6点以外のデータ点を示している。
例えば、本図で示したように、データ点P1からデータ点Pkまで3軸の最大値・最小値を探索し続けた結果、各軸の最大データ点と最小データ点が全て確定した場合、基準データ点の選択アルゴリズムを最も容易とする観点から言えば、データ点Pkの直後に取得されるデータ点Pk+1を基準データ点として選択することが望ましい。ただし、データ点P1~Pk-1のいずれか1点(最大データ点と最小データ点を除く)を基準データ点として選択することについても、何ら忌避されるものではない。
図15に戻り、フローの説明を続ける。ステップS1006では、ステップS1005で平行移動済みの6点から、先出の(5)式で表される曲面H1の関数を最小化するような仮想オフセット点C’(Hx0’,Hy0’,Hz0’)が算出される。この点については、先に詳述した通りであるので、重複した説明は割愛する。
次に、ステップS1007では、3軸の最大値・最小値6点がクリアされて、先の平行移動分を元に戻したオフセット点C(Hx0,Hy0,Hz0)が磁気検出部1010のオフセット値として算出される。
その後、フローはステップS1001に戻されて上記一連の処理が繰り返される。その結果、時間的にも空間的にも絶えず変化する方位角センサ1001のオフセットが高速かつ継続的にキャンセルし続けられるので、方位角を精度良く検出することが可能となる。
なお、上記のステップS1005では、原点O(0,0,0)へ平行移動される基準データ点として、各軸の最大データ点及び最小データ点のいずれでもない任意の1点を選択する例を挙げて説明を行ったが、基準データ点は、各軸の最大データ点及び最小データ点のうちのいずれか1点であっても構わない。このような構成であれば、オフセット算出処理で実際の演算に供されるデータ点を一つ減らすことができるので、回路規模またはソフトウェアコードサイズをさらに縮小することが可能となる。ただし、本構成を採用した場合、各軸の最大データ点及び最小データ点の分布状態によっては、オフセット算出精度の低下を招くおそれがある。
図19は、3軸の最大値・最小値に対応するデータ点を基準データ点として選択する場合の留意点について説明するためのXYZ座標空間図である。外来磁場等の影響により、各軸の最大値及び最小値のうち、いずれか一つ(本図の例ではX軸成分の最大値Hx(max))が他から大きく乖離している場合がある。
他から大きく乖離した最大データ点または最小データ点が基準データ点として選択されると、基準データ点を原点Oと一致させるための平行移動量が本来の値から大きく乖離してしまう。その結果、先述のオフセット算出処理により正しいオフセット点C(Hx0,Hy0,Hz0)を得ることが出来なくなる。
このような不具合を回避するためには、例えば、3軸の最大値・最小値に対応する6つのデータ点のうち、各軸成分の絶対値が最も大きいデータ点と最も小さいデータ点については、基準データ点としての選択候補から除外するなどの対策を講じることが望ましい。
<オフセット算出処理(第3例)>
これまでに説明してきた第1例及び第2例のオフセット算出処理において、正しいオフセット点C(Hx0,Hy0,Hz0)を得るためには、3次元のXYZ座標空間において、方位角センサ1001(延いては3軸の磁気センサ1010X~1010Z)を各軸方向に大きく動かす必要がある。
これまでに説明してきた第1例及び第2例のオフセット算出処理において、正しいオフセット点C(Hx0,Hy0,Hz0)を得るためには、3次元のXYZ座標空間において、方位角センサ1001(延いては3軸の磁気センサ1010X~1010Z)を各軸方向に大きく動かす必要がある。
ただし、例えば、地表面上を走行する車両の電子コンパスとして方位角センサ1001を搭載する場合、地表面に対する鉛直軸方向(=車両の上下方向)の動きは、地表面に対する水平軸方向(=車両の前後左右方向)の動きほど大きくならないことが想定される。そのため、鉛直軸(例えばZ軸)の磁気検出データについては、その最大値と最小値との間にそれほど大きな差が付かなくなるので、これまでに説明してきたアルゴリズムでは、オフセット点C(Hx0,Hy0,Hz0)を精度良く算出することが難しくなる。
そこで、以下では、3軸の磁気センサ1010X~1010Zのうち、いずれかの磁気検出データの変動幅が小さい場合であってもオフセット点C(Hx0,Hy0,Hz0)を精度良く算出することのできる新規アルゴリズムについて提案する。
図20は、オフセット算出処理の第3例を示すフローチャートである。第3例のオフセット算出処理では、第2例のオフセット算出処理(図15)をベースとしつつ、X軸及びY軸(例えば地表面に対する水平軸)のオフセット計算と、Z軸(例えば地表面に対する鉛直軸)のオフセット計算とを別々に実施する点に特徴を有している。以下、順を追って詳細に説明する。なお、特に言及しない限り、各ステップの実行主体は、オフセット算出部1030であるものとする。
まず、ステップS1011では、オフセット値(Hx0,Hy0,Hz0)の設定ないし更新が行われる。なお、初期値は(0,0,0)である。
次に、ステップS1012では、3軸の磁気検出データ(Hx,Hy,Hz)が常時取得されてそのオフセット補正が行われる(Hx←Hx-Hx0,Hy←Hy-Hy0,Hz←Hz-Hz0)。なお、本ステップS1012の実行主体は、オフセット補正部20である。
次に、ステップS1013では、オフセット補正済みである磁気検出データ(Hx,Hy,Hz)を参照して、各軸の最大値及び最小値にそれぞれ対応する6点のデータ点Pi(Hxi,Hyi,Hzi)(ただしi=1~6)が常時探索される(先出の図14及び図16を適宜参照)。
次に、ステップS1014では、各軸毎に最大値と最小値との差分値ΔHx、ΔHy、ΔHzが閾値以上であるか否かの判定が行われる。例えば、ΔHx≧THx、かつ、ΔHy≧THy、かつ、ΔHz≧THzであればイエス判定となり、上記不等式のいずれか一つでも不満足であればノー判定となる。ステップS1014において、イエス判定が下された場合にはフローがステップS1015に進められ、ノー判定が下された場合にはフローがステップS1013に戻される。
なお、閾値THx~THzは、例えば、その場における地磁気の大きさ|H|(延いてはその場における空間磁場の大きさ)、または、これを分解したXY平面成分|HXY|とZ軸成分|HZ|に応じて、各軸毎にそれぞれ設定するとよい。この点については、後ほど詳細に説明する。
ステップS1014でノー判定が下された場合には、フローがステップS1013とステップS1014をループすることになる。すなわち、各軸毎の差分値ΔHx、ΔHy、ΔHzが閾値以上となるまで、3軸の最大値と最小値が探索し続けられる。
一方、ステップS1014でイエス判定が下された場合、ステップS1015では、データ点P1~P6のいずれとも異なる7点目の基準データ点P7(Hx7,Hy7,Hz7)が選択される。
次に、ステップS1016では、基準データ点P7が適正であるか否かの判定が行われる。より具体的に述べると、本ステップでは、基準データ点P7として、データ点P1~P6のうち、少なくともX軸とY軸の最大値及び最小値にそれぞれ対応する4点からそれぞれ所定値以上の距離を隔てたデータ点が選択されているか否かの判定が行われる。ここで、イエス判定が下された場合にはフローがステップS1017に進められる。一方、ノー判定が下された場合にはフローがステップS1015に戻されて、上記の条件を満たすまで基準データ点P7の再選択が繰り返される。
ステップS1016でイエス判定が下された場合、ステップS1017では、基準データ点P7を原点O(0,0,0)と一致させるように、データ点P1~P6のうち、X軸とY軸の最大値及び最小値にそれぞれ対応する4点を一様に平行移動した上で、Z軸の座標値を無視することにより、XY座標面上の仮想データ点Pi’(Hxi’,Hyi’)(ただしi=1~4)が算出される。
なお、上記の例では、データ点P1~P6のうち、Z軸の最大値及び最小値にそれぞれ対応する2点が平行移動対象から除外されている。ただし、Z軸の差分値ΔHzが所定値よりも小さい場合、上記2点のX軸成分及びY軸成分が各軸の最大値及び最小値から極端に乖離している可能性は低いと考えられる。従って、そのような場合には、上記6点全てを平行移動対象としてもよい。また、差分値ΔHzが切替閾値よりも大きいときには平行移動対象を4点とし、差分値ΔHzが切替閾値よりも小さいときには平行移動対象を6点とするように、平行移動対象の切替制御を行っても構わない。
次に、ステップS1018では、上記した4点(若しくは6点)の仮想データ点Pi’(Hxi’,Hyi’)を用いて、次の(7)式で表される関数F1を最小化するXY座標面上の仮想オフセット点C’(Hx0’,Hy0’)が算出される。
次に、ステップS1019では、基準データ点P7の平行移動分を元に戻すように、XY座標面上の仮想オフセット点C’(Hx0’,Hy0’)を平行移動することにより、X軸及びY軸のオフセット値Hx0及びHy0がそれぞれ算出される。
なお、(7)式で表される関数F1は、(6)式で表される曲線H2の関数と等価である。すなわち、ステップS1018及びS1019では、XY座標面上に描かれる地磁気円のオフセット推定処理により、X軸及びY軸のオフセット値Hx0及びHy0がそれぞれ算出される。
このように、X軸及びY軸それぞれのオフセット計算(ステップS1017~S1019)では、Z軸の磁気検出データHzが一切用いられていない。従って、Z軸方向の動きがX軸方向及びY軸方向の動きほど大きくなくても、X軸及びY軸のオフセット計算精度に悪影響を及ぼすことはない。
次に、ステップS1020では、基準データ点P7を原点O(0,0,0)と一致させるように、6点のデータ点P1~P6全てを一様に平行移動することにより、XYZ座標空間において、6点の仮想データ点Pi’(Hxi’,Hyi’,Hzi’)(ただし、i=1~6)が算出される。なお、先のステップS1017において、6点全てを平行移動対象とする場合には、その結果をレジスタ等に格納しておくことにより、ステップS1020での平行移動処理を割愛することもできる。
次に、ステップS1021では、先のステップS1018で求められた仮想オフセット点(Hx0’,Hy0’)と、上記6点の仮想データ点Pi’(Hxi’,Hyi’,Hzi’)を用いて、次の(8)式で表される関数F2を最小化する仮想オフセット値Hz0’が算出される。
なお、仮想オフセット値Hz0’の算出式については、次の(9)式で表すことができる。本算出式で用いられる仮想オフセット点(Hx0’,Hy0’)は、その算出過程にZ軸の磁気検出データHzを含まないので、磁気検出データHzのデータ変動が小さくても信頼性の高いものとなる。従って、これを用いて仮想オフセット値Hz0’を算出することにより、仮想オフセット値Hz0’についても信頼性を高めることが可能となる。
次に、ステップS1022では、データ点P1~P6と基準データ点P7をクリアし、基準データ点P7の平行移動分を元に戻すように仮想オフセット値Hz0’を平行移動することにより、Z軸のオフセット値Hz0が算出される。
なお、(8)式で表される関数F2は、(5)式で表される曲面H1の関数と等価である。すなわち、ステップS1020~S1022では、XY座標空間に描かれる地磁気球のオフセット推定処理により、Z軸のオフセット値Hz0が算出される。
最後に、ステップS1023では、新オフセット値(Hx0,Hy0,Hz0)が出力される。その後、フローはステップS1011に戻されて、上記一連の処理が繰り返される。その結果、時間的にも空間的にも絶えず変化する方位角センサ1001のオフセットが高速かつ継続的にキャンセルし続けられるので、方位角を精度良く検出することが可能となる。
上記したように、第3例のオフセット算出処理では、まず、比較的大きいデータ変動を生じることが見込まれるX軸及びY軸のオフセット値Hx0及びHy0が算出された後、その算出結果を利用して、比較的小さいデータ変動しか生じないと想定されるZ軸のオフセット値Hz0が別個独立に算出される。
このようなオフセット算出処理によれば、X軸及びY軸のデータ変動と比べてZ軸のデータ変動が小さい場合でも、各軸のオフセット値を正しく算出することが可能となる。
<オフセット算出処理(第4例)>
図21は、オフセット算出処理の第4例を示すフローチャートである。第4例のオフセット算出処理では、第3例のオフセット算出処理(図20)をベースとしつつ、X軸及びY軸のオフセット計算を簡略化した点に特徴を有している。そこで、第3例と同様のステップについては、図20と同一の符号を付すことで重複した説明を割愛し、以下では、第4例の特徴部分について重点的な説明を行う。
図21は、オフセット算出処理の第4例を示すフローチャートである。第4例のオフセット算出処理では、第3例のオフセット算出処理(図20)をベースとしつつ、X軸及びY軸のオフセット計算を簡略化した点に特徴を有している。そこで、第3例と同様のステップについては、図20と同一の符号を付すことで重複した説明を割愛し、以下では、第4例の特徴部分について重点的な説明を行う。
本図中の太枠で示したように、第4例のオフセット算出処理では、図20のステップS1017~S1020がステップS1024及びS1025に置き換えられている。
先述のステップS1011~S1015を経て、ステップS1016でイエス判定が下された場合、ステップS1024では、先出の(7)式を用いず、次の(10a)式及び(10b)式を用いてオフセット値Hx0及びHy0が算出される。
すなわち、ステップS1024では、X軸の最大値Hx(max)と最小値Hx(min)の平均値がX軸のオフセット値Hx0として算出され、Y軸の最大値Hy(max)と最小値Hy(min)の平均値がY軸のオフセット値Hy0として算出される。
次に、ステップS1025では、基準データ点P7を原点O(0,0,0)と一致させるように、X軸とY軸のオフセット値Hx0及びHy0を平行移動することにより、仮想オフセット値Hx0’及びHy0’が算出される。また、6点のデータ点P1~P6についても上記と同様の平行移動を行うことにより、6点の仮想データ点Pi’(Hxi’,Hyi’,Hzi’)(ただしi=1~6)が算出される。
その後は、フローが先述のステップS1021に進められて、先と同様の処理により、Z軸のオフセット値Hz0が算出される。
このように、第4例のオフセット算出処理であれば、第3例(図20)と比べて、X軸及びY軸のオフセット計算を簡略化することが可能となる。なお、地磁気円のオフセット推定処理を省略してもオフセット値Hx0及びHy0の算出精度を落とさないためには、方位角センサ1001が水平面上で大きく1周するような動作ないし移動が必要となる。
また、先出の図17で示したように、各軸の差分値ΔHx、ΔHy、ΔHzが大きくなる度に各軸の最大データ点及び最小データ点を更新していく場合、周辺環境における地磁気の大きさが増大していく状況であれば、オフセット算出処理を支障なく継続することができるが、地磁気の大きさが減少していく状況では、X軸とY軸の最大値及び最小値がそれぞれ固定されてしまうので、正しいオフセット算出を行うことができなくなる。
そこで、地磁気の大きさが減少していく状況であっても、正しいオフセット算出を行うためには、例えば、X軸とY軸の最大値及び最小値を定期的にクリアしてステップS1024のオフセット算出処理を続けてもよいし、或いは、図20のフローを定期的に実施しておくことにより、地磁気の大きさが著しく小さい場合には、ステップS1017~S1019で予め算出しておいたオフセット値を採用することも考えられる。
<閾値設定>
次に、図20と図21のステップS1014において、各軸の差分値ΔHx、ΔHy、ΔHzとそれぞれ比較される閾値THx、THy、THzの設定手法について述べる。
次に、図20と図21のステップS1014において、各軸の差分値ΔHx、ΔHy、ΔHzとそれぞれ比較される閾値THx、THy、THzの設定手法について述べる。
先に説明したように、第3例及び第4例のオフセット算出処理であれば、Z軸の磁気検出データの変動幅が小さい場合であっても、オフセット点C(Hx0,Hy0,Hz0)を精度良く算出することが可能である。ただし、よりその正確さを追及するためには、各軸の最大データ点と最小データ点として、適度に離れた2点を採用することが望ましい。
図22及び図23は、それぞれ、磁場のXZ平面図(若しくはYZ平面図)である。図22は、Z軸の磁場変動が比較的大きい場合(例えば、腕時計に方位角センサ1001が搭載されている場合)を示しており、図23は、Z軸の磁場変動が比較的小さい場合(例えば、車両に方位角センサ1001が搭載されている場合)を示している。
なお、各図中のバツ印は、各軸の最大データ点及び最小データ点を示している。また、各図中の破線は、各軸の最大データ点及び最小データ点から推定しようとする地磁気球を示している。なお、両図では、いずれも、X軸(若しくはY軸)の最大データ点と最小データ点が適度に離れているものとする。
両図の対比から、Z軸の磁場変動が大きい場合(図22)と比べて、Z軸の磁場変動が小さい場合(図23)には、地磁気球を正しく推定することが困難であることが分かる。
また、各軸毎の最大データ点と最小データ点との差分値ΔHx、ΔHy、ΔHzについては、それぞれの取り得る値に差がある。例えば、X軸方向を車両の前後方向とし、Y軸方向を車両の左右方向とし、Z軸方向を車両の上下方向とした場合を考える。この場合、磁気検出データHx及びHyは、車両の通常走行(右左折や方向転換など)により大きく変動するので、差分値ΔHx及びΔHyが大きくなりやすい。一方、磁気検出データHzは、たとえ車両が急勾配の坂道を走行してもそれほど大きく変動しないので、差分値ΔHzが大きくなりにくい。
そのため、Z軸の閾値THzは、X軸及びY軸それぞれの閾値THx及びTHyよりも小さい値に設定しておくことが望ましい。なぜなら、閾値THzを閾値THx及びTHyと同値(若しくは同程度の値)に設定すると、先出のステップS1014(図20及び図21を参照)において、ΔHz≧THzが満たされなくなり、いつまで経ってもオフセット値の算出が開始されない状況に陥ってしまうからである。
ところで、各軸の最大データ点及び最小データ点から推定しようとする地磁気球の半径は、これを描く地磁気の大きさ|H|に等しい。これを鑑みると、閾値THx、THy、THzは、それぞれ、地磁気の大きさ|H|(延いては、方位角センサ1001が存在する場における空間磁場の大きさ)に応じて、各軸毎に設定することが望ましいと言える。
なお、地磁気の大きさ|H|は、各軸の磁気検出データ(Hx,Hy,Hz)とそれぞれのオフセット値(Hoffx,Hoffy,Hoffz)を用いて、次の(11)式から算出することができる。上記のオフセット値(Hoffx,Hoffy,Hoffz)としては、初回のオフセット計算時に求められたオフセット値を用いてもよいし、若しくは、過去に計算した信頼できるオフセット値を用いてもよい。
また、地磁気の大きさ|H|は、第3例(図20)または第4例(図21)のオフセット算出処理中に導き出される仮想オフセット点C’(Hx0’、Hy0’,Hz0’)を用いて、次の(12)式から算出することもできる。
また、方位角センサ1001が地表面に対して水平に固定されている場合には、図24で示すように、地磁気の大きさ|H|をXY平面成分|HXY|(=地表面に対して水平な方向の地磁気成分)と、Z軸成分|HZ|(地表面に対して垂直な方向の地磁気成分)に分解することも可能である。
なお、地磁気のXY平面成分|HXY|とZ軸成分|HZ|は、各軸の磁気検出データ(Hx,Hy,Hz)と、それぞれのオフセット値(Hoffx,Hoffy,Hoffz)を用いて、次の(13a)式及び(13b)式から算出することができる。
また、地磁気のXY平面成分|HXY|とZ軸成分|HZ|は、先出の仮想オフセット点C’(Hx0’、Hy0’,Hz0’)を用いて、次の(14a)式及び(14b)式から算出することもできる。
上記で求められた地磁気の大きさ|H|、または、そのXY平面成分|HXY|とZ軸成分|HZ|から、各軸の閾値THx、THy、THzを算出するための手法としては、例えば、XY平面成分|HXY|に係数GXYを乗じて閾値THx及びTHyを算出し、Z軸成分|HZ|に係数GZを乗じて閾値THzを算出することが考えられる。
なお、図20のステップS1018において、XY座標平面上の仮想オフセット点C’(Hx0’,Hy0’)を求める場合、地磁気円の全周のうち1/4程度の円弧を描くことのできる磁場変動(方位角センサ1の移動)があれば、正しいオフセット計算が可能となる。従って、X軸方向及びY軸方向については、上記の磁場変動があれば、ΔHx≧THxかつΔHy≧THyが満たされるように、係数GXY(例えば1.0程度)を適宜設定しておけばよい。
一方、Z軸方向については、磁気検出データHzが変動しにくいことに鑑み、ある程度の頻度でΔHz≧Thzが満たされるように、係数GZ(例えば0.1程度)を適宜設定しておく必要がある。なお、係数GZを大きく設定すれば、オフセット計算が実行されにくくなり、逆に、係数GZを小さく設定すれば、オフセット計算が実行されやすくなる。
また、上記では、地磁気の大きさ|H|ではなく、そのXY平面成分|HXY|とZ軸成分|HZ|に応じて、各軸の閾値THx、THy、THzを算出する手法を例に挙げたが、より単純に、地磁気の大きさ|H|そのものに各軸毎の係数GX、GY、GZをそれぞれ乗じて、閾値THx、THy、THzを算出することも可能である。
また、地磁気の大きさ|H|は、必ずしも、先出の(11)式または(12)式から算出する必要はなく、例えば、GPS[global positioning system]によって得られた位置情報を基に、所定の近似計算式から算出してもよいし、或いは、国土地理院等の磁場マップ情報ライブラリから導き出してもよい。
図25は、地磁気の大きさ|H|の環境依存例を示す模式図である。本図で示したように、同一の地点であっても、方位角センサ1001が車外にあるのか車内にあるのかに応じて、地磁気の大きさ|H|が理想値から乖離する場合がある(|H|≠|H’|)。また、その他の遮蔽物(建物やトンネル等)の内外でも、上記と同様の現象が起こり得る。
従って、方位角センサ1001が遮蔽物の内部に設けられる可能性がある場合には、同一の地点において、遮蔽物の外部で得られる磁気検出データと、遮蔽物の内部で得られる磁気検出データとの差分を事前に調べておき、その差分を考慮した上で、閾値THx、THy、THzを適宜設定することが望ましいと言える。
<伏角の利用>
上記の閾値設定手法では、地磁気の大きさ|H|のみに注目していたが、ここでは、地磁気の伏角α(=地磁気が地表面に突入する角度、または、地磁気が地表面から放出される角度)にも焦点を当てる。地磁気は、地球の南極付近から北極付近に降り注いでおり、地磁気の伏角αは、測定地点の緯度と経度により異なる値となることが知られている。ただし、局所的に見ると、地磁気の伏角αは、ほぼ一定値であると考えても差し支えない。例えば、東京における伏角αは、約49度である。
上記の閾値設定手法では、地磁気の大きさ|H|のみに注目していたが、ここでは、地磁気の伏角α(=地磁気が地表面に突入する角度、または、地磁気が地表面から放出される角度)にも焦点を当てる。地磁気は、地球の南極付近から北極付近に降り注いでおり、地磁気の伏角αは、測定地点の緯度と経度により異なる値となることが知られている。ただし、局所的に見ると、地磁気の伏角αは、ほぼ一定値であると考えても差し支えない。例えば、東京における伏角αは、約49度である。
この伏角αを用いることにより、その場における地磁気の大きさ|H|をXY平面成分|HXY|とZ軸成分|HZ|に分解することが可能である。
図26は、地磁気の伏角αを示す模式図である。本図から分かるように、地磁気のXY平面成分|HXY|とZ軸成分|HZ|は、地磁気の大きさ|H|と伏角αを用いて、次の(15a)式及び(15b)式から算出することができる。
このようにして算出された地磁気のXY平面成分|HXY|及びZ軸成分|HZ|は、先と同様、係数GXY及びGZをそれぞれ乗ずることにより、閾値THx、THy、THzの設定処理に供することが可能である。
図27は、磁気検出データHと加速度データAとの相関図である。本図から分かるように、先の演算で用いられる伏角αは、オフセット補正済みの磁気検出データH(Hx,Hy,Hz)と、加速度データA(Ax,Ay,Az)との内積計算により、次の(16)式により算出することができる。
なお、上記の磁気検出データH(Hx,Hy,Hz)のオフセット補正では、初回のオフセット計算時に求められたオフセット値を用いてもよいし、若しくは、過去に計算した信頼できるオフセット値を用いてもよい。
また、上記の加速度データA(Ax,Ay,Az)は、方位角センサ1001とは別に設けられた加速度センサの出力を用いてもよいし、方位角センサ1001に加速度検出機能を内蔵してもよい。いずれにせよ、伏角αを正しく算出するためには、上記の加速度データAとして、重力加速度のみをセンシングする必要がある。従って、伏角αの演算時には、静止状態、等速運動状態、若しくは、低加速度運動状態(=移動に伴う加速度が所定の閾値よりも小さく、センシング対象が重力加速度のみであると看做すことのできる運動状態)を維持する必要がある点に留意すべきである。
また、伏角αは、必ずしも先出の(16)式から算出する必要はなく、例えば、GPSによって得られた位置情報を基に、所定の近似計算式から算出してもよいし、或いは、国土地理院等の伏角情報ライブラリから導き出してもよい。
<オフセット更新処理>
図28は、オフセット更新処理の一例を示すフローチャートである。本フローは、これまでに説明してきたオフセット算出処理(図15、図20、219)の後処理に相当し、新たに算出された新オフセット値の精度(信頼性)を判定するものである。
図28は、オフセット更新処理の一例を示すフローチャートである。本フローは、これまでに説明してきたオフセット算出処理(図15、図20、219)の後処理に相当し、新たに算出された新オフセット値の精度(信頼性)を判定するものである。
本フローがスタートすると、まず、ステップS1031において、伏角αの初期値α[0]が仮決定された後、続くステップS1032において、オフセット更新回数iの初期設定(i=1)が行われる。
なお、上記の初期値α0は、初回のオフセット計算時に求められたオフセット値を用いて算出してもよいし、過去に計算した信頼できるオフセット値を用いて算出してもよい。若しくは、GPSによって得られた位置情報を基に、所定の近似計算式から算出してもよいし、或いは、伏角情報ライブラリから導出してもよい。さらには、GPSを用いずとも伏角情報を国別に用意しておくことにより、初期値α0を設定することも考えられる。
次に、ステップS1033では、オフセット較正条件が充足されているか否かの判定が行われる。この判定処理は、先のステップS1003~S1004(図15)、または、ステップS1013~S1014(図20及び図21)に相当する。なお、ステップS1033において、イエス判定が下された場合には、フローがステップS1034に進められ、ノー判定が下された場合には、ステップS1033での判定処理が繰り返される。
ステップS1033でイエス判定が下された場合、まずステップS1034において、新オフセット値(Hx0,Hy0,Hz0)が新たに算出された後、続くステップS1035では、新オフセット値を用いて地磁気の大きさ|H|と伏角α[i]が算出される。
続いて、ステップS1036では、新オフセット値を用いて算出された地磁気の大きさ|H|について、Hmin≦|H|≦Hmaxという関係が満たされているか否かの判定が行われる。ここでイエス判定が下された場合には、フローがステップS1037に進められ、ノー判定が下された場合には、フローがステップS1041に進められる。
なお、上記の最小値Hmin及び最大値Hmaxは、それぞれ、地球上における一般的な地磁気の大きさを考慮して設定すればよく、例えば、Hmin=10μT(=100mG)、Hmax=70μT(=700mG)に設定すればよい。もちろん、方位角センサ1001が存在する場の地磁気について、大凡の大きさが予め分かっている場合には、最小値Hmin及び最大値Hmaxをより適切に設定しても構わない。
ステップS1036でイエス判定が下された場合、ステップS1037では、新オフセット値を用いて算出された伏角α[i]について、α[i-1]-Δ≦α[i]≦α[i-1]+Δが満たされているか否かの判定が行われる。すなわち、ステップS1037では、新オフセット値を用いて算出された伏角α[i]が、一つ前のオフセット値を用いて算出された伏角α[i-1]から著しく乖離しているか否かの判定が行われる。ここでイエス判定が下された場合には、フローがステップS1038に進められ、ノー判定が下された場合には、フローがステップS1041に進められる。
ステップS1037でイエス判定が下された場合、ステップS1038では、先の(13b)式または(14b)式を用いて算出されるZ軸成分|HZ1|と、先の(15b)式を用いて算出されるZ軸成分|HZ2|について、|HZ1-HZ2|<Δが満たされているか否かの判定が行われる。すなわち、ステップS1038では、伏角α[i]を用いずに算出されたZ軸成分|HZ1|と、伏角α[i]を用いて算出されたZ軸成分|HZ2|の双方を同一値と看做すことができるか否かの判定が行われる。ここでイエス判定が下された場合には、フローがステップS1039に進められ、ノー判定が下された場合には、フローがステップS1041に進められる。
ステップS1038でイエス判定が下された場合、ステップS1039では、新オフセット値を用いて算出された地磁気の大きさ|H|及び伏角α[i]がいずれも正常範囲内であり、新オフセット値は信頼するに足りるという判断の下、正式に旧オフセット値から新オフセット値への更新が行われる。そして、ステップS1040において、オフセット更新回数iが一つインクリメント(i←i+1)されてから、フローがステップS1033に戻される。
一方、ステップS1036~S1038のいずれかでノー判定下された場合、ステップS1041では、新オフセット値を用いて算出された地磁気の大きさ|H|並びに伏角α[i]のうち、少なくとも一方が正常範囲を外れており、新オフセット値は信頼することができないという判断の下、新オフセット値が破棄された上で、フローがステップS1033に戻される。
なお、上記フローにおいて、ステップS1037では、オフセット更新回数iと共に伏角αの正常範囲も逐次更新されていくが、伏角αの正常範囲を基本的に固定とし、伏角αが大きく変動するほどの長距離移動を行った場合にのみ、その正常範囲を切り替えるようにしてもよい。
また、上記フローにおいて、ステップS1036では、地磁気の大きさ|H|の正常範囲が固定されているが、ステップS1037と同じく、オフセット更新回数iと共に地磁気の大きさ|H|の正常範囲を逐次更新していくようにしてもよい。
また、ステップS1036~S1038の判定処理については、必ずしも3ステップ全てを実施する必要はなく、いずれか1ステップ若しくは2ステップを実施してもよい。また、各ステップの実施順序も任意である。
なお、上記した種々の条件(ステップS1036~S1038)をパスする新オフセット値が得られた場合であっても、新オフセット値と1つ前の旧オフセット値との間には、少なからず乖離を生じている場合がある。
そのため、オフセット更新時におけるオフセット値の不連続な変化を防ぐために、例えば、次の(17)式で表されるローパスフィルタ処理を施すことが望ましい。
なお、上式において、H0[t]は時刻tにおけるオフセット値を示しており、H0’[t]は時刻tにおけるフィルタ処理後のオフセット値を示している。上式中の係数cが小さいほどオフセット値の追従性が高くなり、逆に、係数cが大きいほどオフセット値の変化が滑らかになる。
以上で説明したように、オフセット算出処理に際して、X軸及びY軸(例えば地表面に対する水平軸)のオフセット計算と、Z軸(例えば地表面に対する鉛直軸)のオフセット計算とを分離すると共に、その前処理(適切な閾値設定)と後処理(新オフセット値の精度判定)を追加することにより、オフセット算出処理の信頼性を高めることができる。
<方位角センサの適用例>
図29~図32は、それぞれ、方位角センサ1001を備える電子機器(スマートフォン100、タブレット端末200、スマートウォッチ300)、及び、車両400を示す外観図である。それぞれの電子コンパスとして、先に説明した方位角センサ1001を搭載することにより、各機器を携帯するユーザが向いている方向、ないしは、車両400の進行方向を正確に検出することができる。特に、GPS[global positioning system]と電子コンパスを併用すれば、地図アプリやナビゲーションアプリでの位置検出精度を高めることが可能となる。なお、車両400に電子コンパスを搭載して絶対方位を検出することは、先進の自動運転技術をサポートする上で、非常に重要であると言える。
図29~図32は、それぞれ、方位角センサ1001を備える電子機器(スマートフォン100、タブレット端末200、スマートウォッチ300)、及び、車両400を示す外観図である。それぞれの電子コンパスとして、先に説明した方位角センサ1001を搭載することにより、各機器を携帯するユーザが向いている方向、ないしは、車両400の進行方向を正確に検出することができる。特に、GPS[global positioning system]と電子コンパスを併用すれば、地図アプリやナビゲーションアプリでの位置検出精度を高めることが可能となる。なお、車両400に電子コンパスを搭載して絶対方位を検出することは、先進の自動運転技術をサポートする上で、非常に重要であると言える。
<その他の変形例>
なお、本明細書中に開示されている種々の技術的特徴は、上記実施形態のほか、その技術的創作の主旨を逸脱しない範囲で種々の変更を加えることが可能である。すなわち、上記実施形態は、全ての点で例示であって制限的なものではないと考えられるべきであり、本発明の技術的範囲は、上記実施形態の説明ではなく、特許請求の範囲によって示されるものであり、特許請求の範囲と均等の意味及び範囲内に属する全ての変更が含まれると理解されるべきである。
なお、本明細書中に開示されている種々の技術的特徴は、上記実施形態のほか、その技術的創作の主旨を逸脱しない範囲で種々の変更を加えることが可能である。すなわち、上記実施形態は、全ての点で例示であって制限的なものではないと考えられるべきであり、本発明の技術的範囲は、上記実施形態の説明ではなく、特許請求の範囲によって示されるものであり、特許請求の範囲と均等の意味及び範囲内に属する全ての変更が含まれると理解されるべきである。
本明細書中に開示されている発明は、例えば、携帯機器(スマートフォン、タブレット端末、ないしは、スマートウォッチなど)、若しくは、移動体(車両、船舶、航空機、ないしは、ドローンなど)に搭載される方位角センサに利用することが可能である。
1 方位角センサ
10 磁気検出部
20 オフセット補正部
30 オフセット導出部
31 初期設定部
32 オフセット校正条件判定部
33 仮決定値導出部
34 更新部
40 方位角演算部
1001 方位角センサ
1010 磁気検出部
1010X、1010Y、1010Z 磁気センサ(X軸、Y軸、Z軸)
1020 オフセット補正部
1030 オフセット算出部
1040 方位角演算部
100 スマートフォン
200 タブレット端末
300 スマートウォッチ
400 車両
10 磁気検出部
20 オフセット補正部
30 オフセット導出部
31 初期設定部
32 オフセット校正条件判定部
33 仮決定値導出部
34 更新部
40 方位角演算部
1001 方位角センサ
1010 磁気検出部
1010X、1010Y、1010Z 磁気センサ(X軸、Y軸、Z軸)
1020 オフセット補正部
1030 オフセット算出部
1040 方位角演算部
100 スマートフォン
200 タブレット端末
300 スマートウォッチ
400 車両
Claims (21)
- 3軸又は2軸での磁気の検出により3軸座標系又は2軸座標系上のデータ点として順次取得される原磁気検出データを補正して補正磁気検出データを生成するためのオフセット値を導出するオフセット導出装置であって、
前記原磁気検出データ又は前記補正磁気検出データにおける複数のデータ点を用いて前記オフセット値の仮決定値を導出する仮決定値導出部と、
前記原磁気検出データ及び前記仮決定値に基づき前記磁気の大きさを導出し、導出した前記磁気の大きさが所定の基準範囲内にある場合には前記仮決定値にて前記オフセット値を更新する一方、そうでない場合には前記オフセット値の更新を非実行とする更新部と、を備えた
ことを特徴とするオフセット導出装置。 - 前記更新部は、前記導出した前記磁気の大きさが前記基準範囲内にある場合には前記仮決定値にて前記オフセット値を更新するとともに前記導出した前記磁気の大きさに基づき前記基準範囲も更新し、そうでない場合には前記オフセット値及び前記基準範囲の更新を非実行とする
ことを特徴とする請求項1に記載のオフセット導出装置。 - 前記導出した前記磁気の大きさに基づき前記基準範囲が更新される際、更新後の前記基準範囲は、前記導出した前記磁気の大きさを内包する範囲とされる
ことを特徴とする請求項2に記載のオフセット導出装置。 - 前記導出した前記磁気の大きさに基づき前記基準範囲が更新される際、更新後の前記基準範囲は、前記導出した前記磁気の大きさを中心とする範囲とされる
ことを特徴とする請求項3に記載のオフセット導出装置。 - 更新前の基準範囲としての初期の基準範囲を前記原磁気検出データに基づき設定する初期設定部を更に備えた
ことを特徴とする請求項1~4の何れかに記載のオフセット導出装置。 - 前記仮決定値導出部は、前記複数のデータ点としてのN個のデータ点の内の1つを基準データ点として用い(但しNは2以上の整数)、3軸座標系又は2軸座標系において前記基準データ点を原点と一致させるように前記複数のデータ点を一様に平行移動させることにより、前記基準データ点を除いた(N-1)個の仮想データ点を設定し、その後、3軸座標系において原点を通る曲面の中心に位置し且つ前記曲面と各々の仮想データ点との間の距離の総和を最小化させる点又は2軸座標系において原点を通る曲線の中心に位置し且つ前記曲線と各々の仮想データ点との間の距離の総和を最小化させる点を仮想オフセット点として導出して、前記平行移動分を元に戻すように前記仮想オフセット点を平行移動することにより前記仮決定値を導出する
ことを特徴とする請求項1~5の何れかに記載のオフセット導出装置。 - 3軸又は2軸での磁気の検出により原磁気検出データを生成する磁気検出装置と、
前記原磁気検出データのオフセット値を導出する、請求項1~8の何れかに記載のオフセット導出装置と、
前記オフセット値を用いて前記原磁気検出データを補正することで補正磁気検出データを生成するオフセット補正装置と、
前記補正磁気検出データから方位角データを生成する方位角演算部と、を備えた
ことを特徴とする方位角センサ。 - 請求項9に記載の方位角センサを備えた
ことを特徴とする電子機器。 - 3軸又は2軸での磁気の検出により3軸座標系又は2軸座標系上のデータ点として順次取得される原磁気検出データを補正して補正磁気検出データを生成するためのオフセット値を導出するオフセット導出方法であって、
前記原磁気検出データ又は前記補正磁気検出データにおける複数のデータ点を用いて前記オフセット値の仮決定値を導出する仮決定値導出ステップと、
前記原磁気検出データ及び前記仮決定値に基づき前記磁気の大きさを導出し、導出した前記磁気の大きさが所定の基準範囲内にある場合には前記仮決定値にて前記オフセット値を更新する一方、そうでない場合には前記オフセット値の更新を非実行とする更新ステップと、を備えた
ことを特徴とするオフセット導出方法。 - 3軸座標空間のデータ点として順次取得される3軸の磁気検出データを参照して各軸の最大値及び最小値にそれぞれ対応する6点のデータ点(Hxi,Hyi,Hzi)(ただしi=1~6)を常時探索し、
各軸毎の最大値と最小値との差が全ての軸について閾値以上となったときに7点目の基準データ点(Hx7,Hy7,Hz7)を決定し、
前記基準データ点を原点(0,0,0)と一致させるように、前記6点のデータ点のうち、少なくともX軸とY軸の最大値及び最小値にそれぞれ対応する4点を一様に平行移動した上でZ軸の座標値を無視することにより、XY座標面上の仮想データ点(Hxi’,Hyi’)(ただしi=1~4)を算出し、
前記仮想データ点(Hxi’,Hyi’)を用いて、次の(f1)式で表される関数F1を最小化するXY座標面上の仮想オフセット点(Hx0’,Hy0’)を算出し、
前記基準データ点を前記原点と一致させるように、前記6点のデータ点を一様に平行移動することにより、6点の仮想データ点(Hxi’,Hyi’,Hzi’)(ただしi=1~6)を算出し、
前記仮想オフセット点(Hx0’,Hy0’)と前記6点の仮想データ点(Hxi’,Hyi’,Hzi’)を用いて、次の(f2)式で表される関数F2を最小化する仮想オフセット値Hz0’を算出し、
ことを特徴とするオフセット算出装置。 - 前記閾値は、その場における空間磁場の大きさ、若しくは、これを分解したXY平面成分とZ軸成分に応じて、各軸毎にそれぞれ設定されることを特徴とする請求項12または請求項13に記載のオフセット算出装置。
- 前記Z軸の閾値は、前記X軸及び前記Y軸それぞれの閾値よりも小さいことを特徴とする請求項14に記載のオフセット算出装置。
- その場における地磁気の伏角を用いて前記空間磁場の大きさをXY平面成分とZ軸成分に分解することを特徴とする請求項14または請求項15に記載のオフセット算出装置。
- 新たに求められた各軸の新オフセット値を用いて前記空間磁場の大きさと前記伏角を算出し、各算出値が所定の条件を満たしているか否かに応じて、前記新オフセット値を破棄するか否かを決定することを特徴とする請求項16に記載のオフセット算出装置。
- 前記基準データ点は、前記6点のデータ点のうち、少なくともX軸とY軸の最大値及び最小値にそれぞれ対応する4点から、所定値以上の距離を隔てたデータ点であることを特徴とする請求項12~請求項17のいずれか一項に記載のオフセット算出装置。
- 3軸の磁気検出データそれぞれのオフセットを算出するに際して、X軸及びY軸のオフセット計算と、前記X軸及び前記Y軸よりもデータ変動の小さいZ軸のオフセット計算とを別々に実施することを特徴とするオフセット算出装置。
- まず前記X軸及び前記Y軸のオフセット値を算出し、その算出結果を利用して前記Z軸のオフセット値を算出することを特徴とする請求項19に記載のオフセット算出装置。
- 3軸の磁気検出データを生成する磁気検出装置と、
前記磁気検出データのオフセットを算出する請求項12~請求項20のいずれか一項に記載のオフセット算出装置と、
前記磁気検出データのオフセットを補正するオフセット補正装置と、
補正済みの磁気検出データから方位角データを生成する方位角演算装置と、
を有することを特徴とする方位角センサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/771,118 US11079224B2 (en) | 2015-10-29 | 2016-10-25 | Offset derivation device, offset calculation device, and azimuth sensor |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015-213227 | 2015-10-29 | ||
JP2015213227 | 2015-10-29 | ||
JP2016127851 | 2016-06-28 | ||
JP2016-127851 | 2016-06-28 | ||
JP2016-195474 | 2016-10-03 | ||
JP2016195474A JP6787740B2 (ja) | 2015-10-29 | 2016-10-03 | オフセット導出装置、オフセット算出装置、及び、方位角センサ |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017073532A1 true WO2017073532A1 (ja) | 2017-05-04 |
Family
ID=58631677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2016/081511 WO2017073532A1 (ja) | 2015-10-29 | 2016-10-25 | オフセット導出装置、オフセット算出装置、及び、方位角センサ |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2017073532A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113405453A (zh) * | 2021-05-10 | 2021-09-17 | 中航西安飞机工业集团股份有限公司 | 一种基于温度补偿的数字化工装飞机坐标系恢复方法 |
WO2023229002A1 (ja) * | 2022-05-25 | 2023-11-30 | ローム株式会社 | オフセット算出装置、方位角センサ、電子機器、オフセット算出方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000009468A (ja) * | 1998-06-29 | 2000-01-14 | Furuno Electric Co Ltd | 電子磁気コンパス |
WO2005003683A1 (ja) * | 2003-07-03 | 2005-01-13 | Asahi Kasei Emd Corporation | 方位角計測装置及び方位角計測方法 |
JP4391416B2 (ja) * | 2002-07-01 | 2009-12-24 | 旭化成エレクトロニクス株式会社 | 方位角計測装置および方位角計測方法 |
-
2016
- 2016-10-25 WO PCT/JP2016/081511 patent/WO2017073532A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000009468A (ja) * | 1998-06-29 | 2000-01-14 | Furuno Electric Co Ltd | 電子磁気コンパス |
JP4391416B2 (ja) * | 2002-07-01 | 2009-12-24 | 旭化成エレクトロニクス株式会社 | 方位角計測装置および方位角計測方法 |
WO2005003683A1 (ja) * | 2003-07-03 | 2005-01-13 | Asahi Kasei Emd Corporation | 方位角計測装置及び方位角計測方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113405453A (zh) * | 2021-05-10 | 2021-09-17 | 中航西安飞机工业集团股份有限公司 | 一种基于温度补偿的数字化工装飞机坐标系恢复方法 |
WO2023229002A1 (ja) * | 2022-05-25 | 2023-11-30 | ローム株式会社 | オフセット算出装置、方位角センサ、電子機器、オフセット算出方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101361463B1 (ko) | 휴대용 장치의 전자 나침반 보정 기술 | |
KR20200124734A (ko) | 평면 자력계 보정, 헤딩 결정, 자이로스코프 보조 자력계 진폭 보정, 자력계 진폭 및 정렬 보정, 자력계 매핑 및 센서 융합을 위한 방법 및 장치 | |
US9863784B2 (en) | Orientation estimation utilizing a plurality of adaptive filters | |
JP7481266B2 (ja) | 物体の磁力計を較正する方法 | |
Allotta et al. | Single axis FOG aided attitude estimation algorithm for mobile robots | |
JP6787740B2 (ja) | オフセット導出装置、オフセット算出装置、及び、方位角センサ | |
KR20140025319A (ko) | 근 자기장의 동적 추적 및 보상을 위한 장치 및 방법 | |
KR20200091709A (ko) | 전자 장치 및 그 제어 방법 | |
Wahdan et al. | Three-dimensional magnetometer calibration with small space coverage for pedestrians | |
CN103575293A (zh) | 一种磁力计方向角校正方法及磁力计 | |
CN108627152A (zh) | 一种微型无人机基于多传感器数据融合的导航方法 | |
WO2017073532A1 (ja) | オフセット導出装置、オフセット算出装置、及び、方位角センサ | |
Chen et al. | High-precision geomagnetic directional technology based on sensor error correction and adaptive hybrid filter | |
JP6430262B2 (ja) | オフセット算出装置及びこれを用いた方位角センサ | |
Allotta et al. | Underwater vehicles attitude estimation in presence of magnetic disturbances | |
Chen et al. | An adaptive calibration approach for a 2-axis digital compass in a low-cost pedestrian navigation system | |
CN111707255A (zh) | 用于估算安装在移动机器中的磁力计的协调值的方法和相关设备及计算机程序 | |
CN115839726A (zh) | 磁传感器和角速度传感器联合标定的方法、系统及介质 | |
Li et al. | Gradient descent optimization-based SINS self-alignment method and error analysis | |
Wang et al. | A robust context-based heading estimation algorithm for pedestrian using a smartphone | |
JP2013217793A (ja) | オフセット算出装置、オフセット算出方法、プログラム、及び情報処理装置 | |
Kundra et al. | Bias compensation of gyroscopes in mobiles with optical flow | |
JP6667002B2 (ja) | 電子コンパス | |
JP2011185862A (ja) | 磁界検知装置 | |
JP5176537B2 (ja) | モーションセンシング装置,モーションセンシング方法およびモーションセンシング回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16859762 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15771118 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 16859762 Country of ref document: EP Kind code of ref document: A1 |