JP5318750B2 - センサーインタフェース並びにセンサーインタフェースに関連する方法および装置 - Google Patents

センサーインタフェース並びにセンサーインタフェースに関連する方法および装置 Download PDF

Info

Publication number
JP5318750B2
JP5318750B2 JP2009504508A JP2009504508A JP5318750B2 JP 5318750 B2 JP5318750 B2 JP 5318750B2 JP 2009504508 A JP2009504508 A JP 2009504508A JP 2009504508 A JP2009504508 A JP 2009504508A JP 5318750 B2 JP5318750 B2 JP 5318750B2
Authority
JP
Japan
Prior art keywords
data
sensor
satisfy
request
interface
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.)
Expired - Fee Related
Application number
JP2009504508A
Other languages
English (en)
Other versions
JP2009533906A (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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2009533906A publication Critical patent/JP2009533906A/ja
Application granted granted Critical
Publication of JP5318750B2 publication Critical patent/JP5318750B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Testing Or Calibration Of Command Recording Devices (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Description

優先権の主張
(35U.S.C.§119に基づく優先権の主張)
本特許出願は、ここでの譲受人に譲渡され、参照によりここに明示的に組み込まれる、2006年4月7日に出願された「センサーAPI:システム要求仕様書AMSS/DMSS/BREW(Sensor API: System Requirements Specification AMSS/DMSS/BREW)」と題された米国特許仮出願第60/790,252号の優先権を主張する。
背景
(分野)
本発明は、一般的には、センサーインタフェースに関し、より詳細には、部分的にまたは完全にセンサーに依存しないデータ要求をハンドリング(handling)することのできる拡張可能なセンサーインタフェース(extensible sensor interface)に関する。
(背景)
ハンドヘルドモバイル装置(handheld mobile devices)(以下、「モバイル装置(mobile devices)」)が1つまたはそれ以上の物理センサー(physical sensors)を内蔵することが普及しつつある。一例として、いくつかの物理センサー(a number of physical sensors)を内蔵することができるモバイル装置の種類は、電話、スマートフォン、携帯情報端末(PDA)、ゲームおよびその他の機器のコントローラ、腕時計、および、バイオフィードバック装置を含む。これらの装置が内蔵することができる物理センサーの種類は、限定はされないが、気圧センサー、加速度計、磁場センサー(例えば、コンパス)、ジャイロスコープ、および、バイオメトリックセンサーを含む。ここに定義されるように、「物理センサー」は、物理的現象を測定してこの物理的現象の量を表現する出力信号(典型的には、ディジタル電気信号)を提供することのできる何らかのセンサーである。物理的現象は、例えば、温度、圧力、方向、輝度、または、心拍数であってもよい。
より多くの多様な物理センサーからのデータを必要とするアプリケーションをモバイル装置に提供したいという要望が増大するにつれて、また、物理センサーの種類、型式、および、構成が増加するにつれて、異なるハードウェアプラットフォーム(例えば、異なる組のセンサーを内蔵するプラットフォーム)を有するモバイル装置に移植することのできるアプリケーションをアプリケーション開発者が開発することがより難しくなりつつある。また、その一方で、多種多様なアプリケーションをサポートすることのできるハードウェアプラットフォームをシステムエンジニアが提供することもより難しくなりつつある。その結果として、特定のモバイル装置のための感知能力とアプリケーションの特異的な組み合わせを定義するためにシステムエンジニアおよびアプリケーション開発者が協力して作業することが一般的になっている。いったん開発されると、感知能力とアプリケーションのこの特異的な組み合わせは、改善された装置または次世代の装置を開発するときにはほとんど使用されることはなく、感知能力とアプリケーションのこの特異的な組み合わせが開発された装置は、新しい感知能力とアプリケーションを内蔵するようにアップグレードすることができないことがある。したがって、より柔軟性のある拡張可能なセンサーインタフェースが必要とされている。
[概要]
ここに開示される実施形態は、いくつかのセンサー入力(a number of sensor inputs)およびいくつかのクライアント入力(a number of client inputs)を備えたセンサーインタフェースを提供することによって、上述されたニーズに対処するものであり、いくつかのクライアント入力は、いくつかのクライアント(a number of clients)からいくつかのデータ要求(a number of data requests)を受信するように環境設定されており(configured)、そして、いくつかのデータ要求は、特定の種類のデータを取り込むときに使用されるべき特定の物理センサーを識別することなく、戻されるべき特定の種類のデータを指定する少なくとも1つのデータ要求を含む。また、センサーインタフェースは、プロセッサーを備え、このプロセッサーは、i)いくつかのデータ要求を満たすにはどのセンサーデータを使用することができるか(what sensor data can be used)を決定し、ii)いくつかの物理センサーからセンサーデータを受信するように、センサー入力の中のいくつか(ones of the sensor inputs)を環境設定し、および/または、iii)可能であれば、受信されたセンサーデータを用いていくつかのデータ要求を満たすように、環境設定される。
[詳細な説明]
「例示的な)」という用語は、ここでは、「例(example)、インスタンス(instance)、または、例証(illustration)として機能している」を意味するのに使用される。「例示的な」としてここに説明されるいずれの実施形態も、必ずしもその他の実施形態よりも好ましいものまたは有利なものであると解釈されるべきではない。
この記載の「背景」において説明された状況において、図1は、いくつかのセンサー入力106と、いくつかのクライアント入力102と、プロセッサー104とを備えたセンサーインタフェース100を示す。クライアント入力102は、いくつかのクライアント108、110、112からいくつかのデータ要求を受信するように環境設定され、また、プロセッサー104は、1)いくつかのデータ要求を満たすためにはどのセンサーデータを使用することができるかを決定し、2)いくつかの物理センサー114、116、118、120からセンサーデータを受信するように、センサー入力106の中のいくつかを環境設定し、かつ、3)可能であれば、受信されたセンサーデータを用いて、いくつかのデータ要求を満たす、ように環境設定される。
ここにおいて定義されるように、「いくつかの(a number of)」は、「1つまたはそれ以上の(one or more)」を意味し、また、「複数の(a plurality of)」は、「2つまたはそれ以上の(two or more)」を意味する。前述の段落で説明された、いくつかのセンサー入力106、いくつかのクライアント入力102、いくつかのクライアント108、110、112、いくつかのデータ要求、および、いくつかの物理センサー114、116、118、120のそれぞれは、複数のこれらの要素をさまざまに(variously)含んでもよい。
センサーインタフェース100からデータを要求する「クライアント(clients)」108、110、112は、様々な形態を有してもよく、また、限定はされないが、いくつかのソフトウェアベースまたはファームウェアベースのアプリケーション、いくつかのユーザアプリケーションまたはシステムアプリケーション、または、装置オペレーティングシステムを含んでもよい。注意すべきことには、クライアント108、110、112は、ここでは、場合によっては、「アプリケーション(applications)」(上述したように、これらのアプリケーションには、様々な種類が存在しうる)と呼ばれることもある。クライアント108、110、112によって生成されるデータ要求の一部または全部(Some or all of the data requests)は、特定の種類のデータを取り込むときに使用されるべき特定の物理センサー114、116、118、120を識別することなく、センサーインタフェース100によって戻されるべき特定の種類のデータを指定する(specify)ことができる。したがって、例えば、クライアント108は、直線運動データを取り込むときに使用されるべきセンサーの種類または型式を指定することなく、モバイル装置の直線運動データを要求してもよい。あるいは、クライアント110は、方位データを取り込むときに使用されるべきセンサーの種類または型式を指定することなく、モバイル装置の方位データを要求してもよい。これらの種類のセンサー非依存型要求(または、少なくとも部分的にセンサーに依存しない要求)は、センサーインタフェース100がより効率的に使用されるのを可能にする。なぜなら、これらのセンサー非依存型要求は、プロセッサー104がどのデータ要求を満たすのにどのセンサーデータを使用することができるかを決定するときにプロセッサー104をそれほど制約することがないからである。以下は、この点をよりよく説明する一部の例(some examples)である。
第1に、特定の組のセンサー種類およびセンサー型式を有する装置を考察し、これらのセンサーは、特定の組のセンサーデータを提供することができるものである。従来、アプリケーションは、1つまたはそれ以上の装置の特定のセンサーをサポートするためのアプリケーションが開発されていなければ、装置のセンサーデータを得ることまたは使用することができなかった。これは、装置がアプリケーションによって必要とされる特定の「種類のデータ」を取り込むことができたとしても、アプリケーションが開発されている特定の「種類および型式のセンサー」によってこのデータが提供されない限り、アプリケーションはこのデータを使用することができないことを意味する。また、これは、アプリケーション開発者がアプリケーションが様々な装置と互換性のあるものであることを望むならば、このアプリケーション開発者はアプリケーションに多数の異なるセンサー種類および型式をサポートさせなければならないことを意味する。しかしながら、アプリケーションが、センサーインタフェース100とともにうまく動作するように開発されるならば、このアプリケーションは、特定の種類のデータをただ単に要求し、かつ、センサーインタフェースに、1)要求を満たすためにどのセンサーデータを使用することができるかを決定させ、2)センサーデータを受信させ、かつ、3)要求を満たさせてもよい。
第2に、第1の組のセンサーを用いて当初は設計されたが、設計変更のために、第2の組のセンサーを内蔵するように再環境設定される(re-configured)装置を考察する。あるいは、アップグレード可能なセンサーの組を備えた装置を考察する。従来、装置のセンサーの組における変更は、装置のアプリケーションへの1つまたはそれ以上のパッチを必要とした。しかしながら、アプリケーションが、ただ単に特定の種類のデータを要求するならば、ファームウェアまたはソフトウェアのアップグレードは、恐らくは、センサーインタフェース100から分離され得る(もしアップグレードがすこしでも必要であれば)。
第3に、無線通信インタフェースを備えた装置を考察する。センサーインタフェース100を備えた装置を提供することによって、また、センサーインタフェース100がインストールされた装置の外部に存在する物理センサーを動的に発見するようにプロセッサー104を環境設定することによって(例えば、無線インタフェースを介して)、装置は、1)装置の製造業者によってそれまでに意図されていないセンサーへのアクセス、2)装置内に内蔵するにはあまりにも大きすぎるまたは費用がかかりすぎるセンサーへのアクセス、あるいは、3)より小さい部分集合を構成する装置のユーザだけに有効なセンサーへのアクセスを、提供されることができる。
センサーインタフェース100は、様々な形で使用されてもよいが、1つの例示的な方法が、図2に示される。方法200(図2)によれば、センサーインタフェース100のクライアント入力102は、いくつかのクライアント108、110、112からデータ要求を受信してもよい(ブロック202)。これまでに説明されたように、データ要求は、特定の種類のデータを取り込むときに使用されるべき特定の物理センサー114、116、118、120を識別することなく、戻されるべき特定の種類のデータを指定する少なくとも1つのデータ要求を含んでもよい。そして、センサーインタフェース100は、データ要求を満たすためにどのセンサーデータを使用することができるかを決定し、センサーインタフェース100が内蔵されている機器(例えば、装置)が現時点において(currently)センサーデータを受信することのできるいくつかの物理センサー114、116、118、120を動的に発見する(ブロック204、206)。随意的に(optionally)、物理センサー114、116、118、120の中の一部又はすべて(some or all)が、イネーブル状態にされ(enabled)、あるいは、環境設定されてもよい(ブロック208、210)。一実施形態においては、現在の組のデータ要求(current set of data requests)を満たすのに必要であると決定された物理センサーだけが、イネーブル状態にされかつ環境設定される。
データ要求を満たすためにはどのセンサーデータが必要であるかを決定した後、かつ、どのセンサー108、110、112を利用できるかを発見した後、方法200は、利用できるセンサー114、116、118、120の中の一部または全部からセンサーデータを受信し、また、可能であれば、受信されたセンサーデータを用いて、データ要求を満たす。
注意すべきことには、図2に示される方法200のステップは、異なる順序で実行されてもよく、また、一部のステップ(some steps)は、同時にまたは反復して実行されてもよい。
ある場合においては(in some cases)、方法200は、1つまたはそれ以上の物理センサーから受信された生センサーデータがデータ要求を満たすために変換されなければあるいは組み合わせられなければ、1つまたはそれ以上の物理センサー114、116、118、120から受信された生センサーデータはデータ要求を満たすことができないことを決定してもよい。この点において、センサーインタフェース100は、1つまたはそれ以上の「仮想センサー(virtual sensor)」122、124を提供するようにプログラムされてもよい。ここに定義されるように、「仮想センサー」は、1つまたはそれ以上の物理センサー(one or more physical sensors)114、116、118、120によって得られたセンサーデータを受信し、このセンサーデータを変換しあるいは組み合わせ、そして、出力を提供するセンサーである。一例として、出力は、1)物理現象の量を表現し、2)物理現象の判断または評価(例えば、明るいまたは暗い)を提供し、あるいは、3)事象の発生を通知する(signify)。センサーデータの例示的な「変換」および「組み合わせ」は、1)第2のセンサーデータを補正するために(例えば、第1のセンサーデータによって量を表現された状態の存在下において、第2のセンサーデータの精度を改善するために)第1のセンサーデータを使用すること、2)複数の物理センサー114、116、118、120からの出力を平均すること、3)1つまたはそれ以上の物理センサー114、116、118、120からの出力を正規化すること、4)センサーデータの単位(the units of sensor data)を変換すること、あるいは、5)1つまたはそれ以上の物理センサー114、116、118、120の出力に基づいて判断または評価(ratings)をおこなうことを含む。また、センサーデータは、非センサー源から取り込まれたデータに基づいて、変換されあるいは組み合わせられてもよい。例えば、複数のセンサー指示値が平均される場合、現在時刻が、平均値からある特定の指示値を棄却するのに使用されてもよい。以下は、センサーデータがセンサーインタフェース100の仮想センサー122、124によってどのように変換されあるいは組み合わせられるかを説明する一部の具体的な例である。
仮想センサーの1つの例は、傾斜補正コンパスである。仮想コンパスは、3次元(3D)加速度計からの傾斜データとともに、「実」物理コンパスから生磁針向首方向データを受信してもよい。そして、現時点において利用可能な数学アルゴリズムを用いて、仮想センサーは、物理コンパスの傾斜を補償するのに加速度計データを使用することができる。
仮想センサーの別の例は、温度補正圧力センサーであり、仮想センサーは、圧力指示値を得る物理センサーの温度依存特性のために、圧力指示値を補正するのに感知された温度を使用する。
仮想センサーのさらなる例は、高度センサーである。例えば、仮想高度センサーは、気圧指示値を受信し、そして、対応する高度を推定するのにルックアップテーブルまたは数学アルゴリズムを使用してもよい。
仮想センサーのさらに別の例は、直線運動および方位センサーである。例示的な直線運動および方位センサーは、「センサーに基づいた方位システム(Sensor-Based Orientation System)」と題された米国特許出願第11/686,945号に記載されており、これは、参照によりその全体がここに組み込まれる。
仮想センサーのまたさらなる例は、振動センサーであり、この振動センサーは、加速度計データを受信し、装置に加えられる振動の量を表現するのにこの加速度計データを使用する。
仮想センサーの部分集合(subset)は、「事象センサー(event sensors)」である。仮想事象センサーの1つの例は、「ゼロG(zero G)」センサーまたは落下検出センサーである。このようなセンサーは、加速度計からセンサーデータを受信し、このセンサーデータが落下検出しきい値を越えていないかどうかを決定するためにこのセンサーデータを監視し、そして、装置が落下したかどうかを指示する出力を提供してもよい。その他の仮想「事象センサー」は、例えば、装置が動かされているかどうか、温度変化、高度または圧力の変化、速度変化、または、装置が所定の距離だけ移動したかどうかを決定するために、様々な種類のセンサーデータを監視してもよい。
一部の仮想事象センサー(some virtual event sensors)は、グラフィカルユーザインタフェース(graphical user interface)(GUI)のエレメント間をナビゲートするのに使用されてもよい。例えば、仮想事象センサーは、ユーザの傾斜または装置の方位を、GUIの特定のエレメントまたはコントロールにナビゲートしたいというユーザの願望に関連させてもよい。それと同時に、仮想事象センサーは、「シェイク(shake)」または「ダブルタップ(double-tap)」の証拠として加速度計データを監視し、そして、シェイクまたはダブルタップを、ユーザがナビゲートしたGUIのエレメントまたはコントロールを選択したいというユーザの願望と解釈してもよい。
方法200に戻ると、方法200によって発見された物理センサー114、116、118、120がセンサーインタフェース100によって受信されたデータ要求の中の一部または全部を満たすことができないときがあるかもしれない。すなわち、センサーデータが、必要とされるが、得ることができないときがあるかもしれない。これらの場合には、方法200は、要求を満たすことができないクライアントに警報またはエラー通知を戻してもよい。あるいは、方法200は、満たすことのできない要求をただ単に無視してもよい。
発見されたセンサー114、116、118、120は複数のデータ要求(a plurality of data requests)を満たすのに必要なデータを技術的に提供することはできるが、データ要求に関連するパラメータが競合する(conflict)と思われるときがあるかもしれない。例えば、1サンプル/秒(1ヘルツ)の速度で加速度計指示値を要求する第1の要求、および、100サンプル/秒(100ヘルツ)の速度で加速度計指示値を要求する第2の要求を考察する。これらの要求は、競合するが、両方の要求は、加速度計指示値を100ヘルツの速度で取り込み、そして、第1の要求を達成するためにこの指示値をサブサンプリングすることによって、満たすことができる。データ要求が競合するとき、センサーインタフェース100のプロセッサー104は、明らかに競合する要求をパラレルに(in parallel)満たすためには1つまたはそれ以上の物理センサー114、116、118、120がどのように環境設定されるかを決定してもよい。有効な解決方法が存在しなければ、プロセッサー104は、競合するセンサー環境設定を必要とするデータ要求を満たすことを調停してもよい。ある場合においては、調停は、どの要求が最初に達成されるかという優先順位を付与することを含んでもよい。他の場合においては、調停は、結果として、ある特定の要求に対して警報またはエラー通知を戻してもよい。
センサーインタフェース100によって受信されたデータ要求の中の一部または全部が、完全にまたは部分的にセンサーに依存しないものであれば、センサーインタフェースのプロセッサー104は、特定の要求を満たすための2つまたはそれ以上の方法の中から選択するように環境設定されてもよい。例えば、加速度計および車輪速度センサーが、運動の方向を独立して指示することのできるデータを提供してもよい。したがって、一方のセンサーが、利用できなければ、データ要求は、他方のセンサーから得られたデータを用いて満たされてもよい。あるいは、2つのデータ要求間の競合を調整することができなければ、それぞれのデータ要求は、センサーの中の異なるものから得られたデータを用いて満たされてもよい。
また、完全にまたは部分的にセンサーに依存しないデータ要求は、その他の基準に基づいてデータ要求が満たされることを可能にする。例えば、一組のデータ要求を満たすために異なる組のセンサーを使用してもよいならば、データ要求を満たすのに使用される一組のセンサーは、例えば、電力を節約し、使用される物理センサーの数を最小化し、プロセッサー使用量を最小化し(例えば、より高性能な物理センサーを利用することができれば、仮想センサーに対する依存度を最小化する)、雑音を最小化し、応答時間を向上させ、あるいは、サービス要求の品質を満たすように選択されてもよい。また、より多くの作業を「スマート」センサー("smart" sensors)にさせることによって、プロセッサー使用量を最小化してもよい。例えば、「スマート」センサーは、センサーを自動環境設定すること、QoS要求(以下で説明される)を読み込んで応答すること、1つまたはそれ以上の仮想センサーと同じようにデータを変換または組み合わせること、あるいは、「ゼロG」事象のような事象を検出すること(例えば、ゼロG加速度計と同様に)ができてもよい。
一実施形態においては、センサーインタフェース100(図1)は、入力品質制御、出力品質制御、または、双方向品質制御を実施してもよい。例えば、入力側において、プロセッサー104は、センサーインタフェース100によって受信されたデータ要求の中の1つまたは複数に関連するサービス品質(QoS)要求を読み込むように環境設定されてもよい。QoS要求は、例えば、測定の精度よりも1回の測定あたりの時間を優先させるための要求(または、その逆の要求);1回の測定あたりの時間と測定の精度とをどのように釣り合わせるかに関する指示;測定サンプリング速度(measurement sampling rate);測定間隔;測定キャプチャートリガー;測定リターントリガー(例えば、センサーデータが処理される前に、あるいは、データ要求が満たされる前に、満たされなければならないしきい値);測定フィルタリングのための時間定数;測定解像度;帯域幅(例えば、サンプル数またはリターン速度)とデータ解像度とをどのように釣り合わせるかに関する指示;あるいは、加速度計gレンジの選択;を含んでもよい。
ここに定義されるように、環境設定要求がセンサーに固有のものであり、かつ、QoS要求が少なくとも部分的にセンサーに依存しない点において、QoS要求は、典型的な環境設定要求とは異なる。したがって、QoSは、どのセンサーを利用できるまたはこれらのセンサーがどのように動作するかに関する知識をまったく持たないセンサーユーザまたはアプリケーション開発者によって生成されてもよい。むしろ、センサーユーザまたはアプリケーション開発者は、どのような種類のデータを彼らが必要としているかおよびこのデータをどのようにして取り込むことができるかを知るだけでよい。この点において、アプリケーションプログラミングインタフェース(API)が、センサーインタフェース100のために定義されてもよく、そして、アプリケーション開発者は、センサーインタフェース100がどのような種類のデータおよびQoS要求を処理することができるかを決定するために、APIを使用してもよい。
プロセッサー104は、さらに、1)QoS要求を満たすためにはどのセンサーデータを使用することができるかを決定し、そして、2)可能であれば、いずれかの関連するQoS要求に基づいて1つまたはそれ以上のデータ要求を満たすように環境設定されてもよい。プロセッサー104は、様々な形でQoS要求を使用してもよい。ある場合においては、プロセッサー104は、データ要求を満たすためには2つまたはそれ以上のセンサーの中のどれを使用すべきかを決定するために、QoS要求を使用してもよい。例えば、2つのセンサーが、データ要求を満たすことができるが、センサーの中の一方は、時間または電力を節約することができるならば、プロセッサーは、時間または電力を節約するセンサーからデータを普通に取り込むように環境設定されてもよい。しかしながら、より高価なセンサーからデータを取り込むことによってのみQoS要求を満たすことができないならば、プロセッサーは、より高価なセンサーからデータを取り込むことによってQoS要求に応答するように環境設定されてもよい。別の場合においては、一方のセンサーから得られたデータを他方のセンサーから得られたデータと組み合わせることによって一方のセンサーから得られたデータを「補正」または改善することが可能であってもよい。これらの場合においては、QoS要求は、プロセッサー104が通常はクライアントに「補正されない状態」で送出するデータをプロセッサー104に補正させてもよい。
ある場合においては、プロセッサー104は、データ要求に関連するサービス要求の品質を満たすことができる場合にのみこれらのデータ要求を満たすように環境設定されてもよい。別の場合においては、プロセッサー104は、可能であればいつでもデータ要求を満たし、そして、これらのデータ要求に関連するQoS要求を満たすために「ベストエフォート(best effort)」をなすように環境設定されてもよい。
出力側において、プロセッサー104は、データとデータ品質の1つまたはそれ以上のインジケータとを戻すように環境設定されてもよい。データ品質のインジケータは、例えば、データ精度の指示、データ解像度、データをひずませる事象が発生したことの指示(例えば、装置の衝撃)、センサー限界に達したことの指示(例えば、1000gを越える大きさの加速度が検出された)、データサンプルが紛失されたことの指示、あるいは、データは有効であると考えられるかどうかの指示を含んでもよい。また、データは、タイムスタンプとともに戻されてもよい。
QoS要求を読み込んで応答するように環境設定されることに加えて、プロセッサー104は、特定のセンサー114、116、118、120へ宛てられた環境設定要求を読み込んで応答するように環境設定されてもよい。
さらに、プロセッサー104は、1)センサーインタフェース100の存在、あるいは、2)センサーインタフェース100によって発見された物理センサー114、116、118、120の少なくとも1つの存在、のブロードキャスト(broadcast)を開始するように、あるいは、を「通知する(advertise)」ように、環境設定されてもよい。一実施形態においては、ブロードキャストは、センサーインタフェース100の無線インタフェースを介して、開始される。このようにして、センサーインタフェース100がインストールされた「装置A」以外の装置上にインストールされたクライアントは、「装置A」が利用することのできる物理センサーにアクセスするために、センサーインタフェース100を使用してもよい。例えば、複数の携帯電話またはPDAの中の一部または全部がセンサーインタフェース100のようなセンサーインタフェースを備えていれば、ある装置(some devices)は、その他の装置のクライアントになってもよく、それによって、その他の装置(1つまたは複数)のセンサーインタフェース(1つまたは複数)を介して利用することのできる物理センサーにまたはそれどころか仮想センサーにもアクセスしてよい。
センサーインタフェース100のクライアント入力は、有線入力および無線入力の両方を備えてもよい。一実施形態においては、少なくとも1つのクライアント入力(例えば、有線クライアント入力)は、センサーインタフェース100が物理的にインストールされているモバイル装置上にインストールされたクライアントからのデータ要求を受信するために専用であってもよく、そして、少なくとも1つのその他のクライアント入力(例えば、無線クライアント入力)は、センサーインタフェース100が物理的にインストールされているモバイル装置の外部に存在するクライアントからのデータ要求を受信するように環境設定されてもよい。
図3は、センサーインタフェース100の1つの例示的な実装(implementation)302を示す。一例として、センサーインタフェース302は、いくつかのインストールされたアプリケーション(a number of installed applications)304、306、308、310を有する装置(device)300内に実装されている(implemented)。装置300は、ハンドヘルドモバイル装置、コンピュータ、または、運搬用車両のような様々な形態を有してもよい。また、インストールされたアプリケーションは、様々な形態を有してもよく、そして、例えば、ウェブブラウザ304、カメラ306、万歩計(登録商標)308、グローバルポジショニングシステム、Qualcomm uiOneユーザインタフェース310、または、装置オペレーティングシステムを備えてもよい。センサーインタフェース302は、いくつかのクライアント入力(a number of client inputs)312を備えてもよく、このクライアント入力312は、一実施形態においては、単一COMポートの形態を有する。ISensorPort APIへのアクセスは、このCOMポートを介して提供されてもよい。
ISensorPort APIは、いくつかの物理センサーおよび/または仮想センサー314、316、318、320、322、324への双方向コネクションを提供してもよく、また、open/read/write/close/ioctlのようなI/O機能をサポートしてもよい。ISensorPort APIは、いくつかのインストールされたアプリケーション304、306、308、310からデータ要求を受信するように環境設定され、そして、生のまたは抽出されたセンサーデータの形で応答を戻す。インストールされたアプリケーション304、306、308、310は、いくつかのISensorPort拡張部326を介して、抽出されたセンサーデータにアクセスしてもよく、そして、このISensorPort拡張部326は、いくつかの仮想センサー324へのアクセスを提供する。一例として、ISensorPort拡張部326は、振動情報(例えば、画像安定化アプリケーションのための)または方位情報にアクセスするための拡張部328、330を備えてもよい。
好ましくは、センサーインタフェースクライアント(sensor interface clients)304、306、308、310は、ISensorPort APIを介して、特定の既知のセンサー(例えば、特定の種類および型式のセンサー)と通信することは許されない。むしろ、クライアント304、306、308、310は、特定の種類の生のまたは抽出されたセンサーデータを要求することだけが許される。このように、また、これまでに説明したように、センサーインタフェース302は、データ要求がどのように満たされるかを決定するときにより多くの柔軟性を提供される。しかしながら、一実施形態においては、アプリケーションは、特定のセンサーと通信することが許される。
一実施形態においては、ISensorPort APIは、Qualcomm BREW 4.0 Component ServiceのIPORT1インタフェースを継承または実施してもよく、このIPORT1インタフェースは、直接遠隔操作可能読み込み/書き込みポート(directly remotable read/write port)を提供する。
センサーインタフェース100は、さらに、センサードライバ層332を備える。センサードライバ層332は、ベンダー固有センサー初期化操作、較正操作、環境設定操作、および、読み込み/書き込み操作を実行するよう機能するいくつかのセンサードライバ334、336、338を備える。センサードライバ334、336、338は、I2Cインタフェース、UARTインタフェース、および、Bluetooth(登録商標)インタフェースのような1つまたはそれ以上のセンサー通信インタフェース342、344、346への接続性をサポートするセンサー通信層340を介して、これらの動作を実行してもよい。好ましくは、センサードライバ層332およびセンサー通信層340の両方は、拡張可能なものであり、センサードライバ334、336、338およびセンサー通信インタフェース342、344、346がこれらの層に追加されてもよいことを意味する。
一例として、図3は、I2Cバス344を介して通信層340に結合された一対の物理センサー314、316と、UART346を介して通信層340に結合されたマイクロコントローラ350のアナログ−ディジタル変換器(ADC)348に結合されたもう1つの一対のセンサー318、320と、Bluetoothコネクション342を介して通信層340に結合された物理センサー322とを示す。
センサーインタフェース100は、さらに、センサーマネージメント層352を備える。センサーマネージメント層352は、複数のクライアントコネクションおよびデータ要求を管理し、物理センサー314、316、318、320、322へのアクセスを調停し、そして、仮想センサーをサポートする役割をなす。センサーマネージメント層352は、また、データ要求をどのように満たすかを決定する(例えば、特定のデータ要求を特定の物理センサーまたは仮想センサー314、316、318、320、322、324にマッピングすることによって)。センサーマネージメント層352は、また、図2に示される方法200を実行することに対して大きな責任を有するものであってもよい。
場合によっては、複数のクライアント304、306、308、310は、1つまたはそれ以上の物理センサー314、316、318、320、322によって生成されたデータに同時にアクセスすることを要求するかもしれない。その結果として、物理センサーから得られたデータは、このデータを複数の消費者(例えば、センサーインタフェースクライアント304、306、308、310または仮想センサー324)に提供できるように、バッファリングされ、その後に、コピーされなければならないかもしれない。ある場合においては、物理センサーのデータバッファーは、単一サンプルを保持するような寸法を与えられてもよい。別の場合においては、センサーのデータバッファーは、複数のサンプルを保持するような寸法を与えられてもよい。さらに別の場合においては、センサーのデータバッファーは、サンプルのアレイを保持するような、必要であれば、例えば、3D加速度計によって生成されたx,y,z加速度値を保持するような寸法を与えられてもよい。バッファーは、また、特定のセンサーによって生成されるデータサンプルの数および寸法、データサンプルが取り込まれる速度、あるいは、センサーのデータにアクセスすることを要求するクライアント304、306、308、310の数のような要素に基づいて、動的に寸法を与えられてもよい。
物理センサーから得られるデータのコピーは、同じものである必要はない。例えば、センサーデータは、異なる数のサンプルを有するデータセットを生成するために、サブサンプリングされてもよい。あるいは、センサーのデータの特定のコピーは、低域通過フィルタリングまたはその他の前処理要件を施されてもよい。
一実施形態においては、センサーインタフェース302のクライアント304は、ASCIIメッセージによって、QoS要求またはデータ要求を送信してもよい。これらのメッセージは、以下の形態を有してもよい。
「set,<datatype1>=<attribute1>:<value1>[,<datatype2>=<attribute2>:<value2>]...」
「get,<attribute1>[,attribute2>]...」
上記メッセージを用いてx−軸における加速度を要求するために、ユーザは、所望の測定周波数を以下のように設定してもよい。
「set,accelx:freq=10」
そして、データ生成を開始するために、以下のメッセージが、送信されるかもしれない。
「get,accelx」
そして、以下のメッセージを含むデータのストリームを戻すことによって、データ要求が満たされてもよい。
「get,accelx=123,errorno=0」
「get,accelx=234,errorno=0」
データストリームは、以下のメッセージによって終結(terminated)してもよい。
「set,accelx:freq=0」
上記の例においては、戻されたデータストリームの「errorno=0」部分は、戻されたデータサンプル内にエラーが存在しないことを指示する。センサー限界に達したために(あるいは、装置の衝撃が読み込みを妨害したために)、データサンプルにエラーが存在すると思われるならば、「errorno=1」または「errorno=2」の指示が、影響を受けた1つまたは複数のサンプルとともに戻されてもよい。このように、エラーコードが、(何らかの種類の)エラーが存在するかどうかを簡単に通知するために使用されてもよく、あるいは、エラーコードが、様々な異なる種類のエラーを指示するために使用されてもよい。
当業者は、ここに開示された実施形態に関連して説明された様々な説明のための論理ブロック、モジュール、および、ステップは、電子的ハードウェア、コンピュータソフトウェア、または、これらの両方の組み合わせによって実施されてもよいことを理解するであろう。ハードウェアとソフトウェアのこの交換可能性を明確に示すために、様々な例としてのコンポーネント、ブロック、モジュール、および、ステップが、これらの機能に関して概略的に上記に説明された。このような機能が、ハードウェアまたはソフトウェアとして実施されるかどうかは、特定のアプリケーション、および、システム全体に課される設計制約に依存する。当業者は、説明された機能をそれぞれの特定アプリケーションごとに様々な形で実施することができるが、このような実施の決定は、本発明の範囲から逸脱することをもたらすとして解釈されるべきではない。
ここに開示された実施形態に関連して説明された様々な例としての論理ブロック、モジュール、および、ステップは、汎用プロセッサー、ディジタル信号プロセッサー(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)またはその他のプログラマブル論理デバイス、個別ゲートまたはトランジスタロジック、個別ハードウェアコンポーネント、または、ここに説明された機能を実行するように設計されたこれらの何らかの組み合わせによって実施または実行されてもよい。汎用プロセッサーは、マイクロプロセッサーであってもよいが、別の形においては、プロセッサーは、任意の従来のプロセッサー、コントローラ、マイクロコントローラ、または、状態マシンであってもよい。プロセッサーは、また、コンピューティング装置を組み合わせたもの、例えば、DSPとマイクロプロセッサーを組み合わせたもの、複数のマイクロプロセッサー、DSPコアと併用して1つまたはそれ以上のマイクロプロセッサー、または、何らかのその他のこのような構成として実施されてもよい。
ここに開示された実施形態に関連して説明された方法またはアルゴリズムのステップは、直接にハードウェアとして、プロセッサーによって実行されるソフトウェアモジュールとして、あるいは、これらを組み合わせたものとして具体化されてもよい。ソフトウェアモジュールは、ランダムアクセスメモリー(RAM)、フラッシュメモリー、リードオンリーメモリー(ROM)、電気的プログラム可能ROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)、レジスタ、ハードディスク、取り外し可能ディスク、CD−ROM、または、当分野において公知の何らかのその他の形態の記憶媒体に存在してもよい。例示的な記憶媒体は、プロセッサーがこの記憶媒体から情報を読み出しかつこの記憶媒体に情報を書き込むことができるようにこのプロセッサーに結合される。別の形においては、記憶媒体は、プロセッサーと一体化されたものであってもよい。プロセッサーおよび記憶媒体は、ASIC内に存在してもよい。このASICは、ハンドヘルドモバイル装置(例えば、携帯電話またはPDA)のようなユーザ端末内に存在してもよい。別の形においては、プロセッサーおよび記憶媒体は、ユーザ端末内に個別コンポーネントとして存在してもよい。
開示された実施形態のこれまでの説明は、当業者が本発明を作りまたは使用するのを可能にするために提供されたものである。当業者は、これらの実施形態への様々な変更を容易に考えることができ、ここに定義された包括的な概念は、本発明の精神および範囲を逸脱することなく、その他の実施形態に適用されることができる。したがって、本発明は、ここに示された実施形態に限定されるように意図されてはおらず、ここに開示された原理および新規な整合する最も広い範囲が与えられるべきである。
以下に、本願発明の当初の特許請求の範囲に記載された発明を付記する。
[1]
センサーインタフェースであって、
いくつかのセンサー入力と;
いくつかのクライアントからいくつかのデータ要求を受信するように、環境設定されたいくつかのクライアント入力と、なお前記いくつかのデータ要求は、特定の種類のデータを取り込むときに使用されるべき特定の物理センサーを識別することなく、戻されるべき前記特定の種類のデータを指定する少なくとも1つのデータ要求を含む;
i)前記いくつかのデータ要求を満たすためにどのセンサーデータを使用することができるかを決定し、ii)いくつかの物理センサーからセンサーデータを受信するように前記センサー入力の中のいくつかを環境設定し、かつ、iii)可能であれば、前記受信されたセンサーデータを用いて、前記いくつかのデータ要求を満たすように、環境設定されたプロセッサーと;
を備える、センサーインタフェース。
[2]
前記プロセッサーは、前記いくつかの物理センサーを動的に発見するように環境設定されている、[1]に記載のセンサーインタフェース。
[3]
前記プロセッサーは、前記センサーインタフェースがインストールされている装置の外部に存在する少なくとも1つの物理センサーを、動的に発見するように環境設定されている、[1]に記載のセンサーインタフェース。
[4]
前記いくつかのセンサー入力は、複数のセンサー入力である、[1]に記載のセンサーインタフェース。
[5]
前記いくつかの物理センサーは、複数の物理センサーである、[1]に記載のセンサーインタフェース。
[6]
前記いくつかのクライアント入力は、複数のクライアント入力である、[1]に記載のセンサーインタフェース。
[7]
前記いくつかのクライアントは、複数のクライアントである、[1]に記載のセンサーインタフェース。
[8]
前記プロセッサーは、前記センサーデータの中の少なくとも一部を組み合わせることによって、前記データ要求の中の少なくとも1つを満たすように環境設定されている、[1]に記載のセンサーインタフェース。
[9]
前記プロセッサーは、センサーデータの中の少なくとも1つを変換することによって前記データ要求の中の少なくとも1つを満たすように環境設定されている、[1]に記載のセンサーインタフェース。
[10]
前記プロセッサーは、前記センサーデータを用いてデータ要求を満たす2つまたはそれ以上の方法の中から選択するように、環境設定されている、[1]に記載のセンサーインタフェース。
[11]
前記プロセッサーは、前記センサーデータを用いてデータ要求を満たす2つまたはそれ以上の方法の中から選択するように環境設定されており、前記選択は、前記いくつかの物理センサーに提供される電力を節約するように行われる、[1]に記載のセンサーインタフェース。
[12]
前記プロセッサーは、前記いくつかの物理センサーの中の前記データ要求を満たすのに必要なものだけをイネーブル状態にするように環境設定されている、[1]に記載のセンサーインタフェース。
[13]
前記プロセッサーは、前記データ要求を満たすのに必要であれば、前記いくつかの物理センサーの中の少なくとも1つを環境設定するように環境設定されている、[1]に記載のセンサーインタフェース。
[14]
前記プロセッサーは、前記プロセッサーが環境設定され環境設定する前記少なくとも1つの物理センサーの、競合する環境設定を必要とする前記のデータ要求を満たすことを調停するように、環境設定されている、[13]に記載のセンサーインタフェース。
[15]
前記プロセッサーは、前記データ要求の中の複数の競合するものをパラレルに満たすために、前記いくつかの物理センサーの中の少なくとも1つを環境設定するように環境設定されている、[1]に記載のセンサーインタフェース。
[16]
前記プロセッサーは、i)前記データ要求の中の1つまたは複数に関連するサービス要求の品質を読み込み、ii)サービス要求の前記品質を満たすためにはどのセンサーデータを使用することができるかを決定し、かつ、iii)可能であれば、サービス要求の関連するいずれかの品質に基づいて、前記1つまたはそれ以上のデータ要求を満たすように、環境設定されている、[1]に記載のセンサーインタフェース。
[17]
前記プロセッサーは、サービス要求の前記品質の中の少なくとも1つに応じて、前記データ要求の中の少なくとも1つを満たすために、前記センサーデータの少なくとも一部を組み合わせるように環境設定されている、[16]に記載のセンサーインタフェース。
[18]
前記プロセッサーは、データと前記データの品質のインジケータとの両方を戻すことによって、前記データ要求の中の少なくとも1つを満たすように環境設定されている、[16]に記載のセンサーインタフェース。
[19]
前記プロセッサーは、データと前記データの有効性のインジケータとの両方を戻すことによって、前記データ要求の中の少なくとも1つを満たすように環境設定されている、[16]に記載のセンサーインタフェース。
[20]
前記プロセッサーは、データと前記データの品質のインジケータとの両方を戻すことによって、前記データ要求の中の少なくとも1つを満たすように環境設定されている、[1]に記載のセンサーインタフェース。
[21]
前記プロセッサーは、データと前記データの有効性のインジケータとの両方を戻すことによって、前記データ要求の中の少なくとも1つを満たすように環境設定されている、[1]に記載のセンサーインタフェース。
[22]
無線インタフェースをさらに備え、前記プロセッサーは、前記無線インタフェースを介して、前記物理センサーの中の少なくとも1つの存在のブロードキャストを開始するように環境設定されている、[1]に記載のセンサーインタフェース。
[23]
無線インタフェースをさらに備え、前記プロセッサーは、前記無線インタフェースを介して、前記センサーインタフェースの存在のブロードキャストを開始するように環境設定されている、[1]に記載のセンサーインタフェース。
[24]
前記いくつかのクライアント入力は、i)前記センサーインタフェースが物理的にインストールされているモバイル装置上にインストールされたクライアントからのデータ要求を受信するために専用である少なくとも1つの有線クライアント入力、および、ii)前記センサーインタフェースが物理的にインストールされている前記モバイル装置の外部に存在するクライアントからのデータ要求を受信するように環境設定されている少なくとも1つの無線クライアント入力、を含む、[1]に記載のセンサーインタフェース。
[25]
いくつかのクライアントからデータ要求を受信することと、なお前記データ要求は、特定の種類のデータを取り込むときに使用されるべき特定の物理センサーを識別することなく、戻されるべき前記特定の種類のデータを指定する少なくとも1つのデータ要求を含む;
前記データ要求を満たすためにはどのセンサーデータを使用することができるかを決定することと;
装置が現時点においてセンサーデータを受信することのできるいくつかの物理センサーを動的に発見することと;
前記データ要求を満たすのに使用することのできる前記センサーデータの一部または全部を、前記いくつかの物理センサーのいくつかから受信することと;
可能であれば、前記受信されたセンサーデータを用いて前記データ要求を満たすことと;
を備える方法。
[26]
前記いくつかの物理センサーの中の、前記データ要求を満たすのに使用されるものをイネーブル状態にすること、をさらに備える[25]に記載の方法。
[27]
前記データ要求を満たすのに必要であれば、前記いくつかの物理センサーの中の少なくとも1つを環境設定すること、をさらに備える[25]に記載の方法。
[28]
前記受信されたセンサーデータの中の少なくとも一部を組み合わせること、をさらに備える[25]に記載の方法。
[29]
前記受信されたセンサーデータの中の少なくとも一部を変換すること、をさらに備える[25]に記載の方法。
[30]
前記動的に発見された物理センサーの中の少なくとも1つの存在をブロードキャストすること、をさらに備える[25]に記載の方法。
[31]
インストールされたいくつかのアプリケーションと;
いくつかのセンサー通信インタフェースと;
i)前記インストールされたいくつかのアプリケーションからデータ要求を受信し、かつ、ii)前記データ要求に対する応答を前記インストールされたいくつかのアプリケーションに戻すように、環境設定されているアプリケーションプログラミングインタフェース(API)を提供し、
前記いくつかのセンサー通信インタフェースを介して、いくつかの物理センサーと通信するように環境設定された、いくつかのセンサードライバをホストし、そして、
可能であれば、i)前記データ要求を満たすにはどのセンサーデータを使用することができるかを決定すること、ii)前記データ要求を満たすのに使用することのできる前記センサーデータの中の一部または全部を得るために前記センサードライバの中の少なくとも1つを使用すること、および、iii)可能であれば、前記データ要求を満たすために前記得られたセンサーデータを使用することによって、前記データ要求を満たす、
ように環境設定されたセンサーインタフェースと;
を備えるハンドヘルドモバイル装置。
[32]
前記インストールされたいくつかのアプリケーションは、ウェブブラウザ、カメラ、万歩計、および、グローバルポジショニングシステムの中の少なくとも1つを含む、[31]に記載のハンドヘルドモバイル装置。
[33]
前記センサーインタフェースは、i)前記受信されたセンサーデータの中の少なくとも一部を組み合わせる仮想センサーを提供し、かつ、ii)前記仮想センサーの出力を用いて、前記データ要求の中の少なくとも1つを満たす、[31]に記載のハンドヘルドモバイル装置。
[34]
前記センサーインタフェースは、i)前記受信されたセンサーデータの中の少なくともいくつかを変換する仮想センサーを提供し、ii)前記仮想センサーの出力を用いて、前記データ要求の中の少なくとも1つを満たす、[31]に記載のハンドヘルドモバイル装置。
第1の例示的なセンサーインタフェースを示す図である。 図1に示されるようなセンサーインタフェースのような、または図3に示されるようなセンサーインタフェースのような、センサーインタフェースを使用する方法を説明するフローチャートである。 第2の例示的なセンサーインタフェースを内蔵する装置を示す図である。

