信号捕捉方法及び信号捕捉装置
【課題】航法メッセージデータのビット長よりも長い相関積算時間に亘る相関処理を可能にするための新たな手法を提案すること。
【解決手段】GPS衛星から発信されたGPS衛星信号を受信した受信信号に対して相関演算が行われる。そして、GPS衛星信号に搬送されている航法メッセージデータのビット長(20ミリ秒)以上の所定の蓄積時間に亘る相関演算結果に対して、フーリエ変換を用いた周波数解析が行われる。そして、航法メッセージデータのビット長の2倍の周期時間である40ミリ秒に相当する特定周波数(25Hz)におけるパワー値が、周波数ゼロにおけるパワー値に加算され、特定周波数におけるパワー値が「0」にされた後、逆フーリエ変換によって相関値が再構成される。そして、再構成された相関値が積算され、当該積算相関値に基づいてGPS衛星信号が捕捉される。
【解決手段】GPS衛星から発信されたGPS衛星信号を受信した受信信号に対して相関演算が行われる。そして、GPS衛星信号に搬送されている航法メッセージデータのビット長(20ミリ秒)以上の所定の蓄積時間に亘る相関演算結果に対して、フーリエ変換を用いた周波数解析が行われる。そして、航法メッセージデータのビット長の2倍の周期時間である40ミリ秒に相当する特定周波数(25Hz)におけるパワー値が、周波数ゼロにおけるパワー値に加算され、特定周波数におけるパワー値が「0」にされた後、逆フーリエ変換によって相関値が再構成される。そして、再構成された相関値が積算され、当該積算相関値に基づいてGPS衛星信号が捕捉される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、信号捕捉方法及び信号捕捉装置に関する。
【背景技術】
【0002】
測位用信号を利用した測位システムとしては、GPS(Global Positioning System)が広く知られており、携帯型電話機やカーナビゲーション装置等に内蔵された位置算出装置に利用されている。GPSでは、複数のGPS衛星の位置や各GPS衛星から位置算出装置までの擬似距離等の情報に基づいて位置算出装置の位置座標と時計誤差とを求める位置算出計算を行う。
【0003】
GPS衛星から送出されるGPS衛星信号は、CA(Coarse and Acquisition)コードと呼ばれるGPS衛星毎に異なる拡散符号で変調されている。位置算出装置は、微弱な受信信号の中からGPS衛星信号を捕捉するために、受信信号と、CAコードのレプリカであるレプリカCAコードとの相関演算を行い、その相関値に基づいてGPS衛星信号を捕捉する。この場合、相関値のピークの検出を容易にするため、相関演算で取得された相関値を所定の積算時間に亘って積算する手法が用いられる。
【0004】
しかし、GPS衛星信号を拡散変調するCAコード自体が航法メッセージデータによって20ミリ秒毎にBPSK(Binary Phase Shift Keying)変調されているため、ビット長である20ミリ秒毎にCAコードの極性が反転し得る。従って、航法メッセージデータのビット値が変化するタイミングを跨いで相関値を積算する場合には、符号の異なる相関値を積算する可能性がある。この問題を解決するための技術として、例えば特許文献1に開示されているように、航法メッセージデータのビット値が変化するタイミングについてのアシストデータを利用して相関値を積算する技術が知られている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2001−349935号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1の技術によれば、相関積算時間を航法メッセージデータのビット長(20ミリ秒)よりも長く設定することができる。しかし、特許文献1の技術では、航法メッセージデータのビット値が変化するタイミングについてのアシストデータを外部から取得する必要があるため、通信費や通信時間の問題など、データ取得に関する制約や問題があった。特に、GPS衛星信号から発信されている航法メッセージデータが新たなデータに切り替わった後においては、アシストデータが更新されるのを待って、その新たなアシストデータを取得する必要が生じてしまう。
【0007】
本発明は上述した課題に鑑みて為されたものであり、その目的とするところは、航法メッセージデータのビット長よりも長い相関積算時間に亘る相関処理を可能にするための新たな手法を提案することにある。
【課題を解決するための手段】
【0008】
以上の課題を解決するための第1の形態は、測位用衛星から発信された衛星信号を受信した受信信号に対して相関演算を行うことと、前記衛星信号によって搬送されている航法メッセージデータのビット長以上の所定時間に亘る前記相関演算の結果を周波数解析することと、前記周波数解析した結果のうち、前記ビット長に応じて定められる特定周波数を少なくとも含む所定の周波数におけるパワー値を抽出することと、前記抽出したパワー値を用いて前記衛星信号を捕捉することと、を含む信号捕捉方法である。
【0009】
また、他の形態として、測位用衛星からの衛星信号を受信部が受信した受信信号に対して相関演算を行う相関演算部と、前記衛星信号によって搬送されている航法メッセージデータのビット長以上の所定時間に亘る前記相関演算の結果を周波数解析する解析部と、前記周波数解析した結果のうち、前記所定時間に応じて定められる特定周波数を少なくとも含む所定の周波数におけるパワー値を抽出する抽出部と、前記抽出したパワー値を用いて前記衛星信号を捕捉する捕捉部と、を備えた信号捕捉装置を構成してもよい。
【0010】
この第1の形態等によれば、測位用衛星から発信された衛星信号を受信した受信信号に対して相関演算を行う。そして、衛星信号によって搬送されている航法メッセージデータのビット長以上の所定時間に亘る相関演算の結果を周波数解析し、当該周波数解析の結果のうち、航法メッセージデータのビット長に応じて定められる特定周波数を少なくとも含む所定の周波数におけるパワー値を抽出する。そして、抽出したパワー値を用いて衛星信号を捕捉する。
【0011】
航法メッセージデータが搬送されている衛星信号に対して相関演算を行うと、符号変化の有る相関値の時系列データが得られる。それゆえ、相関値の時系列データに対する周波数解析を行うと、航法メッセージデータのビット長に応じて定められる特定の周波数においてパワー値のピークが現れるのが通常である。この特定周波数のピークは、航法メッセージデータのビット長に起因して生ずるものであり、ビット長以上の任意の時間に亘って相関処理を行った場合に現れるものである。そのため、特定周波数におけるパワー値を利用すれば、航法メッセージデータのビット値が変化し得るビット長よりも長い相関積算時間に亘る相関処理が可能となる。
【0012】
また、第2の形態として、第1の形態の信号捕捉方法であって、前記所定時間に亘る前記相関演算の結果をn倍(n>1)することを更に含み、前記周波数解析は、前記n倍した前記相関演算の結果に対して行うことである、信号捕捉方法を構成してもよい。
【0013】
この第2の形態によれば、所定時間に亘る相関演算の結果をn倍することで、相関演算の結果を増大させる。そして、n倍した相関演算の結果に対して周波数解析を行う。これにより、周波数解析で得られるパワースペクトル密度を増大させることができる。
【0014】
また、第3の形態として、第1又は第2の形態の信号捕捉方法であって、前記抽出することは、前記特定周波数と、前記特定周波数の高調波とにおける前記パワー値の抽出を行うことである、信号捕捉方法を構成してもよい。
【0015】
この第3の形態によれば、特定周波数と、特定周波数の高調波とにおけるパワー値の抽出を行う。相関演算結果に対する周波数解析を行うと、特定周波数の他に、特定周波数の高調波の周波数にもパワー値のピークが現れる。そのため、航法メッセージデータの変調周期に応じた周波数である特定周波数におけるパワー値の他に、その特定周波数の高調波におけるパワー値も併せて利用することで、より適確且つ迅速に衛星信号を捕捉することが可能になる。
【0016】
また、第4の形態として、第1〜第3の何れかの形態の信号捕捉方法であって、前記衛星信号を捕捉することは、前記抽出したパワー値を、周波数ゼロにおけるパワー値と見なして前記捕捉を行うことを含む、信号捕捉方法を構成してもよい。
【0017】
この第4の形態によれば、抽出したパワー値を、周波数ゼロにおけるパワー値と見なして衛星信号の捕捉を行う。抽出したパワー値を周波数ゼロにおけるパワー値と見なすということは、周波数解析によって、周波数ゼロにパワー値のピークが有ったという結果になったことを意味する。周波数ゼロにパワー値のピークが有ったということは、衛星信号の受信周波数の検出に成功したことに相当する。従って、この第4の形態により、信号捕捉の是非を容易に判定することができる。
【0018】
また、第5の形態として、第1〜第4の何れかの形態の信号捕捉方法であって、前記衛星信号を捕捉することは、逆周波数解析を行うことと、前記逆周波数解析の結果を用いて前記衛星信号を捕捉することと、を含む、信号捕捉方法を構成してもよい。
【0019】
また、第1〜第5の形態における周波数解析としては、第6の形態のように、フーリエ変換を用いた周波数解析を適用することとしてもよいし、第7の形態のように、ウェーブレット変換を用いた周波数解析を適用することとしてもよい。
【図面の簡単な説明】
【0020】
【図1】(A)は相関値の時間変化の一例。(B)は周波数解析結果の一例。(C)はパワー値に対する処理の説明図。(D)は再構成された相関値の時間変化の一例。
【図2】(A),(B)は相関値の直流成分。(C)は相関値の特定周波数成分。
【図3】携帯型電話機の機能構成の一例を示すブロック図。
【図4】ベースバンド処理回路部の回路構成の一例を示すブロック図。
【図5】ベースバンド処理の流れを示すフローチャート。
【図6】第1相関処理の流れを示すフローチャート。
【図7】第2相関処理の流れを示すフローチャート。
【図8】第3相関処理の流れを示すフローチャート。
【図9】第4相関処理の流れを示すフローチャート。
【図10】従来における位相方向及び周波数方向の相関処理結果の一例を示す図。
【図11】従来における周波数方向の相関処理結果の一例を示す図。
【図12】従来における位相方向の相関処理結果の一例を示す図。
【図13】第1実施例における位相方向及び周波数方向の相関処理結果の一例を示す図。
【図14】第1実施例における周波数方向の相関処理結果の一例を示す図。
【図15】第1実施例における位相方向の相関処理結果の一例を示す図。
【図16】第5相関処理の流れを示すフローチャート。
【図17】第6相関処理の流れを示すフローチャート。
【図18】従来における相関値の時系列変化の一例を示す図。
【図19】第2実施例における相関値の時系列変化の一例を示す図。
【発明を実施するための形態】
【0021】
1.原理
先ず、本実施形態における衛星信号捕捉の原理について説明する。
GPS衛星を利用した位置算出システムにおいて、測位用衛星の一種であるGPS衛星は、アルマナックやエフェメリス等の衛星軌道データを含む航法メッセージデータを、測位用衛星信号の一種であるGPS衛星信号に乗せて発信している。
【0022】
GPS衛星信号は、拡散符号の一種であるCA(Coarse and Acquisition)コードによって、スペクトラム拡散方式として知られるCDMA(Code Division Multiple Access)方式によって変調された1.57542[GHz]の通信信号である。CAコードは、コード長1023チップを1PNフレームとする繰返し周期1msの擬似ランダム雑音符号であり、衛星毎に異なる。
【0023】
GPS衛星がGPS衛星信号を発信する際の周波数(規定搬送波周波数)は、1.57542[GHz]と予め規定されているが、GPS衛星やGPS受信装置の移動により生ずるドップラーの影響等により、GPS受信装置がGPS衛星信号を受信する際の周波数は、必ずしも規定搬送波周波数とは一致しない。そのため、従来のGPS受信装置は、受信信号の中からGPS衛星信号を捕捉するための周波数方向の相関演算である周波数サーチを行ってGPS衛星信号を捕捉する。また、受信したGPS衛星信号(CAコード)の位相を特定するため、GPS受信装置は、位相方向の相関演算である位相サーチを行ってGPS衛星信号を捕捉する。
【0024】
しかし、特にインドア環境などの弱電界環境においては、真実の受信周波数及び真実のコード位相における相関値のレベルが低くなるため、ノイズとの見分けが難しくなる。この結果、真実の受信周波数及び真実のコード位相の検出、すなわち信号の捕捉が困難になる。そこで、このような受信環境下では、相関演算によって得られる相関値を所定の相関積算時間に亘って積算していき、積算された相関値の中からピークを検出することによって、GPS衛星信号を捕捉する手法が用いられる。
【0025】
ところが、GPS衛星信号は、CAコードによって拡散変調されているとともに、航法メッセージデータのビット値に応じてCAコード自体がBPSK(Binary Phase Shift Keying)変調されている。この航法メッセージデータのビット長は20ミリ秒であるため、20ミリ秒毎にビット値が変化(反転)する可能性がある。可能性があるというのは、ビット値が変化しない場合もあることを意味する。本実施形態では、航法メッセージデータのビット値が実際に変化するタイミングのことを「ビット反転タイミング」と称する。
【0026】
航法メッセージデータのビット値が変化することは、CAコードの極性が反転することを意味する。そのため、受信したCAコードと、レプリカコードとの相関演算を行うと、航法メッセージデータのビット長である20ミリ秒毎に符号の異なる相関値が算出され得る。そのため、航法メッセージデータのビット反転タイミングを跨いで相関値を積算してしまうと、符号の異なる相関値が相殺し合うことにより、相関値が微小な値(極端な場合は0)となってしまう問題がある。この問題を解決するため、本願発明者は、相関値に対する周波数解析を利用して、符号を揃えて相関値を積算する新しい手法を考案した。
【0027】
図1及び図2は、本実施形態における相関処理の流れを説明するための図である。
図1(A)に、相関値の時系列変化の一例を示す。説明を分かりやすくするため、相関値を「+1」と「−1」の正負の2値で表現している。また、ここでは、受信周波数の真値が既知であり、受信CAコードと位相がぴったり一致したレプリカコードを用いて相関演算を行って相関値を求めた場合について説明する。
【0028】
航法メッセージデータのビット値が「1」である場合のCAコードの極性を「正」とすると、受信CAコードにレプリカコードを乗算することで、相関値「+1」が得られる。一方、航法メッセージデータのビット値が「0」である場合のCAコードの極性を「負」とすると、受信CAコードにレプリカコードを乗算することで、相関値「−1」が得られる。
【0029】
図1(A)を見ると、航法メッセージデータのビット反転タイミングで、相関値の符号が入れ替わっていることがわかる。ビット値に応じて、前回のビット反転タイミングから20ミリ秒後にビット反転タイミングが到来した場合には、当該20ミリ秒後の時点で相関値の符号が逆転する。また、40ミリ秒後にビット反転タイミングが到来した場合には、当該40ミリ秒後の時点で相関値の符号が逆転する。
【0030】
図1(A)に示した時系列の相関値をビット長以上の所定時間に亘って蓄積し、周波数解析を行うと、例えば図1(B)に示すようなパワースペクトルが得られる。実施例で後述するが、周波数解析としては、例えばフーリエ変換やウェーブレット変換を適用することができる。図1(B)において、横軸は周波数、縦軸はパワー値を示しており、説明を分かり易くするため、ホワイトノイズについては図示を省略している。
【0031】
図1(B)に示すように、周波数ゼロ(0Hz)にパワー値のピークが現れる。これは、時系列の相関値の直流成分を示している。すなわち、図2(A)及び図2(B)に示すように、時系列の相関値のうちの符号変化の無い部分に相当する周波数成分(直流成分)が、0Hzのパワー値のピークとして現れるのである。
【0032】
しかし、図1(B)に示すように、25Hzの周波数にもパワー値の大きなピークが現れる。これは、航法メッセージデータのビット長が20ミリ秒であることに起因している。すなわち、図2(C)に示すように、航法メッセージデータのビット値が20ミリ秒毎に変化した場合、例えば最初の20ミリ秒が「1」、次の20ミリ秒が「−1」、その次の20ミリ秒が「1」といったように相関値が変化するため、相関値の周期は40ミリ秒になる。
【0033】
この40ミリ秒という期間は、航法メッセージデータのビット長の2倍に相当する期間である。周期40ミリ秒を周波数に換算すると、「f=1/T=1/(40×10−3)=25Hz」である。時系列の相関値に含まれるこの25Hzの周波数成分がパワー値のピークとして現れるのである。本実施形態では、この25Hzの周波数のことを「特定周波数」と定義する。
【0034】
また、図1(B)を見ると、75Hzや125Hz、175Hzといった高次の周波数にも、特定周波数(25Hz)ほど大きなピークではないものの、微小のピークが現れていることがわかる。相関値の波形が対称波形であることにより、基本周波数である特定周波数の奇数倍の周波数、すなわち奇数次高調波周波数にパワー値のピークが現れるのである。
【0035】
特定周波数におけるパワー値のピークは、そもそも航法メッセージデータのビット反転タイミングにおいてCAコードの極性が反転すること、ひいては相関値の符号が変化すること、に起因している。例えば、ビット反転タイミングを跨がないように、相関値の積算時間をビット長の20ミリ秒未満にして周波数解析を行った場合には、周波数ゼロのみにピークが生じ、特定周波数にはピークは生じない。すなわち、相関値の符号変化が無ければ、特定周波数におけるパワー値のピークも生じないのである。これを逆に考えれば、特定周波数のピークを消失させることができれば、相関値の符号の変化を無視できるようになり、ひいては航法メッセージデータのビット反転の影響を無効化できる。
【0036】
そこで、本実施形態では、図1(C)に示すように、特定周波数及びその高調波(特定周波数の奇数倍の周波数)におけるパワー値を周波数ゼロ(0Hz)におけるパワー値に加算するとともに、特定周波数及びその高調波におけるパワー値を0にする処理を行う。このような処理を行った後、逆周波数解析を行って時系列の相関値を再構成する。
【0037】
すると、図1(D)に示すような、符号変化の無い時系列の相関値が得られる。符号変化の無い相関値を積算すれば、相関値同士が相殺し合って積算相関値が小さくなることもない。従って、上記の相関処理を行うことで、相関積算時間を航法メッセージデータのビット長である20ミリ秒よりも長く設定することができ、任意の相関積算時間で相関値を積算することが可能となる。
【0038】
なお、図1(C)においては、特定周波数及びその高調波におけるパワー値を周波数ゼロ(0Hz)におけるパワー値に加算するように説明したが、特定周波数の高調波におけるパワー値を加算せず、特定周波数におけるパワー値のみを加算することとしてもよい。高調波のパワー値は、総じて特定周波数のパワー値よりも低いためである。
【0039】
2.実施例
次に、衛星信号捕捉装置及び位置算出装置を備えた電子機器の一種である携帯型電話機に本発明を適用した場合の実施例について説明する。なお、本発明を適用可能な実施例が以下説明する実施例に限定されるわけではないことは勿論である。
【0040】
図3は、各実施例に共通する携帯型電話機1の機能構成の一例を示すブロック図である。携帯型電話機1は、GPSアンテナ5と、GPS受信部10と、ホストCPU(Central Processing Unit)30と、操作部40と、表示部50と、携帯電話用アンテナ60と、携帯電話用無線通信回路部70と、記憶部80とを備えて構成される。
【0041】
GPSアンテナ5は、GPS衛星から発信されているGPS衛星信号を含むRF(Radio Frequency)信号を受信するアンテナであり、受信信号をGPS受信部10に出力する。
【0042】
GPS受信部10は、GPSアンテナ5から出力された信号に基づいて携帯型電話機1の位置を計測する位置算出回路或いは位置算出装置であり、いわゆるGPS受信装置に相当する機能ブロックである。GPS受信部10は、RF受信回路部11と、ベースバンド処理回路部20とを備えて構成される。なお、RF受信回路部11と、ベースバンド処理回路部20とは、それぞれ別のLSI(Large Scale Integration)として製造することも、1チップとして製造することも可能である。
【0043】
RF受信回路部11は、RF信号の受信回路である。回路構成としては、例えば、GPSアンテナ5から出力されたRF信号をA/D変換器でデジタル信号に変換し、デジタル信号を処理する受信回路を構成してもよい。また、GPSアンテナ5から出力されたRF信号をアナログ信号のまま信号処理し、最終的にA/D変換することでデジタル信号をベースバンド処理回路部20に出力する構成としてもよい。
【0044】
後者の場合には、例えば、次のようにRF受信回路部11を構成することができる。すなわち、所定の発振信号を分周或いは逓倍することで、RF信号乗算用の発振信号を生成する。そして、生成した発振信号を、GPSアンテナ5から出力されたRF信号に乗算することで、RF信号を中間周波数の信号(以下、「IF(Intermediate Frequency)信号」と称す。)にダウンコンバートし、IF信号を増幅等した後、A/D変換器でデジタル信号に変換して、ベースバンド処理回路部20に出力する。
【0045】
ベースバンド処理回路部20は、RF受信回路部11から出力された受信信号に対して相関処理等を行ってGPS衛星信号を捕捉し、GPS衛星信号から取り出した衛星軌道データや時刻データ等に基づいて、所定の位置算出計算を行って携帯型電話機1の位置(位置座標)を算出する回路部である。ベースバンド処理回路部20は、受信信号の中からGPS衛星信号を捕捉する衛星信号捕捉装置としても機能する。
【0046】
図4は、ベースバンド処理回路部20の回路構成の一例を示す図であり、本実施形態に係わる回路ブロックを中心に記載した図である。ベースバンド処理回路部20は、例えば、乗算器21と、キャリア除去用信号発生部22と、相関器23と、レプリカコード発生部24と、処理部25と、記憶部27とを備えて構成される。
【0047】
乗算器21は、キャリア除去用信号発生部22により生成・発生されたキャリア除去用信号を受信信号に乗算することで受信信号から搬送波(キャリア)を除去し、相関器23に出力する乗算器である。
【0048】
キャリア除去用信号発生部22は、GPS衛星信号のキャリア信号と同一の周波数の信号であるキャリア除去用信号を生成する回路であり、例えばキャリアNCO(Numerical Controlled Oscillator)等の発振器を有して構成される。RF受信回路部11から出力される信号がIF信号である場合には、IF周波数をキャリア周波数として信号を生成する。何れにしろ、RF受信回路部11から出力される信号の周波数と同一の周波数のキャリア除去用信号を生成するための回路である。
【0049】
相関器23は、レプリカコード発生部24により生成されたレプリカコードの発生信号と、乗算器21から出力されたキャリアが除去された受信信号との相関演算を行うコリレーターであり、相関演算部に相当する。
【0050】
レプリカコード発生部24は、GPS衛星信号の拡散符号であるCAコードのレプリカコードを生成する回路部であり、例えばコードNCO等の発振器を有して構成される。レプリカコード発生部24は、処理部25から指示されたPRN番号(衛星番号)に応じたレプリカコードを、指示された位相に応じて出力位相(時間)を調整して生成し、相関器23に出力する。
【0051】
相関器23は、受信信号のIQ成分それぞれに対して、レプリカコード発生部24から入力したレプリカコードとの相関処理を行う。I成分は、受信信号の同相成分(実部)を示し、Q成分は受信信号の直交成分(虚部)を示す。
【0052】
なお、受信信号のIQ成分の分離(IQ分離)を行う回路ブロックについては図示を省略するが、どのように回路ブロックを構成してもよい。例えば、RF受信回路部11において受信信号をIF信号にダウンコンバートする際に、位相が90度異なる局部発振信号を受信信号に乗算することでIQ分離を行うこととしてもよい。
【0053】
処理部25は、ベースバンド処理回路部20の各機能部を統括的に制御する制御装置であり、例えばCPU等のプロセッサーを有して構成される。処理部25は、相関器23から出力された相関演算の結果を周波数解析する解析部として機能する他、周波数解析結果のうち、特定周波数や高調波周波数におけるパワー値を抽出する抽出部や、受信信号からGPS衛星信号を捕捉する捕捉部として機能する。主要な機能部として、処理部25は、衛星信号捕捉部251と、位置算出部253とを有する。
【0054】
衛星信号捕捉部251は、相関器23から出力される相関値を相関積算時間に亘って積算する処理を行い、積算された相関値(積算相関値)に基づいてGPS衛星信号を捕捉する。
【0055】
位置算出部253は、衛星信号捕捉部251により捕捉されたGPS衛星信号を利用して、公知の位置算出計算を行って携帯型電話機1の位置を算出する算出部であり、算出した位置をホストCPU30に出力する。
【0056】
記憶部27は、ROM(Read Only Memory)やフラッシュROM、RAM(Random Access Memory)等の記憶装置(メモリー)によって構成され、ベースバンド処理回路部20のシステムプログラムや、衛星信号捕捉機能、位置算出機能等の各種機能を実現するための各種プログラム、データ等を記憶している。また、各種処理の処理中データ、処理結果などを一時的に記憶するワークエリアを有する。
【0057】
記憶部27には、例えば図4に示すように、プログラムとして、処理部25により読み出され、ベースバンド処理(図5参照)として実行されるベースバンド処理プログラム271が記憶されている。ベースバンド処理プログラム271は、各種の相関処理(図6〜図9、図16及び図17参照)として実行される相関処理プログラム2711をサブルーチンとして有している。
【0058】
また、一時的な格納データとして、例えば、衛星軌道データ272と、相関積算時間273と、蓄積時間274と、相関値データ275と、増大相関値データ276と、積算相関値データ277と、特定周波数278と、高調波周波数279とが記憶部27に記憶される。
【0059】
ベースバンド処理とは、処理部25が、捕捉対象とするGPS衛星(以下、「捕捉対象衛星」と称す。)それぞれについて、各種の相関処理を行ってGPS衛星信号を捕捉する処理を行い、捕捉したGPS衛星信号を利用した位置算出計算を行って携帯型電話機1の位置を算出する処理である。
【0060】
また、相関処理とは、処理部25が上述した原理に従って、時系列の相関値に対する周波数解析を行い、特定周波数や高調波周波数におけるパワー値を周波数ゼロにおけるパワー値と見なして、逆周波数解析により時系列の相関値を再構成する処理である。そして、再構成した時系列の相関値を積算することで積算相関値を取得する。これらの処理については、フローチャートを用いて詳細に後述する。
【0061】
衛星軌道データ272は、全てのGPS衛星の概略の衛星軌道情報を記憶したアルマナックや、各GPS衛星それぞれについて詳細な衛星軌道情報を記憶したエフェメリス等のデータである。衛星軌道データ272は、GPS衛星から受信したGPS衛星信号をデコードすることで取得する他、例えば携帯型電話機1の基地局やアシストサーバーからアシストデータとして取得する。
【0062】
相関積算時間273は、蓄積時間274ずつ蓄積された相関値を積算する時間であり、受信信号の信号強度や受信環境等の情報に基づいて可変に設定される。また、蓄積時間274は、相関器23から出力された相関値を蓄積する時間であり、例えば相関積算時間273の1/m倍(m>1)の時間として設定される。
【0063】
相関値データ275は、相関器23から出力された相関値が蓄積時間274分蓄積されたデータである。また、増大相関値データ276は、蓄積時間分の相関値をn倍(n>1)することで得られる増大相関値のデータである。本実施例では、周波数解析で得られるパワースペクトル密度を増大させるため、増大相関値データ276に対する周波数解析を行う。
【0064】
積算相関値データ277は、逆周波数解析によって再構成された相関値を積算することで得られる積算相関値のデータである。
【0065】
特定周波数278は、航法メッセージデータのビット長に応じて定められる周波数である。本実施例では、原理で説明したように、ビット長の2倍に相当する相関値の周期40ミリ秒を周波数に換算した25Hzを特定周波数とする。また、高調波周波数279は、特定周波数278の奇数倍の高調波の周波数である。
【0066】
図3の機能ブロックに戻って、ホストCPU30は、記憶部80に記憶されているシステムプログラム等の各種プログラムに従って携帯型電話機1の各部を統括的に制御するプロセッサーである。ホストCPU30は、ベースバンド処理回路部20から出力された位置座標をもとに、表示部50に現在位置を指し示した地図を表示させたり、その位置座標を各種のアプリケーション処理に利用する。
【0067】
操作部40は、例えばタッチパネルやボタンスイッチ等により構成される入力装置であり、押下されたキーやボタンの信号をホストCPU30に出力する。この操作部40の操作により、通話要求やメール送受信要求、位置算出要求等の各種指示入力がなされる。
【0068】
表示部50は、LCD(Liquid Crystal Display)等により構成され、ホストCPU30から入力される表示信号に基づいた各種表示を行う表示装置である。表示部50には、位置表示画面や時刻情報等が表示される。
【0069】
携帯電話用アンテナ60は、携帯型電話機1の通信サービス事業者が設置した無線基地局との間で携帯電話用無線信号の送受信を行うアンテナである。
【0070】
携帯電話用無線通信回路部70は、RF変換回路、ベースバンド処理回路等によって構成される携帯電話の通信回路部であり、携帯電話用無線信号の変調・復調等を行うことで、通話やメールの送受信等を実現する。
【0071】
記憶部80は、ホストCPU30が携帯型電話機1を制御するためのシステムプログラムや、各種アプリケーション処理を実行するための各種プログラムやデータ等を記憶する記憶装置である。
【0072】
2−1.第1実施例
第1実施例は、周波数解析の一種であるフーリエ変換を利用した相関処理を行い、再構成された相関値を積算することで得られる積算相関値に基づいてGPS衛星信号を捕捉する実施例である。
【0073】
(1)処理の流れ
図5は、記憶部27に記憶されているベースバンド処理プログラム271が処理部25により読み出されることで、ベースバンド処理回路部20において実行されるベースバンド処理の流れを示すフローチャートである。
【0074】
最初に、衛星信号捕捉部251は、捕捉対象衛星判定処理を行う(ステップA1)。具体的には、不図示の時計部で計時されている現在時刻において、所与の基準位置の天空に位置するGPS衛星を、記憶部27に記憶されたアルマナックやエフェメリス等の衛星軌道データ272を用いて判定して、捕捉対象衛星に決定する。基準位置は、例えば、電源投入後の初回の位置算出の場合は、いわゆるサーバーアシストによってアシストサーバーから取得した位置とし、2回目以降の位置算出の場合は、最新の算出位置とする等の方法で設定できる。
【0075】
次いで、衛星信号捕捉部251は、ステップA1で判定した各捕捉対象衛星それぞれについて、ループAの処理を実行する(ステップA3〜A17)。ループAの処理では、衛星信号捕捉部251は、当該捕捉対象衛星について、相関積算時間273及び蓄積時間274を設定する(ステップA5)。
【0076】
相関積算時間の設定は、種々の方法により実現することができる。例えば、当該捕捉対象衛星からの受信信号の信号強度に基づいて設定することとしてもよい。信号強度が弱いほど、より長い時間に亘って相関値を積算しなければ、相関値のピークの検出が困難である。そのため、信号強度が弱くなるほど相関積算時間を長くするように相関積算時間を設定することが適切である。
【0077】
また、GPS衛星信号の受信環境を判定し、判定した受信環境に基づいて相関積算時間を決定してもよい。例えば、受信環境が「屋内環境(インドア環境)」である場合は、相関積算時間を長めの「1000ミリ秒」に設定し、受信環境が「屋外環境(アウトドア環境)」である場合は、相関積算時間を少し短い「200ミリ秒」に設定するなどが考えられる。
【0078】
また、蓄積時間は、相関積算時間が蓄積時間の整数倍の時間となるように設定する。すなわち、相関積算時間の1/m倍(m>1)の時間を蓄積時間として設定する。「m」の値は適宜設定することができる。例えば、相関積算時間を「1000ミリ秒」に設定し、「m=25」とした場合は、蓄積時間として「40ミリ秒」を設定することとする。
【0079】
次いで、衛星信号捕捉部251は、レプリカコードの初期位相を設定する(ステップA7)。そして、当該捕捉対象衛星のPRN番号と、レプリカコードの位相とを指示する指示信号を、レプリカコード発生部24に出力する(ステップA9)。そして、衛星信号捕捉部251は、記憶部27に記憶されている相関処理プログラム2711を読み出して実行することで、相関処理を行う(ステップA11)。
【0080】
図6は、相関処理の一例である第1相関処理の流れを示すフローチャートである。
先ず、衛星信号捕捉部251は、特定周波数278を設定して記憶部27に記憶させる(ステップB1)。原理で説明したように、特定周波数278は、航法メッセージデータのビット長の2倍の期間である「40ミリ秒」を1周期として、この1周期に相当する周波数である「25Hz」を設定する。
【0081】
その後、衛星信号捕捉部251は、相関器23から出力された相関値をステップA5で設定した蓄積時間分蓄積したデータを、相関値データ275として記憶部27に記憶させる(ステップB3)。そして、衛星信号捕捉部251は、蓄積時間分の相関値をn倍(n>1)することで増大相関値を算出し、増大相関値データ276として記憶部27に記憶させる(ステップB5)。
【0082】
次いで、衛星信号捕捉部251は、増大相関値データ276に対して高速フーリエ変換(FFT(Fast Fourier Transform))処理を行う(ステップB7)。なお、高速フーリエ変換に係る処理は従来公知であるため、詳細な説明は省略する。
【0083】
FFT処理を行って周波数領域におけるパワースペクトルを求めたら、衛星信号捕捉部251は、ステップB1で設定した特定周波数におけるパワー値を抽出して、周波数ゼロ(0Hz)におけるパワー値に加算する(ステップB9)。また、衛星信号捕捉部251は、特定周波数278におけるパワー値を「0」にする(ステップB11)。
【0084】
次いで、衛星信号捕捉部251は、逆高速フーリエ変換処理(IFFT処理)を行って、相関値を再構成する(ステップB13)。なお、逆高速フーリエ変換に係る処理についても従来公知であるため、詳細な説明は省略する。
【0085】
逆FFT処理を行って相関値を再構成したら、衛星信号捕捉部251は、再構成された蓄積時間分の相関値を積算し、記憶部27の積算相関値データ277を更新する(ステップB15)。すなわち、蓄積時間分の再構成された相関値を積算して最新の積算相関値に加算する。
【0086】
次いで、衛星信号捕捉部251は、ステップA5で設定した相関積算時間273が経過したか否かを判定し(ステップB17)、まだ経過していないと判定した場合は(ステップB17;No)、ステップB3に戻る。また、相関積算時間が経過したと判定した場合は(ステップB17;Yes)、第1相関処理を終了する。
【0087】
図5のベースバンド処理に戻って、相関処理を行った後、衛星信号捕捉部251は、記憶部27の積算相関値データ277に対するピーク検出を行い(ステップA13)、ピークが検出されなかったと判定した場合は(ステップA13;No)、レプリカコードの位相を変更して(ステップA15)、ステップA9に戻る。
【0088】
また、ピークが検出されたと判定した場合は(ステップA13;Yes)、衛星信号捕捉部251は、次の捕捉対象衛星へと処理を移行する。そして、全ての捕捉対象衛星についてステップA5〜A15の処理を行った後、ループAの処理を終了する(ステップA17)。
【0089】
その後、位置算出部253は、各捕捉対象衛星について捕捉されたGPS衛星信号を利用した位置算出計算を実行する(ステップA19)。位置算出計算は、携帯型電話機1と各捕捉衛星間の擬似距離を利用して、例えば最小二乗法やカルマンフィルターを用いた公知の収束演算を行うことで実現することができる。
【0090】
擬似距離は、次のようにして算出することができる。すなわち、衛星軌道データ272から求められる捕捉衛星の衛星位置と、携帯型電話機1の最新の算出位置とを用いて、擬似距離の整数部分を算出する。また、ステップA13で検出された相関値のピークに相当するレプリカコードの位相(コード位相)を用いて、擬似距離の端数部分を算出する。このようにして求めた整数部分と端数部分とを合算することで、擬似距離を算出することができる。
【0091】
次いで、位置算出部253は、算出した位置(位置座標)をホストCPU30に出力する(ステップA21)。そして、処理部25は、処理を終了するか否かを判定し(ステップA23)、まだ終了しないと判定した場合は(ステップA23;No)、ステップA1に戻る。また、処理を終了すると判定した場合は(ステップA23;Yes)、ベースバンド処理を終了する。
【0092】
(2)実験結果
図10〜図15を参照して、GPS衛星信号を捕捉した場合の実験結果について説明する。図10〜図12は、従来の信号捕捉方法に従って、GPS衛星信号を捕捉した場合の実験結果の一例を示す図である。周波数方向と位相方向とのそれぞれについて、40ミリ秒分の相関値を1秒間積算して積算相関値を求め、そのピークを検出する実験を行った。
【0093】
図10は、位相方向及び周波数方向の積算相関値を3次元的にプロットしたグラフである。図10において、右奥行き方向が、受信CAコードの位相とレプリカコードの位相との位相差を示しており、左奥行き方向が、受信信号の周波数とキャリア除去用信号の周波数との周波数差を示している。また、縦軸が積算相関値を示している。図10のグラフのうち、周波数方向の相関処理結果を抜き出したグラフが図11であり、位相方向の相関処理結果を抜き出したグラフが図12である。
【0094】
図12を見ると、位相方向の相関処理結果については、位相差「0」の部分に積算相関値のピークが現れており、正しい結果が得られていることがわかる。しかし、図11を見ると、周波数方向の相関処理結果については、周波数差「0Hz」の部分に積算相関値のピークが現れておらず、「0Hz」から左右方向それぞれに少し離れた周波数差においてピークが現れていることがわかる。このピークが現れた周波数差を調べたところ、特定周波数である「±25Hz」に相当する周波数差であることがわかった。周波数差「0Hz」にピークが現れていないことから、GPS衛星信号の捕捉に失敗したことを意味する。
【0095】
図13〜図15は、第1実施例の信号捕捉方法に従って、GPS衛星信号を捕捉した場合の実験結果の一例を示す図である。周波数方向と位相方向とのそれぞれについて、蓄積時間を「40ミリ秒」、相関積算時間を「1000ミリ秒」として、上述した第1相関処理を行って積算相関値を求め、そのピークを検出する実験を行った。
【0096】
図13は、位相方向及び周波数方向の積算相関値を3次元的にプロットしたグラフである。また、図13のグラフのうち、周波数方向の相関積算結果を抜き出したグラフが図14であり、位相方向の相関積算結果を抜き出したグラフが図15である。グラフの見方は、図10〜図12とそれぞれ同じである。
【0097】
図15を見ると、位相方向の相関処理結果について、位相差「0」の部分に積算相関値のピークが現れており、正しい結果が得られていることがわかる。また、図14を見ると、周波数方向の相関処理結果についても、周波数差「0Hz」の部分に積算相関値のピークが現れていることがわかる。位相及び周波数がぴったり一致しているため、GPS衛星信号の捕捉に成功したことを意味する。
【0098】
(3)作用効果
ベースバンド処理回路部20において、GPS衛星から発信されたGPS衛星信号を受信した受信信号に対して、相関器23において相関演算が行われる。そして、GPS衛星信号に搬送されている航法メッセージデータのビット長(20ミリ秒)以上の所定の蓄積時間に亘る相関演算結果に対して、フーリエ変換を用いた周波数解析が処理部25により行われる。そして、航法メッセージデータのビット長に応じた特定周波数(25Hz)におけるパワー値が、周波数ゼロにおけるパワー値に加算され、特定周波数におけるパワー値が「0」にされた後、逆フーリエ変換によって相関値が再構成される。そして、再構成された相関値が積算され、当該積算相関値に基づいてGPS衛星信号が捕捉される。
【0099】
航法メッセージデータのビット値が変化(反転)すると、CAコードの極性も反転するため、レプリカCAコードとの相関演算を行った場合に、相関値の時系列データには符号変化が現れる。それゆえ、相関値の時系列データに対してフーリエ変換を行うと、原理で説明したように、「25Hz」の周波数(特定周波数)にパワー値のピークが現れる。
【0100】
この特定周波数のパワー値のピークは、航法メッセージデータのビット値の変化に起因するものである。そのため、特定周波数におけるパワー値を抽出して周波数ゼロにおけるパワー値に移動させる処理を行う。かかる処理を行った後、逆フーリエ変換によって相関値を再構成することで、符号の揃った相関値の時系列データを得ることができる。符号の揃った相関値を積算していけば、符号の異なる相関値同士が相殺し合うことはない。従って、航法メッセージデータのビット長(20ミリ秒)よりも長い相関積算時間に亘る相関処理を実現することができる。
【0101】
また、本実施例では、相関値を蓄積的に記憶させる蓄積時間を、相関積算時間の1/m倍の時間として設定する。そして、蓄積時間分蓄積された相関値をn倍することで増大相関値を算出し、この増大相関値の時系列データに対してフーリエ変換を行うことで、パワースペクトル密度を増大させ、周波数解析の精度を高めることができる。
【0102】
上述した実験結果からわかるように、GPS衛星信号の捕捉に失敗した場合は、特定周波数に相当する周波数差において積算相関値のピークが現れ、捕捉に成功した場合は、周波数差ゼロにおいて積算相関値のピークが現れる。このことから考えると、特定周波数におけるパワー値を周波数ゼロにおけるパワー値に移動させるということは、GPS衛星信号の受信周波数を検出することであるとも言える。
【0103】
(4)他の相関処理
図6を用いて説明した第1相関処理は、相関処理の一例であり、これに限られない。他の相関処理の例について、フローチャートを用いて説明する。以下説明するフローチャートにおいて、第1相関処理と同一のステップについては同一の符号を付して説明を省略し、第1相関処理とは異なるステップを中心に説明する。
【0104】
図7は、他の相関処理の一例である第2相関処理の流れを示すフローチャートである。第2相関処理では、ステップB1の後に、衛星信号捕捉部251は、高調波周波数279を設定する(ステップC2)。高調波周波数279は、例えば、ステップB1で設定した特定周波数278の奇数倍の周波数を設定する。
【0105】
そして、衛星信号捕捉部251は、ステップB7においてFFT処理を行った後、特定周波数及び高調波周波数におけるパワー値を抽出して、周波数ゼロにおけるパワー値に加算する(ステップC9)。また、特定周波数及び高調波周波数におけるパワー値を「0」にする(ステップC11)。以降の処理は、第1相関処理と同様である。
【0106】
図8は、他の相関処理の一例である第3相関処理の流れを示すフローチャートである。第3相関処理では、衛星信号捕捉部251は、ステップB9において特定周波数におけるパワー値を周波数ゼロにおけるパワー値に加算した後、逆FFT処理を行わずに、周波数ゼロにおけるパワー値を相関処理結果として更新する(ステップD13)。
【0107】
以降の処理では、衛星信号捕捉部251は、周波数ゼロにおけるパワー値を相関処理結果とみなして、GPS衛星信号の捕捉を行う。なお、第3相関処理では、周波数ゼロにおけるパワー値以外のパワー値は不要であるため、第1相関処理の特定周波数におけるパワー値を「0」にするステップ(図6のステップB11)は省略している。
【0108】
このように、周波数ゼロにおけるパワー値を相関処理結果とみなして処理を行うことができる根拠について説明する。計算機(コンピューター)を用いてフーリエ変換を行う際には、一般に離散フーリエ変換が用いられる。相関値に対する離散フーリエ変換は、以下の式(1)で定式化される。
【数1】
【0109】
式(1)において、「xk」は相関値を示しており、添え字の「k」はサンプリングされた相関値の番号を示している。また、「fj」は周波数を表しており、添え字の「j=0,1,2,・・・,n−1」はサンプリングされた周波数の番号を示している。
【0110】
この場合、j番目の周波数についてのパワー値「Powerj」は、次式(2)で与えられる。
【数2】
【0111】
また、周波数から相関値への逆フーリエ変換は、次式(3)で定式化される。
【数3】
【0112】
第3相関処理のステップB9で、特定周波数におけるパワー値を周波数ゼロにおけるパワー値に加算することで得られる周波数ゼロにおけるパワー値(以下、「合算周波数ゼロパワー値」と称す。)を「Power’0」と表記した場合、直流成分にのみ着目して逆フーリエ変換を行うと、次式(4)が導出される。
【数4】
【0113】
但し、式(4)を導出する際に、式(2)より次式(5)が成立することを用いた。
【数5】
【0114】
蓄積時間を「t」とした場合、逆フーリエ変換で再構成された相関値「xk」を蓄積時間「t」分積算することで、次式(6)のような積算相関値「X」が得られる。
【数6】
【0115】
式(6)を見ると、蓄積時間分の積算相関値「X」は、蓄積時間「t」と、合算周波数ゼロパワー値「Power’0」と、サンプリング総数「n」とに依存することがわかる。ここで、蓄積時間「t」及びサンプリング総数「n」は定数である。従って、合算周波数ゼロパワー値「Power’0」を定数倍するだけで、積算相関値「X」が得られる。このことから、合算周波数ゼロパワー値は再構成された相関値と等価であると言える。ゆえに、逆フーリエ変換を行わずとも、合算周波数ゼロパワー値そのものを用いてGPS衛星信号を捕捉することができる。
【0116】
図9は、他の相関処理の一例である第4相関処理の流れを示すフローチャートである。第4相関処理では、衛星信号捕捉部251は、ステップB7においてFFT処理を行った後、周波数ゼロにおけるパワー値及び特定周波数におけるパワー値を算出する(ステップE8)。そして、算出したパワー値の大きさを比較する(ステップE9)。
【0117】
特定周波数におけるパワー値の方が大きい場合は(ステップE9;特定周波数におけるパワー値)、衛星信号捕捉部251は、ステップB9及びB11の処理を行った後、逆FFT処理を行う(ステップB13)。一方、周波数ゼロにおけるパワー値の方が大きい場合は(ステップE9;周波数ゼロにおけるパワー値)、そのまま逆FFT処理を行う。
【0118】
第4相関処理は、蓄積時間内に、航法メッセージデータのビット反転が有ったか無かったか、また、有った場合の特定周波数におけるパワー値の相対的な大きさによって処理を変更するものである。
【0119】
すなわち、特定周波数におけるパワー値が周波数ゼロにおけるパワー値よりも大きければ、蓄積時間内にビット反転が有り、特定周波数のパワー値が相対的に大きいと判断する。この場合には、特定周波数のパワー値を周波数ゼロのパワー値に加算して処理を続行する。一方、周波数ゼロにおけるパワー値が特定周波数におけるパワー値よりも大きければ、特定周波数のパワー値が相対的に大きくない、或いは、ビット反転が起きなかったと判断し、パワー値の移動を行わずに、処理を続行する。
【0120】
2−2.第2実施例
第2実施例は、周波数解析の一種であるウェーブレット変換を利用した相関処理を行い、再構成された相関値を積算することで得られる積算相関値に基づいてGPS衛星信号を捕捉する実施例である。
【0121】
(1)処理の流れ
図16は、ウェーブレット変換を利用した相関処理の一例である第5相関処理の流れを示すフローチャートである。
先ず、衛星信号捕捉部251は、特定周波数278を設定し、記憶部27に記憶させる(ステップF1)。特定周波数278は、原理で説明したように「25Hz」を設定する。
【0122】
次いで、衛星信号捕捉部251は、相関器23から出力された相関値を蓄積時間分蓄積し、相関値データ275として記憶部27に記憶させる(ステップF3)。そして、衛星信号捕捉部251は、蓄積時間分の相関値をn倍することで増大相関値を算出し、増大相関値データ276として記憶部27に記憶させる(ステップF5)。
【0123】
その後、衛星信号捕捉部251は、ステップF1で設定した特定周波数を擬似周波数として、次式(7)に従ってウェーブレットスケール「a」を算出する(ステップF7)。
【数7】
【0124】
式(7)において、「Fa」及び「Fc」は、それぞれ擬似周波数及びウェーブレット関数の中心周波数を示している。また、「a」はウェーブレットスケールを示しており、「dT」は入力信号のサンプリング周期を示している。
【0125】
次いで、衛星信号捕捉部251は、ステップF7で算出したウェーブレットスケール「a」を用いて、次式(8)に従って、特定周波数に相当する分解レベル「J」(以下、「特定周波数分解レベル」と称す。)を判定する(ステップF9)。
【数8】
【0126】
次いで、衛星信号捕捉部251は、増大相関値データ276に対するウェーブレット変換処理を行う(ステップF13)。ウェーブレット変換は、一種の線形フィルタリングであり、入力信号(ここでは増大相関値の時系列データ)を、ハイパスフィルターに相当するウェーブレットフィルター「h」と、ローパスフィルターに相当するスケーリングフィルター「g」との2種類のフィルターを用いて、高周波の詳細成分と低周波の近似成分とに分解する。そして、所定の分解レベルに到達するまで近似成分を繰り返し分解する処理を行い、多重の解像度を有するウェーブレット成分を用いて、入力信号を表現する。
【0127】
具体的には、時系列の増大相関値を「x(t)」とした場合、分解するレベル数を「J」として、分解レベル「0」の近似成分「x0(t)」を分解レベル「J−1」まで分解すると、次式(9)が得られる。
【数9】
【0128】
式(9)において、「xj(t)」は分解レベル「j」の近似成分を示しており、「gj(t)」は分解レベル「j」の詳細成分を示している。「xJ-1(t)」を1つ下の分解レベル「J−2」の式に代入して「xJ-2(t)」を求め、求めた「xJ-2(t)」を1つ下の分解レベル「J−3」の式に代入して「xJ-3(t)」を求めるといった処理を分解レベル「0」まで行うと、次式(10)によって時系列の増大相関値「x(t)」が表現される。
【数10】
【0129】
このように、解像度の異なるウェーブレット成分の和で入力信号を表現する手法は、多重解像度解析と呼ばれる。計算機(コンピューター)を用いてウェーブレット変換を実現する場合は、計算をより効率的に行うために、2の冪乗をベースにスケールパラメーター「a」を選択する離散ウェーブレット変換が用いられる。
【0130】
ウェーブレット変換処理を行った後、衛星信号捕捉部251は、特定周波数分解レベル「J」について、高周波詳細成分のエネルギー値を抽出して低周波近似成分のエネルギー値に加算する(ステップF15)。また、特定周波数分解レベル「J」における高周波詳細成分のエネルギー値を「0」にする(ステップF17)。低周波近似成分のエネルギー値は、近似成分係数(スケーリング係数)の2乗値で表され、高周波詳細成分のエネルギー値は、詳細成分係数(ウェーブレット係数)の2乗値で表される。
【0131】
なお、ウェーブレット変換では「エネルギー値」の概念が用いられることが一般的であるため、本実施例でも、エネルギー値の概念を用いた処理を行うものとして図示・説明する。しかし、エネルギー値とは言っても、周波数解析におけるパワー値の一種であることに変わりはなく、パワー値と同義である。
【0132】
離散ウェーブレット変換では、増大相関値「x(t)」が近似成分と詳細成分とに分解されることから、増大相関値「x(t)」のエネルギー値は、近似成分と詳細成分とに保存される。すなわち、次式(11)及び(12)のエネルギー保存の法則が成立する。
【数11】
【数12】
但し、「cA」は近似成分係数(スケーリング係数)を示し、「cD」は詳細成分係数(ウェーブレット係数)を示す。
【0133】
ステップF15及びF17では、特定周波数分解レベル「J」について、高周波詳細成分のエネルギー値を抽出して低周波近似成分のエネルギー値に加算した後に、高周波詳細成分のエネルギー値を「0」にする処理を行っている。エネルギー値の総量が変化しないため、本実施例の処理では、上記のエネルギー保存の法則は満たされる。
【0134】
その後、衛星信号捕捉部251は、逆ウェーブレット変換処理を行って、増大相関値を再構成する(ステップF19)。そして、衛星信号捕捉部251は、再構成された蓄積時間分の相関値を積算し、記憶部27の積算相関値データ277を更新する(ステップF21)。
【0135】
次いで、衛星信号捕捉部251は、相関積算時間が経過したか否かを判定し(ステップF23)、まだ経過していないと判定した場合は(ステップF23;No)、ステップF3に戻る。また、相関積算時間が経過したと判定した場合は(ステップF23;Yes)、第5相関処理を終了する。
【0136】
(2)実験結果
第2実施例の手法を用いてGPS衛星信号を捕捉した場合の実験結果について説明する。ここでは、受信信号の周波数及び受信CAコードの位相を既知として、受信CAコードとレプリカCAコードとの相関処理を行った結果を示す。
【0137】
図18は、1000ミリ秒(1秒)分の相関値を計測したグラフであり、上述した第5相関処理においてウェーブレット変換を行う前の生の相関値の時系列変化を示している。横軸は時間、縦軸は相関値を示している。この図を見ると、航法メッセージデータのビット値の変化によって受信CAコードの極性が反転したことにより、相関値の符号が短い周期で変化し、相関値「0」を中心として、正負の領域に大きく振動していることがわかる。この相関値を相関積算時間を1000ミリ秒として積算したところ、積算相関値は「0」になった。
【0138】
図19は、図18の相関値のデータに対して、上述した第5相関処理を行って信号を再構成した後の相関値の時系列変化を示すグラフである。この図を見ると、相関値の中心が正の領域にシフトし、相関値は概ね正の値に収まっていることがわかる。また、上下の振動に着目すると、部分的にパルス状の変化が認められるものの、全体としては小さな振幅で変動していることがわかる。この再構成された相関値を相関積算時間を1000ミリ秒として積算したところ、積算相関値は「680」と非常に大きな値となった。
【0139】
(3)他の相関処理
図16を用いて説明した第5相関処理は、ウェーブレット変換を利用した相関処理の一例であり、この処理方法に限定されるものではない。他の相関処理の例について、フローチャートを用いて説明する。以下説明するフローチャートにおいて、第5相関処理と同一のステップについては同一の符号を付して説明を省略し、第5相関処理とは異なるステップを中心に説明する。
【0140】
図17は、他の相関処理の一例である第6相関処理の流れを示すフローチャートである。第6相関処理では、衛星信号捕捉部251は、ステップF1において特定周波数278を設定した後、高調波周波数279を設定する(ステップG2)。高調波周波数は、特定周波数の奇数倍の周波数を設定する。
【0141】
衛星信号捕捉部251は、ステップF7で算出したウェーブレットスケール「a」を用いて、式(8)に従って、特定周波数に相当する分解レベル(特定周波数分解レベル)「J」を判定する(ステップF9)。また、高調波周波数に相当する分解レベル(以下、「高調波周波数分解レベル」と称す。)を判定する(ステップG11)。すなわち、特定周波数分解レベル「J」よりも低い分解レベルにおいて、特定周波数の奇数倍の周波数に相当する分解レベルを特定して高調波周波数分解レベルと判定する。
【0142】
ステップF13においてウェーブレット変換処理を行った後、衛星信号捕捉部251は、特定周波数分解レベル及び高調波周波数分解レベルについて、高周波詳細成分のエネルギー値を抽出して低周波近似成分のエネルギー値に加算する(ステップG15)。また、特定周波数分解レベル及び高調波周波数分解レベルにおける高周波詳細成分を「0」にする(ステップG17)。そして、衛星信号捕捉部251は、ステップF19へと処理を移行する。
【0143】
第6相関処理では、特定周波数の周波数成分ばかりでなく、高調波の周波数成分も考慮して相関値の再構成を行うため、より適確且つ迅速にGPS衛星信号を捕捉することが可能になる。
【0144】
なお、第1実施例の変形例で説明した第3相関処理と同様に、逆ウェーブレット変換を省略することとして、特定周波数分解レベルにおける低周波近似成分のエネルギー値を相関処理結果と見なしてGPS衛星信号を捕捉することとしてもよい。
【0145】
3.変形例
3−1.電子機器
上述した実施例では、電子機器の一種である携帯型電話機に本発明を適用した場合を例に挙げて説明したが、本発明を適用可能な電子機器はこれに限られるわけではない。例えば、カーナビゲーション装置や携帯型ナビゲーション装置、パソコン、PDA(Personal Digital Assistant)、腕時計といった他の電子機器についても同様に適用することが可能である。
【0146】
3−2.位置算出システム
また、上述した実施形態では、位置算出システムとしてGPSを例に挙げて説明したが、WAAS(Wide Area Augmentation System)、QZSS(Quasi Zenith Satellite System)、GLONASS(GLObal NAvigation Satellite System)、GALILEO等の他の衛星測位システムを利用した位置算出システムであってもよい。
【0147】
3−3.パワー値の抽出
上述した実施形態では、特定周波数におけるパワー値を抽出して周波数ゼロにおけるパワー値に加算する処理を行うものとして説明した。しかし、実際には、特定周波数の近傍の周波数にもパワー値が誤差成分として現れることがあり得る。そこで、特定周波数に一定の幅を持たせて処理を行うことにすれば好適である。
【0148】
例えば、特定周波数の±1Hzの範囲を特定周波数範囲とし、特定周波数範囲に含まれる全てのパワー値を抽出して、周波数ゼロにおけるパワー値に加算する。また、特定周波数範囲に含まれる全てのパワー値を「0」にする。そして、これらの処理を行った後に、逆周波数解析を行って相関値を再構成する。
【0149】
なお、特定周波数ばかりでなく、高調波周波数についても同様の処理を行うこととしてもよい。すなわち、高調波周波数に一定の幅(例えば、高調波周波数±1Hzの高調波周波数範囲)を持たせ、高調波周波数範囲に含まれるパワー値を抽出して周波数ゼロにおけるパワー値に加算する。また、高調波周波数範囲に含まれる全てのパワー値を「0」にする。そして、逆周波数解析を行う。
【0150】
3−4.増大相関値
上述した実施形態では、蓄積時間分の相関値をn倍して増大相関値を算出し、当該増大相関値の時系列データに対して周波数解析を行うこととして説明した。しかし、この処理を省略し、蓄積時間分の相関値データそのものに対して周波数解析を行うこととしてもよい。
【0151】
また、増大相関値データに対する周波数解析を行うのではなく、蓄積時間分の相関値が所定の増感時間分繰り返すデータ(増感相関値データ)に対する周波数解析を行うこととしてもよい。例えば、増感時間として、蓄積時間のk倍(k>1)の時間を設定する。そして、蓄積時間分の相関値が増感時間分繰り返すデータを生成して増感相関値データとし、当該増感相関値データに対する周波数解析を行ってパワースペクトルを求めるようにする。
【0152】
3−5.周波数解析
また、周波数解析は、フーリエ変換やウェーブレット変換に限られるわけではない。相関値の周波数成分をパワー値で表現可能であれば、他の周波数解析を用いた相関処理を行うことによっても、上述した実施形態と同様の効果を得ることができることは言うまでもない。
【符号の説明】
【0153】
1 携帯型電話機、 10 GPS受信部、 11 RF受信回路部、 20 ベースバンド処理回路部、 21 乗算器、 22 キャリア除去用信号発生部、 23 相関器、 24 レプリカコード発生部、 25 処理部、 27 記憶部、 30 ホストCPU、 40 操作部、 50 表示部、 60 携帯電話用アンテナ、 70 携帯電話用無線通信回路部、 80 記憶部
【技術分野】
【0001】
本発明は、信号捕捉方法及び信号捕捉装置に関する。
【背景技術】
【0002】
測位用信号を利用した測位システムとしては、GPS(Global Positioning System)が広く知られており、携帯型電話機やカーナビゲーション装置等に内蔵された位置算出装置に利用されている。GPSでは、複数のGPS衛星の位置や各GPS衛星から位置算出装置までの擬似距離等の情報に基づいて位置算出装置の位置座標と時計誤差とを求める位置算出計算を行う。
【0003】
GPS衛星から送出されるGPS衛星信号は、CA(Coarse and Acquisition)コードと呼ばれるGPS衛星毎に異なる拡散符号で変調されている。位置算出装置は、微弱な受信信号の中からGPS衛星信号を捕捉するために、受信信号と、CAコードのレプリカであるレプリカCAコードとの相関演算を行い、その相関値に基づいてGPS衛星信号を捕捉する。この場合、相関値のピークの検出を容易にするため、相関演算で取得された相関値を所定の積算時間に亘って積算する手法が用いられる。
【0004】
しかし、GPS衛星信号を拡散変調するCAコード自体が航法メッセージデータによって20ミリ秒毎にBPSK(Binary Phase Shift Keying)変調されているため、ビット長である20ミリ秒毎にCAコードの極性が反転し得る。従って、航法メッセージデータのビット値が変化するタイミングを跨いで相関値を積算する場合には、符号の異なる相関値を積算する可能性がある。この問題を解決するための技術として、例えば特許文献1に開示されているように、航法メッセージデータのビット値が変化するタイミングについてのアシストデータを利用して相関値を積算する技術が知られている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2001−349935号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1の技術によれば、相関積算時間を航法メッセージデータのビット長(20ミリ秒)よりも長く設定することができる。しかし、特許文献1の技術では、航法メッセージデータのビット値が変化するタイミングについてのアシストデータを外部から取得する必要があるため、通信費や通信時間の問題など、データ取得に関する制約や問題があった。特に、GPS衛星信号から発信されている航法メッセージデータが新たなデータに切り替わった後においては、アシストデータが更新されるのを待って、その新たなアシストデータを取得する必要が生じてしまう。
【0007】
本発明は上述した課題に鑑みて為されたものであり、その目的とするところは、航法メッセージデータのビット長よりも長い相関積算時間に亘る相関処理を可能にするための新たな手法を提案することにある。
【課題を解決するための手段】
【0008】
以上の課題を解決するための第1の形態は、測位用衛星から発信された衛星信号を受信した受信信号に対して相関演算を行うことと、前記衛星信号によって搬送されている航法メッセージデータのビット長以上の所定時間に亘る前記相関演算の結果を周波数解析することと、前記周波数解析した結果のうち、前記ビット長に応じて定められる特定周波数を少なくとも含む所定の周波数におけるパワー値を抽出することと、前記抽出したパワー値を用いて前記衛星信号を捕捉することと、を含む信号捕捉方法である。
【0009】
また、他の形態として、測位用衛星からの衛星信号を受信部が受信した受信信号に対して相関演算を行う相関演算部と、前記衛星信号によって搬送されている航法メッセージデータのビット長以上の所定時間に亘る前記相関演算の結果を周波数解析する解析部と、前記周波数解析した結果のうち、前記所定時間に応じて定められる特定周波数を少なくとも含む所定の周波数におけるパワー値を抽出する抽出部と、前記抽出したパワー値を用いて前記衛星信号を捕捉する捕捉部と、を備えた信号捕捉装置を構成してもよい。
【0010】
この第1の形態等によれば、測位用衛星から発信された衛星信号を受信した受信信号に対して相関演算を行う。そして、衛星信号によって搬送されている航法メッセージデータのビット長以上の所定時間に亘る相関演算の結果を周波数解析し、当該周波数解析の結果のうち、航法メッセージデータのビット長に応じて定められる特定周波数を少なくとも含む所定の周波数におけるパワー値を抽出する。そして、抽出したパワー値を用いて衛星信号を捕捉する。
【0011】
航法メッセージデータが搬送されている衛星信号に対して相関演算を行うと、符号変化の有る相関値の時系列データが得られる。それゆえ、相関値の時系列データに対する周波数解析を行うと、航法メッセージデータのビット長に応じて定められる特定の周波数においてパワー値のピークが現れるのが通常である。この特定周波数のピークは、航法メッセージデータのビット長に起因して生ずるものであり、ビット長以上の任意の時間に亘って相関処理を行った場合に現れるものである。そのため、特定周波数におけるパワー値を利用すれば、航法メッセージデータのビット値が変化し得るビット長よりも長い相関積算時間に亘る相関処理が可能となる。
【0012】
また、第2の形態として、第1の形態の信号捕捉方法であって、前記所定時間に亘る前記相関演算の結果をn倍(n>1)することを更に含み、前記周波数解析は、前記n倍した前記相関演算の結果に対して行うことである、信号捕捉方法を構成してもよい。
【0013】
この第2の形態によれば、所定時間に亘る相関演算の結果をn倍することで、相関演算の結果を増大させる。そして、n倍した相関演算の結果に対して周波数解析を行う。これにより、周波数解析で得られるパワースペクトル密度を増大させることができる。
【0014】
また、第3の形態として、第1又は第2の形態の信号捕捉方法であって、前記抽出することは、前記特定周波数と、前記特定周波数の高調波とにおける前記パワー値の抽出を行うことである、信号捕捉方法を構成してもよい。
【0015】
この第3の形態によれば、特定周波数と、特定周波数の高調波とにおけるパワー値の抽出を行う。相関演算結果に対する周波数解析を行うと、特定周波数の他に、特定周波数の高調波の周波数にもパワー値のピークが現れる。そのため、航法メッセージデータの変調周期に応じた周波数である特定周波数におけるパワー値の他に、その特定周波数の高調波におけるパワー値も併せて利用することで、より適確且つ迅速に衛星信号を捕捉することが可能になる。
【0016】
また、第4の形態として、第1〜第3の何れかの形態の信号捕捉方法であって、前記衛星信号を捕捉することは、前記抽出したパワー値を、周波数ゼロにおけるパワー値と見なして前記捕捉を行うことを含む、信号捕捉方法を構成してもよい。
【0017】
この第4の形態によれば、抽出したパワー値を、周波数ゼロにおけるパワー値と見なして衛星信号の捕捉を行う。抽出したパワー値を周波数ゼロにおけるパワー値と見なすということは、周波数解析によって、周波数ゼロにパワー値のピークが有ったという結果になったことを意味する。周波数ゼロにパワー値のピークが有ったということは、衛星信号の受信周波数の検出に成功したことに相当する。従って、この第4の形態により、信号捕捉の是非を容易に判定することができる。
【0018】
また、第5の形態として、第1〜第4の何れかの形態の信号捕捉方法であって、前記衛星信号を捕捉することは、逆周波数解析を行うことと、前記逆周波数解析の結果を用いて前記衛星信号を捕捉することと、を含む、信号捕捉方法を構成してもよい。
【0019】
また、第1〜第5の形態における周波数解析としては、第6の形態のように、フーリエ変換を用いた周波数解析を適用することとしてもよいし、第7の形態のように、ウェーブレット変換を用いた周波数解析を適用することとしてもよい。
【図面の簡単な説明】
【0020】
【図1】(A)は相関値の時間変化の一例。(B)は周波数解析結果の一例。(C)はパワー値に対する処理の説明図。(D)は再構成された相関値の時間変化の一例。
【図2】(A),(B)は相関値の直流成分。(C)は相関値の特定周波数成分。
【図3】携帯型電話機の機能構成の一例を示すブロック図。
【図4】ベースバンド処理回路部の回路構成の一例を示すブロック図。
【図5】ベースバンド処理の流れを示すフローチャート。
【図6】第1相関処理の流れを示すフローチャート。
【図7】第2相関処理の流れを示すフローチャート。
【図8】第3相関処理の流れを示すフローチャート。
【図9】第4相関処理の流れを示すフローチャート。
【図10】従来における位相方向及び周波数方向の相関処理結果の一例を示す図。
【図11】従来における周波数方向の相関処理結果の一例を示す図。
【図12】従来における位相方向の相関処理結果の一例を示す図。
【図13】第1実施例における位相方向及び周波数方向の相関処理結果の一例を示す図。
【図14】第1実施例における周波数方向の相関処理結果の一例を示す図。
【図15】第1実施例における位相方向の相関処理結果の一例を示す図。
【図16】第5相関処理の流れを示すフローチャート。
【図17】第6相関処理の流れを示すフローチャート。
【図18】従来における相関値の時系列変化の一例を示す図。
【図19】第2実施例における相関値の時系列変化の一例を示す図。
【発明を実施するための形態】
【0021】
1.原理
先ず、本実施形態における衛星信号捕捉の原理について説明する。
GPS衛星を利用した位置算出システムにおいて、測位用衛星の一種であるGPS衛星は、アルマナックやエフェメリス等の衛星軌道データを含む航法メッセージデータを、測位用衛星信号の一種であるGPS衛星信号に乗せて発信している。
【0022】
GPS衛星信号は、拡散符号の一種であるCA(Coarse and Acquisition)コードによって、スペクトラム拡散方式として知られるCDMA(Code Division Multiple Access)方式によって変調された1.57542[GHz]の通信信号である。CAコードは、コード長1023チップを1PNフレームとする繰返し周期1msの擬似ランダム雑音符号であり、衛星毎に異なる。
【0023】
GPS衛星がGPS衛星信号を発信する際の周波数(規定搬送波周波数)は、1.57542[GHz]と予め規定されているが、GPS衛星やGPS受信装置の移動により生ずるドップラーの影響等により、GPS受信装置がGPS衛星信号を受信する際の周波数は、必ずしも規定搬送波周波数とは一致しない。そのため、従来のGPS受信装置は、受信信号の中からGPS衛星信号を捕捉するための周波数方向の相関演算である周波数サーチを行ってGPS衛星信号を捕捉する。また、受信したGPS衛星信号(CAコード)の位相を特定するため、GPS受信装置は、位相方向の相関演算である位相サーチを行ってGPS衛星信号を捕捉する。
【0024】
しかし、特にインドア環境などの弱電界環境においては、真実の受信周波数及び真実のコード位相における相関値のレベルが低くなるため、ノイズとの見分けが難しくなる。この結果、真実の受信周波数及び真実のコード位相の検出、すなわち信号の捕捉が困難になる。そこで、このような受信環境下では、相関演算によって得られる相関値を所定の相関積算時間に亘って積算していき、積算された相関値の中からピークを検出することによって、GPS衛星信号を捕捉する手法が用いられる。
【0025】
ところが、GPS衛星信号は、CAコードによって拡散変調されているとともに、航法メッセージデータのビット値に応じてCAコード自体がBPSK(Binary Phase Shift Keying)変調されている。この航法メッセージデータのビット長は20ミリ秒であるため、20ミリ秒毎にビット値が変化(反転)する可能性がある。可能性があるというのは、ビット値が変化しない場合もあることを意味する。本実施形態では、航法メッセージデータのビット値が実際に変化するタイミングのことを「ビット反転タイミング」と称する。
【0026】
航法メッセージデータのビット値が変化することは、CAコードの極性が反転することを意味する。そのため、受信したCAコードと、レプリカコードとの相関演算を行うと、航法メッセージデータのビット長である20ミリ秒毎に符号の異なる相関値が算出され得る。そのため、航法メッセージデータのビット反転タイミングを跨いで相関値を積算してしまうと、符号の異なる相関値が相殺し合うことにより、相関値が微小な値(極端な場合は0)となってしまう問題がある。この問題を解決するため、本願発明者は、相関値に対する周波数解析を利用して、符号を揃えて相関値を積算する新しい手法を考案した。
【0027】
図1及び図2は、本実施形態における相関処理の流れを説明するための図である。
図1(A)に、相関値の時系列変化の一例を示す。説明を分かりやすくするため、相関値を「+1」と「−1」の正負の2値で表現している。また、ここでは、受信周波数の真値が既知であり、受信CAコードと位相がぴったり一致したレプリカコードを用いて相関演算を行って相関値を求めた場合について説明する。
【0028】
航法メッセージデータのビット値が「1」である場合のCAコードの極性を「正」とすると、受信CAコードにレプリカコードを乗算することで、相関値「+1」が得られる。一方、航法メッセージデータのビット値が「0」である場合のCAコードの極性を「負」とすると、受信CAコードにレプリカコードを乗算することで、相関値「−1」が得られる。
【0029】
図1(A)を見ると、航法メッセージデータのビット反転タイミングで、相関値の符号が入れ替わっていることがわかる。ビット値に応じて、前回のビット反転タイミングから20ミリ秒後にビット反転タイミングが到来した場合には、当該20ミリ秒後の時点で相関値の符号が逆転する。また、40ミリ秒後にビット反転タイミングが到来した場合には、当該40ミリ秒後の時点で相関値の符号が逆転する。
【0030】
図1(A)に示した時系列の相関値をビット長以上の所定時間に亘って蓄積し、周波数解析を行うと、例えば図1(B)に示すようなパワースペクトルが得られる。実施例で後述するが、周波数解析としては、例えばフーリエ変換やウェーブレット変換を適用することができる。図1(B)において、横軸は周波数、縦軸はパワー値を示しており、説明を分かり易くするため、ホワイトノイズについては図示を省略している。
【0031】
図1(B)に示すように、周波数ゼロ(0Hz)にパワー値のピークが現れる。これは、時系列の相関値の直流成分を示している。すなわち、図2(A)及び図2(B)に示すように、時系列の相関値のうちの符号変化の無い部分に相当する周波数成分(直流成分)が、0Hzのパワー値のピークとして現れるのである。
【0032】
しかし、図1(B)に示すように、25Hzの周波数にもパワー値の大きなピークが現れる。これは、航法メッセージデータのビット長が20ミリ秒であることに起因している。すなわち、図2(C)に示すように、航法メッセージデータのビット値が20ミリ秒毎に変化した場合、例えば最初の20ミリ秒が「1」、次の20ミリ秒が「−1」、その次の20ミリ秒が「1」といったように相関値が変化するため、相関値の周期は40ミリ秒になる。
【0033】
この40ミリ秒という期間は、航法メッセージデータのビット長の2倍に相当する期間である。周期40ミリ秒を周波数に換算すると、「f=1/T=1/(40×10−3)=25Hz」である。時系列の相関値に含まれるこの25Hzの周波数成分がパワー値のピークとして現れるのである。本実施形態では、この25Hzの周波数のことを「特定周波数」と定義する。
【0034】
また、図1(B)を見ると、75Hzや125Hz、175Hzといった高次の周波数にも、特定周波数(25Hz)ほど大きなピークではないものの、微小のピークが現れていることがわかる。相関値の波形が対称波形であることにより、基本周波数である特定周波数の奇数倍の周波数、すなわち奇数次高調波周波数にパワー値のピークが現れるのである。
【0035】
特定周波数におけるパワー値のピークは、そもそも航法メッセージデータのビット反転タイミングにおいてCAコードの極性が反転すること、ひいては相関値の符号が変化すること、に起因している。例えば、ビット反転タイミングを跨がないように、相関値の積算時間をビット長の20ミリ秒未満にして周波数解析を行った場合には、周波数ゼロのみにピークが生じ、特定周波数にはピークは生じない。すなわち、相関値の符号変化が無ければ、特定周波数におけるパワー値のピークも生じないのである。これを逆に考えれば、特定周波数のピークを消失させることができれば、相関値の符号の変化を無視できるようになり、ひいては航法メッセージデータのビット反転の影響を無効化できる。
【0036】
そこで、本実施形態では、図1(C)に示すように、特定周波数及びその高調波(特定周波数の奇数倍の周波数)におけるパワー値を周波数ゼロ(0Hz)におけるパワー値に加算するとともに、特定周波数及びその高調波におけるパワー値を0にする処理を行う。このような処理を行った後、逆周波数解析を行って時系列の相関値を再構成する。
【0037】
すると、図1(D)に示すような、符号変化の無い時系列の相関値が得られる。符号変化の無い相関値を積算すれば、相関値同士が相殺し合って積算相関値が小さくなることもない。従って、上記の相関処理を行うことで、相関積算時間を航法メッセージデータのビット長である20ミリ秒よりも長く設定することができ、任意の相関積算時間で相関値を積算することが可能となる。
【0038】
なお、図1(C)においては、特定周波数及びその高調波におけるパワー値を周波数ゼロ(0Hz)におけるパワー値に加算するように説明したが、特定周波数の高調波におけるパワー値を加算せず、特定周波数におけるパワー値のみを加算することとしてもよい。高調波のパワー値は、総じて特定周波数のパワー値よりも低いためである。
【0039】
2.実施例
次に、衛星信号捕捉装置及び位置算出装置を備えた電子機器の一種である携帯型電話機に本発明を適用した場合の実施例について説明する。なお、本発明を適用可能な実施例が以下説明する実施例に限定されるわけではないことは勿論である。
【0040】
図3は、各実施例に共通する携帯型電話機1の機能構成の一例を示すブロック図である。携帯型電話機1は、GPSアンテナ5と、GPS受信部10と、ホストCPU(Central Processing Unit)30と、操作部40と、表示部50と、携帯電話用アンテナ60と、携帯電話用無線通信回路部70と、記憶部80とを備えて構成される。
【0041】
GPSアンテナ5は、GPS衛星から発信されているGPS衛星信号を含むRF(Radio Frequency)信号を受信するアンテナであり、受信信号をGPS受信部10に出力する。
【0042】
GPS受信部10は、GPSアンテナ5から出力された信号に基づいて携帯型電話機1の位置を計測する位置算出回路或いは位置算出装置であり、いわゆるGPS受信装置に相当する機能ブロックである。GPS受信部10は、RF受信回路部11と、ベースバンド処理回路部20とを備えて構成される。なお、RF受信回路部11と、ベースバンド処理回路部20とは、それぞれ別のLSI(Large Scale Integration)として製造することも、1チップとして製造することも可能である。
【0043】
RF受信回路部11は、RF信号の受信回路である。回路構成としては、例えば、GPSアンテナ5から出力されたRF信号をA/D変換器でデジタル信号に変換し、デジタル信号を処理する受信回路を構成してもよい。また、GPSアンテナ5から出力されたRF信号をアナログ信号のまま信号処理し、最終的にA/D変換することでデジタル信号をベースバンド処理回路部20に出力する構成としてもよい。
【0044】
後者の場合には、例えば、次のようにRF受信回路部11を構成することができる。すなわち、所定の発振信号を分周或いは逓倍することで、RF信号乗算用の発振信号を生成する。そして、生成した発振信号を、GPSアンテナ5から出力されたRF信号に乗算することで、RF信号を中間周波数の信号(以下、「IF(Intermediate Frequency)信号」と称す。)にダウンコンバートし、IF信号を増幅等した後、A/D変換器でデジタル信号に変換して、ベースバンド処理回路部20に出力する。
【0045】
ベースバンド処理回路部20は、RF受信回路部11から出力された受信信号に対して相関処理等を行ってGPS衛星信号を捕捉し、GPS衛星信号から取り出した衛星軌道データや時刻データ等に基づいて、所定の位置算出計算を行って携帯型電話機1の位置(位置座標)を算出する回路部である。ベースバンド処理回路部20は、受信信号の中からGPS衛星信号を捕捉する衛星信号捕捉装置としても機能する。
【0046】
図4は、ベースバンド処理回路部20の回路構成の一例を示す図であり、本実施形態に係わる回路ブロックを中心に記載した図である。ベースバンド処理回路部20は、例えば、乗算器21と、キャリア除去用信号発生部22と、相関器23と、レプリカコード発生部24と、処理部25と、記憶部27とを備えて構成される。
【0047】
乗算器21は、キャリア除去用信号発生部22により生成・発生されたキャリア除去用信号を受信信号に乗算することで受信信号から搬送波(キャリア)を除去し、相関器23に出力する乗算器である。
【0048】
キャリア除去用信号発生部22は、GPS衛星信号のキャリア信号と同一の周波数の信号であるキャリア除去用信号を生成する回路であり、例えばキャリアNCO(Numerical Controlled Oscillator)等の発振器を有して構成される。RF受信回路部11から出力される信号がIF信号である場合には、IF周波数をキャリア周波数として信号を生成する。何れにしろ、RF受信回路部11から出力される信号の周波数と同一の周波数のキャリア除去用信号を生成するための回路である。
【0049】
相関器23は、レプリカコード発生部24により生成されたレプリカコードの発生信号と、乗算器21から出力されたキャリアが除去された受信信号との相関演算を行うコリレーターであり、相関演算部に相当する。
【0050】
レプリカコード発生部24は、GPS衛星信号の拡散符号であるCAコードのレプリカコードを生成する回路部であり、例えばコードNCO等の発振器を有して構成される。レプリカコード発生部24は、処理部25から指示されたPRN番号(衛星番号)に応じたレプリカコードを、指示された位相に応じて出力位相(時間)を調整して生成し、相関器23に出力する。
【0051】
相関器23は、受信信号のIQ成分それぞれに対して、レプリカコード発生部24から入力したレプリカコードとの相関処理を行う。I成分は、受信信号の同相成分(実部)を示し、Q成分は受信信号の直交成分(虚部)を示す。
【0052】
なお、受信信号のIQ成分の分離(IQ分離)を行う回路ブロックについては図示を省略するが、どのように回路ブロックを構成してもよい。例えば、RF受信回路部11において受信信号をIF信号にダウンコンバートする際に、位相が90度異なる局部発振信号を受信信号に乗算することでIQ分離を行うこととしてもよい。
【0053】
処理部25は、ベースバンド処理回路部20の各機能部を統括的に制御する制御装置であり、例えばCPU等のプロセッサーを有して構成される。処理部25は、相関器23から出力された相関演算の結果を周波数解析する解析部として機能する他、周波数解析結果のうち、特定周波数や高調波周波数におけるパワー値を抽出する抽出部や、受信信号からGPS衛星信号を捕捉する捕捉部として機能する。主要な機能部として、処理部25は、衛星信号捕捉部251と、位置算出部253とを有する。
【0054】
衛星信号捕捉部251は、相関器23から出力される相関値を相関積算時間に亘って積算する処理を行い、積算された相関値(積算相関値)に基づいてGPS衛星信号を捕捉する。
【0055】
位置算出部253は、衛星信号捕捉部251により捕捉されたGPS衛星信号を利用して、公知の位置算出計算を行って携帯型電話機1の位置を算出する算出部であり、算出した位置をホストCPU30に出力する。
【0056】
記憶部27は、ROM(Read Only Memory)やフラッシュROM、RAM(Random Access Memory)等の記憶装置(メモリー)によって構成され、ベースバンド処理回路部20のシステムプログラムや、衛星信号捕捉機能、位置算出機能等の各種機能を実現するための各種プログラム、データ等を記憶している。また、各種処理の処理中データ、処理結果などを一時的に記憶するワークエリアを有する。
【0057】
記憶部27には、例えば図4に示すように、プログラムとして、処理部25により読み出され、ベースバンド処理(図5参照)として実行されるベースバンド処理プログラム271が記憶されている。ベースバンド処理プログラム271は、各種の相関処理(図6〜図9、図16及び図17参照)として実行される相関処理プログラム2711をサブルーチンとして有している。
【0058】
また、一時的な格納データとして、例えば、衛星軌道データ272と、相関積算時間273と、蓄積時間274と、相関値データ275と、増大相関値データ276と、積算相関値データ277と、特定周波数278と、高調波周波数279とが記憶部27に記憶される。
【0059】
ベースバンド処理とは、処理部25が、捕捉対象とするGPS衛星(以下、「捕捉対象衛星」と称す。)それぞれについて、各種の相関処理を行ってGPS衛星信号を捕捉する処理を行い、捕捉したGPS衛星信号を利用した位置算出計算を行って携帯型電話機1の位置を算出する処理である。
【0060】
また、相関処理とは、処理部25が上述した原理に従って、時系列の相関値に対する周波数解析を行い、特定周波数や高調波周波数におけるパワー値を周波数ゼロにおけるパワー値と見なして、逆周波数解析により時系列の相関値を再構成する処理である。そして、再構成した時系列の相関値を積算することで積算相関値を取得する。これらの処理については、フローチャートを用いて詳細に後述する。
【0061】
衛星軌道データ272は、全てのGPS衛星の概略の衛星軌道情報を記憶したアルマナックや、各GPS衛星それぞれについて詳細な衛星軌道情報を記憶したエフェメリス等のデータである。衛星軌道データ272は、GPS衛星から受信したGPS衛星信号をデコードすることで取得する他、例えば携帯型電話機1の基地局やアシストサーバーからアシストデータとして取得する。
【0062】
相関積算時間273は、蓄積時間274ずつ蓄積された相関値を積算する時間であり、受信信号の信号強度や受信環境等の情報に基づいて可変に設定される。また、蓄積時間274は、相関器23から出力された相関値を蓄積する時間であり、例えば相関積算時間273の1/m倍(m>1)の時間として設定される。
【0063】
相関値データ275は、相関器23から出力された相関値が蓄積時間274分蓄積されたデータである。また、増大相関値データ276は、蓄積時間分の相関値をn倍(n>1)することで得られる増大相関値のデータである。本実施例では、周波数解析で得られるパワースペクトル密度を増大させるため、増大相関値データ276に対する周波数解析を行う。
【0064】
積算相関値データ277は、逆周波数解析によって再構成された相関値を積算することで得られる積算相関値のデータである。
【0065】
特定周波数278は、航法メッセージデータのビット長に応じて定められる周波数である。本実施例では、原理で説明したように、ビット長の2倍に相当する相関値の周期40ミリ秒を周波数に換算した25Hzを特定周波数とする。また、高調波周波数279は、特定周波数278の奇数倍の高調波の周波数である。
【0066】
図3の機能ブロックに戻って、ホストCPU30は、記憶部80に記憶されているシステムプログラム等の各種プログラムに従って携帯型電話機1の各部を統括的に制御するプロセッサーである。ホストCPU30は、ベースバンド処理回路部20から出力された位置座標をもとに、表示部50に現在位置を指し示した地図を表示させたり、その位置座標を各種のアプリケーション処理に利用する。
【0067】
操作部40は、例えばタッチパネルやボタンスイッチ等により構成される入力装置であり、押下されたキーやボタンの信号をホストCPU30に出力する。この操作部40の操作により、通話要求やメール送受信要求、位置算出要求等の各種指示入力がなされる。
【0068】
表示部50は、LCD(Liquid Crystal Display)等により構成され、ホストCPU30から入力される表示信号に基づいた各種表示を行う表示装置である。表示部50には、位置表示画面や時刻情報等が表示される。
【0069】
携帯電話用アンテナ60は、携帯型電話機1の通信サービス事業者が設置した無線基地局との間で携帯電話用無線信号の送受信を行うアンテナである。
【0070】
携帯電話用無線通信回路部70は、RF変換回路、ベースバンド処理回路等によって構成される携帯電話の通信回路部であり、携帯電話用無線信号の変調・復調等を行うことで、通話やメールの送受信等を実現する。
【0071】
記憶部80は、ホストCPU30が携帯型電話機1を制御するためのシステムプログラムや、各種アプリケーション処理を実行するための各種プログラムやデータ等を記憶する記憶装置である。
【0072】
2−1.第1実施例
第1実施例は、周波数解析の一種であるフーリエ変換を利用した相関処理を行い、再構成された相関値を積算することで得られる積算相関値に基づいてGPS衛星信号を捕捉する実施例である。
【0073】
(1)処理の流れ
図5は、記憶部27に記憶されているベースバンド処理プログラム271が処理部25により読み出されることで、ベースバンド処理回路部20において実行されるベースバンド処理の流れを示すフローチャートである。
【0074】
最初に、衛星信号捕捉部251は、捕捉対象衛星判定処理を行う(ステップA1)。具体的には、不図示の時計部で計時されている現在時刻において、所与の基準位置の天空に位置するGPS衛星を、記憶部27に記憶されたアルマナックやエフェメリス等の衛星軌道データ272を用いて判定して、捕捉対象衛星に決定する。基準位置は、例えば、電源投入後の初回の位置算出の場合は、いわゆるサーバーアシストによってアシストサーバーから取得した位置とし、2回目以降の位置算出の場合は、最新の算出位置とする等の方法で設定できる。
【0075】
次いで、衛星信号捕捉部251は、ステップA1で判定した各捕捉対象衛星それぞれについて、ループAの処理を実行する(ステップA3〜A17)。ループAの処理では、衛星信号捕捉部251は、当該捕捉対象衛星について、相関積算時間273及び蓄積時間274を設定する(ステップA5)。
【0076】
相関積算時間の設定は、種々の方法により実現することができる。例えば、当該捕捉対象衛星からの受信信号の信号強度に基づいて設定することとしてもよい。信号強度が弱いほど、より長い時間に亘って相関値を積算しなければ、相関値のピークの検出が困難である。そのため、信号強度が弱くなるほど相関積算時間を長くするように相関積算時間を設定することが適切である。
【0077】
また、GPS衛星信号の受信環境を判定し、判定した受信環境に基づいて相関積算時間を決定してもよい。例えば、受信環境が「屋内環境(インドア環境)」である場合は、相関積算時間を長めの「1000ミリ秒」に設定し、受信環境が「屋外環境(アウトドア環境)」である場合は、相関積算時間を少し短い「200ミリ秒」に設定するなどが考えられる。
【0078】
また、蓄積時間は、相関積算時間が蓄積時間の整数倍の時間となるように設定する。すなわち、相関積算時間の1/m倍(m>1)の時間を蓄積時間として設定する。「m」の値は適宜設定することができる。例えば、相関積算時間を「1000ミリ秒」に設定し、「m=25」とした場合は、蓄積時間として「40ミリ秒」を設定することとする。
【0079】
次いで、衛星信号捕捉部251は、レプリカコードの初期位相を設定する(ステップA7)。そして、当該捕捉対象衛星のPRN番号と、レプリカコードの位相とを指示する指示信号を、レプリカコード発生部24に出力する(ステップA9)。そして、衛星信号捕捉部251は、記憶部27に記憶されている相関処理プログラム2711を読み出して実行することで、相関処理を行う(ステップA11)。
【0080】
図6は、相関処理の一例である第1相関処理の流れを示すフローチャートである。
先ず、衛星信号捕捉部251は、特定周波数278を設定して記憶部27に記憶させる(ステップB1)。原理で説明したように、特定周波数278は、航法メッセージデータのビット長の2倍の期間である「40ミリ秒」を1周期として、この1周期に相当する周波数である「25Hz」を設定する。
【0081】
その後、衛星信号捕捉部251は、相関器23から出力された相関値をステップA5で設定した蓄積時間分蓄積したデータを、相関値データ275として記憶部27に記憶させる(ステップB3)。そして、衛星信号捕捉部251は、蓄積時間分の相関値をn倍(n>1)することで増大相関値を算出し、増大相関値データ276として記憶部27に記憶させる(ステップB5)。
【0082】
次いで、衛星信号捕捉部251は、増大相関値データ276に対して高速フーリエ変換(FFT(Fast Fourier Transform))処理を行う(ステップB7)。なお、高速フーリエ変換に係る処理は従来公知であるため、詳細な説明は省略する。
【0083】
FFT処理を行って周波数領域におけるパワースペクトルを求めたら、衛星信号捕捉部251は、ステップB1で設定した特定周波数におけるパワー値を抽出して、周波数ゼロ(0Hz)におけるパワー値に加算する(ステップB9)。また、衛星信号捕捉部251は、特定周波数278におけるパワー値を「0」にする(ステップB11)。
【0084】
次いで、衛星信号捕捉部251は、逆高速フーリエ変換処理(IFFT処理)を行って、相関値を再構成する(ステップB13)。なお、逆高速フーリエ変換に係る処理についても従来公知であるため、詳細な説明は省略する。
【0085】
逆FFT処理を行って相関値を再構成したら、衛星信号捕捉部251は、再構成された蓄積時間分の相関値を積算し、記憶部27の積算相関値データ277を更新する(ステップB15)。すなわち、蓄積時間分の再構成された相関値を積算して最新の積算相関値に加算する。
【0086】
次いで、衛星信号捕捉部251は、ステップA5で設定した相関積算時間273が経過したか否かを判定し(ステップB17)、まだ経過していないと判定した場合は(ステップB17;No)、ステップB3に戻る。また、相関積算時間が経過したと判定した場合は(ステップB17;Yes)、第1相関処理を終了する。
【0087】
図5のベースバンド処理に戻って、相関処理を行った後、衛星信号捕捉部251は、記憶部27の積算相関値データ277に対するピーク検出を行い(ステップA13)、ピークが検出されなかったと判定した場合は(ステップA13;No)、レプリカコードの位相を変更して(ステップA15)、ステップA9に戻る。
【0088】
また、ピークが検出されたと判定した場合は(ステップA13;Yes)、衛星信号捕捉部251は、次の捕捉対象衛星へと処理を移行する。そして、全ての捕捉対象衛星についてステップA5〜A15の処理を行った後、ループAの処理を終了する(ステップA17)。
【0089】
その後、位置算出部253は、各捕捉対象衛星について捕捉されたGPS衛星信号を利用した位置算出計算を実行する(ステップA19)。位置算出計算は、携帯型電話機1と各捕捉衛星間の擬似距離を利用して、例えば最小二乗法やカルマンフィルターを用いた公知の収束演算を行うことで実現することができる。
【0090】
擬似距離は、次のようにして算出することができる。すなわち、衛星軌道データ272から求められる捕捉衛星の衛星位置と、携帯型電話機1の最新の算出位置とを用いて、擬似距離の整数部分を算出する。また、ステップA13で検出された相関値のピークに相当するレプリカコードの位相(コード位相)を用いて、擬似距離の端数部分を算出する。このようにして求めた整数部分と端数部分とを合算することで、擬似距離を算出することができる。
【0091】
次いで、位置算出部253は、算出した位置(位置座標)をホストCPU30に出力する(ステップA21)。そして、処理部25は、処理を終了するか否かを判定し(ステップA23)、まだ終了しないと判定した場合は(ステップA23;No)、ステップA1に戻る。また、処理を終了すると判定した場合は(ステップA23;Yes)、ベースバンド処理を終了する。
【0092】
(2)実験結果
図10〜図15を参照して、GPS衛星信号を捕捉した場合の実験結果について説明する。図10〜図12は、従来の信号捕捉方法に従って、GPS衛星信号を捕捉した場合の実験結果の一例を示す図である。周波数方向と位相方向とのそれぞれについて、40ミリ秒分の相関値を1秒間積算して積算相関値を求め、そのピークを検出する実験を行った。
【0093】
図10は、位相方向及び周波数方向の積算相関値を3次元的にプロットしたグラフである。図10において、右奥行き方向が、受信CAコードの位相とレプリカコードの位相との位相差を示しており、左奥行き方向が、受信信号の周波数とキャリア除去用信号の周波数との周波数差を示している。また、縦軸が積算相関値を示している。図10のグラフのうち、周波数方向の相関処理結果を抜き出したグラフが図11であり、位相方向の相関処理結果を抜き出したグラフが図12である。
【0094】
図12を見ると、位相方向の相関処理結果については、位相差「0」の部分に積算相関値のピークが現れており、正しい結果が得られていることがわかる。しかし、図11を見ると、周波数方向の相関処理結果については、周波数差「0Hz」の部分に積算相関値のピークが現れておらず、「0Hz」から左右方向それぞれに少し離れた周波数差においてピークが現れていることがわかる。このピークが現れた周波数差を調べたところ、特定周波数である「±25Hz」に相当する周波数差であることがわかった。周波数差「0Hz」にピークが現れていないことから、GPS衛星信号の捕捉に失敗したことを意味する。
【0095】
図13〜図15は、第1実施例の信号捕捉方法に従って、GPS衛星信号を捕捉した場合の実験結果の一例を示す図である。周波数方向と位相方向とのそれぞれについて、蓄積時間を「40ミリ秒」、相関積算時間を「1000ミリ秒」として、上述した第1相関処理を行って積算相関値を求め、そのピークを検出する実験を行った。
【0096】
図13は、位相方向及び周波数方向の積算相関値を3次元的にプロットしたグラフである。また、図13のグラフのうち、周波数方向の相関積算結果を抜き出したグラフが図14であり、位相方向の相関積算結果を抜き出したグラフが図15である。グラフの見方は、図10〜図12とそれぞれ同じである。
【0097】
図15を見ると、位相方向の相関処理結果について、位相差「0」の部分に積算相関値のピークが現れており、正しい結果が得られていることがわかる。また、図14を見ると、周波数方向の相関処理結果についても、周波数差「0Hz」の部分に積算相関値のピークが現れていることがわかる。位相及び周波数がぴったり一致しているため、GPS衛星信号の捕捉に成功したことを意味する。
【0098】
(3)作用効果
ベースバンド処理回路部20において、GPS衛星から発信されたGPS衛星信号を受信した受信信号に対して、相関器23において相関演算が行われる。そして、GPS衛星信号に搬送されている航法メッセージデータのビット長(20ミリ秒)以上の所定の蓄積時間に亘る相関演算結果に対して、フーリエ変換を用いた周波数解析が処理部25により行われる。そして、航法メッセージデータのビット長に応じた特定周波数(25Hz)におけるパワー値が、周波数ゼロにおけるパワー値に加算され、特定周波数におけるパワー値が「0」にされた後、逆フーリエ変換によって相関値が再構成される。そして、再構成された相関値が積算され、当該積算相関値に基づいてGPS衛星信号が捕捉される。
【0099】
航法メッセージデータのビット値が変化(反転)すると、CAコードの極性も反転するため、レプリカCAコードとの相関演算を行った場合に、相関値の時系列データには符号変化が現れる。それゆえ、相関値の時系列データに対してフーリエ変換を行うと、原理で説明したように、「25Hz」の周波数(特定周波数)にパワー値のピークが現れる。
【0100】
この特定周波数のパワー値のピークは、航法メッセージデータのビット値の変化に起因するものである。そのため、特定周波数におけるパワー値を抽出して周波数ゼロにおけるパワー値に移動させる処理を行う。かかる処理を行った後、逆フーリエ変換によって相関値を再構成することで、符号の揃った相関値の時系列データを得ることができる。符号の揃った相関値を積算していけば、符号の異なる相関値同士が相殺し合うことはない。従って、航法メッセージデータのビット長(20ミリ秒)よりも長い相関積算時間に亘る相関処理を実現することができる。
【0101】
また、本実施例では、相関値を蓄積的に記憶させる蓄積時間を、相関積算時間の1/m倍の時間として設定する。そして、蓄積時間分蓄積された相関値をn倍することで増大相関値を算出し、この増大相関値の時系列データに対してフーリエ変換を行うことで、パワースペクトル密度を増大させ、周波数解析の精度を高めることができる。
【0102】
上述した実験結果からわかるように、GPS衛星信号の捕捉に失敗した場合は、特定周波数に相当する周波数差において積算相関値のピークが現れ、捕捉に成功した場合は、周波数差ゼロにおいて積算相関値のピークが現れる。このことから考えると、特定周波数におけるパワー値を周波数ゼロにおけるパワー値に移動させるということは、GPS衛星信号の受信周波数を検出することであるとも言える。
【0103】
(4)他の相関処理
図6を用いて説明した第1相関処理は、相関処理の一例であり、これに限られない。他の相関処理の例について、フローチャートを用いて説明する。以下説明するフローチャートにおいて、第1相関処理と同一のステップについては同一の符号を付して説明を省略し、第1相関処理とは異なるステップを中心に説明する。
【0104】
図7は、他の相関処理の一例である第2相関処理の流れを示すフローチャートである。第2相関処理では、ステップB1の後に、衛星信号捕捉部251は、高調波周波数279を設定する(ステップC2)。高調波周波数279は、例えば、ステップB1で設定した特定周波数278の奇数倍の周波数を設定する。
【0105】
そして、衛星信号捕捉部251は、ステップB7においてFFT処理を行った後、特定周波数及び高調波周波数におけるパワー値を抽出して、周波数ゼロにおけるパワー値に加算する(ステップC9)。また、特定周波数及び高調波周波数におけるパワー値を「0」にする(ステップC11)。以降の処理は、第1相関処理と同様である。
【0106】
図8は、他の相関処理の一例である第3相関処理の流れを示すフローチャートである。第3相関処理では、衛星信号捕捉部251は、ステップB9において特定周波数におけるパワー値を周波数ゼロにおけるパワー値に加算した後、逆FFT処理を行わずに、周波数ゼロにおけるパワー値を相関処理結果として更新する(ステップD13)。
【0107】
以降の処理では、衛星信号捕捉部251は、周波数ゼロにおけるパワー値を相関処理結果とみなして、GPS衛星信号の捕捉を行う。なお、第3相関処理では、周波数ゼロにおけるパワー値以外のパワー値は不要であるため、第1相関処理の特定周波数におけるパワー値を「0」にするステップ(図6のステップB11)は省略している。
【0108】
このように、周波数ゼロにおけるパワー値を相関処理結果とみなして処理を行うことができる根拠について説明する。計算機(コンピューター)を用いてフーリエ変換を行う際には、一般に離散フーリエ変換が用いられる。相関値に対する離散フーリエ変換は、以下の式(1)で定式化される。
【数1】
【0109】
式(1)において、「xk」は相関値を示しており、添え字の「k」はサンプリングされた相関値の番号を示している。また、「fj」は周波数を表しており、添え字の「j=0,1,2,・・・,n−1」はサンプリングされた周波数の番号を示している。
【0110】
この場合、j番目の周波数についてのパワー値「Powerj」は、次式(2)で与えられる。
【数2】
【0111】
また、周波数から相関値への逆フーリエ変換は、次式(3)で定式化される。
【数3】
【0112】
第3相関処理のステップB9で、特定周波数におけるパワー値を周波数ゼロにおけるパワー値に加算することで得られる周波数ゼロにおけるパワー値(以下、「合算周波数ゼロパワー値」と称す。)を「Power’0」と表記した場合、直流成分にのみ着目して逆フーリエ変換を行うと、次式(4)が導出される。
【数4】
【0113】
但し、式(4)を導出する際に、式(2)より次式(5)が成立することを用いた。
【数5】
【0114】
蓄積時間を「t」とした場合、逆フーリエ変換で再構成された相関値「xk」を蓄積時間「t」分積算することで、次式(6)のような積算相関値「X」が得られる。
【数6】
【0115】
式(6)を見ると、蓄積時間分の積算相関値「X」は、蓄積時間「t」と、合算周波数ゼロパワー値「Power’0」と、サンプリング総数「n」とに依存することがわかる。ここで、蓄積時間「t」及びサンプリング総数「n」は定数である。従って、合算周波数ゼロパワー値「Power’0」を定数倍するだけで、積算相関値「X」が得られる。このことから、合算周波数ゼロパワー値は再構成された相関値と等価であると言える。ゆえに、逆フーリエ変換を行わずとも、合算周波数ゼロパワー値そのものを用いてGPS衛星信号を捕捉することができる。
【0116】
図9は、他の相関処理の一例である第4相関処理の流れを示すフローチャートである。第4相関処理では、衛星信号捕捉部251は、ステップB7においてFFT処理を行った後、周波数ゼロにおけるパワー値及び特定周波数におけるパワー値を算出する(ステップE8)。そして、算出したパワー値の大きさを比較する(ステップE9)。
【0117】
特定周波数におけるパワー値の方が大きい場合は(ステップE9;特定周波数におけるパワー値)、衛星信号捕捉部251は、ステップB9及びB11の処理を行った後、逆FFT処理を行う(ステップB13)。一方、周波数ゼロにおけるパワー値の方が大きい場合は(ステップE9;周波数ゼロにおけるパワー値)、そのまま逆FFT処理を行う。
【0118】
第4相関処理は、蓄積時間内に、航法メッセージデータのビット反転が有ったか無かったか、また、有った場合の特定周波数におけるパワー値の相対的な大きさによって処理を変更するものである。
【0119】
すなわち、特定周波数におけるパワー値が周波数ゼロにおけるパワー値よりも大きければ、蓄積時間内にビット反転が有り、特定周波数のパワー値が相対的に大きいと判断する。この場合には、特定周波数のパワー値を周波数ゼロのパワー値に加算して処理を続行する。一方、周波数ゼロにおけるパワー値が特定周波数におけるパワー値よりも大きければ、特定周波数のパワー値が相対的に大きくない、或いは、ビット反転が起きなかったと判断し、パワー値の移動を行わずに、処理を続行する。
【0120】
2−2.第2実施例
第2実施例は、周波数解析の一種であるウェーブレット変換を利用した相関処理を行い、再構成された相関値を積算することで得られる積算相関値に基づいてGPS衛星信号を捕捉する実施例である。
【0121】
(1)処理の流れ
図16は、ウェーブレット変換を利用した相関処理の一例である第5相関処理の流れを示すフローチャートである。
先ず、衛星信号捕捉部251は、特定周波数278を設定し、記憶部27に記憶させる(ステップF1)。特定周波数278は、原理で説明したように「25Hz」を設定する。
【0122】
次いで、衛星信号捕捉部251は、相関器23から出力された相関値を蓄積時間分蓄積し、相関値データ275として記憶部27に記憶させる(ステップF3)。そして、衛星信号捕捉部251は、蓄積時間分の相関値をn倍することで増大相関値を算出し、増大相関値データ276として記憶部27に記憶させる(ステップF5)。
【0123】
その後、衛星信号捕捉部251は、ステップF1で設定した特定周波数を擬似周波数として、次式(7)に従ってウェーブレットスケール「a」を算出する(ステップF7)。
【数7】
【0124】
式(7)において、「Fa」及び「Fc」は、それぞれ擬似周波数及びウェーブレット関数の中心周波数を示している。また、「a」はウェーブレットスケールを示しており、「dT」は入力信号のサンプリング周期を示している。
【0125】
次いで、衛星信号捕捉部251は、ステップF7で算出したウェーブレットスケール「a」を用いて、次式(8)に従って、特定周波数に相当する分解レベル「J」(以下、「特定周波数分解レベル」と称す。)を判定する(ステップF9)。
【数8】
【0126】
次いで、衛星信号捕捉部251は、増大相関値データ276に対するウェーブレット変換処理を行う(ステップF13)。ウェーブレット変換は、一種の線形フィルタリングであり、入力信号(ここでは増大相関値の時系列データ)を、ハイパスフィルターに相当するウェーブレットフィルター「h」と、ローパスフィルターに相当するスケーリングフィルター「g」との2種類のフィルターを用いて、高周波の詳細成分と低周波の近似成分とに分解する。そして、所定の分解レベルに到達するまで近似成分を繰り返し分解する処理を行い、多重の解像度を有するウェーブレット成分を用いて、入力信号を表現する。
【0127】
具体的には、時系列の増大相関値を「x(t)」とした場合、分解するレベル数を「J」として、分解レベル「0」の近似成分「x0(t)」を分解レベル「J−1」まで分解すると、次式(9)が得られる。
【数9】
【0128】
式(9)において、「xj(t)」は分解レベル「j」の近似成分を示しており、「gj(t)」は分解レベル「j」の詳細成分を示している。「xJ-1(t)」を1つ下の分解レベル「J−2」の式に代入して「xJ-2(t)」を求め、求めた「xJ-2(t)」を1つ下の分解レベル「J−3」の式に代入して「xJ-3(t)」を求めるといった処理を分解レベル「0」まで行うと、次式(10)によって時系列の増大相関値「x(t)」が表現される。
【数10】
【0129】
このように、解像度の異なるウェーブレット成分の和で入力信号を表現する手法は、多重解像度解析と呼ばれる。計算機(コンピューター)を用いてウェーブレット変換を実現する場合は、計算をより効率的に行うために、2の冪乗をベースにスケールパラメーター「a」を選択する離散ウェーブレット変換が用いられる。
【0130】
ウェーブレット変換処理を行った後、衛星信号捕捉部251は、特定周波数分解レベル「J」について、高周波詳細成分のエネルギー値を抽出して低周波近似成分のエネルギー値に加算する(ステップF15)。また、特定周波数分解レベル「J」における高周波詳細成分のエネルギー値を「0」にする(ステップF17)。低周波近似成分のエネルギー値は、近似成分係数(スケーリング係数)の2乗値で表され、高周波詳細成分のエネルギー値は、詳細成分係数(ウェーブレット係数)の2乗値で表される。
【0131】
なお、ウェーブレット変換では「エネルギー値」の概念が用いられることが一般的であるため、本実施例でも、エネルギー値の概念を用いた処理を行うものとして図示・説明する。しかし、エネルギー値とは言っても、周波数解析におけるパワー値の一種であることに変わりはなく、パワー値と同義である。
【0132】
離散ウェーブレット変換では、増大相関値「x(t)」が近似成分と詳細成分とに分解されることから、増大相関値「x(t)」のエネルギー値は、近似成分と詳細成分とに保存される。すなわち、次式(11)及び(12)のエネルギー保存の法則が成立する。
【数11】
【数12】
但し、「cA」は近似成分係数(スケーリング係数)を示し、「cD」は詳細成分係数(ウェーブレット係数)を示す。
【0133】
ステップF15及びF17では、特定周波数分解レベル「J」について、高周波詳細成分のエネルギー値を抽出して低周波近似成分のエネルギー値に加算した後に、高周波詳細成分のエネルギー値を「0」にする処理を行っている。エネルギー値の総量が変化しないため、本実施例の処理では、上記のエネルギー保存の法則は満たされる。
【0134】
その後、衛星信号捕捉部251は、逆ウェーブレット変換処理を行って、増大相関値を再構成する(ステップF19)。そして、衛星信号捕捉部251は、再構成された蓄積時間分の相関値を積算し、記憶部27の積算相関値データ277を更新する(ステップF21)。
【0135】
次いで、衛星信号捕捉部251は、相関積算時間が経過したか否かを判定し(ステップF23)、まだ経過していないと判定した場合は(ステップF23;No)、ステップF3に戻る。また、相関積算時間が経過したと判定した場合は(ステップF23;Yes)、第5相関処理を終了する。
【0136】
(2)実験結果
第2実施例の手法を用いてGPS衛星信号を捕捉した場合の実験結果について説明する。ここでは、受信信号の周波数及び受信CAコードの位相を既知として、受信CAコードとレプリカCAコードとの相関処理を行った結果を示す。
【0137】
図18は、1000ミリ秒(1秒)分の相関値を計測したグラフであり、上述した第5相関処理においてウェーブレット変換を行う前の生の相関値の時系列変化を示している。横軸は時間、縦軸は相関値を示している。この図を見ると、航法メッセージデータのビット値の変化によって受信CAコードの極性が反転したことにより、相関値の符号が短い周期で変化し、相関値「0」を中心として、正負の領域に大きく振動していることがわかる。この相関値を相関積算時間を1000ミリ秒として積算したところ、積算相関値は「0」になった。
【0138】
図19は、図18の相関値のデータに対して、上述した第5相関処理を行って信号を再構成した後の相関値の時系列変化を示すグラフである。この図を見ると、相関値の中心が正の領域にシフトし、相関値は概ね正の値に収まっていることがわかる。また、上下の振動に着目すると、部分的にパルス状の変化が認められるものの、全体としては小さな振幅で変動していることがわかる。この再構成された相関値を相関積算時間を1000ミリ秒として積算したところ、積算相関値は「680」と非常に大きな値となった。
【0139】
(3)他の相関処理
図16を用いて説明した第5相関処理は、ウェーブレット変換を利用した相関処理の一例であり、この処理方法に限定されるものではない。他の相関処理の例について、フローチャートを用いて説明する。以下説明するフローチャートにおいて、第5相関処理と同一のステップについては同一の符号を付して説明を省略し、第5相関処理とは異なるステップを中心に説明する。
【0140】
図17は、他の相関処理の一例である第6相関処理の流れを示すフローチャートである。第6相関処理では、衛星信号捕捉部251は、ステップF1において特定周波数278を設定した後、高調波周波数279を設定する(ステップG2)。高調波周波数は、特定周波数の奇数倍の周波数を設定する。
【0141】
衛星信号捕捉部251は、ステップF7で算出したウェーブレットスケール「a」を用いて、式(8)に従って、特定周波数に相当する分解レベル(特定周波数分解レベル)「J」を判定する(ステップF9)。また、高調波周波数に相当する分解レベル(以下、「高調波周波数分解レベル」と称す。)を判定する(ステップG11)。すなわち、特定周波数分解レベル「J」よりも低い分解レベルにおいて、特定周波数の奇数倍の周波数に相当する分解レベルを特定して高調波周波数分解レベルと判定する。
【0142】
ステップF13においてウェーブレット変換処理を行った後、衛星信号捕捉部251は、特定周波数分解レベル及び高調波周波数分解レベルについて、高周波詳細成分のエネルギー値を抽出して低周波近似成分のエネルギー値に加算する(ステップG15)。また、特定周波数分解レベル及び高調波周波数分解レベルにおける高周波詳細成分を「0」にする(ステップG17)。そして、衛星信号捕捉部251は、ステップF19へと処理を移行する。
【0143】
第6相関処理では、特定周波数の周波数成分ばかりでなく、高調波の周波数成分も考慮して相関値の再構成を行うため、より適確且つ迅速にGPS衛星信号を捕捉することが可能になる。
【0144】
なお、第1実施例の変形例で説明した第3相関処理と同様に、逆ウェーブレット変換を省略することとして、特定周波数分解レベルにおける低周波近似成分のエネルギー値を相関処理結果と見なしてGPS衛星信号を捕捉することとしてもよい。
【0145】
3.変形例
3−1.電子機器
上述した実施例では、電子機器の一種である携帯型電話機に本発明を適用した場合を例に挙げて説明したが、本発明を適用可能な電子機器はこれに限られるわけではない。例えば、カーナビゲーション装置や携帯型ナビゲーション装置、パソコン、PDA(Personal Digital Assistant)、腕時計といった他の電子機器についても同様に適用することが可能である。
【0146】
3−2.位置算出システム
また、上述した実施形態では、位置算出システムとしてGPSを例に挙げて説明したが、WAAS(Wide Area Augmentation System)、QZSS(Quasi Zenith Satellite System)、GLONASS(GLObal NAvigation Satellite System)、GALILEO等の他の衛星測位システムを利用した位置算出システムであってもよい。
【0147】
3−3.パワー値の抽出
上述した実施形態では、特定周波数におけるパワー値を抽出して周波数ゼロにおけるパワー値に加算する処理を行うものとして説明した。しかし、実際には、特定周波数の近傍の周波数にもパワー値が誤差成分として現れることがあり得る。そこで、特定周波数に一定の幅を持たせて処理を行うことにすれば好適である。
【0148】
例えば、特定周波数の±1Hzの範囲を特定周波数範囲とし、特定周波数範囲に含まれる全てのパワー値を抽出して、周波数ゼロにおけるパワー値に加算する。また、特定周波数範囲に含まれる全てのパワー値を「0」にする。そして、これらの処理を行った後に、逆周波数解析を行って相関値を再構成する。
【0149】
なお、特定周波数ばかりでなく、高調波周波数についても同様の処理を行うこととしてもよい。すなわち、高調波周波数に一定の幅(例えば、高調波周波数±1Hzの高調波周波数範囲)を持たせ、高調波周波数範囲に含まれるパワー値を抽出して周波数ゼロにおけるパワー値に加算する。また、高調波周波数範囲に含まれる全てのパワー値を「0」にする。そして、逆周波数解析を行う。
【0150】
3−4.増大相関値
上述した実施形態では、蓄積時間分の相関値をn倍して増大相関値を算出し、当該増大相関値の時系列データに対して周波数解析を行うこととして説明した。しかし、この処理を省略し、蓄積時間分の相関値データそのものに対して周波数解析を行うこととしてもよい。
【0151】
また、増大相関値データに対する周波数解析を行うのではなく、蓄積時間分の相関値が所定の増感時間分繰り返すデータ(増感相関値データ)に対する周波数解析を行うこととしてもよい。例えば、増感時間として、蓄積時間のk倍(k>1)の時間を設定する。そして、蓄積時間分の相関値が増感時間分繰り返すデータを生成して増感相関値データとし、当該増感相関値データに対する周波数解析を行ってパワースペクトルを求めるようにする。
【0152】
3−5.周波数解析
また、周波数解析は、フーリエ変換やウェーブレット変換に限られるわけではない。相関値の周波数成分をパワー値で表現可能であれば、他の周波数解析を用いた相関処理を行うことによっても、上述した実施形態と同様の効果を得ることができることは言うまでもない。
【符号の説明】
【0153】
1 携帯型電話機、 10 GPS受信部、 11 RF受信回路部、 20 ベースバンド処理回路部、 21 乗算器、 22 キャリア除去用信号発生部、 23 相関器、 24 レプリカコード発生部、 25 処理部、 27 記憶部、 30 ホストCPU、 40 操作部、 50 表示部、 60 携帯電話用アンテナ、 70 携帯電話用無線通信回路部、 80 記憶部
【特許請求の範囲】
【請求項1】
測位用衛星から発信された衛星信号を受信した受信信号に対して相関演算を行うことと、
前記衛星信号によって搬送されている航法メッセージデータのビット長以上の所定時間に亘る前記相関演算の結果を周波数解析することと、
前記周波数解析した結果のうち、前記ビット長に応じて定められる特定周波数を少なくとも含む所定の周波数におけるパワー値を抽出することと、
前記抽出したパワー値を用いて前記衛星信号を捕捉することと、
を含む信号捕捉方法。
【請求項2】
前記所定時間に亘る前記相関演算の結果をn倍(n>1)することを更に含み、
前記周波数解析は、前記n倍した前記相関演算の結果に対して行うことである、
請求項1に記載の信号捕捉方法。
【請求項3】
前記抽出することは、前記特定周波数と、前記特定周波数の高調波とにおける前記パワー値の抽出を行うことである、
請求項1又は2に記載の信号捕捉方法。
【請求項4】
前記衛星信号を捕捉することは、前記抽出したパワー値を、周波数ゼロにおけるパワー値と見なして前記捕捉を行うことを含む、
請求項1〜3の何れか一項に記載の信号捕捉方法。
【請求項5】
前記衛星信号を捕捉することは、
逆周波数解析を行うことと、
前記逆周波数解析の結果を用いて前記衛星信号を捕捉することと、
を含む、
請求項1〜4の何れか一項に記載の信号捕捉方法。
【請求項6】
前記周波数解析は、フーリエ変換を用いた周波数解析である、
請求項1〜5の何れか一項に記載の信号捕捉方法。
【請求項7】
前記周波数解析は、ウェーブレット変換を用いた周波数解析である、
請求項1〜5の何れか一項に記載の信号捕捉方法。
【請求項8】
測位用衛星からの衛星信号を受信部が受信した受信信号に対して相関演算を行う相関演算部と、
前記衛星信号によって搬送されている航法メッセージデータのビット長以上の所定時間に亘る前記相関演算の結果を周波数解析する解析部と、
前記周波数解析した結果のうち、前記所定時間に応じて定められる特定周波数を少なくとも含む所定の周波数におけるパワー値を抽出する抽出部と、
前記抽出したパワー値を用いて前記衛星信号を捕捉する捕捉部と、
を備えた信号捕捉装置。
【請求項1】
測位用衛星から発信された衛星信号を受信した受信信号に対して相関演算を行うことと、
前記衛星信号によって搬送されている航法メッセージデータのビット長以上の所定時間に亘る前記相関演算の結果を周波数解析することと、
前記周波数解析した結果のうち、前記ビット長に応じて定められる特定周波数を少なくとも含む所定の周波数におけるパワー値を抽出することと、
前記抽出したパワー値を用いて前記衛星信号を捕捉することと、
を含む信号捕捉方法。
【請求項2】
前記所定時間に亘る前記相関演算の結果をn倍(n>1)することを更に含み、
前記周波数解析は、前記n倍した前記相関演算の結果に対して行うことである、
請求項1に記載の信号捕捉方法。
【請求項3】
前記抽出することは、前記特定周波数と、前記特定周波数の高調波とにおける前記パワー値の抽出を行うことである、
請求項1又は2に記載の信号捕捉方法。
【請求項4】
前記衛星信号を捕捉することは、前記抽出したパワー値を、周波数ゼロにおけるパワー値と見なして前記捕捉を行うことを含む、
請求項1〜3の何れか一項に記載の信号捕捉方法。
【請求項5】
前記衛星信号を捕捉することは、
逆周波数解析を行うことと、
前記逆周波数解析の結果を用いて前記衛星信号を捕捉することと、
を含む、
請求項1〜4の何れか一項に記載の信号捕捉方法。
【請求項6】
前記周波数解析は、フーリエ変換を用いた周波数解析である、
請求項1〜5の何れか一項に記載の信号捕捉方法。
【請求項7】
前記周波数解析は、ウェーブレット変換を用いた周波数解析である、
請求項1〜5の何れか一項に記載の信号捕捉方法。
【請求項8】
測位用衛星からの衛星信号を受信部が受信した受信信号に対して相関演算を行う相関演算部と、
前記衛星信号によって搬送されている航法メッセージデータのビット長以上の所定時間に亘る前記相関演算の結果を周波数解析する解析部と、
前記周波数解析した結果のうち、前記所定時間に応じて定められる特定周波数を少なくとも含む所定の周波数におけるパワー値を抽出する抽出部と、
前記抽出したパワー値を用いて前記衛星信号を捕捉する捕捉部と、
を備えた信号捕捉装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【公開番号】特開2011−174724(P2011−174724A)
【公開日】平成23年9月8日(2011.9.8)
【国際特許分類】
【出願番号】特願2010−37168(P2010−37168)
【出願日】平成22年2月23日(2010.2.23)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
【公開日】平成23年9月8日(2011.9.8)
【国際特許分類】
【出願日】平成22年2月23日(2010.2.23)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
[ Back to top ]