(57)【要約】【課題】環境オフセットの変動に対する追従性を向上させる磁気測定データ校正装置及び方位角計測装置を提供する。【解決手段】本発明は、磁気素子から出力される磁気測定データを補正する装置であり、磁気測定データと、前回のオフセットとの差分から誤差関数を求める誤差関数計算部と、誤差関数及び前回の共分散行列からオフセット残差を算出するオフセット残差計算部と、前回の磁気測定データの測定時のオフセットに対し、オフセット残差を加算し、新たなオフセットを算出するオフセット更新部と、測定された磁気測定データを用い、以前に測定された磁気測定データを母集団とする磁気測定データの共分散行列を更新する共分散行列更新部と、更新されたオフセットと真値との誤差を示す第１評価値を算出するオフセット有効性判定部と、第１評価値が予め設定された第１閾値を超えている場合、オフセット処理の初期化を行う初期化判定部とを備える。【選択図】図１
2014025715.tif 000002
【特許請求の範囲】
【請求項１】
互いに直交する３つの測定軸を有し、測定軸方向の地磁気を測定する軸センサからなる磁気素子から出力される前記測定軸毎の地磁気の測定結果である磁気測定データのオフセットを求め、前記磁気測定データを補正する磁気測定データ校正装置であり、
測定された磁気測定データの前記測定軸毎の磁気データと、前回求められたオフセットとの差分から誤差関数を求める誤差関数計算部と、
前記誤差関数及び前回求められた共分散行列からオフセット残差を算出するオフセット残差計算部と、
前回の前記磁気測定データの測定時に算出した前記オフセットに対し、前記オフセット残差を加算し、新たなオフセットを算出するオフセット更新部と、
測定された前記磁気測定データを用い、以前に測定された前記磁気測定データを母集団とする磁気測定データの共分散行列を更新し、測定された前記磁気測定データを前記母集団に加えて新たな共分散行列を生成する共分散行列更新部と、
更新された前記オフセットとオフセットの真値との誤差を示す第１評価値を算出するオフセット有効性判定部と、
前記第１評価値が予め設定された第１閾値を超えているか否かの判定を行い、前記第１評価値が前記第１閾値を越えている場合、前記オフセット及び前記共分散行列を初期化する処理を行う初期化判定部と
を備えることを特徴とする磁気測定データ校正装置。
【請求項２】
前記初期化判定部が、
オフセット更新を行う過程において、前記第１差分が前記第１閾値を越えていることを判定した回数が予め設定された回数以上である場合、前記初期化する処理を行うことを特徴とする請求項１に記載の磁気測定データ校正装置。
【請求項３】
前記オフセット有効性判定部が、
前記磁気素子の測定軸からなる３次元磁界空間における前記磁気測定データの各々と、更新された前記オフセットとの第１距離を求め、当該第１距離の各々と前記磁気測定データから求めた全磁力との第１差分を求め、全ての第１距離に対応する当該第１差分を加算して前記第１評価値を算出することを特徴とする請求項１または請求項２に記載の磁気測定データ校正装置。
【請求項４】
前回算出されたオフセットを求める際に用いた磁気測定データと、前記磁気素子から新たに入力された新たな磁気測定データとの、前記磁気素子の測定軸からなる３次元磁界空間における第２距離を求め、当該第２距離と予め設定されている第２閾値との比較を行い、前記第２距離が前記第２閾値を超えている場合、前記オフセット更新部に対して新たなオフセットの更新を行わせ、一方前記第２距離が前記第２閾値以下の場合、新たなオフセットの更新を行わせない制御を行う磁気測定データ判定部を
さらに有することを特徴とする請求項１から請求項３のいずれか一項に記載の磁気測定データ校正装置。
【請求項５】
前記第２閾値が、前記３次元磁界空間における前記磁気素子の各測定軸方向における測定ノイズの座標点と、前記３次元磁界空間の原点との距離として定められている
ことを特徴とする請求項４に記載の磁気測定データ校正装置。
【請求項６】
前記第１閾値として地磁気を用いていることを特徴とする請求項１から請求項５のいずれか一項に記載の磁気測定データ校正装置。
【請求項７】
現時点までに前記オフセットを算出した際に用いた磁気測定データを時系列に記憶するバッファと、
前記バッファに記憶されている前記磁気測定データの各々と前回のオフセットとの第３距離を求め、当該第３距離の各々と前回のオフセットを求めた際の前記磁気測定データから求めた全磁力との第３差分を求め、全ての第３距離に対応する当該第１差分を加算して第２評価値を算出し、当該第２評価値と前記第１評価値とを比較し、前記第１評価値が前記第２評価値未満である場合、新たに求めたオフセットを前記磁気測定データの校正に用いるオフセットとし、一方、前記第１評価値が前記第２評価値以上である場合、前回求めたオフセットを前記磁気測定データの校正に用いるオフセットとする
ことを特徴とする請求項１から請求項６のいずれか一項に記載の磁気測定データ校正装置。
【請求項８】
前記誤差関数計算部が、
前記３つの測定軸からなる３次元座標系において、測定された前記磁気測定データのデータ座標と、前回の前記磁気測定データの測定時に算出した前記オフセットのオフセット座標との距離の２乗から全磁力を求め、当該全磁力から前回算出した前回全磁力を減算し、減算結果を前記誤差関数とする
ことを特徴とする請求項１から請求項７のいずれか一項に記載の磁気測定データ校正装置。
【請求項９】
互いに直交する３つの測定軸を有し、測定軸方向の地磁気を測定する軸センサからなる磁気素子と、
前記磁気素子から出力される前記測定軸毎の地磁気の測定結果である磁気測定データのオフセットを求め、前記磁気測定データを補正する磁気測定データ校正部と、
前記磁気測定データ校正装置から出力される、前記磁気測定データを校正した磁気校正データから方位角を算出する方位角計測部と
を備え、
測定された磁気測定データの前記測定軸毎の磁気データと、前回求められたオフセットとの差分から誤差関数を求める誤差関数計算部と、
前記誤差関数及び前回求められた共分散行列からオフセット残差を算出するオフセット残差計算部と、
前回の前記磁気測定データの測定時に算出した前記オフセットに対し、前記オフセット残差を加算し、新たなオフセットを算出するオフセット更新部と、
測定された前記磁気測定データを用い、以前に測定された前記磁気測定データを母集団とする磁気測定データの共分散行列を更新し、測定された前記磁気測定データを前記母集団に加えて新たな共分散行列を生成する共分散行列更新部と、
更新された前記オフセットとオフセットの真値との誤差を示す第１評価値を算出するオフセット有効性判定部と、
前記第１評価値が予め設定された第１閾値を超えているか否かの判定を行い、前記第１評価値が前記第１閾値を越えている場合、前記オフセット及び前記共分散行列を初期化する処理を行う初期化判定部と
を備えることを特徴とする方位角計測装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯機器に搭載される磁気素子の校正を行う磁気測定データ校正装置及び方位角計測装置に関する。
【背景技術】
【０００２】
近年、携帯電話などの携帯機器に３軸の磁気素子（以下、単に磁気素子）が搭載され、携帯機器における方位測定に用いられている。
この方位測定に用いる磁気素子は、通常、携帯機器に搭載する前に、３軸ヘルムホルツコイルを用いて、各軸毎のゼロ磁界出力値の調整（以下、オフセット調整）をしておく。
この具体的な調整手順は、予め校正された磁気素子により、地磁気の測定を行い、その予め校正された磁気素子の出力する３軸各々の磁気データを基準磁気測定データとして、方位測定に用いる。
【０００３】
次に、３軸ヘルムホルツコイルにより、基準磁気測定データと逆方向の磁界を、オフセット調整の対象である対象磁気素子に対して印加する。
ここで、対象磁気素子は、オフセットが無い場合、出力する磁気測定データが３軸共に０であり、オフセットを有する場合、出力する磁気測定データが０ではない。
ここで、対象磁気素子が出力する磁気測定データを、対象磁気素子自身の有するオフセットとして測定し、この磁気測定データにより、磁気素子の出力する磁気測定データのオフセット調整を行う。
すなわち、磁気素子の出力する磁気測定データから、３軸ヘルムホルツコイルで測定したオフセットを、各磁気測定データから減算し、磁気素子の測定結果として方位検出を行うことになる。
【０００４】
しかしながら、磁気素子単体でオフセット調整を行ったとしても、携帯機器には方位を検出する磁気素子以外にも多くの他の部品が使われており、これら他の部品が発生する磁界が磁気素子に対して影響を与える場合がある。例えば、スピーカに搭載されている磁石、開閉スイッチに設けられている磁石、あるいは携帯機器の部品に施されたニッケルメッキなどから磁界が発生している。
【０００５】
このため、携帯機器内部に設けられた磁気素子に対して周囲の環境による環境オフセットが生じ、オフセット調整を行った磁気素子単体から環境オフセットが重畳した磁気測定データが出力されることになる。
したがって、磁気素子単体でオフセット調整を行った後、搭載される携帯機器の他の部品が発生する磁界により、携帯機器が向いている実際の方位と、磁気素子が出力する磁気データから得られる方位とに、環境オフセットによる差異が生じることになる。
【０００６】
また、磁気素子を他の部品とともに携帯機器に搭載した状態で、３軸ヘルムホルツコイルにより環境オフセットを含めたオフセット調整を行うことが考えられる。
しかしながら、各部品の磁力の経時的な変化や、携帯機器の周囲の温度の変化、さらには携帯機器の周囲に強度の磁界を発生する物体の存在により、環境オフセットの値が常に変動してしまう。
【０００７】
したがって、３軸ヘルムホルツコイルにより、携帯機器に搭載した後に、環境オフセットを含めた磁気素子のオフセット調整を行っても、周囲の状況により環境オフセットが刻々変動する。このため、磁気素子の磁気測定データに重畳する環境オフセットの変動により、磁気素子が出力する磁気測定データが真値に対してずれてしまうことになる。
このため、オフセットを再度行う必要があるが、常に３軸ヘルムホルツコイルにより、携帯機器に搭載された磁気素子のオフセット調整を行うことができない。したがって、自身が磁気素子のオフセット調整を行う機能を、携帯機器に対して持たせる必要がある。
【０００８】
このため、携帯機器に搭載されたオフセット調整部が、３軸各々の磁気素子により、各軸の磁界の強度を多数測定し、測定した磁気測定データを内部のデータバッファに一旦蓄積する。
そして、オフセット調整部がデータバッファに蓄積された磁気測定データに対して、距離（磁界の強度）が最小となるオフセットを求める手法がある（例えば、特許文献１を参照）。この手法においては、以下の式に示すように、球の方程式に磁気測定データを代入し、最小二乗法によりオフセットＳｘを求める。
Ｓｘ＝Σ｛（Ｘｉ−Ｘ０）２＋（Ｙｉ−Ｙ０）２＋（Ｚｉ−Ｚ０）２−Ｒ２｝＝０  …（ｉ）
Ｘｉ、Ｙｉ及びＺｉが磁気測定データであり、Ｘ０、Ｙ０及びＺ０がオフセット座標であり、Ｒが定数である。
【０００９】
また、３軸の磁気素子の各々の磁気測定データを１組として、４組の磁気測定データの組をデータバッファに蓄積し、上述した特許文献１と同様に、磁気測定データとの距離によりオフセットを求める手法がある（例えば、特許文献２を参照）。
この特許文献２においては、時系列に測定される測定データの中から４組の磁気測定データを抽出する際、抽出する抽出条件を以下のように設定している。すなわち、磁気素子の３軸で構成される３次元空間で、磁気測定データを座標点として以下の抽出条件が設定されている。
３軸の磁気測定データを３次元空間（３次元座標系）内に描画（配置）した際、
ａ．１組目の磁気測定データと２組目の磁気測定データとの距離が十分離れている
ｂ．３組目の磁気測定データは、１組目及び２組目の磁気測定データとで構成される鈍角３角形の鈍角の頂点である
ｃ．４組目の磁気測定データは、１組目から３組目の磁気測定データが形成する平面からの距離が十分離れている
【００１０】
そして、特許文献２においては、以下の球の方程式を用いて、連立方程式を解くことによりオフセットを算出している。
（Ｘｉ−Ｘ０）２＋（Ｙｉ−Ｙ０）２＋（Ｚｉ−Ｚ０）２−Ｒ２＝０              …（ii）
Ｘｉ、Ｙｉ及びＺｉが磁気測定データであり、Ｘ０、Ｙ０及びＺ０がオフセット座標であり、Ｒが定数である。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特許４３９１４１６号公報
【特許文献２】特許４５９０５１１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、特許文献１は、データバッファに複数の磁気測定データ蓄積し、この蓄積した磁気測定データを用いて、（ｉ）式を用いた最小二乗法によりオフセットを算出する。ここで、特許文献１は、データバッファ分の磁気測定データを多数測定した後、オフセットの算出が行われる。このため、特許文献１は、多数の磁気測定データを蓄積するための時間を必要とし、環境オフセットの変化に対するオフセット調整の追従性が悪くなる。
【００１３】
また、特許文献２は、磁気素子自身の特性の時間的変動要因と、外部磁場の時間的変動要因とによる磁気ノイズが、磁気素子の出力する磁気測定データに重畳すると、（ii）式で算出されるオフセットを正確に算出できない。
すなわち、４組の磁気測定データのいずれかに磁気ノイズが重畳している場合、これらの磁気測定データを用いて算出されたオフセットは、磁気ノイズによる誤差が含まれることになり、実際のオフセットとずれることになる。
【００１４】
さらに、特許文献１及び特許文献２の双方において、オフセットを求めるための磁気測定データの測定点が、一定の球の表面で測定されることが仮定されている。
このため、ユーザは、オフセット調整の際、携帯機器を円を描くように、すなわち、一定の球面に沿うように移動させる必要がある。
この移動が行われている際、磁気測定データを多数取得してバッファに蓄積し、すでに説明した算出に用いる磁気測定データの抽出処理を行う。
したがって、環境オフセットが変化に追従できない場合が発生し、再度、新たな磁気測定データを取得して、オフセット調整を繰り返して行なわなければならなくなる。
【００１５】
本発明は、このような事情に鑑みてなされたもので、環境オフセットの変動に対する追従性を向上させることが可能な磁気測定データ校正装置及び方位角計測装置を提供することを目的とする。
【課題を解決するための手段】
【００１６】
この発明は上述した課題を解決するためになされたもので、本発明の磁気測定データ校正装置は、互いに直交する３つの測定軸を有し、測定軸方向の地磁気を測定する軸センサからなる磁気素子から出力される前記測定軸毎の地磁気の測定結果である磁気測定データのオフセットを求め、前記磁気測定データを補正する磁気測定データ校正装置であり、測定された磁気測定データの前記測定軸毎の磁気データと、前回求められたオフセットとの差分から誤差関数を求める誤差関数計算部と、前記誤差関数及び前回求められた共分散行列からオフセット残差を算出するオフセット残差計算部と、前回の前記磁気測定データの測定時に算出した前記オフセットに対し、前記オフセット残差を加算し、新たなオフセットを算出するオフセット更新部と、測定された前記磁気測定データを用い、以前に測定された前記磁気測定データを母集団とする磁気測定データの共分散行列を更新し、測定された前記磁気測定データを前記母集団に加えて新たな共分散行列を生成する共分散行列更新部と、更新された前記オフセットとオフセットの真値との誤差を示す第１評価値を算出するオフセット有効性判定部と、前記第１評価値が予め設定された第１閾値を超えているか否かの判定を行い、前記第１評価値が前記第１閾値を越えている場合、前記オフセット及び前記共分散行列を初期化する処理を行う初期化判定部とを備えることを特徴とする。
【００１７】
本発明の磁気測定データ校正装置は、前記初期化判定部が、オフセット更新を行う過程において、前記第１差分が前記第１閾値を越えていることを判定した回数が予め設定された回数以上である場合、前記初期化する処理を行うことを特徴とする。
【００１８】
本発明の磁気測定データ校正装置は、前記オフセット有効性判定部が、前記磁気素子の測定軸からなる３次元磁界空間における前記磁気測定データの各々と、更新された前記オフセットとの第１距離を求め、当該第１距離の各々と前記磁気測定データから求めた全磁力との第１差分を求め、全ての第１距離に対応する当該第１差分を加算して前記第１評価値を算出することを特徴とする。
【００１９】
本発明の磁気測定データ校正装置は、前回算出されたオフセットを求める際に用いた磁気測定データと、前記磁気素子から新たに入力された新たな磁気測定データとの、前記磁気素子の測定軸からなる３次元磁界空間における第２距離を求め、当該第２距離と予め設定されている第２閾値との比較を行い、前記第２距離が前記第２閾値を超えている場合、前記オフセット更新部に対して新たなオフセットの更新を行わせ、一方前記第２距離が前記第２閾値以下の場合、新たなオフセットの更新を行わせない制御を行う磁気測定データ判定部をさらに有することを特徴とする。
【００２０】
本発明の磁気測定データ校正装置は、前記第２閾値が、前記３次元磁界空間における前記磁気素子の各測定軸方向における測定ノイズの座標点と、前記３次元磁界空間の原点との距離として定められていることを特徴とする。
【００２１】
本発明の磁気測定データ校正装置は、前記第１閾値として地磁気を用いていることを特徴とする。
【００２２】
本発明の磁気測定データ校正装置は、現時点までに前記オフセットを算出した際に用いた磁気測定データを時系列に記憶するバッファと、前記バッファに記憶されている前記磁気測定データの各々と前回のオフセットとの第３距離を求め、当該第３距離の各々と前回のオフセットを求めた際の前記磁気測定データから求めた全磁力との第３差分を求め、全ての第３距離に対応する当該第１差分を加算して第２評価値を算出し、当該第２評価値と前記第１評価値とを比較し、前記第１評価値が前記第２評価値未満である場合、新たに求めたオフセットを前記磁気測定データの校正に用いるオフセットとし、一方、前記第１評価値が前記第２評価値以上である場合、前回求めたオフセットを前記磁気測定データの校正に用いるオフセットとすることを特徴とする。
【００２３】
本発明の磁気測定データ校正装置は、前記誤差関数計算部が、前記３つの測定軸からなる３次元座標系において、測定された前記磁気測定データのデータ座標と、前回の前記磁気測定データの測定時に算出した前記オフセットのオフセット座標との距離の２乗から全磁力を求め、当該全磁力から前回算出した前回全磁力を減算し、減算結果を前記誤差関数とすることを特徴とする。
【００２４】
本発明の方位角計測装置は、互いに直交する３つの測定軸を有し、測定軸方向の地磁気を測定する軸センサからなる磁気素子と、前記磁気素子から出力される前記測定軸毎の地磁気の測定結果である磁気測定データのオフセットを求め、前記磁気測定データを補正する磁気測定データ校正部と、前記磁気測定データ校正装置から出力される、前記磁気測定データを校正した磁気校正データから方位角を算出する方位角計測部とを備え、測定された磁気測定データの前記測定軸毎の磁気データと、前回求められたオフセットとの差分から誤差関数を求める誤差関数計算部と、前記誤差関数及び前回求められた共分散行列からオフセット残差を算出するオフセット残差計算部と、前回の前記磁気測定データの測定時に算出した前記オフセットに対し、前記オフセット残差を加算し、新たなオフセットを算出するオフセット更新部と、測定された前記磁気測定データを用い、以前に測定された前記磁気測定データを母集団とする磁気測定データの共分散行列を更新し、測定された前記磁気測定データを前記母集団に加えて新たな共分散行列を生成する共分散行列更新部と、更新された前記オフセットとオフセットの真値との誤差を示す第１評価値を算出するオフセット有効性判定部と、前記第１評価値が予め設定された第１閾値を超えているか否かの判定を行い、前記第１評価値が前記第１閾値を越えている場合、前記オフセット及び前記共分散行列を初期化する処理を行う初期化判定部とを備えることを特徴とする。
【発明の効果】
【００２５】
この発明によれば、前回算出したオフセットと、新たに得られる磁気測定データとから、前回算出したオフセットに対するオフセット残差を求め、このオフセット残差を前回算出したオフセットに加算して新たなオフセットを算出するため、従来のように複数の磁気測定データを得た後にオフセットを算出するための遅延時間が無く、リアルタイムに、すなわち高速にオフセットの算出が行うことが可能となり、また算出されたオフセットが地磁気に比較して大きい場合にオフセットの算出を初期化から行えるため、環境オフセットの変動に対する追従性を、従来に比較して向上させることができる。
【図面の簡単な説明】
【００２６】
【図１】発明の一の実施形態による磁気測定データ校正装置を用いた方位角計測装置の構成例を示す概略ブロック図である。
【図２】磁気素子２が検出した磁気測定データＭを校正する処理の動作例を示すフローチャートである。
【図３】本実施形態による磁気測定データ校正装置１、校正装置＃１及び校正装置＃２におけるオフセット推定誤差（オフセット誤差）を示すテーブルである。
【図４】オフセットが急激に変化した場合に、オフセットが真値に近づくまでの実験結果を示す図である。
【図５】オフセットが急激に変化した場合に、オフセットが真値に近づくまでの実験結果を示す図である。
【図６】３軸加速度センサにより求まる絶対座標系と、３軸磁気素子である磁気計測装置の検出するセンサ座標系との各軸のずれを説明する図である。
【発明を実施するための形態】
【００２７】
以下、図面を参照して、本発明の一実施形態について説明する。図１は、この発明の一の実施形態による磁気測定データ校正装置を用いた方位角計測装置の構成例を示す概略ブロック図である。この方位角計測装置は、携帯機器などに搭載される。
本実施形態の方位角計測装置は、磁気測定データ校正装置１、磁気素子２及び方位角計測部３から構成されている。
磁気素子２は、例えば、Ｘ軸方向の測定軸における磁界の強度を示す磁気データＭｘを測定するＸ軸方向磁気検出部２１、Ｙ軸方向の測定軸における磁界の強度を示す磁気データＭｙを測定するＹ軸方向磁気検出部２２、Ｚ軸方向の測定軸における磁界の強度を示す磁気データＭｚを測定するＺ軸方向磁気検出部２３とから構成された、Ｘ軸、Ｙ軸及びＺ軸の３軸の測定軸を有する磁気素子である。ここで、Ｘ軸方向磁気検出部２１、Ｙ軸方向磁気検出部２２及びＺ軸方向磁気検出部２３は、例えば、ホール素子、磁気抵抗素子、フラックスゲート型磁気素子などが用いられる。
【００２８】
磁気測定データ校正装置１は、磁気素子２から供給される、磁気データＭｘ、磁気データＭｙ及び磁気データＭｚからなる磁気測定データＭ（Ｍｘ，Ｍｙ，Ｍｚ）のオフセットを校正した磁気校正データＭｆ（Ｍｆｘ，Ｍｆｙ，Ｍｆｚ）を出力する。
方位角計測部３は、磁気測定データ校正装置１が校正した磁気校正データＭｆ（Ｍｆｘ，Ｍｆｙ，Ｍｆｚ）を用い、上記Ｘ軸方向、Ｙ軸方向及びＺ軸方向からなる３次元磁界空間において方位角計測装置の向いている方位を出力する。
【００２９】
本実施形態において、補正すべきオフセットを、オフセットＯ（Ｏｘ，Ｏｙ，Ｏｚ）とする。ここで、ＯｘはＸ軸方向のオフセットであり、ＯｙはＹ軸方向のオフセットであり、ＯｚはＺ軸方向のオフセットである。
また、磁気測定データＭｎ（Ｍｘｎ，Ｍｙｎ，Ｍｚｎ）は、ｎ番目の磁気データである。また、地磁気ベクトルの大きさ（以下、全磁力）をＲとする。
ここで、全磁力は、磁気測定データＭｎ（Ｍｘｎ，Ｍｙｎ，Ｍｚｎ）とオフセットＯ（Ｏｘ，Ｏｙ，Ｏｚ）とを用い、以下の（１）式により、求められる。
【００３０】
【数１】
2014025715.tif 000003
【００３１】
この（１）式の関係は常に成り立つ。すなわち、携帯機器を携帯するユーザの移動の際、携帯機器が回転することにより、磁気測定データにおける各測定軸方向の磁気データが変化する。しかしながら、この磁気測定データから検出される全磁力が変化しない限り、磁気測定データをＸ軸、Ｙ軸及びＺ軸からなる３次元空間の座標点として配置すると、磁気測定データは測定軸からなる３次元空間において、同一の球面上のいずれかの位置に存在する（この点については従来例と同様に同一球面上で移動することを仮定している）。
したがって、全磁力が同一であるならば、上述した（１）式の関係は、磁気測定データにおける各測定軸方向の磁気データが変化したとしても、常に成り立つことになる。
【００３２】
上記（１）式において、４個の磁気測定データＭを用いることにより、オフセットＯの各測定軸におけるオフセット成分Ｏｘ、Ｏｙ、Ｏｚ、全磁力Ｒを、算出することができる。
ここで、（１）式を変形するため、以下の（２）式に示す定数Ｑを定義する。
【００３３】
【数２】
2014025715.tif 000004
【００３４】
上記（２）式を用いて（１）式を行列の構成とすることにより、以下の（３）式のように変形する。
【００３５】
【数３】
2014025715.tif 000005
【００３６】
上記（３）式を解くことにより、オフセット成分Ｏｘ、Ｏｙ、Ｏｚ、全磁力Ｒを求めることができる。このとき、（３）式の左辺の逆行列が存在することが必要である。
しかしながら、実際の磁気測定データＭには、携帯機器の各部品からのまたは外部からの磁気ノイズが重畳している。
このため、（３）式から算出されるオフセット成分Ｏｘ、Ｏｙ、Ｏｚ、全磁力Ｒは正確な値を得ることができない場合がある。
したがって、統計的な手法、すなわちＲＬＳ（Ｒｅｃｕｒｓｉｖｅ  Ｌｅａｓｔ  Ｓｑｕａｒｅ：再帰的最小二乗）法を用いて、磁気ノイズを低減することにより、オフセット成分Ｏｘ、Ｏｙ、Ｏｚ、全磁力Ｒの推定値（以下、最尤推定値）を算出する。最尤推定値が算出できる説明は後述する。以下、本実施形態における、ＲＬＳ法を用いた磁気測定データの校正について説明する。
【００３７】
次に、磁気測定データ校正装置１は、オフセット有効性判定部１０、測定データ入力部１１、共分散行列計算部１２、共分散行列更新部１３、記憶部１４、誤差関数計算部１５、オフセット残差計算部１６、オフセット更新部１７、磁気測定データ処理部１８、磁気測定データ判定部１９、初期化判定部２０を備えている。
測定データ入力部１１は、Ｘ軸方向磁気検出部２１、Ｙ軸方向磁気検出部２２及びＺ軸方向磁気検出部２３の各々から入力されるアナログ値の軸センサ測定値を、デジタル値に変換して出力する。ここで、Ｘ軸方向磁気検出部２１、Ｙ軸方向磁気検出部２２及びＺ軸方向磁気検出部２３の各々は、自身の感知方向で検出した磁場に対応した、アナログ値である電圧値を磁気データとして出力する。
また、測定データ入力部１１は、アナログ値の磁気データＭ（Ｍｘ，Ｍｙ，Ｍｚ）を、デジタル値の磁気測定データＭ（Ｍｘ、Ｍｙ、Ｍｚ）に変換する際、アナログ値の磁気データに含まれているオフセット値を除去するため、磁気素子単体でのオフセット調整を行うようにしてもよい。
【００３８】
共分散行列計算部１２は、後述するオフセット残差計算部１６において用いる共分散行列Ｐの初期値を、以下の（４）式のように設定する。
【００３９】
【数４】
2014025715.tif 000006
【００４０】
この（４）式において、共分散行列計算部１２は、定数αを、例えば１．０００から１００．０００までの範囲で設定する。
また、（４）式における右辺の４行×４列の行列における磁気測定データを示す列行列を、以下の（５）式のベクトルｚｎとして定義する。
【００４１】
【数５】
2014025715.tif 000007
【００４２】
また、（５）式における右辺の４行×１列の行列を、以下の（６）式のオフセットのベクトルｘｎとして定義する。
【００４３】
【数６】
2014025715.tif 000008
【００４４】
上記（６）式は、ｎ番目の磁気測定データを用いて更新された際のオフセットＯｎ（Ｏｘｎ，Ｏｙｎ，Ｏｚｎ）と全磁力から計算された定数Ｑｎからなるベクトルを示す行列である。
【００４５】
誤差関数計算部１５は、以下の（７）式を用いて、誤差関数ｅｎを算出する。
【００４６】
【数７】
2014025715.tif 000009
【００４７】
すなわち、誤差関数計算部１５は、ｎ番目に測定された磁気測定データＭｎと、前回算出したオフセットＯｎ−１（ｎ−１番目の磁気測定データＭｎ−１を用いて求めたオフセット）と、前回算出した全磁力Ｒｎ−１（ｎ−１番目の磁気測定データＭｎ−１を用いて求めた全磁力）とから、誤差関数ｅｎを算出する。
ここで、誤差関数計算部１５は、磁気測定データＭｎとオフセットＯｎとの距離の二乗と、全磁力Ｒｎ−１の二乗を算出し、磁気測定データＭｎとオフセットＯｎとの距離の二乗から、全磁力Ｒｎ−１の二乗を減算し、減算結果を誤差関数ｅｎとする。ここで、磁気測定データＭｎとオフセットＯｎとの距離とは、測定軸であるＸ軸、Ｙ軸及びＺ軸からなる３次元空間において、磁気測定データＭｎとオフセットＯｎ−１とを配置した際の、磁気測定データＭｎとオフセットＯｎ−１との座標点の距離である。
【００４８】
オフセット残差計算部１６は、誤差関数計算部１５の求めた誤差関数ｅｎと、前回測定時に求めた共分散行列Ｐｎ−１とを用い、以下の（８）式により、オフセット残差ηを算出する。
【００４９】
【数８】
2014025715.tif 000010
【００５０】
この（８）式において、忘却係数ρは、ＲＬＳ法で用いられる定数である。一般的に、０．９５＜ρ＜１の範囲に設定される。
【００５１】
共分散行列更新部１３は、磁気測定データＭｎを共分散行列の母集団に含めた際の共分散行列Ｐｎを、（１）式の行列ｚｎと、（１）式の転置行列ｚｎＴと、磁気測定データＭ０からＭｎ−１を母集団とする共分散行列Ｐｎ−１と、忘却係数ρとを用い、以下に示す（９）式により算出する。
【００５２】
【数９】
2014025715.tif 000011
【００５３】
オフセット更新部１７は、直前の磁気測定データＭｎ−１から求めたオフセットベクトルｘｎ−１と、オフセット残差ηとから、磁気測定データＭｎに対応するオフセットベクトルｘｎを、以下の（１０）式により算出する。
【００５４】
【数１０】
2014025715.tif 000012
【００５５】
磁気測定データ処理部１８は、磁気測定データＭｎの磁気データＭｘｎ、Ｍｙｎ、Ｍｚｎの各々から、オフセットベクトルＸｎにおけるＯｘｎ、Ｏｙｎ、Ｏｚｎをそれぞれ減算し、磁気校正データＭｆ（Ｍｆｘ，Ｍｆｙ，Ｍｆｚ）を算出する。
記憶部１４には、共分散行列Ｐと、オフセットベクトルｘと、全磁力Ｒとが記憶される。共分散行列Ｐ、オフセットベクトルｘ及び全磁力Ｒの各々は、それぞれ書き込まれる際に、次の算出において用いられる直前のデータである、共分散行列Ｐｎ−１、オフセットベクトルｎ−１及び全磁力Ｒｎ−１として書き込まれる。
また、記憶部１４には、共分散行列Ｐの初期値、忘却係数ρ、（５）式、（６）式、（７）式、（８）式、（９）式、（１０）式が予め書き込まれて記憶されている。
【００５６】
磁気測定データ判定部１９は、前回オフセットＯｎ−１を算出した磁気測定データＭｎ−１、現時点で測定された磁気測定データＭｎとの距離ｄを算出する。この距離ｄは、すでに説明したように、磁気素子２のＸ軸、Ｙ軸及びＺ軸方向の各々の測定軸で構成される３次元空間（磁界３次元空間）に磁気測定データＭｎ及びＭｎ−１を配置した際の、それぞれの座標値の距離である。
また、磁気測定データ判定部１９は、算出した距離ｄが予め設定した閾値ｄｓを超えない場合、磁気測定データ校正装置１において、新たな磁気測定データＭｎによるオフセットＯｎの算出を行わない制御を行う。この場合、記憶部１４に記憶されるデータは、磁気測定データＭｎ−１において算出された数値が、書き換えられずにそのまま記憶されることになる。
【００５７】
ここで、閾値ｄｓは、以下のように設定されている。すなわち、閾値ｄｓは磁気素子２の測定における測定ノイズに対応した数値で決定される。磁気データを測定するＸ軸、Ｙ軸及びＺ軸方向の各測定軸の測定ノイズを、それぞれ測定ノイズｖｘ、ｖｙ、ｚｖとすると、静止状態においても、時系列に磁気素子２において測定される磁気測定データ間の距離は、０とはならない。
方位計測装置を静止状態とし、Ｘ軸、Ｙ軸及びＺ軸方向の各測定軸の磁気測定データの変動幅を予め測定し、この変動幅を含む範囲を測定ノイズｖｘ、ｖｙ、ｚｖとする。
【００５８】
したがって、以下に示す（１１）式により、閾値ｄｓが求められている。この閾値ｄｓは予め記憶部１４に書き込まれ記憶されている。ここで、閾値ｄｓは、測定ノイズのベクトル（ｖｘ、ｖｙ、ｚｖ）の長さ、すなわち磁気素子２の測定軸で構成される３次元空間（３次元磁界空間）の原点と、測定ノイズｖｘ、ｖｙ、ｚｖの座標値との距離で設定されている。
例えば、Ｘ軸、Ｙ軸及びＺ軸方向の各測定軸の測定ノイズの標準偏差が１μＴである磁気素子を用いた場合、（１１）式により求められる変動幅は最大で４．５μＴである。
この場合、閾値ｄｓを５μＴとして設定する。
また、測定データ入力部１１は、オフセットＯｎが求められた後、磁気測定データＭｎを記憶部１４に書き込んで記憶させる。
【００５９】
【数１１】
2014025715.tif 000013
【００６０】
オフセット有効性判定部１０は、磁気素子２から読み込んだ磁気測定データＭｎから求めたオフセットＯｎが有効か否かの判定を行い、オフセットＯｎが有効でないと判定した場合、前回求めたオフセットＯｎ−１を新たなオフセットＯｎとして用いる。
また、記憶部１４には、データバッファが設けられており、１６組から３２組の磁気測定データＭがこのデータバッファに書き込まれて記憶されている。例えば、１６組の磁気測定データの組が記憶されている場合、磁気測定データＭ１からＭ１６までの磁気測定データがデータバッファに記憶されることになる。
【００６１】
ここで、オフセット有効性判定部１０は、磁気測定データ判定部１９において、距離ｄが予め設定した閾値ｄｓを超えた磁気測定データＭｎを、上述したデータバッファに書き込んで記憶させる。このとき、オフセット有効性判定部１０は、データバッファにおける最も古い磁気測定データに、新たな磁気測定データＭｎを上書きする。すなわち、オフセット有効性判定部１０は、磁気測定データ判定部１９がオフセット計算をして更新すると判定された磁気測定データのみをデータに書き込んで記憶させる。本実施形態における距離も、第２実施形態で示した磁気素子２のＸ軸、Ｙ軸及びＺ軸方向の各々の測定軸で構成される３次元空間における距離である。
【００６２】
また、オフセット有効性判定部１０は、記憶部１４からオフセットＯｎ−１と、全磁力Ｒｎ−１とを読み出し、このオフセットのベクトルをＯ１（Ｏ１ｘ，Ｏ１ｙ，Ｏ１ｚ）とし、全磁力をＲ１とする。
オフセット有効性判定部１０は、以下の（１２）式により、データバッファに記憶されている磁気測定データＭ１からＭｎの各々に対応する距離ｄ１ｎを算出する。
【００６３】
【数１２】
2014025715.tif 000014
【００６４】
すなわち、オフセット有効性判定部１０は、磁気測定データＭ毎に、磁気データＭｘからオフセットＯ１ｘを減算した結果を二乗し、磁気データＭｙからオフセットＯ１ｙを減算した結果を二乗し、磁気データＭｚからオフセットＯ１ｚを減算した結果を二乗する。この評価値Ｇ１（第２評価値）は、前回のオフセットでＯｎ−１とオフセットの真値との誤差として推定される。
そして、オフセット有効性判定部１０は、それぞれ二乗した結果を加算し、加算結果の平方根を算出することで、距離ｄ１ｎを求める。ここで、オフセット有効性判定部１０は、磁気測定データＭ１からＭｎの各々に対応し、距離ｄ１１からｄ１ｎの各々を求める。
また、オフセット有効性判定部１０は、以下の（１３）式により、評価値Ｇ１を算出する。
【００６５】
【数１３】
2014025715.tif 000015
【００６６】
ここで、オフセット有効性判定部１０は、距離ｄ１１からｄ１ｎの各々から、それぞれ全磁力Ｒ１を減算し、減算結果毎に二乗して、減算結果の二乗の総和を求めるため、全ての二乗結果を加算し、加算結果である二乗の総和を評価値Ｇ１とする。
また、オフセット有効性判定部１０は、磁気素子２から読み込んだ磁気測定データＭｎから求めたオフセットＯｎのオフセットのベクトルをＯ２（Ｏ２ｘ，Ｏ２ｙ，Ｏ２ｚ）とし、このベクトルＯ２（Ｏ２ｘ，Ｏ２ｙ，Ｏ２ｚ）と、磁気測定データＭｎとから新たに全磁力Ｒ２を求める。
そして、オフセット有効性判定部１０は、以下の（１４）式により、データバッファに記憶されている磁気測定データＭ１からＭｎの各々に対応する距離ｄ２ｎを算出する。
【００６７】
【数１４】
2014025715.tif 000016
【００６８】
ここで、オフセット有効性判定部１０は、磁気測定データＭ毎に、磁気データＭｘからオフセットＯ２ｘを減算した結果を二乗し、磁気データＭｙからオフセットＯ２ｙを減算した結果を二乗し、磁気データＭｚからオフセットＯ２ｚを減算した結果を二乗する。
そして、オフセット有効性判定部１０は、それぞれ二乗した結果を加算し、加算結果の平方根を算出することで、距離ｄ２ｎを求める。ここで、オフセット有効性判定部１０は、磁気測定データＭ１からＭｎの各々に対応し、距離ｄ２１からｄ２ｎの各々を求める。
また、オフセット有効性判定部１０は、以下の（１５）式により、評価値Ｇ２を算出する。
【００６９】
【数１５】
2014025715.tif 000017
【００７０】
ここで、オフセット有効性判定部１０は、距離ｄ２１からｄ２ｎの各々から、それぞれ全磁力Ｒ２を減算し、減算結果毎に二乗して、減算結果の二乗の総和を求めるため、全ての二乗結果を加算し、加算結果である二乗の総和を評価値Ｇ２とする。この評価値Ｇ２（第１評価値）は、今回のオフセットでＯｎとオフセットの真値との誤差として推定される。
評価値Ｇ１及びＧ２を算出すると、オフセット有効性判定部１０は、この評価値Ｇ１と評価値Ｇ２の比較を行う。
このとき、オフセットＯ１と全磁力Ｒ１とが真値になっている場合、評価値Ｇ１が真値であり、オフセットＯ２と全磁力Ｒ２とが真値になっている場合、評価値Ｇ２が真値である。すなわち、オフセットＯ１と全磁力Ｒ１とが真値に近くなるほど評価値Ｇ１が小さくなり、また、オフセットＯ２と全磁力Ｒ２とが真値に近くなるほど評価値Ｇ２が小さくなると考えられる。
【００７１】
したがって、オフセット有効性判定部１０は、評価値Ｇ１及びＧ２を比較し、評価値Ｇ２が評価値Ｇ１未満である（Ｇ２＜Ｇ１）場合、新たに算出されたオフセットＯｎ及び全磁力Ｒｎが前回算出したオフセットＯｎ−１及び全磁力Ｒｎ−１より真値に近いと判定する。
一方、オフセット有効性判定部１０は、評価値Ｇ２が評価値Ｇ１以上である（Ｇ２≧Ｇ１）場合、前回算出したオフセットＯｎ−１及び全磁力Ｒｎ−１が新たに算出されたオフセットＯｎ及び全磁力Ｒｎより真値に近いか、あるいは同様と判定する。
【００７２】
ここで、オフセット有効性判定部１０は、Ｇ２＜Ｇ１の場合、新たに算出されたオフセットＯｎ及び全磁力Ｒｎを、磁気測定データ処理部１８へ出力するとともに、オフセットを更新することを示す制御信号を、オフセット更新部１７に対して出力する。
オフセット更新部１７は、前回算出したオフセットＯｎ−１を更新することを示す制御情報が供給されると、記憶部１４に記憶されているオフセットＯｎ−１対して、新たに算出されたオフセットＯｎを上書きする。これにより、記憶部１４には最新のオフセットＯｎが保持される。
【００７３】
また、オフセット有効性判定部１０は、Ｇ２≧Ｇ１の場合、記憶部１４に記憶されているオフセットの値と全磁力Ｒとを、磁気測定データ処理部１８へ出力するとともに、オフセットを更新しないことを示す制御信号を、オフセット更新部１７に対して出力する。
オフセット更新部１７は、オフセットを更新しないことを示す制御情報が供給されると、記憶部１４に記憶されている前回算出したオフセットＯｎ−１を上書きせず、前回算出したオフセットＯｎ−１の値の更新処理を行わない。これにより、記憶部１４には、最新のオフセットとして、前回算出したオフセットＯｎ−１と同じ値のオフセットＯｎが保持される。
【００７４】
初期化判定部２０は、評価値Ｇ２が評価値Ｇ１より大きいかの判定処理の後、評価値Ｇ２が予め設定した閾値ＧＳを超える（Ｇ１＞ＧＳ）か否かの判定を行う。
この閾値ＧＳは、標準的な地磁気の数値を基づいて決定されており、例えば日本における地磁気の大きさが約４６μＴであるので、この二乗である２１１６を用いている。すなわち、本実施形態においては、地磁気を超える（同等以上）のオフセット誤差が残っている場合を検出している。
また、この閾値ＧＳは、磁気校正処理の仕様に対応して任意の数値に設定しても良い。
【００７５】
また、初期化判定部２０は、評価値Ｇ２が閾値ＧＳを越えている場合、自身の内部に設けられたカウンタのカウンタ値Ｊをインクリメント（カウント値Ｊに対して「１」を加算）する。
そして、初期化判定部２０は、カウンタのカウンタ値Ｊが予め設定した閾値ＪＳ以上か否かの判定を行う。ここで、初期化判定部２０は、カウンタ値Ｊが閾値ＪＳ以上である場合、閾値ＧＳを超えるオフセット誤差が残っている、すなわち地磁気を超えるオフセット誤差が残っているため、オフセットＯ、全磁力Ｒ及び共分散行列Ｐを初期化する処理を行う。
【００７６】
ここで、評価値Ｇ２が閾値ＧＳを越えている場合、オフセットＯ、全磁力Ｒ及び共分散行列Ｐを初期化する理由として、オフセットＯが急激に変化した際においても、穏やかに新しいオフセットに近づくため、オフセットの真値への到達に時間がかかってしまう（オフセットの更新回数が増大する）。本実施形態においては、オフセット変化後の測定データの影響が最も大きくなるようにオフセットの推定が行われる構成となっている。しかしながら、時間に対して重み付けされた最小二乗法によりオフセットを推定しているが、共分散行列に対してオフセット変化前の測定データの影響が残っているため、オフセット誤差が大きくなるにつれ、推定されるオフセットが真値に近づくまでに時間がかかり（オフセット更新の回数が増加し）、上述したように大きなオフセットの変化に早急に対応できない。
【００７７】
この解決作として、閾値ＧＳより大きなオフセット誤差が存在している場合、初期化したほうが、オフセット変化前の影響を完全に取り除くことができるため、オフセットの真値に近づく時間を短縮することができる。
一方、初期化判定部２０は、評価値Ｇ２が閾値ＧＳ以下の場合、自身の内部に設けられたカウンタのリセット、すなわちカウント値Ｊを「０」とする処理を行う。
また、プログラムの構成あるいは回路の構成により変わるが、オフセットＯ、全磁力Ｒ及び共分散行列Ｐが初期化されてからオフセットの推定が終了するまで、複数のステップ数が必要となる。そして、この初期化からオフセットの終了まで、評価値Ｇ２が閾値ＧＳを超える場合が存在する。このため、閾値ＪＳは、初期化からオフセットの推定が終了するまでのステップ数、すなわちオフセット推定の処理におけるオフセットの更新回数として設定されている。
【００７８】
次に、図１及び図２を用いて、本実施形態の磁気測定データ校正装置１における磁気測定データの校正を行う処理について説明する。図２は、磁気素子２が検出した磁気測定データＭを校正する処理の動作例を示すフローチャートである。
ステップＳ１：
共分散行列計算部１２は、オフセットＯ及び全磁力Ｒの初期化を行う。
このとき、例えば、オフセットＯの初期化の値としては磁気素子２の単体で３軸ヘルムホルツコイルにて測定されたオフセット値が記憶部１４に予め書き込まれて記憶されている。また、全磁力Ｒの初期化の値としては、複数の地域における地磁気基準値が記憶部１４に予め書き込まれて記憶されている。
そして、携帯機器に電源を投入した後、ユーザは携帯機器の表示部に表示される複数の地域から、自身の居住地が含まれる地域を選択する。
これにより、共分散行列計算部１２は、記憶部１４から、オフセットＯの初期値を読み出すとともに、ユーザの選択した地域に対応して記憶されている地磁気基準値を全磁力Ｒの初期値として読み出す。
また、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）機能が携帯機器に搭載されている場合、共分散行列計算部１２は、ＧＰＳから得られる緯度経度情報が含まれる地域（緯度経度情報の範囲で規定された領域）に対応して記憶されている地磁気基準値を全磁力Ｒの初期値として読み出すように構成しても良い。
そして、共分散行列計算部１２は、処理をステップＳ２へ進める。
【００７９】
ステップＳ２：
次に、共分散行列計算部１２は、共分散行列Ｐの初期化を行う。すなわち、共分散行列計算部１２は、記憶部１４に予め書き込まれて記憶されている（４）式を読み出し、読み出した（４）式を共分散行列の初期値とする。
そして、共分散行列計算部１２は、処理をステップＳ３へ進める。
【００８０】
ステップＳ３：
測定データ入力部１１は、磁気素子２のＸ軸方向磁気検出部２１、Ｙ軸方向磁気検出部２２及びＺ軸方向磁気検出部２３の各々から、磁気測定データＭｎとして磁気データＭｘｎ、Ｍｙｎ及びＭｚｎを読み込む。
そして、測定データ入力部１１は、読み込んだ磁気測定データＭｎを記憶部１４に書き込んで記憶させる。
磁気測定データＭｎを読み込んだ後、測定データ入力部１１は、処理をステップＳ４へ進める。
【００８１】
ステップＳ４：
磁気測定データ判定部１９は、測定データ入力部１１から磁気測定データＭｎが供給されると、閾値ｄｓと、前回オフセットＯｎ−１の算出に用いた磁気測定データＭｎ−１とを記憶部１４から読み出す。
次に、磁気測定データ判定部１９は、供給された磁気測定データＭｎと、記憶部１４から読み出した磁気測定データＭｎ−１との距離ｄを（１１）式により算出する。
そして、磁気測定データ判定部１９は、算出した距離ｄと、記憶部１４から読み出した閾値ｄｓとを比較する。
このとき、磁気測定データ判定部１９は、距離ｄが閾値ｄｓ以上の場合、処理をステップＳ５へ進め、一方、距離ｄが閾値ｄｓ未満の場合、処理をステップＳ６へ進める。
【００８２】
ステップＳ５：
次に、誤差関数計算部１５は、記憶部１４から読み込んだ（７）式に対し、磁気素子２から読み込んだ磁気データＭｘｎ、Ｍｙｎ及びＭｚｎと、記憶部１４から読み込んだオフセットＯｎ−１（Ｏｘｎ−１，Ｏｙｎ−１，Ｏｚｎ−１）とを代入し、誤差関数ｅｎを算出する。
すなわち、誤差関数計算部１５は、磁気データＭｘｎからオフセットＯｘｎ−１を減算した結果を二乗し、磁気データＭｙｎからオフセットＯｙｎ−１を減算した結果を二乗し、磁気データＭｚｎからオフセットＯｚｎ−１を減算した結果を二乗する。
そして、誤差関数計算部１５は、それぞれの減算した結果を加算し、この加算した結果から、全磁力Ｒｎ−１の二乗を減算し、誤差関数ｅｎを求める。
誤差関数ｅｎを算出した後、誤差関数計算部１５は、処理をステップＳ７へ進める。
また、図２のフローチャートにおけるステップＳ３からステップＳ１７までのループ（繰り返し処理）において、携帯機器の電源が投入されてから１回目のループの際、オフセットＯｎ−１としては初期化におけるオフセットの数値が用いられ、同様に、全磁力Ｒｎ−１としては初期化における全磁力の数値が用いられる。
【００８３】
ステップＳ６：
磁気測定データ判定部１９は、オフセットＯｎの算出の処理を磁気測定データ校正装置１に行わせず、記憶部１４に記憶された数値をそのままとし、処理をステップＳ３へ進める。
【００８４】
ステップＳ７：
オフセット残差計算部１６は、記憶部１４から、（５）式と、（８）式と、忘却係数ρと、前回求めた共分散行列Ｐｎ−１とを読み出す。
次に、オフセット残差計算部１６は、磁気データＭｎを（５）式に代入してベクトルｚｎの行列を生成し、この生成したベクトルｚｎの行列の転置行列ｚｎＴを生成する。
そして、オフセット残差計算部１６は、忘却係数ρ、共分散行列Ｐｎ−１、ベクトルｚｎ及び転置行列ｚｎＴの各々を（８）式に代入し、オフセット残差ηを算出し、このオフセット残差ηをオフセット更新部１７へ出力する。
オフセット残差ηを算出した後、オフセット残差計算部１６は、処理をステップＳ８へ進める。
【００８５】
ステップＳ８：
共分散行列更新部１３は、記憶部１４から、（５）式と、（９）式と、忘却係数ρと、共分散行列Ｐｎ−１とを読み込む。
次に、共分散行列更新部１３は、磁気データＭｎを（５）式に代入してベクトルｚｎの行列を生成し、この生成したベクトルｚｎの行列の転置行列ｚｎＴを生成する。
そして、共分散行列更新部１３は、忘却係数ρと、共分散行列Ｐｎ−１と、ベクトルｚｎと、転置行列ｚｎＴとを、（９）式に代入し、新たな共分散行列Ｐｎを生成し、記憶部１４に書き込んで記憶させる。この共分散行列更新部１３が記憶部１４に書き込んだ共分散行列Ｐｎが、磁界のループにおいては共分散行列Ｐｎ−１として用いられる。
今回の磁気データＭｎを含む、今までに共分散行列Ｐを生成するために用いた磁気データＭの全てを母集団とする共分散行列Ｐｎを生成した後、共分散行列更新部１３は、処理をステップＳ９へ進める。
【００８６】
ステップＳ９：
オフセット更新部１７は、記憶部１４から（６）式及び（１０）式を読み出す。
次に、オフセット更新部１７は、（６）式に対し、前回算出されたオフセットＯｎ−１と全磁力Ｒｎ−１とを代入し、オフセットのベクトルｘｎ−１を求める。
そして、オフセット更新部１７は、オフセット残差計算部１６から供給されるオフセット残差ηと、求めたベクトルとを（１０）式に代入し、磁気測定データＭｎを測定した時点（すなわち現在）におけるオフセットＯｎを示すオフセットのベクトルｘｎを算出する。すなわち、オフセット更新部１７は、ベクトルｘｎ−１に対し、オフセット残差ηを加算することにより、新たなオフセットを示すベクトルｘｎを算出する。
ベクトルｘｎを算出した後、オフセット更新部１７は、処理をステップＳ１０へ進める。
【００８７】
また、磁気測定データ処理部１８は、方位角計測部３が方位角の算出を行う際、測定データ入力部１１が入力する磁気測定データＭｎに対応したオフセットＯｎを、磁気測定データＭｎから減算する。
そして、磁気測定データ処理部１８は、磁気測定データＭｎからオフセットＯｎを減算した結果を、校正した磁気校正データＭｆ（Ｍｆｘ，Ｍｆｙ，Ｍｆｚ）として、方位角計測部３に対して出力する。
【００８８】
ステップＳ１０：
次に、オフセット有効性判定部１０は、記憶部１４に記憶されている磁気測定データＭ１からＭｎと、前回算出されて記憶されたオフセットＯｎ−１（Ｏ１）を読み出し、磁気データＭ毎に、上述した（１２）式により距離ｄ１ｎを算出する。
そして、オフセット有効性判定部１０は、記憶部１４に記憶されている磁気測定データＭｎ−１とオフセットＯｎ−１とを読み出し、（１）式により全磁力Ｒ１を算出する。
これにより、オフセット有効性判定部１０は、算出した磁気データ毎の距離ｄ１ｎと、全磁力Ｒ１とから、（１３）式により評価値Ｇ１の算出を行い、処理をステップＳ１６へ進める。
【００８９】
ステップＳ１１：
次に、オフセット有効性判定部１０は、記憶部１４に記憶されている磁気測定データＭ１からＭｎと、今回算出されて記憶されたオフセットＯｎ（Ｏ２）を読み出し、磁気データＭ毎に、上述した（１４）式により距離ｄ２ｎを算出する。
そして、オフセット有効性判定部１０は、記憶部１４に記憶されている磁気測定データＭｎとオフセットＯｎとを読み出し、（１）式により全磁力Ｒ２を算出する。
これにより、オフセット有効性判定部１０は、算出した磁気データ毎の距離ｄ２ｎと、全磁力Ｒ２とから、（１５）式により評価値Ｇ２の算出を行い、処理をステップＳ１２へ進める。
【００９０】
ステップＳ１２：
次に、オフセット有効性判定部１０は、算出した評価値Ｇ１とＧ２とを比較し、評価値Ｇ２が評価値Ｇ１未満であるか否かの判定を行う。
このとき、オフセット有効性判定部１０は、評価値Ｇ２が評価値Ｇ１未満である場合、処理をステップＳ１３へ進め、一方、評価値Ｇ２が評価値Ｇ１以上である場合、処理をステップＳ１４へ進める。
【００９１】
ステップＳ１３：
評価値Ｇ２が評価値Ｇ１未満である場合、今回求めたオフセットＯｎが前回記憶部１４にオフセットとして書き込まれて記憶されたオフセットＯｎ−１より真値に近いため、オフセット有効性判定部１０は、今回求めたオフセットＯｎを更新しないことを判定する。
そして、オフセット有効性判定部１０は、記憶部１４に記憶されているオフセットの値を更新することを示す制御信号を、オフセット更新部１７に対して出力する。
この更新を行うことを示す制御情報が供給されると、オフセット更新部１７は、記憶部１４に記憶されているオフセットに対し、今回求めたオフセットＯｎを上書きし、オフセットの値の更新を行う。
そして、オフセット更新部１７は、処理をステップＳ１５へ進める。
【００９２】
ステップＳ１４：
評価値Ｇ２が評価値Ｇ１以上である場合、今回求めたオフセットＯｎに対して、前回記憶部１４にオフセットとして書き込まれて記憶されたオフセットＯｎ−１の方が真値に近いため、オフセット有効性判定部１０は、前回書き込まれたオフセットの値を維持したまま更新することを示す制御信号を、オフセット更新部１７へ出力する。
この更新を行わないことを示す制御情報が供給されると、オフセット更新部１７は、記憶部１４に記憶されているオフセットＯ、前回のオフセットＯｎ−１の値を維持したまま上書し、オフセットの値の更新を行う。
そして、オフセット更新部１７は、処理をステップＳ１５へ進める。
【００９３】
ステップＳ１５：
次に、初期化判定部２０は、評価値Ｇ２が内部の記憶部に予め書き込まれて記憶されている閾値ＧＳを超えるか否かの判定を行う。
このとき、初期化判定部２０は、評価値Ｇ２が閾値ＧＳを超えている場合、処理をステップＳ１６へ進める。
一方、初期化判定部２０は、評価値Ｇ２が閾値ＧＳ以下の場合、内部のカウンタのカウンタ値Ｊをリセットした後、処理をステップＳ３へ進める。
【００９４】
ステップＳ１６：
次に、初期化判定部２０は、自身内部に設けられたカウンタのカウンタ値Ｊをインクリメントした後、処理をステップＳ１７へ進める。
【００９５】
ステップＳ１７：
次に、初期化判定部２０は、カウンタのカウンタ値Ｊが、自身内部に設けられた記憶部に予め書き込まれて記憶されている閾値ＪＳ以上か否かの判定を行う。
このとき、初期化判定部２０は、カウンタ値Ｊが閾値ＪＳ以上である場合、処理をステップＳ１へ進め、共分散行列計算部１２に対してオフセットＯ、全磁力Ｒ及び共分散行列Ｐの初期化を行わせる処理を行う。
一方、初期化判定部２０は、カウンタ値Ｊが閾値ＪＳ未満である場合、処理をステップＳ３へ進め、オフセット推定の処理を継続させる。
【００９６】
上述した本実施形態によれば、前回求めたオフセットＯｎ−１と、現時点で測定した磁気測定データＭｎとを用い、誤差関数ｅｎが最小となるように、オフセット残差ηを算出し、このオフセット残差ηと前回求めたオフセットＯｎ−１とを用いてオフセットＯｎを算出するため、磁気測定データＭｎに重畳する磁気ノイズも最小化することが可能となり、従来に比較してより高い精度により、測定される磁気測定データＭｎのオフセットＯｎを求めることができる。
【００９７】
また、本実施形態によれば、今回の磁気測定データＭｎからオフセットＯｎを求めるため、前回求めたオフセットＯｎ−１に加算するオフセット残差ηを求める際、誤差関数をどの程度反映させるかの割合を、前回までの測定値を母集団とする共分散行列Ｐｎ−１と、現時点の磁気測定データＭｎと、忘却係数ρとにより設定しており、従来のように同一球面上を移動させて複数の磁気測定データＭを測定する必要が無いため、新たな磁気測定データＭｎを測定する毎に、前回までのオフセットＯｎ−１から容易に現時点のオフセットＯｎを求めることが可能となり、環境オフセットの変動に対する追従性を向上させることができる。
【００９８】
また、本実施形態によれば、同一あるいは同様の磁気測定データ、すなわち距離が小さな磁気測定データにおいて、オフセットを算出する計算を繰り返すことにより、オフセットを大きく推定する、すなわち磁気測定データが全てオフセットであると判定してしまう第１の実施形態の欠点を解消することが可能である。
【００９９】
また、本実施形態によれば、オフセットＯの算出に使用可能と判定された磁気測定データＭが供給される毎に、オフセットＯｎを算出して、前回有効と判定されて記憶部１４に記憶されているオフセットＯｎ−１といずれが真値に近いかを評価値Ｇ１とＧ２とにより比較し、より真値に近いオフセットを選択し、選択したオフセットを記憶部１４に保持するため、常に最も真値に近いと推定されるオフセットＯを磁気データＭの校正に用いることができ、精度の高い磁気データの校正が行えることになる。
【０１００】
また、本実施形態によれば、閾値ＧＳより大きなオフセット誤差が存在している場合、共分散行列に残っているオフセット変化前の測定データの影響を、オフセットＯ、全磁力Ｒ及び共分散行列Ｐの初期化を行うことで除去するため、オフセット誤差が大きくなってたとしても、推定されるオフセットが真値に近づくまでの時間を短縮できる。
【０１０１】
次に、本実施形態の磁気測定データ校正装置１と、特許文献１の第１の手法と、特許文献２の第２の手法との各々により推定したオフセットＯｎの真値との誤差を比較した結果を説明する。
本実施形態による磁気測定データ校正装置１と、第１の手法のアルゴリズムを用いた校正装置＃１と、第２の手法のアルゴリズムを用いた校正装置＃２との各々を搭載した磁気計測装置を用意した。
そして、磁気計測装置の各々のオフセットを３軸ヘルムホルツコイルにて測定し、それぞれの校正装置が設けられた磁気素子のオフセット調整を行った状態とする。
【０１０２】
次に、磁気測定データ校正装置１と、第１の手法のアルゴリズムを用いた校正装置＃１と、第２の手法のアルゴリズムを用いた校正装置＃２との各々を搭載した磁気計測装置の各々におけるオフセットの算出処理を行った。
まず、測定する磁気計測装置をオフセットが校正された状態で、３軸ヘルムホルツコイルのステージに静止させてセットする。
そして、地磁気と逆の磁界を発生させて磁界が０となる状態とし、この状態で磁気計測装置を特定の方向に移動させた際に磁気素子に印加される磁界である特定移動磁界を３軸ヘルムホルツコイルに発生させる。
すなわち、３軸ヘルムホルツコイルのステージに静止されてセットされた磁気計測装置に対し、磁気計測装置を移動させたときに磁気素子が検出すると推定される磁界を３軸ヘルムホルツコイルにより印加する。これにより、磁気計測装置を搭載した携帯機器を移動させた状態をシミュレーションすることになる。
【０１０３】
本実施形態において、上述した３軸ヘルムホルツコイルを用いた携帯機器の移動のシミュレーションとしては、例えば８の字を描く移動を行わせた第１のシミュレーションと、斜め方向に移動させた第２のシミュレーションとを行った。この斜め方向とは、地表面に垂直な軸に対して角度を有する方向を指している。
このシミュレーションの際、地磁気と逆の磁界と特定移動磁界とのみでなく、ある一方向の決められた大きさの特定方向の磁界を仮想オフセットとする磁界（あたかも環境オフセットが存在するようにする仮想的なオフセット磁界）を、地磁気と逆の磁界と特定移動磁界とに対して合成した合成磁界を印加した。
そして、上述した合成磁界を印加し、各磁気計測装置の出力を計測した。このとき、合成磁界の磁界変化を検知し、正常に校正が行われた場合、磁気計測装置における校正装置がオフセット磁界を、携帯機器内部のオフセットとして判定する。このため、磁気計測装置は、オフセット磁界と携帯機器内部のオフセットを磁気測定データから減算して出力することになる。
【０１０４】
したがって、上述した校正処理を磁気計測装置に対して行わせた後、地磁気と逆の磁界とオフセット磁界との合成磁界を印加した状態における磁気計測装置の出力する磁気測定データＭ（Ｍｘ，Ｍｙ，Ｍｚ）は０となる。
上述した実験において、Ｘ、Ｙ及びＺ軸方向の各々の測定軸に対し、それぞれオフセット磁界として１０μＴ（マイクロテスラ）を用いた。
また、地磁気と逆の磁界とオフセット磁界との合成磁界を印加した状態における磁気計測装置の出力する各測定軸の磁気データの２乗を加算し、加算結果の平方根をオフセット推定誤差として計算した。このオフセット推定誤差は０に近くなるほど、校正装置の算出したオフセットが真値に近いことを示すことになる。
図３に本実施形態における実験の結果を示す。この図３は、本実施形態による磁気測定データ校正装置１、校正装置＃１及び校正装置＃２に対し、磁気と逆の磁界と、特定移動磁界（８の字状の移動と斜め方向の移動）と、オフセット磁界との合成磁界を印加し、計測したオフセット推定誤差を示すテーブルである。
【０１０５】
図３に示されているように、携帯機器を８の字状に移動させた第１の状態、斜め方向に移動させた第２の状態のいずれの場合でも、本実施形態における磁気測定データ校正装置１によるオフセットが真値に近いことが、すなわち算出されるオフセットＯが実際のオフセットに近い結果が得られた。
斜め方向に移動させる第２の状態の場合、本実施形態においては第１の状態の場合と差がないが、校正装置＃１及び＃２においては第１の状態に対し、算出されるオフセットの算出精度が低下している。特に、校正装置＃２は、１７．３２＝（１０２＋１０２＋１０２）１／２であるため、そもそもオフセットの推定自体が行われていないことが判る。
上述した図３の結果から、本実施形態によれば、磁気測定データの校正に必要な携帯機器の移動を最小限にすることができ、かつ従来の手法に比較してオフセットの推定精度を向上させることができる。
【０１０６】
次に、図４及び図５は、オフセットが急激に変化した場合に、オフセットが真値に近づくまでの実験結果を示す図である。
すなわち、図４及び図５は、横軸が時間を示し、縦軸がオフセットの値を示し、オフセットが真値に近づくまでのオフセット推定にかかる時間を定量的に評価するための実験の結果を示す図である。図４は初期化判定部２０を設けない構成の磁気校正装置によりオフセット推定を行い、一方、図５は初期化判定部２０を設けた構成の磁気校正装置によりオフセット推定を行った結果を示している。
【０１０７】
本実験においては、双方の磁気校正装置の磁気素子２に対して、２００００ｍ秒の自転で、１００．０μＴのオフセットを印加している。図４においては、オフセットの印加から２００００ｍ秒経過しても、推定されるオフセットが印加した１００．０μＴとはなっていない。一方、図５においては、オフセットの印加から３０００ｍ秒経過した時点において、推定されるオフセットが印加した１００．０μＴと真値に近づいている。
この図４及び図５の結果から分かるように、オフセットが急激に大きく変化した場合に、オフセットＯ、全磁力Ｒ及び共分散行列Ｐの初期化を行わないと、真のオフセットに近づくまでに長い時間がかかることになる。一方、オフセットＯ、全磁力Ｒ及び共分散行列Ｐの初期化を行うことにより、オフセットが変化しても、初期化を行わない場合に比較して、オフセットの変化により速く追従できることが分かる。
【０１０８】
＜ＲＬＳ法によりオフセットが最尤推定値として得られることの説明＞
以下に、ＲＬＳ法を用いた場合、共分散行列を用いて最新の磁気測定データＭを用いてオフセットＯを更新する、すなわちオフセットのベクトルｘを更新することで、常にオフセットＯの最尤値（最尤推定値）を得ることができることの説明を行う。
まず、磁気測定データＭｎ（Ｍｘｎ，Ｍｙｎ，Ｍｚｎ）から、以下の（１６）式を定義する。
【０１０９】
【数１６】
2014025715.tif 000018
【０１１０】
一般的な最小二乗法によれば、現時点までに測定した磁気測定データＭ１からＭｎを用い、以下に示す（１７）式の評価関数Ｊ１を最小とするオフセットのベクトルｘを算出することになる。
【０１１１】
【数１７】
2014025715.tif 000019
【０１１２】
次に、（１８）式に示すように、ベクトルｚｎの転置行列ｚｎＴを要素とする列行列Ｚｎと、（１６）式のベクトルｙｎを要素とする列行列Ｙｎとを定義する。
【０１１３】
【数１８】
2014025715.tif 000020
【０１１４】
上記（１８）式の列行列ＺｎとＹｎとを用いることにより、（１７）式が以下に示す（１９）式のように変形することができる。
【０１１５】
【数１９】
2014025715.tif 000021
【０１１６】
上記（１９）式は、（１８）式から判るように、磁気測定データＭ１からＭｎまで、すなわち現在までに測定した全ての磁気測定データの要素が含まれている。
【０１１７】
次に、重み付け係数Ｗｎを要素とする行列、すなわち重み付け行列Ｗｎを以下の（２０）式のように定義する。
【０１１８】
【数２０】
2014025715.tif 000022
【０１１９】
そして、この重み付け行列Ｗｎと、列行列Ｙｎ及びＺｎとを用いて、評価関数Ｊ２を以下の（２１）式として示す。
【０１２０】
【数２１】
2014025715.tif 000023
【０１２１】
（２０）式に示すように、重み付け行列Ｗｎは、磁気測定データＭ毎を計算に用いる際の重み付け、すなわち特定の磁気測定データＭの影響度を高くするために導入している。
この重み付け行列Ｗｎが単位行列であるならば、評価関数Ｊ２はすでに示した（１７）式による評価関数Ｊ１と同一の評価値（Ｊ２＝Ｊ１）を求める最小二乗法になる。
【０１２２】
ここで、（２１）式の評価関数Ｊ２が最小となるオフセットのベクトルｘは、以下の（２２）式に示すものとなる。
【０１２３】
【数２２】
2014025715.tif 000024
【０１２４】
上記（２２）式を（２１）式に代入すると、（２１）式の評価関数Ｊ２が最小、すなわちＪ２＝０となるため、（２２）式が最尤推定値のベクトルｘを示していることが判る。
また、計算で用いる共分散行列Ｐｎを表すため、行列Ｕｎを以下の（２３）式により定義する。
【０１２５】
【数２３】
2014025715.tif 000025
【０１２６】
（２３）式の行列Ｕｎの逆行列に対し、（１８）式及び（２０）式を代入することにより、以下に示す（２４）式が得られる。
【０１２７】
【数２４】
2014025715.tif 000026
【０１２８】
ここで、（２４）式を解析的に解くため、逆行列の補助定理を用いる。すなわち、逆行列の補助定理において、行列Ａがｎ×ｎ行列、行列ｂがｎ×１ベクトル、行列ｃがｎ×１ベクトルである場合、以下の（２５）式に示す関係が成り立つことになる。
【０１２９】
【数２５】
2014025715.tif 000027
【０１３０】
したがって、（２４）式を（２５）式に代入すると、以下の（２６）式となる。
【０１３１】
【数２６】
2014025715.tif 000028
【０１３２】
これにより、（２４）式は、（２６）式の逆行列を求めることにより、以下の（２７）式の漸化式として表すことができる。
【０１３３】
【数２７】
2014025715.tif 000029
【０１３４】
ここで、（２０）式における重み付け行列を、以下に示す（２８）式のように設定する。
【０１３５】
【数２８】
2014025715.tif 000030
【０１３６】
上記（２８）において、忘却係数ρを０から１の範囲（０＜ρ＜１）で設定すると、過去に取得した磁気測定データの影響（反映）の度合いが徐々に低くなる。
また、共分散行列Ｐｎを、重み付け係数ｗｎと行列Ｕｎで表すと、以下の（２９）式となり、（２７）式が（９）式と一致することになる。
【０１３７】
【数２９】
2014025715.tif 000031
【０１３８】
また、以降の計算の都合上、ｋｎを以下の（３０）式のように定義する。
【０１３９】
【数３０】
2014025715.tif 000032
【０１４０】
次に、（２２）式に対し、（２７）式と（３０）式とを代入すると、以下に示す（３１）式が得られる。
【０１４１】
【数３１】
2014025715.tif 000033
【０１４２】
また、磁気測定データＭ１からＭｎ−１までのデータで求められたオフセットのベクトルｘｎ−１の推定値、すなわちｎ−１番目のベクトルｘｎ−１の推定値は以下の（３２）式で求められる。
【０１４３】
【数３２】
2014025715.tif 000034
【０１４４】
したがって、ｎ番目のベクトルｘｎの推定値は、上記（３２）式を（３１）式に代入し、（３１）式を変形することで、以下に示す（３３）式として表される。
【０１４５】
【数３３】
2014025715.tif 000035
【０１４６】
そして、この（３３）式を変形することにより、以下の（３４）式を得る。
【数３４】
2014025715.tif 000036
【０１４７】
上記（３４）式を用いることにより、（３３）式の右辺の第３項はｋｎ×ｙｎと簡略化できることから、（３３）式から以下に示す（３５）式のベクトルｘの漸化式を導くことができる。
【０１４８】
【数３５】
2014025715.tif 000037
【０１４９】
上記（３５）式は、（８）式及び（１０）式を統合した式となっている。したがって、上述してきたＲＬＳ法により、最新の磁気測定データＭを用いてオフセットのベクトルｘの更新を行うことにより、常に、ベクトルｘの最尤推定値を得ることができる。
【０１５０】
＜方位角検出装置＞
次に、本発明の一実施形態による磁気測定データ校正装置１を用いた方位角計測装置の動作を以下に示す。
携帯機器に搭載される方位角計測装置には、図１に示す互いに直交する３つの測定軸を有する磁気検出部からなる磁気素子２と、図示されていない３軸加速度センサとを組み合わせた構成が搭載されている。
すなわち、この方位角計測装置は、３軸加速度センサにより重力を検出し、検出した重力の傾きの程度から自身の傾斜角を計算する。
そして、方位角計測装置において、磁気素子２により測定された磁気測定データが、磁気測定データ校正装置１により、オフセットが校正された磁気校正データＭｆを生成する。
方位角計測装置は、磁気測定データ校正装置１から出力される磁気校正データＭｆにより、方位角を算出する。
【０１５１】
以下に、方位角計測部３が行う磁気校正データＭｆによる方位角の算出について説明する。
図６は、３軸加速度センサにより求まる絶対座標系と、３軸磁気素子である磁気計測装置の検出するセンサ座標系との各軸のずれを説明する図である。
図６において、３次元の絶対座標系を校正するＸ軸、Ｙ軸及びＺ軸を定義する。そして、Ｘ軸を回転軸とした回転角度をピッチ角（ｐ）とし、Ｙ軸を回転軸とした回転角度をロール角（ｒ）とし、Ｚ軸を回転軸とした回転角度を方位角（θ）とする。
上記絶対座標系とは、本実施形態においては、重力ベクトルに対してＸ軸とＹ軸とにより形成される平面が垂直であり、磁気素子２の測定する磁気測定データＭ（Ｍｘ，Ｍｙ，Ｍｚ）の全てがゼロとなる地点を原点Ｏとした座標系としている。また、センサ座標系は、磁気素子２が測定する磁気データＭ（Ｍｘ，Ｍｙ，Ｍｚ）が形成する座標系である。このため、磁気素子２が磁気データＭ（Ｍｘ，Ｍｙ，Ｍｚ）を測定する測定点毎にセンサ座標系は異なる。
【０１５２】
しかしながら、ユーザが携帯した携帯機器を、絶対座標系におけるＸ軸及びＹ軸のなす平面と、磁気素子の測定軸、すなわちセンサ座標系におけるＸ軸（Ｍｘの測定軸）及びＹ軸（Ｍｙの測定軸）のなす平面とを平行とすることは困難である。
そのため、磁気素子２により方位角を推定する場合、常に絶対座標系におけるＸ軸及びＹ軸のなす平面に対して、磁気素子２のセンサ座標系におけるＸ方向の測定軸（Ｘ軸検出磁界）とＹ方向の測定軸（Ｔ軸検出磁界）とのなす平面が平行であれば、周囲の環境による磁界の変化などの影響があっても、常に、傾斜センサとして用いた３軸加速度センサの測定する重力ベクトルにより、磁気素子２、すなわち方位角計測装置の傾斜角を正確に測定することができる。
【０１５３】
このときに、方位角計測装置が地表に対して水平状態である場合、３軸加速度センサの出力する加速度計測データを、加速度計測データＳ（Ｓｘ，Ｓｙ，Ｓｚ）とする。一方、方位角計測装置が地表に対して傾斜状態である場合、３軸加速度センサの出力する加速度計測データを、加速度計測データＳ’（Ｓｘ’，Ｓｙ’，Ｓｚ’）とする。
このとき、加速度計測データＳ（Ｓｘ，Ｓｙ，Ｓｚ）と加速度計測データＳ’（Ｓｘ’，Ｓｙ’，Ｓｚ’）との関係は、以下の（３６）式により示される。
【０１５４】
【数３６】
2014025715.tif 000038
【０１５５】
そして、ユーザの携帯する携帯機器が傾斜状態にあるとき、この傾斜状態での重力加速度で規格化された３軸加速度センサの出力を加速度計測データＡ（Ａｘ，Ａｙ，Ａｚ）とすると、地表面に対して方位計測装置が水平状態にある場合、Ａ（Ａｘ，Ａｙ，Ａｚ）＝Ａ（０，０，１）であるため、上記（３６）式は以下に示す（３７）式となる。
【０１５６】
【数３７】
2014025715.tif 000039
【０１５７】
したがって、方位角計測部３は、３軸加速度センサの出力する加速度計測データＡ（Ａｘ，Ａｙ，Ａｚ）を用い、ピッチ角（ｐ）が以下に示す（３８）式から、また、ロール角（ｒ）が以下に示す（３９）式により算出する。
【０１５８】
【数３８】
2014025715.tif 000040
【０１５９】
【数３９】
2014025715.tif 000041
【０１６０】
また、ユーザの携帯する携帯機器が傾斜状態にあるとき、磁気測定データ校正装置１から出力される磁気校正データＭｆを、磁気測定データＭ（Ｍｔｘ，Ｍｔｙ，Ｍｔｚ）とすると、上記（３８）式及び（３９）式の各々から算出されたピッチ角（ｐ）とロール角（ｒ）とにより、以下の（４０）式により、水平状態における磁気測定データＭ（Ｈｘ，Ｈｙ，Ｖ）が求まる。
【０１６１】
【数４０】
2014025715.tif 000042
【０１６２】
したがって、方位角計測部３は、上記（４０）式により算出した磁気測定データＭ（Ｈｘ，Ｈｙ，Ｖ）を用い、以下に示す（４１）式から方位角（θ）を算出する。
【０１６３】
【数４１】
2014025715.tif 000043
【０１６４】
上述したように、本実施形態によれば、環境オフセットを調整し、磁気素子２の出力する磁気測定データＭを校正した（すなわちゼロ磁界における磁気測定データの調整が行われた）磁気校正データＭｆを用い、かつ３軸磁気素子により傾斜状態を補正して方位角を求めることが可能となり、常に、方位角測定装置の検出座標系のＸ軸方向及びＹ軸方向のなす平面と、絶対座標系における地表面とが水平状態であり、かつオフセットが校正がされた磁気測定データを用いることができるため、高い精度で方位角を求めることが実現できる。
【０１６５】
また、図１における磁気測定データ校正装置１の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより磁気測定データＭの校正処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【０１６６】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【０１６７】
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【０１６８】
１…磁気測定データ校正装置  ２…磁気素子  ３…方位角計測部  １０…オフセット有効性判定部  １１…測定データ入力部  １２…共分散行列計算部  １３…共分散行列更新部  １４…記憶部  １５…誤差関数計算部  １６…オフセット残差計算部  １７…オフセット更新部  １８…磁気測定データ処理部  １９…磁気測定データ判定部  ２０…初期化判定部  ２１…Ｘ軸方向磁気検出部  ２２…Ｙ軸方向磁気検出部  ２３…Ｚ軸方向磁気検出部
【図１】
2014025715.tif 000044
【図２】
2014025715.tif 000045
【図３】
2014025715.tif 000046
【図４】
2014025715.tif 000047
【図５】
2014025715.tif 000048
【図６】
2014025715.tif 000049