JPWO2020174635A1 - 検出方法および検出プログラム - Google Patents

検出方法および検出プログラム Download PDF

Info

Publication number
JPWO2020174635A1
JPWO2020174635A1 JP2021501475A JP2021501475A JPWO2020174635A1 JP WO2020174635 A1 JPWO2020174635 A1 JP WO2020174635A1 JP 2021501475 A JP2021501475 A JP 2021501475A JP 2021501475 A JP2021501475 A JP 2021501475A JP WO2020174635 A1 JPWO2020174635 A1 JP WO2020174635A1
Authority
JP
Japan
Prior art keywords
satellite
detection device
solution
satellites
positioning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2021501475A
Other languages
English (en)
Other versions
JP7081716B2 (ja
Inventor
潤一 長田
潤一 長田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2020174635A1 publication Critical patent/JPWO2020174635A1/ja
Application granted granted Critical
Publication of JP7081716B2 publication Critical patent/JP7081716B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/34Power consumption

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

第1時点(t1)においてデバイス(111)が5機以上の衛星からデータを受信した結果に基づいて、デバイス(111)の3次元位置を示す変数X,Y,Zと、時間ずれに関する変数t,dtと、を含む方程式の解を算出する。また、第2時点(t2)においてデバイス(111)が4機の衛星からデータを受信した結果と、第1時点(t1)について算出した変数dtの解と、に基づいて変数X,Y,Z,tを含む方程式の解を算出する。そして、第1時点(t1)および第2時点(t2)のそれぞれについて、算出した変数X,Y,Zの各解に基づくデバイス(111)の位置情報を出力する。

Description

本発明は、検出方法および検出プログラムに関する。
従来、GNSS(Global Navigation Satellite System:全地球航法衛星システム)などの人工衛星を利用した測位システムが知られている(たとえば、下記特許文献1〜3参照。)。たとえば、測位対象のデバイスが4機以上の衛星からのデータを受信した結果を用いることで、そのデバイスのXYZ座標およびそのデバイスの時刻ずれを変数として含む方程式の解を測位解として算出する方法が知られている。また、測位対象のデバイスが5機以上の衛星からのデータを受信した結果を用いることで、そのデバイスが衛星からのデータを短時間しか受信しなくても測位解を得ることが可能になるスナップショット測位が知られている。
特表2012−524273号公報 特開2011−257415号公報 特開2013−217925号公報
しかしながら、上述した従来技術では、たとえばスナップショット測位において、測位対象のデバイスと衛星との間が建物等により遮られると、デバイスが捕捉する衛星の数が所定数に達せずに、測位解を得ることができない場合がある。
1つの側面では、本発明は、捕捉衛星数が所定数より少なくても測位解を得ることができる検出方法および検出プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、1つの実施態様では、第1時点においてデバイスが5機以上の衛星からデータを受信した結果に基づいて、前記デバイスの3次元位置を示す第1〜第3変数と、前記デバイスの内部時刻のずれを示す第4変数と、前記デバイスと前記衛星との間のドップラー効果による時間ずれを示す第5変数と、を含む方程式の解を算出し、前記第1時点と異なる第2時点において前記デバイスが4機の衛星からデータを受信した結果と、前記第1時点について算出した前記第5変数の解と、に基づいて前記第1〜第4変数を含む方程式の解を算出し、前記第1時点および前記第2時点のそれぞれについて、算出した前記第1〜第3変数の各解に基づく前記デバイスの位置情報を出力する検出方法および検出プログラムが提案される。
1つの側面では、本発明は、捕捉衛星数が所定数より少なくても測位解を得ることができるという効果を奏する。
図1は、実施の形態にかかる端末位置検出システムの一例を示す図である。 図2は、実施の形態にかかるデバイスによる捕捉衛星数の変化の一例を示す図である。 図3は、実施の形態にかかる検出装置の一例を示す図である。 図4は、実施の形態にかかる検出装置のハードウェア構成の一例を示す図である。 図5は、実施の形態にかかる検出装置による処理の一例を示すフローチャートである。 図6は、実施の形態にかかる検出装置による4機の衛星についての測定データに基づく測位の一例を示す図である。 図7は、実施の形態にかかる検出装置を用いた移動経路の特定の一例を示す図である。 図8は、実施の形態にかかる検出装置により得られるトレース情報の一例を示す図である。 図9は、実施の形態にかかる検出装置による測位データの第1の算出方法の一例を示す図である。 図10は、実施の形態にかかる検出装置による測位データの第2の算出方法の一例を示す図である。 図11は、実施の形態にかかる検出装置による通常のスナップショット測位演算の一例を示すフローチャートである。 図12は、実施の形態にかかる検出装置による通常のスナップショット測位演算において算出される各情報の一例を示す図である。 図13は、実施の形態にかかる検出装置による通常のスナップショット測位演算における解の算出の一例を示す図である。 図14は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算の一例を示すフローチャートである。 図15は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算において算出される各情報の一例を示す図である。 図16は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算における解の算出の一例を示す図である。
以下に図面を参照して、本発明にかかる検出方法および検出プログラムの実施の形態を詳細に説明する。
(実施の形態)
(実施の形態にかかる端末位置検出システム)
図1は、実施の形態にかかる端末位置検出システムの一例を示す図である。図1に示すように、実施の形態にかかる端末位置検出システム100は、デバイス111と、受信局120と、検出装置130と、を含む。
デバイス111は、端末位置検出システム100による測位対象の端末である。図1に示す例では、デバイス111はトラック110に搭載されており、その結果、端末位置検出システム100によってトラック110の位置が検出される。トラック110の位置は、たとえば緯度および経度によって表される。
たとえば、端末位置検出システム100は、トラック110の現在位置の検出結果の時系列をトレース情報として生成する。これにより、たとえば、トラック110による運送を管理する運送業者が、トラック110のトレース情報に基づいて、トラック110が移動した経路を特定することが可能になる。
衛星11〜15を含む各衛星は、測位衛星として地球の軌道上に存在する人工衛星である。各衛星は、それぞれに搭載された原子時計に基づく時刻情報などを含むデータを無線送信する。デバイス111は、各衛星から無線送信されるデータを受信可能である。
デバイス111が捕捉する衛星の数(以下、「捕捉衛星数」とも称する。)は、そのときのデバイス111の位置や、デバイス111と各衛星との間の遮蔽物(建物など)によって異なる。デバイス111が衛星を捕捉するとは、たとえばデバイス111がその衛星から無線送信されたデータを受信できることである。
デバイス111は、ある時点において受信した1機以上の衛星からのデータに基づく情報を、その時点におけるデバイス111の位置を特定するための測定データとして受信局120へ無線送信する。上述のように、端末位置検出システム100においてトラック110のトレース情報を生成する場合は、デバイス111は、衛星からのデータの受信および測定データの無線送信を繰り返し(たとえば周期的に)行う。
受信局120は、たとえば地上に固定された基地局であり、デバイス111との間で無線通信が可能である。たとえば、受信局120は、デバイス111から無線送信された測定データを受信し、受信した測定データを検出装置130へ送信する。このとき、受信局120は、測定データを受信したときの受信局120の内部時刻を示すタイムスタンプを、検出装置130へ送信する測定データに付加してもよい。受信局120と検出装置130との間の通信は、無線通信であってもよいし有線通信であってもよい。
検出装置130は、受信局120から受信した測定データに基づいて、デバイス111の現在位置を検出する。たとえば、検出装置130は、デバイス111が捕捉した1機以上の衛星についての測定データに基づく連立方程式の解(近似解を含む)を最小二乗法等により算出することにより、デバイス111の現在位置を検出する。
ここで、端末位置検出システム100においては、デバイス111の測位方法として、コード位相とドップラー周波数のみから測位計算を行うスナップショット測位が用いられる。スナップショット測位は、たとえば、検出装置130がデバイス111の測位解を得るために5つの変数(たとえば後述の変数X,Y,Z,t,dt)を含む連立方程式を用いる測位方法である。
スナップショット測位においては、4つの変数(たとえば後述の変数X,Y,Z,t)を含む連立方程式を用いる測位方法(通常の測位方法と称する。)と比べて、1回の測位のためにデバイス111が衛星からのデータを受信する時間を短くすることができる。
たとえば、通常の測位方法においては、デバイス111は1回の測位のために衛星からのデータを30秒程度受信することを要する。一方、スナップショット測位においては、デバイス111は1回の測位のために衛星からのデータを数ミリ秒(たとえば4[ms]あるいは100[ms]程度)だけ受信すればよい。
したがって、端末位置検出システム100において、デバイス111は、スナップショット測位に十分な時間(数ミリ秒)だけ衛星からのデータを受信する。このため、デバイス111の消費電力を低減することができる。
ただし、スナップショット測位においては、5つの変数を含む連立方程式の解を算出するため、1回の測位のために5機以上の衛星についての測定データを要する。したがって、スナップショット測位は、デバイス111が5機以上の衛星(たとえば衛星11〜15)を捕捉していることを要する。以下、5機以上の衛星についての測定データを用いたスナップショット測位を通常のスナップショット測位と称する。
これに対して、検出装置130は、たとえばデバイス111が4機のみの衛星しか捕捉できていない時点についても、デバイス111による数ミリの受信により得られた4機の衛星の測定データに基づいてデバイス111の位置を検出することができる。この検出の方法については後述する。
また、端末位置検出システム100においては、デバイス111の位置の検出を、デバイス111ではなく外部の検出装置130において行う測位方法が用いられている。たとえば検出装置130がクラウドコンピューティングにより実現される場合に、このような測位方法はたとえばCO−GPS(Cloud Offloaded−Global Positioning System)と呼ばれる。CO−GPSのスナップショット測位においては、上述の5つの変数の第5変数(dt)はcoarse time error(e)と呼ばれる。
(実施の形態にかかるデバイスによる捕捉衛星数の変化)
図2は、実施の形態にかかるデバイスによる捕捉衛星数の変化の一例を示す図である。たとえば、トラック110が、区間211、区間212、区間213の順に移動したとする。このとき、区間212において、衛星13からのデータが建物等の遮蔽物21に遮られてデバイス111が衛星13を捕捉できなかったとする。ただし、区間211〜213のそれぞれにおいて、デバイス111は、衛星11,12,14,15を捕捉していたとする。また、衛星13についても、区間211,213においては捕捉していたとする。
この場合に、区間211〜213におけるデバイス111による捕捉衛星数は、それぞれ5機、4機、5機となる。したがって、区間211,213については通常のスナップショット測位によりデバイス111の測位解を得ることができるが、区間212については通常のスナップショット測位ではデバイス111の測位解を得ることができない。
これに対して、検出装置130は、区間211,213については通常のスナップショット測位によりデバイス111の測位解を算出する。また、検出装置130は、区間212については、区間212の近くの区間(たとえば区間211や区間213)におけるデバイス111の測位解を用いたスナップショット測位により、区間212におけるデバイス111の測位解を算出する。
(実施の形態にかかる検出装置)
図3は、実施の形態にかかる検出装置の一例を示す図である。検出装置130は、たとえば、図3に示すように、入力部301と、捕捉衛星数判定部302と、第1算出部303と、記憶部304と、第2算出部305と、出力部306と、を備える。
入力部301には、デバイス111が各時点において衛星からデータを受信した結果である測定データが入力される。入力部301は、入力された時点ごとの測定データを捕捉衛星数判定部302へ出力する。
捕捉衛星数判定部302は、入力部301から出力された測定データが何機の衛星についての測定データであるかを判定する。そして、捕捉衛星数判定部302は、5機以上の衛星についての測定データを第1算出部303へ出力し、4機の衛星についての測定データを第2算出部305へ出力する。3機以下の衛星についての測定データは、たとえば捕捉衛星数判定部302において破棄される。
第1算出部303は、捕捉衛星数判定部302から出力された5機以上の衛星についての測定データに基づいて、変数X,Y,Z,t,dt(第1〜第5変数)を含む第1方程式の解を算出する。変数X,Y,Zは、デバイス111のXYZ座標(3次元位置)を示す変数である。すなわち、変数X(第1変数)はデバイス111のX座標を示し、変数Y(第2変数)はデバイス111のY座標を示し、変数Z(第3変数)はデバイス111のZ座標を示す。
変数t(第4変数)は、各衛星の原子時計に基づく時刻に対する、デバイス111の内部時刻のずれを示す変数である。変数dt(第5変数)は、上述のようにデバイス111が衛星からのデータを短い時間しか受信しないことに起因する、デバイス111と衛星との間のドップラー効果による時間ずれを示す変数である。たとえば、第1算出部303による解の算出は、5機以上の衛星についての測定データに基づくスナップショット測位演算による解の算出である。
第1算出部303は、たとえば算出した変数X,Y,Zの解を出力部306へ出力する。また、第1算出部303は、算出した変数dtの解を記憶部304へ出力する。記憶部304は、第1算出部303から出力された変数dtの解を、第2算出部305から参照可能な参照元データとして記憶する。
第2算出部305は、捕捉衛星数判定部302から出力された4機の衛星についての測定データと、記憶部304によって参照元データとして記憶された変数dtの解と、に基づいて変数X,Y,Z,t(第1〜第4変数)を含む第2方程式の解を算出する。第2方程式は、たとえば上述の第1方程式において、変数dtの値を記憶部304が記憶する変数dtの解に固定した方程式である。第2算出部305は、たとえば算出した変数X,Y,Zの解を出力部306へ出力する。
また、第2算出部305は、複数の時点について算出された変数dtの解が記憶部304に記憶されている場合は、直前の時点について算出された変数dtの解を用いて解を算出してもよい。直前の時点とは、たとえば、デバイス111が衛星からのデータを受信した各時点のうち、捕捉衛星数判定部302から第2算出部305へ出力された測定データが受信された第2時点の直前の1つの時点(第1時点)である。これにより、4機の衛星についての測定データしか得られなかった時点のデバイス111の位置を正確に推定することができる。
ただし、第2算出部305が用いる変数dtの解は、直前の時点について算出された解に限らず、直後の1つの時点について算出された解や、直前および直後の各時点について算出された各解の平均などであってもよい。
出力部306は、第1算出部303から出力された変数X,Y,Zの解に基づくデバイス111の位置情報と、第2算出部305から出力された変数X,Y,Zの解に基づくデバイス111の位置情報と、をそれぞれ出力する。これにより、5機以上の衛星についての測定データが得られた時点におけるデバイス111の位置情報だけでなく、4機のみの衛星についての測定データしか得られなかった時点におけるデバイス111の位置情報も得ることができる。
たとえば、出力部306は、デバイス111の位置情報を、そのデバイス111の位置情報の算出に用いたデータをデバイス111が受信した時刻と対応付けて出力する。これにより、デバイス111の位置情報の時系列を示すトレース情報を得ることができる。
出力部306による位置情報の出力方法には各種の出力方法を用いることができる。たとえば、出力部306の位置情報の出力は、ディスプレイによる表示、スピーカによる音声出力、印刷装置や記憶デバイスへの出力、ネットワークを介した他の通信装置への送信など各種の出力とすることができる。
(実施の形態にかかる検出装置のハードウェア構成)
図4は、実施の形態にかかる検出装置のハードウェア構成の一例を示す図である。図3に示した検出装置130は、たとえば図4に示す情報処理装置400により実現することができる。情報処理装置400は、プロセッサ401と、メモリ402と、通信インタフェース403と、を備える。また、情報処理装置400は、ユーザインタフェース404を備えてもよい。プロセッサ401、メモリ402、通信インタフェース403およびユーザインタフェース404は、たとえばバス409によって接続される。
プロセッサ401は、信号処理を行う回路であり、たとえば情報処理装置400の全体の制御を司るCPU(Central Processing Unit)である。メモリ402には、たとえばメインメモリおよび補助メモリが含まれる。メインメモリは、たとえばRAM(Random Access Memory)である。メインメモリは、プロセッサ401のワークエリアとして使用される。
補助メモリは、たとえば磁気ディスク、光ディスク、フラッシュメモリなどの不揮発性メモリである。補助メモリには、情報処理装置400を動作させる各種のプログラムが記憶されている。補助メモリに記憶されたプログラムは、メインメモリにロードされてプロセッサ401によって実行される。
また、補助メモリは、情報処理装置400から取り外し可能な可搬型のメモリを含んでもよい。可搬型のメモリには、USB(Universal Serial Bus)フラッシュドライブやSD(Secure Digital)メモリカードなどのメモリカードや、外付けハードディスクドライブなどがある。
通信インタフェース403は、情報処理装置400の外部(たとえば受信局120)との間で通信を行う通信インタフェースである。通信インタフェース403は、プロセッサ401によって制御される。
ユーザインタフェース404は、たとえば、ユーザ(たとえばトラック110のトレース情報の管理者)からの操作入力を受け付ける入力デバイスや、ユーザへ情報を出力する出力デバイスなどを含む。入力デバイスは、たとえばポインティングデバイス(たとえばマウス)、キー(たとえばキーボード)やリモコンなどにより実現することができる。出力デバイスは、たとえばディスプレイやスピーカなどにより実現することができる。また、タッチパネルなどによって入力デバイスおよび出力デバイスを実現してもよい。ユーザインタフェース404は、プロセッサ401によって制御される。
図3に示した入力部301は、たとえば通信インタフェース403により実現することができる。図3に示した捕捉衛星数判定部302、第1算出部303および第2算出部305は、たとえばプロセッサ401およびメモリ402により実現することができる。図3に示した入力部301は、たとえばメモリ402により実現することができる。図3に示した出力部306は、たとえばメモリ402または通信インタフェース403により実現することができる。
(実施の形態にかかる検出装置による処理)
図5は、実施の形態にかかる検出装置による処理の一例を示すフローチャートである。実施の形態にかかる検出装置130は、たとえば図5に示す各ステップを実行する。まず、検出装置130は、デバイス111から受信局120を介して送信された、1機以上の衛星についての測定データを受信したか否かを判断し(ステップS501)、測定データを受信するまで待つ(ステップS501:Noのループ)。
ある衛星についての測定データは、たとえば、デバイス111がその衛星から受信したデータのコード位相を特定可能な情報と、その衛星の識別番号と、その測定データが得られたときの時刻を示すタイムスタンプと、を含む情報である。
ステップS501において、測定データを受信すると(ステップS501:Yes)、検出装置130は、デバイス111が捕捉した衛星の数(捕捉衛星数)が5機以上であるか否かを判断する(ステップS502)。すなわち、検出装置130は、受信した測定データが、5機以上の衛星についての測定データであるか否かを判断する。
ステップS502において、捕捉衛星数が5機以上である場合(ステップS502:Yes)は、検出装置130は、受信した5機以上の衛星についての測定データに基づいて通常のスナップショット測位演算を行う(ステップS503)。この通常のスナップショット測位演算については後述する。ステップS503のスナップショット測位演算により、デバイス111のXYZ座標を示す変数X,Y,Zと、デバイス111と衛星との間の時刻ずれを示す変数t,dtと、の解が得られる。
つぎに、検出装置130は、スナップショット測位演算により得られた変数dt(第5変数)の解を参照元データとしてメモリ402に記憶する(ステップS504)。このとき、検出装置130は、スナップショット測位演算に用いた測定データのタイムスタンプも参照元データとしてメモリ402に記憶してもよい。また、スナップショット測位演算により得られた変数dtの解が参照元データとしてメモリ402に記憶済みである場合に、検出装置130は、たとえば新たに得られた変数dtの解をメモリ402に記憶済みの解に上書きして記憶してもよい。
つぎに、検出装置130は、スナップショット測位演算により得られた変数X,Y,Zの解に基づいて算出した測位データを保存する(ステップS505)。測位データは、たとえば、変数X,Y,Zの解が示すデバイス111のXYZ座標を、緯度、経度および高度の座標系へ変換して得られる情報である。
また、ステップS505において、検出装置130は、算出した測位データを、測定時刻と対応付けて保存してもよい。測定時刻は、たとえば、測位データの算出に用いた測定データに付加されたタイムスタンプが示す時刻である。また、測定時刻は、変数t,dtの解に基づいて修正された時刻であってもよい。
つぎに、検出装置130は、後述のステップS508において記憶し、後述のステップS509において処理していない未処理測定データがあるか否かを判断する(ステップS506)。未処理測定データがない場合(ステップS506:No)は、検出装置130は、ステップS501へ戻る。
ステップS502において、捕捉衛星数が5機以上でない場合(ステップS502:No)は、検出装置130は、ステップS504によって参照元データ(変数dtの解)を記憶したか否かを判断する(ステップS507)。参照元データを記憶していない場合(ステップS507:No)は、検出装置130は、受信した測定データ(4機以下の衛星についての測定データ)を未処理測定データとして記憶し(ステップS508)、ステップS501へ戻る。
ステップS507において、参照元データを記憶している場合(ステップS507:Yes)は、検出装置130は、ステップS509へ移行する。すなわち、検出装置130は、たとえば受信した4機の衛星についての測定データに基づいて、記憶した参照元データを用いたスナップショット測位演算を行う(ステップS509)。ステップS509における参照元データを用いたスナップショット測位演算については後述する。
ステップS509のスナップショット測位演算により、ステップS503と同様に、デバイス111のXYZ座標を示す変数X,Y,Zと、デバイス111と衛星との間の時刻ずれを示す変数t,dtと、の解が得られる。ステップS509のつぎに、検出装置130は、ステップS505へ移行し、ステップS509のスナップショット測位演算により得られた解(たとえば変数X,Y,Zの解)に基づいて算出した測位データを保存する。
ステップS506において、未処理測定データがある場合(ステップS506:Yes)は、検出装置130は、ステップS507へ移行する。このとき、ステップS507からステップS509へ移行する場合に、検出装置130は、ステップS509において、たとえば4機の衛星についての未処理測定データに基づいて、参照元データを用いたスナップショット測位演算を行う。
図5に示したように、検出装置130は、5機以上の衛星についての測定データを受信した場合は、通常のスナップショット測位演算を行い、得られた測位データを保存する。また、このとき、検出装置130は、通常のスナップショット測位演算において得られた変数dtの解を参照元データとして記憶しておく。
また、検出装置130は、4機のみの衛星についての測定データを受信した場合は、参照元データを記憶していれば参照元データを用いたスナップショット測位演算を行い、参照元データを記憶していなければ測定データを未処理測定データとして記憶しておく。
一例として、測定データにおける捕捉衛星数が4機、4機、5機、…のように変化したとする。捕捉衛星数が4機である1つ目の測定データおよび2つ目の測定データについてはスナップショット測位演算が行われずにそれぞれ未処理測定データとして記憶される。
そして、捕捉衛星数が5機である3つ目の測定データについては通常のスナップショット測位演算が行われて測位データが保存される。また、このときの通常のスナップショット測位演算により得られた参照元データを用いて、未処理測定データとして記憶されていた1つ目の測定データおよび2つ目の測定データについてのスナップショット測位演算が行われて測位データが保存される。
なお、捕捉衛星数が3機以下であった場合は、参照元データを用いてもスナップショット測位演算を行うことができない。したがって、検出装置130は、たとえば、3機以下の衛星についての測定データは、処理不可能なデータとして保存し、または破棄する。
図5に示す例では、ステップS509において、捕捉衛星数が4機であった場合に、捕捉衛星数が5機以上であった各時点の参照元データのうち最新の参照元データを用いたスナップショット測位演算を行う処理について説明したが、このような処理に限らない。
たとえば、ステップS504の実行ごとに、参照元データが測定データのタイムスタンプと対応付けて上書きせずに記憶されてもよい。たとえば、検出装置130は、ステップS509において、現在の測定データのタイムスタンプの直前または直後のタイムスタンプと対応する参照元データを用いてスナップショット測位演算を行う。
また、検出装置130は、ステップS509において、複数の参照元データの平均値等を用いてスナップショット測位演算を行ってもよい。たとえば、検出装置130は、現在の測定データのタイムスタンプの直前のタイムスタンプと対応する参照元データと、現在の測定データのタイムスタンプの直後のタイムスタンプと対応する参照元データと、の平均等を用いてスナップショット測位演算を行う。
また、検出装置130は、現在の測定データのタイムスタンプより前の2以上のタイムスタンプと対応する各参照元データの平均値等を用いてスナップショット測位演算を行ってもよい。また、検出装置130は、現在の測定データのタイムスタンプより後の2以上のタイムスタンプと対応する各参照元データの平均値等を用いてスナップショット測位演算を行ってもよい。
また、検出装置130は、現在の測定データの前後の複数のタイムスタンプと対応する各参照元データから、現在の測定データに対応する参照元データの値を推測(補間)し、推測した参照元データを用いてスナップショット測位演算を行ってもよい。
(実施の形態にかかる検出装置による4機の衛星についての測定データに基づく測位)
図6は、実施の形態にかかる検出装置による4機の衛星についての測定データに基づく測位の一例を示す図である。たとえば、トラック110が地点P1、地点P2、地点P3の順に移動し、地点P1,P3においてはデバイス111が5機の衛星を捕捉したが、地点P2においてはデバイス111が4機のみの衛星を捕捉したとする。時点t1〜t3は、それぞれトラック110が地点P1〜P3を通過した時点である。
この場合に、検出装置130は、デバイス111が地点P1において得た5機の衛星についての測定データに基づく通常のスナップショット測位演算により地点P1の測位データを算出する。また、検出装置130は、地点P1についてのスナップショット測位演算により得られた変数dtの解と、デバイス111が地点P2において得た4機の衛星についての測定データと、に基づくスナップショット測位演算により地点P2の測位データを算出する。
また、検出装置130は、デバイス111が地点P3において得た5機の衛星についての測定データに基づく通常のスナップショット測位演算により地点P3の測位データを算出する。これにより、トラック110が通過した地点P1〜P3の測位データをトラック110のトレース情報として保存することができる。
グラフ601は、図6の条件で地点P2の測位データを繰り返し算出した結果を示す分布図である。グラフ601の横軸は、地点P2の東西方向の実際の位置座標に対する、上述の算出方法による地点P2の測位データの東西方向の位置座標の誤差を示している。グラフ601の縦軸は、地点P2の南北方向の実際の位置座標に対する、上述の算出方法による地点P2の測位データの南北方向の位置座標の誤差を示している。
グラフ601の各プロット点に示すように、上述の算出方法を用いることにより、デバイス111が4機のみの衛星を捕捉した地点P2についても、数十メートル以内の誤差の測位データを得ることができる。
(実施の形態にかかる検出装置を用いた移動経路の特定)
図7は、実施の形態にかかる検出装置を用いた移動経路の特定の一例を示す図である。図7において、マップ710は、トラック110が通った地域を示している。マップ710の道路711や遮蔽物712〜715は、トラック110が通った地域における道路や遮蔽物(たとえば建物)である。
移動経路720は、トラック110が実際に通った経路を示している。時刻t1〜t8は、トラック110が移動経路720を移動中に、デバイス111が衛星からのデータの受信を行った各時刻である。地点721〜728は、移動経路720における、時刻t1〜t8にトラック110が位置していた各地点である。
移動経路720のうち実線で示す部分はデバイス111が5機以上の衛星を捕捉していた部分であり、移動経路720のうち点線で示す部分はデバイス111が4機のみの衛星を捕捉していた部分である。この場合に、地点721,722,726〜728においては5機以上の衛星についての測定データが得られ、地点723〜725においては4機のみの衛星についての測定データが得られる。
図7に示す例において、検出装置130は、地点721,722,726〜728については5機以上の衛星についての測定データに基づく通常のスナップショット測位演算によりデバイス111の測位データを得る。また、検出装置130は、地点723〜725についても、たとえば地点722についてのスナップショット測位演算において得られた変数dtの解と、4機のみの衛星についての測定データと、に基づくスナップショット測位演算を行う。これにより、地点723〜725についてもデバイス111の測位データを得ることができる。
推定経路730は、5機以上の衛星についての測定データが得られた地点721,722,726〜728の測位データのみから線形補間により推定したトラック110の移動経路を参考として示している。推定経路730は、トラック110が通過した地点723〜725が考慮されていないため、実際のトラック110の移動経路720から大きく逸脱したものとなる。
これに対して、検出装置130によれば、地点721,722,726〜728の測位データだけでなく地点723〜725の測位データも得ることができる。これにより、トラック110の移動経路720を正確に推定することが可能になる。
(実施の形態にかかる検出装置により得られるトレース情報)
図8は、実施の形態にかかる検出装置により得られるトレース情報の一例を示す図である。図7に示した例において、検出装置130は、たとえば図8に示すトレース情報800を生成する。トレース情報800は、上述の時刻t1〜t8のそれぞれと対応付けて、緯度および経度の推定結果(測位データ)を示す情報である。
緯度Φ1〜Φ8は、それぞれ図7に示した地点721〜728について検出装置130により算出された測位データの緯度である。経度λ1〜λ8は、それぞれ図7に示した地点721〜728について検出装置130により算出された測位データの経度である。トレース情報800により、移動経路720を正確に推定することが可能になる。
一例としては、マップ710の道路711の範囲を示す情報と、トレース情報800と、を用いることにより、マップ710に対して移動経路720を示す線を重ねた画像を生成することができる。なお、トレース情報800は、時刻t1〜t8を省いた情報であってもよい。
(実施の形態にかかる検出装置による測位データの第1の算出方法)
図9は、実施の形態にかかる検出装置による測位データの第1の算出方法の一例を示す図である。エフェメリス901は、衛星ごとに、衛星の軌道および状態や、衛星の内部時計(原子時計)の補正情報等を示す情報である。タイムスタンプ902(タイムスタンプ_1)は、検出装置130が受信局120を介してデバイス111から取得した測定データに付されたタイムスタンプである。
軌道計算式903は、エフェメリス901に基づいて特定の時間における各衛星の位置座標を算出可能な計算式である。検出装置130は、エフェメリス901および軌道計算式903に基づいて、タイムスタンプ902が示す時刻における、測定データが示す各衛星の位置座標を示す衛星座標904を算出する。
受信局位置905は、受信局120の位置座標である。検出装置130は、エフェメリス901および受信局位置905に基づいて、測定データが示す衛星ごとに受信局疑似距離906を算出する。受信局疑似距離906は、タイムスタンプ902が示す時刻における、測定データが示す各衛星と受信局120との間の距離であって、誤差を含む。検出装置130は、衛星ごとの受信局疑似距離906のそれぞれについて、コード位相成分を切り捨てることにより、衛星ごとのプリアンブル補正値907を算出する。
コード位相908は、検出装置130が受信局120を介してデバイス111から取得した測定データが示す、デバイス111が各衛星から受信したデータのコード位相である。検出装置130は、プリアンブル補正値907とコード位相908とを加算することにより得た観測値に光速cを乗算することにより、衛星ごとの疑似距離909を算出する。疑似距離909は、タイムスタンプ902が示す時刻における、測定データが示す各衛星とデバイス111との間の距離であって、誤差を含む。
検出装置130は、衛星座標904および疑似距離909に基づく最小二乗法910を行うことにより解911,912を算出する。解911は、デバイス111のXYZ座標を示す変数X,Y,Zの解である。解912は、デバイス111の時刻ずれに関する上述の変数t,dtの解である。
つぎに、検出装置130は、解911が示すデバイス111のXYZ座標を、緯度、経度および高度の座標系であるデバイス緯度経度高度913に変換する。また、検出装置130は、デバイス緯度経度高度913と、解912が示す変数t,dtの解と、をタイムスタンプ902と対応付けて測位結果914として保存する。また、検出装置130は、測位結果914として保存したタイムスタンプ902および変数dtの解を、参照元データ915(タイムスタンプ_0およびdt_0)として記憶しておく。
上述の最小二乗法910において、検出装置130は、たとえば|(衛星座標)−(デバイス位置)|+t+α×dt+補正項=(疑似距離)を満たす変数X,Y,Z,t,dtの解を算出する。このとき、5機以上の衛星についての測定データ(タイムスタンプ902およびコード位相908)が得られている場合は、最小二乗法910として5変数の最小二乗法を行うことによって変数X,Y,Z,t,dtの解を算出することができる。5変数の最小二乗法を行うことによる変数X,Y,Z,t,dtの解の算出例については後述する(たとえば図11〜図13参照)。
一方で、4機のみの衛星についての測定データしか得られていない場合は、最小二乗法910として5変数の最小二乗法を行うことができない。この場合に、検出装置130は、参照元データ915に含まれるdtの解(dt_0)を上記の式の変数dtに代入し、最小二乗法910として4変数の最小二乗法を行うことによって変数X,Y,Z,tの解を算出することができる。4変数の最小二乗法を行うことによる変数X,Y,Z,tの解の算出例については後述する(たとえば図14〜図16参照)。
図9に示す例では、5機以上の衛星についての測定データが得られている場合に受信局疑似距離906やプリアンブル補正値907を算出する方法について説明したが、このような算出方法に限らない。たとえば、検出装置130は、5機以上の衛星についての測定データが得られている場合は、受信局疑似距離906やプリアンブル補正値907に代えて、衛星ごとのランドマークやグリッドポイントを算出してもよい。この場合に、検出装置130は、得られたデバイス緯度経度高度913を、地上のランドマークとして想定可能な所定範囲の標高によりフィルタリングして測位結果914として保存する。
(実施の形態にかかる検出装置による測位データの第2の算出方法)
図10は、実施の形態にかかる検出装置による測位データの第2の算出方法の一例を示す図である。図10において、図9に示した部分と同様の部分については同一の符号を付して説明を省略する。4機のみの衛星についての測定データしか得られていない場合に、検出装置130は、たとえば図10に示す第2の算出方法によって変数X,Y,Z,tの解を算出してもよい。
図10に示す例では、衛星座標904として、タイムスタンプ902が示す時刻に参照元データ915のdt_0の解を加算した時刻における、測定データが示す衛星ごとの位置座標を算出する。これにより、衛星座標904の対象時刻を、dtの解が0となる時刻に修正しておくことができる。
そして、検出装置130は、最小二乗法910において、上記の式の変数dtに0を代入する。これにより、図9に示した第1の算出方法と同じ変数X,Y,Z,tの解を算出することができる。
(実施の形態にかかる検出装置による通常のスナップショット測位演算)
図11は、実施の形態にかかる検出装置による通常のスナップショット測位演算の一例を示すフローチャートである。図12は、実施の形態にかかる検出装置による通常のスナップショット測位演算において算出される各情報の一例を示す図である。
検出装置130は、たとえば図5に示したステップS503において、5機以上の衛星についての測定データに基づく通常のスナップショット測位演算として、たとえば図11に示す処理を実行する。
まず、検出装置130は、受信局120から受信した、タイムスタンプおよび衛星ごとのコード位相を含む測定データを取得する(ステップS1101)。たとえば、検出装置130は、図12に示す測定データ1201を取得する。測定データ1201は、タイムスタンプ、衛星番号およびコード位相を含む。
測定データ1201のタイムスタンプは、測定データ1201が得られた時刻を示す情報である。たとえば、タイムスタンプは、受信局120がデバイス111から測定データ1201(タイムスタンプを除く)を受信したときに受信局120の内部時刻に基づいて生成して測定データ1201に付加したタイムスタンプである。また、タイムスタンプは、デバイス111が各衛星からのデータを受信して測定データ1201(タイムスタンプを除く)を生成したときにデバイス111の内部時刻に基づいて生成して測定データ1201に付加したタイムスタンプであってもよい。図12に示す例では、タイムスタンプは“261858”である。
測定データ1201の衛星番号は、デバイス111が捕捉した(データを受信した)各衛星の識別子である。図12に示す例では、衛星番号は“PRN7”、“PRN8”、“PRN10”、…の7機分の衛星の衛星番号である。
測定データ1201のコード位相は、衛星が送信するデータのコードにおける、デバイス111が受信した部分の位相である。図12に示す例では、衛星番号は“PRN7”、“PRN8”、“PRN10”、…が示す7機の衛星についてのコード位相はそれぞれ“0.141”、“0.713”、“0.883”、…である。
測定データ1201の衛星番号およびコード位相は、たとえばデバイス111が衛星から受信したデータを復号することにより得られる。以上のように、図12に示す測定データ1201は、タイムスタンプの“261858”が示す時刻に、デバイス111が7機の衛星からのデータを受信し、それぞれのコード位相が“0.141”、“0.713”、“0.883”、…であったことを示している。
つぎに、検出装置130は、受信局120の位置を示す受信局位置情報を取得する(ステップS1102)。たとえば、受信局位置情報は検出装置130のメモリ402に予め記憶されており、検出装置130はメモリ402からその位置情報を読み出す。または、検出装置130は受信局位置情報を受信局120や他の通信装置から受信してもよい。たとえば、検出装置130は、図12に示す受信局位置情報1202を取得する。受信局位置情報1202は、受信局120の位置(受信局位置)を、緯度、経度および高度により示している。
つぎに、検出装置130は、ステップS1101によって取得した測定データ1201に含まれるタイムスタンプと、ステップS1102によって取得した受信局位置情報1202と、に基づいて衛星ごとのプリアンブル補正値を算出する(ステップS1103)。たとえば、検出装置130は、図12に示すプリアンブル補正値情報1203を算出する。図12に示す例では、プリアンブル補正値情報1203は、上述の7機の衛星のそれぞれについて算出される。
また、検出装置130は、エフェメリスに基づいて、各衛星の軌道計算を行い、測定データ1201のタイムスタンプが示す時刻における各衛星のXYZ座標(X,Y,Z)および時計誤差補正値を算出する(ステップS1104)。エフェメリスは、上述の7機の衛星を含む各衛星の軌道および状態や、各衛星の内部時計(原子時計)の補正情報等を含む情報である。たとえば、検出装置130は、ネットワークを介してサーバ等からエフェメリスを受信する。または、検出装置130は、各衛星から送信されるエフェメリスを、デバイス111や受信局120を介して受信してもよい。
たとえば、検出装置130は、図12に示す衛星座標・時計誤差補正値情報1204を生成する。衛星座標・時計誤差補正値情報1204は、上述の7機の衛星のそれぞれについて、測定データ1201のタイムスタンプが示す時刻における、各衛星のXYZ座標(X,Y,Z)および時計誤差補正値を示す。
つぎに、検出装置130は、プリアンブル補正値情報1203のプリアンブル補正値、測定データ1201のコード位相および衛星座標・時計誤差補正値情報1204の時計誤差補正値に基づいて、各衛星の観測値を算出する(ステップS1105)。ある衛星についての観測値は、たとえばプリアンブル補正値+コード位相+時計誤差補正値により算出される。たとえば、検出装置130は、図12に示す観測値情報1205を生成する。観測値情報1205において、たとえば、“PRN7”の衛星についての観測値は、0.141+72+0.149≒72.291となる。
つぎに、検出装置130は、観測値情報1205の観測値および光速に基づいて、各衛星の疑似距離(観測した疑似距離)を算出する(ステップS1106)。各衛星の疑似距離は、各衛星とデバイス111との間の各距離であり、誤差を含む。ある衛星についての疑似距離は、たとえば観測値×光速により算出される。たとえば、検出装置130は、図12に示す疑似距離情報1206を生成する。疑似距離情報1206において、たとえば“PRN7”の衛星についての疑似距離は、72.291*光速≒21672290となる。
つぎに、検出装置130は、ステップS1104において算出した各衛星のXYZ座標と、ステップS1106において算出した各衛星の疑似距離と、に基づく最小二乗法により、変数X,Y,Z,t,dtの解を算出する(ステップS1107)。たとえば、検出装置130は、図12に示す解情報1207を生成する。最小二乗法による解の算出については後述する(たとえば図13参照)。
つぎに、検出装置130は、解情報1207が示すデバイス111のXYZ座標を、緯度、経度および高度の座標系に変換し(ステップS1108)、一連の処理を終了する。たとえば、検出装置130は、図12に示す測位データ1208を生成する。測位データ1208は、解情報1207が示すデバイス111のXYZ座標の座標変換後の値として、デバイス111の緯度、経度および高度を含む。
ステップS1107の最小二乗法における立式について説明する。ある衛星(i)についての誤差(i)は、たとえば下記(1)式により表すことができる。
誤差(i)=(疑似距離(i)−|衛星位置(i)−変数(X,Y,Z)|)−変数(t)−補正項 …(1)
ここで、変数であるX,Y,Z,tは、初期値として適当な値(たとえば0)が与えられる。上記(1)式を衛星ごとに立式した行列式は、下記(2)式のようになる。
(変換行列)*(変数ベクトル(X,Y,Z,t))=(誤差ベクトル)
⇔(変数(X,Y,Z,t))=(変換行列)\(誤差ベクトル) …(2)
ここで、たとえばXからX+dXのように、デバイス111の位置座標の微小変化を考える。上記(2)式の各項を座標X,Y,Zでそれぞれ偏微分すると、下記(3)式のようになる。
微小変化(X,Y,Z,t)=d変換行列\(誤差ベクトル) …(3)
検出装置130は、上記(3)式の立式と、誤差ベクトルを小さくする方向への変数ベクトルの修正と、を繰り返す演算を、誤差が十分に小さくなるまで行う。これにより、観測した疑似距離(疑似距離情報1206)と、軌道計算上の距離とが一致するときのデバイス111の位置(変数X,Y,Zの解)を求めることができる。
(実施の形態にかかる検出装置による通常のスナップショット測位演算における解の算出)
図13は、実施の形態にかかる検出装置による通常のスナップショット測位演算における解の算出の一例を示す図である。図11に示したステップS1107における、通常のスナップショット測位演算における解の算出例について説明する。
たとえば、検出装置130は、ステップS1104において算出した各衛星のXYZ座標と、ステップS1106において算出した各衛星の疑似距離と、に基づいて、図13に示す式1310を生成(立式)する。式1310は、(変換行列1311)\(誤差ベクトル1312)=(デバイス座標修正量1320)である。
変換行列1311は、デバイス111がデータを受信した各衛星(ここでは7機の衛星)に対応する各行と、5つの列と、を有する行列である。変換行列1311の第1列(最も左側の列)は、7機の衛星のそれぞれについて、(衛星X座標−デバイスX座標)÷疑似距離により算出された値である。ここで、衛星X座標は、ステップS1104において軌道計算により算出された衛星のX座標である。デバイスX座標は、初期値として適当な値(たとえば0)が割り当てられたデバイス111のX座標である。
変換行列1311の第2列は、7機の衛星のそれぞれについて、(衛星Y座標−デバイスY座標)÷疑似距離により算出された値である。ここで、衛星Y座標は、ステップS1104において軌道計算により算出された衛星のY座標である。デバイスY座標は、初期値として適当な値(たとえば0)が割り当てられたデバイス111のY座標である。
変換行列1311の第3列は、7機の衛星のそれぞれについて、(衛星Z座標−デバイスZ座標)÷疑似距離により算出された値である。ここで、衛星Z座標は、ステップS1104において軌道計算により算出された衛星のZ座標である。デバイスZ座標は、初期値として適当な値(たとえば0)が割り当てられたデバイス111のZ座標である。
変換行列1311の第4列は、各行の値が1である。変換行列1311の第5列は、7機の衛星のそれぞれについてのドップラー係数である。ドップラー係数は、たとえば上述のエフェメリスと、測定データ1201のタイムスタンプと、に基づく各衛星の軌道計算によって算出される。
誤差ベクトル1312は、7機の衛星のそれぞれについて、(疑似距離−|衛星XYZ座標−デバイスXYZ座標|)−t−ドップラー係数×dtにより算出された各値を示す。ここで、衛星XYZ座標は、ステップS1104において軌道計算により算出された衛星のXYZ座標である。デバイスXYZ座標は、変数X,Y,Zの現在の値が示す、デバイス111のXYZ座標である。tは、衛星の内部時刻に対するデバイス111の内部時刻のずれ(オフセット)を示す変数である。
ドップラー係数×dtは、たとえば、スナップショット測位においてはデバイス111が衛星からの電波を短時間しか受信しないことに起因するドップラー効果によって生じる時間ずれを示す変数である。すなわち、dtは、tの修正量に関する変数である。変数t,dtには、初期値として適当な値(たとえば0)が割り当てられる。
デバイス座標修正量1320は、式1310の左辺の計算結果であり、変数X,Y,Z,t,dtの各値の、次回の演算における修正量を示す。前回デバイス座標1330は、直前に立式した式1310に用いた変数X,Y,Z,t,dtの各値である。したがって、変数X,Y,Z,t,dtの初期値を0とした場合は、デバイス座標修正量1320の各値の初期値も0である。
検出装置130は、前回デバイス座標1330に、直前に立式した式1310により算出したデバイス座標修正量1320を加算することにより次回デバイス座標1340を算出する。次回デバイス座標1340は、次回の演算における変数X,Y,Z,t,dtの各値である。すなわち、検出装置130は、次回デバイス座標1340の各値を用いて式1310を再度生成する。
図13において説明したように、検出装置130は、式1310により得られたデバイス座標修正量1320を用いて変数X,Y,Z,t,dtを更新した式1310を生成する処理を繰り返す演算を誤差ベクトル1312が示す誤差が十分に小さくなるまで行う。たとえば、検出装置130は、誤差ベクトル1312が示す誤差が十分に小さくなるように予め定められた回数だけ繰り返し演算を行う。または、検出装置130は、式1310を生成するごとに誤差ベクトル1312の値の大きさを判定し、誤差ベクトル1312の値の大きさが所定の範囲内になるまで繰り返し演算を行う。
そして、検出装置130は、繰り返し演算において最後に得られた次回デバイス座標1340が示す変数X,Y,Z,t,dtの各値を、変数X,Y,Z,t,dtの各解として得る。
(実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算)
図14は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算の一例を示すフローチャートである。図15は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算において算出される各情報の一例を示す図である。図15において、図12に示した部分と同様の部分については同一の符号を付して説明を省略する。
検出装置130は、たとえば図5に示したステップS509において、4機の衛星についての測定データと参照元データとに基づくスナップショット測位演算として、たとえば図14に示す処理を実行する。ここでは、検出装置130は、他の時点の測位データに基づいて通常のスナップショット測位演算により変数X,Y,Z,t,dtの解を算出済みであり、算出した変数dtの解(−1.81183)を参照元データ1501として記憶しているものとする。なお、図15に示す例では、参照元データ1501にはタイムスタンプ(上述の261858)も含まれている。
図14に示すステップS1401,S1402は、図11に示したステップS1101,S1102と同様である。検出装置130は、ステップS1401において測定データ1201を取得する。また、検出装置130は、ステップS1402において受信局位置情報1202を取得する。ステップS1402のつぎに、検出装置130は、参照元データ1501の変数dtの解を取得する(ステップS1403)。
図15に示すステップS1404〜S1409は、図11に示したステップS1103〜S1108と同様である。ただし、図9に示した第1の算出方法を用いる場合、ステップS1405において、検出装置130は、測定データ1201のタイムスタンプが示す時刻における各衛星のXYZ座標および時計誤差補正値を算出する。また、図10に示した第2の算出方法を用いる場合、検出装置130は、測定データ1201のタイムスタンプが示す時刻に、ステップS1403において取得した変数dtの解を加算した時刻における各衛星のXYZ座標および時計誤差補正値を算出する。
また、図9に示した第1の算出方法を用いる場合、ステップS1408において、検出装置130は、変数dtの値をステップS1403において取得した変数dtの解に固定した4変数の最小二乗法により変数X,Y,Z,tの解を算出する。また、図10に示した第2の算出方法を用いる場合、検出装置130は、変数dtの値を0に固定した4変数の最小二乗法により変数X,Y,Z,tの解を算出する。
これにより、4機のみの衛星についての測定データに基づいて変数X,Y,Z,tの解を算出することができる。ステップS1408における解の算出例について、図16において説明する。
(実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算における解の算出)
図16は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算における解の算出の一例を示す図である。図14に示したステップS1408における、参照元データを用いたスナップショット測位演算における解の算出例について説明する。
たとえば、検出装置130は、ステップS1403により取得した変数dtの解と、ステップS1405において算出した各衛星のXYZ座標と、ステップS1407において算出した各衛星の疑似距離と、に基づいて図16に示す式1610を生成(立式)する。式1610は、(変換行列1611)\(誤差ベクトル1612)=(デバイス座標修正量1620)である。
変換行列1611は、デバイス111が捕捉した各衛星(ここでは4機の衛星)に対応する各行と、4つの列と、を有する行列である。変換行列1611の第1列(最も左側の列)は、4機の衛星のそれぞれについて、(衛星X座標−デバイスX座標)÷疑似距離により算出された値である。
変換行列1611の第2列は、4機の衛星のそれぞれについて、(衛星Y座標−デバイスY座標)÷疑似距離により算出された値である。変換行列1611の第3列は、4機の衛星のそれぞれについて、(衛星Z座標−デバイスZ座標)÷疑似距離により算出された値である。変換行列1611の第4列は、各行の値が1である。
誤差ベクトル1612は、4機の衛星のそれぞれについて、(疑似距離−|衛星XYZ座標−デバイスXYZ座標|)−t−ドップラー係数×dtにより算出された各値を示す。ここで、図9に示した第1の算出方法を用いる場合、dtには、ステップS1403により取得した変数dtの解が固定値として代入される。また、図10に示した第2の算出方法を用いる場合、dtには0が固定値として代入される。
デバイス座標修正量1620は、式1610の左辺の計算結果であり、変数X,Y,Z,tの各値の、次回の演算における修正量を示す。前回デバイス座標1630は、直前に立式した式1610に用いた変数X,Y,Z,tの各値である。
検出装置130は、前回デバイス座標1630に、直前に立式した式1610により算出したデバイス座標修正量1620を加算することにより次回デバイス座標1640を算出する。次回デバイス座標1640は、次回の演算における変数X,Y,Z,tの各値である。すなわち、検出装置130は、次回デバイス座標1640の各値を用いて式1610を再度生成する。
図16において説明したように、検出装置130は、式1610により得られたデバイス座標修正量1620を用いて変数X,Y,Z,tを更新した式1610を生成する処理を繰り返す演算を、誤差ベクトル1612が示す誤差が十分に小さくなるまで行う。そして、検出装置130は、繰り返し演算において最後に得られた次回デバイス座標1640が示す変数X,Y,Z,tの各値を、変数X,Y,Z,tの各解として得る。
このように、実施の形態によれば、第1時点においてデバイスが5機以上の衛星から受信した各データにより算出した測位解のうちの第5変数の解を用いることで、第2時点においてデバイスが4機の衛星から受信した各データにより測位解を得ることができる。これにより、スナップショット測位において、デバイスによる捕捉衛星数が所定数(5機)より少なくても測位解を求めることができる。
また、たとえば加速度センサなどをデバイスに設けなくても、デバイスが4機以下の衛星からしかデータを受信できなかった時点についても測位解を求めることができる。このため、デバイスの製造コストや消費電力を抑制することが可能になる。
上述の実施の形態において、デバイス111からの測定データが受信局120を介して検出装置130へ送信される構成について説明したが、このような構成に限らない。たとえば、検出装置130に受信局120の機能を設け、検出装置130がデバイス111からの測定データを直接受信する構成としてもよい。
また、上述の実施の形態において、デバイス111の位置の検出を、デバイス111ではなく外部の検出装置130において行う測位方法(たとえばCO−GPS)について説明したが、このような構成に限らない。たとえば、デバイス111に検出装置130の機能を設け、デバイス111の位置の検出をデバイス111が行う構成としてもよい。
また、上述の実施の形態において、トラック110のトレース情報を得るためにデバイス111の測位を行う構成について説明したが、このような構成に限らない。すなわち、デバイス111を設置し、またはデバイス111を所持させる対象はトラック110に限らない。たとえば、子供や高齢者にデバイス111を所持させることにより、子供や高齢者の位置や移動経路を特定することによる見守りサービスが可能になる。
また、野生動物等にデバイス111を取り付けることにより、野生動物等の位置や移動経路を特定することによる調査が可能になる。また、IoT(Internet of Things:モノのインターネット)の各種のフロント端末にデバイス111を設けることにより、フロント端末の位置や移動経路を特定することによるIoTの各種のサービスが可能になる。
以上説明したように、検出方法および検出プログラムによれば、捕捉衛星数が所定数より少なくても測位解を得ることができる。
たとえば、捕捉衛星数が4機しかなく測位解を得られない対象データについて、異なる時点の測位可能なデータとその測定時刻(dt)に基づいてスナップショット測位演算における第5変数を固定することで、測位解を得ることができる。
なお、本実施の形態で説明した検出方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM(Compact Disc−Read Only Memory)、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
11〜15 衛星
21,712〜715 遮蔽物
100 端末位置検出システム
110 トラック
111 デバイス
120 受信局
130 検出装置
211〜213 区間
601 グラフ
710 マップ
711 道路
720 移動経路
721〜728 地点
730 推定経路
800 トレース情報
901 エフェメリス
902 タイムスタンプ
903 軌道計算式
904 衛星座標
905 受信局位置
906 受信局疑似距離
907 プリアンブル補正値
908 コード位相
909 疑似距離
910 最小二乗法
911,912 解
913 デバイス緯度経度高度
914 測位結果
915,1501 参照元データ
1201 測定データ
1202 受信局位置情報
1203 プリアンブル補正値情報
1204 衛星座標・時計誤差補正値情報
1205 観測値情報
1206 疑似距離情報
1207 解情報
1208 測位データ
1310,1610 式
1311,1611 変換行列
1312,1612 誤差ベクトル
1320,1620 デバイス座標修正量
1330,1630 前回デバイス座標
1340,1640 次回デバイス座標
本発明は、検出方法および検出プログラムに関する。
従来、GNSS(Global Navigation Satellite System:全地球航法衛星システム)などの人工衛星を利用した測位システムが知られている(たとえば、下記特許文献1〜3参照。)。たとえば、測位対象のデバイスが4機以上の衛星からのデータを受信した結果を用いることで、そのデバイスのXYZ座標およびそのデバイスの時刻ずれを変数として含む方程式の解を測位解として算出する方法が知られている。また、測位対象のデバイスが5機以上の衛星からのデータを受信した結果を用いることで、そのデバイスが衛星からのデータを短時間しか受信しなくても測位解を得ることが可能になるスナップショット測位が知られている。
特表2012−524273号公報 特開2011−257415号公報 特開2013−217925号公報
しかしながら、上述した従来技術では、たとえばスナップショット測位において、測位対象のデバイスと衛星との間が建物等により遮られると、デバイスが捕捉する衛星の数が所定数に達せずに、測位解を得ることができない場合がある。
1つの側面では、本発明は、捕捉衛星数が所定数より少なくても測位解を得ることができる検出方法および検出プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、1つの実施態様では、第1時点においてデバイスが5機以上の衛星からデータを受信した結果に基づいて、前記デバイスの3次元位置を示す第1〜第3変数と、前記デバイスの内部時刻のずれを示す第4変数と、前記デバイスと前記衛星との間のドップラー効果による時間ずれを示す第5変数と、を含む方程式の解を算出し、前記第1時点と異なる第2時点において前記デバイスが4機の衛星からデータを受信した結果と、前記第1時点について算出した前記第5変数の解と、に基づいて前記第1〜第4変数を含む方程式の解を算出し、前記第1時点および前記第2時点のそれぞれについて、算出した前記第1〜第3変数の各解に基づく前記デバイスの位置情報を出力する検出方法および検出プログラムが提案される。
1つの側面では、本発明は、捕捉衛星数が所定数より少なくても測位解を得ることができるという効果を奏する。
図1は、実施の形態にかかる端末位置検出システムの一例を示す図である。 図2は、実施の形態にかかるデバイスによる捕捉衛星数の変化の一例を示す図である。 図3は、実施の形態にかかる検出装置の一例を示す図である。 図4は、実施の形態にかかる検出装置のハードウェア構成の一例を示す図である。 図5は、実施の形態にかかる検出装置による処理の一例を示すフローチャートである。 図6は、実施の形態にかかる検出装置による4機の衛星についての測定データに基づく測位の一例を示す図である。 図7は、実施の形態にかかる検出装置を用いた移動経路の特定の一例を示す図である。 図8は、実施の形態にかかる検出装置により得られるトレース情報の一例を示す図である。 図9は、実施の形態にかかる検出装置による測位データの第1の算出方法の一例を示す図である。 図10は、実施の形態にかかる検出装置による測位データの第2の算出方法の一例を示す図である。 図11は、実施の形態にかかる検出装置による通常のスナップショット測位演算の一例を示すフローチャートである。 図12は、実施の形態にかかる検出装置による通常のスナップショット測位演算において算出される各情報の一例を示す図である。 図13は、実施の形態にかかる検出装置による通常のスナップショット測位演算における解の算出の一例を示す図である。 図14は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算の一例を示すフローチャートである。 図15は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算において算出される各情報の一例を示す図である。 図16は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算における解の算出の一例を示す図である。
以下に図面を参照して、本発明にかかる検出方法および検出プログラムの実施の形態を詳細に説明する。
(実施の形態)
(実施の形態にかかる端末位置検出システム)
図1は、実施の形態にかかる端末位置検出システムの一例を示す図である。図1に示すように、実施の形態にかかる端末位置検出システム100は、デバイス111と、受信局120と、検出装置130と、を含む。
デバイス111は、端末位置検出システム100による測位対象の端末である。図1に示す例では、デバイス111はトラック110に搭載されており、その結果、端末位置検出システム100によってトラック110の位置が検出される。トラック110の位置は、たとえば緯度および経度によって表される。
たとえば、端末位置検出システム100は、トラック110の現在位置の検出結果の時系列をトレース情報として生成する。これにより、たとえば、トラック110による運送を管理する運送業者が、トラック110のトレース情報に基づいて、トラック110が移動した経路を特定することが可能になる。
衛星11〜15を含む各衛星は、測位衛星として地球の軌道上に存在する人工衛星である。各衛星は、それぞれに搭載された原子時計に基づく時刻情報などを含むデータを無線送信する。デバイス111は、各衛星から無線送信されるデータを受信可能である。
デバイス111が捕捉する衛星の数(以下、「捕捉衛星数」とも称する。)は、そのときのデバイス111の位置や、デバイス111と各衛星との間の遮蔽物(建物など)によって異なる。デバイス111が衛星を捕捉するとは、たとえばデバイス111がその衛星から無線送信されたデータを受信できることである。
デバイス111は、ある時点において受信した1機以上の衛星からのデータに基づく情報を、その時点におけるデバイス111の位置を特定するための測定データとして受信局120へ無線送信する。上述のように、端末位置検出システム100においてトラック110のトレース情報を生成する場合は、デバイス111は、衛星からのデータの受信および測定データの無線送信を繰り返し(たとえば周期的に)行う。
受信局120は、たとえば地上に固定された基地局であり、デバイス111との間で無線通信が可能である。たとえば、受信局120は、デバイス111から無線送信された測定データを受信し、受信した測定データを検出装置130へ送信する。このとき、受信局120は、測定データを受信したときの受信局120の内部時刻を示すタイムスタンプを、検出装置130へ送信する測定データに付加してもよい。受信局120と検出装置130との間の通信は、無線通信であってもよいし有線通信であってもよい。
検出装置130は、受信局120から受信した測定データに基づいて、デバイス111の現在位置を検出する。たとえば、検出装置130は、デバイス111が捕捉した1機以上の衛星についての測定データに基づく連立方程式の解(近似解を含む)を最小二乗法等により算出することにより、デバイス111の現在位置を検出する。
ここで、端末位置検出システム100においては、デバイス111の測位方法として、コード位相とドップラー周波数のみから測位計算を行うスナップショット測位が用いられる。スナップショット測位は、たとえば、検出装置130がデバイス111の測位解を得るために5つの変数(たとえば後述の変数X,Y,Z,t,dt)を含む連立方程式を用いる測位方法である。
スナップショット測位においては、4つの変数(たとえば後述の変数X,Y,Z,t)を含む連立方程式を用いる測位方法(通常の測位方法と称する。)と比べて、1回の測位のためにデバイス111が衛星からのデータを受信する時間を短くすることができる。
たとえば、通常の測位方法においては、デバイス111は1回の測位のために衛星からのデータを30秒程度受信することを要する。一方、スナップショット測位においては、デバイス111は1回の測位のために衛星からのデータを数ミリ秒(たとえば4[ms]あるいは100[ms]程度)だけ受信すればよい。
したがって、端末位置検出システム100において、デバイス111は、スナップショット測位に十分な時間(数ミリ秒)だけ衛星からのデータを受信する。このため、デバイス111の消費電力を低減することができる。
ただし、スナップショット測位においては、5つの変数を含む連立方程式の解を算出するため、1回の測位のために5機以上の衛星についての測定データを要する。したがって、スナップショット測位は、デバイス111が5機以上の衛星(たとえば衛星11〜15)を捕捉していることを要する。以下、5機以上の衛星についての測定データを用いたスナップショット測位を通常のスナップショット測位と称する。
これに対して、検出装置130は、たとえばデバイス111が4機のみの衛星しか捕捉できていない時点についても、デバイス111による数ミリの受信により得られた4機の衛星の測定データに基づいてデバイス111の位置を検出することができる。この検出の方法については後述する。
また、端末位置検出システム100においては、デバイス111の位置の検出を、デバイス111ではなく外部の検出装置130において行う測位方法が用いられている。たとえば検出装置130がクラウドコンピューティングにより実現される場合に、このような測位方法はたとえばCO−GPS(Cloud Offloaded−Global Positioning System)と呼ばれる。CO−GPSのスナップショット測位においては、上述の5つの変数の第5変数(dt)はcoarse time error(e)と呼ばれる。
(実施の形態にかかるデバイスによる捕捉衛星数の変化)
図2は、実施の形態にかかるデバイスによる捕捉衛星数の変化の一例を示す図である。たとえば、トラック110が、区間211、区間212、区間213の順に移動したとする。このとき、区間212において、衛星13からのデータが建物等の遮蔽物21に遮られてデバイス111が衛星13を捕捉できなかったとする。ただし、区間211〜213のそれぞれにおいて、デバイス111は、衛星11,12,14,15を捕捉していたとする。また、衛星13についても、区間211,213においては捕捉していたとする。
この場合に、区間211〜213におけるデバイス111による捕捉衛星数は、それぞれ5機、4機、5機となる。したがって、区間211,213については通常のスナップショット測位によりデバイス111の測位解を得ることができるが、区間212については通常のスナップショット測位ではデバイス111の測位解を得ることができない。
これに対して、検出装置130は、区間211,213については通常のスナップショット測位によりデバイス111の測位解を算出する。また、検出装置130は、区間212については、区間212の近くの区間(たとえば区間211や区間213)におけるデバイス111の測位解を用いたスナップショット測位により、区間212におけるデバイス111の測位解を算出する。
(実施の形態にかかる検出装置)
図3は、実施の形態にかかる検出装置の一例を示す図である。検出装置130は、たとえば、図3に示すように、入力部301と、捕捉衛星数判定部302と、第1算出部303と、記憶部304と、第2算出部305と、出力部306と、を備える。
入力部301には、デバイス111が各時点において衛星からデータを受信した結果である測定データが入力される。入力部301は、入力された時点ごとの測定データを捕捉衛星数判定部302へ出力する。
捕捉衛星数判定部302は、入力部301から出力された測定データが何機の衛星についての測定データであるかを判定する。そして、捕捉衛星数判定部302は、5機以上の衛星についての測定データを第1算出部303へ出力し、4機の衛星についての測定データを第2算出部305へ出力する。3機以下の衛星についての測定データは、たとえば捕捉衛星数判定部302において破棄される。
第1算出部303は、捕捉衛星数判定部302から出力された5機以上の衛星についての測定データに基づいて、変数X,Y,Z,t,dt(第1〜第5変数)を含む第1方程式の解を算出する。変数X,Y,Zは、デバイス111のXYZ座標(3次元位置)を示す変数である。すなわち、変数X(第1変数)はデバイス111のX座標を示し、変数Y(第2変数)はデバイス111のY座標を示し、変数Z(第3変数)はデバイス111のZ座標を示す。
変数t(第4変数)は、各衛星の原子時計に基づく時刻に対する、デバイス111の内部時刻のずれを示す変数である。変数dt(第5変数)は、上述のようにデバイス111が衛星からのデータを短い時間しか受信しないことに起因する、デバイス111と衛星との間のドップラー効果による時間ずれを示す変数である。たとえば、第1算出部303による解の算出は、5機以上の衛星についての測定データに基づくスナップショット測位演算による解の算出である。
第1算出部303は、たとえば算出した変数X,Y,Zの解を出力部306へ出力する。また、第1算出部303は、算出した変数dtの解を記憶部304へ出力する。記憶部304は、第1算出部303から出力された変数dtの解を、第2算出部305から参照可能な参照元データとして記憶する。
第2算出部305は、捕捉衛星数判定部302から出力された4機の衛星についての測定データと、記憶部304によって参照元データとして記憶された変数dtの解と、に基づいて変数X,Y,Z,t(第1〜第4変数)を含む第2方程式の解を算出する。第2方程式は、たとえば上述の第1方程式において、変数dtの値を記憶部304が記憶する変数dtの解に固定した方程式である。第2算出部305は、たとえば算出した変数X,Y,Zの解を出力部306へ出力する。
また、第2算出部305は、複数の時点について算出された変数dtの解が記憶部304に記憶されている場合は、直前の時点について算出された変数dtの解を用いて解を算出してもよい。直前の時点とは、たとえば、デバイス111が衛星からのデータを受信した各時点のうち、捕捉衛星数判定部302から第2算出部305へ出力された測定データが受信された第2時点の直前の1つの時点(第1時点)である。これにより、4機の衛星についての測定データしか得られなかった時点のデバイス111の位置を正確に推定することができる。
ただし、第2算出部305が用いる変数dtの解は、直前の時点について算出された解に限らず、直後の1つの時点について算出された解や、直前および直後の各時点について算出された各解の平均などであってもよい。
出力部306は、第1算出部303から出力された変数X,Y,Zの解に基づくデバイス111の位置情報と、第2算出部305から出力された変数X,Y,Zの解に基づくデバイス111の位置情報と、をそれぞれ出力する。これにより、5機以上の衛星についての測定データが得られた時点におけるデバイス111の位置情報だけでなく、4機のみの衛星についての測定データしか得られなかった時点におけるデバイス111の位置情報も得ることができる。
たとえば、出力部306は、デバイス111の位置情報を、そのデバイス111の位置情報の算出に用いたデータをデバイス111が受信した時刻と対応付けて出力する。これにより、デバイス111の位置情報の時系列を示すトレース情報を得ることができる。
出力部306による位置情報の出力方法には各種の出力方法を用いることができる。たとえば、出力部306の位置情報の出力は、ディスプレイによる表示、スピーカによる音声出力、印刷装置や記憶デバイスへの出力、ネットワークを介した他の通信装置への送信など各種の出力とすることができる。
(実施の形態にかかる検出装置のハードウェア構成)
図4は、実施の形態にかかる検出装置のハードウェア構成の一例を示す図である。図3に示した検出装置130は、たとえば図4に示す情報処理装置400により実現することができる。情報処理装置400は、プロセッサ401と、メモリ402と、通信インタフェース403と、を備える。また、情報処理装置400は、ユーザインタフェース404を備えてもよい。プロセッサ401、メモリ402、通信インタフェース403およびユーザインタフェース404は、たとえばバス409によって接続される。
プロセッサ401は、信号処理を行う回路であり、たとえば情報処理装置400の全体の制御を司るCPU(Central Processing Unit)である。メモリ402には、たとえばメインメモリおよび補助メモリが含まれる。メインメモリは、たとえばRAM(Random Access Memory)である。メインメモリは、プロセッサ401のワークエリアとして使用される。
補助メモリは、たとえば磁気ディスク、光ディスク、フラッシュメモリなどの不揮発性メモリである。補助メモリには、情報処理装置400を動作させる各種のプログラムが記憶されている。補助メモリに記憶されたプログラムは、メインメモリにロードされてプロセッサ401によって実行される。
また、補助メモリは、情報処理装置400から取り外し可能な可搬型のメモリを含んでもよい。可搬型のメモリには、USB(Universal Serial Bus)フラッシュドライブやSD(Secure Digital)メモリカードなどのメモリカードや、外付けハードディスクドライブなどがある。
通信インタフェース403は、情報処理装置400の外部(たとえば受信局120)との間で通信を行う通信インタフェースである。通信インタフェース403は、プロセッサ401によって制御される。
ユーザインタフェース404は、たとえば、ユーザ(たとえばトラック110のトレース情報の管理者)からの操作入力を受け付ける入力デバイスや、ユーザへ情報を出力する出力デバイスなどを含む。入力デバイスは、たとえばポインティングデバイス(たとえばマウス)、キー(たとえばキーボード)やリモコンなどにより実現することができる。出力デバイスは、たとえばディスプレイやスピーカなどにより実現することができる。また、タッチパネルなどによって入力デバイスおよび出力デバイスを実現してもよい。ユーザインタフェース404は、プロセッサ401によって制御される。
図3に示した入力部301は、たとえば通信インタフェース403により実現することができる。図3に示した捕捉衛星数判定部302、第1算出部303および第2算出部305は、たとえばプロセッサ401およびメモリ402により実現することができる。図3に示した入力部301は、たとえばメモリ402により実現することができる。図3に示した出力部306は、たとえばメモリ402または通信インタフェース403により実現することができる。
(実施の形態にかかる検出装置による処理)
図5は、実施の形態にかかる検出装置による処理の一例を示すフローチャートである。実施の形態にかかる検出装置130は、たとえば図5に示す各ステップを実行する。まず、検出装置130は、デバイス111から受信局120を介して送信された、1機以上の衛星についての測定データを受信したか否かを判断し(ステップS501)、測定データを受信するまで待つ(ステップS501:Noのループ)。
ある衛星についての測定データは、たとえば、デバイス111がその衛星から受信したデータのコード位相を特定可能な情報と、その衛星の識別番号と、その測定データが得られたときの時刻を示すタイムスタンプと、を含む情報である。
ステップS501において、測定データを受信すると(ステップS501:Yes)、検出装置130は、デバイス111が捕捉した衛星の数(捕捉衛星数)が5機以上であるか否かを判断する(ステップS502)。すなわち、検出装置130は、受信した測定データが、5機以上の衛星についての測定データであるか否かを判断する。
ステップS502において、捕捉衛星数が5機以上である場合(ステップS502:Yes)は、検出装置130は、受信した5機以上の衛星についての測定データに基づいて通常のスナップショット測位演算を行う(ステップS503)。この通常のスナップショット測位演算については後述する。ステップS503のスナップショット測位演算により、デバイス111のXYZ座標を示す変数X,Y,Zと、デバイス111と衛星との間の時刻ずれを示す変数t,dtと、の解が得られる。
つぎに、検出装置130は、スナップショット測位演算により得られた変数dt(第5変数)の解を参照元データとしてメモリ402に記憶する(ステップS504)。このとき、検出装置130は、スナップショット測位演算に用いた測定データのタイムスタンプも参照元データとしてメモリ402に記憶してもよい。また、スナップショット測位演算により得られた変数dtの解が参照元データとしてメモリ402に記憶済みである場合に、検出装置130は、たとえば新たに得られた変数dtの解をメモリ402に記憶済みの解に上書きして記憶してもよい。
つぎに、検出装置130は、スナップショット測位演算により得られた変数X,Y,Zの解に基づいて算出した測位データを保存する(ステップS505)。測位データは、たとえば、変数X,Y,Zの解が示すデバイス111のXYZ座標を、緯度、経度および高度の座標系へ変換して得られる情報である。
また、ステップS505において、検出装置130は、算出した測位データを、測定時刻と対応付けて保存してもよい。測定時刻は、たとえば、測位データの算出に用いた測定データに付加されたタイムスタンプが示す時刻である。また、測定時刻は、変数t,dtの解に基づいて修正された時刻であってもよい。
つぎに、検出装置130は、後述のステップS508において記憶し、後述のステップS509において処理していない未処理測定データがあるか否かを判断する(ステップS506)。未処理測定データがない場合(ステップS506:No)は、検出装置130は、ステップS501へ戻る。
ステップS502において、捕捉衛星数が5機以上でない場合(ステップS502:No)は、検出装置130は、ステップS504によって参照元データ(変数dtの解)を記憶したか否かを判断する(ステップS507)。参照元データを記憶していない場合(ステップS507:No)は、検出装置130は、受信した測定データ(4機以下の衛星についての測定データ)を未処理測定データとして記憶し(ステップS508)、ステップS501へ戻る。
ステップS507において、参照元データを記憶している場合(ステップS507:Yes)は、検出装置130は、ステップS509へ移行する。すなわち、検出装置130は、たとえば受信した4機の衛星についての測定データに基づいて、記憶した参照元データを用いたスナップショット測位演算を行う(ステップS509)。ステップS509における参照元データを用いたスナップショット測位演算については後述する。
ステップS509のスナップショット測位演算により、ステップS503と同様に、デバイス111のXYZ座標を示す変数X,Y,Zと、デバイス111と衛星との間の時刻ずれを示す変数t,dtと、の解が得られる。ステップS509のつぎに、検出装置130は、ステップS505へ移行し、ステップS509のスナップショット測位演算により得られた解(たとえば変数X,Y,Zの解)に基づいて算出した測位データを保存する。
ステップS506において、未処理測定データがある場合(ステップS506:Yes)は、検出装置130は、ステップS507へ移行する。このとき、ステップS507からステップS509へ移行する場合に、検出装置130は、ステップS509において、たとえば4機の衛星についての未処理測定データに基づいて、参照元データを用いたスナップショット測位演算を行う。
図5に示したように、検出装置130は、5機以上の衛星についての測定データを受信した場合は、通常のスナップショット測位演算を行い、得られた測位データを保存する。また、このとき、検出装置130は、通常のスナップショット測位演算において得られた変数dtの解を参照元データとして記憶しておく。
また、検出装置130は、4機のみの衛星についての測定データを受信した場合は、参照元データを記憶していれば参照元データを用いたスナップショット測位演算を行い、参照元データを記憶していなければ測定データを未処理測定データとして記憶しておく。
一例として、測定データにおける捕捉衛星数が4機、4機、5機、…のように変化したとする。捕捉衛星数が4機である1つ目の測定データおよび2つ目の測定データについてはスナップショット測位演算が行われずにそれぞれ未処理測定データとして記憶される。
そして、捕捉衛星数が5機である3つ目の測定データについては通常のスナップショット測位演算が行われて測位データが保存される。また、このときの通常のスナップショット測位演算により得られた参照元データを用いて、未処理測定データとして記憶されていた1つ目の測定データおよび2つ目の測定データについてのスナップショット測位演算が行われて測位データが保存される。
なお、捕捉衛星数が3機以下であった場合は、参照元データを用いてもスナップショット測位演算を行うことができない。したがって、検出装置130は、たとえば、3機以下の衛星についての測定データは、処理不可能なデータとして保存し、または破棄する。
図5に示す例では、ステップS509において、捕捉衛星数が4機であった場合に、捕捉衛星数が5機以上であった各時点の参照元データのうち最新の参照元データを用いたスナップショット測位演算を行う処理について説明したが、このような処理に限らない。
たとえば、ステップS504の実行ごとに、参照元データが測定データのタイムスタンプと対応付けて上書きせずに記憶されてもよい。たとえば、検出装置130は、ステップS509において、現在の測定データのタイムスタンプの直前または直後のタイムスタンプと対応する参照元データを用いてスナップショット測位演算を行う。
また、検出装置130は、ステップS509において、複数の参照元データの平均値等を用いてスナップショット測位演算を行ってもよい。たとえば、検出装置130は、現在の測定データのタイムスタンプの直前のタイムスタンプと対応する参照元データと、現在の測定データのタイムスタンプの直後のタイムスタンプと対応する参照元データと、の平均等を用いてスナップショット測位演算を行う。
また、検出装置130は、現在の測定データのタイムスタンプより前の2以上のタイムスタンプと対応する各参照元データの平均値等を用いてスナップショット測位演算を行ってもよい。また、検出装置130は、現在の測定データのタイムスタンプより後の2以上のタイムスタンプと対応する各参照元データの平均値等を用いてスナップショット測位演算を行ってもよい。
また、検出装置130は、現在の測定データの前後の複数のタイムスタンプと対応する各参照元データから、現在の測定データに対応する参照元データの値を推測(補間)し、推測した参照元データを用いてスナップショット測位演算を行ってもよい。
(実施の形態にかかる検出装置による4機の衛星についての測定データに基づく測位)
図6は、実施の形態にかかる検出装置による4機の衛星についての測定データに基づく測位の一例を示す図である。たとえば、トラック110が地点P1、地点P2、地点P3の順に移動し、地点P1,P3においてはデバイス111が5機の衛星を捕捉したが、地点P2においてはデバイス111が4機のみの衛星を捕捉したとする。時点t1〜t3は、それぞれトラック110が地点P1〜P3を通過した時点である。
この場合に、検出装置130は、デバイス111が地点P1において得た5機の衛星についての測定データに基づく通常のスナップショット測位演算により地点P1の測位データを算出する。また、検出装置130は、地点P1についてのスナップショット測位演算により得られた変数dtの解と、デバイス111が地点P2において得た4機の衛星についての測定データと、に基づくスナップショット測位演算により地点P2の測位データを算出する。
また、検出装置130は、デバイス111が地点P3において得た5機の衛星についての測定データに基づく通常のスナップショット測位演算により地点P3の測位データを算出する。これにより、トラック110が通過した地点P1〜P3の測位データをトラック110のトレース情報として保存することができる。
グラフ601は、図6の条件で地点P2の測位データを繰り返し算出した結果を示す分布図である。グラフ601の横軸は、地点P2の東西方向の実際の位置座標に対する、上述の算出方法による地点P2の測位データの東西方向の位置座標の誤差を示している。グラフ601の縦軸は、地点P2の南北方向の実際の位置座標に対する、上述の算出方法による地点P2の測位データの南北方向の位置座標の誤差を示している。
グラフ601の各プロット点に示すように、上述の算出方法を用いることにより、デバイス111が4機のみの衛星を捕捉した地点P2についても、数十メートル以内の誤差の測位データを得ることができる。
(実施の形態にかかる検出装置を用いた移動経路の特定)
図7は、実施の形態にかかる検出装置を用いた移動経路の特定の一例を示す図である。図7において、マップ710は、トラック110が通った地域を示している。マップ710の道路711や遮蔽物712〜715は、トラック110が通った地域における道路や遮蔽物(たとえば建物)である。
移動経路720は、トラック110が実際に通った経路を示している。時刻t1〜t8は、トラック110が移動経路720を移動中に、デバイス111が衛星からのデータの受信を行った各時刻である。地点721〜728は、移動経路720における、時刻t1〜t8にトラック110が位置していた各地点である。
移動経路720のうち実線で示す部分はデバイス111が5機以上の衛星を捕捉していた部分であり、移動経路720のうち点線で示す部分はデバイス111が4機のみの衛星を捕捉していた部分である。この場合に、地点721,722,726〜728においては5機以上の衛星についての測定データが得られ、地点723〜725においては4機のみの衛星についての測定データが得られる。
図7に示す例において、検出装置130は、地点721,722,726〜728については5機以上の衛星についての測定データに基づく通常のスナップショット測位演算によりデバイス111の測位データを得る。また、検出装置130は、地点723〜725についても、たとえば地点722についてのスナップショット測位演算において得られた変数dtの解と、4機のみの衛星についての測定データと、に基づくスナップショット測位演算を行う。これにより、地点723〜725についてもデバイス111の測位データを得ることができる。
推定経路730は、5機以上の衛星についての測定データが得られた地点721,722,726〜728の測位データのみから線形補間により推定したトラック110の移動経路を参考として示している。推定経路730は、トラック110が通過した地点723〜725が考慮されていないため、実際のトラック110の移動経路720から大きく逸脱したものとなる。
これに対して、検出装置130によれば、地点721,722,726〜728の測位データだけでなく地点723〜725の測位データも得ることができる。これにより、トラック110の移動経路720を正確に推定することが可能になる。
(実施の形態にかかる検出装置により得られるトレース情報)
図8は、実施の形態にかかる検出装置により得られるトレース情報の一例を示す図である。図7に示した例において、検出装置130は、たとえば図8に示すトレース情報800を生成する。トレース情報800は、上述の時刻t1〜t8のそれぞれと対応付けて、緯度および経度の推定結果(測位データ)を示す情報である。
緯度Φ1〜Φ8は、それぞれ図7に示した地点721〜728について検出装置130により算出された測位データの緯度である。経度λ1〜λ8は、それぞれ図7に示した地点721〜728について検出装置130により算出された測位データの経度である。トレース情報800により、移動経路720を正確に推定することが可能になる。
一例としては、マップ710の道路711の範囲を示す情報と、トレース情報800と、を用いることにより、マップ710に対して移動経路720を示す線を重ねた画像を生成することができる。なお、トレース情報800は、時刻t1〜t8を省いた情報であってもよい。
(実施の形態にかかる検出装置による測位データの第1の算出方法)
図9は、実施の形態にかかる検出装置による測位データの第1の算出方法の一例を示す図である。エフェメリス901は、衛星ごとに、衛星の軌道および状態や、衛星の内部時計(原子時計)の補正情報等を示す情報である。タイムスタンプ902(タイムスタンプ_1)は、検出装置130が受信局120を介してデバイス111から取得した測定データに付されたタイムスタンプである。
軌道計算式903は、エフェメリス901に基づいて特定の時間における各衛星の位置座標を算出可能な計算式である。検出装置130は、エフェメリス901および軌道計算式903に基づいて、タイムスタンプ902が示す時刻における、測定データが示す各衛星の位置座標を示す衛星座標904を算出する。
受信局位置905は、受信局120の位置座標である。検出装置130は、エフェメリス901および受信局位置905に基づいて、測定データが示す衛星ごとに受信局疑似距離906を算出する。受信局疑似距離906は、タイムスタンプ902が示す時刻における、測定データが示す各衛星と受信局120との間の距離であって、誤差を含む。検出装置130は、衛星ごとの受信局疑似距離906のそれぞれについて、コード位相成分を切り捨てることにより、衛星ごとのプリアンブル補正値907を算出する。
コード位相908は、検出装置130が受信局120を介してデバイス111から取得した測定データが示す、デバイス111が各衛星から受信したデータのコード位相である。検出装置130は、プリアンブル補正値907とコード位相908とを加算することにより得た観測値に光速cを乗算することにより、衛星ごとの疑似距離909を算出する。疑似距離909は、タイムスタンプ902が示す時刻における、測定データが示す各衛星とデバイス111との間の距離であって、誤差を含む。
検出装置130は、衛星座標904および疑似距離909に基づく最小二乗法910を行うことにより解911,912を算出する。解911は、デバイス111のXYZ座標を示す変数X,Y,Zの解である。解912は、デバイス111の時刻ずれに関する上述の変数t,dtの解である。
つぎに、検出装置130は、解911が示すデバイス111のXYZ座標を、緯度、経度および高度の座標系であるデバイス緯度経度高度913に変換する。また、検出装置130は、デバイス緯度経度高度913と、解912が示す変数t,dtの解と、をタイムスタンプ902と対応付けて測位結果914として保存する。また、検出装置130は、測位結果914として保存したタイムスタンプ902および変数dtの解を、参照元データ915(タイムスタンプ_0およびdt_0)として記憶しておく。
上述の最小二乗法910において、検出装置130は、たとえば|(衛星座標)−(デバイス位置)|+t+α×dt+補正項=(疑似距離)を満たす変数X,Y,Z,t,dtの解を算出する。このとき、5機以上の衛星についての測定データ(タイムスタンプ902およびコード位相908)が得られている場合は、最小二乗法910として5変数の最小二乗法を行うことによって変数X,Y,Z,t,dtの解を算出することができる。5変数の最小二乗法を行うことによる変数X,Y,Z,t,dtの解の算出例については後述する(たとえば図11〜図13参照)。
一方で、4機のみの衛星についての測定データしか得られていない場合は、最小二乗法910として5変数の最小二乗法を行うことができない。この場合に、検出装置130は、参照元データ915に含まれるdtの解(dt_0)を上記の式の変数dtに代入し、最小二乗法910として4変数の最小二乗法を行うことによって変数X,Y,Z,tの解を算出することができる。4変数の最小二乗法を行うことによる変数X,Y,Z,tの解の算出例については後述する(たとえば図14〜図16参照)。
図9に示す例では、5機以上の衛星についての測定データが得られている場合に受信局疑似距離906やプリアンブル補正値907を算出する方法について説明したが、このような算出方法に限らない。たとえば、検出装置130は、5機以上の衛星についての測定データが得られている場合は、受信局疑似距離906やプリアンブル補正値907に代えて、衛星ごとのランドマークやグリッドポイントを算出してもよい。この場合に、検出装置130は、得られたデバイス緯度経度高度913を、地上のランドマークとして想定可能な所定範囲の標高によりフィルタリングして測位結果914として保存する。
(実施の形態にかかる検出装置による測位データの第2の算出方法)
図10は、実施の形態にかかる検出装置による測位データの第2の算出方法の一例を示す図である。図10において、図9に示した部分と同様の部分については同一の符号を付して説明を省略する。4機のみの衛星についての測定データしか得られていない場合に、検出装置130は、たとえば図10に示す第2の算出方法によって変数X,Y,Z,tの解を算出してもよい。
図10に示す例では、衛星座標904として、タイムスタンプ902が示す時刻に参照元データ915のdt_0の解を加算した時刻における、測定データが示す衛星ごとの位置座標を算出する。これにより、衛星座標904の対象時刻を、dtの解が0となる時刻に修正しておくことができる。
そして、検出装置130は、最小二乗法910において、上記の式の変数dtに0を代入する。これにより、図9に示した第1の算出方法と同じ変数X,Y,Z,tの解を算出することができる。
(実施の形態にかかる検出装置による通常のスナップショット測位演算)
図11は、実施の形態にかかる検出装置による通常のスナップショット測位演算の一例を示すフローチャートである。図12は、実施の形態にかかる検出装置による通常のスナップショット測位演算において算出される各情報の一例を示す図である。
検出装置130は、たとえば図5に示したステップS503において、5機以上の衛星についての測定データに基づく通常のスナップショット測位演算として、たとえば図11に示す処理を実行する。
まず、検出装置130は、受信局120から受信した、タイムスタンプおよび衛星ごとのコード位相を含む測定データを取得する(ステップS1101)。たとえば、検出装置130は、図12に示す測定データ1201を取得する。測定データ1201は、タイムスタンプ、衛星番号およびコード位相を含む。
測定データ1201のタイムスタンプは、測定データ1201が得られた時刻を示す情報である。たとえば、タイムスタンプは、受信局120がデバイス111から測定データ1201(タイムスタンプを除く)を受信したときに受信局120の内部時刻に基づいて生成して測定データ1201に付加したタイムスタンプである。また、タイムスタンプは、デバイス111が各衛星からのデータを受信して測定データ1201(タイムスタンプを除く)を生成したときにデバイス111の内部時刻に基づいて生成して測定データ1201に付加したタイムスタンプであってもよい。図12に示す例では、タイムスタンプは“261858”である。
測定データ1201の衛星番号は、デバイス111が捕捉した(データを受信した)各衛星の識別子である。図12に示す例では、衛星番号は“PRN7”、“PRN8”、“PRN10”、…の7機分の衛星の衛星番号である。
測定データ1201のコード位相は、衛星が送信するデータのコードにおける、デバイス111が受信した部分の位相である。図12に示す例では、衛星番号は“PRN7”、“PRN8”、“PRN10”、…が示す7機の衛星についてのコード位相はそれぞれ“0.141”、“0.713”、“0.883”、…である。
測定データ1201の衛星番号およびコード位相は、たとえばデバイス111が衛星から受信したデータを復号することにより得られる。以上のように、図12に示す測定データ1201は、タイムスタンプの“261858”が示す時刻に、デバイス111が7機の衛星からのデータを受信し、それぞれのコード位相が“0.141”、“0.713”、“0.883”、…であったことを示している。
つぎに、検出装置130は、受信局120の位置を示す受信局位置情報を取得する(ステップS1102)。たとえば、受信局位置情報は検出装置130のメモリ402に予め記憶されており、検出装置130はメモリ402からその位置情報を読み出す。または、検出装置130は受信局位置情報を受信局120や他の通信装置から受信してもよい。たとえば、検出装置130は、図12に示す受信局位置情報1202を取得する。受信局位置情報1202は、受信局120の位置(受信局位置)を、緯度、経度および高度により示している。
つぎに、検出装置130は、ステップS1101によって取得した測定データ1201に含まれるタイムスタンプと、ステップS1102によって取得した受信局位置情報1202と、に基づいて衛星ごとのプリアンブル補正値を算出する(ステップS1103)。たとえば、検出装置130は、図12に示すプリアンブル補正値情報1203を算出する。図12に示す例では、プリアンブル補正値情報1203は、上述の7機の衛星のそれぞれについて算出される。
また、検出装置130は、エフェメリスに基づいて、各衛星の軌道計算を行い、測定データ1201のタイムスタンプが示す時刻における各衛星のXYZ座標(X,Y,Z)および時計誤差補正値を算出する(ステップS1104)。エフェメリスは、上述の7機の衛星を含む各衛星の軌道および状態や、各衛星の内部時計(原子時計)の補正情報等を含む情報である。たとえば、検出装置130は、ネットワークを介してサーバ等からエフェメリスを受信する。または、検出装置130は、各衛星から送信されるエフェメリスを、デバイス111や受信局120を介して受信してもよい。
たとえば、検出装置130は、図12に示す衛星座標・時計誤差補正値情報1204を生成する。衛星座標・時計誤差補正値情報1204は、上述の7機の衛星のそれぞれについて、測定データ1201のタイムスタンプが示す時刻における、各衛星のXYZ座標(X,Y,Z)および時計誤差補正値を示す。
つぎに、検出装置130は、プリアンブル補正値情報1203のプリアンブル補正値、測定データ1201のコード位相および衛星座標・時計誤差補正値情報1204の時計誤差補正値に基づいて、各衛星の観測値を算出する(ステップS1105)。ある衛星についての観測値は、たとえばプリアンブル補正値+コード位相+時計誤差補正値により算出される。たとえば、検出装置130は、図12に示す観測値情報1205を生成する。観測値情報1205において、たとえば、“PRN7”の衛星についての観測値は、0.141+72+0.149≒72.291となる。
つぎに、検出装置130は、観測値情報1205の観測値および光速に基づいて、各衛星の疑似距離(観測した疑似距離)を算出する(ステップS1106)。各衛星の疑似距離は、各衛星とデバイス111との間の各距離であり、誤差を含む。ある衛星についての疑似距離は、たとえば観測値×光速により算出される。たとえば、検出装置130は、図12に示す疑似距離情報1206を生成する。疑似距離情報1206において、たとえば“PRN7”の衛星についての疑似距離は、72.291*光速≒21672290となる。
つぎに、検出装置130は、ステップS1104において算出した各衛星のXYZ座標と、ステップS1106において算出した各衛星の疑似距離と、に基づく最小二乗法により、変数X,Y,Z,t,dtの解を算出する(ステップS1107)。たとえば、検出装置130は、図12に示す解情報1207を生成する。最小二乗法による解の算出については後述する(たとえば図13参照)。
つぎに、検出装置130は、解情報1207が示すデバイス111のXYZ座標を、緯度、経度および高度の座標系に変換し(ステップS1108)、一連の処理を終了する。たとえば、検出装置130は、図12に示す測位データ1208を生成する。測位データ1208は、解情報1207が示すデバイス111のXYZ座標の座標変換後の値として、デバイス111の緯度、経度および高度を含む。
ステップS1107の最小二乗法における立式について説明する。ある衛星(i)についての誤差(i)は、たとえば下記(1)式により表すことができる。
誤差(i)=(疑似距離(i)−|衛星位置(i)−変数(X,Y,Z)|)−変数(t)−補正項 …(1)
ここで、変数であるX,Y,Z,tは、初期値として適当な値(たとえば0)が与えられる。上記(1)式を衛星ごとに立式した行列式は、下記(2)式のようになる。
(変換行列)*(変数ベクトル(X,Y,Z,t))=(誤差ベクトル)
⇔(変数(X,Y,Z,t))=(変換行列)\(誤差ベクトル) …(2)
ここで、たとえばXからX+dXのように、デバイス111の位置座標の微小変化を考える。上記(2)式の各項を座標X,Y,Zでそれぞれ偏微分すると、下記(3)式のようになる。
微小変化(X,Y,Z,t)=d変換行列\(誤差ベクトル) …(3)
検出装置130は、上記(3)式の立式と、誤差ベクトルを小さくする方向への変数ベクトルの修正と、を繰り返す演算を、誤差が十分に小さくなるまで行う。これにより、観測した疑似距離(疑似距離情報1206)と、軌道計算上の距離とが一致するときのデバイス111の位置(変数X,Y,Zの解)を求めることができる。
(実施の形態にかかる検出装置による通常のスナップショット測位演算における解の算出)
図13は、実施の形態にかかる検出装置による通常のスナップショット測位演算における解の算出の一例を示す図である。図11に示したステップS1107における、通常のスナップショット測位演算における解の算出例について説明する。
たとえば、検出装置130は、ステップS1104において算出した各衛星のXYZ座標と、ステップS1106において算出した各衛星の疑似距離と、に基づいて、図13に示す式1310を生成(立式)する。式1310は、(変換行列1311)\(誤差ベクトル1312)=(デバイス座標修正量1320)である。
変換行列1311は、デバイス111がデータを受信した各衛星(ここでは7機の衛星)に対応する各行と、5つの列と、を有する行列である。変換行列1311の第1列(最も左側の列)は、7機の衛星のそれぞれについて、(衛星X座標−デバイスX座標)÷疑似距離により算出された値である。ここで、衛星X座標は、ステップS1104において軌道計算により算出された衛星のX座標である。デバイスX座標は、初期値として適当な値(たとえば0)が割り当てられたデバイス111のX座標である。
変換行列1311の第2列は、7機の衛星のそれぞれについて、(衛星Y座標−デバイスY座標)÷疑似距離により算出された値である。ここで、衛星Y座標は、ステップS1104において軌道計算により算出された衛星のY座標である。デバイスY座標は、初期値として適当な値(たとえば0)が割り当てられたデバイス111のY座標である。
変換行列1311の第3列は、7機の衛星のそれぞれについて、(衛星Z座標−デバイスZ座標)÷疑似距離により算出された値である。ここで、衛星Z座標は、ステップS1104において軌道計算により算出された衛星のZ座標である。デバイスZ座標は、初期値として適当な値(たとえば0)が割り当てられたデバイス111のZ座標である。
変換行列1311の第4列は、各行の値が1である。変換行列1311の第5列は、7機の衛星のそれぞれについてのドップラー係数である。ドップラー係数は、たとえば上述のエフェメリスと、測定データ1201のタイムスタンプと、に基づく各衛星の軌道計算によって算出される。
誤差ベクトル1312は、7機の衛星のそれぞれについて、(疑似距離−|衛星XYZ座標−デバイスXYZ座標|)−t−ドップラー係数×dtにより算出された各値を示す。ここで、衛星XYZ座標は、ステップS1104において軌道計算により算出された衛星のXYZ座標である。デバイスXYZ座標は、変数X,Y,Zの現在の値が示す、デバイス111のXYZ座標である。tは、衛星の内部時刻に対するデバイス111の内部時刻のずれ(オフセット)を示す変数である。
ドップラー係数×dtは、たとえば、スナップショット測位においてはデバイス111が衛星からの電波を短時間しか受信しないことに起因するドップラー効果によって生じる時間ずれを示す変数である。すなわち、dtは、tの修正量に関する変数である。変数t,dtには、初期値として適当な値(たとえば0)が割り当てられる。
デバイス座標修正量1320は、式1310の左辺の計算結果であり、変数X,Y,Z,t,dtの各値の、次回の演算における修正量を示す。前回デバイス座標1330は、直前に立式した式1310に用いた変数X,Y,Z,t,dtの各値である。したがって、変数X,Y,Z,t,dtの初期値を0とした場合は、デバイス座標修正量1320の各値の初期値も0である。
検出装置130は、前回デバイス座標1330に、直前に立式した式1310により算出したデバイス座標修正量1320を加算することにより次回デバイス座標1340を算出する。次回デバイス座標1340は、次回の演算における変数X,Y,Z,t,dtの各値である。すなわち、検出装置130は、次回デバイス座標1340の各値を用いて式1310を再度生成する。
図13において説明したように、検出装置130は、式1310により得られたデバイス座標修正量1320を用いて変数X,Y,Z,t,dtを更新した式1310を生成する処理を繰り返す演算を誤差ベクトル1312が示す誤差が十分に小さくなるまで行う。たとえば、検出装置130は、誤差ベクトル1312が示す誤差が十分に小さくなるように予め定められた回数だけ繰り返し演算を行う。または、検出装置130は、式1310を生成するごとに誤差ベクトル1312の値の大きさを判定し、誤差ベクトル1312の値の大きさが所定の範囲内になるまで繰り返し演算を行う。
そして、検出装置130は、繰り返し演算において最後に得られた次回デバイス座標1340が示す変数X,Y,Z,t,dtの各値を、変数X,Y,Z,t,dtの各解として得る。
(実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算)
図14は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算の一例を示すフローチャートである。図15は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算において算出される各情報の一例を示す図である。図15において、図12に示した部分と同様の部分については同一の符号を付して説明を省略する。
検出装置130は、たとえば図5に示したステップS509において、4機の衛星についての測定データと参照元データとに基づくスナップショット測位演算として、たとえば図14に示す処理を実行する。ここでは、検出装置130は、他の時点の測位データに基づいて通常のスナップショット測位演算により変数X,Y,Z,t,dtの解を算出済みであり、算出した変数dtの解(−1.81183)を参照元データ1501として記憶しているものとする。なお、図15に示す例では、参照元データ1501にはタイムスタンプ(上述の261858)も含まれている。
図14に示すステップS1401,S1402は、図11に示したステップS1101,S1102と同様である。検出装置130は、ステップS1401において測定データ1201を取得する。また、検出装置130は、ステップS1402において受信局位置情報1202を取得する。ステップS1402のつぎに、検出装置130は、参照元データ1501の変数dtの解を取得する(ステップS1403)。
図15に示すステップS1404〜S1409は、図11に示したステップS1103〜S1108と同様である。ただし、図9に示した第1の算出方法を用いる場合、ステップS1405において、検出装置130は、測定データ1201のタイムスタンプが示す時刻における各衛星のXYZ座標および時計誤差補正値を算出する。また、図10に示した第2の算出方法を用いる場合、検出装置130は、測定データ1201のタイムスタンプが示す時刻に、ステップS1403において取得した変数dtの解を加算した時刻における各衛星のXYZ座標および時計誤差補正値を算出する。
また、図9に示した第1の算出方法を用いる場合、ステップS1408において、検出装置130は、変数dtの値をステップS1403において取得した変数dtの解に固定した4変数の最小二乗法により変数X,Y,Z,tの解を算出する。また、図10に示した第2の算出方法を用いる場合、検出装置130は、変数dtの値を0に固定した4変数の最小二乗法により変数X,Y,Z,tの解を算出する。
これにより、4機のみの衛星についての測定データに基づいて変数X,Y,Z,tの解を算出することができる。ステップS1408における解の算出例について、図16において説明する。
(実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算における解の算出)
図16は、実施の形態にかかる検出装置による参照元データを用いたスナップショット測位演算における解の算出の一例を示す図である。図14に示したステップS1408における、参照元データを用いたスナップショット測位演算における解の算出例について説明する。
たとえば、検出装置130は、ステップS1403により取得した変数dtの解と、ステップS1405において算出した各衛星のXYZ座標と、ステップS1407において算出した各衛星の疑似距離と、に基づいて図16に示す式1610を生成(立式)する。式1610は、(変換行列1611)\(誤差ベクトル1612)=(デバイス座標修正量1620)である。
変換行列1611は、デバイス111が捕捉した各衛星(ここでは4機の衛星)に対応する各行と、4つの列と、を有する行列である。変換行列1611の第1列(最も左側の列)は、4機の衛星のそれぞれについて、(衛星X座標−デバイスX座標)÷疑似距離により算出された値である。
変換行列1611の第2列は、4機の衛星のそれぞれについて、(衛星Y座標−デバイスY座標)÷疑似距離により算出された値である。変換行列1611の第3列は、4機の衛星のそれぞれについて、(衛星Z座標−デバイスZ座標)÷疑似距離により算出された値である。変換行列1611の第4列は、各行の値が1である。
誤差ベクトル1612は、4機の衛星のそれぞれについて、(疑似距離−|衛星XYZ座標−デバイスXYZ座標|)−t−ドップラー係数×dtにより算出された各値を示す。ここで、図9に示した第1の算出方法を用いる場合、dtには、ステップS1403により取得した変数dtの解が固定値として代入される。また、図10に示した第2の算出方法を用いる場合、dtには0が固定値として代入される。
デバイス座標修正量1620は、式1610の左辺の計算結果であり、変数X,Y,Z,tの各値の、次回の演算における修正量を示す。前回デバイス座標1630は、直前に立式した式1610に用いた変数X,Y,Z,tの各値である。
検出装置130は、前回デバイス座標1630に、直前に立式した式1610により算出したデバイス座標修正量1620を加算することにより次回デバイス座標1640を算出する。次回デバイス座標1640は、次回の演算における変数X,Y,Z,tの各値である。すなわち、検出装置130は、次回デバイス座標1640の各値を用いて式1610を再度生成する。
図16において説明したように、検出装置130は、式1610により得られたデバイス座標修正量1620を用いて変数X,Y,Z,tを更新した式1610を生成する処理を繰り返す演算を、誤差ベクトル1612が示す誤差が十分に小さくなるまで行う。そして、検出装置130は、繰り返し演算において最後に得られた次回デバイス座標1640が示す変数X,Y,Z,tの各値を、変数X,Y,Z,tの各解として得る。
このように、実施の形態によれば、第1時点においてデバイスが5機以上の衛星から受信した各データにより算出した測位解のうちの第5変数の解を用いることで、第2時点においてデバイスが4機の衛星から受信した各データにより測位解を得ることができる。これにより、スナップショット測位において、デバイスによる捕捉衛星数が所定数(5機)より少なくても測位解を求めることができる。
また、たとえば加速度センサなどをデバイスに設けなくても、デバイスが4機以下の衛星からしかデータを受信できなかった時点についても測位解を求めることができる。このため、デバイスの製造コストや消費電力を抑制することが可能になる。
上述の実施の形態において、デバイス111からの測定データが受信局120を介して検出装置130へ送信される構成について説明したが、このような構成に限らない。たとえば、検出装置130に受信局120の機能を設け、検出装置130がデバイス111からの測定データを直接受信する構成としてもよい。
また、上述の実施の形態において、デバイス111の位置の検出を、デバイス111ではなく外部の検出装置130において行う測位方法(たとえばCO−GPS)について説明したが、このような構成に限らない。たとえば、デバイス111に検出装置130の機能を設け、デバイス111の位置の検出をデバイス111が行う構成としてもよい。
また、上述の実施の形態において、トラック110のトレース情報を得るためにデバイス111の測位を行う構成について説明したが、このような構成に限らない。すなわち、デバイス111を設置し、またはデバイス111を所持させる対象はトラック110に限らない。たとえば、子供や高齢者にデバイス111を所持させることにより、子供や高齢者の位置や移動経路を特定することによる見守りサービスが可能になる。
また、野生動物等にデバイス111を取り付けることにより、野生動物等の位置や移動経路を特定することによる調査が可能になる。また、IoT(Internet of Things:モノのインターネット)の各種のフロント端末にデバイス111を設けることにより、フロント端末の位置や移動経路を特定することによるIoTの各種のサービスが可能になる。
以上説明したように、検出方法および検出プログラムによれば、捕捉衛星数が所定数より少なくても測位解を得ることができる。
たとえば、捕捉衛星数が4機しかなく測位解を得られない対象データについて、異なる時点の測位可能なデータとその測定時刻(dt)に基づいてスナップショット測位演算における第5変数を固定することで、測位解を得ることができる。
なお、本実施の形態で説明した検出方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM(Compact Disc−Read Only Memory)、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)第1時点においてデバイスが5機以上の衛星からデータを受信した結果に基づいて、前記デバイスの3次元位置を示す第1〜第3変数と、前記デバイスの内部時刻のずれを示す第4変数と、前記デバイスと前記衛星との間のドップラー効果による時間ずれを示す第5変数と、を含む方程式の解を算出し、
前記第1時点と異なる第2時点において前記デバイスが4機の衛星からデータを受信した結果と、前記第1時点について算出した前記第5変数の解と、に基づいて前記第1〜第4変数を含む方程式の解を算出し、
前記第1時点および前記第2時点のそれぞれについて、算出した前記第1〜第3変数の各解に基づく前記デバイスの位置情報を出力する、
ことを特徴とする検出方法。
(付記2)前記第2時点についての前記解を算出する際に、前記第1〜第5変数を含む方程式において前記第5変数の値を前記第1時点についての前記第5変数の解に固定した方程式の解を算出することを特徴とする付記1に記載の検出方法。
(付記3)前記第1時点についての前記解を算出する際に、前記第1〜第5変数を含む方程式の解をスナップショット測位演算により算出することを特徴とする付記1または2に記載の検出方法。
(付記4)前記第1時点は、前記デバイスが衛星からのデータを受信した各時点のうち前記第2時点の直前の時点であることを特徴とする付記1〜3のいずれか一つに記載の検出方法。
(付記5)前記デバイスの位置情報を、前記デバイスの位置情報の算出に用いたデータを前記デバイスが衛星から受信した時刻と対応付けて出力することを特徴とする付記1〜4のいずれか一つに記載の検出方法。
(付記6)コンピュータに、
第1時点においてデバイスが5機以上の衛星からデータを受信した結果に基づいて、前記デバイスの3次元位置を示す第1〜第3変数と、前記デバイスの内部時刻のずれを示す第4変数と、前記デバイスと前記衛星との間のドップラー効果による時間ずれを示す第5変数と、を含む方程式の解を算出し、
前記第1時点と異なる第2時点において前記デバイスが4機の衛星からデータを受信した結果と、前記第1時点について算出した前記第5変数の解と、に基づいて前記第1〜第4変数を含む方程式の解を算出し、
前記第1時点および前記第2時点のそれぞれについて、算出した前記第1〜第3変数の各解に基づく前記デバイスの位置情報を出力する、
処理を実行させることを特徴とする検出プログラム。
11〜15 衛星
21,712〜715 遮蔽物
100 端末位置検出システム
110 トラック
111 デバイス
120 受信局
130 検出装置
211〜213 区間
601 グラフ
710 マップ
711 道路
720 移動経路
721〜728 地点
730 推定経路
800 トレース情報
901 エフェメリス
902 タイムスタンプ
903 軌道計算式
904 衛星座標
905 受信局位置
906 受信局疑似距離
907 プリアンブル補正値
908 コード位相
909 疑似距離
910 最小二乗法
911,912 解
913 デバイス緯度経度高度
914 測位結果
915,1501 参照元データ
1201 測定データ
1202 受信局位置情報
1203 プリアンブル補正値情報
1204 衛星座標・時計誤差補正値情報
1205 観測値情報
1206 疑似距離情報
1207 解情報
1208 測位データ
1310,1610 式
1311,1611 変換行列
1312,1612 誤差ベクトル
1320,1620 デバイス座標修正量
1330,1630 前回デバイス座標
1340,1640 次回デバイス座標