Claims (42)

  1. ハンドヘルドモバイル装置上のセンサーインタフェースであって、
    いくつかのセンサー入力と;
    いくつかのクライアントから発生するいくつかのデータ要求を受信するように、環境設定されたいくつかのクライアント入力と、なお、前記いくつかのクライアントの各々は、前記ハンドヘルドモバイル装置による実行用に環境設定された異なるアプリケーションに対応しており、前記いくつかのデータ要求は、特定の種類のデータを取り込むときに使用されるべき特定の物理センサーを識別することなく、戻されるべき前記特定の種類のセンサー測定データを指定する少なくとも1つのデータ要求を含む;
    前記少なくとも1つのデータ要求に応じて、i)前記いくつかのデータ要求を満たすためにどのセンサーデータを使用することができるかを決定し、ii)いくつかの物理センサーを動的に発見し、iii前記いくつかの物理センサーからセンサーデータを受信するように前記センサー入力の中の少なくとも1つを環境設定し、かつ、iv)可能であれば、前記受信されたセンサーデータを用いて、前記いくつかのデータ要求を満たすように、環境設定されたプロセッサーと;
    を備える、センサーインタフェース。
  2. 前記プロセッサーは、前記センサーインタフェースがインストールされている装置の外部に存在する少なくとも1つの物理センサーを、動的に発見するように環境設定されている、請求項1に記載のセンサーインタフェース。
  3. 前記いくつかのセンサー入力は、複数のセンサー入力である、請求項1に記載のセンサーインタフェース。
  4. 前記いくつかの物理センサーは、複数の物理センサーである、請求項1に記載のセンサーインタフェース。
  5. 前記いくつかのクライアント入力は、複数のクライアント入力である、請求項1に記載のセンサーインタフェース。
  6. 前記いくつかのクライアントは、複数のクライアントである、請求項1に記載のセンサーインタフェース。
  7. 前記プロセッサーは、前記センサーデータの中の少なくとも一部を組み合わせることによって、前記データ要求の中の少なくとも1つを満たすように環境設定されている、請求項1に記載のセンサーインタフェース。
  8. 前記プロセッサーは、センサーデータの中の少なくとも1つを変換することによって前記データ要求の中の少なくとも1つを満たすように環境設定されている、請求項1に記載のセンサーインタフェース。
  9. 前記プロセッサーは、前記センサーデータを用いてデータ要求を満たす2つまたはそれ以上の方法の中から選択するように、環境設定されている、請求項1に記載のセンサーインタフェース。
  10. 前記プロセッサーは、前記センサーデータを用いてデータ要求を満たす2つまたはそれ以上の方法の中から選択するように環境設定されており、前記選択は、前記いくつかの物理センサーに提供される電力を節約するように行われる、請求項1に記載のセンサーインタフェース。
  11. 前記プロセッサーは、前記いくつかの物理センサーの中の前記データ要求を満たすのに必要なものだけをイネーブル状態にするように環境設定されている、請求項1に記載のセンサーインタフェース。
  12. 記データ要求を満たすために必要に応じて、前記いくつかの物理センサーの中の少なくとも1つを環境設定するように、前記プロセッサーは環境設定されている、請求項1に記載のセンサーインタフェース。
  13. 記少なくとも1つの物理センサーの競合する環境設定を必要とする前記のデータ要求を満たすことを調停するように、前記プロセッサーは環境設定されており、前記競合する環境設定を環境設定するように、前記プロセッサーは環境設定されている、請求項12に記載のセンサーインタフェース。
  14. 数の競合するデータ要求をパラレルに満たすために、前記いくつかの物理センサーの中の少なくとも1つを環境設定するように、前記プロセッサーは環境設定されている、請求項1に記載のセンサーインタフェース。
  15. 前記プロセッサーは、i)前記データ要求の中の1つまたは複数に関連するサービス要求の品質を読み込み、ii)サービス要求の前記品質を満たすためにはどのセンサーデータを使用することができるかを決定し、かつ、iii)可能であれば、サービス要求の関連するいずれかの品質に基づいて、前記1つまたはそれ以上のデータ要求を満たすように、環境設定されている、請求項1に記載のセンサーインタフェース。
  16. 前記プロセッサーは、サービス要求の前記品質の中の少なくとも1つに応じて、前記データ要求の中の少なくとも1つを満たすために、前記センサーデータの少なくとも一部を組み合わせるように環境設定されている、請求項15に記載のセンサーインタフェース。
  17. 前記プロセッサーは、データと前記データの品質のインジケータとの両方を戻すことによって、前記データ要求の中の少なくとも1つを満たすように環境設定されている、請求項15に記載のセンサーインタフェース。
  18. 前記プロセッサーは、データと前記データの有効性のインジケータとの両方を戻すことによって、前記データ要求の中の少なくとも1つを満たすように環境設定されている、請求項15に記載のセンサーインタフェース。
  19. 前記プロセッサーは、データと前記データの品質のインジケータとの両方を戻すことによって、前記データ要求の中の少なくとも1つを満たすように環境設定されている、請求項1に記載のセンサーインタフェース。
  20. 前記プロセッサーは、データと前記データの有効性のインジケータとの両方を戻すことによって、前記データ要求の中の少なくとも1つを満たすように環境設定されている、請求項1に記載のセンサーインタフェース。
  21. 無線インタフェースをさらに備え、前記プロセッサーは、前記無線インタフェースを介して、前記物理センサーの中の少なくとも1つの存在のブロードキャストを開始するように環境設定されている、請求項1に記載のセンサーインタフェース。
  22. 無線インタフェースをさらに備え、前記プロセッサーは、前記無線インタフェースを介して、前記センサーインタフェースの存在のブロードキャストを開始するように環境設定されている、請求項1に記載のセンサーインタフェース。
  23. 前記いくつかのクライアント入力は、i)前記センサーインタフェースが物理的にインストールされているモバイル装置上にインストールされたクライアントからのデータ要求を受信するために専用である少なくとも1つの有線クライアント入力、および、ii)前記センサーインタフェースが物理的にインストールされている前記モバイル装置の外部に存在するクライアントからのデータ要求を受信するように環境設定されている少なくとも1つの無線クライアント入力、を含む、請求項1に記載のセンサーインタフェース。
  24. ハンドヘルドモバイル装置によって実行される方法であって、
    いくつかのクライアントから発生するデータ要求を受信することと、なお、前記いくつかのクライアントの各々は、前記ハンドヘルドモバイル装置による実行用に環境設定された異なるアプリケーションに対応しており、前記データ要求は、特定の種類のセンサー測定データを取り込むときに使用されるべき特定の物理センサーを識別することなく、戻されるべき前記特定の種類のセンサー測定データを指定する少なくとも1つのデータ要求を含む;
    前記データ要求を満たすためにはどのセンサーデータを使用することができるかを決定することと;
    前記少なくとも1つのデータ要求に応じて、装置が現時点においてセンサーデータを受信することのできるいくつかの物理センサーを動的に発見することと;
    前記データ要求を満たすのに使用することのできる前記センサーデータの一部または全部を、前記いくつかの物理センサーの少なくとも1つから受信することと;
    可能であれば、前記受信されたセンサーデータを用いて前記データ要求を満たすことと;
    を備える方法。
  25. 前記いくつかの物理センサーの中の、前記データ要求を満たすのに使用されるものをイネーブル状態にすること、をさらに備える請求項24に記載の方法。
  26. 前記データ要求を満たすために必要に応じて、前記いくつかの物理センサーの中の少なくとも1つを環境設定すること、をさらに備える請求項24に記載の方法。
  27. 前記受信されたセンサーデータの中の少なくとも一部を組み合わせること、をさらに備える請求項24に記載の方法。
  28. 前記受信されたセンサーデータの中の少なくとも一部を変換すること、をさらに備える請求項24に記載の方法。
  29. 前記動的に発見された物理センサーの中の少なくとも1つの存在をブロードキャストすること、をさらに備える請求項24に記載の方法。
  30. インストールされたいくつかのアプリケーションと;
    いくつかのセンサー通信インタフェースと;
    i)前記インストールされたいくつかのアプリケーションから発生するデータ要求を受信し、かつ、ii)前記データ要求に対する応答を前記インストールされたいくつかのアプリケーションに戻すように、環境設定されているアプリケーションプログラミングインタフェース(API)を提供し、
    前記データ要求の少なくとも1つに応じて、いくつかの物理センサーを動的に発見し、
    前記いくつかのセンサー通信インタフェースを介して、いくつかの物理センサーと通信するように環境設定された、いくつかのセンサードライバをホストし、そして、
    可能であれば、i)前記データ要求を満たすにはどのセンサーデータを使用することができるかを決定すること、ii)前記データ要求の少なくとも1つに応じて、前記データ要求を満たすのに使用することのできる前記センサーデータの中の一部または全部を得るために前記センサードライバの中の少なくとも1つを使用すること、および、iii)可能であれば、前記データ要求を満たすために前記得られたセンサーデータを使用することによって、前記データ要求を満たす、
    ように環境設定されたセンサーインタフェースと、なお、前記各アプリケーションは、前記ハンドヘルドモバイル装置による実行用に環境設定されており、前記データ要求は、特定の種類のデータを取り込むときに使用されるべき特定の物理センサーを識別することなく、戻されるべき前記特定の種類のセンサー測定データを指定するいくつかのデータ要求を含む
    を備えるハンドヘルドモバイル装置。
  31. 前記インストールされたいくつかのアプリケーションは、ウェブブラウザ、カメラ、万歩計、および、グローバルポジショニングシステムの中の少なくとも1つを含む、請求項30に記載のハンドヘルドモバイル装置。
  32. 前記センサーインタフェースは、i)前記受信されたセンサーデータの中の少なくとも一部を組み合わせる仮想センサーを提供し、かつ、ii)前記仮想センサーの出力を用いて、前記データ要求の中の少なくとも1つを満たす、請求項30に記載のハンドヘルドモバイル装置。
  33. 前記センサーインタフェースは、i)前記受信されたセンサーデータの中の少なくともいくつかを変換する仮想センサーを提供し、ii)前記仮想センサーの出力を用いて、前記データ要求の中の少なくとも1つを満たす、請求項30に記載のハンドヘルドモバイル装置。
  34. 命令を含んだ非一時的なコンピュータ可読記憶媒体であって、前記命令は、ハンドヘルドモバイル装置によって実行されるとき、前記ハンドヘルドモバイル装置に動作を実行させ、前記命令は、
    クライアントから発生するデータ要求を受信するためのコードと、なお、前記クライアントは、前記ハンドヘルドモバイル装置による実行用に環境設定されたアプリケーションに対応しており、前記データ要求は、特定の種類のデータを取り込むときに使用されるべき特定の物理センサーを識別することなく、戻されるべき前記特定の種類のセンサー測定データを指定するいくつかのデータ要求を含む;
    前記いくつかのデータ要求を満たすためにはどのセンサーデータを使用することができるかを決定するためのコードと;
    前記データ要求に応じて、いくつかの物理センサーを発見するためのコードと;
    前記データ要求を満たすのに使用することのできる前記センサーデータの一部または全部を、前記いくつかの物理センサーの少なくとも1つから受信するためのコードと;
    前記データ要求を満たすために前記データを戻すためのコードと;
    を備えるコンピュータ可読記憶媒体。
  35. 前記データ要求は、前記特定の種類のデータを取り込むときに使用されるべき特定の物理センサーを識別しない、請求項34に記載のコンピュータ可読記憶媒体。
  36. 前記いくつかの物理センサーのうちの、前記データ要求を満たすために使用される物理センサーをイネーブル状態にするためのコードを備える、請求項34に記載のコンピュータ可読記憶媒体。
  37. 前記受信されたセンサーデータの中の少なくとも一部を組み合わせるためのコードを備える、請求項34に記載のコンピュータ可読記憶媒体。
  38. 前記受信されたセンサーデータの中のいくつかを変換するためのコードを備える、請求項34に記載のコンピュータ可読記憶媒体。
  39. 仮想センサーを生成するためのコードをさらに備える、請求項34に記載のコンピュータ可読記憶媒体。
  40. 前記データ要求の中の1つまたは複数に関連するサービス要求の品質を提供するためのコードと、サービス要求の前記品質を満たすために使用されることができるセンサーデータを決定するためのコードとをさらに備える、請求項34に記載のコンピュータ可読記憶媒体。
  41. ハンドヘルドモバイル装置であって、
    いくつかのクライアントから発生するデータ要求を受信するための手段と、なお、前記いくつかのクライアントの各々は、前記ハンドヘルドモバイル装置による実行用に環境設定された異なるアプリケーションに対応しており、前記データ要求は、特定の種類のデータを取り込むときに使用されるべき特定の物理センサーを識別することなく、戻されるべき前記特定の種類のセンサー測定データを指定する少なくとも1つのデータ要求を含む;
    前記データ要求を満たすためにはどのセンサーデータを使用することができるかを決定するための手段と;
    前記少なくとも1つのデータ要求に応じて、いくつかの物理センサーを動的に発見するための手段と、なお、前記いくつかの物理センサーから、装置が、センサーデータを現在受信できる;
    前記データ要求を満たすために使用されることができる前記センサーデータの一部または全部を、前記いくつかの物理センサーの少なくとも1つから受信するための手段と;
    可能であれば、前記受信されたセンサーデータを使用して、前記データ要求を満たすための手段と;
    を備えるハンドヘルドモバイル装置。
  42. 前記いくつかのデータ要求は、複数のデータ要求を含み、前記複数のデータ要求のうちの2以上は、異なるクライアントから発生する、請求項1に記載のセンサーインタフェース。
