(57)【要約】  方位が安定するまで方位がずれないようにすることができる方位演算装置及び方位演算方法を提供すること。本発明の方位演算装置は、磁気センサの出力から方位データを演算する方位演算手段と、前記方位データを格納するバッファ手段と、前記バッファ手段に所定の個数だけ格納された前記方位データが所定の範囲内にある時に方位データを出力する制御手段と、を具備することを特徴とする。
2010004873.tif 000002
【特許請求の範囲】
【請求項１】
磁気センサの出力から方位データを演算する方位演算手段と、前記方位データを格納するバッファ手段と、前記バッファ手段に所定の個数だけ格納された前記方位データが所定の範囲内にある時に方位データを出力する制御手段と、を具備することを特徴とする方位演算装置。
【請求項２】
出力した方位データを基準方位として格納する格納手段を備え、前記制御手段が、前記バッファ手段に格納された前記方位データが前記基準方位から所定の角度内にある時に方位データを出力することを特徴とする請求項１記載の方位演算装置。
【請求項３】
前記バッファ手段に格納された前記方位データが所定の範囲内にないときに、前記制御手段が、前記バッファ手段に格納された方位データの少なくとも一部を破棄することを特徴とする請求項１又は請求項２記載の方位演算装置。
【請求項４】
前記バッファ手段に格納された前記方位データが所定の範囲内にないときに、前記制御手段が、前記バッファ手段に格納された方位データのうち、最後に格納された方位データを基準として所定の範囲内にない方位データを破棄することを特徴とする請求項３記載の方位演算装置。
【請求項５】
前記バッファ手段に格納された前記方位データが所定の範囲内にないときに、前記制御手段が前記バッファ手段に格納された方位データのうち最後に格納された方位データを新たな基準方位として格納手段に格納することを特徴とする請求項３記載の方位演算装置。
【請求項６】
磁気センサの出力から方位データを演算する工程と、前記方位データを格納する工程と、所定の個数だけ格納された前記方位データが所定の範囲内にある時に方位データを出力する工程と、を具備することを特徴とする方位演算方法。
【請求項７】
出力した方位データを基準方位として格納する工程を備え、前記方位データが前記基準方位から所定の角度内にある時に方位データを出力することを特徴とする請求項６記載の方位演算方法。
【請求項８】
前記方位データが所定の範囲内にないときに、方位データの少なくとも一部を破棄することを特徴とする請求項６又は請求項７記載の方位演算方法。
【請求項９】
前記方位データが所定の範囲内にないときに、方位データのうち、最後に格納された方位データを基準として所定の範囲内にない方位データを破棄することを特徴とする請求項８記載の方位演算方法。
【請求項１０】
前記方位データが所定の範囲内にないときに、方位データのうち最後に格納された方位データを新たな基準方位として格納手段に格納することを特徴とする請求項８記載の方位演算方法。
【請求項１１】
コンピュータにより実行可能であり、磁気センサの出力から方位情報を出力する方位演算プログラムであって、前記方位演算プログラムは、基準方位エントリをバッファにバッファリングする手順と、新たに得られた方位エントリを前記バッファにバッファリングする手順と、前記バッファのすべてに方位エントリが格納されたときに、前記バッファに格納された前記方位エントリの全てが前記基準方位との間の差が所定の角度以内である場合に方位情報を出力する手順と、を含むことを特徴とする方位演算プログラム。
【請求項１２】
前記バッファのすべてに方位エントリが格納された状態において、前記バッファに格納された方位と前記基準方位との間の差が所定の角度を超える場合に、前記バッファに格納されている方位エントリをすべて破棄し、前記新たに得られた方位を基準方位として前記バッファにバッファリングする手順を含むことを特徴とする請求項１１記載の方位演算プログラム。
【請求項１３】
前記バッファのすべてに方位エントリが格納された状態において、前記バッファに格納された方位と前記基準方位との間の差が所定の角度を超える場合に、前記バッファに格納されている方位エントリのうち、前記新たに得られた方位との間の差が所定の角度以内の方位エントリを残し、他の方位エントリを破棄し、前記新たに得られた方位を基準方位として前記バッファにバッファリングする手順を含むことを特徴とする請求項１１記載の方位演算プログラム。
【請求項１４】
複数の磁気センサを有する地磁気センサと、前記地磁気センサの出力を用いて方位演算を行う請求項１から請求項５のいずれかに記載の方位演算手段と、を具備することを特徴とする電子機器。
【請求項１５】
ディスプレイと、前記方位演算手段からの方位情報に基づいて前記ディスプレイ上の画像を制御する表示制御手段と、を具備することを特徴とする請求項１４記載の電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、磁気センサの出力を用いて得られた方位の演算を行う方位演算装置及び方位演算方法に関する。
【背景技術】
【０００２】
地磁気センサは、磁気センサの出力を用いて基準方向から方位角を算出するデバイスである。近年、このような地磁気センサを搭載した携帯電話のような携帯端末が開発されてきている。この携帯端末において、外部磁界により地磁気センサの検出誤差が生じ易い環境において方位演算を行うことができるものとして、特許文献１に開示されているものがある。この特許文献１に開示されている方法は、地磁気センサの検出値が所定の異常状態になってから、該所定の異常状態が所定時間続いた場合に、方位情報を補正する方法である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２９１９３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
地磁気センサが搭載された携帯端末が使用される環境では、さまざまな磁場が存在しており、例えば、踏み切りや、図６に示すように、柱の近く（図中Ｘ）では、大きく磁場が乱れることがある。このような磁場歪の原因対象物の傍を徒歩で直進して通過する場合に、磁場がずれても、止まらない限り磁場が安定してずれることはない。このため、特許文献１に記載されている方法では、前記原因対象物に止まらずに接近又は離隔すると、補正がなされずに、磁気歪を含む地磁気により計算された方位を出力し続けてしまうことになる。その結果、地磁気センサの検出値に基づいて方位演算を行って、その方位情報に基づいてディスプレイの表示制御などを行う場合に、直進していたにも拘らず、前記原因対象物に近接した際に、この原因対象物よる磁気歪が含まれた結果で表示制御が行われてしまう（方位がずれる）こととなる。【０００５】
本発明はかかる点に鑑みてなされたものであり、方位が安定するまで方位がずれないようにすることができる方位演算装置及び方位演算方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の方位演算装置は、磁気センサの出力から方位データを演算する方位演算手段と、前記方位データを格納するバッファ手段と、前記バッファ手段に所定の個数だけ格納された前記方位データが所定の範囲内にある時に方位データを出力する制御手段と、を具備することを特徴とする。【０００７】
この構成によれば、所定期間、方位エントリをバッファリングするので、所定期間中で方位がずれてもずれる前の方位を出力し続けることができ、方位が安定するまで方位がずれないようにすることができる。これにより、地磁気センサの検出値に基づいて方位演算を行って、その方位情報に基づいてディスプレイの表示制御などを行う場合にも、直進していて前記原因対象物に近接した際に、この原因対象物よる磁気歪が含まれた結果で表示制御が行われてしまうことがない。【０００８】
本発明の方位演算装置においては、出力した方位データを基準方位として格納する格納手段を備え、前記制御手段が、前記バッファ手段に格納された前記方位データが前記基準方位から所定の角度内にある時に方位データを出力することが好ましい。この構成により、バッファ手段に格納された各方位データそれぞれの間の角度が所定の角度内にあるかどうかを判断することなく、基準方位からの角度の算出のみ行えばよいため、演算量を減らすことができる。【０００９】
本発明の方位演算装置においては、前記バッファ手段に格納された前記方位データが所定の範囲内にないときに、前記制御手段が、前記バッファ手段に格納された方位データの少なくとも一部を破棄することが好ましい。【００１０】
本発明の方位演算装置においては、前記バッファ手段に格納された前記方位データが所定の範囲内にないときに、前記制御手段が、前記バッファ手段に格納された方位データのうち、最後に格納された方位データを基準として所定の範囲内にない方位データを破棄することが好ましい。この構成により、最後に格納された方位データに近いデータが保持され、再度格納しなければならないバッファの数が減るため、一旦変化した方位が安定したタイミングにおいて、新しい方位をより早く出力することができる。【００１１】
本発明の方位演算装置においては、前記バッファ手段に格納された前記方位データが所定の範囲内にないときに、前記制御手段が前記バッファ手段に格納された方位データのうち最後に格納された方位データを新たな基準方位として格納手段に格納することが好ましい。この構成により、基準方位を更新しない場合に比べてより早く安定した方位を出力することができる。【００１２】
本発明の方位演算方法は、磁気センサの出力から方位データを演算する工程と、前記方位データを格納する工程と、所定の個数だけ格納された前記方位データが所定の範囲内にある時に方位データを出力する工程と、を具備することを特徴とする。【００１３】
本発明の方位演算方法においては、出力した方位データを基準方位として格納する工程を備え、前記方位データが前記基準方位から所定の角度内にある時に方位データを出力することが好ましい。この方法により、バッファ手段に格納された各方位データそれぞれの間の角度が所定の角度内にあるかどうかを判断することなく、基準方位からの角度の算出のみ行えばよいため、演算量を減らすことができる。【００１４】
本発明の方位演算方法においては、前記方位データが所定の範囲内にないときに、方位データの少なくとも一部を破棄することが好ましい。【００１５】
本発明の方位演算方法においては、前記方位データが所定の範囲内にないときに、方位データのうち、最後に格納された方位データを基準として所定の範囲内にない方位データを破棄することが好ましい。この方法により、最後に格納された方位データに近いデータが保持され、再度格納しなければならないバッファの数が減るため、一旦変化した方位が安定したタイミングにおいて、新しい方位をより早く出力することができる。【００１６】
本発明の方位演算方法においては、前記方位データが所定の範囲内にないときに、方位データのうち最後に格納された方位データを新たな基準方位として格納手段に格納することが好ましい。この方法により、基準方位を更新しない場合に比べてより早く安定した方位を出力することができる。【００１７】
本発明の方位演算プログラムは、コンピュータにより実行可能であり、磁気センサの出力から方位情報を出力する方位演算プログラムであって、前記方位演算プログラムは、基準方位エントリをバッファにバッファリングする手順と、新たに得られた方位エントリを前記バッファにバッファリングする手順と、前記バッファのすべてに方位エントリが格納されたときに、前記バッファに格納された前記方位エントリの全てが前記基準方位との間の差が所定の角度以内である場合に方位情報を出力する手順と、を含むことを特徴とする。【００１８】
本発明の方位演算プログラムにおいては、前記バッファのすべてに方位エントリが格納された状態において、前記バッファに格納された方位と前記基準方位との間の差が所定の角度を超える場合に、前記バッファに格納されている方位エントリをすべて破棄し、前記新たに得られた方位を基準方位として前記バッファにバッファリングする手順を含むことが好ましい。【００１９】
本発明の方位演算プログラムにおいては、前記バッファのすべてに方位エントリが格納された状態において、前記バッファに格納された方位と前記基準方位との間の差が所定の角度を超える場合に、前記バッファに格納されている方位エントリのうち、前記新たに得られた方位との間の差が所定の角度以内の方位エントリを残し、他の方位エントリを破棄し、前記新たに得られた方位を基準方位として前記バッファにバッファリングする手順を含むことが好ましい。【００２０】
本発明の電子機器は、複数の磁気センサを有する地磁気センサと、前記地磁気センサの出力を用いて方位演算を行う上記方位演算手段と、を具備することを特徴とする。【００２１】
本発明の電子機器においては、ディスプレイと、前記方位演算手段からの方位情報に基づいて前記ディスプレイ上の画像を制御する表示制御手段と、を具備することが好ましい。
【発明の効果】
【００２２】
本発明の方位演算プログラムによれば、基準方位エントリをバッファにバッファリングし、新たに得られた方位と前記基準方位との間の差が所定の角度以内である方位エントリを前記バッファにバッファリングし、前記バッファのすべてに方位エントリが格納されたときに方位情報を出力する。この場合、所定期間、方位エントリをバッファリングするので、所定期間中で方位がずれてもずれる前の方位を出力し続けることができ、方位が安定するまで方位がずれないようにすることができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施の形態に係る地磁気センサを備えた電子機器の概略構成を示すブロック図である。
【図２】本発明の実施の形態に係る方位演算プログラムの手順を説明するためのフロー図である。
【図３】（ａ）〜（ｄ）は、バッファに格納される方位エントリ（方位情報）の状態を示す図である。
【図４】（ａ）は、磁場歪がある環境における出力値と時間との間の関係を示す図であり、（ｂ）は、本発明に係る方位演算プログラムを搭載しない地磁気センサの出力変化を示す図であり、（ｃ）は、本発明に係る方位演算プログラムを搭載した地磁気センサの出力変化を示す図である。
【図５】（ａ）は、磁場歪がある環境における出力値と時間との間の関係を示す図であり、（ｂ）は、本発明に係る方位演算プログラムを搭載しない地磁気センサの出力変化を示す図であり、（ｃ）は、本発明に係る方位演算プログラムを搭載した地磁気センサの出力変化を示す図である。
【図６】磁気歪の原因対象物を説明するための図である。
【発明を実施するための形態】
【００２４】
以下、本発明の実施の形態について添付図面を参照して詳細に説明する。
図１は、本発明の実施の形態に係る地磁気センサを搭載した電子機器の概略構成を示すブロック図である。図１に示す電子機器は、本発明に係る地磁気センサ１と、地磁気センサ１で求められた方位情報に基づいて表示制御を行う表示制御部２と、表示制御部２で制御された画像を表示するディスプレイ３とから主に構成されている。
【００２５】
地磁気センサ１は、地磁気センサ１１と、制御部１２とから主に構成されている。地磁気センサ１１は、Ｘ軸用磁気センサ、Ｙ軸用磁気センサ及びＺ軸用磁気センサを持つ磁気センサ部１１１を有している。また、制御部１２は、磁気センサ部１１１の出力を用いて方位を求める方位算出プログラム１２１と、磁気センサ部１１１の出力を用いて磁気センサの出力の基準点を求めるキャリブレーションプログラム１２２と、方位算出プログラム１２１で求められた方位情報のフィルタリングを行う方位演算プログラム１２３とを有する。
【００２６】
地磁気センサ１１の磁気センサ部１１１における磁気センサは、磁気検出用に少なくとも３軸に対応するものが用いられる。磁気センサを構成するセンサ素子の種類については特に制限はない。例えば、センサ素子としては、ＧＭＲ（Giant MagnetoResistive）素子、ＡＭＲ（Anisotropic MagnetoResistive）素子、ＴＭＲ（Tunnel MagnetoResistive）素子、ＧＩＧ（Granular In Gap）素子などの磁気抵抗効果素子でも良く、ホール素子、ＭＩ素子などのその他の磁気検出素子でも良い。また、地磁気センサ１１には、磁気センサ部１１１に電圧や磁界を印加するための処理部や磁気センサ部１１１からのアナログ信号をディジタル信号に変換する処理部などが含まれる。
【００２７】
制御部１２は、地磁気センサ１１を駆動するドライバソフトウェアとして少なくとも方位算出プログラム１２１と、キャリブレーションプログラム１２２と、方位演算プログラム１２３とを有する。方位算出プログラム１２１は、磁気センサ部１１１のＸ軸用磁気センサ、Ｙ軸用磁気センサ及びＺ軸用磁気センサの出力を用いて方位を求めるプログラムであり、方位を求める方法については特に制限はない。また、キャリブレーションプログラム１２２は、Ｘ軸用磁気センサ、Ｙ軸用磁気センサ及びＺ軸用磁気センサの出力の基準点を求めるプログラムであり、基準点を求める方法については特に制限はない。
【００２８】
方位演算プログラム１２３は、コンピュータにより実行可能であり、磁気センサの出力から求められた方位情報のフィルタリングを行うものであり、基準方位エントリをバッファにバッファリングする手順と、新たに得られた方位と前記基準方位との間の差が所定の角度以内である方位エントリを前記バッファにバッファリングする手順と、前記バッファのすべてに方位エントリが格納されたときに方位情報を出力する手順と、を含む。
【００２９】
図２は、本発明の実施の形態に係る方位演算プログラムの手順を説明するためのフロー図である。
【００３０】
まず、方位演算におけるパラメータを指定する。このパラメータとしては、方位安定幅（例えば、０〜±９０°）、方位安定化期間（センサ出力回数）、方位安定幅を超えたときのバッファリングモードなどが挙げられる。方位安定幅や方位安定化期間については、方位出力のレスポンスや、方位情報の安定度を考慮して適宜設定することができる。例えば、方位安定度を高くするためには方位安定化期間を長く設定し、方位出力のレスポンスを早くするためには方位安定化期間を短く設定する。
【００３１】
なお、方位演算については、ユーザの設定により適用／非適用を選択することが可能である。例えば、方位安定化期間のセンサ出力回数を”０”に設定することにより、方位演算を非適用とすることができる。ここでは、説明を簡単にするために、方位安定幅Ｗ＝１０とし、方位安定化期間（センサ出力回数）Ｎ＝８とした。
【００３２】
図３（ａ）〜（ｄ）は、バッファに格納される方位エントリ（方位情報）の状態を示す図である。バッファ１〜バッファＮ（ここではバッファ８）に向けて方位エントリが格納されていくことになる。また、最初にバッファにバッファリングされた方位エントリを基準方位とする。図３（ａ）においては、バッファ１に最初に格納された”４”が基準方位となる。この基準方位は、安定状態にある場合、すなわち、すべてのバッファにバッファリングされた方位エントリが基準方位から方位安定幅以内である場合には、新たな方位エントリがバッファに格納されて古い方位エントリが破棄されても、バッファこの方位エントリが基準方位となる。なお、方位エントリについては、方位算出プログラム１２１により算出された方位を１〜３６０の数字に割り当てている。また、バッファリングは、例えば、方位算出プログラムにより方位が算出されてセンサ出力されたことを契機に行う。
【００３３】
次いで、次に方位算出プログラム１２１により算出された方位（現在の方位）が基準方位から方位安定幅±Ｗ（±１０）の範囲内であるかどうかを判断する（Ｓ１１）。そして、基準方位から±１０である場合には、方位エントリとしてバッファにバッファリングする（Ｓ１２）。図３（ａ）に示すように、”４”，”７”，”６”，”８”については、いずれも基準方位”４”から±１０の範囲内であるので、方位エントリとしてバッファにバッファリングされる。この方位エントリのバッファリングは、バッファが満杯になる（すべてに方位エントリが格納された状態）になるまで続けられる（Ｓ１３）。図３（ｂ）に示すように、”２”，”３５８”，”３５４”については、いずれも基準方位”４”から±１０の範囲内であるので、方位エントリとしてバッファにバッファリングされる。このように、バッファに格納された方位データが基準方位から所定の角度内にある時に方位データを出力することにより、バッファに格納された各方位データそれぞれの間の角度が所定の角度内にあるかどうかを判断することなく、基準方位からの角度の算出のみ行うことができ、演算量を減らすことができる。
【００３４】
図３（ｂ）に示すように、バッファが満杯で、いずれも基準方位”４”から±１０の範囲内である場合には、方位が安定しているとみなして、方位情報を出力する（Ｓ１４）。図３（ｂ）においては、最も新しい方位エントリである”３５４”を方位情報として出力する。この方位情報は、表示制御部２において画像の表示制御に用いられ、その表示制御された画像がディスプレイ３に表示されることになる。
【００３５】
次いで、バッファが満杯になった状態で、次に方位算出プログラム１２１により算出された方位（現在の方位）が基準方位から方位安定幅±１０の範囲内であるかどうかを判断し（Ｓ１５）、基準方位から±１０である場合には、方位エントリとしてバッファにバッファリングするとともに、最古の方位エントリを破棄する（Ｓ１６）。この場合においても、基準方位は”４”を維持する。一方、基準方位から方位安定幅±１０を超える場合には、バッファリングされている方位エントリを破棄して新たな方位エントリを基準方位とする。
【００３６】
バッファリングされている方位エントリを破棄して新たな方位エントリを基準方位とする方法としては２つの方法があり、１つの方法（モード１）は、バッファに格納されている方位エントリをすべて破棄し、新たに得られた方位を基準方位としてバッファにバッファリングする。この方法によれば、最後に格納された方位データに近いデータが保持され、再度格納しなければならないバッファの数が減るため、一旦変化した方位が安定したタイミングにおいて、新しい方位をより早く出力することができる。もう１つの方法（モード２）は、バッファに格納されている方位エントリのうち、新たに得られた方位との間の差が所定の角度以内の方位エントリを残し、他の方位エントリを破棄し、新たに得られた方位を基準方位としてバッファにバッファリングする。この方法によれば、基準方位を更新しない場合に比べてより早く安定した方位を出力することができる。
【００３７】
したがって、基準方位から方位安定幅±１０を超える場合には、まず、上記いずれかのモードであるかを判断し（Ｓ１７）、モード１であれば、図３（ｃ）に示すように、バッファに格納されている方位エントリをすべて破棄し（Ｓ１８）、現方位（”３５２”）を基準方位としてバッファにバッファリングする（Ｓ２０）。一方、モード２であれば、図３（ｄ）に示すように、バッファに格納されている方位エントリのうち、新たに得られた方位（現方位）との間の差が所定の角度（ここでは±１０）以内の方位エントリ（”２”，”３５８”，”３５４”）を残し（Ｓ１９）、他の方位エントリを破棄し、現方位（”３５２”）を基準方位としてバッファにバッファリングする（Ｓ２０）。なお、この処理は、バッファが満杯になる前に、基準方位から方位安定幅±１０を超えた場合にも同様に行われる。
【００３８】
なお、上記方位演算プログラムにおける手順は、ハードウェアにより動作させるように構成しても良い。すなわち、磁気センサの出力から方位データを演算する方位演算部と、前記方位データを格納するバッファと、前記バッファに所定の個数だけ格納された前記方位データが所定の範囲内にある時に方位データを出力する制御部と、を具備する方位演算装置として構成しても良い。
【００３９】
この場合において、出力した方位データを基準方位として格納する格納部を備え、制御部が、バッファに格納された方位データが基準方位から所定の角度内にある時に方位データを出力するようにしても良い。なお、ここでいう格納部はバッファの一部であっても良い。
【００４０】
また、バッファに格納された方位データが所定の範囲内にないときに、制御部が、バッファに格納された方位データの少なくとも一部を破棄しても良く、制御部が、バッファに格納された方位データのうち、最後に格納された方位データを基準として所定の範囲内にない方位データを破棄しても良い。さらに、バッファに格納された方位データが所定の範囲内にないときに、制御部がバッファに格納された方位データのうち最後に格納された方位データを新たな基準方位として格納部に格納しても良い。
【００４１】
次に、本発明の効果を明確にするために行った実施例について説明する。
本発明に係る方位演算プログラムを搭載した地磁気センサ及び本発明に係る方位演算プログラムを搭載しない地磁気センサを載せた車で踏み切りを直進して通過して、地磁気センサで方位算出を行った。このときの時間と出力値との関係を図４（ａ）に示す。図４（ａ）から分るように、時間Ａのときに踏み切りを通過しており、踏み切りによる磁場歪で出力値が大きく変化している。このような環境において、本発明に係る方位演算プログラムを搭載しない地磁気センサでは、直進して踏み切りを通過したにも拘らず、図４（ｂ）に示すように、時間Ａで方位が大きくずれたが、本発明に係る方位演算プログラムを搭載した地磁気センサでは、図４（ｃ）に示すように、時間Ａでも方位が変わらなかった。これは、所定期間、方位エントリをバッファリングするので、所定期間中で方位がずれてもずれる前の方位を出力し続けることができるからである。
【００４２】
また、本発明に係る方位演算プログラムを搭載した地磁気センサ及び本発明に係る方位演算プログラムを搭載しない地磁気センサにそれぞれ磁石を接近させた場合の出力変化について調べた。このときの時間と出力値との関係を図５（ａ）に示す。図５（ａ）において、時間Ｂで磁石を１００ｍｍまで接近させ、時間Ｃで１０ｍｍまで接近させ、時間Ｄで地磁気センサを回転させた。
【００４３】
このような環境において、本発明に係る方位演算プログラムを搭載しない地磁気センサでは、図５（ｂ）に示すように、時間Ｂで方位が小さくずれ、時間Ｃで方位が大きくずれ、時間Ｄで回転に追従して方位が変わっている。一方、本発明に係る方位演算プログラムを搭載した地磁気センサでは、図５（ｃ）に示すように、時間Ｂや時間Ｃでも方位が変わらず、時間Ｄでは回転に追従せずに方位が変わっている。これは、所定期間、方位エントリをバッファリングするので、所定期間中で方位がずれてもずれる前の方位を出力し続けることができるからである。
【００４４】
このように、本発明に係る方位演算プログラムによれば、所定期間、方位エントリをバッファリングするので、所定期間中で方位がずれてもずれる前の方位を出力し続けることができ、方位が安定するまで方位がずれないようにすることができる。これにより、地磁気センサの検出値に基づいて方位演算を行って、その方位情報に基づいてディスプレイの表示制御などを行う場合にも、直進していて前記原因対象物に近接した際に、この原因対象物よる磁気歪が含まれた結果で表示制御が行われてしまうことがない。
【００４５】
本発明は上記実施の形態に限定されず、種々変更して実施することが可能である。例えば、上記実施の形態では、Ｘ軸用磁気センサ、Ｙ軸用磁気センサ及びＺ軸用磁気センサを備えた３軸地磁気センサの場合について説明しているが、本発明は、２軸もしくはそれ以上の軸の地磁気センサについても適用することができる。また、上記実施の形態においては、地磁気センサにおいて地磁気センサと制御部とが個別に構成されている場合について説明しているが、本発明においては、地磁気センサにおいて地磁気センサと制御部とが一体で構成されていても良い。その他、本発明の目的の範囲を逸脱しない限りにおいて適宜変更することが可能である。
【産業上の利用可能性】
【００４６】
本発明の方位演算装置及び方位演算方法は、携帯電話のような携帯機器や電子機器に適用することができる。
【図１】
2010004873.tif 000003
【図２】
2010004873.tif 000004
【図３】
2010004873.tif 000005
【図４】
2010004873.tif 000006
【図５】
2010004873.tif 000007
【図６】
2010004873.tif 000008
【手続補正書】
【提出日】平成21年10月23日(2009.10.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
磁気センサの出力から方位データを演算する方位演算手段と、前記方位データを格納するバッファ手段と、前記バッファ手段に所定の個数だけ格納された前記方位データが所定の範囲内にある時に方位データを出力する制御手段と、を具備し、前記出力した方位データを基準方位として格納する格納手段を備え、前記制御手段が、前記バッファ手段に格納された前記方位データが前記基準方位から所定の角度内にある時に方位データを出力し、前記バッファ手段に格納された前記方位データが所定の範囲内にないときに、前記制御手段が、前記バッファ手段に格納された方位データの少なくとも一部を破棄することを特徴とする方位演算装置。
【請求項２】
（削除）
【請求項３】
（削除）
【請求項４】
前記バッファ手段に格納された前記方位データが所定の範囲内にないときに、前記制御手段が、前記バッファ手段に格納された方位データのうち、最後に格納された方位データを基準として所定の範囲内にない方位データを破棄することを特徴とする請求項１記載の方位演算装置。
【請求項５】
前記バッファ手段に格納された前記方位データが所定の範囲内にないときに、前記制御手段が前記バッファ手段に格納された方位データのうち最後に格納された方位データを新たな基準方位として格納手段に格納することを特徴とする請求項１記載の方位演算装置。
【請求項６】
磁気センサの出力から方位データを演算する工程と、前記方位データを格納する工程と、所定の個数だけ格納された前記方位データが所定の範囲内にある時に方位データを出力する工程と、前記出力した方位データを基準方位として格納する工程と、前記方位データが前記基準方位から所定の角度内にある時に方位データを出力し、前記方位データが所定の範囲内にないときに、方位データの少なくとも一部を破棄することを特徴とする方位演算方法。
【請求項７】
（削除）
【請求項８】
（削除）
【請求項９】
前記方位データが所定の範囲内にないときに、方位データのうち、最後に格納された方位データを基準として所定の範囲内にない方位データを破棄することを特徴とする請求項６記載の方位演算方法。
【請求項１０】
前記方位データが所定の範囲内にないときに、方位データのうち最後に格納された方位データを新たな基準方位として格納手段に格納することを特徴とする請求項６記載の方位演算方法。
【請求項１１】
コンピュータにより実行可能であり、磁気センサの出力から方位情報を出力する方位演算プログラムであって、前記方位演算プログラムは、基準方位エントリをバッファにバッファリングする手順と、新たに得られた方位エントリを前記バッファにバッファリングする手順と、前記バッファのすべてに方位エントリが格納されたときに、前記バッファに格納された前記方位エントリの全てが前記基準方位との間の差が所定の角度以内である場合に方位情報を出力する手順と、前記バッファのすべてに方位エントリが格納された状態において、前記バッファに格納された方位と前記基準方位との間の差が所定の角度を超える場合に、前記バッファに格納されている方位エントリをすべて破棄し、前記新たに得られた方位を基準方位として前記バッファにバッファリングする手順を含むことを特徴とする方位演算プログラム。
【請求項１２】
（削除）
【請求項１３】
前記バッファのすべてに方位エントリが格納された状態において、前記バッファに格納された方位と前記基準方位との間の差が所定の角度を超える場合に、前記バッファに格納されている方位エントリのうち、前記新たに得られた方位との間の差が所定の角度以内の方位エントリを残し、他の方位エントリを破棄し、前記新たに得られた方位を基準方位として前記バッファにバッファリングする手順を含むことを特徴とする請求項１１記載の方位演算プログラム。
【請求項１４】
複数の磁気センサを有する地磁気センサと、前記地磁気センサの出力を用いて方位演算を行う請求項１記載の方位演算手段と、を具備することを特徴とする電子機器。
【請求項１５】
ディスプレイと、前記方位演算手段からの方位情報に基づいて前記ディスプレイ上の画像を制御する表示制御手段と、を具備することを特徴とする請求項１４記載の電子機器。
【国際調査報告】
2010004873.tif 000009
2010004873.tif 000010
2010004873.tif 000011
2010004873.tif 000012