説明

衛星信号追尾方法、位置算出方法、衛星信号追尾装置及び位置算出装置

【課題】衛星信号追尾用のループフィルターのループバンド幅を適切な値に設定するための新たな手法を提案すること。
【解決手段】携帯型電話機1において、IMU60により移動状況が検出される。また、ホストCPU30により、IMU60の想定される最大の検出誤差である想定最大検出誤差が算出される。そして、ベースバンド処理回路部20の処理部27により、IMU60の検出結果及び想定最大検出誤差を用いて、GPS衛星から受信したGPS衛星信号を追尾するための追尾用ループ回路のループフィルター部のループバンド幅が設定される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、衛星信号追尾方法、位置算出方法、衛星信号追尾装置及び位置算出装置に関する。
【背景技術】
【0002】
測位用信号を利用した測位システムとしては、GPS(Global Positioning System)が広く知られており、携帯型電話機やカーナビゲーション装置等に内蔵された位置算出装置に利用されている。GPSでは、複数のGPS衛星の位置や各GPS衛星から位置算出装置までの擬似距離等の情報に基づいて位置算出装置の位置座標と時計誤差とを求める位置算出計算を行う。
【0003】
GPS衛星から送出されるGPS衛星信号は、CA(Coarse and Acquisition)コードと呼ばれるGPS衛星毎に異なる拡散符号で変調されている。位置算出装置は、微弱な受信信号の中からGPS衛星信号を捕捉するために、受信信号と、CAコードのレプリカであるレプリカコードとの相関演算を行い、その相関値に基づいてGPS衛星信号を捕捉する。そして、GPS衛星信号の捕捉に一旦成功すると、捕捉したGPS衛星信号を追尾(トラッキング)する。
【0004】
GPS衛星信号の追尾は、搬送波(キャリア)を追尾するためのキャリア追尾ループ回路や、CAコードの位相を追尾するためのコード追尾ループ回路等で行われる(例えば特許文献1)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−232761号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ループ回路では、種々の要因により信号にノイズ成分が混在することが知られている。このノイズ成分を除去するため、ループ回路には、ローパスフィルターなどのループフィルターが設けられることが一般的である。
【0007】
特に、ジッター(信号の時間軸方向のずれ、位相揺らぎや周波数揺らぎ)に対する耐性はループフィルターによってほぼ決定付けられる。ループフィルターのループバンド幅を狭くすれば、ジッターに対する耐性は上がるが、信号成分の一部もカットしてしまうおそれが出てくるために、信号の追従性が悪くなり、極端な場合には捕捉していたGPS衛星信号を見失うロック外れが起こりやすくなるという問題がある。かといって、ループバンド幅を広くすると、ジッターに対する耐性が下がるため、極端な場合にはロック(GPS衛星信号を追尾すること)できない状態に陥る場合がある。
【0008】
従来は、ループフィルターの設計時に、上記のバランスを考慮してループバンド幅の値を固定的に決定し、ループフィルターを構成していた。しかし、混入するジッターは、サーマルノイズ(熱雑音)やダイナミックストレス(動的応力)といったノイズ成分により変動し得る。特に、ダイナミックストレスは、位置算出装置の移動状況に応じて大きく変動し得る。そのため、固定的なループバンド幅を用いた場合には、GPS衛星信号を追尾する追従性が低下する等の問題が生じる場合があった。
【0009】
本発明は上述した課題に鑑みて為されたものであり、その目的とするところは、衛星信号追尾用のループフィルターのループバンド幅を適切な値に設定するための新たな手法を提案することにある。
【課題を解決するための手段】
【0010】
以上の課題を解決するための第1の形態は、移動状況を検出することと、前記検出の誤差を算出することと、前記検出結果及び前記誤差を用いて、測位用衛星から受信した衛星信号の追尾に用いられ、且つループバンド幅の変更が可能な追尾用フィルターの前記ループバンド幅を設定することと、を含む衛星信号追尾方法である。
【0011】
また、他の形態として、移動状況を検出する検出部と、前記検出部の検出結果及び前記検出部の検出誤差を用いて、測位用衛星から受信した衛星信号の追尾に用いられ、且つループバンド幅の変更が可能な追尾用フィルターの前記ループバンド幅を設定する設定部と、を備えた衛星信号追尾装置を構成してもよい。
【0012】
この第1の形態等によれば、移動状況を検出する。また、移動状況の検出の誤差を算出する。そして、移動状況の検出結果及び検出誤差を用いて、測位用衛星から受信した衛星信号の追尾に用いられ、且つループバンド幅の変更が可能な追尾用フィルターのループバンド幅を設定する。
【0013】
上述したように、ループ回路のジッターは、移動状況に応じて大きく変動し得る。そのため、移動状況の検出結果を用いて追尾用フィルターのループバンド幅を設定することが適切である。しかし、移動状況の検出結果には当然誤差が含まれ得る。そのため、移動状況の検出結果の他に、移動状況の検出誤差も考慮してループバンド幅を設定することで、ループバンド幅を適切な値に設定することができる。
【0014】
また、第2の形態として、第1の形態の衛星信号追尾方法であって、前記移動状況を検出することは、加速度センサー、速度センサー及びジャイロセンサーの少なくとも何れかのセンサーを用いて、所与のタイミングで前記何れかのセンサーの出力に対するキャリブレーション処理を実行することを含み、前記誤差を算出することは、前記キャリブレーション処理を実行してからの経過時間を用いて、前記誤差を算出することを含む、衛星信号追尾方法を構成してもよい。
【0015】
この第2の形態によれば、加速度センサー、速度センサー及びジャイロセンサーの少なくとも何れかのセンサーを用いて、所与のタイミングで何れかのセンサーの出力に対するキャリブレーション処理を実行する。そして、キャリブレーション処理を実行してからの経過時間を用いて、移動状況の検出の誤差を算出する。キャリブレーション処理を実行することで、移動状況の検出誤差をリセットすることができる。また、キャリブレーション処理を実行してからの経過時間を利用することで、移動状況の検出誤差を簡易に求めることができ、ひいてはループバンド幅の適切な設定に資する。
【0016】
また、第3の形態として、第1又は第2の形態の衛星信号追尾方法であって、前記ループバンド幅を設定することは、前記衛星信号の受信環境を用いて前記ループバンド幅を設定することを含む、衛星信号追尾方法を構成してもよい。
【0017】
この第3の形態によれば、衛星信号の受信環境に応じた適切なループバンド幅を設定することができる。
【0018】
また、第4の形態として、第1〜第3の何れかの形態の衛星信号追尾方法であって、前記ループバンド幅を設定することは、前記追尾用フィルターのフィルター次数を用いて前記ループバンド幅を設定することを含む、衛星信号追尾方法を構成してもよい。
【0019】
この第4の形態によれば、追尾用フィルターのフィルター次数に応じた適切なループバンド幅を設定することができる。
【0020】
また、第5の形態として、第1〜第4の何れかの形態の衛星信号追尾方法を行って、前記衛星信号を追尾することと、前記追尾された衛星信号を用いて位置を算出することと、を含む位置算出方法を構成してもよい。
【0021】
この第5の形態によれば、上述した衛星信号追尾方法により追尾された衛星信号を用いて位置を算出することで、位置算出の正確性を向上させることができる。
【0022】
また、第7の形態として、加速度センサー、速度センサー及びジャイロセンサーのうちの少なくとも1つのセンサーと、前記少なくとも1つのセンサーの出力を用いて移動状況を検出する移動状況検出部と、測位用衛星からの衛星信号を追尾に用いられ、且つループバンド幅の変更が可能な追尾用フィルターと、前記移動状況検出部の検出結果及び前記移動状況検出部の検出誤差を用いて、前記追尾用フィルターの前記ループバンド幅を設定する設定部と、前記追尾用フィルターにより追尾された衛星信号を用いて位置を算出する位置算出部と、を備えた位置算出装置を構成してもよい。
【0023】
この第7の形態によれば、加速度センサー、速度センサー及びジャイロセンサーのうちの少なくとも1つのセンサーの出力を用いて、移動状況検出部により移動状況が検出される。そして、測位用衛星からの衛星信号を追尾に用いられ、且つループバンド幅の変更が可能な追尾用フィルターのループバンド幅が、移動状況検出部の検出結果及び移動状況検出部の検出誤差を用いて設定部により設定される。そして、追尾用フィルターにより追尾された衛星信号を用いて、位置算出部により位置が算出される。このような作用により、上述した形態と同様の効果が発揮される。
【図面の簡単な説明】
【0024】
【図1】携帯型電話機の機能構成の一例を示すブロック図。
【図2】ベースバンド処理回路部の回路構成の一例を示すブロック図。
【図3】ループフィルター部の次数と、ダイナミックストレス算出用物理量との対応関係を示す図。
【図4】サーマルノイズ、ダイナミックストレス及びトータルジッターのループバンド幅特性の一例を示す図。
【図5】メイン処理の流れを示すフローチャート。
【図6】ベースバンド処理の流れを示すフローチャート。
【図7】キャリア位相追尾ループバンド幅設定処理の流れを示すフローチャート。
【図8】信号強度判定用テーブルのテーブル構成の一例を示す図。
【発明を実施するための形態】
【0025】
以下、図面を参照して、衛星信号追尾装置及び位置算出装置を具備した電子機器の一種である携帯型電話機に本発明を適用した場合の実施形態について説明する。なお、本発明を適用可能な実施形態が以下説明する実施形態に限定されるわけでないことは勿論である。
【0026】
1.機能構成
図1は、本実施形態における携帯型電話機1の機能構成を示すブロック図である。携帯型電話機1は、GPSアンテナ5と、GPS受信部10と、ホストCPU(Central Processing Unit)30と、操作部40と、表示部50と、IMU(Inertial Measurement Unit)60と、携帯電話用アンテナ70と、携帯電話用無線通信回路部80と、記憶部90とを備えて構成される。
【0027】
GPSアンテナ5は、測位用衛星の一種であるGPS衛星から発信されているGPS衛星信号を含むRF(Radio Frequency)信号を受信するアンテナであり、受信信号をGPS受信部10に出力する。GPS衛星信号は、拡散符号の一種であるCA(Coarse and Acquisition)コードによって、スペクトラム拡散方式として知られるCDMA(Code Division Multiple Access)方式によって変調された1.57542[GHz]の通信信号である。CAコードは、コード長1023チップを1PNフレームとする繰返し周期1msの擬似ランダム雑音符号であり、GPS衛星毎に異なるものである。
【0028】
GPS受信部10は、GPSアンテナ5から出力された信号に基づいて携帯型電話機1の位置を計測する位置算出回路或いは位置算出装置であり、いわゆるGPS受信装置に相当する機能ブロックである。GPS受信部10は、RF受信回路部11と、ベースバンド処理回路部20とを備えて構成される。なお、RF受信回路部11と、ベースバンド処理回路部20とは、それぞれ別のLSI(Large Scale Integration)として製造することも、1チップとして製造することも可能である。
【0029】
RF受信回路部11は、RF信号の受信回路である。回路構成としては、例えば、GPSアンテナ5から出力されたRF信号をA/D変換器でデジタル信号に変換し、デジタル信号を処理する受信回路を構成してもよい。また、GPSアンテナ5から出力されたRF信号をアナログ信号のまま信号処理し、最終的にA/D変換することでデジタル信号をベースバンド処理回路部20に出力する構成としてもよい。
【0030】
後者の場合には、例えば、次のようにRF受信回路部11を構成することができる。すなわち、所定の発振信号を分周或いは逓倍することで、RF信号乗算用の発振信号を生成する。そして、生成した発振信号を、GPSアンテナ5から出力されたRF信号に乗算することで、RF信号を中間周波数の信号(以下、「IF(Intermediate Frequency)信号」と称す。)にダウンコンバートし、IF信号を増幅等した後、A/D変換器でデジタル信号に変換して、ベースバンド処理回路部20に出力する。
【0031】
ベースバンド処理回路部20は、RF受信回路部11から出力された受信信号に対して相関処理等を行ってGPS衛星信号を捕捉・追尾し、GPS衛星信号から取り出した衛星軌道データや時刻データ等に基づいて、所定の位置算出計算を行って携帯型電話機1の位置(位置座標)を算出する機能部である。
【0032】
ベースバンド処理回路部20は、受信信号の中からGPS衛星信号を捕捉する衛星信号捕捉装置であるとともに、捕捉したGPS衛星信号を追尾(トラッキング)する衛星信号追尾装置である。また、GPS衛星信号を利用した位置/速度算出計算を行って、携帯型電話機1の位置及び速度を算出する。
【0033】
図2は、ベースバンド処理回路部20の回路構成の一例を示す図であり、本実施形態に係わる回路ブロックを中心に記載している。ベースバンド処理回路部20は、キャリア除去部21と、衛星信号捕捉部23と、衛星信号追尾部25と、処理部27と、記憶部29とを備えて構成される。
【0034】
キャリア除去部21は、RF受信回路部11から出力された受信信号から搬送波(キャリア)を除去する回路部であり、例えば、乗算部211と、キャリア除去用信号発生部213とを備えて構成される。
【0035】
乗算部211は、キャリア除去用信号発生部213により生成されたキャリア除去用信号を受信信号に乗算することで受信信号から搬送波を除去し、受信信号に含まれるCAコード(受信CAコード)を相関処理部231に出力する乗算器である。
【0036】
キャリア除去用信号発生部213は、GPS衛星信号のキャリア信号と同一の周波数の信号であるキャリア除去用信号を生成する回路である。RF受信回路部11から出力される信号がIF信号である場合には、IF周波数をキャリア周波数として信号を生成する。何れにしろ、RF受信回路部11から出力される信号の周波数と同一の周波数のキャリア除去用信号を生成するための回路である。
【0037】
以下では、RF受信回路部11から出力される信号周波数を「キャリア周波数」又は「搬送波周波数」と呼び、RF受信回路部11から出力される信号のキャリア(搬送波)成分の位相を「キャリア位相」と呼んで説明する。
【0038】
キャリア除去用信号発生部213は、キャリア位相追尾ループフィルター部254から出力されるキャリア位相指示信号、及び、キャリア周波数追尾ループフィルター部256から出力されるキャリア周波数指示信号に従って、生成する信号の位相及び周波数を調整してキャリア除去用信号を発生させて、乗算部211に出力する。
【0039】
この際、キャリア除去用信号発生部213は、ドップラー演算部275から出力されるドップラー周波数を加味してキャリア除去用信号を発生させる。GPS受信部10がGPS衛星信号を受信する際の周波数は、GPS衛星の移動や携帯型電話機1の移動により生ずるドップラーの影響等により、GPS衛星信号の規定キャリア周波数である1.57542[GHz]とは必ずしも一致しない。そのため、規定キャリア周波数にドップラー周波数を加味した周波数のキャリア除去用信号を発生させて、乗算部211に出力する。
【0040】
衛星信号捕捉部23は、乗算部211から出力された搬送波が除去された受信信号からGPS衛星信号を捕捉する回路部であり、相関処理部231と、レプリカコード発生部233とを備えて構成される。
【0041】
相関処理部231は、例えば相関器(コリレーター)を有して構成され、レプリカコード発生部233により生成されたレプリカコードと、乗算部211から出力された受信CAコードとの相関処理を行う回路部である。相関処理部231は、相関積算時間決定部271から出力される相関積算時間に亘って相関値を積算し、その積算結果を処理部27に出力する。
【0042】
レプリカコード発生部233は、GPS衛星信号の拡散符号であるCAコードのレプリカコード(CAコードレプリカ)を生成する回路部である。レプリカコード発生部233は、コード追尾ループフィルター部252から出力されるコード位相指示信号に従って、Early,Prompt,Lateの3種類のレプリカコードを生成する。そして、生成した3種類のレプリカコードを相関処理部231に出力する。
【0043】
本実施形態において、相関処理部231は、受信信号のIQ成分それぞれに対して、レプリカコード発生部233から入力したレプリカコードとの相関処理を行う。I成分は、受信信号の同相成分(実部)を示し、Q成分は受信信号の直交成分(虚部)を示す。レプリカコード発生部233からは、Early,Prompt,Lateの3種類のレプリカコードが出力されるため、相関処理部231は、受信信号のIQ成分それぞれについて、3種類のレプリカコードとの相関処理を行う。
【0044】
なお、受信信号のIQ成分の分離(IQ分離)を行う回路ブロックについては図示を省略するが、どのように回路ブロックを構成してもよい。例えば、RF受信回路部11において受信信号をIF信号にダウンコンバートする際に、位相が90度異なる局部発振信号を受信信号に乗算することでIQ分離を行うこととしてもよい。
【0045】
衛星信号追尾部25は、衛星信号捕捉部23により捕捉されたGPS衛星信号を追尾する回路部であり、コード位相差算出部251と、コード追尾ループフィルター部252と、キャリア位相差算出部253と、キャリア位相追尾ループフィルター部254と、キャリア周波数差算出部255と、キャリア周波数追尾ループフィルター部256とを備えて構成される。
【0046】
コード位相差算出部251は、受信CAコードの位相と、レプリカコードの位相との位相差(以下、「コード位相差」と称す。)を算出して出力する位相比較器である。コード位相差算出部251は、相関処理部231から出力されたEarlyコードに対するIQ相関値と、Lateコードに対するIQ相関値とをそれぞれ用いて、Earlyコードに対するパワーと、Lateコードに対するパワーとを算出する。そして、算出したパワーを用いて、公知の演算手法に従ってコード位相差を算出し、算出したコード位相差に応じた信号(電圧)を生成して、コード追尾ループフィルター部252に出力する。
【0047】
コード追尾ループフィルター部252は、例えばローパスフィルターを有して構成され、通過させる信号の周波数帯域成分を決めるパラメーターであるループバンド幅を可変に設計された、つまりループバンド幅を調整可能に設計されたフィルター回路である。コード追尾ループフィルター部252は、ループバンド幅設定部273から出力されるループバンド幅に従ってループバンド幅を設定する。つまり、ループバンド幅設定部273から出力されるループバンド幅に従ってループバンド幅が変更される。そして、コード位相差算出部251から出力されるコード位相差に応じた信号に含まれる高周波成分をカットしてレプリカコード発生部233に出力する。コード追尾ループフィルター部252のループバンド幅を、適宜「コード追尾ループバンド幅」として図示・説明する。
【0048】
相関処理部231→コード位相差算出部251→コード追尾ループフィルター部252→レプリカコード発生部233→相関処理部231の閉回路によって、遅延ロックループ(DLL(Delay Locked Loop))として知られるコード位相を追尾するためのループ回路が形成される。
【0049】
キャリア位相差算出部253は、受信信号のキャリア成分の位相と、キャリア除去用信号発生部213により生成されたキャリア除去用信号の位相との位相差(以下、「キャリア位相差」と称す。)を算出して出力する位相比較器である。キャリア位相差算出部253は、相関処理部231から出力されたEarly、Prompt、Lateそれぞれのコードに対するIQ相関値を用いて、公知の演算手法に従ってキャリア位相差を算出する。そして、算出したキャリア位相差に応じた信号(電圧)を生成して、キャリア位相追尾ループフィルター部254に出力する。
【0050】
キャリア位相追尾ループフィルター部254は、ループバンド幅設定部273から出力されるキャリア位相追尾ループバンド幅に従ってループバンド幅を設定する。そして、キャリア位相追尾ループフィルター部254は、コード追尾ループフィルター部252と同様に、キャリア位相差算出部253から出力されたキャリア位相差に応じた信号に混入される高周波成分をカットしてキャリア除去用信号発生部213に出力する。キャリア位相追尾ループフィルター部254のループバンド幅を、適宜「キャリア位相追尾ループバンド幅」として図示・説明する。
【0051】
乗算部211→相関処理部231→キャリア位相差算出部253→キャリア位相追尾ループフィルター部254→キャリア除去用信号発生部213→乗算部211の閉回路によって、位相ロックループ(PLL(Phase Locked Loop))として知られるキャリア位相を追尾するためのループ回路が形成される。
【0052】
キャリア周波数差算出部255は、キャリア周波数と、キャリア除去用信号発生部213により生成されたキャリア除去用信号の周波数との周波数差(以下、「キャリア周波数差」と称す。)を算出して出力する周波数比較器である。キャリア周波数差算出部255は、相関処理部231から出力されたEarly、Prompt、Lateそれぞれのコードに対するIQ相関値を用いて、公知の演算手法に従ってキャリア周波数差を算出する。そして、算出したキャリア周波数差に応じた信号(電圧)を生成して、キャリア周波数追尾ループフィルター256に出力する。
【0053】
キャリア周波数追尾ループフィルター部256は、ループバンド幅設定部273から出力されるキャリア周波数追尾ループバンド幅に従ってループバンド幅を設定する。そして、キャリア周波数追尾ループフィルター部256は、コード追尾ループフィルター部252と同様に、キャリア周波数差算出部255から出力されたキャリア周波数差に応じた信号に含まれる高周波成分をカットしてキャリア除去用信号発生部213に出力する。キャリア周波数追尾ループフィルター部256のループバンド幅を、適宜「キャリア周波数追尾ループバンド幅」として図示・説明する。
【0054】
乗算部211→相関処理部231→キャリア周波数差算出部255→キャリア周波数追尾ループフィルター部256→キャリア除去用信号発生部213→乗算部211の閉回路によって、周波数ロックループ(FLL(Frequency Locked Loop))として知られるキャリア周波数を追尾するためのループ回路が形成される。
【0055】
処理部27は、ベースバンド処理回路部20の各機能部を統括的に制御する制御装置であり、例えばCPU等のプロセッサーを有して構成される。処理部27は、機能部として、相関積算時間決定部271と、ループバンド幅設定部273と、ドップラー演算部275と、位置/速度算出部277とを有する。
【0056】
相関積算時間決定部271は、相関処理部231が相関値の積算処理を行う際の積算時間(相関積算時間)を決定する決定部であり、決定した相関積算時間を相関処理部231に出力する。
【0057】
ループバンド幅設定部273は、衛星信号追尾部25に含まれる各ループフィルター部のループバンド幅を個別に設定する設定部であり、設定したループバンド幅を対応するループフィルター部に出力する。
【0058】
ドップラー演算部275は、携帯型電話機1の速度とGPS衛星の速度とを用いて、GPS衛星及び携帯型電話機1の移動により生ずるドップラー周波数を演算する演算部であり、演算したドップラー周波数をキャリア除去用信号発生部213に出力する。
【0059】
位置/速度算出部277は、衛星信号捕捉部23により捕捉された、或いは、衛星信号追尾部25により追尾されているGPS衛星信号を利用して、公知の位置/速度算出計算を行って携帯型電話機1の位置及び速度を算出する算出部である。位置/速度算出部277は、算出した位置及び速度をホストCPU30に出力する。
【0060】
記憶部29は、ROMやフラッシュROM、RAM等の記憶装置によって構成され、ベースバンド処理回路部20のシステムプログラムや、ループバンド幅設定機能、位置/速度算出機能等を実現するための各種プログラム、データ等を記憶している。また、各種処理の処理中データ、処理結果などを一時的に記憶するワークエリアを有する。
【0061】
図1の機能ブロックに戻って、ホストCPU30は、記憶部90に記憶されているシステムプログラム等の各種プログラムに従って携帯型電話機1の各部を統括的に制御するプロセッサーである。ホストCPU30は、ベースバンド処理回路部20から出力された位置座標をもとに、表示部50に現在位置を指し示した地図を表示させたり、その位置座標を各種のアプリケーション処理に利用する。
【0062】
操作部40は、例えばタッチパネルやボタンスイッチ等により構成される入力装置であり、押下されたキーやボタンの信号をホストCPU30に出力する。この操作部40の操作により、通話要求やメール送受信要求、位置算出要求等の各種指示入力がなされる。
【0063】
表示部50は、LCD(Liquid Crystal Display)等により構成され、ホストCPU30から入力される表示信号に基づいた各種表示を行う表示装置である。表示部50には、位置表示画面や時刻情報等が表示される。
【0064】
IMU60は、例えば、加速度センサー61や及びジャイロセンサー63を備え、予めセンサーに対応付けて定められたセンサー座標系の直交3軸それぞれの軸方向の加速度及び各軸の軸回りの角速度を検出可能に構成される。なお、加速度センサー61及びジャイロセンサー63は、それぞれが独立したセンサーであってもよいし、一体型のセンサーであってもよい。
【0065】
携帯電話用アンテナ70は、携帯型電話機1の通信サービス事業者が設置した無線基地局との間で携帯電話用無線信号の送受信を行うアンテナである。
【0066】
携帯電話用無線通信回路部80は、RF変換回路、ベースバンド処理回路等によって構成される携帯電話の通信回路部であり、携帯電話用無線信号の変調・復調等を行うことで、通話やメールの送受信等を実現する。
【0067】
記憶部90は、ホストCPU30が携帯型電話機1を制御するためのシステムプログラムや、IMU60のキャリブレーション機能等を実現するための各種プログラムやデータ等を記憶する記憶装置である。
【0068】
2.ループバンド幅設定の原理
次に、ベースバンド処理回路部20において、処理部27のループバンド幅設定部273が実行するループバンド幅設定の原理について説明する。
【0069】
(1)キャリア位相追尾ループフィルター部のループバンド幅の設定
先ず、キャリア位相追尾ループフィルター部254のループバンド幅の設定の原理について説明する。キャリア位相追尾ループ回路においてキャリア位相を追尾する際に問題となるのは、追尾しようとするキャリア位相に含まれ得る誤差の存在である。このキャリア位相誤差の主要因は、サーマルノイズとダイナミックストレスと呼ばれるノイズ成分である。
【0070】
サーマルノイズは、熱雑音として知られるノイズ成分であり、キャリア位相追尾ループ回路内の信号に混在する全周波数帯域に分布する雑音である。また、ダイナミックストレスは、動的応力として知られる動的な信号の揺らぎであり、GPS衛星及びGPS受信装置の移動により、GPS受信装置とGPS衛星間の擬似距離が変化することに起因して生ずる位相揺らぎである。
【0071】
具体的に説明するために、キャリア位相追尾ループ回路におけるキャリア位相揺らぎを定式化する。ここでは、角度換算(deg)でキャリア位相揺らぎを定式化する。キャリア位相追尾ループにおけるキャリア位相揺らぎの総量であるトータルジッター「σPLL」は、次式(1)で与えられる。
【数1】