JP2009504508A 2006-04-07 2007-04-09 センサーインタフェース並びにセンサーインタフェースに関連する方法および装置 Expired - Fee Related JP5318750B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US79025206P 2006-04-07 2006-04-07
US60/790,252 2006-04-07
US11/733,130 2007-04-09
US11/733,130 US9626238B2 (en) 2006-04-07 2007-04-09 Sensor interface, and methods and apparatus pertaining to same
PCT/US2007/066268 WO2007118247A2 (en) 2006-04-07 2007-04-09 Sensor interface, and methods and apparatus pertaining to same

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2012124763A Division JP5539443B2 (ja) 2006-04-07 2012-05-31 センサーインタフェース並びにセンサーインタフェースに関連する方法および装置

Publications (2)

Publication Number Publication Date
JP2009533906A JP2009533906A (ja) 2009-09-17
JP5318750B2 true JP5318750B2 (ja) 2013-10-16

Family

ID=38566962

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2009504508A Expired - Fee Related JP5318750B2 (ja) 2006-04-07 2007-04-09 センサーインタフェース並びにセンサーインタフェースに関連する方法および装置
JP2012124763A Expired - Fee Related JP5539443B2 (ja) 2006-04-07 2012-05-31 センサーインタフェース並びにセンサーインタフェースに関連する方法および装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2012124763A Expired - Fee Related JP5539443B2 (ja) 2006-04-07 2012-05-31 センサーインタフェース並びにセンサーインタフェースに関連する方法および装置

