相関検出回路、相関検出方法およびプログラム
【課題】相関器を有効に活用して、相関検出精度を向上させる技術を提供する。
【解決手段】相関検出回路2に、予め設定されている複数パターンのC/Aコードの中からレプリカ信号を決定するコード決定部300と、複数の衛星から送信された信号を含むデータ信号とコード決定部300により決定されたレプリカ信号との相関処理を実行する複数の相関処理部4とを設ける。また、各相関処理部4は、レプリカ信号と、当該レプリカ信号より相関幅制御値だけ位相の進んだ進行信号と、当該レプリカ信号より相関幅制御値だけ位相の遅れた遅行信号とを生成し、データ信号と進行信号との第1相関値92と、データ信号と遅行信号との第2相関値93とを求める。さらに、相関検出回路2に、各相関処理部4における相関幅制御値を変更する相関幅設定部302を設ける。
【解決手段】相関検出回路2に、予め設定されている複数パターンのC/Aコードの中からレプリカ信号を決定するコード決定部300と、複数の衛星から送信された信号を含むデータ信号とコード決定部300により決定されたレプリカ信号との相関処理を実行する複数の相関処理部4とを設ける。また、各相関処理部4は、レプリカ信号と、当該レプリカ信号より相関幅制御値だけ位相の進んだ進行信号と、当該レプリカ信号より相関幅制御値だけ位相の遅れた遅行信号とを生成し、データ信号と進行信号との第1相関値92と、データ信号と遅行信号との第2相関値93とを求める。さらに、相関検出回路2に、各相関処理部4における相関幅制御値を変更する相関幅設定部302を設ける。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、全地球測位システムにおいて衛星から送信される信号を復調する際に使用される相関器を有効に利用し、精度を向上させる技術に関する。
【背景技術】
【0002】
移動体の位置を特定したり、高精度の時刻を取得したりする技術として全地球測位システム(GNSS:Global Navigation Satellite System)が知られており、GNSSの中では、特にGPS(Global Positioning System)がよく知られている。GPSでは、複数の衛星が送信時刻(全衛星の時計は高精度に一致している。)や、それぞれ自己の軌道を示す情報(エフェメリス)等をGPS信号として放送しつつ飛行している。そして、これらのGPS信号は、各衛星に固有のC/Aコードという疑似ランダム符号でBPSK変調がかけられている。
【0003】
GPS受信機が、受信したC/Aコードを復調するためには、変調したときと同一のC/Aコード(レプリカC/Aコード)を受信機側で生成し、受信したC/AコードとレプリカC/Aコードとの位相を合致させる必要がある(合致したときのレプリカC/Aコードが復調されたC/Aコードとなる。)。そして、受信したC/AコードとレプリカC/Aコードとの位相を合致させるためには、C/AコードとレプリカC/Aコードとの相関処理を実行しつつ、レプリカC/Aコードの位相を変化させて、両信号の相関値が得られるように、維持し続ける必要がある。そこで、GPS受信機には、受信したC/AコードとレプリカC/Aコードとの相関処理を行う相関器が搭載されている。
【0004】
C/AコードとレプリカC/Aコードとの相関値は、両信号の位相が一致しているときに最大値となり、両信号の位相差が1チップ(C/Aコードの「1」、「0」の最小区分。)以内であればその位相差に依存し、両信号の位相差が1チップより大きいときはほぼ「0」となるという性質がある(理論上、相関値は最大値を頂点とする二等辺三角形となる。)。そこで、GPS受信機は、生成したレプリカC/Aコードの位相を進めた信号(EARLY信号)と、逆に位相を遅らせた信号(LATE信号)とを生成する(EARLY信号とLATE信号との位相差は1チップ以内とする)。そして、受信したC/AコードとEARLY信号との相関値、および、受信したC/AコードとLATE信号との相関値をそれぞれの相関器で求め、これらが一致するようにレプリカC/Aコードの位相を調整する。すなわち、受信したC/AコードとEARLY信号との相関値の方が大きい場合はレプリカC/Aコードの位相が受信したC/Aコードに比べて遅れているので、レプリカC/Aコードの位相を進めるように制御する。一方、受信したC/AコードとLATE信号との相関値の方が大きい場合はレプリカC/Aコードの位相が受信したC/Aコードに比べて進んでいるので、レプリカC/Aコードの位相を遅らせるように制御する。
【0005】
一方で、GPS衛星から送信された電波は、様々なものに反射して、GPS受信機に届く場合がある。この場合、直接入射する電波と、反射して入射する電波とでは、送信されてから受信されるまでの伝播距離が異なることになる。このような現象を、複数の経路を生じているという意味で、「マルチパス」と呼ぶ。マルチパスが発生すると、上記の二等辺三角形の形状が崩れるため、正確に位相を制御することができなくなり、相関検出精度が低下することとなる。このようなマルチパスの影響を低減して、誤差を抑制する技術が、例えば、特許文献1に記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2001−281318号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
ところが、特許文献1に記載されている技術は、1つの衛星(チャネル)に対して、3組(6個)の相関器を使用する技術である。また、各チャネルに対して2組の相関器を使用する技術も知られているが、いずれにしても、各チャネルごとにマルチパスの影響を抑制するための相関器を設けることは、相関器の数が増大することによる回路規模の増大が問題となる。また、マルチパス自体が発生していない場合には、マルチパスの影響を抑制するために設けられた多数の相関器は無駄になる。
【0008】
本発明は、上記課題に鑑みてなされたものであり、相関器を有効に活用して、相関検出精度を向上させる技術を提供する。
【課題を解決するための手段】
【0009】
上記の課題を解決するため、請求項1の発明は、予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する決定手段と、複数の送信元から送信された信号を含むデータ信号と前記決定手段により決定された検出対象の模倣信号との相関処理を実行する複数の相関処理手段とを備え、前記相関処理手段は、検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する信号生成手段と、前記データ信号と前記進行信号との第1相関値を求める第1相関手段と、前記データ信号と前記遅行信号との第2相関値を求める第2相関手段とを備え、各相関処理手段における前記相関幅制御値を変更する相関幅設定手段をさらに備える。
【0010】
また、請求項2の発明は、請求項1の発明に係る相関検出回路であって、前記複数の送信元は、全地球測位システムにおける複数の衛星であり、前記複数のパターンの模倣信号は前記複数の衛星のそれぞれに対応して設定されている。
【0011】
また、請求項3の発明は、請求項2の発明に係る相関検出回路であって、前記決定手段は、前記複数の相関処理手段から1組の相関処理手段を選択し、捕捉されている衛星に対応した模倣信号を、前記1組の相関処理手段に対する検出対象の模倣信号として決定し、前記相関幅設定手段は、前記1組の相関処理手段の相関幅制御値を互いに異なる値に設定する。
【0012】
また、請求項4の発明は、請求項3の発明に係る相関検出回路であって、前記決定手段は、前記複数の相関処理手段において未だ衛星を捕捉していない相関処理手段が存在するときに、前記衛星を捕捉していない相関処理手段を前記1組の相関処理手段の1つとして選択する。
【0013】
また、請求項5の発明は、請求項3または4の発明に係る相関検出回路であって、前記決定手段は、前記複数の相関処理手段のうちの1つの相関処理手段に、捕捉されている複数の衛星に対応した複数の模倣信号を時分割で割り当て、前記1つの相関処理手段は、前記複数の衛星をそれぞれが捕捉している複数の相関処理手段と、時分割で前記1組の相関処理手段を構成する。
【0014】
また、請求項6の発明は、予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する工程と、決定された検出対象の模倣信号を複数の相関処理部に割り当てる工程と、前記複数の相関処理部のそれぞれにおいて、割り当てられた検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する工程と、複数の送信元から送信された信号を含むデータ信号と前記進行信号との第1相関値を求める工程と、前記データ信号と前記遅行信号との第2相関値を求める工程と、前記相関幅制御値を変更する工程とを有する。
【0015】
また、請求項7の発明は、コンピュータ読み取り可能なプログラムであって、前記プログラムの前記コンピュータによる実行は、前記コンピュータを、予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する決定手段と、複数の送信元から送信された信号を含むデータ信号と前記決定手段により決定された検出対象の模倣信号との相関処理を実行する複数の相関処理手段とを備え、前記相関処理手段は、検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する信号生成手段と、前記データ信号と前記進行信号との第1相関値を求める第1相関手段と、前記データ信号と前記遅行信号との第2相関値を求める第2相関手段とを備え、各相関処理手段における前記相関幅制御値を変更する相関幅設定手段をさらに備える相関検出回路として機能させる。
【発明の効果】
【0016】
各相関処理手段は、検出対象の模倣信号と、検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、検出対象の模倣信号より相関幅制御値だけ位相の遅れた遅行信号とを生成する信号生成手段を備え、各相関処理手段における相関幅制御値を変更する相関幅設定手段をさらに備えることにより、状況に応じて、柔軟な対応が可能となり、相関処理手段の有効利用を図ることができる。
【図面の簡単な説明】
【0017】
【図1】本発明に係る相関検出回路を搭載した受信機を示す図である。
【図2】相関処理部の概略図である。
【図3】相関検出回路が有する機能ブロックをデータの流れとともに示す図である。
【図4】相関検出回路が実行する相関検出処理を示す流れ図である。
【図5】相関処理部が相関処理において実行する追尾処理を示す流れ図である。
【図6】マルチパス抑制用の割り当て処理を示す流れ図である。
【図7】状況に応じてコード決定部がマルチパス抑制用に相関処理部を割り当てる例を示す図である。
【図8】状況に応じてコード決定部がマルチパス抑制用に相関処理部を割り当てる例を示す図である。
【図9】状況に応じてコード決定部がマルチパス抑制用に相関処理部を割り当てる例を示す図である。
【図10】4つの相関処理部で3つの衛星を捕捉する場合の例を示す図である。
【図11】捕捉された衛星の相関処理部への割り当て例を示す図である。
【発明を実施するための形態】
【0018】
以下、本発明の好適な実施の形態について、添付の図面を参照しつつ、詳細に説明する。
【0019】
<1. 実施の形態>
図1は、本発明に係る相関検出回路2を搭載した受信機1を示す図である。受信機1は、全地球測位システム(GNSS:Global Navigation Satellite System)における複数の衛星から送信される電波を受信して位置を特定する(位置情報90を取得する)測位装置としての機能を有している。なお、以下では、特に断らない限り、全地球測位システムとして米国により提供されてるGPS(Global Positioning System)を採用する例について述べる。
【0020】
図1に示すように、受信機1は、メインCPU10、メインCPU10によって実行されるプログラム80を格納するROM11、メインCPU10の一時的なワーキングエリアとして使用されるRAM12を備えている。これにより、受信機1は、コンピュータとしての構成を備えている。特に、メインCPU10は、復号されたGPS信号を相関検出制御部3のCPU30から取得し、航法メッセージを取得して測位演算を行い、位置情報90を作成する。
【0021】
また、受信機1は、アンテナ13、RFIC14、および、相関検出回路2を備えている。
【0022】
アンテナ13は、全地球測位システムにおける衛星からの電波を受信してアナログ信号をRFIC14に伝達する。
【0023】
RFIC14は、アンテナ13から入力されるアナログ信号をダウンコンバートしつつデジタル信号に変換し、相関検出回路2の各相関処理部4に向けて出力する。
【0024】
相関検出回路2は、相関検出制御部3および複数の相関処理部4を備えている。図1では、4つの相関処理部4のみを図示しているが、相関処理部4の数は4つに限定されるものではない。本実施の形態では、m個(mは2以上の整数。)の相関処理部4を備えているものとして説明する。また、以下の説明において、各相関処理部4を互いに区別する際には、添え字を付し、例えば、相関処理部41,42,・・・,4m−1,4mと称するものとする。
【0025】
相関検出制御部3は、各種データの演算を実行するCPU30、CPU30によって実行されるプログラム81を格納するROM31、CPU30の一時的なワーキングエリアとして使用されるRAM32を備えている。これにより、相関検出制御部3は、コンピュータとしての構成を備えている。相関検出制御部3の機能および動作については後述する。
【0026】
図2は、相関処理部4の概略図である。複数の相関処理部4は、互いに等価な構成を備えており、図2に示すように、コード発生器40、位相調整回路41、第1相関器42および第2相関器43を備えている。
【0027】
コード発生器40は、CPU30からの制御信号に応じて、複数パターンのレプリカ信号(各衛星に固有のC/Aコードのレプリカ信号)の中から、CPU30によって割り当てられたレプリカ信号を検出対象の模倣信号として生成する。以下の説明では、特に断らない限り、コード発生器40によって生成された検出対象の模倣信号としてのレプリカ信号を「レプリカ信号」と称する。なお、詳細は省略するが、レプリカ信号の位相は、CPU30からの制御信号に応じてコード発生器40において調整される。
【0028】
位相調整回路41には、コード発生器40によって生成されたレプリカ信号が入力される。位相調整回路41は、入力されたレプリカ信号より相関幅制御値だけ位相の進んだ進行信号と、当該レプリカ信号より相関幅制御値だけ位相の遅れた遅行信号とを生成する。図2に示すように、位相調整回路41は、進行信号(E)、レプリカ信号(P)、および、遅行信号(L)を出力する。
【0029】
従来より、進行信号と遅行信号との位相のずれを相関器幅と称する。したがって、相関幅制御値とは、相関器幅の1/2を決定するパラメータ(制御値)である。
【0030】
このように、相関処理部4では、コード発生器40および位相調整回路41によって、主に、本発明の信号生成手段が構成されている。なお、詳細は後述するが、相関幅制御値は、CPU30によって設定され、位相調整回路41に伝達される。
【0031】
第1相関器42は、RFIC14から入力されるデータ信号(複数の衛星から送信された信号を含む。)と、位相調整回路41から入力される進行信号との相関値(第1相関値92)を求める。
【0032】
第2相関器43は、RFIC14から入力されるデータ信号と、位相調整回路41から入力される遅行信号との相関値(第2相関値93)を求める。
【0033】
なお、図2では簡略して図示しているが、各相関処理部4は、全地球測位システムにおける複数の衛星の中から、相関検出制御部3により指定される1つの衛星を、それぞれが捕捉し追尾することが可能な構成および機能を備えている。
【0034】
図3は、相関検出回路2が有する機能ブロックをデータの流れとともに示す図である。図3に示すコード決定部300、検出部301、相関幅設定部302および位相制御部303は、CPU30がプログラム81に従って動作することにより実現される機能ブロックである。
【0035】
コード決定部300は、状況に応じて、捕捉・追尾する衛星を、各相関処理部4に割り当てる機能を有している。
【0036】
コード決定部300は、予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号(レプリカ信号として生成させる信号)を決定する。本実施の形態では、複数パターンの模倣信号は、全地球測位システムにおける複数の衛星のそれぞれに対応して設定されているC/Aコードである。そして、コード決定部300は、決定した検出対象の模倣信号を、いずれの相関処理部4に割り当てるかについても決定する。
【0037】
原則として、衛星を捕捉した相関処理部4に対しては、当該衛星の追尾を継続させる。一方、割り当てられた衛星を捕捉できなかった相関処理部4に対しては、新たな衛星を捕捉するように、未だ捕捉されていない新たな衛星を割り当てる。ただし、本実施の形態におけるコード決定部300は、衛星を捕捉している相関処理部4に、別の衛星を割り当てることもある。また、同じ衛星を異なる相関処理部4(1組の相関処理部4)に捕捉させることもある。コード決定部300による割り当て先の決定方法については後述する。
【0038】
検出部301は、共通の衛星を捕捉している1組の相関処理部4から得られる相関情報91(第1相関値92と第2相関値93)に応じて、ELS(Early-Late Slope)技術を用いて当該衛星からの電波経路にマルチパスが生じているか否かを検出するとともに、当該マルチパスの影響の度合いも検出する。検出部301は、検出結果をコード決定部300および位相制御部303に伝達する。
【0039】
相関幅設定部302は、コード決定部300から伝達される各相関処理部4の用途(後述する。)に応じて、各相関処理部4における相関幅制御値を設定し、あるいは、変更する機能を有している。相関幅設定部302により設定・変更された相関幅制御値は、位相制御部303に伝達される。
【0040】
位相制御部303は、各相関処理部4のコード発生器40を制御することにより、当該コード発生器40が生成しているレプリカ信号の位相を制御する。より詳細には、相関処理部4から出力された第1相関値92と第2相関値93とを参照しつつ、当該第1相関値92と当該第2相関値93とが等しくなるように、当該相関処理部4のコード発生器40を制御する。例えば、第1相関値92が第2相関値93よりも大きいときは、レプリカ信号の位相を進ませるようにコード発生器40を制御する。一方で、第1相関値92が第2相関値93よりも小さいときは、レプリカ信号の位相を遅らせるようにコード発生器40を制御する。
【0041】
また、位相制御部303は、検出部301から伝達される検出結果に応じて、マルチパスの影響を抑制するように、各相関処理部4のコード発生器40を制御する。位相制御部303がマルチパスの影響を抑制する技術としては、例えば、上記のELS技術を用いることができる。ELS技術を用いてマルチパスの影響を抑制するためには、1つの衛星に対して1組の相関処理部4が必要となるが詳細は後述する。
【0042】
さらに、位相制御部303は、相関幅設定部302から伝達された各相関処理部4に対する相関幅制御値に応じて、当該相関処理部4の位相調整回路41を制御する。より詳細には、レプリカ信号の位相に比べて、設定された相関幅制御値だけ進行した進行信号を生成するように位相調整回路41を制御するとともに、レプリカ信号の位相に比べて、設定された相関幅制御値だけ遅れた遅行信号を生成するように位相調整回路41を制御する。
【0043】
以上が、本実施の形態における受信機1の構成および機能の説明である。次に、受信機1がGPS信号を復号する際に用いる相関検出方法について説明する。
【0044】
図4は、相関検出回路2が実行する相関検出処理を示す流れ図である。
【0045】
相関検出処理では、相関検出制御部3のCPU30(コード決定部300)が、未だC/Aコード(捕捉する衛星)を割り当てられていない未使用の相関処理部4が存在するか否か(ステップS1)、および、見直しタイミングが到来したか否か(ステップS14)を監視している。
【0046】
C/Aコードを割り当てられていない相関処理部4が存在する場合(ステップS1においてYes。)、コード決定部300は、捕捉可能か否かを未探索の衛星が存在するか否かをさらに判定する(ステップS2)。
【0047】
未だに捕捉可能か否かを確認していない未探索の衛星が存在する場合(ステップS2においてYes。)、コード決定部300は、ステップS1において発見された未使用の相関処理部4の識別子を相関幅設定部302に通知する。すなわち、当該相関処理部4の用途として、未探索の衛星の捕捉をさせる旨を相関幅設定部302に伝達する。
【0048】
これにより、相関幅設定部302が相関幅制御値を設定し(ステップS3)、位相制御部303に伝達する。本実施の形態における相関幅設定部302は、相関処理部4に新たな衛星の捕捉をさせるときには、相関器幅が0.5チップとなるように相関幅制御値を設定する。なお、1チップとは、C/Aコードの1ビットに相当する時間である。
【0049】
したがって、位相制御部303は、当該相関処理部4の位相調整回路41に対して、コード発生器40から入力される信号(レプリカ信号)より0.25チップだけ位相の進んだ進行信号と、レプリカ信号より0.25チップだけ位相の遅れた遅行信号とを生成するように制御信号を伝達する。
【0050】
ステップS3の処理と並行して、コード決定部300は、未探索の衛星に対応するC/Aコードを、当該相関処理部4に割り当てる(ステップS4)。すなわち、コード決定部300は、当該相関処理部4のコード発生器40に、当該C/Aコードを設定する。
【0051】
これにより、コード発生器40において当該C/Aコードのレプリカ信号が生成され、位相調整回路41に入力される。そして、位相調整回路41において、当該レプリカ信号より0.25チップだけ位相の進んだ進行信号と、当該レプリカ信号より0.25チップだけ位相の遅れた遅行信号とが生成される。なお、ステップS4において、コード決定部300は、設定したC/Aコードに対応する衛星を探索済みに変更する。
【0052】
位相調整回路41から出力された進行信号は第1相関器42に入力され、データ信号との第1相関値92が求められる。同様に、位相調整回路41から出力された遅行信号は第2相関回路43に入力され、データ信号との第2相関値93が求められる。このようにして、当該相関処理部4において、当該未探索の衛星の捕捉が開始される(ステップS5)。なお、ステップS5において、所定の閾値以上の相関値(相関情報91)が検出されない場合は、位相制御部303が1チップずつC/Aコードをずらしながら、当該衛星の捕捉を試みることになるが、従来技術であるため詳細な説明は省略する。
【0053】
次に、コード決定部300は、ステップS5において捕捉を開始した衛星を、当該相関処理部4が捕捉したか否かを判定する(ステップS6)。そして、捕捉できなかった場合は、当該衛星は観測不能であるとして、当該相関処理部4を開放する(ステップS7)。すなわち、当該相関処理部4は再び未使用状態となる。
【0054】
一方、ステップS4において割り当てられたC/Aコードにより衛星を捕捉した場合(ステップS6においてYes。)、当該相関処理部4は、当該衛星について、追尾処理を開始する(ステップS8)。
【0055】
図5は、相関処理部4が相関検出処理において実行する追尾処理を示す流れ図である。なお、追尾処理が開始されるときには、追尾処理を開始する相関処理部4は、すでに衛星を捕捉している。したがって、当該相関処理部4では、C/Aコードおよび相関幅制御値が設定されており、レプリカ信号、進行信号、および、遅行信号が生成されており、相関情報91の出力が開始されている。
【0056】
追尾処理では、追尾処理を実行中の相関処理部4から相関検出制御部3のRAM32に相関情報91が取得される(ステップS21)。
【0057】
次に、コード決定部300が、相関情報91に基づいて衛星を捕捉できているか否かを判定する(ステップS22)。衛星を捕捉できなくなると、当該相関処理部4から取得される相関情報91が閾値未満となるため、ステップS22における判定が可能である。
【0058】
衛星を捕捉できていない場合(ステップS22においてNo。)、コード決定部300が当該相関処理部4を開放し(ステップS23)、当該相関処理部4は追尾処理を終了する。ステップS23において開放された相関処理部4は、再び未使用の相関処理部4となる。なお、衛星を捕捉している場合においても、コード決定部300が相関処理部4による追尾処理を強制的に終了させる場合もあるが、後述する。
【0059】
衛星を捕捉できている場合(ステップS22においてYes。)、位相制御部303が第1相関値92が第2相関値93より大きいか否かを判定する(ステップS24)。ステップS24においてYesの場合、レプリカ信号の位相が遅れているため、位相制御部303はレプリカ信号の位相を進めるようにコード発生器40を制御する(ステップS25)。
【0060】
一方、ステップS24においてNoの場合、位相制御部303は、第1相関値92が第2相関値93より小さいか否かを判定する(ステップS26)。ステップS26においてYesの場合、レプリカ信号の位相が進んでいるため、位相制御部303はレプリカ信号の位相を遅らせるようにコード発生器40を制御する(ステップS27)。
【0061】
そして、ステップS25またはS27が実行されるか、または、ステップS26においてNoと判定されると、相関処理部4はステップS21に戻って処理を繰り返す。
【0062】
すなわち、相関検出回路2では、未使用の相関処理部4が存在し(ステップS1においてYes。)、かつ、未探索の衛星が存在する場合(ステップS2においてYes。)には、当該空いている相関処理部4に未探索の衛星を割り当てて、当該衛星を捕捉する。そして、捕捉できた場合は当該相関処理部4により当該衛星を追尾し続け、捕捉できなかった場合はさらに未探索の衛星を割り当てて、未探索の衛星が存在しなくなるまで以上の処理を繰り返す。
【0063】
なお、未探索の衛星を割り当てる順序等については、例えば、エフェメリス等の情報に基づいて予測される受信機1の位置に応じて観測可能な衛星を予測し、観測可能と予測される衛星を優先的に割り当ててもよい。すなわち、衛星を捕捉する手順は、従来より提案されている様々な手法を採用することができる。
【0064】
図4に戻って、次に、ステップS2においてNoと判定される場合について説明する。ステップS2においてNoと判定される場合とは、C/Aコードが割り当てられていない未使用の状態の相関処理部4が存在し、かつ、すべての衛星について捕捉可能かどうかの探索が完了している場合である。言い換えれば、捕捉可能な衛星をすべて捕捉・追尾している状態において、相関検出回路2の相関処理部4が余っている場合である。
【0065】
ステップS2においてNoと判定すると、コード決定部300は、マルチパス抑制用の割り当て処理を実行する(ステップS9)。
【0066】
図6は、マルチパス抑制用の割り当て処理を示す流れ図である。
【0067】
まず、コード決定部300は、未使用の相関処理部4をマルチパス検出用に使用することを相関幅設定部302に通知する。これにより、相関幅設定部302が当該相関処理部4の相関幅制御値を設定変更し(ステップS31)、位相制御部303に伝達する。本実施の形態における相関幅設定部302は、相関処理部4にマルチパスを検出させるときには、相関器幅が0.1チップとなるように相関幅制御値を設定する。
【0068】
したがって、位相制御部303は、当該相関処理部4の位相調整回路41に対して、コード発生器40から入力される信号(レプリカ信号)より0.05チップだけ位相の進んだ進行信号と、レプリカ信号より0.05チップだけ位相の遅れた遅行信号とを生成するように制御信号を伝達する。
【0069】
ステップS31の処理と並行して、コード決定部300は、すでに追尾処理を開始している相関処理部4(衛星捕捉中の相関処理部4)のうちから、未だマルチパスの影響を調べていない相関処理部4を、ELS技術を適用する1組の相関処理部4のうちの1つとして決定する(ステップS32)。このとき、コード決定部300は、決定した相関処理部4についてマルチパスの影響確認済みに変更する。
【0070】
次に、コード決定部300は、ステップS32で決定した相関処理部4に設定しているC/Aコードを、未使用の相関処理部4(ステップS31においてマルチパス検出用として特定された相関処理部4)に割り当てる(ステップS33)。これにより、ステップS32で決定された相関処理部4と、当該未使用の相関処理部4とに、互いに同一のC/Aコードが設定されることとなり、1組の相関処理部4のうちのもう1つが当該未使用の相関処理部4となる。このとき、ステップS32で決定された相関処理部4の相関器幅は0.5チップであり、もう一方の相関処理部4の相関器幅は0.1チップであり、互いに異なっている。
【0071】
1組の相関処理部4が形成されると、当該1組の相関処理部4から出力される相関情報91に基づいて、ELS技術を用いて、検出部301がマルチパスの影響を検出する(ステップS34)。そして、検出されたマルチパスの影響度合いはコード決定部300に伝達される。
【0072】
ステップS32で決定した相関処理部4について、マルチパスの影響検出が完了すると、コード決定部300は、衛星捕捉中の相関処理部4の中に、マルチパスの影響を未確認の相関処理部4が存在するか否かを判定する(ステップS35)。
【0073】
マルチパスの影響を未だ確認済みでない相関処理部4が存在する場合(ステップS35においてYes。)、当該相関処理部4についてマルチパスの影響を確認するため、ステップS32に戻って処理を繰り返す。このとき、コード決定部300は、ステップS33においてC/Aコードを割り当てた相関処理部4を一旦開放して、未使用状態に戻す。
【0074】
衛星捕捉中のすべての相関処理部4についてマルチパスの影響を確認すると(ステップS35においてNo。)、コード決定部300は、マルチパスの影響を抑制するために使用可能な未使用の相関処理部4の数を確認する(ステップS36)。例えば、ステップS32ないしS35を繰り返した回数をカウントしておき、これを「n」とすれば、「n」は捕捉中の衛星の数を示す値となる。したがって、マルチパスの影響を抑制するために使用可能な相関処理部4の数は、「m−n」となる。
【0075】
次に、コード決定部300は、ステップS34において通知された各相関処理部4におけるマルチパスの影響度合いに応じて、マルチパスの影響を抑制すべき相関処理部4を決定し、「m−n」個の相関処理部4にC/Aコードを割り当て(ステップS37)、図4に示す処理に戻る。
【0076】
図7ないし図9は、状況に応じてコード決定部300がマルチパス抑制用に相関処理部4を割り当てる例を示す図である。図7ないし図9では、いずれもm=5,n=3の例を示している。すなわち、いずれも相関処理部41,42,43がそれぞれ衛星A,B,Cを捕捉して、追尾処理中であり、マルチパス抑制用に2つの相関処理部44,45を使用できる場合を示している。
【0077】
図7では、ステップS32ないしS35の処理で検出されたマルチパスの影響は、衛星Aについては「なし」、衛星B,Cについてはいずれも「大」である。
【0078】
このような場合、コード決定部300は、マルチパスの発生により大きな影響を受けている衛星B,Cについては、当該マルチパスの影響を抑制するために、それぞれ1組の相関処理部4を割り当てる。図7に示す例では、相関処理部42,44がELS技術によりマルチパスの影響を抑制する1組の相関処理部4を構成するように衛星BのC/Aコードが割り当てられている。同様に、相関処理部43,45がELS技術によりマルチパスの影響を抑制する1組の相関処理部4を構成するように衛星CのC/Aコードが割り当てられている。
【0079】
このように、相関検出回路2では、捕捉可能な衛星の数が搭載している相関処理部4の数よりも少ない場合には、空いている相関処理部4の相関器幅を変更して、マルチパスの影響を抑制するために使用することができる。したがって、例えば、図7に示す例において、相関処理部42,43に、別途、マルチパスの影響を抑制するための専用の相関器を設けていなくても、マルチパスの影響を抑制することができる。
【0080】
図8では、ステップS32ないしS35の処理で検出されたマルチパスの影響は、衛星Aについては「なし」、衛星Bについては「小」、衛星Cについては「大」である。
【0081】
このような場合、コード決定部300は、まず、マルチパスの発生により大きな影響を受けている衛星Cについては、当該マルチパスの影響を抑制するために、1組の相関処理部4を割り当てる。図8に示す例では、相関処理部43,44がELS技術によりマルチパスの影響を抑制する1組の相関処理部4を構成するように衛星CのC/Aコードが割り当てられている。次に、相関処理部45に割り当てるC/Aコードを、衛星AのC/Aコードを割り当てる時間帯と、衛星BのC/Aコードを割り当てる時間帯とに時分割して切り替え、衛星Bのマルチパスの影響を抑制しつつ、衛星Aの状況を監視する。
【0082】
このように、相関検出回路2では、空いている相関処理部4の相関器幅を変更して、マルチパスの影響を抑制するだけでなく、マルチパスの影響を監視するためにも使用できる。なお、図8では、相関処理部45を衛星Aに割り当てる時間と衛星Bに割り当てる時間とがほぼ等しいように示している。しかし、衛星Aについてはマルチパスの影響を確認するために必要な時間(比較的短時間)だけ割り当て、それ以外の時間は現実に発生している衛星Bのマルチパスの影響を抑制するために割り当てるのが好ましい。
【0083】
図9では、図8に示す状態が、時間Tにおいて、衛星Bについては「小」から「大」に、衛星Cについては「大」から「小」に変化した場合を示している。
【0084】
このような場合、コード決定部300は、状況が変化したことを検出した後、マルチパスの影響が「大」に変化した衛星Bについては、当該マルチパスの影響を抑制するために、1組の相関処理部4を割り当てる。図9に示す例では、相関処理部42,44がELS技術によりマルチパスの影響を抑制する1組の相関処理部4を構成するように衛星BのC/Aコードが割り当てられている。すなわち、相関処理部44に割り当てられているC/Aコードが時間Tを境に変更される。次に、相関処理部45に割り当てるC/Aコードを、衛星AのC/Aコードを割り当てる時間帯と、衛星CのC/Aコードを割り当てる時間帯とに時分割して切り替える。これにより、相関検出回路2は、衛星Cのマルチパスの影響を抑制しつつ、衛星Aの状況を監視することができる。
【0085】
図10は、4つの相関処理部4で3つの衛星を捕捉する場合の例を示す図である。図10に示す例では、3つの衛星のいずれにおいてもマルチパスが発生しており、相関処理部44のみがマルチパス抑制用に割り当てることが可能な相関処理部4である。
【0086】
3つの衛星A,B,Cにおいて発生しているマルチパスの影響がいずれも「小」またはいずれも「大」のとき、コード決定部300は、いずれの衛星を優先することもできないので、3つの時間帯に時分割して、相関処理部44に衛星A,B,Cを順次割り当てる。
【0087】
また、衛星Aについては影響が「小」であり、衛星B,Cについては影響が「大」のとき、コード決定部300は、2つの時間帯に時分割して、相関処理部44に衛星B,Cを交互に割り当てる。
【0088】
また、衛星A,Bについては影響が「小」であり、衛星Cについては影響が「大」のとき、コード決定部300は、相関処理部44に衛星Cを割り当てる。
【0089】
以上のように、相関検出回路2は、状況に柔軟に対応して、各相関処理部4へのC/Aコード(衛星)の割り当てを行うことができるとともに、一旦割り当てたC/Aコードを状況の変化に応じて変更することもできる。なお、例えば図7に示す例では、衛星B,Cについては1組の相関処理部4が割り当てられるので、時間の経過とともに変化するマルチパスの影響を監視し続けることができる。しかし、衛星Aについては1つの相関処理部4によってのみ追尾しているため、マルチパスの影響を監視することができない。このように、マルチパスの影響を監視することのできないような割り当て状況が発生した場合、コード決定部300は、図示しないタイマに所定の時間をセットし、セットした時間が経過すると、図4に示すステップS14においてYesと判定して、割り当ての見直しを行う(ステップS15)。ただし、詳細は後述する。
【0090】
図4に戻って、ステップS1においてNoと判定されたときについて説明する。ステップS1においてNoと判定されるときとは、すべての相関処理部4が追尾処理を開始しており、未使用の相関処理部4が存在しない場合である。
【0091】
ステップS2ないしS8の処理において、順次に捕捉可能な衛星を捕捉した場合、必ずしも観測に適した衛星のみが捕捉されるわけではなく、未探索の衛星の方が観測に適している場合もあり得る。したがって、コード決定部300は、未使用の相関処理部4が存在しなくなった場合でも、ステップS2と同様に、未探索の衛星が存在するか否かを判定する(ステップS10)。
【0092】
そして、未探索の衛星が存在する場合(ステップS10においてYes。)、追尾処理中の相関処理部4のうちのいずれかを選択して強制的に開放し、当該相関処理部4を用いて当該未探索の衛星の探索を行う(ステップS11)。すなわち、ステップS10,S11が繰り返されることによって、観測可能(捕捉可能)な衛星がリストアップされることになる。
【0093】
すべての衛星について探索を終了すると、コード決定部300はステップS10においてNoと判定し、観測可能な衛星として発見(リストアップ)された衛星のうちから、実際に追尾する衛星を決定する(ステップS12)。ステップS12における決定は、例えば、従来から提案されているDOP(Dilution of Precision)値を用いた衛星決定方法を採用することができる。
【0094】
図11は、捕捉された衛星の相関処理部4への割り当て例を示す図である。図11に示す例では、相関処理部4の数は4つ(相関処理部41,42,43,44)であり、捕捉可能な衛星は5つ(衛星A,B,C,D,E)である。
【0095】
この場合、コード決定部300は、5つの衛星から4つを選択する組み合わせごとに、DOP値を演算し、DOP値が最も小さくなる組み合わせを決定する。図11に示す例では、衛星A,B,C,Eを選択する組み合わせが最もDOP値が小さくなる場合であり、衛星Dが追尾する衛星から除外されている。
【0096】
なお、ステップS10,S11を繰り返す間に、捕捉された全衛星について検出部301がマルチパスの影響を検出してもよい。その場合、ステップS12において、コード決定部300は、マルチパスの影響が大きい衛星を追尾対象から除外するようにしてもよい。ステップS12が実行されるとき、通常、マルチパス抑制用の相関処理部4を設けることは困難である(捕捉される衛星が相関処理部4の数より多いため。)。したがって、マルチパスの影響が大きい衛星を除外することにより、結果として相関検出回路2はマルチパスの影響を抑制することができる。
【0097】
ステップS12を実行することにより、追尾する衛星が決定されると、コード決定部300は、決定した衛星に対応するC/Aコードをそれぞれの相関処理部4に設定し、追尾処理を開始させる(ステップS13)。
【0098】
相関検出処理において、タイマ割り込みが発生し、見直しタイミングが到来したことが通知されると、コード決定部300は、ステップS14においてYesと判定し、再割り当て処理を実行する(ステップS15)。
【0099】
すでに説明したように、ステップS9あるいはステップS12が実行されると、一旦、すべての相関処理部4にC/Aコードが割り当てられ、追尾処理が開始される。しかし、マルチパスの影響は時間の経過とともに変化し、最適な割り当て状態も変化する。そして、すべての衛星について、マルチパスの影響を監視できる状態であれば、図9に示したように、相関検出回路2は、状況の変化に応じて割り当てを見直すことができる。
【0100】
しかし、マルチパス抑制用の相関処理部4を設けることができない場合などにおいては最適な割り当て状態を再確認するために、所定の時間が経過するたびに、マルチパスの影響を検出しなおして、再度、割り当てを行うのである。なお、ステップS15における処理は、いずれか1つの相関処理部4を開放し、捕捉中の衛星についてのマルチパス検出用として使用し、検出されたマルチパスの影響に応じて、再割り当てを行う処理であり、ステップS9に類似の工程となるため、詳細は省略する。
【0101】
以上のように、本実施の形態における相関検出回路2は、予め設定されている複数パターンの模倣信号(C/Aコード)の中から検出対象の模倣信号(レプリカ信号)を決定するコード決定部300と、複数の送信元(衛星)から送信された信号を含むデータ信号とコード決定部300により決定されたレプリカ信号との相関処理を実行する複数の相関処理部4とを備え、相関処理部4は、レプリカ信号と、当該レプリカ信号より相関幅制御値だけ位相の進んだ進行信号と、当該レプリカ信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成するコード発生器40および位相調整回路41と、データ信号と進行信号との第1相関値92を求める第1相関器42と、データ信号と遅行信号との第2相関値93を求める第2相関器43とを備え、各相関処理部4における相関幅制御値を変更する相関幅設定部302をさらに備える。これにより、状況に応じて、相関処理部4の割り当てを変更でき、柔軟な対応が可能となり、相関処理部4の有効利用を図ることができる。
【0102】
また、コード決定部300は、複数の相関処理部4から1組の相関処理部4を選択し、捕捉されている衛星に対応したC/Aコードを、当該1組の相関処理部4に対するレプリカ信号として決定し、相関幅設定部302は、当該1組の相関処理部4の相関幅制御値を互いに異なる値に設定することにより、マルチパスの影響を検出できるとともに、マルチパスの影響を抑制することができる。
【0103】
また、コード決定部300は、複数の相関処理部4において未だ衛星を捕捉していない相関処理部4が存在するときに、当該衛星を捕捉していない相関処理部4を1組の相関処理手段の1つとして選択することにより、空いている相関処理部4を有効に活用することができる。
【0104】
また、コード決定部300は、複数の相関処理部4のうちの1つの相関処理部4に、捕捉されている複数の衛星に対応した複数のC/Aコードを時分割で割り当て、当該1つの相関処理部4は、複数の衛星をそれぞれが捕捉している複数の相関処理部4と、時分割で1組の相関処理部4を構成する。これにより、さらに多くの衛星について、マルチパスの影響を監視することができるとともに、マルチパスの影響を抑制することができる。
【0105】
<2. 変形例>
以上、本発明の実施の形態について説明してきたが、本発明は上記実施の形態に限定されるものではなく様々な変形が可能である。
【0106】
また、上記実施の形態に示した各機能ブロックはプログラムにより実現されると説明したが、これらの機能ブロックの一部または全部が専用の論理回路(ハードウェア)によって実現されてもよい。
【0107】
また、CPU30がプログラム81に従って動作することにより実現される機能ブロックの一部を、メインCPU10がプログラム80に従って動作することにより実現してもよい。あるいは、相関処理部4に対する位相制御(衛星の捕捉および追尾)を専用で実行するCPU(いわゆるレシーバプロセッサ)を相関検出回路2に別途設けてもよい。
【0108】
また、上記実施の形態に示した各工程は、あくまでも例示であり、このような内容および順序に限定されるものではない。すなわち、同様の効果が得られるならば、内容および順序が適宜変更されてもよい。
【0109】
また、上記実施の形態では、2つの相関処理部4によって1組の相関処理部4が構成される例についてのみ説明したが、1組の相関処理部4は、3以上の相関処理部4で構成されてもよい。すなわち、そのようにコード決定部300がC/Aコードの割り当てを決定してもよい。その場合は、例えば、3つの相関処理部4によってマルチパスの影響を抑制する技術も適用可能となる。
【符号の説明】
【0110】
1 受信機
10 メインCPU
11,31 ROM
12,32 RAM
13 アンテナ
14 RFIC
2 相関検出回路
3 相関検出制御部
30 CPU
300 コード決定部
301 検出部
302 相関幅設定部
303 位相制御部
4 相関処理部
40 コード発生器
41 位相調整回路
42 第1相関器
43 第2相関器
80,81 プログラム
90 位置情報
91 相関情報
92 第1相関値
93 第2相関値
【技術分野】
【0001】
本発明は、全地球測位システムにおいて衛星から送信される信号を復調する際に使用される相関器を有効に利用し、精度を向上させる技術に関する。
【背景技術】
【0002】
移動体の位置を特定したり、高精度の時刻を取得したりする技術として全地球測位システム(GNSS:Global Navigation Satellite System)が知られており、GNSSの中では、特にGPS(Global Positioning System)がよく知られている。GPSでは、複数の衛星が送信時刻(全衛星の時計は高精度に一致している。)や、それぞれ自己の軌道を示す情報(エフェメリス)等をGPS信号として放送しつつ飛行している。そして、これらのGPS信号は、各衛星に固有のC/Aコードという疑似ランダム符号でBPSK変調がかけられている。
【0003】
GPS受信機が、受信したC/Aコードを復調するためには、変調したときと同一のC/Aコード(レプリカC/Aコード)を受信機側で生成し、受信したC/AコードとレプリカC/Aコードとの位相を合致させる必要がある(合致したときのレプリカC/Aコードが復調されたC/Aコードとなる。)。そして、受信したC/AコードとレプリカC/Aコードとの位相を合致させるためには、C/AコードとレプリカC/Aコードとの相関処理を実行しつつ、レプリカC/Aコードの位相を変化させて、両信号の相関値が得られるように、維持し続ける必要がある。そこで、GPS受信機には、受信したC/AコードとレプリカC/Aコードとの相関処理を行う相関器が搭載されている。
【0004】
C/AコードとレプリカC/Aコードとの相関値は、両信号の位相が一致しているときに最大値となり、両信号の位相差が1チップ(C/Aコードの「1」、「0」の最小区分。)以内であればその位相差に依存し、両信号の位相差が1チップより大きいときはほぼ「0」となるという性質がある(理論上、相関値は最大値を頂点とする二等辺三角形となる。)。そこで、GPS受信機は、生成したレプリカC/Aコードの位相を進めた信号(EARLY信号)と、逆に位相を遅らせた信号(LATE信号)とを生成する(EARLY信号とLATE信号との位相差は1チップ以内とする)。そして、受信したC/AコードとEARLY信号との相関値、および、受信したC/AコードとLATE信号との相関値をそれぞれの相関器で求め、これらが一致するようにレプリカC/Aコードの位相を調整する。すなわち、受信したC/AコードとEARLY信号との相関値の方が大きい場合はレプリカC/Aコードの位相が受信したC/Aコードに比べて遅れているので、レプリカC/Aコードの位相を進めるように制御する。一方、受信したC/AコードとLATE信号との相関値の方が大きい場合はレプリカC/Aコードの位相が受信したC/Aコードに比べて進んでいるので、レプリカC/Aコードの位相を遅らせるように制御する。
【0005】
一方で、GPS衛星から送信された電波は、様々なものに反射して、GPS受信機に届く場合がある。この場合、直接入射する電波と、反射して入射する電波とでは、送信されてから受信されるまでの伝播距離が異なることになる。このような現象を、複数の経路を生じているという意味で、「マルチパス」と呼ぶ。マルチパスが発生すると、上記の二等辺三角形の形状が崩れるため、正確に位相を制御することができなくなり、相関検出精度が低下することとなる。このようなマルチパスの影響を低減して、誤差を抑制する技術が、例えば、特許文献1に記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2001−281318号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
ところが、特許文献1に記載されている技術は、1つの衛星(チャネル)に対して、3組(6個)の相関器を使用する技術である。また、各チャネルに対して2組の相関器を使用する技術も知られているが、いずれにしても、各チャネルごとにマルチパスの影響を抑制するための相関器を設けることは、相関器の数が増大することによる回路規模の増大が問題となる。また、マルチパス自体が発生していない場合には、マルチパスの影響を抑制するために設けられた多数の相関器は無駄になる。
【0008】
本発明は、上記課題に鑑みてなされたものであり、相関器を有効に活用して、相関検出精度を向上させる技術を提供する。
【課題を解決するための手段】
【0009】
上記の課題を解決するため、請求項1の発明は、予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する決定手段と、複数の送信元から送信された信号を含むデータ信号と前記決定手段により決定された検出対象の模倣信号との相関処理を実行する複数の相関処理手段とを備え、前記相関処理手段は、検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する信号生成手段と、前記データ信号と前記進行信号との第1相関値を求める第1相関手段と、前記データ信号と前記遅行信号との第2相関値を求める第2相関手段とを備え、各相関処理手段における前記相関幅制御値を変更する相関幅設定手段をさらに備える。
【0010】
また、請求項2の発明は、請求項1の発明に係る相関検出回路であって、前記複数の送信元は、全地球測位システムにおける複数の衛星であり、前記複数のパターンの模倣信号は前記複数の衛星のそれぞれに対応して設定されている。
【0011】
また、請求項3の発明は、請求項2の発明に係る相関検出回路であって、前記決定手段は、前記複数の相関処理手段から1組の相関処理手段を選択し、捕捉されている衛星に対応した模倣信号を、前記1組の相関処理手段に対する検出対象の模倣信号として決定し、前記相関幅設定手段は、前記1組の相関処理手段の相関幅制御値を互いに異なる値に設定する。
【0012】
また、請求項4の発明は、請求項3の発明に係る相関検出回路であって、前記決定手段は、前記複数の相関処理手段において未だ衛星を捕捉していない相関処理手段が存在するときに、前記衛星を捕捉していない相関処理手段を前記1組の相関処理手段の1つとして選択する。
【0013】
また、請求項5の発明は、請求項3または4の発明に係る相関検出回路であって、前記決定手段は、前記複数の相関処理手段のうちの1つの相関処理手段に、捕捉されている複数の衛星に対応した複数の模倣信号を時分割で割り当て、前記1つの相関処理手段は、前記複数の衛星をそれぞれが捕捉している複数の相関処理手段と、時分割で前記1組の相関処理手段を構成する。
【0014】
また、請求項6の発明は、予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する工程と、決定された検出対象の模倣信号を複数の相関処理部に割り当てる工程と、前記複数の相関処理部のそれぞれにおいて、割り当てられた検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する工程と、複数の送信元から送信された信号を含むデータ信号と前記進行信号との第1相関値を求める工程と、前記データ信号と前記遅行信号との第2相関値を求める工程と、前記相関幅制御値を変更する工程とを有する。
【0015】
また、請求項7の発明は、コンピュータ読み取り可能なプログラムであって、前記プログラムの前記コンピュータによる実行は、前記コンピュータを、予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する決定手段と、複数の送信元から送信された信号を含むデータ信号と前記決定手段により決定された検出対象の模倣信号との相関処理を実行する複数の相関処理手段とを備え、前記相関処理手段は、検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する信号生成手段と、前記データ信号と前記進行信号との第1相関値を求める第1相関手段と、前記データ信号と前記遅行信号との第2相関値を求める第2相関手段とを備え、各相関処理手段における前記相関幅制御値を変更する相関幅設定手段をさらに備える相関検出回路として機能させる。
【発明の効果】
【0016】
各相関処理手段は、検出対象の模倣信号と、検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、検出対象の模倣信号より相関幅制御値だけ位相の遅れた遅行信号とを生成する信号生成手段を備え、各相関処理手段における相関幅制御値を変更する相関幅設定手段をさらに備えることにより、状況に応じて、柔軟な対応が可能となり、相関処理手段の有効利用を図ることができる。
【図面の簡単な説明】
【0017】
【図1】本発明に係る相関検出回路を搭載した受信機を示す図である。
【図2】相関処理部の概略図である。
【図3】相関検出回路が有する機能ブロックをデータの流れとともに示す図である。
【図4】相関検出回路が実行する相関検出処理を示す流れ図である。
【図5】相関処理部が相関処理において実行する追尾処理を示す流れ図である。
【図6】マルチパス抑制用の割り当て処理を示す流れ図である。
【図7】状況に応じてコード決定部がマルチパス抑制用に相関処理部を割り当てる例を示す図である。
【図8】状況に応じてコード決定部がマルチパス抑制用に相関処理部を割り当てる例を示す図である。
【図9】状況に応じてコード決定部がマルチパス抑制用に相関処理部を割り当てる例を示す図である。
【図10】4つの相関処理部で3つの衛星を捕捉する場合の例を示す図である。
【図11】捕捉された衛星の相関処理部への割り当て例を示す図である。
【発明を実施するための形態】
【0018】
以下、本発明の好適な実施の形態について、添付の図面を参照しつつ、詳細に説明する。
【0019】
<1. 実施の形態>
図1は、本発明に係る相関検出回路2を搭載した受信機1を示す図である。受信機1は、全地球測位システム(GNSS:Global Navigation Satellite System)における複数の衛星から送信される電波を受信して位置を特定する(位置情報90を取得する)測位装置としての機能を有している。なお、以下では、特に断らない限り、全地球測位システムとして米国により提供されてるGPS(Global Positioning System)を採用する例について述べる。
【0020】
図1に示すように、受信機1は、メインCPU10、メインCPU10によって実行されるプログラム80を格納するROM11、メインCPU10の一時的なワーキングエリアとして使用されるRAM12を備えている。これにより、受信機1は、コンピュータとしての構成を備えている。特に、メインCPU10は、復号されたGPS信号を相関検出制御部3のCPU30から取得し、航法メッセージを取得して測位演算を行い、位置情報90を作成する。
【0021】
また、受信機1は、アンテナ13、RFIC14、および、相関検出回路2を備えている。
【0022】
アンテナ13は、全地球測位システムにおける衛星からの電波を受信してアナログ信号をRFIC14に伝達する。
【0023】
RFIC14は、アンテナ13から入力されるアナログ信号をダウンコンバートしつつデジタル信号に変換し、相関検出回路2の各相関処理部4に向けて出力する。
【0024】
相関検出回路2は、相関検出制御部3および複数の相関処理部4を備えている。図1では、4つの相関処理部4のみを図示しているが、相関処理部4の数は4つに限定されるものではない。本実施の形態では、m個(mは2以上の整数。)の相関処理部4を備えているものとして説明する。また、以下の説明において、各相関処理部4を互いに区別する際には、添え字を付し、例えば、相関処理部41,42,・・・,4m−1,4mと称するものとする。
【0025】
相関検出制御部3は、各種データの演算を実行するCPU30、CPU30によって実行されるプログラム81を格納するROM31、CPU30の一時的なワーキングエリアとして使用されるRAM32を備えている。これにより、相関検出制御部3は、コンピュータとしての構成を備えている。相関検出制御部3の機能および動作については後述する。
【0026】
図2は、相関処理部4の概略図である。複数の相関処理部4は、互いに等価な構成を備えており、図2に示すように、コード発生器40、位相調整回路41、第1相関器42および第2相関器43を備えている。
【0027】
コード発生器40は、CPU30からの制御信号に応じて、複数パターンのレプリカ信号(各衛星に固有のC/Aコードのレプリカ信号)の中から、CPU30によって割り当てられたレプリカ信号を検出対象の模倣信号として生成する。以下の説明では、特に断らない限り、コード発生器40によって生成された検出対象の模倣信号としてのレプリカ信号を「レプリカ信号」と称する。なお、詳細は省略するが、レプリカ信号の位相は、CPU30からの制御信号に応じてコード発生器40において調整される。
【0028】
位相調整回路41には、コード発生器40によって生成されたレプリカ信号が入力される。位相調整回路41は、入力されたレプリカ信号より相関幅制御値だけ位相の進んだ進行信号と、当該レプリカ信号より相関幅制御値だけ位相の遅れた遅行信号とを生成する。図2に示すように、位相調整回路41は、進行信号(E)、レプリカ信号(P)、および、遅行信号(L)を出力する。
【0029】
従来より、進行信号と遅行信号との位相のずれを相関器幅と称する。したがって、相関幅制御値とは、相関器幅の1/2を決定するパラメータ(制御値)である。
【0030】
このように、相関処理部4では、コード発生器40および位相調整回路41によって、主に、本発明の信号生成手段が構成されている。なお、詳細は後述するが、相関幅制御値は、CPU30によって設定され、位相調整回路41に伝達される。
【0031】
第1相関器42は、RFIC14から入力されるデータ信号(複数の衛星から送信された信号を含む。)と、位相調整回路41から入力される進行信号との相関値(第1相関値92)を求める。
【0032】
第2相関器43は、RFIC14から入力されるデータ信号と、位相調整回路41から入力される遅行信号との相関値(第2相関値93)を求める。
【0033】
なお、図2では簡略して図示しているが、各相関処理部4は、全地球測位システムにおける複数の衛星の中から、相関検出制御部3により指定される1つの衛星を、それぞれが捕捉し追尾することが可能な構成および機能を備えている。
【0034】
図3は、相関検出回路2が有する機能ブロックをデータの流れとともに示す図である。図3に示すコード決定部300、検出部301、相関幅設定部302および位相制御部303は、CPU30がプログラム81に従って動作することにより実現される機能ブロックである。
【0035】
コード決定部300は、状況に応じて、捕捉・追尾する衛星を、各相関処理部4に割り当てる機能を有している。
【0036】
コード決定部300は、予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号(レプリカ信号として生成させる信号)を決定する。本実施の形態では、複数パターンの模倣信号は、全地球測位システムにおける複数の衛星のそれぞれに対応して設定されているC/Aコードである。そして、コード決定部300は、決定した検出対象の模倣信号を、いずれの相関処理部4に割り当てるかについても決定する。
【0037】
原則として、衛星を捕捉した相関処理部4に対しては、当該衛星の追尾を継続させる。一方、割り当てられた衛星を捕捉できなかった相関処理部4に対しては、新たな衛星を捕捉するように、未だ捕捉されていない新たな衛星を割り当てる。ただし、本実施の形態におけるコード決定部300は、衛星を捕捉している相関処理部4に、別の衛星を割り当てることもある。また、同じ衛星を異なる相関処理部4(1組の相関処理部4)に捕捉させることもある。コード決定部300による割り当て先の決定方法については後述する。
【0038】
検出部301は、共通の衛星を捕捉している1組の相関処理部4から得られる相関情報91(第1相関値92と第2相関値93)に応じて、ELS(Early-Late Slope)技術を用いて当該衛星からの電波経路にマルチパスが生じているか否かを検出するとともに、当該マルチパスの影響の度合いも検出する。検出部301は、検出結果をコード決定部300および位相制御部303に伝達する。
【0039】
相関幅設定部302は、コード決定部300から伝達される各相関処理部4の用途(後述する。)に応じて、各相関処理部4における相関幅制御値を設定し、あるいは、変更する機能を有している。相関幅設定部302により設定・変更された相関幅制御値は、位相制御部303に伝達される。
【0040】
位相制御部303は、各相関処理部4のコード発生器40を制御することにより、当該コード発生器40が生成しているレプリカ信号の位相を制御する。より詳細には、相関処理部4から出力された第1相関値92と第2相関値93とを参照しつつ、当該第1相関値92と当該第2相関値93とが等しくなるように、当該相関処理部4のコード発生器40を制御する。例えば、第1相関値92が第2相関値93よりも大きいときは、レプリカ信号の位相を進ませるようにコード発生器40を制御する。一方で、第1相関値92が第2相関値93よりも小さいときは、レプリカ信号の位相を遅らせるようにコード発生器40を制御する。
【0041】
また、位相制御部303は、検出部301から伝達される検出結果に応じて、マルチパスの影響を抑制するように、各相関処理部4のコード発生器40を制御する。位相制御部303がマルチパスの影響を抑制する技術としては、例えば、上記のELS技術を用いることができる。ELS技術を用いてマルチパスの影響を抑制するためには、1つの衛星に対して1組の相関処理部4が必要となるが詳細は後述する。
【0042】
さらに、位相制御部303は、相関幅設定部302から伝達された各相関処理部4に対する相関幅制御値に応じて、当該相関処理部4の位相調整回路41を制御する。より詳細には、レプリカ信号の位相に比べて、設定された相関幅制御値だけ進行した進行信号を生成するように位相調整回路41を制御するとともに、レプリカ信号の位相に比べて、設定された相関幅制御値だけ遅れた遅行信号を生成するように位相調整回路41を制御する。
【0043】
以上が、本実施の形態における受信機1の構成および機能の説明である。次に、受信機1がGPS信号を復号する際に用いる相関検出方法について説明する。
【0044】
図4は、相関検出回路2が実行する相関検出処理を示す流れ図である。
【0045】
相関検出処理では、相関検出制御部3のCPU30(コード決定部300)が、未だC/Aコード(捕捉する衛星)を割り当てられていない未使用の相関処理部4が存在するか否か(ステップS1)、および、見直しタイミングが到来したか否か(ステップS14)を監視している。
【0046】
C/Aコードを割り当てられていない相関処理部4が存在する場合(ステップS1においてYes。)、コード決定部300は、捕捉可能か否かを未探索の衛星が存在するか否かをさらに判定する(ステップS2)。
【0047】
未だに捕捉可能か否かを確認していない未探索の衛星が存在する場合(ステップS2においてYes。)、コード決定部300は、ステップS1において発見された未使用の相関処理部4の識別子を相関幅設定部302に通知する。すなわち、当該相関処理部4の用途として、未探索の衛星の捕捉をさせる旨を相関幅設定部302に伝達する。
【0048】
これにより、相関幅設定部302が相関幅制御値を設定し(ステップS3)、位相制御部303に伝達する。本実施の形態における相関幅設定部302は、相関処理部4に新たな衛星の捕捉をさせるときには、相関器幅が0.5チップとなるように相関幅制御値を設定する。なお、1チップとは、C/Aコードの1ビットに相当する時間である。
【0049】
したがって、位相制御部303は、当該相関処理部4の位相調整回路41に対して、コード発生器40から入力される信号(レプリカ信号)より0.25チップだけ位相の進んだ進行信号と、レプリカ信号より0.25チップだけ位相の遅れた遅行信号とを生成するように制御信号を伝達する。
【0050】
ステップS3の処理と並行して、コード決定部300は、未探索の衛星に対応するC/Aコードを、当該相関処理部4に割り当てる(ステップS4)。すなわち、コード決定部300は、当該相関処理部4のコード発生器40に、当該C/Aコードを設定する。
【0051】
これにより、コード発生器40において当該C/Aコードのレプリカ信号が生成され、位相調整回路41に入力される。そして、位相調整回路41において、当該レプリカ信号より0.25チップだけ位相の進んだ進行信号と、当該レプリカ信号より0.25チップだけ位相の遅れた遅行信号とが生成される。なお、ステップS4において、コード決定部300は、設定したC/Aコードに対応する衛星を探索済みに変更する。
【0052】
位相調整回路41から出力された進行信号は第1相関器42に入力され、データ信号との第1相関値92が求められる。同様に、位相調整回路41から出力された遅行信号は第2相関回路43に入力され、データ信号との第2相関値93が求められる。このようにして、当該相関処理部4において、当該未探索の衛星の捕捉が開始される(ステップS5)。なお、ステップS5において、所定の閾値以上の相関値(相関情報91)が検出されない場合は、位相制御部303が1チップずつC/Aコードをずらしながら、当該衛星の捕捉を試みることになるが、従来技術であるため詳細な説明は省略する。
【0053】
次に、コード決定部300は、ステップS5において捕捉を開始した衛星を、当該相関処理部4が捕捉したか否かを判定する(ステップS6)。そして、捕捉できなかった場合は、当該衛星は観測不能であるとして、当該相関処理部4を開放する(ステップS7)。すなわち、当該相関処理部4は再び未使用状態となる。
【0054】
一方、ステップS4において割り当てられたC/Aコードにより衛星を捕捉した場合(ステップS6においてYes。)、当該相関処理部4は、当該衛星について、追尾処理を開始する(ステップS8)。
【0055】
図5は、相関処理部4が相関検出処理において実行する追尾処理を示す流れ図である。なお、追尾処理が開始されるときには、追尾処理を開始する相関処理部4は、すでに衛星を捕捉している。したがって、当該相関処理部4では、C/Aコードおよび相関幅制御値が設定されており、レプリカ信号、進行信号、および、遅行信号が生成されており、相関情報91の出力が開始されている。
【0056】
追尾処理では、追尾処理を実行中の相関処理部4から相関検出制御部3のRAM32に相関情報91が取得される(ステップS21)。
【0057】
次に、コード決定部300が、相関情報91に基づいて衛星を捕捉できているか否かを判定する(ステップS22)。衛星を捕捉できなくなると、当該相関処理部4から取得される相関情報91が閾値未満となるため、ステップS22における判定が可能である。
【0058】
衛星を捕捉できていない場合(ステップS22においてNo。)、コード決定部300が当該相関処理部4を開放し(ステップS23)、当該相関処理部4は追尾処理を終了する。ステップS23において開放された相関処理部4は、再び未使用の相関処理部4となる。なお、衛星を捕捉している場合においても、コード決定部300が相関処理部4による追尾処理を強制的に終了させる場合もあるが、後述する。
【0059】
衛星を捕捉できている場合(ステップS22においてYes。)、位相制御部303が第1相関値92が第2相関値93より大きいか否かを判定する(ステップS24)。ステップS24においてYesの場合、レプリカ信号の位相が遅れているため、位相制御部303はレプリカ信号の位相を進めるようにコード発生器40を制御する(ステップS25)。
【0060】
一方、ステップS24においてNoの場合、位相制御部303は、第1相関値92が第2相関値93より小さいか否かを判定する(ステップS26)。ステップS26においてYesの場合、レプリカ信号の位相が進んでいるため、位相制御部303はレプリカ信号の位相を遅らせるようにコード発生器40を制御する(ステップS27)。
【0061】
そして、ステップS25またはS27が実行されるか、または、ステップS26においてNoと判定されると、相関処理部4はステップS21に戻って処理を繰り返す。
【0062】
すなわち、相関検出回路2では、未使用の相関処理部4が存在し(ステップS1においてYes。)、かつ、未探索の衛星が存在する場合(ステップS2においてYes。)には、当該空いている相関処理部4に未探索の衛星を割り当てて、当該衛星を捕捉する。そして、捕捉できた場合は当該相関処理部4により当該衛星を追尾し続け、捕捉できなかった場合はさらに未探索の衛星を割り当てて、未探索の衛星が存在しなくなるまで以上の処理を繰り返す。
【0063】
なお、未探索の衛星を割り当てる順序等については、例えば、エフェメリス等の情報に基づいて予測される受信機1の位置に応じて観測可能な衛星を予測し、観測可能と予測される衛星を優先的に割り当ててもよい。すなわち、衛星を捕捉する手順は、従来より提案されている様々な手法を採用することができる。
【0064】
図4に戻って、次に、ステップS2においてNoと判定される場合について説明する。ステップS2においてNoと判定される場合とは、C/Aコードが割り当てられていない未使用の状態の相関処理部4が存在し、かつ、すべての衛星について捕捉可能かどうかの探索が完了している場合である。言い換えれば、捕捉可能な衛星をすべて捕捉・追尾している状態において、相関検出回路2の相関処理部4が余っている場合である。
【0065】
ステップS2においてNoと判定すると、コード決定部300は、マルチパス抑制用の割り当て処理を実行する(ステップS9)。
【0066】
図6は、マルチパス抑制用の割り当て処理を示す流れ図である。
【0067】
まず、コード決定部300は、未使用の相関処理部4をマルチパス検出用に使用することを相関幅設定部302に通知する。これにより、相関幅設定部302が当該相関処理部4の相関幅制御値を設定変更し(ステップS31)、位相制御部303に伝達する。本実施の形態における相関幅設定部302は、相関処理部4にマルチパスを検出させるときには、相関器幅が0.1チップとなるように相関幅制御値を設定する。
【0068】
したがって、位相制御部303は、当該相関処理部4の位相調整回路41に対して、コード発生器40から入力される信号(レプリカ信号)より0.05チップだけ位相の進んだ進行信号と、レプリカ信号より0.05チップだけ位相の遅れた遅行信号とを生成するように制御信号を伝達する。
【0069】
ステップS31の処理と並行して、コード決定部300は、すでに追尾処理を開始している相関処理部4(衛星捕捉中の相関処理部4)のうちから、未だマルチパスの影響を調べていない相関処理部4を、ELS技術を適用する1組の相関処理部4のうちの1つとして決定する(ステップS32)。このとき、コード決定部300は、決定した相関処理部4についてマルチパスの影響確認済みに変更する。
【0070】
次に、コード決定部300は、ステップS32で決定した相関処理部4に設定しているC/Aコードを、未使用の相関処理部4(ステップS31においてマルチパス検出用として特定された相関処理部4)に割り当てる(ステップS33)。これにより、ステップS32で決定された相関処理部4と、当該未使用の相関処理部4とに、互いに同一のC/Aコードが設定されることとなり、1組の相関処理部4のうちのもう1つが当該未使用の相関処理部4となる。このとき、ステップS32で決定された相関処理部4の相関器幅は0.5チップであり、もう一方の相関処理部4の相関器幅は0.1チップであり、互いに異なっている。
【0071】
1組の相関処理部4が形成されると、当該1組の相関処理部4から出力される相関情報91に基づいて、ELS技術を用いて、検出部301がマルチパスの影響を検出する(ステップS34)。そして、検出されたマルチパスの影響度合いはコード決定部300に伝達される。
【0072】
ステップS32で決定した相関処理部4について、マルチパスの影響検出が完了すると、コード決定部300は、衛星捕捉中の相関処理部4の中に、マルチパスの影響を未確認の相関処理部4が存在するか否かを判定する(ステップS35)。
【0073】
マルチパスの影響を未だ確認済みでない相関処理部4が存在する場合(ステップS35においてYes。)、当該相関処理部4についてマルチパスの影響を確認するため、ステップS32に戻って処理を繰り返す。このとき、コード決定部300は、ステップS33においてC/Aコードを割り当てた相関処理部4を一旦開放して、未使用状態に戻す。
【0074】
衛星捕捉中のすべての相関処理部4についてマルチパスの影響を確認すると(ステップS35においてNo。)、コード決定部300は、マルチパスの影響を抑制するために使用可能な未使用の相関処理部4の数を確認する(ステップS36)。例えば、ステップS32ないしS35を繰り返した回数をカウントしておき、これを「n」とすれば、「n」は捕捉中の衛星の数を示す値となる。したがって、マルチパスの影響を抑制するために使用可能な相関処理部4の数は、「m−n」となる。
【0075】
次に、コード決定部300は、ステップS34において通知された各相関処理部4におけるマルチパスの影響度合いに応じて、マルチパスの影響を抑制すべき相関処理部4を決定し、「m−n」個の相関処理部4にC/Aコードを割り当て(ステップS37)、図4に示す処理に戻る。
【0076】
図7ないし図9は、状況に応じてコード決定部300がマルチパス抑制用に相関処理部4を割り当てる例を示す図である。図7ないし図9では、いずれもm=5,n=3の例を示している。すなわち、いずれも相関処理部41,42,43がそれぞれ衛星A,B,Cを捕捉して、追尾処理中であり、マルチパス抑制用に2つの相関処理部44,45を使用できる場合を示している。
【0077】
図7では、ステップS32ないしS35の処理で検出されたマルチパスの影響は、衛星Aについては「なし」、衛星B,Cについてはいずれも「大」である。
【0078】
このような場合、コード決定部300は、マルチパスの発生により大きな影響を受けている衛星B,Cについては、当該マルチパスの影響を抑制するために、それぞれ1組の相関処理部4を割り当てる。図7に示す例では、相関処理部42,44がELS技術によりマルチパスの影響を抑制する1組の相関処理部4を構成するように衛星BのC/Aコードが割り当てられている。同様に、相関処理部43,45がELS技術によりマルチパスの影響を抑制する1組の相関処理部4を構成するように衛星CのC/Aコードが割り当てられている。
【0079】
このように、相関検出回路2では、捕捉可能な衛星の数が搭載している相関処理部4の数よりも少ない場合には、空いている相関処理部4の相関器幅を変更して、マルチパスの影響を抑制するために使用することができる。したがって、例えば、図7に示す例において、相関処理部42,43に、別途、マルチパスの影響を抑制するための専用の相関器を設けていなくても、マルチパスの影響を抑制することができる。
【0080】
図8では、ステップS32ないしS35の処理で検出されたマルチパスの影響は、衛星Aについては「なし」、衛星Bについては「小」、衛星Cについては「大」である。
【0081】
このような場合、コード決定部300は、まず、マルチパスの発生により大きな影響を受けている衛星Cについては、当該マルチパスの影響を抑制するために、1組の相関処理部4を割り当てる。図8に示す例では、相関処理部43,44がELS技術によりマルチパスの影響を抑制する1組の相関処理部4を構成するように衛星CのC/Aコードが割り当てられている。次に、相関処理部45に割り当てるC/Aコードを、衛星AのC/Aコードを割り当てる時間帯と、衛星BのC/Aコードを割り当てる時間帯とに時分割して切り替え、衛星Bのマルチパスの影響を抑制しつつ、衛星Aの状況を監視する。
【0082】
このように、相関検出回路2では、空いている相関処理部4の相関器幅を変更して、マルチパスの影響を抑制するだけでなく、マルチパスの影響を監視するためにも使用できる。なお、図8では、相関処理部45を衛星Aに割り当てる時間と衛星Bに割り当てる時間とがほぼ等しいように示している。しかし、衛星Aについてはマルチパスの影響を確認するために必要な時間(比較的短時間)だけ割り当て、それ以外の時間は現実に発生している衛星Bのマルチパスの影響を抑制するために割り当てるのが好ましい。
【0083】
図9では、図8に示す状態が、時間Tにおいて、衛星Bについては「小」から「大」に、衛星Cについては「大」から「小」に変化した場合を示している。
【0084】
このような場合、コード決定部300は、状況が変化したことを検出した後、マルチパスの影響が「大」に変化した衛星Bについては、当該マルチパスの影響を抑制するために、1組の相関処理部4を割り当てる。図9に示す例では、相関処理部42,44がELS技術によりマルチパスの影響を抑制する1組の相関処理部4を構成するように衛星BのC/Aコードが割り当てられている。すなわち、相関処理部44に割り当てられているC/Aコードが時間Tを境に変更される。次に、相関処理部45に割り当てるC/Aコードを、衛星AのC/Aコードを割り当てる時間帯と、衛星CのC/Aコードを割り当てる時間帯とに時分割して切り替える。これにより、相関検出回路2は、衛星Cのマルチパスの影響を抑制しつつ、衛星Aの状況を監視することができる。
【0085】
図10は、4つの相関処理部4で3つの衛星を捕捉する場合の例を示す図である。図10に示す例では、3つの衛星のいずれにおいてもマルチパスが発生しており、相関処理部44のみがマルチパス抑制用に割り当てることが可能な相関処理部4である。
【0086】
3つの衛星A,B,Cにおいて発生しているマルチパスの影響がいずれも「小」またはいずれも「大」のとき、コード決定部300は、いずれの衛星を優先することもできないので、3つの時間帯に時分割して、相関処理部44に衛星A,B,Cを順次割り当てる。
【0087】
また、衛星Aについては影響が「小」であり、衛星B,Cについては影響が「大」のとき、コード決定部300は、2つの時間帯に時分割して、相関処理部44に衛星B,Cを交互に割り当てる。
【0088】
また、衛星A,Bについては影響が「小」であり、衛星Cについては影響が「大」のとき、コード決定部300は、相関処理部44に衛星Cを割り当てる。
【0089】
以上のように、相関検出回路2は、状況に柔軟に対応して、各相関処理部4へのC/Aコード(衛星)の割り当てを行うことができるとともに、一旦割り当てたC/Aコードを状況の変化に応じて変更することもできる。なお、例えば図7に示す例では、衛星B,Cについては1組の相関処理部4が割り当てられるので、時間の経過とともに変化するマルチパスの影響を監視し続けることができる。しかし、衛星Aについては1つの相関処理部4によってのみ追尾しているため、マルチパスの影響を監視することができない。このように、マルチパスの影響を監視することのできないような割り当て状況が発生した場合、コード決定部300は、図示しないタイマに所定の時間をセットし、セットした時間が経過すると、図4に示すステップS14においてYesと判定して、割り当ての見直しを行う(ステップS15)。ただし、詳細は後述する。
【0090】
図4に戻って、ステップS1においてNoと判定されたときについて説明する。ステップS1においてNoと判定されるときとは、すべての相関処理部4が追尾処理を開始しており、未使用の相関処理部4が存在しない場合である。
【0091】
ステップS2ないしS8の処理において、順次に捕捉可能な衛星を捕捉した場合、必ずしも観測に適した衛星のみが捕捉されるわけではなく、未探索の衛星の方が観測に適している場合もあり得る。したがって、コード決定部300は、未使用の相関処理部4が存在しなくなった場合でも、ステップS2と同様に、未探索の衛星が存在するか否かを判定する(ステップS10)。
【0092】
そして、未探索の衛星が存在する場合(ステップS10においてYes。)、追尾処理中の相関処理部4のうちのいずれかを選択して強制的に開放し、当該相関処理部4を用いて当該未探索の衛星の探索を行う(ステップS11)。すなわち、ステップS10,S11が繰り返されることによって、観測可能(捕捉可能)な衛星がリストアップされることになる。
【0093】
すべての衛星について探索を終了すると、コード決定部300はステップS10においてNoと判定し、観測可能な衛星として発見(リストアップ)された衛星のうちから、実際に追尾する衛星を決定する(ステップS12)。ステップS12における決定は、例えば、従来から提案されているDOP(Dilution of Precision)値を用いた衛星決定方法を採用することができる。
【0094】
図11は、捕捉された衛星の相関処理部4への割り当て例を示す図である。図11に示す例では、相関処理部4の数は4つ(相関処理部41,42,43,44)であり、捕捉可能な衛星は5つ(衛星A,B,C,D,E)である。
【0095】
この場合、コード決定部300は、5つの衛星から4つを選択する組み合わせごとに、DOP値を演算し、DOP値が最も小さくなる組み合わせを決定する。図11に示す例では、衛星A,B,C,Eを選択する組み合わせが最もDOP値が小さくなる場合であり、衛星Dが追尾する衛星から除外されている。
【0096】
なお、ステップS10,S11を繰り返す間に、捕捉された全衛星について検出部301がマルチパスの影響を検出してもよい。その場合、ステップS12において、コード決定部300は、マルチパスの影響が大きい衛星を追尾対象から除外するようにしてもよい。ステップS12が実行されるとき、通常、マルチパス抑制用の相関処理部4を設けることは困難である(捕捉される衛星が相関処理部4の数より多いため。)。したがって、マルチパスの影響が大きい衛星を除外することにより、結果として相関検出回路2はマルチパスの影響を抑制することができる。
【0097】
ステップS12を実行することにより、追尾する衛星が決定されると、コード決定部300は、決定した衛星に対応するC/Aコードをそれぞれの相関処理部4に設定し、追尾処理を開始させる(ステップS13)。
【0098】
相関検出処理において、タイマ割り込みが発生し、見直しタイミングが到来したことが通知されると、コード決定部300は、ステップS14においてYesと判定し、再割り当て処理を実行する(ステップS15)。
【0099】
すでに説明したように、ステップS9あるいはステップS12が実行されると、一旦、すべての相関処理部4にC/Aコードが割り当てられ、追尾処理が開始される。しかし、マルチパスの影響は時間の経過とともに変化し、最適な割り当て状態も変化する。そして、すべての衛星について、マルチパスの影響を監視できる状態であれば、図9に示したように、相関検出回路2は、状況の変化に応じて割り当てを見直すことができる。
【0100】
しかし、マルチパス抑制用の相関処理部4を設けることができない場合などにおいては最適な割り当て状態を再確認するために、所定の時間が経過するたびに、マルチパスの影響を検出しなおして、再度、割り当てを行うのである。なお、ステップS15における処理は、いずれか1つの相関処理部4を開放し、捕捉中の衛星についてのマルチパス検出用として使用し、検出されたマルチパスの影響に応じて、再割り当てを行う処理であり、ステップS9に類似の工程となるため、詳細は省略する。
【0101】
以上のように、本実施の形態における相関検出回路2は、予め設定されている複数パターンの模倣信号(C/Aコード)の中から検出対象の模倣信号(レプリカ信号)を決定するコード決定部300と、複数の送信元(衛星)から送信された信号を含むデータ信号とコード決定部300により決定されたレプリカ信号との相関処理を実行する複数の相関処理部4とを備え、相関処理部4は、レプリカ信号と、当該レプリカ信号より相関幅制御値だけ位相の進んだ進行信号と、当該レプリカ信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成するコード発生器40および位相調整回路41と、データ信号と進行信号との第1相関値92を求める第1相関器42と、データ信号と遅行信号との第2相関値93を求める第2相関器43とを備え、各相関処理部4における相関幅制御値を変更する相関幅設定部302をさらに備える。これにより、状況に応じて、相関処理部4の割り当てを変更でき、柔軟な対応が可能となり、相関処理部4の有効利用を図ることができる。
【0102】
また、コード決定部300は、複数の相関処理部4から1組の相関処理部4を選択し、捕捉されている衛星に対応したC/Aコードを、当該1組の相関処理部4に対するレプリカ信号として決定し、相関幅設定部302は、当該1組の相関処理部4の相関幅制御値を互いに異なる値に設定することにより、マルチパスの影響を検出できるとともに、マルチパスの影響を抑制することができる。
【0103】
また、コード決定部300は、複数の相関処理部4において未だ衛星を捕捉していない相関処理部4が存在するときに、当該衛星を捕捉していない相関処理部4を1組の相関処理手段の1つとして選択することにより、空いている相関処理部4を有効に活用することができる。
【0104】
また、コード決定部300は、複数の相関処理部4のうちの1つの相関処理部4に、捕捉されている複数の衛星に対応した複数のC/Aコードを時分割で割り当て、当該1つの相関処理部4は、複数の衛星をそれぞれが捕捉している複数の相関処理部4と、時分割で1組の相関処理部4を構成する。これにより、さらに多くの衛星について、マルチパスの影響を監視することができるとともに、マルチパスの影響を抑制することができる。
【0105】
<2. 変形例>
以上、本発明の実施の形態について説明してきたが、本発明は上記実施の形態に限定されるものではなく様々な変形が可能である。
【0106】
また、上記実施の形態に示した各機能ブロックはプログラムにより実現されると説明したが、これらの機能ブロックの一部または全部が専用の論理回路(ハードウェア)によって実現されてもよい。
【0107】
また、CPU30がプログラム81に従って動作することにより実現される機能ブロックの一部を、メインCPU10がプログラム80に従って動作することにより実現してもよい。あるいは、相関処理部4に対する位相制御(衛星の捕捉および追尾)を専用で実行するCPU(いわゆるレシーバプロセッサ)を相関検出回路2に別途設けてもよい。
【0108】
また、上記実施の形態に示した各工程は、あくまでも例示であり、このような内容および順序に限定されるものではない。すなわち、同様の効果が得られるならば、内容および順序が適宜変更されてもよい。
【0109】
また、上記実施の形態では、2つの相関処理部4によって1組の相関処理部4が構成される例についてのみ説明したが、1組の相関処理部4は、3以上の相関処理部4で構成されてもよい。すなわち、そのようにコード決定部300がC/Aコードの割り当てを決定してもよい。その場合は、例えば、3つの相関処理部4によってマルチパスの影響を抑制する技術も適用可能となる。
【符号の説明】
【0110】
1 受信機
10 メインCPU
11,31 ROM
12,32 RAM
13 アンテナ
14 RFIC
2 相関検出回路
3 相関検出制御部
30 CPU
300 コード決定部
301 検出部
302 相関幅設定部
303 位相制御部
4 相関処理部
40 コード発生器
41 位相調整回路
42 第1相関器
43 第2相関器
80,81 プログラム
90 位置情報
91 相関情報
92 第1相関値
93 第2相関値
【特許請求の範囲】
【請求項1】
予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する決定手段と、
複数の送信元から送信された信号を含むデータ信号と前記決定手段により決定された検出対象の模倣信号との相関処理を実行する複数の相関処理手段と、
を備え、
前記相関処理手段は、
検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する信号生成手段と、
前記データ信号と前記進行信号との第1相関値を求める第1相関手段と、
前記データ信号と前記遅行信号との第2相関値を求める第2相関手段と、
を備え、
各相関処理手段における前記相関幅制御値を変更する相関幅設定手段をさらに備える相関検出回路。
【請求項2】
請求項1に記載の相関検出回路であって、
前記複数の送信元は、全地球測位システムにおける複数の衛星であり、
前記複数のパターンの模倣信号は前記複数の衛星のそれぞれに対応して設定されている相関検出回路。
【請求項3】
請求項2に記載の相関検出回路であって、
前記決定手段は、前記複数の相関処理手段から1組の相関処理手段を選択し、捕捉されている衛星に対応した模倣信号を、前記1組の相関処理手段に対する検出対象の模倣信号として決定し、
前記相関幅設定手段は、前記1組の相関処理手段の相関幅制御値を互いに異なる値に設定する相関検出回路。
【請求項4】
請求項3に記載の相関検出回路であって、
前記決定手段は、前記複数の相関処理手段において未だ衛星を捕捉していない相関処理手段が存在するときに、前記衛星を捕捉していない相関処理手段を前記1組の相関処理手段の1つとして選択する相関検出回路。
【請求項5】
請求項3または4に記載の相関検出回路であって、
前記決定手段は、前記複数の相関処理手段のうちの1つの相関処理手段に、捕捉されている複数の衛星に対応した複数の模倣信号を時分割で割り当て、前記1つの相関処理手段は、前記複数の衛星をそれぞれが捕捉している複数の相関処理手段と、時分割で前記1組の相関処理手段を構成する相関検出回路。
【請求項6】
予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する工程と、
決定された検出対象の模倣信号を複数の相関処理部に割り当てる工程と、
前記複数の相関処理部のそれぞれにおいて、割り当てられた検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する工程と、
複数の送信元から送信された信号を含むデータ信号と前記進行信号との第1相関値を求める工程と、
前記データ信号と前記遅行信号との第2相関値を求める工程と、
前記相関幅制御値を変更する工程と、
を有する相関検出方法。
【請求項7】
コンピュータ読み取り可能なプログラムであって、前記プログラムの前記コンピュータによる実行は、前記コンピュータを、
予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する決定手段と、
複数の送信元から送信された信号を含むデータ信号と前記決定手段により決定された検出対象の模倣信号との相関処理を実行する複数の相関処理手段と、
を備え、
前記相関処理手段は、
検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する信号生成手段と、
前記データ信号と前記進行信号との第1相関値を求める第1相関手段と、
前記データ信号と前記遅行信号との第2相関値を求める第2相関手段と、
を備え、
各相関処理手段における前記相関幅制御値を変更する相関幅設定手段をさらに備える相関検出回路として機能させるプログラム。
【請求項1】
予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する決定手段と、
複数の送信元から送信された信号を含むデータ信号と前記決定手段により決定された検出対象の模倣信号との相関処理を実行する複数の相関処理手段と、
を備え、
前記相関処理手段は、
検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する信号生成手段と、
前記データ信号と前記進行信号との第1相関値を求める第1相関手段と、
前記データ信号と前記遅行信号との第2相関値を求める第2相関手段と、
を備え、
各相関処理手段における前記相関幅制御値を変更する相関幅設定手段をさらに備える相関検出回路。
【請求項2】
請求項1に記載の相関検出回路であって、
前記複数の送信元は、全地球測位システムにおける複数の衛星であり、
前記複数のパターンの模倣信号は前記複数の衛星のそれぞれに対応して設定されている相関検出回路。
【請求項3】
請求項2に記載の相関検出回路であって、
前記決定手段は、前記複数の相関処理手段から1組の相関処理手段を選択し、捕捉されている衛星に対応した模倣信号を、前記1組の相関処理手段に対する検出対象の模倣信号として決定し、
前記相関幅設定手段は、前記1組の相関処理手段の相関幅制御値を互いに異なる値に設定する相関検出回路。
【請求項4】
請求項3に記載の相関検出回路であって、
前記決定手段は、前記複数の相関処理手段において未だ衛星を捕捉していない相関処理手段が存在するときに、前記衛星を捕捉していない相関処理手段を前記1組の相関処理手段の1つとして選択する相関検出回路。
【請求項5】
請求項3または4に記載の相関検出回路であって、
前記決定手段は、前記複数の相関処理手段のうちの1つの相関処理手段に、捕捉されている複数の衛星に対応した複数の模倣信号を時分割で割り当て、前記1つの相関処理手段は、前記複数の衛星をそれぞれが捕捉している複数の相関処理手段と、時分割で前記1組の相関処理手段を構成する相関検出回路。
【請求項6】
予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する工程と、
決定された検出対象の模倣信号を複数の相関処理部に割り当てる工程と、
前記複数の相関処理部のそれぞれにおいて、割り当てられた検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する工程と、
複数の送信元から送信された信号を含むデータ信号と前記進行信号との第1相関値を求める工程と、
前記データ信号と前記遅行信号との第2相関値を求める工程と、
前記相関幅制御値を変更する工程と、
を有する相関検出方法。
【請求項7】
コンピュータ読み取り可能なプログラムであって、前記プログラムの前記コンピュータによる実行は、前記コンピュータを、
予め設定されている複数パターンの模倣信号の中から検出対象の模倣信号を決定する決定手段と、
複数の送信元から送信された信号を含むデータ信号と前記決定手段により決定された検出対象の模倣信号との相関処理を実行する複数の相関処理手段と、
を備え、
前記相関処理手段は、
検出対象の模倣信号と、前記検出対象の模倣信号より相関幅制御値だけ位相の進んだ進行信号と、前記検出対象の模倣信号より前記相関幅制御値だけ位相の遅れた遅行信号とを生成する信号生成手段と、
前記データ信号と前記進行信号との第1相関値を求める第1相関手段と、
前記データ信号と前記遅行信号との第2相関値を求める第2相関手段と、
を備え、
各相関処理手段における前記相関幅制御値を変更する相関幅設定手段をさらに備える相関検出回路として機能させるプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2013−53989(P2013−53989A)
【公開日】平成25年3月21日(2013.3.21)
【国際特許分類】
【出願番号】特願2011−193630(P2011−193630)
【出願日】平成23年9月6日(2011.9.6)
【出願人】(591128453)株式会社メガチップス (322)
【Fターム(参考)】
【公開日】平成25年3月21日(2013.3.21)
【国際特許分類】
【出願日】平成23年9月6日(2011.9.6)
【出願人】(591128453)株式会社メガチップス (322)
【Fターム(参考)】
[ Back to top ]