【0072】
式(1)において、「σtPLL」はサーマルノイズを示しており、「θen」はダイナミックストレスを示している。また、「σv」、「θA」は、それぞれ振動によるキャリア位相揺らぎ、アラン分散によるキャリア位相揺らぎを示しているが、これらは無視できるほど微小な値であるため、本実施形態では考慮しないこととする。
【0073】
また、サーマルノイズ「σtPLL」は、次式(2)で与えられる。
【数2】

【0074】
式(2)において、「BPLL」はキャリア位相追尾ループフィルター部254のループバンド幅である。また、「S」はC/N比として表される受信信号の信号強度であり、「T」は相関積算時間である。式(2)より、サーマルノイズ「σtPLL」は、キャリア位相追尾ループフィルター部254のループバンド幅「BPLL」と、受信信号の信号強度「S」と、相関積算時間「T」とに依存する値であることがわかる。
【0075】
また、キャリア位相追尾ループ回路におけるダイナミックストレス「θen」は、キャリア位相追尾ループフィルター部254の次数(ループフィルターの次数)に応じて異なる式で定式化される。具体的には、1次〜3次のループフィルターの次数それぞれに対して、ダイナミックストレス「θe1」〜「θe3」は、次式(3)〜(5)で与えられる。
【数3】

【数4】

