位置算出方法及び位置算出装置
【課題】位置算出の正確性とセンサー部の消費電力とのバランスを考慮した適切な位置算出を実現すること。
【解決手段】移動体に保持或いは搭載される携帯型電話機1において、ホストCPU40は、移動体の移動状態を検出するセンサー部90を所定の間欠動作周期で間欠的に動作させるが、この間欠動作周期をGPS衛星信号の受信状況に基づいて可変に制御する。そして、間欠動作周期で動作したセンサー部90の検出結果を用いて所定の慣性航法演算を行って慣性航法演算位置を算出し、GPS算出位置と慣性航法演算位置とを合成して出力位置を決定する。
【解決手段】移動体に保持或いは搭載される携帯型電話機1において、ホストCPU40は、移動体の移動状態を検出するセンサー部90を所定の間欠動作周期で間欠的に動作させるが、この間欠動作周期をGPS衛星信号の受信状況に基づいて可変に制御する。そして、間欠動作周期で動作したセンサー部90の検出結果を用いて所定の慣性航法演算を行って慣性航法演算位置を算出し、GPS算出位置と慣性航法演算位置とを合成して出力位置を決定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動体に保持或いは搭載されて前記移動体とともに移動する位置算出装置が実行する位置算出方法等に関する。
【背景技術】
【0002】
測位用信号を利用した測位システムとしては、GPS(Global Positioning System)が広く知られており、携帯型電話機やカーナビゲーション装置等に内蔵された位置算出装置に利用されている。GPSでは、複数のGPS衛星の位置や各GPS衛星から自機までの擬似距離等の情報に基づいて自機の位置を示す3次元の座標値と時計誤差とを求める位置算出演算を行う。
【0003】
測位用信号を利用した位置算出では、様々な誤差要因によって位置算出の正確性が低下するという問題があり、位置算出の正確性を向上させるための様々な技術が考案されている。例えば、特許文献1には、移動体の移動状態を検出するセンサー部の検出結果を用いて慣性航法演算を行い、この慣性航法演算による位置を用いて、測位用信号を利用して算出した位置を補正する技術が開示されている。
【特許文献1】特開2008−107218号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
一般的に、センサー部は随時検出動作を行っている。位置算出装置は、センサー部により検出された検出結果を用いて移動体の移動ベクトルを算出するが、随時検出動作を行っているセンサー部の検出結果のうち、所定の時間間隔のタイミングで検出された検出結果を利用するのが一般的である。従って、利用する検出結果の時間間隔を短くし、その時間間隔の都度移動ベクトルを算出することとすれば、慣性航法演算の正確性は向上する。
【0005】
一方、センサー部を出来る限り駆動せず、消費電力を削減したい要望もある。そこで、センサー部を間欠動作させることによる消費電力の低減を図る方法が考えられる。しかし、上述した慣性航法演算の正確性向上の観点から、センサー部の動作時間間隔はできるだけ短時間であることが望まれる。従って、センサー部を利用した位置算出を行う場合には、求める位置の正確性とセンサー部駆動にかかる消費電力の低減化とは相反する問題となり得る。
【0006】
本発明は上述した課題に鑑みて為されたものであり、その目的とするところは、位置算出の正確性とセンサー部の消費電力とのバランスを考慮した適切な位置算出を実現することにある。
【課題を解決するための手段】
【0007】
以上の課題を解決するための第1の発明は、移動体に保持或いは搭載されて前記移動体とともに移動する位置算出装置が実行する位置算出方法であって、測位用衛星から測位用信号を受信することと、受信した前記測位用信号に基づいて位置を算出することと、前記移動体の移動状態を検出するセンサー部を所定の間欠動作周期で間欠的に動作させることと、前記間欠動作周期を前記測位用信号の受信状況に基づいて可変に制御することと、前記間欠動作周期で動作した前記センサー部の検出結果を用いて所定の慣性航法演算を行って位置を算出することと、前記測位用信号に基づく位置と前記慣性航法演算による位置とを用いて出力位置を決定することと、を含む位置算出方法である。
【0008】
また、他の発明として、移動体に保持或いは搭載されて前記移動体とともに移動する位置算出装置であって、測位用衛星から測位用信号を受信する受信部と、受信した前記測位用信号に基づいて位置を算出する第1の位置算出部と、前記移動体の移動状態を検出するセンサー部を所定の間欠動作周期で間欠的に動作させるセンサー動作制御部と、前記間欠動作周期を前記測位用信号の受信状況に基づいて可変に制御する動作周期制御部と、前記間欠動作周期で動作した前記センサー部の検出結果を用いて所定の慣性航法演算を行って位置を算出する第2の位置算出部と、前記測位用信号に基づく位置と前記慣性航法演算による位置とを用いて出力位置を決定する位置決定部と、を備えた位置算出装置を構成してもよい。
【0009】
この第1の発明等によれば、移動体の移動状態を検出するセンサー部を所定の間欠動作周期で間欠的に動作させるが、この間欠動作周期を測位用信号の受信状況に基づいて可変に制御する。そして、間欠動作周期で動作したセンサー部の検出結果を用いて所定の慣性航法演算を行って位置を算出し、測位用信号に基づいて算出した位置と慣性航法演算による位置とを用いて出力位置を決定する。
【0010】
測位用信号の受信状況が良好である場合は、測位用信号に基づいて算出した位置は正確性の高い位置である可能性が高いため、慣性航法演算による位置にはそれほど高い正確性が要求されない。従って、この場合は、センサー部の間欠動作周期を長く設定する。一方、測位用信号の受信状況が良好ではない場合は、測位用信号に基づいて算出した位置は正確性の低い位置である可能性が高いため、慣性航法演算による位置には高い正確性が要求される。従って、この場合は、センサー部の間欠動作周期を短く設定する。これにより、位置算出の正確性とセンサー部の消費電力とのバランスを考慮した適切な位置算出を実現することができる。
【0011】
また、第2の発明として、第1の発明の位置算出方法であって、カルマンフィルターの理論に基づく予測演算を行って前記移動体の位置及び移動速度を予測することと、前記予測された位置及び移動速度を用いて、当該予測位置で前記測位用信号を受信した場合の前記測位用信号の周波数を予測することと、前記予測された周波数と受信した前記測位用信号の周波数との差異に基づいて、前記間欠動作周期を可変に制御することと、を更に含む位置算出方法を構成してもよい。
【0012】
この第2の発明によれば、カルマンフィルターの理論に基づく予測演算を行って移動体の位置及び移動速度を予測する。そして、予測された位置及び移動速度を用いて、当該予測位置で測位用信号を受信した場合の測位用信号の周波数を予測する。そして、予測された周波数と実際に受信した測位用信号の周波数との差異に基づいて、センサー部の間欠動作周期を可変に制御する。
【0013】
測位用信号の受信状況が良好であれば、予測された位置及び移動速度を用いて予測した測位用信号の周波数と実際に受信した測位用信号の周波数とは近い値となるはずである。そのため、周波数の差異を判断材料とすることで、測位用信号の受信状況を把握でき、センサー部の間欠動作周期を適切に設定することが可能となる。
【0014】
また、第3の発明として、第2の発明の位置算出方法であって、前記予測された位置及び移動速度を用いて、当該予測位置で前記測位用信号を受信した場合の前記測位用信号の位相を予測することと、前記予測された位相と受信した前記測位用信号の位相との差異に基づいて、前記間欠動作周期を可変に制御することと、を更に含む位置算出方法を構成することも可能である。
【0015】
この第3の発明によれば、予測された位置及び移動速度を用いて、当該予測位置で測位用信号を受信した場合の測位用信号の位相を予測する。そして、予測された位相と受信した測位用信号の位相との差異に基づいて、センサー部の間欠動作周期を可変に制御する。この場合も、第2の発明と同様の効果が発揮される。
【0016】
また、第4の発明として、第3の発明の位置算出方法であって、前記周波数及び位相の予測を所定間隔で行うことと、前記所定間隔で予測を行う毎に前記間欠動作周期の可変制御を行うことと、を更に含む位置算出方法を構成してもよい。
【0017】
この第4の発明によれば、所定間隔で周波数及び位相の予測を行う毎に、センサー部の間欠動作周期の可変制御を行う。これにより、位置算出を行う時点においてセンサー部の間欠動作周期が適切に設定された状態となるように調整することが可能となる。
【0018】
また、第5の発明として、第1〜第4の何れかの発明の位置算出方法であって、前記測位用信号の受信状況の履歴に基づいて前記間欠動作周期を可変に制御することを更に含む位置算出方法を構成してもよい。
【0019】
この第5の発明によれば、測位用信号の受信状況の履歴に基づいてセンサー部の間欠動作周期を可変に制御する。例えば、測位用信号の受信状況が次第に良くなっていく場合は、センサー部の間欠動作周期を徐々に長くしていき、測位用信号の受信状況が次第に悪くなっていく場合は、センサー部の間欠動作周期を徐々に短くしていくことにすれば好適である。
【0020】
また、第6の発明として、第1〜第5の何れかの発明の位置算出方法であって、前記測位用信号の受信状況から前記移動体の移動状況を判定することと、前記移動体の移動状況に基づいて前記間欠動作周期を可変に制御することと、を更に含む位置算出方法を構成してもよい。
【0021】
この第6の発明によれば、測位用信号の受信状況から移動体の移動状況を判定する。そして、移動体の移動状況に基づいてセンサー部の間欠動作周期を可変に制御する。移動体の移動状況が急加速状態や旋回状態といった不安定な状態であると判定した場合は、測位用信号に基づく位置算出の正確性が低下するため、センサー部の間欠動作周期を短くし、慣性航法演算の正確性を向上させることにすれば好適である。
【0022】
また、第7の発明として、第1〜第6の何れかの発明の位置算出方法であって、前記測位用信号の受信状況から前記測位用信号の受信環境を判定することと、前記受信環境に基づいて前記間欠動作周期を可変に制御することと、を更に含む位置算出方法を構成してもよい。
【0023】
この第7の発明によれば、測位用信号の受信状況から測位用信号の受信環境を判定する。そして、受信環境に基づいてセンサー部の間欠動作周期を可変に制御する。測位用信号の受信環境が悪い場合は、測位用信号に基づく位置算出の正確性が低下するため、センサー部の間欠動作周期を短くし、慣性航法演算の正確性を向上させることにすれば好適である。
【発明を実施するための最良の形態】
【0024】
以下、図面を参照して、位置算出装置を備えた電子機器の一種である携帯型電話機1に本発明を適用した場合の実施形態について説明する。また、携帯型電話機1は、ユーザーによって携帯されて移動したり、自動車等に配置設定されて移動する。このため、本実施形態では、携帯型電話機1を保持或いは搭載した人や物のことを“移動体”として説明し、携帯型電話機1が検出する各種方向を移動体の方向として説明する。尚、本発明を適用可能な実施形態が以下説明する実施形態に限定されるわけでない
【0025】
1.機能構成
図1は、携帯型電話機1の機能構成を示すブロック図である。携帯型電話機1は、GPSアンテナ10と、GPS受信部20と、ホストCPU(Central Processing Unit)40と、操作部50と、表示部60と、携帯電話用アンテナ70と、携帯電話用無線通信回路部80と、センサー部90と、通電制御部100と、ROM(Read Only Memory)110と、RAM(Random Access Memory)120とを備えて構成される。
【0026】
GPSアンテナ10は、GPS衛星から発信されているGPS衛星信号を含むRF(Radio Frequency)信号を受信するアンテナであり、受信した信号をGPS受信部20に出力する。尚、GPS衛星信号は、衛星毎に異なる拡散符号の一種であるPRN(Pseudo Random Noise)コードで直接スペクトラム拡散方式により変調された1.57542[GHz]の通信信号である。PRNコードは、コード長1023チップを1PNフレームとする繰返し周期1msの擬似ランダム雑音符号である。
【0027】
GPS受信部20は、GPSアンテナ10から出力された信号に基づいて携帯型電話機1の位置を計測する位置算出回路であり、いわゆるGPS受信機に相当する機能ブロックである。GPS受信部20は、RF(Radio Frequency)受信回路部21と、ベースバンド処理回路部30とを備えて構成される。尚、RF受信回路部21と、ベースバンド処理回路部30とは、それぞれ別のLSI(Large Scale Integration)として製造することも、1チップとして製造することも可能である。
【0028】
RF受信回路部21は、RF信号の処理回路ブロックであり、所定の発振信号を分周或いは逓倍することで、RF信号乗算用の発振信号を生成する。そして、生成した発振信号を、GPSアンテナ10から出力されたRF信号に乗算することで、RF信号を中間周波数の信号(以下、「IF(Intermediate Frequency)信号」と称す。)にダウンコンバートし、IF信号を増幅等した後、A/D変換器でデジタル信号に変換して、ベースバンド処理回路部30に出力する。
【0029】
ベースバンド処理回路部30は、RF受信回路部21から出力されたIF信号に対して相関処理等を行ってGPS衛星信号を捕捉・抽出し、データを復号して航法メッセージや時刻情報等を取り出す回路部である。ベースバンド処理回路部30は、演算制御部31と、ROM35と、RAM37とを備えて構成される。また、演算制御部31は、メジャメント取得演算部33を備えて構成される。
【0030】
メジャメント取得演算部33は、RF受信回路部21から出力された受信信号(IF信号)から、GPS衛星信号の捕捉を行う回路部であり、相関演算部331を備えて構成されている。メジャメント取得演算部33は、GPS衛星信号の受信周波数やコード位相等の情報を取得し、メジャメント実測値としてホストCPU40に出力する。
【0031】
相関演算部331は、受信信号に含まれるPRNコードと、装置内部で発生させたレプリカコードとの相関を、例えばFFT演算を用いて算出し積算する相関演算処理を行うことで、受信信号からGPS衛星信号を捕捉する。レプリカコードとは、擬似的に発生させた捕捉しようとするGPS衛星信号に含まれるPRNコードを模擬した信号である。
【0032】
捕捉しようとするGPS衛星信号が間違いなければ、そのGPS衛星信号に含まれるPRNコードとレプリカコードとは一致し(捕捉成功)、間違っていれば一致しない(捕捉失敗)。そのため、算出された相関値のピークを判定することによってGPS衛星信号の捕捉が成功したか否かを判定でき、レプリカコードを次々に変更して、同じ受信信号との相関演算を行うことで、GPS衛星信号を捕捉することが可能となる。
【0033】
また、相関演算部331は、上述した相関演算処理を、レプリカコードの発生信号の周波数及び位相を変更しつつ行っている。レプリカコードの発生信号の周波数と受信信号の周波数とが一致し、且つ、PRNコードとレプリカコードとの位相が一致した場合に、相関値が最大となる。
【0034】
より具体的には、捕捉対象のGPS衛星信号に応じた所定の周波数及び位相の範囲をサーチ範囲として設定する。そして、このサーチ範囲内で、PRNコードの開始位置(コード位相)を検出するための位相方向の相関演算と、周波数を検出するための周波数方向の相関演算とを行う。サーチ範囲は、例えば、周波数についてはGPS衛星信号の搬送波周波数である1.57542[GHz]を中心とする所定の周波数掃引範囲、位相についてはPRNコードのチップ長である1023チップのコード位相範囲内に定められる。
【0035】
ホストCPU40は、ROM110に記憶されているシステムプログラム等の各種プログラムに従って携帯型電話機1の各部を統括的に制御するプロセッサである。また、ホストCPU40は、位置算出処理を行って携帯型電話機1の位置を計測して出力位置を決定し、当該出力位置をプロットしたナビゲーション画面を生成して表示部60に表示させる。
【0036】
操作部50は、例えばタッチパネルやボタンスイッチ等により構成される入力装置であり、押下されたキーやボタンの信号をホストCPU40に出力する。この操作部50の操作により、目的地の入力やナビゲーション画面の表示要求等の各種指示入力がなされる。
【0037】
表示部60は、LCD(Liquid Crystal Display)等により構成され、ホストCPU40から入力される表示信号に基づいた各種表示を行う表示装置である。表示部60には、ナビゲーション画面や時刻情報等が表示される。
【0038】
携帯電話用アンテナ70は、携帯型電話機1の通信サービス事業者が設置した無線基地局との間で携帯電話用無線信号の送受信を行うアンテナである。
【0039】
携帯電話用無線通信回路部80は、RF変換回路、ベースバンド処理回路等によって構成される携帯電話の通信回路部であり、携帯電話用無線信号の変調・復調等を行うことで、通話やメールの送受信等を実現する。
【0040】
センサー部90は、移動体の移動状態を検出するための各種センサーで構成されており、例えば、加速度センサー91と、ジャイロセンサー93と、方位センサー95とを備えている。ホストCPU40は、センサー部90の検出結果を用いて所定の慣性航法演算を行って慣性航法演算位置を算出する。
【0041】
加速度センサー91は、直交3軸の加速度を検出するセンサーであり、歪みゲージ式や圧電式の何れであってもよく、またMEMS(Micro Electro Mechanical Systems)センサーであってもよい。
【0042】
ジャイロセンサー93は、直交3軸の角速度を検出するセンサーであり、例えば加速度センサー91と軸方向が同一となるように配置設定されている。尚、加速度センサー91とジャイロセンサー93とは一体型のセンサーであってもよい。
【0043】
方位センサー95は、例えば磁場の強さによって抵抗値やインピーダンス値が増減する素子等で構成される2軸の地磁気センサーであり、移動体の方位角を検出する。
【0044】
通電制御部100は、センサー部90への電力供給を制御する回路部であり、例えば不図示の電源回路をスイッチングする回路を有して構成される。通電制御部100は、ホストCPU40から出力されるサンプリング時間間隔に応じた間欠動作周期でセンサー部90が間欠的に動作するように、センサー部90への電力供給を制御する。
【0045】
ROM110は、読み取り専用の不揮発性の記憶装置であり、ホストCPU40が携帯型電話機1を制御するためのシステムプログラムや、ナビゲーション機能を実現するための各種プログラムやデータ等を記憶している。
【0046】
RAM120は、読み書き可能な揮発性の記憶装置であり、ホストCPU40により実行されるシステムプログラム、各種処理プログラム、各種処理の処理中データ、処理結果などを一時的に記憶するワークエリアを形成している。
【0047】
2.データ構成
図2は、ROM110に格納されたデータの一例を示す図である。ROM110には、ホストCPU40により読み出され、メイン処理(図12参照)として実行されるメインプログラム111と、サンプリング時間間隔設定用データ113とが記憶されている。
【0048】
また、メインプログラム111には、位置算出処理(図13及び図14参照)として実行される位置算出プログラム1111と、KF(Kalman Filter)予測処理(図15参照)として実行されるKF予測プログラム1113と、KF補正処理(図17参照)として実行されるKF補正プログラム1115と、慣性航法演算処理(図18参照)として実行される慣性航法演算プログラム1117と、サンプリング時間間隔設定処理(図16参照)として実行されるサンプリング時間間隔設定プログラム1119とがサブルーチンとして含まれている。
【0049】
メイン処理とは、ホストCPU40が、通話処理やメール送受信処理といった携帯電話機としての本来の機能を実現するための処理を行う他、位置算出処理を行って携帯型電話機1の位置を算出して出力する処理である。
【0050】
KF予測処理とは、ホストCPU40が、カルマンフィルターの理論に基づく予測演算を行うことで、携帯型電話機1の位置及び移動速度を含む状態ベクトル「X」の予測値「X−」を算出する処理である。また、ホストCPU40は、所定の観測行列「H」と、状態ベクトルの予測値「X−」とを用いて、GPS衛星信号の受信周波数及びコード位相の予測値(以下、「メジャメント予測値」と称す。)を算出する。
【0051】
KF補正処理とは、ホストCPU40が、メジャメント取得演算部33により取得・演算されたGPS衛星信号の受信周波数及びコード位相の実測値(以下、「メジャメント実測値」と称す。)を観測情報とするカルマンフィルターの理論に基づく補正演算を行うことで、携帯型電話機1の位置及び移動速度を含む状態ベクトル「X」の補正値「X+」を算出する処理である。
【0052】
慣性航法演算処理とは、ホストCPU40が、センサー部90の検出結果に基づいて算出した移動ベクトルを用いて所定の慣性航法演算を行って、慣性航法演算位置を算出する処理である。
【0053】
また、サンプリング時間間隔設定処理とは、ホストCPU40が、メジャメント実測値とメジャメント予測値との乖離に基づいて、移動体の移動状況又はGPS衛星信号の受信環境を判定し、その判定結果に基づいて、センサー部90を間欠的に動作させるためのサンプリング時間間隔を設定する処理である。
【0054】
図4は、GPS衛星信号の受信周波数の実測値及び予測値の時間変化の一例を示すグラフである。横軸は時間、縦軸は受信周波数を示している。また、実線は受信周波数の実測値を示しており、点線は受信周波数の予測値を示している。
【0055】
本願発明者が実験を行った結果、移動体の移動状況が停止状態や等速状態といった安定的な状況にある場合と比べて、急加速状態や旋回状態といった不安定な状況にある場合の方が、受信周波数の実測値と予測値との乖離が大きくなる傾向があることが分かった。この結果に基づいて、本実施形態では、受信周波数の実測値と予測値との乖離が大きいGPS衛星SVの数が多いほど、移動体が急加速状態又は旋回状態にある可能性が高いと判定し、サンプリング時間間隔を短く設定する。
【0056】
図5は、GPS衛星信号のコード位相の実測値及び予測値の時間変化の一例を示すグラフである。横軸は時間、縦軸はコード位相を示している。また、実線はコード位相の実測値を示しており、点線はコード位相の予測値を示している。
【0057】
コード位相についても同様に実験を行った結果、GPS衛星信号の受信環境が良い場合に比べて、受信環境が悪い場合の方が、コード位相の実測値と予測値との乖離が大きくなる傾向があることが分かった。この結果に基づいて、本実施形態では、コード位相の実測値と予測値との乖離が大きいGPS衛星SVの数が多いほど、GPS衛星信号の受信環境が悪いと判定し、サンプリング時間間隔を短く設定する。
【0058】
次に、図6を参照して、サンプリング時間間隔の違いによる位置算出の正確性について説明する。図6において、上段はサンプリング時間間隔を長く設定した場合の出力位置の時間変化を示しており、下段はサンプリング時間間隔を短く設定した場合の出力位置の時間変化を示している。また、実線は移動体の真の軌跡、点線矢印は移動体の移動ベクトル、実線矢印は合成移動ベクトル、白丸は慣性航法演算により求めた慣性航法演算位置、×印はGPS衛星信号に基づいて算出したGPS算出位置、黒丸は出力位置をそれぞれ示している。
【0059】
ホストCPU40は、センサー部90により検出がなされる毎に移動体の移動速度及び方位を含む移動ベクトルを算出する。そして、位置の出力タイミング(本実施形態では1秒間隔として説明する。)において、過去1秒間に算出された移動ベクトルを合成して合成移動ベクトルを算出し、算出した合成移動ベクトルを前回の出力位置に加算することで、慣性航法演算位置を算出する。そして、算出した慣性航法演算位置とGPS算出位置とを合成して、最終的な出力位置を決定する。
【0060】
サンプリング時間間隔が長く設定されていると、センサー部90による検出の時間間隔が長くなるため、移動ベクトル算出の時間間隔も長くなる。この場合、誤った移動ベクトルが一度算出されてしまうと、次の移動ベクトルの算出時刻までこの誤った移動ベクトルが維持されることになる。その結果、移動体の移動状態を適切に表した合成移動ベクトルが求められなくなり、慣性航法演算の正確性が低下する。従って、GPS算出位置と慣性航法演算位置とを合成したとしても、得られる出力位置は移動体の真位置から外れた位置となる。
【0061】
一方、サンプリング時間間隔が短く設定されていると、センサー部90による検出の時間間隔が短くなるため、移動ベクトル算出の時間間隔も短くなる。そうすると、誤った移動ベクトルが算出されたとしても、次の移動ベクトルがすぐに算出される。その結果、移動体の移動状態をより適切に表した合成移動ベクトルを求めることができ、慣性航法演算の正確性も向上する。この場合、GPS算出位置と慣性航法演算位置とを合成することで、移動体の真位置に可及的に近い出力位置を求めることが可能となる。
【0062】
また、本実施形態では、サンプリング時間間隔の設定を、メジャメント取得演算部33によりメジャメント実測値が取得される度に行う。メジャメント取得演算部33によるメジャメント実測値の取得の時間間隔は、位置の出力タイミングである1秒間隔よりも短い時間間隔(例えば100ミリ秒)となるように設定されている。
【0063】
図7は、サンプリング時間間隔の時間変化の一例を示すグラフである。図7において、横軸は時間、縦軸はサンプリング時間間隔を示している。また、黒丸は位置の出力タイミングを示しており、上向きの矢印はメジャメント実測値が取得された時刻を示している。
【0064】
位置出力タイミングである時刻「t0」においてはサンプリング時間間隔が「S0」である。その後、メジャメント実測値が取得される度にサンプリング時間間隔が設定される。具体的には、時刻「t1」においてサンプリング時間間隔が「S1」に短縮され、時刻「t1」〜「t4」まではサンプリング時間間隔が「S1」のままであるが、時刻「t4」においてサンプリング時間間隔が「S2」に短縮される。そして、時刻「t4」〜「t8」まではサンプリング時間間隔が「S2」のままであるが、時刻「t8」においてサンプリング時間間隔が「S3」に短縮される。
【0065】
これにより、時刻「t9」の時点では、サンプリング時間間隔が「S3」と短くなっている。その結果、位置出力タイミングである「t10」の時点よりも早い段階で正確性の高い慣性航法演算を実現するための準備が整えられていることになり、位置出力タイミングである時刻「t10」において正確性の高い位置算出を実現することが可能となる。
【0066】
図8は、サンプリング時間間隔設定用データ113のデータ構成の一例を示す図である。サンプリング時間間隔設定用データ113には、番号1131と、判定項目1133と、乖離衛星数1135と、移動状況/受信環境1137と、サンプリング時間間隔1139とが対応付けて記憶されている。
【0067】
判定項目1133には、受信周波数の乖離とコード位相の乖離とが記憶されている。受信周波数の乖離とは、メジャメント取得演算部33により取得されたGPS衛星信号の受信周波数と、KF予測処理において予測された受信周波数との差が所定の閾値を超えることである。また、コード位相の乖離とは、メジャメント取得演算部33により取得されたGPS衛星信号のコード位相と、KF予測処理において予測されたGPS衛星信号のコード位相との差が所定の閾値を超えることである。
【0068】
乖離衛星数1135は、受信周波数の乖離又はコード位相の乖離の条件を満たすGPS衛星の数である。移動状況/受信環境1137は、移動体の現在の移動状況又はGPS衛星信号の受信環境を示している。受信周波数の乖離衛星数1135が多いほど、移動体は急加速状態又は旋回状態にある可能性が高いと判定する。また、コード位相の乖離衛星数1135が多いほど、GPS衛星信号の受信環境は悪いと判定する。
【0069】
サンプリング時間間隔1139は、当該移動状況/受信環境1137において設定するサンプリング時間間隔であり、移動体が急加速状態又は旋回状態にある可能性が高いほど、短い時間間隔が設定されている。また、GPS衛星信号の受信環境が悪いほど、短い時間間隔が設定されている。
【0070】
例えば、受信周波数の乖離衛星数が「1〜3個」である場合は、移動体の移動状況は「急加速状態又は旋回状態の可能性低」と判定され、サンプリング時間間隔は「500ミリ秒」に設定される。また、受信周波数の乖離衛星数が「6個以上」である場合は、移動体の移動状況は「急加速状態又は旋回状態の可能性高」と判定され、サンプリング時間間隔は「100ミリ秒」に設定される。
【0071】
また、コード位相の乖離衛星数が「0個」である場合は、GPS衛星信号の受信環境は「非常に良い」と判定され、サンプリング時間間隔は「∞(センサーOFF)」に設定される。また、コード位相の乖離衛星数が「3〜5個」である場合は、GPS衛星信号の受信環境は「悪い」と判定され、サンプリング時間間隔は「200ミリ秒」に設定される。
【0072】
尚、受信周波数に基づいて判定したサンプリング時間間隔と、コード位相に基づいて判定したサンプリング時間間隔とが異なる場合は、短い方のサンプリング時間間隔を選択・設定することにすればよい。
【0073】
図3は、RAM120に格納されるデータの一例を示す図である。RAM120には、センサーデータ121と、衛星別メジャメントデータ123と、計測履歴データ125と、KFパラメーターデータ127とが記憶される。
【0074】
図9は、センサーデータ121のデータ構成の一例を示す図である。センサーデータ121には、検出時刻1211と対応付けて、加速度センサー91により検出された3次元の加速度1213と、ジャイロセンサー93により検出された3次元の角速度1215と、方位センサー95により検出された方位1217と、これらの検出結果に基づいて算出される移動ベクトル1219とが対応付けて記憶される。検出時刻1211は、ホストCPU40により設定されたサンプリング時間間隔の時刻である。
【0075】
例えば、検出時刻「10時05分41秒010ミリ秒」に検出された加速度1213は「(Ax1,Ay1,Az1)」であり、角速度1215は「(ωx1,ωy1,ωz1)」、方位1217は「θ1」である。また、移動ベクトル1219は、「(Vx1,Vy1,Vz1)」である。
【0076】
図10は、衛星別メジャメントデータ123のデータ構成の一例を示す図である。衛星別メジャメントデータ123には、各捕捉衛星の番号1231について、当該捕捉衛星からメジャメント実測値を取得した時刻であるメジャメント取得時刻1233と、メジャメント取得演算部33により取得されたGPS衛星信号の受信周波数及びコード位相の実測値であるメジャメント実測値1235と、KF予測処理において予測されたGPS衛星信号の受信周波数及びコード位相の予測値であるメジャメント予測値1237とが対応付けて記憶される。メジャメント取得時刻1233は、例えば100ミリ秒間隔の時刻である。
【0077】
例えば、捕捉衛星「SV1」について、メジャメント取得時刻「10時05分41秒100ミリ秒」に取得されたメジャメント実測値1235は、受信周波数が「Freq21」、コード位相が「CP21」であり、メジャメント予測値1237は、受信周波数が「Freq22」、コード位相が「CP22」である。
【0078】
図11は、計測履歴データ125のデータ構成の一例を示す図である。計測履歴データ125には、位置算出時刻1251と、当該位置算出時刻において算出されたGPS算出位置1253と、慣性航法演算位置1255と、出力位置1257とが対応付けて記憶される。位置算出時刻1251は、例えば1秒間隔の時刻である。
【0079】
例えば、位置算出時刻「10時05分42秒000ミリ秒」においては、GPS算出位置として「(Xg1,Yg1,Zg1)」、慣性航法演算位置として「(Xd1,Yd1,Zd1)」、出力位置として「(X1,Y1,Z1)」が記憶されている。
【0080】
図3に戻って、KFパラメーターデータ127は、KF予測処理及びKF補正処理で用いるカルマンフィルターの各種パラメーターの値が記憶されたデータであり、これらの処理においてホストCPU40により更新される。
【0081】
3.処理の流れ
図12は、ホストCPU40によりROM110に記憶されているメインプログラム111が読み出されて実行されることで、携帯型電話機1において実行されるメイン処理の流れを示すフローチャートである。メイン処理は、ホストCPU40が、携帯型電話機1の電源投入操作を検出した場合に実行を開始する処理である。
【0082】
また、特に説明しないが、以下のメイン処理の実行中は、GPSアンテナ10によるRF信号の受信や、RF受信回路部21によるIF信号へのダウンコンバート、メジャメント取得演算部33によるGPS衛星信号の受信周波数やコード位相(メジャメント実測値)の情報の取得・算出等が随時行われている状態にあるものとする。
【0083】
先ず、ホストCPU40は、操作部50を介してなされた指示操作を判定し(ステップA1)、指示操作が通話指示操作であると判定した場合は(ステップA1;通話指示操作)、通話処理を行う(ステップA3)。具体的には、携帯電話用無線通信回路部80に無線基地局との間の基地局通信を行わせ、携帯型電話機1と他機との間の通話を実現する。
【0084】
また、ステップA1において指示操作がメール送受信指示操作であると判定した場合は(ステップA1;メール送受信指示操作)、ホストCPU40は、メール送受信処理を行う(ステップA5)。具体的には、携帯電話用無線通信回路部80に基地局通信を行わせ、携帯型電話機1と他機との間のメールの送受信を実現する。
【0085】
また、ステップA1において指示操作が位置算出指示操作であると判定した場合は(ステップA1;位置算出指示操作)、ホストCPU40は、ROM110に記憶されている位置算出プログラム1111を読み出して実行することで、位置算出処理を行う(ステップA7)。
【0086】
図13及び図14は、位置算出処理の流れを示すフローチャートである。
先ず、ホストCPU40は、サンプリングタイミングであるか否かを判定し(ステップB1)、サンプリングタイミングではないと判定した場合は(ステップB1;No)、ステップB11へと処理を移行する。
【0087】
また、サンプリングタイミングであると判定した場合は(ステップB1;Yes)、ホストCPU40は、センサー部90への通電を行うように通電制御部100を制御する(ステップB3)。そして、ホストCPU40は、センサー部90から検出結果を取り込む(ステップB5)。
【0088】
その後、ホストCPU40は、ステップB5で取り込んだセンサー部90の検出結果を用いて移動ベクトルを算出する(ステップB7)。そして、センサー部90の検出結果1213〜1217及び算出した移動ベクトル1219を、検出時刻1211と対応付けてセンサーデータ121に記憶させる(ステップB9)。
【0089】
次いで、ホストCPU40は、メジャメント取得演算部33からメジャメント実測値1235を新規取得したか否かを判定する(ステップB11)。そして、取得しなかったと判定した場合は(ステップB11;No)、ホストCPU40は、ステップB21へと処理を移行する。
【0090】
また、メジャメント実測値1235を新規取得したと判定した場合は(ステップB11;Yes)、取得したメジャメント実測値1235を、捕捉衛星の番号1231及びメジャメント取得時刻1233と対応付けて、衛星別メジャメントデータ123に記憶させる(ステップB13)。その後、ホストCPU40は、ROM110に記憶されているKF予測プログラム1113を読み出して実行することで、KF予測処理を行う(ステップB15)。
【0091】
図15は、KF予測処理の流れを示すフローチャートである。
先ず、ホストCPU40は、KF処理用の状態ベクトル「X」及び誤差共分散行列「P」のKF初期値を設定する(ステップC1)。KF処理では、携帯型電話機1の位置ベクトル「(x,y,z)」、移動速度ベクトル「(u,v,w)」、クロックのバイアス「b」及びクロックのドリフト「d」を成分とする8×1の行列で表される状態ベクトル「X」を用いて予測処理及び補正処理を行う。
【0092】
また、誤差共分散行列「P」は、状態ベクトル「X」の8次元の各成分の誤差の共分散を示す8×8の行列である。状態ベクトル「X」及び誤差共分散行列「P」の初期値は、例えば1時刻前のKF補正処理で求められた状態ベクトル「X」及び誤差共分散行列「P」の補正値「X+」及び「P+」とすることができる。
【0093】
次いで、ホストCPU40は、観測行列「H」を設定する(ステップC3)。観測行列「H」は、状態ベクトルの予測値「X−」の各成分を用いて、観測ベクトル「Z」の成分であるGPS衛星信号の受信周波数及びコード位相を予測するための行列である。観測行列「H」は2×8の行列であり、状態ベクトルの予測値「X−」は8×1の行列であるため、予測観測ベクトル「HX−」は2×1の行列として求めることができる。
【0094】
次いで、ホストCPU40は、状態ベクトル「X」及び誤差共分散行列「P」について、次式(1)及び(2)に従って予測演算を行い、状態ベクトルの予測値「X−」及び誤差共分散行列の予測値「P−」を算出する(ステップC5)。
【数1】
【数2】
【0095】
但し、各式における添え字の「−」は予測値、「+」は補正値であることを示しており、「T」は転置行列であることを示している。また、「φ」は、状態遷移行列と呼ばれる状態ベクトル「X」の遷移を表す8×8の行列であり、「Q」は、システムノイズ行列と呼ばれる状態ベクトル「X」の変動の許容度を表す8×8の行列である。状態遷移行列「φ」及びシステムノイズ行列「Q」は予め定められた行列とすることができる。
【0096】
その後、ホストCPU40は、RAM120の衛星別メジャメントデータ123に記憶されている最新のメジャメント実測値1235であるGPS衛星信号の受信周波数及びコード位相の実測値を成分とする2×1の行列を観測ベクトル「Z」として設定する(ステップC7)。
【0097】
次いで、ホストCPU40は、ステップC5で算出した状態ベクトルの予測値「X−」にステップC3で設定した観測行列「H」を乗算することで、予測観測ベクトル「HX−」を算出し、予測観測ベクトル「HX−」の成分であるGPS衛星信号の受信周波数及びコード位相の予測値をメジャメント予測値1237として、衛星別メジャメントデータ123に記憶させる(ステップC9)。そして、ホストCPU40は、KF予測処理を終了する。
【0098】
図13の位置算出処理に戻って、KF予測処理を行った後、ホストCPU40は、ROM110に記憶されているサンプリング時間間隔設定プログラム1119を読み出して実行することで、サンプリング時間間隔設定処理を行う(ステップB17)。
【0099】
図16は、サンプリング時間間隔設定処理の流れを示すフローチャートである。
先ず、ホストCPU40は、RAM120の衛星別メジャメントデータ123に記憶されている最新のメジャメント実測値及びメジャメント予測値を用いて、GPS衛星信号の受信周波数及びコード位相それぞれについて、実測値と予測値との乖離量を算出する(ステップD1)。
【0100】
次いで、ホストCPU40は、受信周波数及びコード位相それぞれについて、算出した乖離量が所定の閾値を超えた衛星数(乖離衛星数1135)を判定する(ステップD3)。そして、ホストCPU40は、ROM110に記憶されているサンプリング時間間隔設定用データ113を参照し、判定した乖離衛星数1135に対応する移動状況/受信環境1137を判定する(ステップD5)。
【0101】
その後、ホストCPU40は、サンプリング時間間隔設定用データ113を参照し、ステップD5で判定した移動状況/受信環境1137に対応するサンプリング時間間隔1139を読み出して設定する(ステップD7)。そして、ホストCPU40は、サンプリング時間間隔設定処理を終了する。
【0102】
図13の位置算出処理に戻って、サンプリング時間間隔設定処理を行った後、ホストCPU40は、ROM110に記憶されているKF補正プログラム1115を読み出して実行することで、KF補正処理を行う(ステップB19)。
【0103】
図17は、KF補正処理の流れを示すフローチャートである。
先ず、ホストCPU40は、KF予測処理で求めた誤差共分散行列「P」の予測値「P−」と観測行列「H」とを用いて、次式(3)に従ってカルマンゲイン行列「K」を算出する(ステップE1)。
【数3】
但し、カルマンゲイン行列「K」は8×2の行列であり、「R」は、観測ベクトル「Z」の各成分の誤差の共分散を示す観測誤差共分散行列と呼ばれる2×2の行列である。
【0104】
その後、ホストCPU40は、観測ベクトル「Z」と予測観測ベクトル「HX−」との差ベクトル「V」を算出する(ステップE3)。そして、ホストCPU40は、次式(4)及び(5)に従って状態ベクトルの補正値「X+」及び誤差共分散行列の補正値「P+」を算出する補正演算を行う(ステップE5)。
【数4】
【数5】
但し、「I」は単位行列である。
【0105】
次いで、ホストCPU40は、補正演算で求めた状態ベクトルの補正値「X+」に含まれる位置ベクトル「(x,y,z)」で表される位置をGPS算出位置1253として計測履歴データ125に記憶させる(ステップE7)。そして、ホストCPU40は、KF補正処理を終了する。
【0106】
図14の位置算出処理に戻って、KF補正処理を行った後、ホストCPU40は、位置出力タイミングであるか否かを判定する(ステップB21)。そして、まだ位置出力タイミングではないと判定した場合は(ステップB21;No)、ステップB29へと処理を移行する。また、位置出力タイミングであると判定した場合は(ステップB21;Yes)、ホストCPU40は、ROM110に記憶されている慣性航法演算プログラム1117を読み出して実行することで、慣性航法演算処理を行う(ステップB23)。
【0107】
図18は、慣性航法演算処理の流れを示すフローチャートである。
先ず、ホストCPU40は、RAM120のセンサーデータ121に記憶されている過去1秒間分の移動ベクトル1219を合成して合成移動ベクトルを算出する(ステップF1)。そして、RAM120の計測履歴データ125に記憶されている前回の出力位置1257に合成移動ベクトルを加算して慣性航法演算位置1255を算出する(ステップF3)。そして、算出した慣性航法演算位置1255を計測履歴データ125に記憶させた後(ステップF5)、慣性航法演算処理を終了する。
【0108】
図14の位置算出処理に戻って、慣性航法演算処理を行った後、ホストCPU40は、RAM120の計測履歴データ125に記憶されている最新のGPS算出位置1253と慣性航法演算位置1255とを、次式(6)に従って合成して出力位置1257を決定し、計測履歴データ125に記憶させる(ステップB25)。
【数6】
但し、「p」は出力位置、「pd」は慣性航法演算位置、「pg」はGPS算出位置、「α」は慣性航法演算位置とGPS算出位置との何れを重視するかを決定付ける重みである。例えば、「α=0.5」として計算することができる。
【0109】
そして、ホストCPU40は、決定した出力位置1257をプロットしたナビゲーション画面を生成して表示部60に表示させる(ステップB27)。そして、ホストCPU40は、操作部50を介してユーザーにより位置算出終了指示がなされたか否かを判定し(ステップB29)、なされなかったと判定した場合は(ステップB29;No)、ステップB1に戻る。また、位置算出終了指示がなされたと判定した場合は(ステップB29;Yes)、位置算出処理を終了する。
【0110】
図12のメイン処理に戻って、ステップA3〜A7の何れかの処理を行った後、ホストCPU40は、操作部50を介してユーザーにより電源切断指示操作がなされたか否かを判定する(ステップA9)。そして、なされなかったと判定した場合は(ステップA9;No)、ステップA1に戻る。また、電源切断指示操作がなされたと判定した場合は(ステップA9;Yes)、メイン処理を終了する。
【0111】
4.作用効果
移動体に保持或いは搭載される携帯型電話機1において、ホストCPU40は、移動体の移動状態を検出するセンサー部90を所定の間欠動作周期で間欠的に動作させるが、この間欠動作周期をGPS衛星信号の受信状況に基づいて可変に制御する。そして、間欠動作周期で動作したセンサー部90の検出結果を用いて所定の慣性航法演算を行って慣性航法演算位置を算出し、GPS算出位置と慣性航法演算位置とを合成して出力位置を決定する。
【0112】
GPS衛星信号の受信状況が良好である場合は、GPS算出位置は正確性の高い位置である可能性が高いため、慣性航法演算位置はそれほど高い正確性が要求されない。そのため、この場合は、センサー部90の間欠動作周期を長く設定する。一方、GPS衛星信号の受信状況が良好ではない場合は、GPS算出位置は正確性の低い位置である可能性が高いため、慣性航法演算位置に高い正確性が要求される。そのため、この場合は、センサー部90の間欠動作周期を短く設定する。これにより、位置算出の正確性とセンサー部の消費電力とのバランスを考慮した適切な位置算出を実現できる。
【0113】
5.変形例
5−1.電子機器
本発明は、携帯型電話機の他にも、位置算出装置を備えた電子機器であれば何れの電子機器にも適用可能である。例えば、ノート型パソコンやPDA(Personal Digital Assistant)、カーナビゲーション装置、携帯型ナビゲーション装置等についても同様に適用可能である。
【0114】
5−2.衛星位置算出システム
上述した実施形態では、衛星位置算出システムとしてGPSを例に挙げて説明したが、WAAS(Wide Area Augmentation System)、QZSS(Quasi Zenith Satellite System)、GLONASS(GLObal NAvigation Satellite System)、GALILEO等の他の衛星位置算出システムであってもよい。
【0115】
5−3.処理の分化
ホストCPU40が実行する処理の一部又は全部を、ベースバンド処理回路部30の演算制御部31が行う構成としてもよい。例えば、メジャメント取得演算部33により演算されたメジャメント実測値を用いて演算制御部31が位置算出処理を行って、出力位置を決定するようにする。
【0116】
5−4.移動状況/受信環境の判定
上述した実施形態では、受信周波数及びコード位相の乖離衛星数に基づいて、移動体の移動状況又はGPS衛星信号の受信環境を判定するものとして説明したが、受信周波数及びコード位相の乖離量に基づいて判定することとしてもよい。
【0117】
図19は、この場合にROM110に記憶させておくサンプリング時間間隔設定用データのデータ構成の一例を示す図である。図19のサンプリング時間間隔設定用データでは、受信周波数又はコード位相の乖離衛星数の代わりに、受信周波数又はコード位相の乖離量が記憶されている。この場合、ホストCPU40は、例えば全ての捕捉衛星について算出した受信周波数及びコード位相の乖離量の平均値を算出し、算出した乖離量の平均値に対応する移動状況/受信環境を読み出すことで、移動体の移動状況又はGPS衛星信号の受信環境を判定する。
【0118】
また、移動状況/受信環境の判定項目は、受信周波数やコード位相に限られるわけではない。例えば、図20のサンプリング時間間隔設定用データに示すように、判定項目として、強信号強度衛星の数、低信号強度衛星の数、アウトドアモード衛星の数、インドアモード衛星の数に基づく条件を設定することが可能である。
【0119】
強信号強度衛星とは、受信したGPS衛星信号の信号強度が所定の閾値(例えば「−130dBm」)を超えるような衛星である。また、低信号強度衛星とは、受信したGPS衛星信号の信号強度が所定の閾値(例えば「−145dBm」)未満となるような衛星である。
【0120】
アウトドアモード衛星及びインドアモード衛星は、それぞれアウトドアモード及びインドアモードにおいて捕捉された衛星である。アウトドアモードは、位置算出装置が屋外に位置している場合に適した位置算出モードであり、インドアモードは、位置算出装置が屋内に位置している場合に適した位置算出モードである。
【0121】
屋外環境では、受信したGPS衛星信号が強電界の信号となるため、GPS衛星信号のPRNコードとレプリカコードとの相関処理を行った場合に、相関値のピークを判別することが容易である。そのため、相関値の積算時間を短くして(通常は1秒未満)相関処理を行い、GPS衛星信号の受信周波数及びコード位相を取得する。すなわち、アウトドアモードは短積算時間モードである。
【0122】
一方、屋内環境では、受信したGPS衛星信号が弱電界の信号となるため、相関処理において相関値のピークを判別することが困難な場合が多い。そのため、相関値の積算時間を長くして(通常は1秒以上)相関処理を行い、GPS衛星信号の受信周波数及びコード位相を取得する。すなわち、インドアモードは長積算時間モードである。
【0123】
例えば、強信号強度衛星の数が8個以上、又は、アウトドアモード衛星の数が7個以上の条件を満たす場合は、GPS衛星信号の受信環境は「非常に良い」と判定され、サンプリング時間間隔は「∞(センサーOFF)」に設定される。また、低信号強度衛星の数が4〜7個、又は、インドアモード衛星の数が5〜6個の条件を満たす場合は、GPS衛星信号の受信環境は「悪い」と判定され、サンプリング時間間隔は「250ミリ秒」に設定される。
【0124】
5−5.受信状況の履歴に基づく判定
また、上述した実施形態では、最新の受信周波数及びコード位相に基づいて移動体の移動状況又はGPS衛星信号の受信環境を判定するものとして説明したが、過去所定期間分の受信周波数及びコード位相(受信状況の履歴)に基づいて判定することとしてもよい。
【0125】
例えば、受信周波数及びコード位相それぞれについて、過去1秒間分の実測値の平均値及び予測値の平均値を算術平均計算によって算出する。そして、受信周波数及びコード位相それぞれについて、算出した実測値の平均値と予測値の平均値との乖離を判定することで、移動体の移動状況又はGPS衛星信号の受信環境を判定する。
【0126】
また、受信周波数及びコード位相の平均値を単純な算術平均計算によって算出するのではなく、加重平均計算によって算出してもよい。例えば、新しい受信周波数及びコード位相ほど重視して加重平均計算することが考えられる。この場合は、過去1秒間分の受信周波数及びコード位相それぞれについて、新しい受信周波数及びコード位相ほど重みが高くなるように重み付けを行って加重平均計算することで、実測値と予測値とのそれぞれについて加重平均値を算出すればよい。
【図面の簡単な説明】
【0127】
【図1】携帯型電話機の機能構成を示すブロック図。
【図2】ROMに格納されたデータの一例を示す図。
【図3】RAMに格納されるデータの一例を示す図。
【図4】受信周波数の実測値及び予測値の時間変化の一例を示すグラフ。
【図5】コード位相の実測値及び予測値の時間変化の一例を示すグラフ。
【図6】サンプリング時間間隔が異なる場合の位置算出の正確性の説明図。
【図7】サンプリング時間間隔の時間変化の一例を示すグラフ。
【図8】サンプリング時間間隔設定用データのデータ構成の一例を示す図。
【図9】センサーデータのデータ構成の一例を示す図。
【図10】衛星別メジャメントデータのデータ構成の一例を示す図。
【図11】計測履歴データのデータ構成の一例を示す図。
【図12】メイン処理の流れを示すフローチャート。
【図13】位置算出処理の流れを示すフローチャート。
【図14】位置算出処理の流れを示すフローチャート。
【図15】KF予測処理の流れを示すフローチャート。
【図16】サンプリング時間間隔設定処理の流れを示すフローチャート。
【図17】KF補正処理の流れを示すフローチャート。
【図18】慣性航法演算処理の流れを示すフローチャート。
【図19】変形例におけるサンプリング時間間隔設定用データのデータ構成の一例を示す図。
【図20】変形例におけるサンプリング時間間隔設定用データのデータ構成の一例を示す図。
【符号の説明】
【0128】
1 携帯型電話機、 10 GPSアンテナ、 20 GPS受信部、
21 RF受信回路部、 30 ベースバンド処理回路部、 31 演算制御部、
33 メジャメント取得演算部、 35 ROM、 37 RAM、
40 ホストCPU、 50 操作部、 60 表示部、 70 携帯電話用アンテナ、
80 携帯電話用無線通信回路部、 90 センサー部、 91 加速度センサー、
93 ジャイロセンサー、 95 方位センサー、 100 通電制御部、
110 ROM、 120 RAM
【技術分野】
【0001】
本発明は、移動体に保持或いは搭載されて前記移動体とともに移動する位置算出装置が実行する位置算出方法等に関する。
【背景技術】
【0002】
測位用信号を利用した測位システムとしては、GPS(Global Positioning System)が広く知られており、携帯型電話機やカーナビゲーション装置等に内蔵された位置算出装置に利用されている。GPSでは、複数のGPS衛星の位置や各GPS衛星から自機までの擬似距離等の情報に基づいて自機の位置を示す3次元の座標値と時計誤差とを求める位置算出演算を行う。
【0003】
測位用信号を利用した位置算出では、様々な誤差要因によって位置算出の正確性が低下するという問題があり、位置算出の正確性を向上させるための様々な技術が考案されている。例えば、特許文献1には、移動体の移動状態を検出するセンサー部の検出結果を用いて慣性航法演算を行い、この慣性航法演算による位置を用いて、測位用信号を利用して算出した位置を補正する技術が開示されている。
【特許文献1】特開2008−107218号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
一般的に、センサー部は随時検出動作を行っている。位置算出装置は、センサー部により検出された検出結果を用いて移動体の移動ベクトルを算出するが、随時検出動作を行っているセンサー部の検出結果のうち、所定の時間間隔のタイミングで検出された検出結果を利用するのが一般的である。従って、利用する検出結果の時間間隔を短くし、その時間間隔の都度移動ベクトルを算出することとすれば、慣性航法演算の正確性は向上する。
【0005】
一方、センサー部を出来る限り駆動せず、消費電力を削減したい要望もある。そこで、センサー部を間欠動作させることによる消費電力の低減を図る方法が考えられる。しかし、上述した慣性航法演算の正確性向上の観点から、センサー部の動作時間間隔はできるだけ短時間であることが望まれる。従って、センサー部を利用した位置算出を行う場合には、求める位置の正確性とセンサー部駆動にかかる消費電力の低減化とは相反する問題となり得る。
【0006】
本発明は上述した課題に鑑みて為されたものであり、その目的とするところは、位置算出の正確性とセンサー部の消費電力とのバランスを考慮した適切な位置算出を実現することにある。
【課題を解決するための手段】
【0007】
以上の課題を解決するための第1の発明は、移動体に保持或いは搭載されて前記移動体とともに移動する位置算出装置が実行する位置算出方法であって、測位用衛星から測位用信号を受信することと、受信した前記測位用信号に基づいて位置を算出することと、前記移動体の移動状態を検出するセンサー部を所定の間欠動作周期で間欠的に動作させることと、前記間欠動作周期を前記測位用信号の受信状況に基づいて可変に制御することと、前記間欠動作周期で動作した前記センサー部の検出結果を用いて所定の慣性航法演算を行って位置を算出することと、前記測位用信号に基づく位置と前記慣性航法演算による位置とを用いて出力位置を決定することと、を含む位置算出方法である。
【0008】
また、他の発明として、移動体に保持或いは搭載されて前記移動体とともに移動する位置算出装置であって、測位用衛星から測位用信号を受信する受信部と、受信した前記測位用信号に基づいて位置を算出する第1の位置算出部と、前記移動体の移動状態を検出するセンサー部を所定の間欠動作周期で間欠的に動作させるセンサー動作制御部と、前記間欠動作周期を前記測位用信号の受信状況に基づいて可変に制御する動作周期制御部と、前記間欠動作周期で動作した前記センサー部の検出結果を用いて所定の慣性航法演算を行って位置を算出する第2の位置算出部と、前記測位用信号に基づく位置と前記慣性航法演算による位置とを用いて出力位置を決定する位置決定部と、を備えた位置算出装置を構成してもよい。
【0009】
この第1の発明等によれば、移動体の移動状態を検出するセンサー部を所定の間欠動作周期で間欠的に動作させるが、この間欠動作周期を測位用信号の受信状況に基づいて可変に制御する。そして、間欠動作周期で動作したセンサー部の検出結果を用いて所定の慣性航法演算を行って位置を算出し、測位用信号に基づいて算出した位置と慣性航法演算による位置とを用いて出力位置を決定する。
【0010】
測位用信号の受信状況が良好である場合は、測位用信号に基づいて算出した位置は正確性の高い位置である可能性が高いため、慣性航法演算による位置にはそれほど高い正確性が要求されない。従って、この場合は、センサー部の間欠動作周期を長く設定する。一方、測位用信号の受信状況が良好ではない場合は、測位用信号に基づいて算出した位置は正確性の低い位置である可能性が高いため、慣性航法演算による位置には高い正確性が要求される。従って、この場合は、センサー部の間欠動作周期を短く設定する。これにより、位置算出の正確性とセンサー部の消費電力とのバランスを考慮した適切な位置算出を実現することができる。
【0011】
また、第2の発明として、第1の発明の位置算出方法であって、カルマンフィルターの理論に基づく予測演算を行って前記移動体の位置及び移動速度を予測することと、前記予測された位置及び移動速度を用いて、当該予測位置で前記測位用信号を受信した場合の前記測位用信号の周波数を予測することと、前記予測された周波数と受信した前記測位用信号の周波数との差異に基づいて、前記間欠動作周期を可変に制御することと、を更に含む位置算出方法を構成してもよい。
【0012】
この第2の発明によれば、カルマンフィルターの理論に基づく予測演算を行って移動体の位置及び移動速度を予測する。そして、予測された位置及び移動速度を用いて、当該予測位置で測位用信号を受信した場合の測位用信号の周波数を予測する。そして、予測された周波数と実際に受信した測位用信号の周波数との差異に基づいて、センサー部の間欠動作周期を可変に制御する。
【0013】
測位用信号の受信状況が良好であれば、予測された位置及び移動速度を用いて予測した測位用信号の周波数と実際に受信した測位用信号の周波数とは近い値となるはずである。そのため、周波数の差異を判断材料とすることで、測位用信号の受信状況を把握でき、センサー部の間欠動作周期を適切に設定することが可能となる。
【0014】
また、第3の発明として、第2の発明の位置算出方法であって、前記予測された位置及び移動速度を用いて、当該予測位置で前記測位用信号を受信した場合の前記測位用信号の位相を予測することと、前記予測された位相と受信した前記測位用信号の位相との差異に基づいて、前記間欠動作周期を可変に制御することと、を更に含む位置算出方法を構成することも可能である。
【0015】
この第3の発明によれば、予測された位置及び移動速度を用いて、当該予測位置で測位用信号を受信した場合の測位用信号の位相を予測する。そして、予測された位相と受信した測位用信号の位相との差異に基づいて、センサー部の間欠動作周期を可変に制御する。この場合も、第2の発明と同様の効果が発揮される。
【0016】
また、第4の発明として、第3の発明の位置算出方法であって、前記周波数及び位相の予測を所定間隔で行うことと、前記所定間隔で予測を行う毎に前記間欠動作周期の可変制御を行うことと、を更に含む位置算出方法を構成してもよい。
【0017】
この第4の発明によれば、所定間隔で周波数及び位相の予測を行う毎に、センサー部の間欠動作周期の可変制御を行う。これにより、位置算出を行う時点においてセンサー部の間欠動作周期が適切に設定された状態となるように調整することが可能となる。
【0018】
また、第5の発明として、第1〜第4の何れかの発明の位置算出方法であって、前記測位用信号の受信状況の履歴に基づいて前記間欠動作周期を可変に制御することを更に含む位置算出方法を構成してもよい。
【0019】
この第5の発明によれば、測位用信号の受信状況の履歴に基づいてセンサー部の間欠動作周期を可変に制御する。例えば、測位用信号の受信状況が次第に良くなっていく場合は、センサー部の間欠動作周期を徐々に長くしていき、測位用信号の受信状況が次第に悪くなっていく場合は、センサー部の間欠動作周期を徐々に短くしていくことにすれば好適である。
【0020】
また、第6の発明として、第1〜第5の何れかの発明の位置算出方法であって、前記測位用信号の受信状況から前記移動体の移動状況を判定することと、前記移動体の移動状況に基づいて前記間欠動作周期を可変に制御することと、を更に含む位置算出方法を構成してもよい。
【0021】
この第6の発明によれば、測位用信号の受信状況から移動体の移動状況を判定する。そして、移動体の移動状況に基づいてセンサー部の間欠動作周期を可変に制御する。移動体の移動状況が急加速状態や旋回状態といった不安定な状態であると判定した場合は、測位用信号に基づく位置算出の正確性が低下するため、センサー部の間欠動作周期を短くし、慣性航法演算の正確性を向上させることにすれば好適である。
【0022】
また、第7の発明として、第1〜第6の何れかの発明の位置算出方法であって、前記測位用信号の受信状況から前記測位用信号の受信環境を判定することと、前記受信環境に基づいて前記間欠動作周期を可変に制御することと、を更に含む位置算出方法を構成してもよい。
【0023】
この第7の発明によれば、測位用信号の受信状況から測位用信号の受信環境を判定する。そして、受信環境に基づいてセンサー部の間欠動作周期を可変に制御する。測位用信号の受信環境が悪い場合は、測位用信号に基づく位置算出の正確性が低下するため、センサー部の間欠動作周期を短くし、慣性航法演算の正確性を向上させることにすれば好適である。
【発明を実施するための最良の形態】
【0024】
以下、図面を参照して、位置算出装置を備えた電子機器の一種である携帯型電話機1に本発明を適用した場合の実施形態について説明する。また、携帯型電話機1は、ユーザーによって携帯されて移動したり、自動車等に配置設定されて移動する。このため、本実施形態では、携帯型電話機1を保持或いは搭載した人や物のことを“移動体”として説明し、携帯型電話機1が検出する各種方向を移動体の方向として説明する。尚、本発明を適用可能な実施形態が以下説明する実施形態に限定されるわけでない
【0025】
1.機能構成
図1は、携帯型電話機1の機能構成を示すブロック図である。携帯型電話機1は、GPSアンテナ10と、GPS受信部20と、ホストCPU(Central Processing Unit)40と、操作部50と、表示部60と、携帯電話用アンテナ70と、携帯電話用無線通信回路部80と、センサー部90と、通電制御部100と、ROM(Read Only Memory)110と、RAM(Random Access Memory)120とを備えて構成される。
【0026】
GPSアンテナ10は、GPS衛星から発信されているGPS衛星信号を含むRF(Radio Frequency)信号を受信するアンテナであり、受信した信号をGPS受信部20に出力する。尚、GPS衛星信号は、衛星毎に異なる拡散符号の一種であるPRN(Pseudo Random Noise)コードで直接スペクトラム拡散方式により変調された1.57542[GHz]の通信信号である。PRNコードは、コード長1023チップを1PNフレームとする繰返し周期1msの擬似ランダム雑音符号である。
【0027】
GPS受信部20は、GPSアンテナ10から出力された信号に基づいて携帯型電話機1の位置を計測する位置算出回路であり、いわゆるGPS受信機に相当する機能ブロックである。GPS受信部20は、RF(Radio Frequency)受信回路部21と、ベースバンド処理回路部30とを備えて構成される。尚、RF受信回路部21と、ベースバンド処理回路部30とは、それぞれ別のLSI(Large Scale Integration)として製造することも、1チップとして製造することも可能である。
【0028】
RF受信回路部21は、RF信号の処理回路ブロックであり、所定の発振信号を分周或いは逓倍することで、RF信号乗算用の発振信号を生成する。そして、生成した発振信号を、GPSアンテナ10から出力されたRF信号に乗算することで、RF信号を中間周波数の信号(以下、「IF(Intermediate Frequency)信号」と称す。)にダウンコンバートし、IF信号を増幅等した後、A/D変換器でデジタル信号に変換して、ベースバンド処理回路部30に出力する。
【0029】
ベースバンド処理回路部30は、RF受信回路部21から出力されたIF信号に対して相関処理等を行ってGPS衛星信号を捕捉・抽出し、データを復号して航法メッセージや時刻情報等を取り出す回路部である。ベースバンド処理回路部30は、演算制御部31と、ROM35と、RAM37とを備えて構成される。また、演算制御部31は、メジャメント取得演算部33を備えて構成される。
【0030】
メジャメント取得演算部33は、RF受信回路部21から出力された受信信号(IF信号)から、GPS衛星信号の捕捉を行う回路部であり、相関演算部331を備えて構成されている。メジャメント取得演算部33は、GPS衛星信号の受信周波数やコード位相等の情報を取得し、メジャメント実測値としてホストCPU40に出力する。
【0031】
相関演算部331は、受信信号に含まれるPRNコードと、装置内部で発生させたレプリカコードとの相関を、例えばFFT演算を用いて算出し積算する相関演算処理を行うことで、受信信号からGPS衛星信号を捕捉する。レプリカコードとは、擬似的に発生させた捕捉しようとするGPS衛星信号に含まれるPRNコードを模擬した信号である。
【0032】
捕捉しようとするGPS衛星信号が間違いなければ、そのGPS衛星信号に含まれるPRNコードとレプリカコードとは一致し(捕捉成功)、間違っていれば一致しない(捕捉失敗)。そのため、算出された相関値のピークを判定することによってGPS衛星信号の捕捉が成功したか否かを判定でき、レプリカコードを次々に変更して、同じ受信信号との相関演算を行うことで、GPS衛星信号を捕捉することが可能となる。
【0033】
また、相関演算部331は、上述した相関演算処理を、レプリカコードの発生信号の周波数及び位相を変更しつつ行っている。レプリカコードの発生信号の周波数と受信信号の周波数とが一致し、且つ、PRNコードとレプリカコードとの位相が一致した場合に、相関値が最大となる。
【0034】
より具体的には、捕捉対象のGPS衛星信号に応じた所定の周波数及び位相の範囲をサーチ範囲として設定する。そして、このサーチ範囲内で、PRNコードの開始位置(コード位相)を検出するための位相方向の相関演算と、周波数を検出するための周波数方向の相関演算とを行う。サーチ範囲は、例えば、周波数についてはGPS衛星信号の搬送波周波数である1.57542[GHz]を中心とする所定の周波数掃引範囲、位相についてはPRNコードのチップ長である1023チップのコード位相範囲内に定められる。
【0035】
ホストCPU40は、ROM110に記憶されているシステムプログラム等の各種プログラムに従って携帯型電話機1の各部を統括的に制御するプロセッサである。また、ホストCPU40は、位置算出処理を行って携帯型電話機1の位置を計測して出力位置を決定し、当該出力位置をプロットしたナビゲーション画面を生成して表示部60に表示させる。
【0036】
操作部50は、例えばタッチパネルやボタンスイッチ等により構成される入力装置であり、押下されたキーやボタンの信号をホストCPU40に出力する。この操作部50の操作により、目的地の入力やナビゲーション画面の表示要求等の各種指示入力がなされる。
【0037】
表示部60は、LCD(Liquid Crystal Display)等により構成され、ホストCPU40から入力される表示信号に基づいた各種表示を行う表示装置である。表示部60には、ナビゲーション画面や時刻情報等が表示される。
【0038】
携帯電話用アンテナ70は、携帯型電話機1の通信サービス事業者が設置した無線基地局との間で携帯電話用無線信号の送受信を行うアンテナである。
【0039】
携帯電話用無線通信回路部80は、RF変換回路、ベースバンド処理回路等によって構成される携帯電話の通信回路部であり、携帯電話用無線信号の変調・復調等を行うことで、通話やメールの送受信等を実現する。
【0040】
センサー部90は、移動体の移動状態を検出するための各種センサーで構成されており、例えば、加速度センサー91と、ジャイロセンサー93と、方位センサー95とを備えている。ホストCPU40は、センサー部90の検出結果を用いて所定の慣性航法演算を行って慣性航法演算位置を算出する。
【0041】
加速度センサー91は、直交3軸の加速度を検出するセンサーであり、歪みゲージ式や圧電式の何れであってもよく、またMEMS(Micro Electro Mechanical Systems)センサーであってもよい。
【0042】
ジャイロセンサー93は、直交3軸の角速度を検出するセンサーであり、例えば加速度センサー91と軸方向が同一となるように配置設定されている。尚、加速度センサー91とジャイロセンサー93とは一体型のセンサーであってもよい。
【0043】
方位センサー95は、例えば磁場の強さによって抵抗値やインピーダンス値が増減する素子等で構成される2軸の地磁気センサーであり、移動体の方位角を検出する。
【0044】
通電制御部100は、センサー部90への電力供給を制御する回路部であり、例えば不図示の電源回路をスイッチングする回路を有して構成される。通電制御部100は、ホストCPU40から出力されるサンプリング時間間隔に応じた間欠動作周期でセンサー部90が間欠的に動作するように、センサー部90への電力供給を制御する。
【0045】
ROM110は、読み取り専用の不揮発性の記憶装置であり、ホストCPU40が携帯型電話機1を制御するためのシステムプログラムや、ナビゲーション機能を実現するための各種プログラムやデータ等を記憶している。
【0046】
RAM120は、読み書き可能な揮発性の記憶装置であり、ホストCPU40により実行されるシステムプログラム、各種処理プログラム、各種処理の処理中データ、処理結果などを一時的に記憶するワークエリアを形成している。
【0047】
2.データ構成
図2は、ROM110に格納されたデータの一例を示す図である。ROM110には、ホストCPU40により読み出され、メイン処理(図12参照)として実行されるメインプログラム111と、サンプリング時間間隔設定用データ113とが記憶されている。
【0048】
また、メインプログラム111には、位置算出処理(図13及び図14参照)として実行される位置算出プログラム1111と、KF(Kalman Filter)予測処理(図15参照)として実行されるKF予測プログラム1113と、KF補正処理(図17参照)として実行されるKF補正プログラム1115と、慣性航法演算処理(図18参照)として実行される慣性航法演算プログラム1117と、サンプリング時間間隔設定処理(図16参照)として実行されるサンプリング時間間隔設定プログラム1119とがサブルーチンとして含まれている。
【0049】
メイン処理とは、ホストCPU40が、通話処理やメール送受信処理といった携帯電話機としての本来の機能を実現するための処理を行う他、位置算出処理を行って携帯型電話機1の位置を算出して出力する処理である。
【0050】
KF予測処理とは、ホストCPU40が、カルマンフィルターの理論に基づく予測演算を行うことで、携帯型電話機1の位置及び移動速度を含む状態ベクトル「X」の予測値「X−」を算出する処理である。また、ホストCPU40は、所定の観測行列「H」と、状態ベクトルの予測値「X−」とを用いて、GPS衛星信号の受信周波数及びコード位相の予測値(以下、「メジャメント予測値」と称す。)を算出する。
【0051】
KF補正処理とは、ホストCPU40が、メジャメント取得演算部33により取得・演算されたGPS衛星信号の受信周波数及びコード位相の実測値(以下、「メジャメント実測値」と称す。)を観測情報とするカルマンフィルターの理論に基づく補正演算を行うことで、携帯型電話機1の位置及び移動速度を含む状態ベクトル「X」の補正値「X+」を算出する処理である。
【0052】
慣性航法演算処理とは、ホストCPU40が、センサー部90の検出結果に基づいて算出した移動ベクトルを用いて所定の慣性航法演算を行って、慣性航法演算位置を算出する処理である。
【0053】
また、サンプリング時間間隔設定処理とは、ホストCPU40が、メジャメント実測値とメジャメント予測値との乖離に基づいて、移動体の移動状況又はGPS衛星信号の受信環境を判定し、その判定結果に基づいて、センサー部90を間欠的に動作させるためのサンプリング時間間隔を設定する処理である。
【0054】
図4は、GPS衛星信号の受信周波数の実測値及び予測値の時間変化の一例を示すグラフである。横軸は時間、縦軸は受信周波数を示している。また、実線は受信周波数の実測値を示しており、点線は受信周波数の予測値を示している。
【0055】
本願発明者が実験を行った結果、移動体の移動状況が停止状態や等速状態といった安定的な状況にある場合と比べて、急加速状態や旋回状態といった不安定な状況にある場合の方が、受信周波数の実測値と予測値との乖離が大きくなる傾向があることが分かった。この結果に基づいて、本実施形態では、受信周波数の実測値と予測値との乖離が大きいGPS衛星SVの数が多いほど、移動体が急加速状態又は旋回状態にある可能性が高いと判定し、サンプリング時間間隔を短く設定する。
【0056】
図5は、GPS衛星信号のコード位相の実測値及び予測値の時間変化の一例を示すグラフである。横軸は時間、縦軸はコード位相を示している。また、実線はコード位相の実測値を示しており、点線はコード位相の予測値を示している。
【0057】
コード位相についても同様に実験を行った結果、GPS衛星信号の受信環境が良い場合に比べて、受信環境が悪い場合の方が、コード位相の実測値と予測値との乖離が大きくなる傾向があることが分かった。この結果に基づいて、本実施形態では、コード位相の実測値と予測値との乖離が大きいGPS衛星SVの数が多いほど、GPS衛星信号の受信環境が悪いと判定し、サンプリング時間間隔を短く設定する。
【0058】
次に、図6を参照して、サンプリング時間間隔の違いによる位置算出の正確性について説明する。図6において、上段はサンプリング時間間隔を長く設定した場合の出力位置の時間変化を示しており、下段はサンプリング時間間隔を短く設定した場合の出力位置の時間変化を示している。また、実線は移動体の真の軌跡、点線矢印は移動体の移動ベクトル、実線矢印は合成移動ベクトル、白丸は慣性航法演算により求めた慣性航法演算位置、×印はGPS衛星信号に基づいて算出したGPS算出位置、黒丸は出力位置をそれぞれ示している。
【0059】
ホストCPU40は、センサー部90により検出がなされる毎に移動体の移動速度及び方位を含む移動ベクトルを算出する。そして、位置の出力タイミング(本実施形態では1秒間隔として説明する。)において、過去1秒間に算出された移動ベクトルを合成して合成移動ベクトルを算出し、算出した合成移動ベクトルを前回の出力位置に加算することで、慣性航法演算位置を算出する。そして、算出した慣性航法演算位置とGPS算出位置とを合成して、最終的な出力位置を決定する。
【0060】
サンプリング時間間隔が長く設定されていると、センサー部90による検出の時間間隔が長くなるため、移動ベクトル算出の時間間隔も長くなる。この場合、誤った移動ベクトルが一度算出されてしまうと、次の移動ベクトルの算出時刻までこの誤った移動ベクトルが維持されることになる。その結果、移動体の移動状態を適切に表した合成移動ベクトルが求められなくなり、慣性航法演算の正確性が低下する。従って、GPS算出位置と慣性航法演算位置とを合成したとしても、得られる出力位置は移動体の真位置から外れた位置となる。
【0061】
一方、サンプリング時間間隔が短く設定されていると、センサー部90による検出の時間間隔が短くなるため、移動ベクトル算出の時間間隔も短くなる。そうすると、誤った移動ベクトルが算出されたとしても、次の移動ベクトルがすぐに算出される。その結果、移動体の移動状態をより適切に表した合成移動ベクトルを求めることができ、慣性航法演算の正確性も向上する。この場合、GPS算出位置と慣性航法演算位置とを合成することで、移動体の真位置に可及的に近い出力位置を求めることが可能となる。
【0062】
また、本実施形態では、サンプリング時間間隔の設定を、メジャメント取得演算部33によりメジャメント実測値が取得される度に行う。メジャメント取得演算部33によるメジャメント実測値の取得の時間間隔は、位置の出力タイミングである1秒間隔よりも短い時間間隔(例えば100ミリ秒)となるように設定されている。
【0063】
図7は、サンプリング時間間隔の時間変化の一例を示すグラフである。図7において、横軸は時間、縦軸はサンプリング時間間隔を示している。また、黒丸は位置の出力タイミングを示しており、上向きの矢印はメジャメント実測値が取得された時刻を示している。
【0064】
位置出力タイミングである時刻「t0」においてはサンプリング時間間隔が「S0」である。その後、メジャメント実測値が取得される度にサンプリング時間間隔が設定される。具体的には、時刻「t1」においてサンプリング時間間隔が「S1」に短縮され、時刻「t1」〜「t4」まではサンプリング時間間隔が「S1」のままであるが、時刻「t4」においてサンプリング時間間隔が「S2」に短縮される。そして、時刻「t4」〜「t8」まではサンプリング時間間隔が「S2」のままであるが、時刻「t8」においてサンプリング時間間隔が「S3」に短縮される。
【0065】
これにより、時刻「t9」の時点では、サンプリング時間間隔が「S3」と短くなっている。その結果、位置出力タイミングである「t10」の時点よりも早い段階で正確性の高い慣性航法演算を実現するための準備が整えられていることになり、位置出力タイミングである時刻「t10」において正確性の高い位置算出を実現することが可能となる。
【0066】
図8は、サンプリング時間間隔設定用データ113のデータ構成の一例を示す図である。サンプリング時間間隔設定用データ113には、番号1131と、判定項目1133と、乖離衛星数1135と、移動状況/受信環境1137と、サンプリング時間間隔1139とが対応付けて記憶されている。
【0067】
判定項目1133には、受信周波数の乖離とコード位相の乖離とが記憶されている。受信周波数の乖離とは、メジャメント取得演算部33により取得されたGPS衛星信号の受信周波数と、KF予測処理において予測された受信周波数との差が所定の閾値を超えることである。また、コード位相の乖離とは、メジャメント取得演算部33により取得されたGPS衛星信号のコード位相と、KF予測処理において予測されたGPS衛星信号のコード位相との差が所定の閾値を超えることである。
【0068】
乖離衛星数1135は、受信周波数の乖離又はコード位相の乖離の条件を満たすGPS衛星の数である。移動状況/受信環境1137は、移動体の現在の移動状況又はGPS衛星信号の受信環境を示している。受信周波数の乖離衛星数1135が多いほど、移動体は急加速状態又は旋回状態にある可能性が高いと判定する。また、コード位相の乖離衛星数1135が多いほど、GPS衛星信号の受信環境は悪いと判定する。
【0069】
サンプリング時間間隔1139は、当該移動状況/受信環境1137において設定するサンプリング時間間隔であり、移動体が急加速状態又は旋回状態にある可能性が高いほど、短い時間間隔が設定されている。また、GPS衛星信号の受信環境が悪いほど、短い時間間隔が設定されている。
【0070】
例えば、受信周波数の乖離衛星数が「1〜3個」である場合は、移動体の移動状況は「急加速状態又は旋回状態の可能性低」と判定され、サンプリング時間間隔は「500ミリ秒」に設定される。また、受信周波数の乖離衛星数が「6個以上」である場合は、移動体の移動状況は「急加速状態又は旋回状態の可能性高」と判定され、サンプリング時間間隔は「100ミリ秒」に設定される。
【0071】
また、コード位相の乖離衛星数が「0個」である場合は、GPS衛星信号の受信環境は「非常に良い」と判定され、サンプリング時間間隔は「∞(センサーOFF)」に設定される。また、コード位相の乖離衛星数が「3〜5個」である場合は、GPS衛星信号の受信環境は「悪い」と判定され、サンプリング時間間隔は「200ミリ秒」に設定される。
【0072】
尚、受信周波数に基づいて判定したサンプリング時間間隔と、コード位相に基づいて判定したサンプリング時間間隔とが異なる場合は、短い方のサンプリング時間間隔を選択・設定することにすればよい。
【0073】
図3は、RAM120に格納されるデータの一例を示す図である。RAM120には、センサーデータ121と、衛星別メジャメントデータ123と、計測履歴データ125と、KFパラメーターデータ127とが記憶される。
【0074】
図9は、センサーデータ121のデータ構成の一例を示す図である。センサーデータ121には、検出時刻1211と対応付けて、加速度センサー91により検出された3次元の加速度1213と、ジャイロセンサー93により検出された3次元の角速度1215と、方位センサー95により検出された方位1217と、これらの検出結果に基づいて算出される移動ベクトル1219とが対応付けて記憶される。検出時刻1211は、ホストCPU40により設定されたサンプリング時間間隔の時刻である。
【0075】
例えば、検出時刻「10時05分41秒010ミリ秒」に検出された加速度1213は「(Ax1,Ay1,Az1)」であり、角速度1215は「(ωx1,ωy1,ωz1)」、方位1217は「θ1」である。また、移動ベクトル1219は、「(Vx1,Vy1,Vz1)」である。
【0076】
図10は、衛星別メジャメントデータ123のデータ構成の一例を示す図である。衛星別メジャメントデータ123には、各捕捉衛星の番号1231について、当該捕捉衛星からメジャメント実測値を取得した時刻であるメジャメント取得時刻1233と、メジャメント取得演算部33により取得されたGPS衛星信号の受信周波数及びコード位相の実測値であるメジャメント実測値1235と、KF予測処理において予測されたGPS衛星信号の受信周波数及びコード位相の予測値であるメジャメント予測値1237とが対応付けて記憶される。メジャメント取得時刻1233は、例えば100ミリ秒間隔の時刻である。
【0077】
例えば、捕捉衛星「SV1」について、メジャメント取得時刻「10時05分41秒100ミリ秒」に取得されたメジャメント実測値1235は、受信周波数が「Freq21」、コード位相が「CP21」であり、メジャメント予測値1237は、受信周波数が「Freq22」、コード位相が「CP22」である。
【0078】
図11は、計測履歴データ125のデータ構成の一例を示す図である。計測履歴データ125には、位置算出時刻1251と、当該位置算出時刻において算出されたGPS算出位置1253と、慣性航法演算位置1255と、出力位置1257とが対応付けて記憶される。位置算出時刻1251は、例えば1秒間隔の時刻である。
【0079】
例えば、位置算出時刻「10時05分42秒000ミリ秒」においては、GPS算出位置として「(Xg1,Yg1,Zg1)」、慣性航法演算位置として「(Xd1,Yd1,Zd1)」、出力位置として「(X1,Y1,Z1)」が記憶されている。
【0080】
図3に戻って、KFパラメーターデータ127は、KF予測処理及びKF補正処理で用いるカルマンフィルターの各種パラメーターの値が記憶されたデータであり、これらの処理においてホストCPU40により更新される。
【0081】
3.処理の流れ
図12は、ホストCPU40によりROM110に記憶されているメインプログラム111が読み出されて実行されることで、携帯型電話機1において実行されるメイン処理の流れを示すフローチャートである。メイン処理は、ホストCPU40が、携帯型電話機1の電源投入操作を検出した場合に実行を開始する処理である。
【0082】
また、特に説明しないが、以下のメイン処理の実行中は、GPSアンテナ10によるRF信号の受信や、RF受信回路部21によるIF信号へのダウンコンバート、メジャメント取得演算部33によるGPS衛星信号の受信周波数やコード位相(メジャメント実測値)の情報の取得・算出等が随時行われている状態にあるものとする。
【0083】
先ず、ホストCPU40は、操作部50を介してなされた指示操作を判定し(ステップA1)、指示操作が通話指示操作であると判定した場合は(ステップA1;通話指示操作)、通話処理を行う(ステップA3)。具体的には、携帯電話用無線通信回路部80に無線基地局との間の基地局通信を行わせ、携帯型電話機1と他機との間の通話を実現する。
【0084】
また、ステップA1において指示操作がメール送受信指示操作であると判定した場合は(ステップA1;メール送受信指示操作)、ホストCPU40は、メール送受信処理を行う(ステップA5)。具体的には、携帯電話用無線通信回路部80に基地局通信を行わせ、携帯型電話機1と他機との間のメールの送受信を実現する。
【0085】
また、ステップA1において指示操作が位置算出指示操作であると判定した場合は(ステップA1;位置算出指示操作)、ホストCPU40は、ROM110に記憶されている位置算出プログラム1111を読み出して実行することで、位置算出処理を行う(ステップA7)。
【0086】
図13及び図14は、位置算出処理の流れを示すフローチャートである。
先ず、ホストCPU40は、サンプリングタイミングであるか否かを判定し(ステップB1)、サンプリングタイミングではないと判定した場合は(ステップB1;No)、ステップB11へと処理を移行する。
【0087】
また、サンプリングタイミングであると判定した場合は(ステップB1;Yes)、ホストCPU40は、センサー部90への通電を行うように通電制御部100を制御する(ステップB3)。そして、ホストCPU40は、センサー部90から検出結果を取り込む(ステップB5)。
【0088】
その後、ホストCPU40は、ステップB5で取り込んだセンサー部90の検出結果を用いて移動ベクトルを算出する(ステップB7)。そして、センサー部90の検出結果1213〜1217及び算出した移動ベクトル1219を、検出時刻1211と対応付けてセンサーデータ121に記憶させる(ステップB9)。
【0089】
次いで、ホストCPU40は、メジャメント取得演算部33からメジャメント実測値1235を新規取得したか否かを判定する(ステップB11)。そして、取得しなかったと判定した場合は(ステップB11;No)、ホストCPU40は、ステップB21へと処理を移行する。
【0090】
また、メジャメント実測値1235を新規取得したと判定した場合は(ステップB11;Yes)、取得したメジャメント実測値1235を、捕捉衛星の番号1231及びメジャメント取得時刻1233と対応付けて、衛星別メジャメントデータ123に記憶させる(ステップB13)。その後、ホストCPU40は、ROM110に記憶されているKF予測プログラム1113を読み出して実行することで、KF予測処理を行う(ステップB15)。
【0091】
図15は、KF予測処理の流れを示すフローチャートである。
先ず、ホストCPU40は、KF処理用の状態ベクトル「X」及び誤差共分散行列「P」のKF初期値を設定する(ステップC1)。KF処理では、携帯型電話機1の位置ベクトル「(x,y,z)」、移動速度ベクトル「(u,v,w)」、クロックのバイアス「b」及びクロックのドリフト「d」を成分とする8×1の行列で表される状態ベクトル「X」を用いて予測処理及び補正処理を行う。
【0092】
また、誤差共分散行列「P」は、状態ベクトル「X」の8次元の各成分の誤差の共分散を示す8×8の行列である。状態ベクトル「X」及び誤差共分散行列「P」の初期値は、例えば1時刻前のKF補正処理で求められた状態ベクトル「X」及び誤差共分散行列「P」の補正値「X+」及び「P+」とすることができる。
【0093】
次いで、ホストCPU40は、観測行列「H」を設定する(ステップC3)。観測行列「H」は、状態ベクトルの予測値「X−」の各成分を用いて、観測ベクトル「Z」の成分であるGPS衛星信号の受信周波数及びコード位相を予測するための行列である。観測行列「H」は2×8の行列であり、状態ベクトルの予測値「X−」は8×1の行列であるため、予測観測ベクトル「HX−」は2×1の行列として求めることができる。
【0094】
次いで、ホストCPU40は、状態ベクトル「X」及び誤差共分散行列「P」について、次式(1)及び(2)に従って予測演算を行い、状態ベクトルの予測値「X−」及び誤差共分散行列の予測値「P−」を算出する(ステップC5)。
【数1】
【数2】
【0095】
但し、各式における添え字の「−」は予測値、「+」は補正値であることを示しており、「T」は転置行列であることを示している。また、「φ」は、状態遷移行列と呼ばれる状態ベクトル「X」の遷移を表す8×8の行列であり、「Q」は、システムノイズ行列と呼ばれる状態ベクトル「X」の変動の許容度を表す8×8の行列である。状態遷移行列「φ」及びシステムノイズ行列「Q」は予め定められた行列とすることができる。
【0096】
その後、ホストCPU40は、RAM120の衛星別メジャメントデータ123に記憶されている最新のメジャメント実測値1235であるGPS衛星信号の受信周波数及びコード位相の実測値を成分とする2×1の行列を観測ベクトル「Z」として設定する(ステップC7)。
【0097】
次いで、ホストCPU40は、ステップC5で算出した状態ベクトルの予測値「X−」にステップC3で設定した観測行列「H」を乗算することで、予測観測ベクトル「HX−」を算出し、予測観測ベクトル「HX−」の成分であるGPS衛星信号の受信周波数及びコード位相の予測値をメジャメント予測値1237として、衛星別メジャメントデータ123に記憶させる(ステップC9)。そして、ホストCPU40は、KF予測処理を終了する。
【0098】
図13の位置算出処理に戻って、KF予測処理を行った後、ホストCPU40は、ROM110に記憶されているサンプリング時間間隔設定プログラム1119を読み出して実行することで、サンプリング時間間隔設定処理を行う(ステップB17)。
【0099】
図16は、サンプリング時間間隔設定処理の流れを示すフローチャートである。
先ず、ホストCPU40は、RAM120の衛星別メジャメントデータ123に記憶されている最新のメジャメント実測値及びメジャメント予測値を用いて、GPS衛星信号の受信周波数及びコード位相それぞれについて、実測値と予測値との乖離量を算出する(ステップD1)。
【0100】
次いで、ホストCPU40は、受信周波数及びコード位相それぞれについて、算出した乖離量が所定の閾値を超えた衛星数(乖離衛星数1135)を判定する(ステップD3)。そして、ホストCPU40は、ROM110に記憶されているサンプリング時間間隔設定用データ113を参照し、判定した乖離衛星数1135に対応する移動状況/受信環境1137を判定する(ステップD5)。
【0101】
その後、ホストCPU40は、サンプリング時間間隔設定用データ113を参照し、ステップD5で判定した移動状況/受信環境1137に対応するサンプリング時間間隔1139を読み出して設定する(ステップD7)。そして、ホストCPU40は、サンプリング時間間隔設定処理を終了する。
【0102】
図13の位置算出処理に戻って、サンプリング時間間隔設定処理を行った後、ホストCPU40は、ROM110に記憶されているKF補正プログラム1115を読み出して実行することで、KF補正処理を行う(ステップB19)。
【0103】
図17は、KF補正処理の流れを示すフローチャートである。
先ず、ホストCPU40は、KF予測処理で求めた誤差共分散行列「P」の予測値「P−」と観測行列「H」とを用いて、次式(3)に従ってカルマンゲイン行列「K」を算出する(ステップE1)。
【数3】
但し、カルマンゲイン行列「K」は8×2の行列であり、「R」は、観測ベクトル「Z」の各成分の誤差の共分散を示す観測誤差共分散行列と呼ばれる2×2の行列である。
【0104】
その後、ホストCPU40は、観測ベクトル「Z」と予測観測ベクトル「HX−」との差ベクトル「V」を算出する(ステップE3)。そして、ホストCPU40は、次式(4)及び(5)に従って状態ベクトルの補正値「X+」及び誤差共分散行列の補正値「P+」を算出する補正演算を行う(ステップE5)。
【数4】
【数5】
但し、「I」は単位行列である。
【0105】
次いで、ホストCPU40は、補正演算で求めた状態ベクトルの補正値「X+」に含まれる位置ベクトル「(x,y,z)」で表される位置をGPS算出位置1253として計測履歴データ125に記憶させる(ステップE7)。そして、ホストCPU40は、KF補正処理を終了する。
【0106】
図14の位置算出処理に戻って、KF補正処理を行った後、ホストCPU40は、位置出力タイミングであるか否かを判定する(ステップB21)。そして、まだ位置出力タイミングではないと判定した場合は(ステップB21;No)、ステップB29へと処理を移行する。また、位置出力タイミングであると判定した場合は(ステップB21;Yes)、ホストCPU40は、ROM110に記憶されている慣性航法演算プログラム1117を読み出して実行することで、慣性航法演算処理を行う(ステップB23)。
【0107】
図18は、慣性航法演算処理の流れを示すフローチャートである。
先ず、ホストCPU40は、RAM120のセンサーデータ121に記憶されている過去1秒間分の移動ベクトル1219を合成して合成移動ベクトルを算出する(ステップF1)。そして、RAM120の計測履歴データ125に記憶されている前回の出力位置1257に合成移動ベクトルを加算して慣性航法演算位置1255を算出する(ステップF3)。そして、算出した慣性航法演算位置1255を計測履歴データ125に記憶させた後(ステップF5)、慣性航法演算処理を終了する。
【0108】
図14の位置算出処理に戻って、慣性航法演算処理を行った後、ホストCPU40は、RAM120の計測履歴データ125に記憶されている最新のGPS算出位置1253と慣性航法演算位置1255とを、次式(6)に従って合成して出力位置1257を決定し、計測履歴データ125に記憶させる(ステップB25)。
【数6】
但し、「p」は出力位置、「pd」は慣性航法演算位置、「pg」はGPS算出位置、「α」は慣性航法演算位置とGPS算出位置との何れを重視するかを決定付ける重みである。例えば、「α=0.5」として計算することができる。
【0109】
そして、ホストCPU40は、決定した出力位置1257をプロットしたナビゲーション画面を生成して表示部60に表示させる(ステップB27)。そして、ホストCPU40は、操作部50を介してユーザーにより位置算出終了指示がなされたか否かを判定し(ステップB29)、なされなかったと判定した場合は(ステップB29;No)、ステップB1に戻る。また、位置算出終了指示がなされたと判定した場合は(ステップB29;Yes)、位置算出処理を終了する。
【0110】
図12のメイン処理に戻って、ステップA3〜A7の何れかの処理を行った後、ホストCPU40は、操作部50を介してユーザーにより電源切断指示操作がなされたか否かを判定する(ステップA9)。そして、なされなかったと判定した場合は(ステップA9;No)、ステップA1に戻る。また、電源切断指示操作がなされたと判定した場合は(ステップA9;Yes)、メイン処理を終了する。
【0111】
4.作用効果
移動体に保持或いは搭載される携帯型電話機1において、ホストCPU40は、移動体の移動状態を検出するセンサー部90を所定の間欠動作周期で間欠的に動作させるが、この間欠動作周期をGPS衛星信号の受信状況に基づいて可変に制御する。そして、間欠動作周期で動作したセンサー部90の検出結果を用いて所定の慣性航法演算を行って慣性航法演算位置を算出し、GPS算出位置と慣性航法演算位置とを合成して出力位置を決定する。
【0112】
GPS衛星信号の受信状況が良好である場合は、GPS算出位置は正確性の高い位置である可能性が高いため、慣性航法演算位置はそれほど高い正確性が要求されない。そのため、この場合は、センサー部90の間欠動作周期を長く設定する。一方、GPS衛星信号の受信状況が良好ではない場合は、GPS算出位置は正確性の低い位置である可能性が高いため、慣性航法演算位置に高い正確性が要求される。そのため、この場合は、センサー部90の間欠動作周期を短く設定する。これにより、位置算出の正確性とセンサー部の消費電力とのバランスを考慮した適切な位置算出を実現できる。
【0113】
5.変形例
5−1.電子機器
本発明は、携帯型電話機の他にも、位置算出装置を備えた電子機器であれば何れの電子機器にも適用可能である。例えば、ノート型パソコンやPDA(Personal Digital Assistant)、カーナビゲーション装置、携帯型ナビゲーション装置等についても同様に適用可能である。
【0114】
5−2.衛星位置算出システム
上述した実施形態では、衛星位置算出システムとしてGPSを例に挙げて説明したが、WAAS(Wide Area Augmentation System)、QZSS(Quasi Zenith Satellite System)、GLONASS(GLObal NAvigation Satellite System)、GALILEO等の他の衛星位置算出システムであってもよい。
【0115】
5−3.処理の分化
ホストCPU40が実行する処理の一部又は全部を、ベースバンド処理回路部30の演算制御部31が行う構成としてもよい。例えば、メジャメント取得演算部33により演算されたメジャメント実測値を用いて演算制御部31が位置算出処理を行って、出力位置を決定するようにする。
【0116】
5−4.移動状況/受信環境の判定
上述した実施形態では、受信周波数及びコード位相の乖離衛星数に基づいて、移動体の移動状況又はGPS衛星信号の受信環境を判定するものとして説明したが、受信周波数及びコード位相の乖離量に基づいて判定することとしてもよい。
【0117】
図19は、この場合にROM110に記憶させておくサンプリング時間間隔設定用データのデータ構成の一例を示す図である。図19のサンプリング時間間隔設定用データでは、受信周波数又はコード位相の乖離衛星数の代わりに、受信周波数又はコード位相の乖離量が記憶されている。この場合、ホストCPU40は、例えば全ての捕捉衛星について算出した受信周波数及びコード位相の乖離量の平均値を算出し、算出した乖離量の平均値に対応する移動状況/受信環境を読み出すことで、移動体の移動状況又はGPS衛星信号の受信環境を判定する。
【0118】
また、移動状況/受信環境の判定項目は、受信周波数やコード位相に限られるわけではない。例えば、図20のサンプリング時間間隔設定用データに示すように、判定項目として、強信号強度衛星の数、低信号強度衛星の数、アウトドアモード衛星の数、インドアモード衛星の数に基づく条件を設定することが可能である。
【0119】
強信号強度衛星とは、受信したGPS衛星信号の信号強度が所定の閾値(例えば「−130dBm」)を超えるような衛星である。また、低信号強度衛星とは、受信したGPS衛星信号の信号強度が所定の閾値(例えば「−145dBm」)未満となるような衛星である。
【0120】
アウトドアモード衛星及びインドアモード衛星は、それぞれアウトドアモード及びインドアモードにおいて捕捉された衛星である。アウトドアモードは、位置算出装置が屋外に位置している場合に適した位置算出モードであり、インドアモードは、位置算出装置が屋内に位置している場合に適した位置算出モードである。
【0121】
屋外環境では、受信したGPS衛星信号が強電界の信号となるため、GPS衛星信号のPRNコードとレプリカコードとの相関処理を行った場合に、相関値のピークを判別することが容易である。そのため、相関値の積算時間を短くして(通常は1秒未満)相関処理を行い、GPS衛星信号の受信周波数及びコード位相を取得する。すなわち、アウトドアモードは短積算時間モードである。
【0122】
一方、屋内環境では、受信したGPS衛星信号が弱電界の信号となるため、相関処理において相関値のピークを判別することが困難な場合が多い。そのため、相関値の積算時間を長くして(通常は1秒以上)相関処理を行い、GPS衛星信号の受信周波数及びコード位相を取得する。すなわち、インドアモードは長積算時間モードである。
【0123】
例えば、強信号強度衛星の数が8個以上、又は、アウトドアモード衛星の数が7個以上の条件を満たす場合は、GPS衛星信号の受信環境は「非常に良い」と判定され、サンプリング時間間隔は「∞(センサーOFF)」に設定される。また、低信号強度衛星の数が4〜7個、又は、インドアモード衛星の数が5〜6個の条件を満たす場合は、GPS衛星信号の受信環境は「悪い」と判定され、サンプリング時間間隔は「250ミリ秒」に設定される。
【0124】
5−5.受信状況の履歴に基づく判定
また、上述した実施形態では、最新の受信周波数及びコード位相に基づいて移動体の移動状況又はGPS衛星信号の受信環境を判定するものとして説明したが、過去所定期間分の受信周波数及びコード位相(受信状況の履歴)に基づいて判定することとしてもよい。
【0125】
例えば、受信周波数及びコード位相それぞれについて、過去1秒間分の実測値の平均値及び予測値の平均値を算術平均計算によって算出する。そして、受信周波数及びコード位相それぞれについて、算出した実測値の平均値と予測値の平均値との乖離を判定することで、移動体の移動状況又はGPS衛星信号の受信環境を判定する。
【0126】
また、受信周波数及びコード位相の平均値を単純な算術平均計算によって算出するのではなく、加重平均計算によって算出してもよい。例えば、新しい受信周波数及びコード位相ほど重視して加重平均計算することが考えられる。この場合は、過去1秒間分の受信周波数及びコード位相それぞれについて、新しい受信周波数及びコード位相ほど重みが高くなるように重み付けを行って加重平均計算することで、実測値と予測値とのそれぞれについて加重平均値を算出すればよい。
【図面の簡単な説明】
【0127】
【図1】携帯型電話機の機能構成を示すブロック図。
【図2】ROMに格納されたデータの一例を示す図。
【図3】RAMに格納されるデータの一例を示す図。
【図4】受信周波数の実測値及び予測値の時間変化の一例を示すグラフ。
【図5】コード位相の実測値及び予測値の時間変化の一例を示すグラフ。
【図6】サンプリング時間間隔が異なる場合の位置算出の正確性の説明図。
【図7】サンプリング時間間隔の時間変化の一例を示すグラフ。
【図8】サンプリング時間間隔設定用データのデータ構成の一例を示す図。
【図9】センサーデータのデータ構成の一例を示す図。
【図10】衛星別メジャメントデータのデータ構成の一例を示す図。
【図11】計測履歴データのデータ構成の一例を示す図。
【図12】メイン処理の流れを示すフローチャート。
【図13】位置算出処理の流れを示すフローチャート。
【図14】位置算出処理の流れを示すフローチャート。
【図15】KF予測処理の流れを示すフローチャート。
【図16】サンプリング時間間隔設定処理の流れを示すフローチャート。
【図17】KF補正処理の流れを示すフローチャート。
【図18】慣性航法演算処理の流れを示すフローチャート。
【図19】変形例におけるサンプリング時間間隔設定用データのデータ構成の一例を示す図。
【図20】変形例におけるサンプリング時間間隔設定用データのデータ構成の一例を示す図。
【符号の説明】
【0128】
1 携帯型電話機、 10 GPSアンテナ、 20 GPS受信部、
21 RF受信回路部、 30 ベースバンド処理回路部、 31 演算制御部、
33 メジャメント取得演算部、 35 ROM、 37 RAM、
40 ホストCPU、 50 操作部、 60 表示部、 70 携帯電話用アンテナ、
80 携帯電話用無線通信回路部、 90 センサー部、 91 加速度センサー、
93 ジャイロセンサー、 95 方位センサー、 100 通電制御部、
110 ROM、 120 RAM
【特許請求の範囲】
【請求項1】
移動体に保持或いは搭載されて前記移動体とともに移動する位置算出装置が実行する位置算出方法であって、
測位用衛星から測位用信号を受信することと、
受信した前記測位用信号に基づいて位置を算出することと、
前記移動体の移動状態を検出するセンサー部を所定の間欠動作周期で間欠的に動作させることと、
前記間欠動作周期を前記測位用信号の受信状況に基づいて可変に制御することと、
前記間欠動作周期で動作した前記センサー部の検出結果を用いて所定の慣性航法演算を行って位置を算出することと、
前記測位用信号に基づく位置と前記慣性航法演算による位置とを用いて出力位置を決定することと、
を含む位置算出方法。
【請求項2】
カルマンフィルターの理論に基づく予測演算を行って前記移動体の位置及び移動速度を予測することと、
前記予測された位置及び移動速度を用いて、当該予測位置で前記測位用信号を受信した場合の前記測位用信号の周波数を予測することと、
前記予測された周波数と受信した前記測位用信号の周波数との差異に基づいて、前記間欠動作周期を可変に制御することと、
を更に含む請求項1に記載の位置算出方法。
【請求項3】
前記予測された位置及び移動速度を用いて、当該予測位置で前記測位用信号を受信した場合の前記測位用信号の位相を予測することと、
前記予測された位相と受信した前記測位用信号の位相との差異に基づいて、前記間欠動作周期を可変に制御することと、
を更に含む請求項2に記載の位置算出方法。
【請求項4】
前記周波数及び位相の予測を所定間隔で行うことと、
前記所定間隔で予測を行う毎に前記間欠動作周期の可変制御を行うことと、
を更に含む請求項3に記載の位置算出方法。
【請求項5】
前記測位用信号の受信状況の履歴に基づいて前記間欠動作周期を可変に制御することを更に含む請求項1〜4の何れか一項に記載の位置算出方法。
【請求項6】
前記測位用信号の受信状況から前記移動体の移動状況を判定することと、
前記移動体の移動状況に基づいて前記間欠動作周期を可変に制御することと、
を更に含む請求項1〜5の何れか一項に記載の位置算出方法。
【請求項7】
前記測位用信号の受信状況から前記測位用信号の受信環境を判定することと、
前記受信環境に基づいて前記間欠動作周期を可変に制御することと、
を更に含む請求項1〜6の何れか一項に記載の位置算出方法。
【請求項8】
移動体に保持或いは搭載されて前記移動体とともに移動する位置算出装置であって、
測位用衛星から測位用信号を受信する受信部と、
受信した前記測位用信号に基づいて位置を算出する第1の位置算出部と、
前記移動体の移動状態を検出するセンサー部を所定の間欠動作周期で間欠的に動作させるセンサー動作制御部と、
前記間欠動作周期を前記測位用信号の受信状況に基づいて可変に制御する動作周期制御部と、
前記間欠動作周期で動作した前記センサー部の検出結果を用いて所定の慣性航法演算を行って位置を算出する第2の位置算出部と、
前記測位用信号に基づく位置と前記慣性航法演算による位置とを用いて出力位置を決定する位置決定部と、
を備えた位置算出装置。
【請求項1】
移動体に保持或いは搭載されて前記移動体とともに移動する位置算出装置が実行する位置算出方法であって、
測位用衛星から測位用信号を受信することと、
受信した前記測位用信号に基づいて位置を算出することと、
前記移動体の移動状態を検出するセンサー部を所定の間欠動作周期で間欠的に動作させることと、
前記間欠動作周期を前記測位用信号の受信状況に基づいて可変に制御することと、
前記間欠動作周期で動作した前記センサー部の検出結果を用いて所定の慣性航法演算を行って位置を算出することと、
前記測位用信号に基づく位置と前記慣性航法演算による位置とを用いて出力位置を決定することと、
を含む位置算出方法。
【請求項2】
カルマンフィルターの理論に基づく予測演算を行って前記移動体の位置及び移動速度を予測することと、
前記予測された位置及び移動速度を用いて、当該予測位置で前記測位用信号を受信した場合の前記測位用信号の周波数を予測することと、
前記予測された周波数と受信した前記測位用信号の周波数との差異に基づいて、前記間欠動作周期を可変に制御することと、
を更に含む請求項1に記載の位置算出方法。
【請求項3】
前記予測された位置及び移動速度を用いて、当該予測位置で前記測位用信号を受信した場合の前記測位用信号の位相を予測することと、
前記予測された位相と受信した前記測位用信号の位相との差異に基づいて、前記間欠動作周期を可変に制御することと、
を更に含む請求項2に記載の位置算出方法。
【請求項4】
前記周波数及び位相の予測を所定間隔で行うことと、
前記所定間隔で予測を行う毎に前記間欠動作周期の可変制御を行うことと、
を更に含む請求項3に記載の位置算出方法。
【請求項5】
前記測位用信号の受信状況の履歴に基づいて前記間欠動作周期を可変に制御することを更に含む請求項1〜4の何れか一項に記載の位置算出方法。
【請求項6】
前記測位用信号の受信状況から前記移動体の移動状況を判定することと、
前記移動体の移動状況に基づいて前記間欠動作周期を可変に制御することと、
を更に含む請求項1〜5の何れか一項に記載の位置算出方法。
【請求項7】
前記測位用信号の受信状況から前記測位用信号の受信環境を判定することと、
前記受信環境に基づいて前記間欠動作周期を可変に制御することと、
を更に含む請求項1〜6の何れか一項に記載の位置算出方法。
【請求項8】
移動体に保持或いは搭載されて前記移動体とともに移動する位置算出装置であって、
測位用衛星から測位用信号を受信する受信部と、
受信した前記測位用信号に基づいて位置を算出する第1の位置算出部と、
前記移動体の移動状態を検出するセンサー部を所定の間欠動作周期で間欠的に動作させるセンサー動作制御部と、
前記間欠動作周期を前記測位用信号の受信状況に基づいて可変に制御する動作周期制御部と、
前記間欠動作周期で動作した前記センサー部の検出結果を用いて所定の慣性航法演算を行って位置を算出する第2の位置算出部と、
前記測位用信号に基づく位置と前記慣性航法演算による位置とを用いて出力位置を決定する位置決定部と、
を備えた位置算出装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【公開番号】特開2010−151459(P2010−151459A)
【公開日】平成22年7月8日(2010.7.8)
【国際特許分類】
【出願番号】特願2008−327077(P2008−327077)
【出願日】平成20年12月24日(2008.12.24)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
【公開日】平成22年7月8日(2010.7.8)
【国際特許分類】
【出願日】平成20年12月24日(2008.12.24)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
[ Back to top ]