Claims (6)

  1. 第1時点においてデバイスが5機以上の衛星からデータを受信した結果に基づいて、前記デバイスの3次元位置を示す第1〜第3変数と、前記デバイスの内部時刻のずれを示す第4変数と、前記デバイスと前記衛星との間のドップラー効果による時間ずれを示す第5変数と、を含む方程式の解を算出し、
    前記第1時点と異なる第2時点において前記デバイスが4機の衛星からデータを受信した結果と、前記第1時点について算出した前記第5変数の解と、に基づいて前記第1〜第4変数を含む方程式の解を算出し、
    前記第1時点および前記第2時点のそれぞれについて、算出した前記第1〜第3変数の各解に基づく前記デバイスの位置情報を出力する、
    ことを特徴とする検出方法。
  2. 前記第2時点についての前記解を算出する際に、前記第1〜第5変数を含む方程式において前記第5変数の値を前記第1時点についての前記第5変数の解に固定した方程式の解を算出することを特徴とする請求項1に記載の検出方法。
  3. 前記第1時点についての前記解を算出する際に、前記第1〜第5変数を含む方程式の解をスナップショット測位演算により算出することを特徴とする請求項1または2に記載の検出方法。
  4. 前記第1時点は、前記デバイスが衛星からのデータを受信した各時点のうち前記第2時点の直前の時点であることを特徴とする請求項1〜3のいずれか一つに記載の検出方法。
  5. 前記デバイスの位置情報を、前記デバイスの位置情報の算出に用いたデータを前記デバイスが衛星から受信した時刻と対応付けて出力することを特徴とする請求項1〜4のいずれか一つに記載の検出方法。
  6. コンピュータに、
    第1時点においてデバイスが5機以上の衛星からデータを受信した結果に基づいて、前記デバイスの3次元位置を示す第1〜第3変数と、前記デバイスの内部時刻のずれを示す第4変数と、前記デバイスと前記衛星との間のドップラー効果による時間ずれを示す第5変数と、を含む方程式の解を算出し、
    前記第1時点と異なる第2時点において前記デバイスが4機の衛星からデータを受信した結果と、前記第1時点について算出した前記第5変数の解と、に基づいて前記第1〜第4変数を含む方程式の解を算出し、
    前記第1時点および前記第2時点のそれぞれについて、算出した前記第1〜第3変数の各解に基づく前記デバイスの位置情報を出力する、
    処理を実行させることを特徴とする検出プログラム。
