(57)【特許請求の範囲】
【請求項１】
携帯機器に設けられ、該携帯機器の内部磁界による影響を補正しつつ、該携帯機器が向く方位を検出する電子コンパスであって、
上記携帯機器に固定された３軸直交座標系における磁気ベクトルとして地磁気を検出する３軸磁気センサと、
該３軸磁気センサによって得られた上記磁気ベクトルの検出値が、上記携帯機器の姿勢変化に伴って上記３軸直交座標系上に描く方位球の中心点を算出する中心点算出手段と、
上記３軸磁気センサによって得られた上記磁気ベクトルの検出値を、上記方位球の中心点と上記３軸直交座標系の原点とのずれに基づいて補正するとともに、その補正後の検出値を使って上記携帯機器が向く方位を算出する方位算出手段とを備え、
上記中心点算出手段は、上記３軸直交座標系の互いに直交する第１軸と、第２軸と、第３軸とのうち、上記第１軸を、磁北方向に直交する方向へ向けた状態で、該第１軸を中心軸として上記携帯機器を回転させる第１操作が行われている間に、複数個の上記検出値を取得し、上記磁北方向に直交する方向へ上記第２軸を向けた状態で、該第２軸を中心軸として上記携帯機器を回転させる第２操作が行われている間に、複数個の上記検出値を取得し、得られた複数個の上記検出値を用いて上記方位球の上記中心点を算出し、
上記第１操作および上記第２操作における上記中心軸の向きは、該中心軸以外の直交軸が、回転途中に上記磁北方向と平行な方向を向くことになる向きであることを特徴とする電子コンパス。
【請求項２】
請求項１において、上記中心点算出手段は、上記第３軸を、上記磁北方向に直交する方向へ向けた状態で、該第３軸を中心軸として上記携帯機器を回転させる第３操作が行われている間に、複数個の上記検出値を取得し、上記第１操作と、上記第２操作と、上記第３操作とにより取得した上記検出値を用いて、上記方位球の中心点を算出し、上記第３操作における上記中心軸の向きは、該中心軸以外の直交軸が、回転途中に上記磁北方向と平行な方向を向くことになる向きであることを特徴とする電子コンパス。
【請求項３】
請求項１又は請求項２において、上記磁北方向に直交する方向へ向けた上記直交軸を中心軸として上記携帯機器を回転させる操作である回転操作を行った後、所定範囲内の精度で上記方位球の中心点を算出できるか否か確認し、該範囲内の精度で上記中心点を算出できないと判断した場合には、再操作の案内及び／又は精度低下の可能性があることを表示する回転操作方向確認手段を備える電子コンパス。
【請求項４】
請求項１〜請求項３のいずれか１項において、上記３軸磁気センサにより検出された上記磁気ベクトルの検出値から、上記方位球の中心点を仮算出するとともに、その仮算出した中心点と上記３軸直交座標系の原点とのずれに基づいて、上記３軸磁気センサによって得られた上記磁気ベクトルの検出値を補正し、補正後の上記磁気ベクトルの向きを上記磁北方向として出力する磁北方向仮算出手段を備えることを特徴とする電子コンパス。
【請求項５】
請求項１〜請求項４のいずれか１項において、上記回転操作は、上記携帯機器を各々１８０°以上回転させる操作であることを特徴とする電子コンパス。
【請求項６】
請求項１〜請求項５のいずれか１項において、上記中心点算出手段は、上記回転操作のそれぞれにおいて、上記中心軸にした軸以外の２つの軸のうちいずれか一方の軸における、上記磁気ベクトルの成分が最大となる最大検出値および、該成分が最小となる最小検出値を、上記中心点の算出に用いることを特徴とする電子コンパス。
【請求項７】
請求項４〜請求項６のいずれか１項において、上記回転操作において、上記磁北方向仮算出手段により求めた上記磁北方向に直交する方向を、上記携帯機器の表示部に表示させる出力手段を備えることを特徴とする電子コンパス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３軸磁気センサを備えた電子コンパスに関する。
【背景技術】
【０００２】
従来から、携帯機器に設けた３軸磁気センサを使って方位を求める電子コンパスが知られている。電子コンパスは、３軸磁気センサを使って地磁気ベクトルを検出し、その検出した地磁気ベクトルに基づいて携帯機器の向く方位を算出する。そして、携帯機器の表示部に方位を表示する。
【０００３】
携帯機器には、３軸磁気センサの他に多くの電子部品が搭載されている。そのため、この電子部品によって携帯機器の内部に磁界（内部磁界）が発生し、３軸磁気センサによる地磁気ベクトルの検出値が不正確になる場合がある。３軸磁気センサの検出値が不正確になると、携帯機器が向く方位を正確に算出できなくなってしまう。この不具合を解決するため、携帯機器の内部磁界によって生じる、３軸磁気センサの検出誤差を補正できる電子コンパスが開発されている（下記特許文献１、２参照）。
【０００４】
内部磁界の影響を補正するためには、例えば以下の方法が用いられる。
携帯機器の姿勢を変化させると、３軸磁気センサによる地磁気ベクトルの検出値が変化する。図１４に示すごとく、この検出値Ｐは、携帯機器の姿勢変化に伴って、３軸磁気センサの３軸直交座標系（Ｘ，Ｙ，Ｚ）上に球（以下、方位球と記す）を描く。内部磁界の影響があると、方位球９の中心点Ｏ’は３軸直交座標系の原点Ｏとは一致せず、オフセットする。方位球９の中心点Ｏ’の座標を算出すれば、３軸直交座標系の原点Ｏと、方位球の中心点Ｏ’とのずれ（ＯＯ’ベクトル）を使って、下記数式から、３軸磁気センサの検出値（ＯＰベクトル）を補正し、内部磁界の影響を受けない正確な地磁気ベクトル（Ｏ’Ｐ）を求めることができる。これにより、携帯機器の正確な方位を算出することが可能になる。
【０００５】
【数１】
0005309373.tif 000002
【０００６】
方位球９の中心点Ｏ’を正確に算出するためには、携帯機器をあらゆる方向へ万遍なく向けることにより、３軸磁気センサの検出値Ｐを、方位球９上の広い範囲にわたって取得することが好ましい。このようにすると、方位球９を正確に求めることができ、方位球９の中心点Ｏ’も正確に算出することができる。反対に、３軸磁気センサの検出値Ｐが方位球９上の一部の位置に偏って存在していると、方位球９およびその中心点Ｏ’を正確に算出しにくくなる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００７−１３９７１５号公報
【特許文献２】特開２００８−２４１６７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、携帯機器をあらゆる方向へ向ける操作を行わせることは、ユーザに大きな負担となる。また、簡単な操作を行っただけでは、３軸磁気センサの検出値Ｐを、方位球９上の狭い範囲内でしか取得できないことが多く、方位球９およびその中心点Ｏ’を正確に算出しにくくなる。
【０００９】
すなわち、地磁気に伏角があるため、赤道付近を除き地磁気ベクトルは水平面に対して傾いており、北半球では下向きに傾いているため、北半球において、例えば図１４に示すごとく、鉛直上方を向いているＺ軸を中心軸として携帯機器を水平面に平行な面で回転する操作を行うと、３軸磁気センサの検出値Ｐを、方位球９の下方の狭い範囲内でしか取得できない。従って、この操作で取得可能な検出値群からなる円を含む平面は、方位球９の中心点Ｏ’を含まないだけでなく、中心点Ｏ’からかなり離れた平面となってしまうため、この操作により得たデータから方位球９の中心点Ｏ’の座標を算出することは可能であるものの、算出誤差が小さく精度の高い中心点Ｏ’の座標を求めることは困難である。
【００１０】
このように、簡単な操作では方位球９の中心点Ｏ’を正確に算出しにくく、また、携帯機器をあらゆる方向へ万遍なく向ける操作を行えば、方位球９の中心点Ｏ’を正確に算出できるものの、ユーザの負担が大きいという問題がある。
【００１１】
本発明は、かかる問題点に鑑みてなされたもので、簡単な操作で方位球の中心点を正確に算出できる電子コンパスを提供しようとするものである。
【課題を解決するための手段】
【００１２】
本発明は、携帯機器に設けられ、該携帯機器の内部磁界による影響を補正しつつ、該携帯機器が向く方位を検出する電子コンパスであって、
上記携帯機器に固定された３軸直交座標系における磁気ベクトルとして地磁気を検出する３軸磁気センサと、
該３軸磁気センサによって得られた上記磁気ベクトルの検出値が、上記携帯機器の姿勢変化に伴って上記３軸直交座標系上に描く方位球の中心点を算出する中心点算出手段と、
上記３軸磁気センサによって得られた上記磁気ベクトルの検出値を、上記方位球の中心点と上記３軸直交座標系の原点とのずれに基づいて補正するとともに、その補正後の検出値を使って上記携帯機器が向く方位を算出する方位算出手段とを備え、
上記中心点算出手段は、上記３軸直交座標系の互いに直交する第１軸と、第２軸と、第３軸とのうち、上記第１軸を、磁北方向に直交する方向へ向けた状態で、該第１軸を中心軸として上記携帯機器を回転させる第１操作が行われている間に、複数個の上記検出値を取得し、上記磁北方向に直交する方向へ上記第２軸を向けた状態で、該第２軸を中心軸として上記携帯機器を回転させる第２操作が行われている間に、複数個の上記検出値を取得し、得られた複数個の上記検出値を用いて上記方位球の上記中心点を算出し、
上記第１操作および上記第２操作における上記中心軸の向きは、該中心軸以外の直交軸が、回転途中に上記磁北方向と平行な方向を向くことになる向きであることを特徴とする電子コンパスにある（請求項１）。
【発明の効果】
【００１３】
上記電子コンパスにおいては、上記第１操作と上記第２操作とが行われている間に、３軸磁気センサを用いて磁気ベクトルの検出値を複数個取得する。そして、得られた複数個の検出値を用いて方位球の中心点を算出する。
このようにすると、簡単な操作で、方位球の中心点を正確に算出することができる。すなわち、上記電子コンパスにおいては、まずユーザが、磁北がどの方向になるかを予め確認する。この確認は、上記電子コンパス内の３軸磁気センサの検出値を用いて、磁北が自動的に算出され画面に表示されるようにしておき、その画面をユーザが確認するようにしても良いし、ユーザが独自に準備した地図や方位磁針等から確認するようにしてもよい。なお、ここで言う磁北方向とは、伏角も考慮した方向である。但し、地図や方位磁針等で磁北方向を確認した場合は、伏角は正確に分からない場合が多いので、その場合はいずれかの軸を水平面上で磁北と同じ方向に向け、水平面に対し垂直な方向に回転操作すればよい。これにより、実質上同一の回転操作を行うことができる。なお、地図で磁北を確認する場合は、真北とのずれ（偏角）があるので、注意が必要となる。
【００１４】
上記第１操作を行う際には、磁北方向に直交する方向に第１軸が向いた状態で、該第１軸を中心軸として上記携帯機器を回転させる。この際、第１軸は磁北方向に直交しており、かつ第１軸の向きは、回転途中に中心軸以外の直交軸である第２軸と第３軸が磁北方向と平行になる方向を向くことになる向き、すなわち言い換えれば磁北と同一の向きを通ることになる向きに決められているので、該第１軸を中心軸として携帯機器を回転させると、第２軸と第３軸とを含む平面内において、３軸磁気センサの検出値を取得することができる。なお、前記した磁北と同一の向きを通るとは、完全に磁北と一致する場合だけでなく、若干ずれた方向を通る場合も当然含まれる。すなわち、可能な限り磁北と同一の向きを通るように回転させるという意味である。また、前記した条件を満足する磁北と直交する方向は必ず２つの方向があるが、伏角があることから一方の方向は水平面と平行にならず、残りの１方向は水平面と平行な向きとなる。従って、上記回転操作は、この水平面と平行となる方を回転軸として操作した方が、ユーザが操作しやすく、精度の良い検出値が得られやすいため、より好ましい。なお、この点は後述の第２操作、第３操作においても同様である。従って、後述の出力手段に表示する際は、水平面と平行となる方向を表示させることが好ましい。
【００１５】
また、上記第２操作を行う際には、第２軸は磁北方向に直交しており、かつ第２軸は回転途中に第１軸と第３軸が磁北と同一の向きを通るように決められているので、該第２軸を中心軸として携帯機器を回転させると、第１軸と第３軸とを含む平面内において、３軸磁気センサの検出値を取得することができる。
第２軸と第３軸とを含む平面と、第１軸と第３軸とを含む平面とは互いに直交しているため、これら２つの平面内で３軸磁気センサの検出値を取得することにより、得られる検出値群からなる平面は、磁北方向を正確に確認できていれば、方位球の中心点Ｏ’を含む平面となり、仮に正確でなく若干真の磁北とずれがあったとしても、得られる検出値群からなる点で形成される円の半径は、方位球の半径にかなり近い値となる。従って、２つの直交する平面であって、かつ方位球の中心点を通る（又は通らないとしても非常に近い位置を通る）平面上の検出値を取得することができ、方位球上において、互いに方位球の直径と等しいか直径に近い距離だけ離れた２点の組み合わせからなる３軸磁気センサの検出値を容易に取得することが可能になる。そのため、方位球およびその中心点を正確に算出することが可能になる。
【００１６】
また、第１操作と第２操作は、比較的簡単な操作であるため、携帯機器のユーザにこの操作を行わせても、ユーザにとって大きな負担とはならない。
【００１７】
以上のごとく、本発明によれば、簡単な操作で方位球の中心点を正確に算出できる電子コンパスを提供することができる。
【図面の簡単な説明】
【００１８】
【図１】実施例１における、電子コンパスの概念図。
【図２】実施例１における、携帯機器の一部透視斜視図。
【図３】実施例１における、電子コンパスのブロック図。
【図４】実施例１における、第１操作の説明図。
【図５】図４に続く図。
【図６】図５に続く図。
【図７】実施例１における、第２操作の説明図。
【図８】図７に続く図。
【図９】図８に続く図。
【図１０】実施例１における、第１操作と第２操作とを行った場合の、磁気ベクトルの検出値を、方位球上に表した図。
【図１１】実施例１における、電子コンパスのフローチャート。
【図１２】実施例１における、３軸磁気センサの斜視図。
【図１３】実施例３における、磁気ベクトルの検出値の取得例を説明するための図。
【図１４】従来例における、携帯機器を回転操作した場合の、磁気ベクトルの測定値を、方位球上に現した図。
【発明を実施するための形態】
【００１９】
上述した本発明における好ましい実施の形態につき説明する。
また、上記中心点算出手段は、上記第３軸を、上記磁北方向に直交する方向へ向けた状態で、該第３軸を中心軸として上記携帯機器を回転させる第３操作が行われている間に、複数個の上記検出値を取得し、上記第１操作と、上記第２操作と、上記第３操作とにより取得した上記検出値を用いて、上記方位球の中心点を算出し、上記第３操作における上記中心軸の向きは、該中心軸以外の直交軸が、回転途中に上記磁北方向と平行な方向を向くことになる向きであることが好ましい（請求項２）。
この場合には、互いに直交する２つの軸（第１軸および第２軸）で回転した検出値だけでなく、もう一つの直交軸（第３軸）を回転軸として回転操作したデータを取得することができるので、中心点の算出精度をさらに向上させることができる。
なお、この場合においても回転途中に回転軸となる第３軸以外の直交軸である第１軸、第２軸の向きが、磁北方向と同一の向きを通るように回転させるという点は請求項１と同様である。
【００２０】
また、上記磁北方向に直交する方向へ向けた上記直交軸を中心軸として上記携帯機器を回転させる操作である回転操作を行った後、所定範囲内の精度で上記方位球の中心点を算出できるか否か確認し、該範囲内の精度で上記中心点を算出できないと判断した場合には、再操作の案内及び／又は精度低下の可能性があることを表示する回転操作方向確認手段を備えることが好ましい（請求項３）。
ここで上記回転操作とは、２つの直交軸で回転操作する場合は、上記第１操作と上記第２操作の２回の回転操作を意味し、３つの直交軸全てで回転操作する場合は、上記第１操作と上記第２操作と上記第３操作の３回の回転操作を意味する（後述の請求項５〜７も同様）。
本発明は、人が回転操作することになるため、磁北方向を精確に把握できていたとしても、操作の際に正しい方向に回転できない場合が生じる可能性がある。また、確認した磁北方向が真の磁北と若干ずれが生じている場合も考えられる。従って、上記回転操作を行った後、検出した値から正しい操作がされたかどうかを確認し、確認した結果、操作に問題があった場合には、ユーザに再操作を要求するか及び／又は、精度が充分に確保できないおそれがある旨の表示をすることが好ましい。
検出した値から確認する方法としては、例えば、後述の実施例３、実施例４において、６箇所それぞれ２点ずつ取得されたデータの距離が、所定の値以下になっているかをチェックしたり、請求項６で検出する最大検出値と最小検出値間の距離が地磁気の約２倍の値となっているかを確認する等の方法がある。
【００２１】
また、上記３軸磁気センサにより検出された上記磁気ベクトルの検出値から、上記方位球の中心点を仮算出するとともに、その仮算出した中心点と上記３軸直交座標系の原点とのずれに基づいて、上記３軸磁気センサによって得られた上記磁気ベクトルの検出値を補正し、補正後の上記磁気ベクトルの向きを上記磁北方向として出力する磁北方向仮算出手段を備えることが好ましい（請求項４）。
このようにすると、電子コンパスを用いて磁北方向を確認できるため、ユーザは地図や方位磁針等を別途用意する必要がない。
本発明の電子コンパスにおいて方位球の中心点を算出する際には、まず、上記磁北方向仮算出手段を用いて、磁北方向がどちらであるかを事前に確認する。すなわち、磁北方向仮算出手段を用いて、ユーザが磁北方向を確認した後で、必要な回転操作を行う。
この磁北方向の確認は、上述したように、携帯機器内の３軸磁気センサによる地磁気ベクトルの検出値から方位球の中心点を仮算出し、この仮算出された中心点に基づいてオフセット補正することにより算出された磁北の向きを利用することもできる。このように求めた磁北の向きは、上記中心点算出手段によって算出した方位球の中心点と比べれば、精度が劣るものの、少なくとも、ある程度の誤差の範囲内の精度が確保されている。従って、このようにして求めた磁北の向きを利用することにより、ユーザが地図等他の情報源に頼ることなく、ある程度正確な磁北方向を把握することができ、その向きを利用して上記第１操作と第２操作又はさらに第３操作をすることにより、方位球の中心点を便利良く、かつ正確に算出することができる。
【００２２】
本発明において、上記回転操作は、上記携帯機器を各々１８０°以上回転させる操作であることが好ましい（請求項５）。
この場合には、第１操作〜第３操作において、携帯機器を回転させる角度が大きいため、方位球上の広い範囲で、３軸磁気センサの検出値を取得しやすい。そして、特に各々１８０°以上回転させることによって、方位球の中心点を通る直線と方位球の交点の２点、すなわち、互いに方位球の直径だけ離れた２点の組み合わせとなる点を取得することが可能となる。勿論、実際に、磁北方向仮算出手段により仮算出された磁北方向は若干の誤差を含む場合もあるが、少なくとも方位球の直径にかなり近い距離離れた２点の組み合わせからなる測定点を取得することができる。そのため、方位球およびその中心点をより正確に算出することが可能になる。
なお、回転角度を２７０°以上とすると、互いに方位球の直径だけ離れた２点の組み合わせを２組取得できるので、より好ましい。また、１回転させれば、後述の請求項６に記載の最大検出値、最小検出値の組み合わせを確実に２組取得することが可能になる。
【００２３】
また、上記中心点算出手段は、上記回転操作のそれぞれにおいて、上記中心軸にした軸以外の２つの軸のうちいずれか一方の軸における、上記磁気ベクトルの成分が最大となる最大検出値および、該成分が最小となる最小検出値を、上記中心点の算出に用いることが好ましい（請求項６）。
このようにすると、上記最大検出値および上記最小検出値は方位球上において互いに方位球の直径と略等しい距離だけ離れているため、方位球の中心点をより正確に算出することが可能になる。
【００２４】
また、上記回転操作において、上記磁北方向仮算出手段により求めた上記磁北方向に基づいて、上記中心軸とする、上記磁北方向に直交する方向を、上記携帯機器の表示部に表示させる出力手段を備えることが好ましい（請求項７）。
この場合には、中心軸とすべき方向が表示部に表示されているので、ユーザは、その方向に第１軸〜第３軸を容易に向けることができる。そのため、第１操作〜第３操作を容易に行うことが可能になる。
なお、この表示の際に、２方向ある磁北方向に直交する方向のうち、水平面に平行となる方向を表示した方がより好ましいことは前記した通りである。
【実施例】
【００２５】
（実施例１）
本発明の実施例にかかる電子コンパスにつき、図１〜図１２を用いて説明する。
図２に示すごとく、本例の電子コンパス１は、携帯機器２に設けられている。電子コンパス１は、携帯機器２の内部磁界による影響を補正しつつ、携帯機器２が向く方位を検出する。
図１に示すごとく、電子コンパス１は、３軸磁気センサ３と、中心点算出手段４と、方位算出手段５と、磁北方向仮算出手段８と、回転操作方向確認手段１９とを備える。
【００２６】
図２に示すごとく、３軸磁気センサ３は、携帯機器２に固定された３軸直交座標系における磁気ベクトルＭとして地磁気を検出する。
中心点算出手段４は、３軸磁気センサ３によって得られた磁気ベクトルＭの検出値が、携帯機器２の姿勢変化に伴って３軸直交座標系上に描く方位球７（図１０参照）の中心点Ｏ’を算出する。
方位算出手段５は、３軸磁気センサ３によって得られた磁気ベクトルＭの検出値（ＯＰベクトル）を、方位球７の中心点Ｏ’と３軸直交座標系の原点Ｏとのずれ（ＯＯ’ベクトル）に基づいて補正する。そして、補正後の検出値（Ｏ’Ｐベクトル）を使って携帯機器２が向く方位を算出する。
【００２７】
中心点算出手段４は、図４〜図６に示すごとく、３軸直交座標系の互いに直交する第１軸（Ｘ軸）と、第２軸（Ｙ軸）と、第３軸（Ｚ軸）とのうち、第１軸（Ｘ軸）を、磁北方向Ｎに直交する方向へ向けた状態で、該第１軸（Ｘ軸）を中心軸として携帯機器２を回転させる第１操作が行われている間に、複数個の検出値を取得する。また、図７〜図９に示すごとく、中心点算出手段４は、磁北方向Ｎに直交する方向へ第２軸（Ｙ軸）を向けた状態で、該第２軸（Ｙ軸）を中心軸として携帯機器２を回転させる第２操作が行われている間に、複数個の検出値を取得する。そして、中心点算出手段４は、得られた複数個の検出値を用いて方位球７の中心点Ｏ’を算出する。
なお、上記第１操作と第２操作における回転軸は、回転軸とした以外の直交軸が回転途中に磁北方向Ｎと同一の方向を向くように調整されている。
磁北方向仮算出手段８は、中心点算出手段４で行う第１操作、第２操作の回転操作を行う前に、この回転操作時の携帯機器を向ける方向を決めるために、磁北方向Ｎを３軸磁気センサにより得られる磁気ベクトルＭのデータ群より計算する手段であり、３軸磁気センサ３より取得した磁気ベクトルデータ群から方位球７の中心点Ｏ’を仮算出し、この仮算出した中心点Ｏ’の値と３軸直交座標系の原点Ｏとのずれに基づいて、磁気ベクトルＭの検出値を補正し、その補正後の磁気ベクトルＭの向きを磁北方向Ｎとして出力する。
回転操作方向確認手段１９は、第１操作、第２操作による回転操作の方向が磁北方向Ｎを含む平面と許容範囲内のずれの範囲内で回転操作されているかどうかを、第１操作、第２操作によって取得した磁気ベクトルＭより確認し、必要に応じて再操作の表示を行う。
以下、詳説する。
【００２８】
図２に示すごとく、携帯機器２には３軸磁気センサ３、マイコン１００が搭載されている。また、これらの他に、複数の電子部品２００が搭載されている。電子部品２００によって携帯機器２の内部には磁界が発生しており、この磁界の影響を３軸磁気センサ３が受けている。
また、携帯機器２は表示部２０を備える。この表示部２０に方位が表示される。
【００２９】
図３に示すごとく、マイコン１００は、ＣＰＵ１０と、ＲＯＭ１１と、ＲＡＭ１２と、Ｉ／Ｏ１４と、これらを繋ぐライン１３とを備える。ＲＯＭ１１はプログラム１１ｐを記憶している。ＣＰＵ１０がＲＯＭ１１のプログラム１１ｐを読み出して実行することにより、本例の中心点算出手段４、方位算出手段５、出力手段６、磁北方向仮算出手段８、回転操作方向確認手段１９が実現される。
また、マイコン１００には３軸磁気センサ３と表示部２０が接続している。３軸磁気センサ３は、例えば数ｍ秒毎に磁気ベクトルを検出し、その検出値をマイコン１００に送信している。
【００３０】
３軸磁気センサ３は、図１２に示すごとく、マグネト・インピーダンス・センサ素子３０によって構成してある。即ち、３軸磁気センサ３は、３個のマグネト・インピーダンス・センサ素子３０を、それぞれの感磁方向が互いに直交する３軸方向（Ｘ軸方向、Ｙ軸方向、Ｚ軸方向）となるように配設することにより、形成してある。
【００３１】
一方、３軸磁気センサ３は携帯機器２の内部磁界の影響を受けるため、図１０に示すごとく、３軸磁気センサ３の方位球７の中心点Ｏ’は、３軸磁気センサ３の原点Ｏからずれている。方位球７は、３軸磁気センサ３の検出値Ｐ（Ｘｉ，Ｙｉ，Ｚｉ）が、携帯機器２の姿勢変化に伴って３軸直交座標系上に描いた軌跡である。図１０に示すＯ’Ｐベクトルは、内部磁界の影響を受けていない正確な地磁気ベクトルを表している。地磁気ベクトルＯ’Ｐの大きさ｜Ｏ’Ｐ｜は地球上の場所によっては変化するが、大きく移動しない範囲で連続して使用するのであれば一定とみなすことができるので、携帯機器２を回転させると、検出値Ｐの描く軌跡は球になる。
【００３２】
ＯＯ’ベクトルは、３軸直交座標系の原点Ｏと方位球７の中心点Ｏ’とのずれを表している。方位球の中心点Ｏ’を正確に算出できれば、内部磁界の影響を受けた３軸磁気センサ３の検出値（ＯＰベクトル）を、下記数式を使って補正することができ、内部磁界の影響を受けない３軸磁気センサ３の検出値（Ｏ’Ｐベクトル）を求めることができる。これにより、正確な方位を算出することが可能になる。
【００３３】
【数２】
0005309373.tif 000003
【００３４】
方位球７の中心Ｏ’を正確に行うためには、上述した第１操作と第２操作とを行うが、第１操作と第２操作を行うためには、事前に磁北方向Ｎを確認する必要がある。本例では、磁北方向仮算出手段８を用いて磁北方向Ｎを確認する。
磁北方向仮算出手段８は、所定の時間内に検出された３軸磁気センサ３により取得された磁気ベクトルデータ群を利用し、このデータ群から方位球７の中心点Ｏ’を仮算出する。なお、この磁気ベクトルデータ群は特にユーザに回転操作を要求することなく、ユーザが携帯機器２を操作する際の姿勢変化を利用して自動的に取得したものを使用してもよいし、水平面で回転する等の従来既に提案されているオフセット補正用データ取得のための携帯機器２の操作方法を行って、取得するようにしても良い。
【００３５】
そして、得られた磁気ベクトルデータ群から、方位球７の中心点Ｏ’を仮算出する。この仮算出の方法としては、従来から既に提案されているように、上記磁気ベクトルデータ群の各点との距離のばらつき（標準偏差）が最も小さくなる点を選択する方法、データ群の中から方位球上にできるだけ離れた点を４点以上選択し、選択した点から中心点を算出する方法等が選択できる。
【００３６】
この仮算出した方位球７の中心点Ｏ’の値に基づいて上記磁気ベクトルデータ群を補正することにより、磁北方向Ｎは容易に求めることができる。磁北方向仮算出手段８によって求めた磁北方向Ｎは、中心点補正手段４を使って算出した磁北方向Ｎと比較して若干精度が劣るものの、ある程度正確な精度が確保されている。従って、後述する第１操作、第２操作において、ここで求めた磁北方向Ｎを基準に回転操作することによって、極めて精度の高いオフセット補正が可能となる。
【００３７】
そして、次に、第１操作を行う際には、携帯機器２のユーザは、図４に示すごとく、第１軸（Ｘ軸）を前記した磁北方向仮算出手段８により求めた磁北方向Ｎに直交する方向へ向ける。その後、第１軸（Ｘ軸）を中心軸として携帯機器２を回転させる。この第１軸を向けた方向は前記の通り他の直交軸が回転途中に磁北方向を向くように調整されているため、このようにすると、図５に示すごとく、第３軸（Ｚ軸）が磁北方向Ｎと瞬間的に同一方向を向く。この時の３軸磁気センサ３の検出値が、図１０のＡ点に相当する。
第１軸（Ｘ軸）を中心軸としてさらに回転させると、第２軸（Ｙ軸）が磁北方向Ｎと瞬間的に同一方向を向き（Ｅ点）、さらに第１軸（Ｘ軸）を中心軸として回転させると、図６に示すごとく、第３軸（Ｚ軸）が磁北方向Ｎと瞬間的に反対方向を向く。この時の３軸磁気センサ３の検出値が、図１０のＢ点に相当する。そして、さらに回転させると同様に第２軸が磁北方向Ｎと瞬間的に反対方向を向く（Ｆ点）。
このＡ点とＢ点及びＥ点とＦ点は、前記した磁北方向仮算出手段８により求めた磁北方向Ｎが正確であれば、方位球７上で互いに方位球７の直径だけ離れた点となり、その中点が方位球７の中心点Ｏ’となる。また、仮に前記した磁北方向仮算出手段８により求めた磁北方向Ｎがオフセット補正時の誤差等によって若干ずれていたとしても、方位球７上において互いに方位球７の直径にかなり近い距離だけ離れた測定点となる。
【００３８】
また、第２操作を行う際には、携帯機器２のユーザは、図７に示すごとく、第２軸（Ｙ軸）を前記した磁北方向仮算出手段８により求めた磁北方向Ｎに直交する方向へ向ける。その後、第２軸（Ｙ軸）を中心軸として携帯機器２を回転させる。このようにすると、第１操作と同様な理由で、図８に示すごとく、第１軸（Ｘ軸）が磁北方向Ｎと瞬間的に同一方向を向く。この時の３軸磁気センサ３の検出値が、図１０のＣ点に相当する。
第２軸（Ｙ軸）を中心軸としてさらに回転させると、第３軸（Ｚ軸）が磁北方向Ｎと瞬間的に同一方向を向き（Ａ点）、さらに第２軸（Ｙ軸）を中心軸として回転させると、図９に示すごとく、第１軸（Ｘ軸）が磁北方向Ｎと瞬間的に反対方向を向く。この時の３軸磁気センサ３の検出値が、図１０のＤ点に相当する。そして、さらに回転させると同様に第３軸が磁北方向Ｎと瞬間的に反対方向を向く（Ｂ点）。
このＣ点とＤ点も、Ａ点とＢ点及びＥ点とＦ点の関係と同様に、方位球７上で互いに方位球７の直径に等しいかそれに近い距離だけ離れた測定点になるとともに、ＡＢを結ぶ直線とＣＤを結ぶ直線、ＥＦを結ぶ直線は、図１０に示すように互いに直交することになる。
【００３９】
このように本例では、第１操作と第２操作において、携帯機器２を互いに方位球の直径と等しいか、直径に近い距離だけ離れ、中心軸以外の軸における成分が最大となる点と最小となる点の組み合わせを２組取得するのに必要な角度（少なくとも２７０°以上）回転させている。
【００４０】
また、本例では、上記Ａ点〜Ｆ点を使って方位球７の中心点Ｏ’を算出している。すなわち、本例の電子コンパス１は、第１操作において、中心軸にした軸（Ｘ軸）以外の２つの軸（Ｙ軸、Ｚ軸）それぞれの、磁気ベクトルＭの成分が最大となる最大検出値（Ａ点、Ｅ点）および、該成分が最小となる最小検出値（Ｂ点、Ｆ点）を、中心点Ｏ’の算出に用いる。また、第２操作において、中心軸にした軸（Ｙ軸）以外の２つの軸（Ｘ軸、Ｚ軸）それぞれの、磁気ベクトルＭの成分が最大となる最大検出値（Ｃ点、Ｅ点）および、該成分が最小となる最小検出値（Ｄ点、Ｅ点）を、中心点Ｏ’の算出に用いる。
このＡ〜Ｆの６点は、従来の方法でオフセット補正用のデータを取得した場合のように、測定点の方位球７上の一部の領域に偏在しておらず、かつ、Ａ点とＢ点、Ｃ点とＤ点、Ｅ点とＦ点は互いに方位球７上で最も離れた点となることから、方位球７の中心点Ｏ’を求める最適な測定点となるため、従来のオフセット補正に比べ補正誤差を大幅に小さく抑えることができる。
【００４１】
なお、第１操作、第２操作は、ユーザが手動で操作するので、場合によっては狙いとする方向からずれが生じた状態で回転操作してしまう可能性がある。このような場合においてそのまま何らのチェックを行うことなく方位球の中心点を求めてしまうと、せっかくの発明の効果が充分に得られず、オフセット補正の精度を小さく抑えることができない原因となる。そこで、本発明では、回転操作方向確認手段１９によりこれをチェックする。
【００４２】
ここで、第１操作及び第２操作の回転操作方向が問題なければ、第１操作によって取得するＡ点、Ｂ点の位置（第３軸方向の最大検出値と最小検出値）と第２操作によって取得するＡ点、Ｂ点の方位球上の位置は一致するか、少なくとも互いに近い位置となるはずであり、狙いとする回転操作方向からのずれが大きくなると、両操作で取得した２点のＡ点間の方位球上の距離と２点のＢ点間の方位球上の距離が大きくなる。そこで、第１操作と第２操作において、第３軸方向の成分が最大となる検出値と最小となる検出値を取得しておき、この両者の点の距離を計算する。そして、この距離が予め決められた閾値を超える場合には、再操作が必要である旨の表示を行うことにより、回転操作方向が問題ないかどうかをチェックする。このチェックにより回転操作方向に問題がないと判断された場合は、中心点Ｏ’を精度良く算出可能であると判断する。
【００４３】
また、本例の電子コンパス１は、図１、図２に示すごとく、第１操作および第２操作において、磁北方向仮算出手段８により求めた磁北方向Ｎに直交する方向Ｒを、携帯機器２の表示部２０に表示させる出力手段６を備える。ユーザは、例えば第１操作を行う際には、表示された方向Ｒに第１軸（Ｘ軸）を向け、その後、第１軸（Ｘ軸）を中心軸として携帯機器２を回転させる。同様にして、第２操作を行う際には、表示された方向Ｒに第２軸（Ｙ軸）を向け、その後、第２軸（Ｙ軸）を中心軸として携帯機器２を回転させる。
【００４４】
次に、図１１のフローチャートを用いて、図３に記したプログラム１１ｐの説明をする。まず最初に、予め３軸磁気センサにより磁気ベクトルＭを繰り返し取得し、検出値を保存しておく（ステップＳ１）。そして、プログラム１１ｐを開始すると、電子コンパス１は、既に取得されている磁気ベクトルデータ群を用いて、方位球７の中心点Ｏ’を仮算出し、その仮算出した中心点Ｏ’に基づいてオフセット補正し、磁北方向Ｎを算出する（ステップＳ２）。この際、用いた磁気ベクトルデータ群が方位球７上の一部の領域に偏在している場合も当然あり得るため、その精度は後述のステップＳ７により求めた中心点Ｏ’と比較すると方位算出の精度が若干劣るが、少なくとも大きくはずれない磁北方向Ｎを求めることができる。そして、この求められた磁北方向Ｎに直交する方向Ｒを表示部２０に表示し、第１操作を行うようユーザに報知する（ステップＳ３）。この際、磁北方向Ｎに直交する方向は３次元空間上で２方向あるが、そのうち水平面に平行となる方向を表示した方が後の回転操作がしやすいので、より好ましい。そして、その後、ユーザが第１操作を行っている間、３軸磁気センサ３を使って磁気ベクトルＭを検出する（ステップＳ４）。
【００４５】
ステップＳ４の後、電子コンパス１は、ステップＳ３と同様に、磁北方向Ｎに直交する方向Ｒを表示部２０に表示し、第２操作を行うようユーザに報知する（ステップＳ５）。その後、ユーザが第２操作を行っている間、３軸磁気センサ３を使って磁気ベクトルＭを検出する（ステップＳ６）。
【００４６】
ステップＳ６の後、第１操作と第２操作による回転操作方向が問題ないかどうかをチェックする（ステップＳ７）。具体的には、第１操作と第２操作で共通して取得できるはずの第３軸（Ｚ軸）成分の最大検出値となる点と最小検出値となる点の２点間の距離を計算し、この算出した距離と所定の閾値とを比較する。そして、閾値以下である場合には、回転操作方向が問題ないと判断し、ステップＳ９に進む。閾値を超える場合には、回転操作方向が予定していた方向からずれていたと判断し、ステップＳ８に進み、再操作の必要があることを報知し、再度ステップＳ３に戻る。
【００４７】
ステップＳ７により回転操作方向が問題ないと判断できた場合は、電子コンパス１は、取得した複数の検出値を使って、方位球７の中心点Ｏ’を算出する（ステップＳ９）。その後、方位球７の中心点Ｏ’と、３軸直交座標系の原点Ｏとのずれに基づいて、検出した磁気ベクトルＯＰ（図１０参照）を補正し、補正後の磁気ベクトルＯ’Ｐを使って、携帯機器２の向く方位を算出する（ステップＳ１０）。
【００４８】
なお、上記説明では、第１軸をＸ軸とし、第２軸をＹ軸とし、第３軸をＺ軸としたが、これらの軸の組み合わせは、任意に定めることができる。
【００４９】
次に、本例の作用効果について説明する。図４〜図９に示すごとく、本例では、第１操作と第２操作とが行われている間に、３軸磁気センサ３を用いて地磁気ベクトルの検出値を複数個、取得する。そして、得られた複数個の検出値を用いて方位球７の中心点Ｏ’を算出する。
このようにすると、簡単な操作で、方位球７の中心点Ｏ’を正確に算出することができる。すなわち、第１操作を行う際には、第１軸（Ｘ軸）は磁北方向Ｎに直交し、かつ第１軸以外の直交軸が回転途中に磁北方向を向くように調整されているため、該第１軸（Ｘ軸）を中心軸として携帯機器２を回転させると、第２軸（Ｙ軸）と第３軸（Ｚ軸）とを含む平面（ＹＺ平面）内において、３軸磁気センサ３の検出値を取得することができる。
【００５０】
また、第２操作を行う際には、第２軸（Ｙ軸）は磁北方向Ｎに直交し、かつ第２軸以外の直交軸が回転途中に磁北方向を向くように調整されているため、該第２軸（Ｙ軸）を中心軸として携帯機器２を回転させると、第１軸（Ｘ軸）と第３軸（Ｚ軸）とを含む平面（ＸＺ平面）内において、３軸磁気センサ３の検出値を取得することができる。
ＹＺ平面とＸＺ平面とは互いに直交しているため、これら２つの平面内で３軸磁気センサ３の検出値を取得することにより、該検出値が方位球７上において偏在することはなくなり、方位球７上の、方位球７の中心点Ｏ’を含む平面上にある３軸磁気センサ３の検出値を取得することが可能になる。そのため、方位球７およびその中心点Ｏ’を、従来のオフセット方法に比べ正確に算出することが可能になる。
【００５１】
また、第１操作と第２操作は、比較的簡単な操作であるため、方位球７上のデータを万遍無く取得しようとする場合と異なり、携帯機器２のユーザにこの操作を行わせても、ユーザにとって大きな負担とはならない。
また、本例においては、第１操作、第２操作を行った後、中心点を算出する前に回転操作方向確認手段１９によって狙いとする方向で回転操作が行われたかどうかを確認する。これにより中心点Ｏ’を精度良く算出可能なデータが取得できているかがチェックされるので、オフセット補正の精度を確実に高めることができる。
【００５２】
また、本例における第１操作と第２操作とは、携帯機器２を各々少なくとも２７０°以上回転させている。
このようにすると、第１操作と第２操作によって、方位球７の中心点Ｏ’を中心とする互いに正反対となる点（互いの距離が方位球７の直径にほぼ等しくなる点）を取得することができる。そのため、方位球７およびその中心点Ｏ’をより正確に算出することが可能になる。
【００５３】
そして、本例では特に２７０°以上回転させることによって、中心点算出手段４は、第１操作および第２操作のそれぞれにおいて、中心軸にした軸以外の２つの軸のそれぞれの軸における、磁気ベクトルＭの成分が最大となる最大検出値（図１０のＡ点、Ｃ点、Ｅ点）および、該成分が最小となる最小検出値（図１０のＢ点、Ｄ点、Ｅ点）２組ずつ取得し、中心点Ｏ’の算出に用いる。
このようにすると、各軸成分の最大検出値と最小検出値の２点の組み合わせ（Ａ点とＢ点、Ｃ点とＤ点、Ｅ点とＦ点）は方位球７上において互いに方位球７の直径に略等しい距離だけ離れており、その中点が方位球７の中心点Ｏ’の位置となるため、方位球７の中心点Ｏ’をより正確に算出することが可能になる。なお、２７０°以上ではなく、３６０°回転させることにしておけば、第１操作、第２操作の回転開始位置の向きに関係なく、確実に１回の回転操作で２組の最大検出値と最小検出値を取得することができる。
【００５４】
また、本例では図１、図２に示すごとく、第１操作および第２操作において、磁北方向仮算出手段８により求めた磁北方向Ｎに直交する方向Ｒを、携帯機器２の表示部２０に表示させる出力手段６を備える。
このようにすると、磁北方向Ｎに直交する方向Ｒが表示部２０に表示されているので、ユーザは、その方向Ｒに第１軸（Ｘ軸）または第２軸（Ｙ軸）を容易に向けることができる。そのため、第１操作および第２操作を容易に行うことが可能になる。
【００５５】
以上のごとく、本例によれば、簡単な操作で方位球の中心点を正確に算出できる電子コンパスを提供することができる。
【００５６】
（実施例２）
実施例１では、磁北方向Ｎに直交する方向Ｒに第１軸を向けて回転操作する第１操作と、同様に第２軸を向けて回転操作する第２操作を行ったが、さらに第３軸（Ｚ軸）を上記方向Ｒへ向けて回転操作する第３操作を行ってもよい。また、第３操作において、第３軸を２７０°以上回転させ、第１軸（Ｘ軸）と第２軸（Ｙ軸）の２軸において磁気ベクトルＭの成分が最大となる最大検出値２点（Ｃ点、Ｅ点）と、該成分が最小となる最小検出値２点（Ｄ点、Ｆ点）を検出することもできる。
このように、３つの回転操作を行うことによって、方位球７の中心点Ｏ’の座標の算出精度をさらに向上させることができる。
その他、実施例１と同様の構成及び作用効果を備える。
【００５７】
（実施例３）
次に、検出した磁気ベクトルＭのデータの処理方法に関して説明する。
既に説明したとおりに第１操作〜第３操作を実施し、直交する各軸の成分が最大となる最大検出値と、最小となる最小検出値を取得した場合、その点は、図１３に示すごとく６点存在するが、１回の回転操作で４点の取得が可能なので、各点毎に２点ずつ、合計１２点のデータを取得することができる。以下、このように最大検出値と最小検出値のデータを取得した場合におけるデータの処理方法に関する実施例について説明する。
【００５８】
まず、最初に２点の距離が所定値以上に離れていないかをチェックし、回転操作方向に問題がないことを確認しておく。そして、問題がないことが確認されたら、方位球７の中心点Ｏ’を求めるには、４点あれば計算可能なので、まず各点毎に取得した２点の平均値を求める。
これにより、６点のデータが取得できるので、このうち４点のデータを選択し、この４点の座標を球の方程式に代入して整理し、連立方程式の解を計算することにより、中心点Ｏ’の座標を計算することができる。
なお、球の方程式は、
（Ｘ−ａ）２＋（Ｙ−ｂ）２＋（Ｚ−ｃ）２＝ｒ２
である（ｒ＝球の半径＝地磁気ベクトルの大きさの絶対値）。
【００５９】
ここで、６点から４点のデータを選択する組み合わせは６Ｃ４＝１５通りとなるが、方位球７の中心点Ｏ’を求める際に同一平面上に存在する４点を選択すると精度が向上しないので、同一平面上の４点を選択する３通りの場合を除くと１２通りの選択方法がある。
従って、１２通りの選択全てについて、上記方法で中心座標を求め、その平均値を計算し、これを球の中心座標として用いることにより、精度の高いオフセット補正が可能になる。
【００６０】
ここで、第３操作を行わず、第１操作と第２操作のみ行った場合には、１２点でなく８点のデータが得られることになり、図１３に示す６箇所ある点のうち、２箇所のみで２点が重複して取得された状態となる。従って、この場合には、この重複している２点のみ平均値を求める。後の処理は、上記と全く同様である。
【００６１】
（実施例４）
次に、実施例３で説明したデータ処理とは別の方法による実施例について説明する。なお、この場合も最初に２点の距離が所定値以上離れていないかをチェックする点については実施例３と同様である。そして、実施例３においては、最初に６箇所の点それぞれ２点ずつデータが取得できていることから、この２点の平均値を求める処理を行ったが、本実施例ではこの処理を行わない。そして、取得できている１２点の検出値から４点全てが同一平面上にならないという条件で４点の検出値を選択する。この選択は、実施例３における１２通りの組み合わせの４点を選択する際において、各点ごとに２通りの場合が存在すると考えればよいことから、１９２通り＝１２通り×２４の組み合わせがある。このそれぞれの場合について選択された４点から実施例３と同様に連立方程式の解を計算すると、１９２通りの中心座標が計算される。
その後、１９２通りの中心座標の平均値を計算し、方位球７の中心点Ｏ’とする。
【００６２】
本発明は、方位球７の中心座標を求めるために、最適と考えられる検出値を求めることによりオフセット誤差の低減を図っている。しかしながら、３軸磁気センサ３の検出値には必ず測定誤差やばらつきがあり、これが、求めた中心座標の精度に影響を与える。しかしながら、本例のように、複数求めた点の平均化処理を行うことにより、１つ１つの求めた値に誤差やばらつきがあっても平均することによって、その誤差やばらつきが打ち消しあうことになるため、より正確な中心座標を求めることができる。
【００６３】
以上説明した例では各軸成分の最大検出値と最小検出値を使う場合について説明したが、本発明は、この場合に限定されるものではない。最大検出値と最小検出値に関係なく、１８０°回転する毎に取得した検出値を用いても前記と同様の精度を得ることが可能であるし、その他の角度間隔毎に取得した検出値から、距離のばらつきが最も小さくなるような点を算出することにより求めることも可能である。
【００６４】
（実験例）
次に、本発明の実験例について説明する。既に記載したとおり、従来は、例えば特にユーザに特定の回転操作を強制せず、取得したデータの中から互いにできるだけ離れた４点を選択（例えば前記特許文献２）することによってオフセット補正を行っていた。このような従来の手法による中心座標の誤差は、最大で５０ｍＧに達する場合があり、中心座標が最大で５０ｍＧばらついた状態で算出されてしまう結果、携帯機器２を水平面内の任意の向きに向けた際に算出される方位誤差として、最大で１０°程度の誤差を避けることができなかった。
それに対し、本発明による前記した実施例４の方法で実験を行い中心座標の誤差を確認したところ、最大で１０ｍＧ以下と従来方法と比べ最大誤差を１／５程度に抑えることができることが確認できた。この結果、水平面内の任意の向きに向けた際の方位誤差も最大で２°程度に抑えることが可能になることを確認できた。
【符号の説明】
【００６５】
１  電子コンパス
１９  回転操作方向確認手段
２  携帯機器
３  ３軸磁気センサ
４  中心点算出手段
５  方位算出手段
６  出力手段
７  方位球
８  磁北方向仮算出手段
Ｏ  ３軸直交座標系の原点
Ｏ’  方位球の中心点
【図１】
0005309373.tif 000004
【図２】
0005309373.tif 000005
【図３】
0005309373.tif 000006
【図４】
0005309373.tif 000007
【図５】
0005309373.tif 000008
【図６】
0005309373.tif 000009
【図７】
0005309373.tif 000010
【図８】
0005309373.tif 000011
【図９】
0005309373.tif 000012
【図１０】
0005309373.tif 000013
【図１１】
0005309373.tif 000014
【図１２】
0005309373.tif 000015
【図１３】
0005309373.tif 000016
【図１４】
0005309373.tif 000017