【数5】

【0076】
式(3)〜(5)において、「R」はGPS受信装置とGPS衛星との間の擬似距離である。「dR/dt」は、GPS受信装置からGPS衛星に向かう視線方向に対するGPS受信装置の速度(真の速度)であり、「dR2/dt2」は、視線方向に対するGPS受信装置の加速度(真の加速度)であり、「dR3/dt3」は、視線方向に対するGPS受信装置の躍度(=加加速度)(真の躍度)である。また、「α」、「β」、「γ」は、フィルターの次数によって異なる定数である。
【0077】
式(3)〜(5)を見ると、ダイナミックストレス「θen」は、ループフィルターの次数に応じて、GPS受信装置の速度「dR/dt」、加速度「dR2/dt2」及び躍度「dR3/dt3」の視線方向成分にそれぞれ依存することがわかる。また、フィルターの次数に関わらず、キャリア位相追尾ループフィルター部254のループバンド幅「BPLL」にも依存することがわかる。
【0078】
処理部27のループバンド幅設定部273は、所定の設定タイミングで、キャリア位相追尾ループフィルター部254のループバンド幅を設定する。このループバンド幅の設定は、例えば、定期的なタイミング(例えば1日に1回)や、GPS衛星信号の受信環境が変化したタイミング、一定以上の温度変化(例えば5℃以上の温度変化)が生じたタイミング、などに実行することにすれば好適である。一定以上の温度変化が生じたタイミングとする場合には、温度センサーを更に備えることとする。
【0079】
ループバンド幅設定部273は、キャリア位相追尾ループフィルター部254のループバンド幅の設定タイミングにおいて、衛星信号捕捉部23が捕捉しているGPS衛星信号の信号強度「S」を計測して取得するとともに、相関積算時間決定部271から相関積算時間「T」を取得する。そして、取得した信号強度「S」及び相関積算時間「T」を用いて、式(2)に従ってサーマルノイズのループバンド幅特性「σtPLL(BPLL)」を求める。ループバンド幅特性とは、ループバンド幅の変化によって、キャリア位相の揺らぎがどのように変化するかを示す特性である。
【0080】
他方で、ループバンド幅設定部273は、当該設定タイミングにおいて、ダイナミックストレスを算出するために用いられる物理量(以下、「ダイナミックストレス算出用物理量」と称す。)のセンサー検出値と、当該ダイナミックストレス算出用物理量のセンサー検出値に含まれ得る最大の検出誤差(以下、「想定最大検出誤差」と称す。)とを、ホストCPU30から取得する。そして、これらの値を用いてダイナミックストレスのループバンド幅特性「θen(BPLL)」を求める。
【0081】
図3は、ループフィルター部の次数と、ダイナミックストレス算出用物理量との対応関係を示す図である。ループフィルター部の次数が「1次」であれば、視線方向に対する速度(センサー出力から計算した速度)及び想定最大速度誤差を用いて、式(3)に従ってダイナミックストレスのループバンド幅特性「θe1(BPLL)」を求める。ループフィルター部の次数が「2次」であれば、視線方向に対する加速度(センサー出力から計算した加速度)及び想定最大加速度誤差を用いて、式(4)に従ってダイナミックストレスのループバンド幅特性「θe2(BPLL)」を求める。また、ループフィルター部の次数が「3次」であれば、視線方向に対する躍度(センサー出力から計算した躍度)及び想定最大躍度誤差を用いて、式(5)に従ってダイナミックストレスのループバンド幅特性「θe3(BPLL)」を求める。
【0082】
より具体的には、式(3)〜(5)のそれぞれにおいて、「速度のセンサー検出値の視線方向成分+想定最大速度誤差の視線方向成分」を「dR/dt」として、「加速度のセンサー検出値の視線方向成分+想定最大加速度誤差の視線方向成分」を「dR2/dt2」として、「躍度のセンサー検出値の視線方向成分+想定最大躍度誤差の視線方向成分」を「dR3/dt3」として、ダイナミックストレスのループバンド幅特性「θen(BPLL)」を求める。
【0083】
本実施形態における大きな特徴の1つは、式(3)〜式(5)において、単純にGPS受信装置の速度、加速度及び躍度のセンサー検出値を用いてダイナミックストレスのループバンド幅特性「θen(BPLL)」を求めるのではなく、速度、加速度及び躍度のセンサー検出値の想定最大検出誤差を加味(考慮)して、ダイナミックストレスのループバンド幅特性「θen(BPLL)」を求めることにした点にある。
【0084】
式(3)〜式(5)によれば、ダイナミックストレス算出用物理量の真値を用いてダイナミックストレスのループバンド幅特性を求めるべきであるが、真値は不明である。そのため、従来は、ダイナミックストレス算出用物理量のセンサー検出値を用いてダイナミックストレスのループバンド幅特性を求める等していた。本実施形態では、さらにセンサー検出値に含まれ得る最大の検出誤差をも加味してダイナミックストレスのループバンド幅特性を求めることにした点が、従来とは異なる大きな特徴となっている。
【0085】
サーマルノイズのループバンド幅特性「σtPLL(BPLL)」と、ダイナミックストレスのループバンド幅特性「θen(BPLL)」とが求まれば、式(1)に従って、トータルジッターのループバンド幅特性「σPLL(BPLL)」を求めることができる。そして、このようにして求めたループバンド幅特性「σPLL(BPLL)」に基づいて、ループバンド幅「BPLL」を最適化する。
【0086】
本願発明者は、サーマルノイズ、ダイナミックストレス及びトータルジッターのループバンド幅特性を調べる実験を行った。具体的には、GPS衛星信号の受信環境やGPS受信装置の移動状況を変化させながら、サーマルノイズ「σtPLL」、ダイナミックストレス「θen」及びトータルジッター「σPLL」が、ループバンド幅「BPLL」の大きさに応じてどのように変化するかを調べた。
【0087】
図4は、その実験結果の一例を示す図である。キャリア位相追尾ループフィルター部254の次数を「2次」として、受信信号の信号強度を23[dB−Hz]、想定最大加速度誤差を±0.1[m/s2]、相関積算時間を20[ms]として実験を行った。図4において、横軸はキャリア位相追尾ループバンド幅「BPLL」、縦軸はサーマルノイズ「σtPLL」、ダイナミックストレス「θe2」及びトータルジッター「σPLL」を示している。サーマルノイズ「σtPLL」を点線で示し、ダイナミックストレス「θe2」を一点鎖線で示し、トータルジッター「σPLL」を実線で示している。
【0088】
この図を見ると、サーマルノイズ「σtPLL」は、キャリア位相追尾ループバンド幅「BPLL」が大きくなるにつれて増加する傾向がある。一方、ダイナミックストレス「θe2」は、キャリア位相追尾ループバンド幅「BPLL」が大きくなるにつれて減少する傾向がある。そして、これらを合算することで得られるトータルジッター「σPLL」は、あるループバンド幅「BPLL」において最小となり、当該ループバンド幅「BPLL」から離れるにつれて増加する傾向がある。
【0089】
トータルジッター「σPLL」は、コード位相追尾ループ回路におけるキャリア位相の揺らぎの大きさを表しているため、トータルジッター「σPLL」は小さい方がよい。従って、本実施形態では、トータルジッター「σPLL」を最小とするようにループバンド幅「BPLL」を最適化することにする。
【0090】
式(1)より、トータルジッター「σPLL」は、主として、サーマルノイズ「σtPLL」とダイナミックストレス「θen」との和で表されるが、キャリア位相追尾ループ回路においてキャリア位相の追尾が適切に行われるようにするためには、トータルジッター「σPLL」を所定の閾値(例えば15[deg])以下とする必要がある。
【0091】
上述したように、ダイナミックストレス「θen」のループバンド幅特性は、ループフィルターの次数に応じて、速度、加速度及び躍度の想定最大検出誤差をそれぞれ加味して求められる。想定最大検出誤差は、ある期間において想定されるダイナミックストレス算出用物理量の最大の検出誤差である。当該期間において実際に検出されるダイナミックストレス算出用物理量の検出誤差は、想定最大検出誤差よりも小さな値となることが期待される。そうであるのに、実際の検出誤差を用いるのではなく、想定最大検出誤差を用いてダイナミックストレスのループバンド幅特性を求めることにしたのは、ダイナミックストレスを大きめに見積もっておくことで、サーマルノイズ「σtPLL」がある程度増加してもよいように余裕を持たせるためである。
【0092】
より具体的には、キャリア位相追尾ループバンド幅「BPLL」を固定した場合には、想定最大検出誤差を用いて求められるダイナミックストレス「θen」は、実際の検出誤差を用いて求められるダイナミックストレス「θen」よりも大きくなる。図4では、想定最大検出誤差を用いて求めたダイナミックストレスを一点鎖線で示しているが、実際の検出誤差は想定最大検出誤差よりも小さくなることが期待されるため、ダイナミックストレスを示す一点鎖線は左方向にシフトすることが予想される。
【0093】
上述したように、トータルジッターが所定の閾値以下であれば問題はない。従って、ダイナミックストレスが小さくなるということは、同一のループバンド幅に対して、より大きなサーマルノイズが許容されるということである。すなわち、図4において、ダイナミックストレスを示す一点鎖線が左方向にシフトすると、サーマルノイズを示す点線は上方向にシフトすることが許容されることになる。
【0094】
式(2)によれば、受信信号の信号強度が小さいほど(信号が弱いほど)、サーマルノイズは大きくなる。従って、図4において、サーマルノイズの点線が上方向にシフトすることが許容されるということは、同一のループバンド幅に対して、受信信号の信号強度が小さくなることが許容されることを意味する。
【0095】
このように、想定最大検出誤差を用いてループバンド幅を最適化し、サーマルノイズの増加にある程度の余裕を持たせたことで、GPS衛星信号の追尾中に受信環境がインドア環境などの弱電界環境に変化したような場合であっても、ロック外れの発生を起こりにくくし、追尾の継続性を向上させることができる。
【0096】
なお、上述したように、トータルジッター「σPLL」が所定の閾値(例えば15[deg])以下であれば、キャリア位相の追尾が適切に行われることがわかっている。そのため、本実施形態のようにトータルジッター「σPLL」を最小とするようにループバンド幅「BPLL」を設定することに限らず、トータルジッター「σPLL」を閾値以下の所定値(例えば、最小値よりも少し大きな値)とするようにループバンド幅「BPLL」を設定することとしてもよい。
【0097】
(2)キャリア周波数追尾ループフィルター部のループバンド幅の設定
キャリア周波数追尾ループにおいてキャリア周波数を追尾する際に問題となるのは、追尾しようとするキャリア周波数に含まれ得る誤差の存在である。このキャリア周波数誤差の主要因は、やはりサーマルノイズ及びダイナミックストレスである。
【0098】
具体的に説明するために、キャリア周波数追尾ループ回路におけるキャリア周波数揺らぎを定式化する。ここでは、周波数換算(Hz)でキャリア周波数揺らぎを定式化する。キャリア周波数追尾ループにおけるサーマルノイズ「σtFLL」は、次式(6)で与えられる。
【数6】