JP2021501475A 2019-02-27 2019-02-27 検出方法および検出プログラム Active JP7081716B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/007710 WO2020174635A1 (ja) 2019-02-27 2019-02-27 検出方法および検出プログラム

Publications (2)

Publication Number Publication Date
JPWO2020174635A1 true JPWO2020174635A1 (ja) 2021-10-07
JP7081716B2 JP7081716B2 (ja) 2022-06-07

Family

ID=72239606

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021501475A Active JP7081716B2 (ja) 2019-02-27 2019-02-27 検出方法および検出プログラム

Country Status (3)

Country Link
US (1) US20230128046A1 (ja)
JP (1) JP7081716B2 (ja)
WO (1) WO2020174635A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020169858A (ja) * 2019-04-02 2020-10-15 富士通株式会社 位置検知システム、位置検知装置および位置検知方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05333132A (ja) * 1992-06-03 1993-12-17 Hitachi Ltd Gps測位方法及び装置
JP2005326429A (ja) * 1995-10-09 2005-11-24 Snaptrack Inc Gps受信機とgps信号を処理する方法
JP2011141282A (ja) * 2003-04-25 2011-07-21 Qualcomm Inc 信号捕捉補助データを取得するためのシステム及び方法
JP2012524273A (ja) * 2009-04-20 2012-10-11 ザ・ボーイング・カンパニー 受信機の位置決定
US20170097422A1 (en) * 2014-07-11 2017-04-06 Ignacio Fernandez-Hernandez Method and system for positioning and timing of a radionavigation receiver
JP2018109575A (ja) * 2017-01-05 2018-07-12 株式会社日立産機システム 位置測位システム及び位置測位方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0167683B1 (en) * 1984-06-08 1989-09-20 Decca Limited Position fixing system
US6215442B1 (en) * 1997-02-03 2001-04-10 Snaptrack, Inc. Method and apparatus for determining time in a satellite positioning system
US6937187B2 (en) * 2000-11-17 2005-08-30 Global Locate, Inc. Method and apparatus for forming a dynamic model to locate position of a satellite receiver
US6473694B1 (en) * 2001-04-06 2002-10-29 Nokia Corporation Method, apparatus and system for estimating user position with a satellite positioning system in poor signal conditions
JP5333132B2 (ja) 2009-09-30 2013-11-06 ブラザー工業株式会社 圧力付与部の給電構造及び給電配線部材
EP2548049A4 (en) * 2010-01-27 2013-10-02 Baseband Technologies Inc SYSTEM, METHOD AND COMPUTER PROGRAM FOR FIRST POSITIONING TIME FOR GNSS RECEIVER

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05333132A (ja) * 1992-06-03 1993-12-17 Hitachi Ltd Gps測位方法及び装置
JP2005326429A (ja) * 1995-10-09 2005-11-24 Snaptrack Inc Gps受信機とgps信号を処理する方法
JP2011141282A (ja) * 2003-04-25 2011-07-21 Qualcomm Inc 信号捕捉補助データを取得するためのシステム及び方法
JP2012524273A (ja) * 2009-04-20 2012-10-11 ザ・ボーイング・カンパニー 受信機の位置決定
US20170097422A1 (en) * 2014-07-11 2017-04-06 Ignacio Fernandez-Hernandez Method and system for positioning and timing of a radionavigation receiver
JP2018109575A (ja) * 2017-01-05 2018-07-12 株式会社日立産機システム 位置測位システム及び位置測位方法

