説明

制御環境内のコンポーネントを自動的に管理するための方法、システムおよびコンピュータプログラム製品

有線および/または無線通信ネットワーク(180)を介して接続した複数のシステムコンポーネント間(102〜122)のデータ、音声、制御信号の配信を管理する、制御サーバー(122)または類似の中央処理装置を提供する。携帯型コントローラ(108)により、ユーザーは、周辺地域を含む制御された居住環境および/または非居住環境(100)内の全場所からシステムコンポーネントにアクセスし、制御し得る。システムコンポーネントの動作および/または機能を制御するために、1つ以上の制御マクロ(例、400)を構築し得る。制御マクロは、制御サーバーがシステムコンポーネントを制御し得るようにするためのコマンドを複数含む。制御マクロはユーザー(503)により手動で起動されるか、開始パラメータ(703)発生時に自動的に実行され得る。制御マクロは特定のコンテキスト(803)でのアプリケーションに対し自動的に特殊化され得る。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概して家庭用電子機器の制御方法に関し、特に(i)特定の時間および/または特定のイベントの発生時に自動的に実行するように定義できるか、または(ii)特定のコンテキストにおけるアプリケーションに対して自動的に特殊化できる、コマンド動作のシーケンスを介した家庭用電子機器の制御方法に関する。
【背景技術】
【0002】
情報時代の幕開けによって、コンピュータの処理機能に新しく刺激的な機会が提供されている。パーソナルコンピュータは、効率の向上、コストの削減、および生産性の向上のために、様々な分野に展開されている。パーソナルコンピュータは、その小型化および携帯性によって、よりアクセスしやすく、またビジネス環境におけるより重要なツールとなっている。パーソナルコンピュータはまた、教育機関および家庭を含む非ビジネス環境においても非常に有用なツールとなっている。
【0003】
パソコンのネットワークは、その普及が拡大している。家庭内では、複数のパーソナルコンピュータを互いに接続することができ、これによって、ユーザーはある部屋から別の部屋にディスケットを手で持ち運ぶことなくファイルを共有することが可能となる。コンピュータネットワークによって、ユーザーは、プリンタ、ファクシミリ、および他の装置を共有することも可能になる。同様にインターネット接続設備も備えることができ、外部のネットワークおよびサービスへのアクセスが可能となる。したがって、ユーザーは、家庭用コンピュータを操作して世界中のどこからでも情報に即時にアクセスすることができる。
【0004】
家庭用コンピュータのネットワークは増加しているが、いくつかの重要な問題を解決しなければならない。例えば、家庭内ネットワークの導入は、展開に時間がかかり高価になる場合がある。加えて、コンピュータのネットワークと、テレビ、ステレオ、DVDプレーヤ、および他の家庭用電子機器のような他の家庭用機器とを統合する容易な方法が存在しない。パーソナルコンピュータおよび他のオーディオ/ビデオ(AV)機器(テレビ、DVDプレーヤ、PVRなど)の間でのデジタルAVデータの効率的な配信は、通信規格および/またはフォーマットの差異や発展によって困難である。
【0005】
他の重要な課題は、ネットワーク化した家庭用機器を有効に制御できるようにすることである。娯楽センター(テレビ、ステレオ、およびVCRなど)のコンポーネントに信号を送信するために、リモートコントロールユニットを調整することができるが、家庭内で複数のパーソナルコンピュータおよび他のアナログおよび/またはデジタル機器の通信および制御ができる既知の中心的な機器が存在しない。さらに、ユーザーが介入せずに複数の家庭用機器の通信および制御ができる既知の機器が存在しない。リモートコントロールユニットを用いても、ユーザーは、コマンド(赤外線信号)を制御可能な家庭用電子機器に送信するために、ハードキーを手動で起動しなければならない。
【0006】
向上したコンピュータ処理機能と情報への世界的なアクセスとの組み合わせによって、情報処理時代における著しい発展がもたらされているが、単純かつ廉価であり、さらに家庭内ネットワークに接続した複数の家庭用機器の機能を統合でき、ユーザーの介入を最小限にしてこれらの機器の操作を容易にできる汎用的なシステムが必要である。
【発明の開示】
【課題を解決するための手段】
【0007】
家庭、企業、学校などの制御環境とそれらの周辺地域内での複数の機器および/またはアプリケーションを管理するための方法、システム、およびコンピュータプログラム製品を提供する。制御センターは、1つ以上のサーバーまたは他のデータ処理機器を備え、機器および/またはアプリケーションの統合化したコマンドおよび制御を行えるようにする。
【0008】
本発明の実施態様では、携帯型コントローラ(携帯情報端末、無線ノートパッドなど)によって、ユーザーは制御センターと情報のやりとりを行えるようになる。当該の情報のやりとりは、他の機器および/またはアプリケーションの構成および性能の変更を含む。したがって、携帯型コントローラによって、他の機器および/またはアプリケーションにリモートアクセスが提供され、ユーザーは、その環境内のあらゆる場所からそれらの機能および/または動作の制御を行えるようになる。
【0009】
一実施態様では、携帯型コントローラは、(例えば、IEEE規格802.11a、802.11b、802.11gなどで規定される)無線ネットワークを介して制御環境内で他の機器および/またはアプリケーションを制御する制御センターへの無線接続を有するグラフィックディスプレイを備えた、ハンドヘルドプラットホームである。別の実施態様では、制御センターは、携帯型コントローラに構築される。別の実施態様では、携帯型コントローラは、赤外線(IR)コード信号を介して、他の機器および/またはアプリケーションと直接通信する。
【0010】
一実施態様では、システムコンポーネントの動作および/または機能の制御のために、1つ以上の制御マクロを構築することができる。制御マクロは、実行時に制御センターがシステムコンポーネントの複数の動作および/または機能を制御できるようにする、コマンドのセットを含む。制御マクロ(すなわちコマンドのセット)は、後の再呼び出しおよび実行のための制御マクロのファイル名に関連づけることができる。
【0011】
ユーザーは、携帯型コントローラ、別のコンピュータクライアント、または制御センターと通信するユーザーインターフェイスを操作することによって、制御マクロを定義することができる。一実施態様では、制御マクロを携帯型コントローラにおいて保存する。ユーザーが制御マクロを起動すると、携帯型コントローラは制御センターにリクエストを送信し、制御センターは所望の結果(DVDプレーヤおよび関連するテレビの電源を入れる、DVDプレーヤにDVDの動画を再生させる、など)が生じるように、必要な機能を実行するための命令信号のシーケンスを送信する。
【0012】
別の実施態様では、制御マクロは、ユーザーがほとんど、または全く介入することなく、自動的に実行される。制御マクロは、開始パラメータの発生時に自動的に実行するように定義できるか、または特定のコンテキストにおけるアプリケーションに対して自動的に特殊化できる、コマンド動作のシーケンスを介して起動する。開始パラメータは、所定の時間、日付、状態、イベントなど、またはそれらを組み合わせたものとすることができる。
【0013】
本願明細書に組み込まれ、明細書の一部を形成する添付図面は、本発明を図示し、記述とともに本発明の原理を説明し、当業者が本発明を使用できるようにするために用いられる。図において、通常、同様の参照番号は、同一の要素または機能的あるいは構造的に類似する要素を示す。加えて、通常、参照番号の最左端の数字は、その参照番号が最初に現れる図面を示している。
【発明を実施するための最良の形態】
【0014】
(目次)
I.システム概要
II.位置認識
III.個人で使用するための携帯型コントローラのプロファイリング
IV.典型的なシステムの実装。
【0015】
(I.システム概要)
本発明は、家庭、企業、学校などの制御環境とそれらの周辺地域内での複数の機器および/またはアプリケーションに対する統合化した命令および制御を目的とする。居住制御環境には、住宅、家庭、アパート、移動住宅、ハウスボートまたは他の種類の住居が挙げられる。しかし、実施態様では、居住環境は、指定地域内のあらゆるシェルター、構造物、建物などとともに住居の周辺地域を含む。
【0016】
他の実施態様では、本発明は、非居住環境において実行される。非居住環境には、限定されないが、オフィスビル、一連の小オフィス、制作スタジオ、倉庫、娯楽場、学校または大学、医療施設、ホテル、リゾート地、航空機、船、自動車などが挙げられる。実施態様では、非居住環境の実施態様のための制御環境は、上述の建造物の現実的な範囲だけでなく、指定地域内のそれらの周辺も含む。
【0017】
制御環境の例は、名称「Method,System, and Computer Program Product for Managing Controlled Residiential or Non−Residential Environments」(米国特許出願第10/382,897号)、および名称「Method,System,and Computer Program Produce for Managing Controlled Residential or Non−Residential Environments」(米国特許出願第10/180,500号)に記載されており、両出願を参照することにより本願明細書にその全体が組み込まれる。これらの出願に記載されているように、制御環境内の他の機器および/またはアプリケーションへの情報(ビデオ、オーディオ、音声、テキスト、グラフィック、制御メッセージなどを含む)の配信を管理するために、様々な方法およびシステムを提供することができる。このような機器には、これらに限定されないが、通信装置、(電話、インターホンなど)、娯楽用システム(テレビ、CD/DVDプレーヤ、ゲーム用アプリケーション、ステレオなど)、監視システム(防犯カメラ、乳児モニタなど)、安全/保安システム(火災報知機、スプリンクラーシステム、ドアまたは窓の施錠など)、パーソナルコンピュータ(デスクトップ、ノート、ノートパッド、携帯情報端末など)、調理器具(オーブン、コーヒーメーカー、食品/野菜用電気加温器など)、コンフォートシステム(冷暖房空調設備(HVAC)、加湿器、除湿機、空気清浄機、電灯のスイッチ、調光器など)、コンセント、電源などが挙げられる。
【0018】
当該の制御環境の例を図1に示す。図1は、本発明の一実施態様による、居住制御システム100を示す。システム100は、複数のシステムコンポーネントを相互接続する通信ネットワーク180を含む。システムコンポーネントは、位置決めユニット102、2台のテレビ104(テレビ104(a)および104(b)として示す)、2台のコンピュータクライアント106(コンピュータクライアント106(a)およびコンピュータクライアント106(b)として示す)、1台以上の携帯型コントローラ108、照明機器110、HVACシステム用サーモスタット112、チューナー114、メディアプレーヤ116、ケーブルボックス118、DSSボックス120、および1台以上の中央サーバー122を備える。他の機器および/またはアプリケーションもシステムコンポーネントに備えることができる。
【0019】
ポジショニングユニット102は、システム100のためのホスティング環境としての機能を果たす住居内で、空間的な位置を指定する。ポジショニングユニット102は、有線および/または無線インターフェイスを介して、他のシステムコンポーネント(例、携帯型コントローラ108)に接続される。ポジショニングユニット102は、住居内の階または部屋を指定するように機能する。ポジショニングユニット102はまた、特定の位置、または階あるいは部屋の中の領域も指定するように機能する。さらに、ポジショニングユニット102は、住居外に配置して住居の外側の領域を指定することができる。
【0020】
コンピュータクライアント106は、有線および/または無線パーソナルコンピュータ、携帯情報端末(PDA)、高機能電話、個人用テレビ、または通信ネットワークに接続された他のデータ処理機器を備える。パーソナルコンピュータとして、コンピュータクライアント106は、デスクトップ、ノート、ノートパッドなどとすることができる。ディスプレイは、文字またはグラフィカルユーザーインターフェイス(GUI)を表示し、ユーザーがサーバー122と双方向で通信できるようにコンピュータクライアント106に接続される。コンピュータクライアント106用の入力装置には、キーボード、マウス、音声コマンドインターフェイス、マウスホイール、ジョイスティック、ラダーペダル、タッチスクリーン、マイク、ジョイスティック、スタイラス、ライトペン、または他の種類の周辺装置が挙げられる。
【0021】
携帯型コントローラ108は、有線および/または無線データ処理機器であり、ユーザーが情報のやりとり、制御メッセージの送信、および/または他のシステムコンポーネントの中で情報(オーディオ、ビデオ、音声、および他のデータを含む)の配信を行えるようにする。携帯型コントローラ108は、コンピュータクライアント106としてリストされた装置の携帯バージョンとすることができる。例えば、携帯型コントローラ108は、個人用ノートブックまたはノートパッドコンピュータ、PDA、高機能電話、または通信ネットワーク180に接続され、他のシステムコンポーネントと相互通信できるディスプレイを備えた他の機器とすることができる。したがって、携帯型コントローラ108によって、ユーザーはシステム100の様々なコンポーネントの動作をリモートで制御できるようになる。一実施態様では、携帯型コントローラ108のディスプレイは、他のシステムコンポーネントからビデオおよび/またはオーディオを受信することができる。一実施態様では、携帯型コントローラ108は、無線ダウンロードおよび/またはアップロードを可能にするフラッシュROMを含む。
【0022】
テレビ104は、通常のテレビである。一実施態様では、テレビ104は、双方向および/またはパーソナルサービスに対応するように拡張される。パーソナルサービスには、仮想記録、プログラミング、生放送の一時停止/巻き戻しなどが挙げられる。例えば、テレビ104は、WebTV Networks社(Mountain View、CA)が提供し、Microsoft社(Redmond、WA)から入手可能なWEBTV(登録商標)のサービスに対応する、MSN(登録商標) TVサービスに対応するように拡張したパーソナルテレビとすることができる。図に示されるように、テレビ104は、ケーブルセットトップボックス118、DSSセットトップボックス120、および/またはメディアプレーヤ116(例、PVR、VCR、またはDVDプレーヤ)に接続することができる。
【0023】
1つ以上のサーバー122は、他のシステムコンポーネントの間の全てのトラフィックを監視する。システムコンポーネントの間の情報の交換は、サーバー122を介して経路が定められるか、または別の方法で制御される。このように、サーバー122は、他のシステムコンポーネントと情報のやりとりを行い、通信ネットワーク180を通じて直接または間接的にデータ(オーディオおよび/またはビデオを含む)、音声、および/または制御メッセージを配信する。一実施態様では、サーバー122は、他のシステムコンポーネントの1つ以上の動作および/または機能に対して命令および制御を行う。サーバー122が管理する機能には、ビデオサービング、オーディオサービング、電話通信、メッセージング、ファイルシェアリング、インターネットアクセス、およびセキュリティが挙げられる。本発明の実施態様によれば、ユーザーは携帯型コントローラ108を操作して、これらの機能を構築または再構成し、および/またはサーバー122または他のシステムコンポーネントからメディアを受信する(他のシステムコンポーネントから直接、またはサーバー122を介してシステムコンポーネントから間接的に受信する)。
【0024】
一実施態様では、携帯型コントローラ108には、本願明細書において説明するように、サーバー122の複数の機能が含まれ、他のシステムコンポーネントの間の情報(オーディオ、ビデオ、音声、および、他のデータを含む)の配信を管理する。別の実施態様では、通信ネットワーク180は、ピアツーピア通信に対応する。このように、システムコンポーネントは、オーディオ、ビデオ、音声、他のデータ、および/または制御メッセージを互いに直接、そしてサーバー122によって一元管理されることなく交換する。
【0025】
上述のシステムコンポーネントがすべてというわけではない。限定されないが、冷蔵庫、ストーブ、マイクロ波、トースタ、コーヒーメーカー、アラーム時計、加湿機、スプリンクラー装置、照明、調光器などを含む、他の機器(装置を含む)などを実装することができる。一実施態様では、サーバー122および/または携帯型コントローラ108は、オン/オフ、タイマー、調整(オーブンの温度など)、一時停止、スヌーズなどの、当該のコンポーネントの動作および/または機能を制御する。
【0026】
上述のように、通信ネットワーク180は、システムコンポーネントの間で通信するための送信媒体を提供する。通信ネットワーク180は、有線および/または無線ローカルエリアネットワーク(LAN)である。したがって、通信ネットワーク180は、衛星、地上波(光ファイバ、銅線、UTP、STP、同軸ケーブル、光同軸ハイブリッド送信など)、無線、マイクロ波、自由空間光通信、および/または他のあらゆる形態、あるいは他のあらゆる送信方法を含む、有線、無線、またはその両方の送信媒体を含む。
【0027】
有線送信媒体を使用する実施態様では、通信ネットワーク180は、CAT−5ケーブルを用いたイーサネット(登録商標)LANであり、サーバー122に接続され、各部屋内のある場所に分配される。一実施態様では、ケーブルは、テレビ104、メディアプレーヤ116などの各システムコンポーネントに分配される。システムコンポーネントには、該ケーブルを受けるオーディオ/ビデオ(AV)コネクタを備える。一実施態様では、通信ネットワーク180は、電話線および/または電力線(Home Phoneline Networking Alliance(HomePNA)などの利用が可能な通信技術など)を含む。
【0028】
無線送信媒体を使用する実施態様では、通信ネットワーク180は、大容量ビデオ用の無線イーサネット(登録商標)プロトコルを規定する、IEEE規格の802.11(a)に対応する。別の無線の実施態様では、通信ネットワーク180は、小容量ビデオ用の無線イーサネット(登録商標)プロトコルを規定する、IEEE規格の802.11(b)に対応する。別の無線の実施態様では、通信ネットワーク180は、IEEE規格の802.11(g)に対応する。別の実施態様では、システム100による短距離無線インターフェイスに対応するために、BLUETOOTHTM無線技術(Bluetooth SIG社が開発)を使用する。
【0029】
図1に示されるように、通信ネットワーク180は、システムコンポーネントのプラットフォームとして、Linksys Group社(Irvine、CA)またはCisco Systems社(San Jose、CA)から入手可能なもののような無線ネットワークのアクセスポイント182を含む。無線アクセスポイント182は、無線ネットワーク接続のための中心的ポイント、およびシステムコンポーネントの追跡状態に必要な常時接続を提供する。加えて、無線アクセスポイント182は、有線および無線ネットワーク間の接続ポイントを提供することができる。サーバー122を使用する一実施態様では、上述のように、無線アクセスポイント182は、サーバー122のためのプラットホームとしての機能を果たす。本発明とは別のサーバーベースの実施態様では、サーバー122は、ブリッジ装置(ブリッジ130(a)〜130(e))、携帯情報端末(108など)、パーソナルコンピュータ(106など))などを含む、無線アクセスポイント(180で示される無線アクセスポイント182など)に加えて、実際に複数の異なる機器のプラットフォーム上に配置することができる。
【0030】
システム100はまた、無線通信規格IEEE 802.11(b)に適合する、複数の赤外線/シリアルブリッジ130(a)〜130(d)も備える。各赤外線/シリアルブリッジ130は、1つ以上のコンポーネントと情報のやりとりを行う。図に示されるように、赤外線/シリアルブリッジ130(a)は、テレビ104(a)、ケーブルボックス118、および、メディアプレーヤ116と情報のやりとりを行う。赤外線/シリアルブリッジ130(b)は、チューナ114または赤外線/シリアル通信プロトコルに依存するあらゆる種類の専用機器と情報のやりとりを行うことが、当業者によって理解されよう。赤外線/シリアルブリッジ130(c)は、サーモスタット112と情報のやりとりを行う。赤外線/シリアルブリッジ130(d)は、照明機器110と情報のやりとりを行う。無線イーサネット(登録商標)ブリッジ130(e)は、テレビ104(b)およびDSSボックス120と情報のやりとりを行う。無線イーサネット(登録商標)ブリッジ130(e)は、あらゆるIPアドレスの指定が可能な機器に対応することができる。このように、テレビ104(b)およびDSSボックス120は、IPアドレスを有する「次世代の」UPnP機器である。
【0031】
したがって、本発明は、UPNPTM機器およびユニバーサルプラグアンドプレイ(UPnP)フォーラムが規定するアプリケーションとともに、レガシー機器(例えば、赤外線/シリアル通信プロトコルに依存する家庭用電化製品(CE))をシステムコンポーネントとして統合することができる。IEEE 802.11(b)の赤外線/シリアルブリッジを実装した制御環境の一例が、名称「Legacy Device Bridge for Residential or Non−Residential Networks」(米国特許出願第10/387,590号、2003年3月14日出願)に記載されており、該出願を参照することにより本願明細書にその全体が組み込まれる。
【0032】
上述のように、携帯型コントローラ108(携帯情報端末、無線ノートパッドなど)によって、ユーザーは、制御環境内のあらゆる場所から他の機器および/またはアプリケーションの構成および機能を遠隔で変更できるようになる。一実施態様では、携帯型コントローラ108は、グラフィックディスプレイを有するハンドヘルドプラットホームである。このプラットフォームは、(例えば、IEEE規格の802.11bによって規定されるような)無線通信ネットワーク180を介して制御環境内の他の機器および/またはアプリケーションを制御できる、中央サーバー122への無線接続を有する。他の実施態様において、サーバー122は、携帯型コントローラ108に組み込まれる。他の実施態様において、携帯型コントローラ108は、赤外線(IR)コード信号を介して、他の機器および/またはアプリケーションと直接通信する。
【0033】
一実施態様では、本発明は、複数の入力システムコンポーネント(例、DVD、VCR、衛星チューナ、デジタルビデオレコーダ、ステレオなど)を有する1つの出力システムコンポーネント(例、テレビ、モニタ、スピーカなど)を備えるシステムの制御を容易にする。本発明によれば、最初に、ユーザーは携帯型コントローラ108上に現れるGUIを介して出力コンポーネントを選択する。次いで、ユーザーは、「タブ方式」のインターフェイスを使用して特定の入力コンポーネントを選択する能力をユーザーに提供する制御スクリーンに示される。その入力が選択されると、そのコンポーネントに対する制御スクリーンが示される。様々なシステムコンポーネントの関連づけおよび制御を行うためのユーザーインターフェイスの例は、名称「User Interface for Multi−Device Control」(米国特許出願第60/516,302号)に記載されており、その出願を参照することにより本願明細書にその全体が組み込まれる。
【0034】
(II.位置認識)
本発明の実施態様では、ネットワーク制御システム100は、リアルタイムまたは短期間で、様々のシステムコンポーネント(以下、本願明細書では「ターゲットコンポーネント」と称する)の位置を追跡および/または監視する。ユーザーが、システム100をホストする制御環境内を移動するとき、本発明は、複数のプロトコルを実行して、システム100がターゲットコンポーネントの位置、したがってユーザーの位置をターゲットコンポーネントと通信して判断できるようにする。一実施態様では、制御センター(サーバー122、ターゲットコンポーネントに接続したローカルプロセッサなど)は、ターゲットコンポーネント(携帯型コントローラ108など)の現在位置を判断し、ターゲットコンポーネントを再構成するために命令を送信して、特定の近傍内の他のシステムコンポーネントを制御する。例えば、携帯型コントローラ108が食堂内に位置すると判断された場合、サーバー122によって、携帯型コントローラ108は、食堂内にあるシステムコンポーネントを制御できるようになる。当該のコンポーネントには、調光器、オーディオシステム、食品サーバー用の加温ユニットなどが挙げられる。
【0035】
ポジショニングユニット102は、ターゲットコンポーネントを追跡および/または監視するためのいくつかの実施態様に用いられる。図1を参照して上述したように、1つ以上のポジショニングユニット102が、システム100をホストする制御環境全体にわたって分配される。ポジショニングユニット102は、ターゲットコンポーネント(携帯型コントローラ108、オーディオクライアント、電話など)に接続するか、または制御環境内にスタンドアロンの機器として配置することができる。
【0036】
一実施態様では、ポジショニングユニット102は、RF通信システムの一部である。すなわち、RFトランスポンダは、ポジショニング情報を通信するためにRFインタロゲータと情報のやりとりを行う。トランスポンダは、システムコンポーネントに接続され、一意的にシステムコンポーネントを識別する識別情報を利用できるようにする。トランスポンダは、コンポーネントが固定か、またはまれに移動する機器である場合のシステムコンポーネントの割り当てられた位置を含む、他の種類の情報を利用できるようにすることができる。したがって、トランスポンダは、ターゲットコンポーネントまたはポジショニングコンポーネント(例、ポジショニングユニット102)のどちらかに接続することができる。
【0037】
トランスポンダは、アクティブまたは、パッシブとすることができる。アクティブトランスポンダは、識別情報を含む連続的または定期的な信号を送信する。パッシブトランスポンダは、例えばインタロゲータによって起動されるか、またはユーザーによって手動で起動されるまで、非アクティブまたはサイレントな状態のままである。したがって、(トランスポンダを含む)システムコンポーネントは、サイレントモードまたはアクティブモードで作動させることができる。アクティブモードにおいて、システムコンポーネント(すなわち、ターゲットコンポーネント)の位置は、リアルタイムまたは短期間で監視される。サイレントモードにおいて、システムコンポーネント(すなわち、ターゲットコンポーネント)の絶対的に確実な現在位置は、トランスポンダが起動されるまで、システム100には知らされない。
【0038】
インタロゲータは、トランスポンダの通信範囲内に入ると、別のシステムコンポーネントに接続され、ポジショニング情報(識別情報など)を受信する。インタロゲータは、アクティブトランスポンダからポジショニング情報を自動的に受信するか、またはパッシブトランスポンダを起動させてポジショニング情報を受信する。
【0039】
トランスポンダとインタロゲータとの間の情報のやりとりは、名称「Method,System,and Computer Program Product for Managing Controlled Residential or Non−Residential Environments」(米国特許出願第10/382,897号)、および名称「Method,System,and Computer Program Produce for Managing Controlled Residential or Non−Residential Environments」(米国特許出願第10/180,500号)に詳述されている。上述のように、システムコンポーネントの位置を追跡および/または監視するために、例えば、RF通信、BluetoothTM無線技術(Bluetooth SIG社が開発)、バーコード化技術、GPS受信器、携帯電話の信号、三角測量などを含む、様々なポジショニング技術を本発明で使用することができる。
【0040】
一実施態様では、ポジショニングは、ポジショニングユニット102を使用せずに実現することができる。携帯型コントローラ108などは、携帯型コントローラ108を操作するユーザーからのコマンドの受信および処理に対応する。コマンドは、手動および/または音声で携帯型コントローラ108に入力される。携帯型コントローラ108は、場所を判断するために、コマンドを処理するか、またはコマンドをサーバー122に送信する。例えば、ユーザーは、位置を「居間」に指定することができ、携帯型コントローラ108は、その居間にある機器および/またはアプリケーションを制御するようにプロファイルされる。
【0041】
しかし、別の実施態様では、音声または手動コマンドは、ポジショニングユニット102などに入力することができる。ユーザーはまた、ターゲットコンポーネントの位置記録を更新するために、ターゲットコンポーネント(携帯型コントローラ108など)に対する識別子も入力し、ポジショニングユニット102は、サーバー122に制御信号を送信する。
【0042】
上述のように、本発明は、位置情報を得るための様々なプロトコルに対応する。本発明は、システム100の様々なコンポーネントの位置または動きを追跡および/または監視するために、位置情報を処理する複数の方法および/または技術を提供する。図2を参照する。フローチャート200は、本発明の実施態様の一般的な動作フローを表す。さらに具体的には、フローチャート200は、制御環境内でシステムコンポーネントを追跡および/または監視する制御フローの一例を示す。
【0043】
図2を参照する。フローチャート200の制御フローは、ステップ201から始まり、直ちにステップ203に移動する。ステップ203で、システム100の適切なコンポーネントは、識別情報または追跡および/または監視されるシステムコンポーネント(すなわち、ターゲットコンポーネント)に対応するロケータコードにアクセスする。図1を参照する。本発明は、限定されないが、ポジショニングユニット102、テレビ104、コンピュータクライアント106、携帯型コントローラ108、照明機器110、チューナ114、メディアプレーヤ116、ケーブルボックス118、DSSボックス120、サーバー122、電話、防犯カメラ、防犯モニタ、および/または他の機器および/またはアプリケーションを含む、あらゆる上述のシステムコンポーネントの現在位置を判断することができる。加えて、上述のように、本発明は、ロケータコードにアクセスするための様々な実施態様を含む。ロケータコードは、送信またはポーリング携帯型コントローラ110または他のシステムコンポーネントのための識別子を含む。ロケータコードはまた、ポーリングまたは送信システムコンポーネントのための他の識別コードまたは情報も含むことができる。一実施態様では、他の識別情報は、送信またはポーリング携帯型コントローラ108、ポジショニングユニット102、または他のシステムコンポーネントが位置する、居住環境の領域(階、部屋など)に対する近傍識別子などを含む。
【0044】
一実施態様では、ユーザーは、ターゲットコンポーネントに対する現在位置を手動で入力するために、テキストまたはグラフィカルインターフェイスと情報のやりとりを行う。別の実施態様では、音声コマンドインターフェイスによって、ユーザーは、ターゲットコンポーネントに対して音声コマンドを入力できるようになる。このように、ユーザーは音声で現在位置を通信する。
【0045】
別の実施態様では、ターゲットコンポーネントは、ロケータコードにアクセスするために、ポジショニングユニット102と情報のやりとりを行う。例えば、ターゲットコンポーネント(携帯型コントローラ108など)を、近傍識別子のためにポジショニングユニット102にポーリングするインタロゲータに接続することができる。近傍識別子は、両システムコンポーネントに対する現在位置のためのロケータコードを含む。
【0046】
他の例によれば、インタロゲータ406は、ポジショニングユニット102と統合することができる。したがって、ターゲットコンポーネント(携帯型コントローラ108など)は、インタロゲータによってポーリングされる。その結果、インタロゲータは、ポーリングしたターゲットコンポーネントに対する識別子を受信する。ロケータコードは、識別子をインタロゲータのための近傍識別子と関連づけることによって形成される。
【0047】
ステップ206で、ロケータコードは、更なるポジショニング処理のために、コマンドセンターに送信される。一実施態様では、コマンドセンターは、サーバー122である。別の実施態様において、コマンドセンターは、ターゲットコンポーネント(携帯型コントローラ108、コンピュータクライアント106など)にある。
【0048】
ステップ209で、ロケータコードは、1つの領域にマッチングされる。該領域は、特定の階、廊下、回廊、バルコニ、部屋などとすることができる。該領域は、階、廊下、回廊、バルコニ、部屋、などの範囲内の特定の領域とすることができる。該領域はまた、システム100をホストする住居の外部の周辺部、または居住場所上の近接するまたは自立したシェルタ内の特定の領域とすることもできる。
【0049】
ステップ212で、現在の領域は、ターゲットコンポーネントに通信される、および/または後の再呼び出しのためにサーバー122に記録される。システムコンポーネントが配置され、そのポジショニングデータが更新された後、ステップ295に示されるように、制御フローは終了する。
【0050】
一実施態様では、ポジショニング情報によって、システム100は、システム100と情報のやりとりを行うユーザーの現在位置に基づいて、特定のシステムコンポーネントに対する命令および制御が行えるようになる。これは、図3を参照して説明することができる。図3に示されるように、フローチャート300は、本発明の実施態様の一般的な動作フローを表す。さらに具体的には、フローチャート300は、ユーザーの現在位置に基づいたシステムコンポーネントに対する命令および制御のための制御フローの一例を示す。
【0051】
図3を参照する。フローチャート300の制御フローは、ステップ301から始まり、直ちにステップ203〜209に移動する。図2のステップ203〜209を参照して説明したように、ロケータコードによって、システム100は、ターゲットコンポーネント(例、携帯型コントローラ108)と情報のやりとりを行うユーザーの現在位置または領域を判断できるようになる。
【0052】
ステップ312で、領域に対して領域プロファイルがアクセスされる。領域プロファイルは、領域内のサーバー122および/または携帯型コントローラ108からコマンドを受信および/または制御する機器および/またはアプリケーション(すなわち、システムコンポーネント)のリストを含む。
【0053】
ステップ315で、ユーザーがチェックするための制御オプションを示すために、領域プロファイルが処理される。制御オプションは、該領域プロファイルに対応する機器および/またはアプリケーションのリストを含む。図2を参照して説明したように、ポジショニングは、サーバー122においてリモートで、またはターゲットコンポーネント(例、携帯型コントローラ108)においてローカルで判断することができる。リモートで判断した場合、サーバー122は、例えば、ユーザーインターフェイスを作成および送信して、ターゲットコンポーネント(例えば、ユーザーが操作する携帯型コントローラ108または他のシステムコンポーネント)上の制御オプションを表示させる。ローカルで判断した場合、ターゲットコンポーネント(携帯型コントローラ108など)は、領域プロファイルを検索してユーザーインターフェイスを作成する。領域プロファイルは、要求に応じてターゲットコンポーネントに送信することができる。またはターゲットコンポーネントが利用可能な領域プロファイルで定期的に更新することができる。
【0054】
ステップ318で、ユーザーは、ターゲットコンポーネント(携帯型コントローラ108など)を操作して、領域プロファイルにおいて識別されるシステムコンポーネント(テレビ104、照明機器110など)を制御するためのリクエストを送信する。ユーザーは、システムコンポーネントの機能および/または動作を制御するためのリクエストを送信することができる。ユーザーは、コンポーネントの構成またはセキュリティプロファイルを変更するためのリクエストを送信することができる。当業者には理解されるように、他の制御リクエストを送信することができる。
【0055】
ステップ321で、制御リクエストは、指定コンポーネントによって実行される。制御リクエストは、指定コンポーネントに直接送信されるか、またはサーバー122を介して指定コンポーネントに間接的に送信されることができる。制御リクエストが実行された後、ステップ395によって示されるように、制御フローは終了する。
【0056】
例えば、ユーザーが携帯型コントローラ108を操作しており、システム100によって「居間」に位置すると判断された場合、携帯型コントローラ108は、居間にあるシステムコンポーネントを制御するためのユーザーインターフェイスを受信する。あるシステムコンポーネントは、例えば、住居の玄関に配置された防犯カメラからビデオ入力を受信する防犯モニタを備えることができる。ユーザーは、防犯カメラを転回、傾斜、または焦点を合わせるために携帯型コントローラ108と情報のやりとりを行って、玄関に立っている来訪者の画像を防犯モニタ上に表示させることができる。別のシステムコンポーネントは、テレビ104とすることができ、携帯型コントローラ108は、テレビ104の音量またはチャンネル選択を制御するためのユーザーインターフェイスを受信することができる。ユーザーはまた、携帯型コントローラ108と情報のやりとりを行って、HVAC(すなわち、サーモスタット112)の設定を変更することもできる。
【0057】
(III.個人で使用するための携帯型コントローラのプロファイリング)
本発明によって、ユーザーは、携帯型コントローラ108を操作して他のシステムコンポーネントに対して命令および/または制御することができるようになる。一実施態様では、携帯型コントローラ108によって、ユーザーは、携帯型コントローラ108の近傍のシステムコンポーネントを制御するだけである。別の実施態様では、携帯型コントローラ108は、別の領域内のシステムコンポーネントを制御するオプションを提供する。
【0058】
実施態様において、様々なシステムコンポーネントの制御は、ユーザーのために構築されるプリセットプロファイルに基づく。プロファイルは、全てのユーザーに対して汎用的とすることができ、および/または特定のユーザーに対して特別に構成することができる。特定のユーザーに対して構成した場合、本発明は、様々なプロトコルを用いて特定のユーザーを識別または認証し、該ユーザーに対して構築したプロファイルを実行する。一実施態様では、ユーザー名および/またはパスワードが、システムコンポーネント(携帯型コントローラ108など)に入力される。パスワードは、音声コマンド、テキスト、オブジェクト、ピクセル、などで表すことができる。別の実施態様では、システムコンポーネントによって生体認証が利用される。すなわち、ユーザーを識別および/または認証するために、網膜、虹彩、顔面、手のひら、指紋、および/または音声認識技術などを使用する。別の実施態様では、システムコンポーネント(携帯型コントローラ108など)によってユーザーカードを読み込む。ユーザーを識別および/または認証するために、他のユーザー識別および/または認証技術を使用することができる。本発明によって、ユーザーは、必要に応じてプロファイルを変更できるようになる。
上述の識別および/または認証技術によって、ユーザープロファイルを構築した後に他のユーザーがそのプロファイルを変更または削除することを防止する。
【0059】
実施態様では、本発明によって、ユーザーは、システムコンポーネントに対する「お気に入り」設定を保存するためにプロファイルを構築することができる。例えば、お気に入り設定は、テレビ番組、オーディオ/ビデオの記録、室温、浴槽の制御、時計のアラーム、調光器の設定、ウェブサイト、ニュース放送、経済チャンネルなどに対して構築することができる。
【0060】
実施態様において、ユーザーは、「プレイリスト」を作成するためのプロファイルを構築することができる。例えば、一連のビデオまたはオーディオの記録を、例えばテレビ104または他のオーディオクライアントで再生するために、準備および/または保存することができる。グラフィック画像または写真のシーケンスを、例えばモニタまたはコンピュータクライアント106で再生するために、準備および/または保存することができる。他の方式またはメディアおよび/またはマルチメディアのプレイリストも、本発明の実施態様によって作成することができることは、当業者によって理解されよう。
【0061】
実施態様において、システムコンポーネントのためのセキュリティプロトコルを構築するために、プロファイルを作成することができる。例えば、指定されたユーザーが特定のコンテンツにアクセスできないようブロックするために、プロファイルを作成することができる。例えば、未成年のユーザーが、特定のテレビチャンネル、ウェブサイト、(鍵のかけられる部屋、引き出し、金庫などのような)領域などにアクセスできないようにすることができる。
【0062】
実施態様では、本発明によって、ユーザーは複数のプロファイルを構築できるようになる。複数のプロファイルのそれぞれは、コンテクストに応じた行動に対して調整することができる。例えば、ユーザーは、制限されないが、照明、オーディオ/ビデオプレゼンテーション、セキュリティアクセスの警告、浴槽の制御などのプリセットを含む、夜の娯楽のためのプロファイルを作成することができる。限定されないが、乳児モニタ、クラシックレコードのプレイリスト、コーヒーメーカー、タイマー制御などを含む、ホームオフィスでの活動のための、他のプロファイルを構築することができる。限定されないが、アラーム/スヌーズの制御、コーヒーメーカーのタイマー制御、照明、ニュース放送などを含む、朝の習慣のためのプロファイルを構築することができる。
【0063】
ユーザーはまた、他の個人とともに使用する複数のプロファイルを構築することができる。例えば、ユーザーは、未成年者と一緒である場合に、特定のテレビ番組、ウェブサイト、オーディオの記録などをブロックするように設定したセキュリティ制御を備えたプロファイルを有することができる。しかし、未成年者と一緒である場合に、ユーザーは、より自由なセキュリティ設定のプロファイルを再呼び出しすることができる。
【0064】
このように、本発明によって場所を認識することに加えて、ユーザーを認識するための様々なシステムコンポーネント(携帯型コントローラ108など)が使用できるようになる。したがって、例えば、携帯型コントローラ108は、上述のユーザープロファイルに基づいてユーザーごとにカスタマイズすることができる。実施態様では、ユーザー認識機能によって、システム100は、「follow−me」システム制御を使用できるようになる。例えば、「follow−me」ビデオは、選択したビデオ製品を制御環境の全体にわたって様々なディスプレイに転送するために使用する。ユーザーは、例えば、携帯型コントローラ108を操作して、ビデオ製品(テレビ番組、DVDの記録など)を選択する。該ビデオ製品は、携帯型コントローラ108(図7を参照して説明するメディアビューア710)上に表示することができる。ユーザーが制御環境内の部屋から部屋に移動すると、システム100は、携帯型コントローラ108を追跡し、各領域に対する領域プロファイルを検索する。したがって、ユーザーが新しい領域または部屋に入ると、部屋内に位置するモニタまたはテレビ104が自動的に起動し、携帯型コントローラ108で選択したビデオ製品を表示する。
【0065】
同様に、「follow−me」オーディオも、本発明で使用することができる。このように、ユーザーは、例えば携帯型コントローラ108を操作して、オーディオ製品(CDの記録、無線放送など)を選択することができる。ユーザーが部屋から部屋に移動するとき、本発明のポジショニング技術によって、システム100は、オーディオ製品を携帯型コントローラ108の近傍に位置するクライアント、モニタなどに転送できるようになる。
【0066】
「follow−me」照明は、本発明の別の典型的な実施態様である。携帯型コントローラ108を持っているユーザーが部屋に出入りするとき、システム100は、プロファイルの設定に基づいて照明(例、照明機器110)を暗くしたり、電源のオン/オフを行ったりするようにコマンドを送信する。
【0067】
一実施態様では、システムコンポーネントの動作および/または機能を制御するために、1つ以上の制御マクロを構築することができる。制御マクロは、実行すると、サーバー122が1つ以上のシステムコンポーネントの複数の動作および/または機能を制御できるようになる、コマンドのセットを含む。制御マクロ(すなわち、コマンドのセット)は、後の再呼び出しおよび実行のために制御マクロファイル名に関連づけることができる。
【0068】
ユーザーは、携帯型コントローラ108、コンピュータクライアント106、またはサーバー122と通信するユーザーインターフェイスによって制御マクロを定義することができる。一実施態様では、ユーザーが新しい制御マクロを定義できるようにするために、グラフィカルユーザーインターフェイスを使用することができる。図4は、本発明の一実施態様による、制御マクロを定義するための一例を示す。フローチャート400は、DVDに記録した動画を見るための制御マクロを定義する制御フローの一例を示す。
【0069】
図4を参照する。マクロの記録モードを通常のシステム動作から識別するために、ユーザーがマクロの記録コマンドを起動する場合、フローチャート400の制御フローはステップ401から始まる。ステップ403で、ユーザーは、上述の機器(すなわち、携帯型コントローラ108、コンピュータクライアント106、またはサーバー122へのユーザーインターフェイス)のうちの1つを操作して、ユーザーが動画を視聴するために使用を望むシステムコンポーネント(テレビ104、モニタなど)がある部屋を選択する。
【0070】
ステップ406で、選択した部屋の領域プロファイルが再呼び出しされる。上述のように、領域プロファイルは、指定された領域に位置する全てのシステムコンポーネントを識別する。一実施態様では、領域プロファイルはサーバー122に保存されるが、サーバー122は、ユーザーが利用可能な適切な領域プロファイルを検索および作成する。
【0071】
ステップ409で、ユーザーは、領域プロファイルをチェックし、視聴システムコンポーネント(例、テレビ104)を選択する。ユーザーはまた、DVDソース(例、メディアプレーヤ116)のためのビデオ入力を指定する。ユーザーは、限定されないが、コントラスト、輝度などを含むあらゆる所望の設定を指定することができる。
【0072】
ステップ412で、ユーザーは、所望のオーディオ設定を指定する。一実施態様では、ユーザーは、視聴システムコンポーネント(例、テレビ104)のボリュームレベルを設定する。別の実施態様において、ユーザーは、使用する外部スピーカまたはさらに他のオーディオクライアントを選択するか、または代わりに、視聴システムコンポーネント(例、テレビ104)用の内部スピーカを選択する。
【0073】
ステップ415で、ユーザーは、DVDプレーヤ(すなわち、メディアプレーヤ116)から所望のDVD動画を選択する。あるいは、DVDプレーヤが選択した視聴システムコンポーネント(例、テレビ104)と同じ部屋に位置する場合、ユーザーはメディアプレーヤ116に、現在ロードされている動画の再生開始を命令するか、または単にメディアベイを開きユーザーが所望のDVDの挿入を待つように命令することができる。
【0074】
ステップ418で、ユーザーは、領域プロファイル内に示される照明機器110の設定を指定する。ユーザーは、所望の快適なレベルまで照明を暗くすることができる。一実施態様では、照明機器110は、Lutron Electronics社(Coopersburg、PA)から入手可能な、RadioRA家庭用調光システムを含む。このように、本発明によって、RadioRA調光システムのための制御コマンドを作成できるようになる。図1に戻ると、照明110は、Lutron社のRadioRAまたはX−10調光システムなどの調光システムの信号反応器1202によって制御される典型的な照明システムである。
【0075】
ステップ421で、テレビ104、オーディオクライアント118(選択した場合)、メディアプレーヤ116、および照明機器110の仕様を実行するための制御コマンドは、共通の制御マクロと集合的に関連する。
【0076】
ステップ424で、ユーザーは、制御マクロを保存して、「動画の視聴」のようなファイル名を付与する。「動画の視聴」というマクロを作成するために携帯型コントローラ108を使用する一実施態様では、ユーザーは、該マクロを特定のマクロボタンまたはアイコンに関連づけることができる。したがって、ユーザーが「動画を視聴する」マクロボタンを起動すると、テレビ104が所望の映画を再生する状態になるように、ユーザーが予め指定した選択を実行するための全ての関連するコマンドが再呼び出しされ、実行される。制御マクロを作成および保存すると起動できる状態になり、ステップ495に示されるように、制御フローは終了する。
【0077】
一実施態様では、特定の制御マクロに関連するコマンドは、サーバー122か、またはサーバー122に属するデータベースまたはライブラリに保存される。したがって、制御マクロを実行するために携帯型コントローラ108を使用する一実施態様では、携帯型コントローラ108によって、ユーザーは、制御マクロを制御マクロボタンまたはアイコンに関連づけられるようになる。実行すると、制御マクロボタンは、汎用コマンドをサーバー122に送信する。次いで、サーバー122は、該汎用コマンドを関連づけたコマンドのセットを検索し、該コマンドのセットを適切なシステムコンポーネントに送信して実行する。すなわち、本発明によって、携帯型コントローラ108のようなモバイル機器は、単一の高レベルのリクエストをサーバー122のような統合化したコマンドセンターに送信できるようになる。サーバー122は、その環境(例、ユーザー、位置)に基づいて単一のリクエストを翻訳し、無線(または電力線)通信を含む通信ネットワーク180を通じて送信する必要のある、対応するコマンドのシーケンスを検索する。
【0078】
別様には、本発明の一実施態様によれば、部屋のプロファイルを作成した時にサーバー122が、保存された部屋のプロファイルを介して認識した時か、またはサーバー122がリアルタイムで検出した時に、選択した部屋または領域に存在する特定の機器および/またはアプリケーションに基づいて、サーバー122は、制御マクロを自動的に作成することができる。例えば、サーバー122が、居間などの部屋にDVDプレーヤ(すなわち、メディアプレーヤ116)およびテレビ104があることを検出した場合、制御サーバーは、ユーザーがさらにカスタマイズできる、上述のマクロに相当する基本的な「動画を視聴する」マクロを自動的に構築する。
【0079】
図5は、本発明の一実施態様による、制御マクロを起動させるための一例を示す。フローチャート500は、フローチャート400の制御マクロを起動させるための制御フローを示し、DVDに記録された動画の視聴に関する。
【0080】
図5を参照する。フローチャート500の制御フローは、ステップ501から始まり、直ちにステップ503に移動する。ステップ503で、ユーザーは、ステップ401〜495で定義される「動画を視聴する」制御マクロを起動させる。
【0081】
ステップ506で、「動画を視聴する」制御マクロに関連するコマンドのセットが、それらの保存場所から再呼び出しされる。該コマンドのセットは、特定のシステムコンポーネントの機能および/または動作を制御するための、ユーザーが予め定義した仕様を含む。本例では、「動画を視聴する」制御マクロに関連するコマンドのセットは、照明機器110の変更、メディアプレーヤ116の起動、テレビ104の起動のためのコマンドを含む。ユーザーが、家庭用ステレオスピーカシステムで動画の音声を聞きたい場合、コマンドのセットは、適切なオーディオビデオシステムコンポーネントを起動するためのコマンドも含む。
【0082】
制御マクロを起動するために携帯型コントローラ108を使用する一実施態様では、携帯型コントローラ108は、「動画を視聴する」制御マクロに関連する汎用コマンドを送信する。該汎用コマンドは、サーバー122に送信され、サーバー122では、「動画を視聴する」制御マクロのための汎用コマンドに関連するコマンドのセットを再呼び出しする。
【0083】
ステップ509で、部屋およびシステムコンポーネント(例、テレビ104またはメディアプレーヤ116、照明機器110、オーディオクライアント)は、コマンドのセットによって識別される。図4を参照して説明した例では、該部屋は、制御マクロにおいて指定される。しかし、別の実施態様では、制御マクロ自身が部屋特定のものである必要がない。上述のように、本発明は、ユーザーまたは携帯型コントローラ108の位置を追跡するための手順および/または技術を含む。したがって、ユーザーは、ユーザーが現在位置するいずれかの部屋で動画を視聴するために、制御マクロ(「動画を視聴する」制御マクロなど)を起動するように要求することができる。このように、サーバー122は、ユーザーの現在位置が、制御マクロを実行する部屋であると指定する。同様に、サーバー122は、ユーザーの現在位置の部屋のプロファイルを検索し、指定された部屋に位置する視聴コンポーネント、メディアプレーヤ、および照明コンポーネントを識別することができる。
【0084】
ステップ512で、機器のアクセス許可が、ステップ509で識別された各システムコンポーネントに対して認証される。上述のように、種々のシステムコンポーネントの操作に関する制限は、サーバー122によって実行されるセキュリティプロトコルによって構築および監視される。したがって、本発明は、ユーザーが制御マクロにおいて指定されたシステムコンポーネント(実際のDVDを含む)の操作を許可されているかどうかを判断するための、また「動画を視聴する」制御マクロを要求するユーザーを識別または認証するための手順および/または技術を提供する。ユーザーが、指定されたシステムコンポーネントへアクセスする許可を得られなかった場合、アクセスがブロックされたことを知らせるメッセージを該ユーザーに送信することができる。
【0085】
ステップ515で、本発明は、どのコマンドが、ステップ509で識別された各システムコンポーネントに関連するのかを判断する。例えば、ビューアの設定を指定する制御コマンドは、テレビ104のキューに入れられる。同様に、照明の設定を指定するための制御コマンドは、照明機器110のキューに入れられる。
【0086】
一実施態様では、サーバー122は、各システムコンポーネントのためのコンポーネント固有のコマンドを割り当てる。コンポーネント固有のコマンドは、符号化され、適切なプロトコルを介して指定されたシステムコンポーネントに送信される。サーバー122はまた、各システムコンポーネントの状態を追跡するためにその記録を更新する。
【0087】
ステップ518で、各システムコンポーネントは、コンポーネント固有のコマンドを受信して実行する。このように、特定の部屋の照明(すなわち、照明機器110)は自動的に暗くされ、特定のテレビ104の電源が入れられ、予め定義されたように構成される。特定のDVDプレーヤ(すなわち、メディアプレーヤ116)も同様に起動される。制御マクロで指定されたスピーカのオプションに依存して、識別されたオーディオコンポーネントも起動され、DVDプレーヤから送られるオーディオを待つ。
【0088】
ステップ521で、制御スクリーンは、ユーザーが制御マクロを起動するように操作したユーザーインターフェイスに送信される。携帯型コントローラ108を使用する場合、制御スクリーンがディスプレイ上に現れ、制御マクロが適切に実行されてDVDの動画の再生を始める準備ができたこと(または、オプションを選択した場合は、DVDプレーヤが所望の動画を受信する準備ができたこと)を示す。その後、ステップ595に示されるように、制御フローは終了する。
【0089】
上述のように、ユーザーによって基本的な「動画を視聴する」マクロを実行するように割り当てられた、携帯型コントローラ108上の特定のキーをユーザーが押した場合、携帯型コントローラ108は、中央ネットワークサーバー122にリクエストを送信する。そしてまた、中央サーバー122は、802.11/IRブリッジ130を介して種々の家庭用電子機器への無線ネットワーク接続を有する。したがって、携帯型コントローラ108から「動画を視聴する」リクエストを受信すると、サーバー122は、コマンド信号のシーケンスを送信して、ユーザーがDVDを視聴できるようにする(例えば、メディアプレーヤ116および関連するテレビ104またはモニタの電源を入れ、メディアプレーヤ116にDVDの再生を始めるように命令する)、複数の機能を実行する。
【0090】
本発明は、ハードキーを実装したものに限定されない。一実施態様では、携帯型コントローラ108は、スクリーンを備えたPDAであり、中央ネットワークサーバー122への無線インターフェイスとしての機能を果たす。本実施態様では、ユーザーが、携帯型コントローラ108のためのGUI上の「ソフト」、「動画を視聴する」マクロのボタンまたはアイコンを起動させた時に、ユーザーの「動画を視聴する」マクロのリクエストがサーバー122に転送される。次いで、サーバー122は、いずれもサーバー122へのネットワーク接続を有する、テレビ104およびメディアプレーヤ116に適切なコマンドを送信する。本発明の利点は、ユーザーが、制御可能な機器の照準線上に存在する必要がないことであるが、従来のIRリモートコントロールユニットではそのようにする必要がある。
【0091】
本発明の一実施態様によれば、ユーザーは、携帯型コントローラ108上のハードまたはソフトキーを起動することによって、制御マクロの動作を物理的に始めなければならない。本発明の他の実施態様では、制御マクロは、ユーザーがほとんど介入せずに制御マクロが自動的に実行される。制御マクロは、(i)特定の時間および/または特定のイベントの発生時に自動的に実行するように定義できるか、または(ii)特定のコンテキストにおけるアプリケーションに対して自動的に特殊化できる、コマンド動作のシーケンスを介して実行される。
【0092】
(A.時間ベースの実行)
本発明の一実施態様では、制御コマンドの所定のシーケンスは、プリセットした時間(すなわち、時計ベース)、および/または日付(すなわち、カレンダベース)になった時に、自動的に(すなわち、ユーザーが直接介入せずに)実行される。例えば、ユーザーは、テレビ104および衛星テレビチューナ114を本人の寝室に備えることができる。ユーザーは、本人の「起床」の日課として、午前6時30分に寝室のテレビ104の電源を自動的に入れて、特定のチャンネルに合わせたいと望む場合がある。これは、本発明と一致する制御マクロによって達成することができる。
【0093】
寝室のテレビ104および照明110が、無線ネットワーク180を介して中央サーバー122に接続されている場合、中央サーバー122は、午前6時30分に照明110を点灯し、テレビ104の電源を入れて所望のチャンネルに衛星テレビチューナ114を合わせるようにプログラムすることができる。上述のように、ユーザーは、中央サーバー122によって作成され、携帯型コントローラ108のスクリーン上に表示することができるGUIを介して、制御マクロを構成する。中央サーバー122は、図1に示されるように、携帯型コントローラ108から物理的に独立しているか、または中央サーバー122自身が携帯型コントローラ108内に存在できる、PCベースの装置とすることができる。
【0094】
携帯型コントローラ108を、サーバー122のないスタンドアロンに基づいて操作する一実施態様では、携帯型コントローラ108が、適切な1つまたは複数のコマンドをそれぞれの制御可能なコンポーネント(例、テレビ104)に直接出すか、またはネットワークのアクセスポイント182および/またはブリッジ130を介して制御可能なコンポーネントに間接的に出した時に、携帯型コントローラ108の内部時計は、午前6時30分に自動的に制御マクロを開始する。ユーザーは、したがって、携帯型コントローラ108によって作成されるGUIを使用して制御マクロを構成する。
【0095】
別様には、「起床」制御マクロは、特定の日にだけ実行するように構成することができる。例えば、ユーザーは、平日にだけ「起床」制御マクロの実行を所望する場合がある。したがって、該ユーザーは、「起床」制御マクロを平日にだけ実行するように、中央サーバー122または携帯型コントローラ108をプログラムすることができる。
【0096】
図10は、本発明の一実施態様による、時間ベースの制御マクロを構成するためのユーザーインターフェイス1000を示す。ユーザーインターフェイス1000は、構成制御フィールド1002、名前フィールド1004、時間フィールド1006、反復フィールド1008、反復定義フィールド1010、制御可能アクティビティフィールド1012、および受入れアクティベータ1014を備える。
【0097】
構成制御フィールド1002は、時間ベースの制御マクロを設定するための構成レベルを表す。構成制御フィールド1002に示されるように、「起床」制御マクロは、家庭用制御システム100のような制御環境の寝室内で生じるように予定されている。
【0098】
名前フィールド1004によって、ユーザーは、制御マクロの名前をパーソナライズすることができる。この例では、制御マクロは、「起床」に指定されている。
【0099】
時間フィールド1006によって、ユーザーは、制御マクロを実行する時間を指定できる。反復フィールド1008では、制御マクロを繰り返すのか(すなわち、反復イベント)、または一度だけ行うのか(すなわち、非反復イベント)、を指定する。反復定義フィールド1010で使用できる選択肢は、反復フィールド1008での入力によって決まる。反復フィールド1008で反復イベントを指定すると、反復フィールド1010によって、ユーザーは、反復の頻度を指定できる。例えば、制御マクロは、毎日、隔週、毎週、隔月、毎月、年ごとなどの頻度で繰り返すように予定することができる。制御マクロは、週末のみ、平日のみ、偶数日のみ、または指定した休日、誕生日、または記念日などにのみ実行するように予定することができる。一実施態様では、ユーザーが、制御マクロを実行する開始日および/または終了日を指定できるようにするフィールドを備える。
【0100】
制御可能アクティビティフィールド1012によって、ユーザーは、制御マクロの実行時に生じる1つまたは複数の特定のイベントを識別することができる。例えば、ユーザーは、テレビ104の電源を入れて特定のチャンネルに合わせる(図10に「ケーブルテレビを視聴する」で示す)こと、テレビ104およびDVDプレーヤ(すなわち、メディアプレーヤ116)の電源を入れて指定した動画を見る(図10に「DVDを視聴する」で示す)こと、ステレオの電源を入れて指定した周波数のチャンネルに合わせる(図10に「衛星ラジオを聴く」で示す)こと、照明110を点灯すること、起床アラームなどを要求することができる。
【0101】
各フィールド(例、時間フィールド1006、反復定義フィールド1010、制御可能アクティビティフィールド1012など)に対するオプションは、ドロップダウンメニューに予め定義して表示することができる。または、ユーザーは、入力機器を使用して、所望のパラメータを手動で入力することができる。
【0102】
受入れアクティベータ1014によって、ユーザーは、選択を終了させ、中央サーバーに新しく定義した制御マクロを受け入れるように命令することができる。ユーザーインターフェイス1000のフィールドが適切に入力されると、ユーザーは、入力機器(マウス、スタイラス、フィンガーなど)を操作して、受入れアクティベータ1014に触れることができ、ユーザーインターフェイス1000からの入力は、中央サーバー122で処理され、必要に応じて次のユーザーインターフェイスが示される。
【0103】
図10に示されるように、「ケーブルTVを視聴する」を制御可能アクティビティフィールド1012において所望のアクティビティとして選択する。したがって、ユーザーは、所望のアクティビティを実行するための主たるシステムコンポーネントおよび関連するシステムコンポーネントを指定する必要がある。図11は、本発明の一実施態様による、時間ベースの制御マクロを実行するために制御可能なシステムコンポーネントを構成するためのユーザーインターフェイス1100を示す。構成制御フィールド1002に示すように、テレビ104は、制御環境(例、居住制御システム100)の寝室内で「起床」制御マクロを実行するように構成されている。
【0104】
ユーザーインターフェイス1100は、入力フィールド1104、オーディオフィールド1103、および、キャプションフィールド1108を備える。入力フィールド1104によって、ユーザーは、予定したテレビのイベントに対する入力ソースを指定することができる。図に示されるように、ユーザーは、ケーブルソース(例、ケーブルボックス118)から入力を要求される。他のオプションには、DSSボックス120から送られる衛星放送、チューナ114またはテレビ104に接続されたアンテナから放送する無線放送、メディアプレーヤ116(PVR、VCR、DVDなど)などが挙げられる。
【0105】
オーディオフィールド1106によって、ユーザーは、オーディオレベルを指定することができる。オーディオレベルは、ミュートまたは所定のデシベルレベルにすることができる。
【0106】
キャプションフィールド1108によって、ユーザーは、テキストまたは字幕のオプションを要求することができる。ユーザーインターフェイス1100での適切な完了時に、ユーザーは、入力機器(マウス、スタイラス、フィンガーなど)を操作して、受入れアクティベータ1014に触れることができ、ユーザーインターフェイス1100からの入力は、中央サーバー122で処理され、必要に応じて次のユーザーインターフェイスが示される。
【0107】
図11に示されるように、「ケーブル」は、テレビ104のための所望の入力ソースとして選択される。したがって、ユーザーは、主たるシステムコンポーネントのテレビ104への入力を提供するために、関連するシステムコンポーネントを構成する必要があるが、この例では、所望のアクティビティを実行するためのケーブルチャンネルを指定する。図12は、本発明の一実施態様による、時間ベースの制御マクロを実行するために、関連する制御可能なシステムコンポーネントを構成するためのユーザーインターフェイス1200を示す。構成制御フィールド1002に示されるように、ケーブルボックス118は、制御環境(例、居住制御システム100)の寝室内で「起床」制御マクロを実行するように構成されている。
【0108】
ユーザーインターフェイス1200は、ユーザーに所望のチャンネルを指定させる、チャンネルフィールド1204を備える。チャンネルフィールド1204の適切な完了時に、ユーザーは、受入れアクティベータ1014を起動させることができ、ユーザーインターフェイス1200からの入力は、中央サーバー122で処理される。ユーザーが、必要に応じて更なるシステムコンポーネントを構成できるように、更なるユーザーインターフェイスを示すことができる。
【0109】
(B.状態またはイベントベースの実行)
本発明の一実施態様では、制御コマンドの所定のシーケンスは、特定のイベントが生じた時、または特定のシステムまたはコンポーネントの状態が生じた時に始まる。例えば、制御マクロは、システムコンポーネント(例、家庭用電子機器)が特定の状態(例えば、居間にあるテレビ104の電源が入れられた状態)にあることが検出された時に、自動的に実行される。参照することにより本願明細書に全体が組み込まれる、係属中の出願、名称「Legacy Device Bridge for Residential or Non−Residential Networks」(米国特許出願第10/387,590号、2003年3月14日出願)に記載されているように、家庭用電子機器のオン/オフ状態は、状態検出器を使用することによって判断することができる。当該の状態検出器は、テレビ104用のスクリーン向けである光電性プローブのように単純にするか、または基本的なオン/オフメーターとして機能するようにできる。光電性プローブが、テレビ104のスクリーンからの発光(または、代わりに、テレビ104用LED電源インジケータの赤色光から緑色光への変化)を感知すると、プローブはその情報を中央サーバー122に渡し、そこではテレビ104が「オン」の状態にあると判断する。
【0110】
該サーバーは、居間のテレビ104が「オン」の状態であることを検出または判断すると、次いで、所望の制御マクロを定義する適切なコマンドのシーケンスをそれぞれのシステムコンポーネントに自動的に送信する。例えば、サーバー122は、テレビ104の電源が入ったら居間の照明を暗くしてDVDやメディアプレーヤ116を起動させる、「DVDを視聴する」マクロを実行するようにプログラムすることができる。
【0111】
本発明の別の実施態様では、(状態とは対照的な)特定の検出可能なイベントの発生は、予めプログラムされたマクロを即座に自動実行する役目を果たすことができる。例えば、窓(またはドア)には、中央サーバー122に接続され、その窓が開いているかどうかを中央サーバー122に知らせるために、電気や磁気、あるいは光センサーを備えることができる。台所の窓が開いていることを検出した時、サーバー122は、「セキュリティ」制御マクロを自動的に実行することができる。この制御マクロは、台所の照明110の電源を入れ、および/または警報器を鳴らす(すなわち、照明110および警報器は、中央サーバー122へのネットワーク接続を有する)。または、例えば、ドアベル(ドアベルは中央サーバー122へのネットワーク接続を有する)が鳴らされた時に、サーバー122は、屋外の照明を点灯する制御マクロを実行することができる。
【0112】
本発明の制御マクロはまた、状態、イベント、および時間との組み合わせに応じて起動させることもできる。例えば、上述の「セキュリティ」マクロは、週末(すなわち、日付)の午後10時以降(すなわち、時間)に台所の窓が開けられている(すなわち、状態)場合にのみ起動させることができる。
【0113】
図6は、所定の時間、日付、状態、イベント等の「開始」パラメータが生じた時に起動される、制御マクロを定義するための一例を示す。図6を参照する。ユーザーがマクロの記録コマンドを起動した時に、フローチャート600の制御フローは、ステップ601から始まる。
【0114】
ステップ603で、ユーザーは、上述の機器(すなわち、携帯型コントローラ108、コンピュータクライアント106、サーバー122へのユーザーインターフェイスなど)のうちの1つを操作して、制御マクロを構築するために1つ以上のシステムコンポーネントの設定を識別および指定する。例えば、ユーザーは、図4のステップ403〜418によって上述のように動画を視聴するために、複数のオーディオビデオ機器を構成することができる。別の例として、ユーザーは、上述のような「起床」制御マクロを作成するために、寝室の照明110、テレビ104、およびチューナ114を構成することができる。ユーザーはまた、上述のような「セキュリティ」制御マクロを定義するために、警報システム、照明110、防犯カメラ、およびモニタの動作を構成することもできる。上述の例がすべてをいうわけではない。他の種類のシステムコンポーネントおよびシステムコンポーネントの組み合わせを、本願明細書において述べたように構成し制御マクロに関連づけることができる。
【0115】
上述のように、一実施態様では、制御マクロはサーバー122によって自動的に作成することができる。このように、ステップ603で、サーバー122は、例えば、保存した部屋のプロファイルから検出された時、または部屋のプロファイルが作成されたことをリアルタイムで検出した時に、選択された部屋または領域内に適切なシステムコンポーネントが存在することを検出することによって、DVDを視聴するように制御マクロを設定することができる。
【0116】
ステップ606で、ユーザーは、起動したときに、ステップ603で指定される制御マクロを自動的に実行できるようにする、開始パラメータを指定する。上述のように、開始パラメータは、所定の時間、日付、状態、イベントなどとすることができる。開始パラメータはまた、開始パラメータを組み合わせたものとすることもできる。
【0117】
ステップ609で、仕様をステップ603〜606で実行するための制御コマンドは、制御マクロに集合的に関連する。ステップ612で、制御マクロにはファイル名が与えられ、保存場所に保存される。携帯型コントローラ108および中央サーバー122を使用する一実施態様では、制御マクロは携帯型コントローラ108に保存され、関連する制御コマンドは中央サーバー122に保存される。別の実施態様では、制御マクロおよび関連する制御コマンドは、サーバー122に保存される。(上述のように)中央サーバー122を用いない一実施態様では、制御マクロおよび関連する制御コマンドのどちらも携帯型コントローラ108に保存される。
【0118】
制御マクロが作成および保存された後、制御マクロは、1つまたは複数の開始パラメータが発生した時に起動できる状態になり、ステップ695に示されるように、制御フローは終了する。
【0119】
図7は、本発明の一実施態様による、自動的に実行可能な制御マクロを起動させるための一例を示す。フローチャート700は、フローチャート600の制御マクロを起動させるための制御フローを示す。
【0120】
図7を参照する。フローチャート700の制御フローは、ステップ701から始まり、直ちにステップ703に移動する。ステップ703で、開始パラメータの発生は、携帯型コントローラ108、サーバー122、または携帯型コントローラ108またはサーバー122と通信するいくつかの他のシステムコンポーネントによって検出される。開始パラメータの発生を検出すると、ステップ706で、開始パラメータの発生に関連する制御マクロにアクセスし起動させる。
【0121】
例えば、開始パラメータは、所定の日付/時刻およびコンポーネントの状態とすることができる。すなわち、ユーザーは、1月中の午後8時以降にテレビ104の電源が入った場合に、部屋の照明を点灯させるように制御マクロを設定することが可能である。開始パラメータは、したがって、日および時間(すなわち、1月1日から31日の午後8時以降)およびコンポーネントの状態(すなわち、テレビの電源が入れられている)を組み合わせたものとなる。このように、誰かが1月中の午後8時以降にテレビの電源を入れた場合、ステップ703で、状態検出器は、上述のように中央サーバー122に信号を送る。その後、ステップ706で、部屋の照明を点灯するために、制御コマンドが送信される。
【0122】
一実施態様では、ユーザーの役割は、ステップ512で述べたように、制御コマンドを起動する前に構築および照合することができる。他の実施態様では、特定の領域および/または制御可能なシステムコンポーネントは、ステップ509〜521で述べたように、識別および命令される。
【0123】
所定の開始パラメータが発生した時に、制御マクロが自動的に実行された後、ステップ795に示されるように、制御フローは終了する。
【0124】
(C.コンテキストベースのマクロ)
上述のように、(図5のステップ509を参照して)、制御マクロは、部屋特定のものとする必要がない。実際に、本発明の一実施態様によれば、一般制御マクロ(例えば「TVの電源オン」マクロ)は、ある種のコンテキスト(例、特定の部屋)で使用するために自動的に特殊化することができる。固定された所定のコマンドのシーケンスによって定義される制御マクロとは異なり、本発明の「コンテキストベースの」制御マクロは、下位のコマンドは異なっていて、それが適用されるそれぞれのコンテキストに対して自動的に作成される、という意味においては動的である。
【0125】
上述のように、「DVDを視聴する」マクロは、システムコンポーネントのセットを制御するために、構築および使用することができる。したがって、居間の娯楽センター(例えば、SONY社のTVおよびPHILIPS社のDVDプレーヤを備える場合がある)のために特に作成された「DVDを視聴する」マクロは、異なるシステムコンポーネントのセット(例えば、RCA社のTVおよびSAMSUNG社のDVDプレーヤ)を備える寝室では使用できない。ユーザーが、住居内の全てのテレビおよびDVDプレーヤを制御できる「汎用」のリモコンを所有していても、該ユーザーは依然として各部屋の特定のシステムコンポーネントのセットに対して異なる「DVDを視聴する」マクロをプログラムしなければならない。
【0126】
本発明は、ユーザーが、ユーザーの家庭内の家庭用電子機器および汎用アプリケーションのための他のシステムコンポーネント(システム100)を制御するために、一般マクロをプログラムできるようにする手順および/または技術を含む。一実施態様では、一般マクロを起動する場合、該マクロは、特定の部屋に備えられたシステムコンポーネントに即してマクロを実行するために、中央サーバー122(家庭用電子機器および他のシステムコンポーネントとのネットワーク接触を有する)によって解釈される。例えば、ユーザーは、システムコンポーネントが部屋ごとに異なることに関係なく、住居全体(例、システム100)で使用できる「DVDを視聴する」一般マクロ(例えば、テレビ104、DVDやメディアプレーヤの電源を入れ、DVDを再生する)をプログラムすることができる。
【0127】
上述のように、「位置認識」プロトコルによって、中央サーバー122および/または携帯型コントローラ108は、ユーザーがどんな部屋に入って、その部屋のシステムコンポーネントを携帯型コントローラ108で制御しようとしているのかを検出できるようになる。本発明に関して、ユーザーが、本人の部屋において「DVDを視聴する」一般マクロを起動した場合、中央サーバー122は、ユーザーが現在存在する部屋(例、居間)に即して一般マクロを解釈する。したがって、中央サーバー122は、居間で起動された「DVDを視聴する」一般マクロに対応する適切なコマンド(例えば、居間にあるSONY社のTVおよびPHILIPS社のDVDプレーヤの電源を入れる)を発行する。同様に、ユーザーが、本人の寝室において、同一の「DVDを視聴する」一般マクロを起動した場合、中央サーバー122は、寝室で起動された一般マクロを検出し、適切なコマンドをユーザーの寝室にあるRCA社のTVおよびSAMSUNG社のDVDプレーヤに送信する。このように、ユーザーは、制御環境を通して見出される、異なるシステムコンポーネントのセットに使用できる単一の「DVDを視聴する」一般マクロをプログラムおよび維持するだけでよい。
【0128】
コンテキストベースのマクロの他の例には、マクロが起動される部屋に即して自動的に実行される、「照明を点灯する」一般マクロが挙げられる。したがって、本発明によれば、ユーザーが、台所で「照明を点灯する」マクロを起動した場合、中央サーバーは、台所にある照明だけを点灯する。このように、ユーザーは、住居内の各部屋に対して異なる「照明を点灯する」マクロをプログラムおよび維持する必要がない。
【0129】
図8は、本発明の一実施態様による、コンテキストベースの制御マクロを定義するための一例を示す。図8を参照する。ユーザーがマクロの記録コマンドを起動した場合に、フローチャート800の制御フローはステップ801から始まる。
【0130】
ステップ803で、ユーザーは、上述の機器(すなわち、携帯型コントローラ108、コンピュータクライアント106、またはサーバー122へのユーザーインターフェイス)のうちの1つを操作して、1つ以上のシステムコンポーネントの動作および/または機能を制御するために、一般制御マクロを構築する。しかし、ユーザーは、特に、システムコンポーネントを識別するのではなく、むしろ所望の結果に対する設定を指定する。例えば、図4で述べた「動画を視聴する」例を参照して、ユーザーは、所望の結果(例、記録したDVDを視聴する)を作成する必要のあるシステムコンポーネントの「種類」を指定し、そのコンポーネントのための設定を構成する。
【0131】
一実施態様では、スクリーンは、特定のテレビ104と無関係なテレビ104のようなコンポーネントの種類の識別だけを行うユーザーに示される。ユーザーは、スクリーンと情報のやりとりを行って、上述のステップ409を参照して、テレビ104のための所望の設定を指定するが、特定の機器(例えば、居間にあるSONYのテレビ)は、制御スクリーンにおいて識別されない。ユーザーは、類似した種類のコンポーネントのスクリーンを完了して、所望の結果の作成が必要な他の種類のシステムコンポーネントの所望の設定を指定する。図4を参照する。他の種類のシステムコンポーネントは、オーディオクライアント、DVD/メディアプレーヤ116、および照明機器110である。これらの種類のシステムコンポーネントの設定は、特定のコンポーネントを識別せずに構築される。所望の結果に応じて、他の種類のシステムコンポーネントおよびシステムコンポーネントを組み合わせたものを、本願明細書で述べたように、構築および一般制御マクロに関連づけることができる。
【0132】
図6を参照する。上述のように、一実施態様では、ユーザーは、開始パラメータを指定することができる。上述のように、ユーザーは、1つ以上の開始パラメータが発生したときに、自動的に実行するように、一般制御マクロをプログラムすることができる。
【0133】
ステップ806で、仕様をステップ803から実行するための制御コマンドは、一般制御マクロに関連づけられる。ステップ809で、一般制御マクロにはファイル名が与えられ、保存場所に保存される。携帯型コントローラ108および中央サーバー122を使用した一実施態様では、一般制御マクロは携帯型コントローラ108に保存され、関連する制御コマンドは中央のサーバー122に保存される。別の実施態様では、一般制御マクロおよび関連する制御コマンドは、サーバー122に保存される。(上述のように)中央サーバー122を用いない一実施態様では、一般制御マクロおよび関連する制御コマンドのどちらも携帯型コントローラ108に保存される。
【0134】
別様には、コンテキストベースの制御マクロは、参照することによりその全体が組み込まれる、名称「User Interface for Multi−Device Control」(米国特許仮出願第60/516,302)に記載されているように、システムコンポーネントの標準設定プロセスを介して情報を入力することによって、システムコンポーネント間の関連をユーザーが定義する時に作成することができる。例えば、ユーザーが所望する各体験(例、DVDを視聴する、衛星テレビを視聴する、CDを聴くなど)に対して、ユーザーは、その体験に関連してどのシステムコンポーネントを起動する必要があるのか、起動した各システムコンポーネントに対してどのような設定があるのか、各システムコンポーネントが入力(例、受信器、アンプ、テレビ104)を備えているかどうか、どのようなシステムコンポーネントがそれらの入力に接続されているのか、などを含む、特定の情報を提供するように求められる。この情報から、制御スクリプトのセットが特定のユーザー体験に対して生成される。スクリプト内のコマンドは、その体験のためのユーザーインターフェイスに対する動作によって起動される。スクリプト内のコマンドは、次いで、それらが作用するシステムコンポーネントに関するシステムコンポーネント固有のコマンドを起動する(例えば、「DVDを視聴する」マクロの起動が、テレビ104およびDVDプレーヤ(例、メディアプレーヤ116に対する「オン」コマンドを起動する))。
【0135】
一般制御マクロが作成および保存された後、制御マクロが起動できる状態になり、ステップ895に示されるように、制御フローは終了する。
【0136】
図9は、本発明の一実施態様による、コンテキストベースの制御マクロを起動させるための一例を示す。フローチャート900は、フローチャート800の制御マクロを起動させるための制御フローを示す。
【0137】
図9を参照する。フローチャート900の制御フローは、ステップ901から始まり、直ちにステップ903に移動する。
【0138】
ステップ903で、ステップ801〜895において定義される一般制御マクロを起動させる。制御マクロは、ユーザーが携帯型コントローラ108を操作して起動することができる。または、制御マクロは、図7に示されるように、1つまたは複数の開始パラメータが生じた時に自動的に起動することができる。
【0139】
図9を参照する。ステップ906で、一般制御マクロに関連するコマンドのセットが、それらの保存場所から再呼び出しされる。該コマンドのセットは、1つまたは複数の特定の種類の1つまたは複数のシステムコンポーネントの機能または動作を制御するための、ユーザーが予め定義した仕様を含む。図4に記述される「動画を視聴する」例において、「動画を視聴する」一般制御マクロに関連するコマンドのセットは、照明機器110の変更、メディアプレーヤ116の起動、テレビ104の起動、およびオーディオクライアントの起動に対するコマンドを含むが、特定のシステムコンポーネントは該コマンドでは識別されない。
【0140】
ステップ909で、特定の領域および1つ以上のシステムコンポーネント(例、テレビ104またはメディアプレーヤ116、照明機器110、オーディオクライアントなど)が、コマンドのセットのために識別される。図4を参照する。上述のように、ユーザーは、制御マクロを構築する時に領域を指定することができる。また、上述のように、本発明は、ユーザーまたは携帯型コントローラ108の位置を追跡するための手順および/または技術を含む。したがって、ユーザーは、ユーザーが現在位置する制御環境100のいずれかの領域で動画を視聴するために、一般制御マクロを起動するように要求することができる。このように、サーバー122は、ユーザーの現在位置が、制御マクロを実行する領域であると指定する。サーバー122はまた、ユーザーの現在位置に対する領域プロファイルを検索し、指定した領域に位置するシステムコンポーネント(メディアプレーヤ116、照明機器110など)を識別する。一実施態様では、ユーザーの役割は、各識別されたシステムコンポーネントに対して構築および照合することができる。
【0141】
ステップ912で、本発明は、どのコマンドが、ステップ909で識別された各システムコンポーネントに関連するのかを判断する。ステップ915で、各識別されたシステムコンポーネントは、コンポーネント固有のコマンドを受信して実行する。「動画を視聴する」例を参照する。このように、特定の領域内の照明(すなわち、照明機器110)は自動的に暗くされ、特定のテレビ104の電源が入れられ、予め定義されたように構成される。特定のDVDプレーヤ(すなわち、メディアプレーヤ116)も同様に起動される。制御マクロで指定されたスピーカのオプションによって、識別されたオーディオコンポーネントが同様に起動され、DVDプレーヤから送られるオーディオを待つ。コンテキストベースの制御マクロが実行された後、ステップ995に示されるように、制御フローは終了する。
【0142】
(IV.典型的なシステムの実装)
図1〜12は、本発明を説明できる概念上の図である。本発明の実施態様は、ハードウェア、ファームウェア、ソフトウェア、またはそれらを組み合わせたものにおいて使用できると理解されたい。当該の実施態様では、本発明の機能を実行するために、様々なコンポーネントおよびステップが、ハードウェア、ファームウェア、および/またはソフトウェアにおいて使用される。すなわち、ハードウェア、ファームウェア、またはソフトウェアのモジュールの同一部分は、1つ以上の図示されたブロック(すなわち、コンポーネントまたはステップ)を実行することができる。
【0143】
加えて、本発明は、本願明細書に記述される機能を実行できる1つ以上のコンピュータシステムまたは他の処理システムにおいて使用することができる。図13を参照する。本発明の実施に有用な例であるコンピュータシステム1000を示す。様々な実施態様を、この例示的コンピュータシステム1300に関して説明する。この記述を読んだ後、当業者には、他のコンピュータシステムおよび/またはコンピュータアーキテクチャを使用して、どのように本発明を実施するのかが明らかになろう。
【0144】
コンピュータシステム1300は、プロセッサ1304のような1つ以上のプロセッサを備える。プロセッサ1304は、特殊用途向けまたは汎用デジタル信号処理装置とすることができる。プロセッサ1304は、通信インフラ1306(例、通信バス、クロスオーバーバー、またはネットワーク)に接続される。
【0145】
コンピュータシステム1300は、グラフィック、テキスト、および他のデータを通信インフラ1306(または図示しないが、フレームバッファ)からディスプレイユニット1330のディスプレイに転送する、ディスプレイインターフェイス1302を備える。
【0146】
コンピュータシステム1300はまた、メインメモリ1308、好ましくはランダムアクセスメモリ(RAM)を備え、二次メモリ1310を含むこともできる。二次メモリ1310には、例えば、ハードディスクドライブ1312および/またはフロッピー(登録商標)ディスクドライブ、磁気テープドライブ、光学ディスクドライブなどに相当するリムーバブル記憶ドライブ1314を備えることができる。リムーバブル記憶ドライブ1314は、周知の方法でリムーバブル記憶ユニット1318との読み書きを行う。リムーバブル記憶ユニット1318は、リムーバブル記憶ドライブ1314によって読み書きを行うフロッピー(登録商標)ディスク、磁気テープ、光学ディスクなどに相当する。理解されるように、リムーバブル記憶ユニット1318は、その中にコンピュータソフトウェア(例えば、プログラムまたは他の命令)および/またはデータが保存された、コンピュータが使用可能な記憶媒体を備える。
【0147】
別の実施態様では、二次メモリ1310は、ソフトウェアおよび/またはデータをコンピュータシステム1300にロードさせる、他の類似する手段を備える。当該の手段には、例えば、リムーバブル記憶ユニット1322およびインターフェイス1320が挙げられる。当該の手段の例には、(ビデオゲーム機器に見られるような)プログラムカートリッジおよびカートリッジインターフェイス、(EPROM、またはPROMのような)リムーバブルメモリチップおよび関連するソケット、およびリムーバブル記憶ユニット1322ならびにソフトウェアおよびデータをリムーバブル記憶ユニット1322からコンピュータシステム1300に移動させる、インターフェイス1320が挙げられる。
【0148】
コンピュータシステム1300はまた、通信インターフェイス1324を備えることもできる。通信インターフェイス1324は、コンピュータシステム1300と外部機器との間でソフトウェアおよび/またはデータを移動させる。通信インターフェイス1324の例には、モデム、(イーサネット(登録商標)カードのような)ネットワークインターフェイス、通信ポート、PCMCIAスロットおよびカードなどが挙げられる。通信インターフェイス1324を介して移動されるソフトウェアおよびデータの形態は、電子的、電磁的、または通信インターフェイスが受信することのできる他の信号とすることができる、信号1328である。これらの信号1328は、通信経路(すなわち、チャネル)を介して、通信インターフェイス1324に提供される。通信経路1326は、信号1328を搬送し、ワイヤーまたはケーブル、光ファイバ、電話回線、携帯電話リンク、RFリンク、自由空間光通信、および他の通信チャネルを使用して実装することができる。
【0149】
本明細書において、「コンピュータプログラム媒体」および「コンピュータが使用可能な媒体」という用語は、概してリムーバブル記憶ユニット1318、リムーバブル記憶ユニット1322、ハードディスクドライブ1312に組み込まれるハードディスク、および信号1328のような媒体を指すために使用される。これらのコンピュータプログラム製品は、ソフトウェアをコンピュータシステム1300に提供するための手段である。一実施態様では、本発明は、当該のコンピュータプログラム製品を対象とする。
【0150】
コンピュータプログラム(コンピュータ制御ロジックまたはコンピュータ可読のプログラムコードとも呼ばれる)は、メインメモリ1308および/または二次メモリ1310に保存される。コンピュータプログラムはまた、通信インターフェイス1324を介して受信することもできる。実行すると、当該のコンピュータプログラムによって、コンピュータシステム1300は、本願明細書で述べるように本発明を実施することができるようになる。特に、実行すると、コンピュータプログラムによって、プロセッサ1304は、例えば、携帯型コントローラ108、サーバー122および/または、例えば、方法200、300、400、500、600、700、800、および/または900のような上述のシステム100の他のシステムコンポーネントを使用して実行される方法のような、本発明の処理を実行できるようになる。したがって、当該のコンピュータプログラムは、コンピュータシステム1300のコントローラに相当する。
【0151】
ソフトウェアを使用して本発明が実行される一実施態様では、ソフトウェアをコンピュータプログラム製品に保存することができ、リムーバブル記憶ドライブ1314、ハードディスク装置1312、または通信インターフェイス1324を使用してコンピュータシステム1300にロードすることができる。プロセッサ1304によって実行すると、制御ロジック(ソフトウェア)は、プロセッサ1304に、本願明細書に記述されたような本発明の機能を実行させる。
【0152】
別の実施態様では、本発明は、主に、例えば、特定用途向け集積回路(ASIC)のようなハードウェアコンポーネントを使用したハードウェアにおいて実行される。本願明細書に記述される機能を実行するためのハードウェア状態機械の使用は、当業者には明らかである。
【0153】
さらに別の実施態様では、本発明は、ハードウェアおよびソフトウェアを組み合わせて使用して実行される。
【0154】
本発明の様々な実施態様を述べてきたが、それらは一例として示されたものであり、これに限定されるものではないと理解されたい。本発明の精神と範囲から逸脱することなく、形態および細部の様々な変更を行うことができることは、当業者には明らかである。さらに、上述のように、本発明の方法、システム、およびコンピュータプログラム製品は、居住環境に限定されるものではないと理解されたい。本発明は、メディアを配信し、コマンドおよび/または制御信号を指定された領域全体に分散された複数の機器および/またはアプリケーションに送信するための中央処理システムを有する他の環境においても実行することができる。住居に加えて、指定された領域には、これに限定されないが、オフィスビル、一連の小オフィス、制作スタジオ、倉庫、娯楽場、医療施設、ホテル、リゾート地、航空機、船、自動車などが挙げられる。したがって、本発明は、上述の典型的な実施態様のいずれかに限定されるものではなく、以下の請求項およびそれらの同等物によってのみ定義されるべきである。
【図面の簡単な説明】
【0155】
【図1】本発明の一実施態様による、制御システムを示す。
【図2】本発明の一実施態様による、システムコンポーネントの追跡および/または監視を示す。
【図3】本発明の一実施態様による、ユーザー位置に応じたシステムコンポーネントへの命令および制御を示す。
【図4】本発明の一実施態様による、動画の記録を視聴するための制御マクロの定義を示す。
【図5】本発明の一実施態様による、図4の制御マクロの起動を示す。
【図6】本発明の一実施態様による、自動的に実行可能な制御マクロの定義を示す。
【図7】本発明の一実施態様による、図6の自動的に実行可能な制御マクロの起動を示す。
【図8】本発明の一実施態様による、コンテキストベースの制御マクロの定義を示す。
【図9】本発明の一実施態様による、図8のコンテキストベースの制御マクロの起動を示す。
【図10】本発明の一実施態様による、時間ベースの制御マクロを構成するためのユーザーインターフェイスを示す。
【図11】本発明の一実施態様による、時間ベースの制御マクロを実行する制御可能なシステムコンポーネントを構成するためのユーザーインターフェイスを示す。
【図12】本発明の一実施態様による、時間ベースの制御マクロを実行する、関連する制御可能なシステムコンポーネントを構成するためのユーザーインターフェイスを示す。
【図13】本発明の実施に有用なコンピュータシステムの一例を示す。