【0099】
式(6)において、「BFLL」はキャリア周波数追尾ループフィルター部256のループバンド幅であり、「F」は定数である。式(6)より、キャリア周波数追尾ループにおけるサーマルノイズ「σtFLL」も、キャリア周波数追尾ループフィルター部256のループバンド幅「BFLL」と、受信信号の信号強度「S」と、相関積算時間「T」とに依存することがわかる。
【0100】
また、キャリア周波数追尾ループにおけるダイナミックストレス「fe」は、キャリア周波数追尾ループフィルター部256の次数に応じて異なる式で定式化される。具体的には、n次のキャリア周波数追尾ループフィルター部256について、ダイナミックストレス「fen」は、次式(7)で与えられる。
【数7】

但し、「λ」は定数であり、「R」は擬似距離である。
【0101】
そして、キャリア周波数追尾ループにおけるトータルジッター「σFLL」は、次式(8)で与えられる。
【数8】

【0102】
キャリア周波数追尾ループフィルター部256のループバンド幅の設定も、キャリア位相追尾ループフィルター部254の場合と同様に考えることができる。すなわち、式(6)から求められるサーマルノイズのループバンド幅特性「σtFLL(BFLL)」と、式(7)から求められるダイナミックストレスのループバンド幅特性「fen(BFLL)」とを用いて、式(8)に従ってトータルジッターのループバンド幅特性「σFLL(BFLL)」を求める。そして、トータルジッター「σFLL」が最小となるように、キャリア周波数追尾ループフィルター部256のループバンド幅「BFLL」を最適化する。
【0103】
(3)コード追尾ループフィルター部のループバンド幅の設定
コード追尾ループ回路においてコード位相を追尾する際に問題となるのは、追尾しようとするコード位相に含まれ得る誤差の存在である。このコード位相誤差の主要因は、やはりサーマルノイズとダイナミックストレスである。
【0104】
具体的に説明するために、コード追尾ループ回路におけるコード位相揺らぎを定式化する。ここでは、CAコードのチップ換算(chips)換算でコード位相揺らぎを定式化する。コード追尾ループ回路におけるサーマルノイズ「σtDLL」は、次式(9)で与えられる。
【数9】