Country Status (6)

Country Link
US (1) US9626238B2 (ja)
EP (2) EP2054804B1 (ja)
JP (2) JP5318750B2 (ja)
KR (1) KR101069566B1 (ja)
CN (1) CN101410805B (ja)
WO (1) WO2007118247A2 (ja)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10213754A1 (de) * 2002-03-18 2003-12-04 Sick Ag Sensor-Maschinen-Interface und Verfahren zu dessen Betrieb
TWI237202B (en) * 2003-08-27 2005-08-01 Wen-Shiang Yue MP3 player with exercise meter
US7839279B2 (en) * 2005-07-29 2010-11-23 Dp Technologies, Inc. Monitor, alert, control, and share (MACS) system
US8864663B1 (en) 2006-03-01 2014-10-21 Dp Technologies, Inc. System and method to evaluate physical condition of a user
US8725527B1 (en) 2006-03-03 2014-05-13 Dp Technologies, Inc. Method and apparatus to present a virtual user
US7841967B1 (en) 2006-04-26 2010-11-30 Dp Technologies, Inc. Method and apparatus for providing fitness coaching using a mobile device
US8902154B1 (en) 2006-07-11 2014-12-02 Dp Technologies, Inc. Method and apparatus for utilizing motion user interface
US7647195B1 (en) * 2006-07-11 2010-01-12 Dp Technologies, Inc. Method and apparatus for a virtual accelerometer system
US8508039B1 (en) 2008-05-08 2013-08-13 Invensense, Inc. Wafer scale chip scale packaging of vertically integrated MEMS sensors with electronics
US8462109B2 (en) 2007-01-05 2013-06-11 Invensense, Inc. Controlling and accessing content using motion processing on mobile devices
US8952832B2 (en) 2008-01-18 2015-02-10 Invensense, Inc. Interfacing application programs and motion sensors of a device
US7934423B2 (en) 2007-12-10 2011-05-03 Invensense, Inc. Vertically integrated 3-axis MEMS angular accelerometer with integrated electronics
US8141424B2 (en) 2008-09-12 2012-03-27 Invensense, Inc. Low inertia frame for detecting coriolis acceleration
US8250921B2 (en) 2007-07-06 2012-08-28 Invensense, Inc. Integrated motion processing unit (MPU) with MEMS inertial sensing and embedded digital electronics
US8620353B1 (en) 2007-01-26 2013-12-31 Dp Technologies, Inc. Automatic sharing and publication of multimedia from a mobile device
US8949070B1 (en) 2007-02-08 2015-02-03 Dp Technologies, Inc. Human activity monitoring device with activity identification
US8555282B1 (en) 2007-07-27 2013-10-08 Dp Technologies, Inc. Optimizing preemptive operating system with motion sensing
US8320578B2 (en) 2008-04-30 2012-11-27 Dp Technologies, Inc. Headset
US8285344B2 (en) 2008-05-21 2012-10-09 DP Technlogies, Inc. Method and apparatus for adjusting audio for a user environment
US8996332B2 (en) 2008-06-24 2015-03-31 Dp Technologies, Inc. Program setting adjustments based on activity identification
US8872646B2 (en) 2008-10-08 2014-10-28 Dp Technologies, Inc. Method and system for waking up a device due to motion
US9529437B2 (en) 2009-05-26 2016-12-27 Dp Technologies, Inc. Method and apparatus for a motion state aware device
US8276159B2 (en) 2009-09-23 2012-09-25 Microsoft Corporation Message communication of sensor and other data
US9107040B2 (en) * 2010-09-29 2015-08-11 Apple Inc. Systems, methods, and computer readable media for sharing awareness information
US20130096831A1 (en) * 2011-10-18 2013-04-18 International Business Machines Corporation Automatic, adaptive and optimized sensor selection and virtualization
EP2776788B1 (en) * 2011-11-11 2019-11-27 Sony Mobile Communications AB System and method for the assisted calibration of sensors distributed across different devices
US9389681B2 (en) 2011-12-19 2016-07-12 Microsoft Technology Licensing, Llc Sensor fusion interface for multiple sensor input
CN102722742B (zh) * 2011-12-21 2015-07-01 北京时代凌宇科技有限公司 传感器的接入装置
US20130247663A1 (en) * 2012-03-26 2013-09-26 Parin Patel Multichannel Gyroscopic Sensor
US9462632B2 (en) * 2012-07-17 2016-10-04 Qualcomm Incorporated Concurrent data streaming using various parameters from the same sensor
US9641266B2 (en) 2012-07-17 2017-05-02 Qualcomm Incorporated Sensor with concurrent data streaming using various parameters
US9256222B2 (en) * 2012-07-18 2016-02-09 International Business Machines Corporation Sensor virtualization through cloud storage and retrieval mechanisms
CN103927221B (zh) * 2013-01-14 2017-11-24 联想(北京)有限公司 传感器数据获取方法和电子设备
ES2786926T3 (es) 2013-10-17 2020-10-14 Utc Fire & Security Americas Panel de seguridad con sensores virtuales
EP2950058B1 (en) * 2014-05-28 2018-03-28 Axis AB Calibration data in a sensor system
CN104216735A (zh) * 2014-07-31 2014-12-17 北京升哲科技有限公司 Beacon设备的控制方法和Beacon设备
US20160077892A1 (en) * 2014-09-12 2016-03-17 Microsoft Corporation Automatic Sensor Selection Based On Requested Sensor Characteristics
GB2533319A (en) * 2014-12-16 2016-06-22 Isis Innovation Sensor assembly
CN107950005B (zh) * 2015-08-04 2021-09-14 康维达无线有限责任公司 服务元素主机选择
EP3166353A1 (en) * 2015-11-06 2017-05-10 Nokia Solutions and Networks Oy Method and network components and self-organizing network
US10051060B2 (en) 2015-12-04 2018-08-14 International Business Machines Corporation Sensor data segmentation and virtualization
US10072951B2 (en) 2015-12-04 2018-09-11 International Business Machines Corporation Sensor data segmentation and virtualization
KR102525295B1 (ko) * 2016-01-06 2023-04-25 삼성전자주식회사 데이터 관리 방법 및 장치
US10157058B2 (en) * 2016-09-23 2018-12-18 Analog Devices Global Adaptive self-configuring sensor node
WO2018092274A1 (ja) * 2016-11-18 2018-05-24 株式会社日立製作所 制御装置、制御方法、および制御プログラム
US10440086B2 (en) * 2016-11-28 2019-10-08 Microsoft Technology Licensing, Llc Reading multiplexed device streams
US10924376B2 (en) * 2016-12-30 2021-02-16 Google Llc Selective sensor polling
JP6677828B2 (ja) * 2017-02-03 2020-04-08 株式会社日立製作所 センサネットワーク管理システムおよびセンサネットワーク管理方法
TWI623865B (zh) * 2017-03-24 2018-05-11 一種軟體定義輸入操作感測系統
GB2589740C (en) 2018-06-11 2021-12-01 Mitsubishi Electric Corp Environmental information management system
IT201900000082A1 (it) 2019-01-04 2020-07-04 St Microelectronics Srl Dispositivo, sistema, metodo e prodotto informatico di rilevamento e valutazione di grandezze ambientali ed eventi ad approccio modulare e complessita' variabile
JP7105745B2 (ja) * 2019-08-26 2022-07-25 株式会社日立ビルシステム 機械設備の検査装置
CN114430439A (zh) * 2020-10-29 2022-05-03 中兴通讯股份有限公司 获取传感器数据的方法和装置、电子设备、可读存储介质
JP2022115644A (ja) * 2021-01-28 2022-08-09 パナソニックホールディングス株式会社 可搬型仮想IoT装置、それを用いた仮想デバイスデータの生成方法、及びそのプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182010B1 (en) * 1999-01-28 2001-01-30 International Business Machines Corporation Method and apparatus for displaying real-time visual information on an automobile pervasive computing client
JP2000270384A (ja) * 1999-03-12 2000-09-29 Omron Corp センサ及びコントローラ並びにセンサシステム
US6389491B1 (en) 1999-03-23 2002-05-14 Agilent Technologies, Inc. Test instrumentation I/O communication interface and method
US6559653B2 (en) * 1999-07-27 2003-05-06 Becs Technology, Inc. Three wire interface for field wiring of on/off sensors
US7058710B2 (en) * 2001-02-22 2006-06-06 Koyo Musen Corporation Collecting, analyzing, consolidating, delivering and utilizing data relating to a current event
US6714778B2 (en) * 2001-05-15 2004-03-30 Nokia Corporation Context sensitive web services
EP1490736A1 (de) * 2002-03-18 2004-12-29 Sick AG Sensor-maschinen schnittstelle und verfahren zu deren betrieb
JP4074988B2 (ja) * 2002-11-12 2008-04-16 ソニー株式会社 情報処理装置、通信処理装置、および方法、並びにコンピュータ・プログラム
US20040266480A1 (en) * 2003-06-27 2004-12-30 Hjelt Kari Tapani System and method for implementing sensor functionality in mobile devices
CN2662383Y (zh) * 2003-09-15 2004-12-08 北京众大永泰科技有限公司 Gprs消防无线网络用户报警器
JP4483259B2 (ja) * 2003-10-16 2010-06-16 富士ゼロックス株式会社 応用プログラム実行システム、そのセンサ、その第1のサーバ、その第2のサーバ、そのオブジェクト及び応用プログラム実行方法
US7248964B2 (en) * 2003-12-05 2007-07-24 Honeywell International Inc. System and method for using multiple aiding sensors in a deeply integrated navigation system
EP1542137A1 (en) * 2003-12-11 2005-06-15 Sony International (Europe) GmbH Dynamic information source management
US7429936B2 (en) * 2004-08-26 2008-09-30 Massachusetts Institute Of Technology Parasitic mobility in dynamically distributed sensor networks

