(57)【特許請求の範囲】
【請求項１】
モバイルデバイスにおける前記モバイルデバイスが飛行中か否かを検出するための方法であって、前記モバイルデバイスが、
2つの加速度インジケータ{Ai-1,Ai}を与えるステップと、
前記2つの加速度インジケータ{Ai-1,Ai}間の差分加速度
【数１】
0005625067.tif 000142
を計算するステップと、
重力加速度の推定方向に基づいて、前記差分加速度
【数２】
0005625067.tif 000143
を、推定水平加速度
【数３】
0005625067.tif 000144
と推定垂直加速度
【数４】
0005625067.tif 000145
とを含む直交成分に分割するステップと、
第1の比較結果を計算するために、前記推定垂直加速度
【数５】
0005625067.tif 000146
を第1のしきい値(Th1)と比較するステップと、
第2の比較結果を計算するために、前記推定水平加速度
【数６】
0005625067.tif 000147
を含む値を第2のしきい値(Th2)と比較するステップと、
前記第1および第2の比較結果に基づいて、前記モバイルデバイスが飛行中か否かを判定するための飛行中インジケータを設定するステップと、
を含み、
前記第1のしきい値および第2のしきい値(Th1、Th2)は、前記モバイルデバイスが飛行中か否かを判定するために前記第1のしきい値および第2のしきい値(Th1、Th2)が使用されるように定義される、
方法。
【請求項２】
前記2つの加速度インジケータ{Ai-1,Ai}が各々3次元加速度ベクトルを含む、請求項1に記載の方法。
【請求項３】
前記2つの加速度インジケータ{Ai-1,Ai}が、
連続加速度計測定値の第1のシーケンス{aj,aj-1,aj-2,...}の和を含む、前記2つの加速度インジケータ{Ai-1,Ai}の第1の加速度(Ai)と、
連続加速度計測定値の第2のシーケンス{ak,ak-1,ak-2,...}の和を含む、前記2つの加速度インジケータ{Ai-1,Ai}の第2の加速度(Ai-1)と
を含む、請求項1に記載の方法。
【請求項４】
前記2つの加速度インジケータ{Ai-1,Ai}が、
第1の時間(ti-1)における加速度を示す、前記2つの加速度インジケータ{Ai-1,Ai}の第1の加速度(Ai-1)と、
第2の時間(ti)における加速度を示す、前記2つの加速度インジケータ{Ai-1,Ai}の第2の加速度(Ai)とを含み、
前記第2の時間(ti)と前記第1の時間(ti-1)との間の時間の差が10000秒未満である、
請求項1に記載の方法。
【請求項５】
前記第2の時間(ti)と前記第1の時間(ti-1)との間の時間の差が1〜30秒である、請求項4に記載の方法。
【請求項６】
重力加速度の前記推定方向が、2つの加速度インジケータ{Ai-1,Ai}の第1の加速度(Ai-1)を含み、前記第1の加速度(Ai-1)が、第2の加速度(Ai)よりも前の加速度を表す、請求項1に記載の方法。
【請求項７】
重力加速度の前記推定方向が、2つの加速度インジケータ{Ai-1,Ai}の第2の加速度(Ai)を含み、前記第2の加速度(Ai)が、第1の加速度(Ai-1)よりも後の加速度を表す、請求項1に記載の方法。
【請求項８】
重力加速度の前記推定方向が、前記2つの加速度インジケータ{Ai-1,Ai}に基づく平均加速度を含む、請求項1に記載の方法。
【請求項９】
前記推定水平加速度
【数７】
0005625067.tif 000148
を含む前記値を前記第2のしきい値(Th2)と比較する前記ステップが、前記推定水平加速度
【数８】
0005625067.tif 000149
を前記第2のしきい値(Th2)と比較するステップを含む、請求項1に記載の方法。
【請求項１０】
前記推定水平加速度
【数９】
0005625067.tif 000150
を含む前記値を前記第2のしきい値(Th2)と比較する前記ステップが、前記第2のしきい値(Th2)を前記直交成分
【数１０】
0005625067.tif 000151
の比と比較するステップを含む、請求項1に記載の方法。
【請求項１１】
前記推定水平加速度
【数１１】
0005625067.tif 000152
を含む前記値を前記第2のしきい値(Th2)と比較する前記ステップが、前記推定水平加速度
【数１２】
0005625067.tif 000153
を前記推定垂直加速度
【数１３】
0005625067.tif 000154
と比較するステップを含む、請求項1に記載の方法。
【請求項１２】
前記飛行中インジケータに基づいてユーザへのメッセージを表示するステップをさらに含む、請求項1に記載の方法。
【請求項１３】
前記飛行中インジケータに基づいて回路を無効化するステップさらに含む、請求項1に記載の方法。
【請求項１４】
前記飛行中インジケータに基づいて回路を低電力モードにするステップをさらに含む、請求項1に記載の方法。
【請求項１５】
前記第1および第2の比較結果に基づいて前記飛行中インジケータを設定する前記ステップが、一連の飛行中インジケータをフィルタ処理するステップを含む、請求項1に記載の方法。
【請求項１６】
前記第1および第2の比較結果に基づいて前記飛行中インジケータを設定する前記ステップが、前記第1および第2の比較結果の論理積をとるステップを含む、請求項1に記載の方法。
【請求項１７】
モバイルデバイスであって、前記モバイルデバイスは前記モバイルデバイスが飛行中か否かを検出するためのものであり、
生サンプルを与える加速度計と、
前記加速度計に結合された、前記生サンプルを受信し、平均化サンプルを与えるための平均化器と、
前記平均化器に結合された、前記平均化サンプルを受信するための遅延Tユニットと、
前記平均化器と前記遅延Tユニットとに結合された、差分加速度を計算し、与えるための差分ユニットと、
前記加速度計に結合された、重力の方向を与えるための重力方向推定器と、
前記差分ユニットと前記重力方向推定器とに結合された、前記差分加速度の垂直成分と水平成分とを発見するためのベクトル分割器と、
前記ベクトル分割器に結合された、前記垂直成分を受信し第1のしきい値(Th1)と比較して、第1の比較結果を与えるための第1のコンパレータと、
前記ベクトル分割器に結合された、前記水平成分を受信し第2のしきい値(Th2)と比較して、第2の比較結果を与えるための第2のコンパレータと、
前記第1および第2のコンパレータに結合された、前記第1および第2の比較結果を処理して、前記モバイルデバイスが飛行中か否かを判定するための飛行中インジケータに入れるための論理ゲートと
を含み、
前記1のしきい値および第2のしきい値(Th1、Th2)は、前記モバイルデバイスが飛行中か否かを判定するために前記1のしきい値および第2のしきい値(Th1、Th2)が使用されるように定義される、デバイス。
【請求項１８】
モバイルデバイスであって、前記モバイルデバイスは前記モバイルデバイスが飛行中か否かを検出するためのものであり、
2つの加速度インジケータ{Ai-1,Ai}を与えるための手段と、
前記2つの加速度インジケータ{Ai-1,Ai}間の差分加速度
【数１４】
0005625067.tif 000155
を計算するための手段と、
重力加速度の方向に基づいて、前記差分加速度
【数１５】
0005625067.tif 000156
を、推定水平加速度
【数１６】
0005625067.tif 000157
と推定垂直加速度
【数１７】
0005625067.tif 000158
とを含む直交成分に分割するための手段と、
第1の比較結果を計算するために、前記推定垂直加速度
【数１８】
0005625067.tif 000159
を第1のしきい値(Th1)と比較するための手段と、
第2の比較結果を計算するために、前記推定水平加速度
【数１９】
0005625067.tif 000160
を含む値を第2のしきい値(Th2)と比較するための手段と、
前記第1および第2の比較結果に基づいて、前記モバイルデバイスが飛行中か否かを判定するための飛行中インジケータを設定するための手段と
を含み、
前記1のしきい値および第2のしきい値(Th1、Th2)は、前記モバイルデバイスが飛行中か否かを判定するために前記1のしきい値および第2のしきい値(Th1、Th2)が使用されるように定義される、デバイス。
【請求項１９】
前記2つの加速度インジケータ{Ai,Ai-1}を形成するために、連続加速度計測定値の第1のシーケンス{aj,aj-1,aj-2,...}を加算するための、および連続加速度計測定値の第2のシーケンス{ak,ak-1,ak-2,...}を加算するための手段をさらに含む、請求項18に記載のデバイス。
【請求項２０】
プロセッサとメモリとを含むデバイスであって、前記メモリが、プロセッサに
2つの加速度インジケータ{Ai-1,Ai}を与え、
前記2つの加速度インジケータ{Ai-1,Ai}間の差分加速度
【数２０】
0005625067.tif 000161
を計算し、
重力加速度の方向に基づいて、前記差分加速度
【数２１】
0005625067.tif 000162
を、推定水平加速度
【数２２】
0005625067.tif 000163
と推定垂直加速度
【数２３】
0005625067.tif 000164
とを含む直交成分に分割し、
第1の比較結果を計算するために、前記推定垂直加速度
【数２４】
0005625067.tif 000165
を第1のしきい値(Th1)と比較し、
第2の比較結果を計算するために、前記推定水平加速度
【数２５】
0005625067.tif 000166
を含む値を第2のしきい値(Th2)と比較し、
前記第1および第2の比較結果に基づいて、前記デバイスが飛行中か否かを判定するための飛行中インジケータを設定する処理を実行させるためのプログラムを格納し、
前記1のしきい値および第2のしきい値(Th1、Th2)は、前記デバイスが飛行中か否かを判定するために前記1のしきい値および第2のしきい値(Th1、Th2)が使用されるように定義される、デバイス。
【請求項２１】
コンピュータに、2つの加速度インジケータ{Ai-1,Ai}を与え、
前記2つの加速度インジケータ{Ai-1,Ai}間の差分加速度
【数２６】
0005625067.tif 000167
を計算し、
重力加速度の方向に基づいて、前記差分加速度
【数２７】
0005625067.tif 000168
を、推定水平加速度
【数２８】
0005625067.tif 000169
と推定垂直加速度
【数２９】
0005625067.tif 000170
とを含む直交成分に分割し、
第1の比較結果を計算するために、前記推定垂直加速度
【数３０】
0005625067.tif 000171
を第1のしきい値(Th1)と比較し、
第2の比較結果を計算するために、前記推定水平加速度
【数３１】
0005625067.tif 000172
を含む値を第2のしきい値(Th2)と比較し、
前記第1および第2の比較結果に基づいて、前記コンピュータが飛行中か否かを判定するための飛行中インジケータを設定する
処理を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記1のしきい値および第2のしきい値(Th1、Th2)は、前記コンピュータが飛行中か否かを判定するために前記1のしきい値および第2のしきい値(Th1、Th2)が使用されるように定義される、コンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本出願は、参照により本明細書に明確に組み込まれる、2009年11月20日に(Attorney docket 番号 第093276P1号として)出願された、発明者Michael James Wenglerによる「In Flight Detection」と題する米国仮特許出願第61/263,246号の利益および優先権を主張する。
【０００２】
本開示は、一般に、モバイルデバイスが飛行中(in flight)であるときを検出するための装置および方法に関する。より詳細には、本開示は、(たとえば、3次元加速度計センサからの)センサ測定値に基づいて、モバイルデバイスが飛行中であることを検出することに関する。
【背景技術】
【０００３】
たいていの新しいモバイルデバイスは、10,000フィートより上を飛行している間にユーザがモバイルデバイスを動作させることを可能にする飛行中モードを提供する。ユーザは、飛行機に乗るときに飛行中モードを手動で有効化しなければならず、飛行機が着陸すると飛行中モードを無効化し得る。飛行中モードは、モバイルデバイスにおけるすべての無線機能(たとえば、セルラーボイス/データ、WiFi、Bluetooth(登録商標))の可用性を制御する。現在、モバイルデバイスは、それが飛行中であるかどうかを検出することができないので、それの飛行中モード設定を自動的に無効化または有効化することができない。
【発明の概要】
【課題を解決するための手段】
【０００４】
3次元加速度計からのセンサ測定値に基づいて、モバイルデバイスが飛行中であるかどうかを検出するための装置および方法が開示される。いくつかの実施形態は、重力の方向および非重力加速度を推定し、この非重力加速度を垂直成分と水平成分とに分割し、次いで、モバイルデバイスが、飛行中判断を保証するのに十分な垂直加速度を受けているかどうかを判断するために、推定された加速度をテストする。
【０００５】
いくつかの態様によれば、モバイルデバイスにおける飛行中検出のための方法であって、2つの加速度インジケータ{Ai-1,Ai}を与えるステップと、2つの加速度インジケータ{Ai-1,Ai}間の差分加速度
【０００６】
【数１】
0005625067.tif 000002
【０００７】
を判断するステップと、重力加速度の推定方向に基づいて、差分加速度
【０００８】
【数２】
0005625067.tif 000003
【０００９】
を、推定水平加速度
【００１０】
【数３】
0005625067.tif 000004
【００１１】
と推定垂直加速度
【００１２】
【数４】
0005625067.tif 000005
【００１３】
とを含む直交成分に分割するステップと、第1の比較結果を判断するために、垂直加速度を含む加速度を第1のしきい値(Th1)と比較するステップと、第2の比較結果を判断するために直交成分
【００１４】
【数５】
0005625067.tif 000006
【００１５】
のうちの少なくとも1つを第2のしきい値(Th2)と比較するステップと、第1および第2の比較結果に基づいて飛行中インジケータを設定するステップとを含む方法が開示される。
【００１６】
いくつかの態様によれば、飛行中検出のためのモバイルデバイスであって、生サンプルを与える加速度計と、加速度計に結合された、生サンプルを受信し、平均化サンプルを与えるための平均化器(averager)と、平均化器に結合された、平均化サンプルを受信するための遅延Tユニットと、平均化器と遅延Tユニットとに結合された、差分加速度を計算し、与えるための差分ユニットと、加速度計に結合された、重力の方向の推定値を与えるための重力方向推定器と、差分ユニットと重力方向推定器とに結合された、差分加速度の垂直成分と水平成分とを発見するためのベクトル分割器と、第1のしきい値に結合され、ベクトル分割器に結合された、垂直成分を受信し、第1の比較結果を与えるための第1のコンパレータと、ベクトル分割器に結合された、垂直成分と水平成分とを受信し、第2の比較結果を与えるための第2のコンパレータと、第1および第2のコンパレータに結合された、第1および第2の比較結果を処理して、飛行中インジケータに入れるための論理ゲートとを含むデバイスが開示される。
【００１７】
いくつかの態様によれば、飛行中検出のためのモバイルデバイスであって、2つの加速度インジケータ{Ai-1,Ai}を与えるための手段と、2つの加速度インジケータ{Ai-1,Ai}間の差分加速度
【００１８】
【数６】
0005625067.tif 000007
【００１９】
を判断するための手段と、重力加速度の推定方向に基づいて、差分加速度
【００２０】
【数７】
0005625067.tif 000008
【００２１】
を、推定水平加速度
【００２２】
【数８】
0005625067.tif 000009
【００２３】
と推定垂直加速度
【００２４】
【数９】
0005625067.tif 000010
【００２５】
とを含む直交成分に分割するための手段と、第1の比較結果を判断するために、垂直加速度を含む加速度を第1のしきい値(Th1)と比較するための手段と、第2の比較結果を判断するために直交成分
【００２６】
【数１０】
0005625067.tif 000011
【００２７】
のうちの少なくとも1つを第2のしきい値(Th2)と比較するための手段と、第1および第2の比較結果に基づいて飛行中インジケータを設定するための手段とを含むデバイスが開示される。
【００２８】
いくつかの態様によれば、2つの加速度インジケータ{Ai-1,Ai}を与え、2つの加速度インジケータ{Ai-1,Ai}間の差分加速度
【００２９】
【数１１】
0005625067.tif 000012
【００３０】
を判断し、重力加速度の推定方向に基づいて、差分加速度
【００３１】
【数１２】
0005625067.tif 000013
【００３２】
を、推定水平加速度
【００３３】
【数１３】
0005625067.tif 000014
【００３４】
と推定垂直加速度
【００３５】
【数１４】
0005625067.tif 000015
【００３６】
とを含む直交成分に分割し、第1の比較結果を判断するために、垂直加速度を含む加速度を第1のしきい値(Th1)と比較し、第2の比較結果を判断するために直交成分
【００３７】
【数１５】
0005625067.tif 000016
【００３８】
のうちの少なくとも1つを第2のしきい値(Th2)と比較し、第1および第2の比較結果に基づいて飛行中インジケータを設定するためのプログラムコードを含む、その上に記憶されたプログラムコードを含むコンピュータ可読媒体が開示される。
【００３９】
いくつかの態様によれば、プロセッサとメモリとを含むデバイスであって、メモリが、2つの加速度インジケータ{Ai-1,Ai}を与え、2つの加速度インジケータ{Ai-1,Ai}間の差分加速度
【００４０】
【数１６】
0005625067.tif 000017
【００４１】
を判断し、重力加速度の推定方向に基づいて、差分加速度
【００４２】
【数１７】
0005625067.tif 000018
【００４３】
を、推定水平加速度
【００４４】
【数１８】
0005625067.tif 000019
【００４５】
と推定垂直加速度
【００４６】
【数１９】
0005625067.tif 000020
【００４７】
とを含む直交成分に分割し、第1の比較結果を判断するために、垂直加速度を含む加速度を第1のしきい値(Th1)と比較し、第2の比較結果を判断するために直交成分
【００４８】
【数２０】
0005625067.tif 000021
【００４９】
のうちの少なくとも1つを第2のしきい値(Th2)と比較し、第1および第2の比較結果に基づいて飛行中インジケータを設定するためのソフトウェア命令を含む、デバイスが開示される。
【００５０】
様々な態様が例として図示され説明される、以下の発明を実施するための形態から、当業者には他の態様が容易に明らかになることを理解されたい。図面および発明を実施するための形態は、本質的に例示的なものと見なされるべきであり、限定的なものと見なされるべきではない。
【図面の簡単な説明】
【００５１】
【図１Ａ】飛行中の飛行機に作用する力を示す図である。
【図１Ｂ】飛行運動による、加速度の予想される変化を示す図である。
【図１Ｃ】非飛行運動による、加速度の予想される変化を示す図である。
【図２】本発明のいくつかの実施形態によるモバイルデバイスを示す図である。
【図３】本発明のいくつかの実施形態による、平均化器に入る生サンプルの第1のシーケンスと、平均化器から出る平均化サンプルとを示す図である。
【図４】本発明のいくつかの実施形態による、2つの加速度ベクトルと、様々な基準ベクトルおよび差分ベクトルとを示す図である。
【図５】本発明のいくつかの実施形態による、2つの加速度ベクトルと、様々な基準ベクトルおよび差分ベクトルとを示す図である。
【図６】本発明のいくつかの実施形態による、2つの加速度ベクトルと、様々な基準ベクトルおよび差分ベクトルとを示す図である。
【図７】本発明のいくつかの実施形態による、平均化加速度計データからの例示的な差分ベクトルを示す図である。
【図８Ａ】本発明のいくつかの実施形態による、重力ベクトルに関する仮定に基づいて差分ベクトルを計算する方法を示す図である。
【図８Ｂ】本発明のいくつかの実施形態による、重力ベクトルに関する仮定に基づいて差分ベクトルを計算する方法を示す図である。
【図９Ａ】本発明のいくつかの実施形態による、テストおよび判定を示すベン図(Venn diagram)である。
【図９Ｂ】本発明のいくつかの実施形態による、テストおよび判定を示すベン図である。
【図９Ｃ】本発明のいくつかの実施形態による、テストおよび判定を示すベン図である。
【図９Ｄ】本発明のいくつかの実施形態による、テストおよび判定を示すベン図である。
【図１０Ａ】本発明のいくつかの実施形態による、モバイルデバイスにおける飛行中検出のためのモジュールを示す図である。
【図１０Ｂ】本発明のいくつかの実施形態による、モバイルデバイスにおける飛行中検出のためのモジュールを示す図である。
【図１１】本発明のいくつかの実施形態による、モバイルデバイスにおける飛行中検出のためのモジュールを示す図である。
【図１２】本発明のいくつかの実施形態による、モバイルデバイスにおける飛行中検出のための流れ図である。
【発明を実施するための形態】
【００５２】
添付の図面とともに以下に示す詳細な説明は、本開示の様々な態様を説明するものであり、本開示が実施され得る唯一の態様を表すものではない。本開示で説明する各態様は、本開示の例または説明として与えるものにすぎず、必ずしも他の態様よりも好適であるまたは有利であると解釈すべきではない。詳細な説明は、本開示の完全な理解を与えるための具体的な詳細を含む。ただし、本開示はこれらの具体的な詳細なしに実施され得ることが当業者には明らかであろう。場合によっては、本開示の概念を不明瞭にしないように、よく知られている構造およびデバイスをブロック図の形式で示す。頭字語および他の記述的専門用語は、単に便宜のためにおよび明瞭にするためにのみ使用され得、本発明の範囲を限定するものではない。
【００５３】
図1Aに、飛行中の飛行機に作用する力を示す。dAによって表される加速度の変化は、瞬時総加速度Aと重力定数AGとの間の差(すなわちdA=A-AG)として計算され得る。加速度の変化dAはまた、重力に対して横(transversal)-ラテラル(lateral)-垂直(vertical)(T-L-V)カーディナル方向の各々の成分を用いて、3次元ベクトルによって、dA=(A-AG)=(AT+AL+AV)-AGまたは、同等に、dA=(AT+AL)+(AV-AG)と表され得、ATは瞬時横加速度、ALは瞬時ラテラル加速度、AVは瞬時垂直加速度である。垂直加速度AVは重力AGの引力に対して平行であることに留意されたい。加速度の変化dAは、同様に、モバイルデバイスのハウジングに関してXYZカーディナル方向の各々の成分を用いて、3次元ベクトルによって、dA=(A-AG)=(AX+AY+AZ)-AGとして表され得、AXは瞬時X軸加速度、AYは瞬時Y軸加速度、AZは瞬時Z軸加速度である。この座標系(reference system)では、モバイルデバイスに対する垂直加速度AZは、重力AGの引力に対して平行である可能性が低い。
【００５４】
飛行中に、航空機は、変動する垂直力(FV)、横力(FT)およびラテラル力(FL)の両方を受ける。垂直力の変化は、重力の引力に一致する垂直変位および加速度をもたらすリフトおよび垂直風の変動を含む。特定の高度で巡航するように設定されている間でさえ、飛行機は、数十フィートから数百フィートまで上昇および下降し、地球の重力による加速度以外の加速度をもたらす。水平力(横力とラテラル力と)の変化は、逆風および横風、ならびにエンジンRPMおよびプロペラまたはタービン角度の変化の変動を含む。垂直加速度の変化はdAVによって表され、横加速度の変化はdATによって表され、ラテラル加速度の変化はdALによって表される。横加速度(dAT)とラテラル加速度(dAL)との和は、(dAHによって表される)水平加速度である。
【００５５】
一般に、巡航している飛行機は、横加速度の分散が垂直加速度の分散よりも小さい。すなわち、変動するリフトによる加速度の変化は、変動する逆風による加速度の変化よりも大きい。飛行機内のモバイルデバイスは、加速度を測定するために加速度計からのセンサ測定値を使用し得る。モバイルデバイスは、垂直加速度の分散が飛行中判断を保証するのに十分大きいかどうかを判断するために、この加速度を推定垂直ベクトルと推定横ベクトルとに分解し得る。
【００５６】
図1Bおよび図1Cに、飛行運動と非飛行運動による、加速度の予想される変化を示す。図1Bにおいて、縦長楕円内のエリアは、飛行中の間に予想される(dAによって表される差分加速度と呼ばれる)加速度の変化を表す。楕円は、重力の引力に垂直に整合した、より長い長軸と、飛行機の横運動に一致した、より短い短軸とを有する。この楕円の配向は、巡航している飛行機が、水平加速度の変動(横加速度+ラテラル加速度の変動dAH=dATL=dAT+dAL)よりも大きい、垂直加速度の変動(dAV)を受けることを示す。dAVおよびdAHの別々の大きさを平均化すると、Σ|dAV|はΣ|dAH|よりも大きくなる。したがって、Σ|dAV|>Σ|dAH|である場合、モバイルデバイスは飛行中である可能性が高い。
【００５７】
反対に、図1Cには、動いているが飛行中ではないときの加速度の変化の予想される範囲の横長楕円が示されている。非飛行運動の場合、垂直加速度の分散は、一般に横加速度の分散よりもはるかに小さい。すなわち、Σ|dAV|<Σ|dAH|である場合、モバイルデバイスは飛行中でない可能性が高い。
【００５８】
図2に、本発明のいくつかの実施形態によるモバイルデバイスを示す。モバイルデバイス100は、プロセッサ300および加速度計110、ならびに随意のメモリ120および随意のディスプレイ130を含む。加速度計110は、モバイルデバイス100が受ける測定加速度を表すサンプル200を与える。プロセッサ300は、モバイルデバイス100が飛行中であるか飛行中でないかを判断するために、サンプル200を変換し、分析する。プロセッサ300が飛行中ステータスを判断すると、プロセッサ300は、更新されたステータスをメモリ120に記憶し、および/またはステータスをディスプレイ130上でユーザに提示し得る。プロセッサ300は、汎用マイクロプロセッサ、RISCプロセッサ、マイクロコントローラ、プログラマブル論理デバイス、専用論理ゲートなどを用いて実装され得る。
【００５９】
図3に、本発明のいくつかの実施形態による、平均化器に入る生サンプルの第1のシーケンスと、平均化器から出る平均化サンプルとを示す。加速度計110は、雑音の多い生加速度計サンプル200{...,ak-2202,ak-1204,ak206,...}を平均化器410に与える。加速度計110は、一般に、2つの連続するサンプル間で1秒未満の時間期間にわたってモバイルデバイス100が受ける加速度を示すために、1秒未満のレート{...,tk-2,tk-2,tk,...}でサンプルを生成する。平均化器410は、各平均化サンプル220{...,Ai-1222,Ai224,...}を生成するために、一般に1秒を超えるレート{...,ti-1,ti,...}で固定数の生サンプルを加算し、ただし、(ti-ti-1)>>(tk-tk-1)である。平均化器410は、平均化器を和またはスケーリングされた和として実装し得る。値のシーケンスを収集することによって、平均化器410は、平均化期間(ti-ti-1)にわたって実際の加速度の低雑音近似を生成する。
【００６０】
いくつかの実施形態では、生サンプル200は30Hz(すなわち、tk-tk-1が約33ミリ秒に等しい)で生成され、平均化サンプル220は0.2Hz(すなわち、ti-ti-1が約5秒に等しい)で生成される。この実施形態では、平均化器410は、5秒の平均化期間にわたって加速度測定値(生サンプル200)を加算し、加速度の低雑音近似を生じる。
【００６１】
図4、図5、および図6に、それぞれ、本発明のいくつかの実施形態による、2つの加速度ベクトルと、様々な基準ベクトルおよび差分ベクトルとを示す。以下で、重力による加速度ベクトルは、簡単のために反転されて示されている。
【００６２】
図4では、2つの平均化サンプル(Ai-1およびAi)が、重力による引力を表すベクトル(AG)に対するベクトルとして示されている。重力の方向の単位ベクトルは、ベクトルuG=AG/|AG|として示され得る。ベクトルAi-1とAGとの間の差分は、ベクトルdAi-1として示され、ベクトルAiiとAGとの間の対応する差分は、ベクトルdAiとして示される。ベクトルdAi-1は、時間ti-1において終了する期間中にモバイルデバイス100が受けた加速度を示す。ベクトルdAiは、時間tiにおいて終了する次の期間中にモバイルデバイス100が受けた加速度を示す。(ほぼ左向きの)ベクトルdAi-1は、主に水平面内の加速度(ラテラル加速度と横加速度の合成)を含んでいるものとして示されている。(ほぼ下向きの)ベクトルdAiは、モバイルデバイス100が水平加速度よりも大きい垂直加速度を受けたことを示す。dAiの重力の方向の加速度成分は、投影dAV=Proju(dAi)=(|dAi|cosφ)uG、ただし、φはベクトルdAVとuGとの間の角度を表すとして計算されるか、またはドット積dAV=|dAi x AG|AG/|AG|2として計算され得る。dAV(図示せず)によって表される、Aiのこの成分は、モバイルデバイス100の重力によらない垂直加速度を識別する。同様に、dATLまたはdAH(図示せず)によって表される、Aiの非垂直成分は、モバイルデバイス100の(横方向とラテラル方向とにおける)水平加速度を識別する。
【００６３】
高度の変化と速度の変化とを受けている飛行機の基準フレーム内で、重力ベクトルAGの方向が推定される。重力の推定方向は、推定重力ベクトル
【００６４】
【数２１】
0005625067.tif 000022
【００６５】
または対応する推定単位ベクトル
【００６６】
【数２２】
0005625067.tif 000023
【００６７】
によって表され得る。この推定重力ベクトル
【００６８】
【数２３】
0005625067.tif 000024
【００６９】
は、いくつかの異なる方法で計算され得る。
【００７０】
図5に、ベクトルAGと、それの対応する単位ベクトルuGとを推定するために使用され得る3つの異なるベクトルの例を示す。第1の例として、推定ベクトル
【００７１】
【数２４】
0005625067.tif 000025
【００７２】
はAi-1に設定され、推定単位ベクトル
【００７３】
【数２５】
0005625067.tif 000026
【００７４】
を生じる。第2の例として、推定ベクトル
【００７５】
【数２６】
0005625067.tif 000027
【００７６】
はAiに設定され、推定単位ベクトル
【００７７】
【数２７】
0005625067.tif 000028
【００７８】
を生じる。第3の例として、推定ベクトル
【００７９】
【数２８】
0005625067.tif 000029
【００８０】
はAi-1とAiとの平均に設定され、推定単位ベクトル
【００８１】
【数２９】
0005625067.tif 000030
【００８２】
を生じる。第4の例(図示せず)として、推定ベクトル
【００８３】
【数３０】
0005625067.tif 000031
【００８４】
は、少なくとも3つの平均化ベクトル(たとえば、{Ai-3,Ai-2,Ai-1})の平均に設定される。第5の例(図示せず)として、推定ベクトル
【００８５】
【数３１】
0005625067.tif 000032
【００８６】
は、2つ以上の前の平均化ベクトル{Ai,Ai-1,...の重み付き合成に設定され、推定単位ベクトル
【００８７】
【数３２】
0005625067.tif 000033
【００８８】
を生じる。AGまたはuGの適切な推定値は、Ai-1および/またはAiの垂直および非垂直成分を計算するために上の投影式(projection formula)中で使用され得る。
【００８９】
図6に、ベクトルAGを推定するためにAi-1が使用される事例を示す。得られた推定ベクトル
【００９０】
【数３３】
0005625067.tif 000034
【００９１】
は、推定された
【００９２】
【数３４】
0005625067.tif 000035
【００９３】
(または単に
【００９４】
【数３５】
0005625067.tif 000036
【００９５】
)を判断するために使用される。差分ベクトルdAは、(時間tiにおいて判断された
【００９６】
【数３６】
0005625067.tif 000037
【００９７】
を表す)推定ベクトル
【００９８】
【数３７】
0005625067.tif 000038
【００９９】
として示され、Ai-1とAiとの間のベクトル差(すなわち、
【０１００】
【数３８】
0005625067.tif 000039
【０１０１】
)から形成される。
【０１０２】
図7に、本発明のいくつかの実施形態による、平均化加速度計データからの例示的な差分ベクトルを示す。4つの例示的な推定差分ベクトル(差分加速度)のシーケンス
【０１０３】
【数３９】
0005625067.tif 000040
【０１０４】
が、概して楕円内に離間して示されている。図6からの推定差分ベクトルは、ここでは
【０１０５】
【数４０】
0005625067.tif 000041
【０１０６】
として示されている。一連の推定差分ベクトル
【０１０７】
【数４１】
0005625067.tif 000042
【０１０８】
が、図1Bに示すように縦長楕円を形成する場合、加速度の平均化加速度計データのこのシーケンスは、モバイルデバイス100が飛行中である可能性がより高いことを表す。代替的に、推定差分ベクトルは(図1Cに示すように)横長楕円を形成し得、それは、モバイルデバイス100が、動いているが、飛行中ではないことを表すであろう。
【０１０９】
図8Aおよび図8Bに、本発明のいくつかの実施形態による、重力ベクトルに関する仮定に基づいて差分ベクトルを計算する方法を示す。
【０１１０】
図8Aに、基準ベクトルAGが不明であり、ベクトル
【０１１１】
【数４２】
0005625067.tif 000043
【０１１２】
を最も良く推定するために平均化加速度ベクトルAi-1が使用され、
【０１１３】
【数４３】
0005625067.tif 000044
【０１１４】
を定義するために同様にAi-1が使用される場合を示す。さらに、推定差分ベクトル
【０１１５】
【数４４】
0005625067.tif 000045
【０１１６】
は、推定垂直成分
【０１１７】
【数４５】
0005625067.tif 000046
【０１１８】
と推定水平成分
【０１１９】
【数４６】
0005625067.tif 000047
【０１２０】
とに分解される。図8Bに、ベクトル
【０１２１】
【数４７】
0005625067.tif 000048
【０１２２】
を推定し、
【０１２３】
【数４８】
0005625067.tif 000049
【０１２４】
を発見するために平均化加速度ベクトルAiが使用される代替実施形態を示す。この場合も、推定差分ベクトル
【０１２５】
【数４９】
0005625067.tif 000050
【０１２６】
は、推定垂直成分
【０１２７】
【数５０】
0005625067.tif 000051
【０１２８】
と推定水平成分
【０１２９】
【数５１】
0005625067.tif 000052
【０１３０】
とに分解される。平均化測定値のシーケンス220{Ai,Ai-1,...}が縦長楕円を形成するか横長楕円を形成するかを判断するために、そのシーケンスが観測され得る。代替的に、運動が飛行中運動を表すかどうかを示すために単一の差分ベクトルが使用され得る。
【０１３１】
図9A、図9Bおよび図9Cに、本発明のいくつかの実施形態による、テストと判定とを示すベン図を示す。図の各々は、差分ベクトル
【０１３２】
【数５２】
0005625067.tif 000053
【０１３３】
および/または差分ベクトルの1つまたは2つの推定成分に対して実行される2つのテストを表す。
【０１３４】
【数５３】
0005625067.tif 000054
【０１３５】
と標示された垂直軸は推定垂直加速度の大きさの変化を表し、
【０１３６】
【数５４】
0005625067.tif 000055
【０１３７】
と標示された水平軸は推定水平加速度の大きさの変化を表す。
【０１３８】
図9Aに、負象限が正象限に反転された、図1Bおよび図1Cの楕円の正象限を示す。第1の楕円は、飛行中加速度の変化(dAInFlight)が予想されるエリアを表す。第2の楕円は、非飛行中加速度の変化(dANonFlight)が予想されるエリアを表す。差分ベクトルが、重複する楕円によって定義されたエリア内にある第1のエリアでは、差分ベクトルdAが飛行中運動を表すか、非飛行運動を表すかは不明であり得る。差分ベクトルdAが、横長楕円のみによって定義されたエリア内にある第2のエリアでは、差分ベクトルdAが非飛行運動を表す可能性がより高いことがある。差分ベクトルが、縦長楕円のみによって定義されたエリア内にある第3のエリアでは、差分ベクトルが飛行中運動を表す可能性がより高いことがある。両方の楕円の外側の第4のエリアでは、差分ベクトルdAが飛行中運動を表すか、非飛行運動を表すかは不明であり得る。差分加速度を飛行中エリアまたは非飛行中エリアに押し込むために、プロセッサは、推定差分ベクトル
【０１３９】
【数５５】
0005625067.tif 000056
【０１４０】
を経時的に累積または平均化し得る。たとえば、最後のN個の推定値にわたる累積値
【０１４１】
【数５６】
0005625067.tif 000057
【０１４２】
(または最後のN個の推定値の平均値
【０１４３】
【数５７】
0005625067.tif 000058
【０１４４】
)は、本明細書で説明する比較テストにおいて使用され得る。
【０１４５】
いくつかのテストは、推定差分ベクトルdA(または推定差分ベクトルのシーケンス)が何を表すかを定義し得る。たとえば、テストは、特定の推定差分が、(1)飛行中運動か非飛行中運動か、(2)飛行中運動か、非飛行運動か、または不定か、(3)非飛行運動でないか非飛行運動であるか、あるいは(4)飛行中運動か、非飛行運動か、または不明かを表し得ると結論し得る。たとえば、第1のテストは、差分ベクトルdAが不明のエリアの外部にあるかどうかを判断し、第2のテストは、差分ベクトルdAが飛行中楕円内にあるかどうかを判断する。
【０１４６】
図9Bでは、第1のテストは、加速度が第1のしきい値Th1を上回るかどうかを判断するために、(
【０１４７】
【数５８】
0005625067.tif 000059
【０１４８】
として表される)差分ベクトル
【０１４９】
【数５９】
0005625067.tif 000060
【０１５０】
の大きさを使用する。すなわち、
【０１５１】
【数６０】
0005625067.tif 000061
【０１５２】
である(たとえば、
【０１５３】
【数６１】
0005625067.tif 000062
【０１５４】
、ただし、1.0000は、1Gすなわち海面における重力のみによる加速度を表す)場合、テスト結果は正である。この正の結果は、差分加速度が飛行中運動によるものであり得ることを表す。第2のテストは、(
【０１５５】
【数６２】
0005625067.tif 000063
【０１５６】
として表される)差分ベクトルの水平成分
【０１５７】
【数６３】
0005625067.tif 000064
【０１５８】
の大きさに対する(
【０１５９】
【数６４】
0005625067.tif 000065
【０１６０】
として表される)差分ベクトルの垂直成分
【０１６１】
【数６５】
0005625067.tif 000066
【０１６２】
の大きさを、第2のしきい値Th2と比較する。たとえば、成分の比
【０１６３】
【数６６】
0005625067.tif 000067
【０１６４】
が第2のしきい値Th2と比較される。代替的に、第2のテストは、第1の成分の大きさと第2の成分のスケーリングされた値との間の比較であり得る。第2のしきい値Th2=1である場合、第2のテストは成分間のシンプルな比較
【０１６５】
【数６７】
0005625067.tif 000068
【０１６６】
であり得る。
【０１６７】
【数６８】
0005625067.tif 000069
【０１６８】
または
【０１６９】
【数６９】
0005625067.tif 000070
【０１７０】
である場合、テスト結果は正である。第1のテストおよび第2のテストが両方とも正の結果を生じる場合、モバイルデバイス100は、それが飛行中運動下にあることを示す。
【０１７１】
図9Cでは、第1のテストは、加速度が第1のしきい値Th1を上回るかどうかを判断するために、(
【０１７２】
【数７０】
0005625067.tif 000071
【０１７３】
として表される)差分ベクトル
【０１７４】
【数７１】
0005625067.tif 000072
【０１７５】
の大きさを使用する。すなわち、
【０１７６】
【数７２】
0005625067.tif 000073
【０１７７】
、たとえば、
【０１７８】
【数７３】
0005625067.tif 000074
【０１７９】
である。図9Aに関して上記で説明した第2のテストも実行される。同様に、第1のテストおよび第2のテストが両方とも正の結果を生じる場合、モバイルデバイス100は飛行中であると見なされる。
【０１８０】
図9Dでは、第1のテストは、図9Bに関して上記で説明したように実行される。第2のテストは、(
【０１８１】
【数７４】
0005625067.tif 000075
【０１８２】
として表される)推定差分ベクトルの横成分の大きさを、第2のしきい値Th2(たとえば、
【０１８３】
【数７５】
0005625067.tif 000076
【０１８４】
)と比較する。この第2のテストは、垂直成分はTh1よりも大きいが、横成分はTh2未満であるときに行われるように、飛行中判断を限定する。
【０１８５】
上記で説明した第1および第2のテストは必ずしも順番に実行されるわけではない。たとえば、説明した第2のテストは、説明した第1のテストの前に、またはそれと同時に実行され得る。代替的に、飛行中判断を行うために2つのテストのうちの単一のテストのみが使用され得る。たとえば、第1のテストが単独で正の結果(たとえば、
【０１８６】
【数７６】
0005625067.tif 000077
【０１８７】
>Th1)を生じる場合、モバイルデバイス100は飛行中であると見なされる。代替的に、第2のテストが単独で正の結果(たとえば、
【０１８８】
【数７７】
0005625067.tif 000078
【０１８９】
)を生じる場合、モバイルデバイス100は飛行中であると見なされる。
【０１９０】
図10A、図10Bおよび図11に、本発明のいくつかの実施形態による、モバイルデバイスにおける飛行中検出のためのモジュールを示す。
【０１９１】
図10Aにおいて、加速度計110は、飛行中計算論理400のいくつかのモジュールにサンプルを与え、飛行中インジケータ信号を生じる。飛行中計算論理400は、平均化器410と、遅延Tユニット420と、差分ユニット430と、重力方向推定器440と、ベクトル分割器450と、コンパレータ460および470と、論理ゲート480とを含む。2つ以上のテストではなく、ただ1つのテストが実行された場合、コンパレータ460および470ならび論理ゲート480は、単一の(テストAのための)コンパレータ460または(テストBのための)コンパレータ470と置き換えられ得る。
【０１９２】
加速度計110は、加速度計サンプル200{...,ak-2,ak-1,ak,...}を平均化器410に与える。場合によっては、これらの生加速度計サンプル200は、雑音の多い生加速度計サンプル200である。平均化器410は平均化サンプルAi220を与える。場合によっては、平均化器410は加速度計110に組み込まれ、加速度計110は一連の平均化サンプル{Ai,Ai-1}220を与える。平均化器410は、2つの加速度インジケータ{Ai,Ai-1}220を形成するために、2つ以上の連続加速度計測定値の第1のシーケンス{aj,aj-1,aj-2,...}200を加算するための、および2つ以上の連続加速度計測定値の第2のシーケンス{ak,ak-1,ak-2,...}200を加算するための手段として働き得る。物理的に、平均化器410は、加速度計110の構成要素であるかまたは加速度計110に一体化され得るか、別々のハードウェア構成要素であり得るか、あるいはプロセッサ300(たとえば、論理演算装置(ALU)、マイクロプロセッサまたはマイクロコントローラ)上で動作するルーチンであり得る。平均化器410は、加算器、除算器をもつ加算器、またはシフトレジスタをもつ加算器であり得る。したがって、加速度計110および/または平均化器410は、2つの加速度インジケータ{Ai,Ai-1}220を与えるための手段である。たとえば、2つの加速度インジケータ{Ai,Ai-1}220を与えるための手段は、加速度インジケータ(Ai)ごとにシーケンス加速度計サンプル200{...,ak-2,-1,ak,...}を加算するためにプロセッサ300上で動作するソフトウェア加算器であり得る。2つの加速度インジケータ{Ai-1,Ai}220を与えるための手段はまた、加速度計110を含み得る。個々の平均化サンプルAi220間の期間は(ti-ti-1)であり、それは一般に(tk-tk-1)である個々の生サンプルak200間の期間の大きさ以上である。たとえば、平均化サンプルAi220間の時間は5秒であり得、生サンプルak200間の時間は33msであり得る。
【０１９３】
この実施形態では、平均化器410はまた、加速度計サンプル200を重力方向推定器440に与える。重力方向推定器440は、重力の方向(重力方向推定値
【０１９４】
【数７８】
0005625067.tif 000079
【０１９５】
)を表すベクトルを判断する。代替的に、重力方向推定器440は、生サンプル200ではなく平均化サンプル220を受け付ける。最も簡単な形態では、重力方向推定器440は、uG(たとえば、
【０１９６】
【数７９】
0005625067.tif 000080
【０１９７】
または
【０１９８】
【数８０】
0005625067.tif 000081
【０１９９】
、あるいは
【０２００】
【数８１】
0005625067.tif 000082
【０２０１】
または
【０２０２】
【数８２】
0005625067.tif 000083
【０２０３】
としてスケーリングされる)を表すために、2つの直近の生サンプル(akまたはak-1)あるいは2つの直近の平均化サンプル(AiまたはAi-1)のうちの所定の1つを使用する。
【０２０４】
代替的に、重力方向推定器440は、直近のサンプルのうちの2つ(以上)を使用する(たとえば、
【０２０５】
【数８３】
0005625067.tif 000084
【０２０６】
)。代替的に、重力方向推定器440は、
【０２０７】
【数８４】
0005625067.tif 000085
【０２０８】
を生成するために3タップ以上のFIRフィルタまたは、2タップ以上のIIRフィルタを使用する。重力方向推定器440の出力値は、重力の方向の推定値を表すベクトル(
【０２０９】
【数８５】
0005625067.tif 000086
【０２１０】
または
【０２１１】
【数８６】
0005625067.tif 000087
【０２１２】
)である。
【０２１３】
平均化器410からの出力値は、遅延Tユニット420に供給され、遅延T=(ti-ti-1)である。遅延Tユニット420は、平均化器410の前の出力値を保持するためのメモリロケーション、レジスタ、ソフトウェア変数などであり得る。いくつかの実施形態では、平均化サンプル間の期間は遅延Tである。平均化サンプル220間のこの遅延および時間は、1〜30秒の間(たとえば、5秒)など、10,000秒未満であり得る。いくつかの実施形態では、遅延Tユニット420は平均化器410内に組み込まれている。
【０２１４】
上記で説明したように、生センサ測定値200および得られた平均センサ測定値220は、重力による加速度を含む、モバイルデバイスが受けるすべての加速度を含む。モバイルデバイスが飛行中であるかどうかを判断するために、飛行中計算論理400は、重力によるこの加速度の推定値を削除する。本明細書で使用する場合、Ai=(AG+dA)であり、Aiは、(平均化後の)測定された総加速度であり、AGは重力ベクトルであり、dAは、重力を含まない、モバイルデバイスが受ける加速度である。一般に、重力AGによる加速度の実際の方向は、不明であり、近似されなければならない。したがって、Aiはまた、和(
【０２１５】
【数８７】
0005625067.tif 000088
【０２１６】
)、または同等に
【０２１７】
【数８８】
0005625067.tif 000089
【０２１８】
に等しく、
【０２１９】
【数８９】
0005625067.tif 000090
【０２２０】
は重力ベクトルAGの近似であり、
【０２２１】
【数９０】
0005625067.tif 000091
【０２２２】
は重力ベクトルAGなしの加速度の近似である。
【０２２３】
差分ユニット430は、ベクトル演算
【０２２４】
【数９１】
0005625067.tif 000092
【０２２５】
を使用してAiから
【０２２６】
【数９２】
0005625067.tif 000093
【０２２７】
を削除することによって
【０２２８】
【数９３】
0005625067.tif 000094
【０２２９】
を判断する。差分ユニット430は、ハードウェアおよび/またはソフトウェアで実装され得る。たとえば、差分ユニット430を実装するための手段は、論理演算装置(ALU)、マイクロプロセッサ、マイクロコントローラなど、プロセッサ300において動作するソフトウェアまたはファームウェア減算演算であり得る。ベクトルAGは一般に不明であるので、ベクトルは
【０２３０】
【数９４】
0005625067.tif 000095
【０２３１】
によって近似され、ベクトル
【０２３２】
【数９５】
0005625067.tif 000096
【０２３３】
はAi-1であるかまたは上記で説明したとおりである。図示の事例では、差分ユニット430は非重力加速度を
【０２３４】
【数９６】
0005625067.tif 000097
【０２３５】
のように近似し、したがって
【０２３６】
【数９７】
0005625067.tif 000098
【０２３７】
は
【０２３８】
【数９８】
0005625067.tif 000099
【０２３９】
を生じ、ただし、Aiは現在の測定値であり、Ai-1はAGを近似するために使用される前の測定値である。
【０２４０】
一般に、非重力加速度
【０２４１】
【数９９】
0005625067.tif 000100
【０２４２】
は、モバイルデバイスの本体座標系に関してXYZカーディナル方向の各々の成分を用いて、3次元ベクトルによって
【０２４３】
【数１００】
0005625067.tif 000101
【０２４４】
として表され得る。必要な場合、飛行中計算論理400は、本体座標系と、ローカル座標系との間で変換するために変換行列を使用し得、ローカル座標系は、(重力加速度AGに一致する)垂直成分と、(水平飛行に一致する)横成分と、(重力と横成分の両方に直角な)ラテラル成分とを含む。ローカル座標系では、非重力加速
【０２４５】
【数１０１】
0005625067.tif 000102
【０２４６】
は
【０２４７】
【数１０２】
0005625067.tif 000103
【０２４８】
または
【０２４９】
【数１０３】
0005625067.tif 000104
【０２５０】
として表され得、ただし、
【０２５１】
【数１０４】
0005625067.tif 000105
【０２５２】
は横加速度を表し、
【０２５３】
【数１０５】
0005625067.tif 000106
【０２５４】
はラテラル加速度を表し、2つのベクトルの和は重力推定値に直交する水平加速度または非重力加速度を表し、
【０２５５】
【数１０６】
0005625067.tif 000107
【０２５６】
として表され得る。
【０２５７】
ベクトル分割器450は、非重力加速度推定値
【０２５８】
【数１０７】
0005625067.tif 000108
【０２５９】
と重力方向推定値
【０２６０】
【数１０８】
0005625067.tif 000109
【０２６１】
とを受け付ける。ベクトル分割器450は、重力加速度の推定方向に基づいて、差分加速度(dA)を、推定水平加速度
【０２６２】
【数１０９】
0005625067.tif 000110
【０２６３】
と推定垂直加速度
【０２６４】
【数１１０】
0005625067.tif 000111
【０２６５】
とを含む直交成分に分割するための手段として働く。すなわち、ベクトル分割器450は、ベクトル
【０２６６】
【数１１１】
0005625067.tif 000112
【０２６７】
を、
【０２６８】
【数１１２】
0005625067.tif 000113
【０２６９】
に平行である(推定重力に一致する)第1の成分
【０２７０】
【数１１３】
0005625067.tif 000114
【０２７１】
と、
【０２７２】
【数１１４】
0005625067.tif 000115
【０２７３】
に直交する(推定重力に直角である)第2の成分
【０２７４】
【数１１５】
0005625067.tif 000116
【０２７５】
とに分割する。ベクトル分割器450は、モバイルデバイス100が飛行中であるか、および/または飛行中でないかを判断するための1つまたは複数のテストを実行するために使用される
【０２７６】
【数１１６】
0005625067.tif 000117
【０２７７】
および
【０２７８】
【数１１７】
0005625067.tif 000118
【０２７９】
を与える。
【０２８０】
有意な非重力加速度を構成するために加速度dAがしきい値を十分に上回るかどうかを判断するための第1のテスト(テストA)に、第1のコンパレータ460が使用される。第1のコンパレータ460は、ハードウェアまたはソフトウェアで実装され得る。たとえば、第1のコンパレータ460は、プロセッサ300において動作する比較演算子であり得る。第1のコンパレータ460は、第1の比較結果またはテストAの判定を判断するために、垂直加速度を含む加速度を第1のしきい値(Th1)と比較するための手段として働く。すなわち、第1のコンパレータ460は、
【０２８１】
【数１１８】
0005625067.tif 000119
【０２８２】
の大きさをしきい値Th1と比較する。
【０２８３】
【数１１９】
0005625067.tif 000120
【０２８４】
である場合、テストAは正の判定を生じる。
【０２８５】
有意な垂直加速度を構成するために加速度
【０２８６】
【数１２０】
0005625067.tif 000121
【０２８７】
が十分に垂直であるかどうかを判断するための第2のテスト(テストB)に、第2のコンパレータ470が使用される。第1のコンパレータ460と同様に、第2のコンパレータ470は、ハードウェアまたはソフトウェアで実装され得る。第2のコンパレータ470は、第2の比較結果またはテストBの判定を判断するために直交成分
【０２８８】
【数１２１】
0005625067.tif 000122
【０２８９】
のうちの少なくとも1つを第2のしきい値(Th2)と比較するための手段として働く。第2のコンパレータ470は、
【０２９０】
【数１２２】
0005625067.tif 000123
【０２９１】
の大きさと
【０２９２】
【数１２３】
0005625067.tif 000124
【０２９３】
の大きさとを比較する。
【０２９４】
【数１２４】
0005625067.tif 000125
【０２９５】
である場合、テストBは正の判定を生じる。他の実施形態では、第2のしきい値Th2は、
【０２９６】
【数１２５】
0005625067.tif 000126
【０２９７】
の大きさと
【０２９８】
【数１２６】
0005625067.tif 000127
【０２９９】
の大きさとの比と比較される。
【０３００】
【数１２７】
0005625067.tif 000128
【０３０１】
である場合、テストBは正の判定を生じる。
【０３０２】
ゲート480は、両方のテストからの結果を受信し、得られた飛行中インジケータ信号を与える。ゲート480は、第1および第2の比較結果に基づいて飛行中インジケータを設定するための手段として働く。入力値(テストAの判定とテストBの判定とを表す比較結果)の極性と、出力値(飛行中インジケータ)の所望の極性とに応じて、ゲート480は、1つまたは複数のインバータを用いたまたは用いないANDゲート、ORゲート、NANDゲートまたはNORゲートを用いて実装され得る。ゲート480は、ハードウェアまたはソフトウェアで(たとえば、プロセッサ上で動作するファームウェア中の算術式として)実装され得る。
【０３０３】
図示のように、上記で説明したモジュールは、個々に、または組合せで、ソフトウェア命令として実装され得る。これらのソフトウェア命令は、後でプロセッサ300上で実行するために、プログラムコードとしてコンピュータ可読媒体上に保存され得る。さらに、モバイルデバイス100は、プロセッサ300と、メモリ120を含み得、メモリ120は、これらのモジュールのうちの1つまたは複数を実行するためのこれらのソフトウェア命令を含む。
【０３０４】
同様に、図10Bにおいて、加速度計110は、サンプルを飛行中計算論理400に与え、飛行中計算論理400は飛行中インジケータ信号を生成する。平均化器410と、遅延Tユニット420と、差分ユニット430と、ベクトル分割器450と、第1および第2のコンパレータ460および470と、論理ゲート480とに加えて、飛行中計算論理400はまた、低域フィルタ490を含む。平均化器410、遅延Tユニット420、差分ユニット430、第1および第2のコンパレータ460および470、ならびに論理ゲート480は、図10Aに関して上記で説明した対応するモジュールと同等である。図10Aの重力方向推定器440は、平均化器410からベクトル分割器450への平均化サンプルAi220のタップとともに実装される。ベクトル分割器450は、単位ベクトル
【０３０５】
【数１２８】
0005625067.tif 000129
【０３０６】
ではなく、ベクトルAiが使用されるので、上記で説明したものと同じ演算を、ただし適切なスケーリングを用いて実行する。ゲート480からの出力値は、フィルタ処理されていない飛行中インジケータ信号である。低域フィルタ490は、フィルタ処理された飛行中インジケータを生成するためにこれらの値のシーケンスを受け付ける。いくつか実施形態では、低域フィルタ490は、たとえば、1/(ti-ti-1)のレートで、入力値ごとに1つの出力値を与える。他の実施形態では、低域フィルタ490は、飛行中と非飛行中との間の変化が判断されるたびに1つの出力値を与える。他の実施形態では、低域フィルタ490は、飛行中指示の要求が作成されるたびに1つの出力値を与える。
【０３０７】
図11に、加速度計110と、飛行中計算論理400と、制御論理140と、メモリ120と、ディスプレイ130と、スタンバイ回路150と、タイマー160とを含むモバイルデバイス100の様々なモジュールと機能構成要素とを示す。飛行中計算論理400および制御論理140は、両方とも、プロセッサ300上で動作するソフトウェアルーチンとして(たとえば、汎用または専用ハードウェア上に、あるいは、ソフトウェアとハードウェアとの組合せで)実装され得る。
【０３０８】
飛行中計算論理400は、加速度計110から平均化サンプルAiを受け付ける。図示の事例では、加速度計110は生サンプル200ではなく平均化サンプル220を飛行中計算論理400に与える。代替的に、加速度計110は生サンプル200を飛行中計算論理400に与え得、飛行中計算論理400は、上記で説明したように平均化を実行し得る。飛行中計算論理400は飛行中インジケータ信号を制御論理140に与える。
【０３０９】
レジスタ値、メモリ中のロケーション、またはハードウェアライン上の2値信号レベルであり得る飛行中インジケータ信号は、いくつかの目的のうちの1つに使用され得る。たとえば、制御論理140は、飛行中インジケータ信号をメモリ120にロギングメッセージとして保存し得る。ロギングメッセージは、モバイルデバイス100が飛行中であったときを追跡し、判断するために、後でメモリ120から抽出され得る。代替または追加として、制御論理140は、モバイルデバイスの状態に関する通知をモバイルデバイスのユーザに与えるために、インジケータをLCD、LEDまたは他のユーザディスプレイなどのディスプレイ130に送り得る。制御論理140は、飛行中インジケータ信号の値に基づいて回路150への電力を制御し得る。たとえば、制御論理140は、飛行中インジケータ信号が、モバイルデバイス100が飛行中であることを示すとき、何らかの回路を電源投入し得、および/または飛行中インジケータ信号が、モバイルデバイス100が飛行中でないことを示すとき、何らか回路を電源投入し得る。同様に、制御論理140は、飛行中インジケータ信号が、モバイルデバイス100が飛行中であることを示すとき、何らか回路を電源切断し得るか、またはそれを低電力状態にし得る。たとえば、制御論理140は、飛行中インジケータ信号が、モバイルデバイス100が飛行中であることを示すとき、セルラー無線トランシーバおよび/またはGPS受信機を電源切断するかまたは抑止し得、および/または信号が、モバイルデバイス100が飛行中でないことを示すとき、電源を回復し得る。さらに、制御論理140は、飛行中インジケータ信号の値に基づいてタイマー160中のタイマーを開始、停止、クリアまたはリセットし得るか、あるいは現在飛行中ステータスを飛行中計算論理400に問い合わせ得る。
【０３１０】
図12に、本発明のいくつかの実施形態による、モバイルデバイスにおける飛行中検出のための流れ図を示す。流れ図中のステップは、プロセッサ300上で動作するソフトウェアモジュールまたは演算であり得る。
【０３１１】
500において、飛行中計算論理400は、2つの加速度インジケータ{Ai-1,Ai}を与え、各々は対応する加速度計測定値{ak,ak-1,ak-2,...}の別々の和である。
【０３１２】
510において、飛行中計算論理400は、時間ti-1から時間tiまでの加速度の変化を近似するために、2つの加速度インジケータ
【０３１３】
【数１２９】
0005625067.tif 000130
【０３１４】
間の差分加速度を判断する。
【０３１５】
520において、飛行中計算論理400は、重力加速度の推定方向に基づいて、差分加速度
【０３１６】
【数１３０】
0005625067.tif 000131
【０３１７】
を、推定水平加速度
【０３１８】
【数１３１】
0005625067.tif 000132
【０３１９】
と推定垂直加速度
【０３２０】
【数１３２】
0005625067.tif 000133
【０３２１】
とを含む直交成分に分割し、ただし、重力推定値は
【０３２２】
【数１３３】
0005625067.tif 000134
【０３２３】
であり、
【０３２４】
【数１３４】
0005625067.tif 000135
【０３２５】
は、1つまたは複数の加速度インジケータ{Ai-1,Ai}の関数である。
【０３２６】
530において、飛行中計算論理400は、有意な非重力加速度を構成するために、加速度
【０３２７】
【数１３５】
0005625067.tif 000136
【０３２８】
がしきい値を十分に上回るかどうかを判断する。いくつかの実施形態では、第1のコンパレータ460は、第1の比較結果(テストA)を判断するために、差分加速度(
【０３２９】
【数１３６】
0005625067.tif 000137
【０３３０】
または
【０３３１】
【数１３７】
0005625067.tif 000138
【０３３２】
のいずれか)を第1のしきい値(Th1)と比較する。
【０３３３】
540において、飛行中計算論理400は、有意な垂直加速度を構成するために、加速度
【０３３４】
【数１３８】
0005625067.tif 000139
【０３３５】
が十分に垂直であるかどうかを判断する。いくつかの実施形態では、第2のコンパレータ470は、第2の比較結果(テストB)を判断するために、直交成分
【０３３６】
【数１３９】
0005625067.tif 000140
【０３３７】
のうちの少なくとも1つを第2のしきい値(Th2)と比較する。Th2=1である場合、比較は直交成分
【０３３８】
【数１４０】
0005625067.tif 000141
【０３３９】
の大きさ間の比較であり得る。
【０３４０】
550において、飛行中計算論理400は、第1および第2の比較結果に基づいて飛行中インジケータを設定する。
【０３４１】
560において、飛行中計算論理は、メモリへの書込み、回路の電力状態の変更、ユーザへのメッセージの表示、タイマーへの作用などの動作を実行するために飛行中インジケータを使用する。
【０３４２】
モバイルデバイスの実施形態は、プロセッサとメモリとを含み、メモリは、モバイルデバイスが飛行中であるかどうかを検出するためのソフトウェア命令を含む。さらに、このソフトウェアは、コンピュータ可読媒体上にプログラムコードとして記憶され得る。
【０３４３】
開示された態様の前述の説明は、当業者が本開示を実施または使用できるようにするために提供されるものである。これらの態様への様々な修正は当業者には容易に明らかとなり、本明細書で定義した一般原理は、本開示の趣旨または範囲から逸脱することなく他の態様に適用され得る。
【符号の説明】
【０３４４】
100  モバイルデバイス
110  加速度計
120  メモリ
130  ディスプレイ
140  制御論理
150  スタンバイ回路
160  タイマー
200  生加速度計サンプル
220  平均化サンプル
220  加速度インジケータ
300  プロセッサ
400  飛行中計算論理
410  平均化器    420  遅延Tユニット
430  差分ユニット
440  重力方向推定器
450  ベクトル分割器
460  第1のコンパレータ
470  第2のコンパレータ
480  論理ゲート
490  低域フィルタ
【図１Ａ】
0005625067.tif 000173
【図１Ｂ】
0005625067.tif 000174
【図１Ｃ】
0005625067.tif 000175
【図２】
0005625067.tif 000176
【図３】
0005625067.tif 000177
【図４】
0005625067.tif 000178
【図５】
0005625067.tif 000179
【図６】
0005625067.tif 000180
【図７】
0005625067.tif 000181
【図８Ａ】
0005625067.tif 000182
【図８Ｂ】
0005625067.tif 000183
【図９Ａ】
0005625067.tif 000184
【図９Ｂ】
0005625067.tif 000185
【図９Ｃ】
0005625067.tif 000186
【図９Ｄ】
0005625067.tif 000187
【図１０Ａ】
0005625067.tif 000188
【図１０Ｂ】
0005625067.tif 000189
【図１１】
0005625067.tif 000190
【図１２】
0005625067.tif 000191