【0105】
式(9)において、「BDLL」はコード追尾ループバンド幅であり、「F1」,「F2」は相関係数である。また、「d」はEarlyコード,Promptコード,Lateコードの位相差(スペーシング)である。式(9)より、コード追尾ループにおけるサーマルノイズ「σtDLL」も、コード追尾ループバンド幅「BDLL」と、受信信号の信号強度「S」と、相関積算時間「T」とに依存することがわかる。
【0106】
また、コード追尾ループ回路におけるダイナミックストレス「De」は、コード追尾ループフィルター部252の次数に応じて異なる式で定式化される。具体的には、n次のコード追尾ループフィルター部252について、ダイナミックストレス「Den」は、次式(10)で与えられる。
【数10】

但し、「η」は定数であり、「R」は擬似距離である。
【0107】
そして、コード追尾ループにおけるトータルジッター「σDLL」は、次式(11)で与えられる。
【数11】

【0108】
コード追尾ループフィルター部252のループバンド幅の設定も、キャリア位相追尾ループフィルター部254の場合と同様に考えることができる。すなわち、式(9)から求められるサーマルノイズのループバンド幅特性「σtDLL(BDLL)」と、式(10)から求められるダイナミックストレスのループバンド幅特性「Den(BDLL)」とを用いて、式(11)に従ってトータルジッターのループバンド幅特性「σDLL(BDLL)」を求める。そして、トータルジッター「σDLL」が最小となるように、コード追尾ループフィルター部252のループバンド幅「BDLL」を最適化する。
【0109】
3.データ構成
(1)記憶部90のデータ構成
図1に示すように、携帯型電話機1の記憶部90には、ホストCPU30により読み出され、メイン処理(図5参照)として実行されるメインプログラム911と、センサーデータ921と、キャリブレーション時刻922と、キャリブレーション時検出誤差923と、ダイナミックストレス算出用物理量925と、想定最大検出誤差927とが記憶される。また、メインプログラム911には、キャリブレーション処理として実行されるキャリブレーションプログラム912がサブルーチンとして含まれている。
【0110】
メイン処理では、ホストCPU30は、携帯型電話機1の本来的な機能である通話機能やメール送受信機能、インターネット機能等を実現するための処理を行う。また、IMU60のキャリブレーション処理を行い、キャリブレーション処理を行ってからの経過時間に基づいて想定最大検出誤差927を算出し、ダイナミックストレス算出用物理量925と併せてベースバンド処理回路部20に出力する。メイン処理については、フローチャートを用いて詳細に後述する。
【0111】
また、キャリブレーション処理とは、ホストCPU30が、例えばIMU60を構成する加速度センサー61及びジャイロセンサー63のバイアスやスケールファクターといった誤差パラメーターの値を算出し、加速度センサー61やジャイロセンサー63からのセンサー出力を、算出した誤差パラメーターの値を用いて補正する処理を行って、IMU60の較正を行う処理である。
【0112】
センサーデータ921は、IMU60を構成する加速度センサー61及びジャイロセンサー63によってそれぞれ検出された加速度及び角速度が時系列に記憶されたデータであり、IMU60から検出結果が出力される毎に随時更新される。
【0113】
キャリブレーション時刻922は、IMU60のキャリブレーション処理がホストCPU30により最後に実行された時刻である。キャリブレーション時検出誤差923は、キャリブレーション時刻922におけるダイナミックストレス算出用物理量の検出誤差である。
【0114】
ダイナミックストレス算出用物理量925は、ダイナミックストレスを算出するために用いられる物理量である。図3を用いて説明したように、衛星信号追尾部25に含まれるループフィルター部の次数が「1次」の場合は「速度」が、「2次」の場合は「加速度」が、「3次」の場合は「躍度」がそれぞれダイナミックストレス算出用物理量となる。
【0115】
想定最大検出誤差927は、キャリブレーション時刻922からの経過時間に基づいて算出されるダイナミックストレス算出用物理量の検出誤差であって、想定される最大の検出誤差である。
【0116】
(2)記憶部29のデータ構成
図2に示すように、ベースバンド処理回路部20の記憶部29には、処理部27により読み出され、ベースバンド処理(図6参照)として実行されるベースバンド処理プログラム291と、衛星軌道データ293と、ダイナミックストレス算出用物理量295と、想定最大検出誤差297とが記憶される。
【0117】
また、ベースバンド処理プログラム291には、コード追尾ループフィルターのループバンド幅設定処理として実行されるコード追尾ループバンド幅設定プログラム2911と、キャリア位相追尾ループフィルターのループバンド幅設定処理(図7参照)として実行されるキャリア位相追尾ループバンド幅設定プログラム2913と、キャリア周波数追尾ループフィルターのループバンド幅設定処理として実行されるキャリア周波数追尾ループバンド幅設定プログラム2915とがサブルーチンとして含まれている。
【0118】
衛星軌道データ293は、全てのGPS衛星の概略の衛星軌道情報を記憶したアルマナックや、各GPS衛星それぞれについて詳細な衛星軌道情報を記憶したエフェメリス等のデータである。衛星軌道データ293は、GPS衛星から受信したGPS衛星信号をデコードすることで取得したり、携帯型電話機1の基地局やアシストサーバーから取得する。
【0119】
ダイナミックストレス算出用物理量295及び想定最大検出誤差297は、記憶部90に記憶されるダイナミックストレス算出用物理量925及び想定最大検出誤差927それぞれと同一のデータである。
【0120】
4.処理の流れ
(1)ホストCPU30の処理
図5は、記憶部90に記憶されているメインプログラム911がホストCPU30により読み出されて実行されることで、携帯型電話機1において実行されるメイン処理の流れを示すフローチャートである。
【0121】
最初に、ホストCPU30は、操作部40を介してユーザーによりなされた指示操作を判定し(ステップA1)、指示操作が通話指示操作であると判定した場合は(ステップA1;通話指示操作)、通話処理を行う(ステップA3)。具体的には、携帯電話用無線通信回路部80に基地局との間の基地局通信を行わせ、携帯型電話機1と他機との間の通話を実現する。
【0122】
また、ステップA1において指示操作がメール送受信指示操作であると判定した場合は(ステップA1;メール送受信指示操作)、ホストCPU30は、メール送受信処理を行う(ステップA5)。具体的には、携帯電話用無線通信回路部80に基地局通信を行わせ、携帯型電話機1と他機との間のメールの送受信を実現する。
【0123】
また、ステップA1において指示操作が位置/速度算出指示操作であると判定した場合は(ステップA1;位置/速度算出指示操作)、ホストCPU30は、記憶部90に記憶されているダイナミックストレス算出用物理量925及び想定最大検出誤差927を、ベースバンド処理回路部20の処理部27に出力する(ステップA7)。
【0124】
そして、ホストCPU30は、処理部27に位置/速度算出計算を実行させる位置/速度算出制御処理を行う(ステップA9)。そして、ホストCPU30は、算出された位置及び速度を処理部27から取得し、取得した位置及び速度を表示部50に出力して表示させる(ステップA11)。
【0125】
ステップA3〜A11の処理の後、ホストCPU30は、キャリブレーション処理の実行タイミングであるか否かを判定する(ステップA13)。キャリブレーションの実行タイミングは、任意のタイミングを設定可能である。
【0126】
例えば、携帯型電話機1の電源ONからの経過時間、或いは、キャリブレーション処理を前回実行してからの経過時間が所定時間(例えば1時間)に達したタイミングとしてもよいし、携帯型電話機1の電源ON時の温度、或いは、キャリブレーション処理を前回実行したときの温度から所定温度(例えば5℃)以上の温度変化が検出されたタイミングとしてもよい。後者の場合には温度センサーを更に備えることとする。また、ユーザーによりキャリブレーション処理の実行指示操作がなされたタイミングとしてもよい。
【0127】
そして、まだ実行タイミングではないと判定した場合は(ステップA13;No)、ホストCPU30は、ステップA17へと処理を移行する。また、実行タイミングであると判定した場合は(ステップA13;Yes)、記憶部90のキャリブレーションプログラム912を読み出して実行することで、キャリブレーション処理を行う(ステップA15)。
【0128】
キャリブレーション処理は、例えば公知の手法に従って、IMU60の各センサーのバイアスやスケールファクターといった誤差パラメーターの値を求めることにより行う。バイアスとは、定常的に付加される誤差値を意味し、スケールファクターとは、センサーの感度、すなわち計測すべき入力値の変化に対する出力値の変化の割合を意味する。
【0129】
次いで、ホストCPU30は、記憶部90に記憶されているセンサーデータ921に基づいて、ダイナミックストレス算出用物理量925を算出し、記憶部90を更新する(ステップA17)。そして、記憶部90に記憶されているキャリブレーション時刻922及びキャリブレーション時検出誤差923に基づいて、想定最大検出誤差927を算出し、記憶部90を更新する(ステップA19)。
【0130】
具体的には、キャリブレーション時検出誤差923を「EC」とした場合に、想定最大検出誤差927である「EMAX」を、例えば次式(12)に従って算出する。
【数12】