【特許請求の範囲】
【請求項1】
制御環境内のシステムコンポーネントの管理方法であって、
所定の開始パラメータの発生を検出するステップと、
該開始パラメータに関連する、コンポーネント固有のコマンドのシーケンスにアクセスするステップと、
該シーケンスを複数のシステムコンポーネントに送信するステップと、
該シーケンスのうちのコンポーネント固有のコマンドを、該複数のシステムコンポーネントのうちの対応するシステムコンポーネントで受信した時に、該対応するシステムコンポーネントを制御するために該コンポーネント固有のコマンドの各々を実行するステップと
を含む、方法。
【請求項2】
前記検出するステップは、日および/または時間を検出するステップを含み、該日および/または時間が、前記開始パラメータとして指定される、請求項1に記載の方法。
【請求項3】
前記検出するステップは、前記複数のシステムコンポーネントのうちの1つのシステムコンポーネントの動作状態を検出するステップを含み、該動作状態が、前記開始パラメータとして指定される、請求項1に記載の方法。
【請求項4】
前記制御環境内の領域を決定するステップと、
該領域内に含まれるシステムコンポーネントを識別するステップと
をさらに含み、前記複数のシステムコンポーネントが、該識別されたシステムコンポーネントを含む、請求項1に記載の方法。
【請求項5】
前記決定するステップは、前記複数のシステムコンポーネントのうちの1つのシステムコンポーネントの現在位置から前記領域を決定するステップを含む、請求項4に記載の方法。
【請求項6】
前記決定するステップは、ユーザー入力から前記領域を決定するステップを含み、該入力が該領域を指定する、請求項4に記載の方法。
【請求項7】
前記送信するステップを実行する前に、各システムコンポーネントの制御に対する許可を認証する、請求項1に記載の方法。
【請求項8】
前記送信するステップは、無線メディアを通じて前記シーケンスを送信するステップを含む、請求項1に記載の方法。
【請求項9】
制御環境内のシステムコンポーネントの管理方法であって、
実行時に複数のシステムコンポーネントを制御するコンポーネント固有のコマンドのシーケンスを作成できるようにするステップと、
該シーケンスを開始パラメータの発生と関連づけるステップと、
該開始パラメータの該発生を検出するステップと、
該シーケンスのうちのコンポーネント固有のコマンドを、該複数のシステムコンポーネントのうちの対応するシステムコンポーネントで受信した時に、該対応するシステムコンポーネントを制御するために該コンポーネント固有のコマンドの各々を実行するステップと
を含む、方法。
【請求項10】
前記検出するステップは、日および/または時間を検出するステップを含み、該日および/または時間が、前記開始パラメータとして指定される、請求項9に記載の方法。
【請求項11】
前記検出するステップは、前記複数のシステムコンポーネントのうちの1つのシステムコンポーネントの動作状態を検出するステップを含み、該動作状態が、前記開始パラメータとして指定される、請求項9に記載の方法。
【請求項12】
前記制御環境内の領域を決定するステップと、
該領域内に含まれるシステムコンポーネントを識別するステップと
をさらに含み、前記複数のシステムコンポーネントが、該識別されたシステムコンポーネントを含む、請求項9に記載の方法。
【請求項13】
制御環境内の複数のシステムコンポーネントと情報のやりとりを行うためのコントローラであって、
該コントローラは、所定の開始パラメータに関連する、コンポーネント固有のコマンドのシーケンスを構成および保存するように機能し、
該コントローラは、該所定の開始パラメータの発生に応じて、該複数のシステムコンポーネントのうちの1つ以上のシステムコンポーネントの動作または機能を制御するために、該シーケンスのうちのコンポーネント固有のコマンドを該コンポーネントに送信するように機能する、コントローラ。
【請求項14】
制御環境内の複数のシステムコンポーネントを管理するためのシステムであって、
該複数のシステムコンポーネントの動作および/または機能を制御するための制御センターと、
該制御センターと情報のやりとりを行うためのコントローラとを備え、
該コントローラは、所定の開始パラメータに関連するコンポーネント固有のコマンドのシーケンスを構成するように機能し、
該制御センターは、該コンポーネント固有のコマンドの該シーケンスを保存し、該所定の開始パラメータの発生に応じて、該シーケンスを該複数のシステムコンポーネントに送信するように機能する、システム。
【請求項15】
前記制御センターが、前記コンポーネント固有のコマンドのシーケンスを、前記コントローラから受信した入力によって定められる該コントローラの近傍に位置する1つ以上の複数のシステムコンポーネントに送信するように機能する、請求項14に記載のシステム。
【請求項16】
前記コントローラの位置または動きを追跡および/または監視するためのポジショニング手段をさらに備え、
該コントローラは、該ポジショニング手段と情報のやりとりを行うように機能し、
前記制御センターは、前記コンポーネント固有のコマンドのシーケンスを、該ポジショニング手段によって定められる該コントローラの近傍に位置する1つ以上の複数のシステムコンポーネントに送信するように構成される、請求項14に記載のシステム。
【請求項17】
コンピュータが制御環境内のコンポーネントのシステムの管理を行うための、コンピュータが使用可能な媒体に組み込まれたコンピュータ可読のプログラムコード手段を有する、該媒体を含むコンピュータプログラム製品であって、
所定の開始パラメータの発生を検出するための第1のコンピュータ可読のプログラムコード手段と、
該開始パラメータに関連するコンポーネント固有のコマンドのシーケンスにアクセスするための第2のコンピュータ可読のプログラムコード手段と、
該シーケンスを複数のシステムコンポーネントに送信するための第3のコンピュータ可読のプログラムコード手段と
を含み、該シーケンスのうちの各コンポーネント固有のコマンドは、該複数のシステムコンポーネントのうちの対応するシステムコンポーネントで該コンポーネント固有のコマンドの受信した時に、該対応するシステムコンポーネントの各々を制御するように実行可能である、コンピュータプログラム製品。
【請求項18】
前記第1のコンピュータ可読のプログラムコード手段は、日および/または時間を検出するための第4のコンピュータ可読のプログラムコード手段を含み、該日および/または時間が、前記開始パラメータとして指定される、請求項17に記載のコンピュータプログラム製品。
【請求項19】
前記第1のコンピュータ可読のプログラムコード手段は、
前記複数のシステムコンポーネントのうちのシステムコンポーネントの動作状態を検出するための第4のコンピュータ可読のプログラムコード手段を含み、
該動作状態が、前記開始パラメータとして指定される、請求項17に記載のコンピュータプログラム製品。
【請求項20】
前記制御環境内の領域を決定するための第4のコンピュータ可読のプログラムコード手段と、
該領域内に含まれるシステムコンポーネントを識別するための第5のコンピュータ可読のプログラムコード手段と
をさらに含み、前記複数のシステムコンポーネントが、該識別されたシステムコンポーネントを含む、請求項17に記載のコンピュータプログラム製品。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公表番号】特表2007−517313(P2007−517313A)
【公表日】平成19年6月28日(2007.6.28)
【国際特許分類】
【出願番号】特願2006−547085(P2006−547085)
【出願日】平成16年12月13日(2004.12.13)
【国際出願番号】PCT/US2004/041468
【国際公開番号】WO2005/065148
【国際公開日】平成17年7月21日(2005.7.21)
【出願人】(504317525)オープンピーク インコーポレイテッド (33)
【Fターム(参考)】