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