【0131】
式(12)において、「k」はキャリブレーション時刻からの経過時間「Δt」と正の相関を有する係数である。すなわち、経過時間「Δt」が大きいほど係数「k」は大きくなり、算出される想定最大検出誤差「EMAX」も大きくなる。なお、式(12)は想定最大検出誤差の演算式の一例であり、他の演算式を用いて想定最大検出誤差を算出することとしてもよい。キャリブレーション時刻からの経過時間「Δt」が大きくなるほど、想定最大検出誤差「EMAX」が大きくなるような演算式を定めておけばよい。
【0132】
次いで、ホストCPU30は、操作部40を介してユーザーにより電源切断指示操作がなされたか否かを判定し(ステップA21)、なされなかったと判定した場合は(ステップA21;No)、ステップA1に戻る。また、なされたと判定した場合は(ステップA21;Yes)、メイン処理を終了する。
【0133】
(2)処理部27の処理
図6は、記憶部29に記憶されているベースバンド処理プログラム291が処理部27により読み出されて実行されることで、ベースバンド処理回路部20において実行されるベースバンド処理の流れを示すフローチャートである。
【0134】
最初に、処理部27は、捕捉対象衛星判定処理を行う(ステップB1)。具体的には、不図示の時計部で計時されている現在時刻において、所与の基準位置の天空に位置するGPS衛星を、記憶部29の衛星軌道データ293を用いて判定して、捕捉対象衛星とする。基準位置は、例えば、電源投入後の初回の位置算出の場合は、いわゆるサーバーアシストによってアシストサーバーから取得した位置とし、2回目以降の位置算出の場合は、最新の算出位置とする等の方法で設定できる。
【0135】
次いで、処理部27は、ステップB1で判定した各捕捉対象衛星について、ループAの処理を実行する(ステップB3〜B27)。ループAの処理では、処理部27は、当該捕捉対象衛星から受信したGPS衛星信号の信号強度を計測する(ステップB5)。そして、相関積算時間決定部271は、相関処理部231が当該捕捉対象衛星から受信したGPS衛星信号に対して相関積算処理を行う際の相関積算時間を決定する(ステップB7)。
【0136】
相関積算時間の決定は、種々の方法により実現することができる。例えば、ステップB5で計測したGPS衛星信号の信号強度に基づいて決定することとしてもよい。信号強度が弱いほど、長い時間に亘って相関値を積算しなければ、相関値のピークの検出が困難である。そのため、信号強度が弱くなるほど相関積算時間を長くすることが好適である。例えば、信号強度が所定の低信号強度条件(例えば、信号強度≦低信号強度閾値)を満たす場合は、相関積算時間を「20ミリ秒」とし、低信号強度条件を満たさない場合には、相関積算時間を「10ミリ秒」とするなどが考えられる。
【0137】
また、GPS衛星信号の受信環境を判定し、判定した受信環境に基づいて相関積算時間を決定してもよい。例えば、受信環境が「屋内環境(インドア環境)」である場合は、相関積算時間を「20ミリ秒」とし、「屋外環境(アウトドア環境)」である場合は、相関積算時間を「10ミリ秒」とするなどが考えられる。
【0138】
その後、処理部27は、当該捕捉対象衛星からのGPS衛星信号を衛星信号追尾部25が追尾中であるか否かを判定し(ステップB9)、追尾中であると判定した場合は(ステップB9;Yes)、ステップB13へと処理を移行する。また、追尾中ではないと判定した場合は(ステップB9;No)、処理部27は、衛星信号捕捉処理を行い、当該捕捉対象衛星からのGPS衛星信号を衛星信号捕捉部23に捕捉させる(ステップB11)。
【0139】
次いで、処理部27は、ループバンド幅設定実行条件が成立したか否かを判定し(ステップB13)、成立していないと判定した場合は(ステップB13;No)、次の捕捉対象衛星へと処理を移行する。また、ループバンド幅設定実行条件が成立したと判定した場合は(ステップB13;Yes)、処理部27は、記憶部29に記憶されているキャリア位相追尾ループバンド幅設定プログラム2913を読み出して実行することで、キャリア位相追尾ループバンド幅設定処理を行う(ステップB15)。
【0140】
図7は、キャリア位相追尾ループバンド幅設定処理の流れを示すフローチャートである。
先ず、ループバンド幅設定部273は、記憶部29に記憶されているダイナミックストレス算出用物理量295の視線方向成分を算出する(ステップC1)。また、記憶部29に記憶されている想定最大検出誤差297の視線方向成分を算出する(ステップC3)。
【0141】
視線方向は、携帯型電話機1から当該捕捉対象衛星へ向かう方向である。そのため、例えば、携帯型電話機1の最新の算出位置と、衛星軌道データ293を用いて算出した当該捕捉対象衛星の最新の衛星位置とを用いれば、視線方向を求めることができる。そして、求めた視線方向に、ダイナミックストレス算出用物理量295及び想定最大検出誤差297を投影すればよい。
【0142】
次いで、ループバンド幅設定部273は、ステップB5で計測した当該捕捉対象衛星の信号強度「S」と、ステップB7で決定した当該捕捉対象衛星の相関積算時間「T」とを用いて、式(2)に従ってサーマルノイズのループバンド幅特性「σtPLL(BPLL)」を求める(ステップC5)。
【0143】
また、ループバンド幅設定部273は、ステップC1で算出したダイナミックストレス算出用物理量295の視線方向成分と、ステップC3で算出した想定最大検出誤差297の視線方向成分とを用いて、式(3)〜(5)に従ってダイナミックストレスのループバンド幅特性「θen(BPLL)」を求める(ステップC7)。
【0144】
そして、ループバンド幅設定部273は、ステップC5で求めたサーマルノイズのループバンド幅特性「σtPLL(BPLL)」と、ステップC7で求めたダイナミックストレスのループバンド幅特性「θen(BPLL)」とを用いて、式(1)に従ってトータルジッターのループバンド幅特性「σPLL(BPLL)」を求める(ステップC9)。
【0145】
次いで、ループバンド幅設定部273は、ステップC9で求めたトータルジッターのループバンド幅特性「σPLL(BPLL)」に基づいて、キャリア位相追尾ループバンド幅「BPLL」を決定する(ステップC11)。すなわち、トータルジッター「σPLL」が最小となるようにキャリア位相追尾ループバンド幅「BPLL」を最適化する。
【0146】
そして、ループバンド幅設定部273は、決定したキャリア位相追尾ループバンド幅「BPLL」をキャリア位相追尾ループフィルター部254に出力して(ステップC13)、キャリア位相追尾ループバンド幅設定処理を終了する。
【0147】
図6のベースバンド処理に戻って、キャリア位相追尾ループバンド幅設定処理を行った後、処理部27は、記憶部29に記憶されているキャリア周波数追尾ループバンド幅設定プログラム2915を読み出して実行することで、キャリア周波数追尾ループバンド幅設定処理を行う(ステップB17)。また、処理部27は、記憶部29に記憶されているコード追尾ループバンド幅設定プログラム2911を読み出して実行することで、コード追尾ループバンド幅設定処理を行う(ステップB19)。
【0148】
なお、キャリア周波数追尾ループバンド幅の設定と、コード追尾ループバンド幅の設定とは、原理で説明したようにキャリア位相追尾ループバンド幅の設定と同様に行うことができる。そのため、キャリア周波数追尾ループバンド幅設定処理及びコード追尾ループバンド幅設定処理の流れについては、フローチャートの図示及び説明を省略する。
【0149】
各種のループフィルター部のループバンド幅設定を行った後、ドップラー演算部275は、当該捕捉対象衛星から受信したGPS衛星信号のドップラー周波数を演算する(ステップB23)。ドップラー周波数は、加速度センサー61により検出された加速度を積分することで算出される携帯型電話機1の速度と、衛星軌道データ293を用いて算出される当該捕捉対象衛星の衛星速度とを用いて算出することができる。
【0150】
そして、ドップラー演算部275は、演算したドップラー周波数をキャリア除去用信号発生部213に出力して(ステップB25)、次の捕捉対象衛星へと処理を移行する。全ての捕捉対象衛星についてステップB5〜B25の処理を行った後、処理部27は、ループAの処理を終了する(ステップB27)。
【0151】
その後、位置/速度算出部277は、各捕捉対象衛星について捕捉されたGPS衛星信号を利用した位置/速度算出計算を実行する(ステップB29)。位置算出計算は、例えば携帯型電話機1と各捕捉対象衛星間の擬似距離を利用して、例えば最小二乗法やカルマンフィルターを用いた公知の収束演算を行うことで実現することができる。また、速度算出計算は、例えば各捕捉対象衛星から受信したGPS衛星信号の受信周波数の時間変化を利用して、公知の手法に基づいて実現することができる。
【0152】
次いで、処理部27は、算出した位置及び速度をホストCPU30に出力する(ステップB31)。そして、処理部27は、処理を終了するか否かを判定し(ステップB33)、まだ終了しないと判定した場合は(ステップB33;No)、ステップB1に戻る。また、処理を終了すると判定した場合は(ステップB33;Yes)、ベースバンド処理を終了する。
【0153】
5.作用効果
携帯型電話機1において、IMU60により移動状況が検出される。また、ホストCPU30により、IMU60の想定される最大の検出誤差である想定最大検出誤差が算出される。そして、ベースバンド処理回路部20の処理部27により、IMU60の検出結果及び想定最大検出誤差を用いて、GPS衛星から受信したGPS衛星信号を追尾するための追尾用ループ回路のループフィルター部のループバンド幅が設定される。
【0154】
GPS衛星信号の追尾用のループ回路におけるコード位相、キャリア位相及びキャリア周波数のジッターは、携帯型電話機1の移動状況に応じて大きく変動し得る。そのため、IMU60の検出結果を用いて各追尾用ループフィルター部のループバンド幅を設定することが適切である。しかし、IMU60の検出結果には当然誤差が含まれ得る。そのため、IMU60の検出結果の他に、IMU60の検出誤差も考慮してループバンド幅を設定することで、ループバンド幅を適切な値に設定することができる。
【0155】
特に、本実施形態では、ループフィルター部の次数に応じて、ダイナミックストレス算出用物理量に含まれ得る想定される最大の検出誤差を計算し、当該想定最大検出誤差を加味してダイナミックストレスのループバンド幅特性を求めることとした。これにより、サーマルノイズの増加にある程度の余裕を持たせることが可能となる。このことは、インドア環境などの弱電界環境においても、ロック外れを起こしにくくし、GPS衛星信号の継続的なトラッキングを実現可能とする。
【0156】
6.変形例
6−1.電子機器
上述した実施例では、電子機器の一種である携帯型電話機に本発明を適用した場合を例に挙げて説明したが、本発明を適用可能な電子機器はこれに限られるわけではない。例えば、カーナビゲーション装置や携帯型ナビゲーション装置、パソコン、PDA(Personal Digital Assistant)、腕時計といった他の電子機器についても同様に適用することが可能である。
【0157】
6−2.位置算出システム
また、上述した実施形態では、位置算出システムとしてGPSを例に挙げて説明したが、WAAS(Wide Area Augmentation System)、QZSS(Quasi Zenith Satellite System)、GLONASS(GLObal NAvigation Satellite System)、GALILEO等の他の衛星測位システムを利用した位置算出システムであってもよい。
【0158】
6−3.移動状況の検出
上述した実施形態では、IMU60の加速度センサー61により検出された加速度を用いて携帯型電話機1の移動状況を検出するものとして説明したが、IMU60のジャイロセンサー63により検出された角速度を用いて移動状況を検出してもよい。また、IMU60に換えて、或いはIMU60に加えて、携帯型電話機1の速度を検出するための速度センサーを具備させておき、速度センサーにより検出された移動速度を用いて移動状況を検出することとしてもよい。
【0159】
6−4.GPS衛星信号の受信環境を用いたループバンド幅の設定
上述した実施形態では、GPS衛星信号の信号強度を計測し、計測した信号強度を用いてサーマルノイズのループバンド幅特性を求めることで、ループバンド幅を計測した信号強度に適した値に設定するものとして説明した。しかし、GPS衛星信号の信号強度は受信環境と密接に関連しているため、インドア環境やアウトドア環境といった受信環境を用いて、サーマルノイズのループバンド幅特性を求めることにしてもよい。
【0160】
例えば、図8に示すように、GPS衛星信号の受信環境と、GPS衛星信号の受信信号の信号強度とを対応付けたテーブルを記憶部29に記憶させておく。図8のテーブルにおいて、A,B,C,D,・・・で表される受信環境は、インドア環境やアウトドア環境、アーバンキャニオン環境、マルチパス環境といったGPS衛星信号の受信環境を表している。また、各受信環境A,B,C,D,・・・に対して、GPS衛星信号の信号強度Sa,Sb,Sc,Sd,・・・が対応付けて記憶されている。
【0161】
処理部27は、捕捉対象衛星からのGPS衛星信号の受信環境を判定し、判定した受信環境に対応付けられた信号強度を読み出す。そして、読み出した信号強度を用いて、式(2)に従ってサーマルノイズのループバンド幅特性を求める。そして、求めたサーマルノイズのループバンド幅特性と、ダイナミックストレスのループバンド幅特性とを用いて、ループバンド幅を判定した受信環境に適した値に設定する。
【0162】
また、GPS衛星の幾何学的な天空配置を表す指標値であるPDOP(Position Dilution of Precision)値や、GPS衛星の仰角等の情報も受信環境と密接に関連しているため、これらの情報を用いてループバンド幅を設定することも可能である。PDOP値が小さいほど受信環境が良く、仰角が高いほど受信環境が良いため、この関係を利用して上記と同様にサーマルノイズのループバンド幅特性を求めればよい。
【0163】
6−5.ループバンド幅の設定
上述した実施形態では、各ループフィルター部それぞれのループバンド幅を、それぞれのループ回路におけるトータルジッターを最小とするように設定するものとして説明した。しかし、原理で説明したように、トータルジッターを最小とするように設定するのではなく、トータルジッターを所定の閾値以下とするように設定してもよい。
【符号の説明】
【0164】
1 携帯型電話機、 10 GPS受信部、 11 RF受信回路部、 20 ベースバンド処理回路部、 30 ホストCPU、 40 操作部、 50 表示部、 60 IMU、 61 加速度センサー、 63 ジャイロセンサー、 70 携帯電話用アンテナ、 80 携帯電話用無線通信回路部、 90 記憶部

