(57)【要約】【課題】  航法データ系列を外部から取得せず自ら生成し、従来法に準じるようにコヒーレント積分を実行することで高感度測位を実現する。【解決手段】  受信手段３はアンテナ２から受信したＧＰＳ信号に対して増幅等を行い、更にＡ/Ｄ変換手段４によりＡ/Ｄ変換する。一方、乗算手段８はスペクトル拡散コード発生手段７が発生したスペクトル拡散コードをコード生成手段６が生成した全ての組合せの符号系列によって変調する。乗算手段８により変調されたスペクトル拡散コードを遅延手段９により所定時間単位で順次遅延させながら、Ａ/Ｄ変換されたＧＰＳ信号と前記遅延された信号との相関処理を相関処理手段１０により行っていく。遅延時間推定手段１１は、相関処理の結果が最大の遅延時間をτ１として選ぶ。測位計算手段１２は、τ１からＧＰＳ衛星とＧＰＳ測位装置の距離を算出し、更に複数の衛星に対して同様の計算を行い、これに基づいて現在位置を算出する。【選択図】          図１
2005321301.tif 000002
【特許請求の範囲】
【請求項１】
衛星からのGPS信号を受信して増幅および復調を行う受信手段と、
この受信手段によって復調された信号をA/D変換するA/D変換手段と、
符号系列の全ての組み合わせを生成するコード生成手段と、
前記衛星に対応するスペクトル拡散コードを発生するスペクトル拡散コード発生手段と、
前記符号系列によって前記スペクトル拡散コードを変調する乗算手段と、
この乗算手段により変調されたスペクトル拡散コードを時間長０から前記符号系列の１ビットに相当する時間長まで所定の時間単位で順次遅延させた遅延信号を生成する遅延手段と、
この遅延手段によって生成された遅延信号と前記A/D変換手段によりA/D変換された信号との相関処理を行う相関処理手段と、
前記相関処理の結果の中で最大の相関値に対応する遅延時間を出力する遅延時間推定手段と、
この遅延時間推定手段から出力された遅延時間に基づいて対応する衛星と自分との距離を算出し、この距離に基づき自分の現在の位置を算出する測位計算手段と、
を備えたことを特徴とするGPS測位装置。
【請求項２】
前記コード生成手段の代わりに、
Ｊ+１ビット（Ｊは正の整数）の第１の航法データの全ての組み合わせを生成する航法データ生成手段と、
前記第１の航法データの各ビットのデータをそれぞれＫ個（Ｋは正の整数）ずつ延長して第２の航法データを生成し、前記第２の航法データの先頭ビットに対応するＫ個の延長されたデータをＬ個（ＬはＪ，Ｋとは異なる正の整数）単位で順次切り捨てていき、切り捨てるたびに前記第２の航法データの切り捨てられた後の残りのデータのＪ×Ｋ個を符号系列として出力するコード境界データ生成手段と、
を備えたことを特徴とする請求項１記載のGPS測位装置。
【請求項３】
スペクトル拡散コード単位での相関処理の結果を保存するスペクトル拡散コード単位相関処理結果記憶手段を備え、
前記相関処理手段は、遅延時間が同一の場合の相関処理において、前記スペクトル拡散コード単位相関結果記憶手段に格納されている相関処理の結果を利用して符号相関処理を実行することを特徴とする請求項１記載のGPS測位装置。
【請求項４】
一つ前の相関処理の結果を保存する相関処理結果一時記憶手段と、
一つ前の相関処理結果との差分から相関処理の結果を算出する相関処理手段と、
を備えたことを特徴とする請求項３記載のGPS測位装置。
【請求項５】
前記コード生成手段は、
グレイコードと同様の順番で符号系列のコードを生成することを特徴とする請求項４記載のGPS測位装置。
【請求項６】
前記コード生成手段は、
ビット反転したコードが一致する符号系列を生成しないことを特徴とする請求項１〜５のいずれかに記載のGPS測位装置。
【請求項７】
衛星からのGPS信号を受信してA/D変換するA/D変換ステップと、
符号系列の全ての組み合わせを生成するコード生成ステップと、
前記衛星に対応する第１のスペクトル拡散コードを発生するスペクトル拡散コード発生ステップと、
前記符号系列によって前記第１のスペクトル拡散コードを変調する乗算ステップと、
この乗算手段ステップにより変調されたスペクトル拡散コードを時間長０から前記符号系列の１ビットに相当する時間長まで所定の時間単位で順次遅延させた遅延信号を生成する遅延ステップと、
この遅延ステップによって生成された遅延信号と前記A/D変換ステップによりA/D変換された信号との相関処理を行う相関処理ステップと、
前記相関処理の結果の中で最大の相関値に対応する遅延時間を出力する遅延時間推定ステップと、
この遅延時間推定ステップから出力された遅延時間に基づいて対応する衛星と自分との距離を算出し、この距離に基づき自分の現在の位置を算出する測位計算ステップと、
を備えたことを特徴とするGPS測位方法。
【請求項８】
前記コード生成ステップの代わりに、
Ｊ+１ビット（Ｊは正の整数）の第１の航法データの全ての組み合わせを生成する航法データ生成ステップと、
前記第１の航法データの各ビットのデータをそれぞれＫ個（Ｋは正の整数）ずつ延長して第２の航法データを生成し、前記第２の航法データの先頭ビットに対応するＫ個の延長されたデータをＬ個（ＬはＪ，Ｋとは異なる正の整数）単位で順次切り捨てていき、切り捨てるたびに前記第２の航法データの切り捨てられた後の残りのデータのＪ×Ｋ個を符号系列として出力するコード境界データ生成ステップと、
を備えたことを特徴とする請求項７記載のGPS測位方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、衛星からのGPS信号を受信して受信位置を正確に検出するGPS測位装置およびGPS測位方法に関するものである。
【背景技術】
【０００２】
従来のＧＰＳ測位装置およびＧＰＳ測位方法において、衛星からのＧＰＳ信号は、見晴らしの良い環境に受信アンテナを設置した本部サーバと、当該本部サーバと有線または無線の通信媒体を介して接続されたＧＰＳ端末によって受信される。本部サーバはＧＰＳ信号からＧＰＳ航法データを算出する。一方、ＧＰＳ端末はＧＰＳ信号の受信電界が良好であれば自らＧＰＳ信号から航法データを抽出し、受信電界が良好でなければ本部サーバから必要な航法データを受け取る。そして、ＧＰＳ端末はＧＰＳ信号系列（Ｃ／Ａコード）を、任意の位置で航法データの長さで分断し、各分断したＣ／Ａコードを同一ビット位置の値を累積加算し、この累積加算結果を自己が検出した航法データあるいは本部サーバから受け取った航法データに基づいて極性を合わせて加算することで積み上げる（以下、この演算操作をコヒーレント積分と呼ぶ）。さらに、ＧＰＳ端末はこの加算結果とＧＰＳ端末自身が有する全衛星のＣ／Ａコードとの間で相関計算を行い、相関値が最大になる点を加算開始位置として求め、Ｃ／Ａコードを加算することにより疑似距離を算出する。この擬似距離と前記抽出した航法データとによって位置計算を行う。
【０００３】
このように、従来の高感度ＧＰＳ測位装置では、受信電界が弱い場合には外部から航法データを取得してコヒーレント積分を行う。これにより、弱いGPS受信波しか受信できない室内のような環境でも測位が可能になる。（例えば、特許文献１参照）
【特許文献１】特開2001-349935号公報（第７頁左欄、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来の高感度GPS測位装置では、高感度を実現するために、航法データを別途無線データリンク等を通じて外部のインフラ側から受信する必要がある。このため、無線データリンクが確実に受信できる範囲でしか高感度測位が実現できないという問題があった。
【０００５】
また、このデータリンク、航法データ観測のためのインフラ構築、またはインフラサービス利用に、別途コストがかかるという問題も生じる。さらには、GPS測位装置に、無線データリンク受信機やアンテナを別途装着する必要があり、測位装置が大型かつ重くなって携帯に不便となる、装置コストが高くなる、消費電力増大による電池交換頻度が高まる等の問題があった。
【課題を解決するための手段】
【０００６】
この発明に係るGPS測位装置は、
衛星からのGPS信号を受信して増幅および復調を行う受信手段と、
この受信手段によって復調された信号をA/D変換するA/D変換手段と、
符号系列の全ての組み合わせを生成するコード生成手段と、
前記衛星に対応するスペクトル拡散コードを発生するスペクトル拡散コード発生手段と、
前記符号系列によって前記第１のスペクトル拡散コードを変調する乗算手段と、
この乗算手段により変調されたスペクトル拡散コードを時間長０から前記符号系列の１ビットに相当する時間長まで所定の時間単位で順次遅延させた遅延信号を生成する遅延手段と、
この遅延手段によって生成された遅延信号と前記A/D変換手段によってA/D変換された信号との相関処理を行う相関処理手段と、
前記相関処理の結果の中で最大の相関値に対応する遅延時間を出力する遅延時間推定手段と、
この遅延時間推定手段から出力された遅延時間に基づいて対応する衛星と自分との距離を算出し、この距離に基づき自分の現在の位置を算出する測位計算手段と、
を備えたものである。
【発明の効果】
【０００７】
この発明によれば、ＧＰＳ測位装置およびＧＰＳ測位方法に航法データ系列の全ての組合せを自動生成する手段と、従来法に準じるようなコヒーレント積分を実行する手段を設けたので、ＧＰＳ信号の受信感度が弱い室内であっても、外部から航法データを取得することなく、高感度にGPS測位を実現することができる。また、外部から航法データを取得するためのアンテナ、受信装置等を必要としないため、装置の軽量化や製品のコストダウンを図ることが可能になるという効果がある。
【発明を実施するための最良の形態】
【０００８】
以下、この発明の実施の一形態を説明する。
実施の形態1.
図１は、この発明の実施の形態1によるGPS測位装置の構成を説明するブロック図である。図１において、GPS測位装置１はGPS衛星を利用した測位を行う。GPSアンテナ２はGPS衛星からのGPS信号を受信し、受信手段３はこのGPSアンテナ２で受信したGPS信号の増幅等を行う。Ａ／Ｄ変換手段４は受信手段３からのアナログデータをデジタルデータに変換し、データ記憶手段５はＡ／Ｄ変換されたデータを記録する。コード生成手段６は符号系列の全ての組合せパターンを生成する。スペクトル拡散コード発生手段７は各衛星毎のスペクトル拡散コードを生成する。乗算手段８はコード生成手段６が生成した符号系列とスペクトル拡散コード発生手段７が生成したスペクトル拡散コードを乗算する。遅延手段９は乗算手段８により処理されたスペクトル拡散コードを遅延時間τだけ遅延させる。相関処理手段１０はデータ記憶手段５に保持されているGPS受信信号と遅延手段９で処理されたスペクトル拡散コードとの相関処理をおこなう。遅延時間推定手段１１は相関処理手段１０から送られてきた相関処理の結果と遅延時間τを保持し相関処理の結果が最大となる遅延時間τmaxを算出する。測位計算手段１２は遅延時間推定手段１１から送られてきたτmaxから衛星との距離を計算し、この距離を基に現在の位置を計算する。表示手段１３は測位計算手段１２によって計算された現在の位置から現在地を表示する。
【０００９】
なお、図１には記載されていないが、このGPS測位装置１を全体的に制御する制御手段があり、データ記憶手段５、コード生成手段６、スペクトル拡散コード発生手段７、乗算手段８、遅延手段９、相関処理手段１０、遅延時間推定手段１１、測位計算手段１２、表示手段１３とシステムバス等を介して接続されており、これらの各手段を制御する。この制御手段の一例として、ＲＯＭやＥＥＰＲＯＭ等に格納した制御用プログラムにより計算機のＣＰＵやＤＳＰを動作させるようにしてもよい。ただし、以下においては説明を簡潔にするために、データ記憶手段５、コード生成手段６等が自らデータ処理を実行するものとする。
【００１０】
また、上述の表示手段１３は、例えば液晶パネル等であるが、外部の記憶装置や他の信号処理装置、演算装置等への出力であってもよい。
【００１１】
次に、全体の動作について説明する。
図２は、上記GPS測位装置の図示しない制御手段によって実行される処理プログラムを示す概略のフローチャートである。このプログラムは制御手段のROM等のメモリにあらかじめ記憶されていてもよいが、プログラム自体を装置とは独立に存在するものとし、フロッピー（登録商標）ディスクやCD等の外部記憶媒体、又はインターネット等の通信回線を介して、書き込み可能なメモリにインストールするようにしてもよい。この場合には、GPS測位装置のプログラムの発明として成立する。
【００１２】
GPS測位装置１では、まず、GPSアンテナ２でGPS信号を受信し、受信手段３で増幅や周波数の変換等の処理を行った後、Ａ／Ｄ変換手段４でＡ／Ｄ変換を行ってデジタルデータに変換する（ステップST1）。Ａ／Ｄ変換されたデータはデータ記憶手段５に記録される（ステップST2）。
【００１３】
予め規定された長さのデータがデータ記憶手段５に記録されると、コード生成手段６は予め規定された長さの符号系列を生成し乗算手段８に送る（ステップST3）。乗算手段８は、スペクトル拡散コード発生手段７から衛星ごとのスペクトル拡散コードを取得し、コード生成手段６から送られてきた符号系列によって変調し、変調されたスペクトル拡散コードを遅延手段９に送る（ステップST4）。
【００１４】
遅延手段９は、乗算手段８によって変調されたスペクトル拡散コードを、時間τだけ遅延させて相関処理手段１０に送る（ステップST5）。相関処理手段１０は、データ記憶手段５からGPS受信信号を読み出し、遅延手段９から送られてきた時間τだけ遅延されたスペクトル拡散コードとの相関処理を行い、演算結果を遅延時間推定手段１１に送る。遅延時間推定手段１１は、送られてきた相関処理の結果と対応する遅延時間τを内部に保持する（ステップST6）。
【００１５】
遅延手段９は、変調されたスペクトル拡散コードを時間長０から符号系列の１ビットに相当する最大時間長さの遅延信号に関しての相関演算が処理されるまで、時間τずつ遅延されたスペクトル拡散コードを順次生成する（ステップST7）。また、コード生成手段６は、符号系列の全ての組み合わせに関しての相関演算が処理されるまで、符号系列を順次生成する（ステップST8）。これらの全ての組み合わせに関して、相関処理手段１０は相関演算処理をおこなう。
【００１６】
遅延時間推定手段１１は、算出された全ての相関処理結果の中から、最大の値を選び、その値に対応する遅延時間τをτmaxとして測位計算手段１２に送る（ステップST9）。測位計算手段１２は、τmaxから対応するGPS衛星とGPS測位装置の距離を算出する。上記と同様の処理を繰返し行うことにより、複数のGPS衛星からGPS測位装置までの距離を求める。これらの距離情報から、GPS測位装置の現在位置を算出する（ステップST10）。
【００１７】
測位計算手段１２で算出された現在位置を表示手段１３に出力し、現在位置を表示する（ステップST11）。
GPS測位装置は、以上の動作によりGPS衛星を利用した位置測定を行う。
【００１８】
次に、コード生成手段６、スペクトル拡散コード発生手段７、乗算手段８、遅延手段９、相関処理手段１０、遅延時間推定手段１１の動作について説明する。
図３は、GPS信号のフォーマットを表したものである。
GPS信号は、図３のように、任意の情報ビットBi（i＝1,2,3……,n）に対して内部が1023チップのスペクトル拡散変調された周期1ミリ秒のコード（以下、スペクトル拡散コードと呼ぶ）が20個（C(i,1)〜C(i,20)）単位で、情報変調１bit分のBiを形成している。従って、スペクトル拡散コード（C(i,1)〜C(i,20)）は全て１または全て０のいずれかである。また、図３のBi、C(i,1)〜C(i,20)の1または0の記号はそれぞれπまたは0位相変調されていることを意味する。B1〜Bnのビット列にGPS衛星位置等の航法メッセージが書き込まれている。また、1ミリ秒＝1周期のスペクトル拡散コードの中は1023チップのデータがあり、1チップは”1”もしくは”0”の信号である。実際のGPS信号の処理では、1023チップのデータを取得する際に標本化の定理により倍以上のサンプリング周波数でデータの標本化を行う。以下では、単純化のためチップ単位を基準に説明を行うことし、1チップ＝1bit（”0” or ”1”）として扱うものとする。
【００１９】
ここでは、80ミリ秒（スペクトル拡散コード80個分）のデータサイズのコヒーレント積分を行う場合について説明する。図４はこれを示したものである。データ記憶手段５は、GPS信号を保存する。このとき、処理するデータサイズより1ミリ秒だけ長い、81ミリ秒のGPS信号が記録された時点で、相関演算の処理が開始される。ここで、81ミリ秒にしているのは、後述のように、あらゆる遅れを想定しても81ミリ秒以内に収まるから81ミリ秒だけを
【００２０】
コード生成手段６は、図４のC1〜C80のような80bitの符号系列を生成する。この時、すべてのビットが”0”の”000・・・00”という80bitのコードから、最初のビットのみ”0”で他はすべて”1”の”011・・・11”という80bitのコードまでのあらゆるコードを生成する。また、コード生成手段６は、”100・・・00”から”111・・・11”のコードは生成しない。これは、これらのコードから得られるコヒーレント積分の結果が、これらのコードのビット反転したコードで行うコヒーレント積分の結果と極性が逆なだけで全く等価であるため、相関処理では不要となるからである。これにより、処理する演算を半分にすることができる。
【００２１】
次に、乗算手段８は、スペクトル拡散コード発生手段７から、1ミリ秒の長さのスペクトル拡散コードを取り出し、コード生成手段６で生成した符号系列C1〜C80で位相変調をおこなう。Cnの値が1の場合はπ位相変調をおこない、0の場合は0位相変調を行う。このようにして、80ミリ秒の長さのスペクトル拡散コードを作成する。
【００２２】
次に、遅延手段９は、乗算手段８が作成したスペクトル拡散コードを遅延時間τだけシフトする。ここでは、単純に遅延時間τは1チップ単位（＝1/1023ミリ秒）の長さとして、0秒から1022/1023ミリ秒までの値とする。このとき、遅延手段９は、1チップずつ1022回シフトを行うものとする。
【００２３】
相関処理手段１０は、データ記憶手段５に記録されている81ミリ秒の長さのGPS受信データをとりだす。次に、遅延手段９から逐次送られてくる80ミリ秒のスペクトル拡散コードと、このスペクトル拡散コードと対応するGPS受信信号の領域との相関処理を行う。遅延時間推定手段１１は、相関処理手段１０の結果とそれに対応する遅延時間τを記録する。
【００２４】
相関処理手段１０は、符号系列の全ての組合せ、0〜1022/1023ミリ秒の遅延時間τ、これらの全ての組み合わせに対して、相関処理を行う。遅延時間推定手段１１は、これらの中で相関が最大となるτをτmaxとして測位計算手段１２に送る。
【００２５】
以上のように、この実施の形態1によれば、コード生成手段６によって、すべての組み合わせの符号系列から作られるスペクトル拡散コードに対して相関演算処理を行うことによりGPS信号の相関処理の最大値を算出することができるため、GPS信号の受信感度が弱い室内等であっても、外部から航法データを取得せずに、GPSによる測位が行えるという効果が得られる。
また、外部から航法データを取得するためのアンテナ、受信装置等を必要としないため、装置の軽量化や製品のコストダウンを図ることが可能になるという効果が得られる。
【００２６】
なお、本実施の形態では、80ミリ秒の長さのGPS受信信号に対して相関処理を行っているが、これよりも高い受信感度が必要とされる装置では、これ以上の長さの信号に対して相関処理を行ってもよい。逆に、本例の場合よりも低い受信感度で十分な装置では、少ない長さの信号で相関演算処理を行うようにしても良い。
【００２７】
実施の形態2.
上述の実施の形態1では、符号系列の全ての組み合わせに対して相関演算処理を行っていた。しかし、例えば23 dBの高感度化を図る際には200回のコヒーレント積分を要する。上述の実施の形態1の様に、符号系列のパターンを総当りで生成すると、そのパターンの総数は2の199乗個にも達する。この全パターンについて相関処理を行うことは、演算負荷の点から現実的ではない。そこで、符号系列のパターン生成を簡略化して演算負荷を減らすという方法が考えられる。
【００２８】
図５は、この発明の実施の形態2におけるGPS測位装置の構成を示すブロック図である。図５において、１４は航法データの全ての組み合わせを生成する航法データ生成手段、１５は航法データ生成手段１４が生成した航法データの一部を切り捨てることで符号系列を作成するコード境界データ生成手段である。それ以外の手段については、実施の形態1と同じである。
【００２９】
次に、全体の動作について説明する。
図６は、上記GPS測位装置の図示しない制御手段によって実行される処理プログラムを示す概略のフローチャートである。ステップST1とステップST2までの処理は、実施の形態1の動作と同じである。
【００３０】
次に、予め規定された長さのA/D変換されたデータがデータ記憶手段５に記録されると、航法データ生成手段１４は予め規定された長さの航法データを生成しコード境界データ生成手段１５に送る（ステップST21）。コード境界データ生成手段１５は航法データ生成手段１４から送られてきた航法データの各ビットをA/D変換されたデータの形式に合うように、それぞれ規定数だけ延長した上で、この航法データの先頭ビットの延長データを順次切り捨てて符号系列を生成する（ステップST22）。その後の、ステップST4からステップST8までの処理は、実施の形態1の動作と同じである。
【００３１】
ステップST8までの処理が行われた後、航法データ生成手段１４は、航法データの全ての組み合わせに関しての相関演算が処理されるまで、航法データを順次生成する（ステップST23）。これらの全ての組み合わせに関して、相関処理手段１０は相関演算処理をおこなう。その後の、ステップST9からステップST11までの処理は、実施の形態1の動作と同じである。
実施の形態2のGPS測位装置は、以上の動作によりGPS衛星を利用した位置測定を行う。
【００３２】
次に、航法データ生成手段１４、コード境界データ生成手段１５の動作について説明する。
ここでは、実施の形態1の場合と同様に、80ミリ秒（スペクトル拡散コード80個分）のデータサイズのコヒーレント積分を行う場合について説明する。図７はこれを示したものである。データ記憶手段５は、GPS信号を保存する。このとき、処理するデータサイズより1ミリ秒だけ長い、81ミリ秒のGPS信号が記録された時点で、相関演算の処理が開始される。
【００３３】
航法データ生成手段１４は、処理する航法データのサイズより１ビットだけ多い航法データを生成する。図７の例では、処理する航法データのサイズを４ビットとすると、B1〜B5のような5bitの航法データを生成する。この時、すべてのビットが”0”の”00000”という5bitのコードから、最初のビットのみ”0”で他はすべて”1”の”01111”というコードまでの全てのコードを生成する。また、航法データ生成手段１４は、”10000”から”11111”のコードは生成しない。
【００３４】
コード境界データ生成手段１５は、航法データ生成手段１４が生成した航法データを受け取り、図７のようにA/D変換されたデータの形式に合うようにB1からB5までのbitが各々20個連続したデータを作成する。次に、コード境界データ生成手段１５は、作成したデータをコード境界Dの値の数だけ切り捨て、符号系列C1からC80までのデータを生成する。各航法データに対して、DはLの倍数の値をとる。ここでは、L=4とし、Ｄは0、4、8、12、16の4の倍数の値をとるものとする。図７の例はＤが１６の場合を示している。このようにして、航法データ生成手段１４とコード境界データ生成手段１５は、航法データの全ての組合せとコード境界Ｄの取りうる全ての値に対して符号系列を作成し、相関処理を行う。
【００３５】
測位装置にとって航法データの極性が変化する符号系列がどこになるかは不明である。上述のコード境界データ生成手段１５での処理の場合、例えば4単位で符号系列の切り捨てを行った場合には、最悪符号系列2個分ずれた箇所（この場合は、図７のC2とＣ３の間）に航法データの変化点が来る場合がある。これを示したのが図7の下部の受信信号のビットパターンである。この場合、符号系列のビットの不整合は高々2ビット分で不整合の期待値としては1ビット分である。
【００３６】
さらには、受信データの隣接の航法データビットと変わらなければこのような損失が生じない。すなわち、Bn-1とBnの航法データのビットの組み合わせは、
[Bn-1, Bn] = [0, 0], [0, 1], [1, 0], [1, 1]
の4通りあるが、その中の[0,0]と[1,1]の場合は、連続ビットの切れ目を誤っても損失が生じない。隣接の航法データのビットと情報が変わる確率は1/2であるから、不整合の期待値は1ビットのさらに半分の0.5ビットになる。
【００３７】
すなわち、連続ビットの切り捨て数を4ビット毎に設定しても、20ビットの内19.5ビット分はコヒーレント積分として加算されると期待することができる。故にコヒーレント積分の損失は、0.5/20で済む。一方、符号系列Cnのビットパターンの総数は、ビットパターンの切れ目を4ビット毎に設定するので、演算負荷は連続ビットの切れ目を20通りに分ける場合の4分の1に低減される。
【００３８】
以上のように、この実施の形態2によれば、実施の形態１の効果に加え、航法データ生成手段１４で航法データのビットパターンを総当りで生成し、1航法データビットを形成する20コード分の上記ビットパターンの切り捨て数をＬビット毎に設定して、符号系列のビットパターンを生成する。これにより、コヒーレント積分の損失はわずかであるにもかかわらず、演算負荷をL分の1に削減できるという効果が得られる。これにより、コヒーレント積分演算手段のハードウェア規模を抑えることができるため、省電力化、装置の軽量化などが可能になるという効果が得られる。また、GPS信号の受信から測位までの時間を短縮できるという効果が得られる。
【００３９】
実施の形態3.
上述の実施の形態1では、符号系列の全ての組み合わせと遅延時間τずつ順次生成された遅延時間の全ての組合せ（以下、これを遅延時間τのとりうる全ての値と呼ぶこともある）に関して、総当りで相関処理を行っていた。しかし、遅延時間τが同一の場合の相関処理では、初回にスペクトル拡散コード単位（1ミリ秒）で相関処理を行いこの相関処理の結果を記憶手段に保存しておけば、２回目以降の相関処理で記憶手段に保存されている相関処理結果を利用することにより単純に極性を変えるだけで他の符号系列のパターンを生成できるので、このパターンとの相関処理を行うことで簡単に相関処理が行える。これにより、相関処理の負荷を軽減するという方法が考えられる。
【００４０】
図８は、この発明の実施の形態3におけるGPS測位装置の構成を示すブロック図である。図８において、１６は相関処理手段１０が算出した、スペクトル拡散コード単位（1ミリ秒）での相関処理の結果を保存するコード単位相関処理結果記憶手段である。それ以外の手段については、実施の形態1と同じである。
【００４１】
次に、全体の動作について説明する。
図９は、上記GPS測位装置の図示しない制御手段によって実行される処理プログラムを示す概略のフローチャートである。ステップST1からステップST5までの処理は、実施の形態1の動作と同じである。 
【００４２】
次に、相関処理手段１０は、遅延時間τに関する相関処理が初めて行われるか否かを判定する（ステップST31）。遅延時間τに関する相関処理が初めて行われる場合、相関処理手段１０は、各スペクトル拡散コードごと（1ミリ秒単位）に相関処理を行い、各スペクトル拡散コード単位での相関処理の結果をスペクトル拡散コード単位相関処理結果記憶手段１６に記憶する（ステップST32）。遅延時間τに関する相関処理が初めてではない場合、相関処理手段１０は、遅延時間τに関する各コード単位での相関処理の結果をスペクトル拡散コード単位相関処理結果記憶手段１６から読み出す（ステップST33）。相関処理手段１０は、これらの値を利用して相関処理を行い、演算結果を遅延時間推定手段１１に送る。遅延時間推定手段１１は、送られてきた相関処理の結果と対応する遅延時間τを内部に保持する（ステップST34）。
【００４３】
その後の、ステップST7からステップST11までの処理は、実施の形態1の動作と同じである。
実施の形態3のGPS測位装置は、以上の動作によりGPS衛星を利用した位置測定を行う。
【００４４】
次に、相関処理手段１０、コード単位相関処理結果記憶手段１６の動作について説明する。
ここでは、実施の形態1の場合と同様に、80ミリ秒（スペクトル拡散コード80個分）のデータサイズのコヒーレント積分を行う場合について説明する。図１０はこれを示したものである。まず、“0000・・・00”という80bitの符号系列と遅延時間τだけ遅延されたスペクトル拡散コードが相関処理手段１０に送られてくる。相関処理手段１０は、各スペクトル拡散コード単位（1ミリ秒単位）でスペクトル拡散コードとGPS受信信号との相関処理を行う。得られた各コード単位の相関処理の結果は、E1(τ)〜E80(τ)として、コード単位相関処理結果記憶手段１６に記録する。
【００４５】
ここでは、単純化のため、相関処理手段１０における相関処理の際に、1チップ（各ビット）の信号の“1”を“+1”、“0”を“-1”として各チップでの乗算の結果を全て加算するものとする。これを示したのが、図１１である。スペクトル拡散コードとGPS受信信号の相関が一致する場合は、相関結果は1023になる。スペクトル拡散コードがπ位相変調された状態の場合は、相関結果は、-1023となる。相関が不一致の場合は、相関結果は-1もしくは+1となる。コード単位相関処理結果記憶手段１６には、これらの値が遅延時間τ毎にE1(τ)〜E80(τ)として記録される。
【００４６】
次に、相関処理手段１０は、E1(τ)〜E80(τ)から、80ミリ秒のスペクトル拡散コードに対する相関処理の結果を算出する。この場合、符号系列が“0000・・・00”であるため、E1(τ)〜E80(τ)を全て足した値が、相関処理の結果として算出される。相関処理手段１０は、この結果と遅延時間τを遅延時間推定手段１１に渡す。遅延時間τのとりうる全ての値に対して同様の処理を行う。
【００４７】
次に、コード生成手段６が生成した“0000・・・001”という80bitの符号系列と遅延時間τだけ遅延されたスペクトル拡散コードが相関処理手段１０に送られてくる。相関処理手段１０は、遅延時間τに対応する各コード単位の相関処理の結果、E1(τ)〜E80(τ)をコード単位相関処理結果記憶手段１６から読み出す。これらの、E1(τ)〜E80(τ)の値を利用して、相関処理手段１０は、80ミリ秒のスペクトル拡散コードに対する相関処理の結果を算出する。これを示したのが、図１２である。符号系列のC1〜C79が0なので、E1(τ)〜E79(τ)には、“+1”を乗算し、符号系列のC80が1なので、E80(τ)には、“-1”を乗算し、これらを足した値を相関処理の結果とする。相関処理手段１０は、この結果と遅延時間τを遅延時間推定手段１１に渡す。遅延時間τのとりうる全ての値に対して同様の処理を行う。
【００４８】
同様にして、相関処理手段１０は、遅延時間τに対応する各コード単位の相関処理の結果、E1(τ)〜E80(τ)をコード単位相関処理結果記憶手段１６から読み出し、これにコード生成手段６が生成した80bitの符号系列が“0”の場合は“+1”を乗算し、“1”の場合は“-1”を乗算して、相関処理の結果を算出する。これを数式にあらわすと以下の様になる。
【００４９】
2005321301.tif 000003
【００５０】
以上のように、この実施の形態3によれば、実施の形態１の効果に加え、相関演算処理手段１０で、各コード単位で相関処理を行い、これらの結果をコード単位相関処理結果記憶手段１６に記憶し、これを利用して相関処理の演算を実行する。これにより、最初の符号系列に関する遅延時間τのとりうる全ての値に関しての相関処理を行えば、他の組み合わせの符号系列の相関処理では、各スペクトル拡散コード単位で相関処理を行う必要はなく、スペクトル拡散コード単位相関処理結果記憶手段１６から値を読み出すことで、最終的な相関処理の演算をおこなうことができ、演算負荷を大幅に抑えることができるという効果が得られる。これにより、コヒーレント積分演算手段のハードウェア規模を抑えることができるため、省電力化、装置の軽量化などが可能になるという効果が得られる。また、GPS信号の受信から測位までの時間を短縮できるという効果が得られる。
【００５１】
なお、上記の実施例では、遅延時間τに関する処理のループの外側に符号系列に関する処理のループがある。しかし、遅延時間τに関する処理のループが符号系列に関する処理のループの外側であっても、処理にはなんら問題がない。この場合は、遅延時間τごとに符号系列の全ての組合せに関する相関処理を行うことになり、遅延時間τ+1の処理の際にはE1(τ)〜E80(τ)のデータを保持しなくてよくなる。これにより、コード単位相関処理結果記憶手段１６で記憶するデータ量を大幅に削減できるという効果が得られ、ハードウェア規模を抑えることができるため、省電力化、装置の軽量化などが可能になるという効果が得られる。
【００５２】
実施の形態4.
上述の実施の形態3では、遅延時間τが同一の相関処理では、スペクトル拡散コード単位（1ミリ秒）で相関処理を行った後、極性を変えるだけで他の符号系列のパターンを生成し、この符号系列の相関処理が行えるため、これを利用した相関処理の負荷削減を行っていた。しかし、遅延時間τが同一の相関処理では、さらに、異なる符号系列の相関処理結果に関する差分を利用して、演算負荷を削減するという方法が考えられる。
【００５３】
図１３は、この発明の実施の形態4におけるGPS測位装置の構成を示すブロック図である。図１３において、１７は相関処理手段１０が算出した、遅延時間τに関する一つ前の相関処理の結果を保存する相関処理結果一時記憶手段である。それ以外の手段については、実施の形態3と同じである。
【００５４】
次に、全体の動作について説明する。
図１４は、上記GPS測位装置の図示しない制御手段によって実行される処理プログラムを示す概略のフローチャートである。ステップST1からステップST5、ステップ31と、ステップ31の分岐後のステップ32、ステップ33までの処理は、実施の形態3の動作と同じである。
【００５５】
ステップ31の分岐において、遅延時間τに関する相関処理が初めて行われる場合、ステップ32の処理が行われた後に、相関処理手段１０は、各スペクトル拡散コードごと（1ミリ秒単位）の相関処理の結果を利用して総和処理を行う（ステップ41）。
【００５６】
ステップ31の分岐において、遅延時間τに関する相関処理が初めてではない場合、ステップ33の処理が行われた後に、相関処理手段１０は、以前の遅延時間τに関する相関処理で算出された、相関処理の結果を相関処理結果一時記憶手段１７から読み出す。その後、以前の遅延時間τに関する相関処理での符号系列と、現在処理している符号系列から相関処理の差分を算出して、相関処理結果一時記憶手段１７から読み出した相関処理の結果に加減し、相関処理の結果を算出する（ステップ42）。
【００５７】
相関処理手段１０により算出された相関処理の結果は、遅延時間推定手段１１に送られる。また、相関処理結果と、対応する遅延時間τ、符号系列の組を相関処理結果一時記憶手段１７に記録する。遅延時間推定手段１１は、送られてきた相関処理の結果と対応する遅延時間τを内部に保持する（ステップST43）。
【００５８】
その後の、ステップST7からステップST11までの処理は、実施の形態3の動作と同じである。
実施の形態4のGPS測位装置は、以上の動作によりGPS衛星を利用した位置測定を行う。
【００５９】
次に、相関処理手段１０、相関処理結果一時記憶手段１７の動作について説明する。
ここでは、実施の形態3の場合と同様に、80ミリ秒（スペクトル拡散コード80個分）のデータサイズのコヒーレント積分を行う場合について説明する。図１５はこれを示したものである。まず、“0000・・・00”という80bitの符号系列と遅延時間τだけ遅延されたスペクトル拡散コードが相関処理手段１０に送られてくる。相関処理手段１０は、各コード単位（1ミリ秒単位）でスペクトル拡散コードとGPS受信信号との相関処理を行う。得られた各コード単位の相関処理の結果は、E1(τ)〜E80(τ)として、コード単位相関処理結果記憶手段１６に記録する。次に、相関処理手段１０は、E1(τ)〜E80(τ)から、80ミリ秒のスペクトル拡散コードに対する相関処理の結果を算出する。この場合、符号系列が“0000・・・00”であるため、処理結果をS1(τ)とすると、以下のような数式となる。
【００６０】
S1(τ) = E1(τ)+ E2(τ)+ E3(τ)+・・・+ E79(τ)+ E80(τ)………（２）
【００６１】
相関処理手段１０は、この結果と遅延時間τとこの場合の符号系列の組である“0000・・・00”という80bitのデータを相関処理結果一時記憶手段１７に渡す。遅延時間τのとりうる全ての値に対して同様の処理を行う。
【００６２】
次に、コード生成手段６が“0000・・・001”という80bitの符号系列と遅延時間τだけ遅延されたスペクトル拡散コードが相関処理手段１０に送られてくる。相関処理手段１０は、遅延時間τに対応する各コード単位の相関処理の結果、E1(τ)〜E80(τ)をコード単位相関処理結果記憶手段１６から読み出す。また、相関処理結果一時記憶手段１７に記録されている以前の相関処理の結果である、S1(τ)を読み出す。この時に処理する符号系列が“0000・・・001”であり、処理結果をS2(τ)とすると、以下のような数式となる。
【００６３】
S2(τ) = E1(τ)+ E2(τ)+ E3(τ)+・・・+ E79(τ)− E80(τ)
= S1(τ) −2×E80(τ)………………………………………………（３）
【００６４】
数式（３）にあるように、相関処理手段１０は、S1(τ)とE80(τ)のデータのみからS2(τ)を算出する。これは、符号系列“0000・・・000”から符号系列“0000・・・001”へと変化するビットである80it目のコード単位の相関処理の結果E80(τ)の値を2倍し、前の相関処理の値S1(τ)から減算しているのと全く同じことである。相関処理手段１０は遅延時間τのとりうる全ての値に対して同様の処理を行い、結果を相関処理結果一時記憶手段１７に記録する。
【００６５】
以下、同様にして、図１５にあるように、符号系列“0000・・・010”に対応する相関処理の結果をS3(τ)、符号系列“0000・・・011”に対応する相関処理の結果をS4(τ)とした場合、処理を行う演算の数式は以下の様になる。
【００６６】
S3(τ) = E1(τ)+ E2(τ)+ E3(τ)+・・・−E79(τ)＋ E80(τ)
= S2(τ) −2×E79(τ) ＋2×E80(τ)…………………………………（４）
【００６７】
S4(τ) = E1(τ)+ E2(τ)+ E3(τ)+・・・−E79(τ)− E80(τ)
= S3(τ) −2×E80(τ)…………………………………………………（５）
【００６８】
同様にして、相関処理手段１０は、先に算出したS2(τ)、S3(τ)を利用して、S3(τ)、S4(τ)算出し、結果を相関処理結果一時記憶手段１７に記録する。このようにして、相関処理手段１０は、前の符号系列から変化するbitに対応するスペクトル拡散コード単位の相関処理結果En(τ)を2倍して、前の相関処理の値から加減算することにより、相関処理の値を算出する。
【００６９】
以上のように、演算を行うことにより、過去の演算結果とその差分をとるだけで相関処理の結果を算出でき、実施の形態3の場合にくらべて、演算を削減できる。図１５の符号系列の処理の順番は、C1からC80を2進数の各桁と考えた場合、バイナリコードと呼ばれる並びと同じになる。このため、C1からC80の符号系列がどのように変化するかを容易に求めることができ、数式（3）、数式（４）のような差分演算を行うことは容易である。また、数式（3）、数式（４）等では、E79(τ)、E80(τ)を2をかけているが、このような演算は2進数では1ビットのシフトで行うことができる。このため、数式（3）、数式（４）等の演算は、ハードウェアなどの処理ではシフトと単純な加減算として処理でき、装置を単純化、縮小化することにもつながる。
【００７０】
また、図１５の符号系列の処理の順番はバイナリコードと呼ばれる並びと同じになるが、符号系列の処理の順番をグレイコードと呼ばれる並びと同じにすることで、さらに演算負荷を削減することができる。これを示したのが、図１６である。
【００７１】
図１６においては、符号系列の処理の順番が異なるだけで、それ以外は上述の処理と同じである。図１６の、符号系列“000・・・0000”の相関処理の結果である、S'1(τ)、符号系列“000・・・0001”の相関処理の結果である、S'2(τ)は、数式（2）のS2(τ)、数式（3）のS2(τ)と同様の数式で求める。次に、相関処理手段１０では、符号系列“000・・・0011”の相関処理の結果である、S'3(τ)を求める。これを数式に表すと以下の様になる。
【００７２】
S'3(τ) = E1(τ)+ E2(τ)+ E3(τ)+・・・−E79(τ)− E80(τ)
= S'2(τ) −2×E79(τ)…………………………………………………（６）
【００７３】
以下、同様にして、図１６にある順番で相関処理の結果を算出する。グレイコードの特徴は、一つ前のコードとの違いが必ず1ビットのみになるように構成されている点であり、図１６における処理でも、一つ前の符号系列との差異が必ず一つだけになるように並んでいる。このため、前の相関処理の結果から1回加減算を行うだけで、相関処理の結果を算出することができる。このため、図１５のような、バイナリコードの順番で符号系列が並んでいる場合の処理に比べて、演算の回数を半分程度に削減することができる。また、ハードウェアでこのような処理を行う場合、１回の相関処理で処理される演算が1回の加減算であるため、メモリへのアクセス、演算器へのアクセスが1回で済むため、データ転送用のバスや処理装置等を単純化、縮小化することが容易になる。
【００７４】
以上のように、この実施の形態4によれば、過去の相関処理の結果を相関処理結果一時記憶手段１７に記憶し、この過去の相関処理の結果との差分を利用して相関処理の演算を実行する。これにより、、演算負荷を大幅に抑えることができるという効果が得られる。これにより、コヒーレント積分演算装手段のハードウェア規模を抑えることができるため、省電力化、装置の軽量化などが可能になるという効果が得られる。また、GPS信号の受信から測位までの時間を短縮できるという効果が得られる。
【００７５】
また、上記の実施例では、遅延時間τに関する処理のループの外側に符号系列に関する処理のループがある。しかし、遅延時間τに関する処理のループが符号系列に関する処理のループの外側であっても、処理にはなんら問題がない。この場合は、遅延時間τごとに符号系列の全ての組合せに関する相関処理を行うことになり、遅延時間τ+1の処理の際にはS1(τ)、S'1(τ)等のデータを保持しなくてよくなる。これにより、相関処理結果一時記憶手段１７で記憶するデータ量を大幅に削減できるという効果が得られ、ハードウェア規模を抑えることができるため、省電力化、装置の軽量化などが可能になるという効果が得られる。
【産業上の利用可能性】
【００７６】
以上のように、この発明はコヒーレント積分を実行することにより高感度GPS測位を実現することができるので、衛星からのGPS信号を受信して受信位置を正確に測位するGPS測位装置およびGPS測位方法の分野に適用される。
【図面の簡単な説明】
【００７７】
【図１】この発明の実施の形態1におけるGPS測位装置の構成を示すブロック図である。
【図２】この発明の実施の形態1におけるGPS測位信号処理のプログラムを示すフローチャートである。
【図３】この発明の実施の形態1においてGPS受信信号のフォーマットを示す図である。
【図４】この発明の実施の形態1においてGPS受信信号と生成されたコードとの相関処理の方法を示す図である。
【図５】この発明の実施の形態2におけるGPS測位装置の構成を示すブロック図である。
【図６】この発明の実施の形態2におけるGPS測位信号処理のプログラムを示すフローチャートである。
【図７】この発明の実施の形態2において航法データから符号系列を生成する方法を示す図である。
【図８】この発明の実施の形態3におけるGPS測位装置の構成を示すブロック図である。
【図９】この発明の実施の形態3におけるGPS測位信号処理のプログラムを示すフローチャートである。
【図１０】この発明の実施の形態3においてスペクトル拡散コードとGPS受信信号との相関処理の方法を示す図である。
【図１１】この発明の実施の形態3において1ミリ秒単位のスペクトル拡散コードとGPS受信信号との相関処理の結果を示す図である。
【図１２】この発明の実施の形態3においてコード単位での相関処理の結果から、相関処理の値を算出する方法を示す図である。
【図１３】この発明の実施の形態4におけるGPS測位装置の構成を示すブロック図である。
【図１４】この発明の実施の形態4におけるGPS測位信号処理のプログラムを示すフローチャートである。
【図１５】この発明の実施の形態4においてバイナリコードの順番で生成された符号系列と相関処理の差分から相関処理の値を算出する方法を示す図である。
【図１６】この発明の実施の形態4においてグレイコードの順番で生成された符号系列と相関処理の差分から相関処理の値を算出する方法を示す図である。
【符号の説明】
【００７８】
１ GPS測位装置、２ GPSアンテナ、３ 受信手段、４ Ａ／Ｄ変換手段、５ データ記憶手段、６ コード生成手段、７ スペクトル拡散コード発生手段、８ 乗算手段、９ 遅延手段、１０ 相関処理手段、１１ 遅延時間推定手段、１２ 測位計算手段、１３ 表示手段、１４ 航法データ生成手段、１５ コード境界データ生成手段、１６ コード単位相関処理結果記憶手段、１７ 相関処理結果一時手段。
【図１】
2005321301.tif 000004
【図２】
2005321301.tif 000005
【図３】
2005321301.tif 000006
【図４】
2005321301.tif 000007
【図５】
2005321301.tif 000008
【図６】
2005321301.tif 000009
【図７】
2005321301.tif 000010
【図８】
2005321301.tif 000011
【図９】
2005321301.tif 000012
【図１０】
2005321301.tif 000013
【図１１】
2005321301.tif 000014
【図１２】
2005321301.tif 000015
【図１３】
2005321301.tif 000016
【図１４】
2005321301.tif 000017
【図１５】
2005321301.tif 000018
【図１６】
2005321301.tif 000019