Also Published As

Publication number Publication date
US20230128046A1 (en) 2023-04-27
WO2020174635A1 (ja) 2020-09-03
JP7081716B2 (ja) 2022-06-07

Similar Documents

Publication Publication Date Title
CN102575933B (zh) 地图图像综合数据库生成系统以及地图图像综合数据库生成程序
US9910158B2 (en) Position determination of a cellular device using carrier phase smoothing
US9880286B2 (en) Locally measured movement smoothing of position fixes based on extracted pseudoranges
CN105849589B (zh) 全球导航卫星系统、定位终端、定位方法以及记录介质
US8862396B2 (en) Positioning device and positioning method
US20140378171A1 (en) Concurrent dual processing of pseudoranges with corrections
CN107884800B (zh) 观测时滞系统的组合导航数据解算方法、装置及导航设备
JPWO2017046914A1 (ja) 測位衛星選択装置、測位装置、測位システム、測位情報発信装置および測位端末
JP5352422B2 (ja) 測位装置及びプログラム
CN112327340B (zh) 终端定位精度评估方法、装置、设备以及介质
CN102483451A (zh) Gnss接收器及操作方法
KR101419339B1 (ko) 위성항법 보정시스템의 보정정보 처리 장치 및 그 방법
US20120010811A1 (en) Route information generation device and route information generation method
CN113820735A (zh) 位置信息的确定方法、位置测量设备、终端及存储介质
JP2017049089A (ja) 情報処理装置、情報処理方法およびプログラム
JP7081716B2 (ja) 検出方法および検出プログラム
JP2007003195A (ja) 位置検出装置
EP3137923A1 (en) Dead reckoning system based on locally measured movement
KR101141984B1 (ko) Dr/gps 데이터 융합 방법
CN117055323A (zh) 基于北斗/伽利略系统融合的星基精密授时方法及系统
JP2006090912A (ja) 測位装置,情報配信装置,測位方法及び情報配信方法
JP2019020260A (ja) パラメータ配信システム
CN105510936B (zh) 星载gnss联合定轨方法及装置
US9678215B2 (en) Correlated GPS pseudorange error estimation method
KR101344426B1 (ko) 위성항법 보정시스템의 보정정보 처리 장치 및 그 방법

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210524

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210524

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220509

R150 Certificate of patent or registration of utility model

Ref document number: 7081716

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150