【特許請求の範囲】
【請求項1】
移動状況を検出することと、
前記検出の誤差を算出することと、
前記検出結果及び前記誤差を用いて、測位用衛星から受信した衛星信号の追尾に用いられ、且つループバンド幅の変更が可能な追尾用フィルターの前記ループバンド幅を設定することと、
を含む衛星信号追尾方法。
【請求項2】
前記移動状況を検出することは、加速度センサー、速度センサー及びジャイロセンサーの少なくとも何れかのセンサーを用いて、所与のタイミングで前記何れかのセンサーの出力に対するキャリブレーション処理を実行することを含み、
前記誤差を算出することは、前記キャリブレーション処理を実行してからの経過時間を用いて、前記誤差を算出することを含む、
請求項1に記載の衛星信号追尾方法。
【請求項3】
前記ループバンド幅を設定することは、前記衛星信号の受信環境を用いて前記ループバンド幅を設定することを含む、
請求項1又は2に記載の衛星信号追尾方法。
【請求項4】
前記ループバンド幅を設定することは、前記追尾用フィルターのフィルター次数を用いて前記ループバンド幅を設定することを含む、
請求項1〜3の何れか一項に記載の衛星信号追尾方法。
【請求項5】
請求項1〜4の何れか一項に記載の衛星信号追尾方法を行って、前記衛星信号を追尾することと、
前記追尾された前記衛星信号を用いて位置を算出することと、
を含む位置算出方法。
【請求項6】
移動状況を検出する検出部と、
前記検出部の検出結果及び前記検出部の検出誤差を用いて、測位用衛星から受信した衛星信号の追尾に用いられ、且つループバンド幅の変更が可能な追尾用フィルターの前記ループバンド幅を設定する設定部と、
を備えた衛星信号追尾装置。
【請求項7】
加速度センサー、速度センサー及びジャイロセンサーのうちの少なくとも1つのセンサーと、
前記少なくとも1つのセンサーの出力を用いて移動状況を検出する移動状況検出部と、
測位用衛星からの衛星信号の追尾に用いられ、且つループバンド幅の変更が可能な追尾用フィルターと、
前記移動状況検出部の検出結果及び前記移動状況検出部の検出誤差を用いて、前記追尾用フィルターの前記ループバンド幅を設定する設定部と、
前記追尾用フィルターにより追尾された衛星信号を用いて位置を算出する位置算出部と、
を備えた位置算出装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate