(57)【特許請求の範囲】
【請求項１】
電子機器であって、
前記電子機器の周囲の磁場を検出する磁気センサと、
前記電子機器の動きに関する信号を検出するモーションセンサと、
衛星から受信した情報に基づいて、前記電子機器の地理的な位置を測位する測位動作を実行する測位部と、
所定の起点位置を基準にして、前記磁気センサにより検出される前記磁場の方位と、前記モーションセンサにより検出される前記信号とに基づいて位置を推定する推定動作を実行する自律航法処理部と、
前記測位部による前記測位動作を間欠的に実行させ且つ、前記自律航法処理部による前記推定動作を実行させる動作制御部と、
前記測位部により測位された第１位置における測位誤差範囲を前記衛星から受信した情報に基づいて算出し、前記起点位置から前記自律航法処理部により推定された第２位置までの第２方向が前記測位誤差範囲の広がりの角度範囲内に含まれない場合に、前記磁気センサにオフセット値を補正するキャリブレーション処理を行う必要があると判定するキャリブレーション判定処理部と、
を有することを特徴とする電子機器。
【請求項２】
前記キャリブレーション判定処理部は、前記起点位置から前記第１位置までの第１方向と、前記起点位置から、前記測位部が前記第１位置を測位したときと同じ時刻において前記自律航法処理部により推定された前記第２位置までの前記第２方向と、を算出し、前記第２位置が前記測位誤差範囲内に含まれない場合に、前記第１方向及び前記第２方向からなる角度差と、前記起点位置に対する前記第1位置の前記測位誤差範囲を規定する角度範囲とに基づいて、第２方向が前記測位誤差範囲の広がりの角度範囲内に含まれるかどうかを判断する
ことを特徴とする請求項１に記載の電子機器。
【請求項３】
前記キャリブレーション判定処理部は、前記第１方向及び前記第２方向からなる角度差が前記第１位置の前記測位誤差範囲を規定する角度範囲の１／２よりも大きいと判断されると、前記磁気センサにオフセット値を補正するキャリブレーション処理を行う必要があると判定する
ことを特徴とする請求項２に記載の電子機器。
【請求項４】
前記動作制御部は、前記測位部を間欠的に動作させるタイミングにおいて、所定の測位実行時間内に複数回の前記測位動作を実行させ、
前記キャリブレーション判定処理部は、前記測位部による前記複数回の前記測位動作において、所定の誤差範囲内に収束した位置を、前記第１位置として用いることを特徴とする請求項１乃至３の何れかに記載の電子機器。
【請求項５】
前記自律航法処理部は、前記所定の起点位置を基準にして、前記磁気センサにより検出される前記磁場の方位と、前記モーションセンサにより検出される前記信号と、パラメータとに基づいて位置を推定する前記推定動作を実行し、
前記測位部により測位された前記第１位置における前記測位誤差範囲と、前記自律航法処理部により推定された前記第２位置とを、比較することにより、前記自律航法処理部における前記パラメータの値が適正であるか否かを判定するパラメータ判定処理部と、
前記パラメータ判定処理部により前記パラメータの値が適正でないと判定されたときに、前記パラメータの値を補正するパラメータ補正処理部と、
を有することを特徴とする請求項１乃至４のいずれかに記載の電子機器。
【請求項６】
前記動作制御部は、前記自律航法処理部による次回の前記推定動作における前記起点位置を前記第１位置に設定することを特徴とする請求項１乃至５のいずれかに記載の電子機器。
【請求項７】
前記動作制御部は、
前記測位部により測位された前記第１位置における前記測位誤差範囲の中に前記自律航法処理部により推定された前記第２位置が含まれている場合には、前記自律航法処理部による次回の前記推定動作における前記起点位置を前記第２位置に設定し、
前記測位部により測位された前記第１位置における前記測位誤差範囲の中に前記自律航法処理部により推定された前記第２位置が含まれていない場合には、前記自律航法処理部による次回の前記推定動作における前記起点位置を前記第１位置に設定することを特徴とする請求項１乃至６のいずれかに記載の電子機器。
【請求項８】
前記測位誤差範囲の広がりの角度範囲とは、前記第１位置における測位誤差範囲を示す円範囲における前記起点位置を通る２つの接線の方向からなる範囲であり、
前記キャリブレーション判定処理部は、前記２つの接線の方向からなる範囲に第２方向が含まれない場合に、前記磁気センサにオフセット値を補正するキャリブレーション処理を行う必要があると判定する
請求項１乃至７のいずれかに記載の電子機器。
【請求項９】
磁場を検出する磁気センサと、動きに関する信号を検出するモーションセンサと、衛星から受信した情報に基づいて地理的な位置を測位する測位動作を実行する測位部とを有する電子機器において実行される方法であって、
所定の起点位置を基準にして、磁気センサにより検出される磁場の方位と、前記モーションセンサにより検出される前記信号とに基づいて位置を推定する推定動作を実行する自律航法処理過程と、
前記測位部の前記測位動作を間欠的に実行させ且つ、前記自律航法処理過程による前記推定動作を実行させる動作制御過程と、
前記測位部により測位された第１位置における測位誤差範囲を前記衛星から受信した情報に基づいて算出し、前記起点位置から前記自律航法処理過程により推定された第２位置までの第２方向が前記測位誤差範囲の広がりの角度範囲内に含まれない場合に、前記磁気センサにオフセット値を補正するキャリブレーション処理を行う必要があると判定するキャリブレーション判定処理過程と、
を有することを特徴とするセンサ較正方法。
【請求項１０】
磁場を検出する磁気センサと、動きに関する信号を検出するモーションセンサと、衛星から受信した情報に基づいて地理的な位置を測位する測位動作を実行する測位部とを有する電子機器に搭載されるコンピュータに、
所定の起点位置を基準にして、前記磁気センサにより検出される磁場の方位と、前記モーションセンサにより検出される前記信号とに基づいて位置を推定する推定動作を実行する自律航法処理ステップと、
前記測位部の前記測位動作を間欠的に実行させ且つ、前記自律航法処理ステップによる前記推定動作を実行させる動作制御ステップと、
前記測位部により取得された第１位置における測位誤差範囲を前記衛星から受信した情報に基づいて算出し、前記起点位置から前記自律航法処理ステップにより推定された第２位置までの第２方向が前記測位誤差範囲の広がりの角度範囲内に含まれない場合に、前記磁気センサにオフセット値を補正するキャリブレーション処理を行う必要があると判定するキャリブレーション判定処理ステップと、
を実行させることを特徴とするセンサ較正プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、地磁気を検出するための磁気センサを備えた電子機器、及び、当該電子機器に適用可能な磁気センサのセンサ較正方法、並びに、センサ較正プログラムに関する。
【背景技術】
【０００２】
近年、携帯電話機やスマートフォン（高機能携帯電話機）、ナビゲーション端末、各種のウェアラブル機器等の携帯型（又は装着型）の電子機器の分野において、位置情報や地図情報を利用した種々のサービスが提供されている。これらの電子機器は、一般に磁気センサを備え、この磁気センサにより検出された地磁気に基づいて、方位を測定する手法（いわゆる、電子コンパス）が採用されている。
【０００３】
ところで、このような電子機器には、磁気センサの他にもスピーカや様々な電子部品が搭載されているため、磁気センサの周囲にはスピーカや着磁した電子部品の金属パッケージ等から漏れる磁気が存在している。また、電子機器の周囲に強い磁界が存在している場合もある。そのため、電子機器に搭載された磁気センサは、電子機器内部の電子部品等から発生する磁界や電子機器の周囲の磁界と、本来の検出対象である地磁気とが合成された磁界を検出することになる。これにより、着磁状態で磁気センサにより検出された地磁気の測定値に基づいて算出された方位は、実際の（正確な）方位とは異なることになる。このような問題を解決するために、電子機器内部の電子部品等から発生する磁界に起因する方位の誤差（＝オフセット）分を補正するためのキャリブレーション処理が必要になる。
【０００４】
従来、磁気センサのキャリブレーション処理によるオフセットの補正手法は、種々提案されている。例えば特許文献１には、３軸の地磁気センサを傾けた状態で地表面に平行に回転させて取得した磁気データ（磁界データ）が同一平面内に存在する場合に、当該磁気データの分布軌跡となる円弧の中心座標と半径を求めて、仮オフセット値として算出する手法が開示されている。また、例えば特許文献２には、地磁気センサを内蔵した電子機器において、省電力モードにおいてキー操作が行われると、省電力モードを終了するとともに、地磁気センサのキャリブレーション処理を実行して、方位の算出精度を向上させる技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−７８４７４号公報
【特許文献２】特開２０１０−１７５５５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述した特許文献２においては、電子機器の省電力モードにおいてユーザがキー操作を行うことを条件として、地磁気センサのキャリブレーション処理を実行する手法が開示されている。すなわち、特許文献２に記載の手法においては、地磁気センサのキャリブレーション処理を実行するタイミングがユーザのキー操作に委ねられている。そのため、ユーザが地磁気センサのキャリブレーション処理が必要な状態を認識していない場合には、キャリブレーション処理が長時間実行されず、正確な方位が検出されない状態が継続する可能性があった。すなわち、ユーザは地磁気センサにより正確な方位が検出されていない状態になっていることに気づき難く、そのため、誤った地磁気センサの検出結果（方位等）を信じてしまうことになるという問題を有していた。
【０００７】
そこで、本発明は、上述した問題点に鑑み、ユーザに特別な負担を強いることなく、磁気センサにオフセット値を補正するキャリブレーション処理を行う必要があるか否かを判定することができ、以って適切なタイミングで磁気センサのキャリブレーション処理を実行することができる電子機器及びセンサ較正方法、センサ較正プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、
電子機器であって、
前記電子機器の周囲の磁場を検出する磁気センサと、
前記電子機器の動きに関する信号を検出するモーションセンサと、
衛星から受信した情報に基づいて、前記電子機器の地理的な位置を測位する測位動作を実行する測位部と、
所定の起点位置を基準にして、前記磁気センサにより検出される前記磁場の方位と、前記モーションセンサにより検出される前記信号とに基づいて位置を推定する推定動作を実行する自律航法処理部と、
前記測位部による前記測位動作を間欠的に実行させ且つ、前記自律航法処理部による前記推定動作を実行させる動作制御部と、
前記測位部により測位された第１位置における測位誤差範囲を前記衛星から受信した情報に基づいて算出し、前記起点位置から前記自律航法処理部により推定された第２位置までの第２方向が前記測位誤差範囲の広がりの角度範囲内に含まれない場合に、前記磁気センサにオフセット値を補正するキャリブレーション処理を行う必要があると判定するキャリブレーション判定処理部と、
を有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ユーザに特別な負担を強いることなく、磁気センサにキャリブレーション処理が必要か否かを自動的に判定することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明に係る電子機器の複数の適用例を示す概略構成図である。
【図２】本発明に係る電子機器の第１の実施形態を示す機能ブロック図である。
【図３】本実施形態に適用されるＧＰＳ受信回路の標準インターフェース仕様の一例を示す一覧表（その１）である。
【図４】本実施形態に適用されるＧＰＳ受信回路の標準インターフェース仕様の一例を示す一覧表（その２）である。
【図５】第１の実施形態に係る電子機器の制御方法（センサ較正方法）の一例を示すフローチャートである。
【図６】第１の実施形態に係る制御方法における、自律航法による推定位置とＧＰＳによる測位位置との関係を説明するための概略図（その１）である。
【図７】第１の実施形態に係る制御方法における、自律航法による推定位置とＧＰＳによる測位位置との関係を説明するための概略図（その２）である。
【図８】第２の実施形態に係る電子機器の制御方法（センサ較正方法）の要部の一例を示すフローチャートである。
【図９】第２の実施形態に係る制御方法における、自律航法による推定位置とＧＰＳによる測位位置との関係を説明するための概略図（その１）である。
【図１０】第２の実施形態に係る制御方法における、自律航法による推定位置とＧＰＳによる測位位置との関係を説明するための概略図（その２）である。
【発明を実施するための形態】
【００１３】
以下、本発明に係る電子機器及びセンサ較正方法、センサ較正プログラムについて、実施形態を示して詳しく説明する。
＜第１の実施形態＞
（電子機器）
図１は、本発明に係る電子機器の複数の適用例を示す概略構成図である。また、図２は、本発明に係る電子機器の第１の実施形態を示す機能ブロック図である。
【００１４】
本発明に係る電子機器は、例えば位置情報や地図情報を利用した種々のサービスを、ユーザに提供するための機能を備えた電子機器に適用される。具体的には、本発明は、例えば図１（ａ）に示すような腕時計型やリストバンド型の外観を有するウェアラブル機器１０に適用することができる。また、本発明は、例えば図１（ｂ）に示すような登山等の屋外での行動軌跡を記録したり、ルート案内をしたりするアウトドア機器（いわゆる、ＧＰＳロガーやナビゲーション端末）２０や、図１（ｃ）に示すような、近年普及が著しいスマートフォン３０やタブレット端末等に適用することができる。以下、説明の都合上、これらの機器を「電子機器１００」と総称する。
【００１５】
本実施形態に係る電子機器１００は、例えば図２に示すように、磁気センサ（方位センサ）１１０と、モーションセンサ１２０と、ＧＰＳ受信回路（測位部）１３０と、入力操作部１４０と、出力部１５０と、演算回路部１６０と、メモリ部１７０と、電源供給部１８０と、を有している。ここで、演算回路部１６０は、本発明における自律航法処理部、動作制御部、キャリブレーション判定処理部、パラメータ判定処理部、パラメータ補正処理部に対応する。
【００１６】
磁気センサ１１０は、直交する３軸方向の地磁気を検出するセンサであって、地球の磁場（磁界）を検出して磁気データ（又は、磁北方向を基準とした３次元の方向データ）として出力する。この磁気データは、後述する演算回路部１６０においてユーザの移動状態に応じて変化する、電子機器１００を基準とする方位を算出する際に使用される。
【００１７】
モーションセンサ１２０は、少なくとも加速度センサ１２２と、角速度センサ（ジャイロセンサ）１２４とを含み、ユーザの身体の動きや運動状態に応じて電子機器１００に加わる特定方向の力等を検出する。加速度センサ１２２は、３軸加速度センサを有し、ユーザの身体の動きに応じて電子機器１００に生じる３軸方向の加速度成分（加速度信号）を検出して加速度データとして出力する。また、角速度センサ１２４は、３軸角速度センサを有し、ユーザの身体の動きに応じて電子機器１００に生じる、上記の３軸に沿った各回転運動の回転方向に生じる角速度成分（角速度信号）を検出して角速度データとして出力する。メモリ部１７０に保存されたセンサデータ（加速度データ、角速度データ）は、上記の磁気センサ１１０により取得される磁気データ（方向データ）とともに、後述する演算回路部１６０において実行される自律航法（デッドレコニング又は推測航法）による現在位置の推定処理に使用される。
【００１８】
ＧＰＳ受信回路１３０は、複数のＧＰＳ（Global Positioning System；全地球測位システム）衛星からの電波を、図示を省略したＧＰＳアンテナを介して受信することにより、緯度、経度情報に基づく地理的な位置情報を取得して、測位データとして出力する。
【００１９】
入力操作部１４０は、例えば図１に示した電子機器１００（ウェアラブル機器１０やアウトドア機器２０、スマートフォン３０等）の筐体に設けられた操作スイッチ１４２やタッチパネル１４４等を有している。入力操作部１４０は、例えば電子機器１００の動作電源やＧＰＳ受信回路１３０における測位動作のオン、オフ操作、アプリケーションソフトウェアの操作、後述する出力部１５０（表示部や音響部等）により提供又は報知する項目の設定等の、各種の入力操作に用いられる。
【００２０】
出力部１５０は、電子機器１００の筐体に設けられた表示部１５２や音響部１５４、振動部（図示を省略）等を有している。出力部１５０は、少なくとも上述した磁気センサ１１０により取得された磁気データに基づく方位や、モーションセンサ１２０により取得されたセンサデータ、ＧＰＳ受信回路１３０により取得された測位データに基づく位置情報や地図情報、アラーム等の、各種の情報を視覚や聴覚、触覚等を通してユーザに提供又は報知する。
【００２１】
演算回路部１６０は、計時機能を備えたＣＰＵ（中央演算処理装置）やＭＰＵ（マイクロプロセッサ）等の演算処理装置であって、動作クロックに基づいて、所定の制御プログラムやアルゴリズムプログラムを実行する。これにより、演算回路部１６０は、磁気センサ１１０やモーションセンサ１２０におけるセンシング動作や、取得された磁気データ及びセンサデータに基づく自律航法による現在位置の推定動作、ＧＰＳ受信回路１３０における測位動作、磁気センサ１１０におけるキャリブレーション処理、出力部１５０における報知動作等の、各種の動作を制御する。なお、演算回路部１６０において実行される制御プログラムやアルゴリズムプログラムは、予め演算回路部１６０の内部に組み込まれているものであってもよいし、後述するメモリ部１７０の所定の記憶領域に保存されているものであってもよい。
【００２２】
メモリ部１７０は、上述した磁気センサ１１０により取得された磁気データや、モーションセンサ１２０により取得されたセンサデータ、ＧＰＳ受信回路１３０により取得された測位データ等を、時間データに関連付けて所定の記憶領域に保存する。また、メモリ部１７０は、演算回路部１６０において実行される制御方法（センサ較正方法）において生成される各種データや、磁気センサ１１０のオフセット値、キャリブレーション処理の実行の可否に関する判定結果等を所定の記憶領域に保存する。なお、メモリ部１７０は、その一部又は全部が、例えばメモリカード等のリムーバブル記憶媒体としての形態を有し、電子機器１００に対して着脱可能に構成されているものであってもよい。
【００２３】
電源供給部１８０は、電子機器１００内部の各構成に駆動用電力を供給する。電源供給部１８０は、例えば市販のボタン型電池等の一次電池や、リチウムイオン電池等の二次電池が適用される。また、電源供給部１８０は、上記の一次電池や二次電池のほか、振動や光、熱、電磁波等のエネルギーにより発電する環境発電技術による電源等を、単独で、あるいは、他の電源と併用して適用するものであってもよい。
【００２４】
なお、本実施形態に係る電子機器１００は、上述した各構成に加え、例えば外部の機器や通信ネットワーク等との間で、有線や無線を用いた所定の通信形式により各種のデータを入出力又は送受信するためのインターフェース部を備えているものであってもよい。これにより、電子機器１００は、ユーザの移動中に取得した移動経路や運動データ等を外部の機器等に出力することができるとともに、電子機器１００において実行されるアプリケーションソフトウェアで使用する地図情報やその他の情報を外部の機器等から取得することができる。
【００２５】
（電子機器の制御方法）
次に、本実施形態に係る電子機器における制御方法（センサ較正方法）について説明する。ここでは、特に、現在位置を推定する自律航法に適用される磁気センサのオフセット値を補正するためのキャリブレーション処理を、実行（開始）するタイミングを判定するための一連の処理動作（センサ較正処理の実行判定方法）について説明する。
【００２６】
一般に、民生用に開放されているＧＰＳを利用した絶対位置の測位手法においては、ＧＰＳ衛星からの電波の受信環境等により数ｍ〜数１０ｍ程度の位置誤差が生じることが知られている。また、ＧＰＳによる測位は通常４機以上のＧＰＳ衛星を使って行われるが、その際の位置精度（測位精度）はＧＰＳ衛星の配置状態や、衛星からの信号強度（信号対雑音比；Ｃ／Ｎ値）、測位に使用される衛星の数等によって左右されることも知られている。例えば、遮蔽物の多い場所や高層ビル街、地下やトンネル内等の、衛星からの電波の受信が困難な環境や受信ができない環境、あるいは、マルチパス等の通信障害が生じやすい環境においては、ＧＰＳによる現在位置の正確な測位が難しい。
【００２７】
本実施形態においては、このようなＧＰＳによる測位手法の問題点（欠点）を補完するために、自律航法による位置推定方法を併用した手法を有している。特に、本実施形態においては、ＧＰＳによる測位機能を搭載した携帯型の電子機器における消費電力を抑制するために、消費電力の大きいＧＰＳによる測位機能を間欠的に動作させ、ＧＰＳによる測位機能が動作していない期間においては、自律航法により現在位置を推定する。ここで、自律航法による位置推定においては、磁気センサ１１０により取得した磁気データ及びモーションセンサ１２０（加速度センサ１２２）により取得した加速度データ等に基づいて、単位時間当たりの進行方向（移動方向）と移動距離を算出し、これをベクトル加算することにより現在位置を推定する。
【００２８】
このような自律航法による位置推定方法においては、位置推定に用いる方位を検出するための方位センサである磁気センサが周辺磁場の影響を受けてオフセットを持つと、正しく方位を算出することができず、推定された位置に誤差が生じることになる。特に、本実施形態に示すように、ＧＰＳによる測位機能を間欠的に動作させ、ＧＰＳによる測位機能が動作していない期間においては、自律航法による位置推定（ベクトル加算）を繰り返し実行すると、上記の誤差が累積されてしまい、現在位置を正しく推定することができなくなる場合がある。そのため、自律航法による位置推定の精度をある程度高く維持するために、磁気センサに生じるオフセット値の異常を検知し、オフセット値を補正するキャリブレーション処理を適切なタイミングで実行する必要がある。以下、具体的に説明する。
【００２９】
まず、本実施形態に適用されるＧＰＳ受信回路の仕様について具体例を示して説明する。ここでは、ＧＰＳ受信回路の標準インターフェース仕様として、広く利用されているＮＭＥＡフォーマットについて説明する。
【００３０】
図３及び図４は、本実施形態に適用されるＧＰＳ受信回路の標準インターフェース仕様の一例を示す一覧表である。
【００３１】
ＮＭＥＡフォーマットの情報は、例えば図３及び図４の各一覧表に示すように、ＧＳＡセンテンス、ＧＳＶセンテンス、ＧＳＴセンテンス、ＶＴＧセンテンス等の、複数のセンテンスにより構成されている。
【００３２】
ＧＳＡセンテンスにおいては、測位に使用している各衛星情報、ＤＯＰ値が出力される。ここで、ＤＯＰ値とはＧＰＳ測位精度の劣化の程度を表す数値であり、特に、ＰＤＯＰ（Position Dilution of Precision）は、位置精度劣化度と呼ばれ、衛星の幾何学的配置を指数化したものである。ＰＤＯＰ値が小さいほど位置の精度が高く、大きいほど位置の精度が低いことを示す。
【００３３】
また、ＧＳＶセンテンスにおいては、衛星の位置と信号強度が出力される。また、ＧＳＴセンテンスにおいては、統計的位置誤差情報が出力され、実測した位置誤差のバラつきを表している。また、ＲＭＣセンテンスにおいては、位置情報が出力され、ＶＴＧセンテンスにおいては、進行速度と進行方位情報が出力される。
【００３４】
次に、本実施形態に係る電子機器におけるセンサ較正処理の実行判定方法について図面を参照して説明する。
図５は、第１の実施形態に係る電子機器の制御方法（センサ較正方法）の一例を示すフローチャートである。図６及び図７は、本実施形態に係る制御方法における、自律航法による推定位置とＧＰＳによる測位位置との関係を説明するための概略図である。ここで、以下のフローチャートに示す電子機器の制御方法は、上述した演算回路部１６０が所定の制御プログラム及びアルゴリズムプログラムに従って処理を実行することにより実現される。
【００３５】
本実施形態に係る電子機器の制御方法（センサ較正方法）においては、例えば図５のフローチャートに示すように、まず、演算回路部１６０は、今回の測位動作（位置測定処理）の起点となる位置（起点位置）を設定する（ステップＳ１０２）。
【００３６】
具体的には、今回の測位動作がＧＰＳによる初回の測位動作である場合（すなわち、前回のＧＰＳによる測位動作により取得された測位位置がない場合）には、演算回路部１６０は、所定のタイミングでＧＰＳによる所定の測位動作を実行して、取得された測位位置を今回の測位動作における起点位置に設定する。一方、前回のＧＰＳによる測位動作により取得された測位位置がある場合には、演算回路部１６０は、当該測位位置を今回の測位動作における起点位置に設定する。ここで、初回の測位動作における起点位置に設定される測位位置は、後述するステップＳ１０４〜Ｓ１１０に示すように、ＧＰＳによる測位動作において、所定の測位実行期間内に取得された測位位置が十分に収束して安定した状態にあると判定されたときの測位位置に決定される。
【００３７】
次いで、演算回路部１６０は、ＧＰＳ受信回路１３０を制御して、ステップＳ１０２において設定された測位位置を起点にして、所定の間欠期間ごとのタイミングでＧＰＳによる測位動作（位置測定処理）を実行する（ステップＳ１０４）。このＧＰＳによる測位動作においては、演算回路部１６０は、まず、予め設定された測位実行時間が経過（タイムアウト）したか否かを判定する（ステップＳ１０６）。当該測位実行時間が経過していない場合（ステップＳ１０６のＮｏ）には、演算回路部１６０は、ＧＰＳによる測位動作を実行する（ステップＳ１０８）。測位動作により取得された測位データは、時間データに関連付けられてメモリ部１７０の所定の記憶領域に順次記憶される。
【００３８】
そして、演算回路部１６０は、取得した測位データに基づいて算出された測位位置が所定の誤差範囲内に収束したか否かを判定する（ステップＳ１１０）。算出された測位位置が収束していない場合（ステップＳ１１０のＮｏ）には、演算回路部１６０は、ステップＳ１０６に戻って、測位実行時間が経過（タイムアウト）するまでＧＰＳによる測位動作を繰り返し実行する。ＧＰＳによる測位動作中に、測位実行時間が経過した場合（ステップＳ１０６のＹｅｓ）には、演算回路部１６０は、方位センサである磁気センサ１１０のキャリブレーション処理を実行することなく、一連の処理動作（センサ較正方法）を終了する。
【００３９】
ここで、ステップＳ１１０における測位位置の収束状態を判定する処理においては、算出された測位位置が十分に位置収束して所定の誤差範囲内に安定して存在する状態にあるか否かが判定される。具体的には、算出された測位位置の測位精度の劣化具合と測位精度に基づいて判断される。測位精度の劣化を示す指標としては、上述したＮＭＥＡフォーマットの各センテンスの情報のうち、ＧＰＳ衛星の配置状態や、衛星からの信号強度（Ｃ／Ｎ値）、測位に使用される衛星の数を適用することができる。例えば、演算回路部１６０は、測位使用衛星数が７衛星以上、Ｃ／Ｎ値が３０ｄＢ以上、かつＰＤＯＰが２．０以下の場合には高精度な測位が行われていると判断する。
【００４０】
また、上述したＮＭＥＡフォーマットの各センテンスの情報のうち、対地速度を適用するものであってもよく、例えば、前回の測位動作においてＧＰＳ受信回路１３０により取得された対地速度と、今回の測位動作において取得された対地速度との差分を、測位精度の劣化を判断する基準に適用してもよい。この場合には、演算回路部１６０は、例えば電子機器１００を携帯又は装着したユーザが徒歩で移動しながら利用するアプリケーションソフトウェアにおいて、１秒間で速度差が所定の閾値以上になった場合等に、測位精度が劣化していると判断する。
【００４１】
また、ＧＰＳの測位精度を表す他の指標としては、２ｄＲＭＳを適用することもできる。ここで、ｄＲＭＳは距離（distance）のＲＭＳ（二乗平均平方根）を示し、２ｄＲＭＳは、ｄＲＭＳを２倍した値であって、測位誤差が典型的な分布をする場合には誤差のうち９５％が±２ｄＲＭＳの範囲に入ることから、測位精度を表すのに適している。したがって、位置を高精度に測位できている場合には、測位誤差の指標であるｄＲＭＳ値と標準偏差はほぼ同じであると言える。演算回路部１６０は、この２ｄＲＭＳが所定の閾値以下の場合には、十分に位置収束していると判断する。
【００４２】
一方、上述したステップＳ１０４におけるＧＰＳによる測位動作（位置測定処理）において、所定の間欠期間ごとのタイミング以外の期間（すなわち、ＧＰＳの測位機能がオフされている期間）においては、演算回路部１６０は、自律航法による相対位置の推定動作（位置推定処理）を実行する（ステップＳ１１２）。自律航法による位置推定動作においては、演算回路部１６０は、所定の周期で磁気センサ１１０により取得した磁気データ及び加速度センサ１２２により取得した加速度データ、予め設定（登録）されたユーザの歩幅寸法等のパラメータ（定数）に基づいて、単位時間当たりの進行方向（移動方向）と移動距離を算出し、これを順次ベクトル加算することにより現在位置を推定する。推定された現在位置（推定位置）を示す位置データは、時間データに関連付けられてメモリ部１７０の所定の記憶領域に順次記憶される。
【００４３】
そして、ステップＳ１１０において、ＧＰＳによる測位動作により取得した測位位置が十分に収束した場合（ステップＳ１１０のＹｅｓ）には、演算回路部１６０は、ステップＳ１１０において取得したＧＰＳによる測位位置と、ステップＳ１１２において取得した自律航法による推定位置とを比較する（ステップＳ１１４）。この比較処理においては、演算回路部１６０は、今回の測位動作の起点位置を基準にして、ＧＰＳによる測位動作により取得した測位位置と、自律航法による位置推定動作により取得した推定位置とにおける移動方向、及び、測位位置と推定位置との離間距離をそれぞれ算出して比較する。
【００４４】
具体的には、例えば図６、図７に示すように、演算回路部１６０は、まず、今回の測位動作の起点位置Ｐ１に対する、今回のＧＰＳによる測位動作により取得した測位位置（ＧＰＳ測位位置）Ｐ２の方向を、ＧＰＳ移動方向（Ｐ１→Ｐ２）とする。また、今回の起点位置Ｐ１に対する、今回のＧＰＳ測位位置Ｐ２と同時刻における自律航法による位置推定動作により取得した推定位置（自律航法推定位置）Ｑ２の方向を、自律航法推定方向（Ｐ１→Ｑ２）とする。そして、演算回路部１６０は、ＧＰＳ移動方向（Ｐ１→Ｐ２）に対する自律航法推定方向（Ｐ１→Ｑ２）の角度差θ１を算出する。さらに、演算回路部１６０は、ＧＰＳによる測位動作において出力される上述したＮＭＥＡフォーマットの各センテンスの情報のうち、測位誤差情報に基づいて、今回の起点位置Ｐ１に対する、今回のＧＰＳ測位位置Ｐ２の測位誤差範囲の広がりを角度範囲で規定した角度誤差θ２を算出する。
【００４５】
次いで、演算回路部１６０は、今回の自律航法による推定位置（自律航法推定位置）Ｑ２が今回のＧＰＳによる測位位置（ＧＰＳ測位位置）Ｐ２の測位誤差範囲外にあるか否かを判定する（ステップＳ１１６）。この比較処理においては、演算回路部１６０は、例えば図６、図７に示すように、今回のＧＰＳ測位位置Ｐ２と自律航法推定位置Ｑ２との離間距離を算出し、当該離間距離が、ＧＰＳ測位位置Ｐ２の測位誤差範囲の形状を規定する長さ（測位誤差範囲が円形や楕円形の場合はその半径）よりも大きい場合には、自律航法推定位置Ｑ２がＧＰＳ測位位置Ｐ２の測位誤差範囲外にあるものと判定する。
【００４６】
そして、自律航法推定位置Ｑ２が今回のＧＰＳ測位位置Ｐ２の測位誤差範囲外にある場合（ステップＳ１１６のＹｅｓ）には、演算回路部１６０は、ステップＳ１１４において算出された角度差θ１が角度誤差θ２の１／２よりも大きい（θ１＞θ２／２）か否かを判定する（ステップＳ１１８）。例えば図６に示すように、角度差θ１が角度誤差θ２の１／２よりも大きい（θ１＞θ２／２）場合（ステップＳ１１８のＹｅｓ）には、演算回路部１６０は、磁気センサ１１０のオフセット値が適正ではなく（オフセット異常）、キャリブレーション処理が必要と判定して、磁気センサ１１０のキャリブレーション処理を実行し、オフセット値の補正を行う（ステップＳ１２０）。すなわち、ＧＰＳ測位位置Ｐ２の測位誤差範囲を規定する角度誤差θ２の範囲内に、自律航法推定方向（Ｐ１→Ｑ２）が含まれていない場合には、演算回路部１６０は、磁気センサ１１０のオフセット異常であると判定し、当該異常判定を、キャリブレーション処理を実行するための開始タイミングとする。
【００４７】
ここで、磁気センサ１１０のオフセット異常の判定に基づいて開始されるキャリブレーション処理の手法としては、特に限定するものではなく、少なくとも次のような処理を実行するものであれば、例えば上述した特許文献等に記載された周知の手法を適用するものであってもよい。すなわち、本実施形態に適用されるキャリブレーション処理においては、例えば磁気センサ１１０のオフセットによる方位のずれが、実際の（正確な）方向に対して角度＋Δθ（図６に示した角度差θ１に相当する）ずれているとした場合には、演算回路部１６０により、自律航法推定方向を−Δθ回転させて角度ずれが相殺されるようにオフセット値を補正する処理が実行される。なお、このキャリブレーション処理は、自動的に実行されることが好ましく、当該自動キャリブレーション処理が正常に終了しなかった場合に、ユーザに手動によるキャリブレーション処理が必要であることを報知して、その実行を促すようにしてもよい。
【００４８】
次いで、演算回路部１６０は、自律航法において推定される移動距離を算出するために用いられる予め設定されたパラメータ（定数、例えば歩幅寸法）を補正する処理を行う（ステップＳ１２２）。すなわち、上記のステップＳ１１６及びＳ１１８において、自律航法推定位置Ｑ２が今回のＧＰＳ測位位置Ｐ２の測位誤差範囲外にあり、かつ、角度差θ１が角度誤差θ２の１／２よりも大きい（θ１＞θ２／２）と判定された場合には、磁気センサ１１０のオフセット異常に加え、推定移動距離を算出するために用いられたパラメータの設定が適正ではない（パラメータ異常）場合が考えられる。そこで、本実施形態においては、例えば今回の起点位置Ｐ１と自律航法推定位置Ｑ２との間の直線距離をＬｄ、起点位置Ｐ１とＧＰＳ測位位置Ｐ２との間の直線距離をＬｇとし、これらの直線距離ＬｄとＬｇとが一致しない場合（Ｌｄ≠Ｌｇ）には、演算回路部１６０により、自律航法により推定された直線距離ＬｄをＬｇ／Ｌｄ倍して直線距離の差分が相殺されるように歩幅寸法等のパラメータを補正する処理を実行する。
【００４９】
なお、ステップＳ１１８において、角度差θ１が角度誤差θ２の１／２よりも大きい（θ１＞θ２／２）と判定された場合（ステップＳ１１８のＹｅｓ）に実行される、キャリブレーション処理（オフセット補正処理）（ステップＳ１２０）及びパラメータ補正処理（ステップＳ１２２）は、図５のフローチャートに示した順序で実行するものに限定されるものではない。すなわち、パラメータ補正処理の実行後に、キャリブレーション処理を実行するものであってもよいし、キャリブレーション処理とパラメータ補正処理とを同時並行して実行するものであってもよい。
【００５０】
一方、ステップＳ１１８において、例えば図７に示すように、角度差θ１が角度誤差θ２の１／２以下（θ１≦θ２／２）の場合（ステップＳ１１８のＮｏ）には、演算回路部１６０は、磁気センサ１１０のオフセット値は適正であるが、自律航法において推定移動距離を算出するために用いたパラメータの設定が適正ではない（パラメータ異常）と判定して、例えば歩幅寸法等のパラメータの補正を行う（ステップＳ１２２）。すなわち、演算回路部１６０は、角度差θ１が角度誤差θ２の１／２以下（θ１≦θ２／２）の場合には、自律航法における推定移動距離を算出するためのパラメータのみを補正して、磁気センサ１１０のキャリブレーション処理を実行しない。
【００５１】
また、ステップＳ１１６において、自律航法推定位置Ｑ２が今回のＧＰＳ測位位置Ｐ２の測位誤差範囲内にある場合（ステップＳ１１６のＮｏ）には、演算回路部１６０は、磁気センサ１１０のオフセット値、及び、自律航法における推定移動距離を算出するためのパラメータのいずれもが適正であると判定して、一連の処理動作を終了する。すなわち、演算回路部１６０は、自律航法推定位置Ｑ２がＧＰＳ測位位置Ｐ２の測位誤差範囲内にある場合には、磁気センサ１１０のキャリブレーション処理、及び、自律航法における推定移動距離を算出するためのパラメータの補正処理のいずれも実行しない。
【００５２】
なお、図５に示したフローチャートにおいては、ステップＳ１１６のＮｏ判定、及び、ステップＳＳ１２０、Ｓ１２２の各処理の終了後、一連の処理動作を終了するように図示したが、実際には、ステップＳ１０２に戻って、上述した一連の処理動作が繰り返し実行される。この場合、ステップＳ１０２において、今回のＧＰＳによる測位動作により取得した測位位置（ＧＰＳ測位位置）Ｐ２が、次回の測位動作の起点位置に設定される。すなわち、本実施形態においては、自律航法による推定位置に関わらず、所定のタイミングで間欠的に取得されるＧＰＳによる測位位置が、毎回、次回の測位動作（自律航法による位置推定動作を含む）の起点位置に設定される。
【００５３】
また、上述した一連の処理動作は、ユーザが特に意識することなく、電子機器１００の日常的な使用状態においてバックグラウンドで自動的に実行される。また、図５に示したフローチャートにおいては図示を省略したが、演算回路部１６０は、上述した一連の処理動作の実行中、処理動作を中断又は終了させる入力操作や動作状態の変化を常時監視して、当該入力操作や状態変化を検出した場合には、処理動作を強制的に終了する。具体的には、演算回路部１６０は、ユーザによるアプリケーションソフトウェアの終了操作や、動作電源の遮断操作、電源供給部１８０における電池残量の低下、実行中の機能やアプリケーションソフトウェアの異常等を検出して、一連の処理動作を強制的に中断して終了する。
【００５４】
このように、本実施形態においては、ＧＰＳによる測位機能を所定のタイミングで間欠的に動作させて現在位置を測位し、ＧＰＳによる測位機能が動作していない期間においては、ＧＰＳにより取得された測位位置を起点位置に設定して、自律航法により現在位置を推定する動作を行うことにより、磁気センサ１１０を搭載した電子機器１００を携帯又は装着したユーザの現在位置や移動経路が測定される。ここで、ＧＰＳによる測位動作においては、測位位置が十分に位置収束し安定した状態にあると判定された測位位置（ＧＰＳ測位位置）を、現在位置として決定する。これに基づいて、測位動作の起点位置に対する、ＧＰＳ測位位置の方向（ＧＰＳ移動方向）と、同時刻における自律航法推定位置の方向（自律航法推定方向）との角度差θ１、及び、上記起点位置に対する、ＧＰＳ測位位置の測位誤差範囲を規定する角度誤差θ２が算出される。そして、自律航法推定位置がＧＰＳ測位位置の測位誤差範囲外にあり、かつ、上記角度差θ１が角度誤差θ２の１／２よりも大きい（θ１＞θ２／２）と判定された場合に、磁気センサ１１０のオフセット異常である判定して、キャリブレーション処理を実行するように制御される。
【００５５】
すなわち、本実施形態においては、起点位置を基準にして、間欠的に実行制御されるＧＰＳによる測位動作により取得された測位位置の測位誤差範囲を規定する角度誤差θ２の角度範囲に、自律航法による位置推定動作により取得された同時刻における推定位置の方向が含まれていない場合には、方位センサである磁気センサ１１０のオフセット値が適正ではない（異常である）と判定される。そして、このオフセット異常判定を開始タイミングとして、キャリブレーション処理が実行される。これにより、ユーザに特別な動作を実行させる等の負担を強いることなく、磁気センサのオフセット値の異常を判定して、適切なタイミングでキャリブレーション処理を実行することができ、正確な方位を検出することができる。したがって、自律航法による位置推定動作における位置推定精度を向上させることができ、電子機器１００を携帯又は装着したユーザの現在位置や移動経路を正確に測定することができる。また、本実施形態においては、比較的消費電力の大きいＧＰＳによる測位機能を間欠的に動作させ、ＧＰＳによる測位機能が動作していない期間では、自律航法により現在位置を推定しているので、携帯型の電子機器における消費電力を抑制することもできる。
【００５６】
＜第２の実施形態＞
次に、本発明に係る電子機器の第２の実施形態について図面を参照して説明する。
図８は、第２の実施形態に係る電子機器の制御方法（センサ較正方法）の要部の一例を示すフローチャートである。ここで、上述した第１の実施形態と同等の処理動作については、図５のフローチャートを参照し、その説明を簡略化する。また、図９及び図１０は、本実施形態に係る制御方法における、自律航法による推定位置とＧＰＳによる測位位置との関係を説明するための概略図である。
【００５７】
上述した第１の実施形態においては、所定のタイミングでＧＰＳによる測位動作を行うことにより取得された測位位置（ＧＰＳ測位位置）を、次回の測位動作（自律航法による位置推定動作を含む）の起点位置に順次設定する場合について説明した。第２の実施形態においては、自律航法による位置推定動作を行うことにより取得された推定位置（自律航法推定位置）が、ＧＰＳ測位位置の測位誤差範囲内にある場合には、当該自律航法推定位置を、次回の測位動作の起点位置に設定し、自律航法推定位置が、ＧＰＳ測位位置の測位誤差範囲内にない場合には、ＧＰＳ測位位置を、次回の測位動作の起点位置に設定することを特徴としている。
【００５８】
すなわち、第２の実施形態においては、上述した第１の本実施形態に示した電子機器の制御方法（センサ構成方法）に適用される、測位動作の起点位置の設定処理（ステップＳ１０２）において、例えば図８のフローチャートに示すように、まず、演算回路部１６０は、所定のタイミングで実行される測位動作が、初回のＧＰＳによる測位動作であるか否かを判定する（ステップＳ２０２）。
【００５９】
ステップＳ２０２において、実行される測位動作が初回のＧＰＳによる測位動作ではない場合（ステップＳ２０２のＮｏ）には、演算回路部１６０は、前回の自律航法による推定位置がＧＰＳによる測位位置の測位誤差範囲内にあるか否かを判定する（ステップＳ２０４）。自律航法による推定位置がＧＰＳの測位誤差範囲内にあると判定した場合（ステップＳ２０４のＹｅｓ；図９中、Ｑ１参照）には、演算回路部１６０は、前回の自律航法による推定位置を、今回の測位動作における起点位置に設定する（ステップＳ２０６）。
【００６０】
一方、ステップＳ２０２において、実行される測位動作が初回のＧＰＳによる測位である場合（ステップＳ２０２のＹｅｓ）には、演算回路部１６０は、ＧＰＳによる測位動作を行って、取得された測位位置を今回の測位動作における起点位置に設定する（ステップＳ２０８）。また、ステップＳ２０４において、自律航法による推定位置がＧＰＳの測位誤差範囲内にないと判定した場合（ステップＳ２０４のＮｏ；図９中、Ｑ１′参照）には、演算回路部１６０は、前回のＧＰＳによる測位位置を、今回の測位動作における起点位置に設定する（ステップＳ２０８）。
【００６１】
次いで、演算回路部１６０は、ＧＰＳ受信回路１３０を制御して、ステップＳ２０６又はＳ２０８において設定された自律航法による推定位置、又は、ＧＰＳによる測位位置を起点にして、所定の間欠期間ごとのタイミングでＧＰＳによる測位動作（位置測定処理）を実行する（ステップＳ２１０）。ここで、ステップＳ２１０におけるＧＰＳによる測位動作は、上述した第１の実施形態（図５のフローチャート参照）に示したステップＳ１０４の処理動作に相当し、ステップＳ２１０の実行後、演算回路部１６０は、ステップＳ１０６以降の処理動作を実行する。すなわち、演算回路部１６０は、所定の間欠期間ごとのタイミングで、タイムアウトするまでの間にＧＰＳによる測位動作を繰り返し実行して、ＧＰＳにより取得した測位位置が十分に位置収束した結果を、現在位置に相当する測位位置として決定する（ステップＳ１０６〜Ｓ１１０参照）。
【００６２】
また、演算回路部１６０は、ステップＳ２１０におけるＧＰＳによる測位動作に同時並行して、ステップＳ２０６又はＳ２０８において設定された自律航法による推定位置、又は、ＧＰＳによる測位位置を起点にして、自律航法による相対位置の推定動作（位置推定処理）を実行する（ステップＳ２１２）。ここで、ステップＳ２１２におけるＧＰＳによる測位動作は、上述した第１の実施形態（図５のフローチャート参照）に示したステップＳ１１２の処理動作に相当し、ステップＳ２１２の実行後、演算回路部１６０は、ステップＳ１１４以降の処理動作を実行する。すなわち、演算回路部１６０は、間欠的にＧＰＳの測位機能をオンし、ＧＰＳの測位機能がオフされている期間においては、自律航法により現在位置を推定する。
【００６３】
そして、演算回路部１６０は、ＧＰＳによる測位位置と、同時刻における自律航法による推定位置とを比較して、例えば図９、図１０に示すように、今回の自律航法による推定位置（自律航法推定位置）Ｑ２が今回のＧＰＳによる測位位置（ＧＰＳ測位位置）Ｐ２の測位誤差範囲外にあるか否かを判定する（ステップＳ１１４、Ｓ１１６）。
【００６４】
自律航法推定位置Ｑ２がＧＰＳ測位位置Ｐ２の測位誤差範囲外にある場合には、演算回路部１６０は、ＧＰＳ移動方向（Ｑ１→Ｐ２）に対する自律航法推定方向（Ｑ１→Ｑ２）の角度差θ１が、ＧＰＳ測位位置Ｐ２の測位誤差範囲を規定する角度誤差θ２の１／２よりも大きい（θ１＞θ２／２）か否かを判定する（ステップＳ１１８）。そして、例えば図９に示すように、角度差θ１が角度誤差θ２の１／２よりも大きい（θ１＞θ２／２）場合には、演算回路部１６０は、少なくとも磁気センサ１１０のオフセット異常であると判定して、当該判定を開始タイミングとして磁気センサ１１０のオフセット値を補正するキャリブレーション処理を実行する（ステップＳ１２０）。さらに、演算回路部１６０は、自律航法における推定移動距離を算出するために用いるパラメータ（例えば歩幅寸法）を補正する処理を実行する（ステップＳ１２２）。
【００６５】
一方、例えば図１０に示すように、角度差θ１が角度誤差θ２の１／２以下（θ１≦θ２／２）の場合には、演算回路部１６０は、パラメータ異常であると判定して、自律航法における推定移動距離を算出するためのパラメータ（例えば歩幅寸法）を適正する処理のみを実行する（ステップＳ１２２）。
【００６６】
また、自律航法推定位置Ｑ２がＧＰＳ測位位置Ｐ２の測位誤差範囲内にある場合には、演算回路部１６０は、オフセット値及びパラメータのいずれもが適正であると判定して、磁気センサ１１０のキャリブレーション処理、及び、自律航法における推定移動距離を算出するためのパラメータの補正処理のいずれも実行することなく、一連の処理動作を終了する。
【００６７】
なお、図９、図１０において二点鎖線で示した、起点位置Ｑ１を中心とし、測位誤差範囲に接する２本の円弧線ＡＣ１、ＡＣ２で挟まれ、角度誤差θ２より外側の領域は、パラメータは適正であって、オフセット値が適正でない領域である。自律航法推定位置Ｑ２がこの領域内にある場合には、演算回路部１６０は、パラメータは適正であり、オフセット値のみが適正でないと判定して、磁気センサ１１０のキャリブレーション処理のみを実行する。
【００６８】
なお、本実施形態においても、上述した第１の実施形態と同様に、一連の処理動作（ステップＳ２０２〜Ｓ２１２、Ｓ１０６〜Ｓ１２２）の終了後、図８に示したフローチャートのステップＳ２０２に戻って、上述した一連の処理動作が繰り返し実行される。この場合、ステップＳ２０２、Ｓ２０４に示したように、今回の自律航法による推定位置が今回のＧＰＳによる測位位置の測位誤差範囲内にある場合には、今回の自律航法による推定位置が、次回の測位動作の起点位置に設定される。一方、今回の自律航法による推定位置が今回のＧＰＳによる測位位置の測位誤差範囲内にない場合には、今回のＧＰＳによる測位位置が、次回の測位動作の起点位置に設定される。
【００６９】
このように、本実施形態においては、間欠的にＧＰＳによる測位動作が実行される所定のタイミングにおいては、ＧＰＳによる測位位置の測位誤差範囲内に、同時刻における自律航法による推定位置が含まれている場合には、自律航法による推定位置を現在位置として推定するとともに起点位置に設定して、次回の自律航法による位置推定動作を実行する。また、当該タイミングにおいて、ＧＰＳによる測位位置の測位誤差範囲内に、同時刻における自律航法による推定位置が含まれていない場合には、ＧＰＳによる測位位置を現在位置とするとともに起点位置に設定して、次回の自律航法による位置推定動作を実行する。また、ＧＰＳによる測位動作が実行されていない期間においては、上記の推定位置又は測位位置を起点にして、自律航法による推定位置を現在位置として推定する。これにより、電子機器１００を携帯又は装着したユーザの現在位置や移動経路を正確に測定することができる。本実施形態においても、ＧＰＳによる測位動作により取得された測位位置の測位誤差範囲を規定する角度誤差θ２の角度範囲に、自律航法による位置推定動作により取得された同時刻における推定位置の方向が含まれていない場合には、磁気センサ１１０のオフセット異常であると判定して、その判定を開始タイミングとしてキャリブレーション処理が実行される。したがって、ユーザに負担を強いることなく、適切なタイミングで磁気センサのキャリブレーション処理を実行することができ、正確な方位を検出することができる。
【００７０】
なお、上述した各実施形態においては、方位センサとして磁気センサを適用し、ＧＰＳによる測位位置と自律航法による推定位置とを比較することにより、周辺磁界の影響を受けた磁気センサのオフセット値の異常を判定して、当該オフセット値を補正するキャリブレーション処理を適切なタイミングで実行する場合について説明したが、本発明はこれに限定されるものではない。すなわち、ユーザの現在位置や移動経路を測定するために使用される方位センサであって、周辺環境の影響を受けてオフセット値やパラメータに異常が生じるものであれば、本発明を良好に適用することができる。例えば、方位センサとして角速度センサ（ジャイロセンサ）を適用することができ、周辺温度の変化によりオフセットが生じた場合に、ＧＰＳによる測位位置と自律航法による推定位置とを比較することにより、当該オフセットの発生を判定して、当該オフセットを補正するキャリブレーション処理を適切なタイミングで実行することができる。
【００７１】
以上、本発明のいくつかの実施形態について説明したが、本発明は、上述した実施形態に限定されるものではなく、特許請求の範囲に記載された発明とその均等の範囲とを含むものである。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【００７２】
（付記）
［１］
電子機器であって、
前記電子機器の周囲の磁場を検出する磁気センサと、
前記電子機器の動きに関する信号を検出するモーションセンサと、
ＧＰＳ衛星から受信した情報に基づいて、前記電子機器の地理的な位置を測位する測位動作を実行する測位部と、
所定の起点位置を基準にして、前記磁気センサにより検出される前記磁場の方位と、前記モーションセンサにより検出される前記信号と、所定のパラメータとに基づいて位置を推定する推定動作を実行する自律航法処理部と、
前記測位部による前記測位動作を間欠的に実行させ、前記測位部が前記測位動作を実行しているときと前記測位部が前記測位動作を実行していない期間とで、前記自律航法処理部による前記推定動作を実行させる動作制御部と、
前記測位部により測位された第１位置における測位誤差範囲を前記ＧＰＳ衛星から受信した情報に基づいて算出し、前記起点位置から前記測位誤差範囲に向いた第１方向と、前記起点位置から、前記測位部が前記第１位置を測位したときと同じ時刻において前記自律航法処理部により推定された第２位置に向いた第２方向と、を算出し、前記第１方向と前記第２方向とを比較して、前記磁気センサにオフセット値を補正するキャリブレーション処理を行う必要があるか否かを判定するキャリブレーション判定処理部と、
を有することを特徴とする電子機器。
【００７３】
［２］
前記キャリブレーション判定処理部は、前記起点位置に対する前記第１位置の前記測位誤差範囲を規定する角度範囲内に、前記起点位置に対する前記第２位置の前記第２方向が含まれていない場合には、前記磁気センサに前記キャリブレーション処理を行う必要があると判定することを特徴とする［１］に記載の電子機器。
【００７４】
［３］
前記動作制御部は、前記測位部を間欠的に動作させるタイミングにおいて、所定の測位実行時間内に複数回の前記測位動作を実行させ、
前記キャリブレーション判定処理部は、前記測位部による前記複数回の前記測位動作において、所定の誤差範囲内に収束した位置を、前記第１位置として用いることを特徴とする［１］又は［２］に記載の電子機器。
【００７５】
［４］
前記測位部により測位された前記第１位置における前記測位誤差範囲と、前記自律航法処理部により推定された前記第２位置とを、比較することにより、前記自律航法処理部における前記パラメータの値が適正であるか否かを判定するパラメータ判定処理部と、
前記パラメータ判定処理部により前記パラメータの値が適正でないと判定されたときに、前記パラメータの値を補正するパラメータ補正処理部と、
を有することを特徴とする［１］乃至［３］のいずれかに記載の電子機器。
【００７６】
［５］
前記動作制御部は、前記自律航法処理部による次回の前記推定動作における前記起点位置を前記第１位置に設定することを特徴とする［１］乃至［４］のいずれかに記載の電子機器。
【００７７】
［６］
前記動作制御部は、
前記測位部により測位された前記第１位置における前記測位誤差範囲の中に前記自律航法処理部により推定された前記第２位置が含まれている場合には、前記自律航法処理部による次回の前記推定動作における前記起点位置を前記第２位置に設定し、
前記測位部により測位された前記第１位置における前記測位誤差範囲の中に前記自律航法処理部により推定された前記第２位置が含まれていない場合には、前記自律航法処理部による次回の前記推定動作における前記起点位置を前記第１位置に設定することを特徴とする［１］乃至［４］のいずれかに記載の電子機器。
【００７８】
［７］
ＧＰＳ衛星から受信した情報に基づいて地理的な位置を測位する測位部による測位動作を間欠的に実行させ、
前記測位部が前記測位動作を実行しているときと前記測位部が前記測位動作を実行していない期間とで、所定の起点位置を基準にして、磁気センサにより検出される磁場の方位と、モーションセンサにより検出される信号と、所定のパラメータとに基づく自律航法により位置を推定させ、
前記測位部により測位された第１位置における測位誤差範囲を前記ＧＰＳ衛星から受信した情報に基づいて算出し、
前記起点位置から前記測位誤差範囲に向いた第１方向と、前記起点位置から、前記測位部が前記第１位置を測位したときと同じ時刻において前記自律航法により推定された第２位置に向いた第２方向とを、算出し、
前記第１方向と前記第２方向とを比較して、前記磁気センサにオフセット値を補正するキャリブレーション処理を行う必要があるか否かを判定する、
ことを特徴とするセンサ較正方法。
【００７９】
［８］
コンピュータに、
ＧＰＳ衛星から受信した情報に基づいて地理的な位置を測位する測位部による測位動作を間欠的に実行させ、
前記測位部に前記測位動作を実行させているときと前記測位部に測位動作を実行させていない期間とで、所定の起点位置を基準にして、磁気センサにより検出される磁場の方位と、モーションセンサにより検出される信号と、所定のパラメータとに基づく自律航法により位置を推定させ、
前記測位部により取得された第１位置における測位誤差範囲を前記ＧＰＳ衛星から受信した情報に基づいて算出させ、
前記起点位置から前記測位誤差範囲に向いた第１方向と、前記起点位置から、前記測位部が前記第１位置を測位したときと同じ時刻において前記自律航法により取得された第２位置に向いた第２方向と、を算出させ、
前記第１方向と前記第２方向とを比較して、前記磁気センサにオフセット値を補正するキャリブレーション処理を行う必要があるか否かを判定させる、
ことを特徴とするセンサ較正プログラム。
【符号の説明】
【００８０】
１００    電子機器
１１０    磁気センサ
１２０    モーションセンサ
１２２    加速度センサ
１３０    ＧＰＳ受信回路
１６０    演算回路部
【図１】
0006635285.tif 000002
【図２】
0006635285.tif 000003
【図３】
0006635285.tif 000004
【図４】
0006635285.tif 000005
【図５】
0006635285.tif 000006
【図６】
0006635285.tif 000007
【図７】
0006635285.tif 000008
【図８】
0006635285.tif 000009
【図９】
0006635285.tif 000010
【図１０】
0006635285.tif 000011