【文献】
興梠 正克,“歩行者デッドレコニングに基づくハンドヘルド端末の屋内外測位技術”,電子情報通信学会技術研究報告,日本,社団法人電子情報通信学会,2011年 1月13日,第110巻,第382号,p.171-176
(58)【調査した分野】(Int.Cl.,DB名)
前記モバイルデバイスが前記ユーザの胸または脚に近接していると判定することに応答して、前記複数の最長許容期間から第1の最長許容期間を選択するステップであって、前記第1の最長許容期間が、前記複数の最長許容期間からの第2の最長許容期間よりも長い持続時間を有し、前記第2の最長許容期間が、前記モバイルデバイスが前記ユーザの耳に近接していることに関連付けられる、ステップをさらに含む、請求項1に記載の方法。
前記モバイルデバイスが前記ユーザの耳に近接していると判定することに応答して、前記複数の最長許容期間から第1の最長許容期間を選択するステップであって、前記第1の最長許容期間が、前記複数の最長許容期間からの第2の最長許容期間よりも短い持続時間を有し、前記第2の最長許容期間が、前記モバイルデバイスが前記ユーザの脚または胸に近接していることに関連付けられる、ステップをさらに含む、請求項1に記載の方法。
前記モバイルデバイスが前記ユーザの手に握られていると判定されることに応答して、前記複数の最長許容期間から第1の最長許容期間を選択するステップであって、前記第1の最長許容期間が、前記複数の最長許容期間からの第2の最長許容期間よりも短い持続時間を有し、前記第2の最長許容期間が、前記モバイルデバイスが前記ユーザの脚または胸に近接していることに関連付けられる、ステップをさらに含む、請求項1に記載の方法。
前記モバイルデバイスが、加速度計をさらに含み、変位を示す前記情報が、前記加速度計の使用から得られる加速度データを含む、請求項11に記載のモバイルデバイス。
前記デッドレコニング技法が、加速度データを使用して、前記モバイルデバイスの第2の地理的ロケーションを判定することを含む、請求項21に記載の非一時性コンピュータ可読記憶媒体。
前記モバイルデバイスが前記ユーザの胸または脚に近接していると判定することに応答して、前記複数の最長許容期間から第1の最長許容期間を選択するための手段をさらに含み、前記第1の最長許容期間が、前記複数の最長許容期間からの第2の最長許容期間よりも長い持続時間を有し、前記第2の最長許容期間が、前記モバイルデバイスが前記ユーザの耳に近接していることに関連付けられる、請求項29に記載の装置。
前記モバイルデバイスが前記ユーザの耳に近接していると判定することに応答して、前記複数の最長許容期間から第1の最長許容期間を選択するための手段をさらに含み、前記第1の最長許容期間が、前記複数の最長許容期間からの第2の最長許容期間よりも短い持続時間を有し、前記第2の最長許容期間が、前記モバイルデバイスが前記ユーザの脚または胸に近接していることに関連付けられる、請求項29に記載の装置。
前記モバイルデバイスが前記ユーザの手に握られていると判定されることに応答して、前記複数の最長許容期間から第1の最長許容期間を選択するための手段をさらに含み、前記第1の最長許容期間が、前記複数の最長許容期間からの第2の最長許容期間よりも短い持続時間を有し、前記第2の最長許容期間が、前記モバイルデバイスが、前記ユーザの胸または脚に近接することに関連付けられる、請求項29に記載の装置。
【発明を実施するための形態】
【0013】
デッドレコニングは、事前に判定されたロケーションを既知のあるいは推定される速度、移動時間、および/または移動方向とともに使用して現在のロケーションを判定することを含んでもよい。したがって、モバイルデバイスの以前のロケーションを使用して、モバイルデバイスの判定された移動量および/または判定された方向に基づいてモバイルデバイスの新しいロケーションを判定してよい。いくつかの実施形態では、(たとえば、適切な信号の受信に干渉する建物に入ったことに起因して)もはやGPS、セルラー信号三角行列化、または順方向リンクタイミングなどのロケーション判定技法を使用できなくなった後、デッドレコニングを使用してよい。デッドレコニングは、ロケーション判定技法を使用して判定された最後のロケーション(「フィックス」と呼ばれる)から開始してよい。したがって、ロケーション判定技法が利用できないときは、デッドレコニングを使用して少なくとも近似ロケーションを判定してよい。
【0014】
デッドレコニングでは加速度計からのデータを使用してよく、場合によっては、ロケーション判定技法が利用できないときにモバイルデバイスの磁力計を使用して少なくともモバイルデバイスの近似ロケーションを判定してよい。デッドレコニングは、事前に判定された位置を使用することによって現在の位置を算出し、既知のまたは推定される移動および進路に基づいて事前に判定された位置を修正するプロセスであってよい。デッドレコニング技法などを介して変位を示す情報を使用して相対ロケーションを判定してよい。一例として、モバイルデバイスを所持しているユーザが一歩進んだときおよびユーザが一歩進んだ方向を判定する際に、変位を示す情報がモバイルデバイスによって使用されてよい。次いで、モバイルデバイスの新しいロケーションおよびモバイルデバイスを所持しているユーザを判定してよい。そのようなデッドレコニング技法は、建物の中などのGPSおよび/またはセルラーサービスが利用できない領域においてユーザの相対ロケーションを追跡するのを可能にしてよい。
【0015】
デッドレコニングを使用して判定されるロケーションの正確さは、デッドレコニング技法を実行するのに使用されるモバイルデバイスがユーザに対してどこに位置しているかに応じて異なり得る。モバイルデバイスが、ユーザに対する特定の位置に配置されている場合に、ユーザに対する他の位置に配置されている場合よりも、ユーザが一歩進んだかどうかが正しく判定される可能性がより高くなる。たとえば、1つまたは複数の近接センサからの入力に基づいて、モバイルデバイスがユーザの胸または脚に接触している状態あるいは胸または脚の近くに位置している(たとえば、シャツまたはズボンのポケットの中にある)状態(まとめて「近接している状態」と呼ばれる)にあると判定された場合、1つまたは複数の加速度計からの加速度データを(比較的)高い精度でデッドレコニングに使用して、ユーザが歩いているときのユーザのロケーションを判定しかつ/あるいはユーザを追跡することができる。モバイルデバイスがユーザによってユーザの耳に近接して保持されている場合、加速度データは、モバイルデバイスがユーザの胸または脚に近接していることを判定する場合よりもユーザが一歩進んだときを判定する場合の方が精度が低くなることがあるが、それでも、場合によってはより短い距離および/またはより短い期間について、ユーザのロケーションを判定するうえで有用であり得る。モバイルデバイスがユーザの手に保持されている(かつユーザの耳には接触していない)場合、デッドレコニング技法を使用してユーザのロケーションを判定するための加速度データとして、モバイルデバイスがユーザの耳、胸、または脚に近接するときよりも精度の低いデータが加速度計から受け取られることがある。最後に、モバイルデバイスがユーザから離れている場合、すなわち、モバイルデバイスがユーザに近接していない(たとえば、モバイルデバイスがユーザが保持している財布または装着しているバックパックの中にある)場合、デッドレコニング技法を使用してユーザが一歩進んだときを判定する際の誤り率がユーザに対するモバイルデバイスの他の考えられる位置と比べて高くなるので、デッドレコニングを実行することはできない。ユーザが一歩進んだことを判定する際の誤り率が高いのは、モバイルデバイスを保持している財布またはバックパックが跳ね、加速度データがユーザの移動を示さなくなることに起因する場合がある。したがって、デッドレコニングを実行するかどうかおよび/またはデッドレコニングを実行する時間または距離は、モバイルデバイスがユーザに対してどこに位置すると判定されるかに基づいて異なり得る。
【0016】
モバイルデバイスがユーザに対して特定の位置に配置されたときにデッドレコニングが正確でなくなるので、デッドレコニングが実行される時間の長さおよび/または距離を制限することが有用である場合がある。この距離および/または時間は、ユーザに対するモバイルデバイスの位置に少なくとも部分的に基づいてよい。ある距離および/または時間を超えると、デッドレコニングを使用して判定されるロケーションは、有用であるとみなされないほど不正確になることがある。したがって、この距離および/または時間を超えると、デッドレコニングは、モバイルデバイスの能力および/または処理リソースの無駄になることがある。
【0017】
モバイルデバイスがユーザに対してどこに位置しているかを判定するには、モバイルデバイス上に配置された1つまたは複数の近接センサを使用すればよい。近接センサは、人体の一部(たとえば、手)などのトリガリングエンティティが、まとめて近接センサに近接している状態と呼ばれる1)近接センサに接触している状態または2)近接センサの近くに位置する状態にあることを検出するのに使用されてよい。近接センサの1つの種類は、容量の変化を検出する容量性近接センサである。そのような容量性近接センサは、1つまたは2つの電極を含んでよい。二重電極容量性近接センサは、2つの電極間の容量の変化を測定することによってトリガリングエンティティの存在を検出してよい。容量性近接センサを使用すると、電極同士が適切な間隔を置いて配置されかつモバイルデバイス上に配置された場合に硬貨または鍵などの導電性の物体よりもユーザの体によってトリガされる可能性が高くなる利点をもたらすことができる。さらに、人体の一部が容量性近接センサの近くにあるが接触していない場合に容量性近接センサをトリガすることができるので、人体のその部分は布(たとえば、ズボン、手袋)、モバイルデバイスケース、およびモバイルデバイス保護カバーなどの薄い材料を通して容量性近接センサをトリガすることができる。したがって、脚などのユーザの体の存在を布(たとえば、ズボン)などの別の物質を通して検出することができる。
【0018】
近接センサは、容量性近接センサであってよく、モバイルデバイスがユーザに対してどこに位置しているかを検出するために近接センサをタブレットコンピュータ、携帯電話、スマートフォン、ゲームデバイス、または何らかの他の種類のモバイルデバイスなどのモバイルデバイス上に配置してよい。この目的のために、複数組の二重電極容量性近接センサを使用してよい。いくつかの実施形態では、複数の単一電極容量性近接センサが使用される。たとえば、一般にユーザによって保持されるモバイルデバイスの各領域における接触を検出するために容量性近接センサ用の一対の電極をモバイルデバイスの両側に配置してよい。そのような二重電極近接センサ(または一対の単一電極近接センサ)がトリガリングエンティティに近接していることを示すデータを出力している場合、モバイルデバイスがユーザの手に保持されていると仮定してよい。
【0019】
複数の近接センサからの読取値を使用してユーザに対するモバイルデバイスの位置を判定してよい。たとえば、ユーザが握っていることを検出するように配置された近接センサからのデータが、トリガリングエンティティに近接している状態を示し(ユーザがモバイルデバイスを保持している可能性が高いことを示すのに十分である)、それとともにトリガリングエンティティに近接している状態を示す近接度データを出力しているモバイルデバイスのスピーカの近くに配置された1つまたは複数の近接センサもトリガリングエンティティに近接している状態を示している場合、モバイルデバイスがユーザの耳に保持されている可能性が高いと判定してよい。ユーザの手に握られている状態を検出するように配置された近接センサからの近接度データのみがトリガリングエンティティに近接している状態を示している場合、モバイルデバイスがユーザの前に保持されているかまたはユーザの横に携帯されていると判定してよい。モバイルデバイスの表または裏の1つまたは複数の近接センサがトリガリングエンティティに近接している状態を示しているが、握り近接センサはトリガリングエンティティに近接している状態を示していない場合、モバイルデバイスがユーザのポケット(たとえば、シャツまたはズボンのポケット)の中にあると判定してよい。ユーザに対するモバイルデバイスの他の位置を判定することが可能であってよい。
【0020】
モバイルデバイスがユーザに対してどこに位置しているかに基づいて、デッドレコニングを1)使用してもまたは使用しなくてもよく、2)使用する場合には最長期間および/または定められた最長距離にわたって使用してよい。たとえば、デッドレコニング技法では、モバイルデバイスの1つまたは複数の加速度計および1つまたは複数の磁力計からデータを収集して、ユーザが一歩進んだときおよび/または一歩進んだ方向を判定してよい。一歩進んだことおよび/または一歩進んだ方向を正確に判定できるかどうかは、ユーザに対してモバイルデバイスがどこに位置しているかに応じて異なってよい。たとえば、1つまたは複数の加速度計を使用して収集された加速度データは、モバイルデバイスがユーザのポケットの中にある場合、モバイルデバイスがユーザの耳に保持されている場合よりも、デッドレコニングに使用するうえでより正確であり得る。モバイルデバイスがユーザに対してどこに位置していると判定されるかに基づいて、デッドレコニングを実行すべきかどうかに関して判定を下してよく、デッドレコニングを実行すべきである場合、デッドレコニングを停止する前にどれだけの期間またはどれだけの距離にわたって実行すべきかに関して判定を下すべきである。デッドレコニングを実行する時間または距離が長くなるほど精度が低くなる可能性が高いので、デッドレコニングを実行することのできる最長時間または距離は限定されてよい。もはやデッドレコニングが使用されなくなった後、デッドレコニングに使用されるモバイルデバイスのコンポーネントのいくつかまたはすべてを非アクティブ化してよい。そのような非アクティブ化状態はバッテリー電力を節約し得る。
【0021】
図1は、デッドレコニングの不正確さを限定するように構成されたシステム100の実施形態を示す。システム100は、デッドレコニング技法を実行するように構成されてもよい。システム100は、プロセッサ110と、近接センサ120と、加速度計130と、ディスプレイ140と、ストレージ150と、ロケーション判定モジュール160と、磁力計170とを含む。システム100は、より大きいシステムの一部であってもよい。たとえば、システム100は、さらなるコンポーネントを含むモバイルデバイスの一部であってよい。たとえば、システム100を一部として含んでよいモバイルデバイスは、ほんのいくつかの例を挙げれば、携帯電話(たとえば、スマートフォン)、タブレットコンピュータ、携帯情報端末、またはゲームデバイスであってよい。システム100は、
図9のコンピュータシステム900などのコンピュータシステムの一部であってよい。
【0022】
プロセッサ110は、近接センサ120、加速度計130、および磁力計170などの1つまたは複数のセンサからデータを受け取って処理するように構成された汎用プロセッサまたは専用プロセッサであってよい。プロセッサ110は、ストレージ150およびディスプレイ140と相互作用し、ロケーション判定モジュール160から位置データを受け取ってもよい。
【0023】
プロセッサ110は、近接センサ120と通信してよい。システム100は1つまたは複数の近接センサ120を含んでよい。したがって、いくつかの実施形態は、プロセッサ110と通信する2つ、3つ、4つ、またはそれ以上の近接センサを有してよい。近接センサ120-1などの各近接センサは、単一電極容量性近接センサを含んでよい。いくつかの実施形態では、1つまたは複数の近接センサは二重電極容量性近接センサであってよい。したがって、近接センサ120-1などの各近接センサは1つまたは複数の電極を含んでよい。これらの近接センサの各々は、トリガリングエンティティが近接センサの範囲内であるかどうかを示すデータをプロセッサ110に周期的に送ってよい。各近接センサは、トリガリングエンティティが近接センサの電極にどれだけ近いかを示す強度値を送ってもよい。トリガリングエンティティは、近接センサによって測定される容量を変化させる任意のエンティティであってよい。ユーザの体の一部がユーザによって使用されるとき、その部分はトリガリングエンティティとして働くことができる。近接センサの近くに位置するユーザの手が近接センサによってトリガリングエンティティとして検知されてよい。そのような近接センサは、トリガリングエンティティが近接センサに接触しているとき、およびトリガリングエンティティが近接センサの近くに位置しているとき(まとめて、近接している、と呼ばれる)を判定するように構成されてよい。したがって、近接センサ120の各近接センサがトリガリングエンティティの存在を検出する場合、トリガリングエンティティが近接センサの1つまたは複数の電極と直接接触する必要はない。
【0024】
近接センサについての上記の説明は容量性近接センサの使用を対象としているが、いくつかの実施形態では容量性近接センサ以外の近接センサを使用してよいことを理解されたい。さらに、いくつかの実施形態は、複数の種類の近接センサを使用してよく、たとえば、モバイルデバイスは単一電極容量性近接センサと二重電極容量性近接センサの両方および/または他の種類の近接センサを含んでよい。
【0025】
プロセッサ110は、加速度計130などの1つまたは複数の加速度計と通信してよい。加速度計130は、プロセッサ110に加速度データを供給してよい。そのような加速度データは、加速度の方向および加速度の大きさを示してよい。たとえば、ユーザの処理システム100が移動すると、加速度計130からの加速度データは、移動したことを判定するためにプロセッサ110によって使用できる加速度の変化を示すことができる。いくつかの実施形態では、複数の加速度計から加速度データを受け取ることによってより正確な結果を得ることができる。そのようなデータは、プロセッサ110によって平均されてもまたは他の方法で組み合わされてもよい。加速度計130は、デッドレコニングが実行されていないときには使用不能にされてよく、したがって、電力が節約される。
【0026】
プロセッサ110は、ディスプレイ140と通信してよい。ディスプレイ140は、モバイルデバイスのユーザにテキストおよび/またはグラフィックスを視覚的に提示するために使用されてよい。ディスプレイ140がアクティブであるかそれとも非アクティブであるか(たとえば、オンにされるかそれともオフにされるか)は、近接センサ120から受け取られるデータに基づいてよい。たとえば、ディスプレイ140は、近接センサ120からの近接度データが、システム100を含むモバイルデバイスがユーザの手に保持されていることを示すときにアクティブ化されてよい。近接センサ120からのデータが、システム100を含むモバイルデバイスがユーザの手に保持されており、ユーザの耳に近接している可能性が高いことを示している場合、ユーザがディスプレイ140を見ている可能性が低いのでディスプレイ140は非アクティブ化されてよい。近接センサ120からのデータが、モバイルデバイスがユーザの耳から離れたことを示している場合、ディスプレイ140は再アクティブ化されてよい。したがって、ディスプレイ140がアクティブである時間を短縮することによってディスプレイ140によって消費される電力を低減させることができる。
【0027】
プロセッサ110は、ストレージ150からデータを読み取りかつストレージ150にデータを書き込むことが可能であってよい。ストレージ150は、検出される一歩ごとにどのくらいの距離を移動したかが判定されるかに関するデータ、ユーザに対するシステム100の位置に基づいてデッドレコニングをどのくらいの期間および/またはどのくらいの距離にわたって実行させるべきかに関するデータ、ならびに/あるいはデッドレコニングが実行されていないときにシステム100のあるコンポーネントを使用不能にすべきであるかどうかに関するデータを記憶するために使用されてよい。
【0028】
ロケーション判定モジュール160は、GPSモジュール、セルラー信号三角行列化モジュール、または順方向リンクタイミングモジュールなどの全地球航法衛星システムモジュールに相当し得る。より一般的には、ロケーション判定モジュール160は、絶対ロケーション測定値を得ることによって絶対ロケーションを判定してよい。そのような絶対ロケーション測定値は、必ずしも高い精度を意味するとは限らず、絶対ロケーションは、緯度および経度、所在地住所など、座標系において得られるロケーション測定値に言及し得る。ロケーション判定モジュール160が、適切な数の衛星またはセルラータワーから信号を受信することを含んでよい、適切な信号を受信することが可能であるとき、プロセッサ110はロケーション判定モジュール160からのデータを使用してシステム100の位置を判定してよい。ロケーション判定モジュール160を使用して正確なロケーションを判定することができないとき、プロセッサ110はデッドレコニング技法に依存してシステム100の位置を判定してよい。プロセッサ110は、ロケーション判定モジュール160から受け取られた直前の正確な位置をデッドレコニング技法のフィックスとして使用してよい。
【0029】
システム100は、磁力計170などの1つまたは複数の磁力計を含んでよい。磁力計170は、プロセッサ110と通信してよい。磁力計170を使用して、システム100が向けられた方向を判定してよい。磁力計170は、システム100が向けられた羅針方位を特定するように構成されてよい。したがって、磁力計170は、羅針方位を示すデータをプロセッサ110に出力してよい。加速度計130を使用して、システム100を含むモバイルデバイスを保持しているユーザが一歩進んだときを判定する場合、磁力計170を使用してこの歩みの羅針方位を判定してよい。
【0030】
図2Aは、複数の近接センサを使用してデッドレコニングの不正確さを限定するように構成されたモバイルデバイス200Aの実施形態の正面図である。モバイルデバイス200Aは、
図1のシステム100または複数の近接センサを使用してデッドレコニングの不正確さを限定するように構成された何らかの他のシステムを含んでよい。図示のように、モバイルデバイス200Aの正面にディスプレイ240が示されている。モバイルデバイス200Aはケース210を含んでよい。モバイルデバイス200Aは、スピーカ220とマイクロフォン230とをさらに含んでよい。ケース210には、近接センサ250、255、260、および265などの複数の近接センサが結合されてよい。近接センサ250および255は、2つの単一電極近接センサまたは単一の二重電極近接センサの2つの電極に相当し得る。近接センサ250および255は、スピーカ220に近接してよい。近接センサ250および255を使用して、モバイルデバイス200Aのスピーカがユーザの耳に近接している可能性が高いときを判定してよい。近接センサ260および265は、2つの単一電極近接センサまたは単一の二重電極近接センサの2つの電極に相当し得る。近接センサ260および265を使用して、モバイルデバイス200Aがシャツまたはズボンのポケットの中などのようにユーザの体に接触している可能性が高いときを判定してよい。近接センサ260および265は、釣銭および/または鍵などの、よくポケットに入っている品目の存在が、モバイルデバイスがユーザの体に近接している状態と混同されないように互いに十分に分離されてよい。各近接センサは、モバイルデバイスの外部から見えなくてよいことを示すように点線を使用して示されているが、各近接センサは、ユーザから見えないようにケース210内に配置されてよい。いくつかの実施形態では、近接センサは、ユーザから見えるように配置されてよい。
【0031】
図2Bは、複数の近接センサを使用してデッドレコニングの不正確さを限定するように構成されたモバイルデバイスの実施形態の背面図である。モバイルデバイス200Bは、異なる視点から(たとえば、ディスプレイ240が見えないようにモバイルデバイス200Aの後ろから)見た
図2Aのモバイルデバイス200Aであってよい。ケース210の背後には、近接センサ270および275などの複数の近接センサが結合されてよい。近接センサ270および275は、2つの単一電極近接センサまたは単一の二重電極近接センサの2つの電極に相当し得る。近接センサ270および275を使用して、モバイルデバイス200Bがシャツまたはズボンのポケットの中などのようにユーザの体に接触しているときを判定してよい。近接センサ270および275は、釣銭および/または鍵などの、よくポケットに入っている品目の存在が、モバイルデバイスがユーザの体に近接している状態と混同されないように互いに十分に分離されてよい。近接センサ270および275は、見えなくてよいことを示すように点線を使用して示されているが、各近接センサは、ユーザから見えないようにケース210内に配置されてよい。モバイルデバイス200B上の近接センサの数は、例示を目的としたものに過ぎず、これよりも多いかまたは少ない数の近接センサが各側に存在してよい。
【0032】
モバイルデバイス200B上にはカメラ277も存在する。カメラ277は、静止画像および/または映像を取り込むのに使用されてよい。カメラ277は、拡張現実機能、ビデオチャットなどの目的に使用されてもよい。いくつかの実施形態では、代替または追加として、前方監視カメラがモバイルデバイス200A上に存在してよい。
【0033】
図2Cは、複数の近接センサを使用してデッドレコニングの不正確さを限定するように構成されたモバイルデバイスの実施形態の側面図である。モバイルデバイス200Cは、左側または右側から見た際の、
図2Aのモバイルデバイス200Aおよび
図2Bのモバイルデバイス200Bであってよい。モバイルデバイス200C上に近接センサ280が存在してよい。近接センサ280は、単一電極容量性近接センサであってもまたは二重電極近接センサの電極に相当してもよい。モバイルデバイス200Cの反対側には別の近接センサ(または二重容量性近接センサの電極)が存在してよい。したがって、ユーザが一般に使用時に(たとえば、通話したり、eメールを読んだりすること)モバイルデバイスを握る領域に近接する状態が近接センサ280(および相補的近接センサまたは相補的電極)によって検知されてよい。モバイルデバイス200Cの側面にさらなる近接センサが存在してもよい。
【0034】
図2A〜
図2Cには、点線矢印によって表された仮想軸も示されている。そのような軸はモバイルデバイスの座標系に存在する。モバイルデバイスの1つまたは複数の加速度計によって検出された加速度の方向は、そのような座標系に従って解釈されてよい。
図2Aを参照すると分かるように、x軸201は(
図2Aにおける)右側が正であり、(
図2Aにおける)左側が負である。Y軸202は、モバイルデバイス200Aの(
図2Aにおける)頂部に向かって正であり、(
図2Aにおける)底部に向かって負である。Z軸203は、
図2Cに示すようにモバイルデバイス200Aを通過する。x軸201およびz軸203の極性は、
図2Bでは反転されているように示されている。これは、モバイルデバイスが反転され、したがって、モバイルデバイスの座標系をそのまま使用するには、これらの軸も反転しなければならないからである。
図2Cはy軸202およびz軸203を示す。
図2Cでは、ディスプレイ240(図示せず)を含むデバイスの正面が(
図2Cにおける)右側に示されている。
【0035】
図3は、デッドレコニング技法を実行し、複数の近接センサを使用してデッドレコニングの不正確さを限定するように構成されたモバイルデバイス300の実施形態を示す。モバイルデバイス300は、システム100またはデッドレコニングの不正確さを限定するための何らかの他のシステムを含んでよい。モバイルデバイス300は、モバイルデバイス200A、200B、および/または200Cのうちの任意のモバイルデバイスまたはすべてのモバイルデバイスに相当してよい。
【0036】
図示のように、モバイルデバイス300は、ある建物の床の内部のフロアマップを表示しており、モバイルデバイス300のロケーションが追跡されている。フロアマップ310は、モバイルデバイス300によって記憶されるかまたはアクセスされてよい。モバイルデバイス300がフロアマップ310上のどこかに位置していると判定されたときは、表示すべき1組のフロアマップからフロアマップ310を選択してよい。使用すべき適切なフロアマップの判定が、ユーザ入力に基づいて行われても(たとえば、ユーザは1組のフロアマップからフロアマップを選択する)、またはモバイルデバイスがロケーション判定モジュールからのデータを使用して、どのフロアマップが適切であるかを判定してもよい。
【0037】
フィックスロケーション315は、ロケーション判定モジュールを使用して判定されたモバイルデバイス300の直前のロケーションを示すことができ、したがって、モバイルデバイス300がロケーション判定モジュールを使用してモバイルデバイス300のロケーションを判定することが可能な状態をどこで停止したかも示すことができる。図示のように、フィックスロケーション315がフロアマップ310上に存在する入口の所に配置されている。フロアマップ310によって表される建物からの干渉がロケーション判定モジュールを効果的に使用する能力を低下させることがあるので、一般に建物の内部の入口の近くにフィックスロケーションが設けられてよい。フィックスロケーション315は、デッドレコニング技法が使用を開始されている位置および、このフィックスロケーションがデッドレコニング技法の開始点として使用されることを示してもよい。
【0038】
モバイルデバイス300(およびモバイルデバイス300を所持するユーザ)が移動する経路が、モバイルデバイス300によって表示されるようにフロアマップ310上に示されてよい。これによって、モバイルデバイス300のユーザが、フロアマップ310によって表されている建物の床の上のユーザのロケーションを判定することが可能になり得る。フロアマップ310はモバイルデバイス300によって提示されるように示されるが、追加または代替として、フロアマップを他のあるユーザにリモートに提示してもよい。したがって、モバイルデバイス300は、モバイルデバイス300を所持するユーザを追跡するために他のある当事者によって使用されてよい。1つまたは複数の加速度計によって収集される加速度データ、磁力計からの方向性データ、および/またはユーザの歩みごとの既知の移動距離または推定移動距離を使用して、フロアマップ310による表示に応じてユーザがどれだけの距離をどの方向に移動したかを判定してよい。
【0039】
モバイルデバイス300がモバイルデバイス300を所持するユーザに対してどこに位置するかに応じて、デッドレコニング技法を使用してモバイルデバイス300が移動したと判定された経路に沿って様々な信頼レベルが示されてよい。たとえば、各線分は、モバイルデバイス300がユーザに対して位置すると判定された場所を、色および/またはパターンなどによって示してよい。たとえば、線分330および350は、モバイルデバイス300がユーザのポケットの中にあったことを示してよい。点線の線分340は、モバイルデバイス300がユーザの手に握られていたことを示してよい。線分360は、モバイルデバイス300がバックパックの中にあったかまたは他の理由でユーザから離れていたことを示してよい。ロケーション370は、デッドレコニング技法を使用して判定されるモバイルデバイス300の現在のロケーションであってよい。この位置は、推定値を表してよく、デッドレコニング技法を使用して行われた以前の移動量測定の精度の影響を受ける。モバイルデバイスがユーザによってどのように保持されていたか、移動距離、および/または経過時間に基づいて、ロケーション370に関連して信頼レベルを提示してよい。
【0040】
ロケーション370は、モバイルデバイス300(およびユーザ)の現在の位置を表す代わりに、デッドレコニング技法がモバイルデバイス300によって実行されるのを中止したロケーションを示してよい。デッドレコニング技法は、判定されるロケーションがもはや有用であるほど正確であるとはみなされないことを理由として中止されることがある。デッドレコニング測定を停止したことの判定は、デッドレコニング技法が使用開始されてからの経過時間、モバイルデバイス300による経過移動距離、および/またはデッドレコニング技法が実行されていた間のユーザに対するモバイルデバイス300の位置に基づいてよい。デッドレコニング技法の実行が停止された場合、電力を節約するためにモバイルデバイス300の1つまたは複数のコンポーネントの電源を落としてよい。
【0041】
図4は、複数の近接センサを使用して、ユーザによって保持されている、デッドレコニングの不正確さを限定するように構成されたモバイルデバイス410の実施形態400を示す。モバイルデバイス410は、モバイルデバイス200A、200B、200C、または300、あるいは複数の近接センサを使用してデッドレコニングの不正確さを限定するように構成された何らかの他のモバイルデバイスに相当してよい。モバイルデバイス410は、
図1のシステム100またはデッドレコニング技法の不正確さを限定するための何らかの他のシステムを含んでよい。実施形態400は、ユーザが歩いているかまたはモバイルデバイス410を使用している間にモバイルデバイス410がユーザによってどのように保持され得るかを表す。
【0042】
モバイルデバイス410はユーザの手420によって保持されてよい。
図2Cの近接センサ280およびモバイルデバイスの反対側の近接センサまたは電極は、手420が近接していることを示す近接度データを収集してよい。そのような近接センサが、トリガリングエンティティに近接している状態を示し、他の近接センサが、トリガリングエンティティに近接している状態を示していない場合、モバイルデバイス410がユーザの手420に保持されているがユーザの耳には保持されていない可能性が高いことを示すことができる。たとえば、(場合によってはユーザが歩いている間)モバイルデバイス410のディスプレイを使用するか、あるいは(この場合も、場合によってはユーザが歩いている間)ユーザがタイプ入力するかまたはその他の方法でモバイルデバイスにデータを入力するか、あるいは(場合によってはユーザが歩いている間)モバイルデバイス410がユーザの横に保持されていてよい。
【0043】
図5は、複数の近接センサを使用して、モバイルデバイス510がユーザ530によって保持されている間に実行されるデッドレコニングの不正確さを限定するように構成されたモバイルデバイス510の実施形態500を示す。モバイルデバイス510は、モバイルデバイス200A、200B、200C、300、410、または複数の近接センサを使用してデッドレコニングの不正確さを限定するように構成された何らかの他のモバイルデバイスに相当してよい。モバイルデバイス510は、
図1のシステム100またはデッドレコニングの不正確さを限定するための何らかの他のシステムを含んでよい。実施形態500は、ユーザが通話している間に、および場合によってはモバイルデバイス510を使用しながら歩いている間に、モバイルデバイス510がユーザによってどのように保持され得るかを表す。
【0044】
モバイルデバイス510はユーザ530の手520によって保持されてよい。
図2Cの近接センサ280およびモバイルデバイスの反対側の近接センサまたは電極は、手520が近接していることを示す近接度データを収集してよい。さらに、
図2Aのモバイルデバイス200Aの近接センサ250および255などの1つまたは複数の近接センサは、トリガリングエンティティがこの場合はユーザ530の耳に近接していることを示す近接度データを収集してよい。ユーザ530は、モバイルデバイス510で通話しかつ/または相手の話を聞きつつ歩くことがある。したがって、モバイルデバイス510がユーザ530の耳に保持されている間デッドレコニングが実行されてよい。
【0045】
図6は、複数の近接センサを使用して、ユーザ620によってユーザ620のポケットに保持されている、デッドレコニングの不正確さを限定するように構成されたモバイルデバイス610の実施形態600を示す。モバイルデバイス610は、モバイルデバイス200A、200B、200C、300、410、510、または複数の近接センサを使用してデッドレコニングの不正確さを限定するように構成された何らかの他のモバイルデバイスに相当してよい。モバイルデバイス610は、
図1のシステム100またはデッドレコニングの不正確さを限定するための何らかの他のシステムを含んでよい。実施形態600は、ユーザ620が歩いている間モバイルデバイス610がユーザ620によってどのように携帯され得るかを表す。ユーザ620が歩いている間、デッドレコニングが実行される時間および/または距離の長さは、ユーザ620に対するモバイルデバイス610の位置に少なくとも部分的に基づいてよい。
【0046】
一般に、デッドレコニングは、モバイルデバイスがユーザのポケットの中にあり、したがって、モバイルデバイス610の動きがユーザ620の動きに厳密に相関付けられるときに最も正確であることが試験によって示されている。モバイルデバイス610の動きとユーザ620の体の動きの相関性が低いと、デッドレコニングはより不正確になる傾向がある。デッドレコニングの間各位置における精度を調べたところ、モバイルデバイスがユーザのポケットの中にある位置、モバイルデバイスがユーザの耳に保持される位置、モバイルデバイスがユーザの手の中にある位置、モバイルデバイスがユーザから離れる位置(たとえば、ハンドバッグまたはバックパックの中にある)位置の順に精度が低くなった。
【0047】
図6では、ユーザ620が、モバイルデバイス610をズボンの前ポケットに入れて歩いている。モバイルデバイス610がズボンの前ポケットの中にある間に、
図2Aに示されている近接センサ260および265などの近接センサがトリガされることがある。これらの近接センサは、モバイルデバイス610の面がユーザの脚に接触している場合にトリガリングエンティティに近接している状態を示すことがある。あるいは、モバイルデバイス610の後部がユーザの脚に接触している場合、
図2Bの近接センサ270および275などの近接センサはトリガリングエンティティに近接している状態を示すことがある。他のどの近接センサもトリガリングエンティティに近接している状態を示さない場合、モバイルデバイス610はユーザ620のズボンまたはシャツのポケット内に位置していると判定することができる。
【0048】
図7は、複数の近接センサを使用してデッドレコニングの不正確さを限定するための方法700の実施形態を示す。方法700は、システム100または複数の近接センサを使用してデッドレコニングの不正確さを限定するように構成された何らかの他のシステムを使用して実施されてよい。方法700は、それぞれ
図2A〜
図5のモバイルデバイス200A、200B、200C、300、410、および/または510などの、システム100を含むモバイルデバイスによって実施されてもよい。方法700の各ステップは、モバイルデバイスによって実行されてよい。より詳細には、方法700の各ステップは、システム100および/またはシステム100の個々のコンポーネントによって実行されてよい。方法700は、コンピュータシステムを使用してメモリ内などのような(非一時的)コンピュータ可読媒体上に記憶された一連のプロセッサ可読命令として実行されてよい。方法700を実施するための手段は、モバイルデバイスと、
図1のシステム100などの、複数の近接センサを使用してデッドレコニングの不正確さを限定するように構成されたシステムとを含む。
【0049】
ステップ710において、近接度データは、モバイルデバイスの1つまたは複数の近接センサを使用して収集されてよい。近接度データは、モバイルデバイスの各近接センサからプロセッサによって受け取られてよい。近接度データは、近接センサがトリガリングエンティティ(ユーザの一部など)に近接しているか否かを示してよい。近接度データは、トリガリングエンティティが近接センサにどれだけ接近しているかを示す値を含んでよい。たとえば、近接センサから受け取られるデータによって示される値が大きくなるほど、トリガリングエンティティの位置は近接センサに近くなる。ユーザなどのトリガリングエンティティが近接センサの近くに位置していない場合、近接センサからデータを受け取ることはできず、あるいは近接しているトリガリングエンティティがないことを示すデータをプロセッサによって受け取ることができる。したがって、近接センサからのデータがない場合、近接センサに近接しているトリガリングエンティティがないことを示すデータとして解釈することができる。
【0050】
ステップ720において、ユーザに対するモバイルデバイスの位置を判定してよい。ユーザに対する位置は、ステップ710において収集された近接度データを使用して判定されてよい。近接度データが、モバイルデバイスがユーザの手に握られているにすぎない(かつユーザの耳に近接していない)ことを示している場合、モバイルデバイスがユーザの正面またはユーザの横に保持されている可能性が高いと判定してよい。近接度データが、モバイルデバイスの表または裏がユーザに近接しており、モバイルデバイスが握られていないことを示している場合、モバイルデバイスがユーザのシャツのポケットまたはズボンの中にある可能性が高いと判定してよい。近接度データが、モバイルデバイスが握られており、モバイルデバイスの面がユーザに近接している場合、モバイルデバイスがユーザの耳に保持されている可能性が高いと判定してよい。いずれの近接度データも、トリガリングエンティティに近接している状態を示していない場合、モバイルデバイスはユーザに近接しておらず、たとえばある表面に置かれているかまたは財布もしくはバックパックの中にあると判定してよい。モバイルデバイスがユーザの手に保持されているかどうかの判定は、モバイルデバイスのタッチスクリーンディスプレイ(またはボタンもしくはキーボード)が使用されているかどうかに少なくとも部分的に基づいてよい。
【0051】
ステップ730において、ユーザに対するモバイルデバイスの判定された位置に少なくとも部分的に基づいて、デッドレコニング技法を使用すべきかまたは使用することを継続すべきか否かを判定してよい。たとえば、デッドレコニング技法は、1つまたは複数の加速度計および磁力計からのデータを使用して、モバイルデバイスが既知のロケーション(たとえば、フィックスロケーション)に配置されてからどこに移動したかを推定することを含んでよい。フィックスは、GPS、セルラー信号三角行列化、または順方向リンクタイミングなどの、何らかの他のロケーション判定システムを使用して判定されていてよい。デッドレコニングは、モバイルデバイスがユーザに近接していない(たとえば、モバイルデバイスがユーザの体から離れた財布またはバックパックの中にある)場合には使用され得ない。デッドレコニングは、モバイルデバイスがユーザのポケットの中にある場合には使用され得る。モバイルデバイスがユーザの手の中に位置しておりかつ/またはユーザの耳に接触している場合、モバイルデバイス(および/またはユーザ)のロケーションがどれだけ正確であることが望ましいかに応じて、デッドレコニングを使用することもまたはデッドレコニングを使用しないこともある。モバイルデバイスがユーザに対してどこに位置しているかに基づいて、様々な時間の長さおよび/または異なる最長追跡距離についてデッドレコニングを使用してよい。いくつかの実施形態では、ユーザによって設定されるユーザの好みによって、デッドレコニングを(時間または距離の点で)どれだけ長く使用できるかを判定することができる。デッドレコニング技法を使用しない場合、モバイルデバイスのバッテリー電力を節約するためにデッドレコニングの実行に関する1つまたは複数のコンポーネントの電源を落としてよい。
【0052】
図8は、複数の近接センサを使用してデッドレコニング技法の不正確さを限定するための方法800の別の実施形態を示す。方法800は、システム100または複数の近接センサを使用してデッドレコニングの不正確さを限定するように構成された何らかの他のシステムを使用して実施されてよい。方法800は、それぞれ
図2A〜
図5のモバイルデバイス200A、200B、200C、300、410、または510などの、システム100を含むモバイルデバイスによって実施されてよい。より詳細には、方法800の各ステップは、システム100または同様のシステムを使用して実行されてよい。方法800は、コンピュータシステムによって、メモリ内などのような(非一時的)コンピュータ可読媒体上に記憶された一連のコンピュータ可読命令として実行されてよい。方法800の各ステップを実行するための手段は、携帯電話、特にスマートフォンなどのモバイルデバイスを含む。方法800は、方法700または別の方法のより詳細な実施形態に相当してよい。
【0053】
ステップ805において、モバイルデバイスのロケーションは、
図1のロケーション判定モジュール160などの、モバイルデバイスのロケーション判定モジュールを使用して判定されてよい。これによって、モバイルデバイスの絶対ロケーションを判定することができる。前述のように、絶対ロケーションは、必ずしも精度が高いとは限らず、緯度および経度、所在地住所などの、座標系におけるロケーションを指す。たとえば、GPSまたはセルラータワーマルチラテレーションを使用して絶対ロケーションを判定してよい。
図1に関して詳しく説明するように、ロケーション判定モジュールは、GPS、セルラー三角行列化、順方向リンクタイミング、またはロケーションを判定する何らかの他の方法の使用を含んでよい。ロケーション判定モジュールを使用してモバイルデバイスのロケーションを判定することは、必要な1つまたは複数の信号をロケーション判定デバイスによって受信することができる限りデッドレコニング技法を使用する場合よりも好ましいことがある。たとえば、ロケーション判定モジュールが3基のGPS衛星から信号を受信することができる場合、GPSを使用してモバイルデバイスの位置を判定してよい。ロケーション判定モジュールを使用して判定されたロケーションはより正確であると考えることができるので、ロケーション判定モジュールを使用することはデッドレコニング技法を使用することよりも好ましい場合がある。
【0054】
ステップ810において、ロケーション判定モジュールを利用することができないという判定が下されることがある。たとえば、この判定は、信号強度が不適切であることおよび/またはロケーション判定モジュールによって受信される信号の数が不適切であることに基づいてよい。そのような干渉は、モバイルデバイスが、ロケーション判定モジュールによって受信する必要がある信号を妨害する建物などの構造内に位置することに起因し得る。ロケーション判定モジュールによって正確なロケーションデータを収集できない場合、バッテリー電力を節約するためにロケーション判定モジュールを使用不能にしてよい。ロケーション判定モジュールは周期的に、モバイルデバイスのロケーションを判定することを再試行してよい。判定が成功した場合、デッドレコニングの使用を停止してよい。
【0055】
ステップ820において、モバイルデバイスの1つまたは複数の近接センサを使用して近接度データを収集してよい。そのような近接度データは、
図2A、
図2B、および
図2Cに関して図示し説明したように近接センサによって収集されてよい。近接度データは、モバイルデバイスの各近接センサからプロセッサによって受け取られてよい。近接度データは、近接センサがトリガリングエンティティ(ユーザの一部など)に近接しているか否かを示してよい。近接度データは、トリガリングエンティティが近接センサにどれだけ接近しているかを示す値を含んでよい。たとえば、近接センサから受け取られるデータによって示される値が大きくなるほど、トリガリングエンティティの位置は近接センサに近くなる。ユーザなどのトリガリングエンティティが近接センサの近くに位置していない場合、近接センサからデータを受け取ることはできず、あるいは近接しているトリガリングエンティティがないことを示すデータをプロセッサによって受け取ることができる。したがって、近接センサからのデータがない場合、近接センサに近接しているトリガリングエンティティがないことを示すデータとして解釈することができる。
【0056】
ステップ830において、モバイルデバイスを所持するユーザに対するモバイルデバイスの位置を判定してよい。ユーザに対する位置は、ステップ620において受け取られた近接度データを使用して判定されてよい。一般的な位置には、1)モバイルデバイスがユーザの耳に保持される位置、2)モバイルデバイスがユーザの手に保持される位置、3)モバイルデバイスがユーザのポケットの中にある位置、および4)モバイルデバイスがユーザによって、財布またはバックパックなどの容器の中に携帯され、したがって、モバイルデバイスが物理的にユーザの体から離れる位置を含んでよい。
図2Cの近接センサ280などの近接センサからの近接度データがトリガリングエンティティに近接している状態を示している場合、モバイルデバイスがユーザの前またはユーザの横で手に保持されている可能性が高いと判定してよい。
図2Bの近接センサ270および275または
図2Aの近接センサ260および265などの近接センサからの近接度データが、モバイルデバイスの表または裏がトリガリングエンティティに近接していることを示しており、モバイルデバイスが握られていないことが
図2Cの近接センサ280などの近接センサからの近接度データによって示されている場合、モバイルデバイスはユーザのシャツまたはズボンのポケットの中にある可能性が高いと判定してよい。
図2Cの近接センサ280などの近接センサおよび
図2Aの近接センサ250および255などの近接センサからの近接度データがトリガリングエンティティに近接している状態を示している場合、モバイルデバイスがユーザの耳に保持されている可能性が高いと判定してよい。近接度データが、トリガリングエンティティに近接している状態を示していない場合、モバイルデバイスがユーザに近接している可能性は低く、たとえばリモートに財布もしくはバックパックの中に携帯されていると判定してよい。ユーザに対するモバイルデバイスの他の位置が考えられ得る。たとえば、追加の近接センサを使用してユーザに対するモバイルデバイスの追加の位置を特定してよい。
【0057】
ステップ840において、ユーザの体に対するモバイルデバイスの判定された位置に少なくとも部分的に基づいて、デッドレコニング技法を使用してモバイルデバイスのロケーションを更新(たとえば、1回または複数回判定する)または追跡(たとえば、複数回判定する)すべきか否かを判定してよい。たとえば、デッドレコニング技法は、
図1の加速度計130および/または磁力計170などの1つまたは複数の加速度計および/または磁力計からのデータを使用して、モバイルデバイスが、ステップ805においてロケーション判定モジュールによって判定された直前のロケーションなどの既知のロケーション(フィックスロケーション)に配置されてからどこに移動したかを推定することを含んでよい。デッドレコニングは、モバイルデバイスがユーザに近接していない(たとえば、モバイルデバイスがユーザの体から離れた財布またはバックパックの中にある)場合には使用され得ない。デッドレコニングは、モバイルデバイスがユーザのポケットの中にある場合には使用され得る。モバイルデバイスがユーザの手の中に位置しておりかつ/またはユーザの耳に接触している場合、位置がどれだけ正確であることが望ましいかに応じて、デッドレコニングを使用することもまたはデッドレコニングを使用しないこともある。モバイルデバイスは、ユーザの体に対する位置に基づいて、デッドレコニングを実行すべきか否かを判定するように構成されてよい。デッドレコニングを使用する場合、方法800はステップ850に進んでよい。デッドレコニングを使用しない場合、方法800はステップ870に進んでよい。
【0058】
いくつかの実施形態では、デッドレコニングを実行するか否かは、モバイルデバイスがアクセス可能な定義済みの設定によって決まってよい。そのような設定は、モバイルデバイスのユーザによって施されても、またはサービスプロバイダもしくはモバイルデバイスの製造業者によって施されてもよい。Table 1(表1)は、モバイルデバイスを見つけて追跡するのにデッドレコニングを使用するか否かを定義し、使用する場合に、どれだけの長さにわたって使用するかを定義するのに使用できるデータの例を示す。Table 1(表1)に提示された値が例示を目的としたものにすぎないことを理解されたい。
【0060】
非一時性記憶媒体上のようにモバイルデバイスによってアクセス可能なデータは、モバイルデバイスがユーザに対する特定の位置にあるときにデッドレコニングを実行すべきかどうか、デッドレコニングを実行することが可能な時間の長さ、および/またはデッドレコニングを実行することが可能な最長距離を示してよい。デッドレコニング技法を実行する過程で、モバイルデバイスがユーザに対する複数の位置に位置する場合、最長時間および最長距離を平均してよい。いくつかの実施形態では、様々な期間のうちのより短い期間またはより短い距離を使用してよい。たとえば、モバイルデバイスが、デッドレコニングが実行される過程でユーザの耳に保持され、かつユーザのポケットの中にも保持される場合、デッドレコニングは、平均化技術を使用する場合に、3.5分または350フィートのうちのどちらか短い方の間実行されてよい。同じ状況において、小許容値技法を使用する場合、デッドレコニングは3分または300フィートのうちのどちらか短い方の間実行されてよい。
【0061】
ステップ850において、デッドレコニング技法を使用してモバイルデバイスのロケーションを判定してよい。ある期間にわたってモバイルデバイスのロケーションを判定すると、モバイルデバイスのロケーションを追跡することができる。1つまたは複数の加速度計および/または磁力計からのデータを使用してユーザが(モバイルデバイスを所持しつつ)一歩進んだかどうかおよびどの方向に一歩進んだかを判定してよい。ステップ805において判定されたフィックスロケーション、判定された方向、および/またはユーザが一歩進んだという判定を使用して、モバイルデバイスおよびユーザの新しいロケーションを判定してよい。ユーザがさらに進んだときは、フィックスおよびあらかじめ求められた歩行距離に基づいて新しいロケーションを判定してよい。したがって、ステップ850において、デッドレコニングを使用して、ステップ805において判定された絶対ロケーションに基づいて相対位置を判定してよい。ステップ850は、ユーザに対するモバイルデバイスの位置に基づき、Table 1(表1)に定義されたような所定の期間および/または最長距離にわたって実行されることのみが可能であってよい。たとえば、ユーザの体に対するモバイルデバイスのロケーションに応じて、デッドレコニングを使用してユーザの位置を判定する場合の誤り率が変動することがある。モバイルデバイスが、ユーザの脚に接触するポケットの中のような低い誤り率に関連するユーザの体の位置にある場合は、モバイルデバイスがユーザの手に握られている場合よりも長い期間および/またはより長い総距離(たとえば、より多い歩数)にわたってデッドレコニングを実行するのを可能にしてよい。
【0062】
ステップ860において、デッドレコニングを引き続き実行すべきかどうかに関して判定を下してよい。デッドレコニングを実行している間ステップ860を周期的に評価してよい。Table 1(表1)に提示されたような記憶された条件に関してステップ860を実行してよい。ユーザの体に対するモバイルデバイスの位置に関連するあらかじめ定義された期間またはあらかじめ定義された距離が経過するかまたはあらかじめ定義された期間またはあらかじめ定義された距離に達した場合、方法800はステップ870に進んでよい。そのような最大値に達しない場合、1)ロケーション判定によってユーザの位置を判定することが可能になるか、または2)最長距離もしくは最長時間に達するまでステップ850を引き続き実行してよい。
【0063】
引き続きデッドレコニングを実行するかどうかは、ロケーション判定モジュールが現在モバイルデバイスのロケーションを正確に判定できているかどうかに基づいてもよい。たとえば、ユーザが建物内にいる場合、ロケーション判定モジュールは、建物の特定の部分では、モバイルデバイスの位置を判定することが可能であり得、一方、建物内の他のロケーションでは、モバイルデバイスのロケーションを判定することができない。ロケーション判定モジュールがロケーションを判定するのに利用可能である場合、モバイルデバイスは、デフォルト設定においてデッドレコニングではなくロケーション判定モジュールを使用してよい。いくつかの実施形態では、モバイルデバイスはデッドレコニングまたはロケーション判定モジュールを、どちらが正確なロケーションを示す可能性がより高いかに基づいて判定し選択してよい。ロケーション判定モジュールが、モバイルデバイスの単一のロケーション点を示すのみのような、短い期間の間利用可能である場合、このロケーションを新しいフィックスロケーションとして使用してよく、デッドレコニングを使用して、モバイルデバイスとユーザの両方が移動したときにモバイルデバイスおよびユーザの他の位置を判定してよい。
【0064】
ステップ870において、デッドレコニングを使用してユーザの位置を追跡することを停止してよい。このことは、電力を節約するために、1つまたは複数の加速度計、1つまたは複数の磁力計、ならびに/あるいは1つまたは複数の近接センサなどの、モバイルデバイスの1つまたは複数のコンポーネントの電源を落とすことを含んでよい。さらに、デッドレコニングを実行するのを停止した場合、近接センサのいくつかまたはすべてからのデータを処理することはもはや必要ではなくなり得る。
【0065】
図9は、コンピュータシステムの実施形態を示す。コンピュータシステム900は、本出願で説明するモバイルデバイスおよびシステムのコンポーネントのいくつかに相当してよい。たとえば、本明細書において詳しく説明するモバイルデバイスはコンピュータシステム900とシステム100とを含んでよい。
図9は、様々な実施形態によって実現される方法を実行することができるコンピュータシステム900の一実施形態の概略図を示す。
図9が、いずれかまたはすべてを適宜利用することができる様々な構成要素を概略的に示すものにすぎないことに留意されたい。したがって、
図9は、個々のシステム要素をどのようにすれば比較的分離された状態で実装し得るかあるいは比較的より一体的に実装し得るかを広く示している。
【0066】
バス905を介して電気的に結合され得る(または場合によっては適宜通信し得る)ハードウェア要素を備えている、コンピュータシステム900が示されている。ハードウェア要素には、限定はしないが、1つもしくは複数の汎用プロセッサおよび/または1つもしくは複数の専用プロセッサ(デジタル信号処理チップ、グラフィックス加速プロセッサなど)を含む1つまたは複数のプロセッサ910、限定はしないが、マウス、キーボードなどを含んでよい1つまたは複数の入力デバイス915、および限定はしないが、表示デバイス、プリンタなどを含んでよい1つまたは複数の出力デバイス920が含まれてよい。
【0067】
コンピュータシステム900は、さらに、ローカル記憶装置および/またはネットワークアクセス可能な記憶装置を限定なしに備え得、かつ/あるいはプログラム可能、フラッシュアップデート可能などであり得るディスクドライブ、ドライブアレイ、光ストレージデバイス、ランダムアクセスメモリ(「RAM」)および/またはリードオンリーメモリ(「ROM」)などのソリッドステートストレージデバイスを限定なしに含み得る、1つまたは複数の非一時的ストレージデバイス925をさらに含み得る(かつ/または非一時的ストレージデバイス925と通信し得る)。そのような記憶デバイスは、限定はしないが、様々なファイルシステム、データベース構造などを含む任意の適切なデータストアを実装するように構成されてよい。
【0068】
コンピュータシステム900はまた、モデム、ネットワークカード(ワイヤレスまたはワイヤード)、赤外通信デバイス、ワイヤレス通信デバイス、および/またはチップセット(Bluetooth(登録商標)デバイス、802.11デバイス、Wi-Fiデバイス、WiMaxデバイス、セルラー通信機器など)などを限定なしに含み得る通信サブシステム930を含み得る。通信サブシステム930は、データが、ネットワーク(一例を挙げると、以下で説明するネットワークなど)、他のコンピュータシステム、および/または本明細書で説明する任意の他のデバイスと交換されることを可能にし得る。多くの実施形態では、コンピュータシステム900は、上述のようにRAMデバイスまたはROMデバイスを含んでよい作業メモリ935をさらに備える。
【0069】
コンピュータシステム900はまた、本明細書で説明するように、オペレーティングシステム940、デバイスドライバ、実行可能ライブラリ、および/または1つまたは複数のアプリケーションプログラム945などの他のコードを含む作業メモリ935内に現在配置されているように示されるソフトウェア要素を備え得、アプリケーションプログラム945は、様々な実施形態によって提供されるコンピュータプログラムを含み得、かつ/または方法を実装するように設計され得、かつ/または他の実施形態によって提供されるシステムを構成し得る。単に例として、上述の方法に関して説明した1つまたは複数の手順は、コンピュータ(および/またはコンピュータ内のプロセッサ)によって実行可能なコードおよび/または命令として実装され得、したがって、一態様では、そのようなコードおよび/または命令は、説明した方法による1つまたは複数の動作を実行するために汎用コンピュータ(または他のデバイス)を構成および/または適用するために使用され得る。
【0070】
1組のこれらの命令および/またはコードは、上述の記憶デバイス925などの非一時的コンピュータ可読記憶媒体上に記憶されてよい。場合によっては、記憶媒体は、コンピュータシステム900などのコンピュータシステム内に組み込まれ得る。他の実施形態では、記憶媒体が、命令/コードを記憶された汎用コンピュータをプログラム、構成、および/または適用するために使用され得るように、記憶媒体は、コンピュータシステムから分離され得(たとえば、コンパクトディスクなどの取外し可能媒体)、かつ/またはインストールパッケージ内に備えられ得る。これらの命令は、コンピュータシステム900で実行可能であり、かつ/または、(たとえば、様々な一般的に利用できるコンパイラ、インストールプログラム、圧縮/解凍ユーティリティなどのいずれかを使用して)コンピュータシステム900上にコンパイルおよび/またはインストールすると、ソースコードおよび/または実行コードの形態を取り、次いで実行可能コードの形態を取る、実行可能コードの形態を取り得る。
【0071】
特定の要件に従って実質的な変形を行ってよいことが、当業者には明らかであろう。たとえば、カスタマイズされたハードウェアが使用されてもよく、かつ/あるいは特定の要素はハードウェア、ソフトウェア(アプレットなどのような移植可能なソフトウェアを含む)、またはその両方に実装されてよい。さらに、ネットワーク入出力デバイスのような他のコンピューティングデバイスとの接続を使用してよい。
【0072】
上述のように、一態様において、いくつかの実施形態はコンピュータシステム(コンピュータシステム900など)を使用して本発明の様々な実施形態による方法を実行してよい。1組の実施形態によれば、そのような方法の手順のうちのいくつかまたはすべては、プロセッサ910が作業メモリ935に含まれる(オペレーティングシステム940および/またはアプリケーションプログラム945のような他のコードに組み込むことのできる)1つまたは複数の命令の1つまたは複数のシーケンスを実行したことに応答してコンピュータシステム900によって実行される。そのような命令は、記憶デバイス925のうちの1つまたは複数のような別のコンピュータ可読媒体から作業メモリ935に読み込まれてよい。単に例として、作業メモリ935内に含まれる命令のシーケンスの実行では、プロセッサ910に、本明細書で説明する方法の1つまたは複数の手順を実行させ得る。
【0073】
本明細で使用する「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械を特定の方式で動作させるデータを与えることに関与する任意の媒体を指す。コンピュータシステム900を使用して実現される実施形態では、様々なコンピュータ可読媒体が、命令/コードを実行できるようにプロセッサ910に供給することに関与してよく、かつ/あるいはそのような命令/コードを記憶しかつ/または搬送するのに使用されてよい。多くの実装形態において、コンピュータ可読媒体は物理記憶媒体および/または有形記憶媒体である。そのような媒体は非揮発性媒体または揮発性媒体の形をとってよい。非揮発性媒体には、たとえば、記憶デバイス925のような光ディスクおよび/または磁気ディスクが含まれる。揮発性媒体には、限定はしないが、作業メモリ935などのダイナミックメモリが含まれる。
【0074】
一般的な形態の物理コンピュータ可読媒体および/または有形コンピュータ可読媒体には、たとえばフロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、または任意の他の磁気媒体、CD-ROM、任意の他の光媒体、パンチカード、紙テープ、穴のパターンを有する任意の他の物理媒体、RAM、PROM、EPROM、FLASH-EPROM、任意の他のメモリチップまたはカートリッジ、あるいはコンピュータが命令および/またはコードを読み取ることができる任意の他の媒体が含まれる。
【0075】
様々な形態のコンピュータ可読媒体は、実行のためにプロセッサ910に1つまたは複数の命令の1つまたは複数のシーケンスを搬送することに関与し得る。単に例として、命令は、最初に、リモートコンピュータの磁気ディスクおよび/または光ディスク上で搬送され得る。リモートコンピュータは、命令をその動的メモリ内にロードし、コンピュータシステム900によって受信されかつ/または実行される伝送媒体上の信号として、命令を送信し得る。
【0076】
一般に通信サブシステム930(および/またはその構成要素)が信号を受信し、次いでバス905が信号(および/または信号によって搬送されるデータ、命令など)を作業メモリ935に搬送し、そこからプロセッサ910が命令を取り込んで実行する。作業メモリ935によって受信された命令は、場合によっては、プロセッサ910による実行の前または後のいずれかに、非一時的ストレージデバイス925に記憶され得る。
【0077】
上記で論じた方法、システム、およびデバイスは、例である。様々な構成において、様々な手順または構成要素を、適宜、省略し、置換し、または加えることができる。たとえば、代替構成では、本方法は、説明される順序とは異なる順序で実行されてもよく、ならびに/または、様々なステージが加えられ、省略され、および/もしくは組み合わされてもよい。また、いくつかの構成に関して説明される特徴が、様々な他の構成と組み合わされてもよい。構成の様々な態様および要素を同様に組み合わせることができる。また、技術は発展するものであり、したがって、要素の多くは、例であり、本開示または特許請求の範囲の範囲を限定しない。
【0078】
例示的な構成(実装形態を含む)を完全に理解するために、説明には具体的な詳細が記載されている。しかしながら、構成は、これらの具体的な詳細なしに実践することができる。たとえば、構成を不明瞭にすることを避けるために、よく知られている回路、プロセス、アルゴリズム、構造、および技法は、不要な詳細なしに示してきた。この説明は、例示的な構成のみを提供し、特許請求の範囲の範囲、適用可能性、または構成を限定しない。むしろ、これらの構成の上述の説明は、説明した技法を実装するための有効な説明を当業者に提供することになる。本開示の趣旨または範囲から逸脱することなく、要素の機能および構成に様々な変更を行うことができる。
【0079】
また、各構成は、流れ図またはブロック図として示されるプロセスとして記述され得る。各構成では動作を逐次プロセスとして記述し得るが、動作の多くを並行して実行するかあるいは同時に実行することができる。加えて、動作の順序は並び替えられ得る。プロセスは、図に含まれていない追加のステップを有することができる。さらに、方法の例は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはそれらの任意の組合せによって実装され得る。ソフトウェア、ファームウェア、ミドルウェア、またはマイクロコードで実装されるとき、必要なタスクを実行するプログラムコードまたはコードセグメントは、記憶媒体などの非一時的コンピュータ可読媒体に記憶され得る。プロセッサは説明したタスクを実行し得る。
【0080】
いくつかの例示的な構成について説明してきたが、様々な変更、代替構造、および均等物は、本開示の趣旨から逸脱することなく使用され得る。たとえば、上記の要素は、より大きいシステムの構成要素であってよく、他の規則は、本発明の適用例に優先するか、そうでなければ本発明の適用例を変更することができる。また、上記の要素が考慮される前、間、または後に、いくつかのステップを行うことができる。したがって、上記の説明は、特許請求の範囲を制限しない。