Also Published As

Publication number Publication date
WO2007118247A3 (en) 2008-01-03
US20070239399A1 (en) 2007-10-11
KR20090029701A (ko) 2009-03-23
US9626238B2 (en) 2017-04-18
JP2009533906A (ja) 2009-09-17
CN101410805B (zh) 2013-03-27
EP2523112A1 (en) 2012-11-14
CN101410805A (zh) 2009-04-15
EP2054804A2 (en) 2009-05-06
JP5539443B2 (ja) 2014-07-02
EP2523112B1 (en) 2017-10-18
EP2054804B1 (en) 2017-05-17
JP2012213192A (ja) 2012-11-01
KR101069566B1 (ko) 2011-10-05
WO2007118247A2 (en) 2007-10-18

Similar Documents

Publication Publication Date Title
JP5318750B2 (ja) センサーインタフェース並びにセンサーインタフェースに関連する方法および装置
EP2846135B1 (en) Portable Electronic Device with Environmental Sensor
US9342154B2 (en) Interfacing application programs and motion sensors of a device
BR112015001012B1 (pt) Método e dispositivos para controlar fluxos de dados concomitantes tendo diferentes parâmetros de fluxo de dados do mesmo sensor, e memória legível por computador
US10154399B2 (en) Method for outputting content and electronic device for supporting the same
CN108592947B (zh) 陀螺仪校准方法、装置、存储介质及终端设备
JP6049452B2 (ja) 情報表示装置、情報表示システム、それらの制御方法、及びプログラム
CN110426057B (zh) 一种磁力计数据校准的方法及磁力计数据校准装置
JP2017530350A (ja) 要求されたセンサ特性に基づく自動センサ選択
CN111196231B (zh) 用于提供车载信息娱乐服务的电子装置和方法
CN109341836B (zh) 一种对称重平台进行校准的方法及装置
US20200033130A1 (en) Method for calibrating sensor or azimuth information obtained through sensor, based on azimuth information obtained using satellite positioning circuit, and electronic device supporting the same
US9372646B2 (en) Storage medium storing device registration program and method for device registration
US20200400634A1 (en) Method and electronic device for correcting and generating data related to outside air on basis of movement
CN111209791A (zh) 用于获得与指纹相关联的信息的电子装置和方法
CN111367588B (zh) 一种获取堆栈使用量的方法及装置
JP2023026087A (ja) 物質検出システム
US20160170502A1 (en) Device for adjusting and self-testing inertial sensors, and method
CN108592861B (zh) 方向传感器优化方法、装置、存储介质及终端设备
JP2009187202A (ja) 通信支援プログラム及び通信支援方法
KR20210074538A (ko) 전자 장치 및 전자 장치에서 센서 데이터를 보정하는 방법
CN118042093A (zh) 一种投影仪触发显示校正的方法、系统、设备和介质
JP2006268612A (ja) 処理時間測定システム及び処理時間測定プログラム
KR20160049997A (ko) 프록시를 사용하는 원격 기능을 제공하는 방법 및 장치

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110705

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111004

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111012

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111107

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111114

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111205

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120105

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120131

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130710

R150 Certificate of patent or registration of utility model

Ref document number: 5318750

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees