(58)【調査した分野】(Int.Cl.,DB名)
前記第1の位置と前記第2の位置との間の差、および前記第1の時間と前記第2の時間との間の差に少なくとも部分的に基づいて、前記受信機が前記信号源を通過して移動する平均速度を決定するステップをさらに含み、
前記信号源のための前記位置を決定するステップが、前記決定された平均速度と、前記信号源に対応する前記ピーク値と、前記信号源が前記経路に沿って配置されている前記決定された順序とを使用するステップを含む、請求項2に記載の方法。
前記複数の受信機によって収集された前記データを使用して、前記複数の信号源の各々のためのプロファイルを決定するステップであって、前記プロファイルが、前記デバイスをジオポジショニングするときに前記複数の信号源のうちの少なくとも1つからの信号をどのように調整すべきであるかを指定する、ステップをさらに含む、請求項7に記載の方法。
前記信号源のための前記位置を決定するステップが、前記信号源がそれに沿って配置されている前記経路の既知のジオメトリの指示を使用するステップを含む、請求項1に記載の方法。
【発明を実施するための形態】
【0019】
上記で簡単に概説したように、本開示の技法を実装するシステムは、近接ビーコンまたは他の信号源が、衛星カバレージが制限されたエリアを通る経路に沿ってどのように配置されているかを、そのエリアを通って移動する1つまたは複数の受信機(スマートフォンなど)によって収集された信号データを使用して、自動的に決定する。システムはまた、実装形態に応じて、決定をより正確にするために、他の入力を利用することもできる。ビーコンのロケーションが決定されると、システムは、続いて経路に沿ってエリアを移動する受信機をジオポジショニングすることができ、または、ビーコンは、決定されたロケーション情報を管理フレームおよび/もしくは広告送信の中で送信して、受信機が自律的にそれら自体をジオポジショニングすることを可能にすることができる。
【0020】
本開示の技法は、ジオポジショニングのためにビーコンまたは他の信号源をプロビジョニングするために必要とされる時間の量を低減し、ならびに、オペレータがロケーション情報を取得し、ビーコンおよび/または集中型データベースに手動で入力する必要をなくすことができる。
【0021】
これらの技法が使用され得る例示的な環境、およびこの環境内で動作することができるシステムについて、まず
図1および
図2を参照しながら説明する。さらなる明快のために、この環境内で動作する信号源を使用する例示的なジオポジショニング技法について、
図3および
図4のフロー図を参照しながら説明する。いくつかの実施形態では、
図3のシステムは、
図5〜
図12を参照しながら説明する手法のうちの1つまたはいくつかを使用して、信号源のロケーションが自動的に決定された後、これらのジオポジショニング技法を使用する。
【0022】
例示的な環境およびシステム構成要素
図1は、車両12が、無線信号を実質的に遮断する障害物14のために、衛星信号カバレージがほとんどまたはまったく利用可能ではない領域を通って移動する、例示的な環境10を概略的に示す。たとえば、障害物14は、トンネルの壁および天井であり得る。信号源20は、車両がトンネルを通って移動する方向に沿って配置され、ビーコンなどの管理フレームを送信するように構成される。信号源20は、たとえば、Bluetooth(登録商標)またはWi-Fi(商標)規格に従って動作する近接ビーコン、または、それを介してデバイスが通信ネットワークにアクセスすることができるワイヤレスアクセスポイントであり得る。信号源20は、1つまたは複数のプロセッサと、1つまたは複数のプロセッサ上で実行され得る命令を記憶する非一時的メモリとを含み得る。車両12は、信号源20と対話するときにワイヤレスクライアントまたは「局」として動作するワイヤレス受信機またはトランシーバ22を装備している。
図1における構成要素、またはこれらの構成要素の間の距離のいずれも、一定の縮尺で描かれていない。
【0023】
動作時、信号源20は、一方では、複数の信号源が同じチャネル上で共存することを可能にし、他方では、実質的に同じ時間に、すなわち、その間に車両12が100km/hで移動しているときでさえわずか数メートルしか進行しない時間間隔内で、局22がいくつかの異なるアクセスポイントから管理フレームを受信することを可能にするように、管理フレームを送信する。本開示における「チャネル」という用語は、周波数/周波数帯域、または、複数の送信機による同時使用のための無線リソースを区分する別の好適な形態を含むものと理解されるべきである。以下でより詳細に説明するように、信号源20は、この目的で、好適な変調方式を使用して、同じチャネル上で管理フレームを送信するように構成される。
【0024】
局22は、車両12に内蔵されたナビゲーションシステム、ポータブルナビゲーションデバイス、ナビゲーションソフトウェアをもつスマートフォン、スマートウォッチなどのウェアラブルデバイスなどであり得る。さらに、
図1は、個人の車両を示しているが、他の環境では、局22は、列車、バス、および他のタイプの車両において動作することができる。
【0025】
局22は、
図2に示されたモバイルデバイス100において実装され得る。モバイルデバイス100は、たとえば、CPUなどの1つまたは複数のプロセッサ102と、たとえば、IEEE802.11(Wi-Fi)および/または802.15(Bluetooth(登録商標))のような規格に適合する通信プロトコルを使用する通信をサポートするワイヤレスカードなど、ワイヤレスインターフェース104と、タッチスクリーン、スピーカーなどのユーザインターフェース106と、永続的および/または非永続的記憶構成要素を含み得る、非一時的コンピュータ可読メモリ108とを含み得る。
【0026】
例示的な実装形態では、メモリ108は、オペレーティングシステム(たとえば、Android(登録商標)、iOS(登録商標))、追加のライブラリ、プラグイン、様々なポーティングレイヤなどを含み得る、ソフトウェアプラットフォーム120を記憶する。アプリケーション124は、APIレイヤ122を介して、プラットフォーム120の様々な機能にアクセスすることができる。たとえば、プラットフォーム120は、GPS信号、Wi-Fi信号など、利用可能な信号を使用して、モバイルデバイス100のロケーションを決定するための機能を含み得、APIを介して、ジオポジショニングの結果の一部を公開している。そのような機能のより具体的な例には、Android(登録商標)オペレーティングシステム上で利用可能な融合ロケーションプロバイダ(FLP: Fused Location Provider)、およびiOS(登録商標)上で利用可能なロケーションサービス(LS)が含まれる。
【0027】
引き続き
図2を参照すると、モバイルデバイス100は、通常、ワイヤレスネットワーク132を介して、ネットワークサーバ130にアクセスすることができる。ネットワークサーバ130は、アクセスポイントデータベース134から信号源20に関連するデータを検索し、このデータをモバイルデバイス100に与えることができる。アクセスポイントデータベース134は、任意の好適な方法で、1つまたは複数のサーバ内で実装され得る。データは、アクセスポイントの識別子、チャネル選択、アクセスポイントの地理的ロケーションなどを含み得る。このデータ、および信号源20からの管理フレームの信号強度測定値(または、他の好適な測定値)を使用して、モバイルデバイス100は、その現在のロケーションを決定することができる。トンネル内にあるとき、モバイルデバイス100は、サーバ130にアクセスすることが可能でないことがあり、いくつかの実装形態では、信号源20に関連する、あらかじめキャッシュされたデータに依拠することがある。信号源構成システム140は、以下で説明するように信号源20を構成し、データベース134内の対応するデータレコードをポピュレートすることができる。
【0028】
また、以下で説明するように、スマートフォンなど、1つまたは複数の受信機は、信号源20A〜Cからの信号データの収集、および信号データをソース構成システム140に与えることに関与することができ、ソース構成システム140は、次いで、このデータを使用して、信号源20A〜Cのロケーションを自動的に決定する。いくつかの実装形態では、信号源ロケーションの決定に関与するスマートフォンのユーザは、いくつかのコントロールを操作し、かつ/またはいくつかのアプリケーションをインストールして、スマートフォンが測定値を信号源構成システム140に報告することを可能にする。
【0029】
アクセスポイント信号を使用するジオポジショニング
利用可能な信号を使用してモバイルデバイス100のロケーションを決定するための機能の例には、Android(登録商標)オペレーティングシステム上で利用可能な融合ロケーションプロバイダ(FLP)、およびiOS(登録商標)上で利用可能なロケーションサービス(LS)が含まれる。FLPとLSの両方は、GPS信号が利用可能ではないとの決定に応答して、Wi-Fiナビゲーションをアクティブ化することができる。しかしながら、既存のプラットフォームは、一般に、信号データへの制限されたアクセスのみを提供し、もしあれば、信号源20からの信号の処理に対するわずかな制御を可能にする。具体的には、既存のプラットフォームは、ワイヤレスチャネルがスキャンされる順序において、アプリケーション(アプリケーション124など)に制御を与えず、これらのプラットフォームは、スキャン順序の指示、またはスキャンされたチャネルに対する制御も与えない。
【0030】
プラットフォーム120、および今日、利用可能な他のプラットフォーム上では、スキャン間隔は約5秒であり、各スキャンが最大2.5秒を要する。スキャン中に、プラットフォーム120は、チャネルのセット(たとえば、Wi-Fiネットワーク上では13)中を反復して、管理フレームを検出し、信号源20Aからの管理フレームのための受信信号強度指示(RSSI)、または信号品質の別の定量的メトリックを計算する。プラットフォームが、最初のチャネル上の2.5秒スキャンの開始において、信号源20Aから最初の管理フレームを受信し、最後のチャネル上の2.5秒スキャンの終了において、信号源20Bから最後の管理フレームを受信するとき、モバイルデバイス100は、この間隔の間にかなりの距離だけ変位され得る。たとえば、モバイルデバイス100が、100km/hで進行する車両内で動作する場合、最初の管理フレームおよび最後のフレームは、約70メートル離れたロケーションにおいて受信および測定され得る。
【0031】
結果として、アプリケーション124のうちの1つが、APIレイヤ122を介して、ロケーション要求150を開始するとき、プラットフォーム120は、スキャン中のモバイルデバイスの可能な変位が著しい誤差をもたらす、ロケーション推定値152を与えることがある。
【0032】
可能な一実施形態では、プラットフォーム120は、APIレイヤ122を介してスキャン順序を公開するので、アプリケーションは、(たとえば、デッドレコニング技法を使用して)スキャン中にモバイルデバイス100の速度の推定値を検索し、特定のアクセスポイントからの管理フレームが厳密にいつスキャン期間内に受信されたかを決定し、速度に鑑みて、誤差を軽減することを試みることができるようになる。代替的に、デッドレコニングを使用した誤差の軽減は、プラットフォーム120内で実装され得るので、APIレイヤ122を介して返されるロケーション推定値152の精度が改善されるようになる。
【0033】
しかしながら、上記で説明したように、デッドレコニング技法は誤差の蓄積を受ける。その上、あるプラットフォームが、スキャン順序の指示を与えるように修正されるか、またはスキャン順序を制御するための追加の制御を公開する場合でも、特定のタイプまたはバージョンのプラットフォームソフトウェアに依存しないジオポジショニング解決策を有することが望ましい。
【0034】
モバイルデバイス100上に専用のソフトウェアをインストールすること、または他の方法でモバイルデバイス100を再構成することを必要としない、解決策を提供するために、信号源構成システム140は、同じ単一のチャネル上でWi-Fi管理フレームを送信するように、信号源20A、20B、...20Nを構成する。結果として、プラットフォーム20は、ほぼ同時に、すなわち、マルチチャネルスキャン手順中の同じチャネルのスキャン中に、信号源20A、20B、...20NからWi-Fi管理フレームを受信し、これらのフレームのためのRSSIを計算する。Wi-Fi管理フレームが受信および測定される時間、ならびにプラットフォーム120によって報告されたスキャンの時間が、2.5秒も分離され得るとしても、ジオポジショニングの全体的な精度が上がり、その理由は、複数のアクセスポイントからの測定値がほぼ同時に収集されるからである。
【0035】
さらに、信号源構成システム140は、信号源20が管理フレームを送信して、共有チャネルの潜在的な混雑に対処するレートを修正する。既存の規格に従って、管理フレームは、1mbpsで、直接シーケンス(DS)変調を使用して送信される。結果として、各ビーコンを送るために約2.5ms、または、あらゆるアクセスポイントについて、必要とされるエアタイムの各秒のうちの25msを要する。これは、合計エアタイムの1/40に対応し、それによって、複数のアクセスポイントがシステム10に追加されると、スペクトルが非常に混雑するようになる。管理フレームとビーコンの両方は、CSMAプロトコルに準拠する。たとえば、42個のアクセスポイントが送信しており、20個が「可視」であると仮定すると、利用可能なタイムスロットを発見する可能性は極めて小さい。
【0036】
上記で説明した理由のための混雑を回避するために、例示的な一実装形態による信号源構成システム140は、54mpbsの速度に達するように、直交周波数分割多重(OFDM)を使用して、管理フレームを送信するように、信号源20を構成する。42個のアクセスポイントによる実験は、各ビーコン/プローブ応答のために必要とされるエアタイムが約0.15msまで低減されたことを示している。利用可能な送信スロットを発見するおおよその確率は、すべての42個のアクセスポイントが「可視」であると仮定すると、約93%である。
【0037】
図1および
図2を参照すると、40mごとに一度、トンネル内に信号源20と同様のアクセスポイントを配置するために実験が実施された。アクセスポイントは、トンネルの側部に約4mの高さで設置された。Atheros AR9xチップセットをもつTL-WR740Nデバイスが、アクセスポイントとして使用された。アクセスポイントは、OpenWRTファームウェアを使用して構成された(OpenWRTは、様々なメーカーからの様々な好適なアクセスポイントとともに使用され得ることに留意されたい)。実験は、マルチパスおよび不十分な見通し線ファクタの場合でも、受信機が、2つの隣接するアクセスポイントの間に位置するとき、-46dBmと-66dBmとの間、および、アクセスポイントのうちの1つから最も短い距離にある(送信電力が+20dBmに設定されるとき、他の2つのアクセスポイントが約-52〜-72dBmの信号強度に対応する)とき、-32dBmと-52dBmとの間を「見る」ことを示している。RSSIを単に平均することによって、ジオポジショニング誤差が16m未満まで低減された。その上、Bluetooth(登録商標)送信機では、誤差が10m未満まで低減された。
【0038】
したがって、本開示のアクセスポイントは、トンネル内に配置され、トンネルを通って移動するモバイルデバイスが十分な精度でその地理的位置を決定することを可能にする方法で、ビーコンまたは他の管理フレームを送信するように構成される。上記で説明したように、アクセスポイントは、(i)管理フレームをスキャンするとき、モバイルデバイスがチャネルの間で切り替える必要をなくすように、管理フレームを同じ通信チャネル上で送信すること、および(ii)車両がポジショニング精度に著しく影響を及ぼすために十分遠く移動していない短い時間間隔(たとえば、15ms)内で、すべての管理フレームが収集されることを可能にする、変調方式(たとえば、OFDM)を使用して、管理フレームを送信することを行うように構成される。
【0039】
例示的なジオポジショニング方法
さらなる明快のために、
図3は、モバイルデバイスをジオポジショニングするための例示的な方法200のフロー図を示す。方法は、たとえば、
図2のモバイルデバイス100、または
図1の局22において実装され得る。方法200について、アクセスポイントを参照しながら説明するが、これらの技法が、上記で示したように、任意の好適な信号源とともに使用され得ることは理解されよう。
【0040】
方法200は、ブロック202で開始し、アクセスポイントのセットのロケーションが検索される。アクセスポイントは、たとえば、トンネル内でモバイルデバイスをジオポジショニングするために十分なセットを定義し得る。実装形態に応じて、アクセスポイントのロケーションは、たとえば、モバイルデバイスがトンネルに入るより前に、または、セルラーカバレージが利用可能であるときは、モバイルデバイスがトンネルを通って進行中であるとき、検索され得る。
【0041】
ブロック204で、管理フレームが、単一のスキャン中に同じチャネル上で複数のアクセスポイントからモバイルデバイスにおいて受信され、ブロック206で、管理フレームのRSSI(または、別の好適なメトリック)が計算される。次いで、ブロック208で、モバイルデバイスは、管理フレームのRSSI値と、以前に受信されたアクセスポイントのロケーションとを使用して、その地理的位置を決定することができる。
【0042】
図4は、アクセスポイントを構成するための例示的な方法300のフロー図を示す。方法300は、たとえば、信号源構成システム140内で実装され得る。
【0043】
ブロック302で、複数のアクセスポイントが、トンネルの壁に沿ってなど、衛星信号が遮られるエリア内に配置される。次いで、アクセスポイントが、同じチャネル上で管理フレームを送信するように構成される(ブロック304)。ブロック306で、アクセスポイントが、たとえば、OFDMを使用して、52Mbpsなど、比較的高い変調レートで送信するように構成される。
【0044】
信号源のロケーションの自動決定
図5の
図350は、経路352に沿って静的に配置されたいくつかの信号源360A〜Gを概略的に示し、経路352は、トンネルを通る道路、または、道路の別のレベルによって衛星から遮られた、より低いレベルの道路など、衛星カバレージが制限された別のエリアであり得る。信号源360A〜Gは、互いから少なくともほぼ距離dのところに配置され得、隣接する信号源のペアの間の分離は、特定のセットアップに応じて変動する。隣接する信号源のうちのいくつかの間の分離が距離dから著しく逸脱する、それらの構成では、信号源構成システム140は、以下で説明するように、いくつかの技法を使用して距離d'、d''などを決定することができる。
【0045】
より具体的な例として、技術者は、近接ビーコンをトンネルの天井に付着させ、ビーコンの間の距離dの分離を維持することを試みることができる。技術者が、比較的精密な離間技法を使用することが既知であるとき、信号源構成システム140は、隣接する信号源360A〜Gの各ペアが距離dだけ分離されるという仮定を実装するように構成され得る。その上、信号源構成システム140は、経路352に沿ったどこに信号源360A〜Gが位置するかの初期推定値を生成する目的のみで、この仮定を実装するように構成され得る。次いで、信号源構成システム140は、追加または改善されたデータが利用可能になると、初期推定値を調整することができる。
【0046】
いずれの場合も、信号源構成システム140は、最初に、信号源360B〜360Fのロケーションについてのいかなる情報をも有していないことがある。経路352のそれぞれの端部に配置された信号源360Aおよび360Gに関して、いくつかのシナリオでは、これらのデバイスは、トンネルへの2つの入口の近くに配置され得る。これらの場合、信号源360Aおよび360Gのロケーションは、たとえば、それぞれのGPSポジショニングフィックス(positioning fix)を使用して、比較的容易に決定され得る。
【0047】
車両370は、たとえば、
図1の車両12と同様に、局22などの受信機を含み得る。受信機は、一般に、信号源360A〜Gを検出すること、その強度を測定すること、およびそこからのワイヤレス信号を少なくとも部分的に処理することが可能な、任意の好適なデバイスであり得る。
図5に示されている例示的なシナリオにおける車両370は、経路352に沿って方向380に移動し、車両370の受信機は、時間に応じて、信号源360A〜Gからの対応する信号の強度の変動を示す、信号データを収集する。次いで、受信機は、信号データを信号源構成システム140に与えることができ、信号源構成システム140は、次にこの信号データを使用して、最初に信号源360A〜Gの相対的順序を決定し得る。
【0048】
より具体的な例として、
図6は、車両370内の受信機が経路352に沿って方向380に進行中である間に収集し得る、信号データを示す。7つの示された信号の各々は、数字および/または文字の任意の好適な組合せの形式における、対応する信号源の識別子を含み得る。ピーク400A〜Gは、異なる信号源からの信号が対応する時間に達する最大強度(たとえば、RSSI)に対応する。たとえば、ピーク400Aは、車両370内に搭載された受信機が信号源360Aからの最強の信号を検出するとき、時間t
1において発生し、典型的には、(
図7を参照しながら説明する状況を除いて)車両370が信号源360Aに最も近く近接しているときに発生する。このとき、他の信号源360B〜Gからの信号は、弱いか、または実際にまったく検出可能ではない。
【0049】
時間t
2において、車両370内に搭載された受信機は、信号源360Bからの最強の信号(ピーク400B)を検出するが、信号源360Aからの信号は、約20dBだけ低下する。このとき、車両370は、信号源360Bに極めて近接している可能性がある。同様のパターンが他の信号について観測され得、すなわち、受信機は、信号源のうちの1つの信号強度のピーク値と、残りの信号源の低い信号強度とを観測する。受信機がある信号源に達する前に、その信号源の信号強度は徐々に増大するが、様々な障害物、干渉、マルチパスなどのために、必ずしも「スムーズ」に増大するとは限らない。同様に、受信機が信号源を通過した後、信号強度は徐々に低下する。
【0050】
信号源構成システム140がピーク信号値を観測する順序は、典型的には、車両370が対応する信号源を通過する順序に対応する。したがって、信号源構成システム140は、
図6に示された信号データに基づいて、ピークが以下の順序、すなわち、400A、400B、...400Gで発生すること、対応する信号が信号源360A、360B、...360Gを識別すること、およびしたがって、信号源が経路352に沿って方向380にシーケンス360A、360B、...360Gとして配置されていることを決定することができる。
【0051】
一実装形態によれば、信号源構成システム140は、決定された順序を使用して、および、経路352に沿った距離Lを、N個の信号源の間の間隔の数で除算すること、すなわちd=L/(N-1)によって、信号源360A〜Gの間の平均距離をさらに推定する。信号源構成システム140は、地理情報システム(GIS)データ、たとえば、Google Mapsなどの地図作成サービスによって提供された自然および人工的な地理的特徴を記述する地図データ、または他の好適な地理空間データを使用して、距離Lを取得することができる。代替的に、信号源構成システム140は、制限された衛星カバレージのエリアの外側に位置する、信号源360Aおよび360Gから、GPS信号などのポジショニングフィックスを取得し、特に経路352が低い曲率を有するとき、2つのポジショニングフィックスを使用して、距離Lを推定し得る。次いで、信号源構成システム140は、信号源360Aもしくは360Gの既知のロケーション、および/または経路352のジオメトリの何らかの他の指示を使用して、これらの信号源のそれぞれのロケーションを決定することができる。より具体的には、信号源構成システム140は、長さdの変位ベクトルを信号源360Aの既知のロケーションに適用することによって、信号源360Bのロケーションを計算し、長さdの変位ベクトルを信号源360Bの既知のロケーションに適用することによって、信号源360Cのロケーションを計算することなどができる。
【0052】
上記で示したように、隣接する信号源360A〜Gのあらゆるペアが同じ距離dだけ分離され得るとは限らないが、信号源構成システム140は、初期ポジショニング推定値を生成するために、または、信号源360A〜Gの設置中に、一定の分離が維持されていたことが既知であるとき、この仮定を実装し得る。
【0053】
次に
図7を参照すると、信号源360A〜Gからの信号は、場合によっては、その中に受信機が配置されている車両の金属屋根によって、一時的に不明瞭にされ得る。減衰は、信号のいくつかの周波数では特に著しくなり得る。例示的な信号データ420は、信号源360A〜Gのうちの1つに対応する。
図6の信号データと同様に、信号の強度は、車両が信号源に接近するにつれて、受信機において一般に増大し、車両が信号源から離れて移動するにつれて、受信機において一般に減少する。しかしながら、ここでは、信号強度は第1のピーク420に達し、「谷」422に低下し、第2のピーク424に達し、徐々に低いレベルに減少する。谷422は、車両が、トンネルの天井に搭載された信号源の下にある時間に対応する可能性があり、ピーク420は、信号源からの信号が車両のフロントガラスを通過する時間に対応する可能性があり、ピーク424は、信号が車両のリアウィンドウを通過する時間に対応する可能性がある。谷422における信号強度の低下は、信号の周波数、および車両の屋根における材料のようなファクタに応じて、20dBにもなり得る。
【0054】
信号源構成システム140は、信号データ420のための近似値430を自動的に生成することができ、単一の外挿されたピーク432は、ピーク420と424との間の時間間隔のほぼ中央で発生する。この目的で、信号源構成システム140は、たとえば、好適な統計的技法を使用して、車両が信号源に接近しつつあるとき、信号強度における上昇傾向のための1つの曲線を生成し、車両が信号源から離れて移動するとき、信号強度における下落傾向のための別の曲線を生成し、ピーク432を2つの曲線の交点として識別することができる。これらの傾向に鑑みて、信号源構成システム140は、外挿されたピークは、たとえば、ピーク424とピーク440との間ではなく、ピーク420と424との間であるべきであると決定することができる。
【0055】
追加または代替として、信号源構成システム140は、ピーク420および424など、候補の高いピークのペア間が、車両の長さが信号源を通過するためにほぼ要する時間だけ分離されるか否かを決定することができる。たとえば、車両内の受信機がある入射角においてフロントガラスを通して信号を「見る」点と、受信機がリアウィンドウを通して信号を再度見始める点との間の距離が30mであると仮定すると、100km/hで進行する車両のためのピーク420および424は、約1秒だけ分離されるべきである。信号源構成システム140は、したがって、候補ピークの間の時間間隔が車両の速度に鑑みて適当な範囲内であるように見えるか否かを確認することができる(車両の速度は、信号源360Aおよび360Gにおけるポジショニングフィックスおよびタイムスタンプに基づいて推定され得る)。
【0056】
再び
図6を参照すると、車両370内の受信機が、信号源360Aおよび360Gのためのポジショニングフィックスおよび対応するタイムスタンプを取得するとき、信号源構成システム140は、距離Lを2つのタイムスタンプの間の差で除算することによって、信号源360Aと360Gとの間の車両の平均速度v
avgを決定することができる。信号源360B〜Fが、長さdの一定の間隔を有するのではなく、不均一に分離されるとき、信号源構成システム140は、以前に決定された平均速度v
avgを、あるピークに達するために要する時間の量で乗算すること、およびトンネルへの入口など、既知のロケーションに対する距離(または、より一般には、変位ベクトル)を計算することによって、信号源のロケーションを決定することができる。
【0057】
信号源構成システム140は、いくつかの実装形態ではまた、経路352に沿って移動する車両の速度における変動を考慮することもできる。いくつかのトンネルは、車両の速度の著しい変動を生じさせるのに十分に長く、交通量または道路品質の差は、さらに大きい速度の変動も生じさせ得る。
図8は、たとえば、車両内の受信機が信号源360A、360B、360Cおよび360Dについて収集することができる、極めて簡略化された信号データを示す。このシナリオでは、受信機は、ある時間の量t
Aの間、しきい値レベル460を上回る、信号源360Aからの信号450Aを見る。しきい値レベル460は、実験的に、ただし、いずれの場合も、精度を改善するために雑音レベルを著しく上回るように設定され得る。他の実施形態では、受信機は、任意の特定のしきい値を使用せず、代わりに、信号強度の相対的変化を分析する。受信機は、ほぼ同じ時間の量の間、信号源360Cおよび360Dからの信号450Cおよび450Dを見る。しかしながら、受信機は、より長い時間の量t
Bの間、信号源360Bからの信号450Bを見る。信号源360A〜Gが、同様の電力レベルにおいて送信することが既知である場合、それが典型的であり、時間の量t
Aとt
Bとの間のこれらの変動は、速度における差のためである可能性がある。
【0058】
信号450A〜Dが等しく強力な送信機によって送信されると仮定すると、信号源構成システム140は、
図8に示された信号データを、経路352の異なるセクションのための速度v
A-v
Dを示すものと解釈することができ、ただし、v
Aは、受信機が時間t
A中に移動する速度であり、v
Bは、受信機が時間t
B中に移動する速度である、などとなる。この場合、v
A≒v
C≒v
D、およびv
A/v
B≒t
B/t
Aである。これらの推定値は、互いに対する信号源の実際のポジショニングではなく、ある強度の信号への露出の持続時間のみに依存することに留意されたい。それぞれの速度値v
A-v
Dが決定されると、信号源構成システム140は、信号源のロケーションの推定値を改善することができる。
【0059】
さらなる明快のために、
図9は、信号源構成システム140が、変動する車両速度に鑑みて、信号源ロケーションの推定値をどのように自動的に修正することができるかを概略的に示す。
図6および
図7を参照しながら説明する技法を使用して生成され得る初期推定値520と、車両の平均速度とによれば、信号源のペア500/502および502/504は、距離dだけ分離され、信号源のペア504/506および506/508は、より長い距離d'だけ分離され、信号源のペア508/510および510/512はより短い距離d''だけ分離される。このシナリオにおける信号源構成システム140は、その間に車両内の受信機が、あるしきい値を上回る強度におけるある信号源からの信号を検出する時間の量を考慮に入れる。プロット530は、時間に応じた、信号源に対する受信機の秒単位の露出の持続時間を示す。
【0060】
プロット530によれば、受信機は、約12秒間に信号源500〜504から、約18秒間に信号源506および508から、および約8秒間に信号源510および512から、信号の十分に高い強度を測定する。信号源がほぼ同じ電力レベルにおいて送信する場合、プロット530は、車両が信号源506および508の近くで減速し、信号源510および512の近くで加速したことを示す。したがって、信号源500と512との間の経路全体のための単一の平均速度を計算するのではなく、信号源構成システム140は、信号源500〜504に対応するセグメントのためのセグメント固有の平均速度値v
1、信号源506および508に対応するセグメントのためのセグメント固有の平均速度値v
2、および信号源510および512に対応するセグメントのためのセグメント固有の平均速度値v
3を決定することができる。より詳細には、信号データにおけるタイムスタンプ情報を使用して、信号源構成システム140は、その間に受信機が対応する信号源500〜512に露出された時間のおおよその持続時間を決定し、ポジショニングフィックスを使用して、エンドポイントのデータまたは別の指示を測量し、v
1t
1+v
2t
2+v
3t
3=Lとなるように、長さLを決定することができ、ただし、t
1は、受信機が速度v
1において信号源500〜504を通過して進行する時間の量であり、t
2は、受信機が速度v
2において信号源506および508を通過して進行する時間の量であり、t
3は、受信機が速度v
3において信号源510および512を通過して進行する時間の量である。
【0061】
値v
1、v
2、およびv
3を決定すると、信号源構成システム140は、信号源のロケーションをより正確に決定することができる。たとえば、信号源構成システム140は、変位をd=P
i+v
1(t
p-t
i)として計算することによって、時間t
iにおいて達せられた信号源500の既知の位置P
iに対する信号源504のロケーションを計算することができ、ただし、信号源504のための観測または外挿されたピーク信号強度は、時間t
pにおいて発生する。この例示的なシナリオでは、信号源構成システム140は、初期推定値520を調整して、推定値540を生成し、推定値540では、隣接する信号源500〜512のすべてのペアが距離dだけ分離される。もちろん、他のシナリオでは、初期推定値は、一定の分離dを示すことができ、速度における変動を考慮する推定値は、異なる分離d、d'などを示す。
【0062】
いくつかのシナリオにおける信号源構成システム140はまた、その中に受信機が配置される車両によって報告された速度および/または加速度データを使用することもできる。たとえば、スマートフォンは、オドメーターおよび他のセンサー車両にアクセスし、車両センサーデータを信号強度測定値とともに信号源構成システム140に報告することができる。このデータが利用可能であるとき、信号源構成システム140は、追加の信号データを組み込むことによって、信号源推定値の精度を改善することができる。
【0063】
上記で説明した技法を使用して、信号源を位置特定する精度を改善するために、信号源構成システム140は、クラウドソーシングを利用して、複数の受信機から信号データを収集することができる。次いで、信号源構成システム140は、任意の好適な統計的手法を実装して、上記で説明した技法を信号データに適用することができる。たとえば、信号源構成システム140は、(重み付けなしまたは重み付けありの方法で)データを平均すること、外れ値を除去すること、信頼性のレベルに応じて、異なる重みをデータに割り当てること(たとえば、よりロバストなチップセットを装備した受信機は、信号強度を測定するとき、より正確であり得る)などを行うことによって、複数の受信機からのデータを結合することができる。さらに、信号源構成システム140は、場合によっては、ある受信機からの信号データを分析して、受信機がコンバーチブル型の車両内で動作するか、従来の車両内で動作するかを決定し、必要なときに信号強度におけるピークを外挿することができる。
【0064】
さらに、信号源構成システム140は、いくつかの実装形態では、信号源の特性における変動をも考慮するように構成され得る。たとえば、
図9を参照すると、信号源可視性における変動は、場合によっては、著しくより高い電力における、または、逆にハードウェア、バッテリー、もしくは他のファクタのために著しくより低い電力における、信号源500〜512のうちのいくつかのためであり得る。さらに、信号源500〜512がトンネル内に配置されたビーコンであるとき、トンネルの物理的構成は、どのくらい良好に信号がいくつかのエリアに達するかにおける変動を生じ得る。信号源構成システム140は、複数の受信機からの信号データを経時的に収集して、個々の信号源のための「プロファイル」を作成し、これらのプロファイルを使用して、信号源の位置の推定値をさらに修正することができる。
【0065】
プロファイルを生成するために、複数の受信機および複数の信号源のための信号データは、たとえば、信号源に対応する列、および受信機に対応する行をもつ、2次元行列に編成され得る。信号源構成システム140は、列データを処理して、特定の信号源の性質を決定し、信号源をポジショニングするとき、および/または続いて受信機をポジショニングするとき、適切な重みを生成することができる。より具体的な例として、信号源500〜512は、管理フレームにおいて送信電力の指示を送信するビーコンとして実装され得る。信号源構成システム140は、送信電力指示を使用して、ポジショニングのための修正係数を計算することができ、その理由は、より低い電力で送信しているビーコンが、より短い期間の間に「聞かれる」ことを期待し得るからである。送信電力における6dBの増大が、典型的には、(たとえば、信号がある固定されたしきい値RSSI値を上回るところで受信され得るエリアによって定義される)カバレージの2倍、および、したがって、ビーコンが聞かれる時間の量の2倍を生じることが観測された。
【0066】
さらに、プロファイリングに関して、ある信号源の特性は、たとえば、障害またはバッテリー消耗のために経時的に変化することがあり、対応するプロファイルは、どのように信号源が特定の時間において動作するように見えるかを示し得る。したがって、プロファイルは、あるソースからの信号が可能な障害のために弱められることを示し得るので、受信機はそれに応じて計算を調整することができる。より一般には、信号源構成システム140は、ジオポジショニング中に調整を可能にするために、信号源の1つまたは複数の特性を決定することができる。
【0067】
上記の例について、
図9の信号源500〜512、または
図5の信号源360A〜Gを特に参照しながら説明したが、一般に、これらの技法の各々が、
図1、
図5、または
図9の例示的な信号源を含み得る様々な好適な信号源に適用可能であることは理解されよう。
【0068】
次に
図10を参照すると、衛星カバレージが制限されたエリア内の信号源の地理的位置を決定するための例示的な方法550は、信号源構成システム140または別の好適なシステムにおいて実装され得る。方法550は、任意の1つまたはいくつかの好適なプログラミング言語における命令のセットとして実装され、非一時的コンピュータ可読媒体上に記憶され、1つまたは複数のプロセッサによって実行可能であり得る。
【0069】
方法550は、ブロック552で開始し、信号データが、衛星カバレージが制限されたエリア内の経路に沿って、たとえば、トンネルを通る道路上で移動する、1つまたは複数の受信機から取得される。信号データは、上記で説明したように、経時的な信号強度の変化を示すことができ、いくつかの実装形態では、信号源識別子、および信号源における送信電力設定のような情報を含み得る。その上、いくつかの実装形態では、信号源のロケーションが決定されると、ポジショニング情報が、後に送信するために対応する信号源に送信され得る。
【0070】
次に、ブロック554で、経路に沿って配置された信号源の相対的順序が、信号データを使用して決定される。この目的で、異なる信号源のためのピーク値が識別され得、ただし、ピークの相対的タイミングは、
図6〜
図8を参照しながら上記で説明したように、受信機が信号源に接近する順序に対応する。ブロック556で、経路のエンドポイントのためのポジショニングフィックスおよびタイムスタンプが受信され得る。トンネルへの入口に位置する信号源は、たとえば、GPSポジショナーを用いて手動でプロビジョニングされ得るか、または、既知の測量されたロケーションに配置され得るか、または、リアルタイムでGPSポジショニングフィックスを取得することができる。
【0071】
ブロック558で、信号源の決定された相対的順序は、追加の情報が収集される間、永久的または一時的に、おおよそのポジショニングのために使用され得る。たとえば、信号源が一定の間隔で離間されるという仮定が実装される場合、エンドポイントのロケーションを使用して、エンドポイントの間の距離を決定し、その距離を中間信号源の数で除算して、既知のロケーションに対する変位を取得して、信号源のおおよそのロケーションが決定され得る。信号源のロケーションの推定値は、車両速度、個々の信号源のプロファイリング、および上記で説明した他の技法を使用して、さらに改善され得る。
【0072】
ブロック560で、信号源の決定されたロケーションが、続いて信号源を通過して同じ経路に沿って移動する受信機をジオポジショニングするために使用され得る。信号源ロケーションの推定値の継続的な改善はまた、現在利用可能な推定値を使用する受信機のポジショニングと並行して行われ得る。たとえば、トンネルを通って移動する車両は、その信号強度測定値を、信号源ロケーション決定において使用される信号データのセットに与えることも行いながら、利用可能なビーコンを使用するポジショニングを要求することができる。
【0073】
RTT測定値を使用したアクセスポイントの自動プロビジョニング
次に
図11を参照すると、例示的な局600A〜Eは、送信機と受信機の両方として動作し、往復時間(RTT)測定値を使用して、各自のロケーションを自動的に決定するように構成される。これらの局は、たとえば、ビーコンフレームなどの管理フレームを交換し、RTTを測定して、距離d
1〜d
4を決定する。RTT測定値の代替として、局600A〜Eは、それを使用して局のペアの間の距離が決定され得る、他の好適なメトリックを使用することができる。たとえば、局600A〜Eは、既知の送信電力、RSSI測定値、および、距離にわたるRSSIにおける損失を予測するモデルを使用して、他の局までの距離を推定することができる。
【0074】
局600A〜Eによって送信された信号の対応する範囲が、円610A〜Eによって概略的に表される。円610A〜Eの半径は、典型的には同様であるが、本開示の技法のために同じである必要はない。
図11に示されているように、局600Aは、局600Bを「聞く」ことができ、局600Bは、局600Aおよび600Cを聞くことができ、局600Cは、局600B、600D、および600Eを聞くことができ、局600Dは、局600B、600C、および600Eを聞くことができ、局600Eは、局600Cおよび600Dを聞くことができる。局600A〜Eは、他の局からの1つ、2つ、またはそれ以上の信号を使用して、1つまたは複数の隣接局までの距離を推定することができる。その上、経路に沿った局600A〜Eの配置が、1次元ジオメトリを使用して(すなわち、トンネルの天井など、経路から実質的に同じ距離における異なる位置において)記述され得るとき、局600A〜Eはまた、ジオメトリの指示を使用して各自の位置を決定することもできる。
【0075】
他の実施形態では、局600A〜Eの配置は、2次元または3次元ジオメトリを使用して記述され得る。たとえば、局は、道路を表す平面上の直線、曲線、ポリラインなどに沿った位置と、このまたは別の局が配置される高さの両方を決定することができる。その上、局600A〜Eは、駐車場、モール、または受信機が多数の方向に移動することができる別のエリア内で使用されるとき、既知のジオメトリをもつ道路に沿って配置されないことがある。これらの場合における局は、利用可能であるときには他の局からのより多くの信号を使用して位置を決定し得る。
【0076】
明快のために、
図12は、局600A〜E、またはワイヤレス信号を受信することも可能な他の信号源をプロビジョニングするための例示的な方法650のフロー図を示す。方法650は、局600A〜Eにおいて、局のフラッシュメモリなどの非一時的コンピュータ可読媒体上に記憶された命令のセットとして実装され、局の1つまたは複数のプロセッサによって実行され得る。いくつかの代替実装形態では、方法650は、ネットワークデバイス、または信号源構成システム140などのシステムにおいて、少なくとも部分的に実装される。
【0077】
方法650は、ブロック652で開始し、衛星カバレージが制限されたエリアを横断する経路のジオメトリの指示が受信される。ジオメトリは、単純(たとえば、直線、円弧)または比較的複雑(たとえば、ポリライン)であり得る。上記で説明したように、経路は、典型的には、トンネルを通る道路である。しかしながら、方法650はまた、たとえば、受信機が横断することができる多数の可能な経路があり、車両が道路に沿って移動するより大きい自由度を受信機が有する、エリアとともに使用され得る。そのようなエリアの例には、駐車場およびショッピングモールが含まれる。これらの場合におけるジオメトリの記述は、エリアを囲む多角形、またはさらには、3次元ボリュームを記述する頂点のセットでもあり得る。
【0078】
ブロック654で、局の間の距離を示す信号データが受信される。信号データは、局が互いから受信することができる、任意の好適なタイプの管理フレームを使用して生成され得る。フレームは、対応する局の識別子を含み得る。
【0079】
次いで、ブロック656で、局のロケーションが、ジオメトリの指示と信号データとを使用して決定される。再び
図11を参照すると、局600Aは、局600Bからの信号を使用して、局600Bまでの距離を決定することができ、局600Bは、局600Aからの信号を使用して、局600Aまでの距離を決定し、局600Cからの信号を使用して、局600Cまでの距離を決定することができる。局600Cにおいて、局600Dと600Eの両方からの信号など、追加の情報が利用可能であるとき、より正確な推定値に到達するために、データが平均され得る。さらに、上記で説明した例と同様に、局ロケーションを決定することは、衛星カバレージが制限されたエリアへの入口に位置する局の既知の位置を使用することを含み得る。
【0080】
ブロック658で、決定されたロケーションが、同じ経路に沿って移動するデバイスをジオポジショニングするために使用され得る。
図10および
図11を参照しながら説明する技法は、局が、ネットワークサーバに依拠することなしに、少なくとも隣接する局に対する位置を決定することを可能にすることに留意されたい。もちろん、
図10および
図11を参照しながら説明する技法はまた、必要な場合、ネットワークサーバ、またはサーバのグループとともに使用され得る。いくつかの実施形態では、
図10および
図11の技法は、マルチパス問題を低減するために、幅広い帯域幅を利用する信号源とともに使用される。
【0081】
追加の考慮事項
本明細書で説明する例示的な方法の様々な動作は、関連する動作を行うように(たとえば、ソフトウェアによって)一時的に構成されるか、または永久的に構成される、1つまたは複数のプロセッサによって、少なくとも部分的に行われ得る。一時的に構成されるか、永久的に構成されるかにかかわらず、そのようなプロセッサは、1つまたは複数の動作または機能を行うように動作する、プロセッサ実装モジュールを構成し得る。本明細書で言及するモジュールは、いくつかの例示的な実施形態では、プロセッサ実装モジュールを備え得る。
【0082】
同様に、本明細書で説明する方法またはルーチンは、少なくとも部分的にプロセッサ実装であり得る。たとえば、方法の動作のうちの少なくともいくつかは、1つまたは複数のプロセッサ、またはプロセッサ実装ハードウェアモジュールによって行われ得る。動作のうちのいくつかの実行は、1つまたは複数のプロセッサの間で分散され得、単一のマシン内に存在するだけでなく、いくつかのマシンにわたって展開され得る。いくつかの例示的な実施形態では、1つまたは複数のプロセッサは、(たとえば、ホーム環境、オフィス環境内、またはサーバファームとしての)単一のロケーション内に位置し得るが、他の実施形態では、プロセッサは、いくつかのロケーションにわたって分散され得る。
【0083】
1つまたは複数のプロセッサはまた、クラウドコンピューティング環境内で、またはサービスとしてのソフトウェア(SaaS)として、関連する動作の実行をサポートするようにも動作し得る。たとえば、動作のうちの少なくともいくつかは、(プロセッサを含むマシンの例として)コンピュータのグループによって行われ得、これらの動作は、ネットワーク(たとえば、インターネット)を介して、および1つまたは複数の適切なインターフェース(たとえば、アプリケーションプログラミングインターフェース(API))を介してアクセス可能である。
【0084】
動作のうちのいくつかの実行は、1つまたは複数のプロセッサの間で分散され得、単一のマシン内に存在するだけでなく、いくつかのマシンにわたって展開され得る。いくつかの例示的な実施形態では、1つまたは複数のプロセッサまたはプロセッサ実装モジュールは、(たとえば、ホーム環境、オフィス環境、またはサーバファーム内の)単一の地理的ロケーション内に位置し得る。他の例示的な実施形態では、1つまたは複数のプロセッサまたはプロセッサ実装モジュールは、いくつかの地理的ロケーションにわたって分散され得る。