(57)【要約】【課題】  従来にない新種の機器がネットワークに接続された場合や、通常ない特殊な使用形態がネットワークに設定された場合にも、機器制御を円滑に行い得るネットワークシステムを提供する。【解決手段】  コントローラ１００は、前記宅内ネットワークに接続された機器のデバイスタイプとスケルトンＤＢ１０４に格納されているスケルトンとを比較し、当該機器種別に応じたスケルトンルールがスケルトンＤＢ１０４に格納されていないとき、当該機器のスケルトンルールの取得要求をサーボスエージェント３００に送信する。加えて、コントローラ１００は、機器ロケーションが移動されたとき、当該移動によって追加されるべき新たなルールフォーマットの送信要求をサーボスエージェント３００に送信する。【選択図】    図２
2005260919.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された機器を制御するコントローラであって；
機器に設定し得る制御ルールの記載形式であるルールフォーマットを格納するルールフォーマットデータベースと、
入力された制御情報に従って前記ルールフォーマットに対応情報を設定し機器制御用の制御ルールを生成する制御ルール生成手段と、
前記制御ルール生成手段によって生成された制御ルールを格納する制御ルールデータベースと、
前記ネットワークに接続された機器からの状態データが前記制御ルールデータベースに格納された何れかの制御ルールの条件を満たすとき、当該制御ルールに応じた制御コマンドを当該制御ルールの制御対象となる機器に送信するルール実行手段と、
前記ネットワークに接続された機器のルールフォーマットが前記ルールフォーマットデータベースに格納されているかを判別し、当該機器に応じたルールフォーマットが前記ルールフォーマットデータベースに格納されていないとき、当該機器のルールフォーマットの取得要求を外部ネットワークに対して送信し、これに応じて前記外部ネットワークから取得したルールフォーマットを前記ルールフォーマットデータベースに格納するルールフォーマット取得手段とを有する、
ことを特徴とするコントローラ。
【請求項２】
請求項１において、
前記ルールフォーマットデータベースは、前記ルールフォーマットを機器種別毎に区分して格納し、
前記ルールフォーマット取得手段は、前記ネットワークに接続された機器の機器種別と前記ルールフォーマットデータベースに格納されているルールフォーマットとを比較し、当該機器種別に応じたルールフォーマットが前記ルールフォーマットデータベースに格納されていないとき、当該機器のルールフォーマットの取得要求を外部ネットワークに対して送信する
ことを特徴とするコントローラ。
【請求項３】
請求項１または２において、
前記ルールフォーマット取得手段は、前記外部ネットワークに対するルールフォーマットの取得要求に先立ち、または、前記外部ネットワークに対する取得要求を行っても前記外部ネットワークから当該機器のルールフォーマットを取得できなかったとき、当該機器に対しルールフォーマットの送信要求を送信する、
ことを特徴とするコントローラ。
【請求項４】
請求項１ないし３の何れかにおいて、
前記ルールフォーマット取得手段は、さらに、
機器の設置位置に関する情報が当該機器に対して新たに登録されたとき、または、当該機器に対して設定されていた前記設置位置に関する情報が変更されたとき、当該設置位置の変動によって追加されるべき新たなルールフォーマットの送信要求を外部ネットワークに送信する、
ことを特徴とするコントローラ。
【請求項５】
請求項４において、
前記ルールフォーマット取得手段は、前記ルールフォーマットの送信要求の際に、少なくとも、前記ネットワークに接続されている各機器の機器種別情報と設置位置情報を前記外部ネットワークに送信し、当該設置位置の変動によって生じる機器間の新たな連携制御に関するルールフォーマットを外部ネットワークに送信させる、
ことを特徴とするコントローラ。
【請求項６】
ネットワークに接続された機器を制御するコントローラであって、
機器に設定し得る制御ルールの記載形式であるフォーマットを格納するルールフォーマットデータベースと、
入力された制御情報に従って前記ルールフォーマットに対応情報を設定し機器制御用の制御ルールを生成する制御ルール生成手段と、
前記制御ルール生成手段によって生成された制御ルールを格納する制御ルールデータベースと、
前記ネットワークに接続された機器からの状態データが前記制御ルールデータベースに格納された何れかの制御ルールの条件を満たすとき、当該制御ルールに応じた制御コマンドを当該制御ルールの制御対象となる機器に送信するルール実行手段と、
機器の設置位置に関する情報が当該機器に対して新たに登録されたとき、または、当該機器に対して設定されていた前記設置位置に関する情報が変更されたとき、当該設置位置の変動によって追加されるべき新たなルールフォーマットの送信要求を外部ネットワークに送信し、これに応じて前記外部ネットワークから取得したルールフォーマットを前記ルールフォーマットデータベースに格納するルールフォーマット取得手段とを有する、
ことを特徴とするコントローラ。
【請求項７】
請求項６において、
前記ルールフォーマット取得手段は、前記ルールフォーマットの送信要求の際に、少なくとも、前記ネットワークに接続されている各機器の機器種別情報と設置位置情報を前記外部ネットワークに送信し、当該設置位置の変動によって生じる機器間の新たな連携制御に関するルールフォーマットを外部ネットワークに送信させる、
ことを特徴とするコントローラ。
【請求項８】
上記請求項１ないし７の何れか一項に記載のコントローラの機能をメモリないしコンピュータに付与するためのプログラム。
【請求項９】
上記請求項１ないし７の何れか一項に記載のコントローラの機能をメモリないしコンピュータに付与するためのプログラムを格納した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コントローラ、プログラムおよび記憶媒体に関し、特に、複数の家庭内機器を連携制御する際に用いて好適なものである。
【背景技術】
【０００２】
近年、宅内ネットワークを介して家庭内機器を制御する、いわゆるネートワーク家電システムが提案され、規格化されている。このシステムは、ホームサーバ等のコントローラを宅内ネットワークに接続し、このコントローラから制御コマンドを送信することによって、対象機器を制御するものである。ここで、コントローラと家庭内機器との間の通信は、ＥＣＨＯＮＥＴ、ＵＰｎＰ、ＳＣＰ等の通信プロトコルを利用して行われる。また、通信網としては、電源供給用の電灯線や無線通信網等が利用される。
【０００３】
なお、かかるネットワークシステムの構成例として、たとえば以下の特許文献１に記載のものが知られている。
【特許文献１】特開平１０−２７６４７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記ネットワーク家電システムでは、ネットワーク上に存在するそれぞれの機器に対して、如何に円滑に制御ルールを設定できるかが重要となる。このシステムは、一般ユーザを対象とすることから、如何なるユーザに対しても簡便なものでなければならない。特に、機器制御用の制御ルールの設定は、なるべく煩雑な作業を要求することなく、簡便な作業にて、これを行えるようにする必要がある。
【０００５】
また、今後、従来にない新種の機器が開発・商品化され、宅内ネットワークに接続される場合が想定される。このような場合にも、当該機器を円滑に制御できるよう、システムを構成しておく必要もある。
【０００６】
さらに、同一の部屋に複数のエアコンを設置する等、生活シーンによっては、予め想定した制御よりも、これら機器を連携して制御する方が好ましい場合も起こり得る。このような場合にも、その使用形態に応じた機器の連携制御を円滑にできるよう、システムを構成しておく必要がある。
【０００７】
そこで、本発明は、煩雑な作業を要求することなく、円滑且つ簡便に、システムに制御ルールを設定できるコントローラ、プログラムおよび記録媒体を提供することを課題とする。また、従来にない新種の機器が宅内ネットワークに接続された場合にも、当該機器の制御を円滑に行い得るコントローラ、プログラムおよび記録媒体を提供することを課題とする。さらに、予め想定していない機器の使用形態がネットワークに設定されたときにも、当該使用形態に応じた機器の連携制御を円滑に行い得るコントローラ、プログラムおよび記録媒体を提供することを課題とする。
【課題を解決するための手段】
【０００８】
上記課題に鑑み、本発明は、それぞれ以下に示す特徴を備える。
【０００９】
請求項１の発明は、ネットワークに接続された機器を制御するコントローラであって、機器に設定し得る制御ルールの記載形式であるルールフォーマットを格納するルールフォーマットデータベースと、入力された制御情報に従って前記ルールフォーマットに対応情報を設定し機器制御用の制御ルールを生成する制御ルール生成手段と、前記制御ルール生成手段によって生成された制御ルールを格納する制御ルールデータベースと、前記ネットワークに接続された機器からの状態データが前記制御ルールデータベースに格納された何れかの制御ルールの条件を満たすとき、当該制御ルールに応じた制御コマンドを当該制御ルールの制御対象となる機器に送信するルール実行手段と、前記ネットワークに接続された機器のルールフォーマットが前記ルールフォーマットデータベースに格納されているかを判別し、当該機器に応じたルールフォーマットが前記ルールフォーマットデータベースに格納されていないとき、当該機器のルールフォーマットの取得要求を外部ネットワークに対して送信し、これに応じて前記外部ネットワークから取得したルールフォーマットを前記ルールフォーマットデータベースに格納するルールフォーマット取得手段とを有することを特徴とする。
【００１０】
請求項２の発明は、請求項１に記載のコントローラおいて、前記ルールフォーマットデータベースは、前記ルールフォーマットを機器種別毎に区分して格納し、前記ルールフォーマット取得手段は、前記ネットワークに接続された機器の機器種別と前記ルールフォーマットデータベースに格納されているルールフォーマットとを比較し、当該機器種別に応じたルールフォーマットが前記ルールフォーマットデータベースに格納されていないとき、当該機器のルールフォーマットの取得要求を外部ネットワークに対して送信することを特徴とする。
【００１１】
請求項３の発明は、請求項１または２に記載のコントローラにおいて、前記ルールフォーマット取得手段は、前記外部ネットワークに対するルールフォーマットの取得要求に先立ち、または、前記外部ネットワークに対する取得要求を行っても前記外部ネットワークから当該機器のルールフォーマットを取得できなかったとき、当該機器に対しルールフォーマットの送信要求を送信することを特徴とする。
【００１２】
請求項４の発明は、請求項１ないし３の何れかに記載のコントローラにおいて、前記ルールフォーマット取得手段は、さらに、機器の設置位置に関する情報が当該機器に対して新たに登録されたとき、または、当該機器に対して設定されていた前記設置位置に関する情報が変更されたとき、当該設置位置の変動によって追加されるべき新たなルールフォーマットの送信要求を外部ネットワークに送信することを特徴とする。
【００１３】
請求項５の発明は、請求項４に記載のコントローラにおいて、前記ルールフォーマット取得手段は、前記ルールフォーマットの送信要求の際に、少なくとも、前記ネットワークに接続されている各機器の機器種別情報と設置位置情報を前記外部ネットワークに送信し、当該設置位置の変動によって生じる機器間の新たな連携制御に関するルールフォーマットを外部ネットワークに送信させることを特徴とする。
【００１４】
請求項６の発明は、ネットワークに接続された機器を制御するコントローラであって、機器に設定し得る制御ルールの記載形式であるフォーマットを格納するルールフォーマットデータベースと、入力された制御情報に従って前記ルールフォーマットに対応情報を設定し機器制御用の制御ルールを生成する制御ルール生成手段と、前記制御ルール生成手段によって生成された制御ルールを格納する制御ルールデータベースと、前記ネットワークに接続された機器からの状態データが前記制御ルールデータベースに格納された何れかの制御ルールの条件を満たすとき、当該制御ルールに応じた制御コマンドを当該制御ルールの制御対象となる機器に送信するルール実行手段と、機器の設置位置に関する情報が当該機器に対して新たに登録されたとき、または、当該機器に対して設定されていた前記設置位置に関する情報が変更されたとき、当該設置位置の変動によって追加されるべき新たなルールフォーマットの送信要求を外部ネットワークに送信し、これに応じて前記外部ネットワークから取得したルールフォーマットを前記ルールフォーマットデータベースに格納するルールフォーマット取得手段とを有することを特徴とする。
【００１５】
請求項７の発明は、請求項６に記載のコントローラにおいて、前記ルールフォーマット取得手段は、前記ルールフォーマットの送信要求の際に、少なくとも、前記ネットワークに接続されている各機器の機器種別情報と設置位置情報を前記外部ネットワークに送信し、当該設置位置の変動によって生じる機器間の新たな連携制御に関するルールフォーマットを外部ネットワークに送信させることを特徴とする。
【００１６】
請求項８の発明は、上記請求項１ないし７の何れか一項に記載のコントローラの機能をメモリないしコンピュータに付与するためのプログラムである。
【００１７】
請求項９の発明は、上記請求項１ないし７の何れか一項に記載のコントローラの機能をメモリないしコンピュータに付与するためのプログラムを格納した記憶媒体である。
【発明の効果】
【００１８】
本発明によれば、ルールフォーマットに対応情報を適宜設定するのみで、当該機器に対する制御ルールをシステムに設定することができる。もって、制御ルール設定時の作業を極めて簡便なものとすることができる。
【００１９】
また、当該機器に対応したルールフォーマットがルールフォーマットデータベースに存在しない場合は、対応するルールフォーマットを適宜、外部ネットワークから取得するものであるから、たとえば新種の機器がネットワークに接続された場合等においても、当該機器を円滑に制御することができる。
【００２０】
さらに、機器の設置位置が変動した場合には、当該設置位置の変動によって追加されるべき新たなルールフォーマットを適宜、外部ネットワークから取得するものであるから、同一の部屋に複数のエアコンを設置する等、従来にない特殊な使用形態にて機器が使用される場合にも、その使用形態に応じて機器を円滑に制御することができる。
【００２１】
本発明の特徴ないしその技術的意義および効果は、以下に示す実施の形態の説明により更に明らかとなろう。ただし、以下の実施の形態は、あくまでも、本発明の一つの実施形態であって、本発明ないし各構成要件の用語の意義は、以下の実施の形態に記載されたものに制限されるものではない。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の実施の形態につき図面を参照して説明する。
【００２３】
図１に、本実施の形態に係る機器制御システムの構成を示す。
【００２４】
図示の如く、本実施の形態では、コントローラ１００、操作端末２００および家庭内機器（機器１、２、３、…）が宅内ネットワークを介して接続されている。ここで、各装置間の通信は、上記従来例と同様、ＥＣＨＯＮＥＴ、ＵＰｎＰ、ＳＣＰ等の通信プロトコルが利用される。また、通信網としては、電灯線や専用無線通信網が利用される。
【００２５】
ここで、コントローラ１００は、各機器から状態通知を受信するとともに、制御ルール（後述）に従って、各機器に制御コマンドを送信する。また、操作端末２００は、コントローラ１００に対する制御ルールの設定や、各機器の設置位置に関する情報の入力等の際に用いられる。なお、機器の中には、予め、制御ルールを設定するためのスケルトンルール（後述）を格納しているものがある。かかるスケルトンルールは、当該機器を宅内ネットワークに登録する際に、コントローラ１００に送信され、格納される。なお、スケルトンルールを用いた制御ルールの設定処理については、追って説明する。
【００２６】
コントローラ１００は、宅外に配されたサービスエージェント３００と通信可能となっている。ここで、サービスエージェント３００は、宅外ネットワーク（たとえばインターネット）に接続されており、コントローラ１００からの要求に応じて、宅外ネットワーク上のルール提供サーバ４００からスケルトンルールを検索するためのスケルトンルール検索エンジンを備えている。さらに、コントローラ１００からの要求に応じてスケルトンルールを生成し、これをコントローラ１００に提供するためのスケルトンルール生成エンジンを備えている。サービスエージェント３００からコントローラ１００に対するスケルトンルールの提供処理については後述する。
【００２７】
なお、スケルトン生成エンジンに代えて、スケルトンルールを格納したデータベースをサービスエージェント３００に配するようにしてもよい。この場合、スケルトンルールは、たとえば、管理者によって入力され、当該データベースに格納される。そして、サービスエージェント３００は、コントローラ１００からの要求に応じたスケルトンルールを当該データベースから抽出し、コントローラ１００に提供する。
【００２８】
ルール提供サーバ４００は、新種の機器に対応したスケルトンルールを蓄積している。かかるルール提供サーバ４００は、たとえば、当該新種の機器を提供したメーカによってインターネット上に構築される。すなわち、当該メーカは、自身が商品化した新種の機器に用いられるスケルトンルールを独自に生成し、ルール提供サーバ４００上に公開する。かかるスケルトンルールは、サービスエージェント３００の検索エンジンによって検索され取得される。なお、ルール提供サーバ４００は、メーカが構築する他、メーカ外のサービスエージェントによって構築されても良い。
【００２９】
図２に実施の形態に係るコントローラ１００の機能ブロック図を示す。
【００３０】
なお、同図に示す各機能は、これらの機能を実行するためのプログラムを格納したＣＰＵや、同図に示す各種データベースを構成するメモリ等を、あらかじめハードウエアにて、コントローラ１００に搭載することにより実現できる。あるいは、かかる機能をＣＰＵに付与するためのプログラムないしデータベースを、汎用パソコン等にダウンロードすることによっても実現できる。ここで、プログラムないしデータベースは、インターネット等の公衆網を介してダウンロードする方法や、当該プログラムおよびデータベースを格納した記憶媒体（ディスク等）を適宜装着する方法によって実装できる。
【００３１】
図示の如く、コントローラ１００は、通信制御部１０１と、制御部１０２と、デバイスＤＢ（データベース）１０３と、スケルトンＤＢ（データベース）１０４と、ルール生成部１０５と、実行ルールＤＢ（データベース）１０６と、ルール実行部１０７と、ネットワーク通信処理部１０８から構成されている。
【００３２】
通信制御部１０１は、公衆網を介してサービスエージェント３００と通信を行う際の処理を制御する。制御部１０２は、コントローラとしての機能を実行するために各部を制御する。デバイスＤＢ１０３は、宅内ネットワークに接続された各機器に関する情報を蓄積する。蓄積される情報については後述する。
【００３３】
スケルトンＤＢ１０４は、機器に設定し得る制御ルールのフォーマット（スケルトンルール）を機器種別毎に区分して格納する。スケルトンルールの詳細については後述する。
【００３４】
ルール生成部１０５は、操作端末２００から入力された入力情報（制御ルールの設定情報）に従って、スケルトンルールＤＢ１０４に格納されているスケルトンルールに対応データを設定し、当該入力情報に応じた制御ルールを生成する。そして、生成した制御ルールを実行ルールＤＢ１０６に格納する。ルール実行部１０７は、機器からの状態通知（イベント）が、実行ルールＤＢ１０６に格納されている何れかの制御ルールの制御条件に適合するとき、当該制御ルールの実行命令に応じた制御コマンドを生成し、ネットワーク通信処理部１０８を介して、対応機器に送信する。なお、スケルトンルールを用いた制御ルールの生成および制御コマンドの生成については、追って説明する。
【００３５】
ネットワーク通信処理部１０８は、宅内ネットワークの通信プロトコルに従って宅内ネットワーク上の各機器（機器１ａ〜１ｃ…、機器２ａから２ｇ…、操作端末２００）と通信を行う際の処理を行う。すなわち、これらの機器から状態通知等のデータ（イベント）を受信し、また、各機器に対して制御コマンド等のデータ（アクション）を送信する。なお、以降の説明では、ネットワークは、特に断らない限り、宅内ネットワークを指している。
【００３６】
図３に、上記デバイスＤＢ１０３に格納されているデバイス情報の構成を示す。
【００３７】
図示の如く、デバイスＤＢ１０３には、当該機器を特定するためのデバイスＩＤと、当該機器の種別（エアコン、冷蔵庫、洗濯機、等）を特定するためのデバイスタイプと、当該機器のデバイス名（製造メーカ、品番）と、当該機器の設置場所を示すロケーションと、ネットワーク上における当該機器のアドレスを示すノードアドレスと、機器から通知されてきたデバイス状態を格納するステータスから構成されている。
【００３８】
このうち、ノードアドレスは当該機器がネットワークに接続されノードアドレスを求めてきたときに、ネットワーク上で未使用なノードアドレスがコントローラ１００（制御部１０２）によって付与される、ネットワーク上の下層通信プロトコルにおいて通信先を特定するアドレス情報である。また、デバイスＩＤは、当該機器がネットワーク接続機器として認識されたときに、コントローラ１００から付与される。デバイスタイプとデバイス名は当該機器から、ネットワークに接続されたときの最初のイベントとしてコントローラ１００に提供される。ステータスは、当該機器がコントローラ１００（デバイスＤＢ１０３）に登録された後に、当該機器から、イベントとしてコントローラ１００に提供される。さらに、ロケーションは、当該機器がコントローラ１００（デバイスＤＢ１０３）に登録された後に、操作端末２００を介してユーザから設置入力される。
【００３９】
なお、ノードアドレスの付与はコントローラ１００に代えて、ネットワークに接続されている他のネットワーク制御機器（図示せず）によって付与されるようしにしても、当該機器に予め設定されているようにしてもよい。
【００４０】
図４に、スケルトンルールの記述則と実行ルールの記述則を示す。
【００４１】
同図（ａ）に示す如く、スケルトンルールのルールフォーマットは、アクション制御パートとイベント判定パートに区分される。このうち、アクション制御パートは、制御対象機器の設定内容を規定するパートであり、“制御対象デバイスタイプ”と、“命令”と、“パラメータ（設定項目）”から構成されている。
【００４２】
ここで、“制御対象デバイスタイプ”は、制御対象機器のデバイスタイプ（図３参照）を規定するものである。“命令”は、制御対象機器に対する命令の内容を規定するものである。たとえば、エアコンであれば、運転モードの切り替え等である。“パラメータ（設定項目）”は、“命令”によって設定され得るパラメータを規定するものである。たとえば、“命令”が運転モードの切り替えであれば、冷房／暖房／除湿等である。“命令”のみで制御対象機器に対する制御指令の内容が特定される場合には、“パラメータ（設定項目）”はＮＵＬＬとされる。
【００４３】
なお、制御対象機器が複数の場合は、当該アクション制御パートが複数回、記述される。図４（ａ）の“パラメータ（設定項目）”から“制御対象デバイスタイプ”に向かう矢印はこれを示すものである。
【００４４】
また、当該ルールフォーマットのうち、イベント判定パートは、監視対象機器が満たすべき状態を規定するパートであり、“監視対象デバイスタイプ”と、“否定条件（ＮＯＴ）”と、“コンディション”と、“パラメータ（判断項目）”から構成されている。ここで、“監視対象デバイスタイプ”は、監視対象機器のデバイスタイプ（図３参照）を規定するものである。“コンディション”は、監視対象機器が満たすべき条件の内容を規定するものである。たとえば、監視対象機器が温度センサーであれば、「目標温度以上か」、等である。“パラメータ（設定項目）”は、“コンディション”によって設定され得るパラメータを規定するものである。たとえば、“コンディション”が「目標温度以上か」であれば、目標温度である。“否定条件（ＮＯＴ）”は、“コンディション”を否定する場合に付されるパートである。
【００４５】
なお、“ＡＮＤ／ＯＲ”とは、複数の監視対象機器が満たすべきＡＮＤ条件またはＯＲ条件を規定する際に付されるものである。また、他の機器の監視を行わずに、単に制御対象機器に対する制御を行うのみの場合もある。図４（ａ）におけるアクション制御パートの“パラメータ（設定項目）”からイベント判定パートの“パラメータ（設定項目）”の後段に向かう矢印はこれを示すものである。
【００４６】
スケルトンルールは、かかる記述則に従って、あらかじめ制御対象デバイスタイプ毎に生成され、上記スケルトンＤＢ１０４に格納されている。たとえば、エアコン用であれば、上述の“制御対象デバイスタイプ”にエアコンと記述されたスケルトンルールが、“命令”以降の各パートが取り得るバリエーションの数だけ準備され、スケルトンルールＤＢ１０４に格納されている。
【００４７】
制御ルール（実行ルール）の生成は、図４（ｂ）に示す如く、制御内容に対応したスケルトンルールの各パートに、制御内容に応じたデータを適宜設定することにより行われる。ここで、“制御対象デバイスタイプ”と“監視対象デバイスタイプ”には、それぞれ、制御先機器のデバイスＩＤと監視先機器のデバイスＩＤが設定される。なお、監視先機器が存在しない場合には、イベント判定パートが全てＮＵＬＬとされる。
【００４８】
以下、制御ルール（実行ルール）生成時の処理について説明する。
【００４９】
ルール生成部１０５は、デバイスＤＢ１０３を参照し、制御対象機器の一覧をユーザに提示する。かかる提示は、たとえば、制御部１０２からネットワーク通信処理部１０８を介して操作端末２００に画面情報（GUI）を送信することによって行われる。なお、以下の処理においてもこれと同様にしてユーザに対する提示が行われる。
【００５０】
かかる提示に対して、ユーザが、所定の操作により制御対象機器を選択すると、ルール生成部１０５は、スケルトンＤＢ１０４とデバイスＤＢ１０３を参照して、制御対象機器に適応可能なスケルトンルールを抽出する。次いで、デバイスＤＢ１０３に登録されている他の機器のデバイスタイプ、ロケーション、ステータスと、抽出したスケルトンルールの“監視対象デバイスタイプ”とに基づいて、当該機器に適応可能なスケルトンルールを候補スケルトンルールとして特定する。このとき、当該機器のステータスも考慮される。また、この候補スケルトンルールは、１つとは限らない。
【００５１】
たとえば、制御対象機器が、ある部屋に設定されているエアコンである場合、スケルトンＤＢ１０４に格納された“制御対象デバイスタイプ”にエアコンと記述されているスケルトンルールを抽出する。ある部屋がリビング１の場合、デバイスＤＢ１０３（図３）を参照すると、当該エアコン(AC-001)は動作中であり、また同一室内に人感センサー（SE001)や温度センサー（SE002)が設置、作動中であることが確認できる。そこで、まず、現在のエアコンの状態から、イベント判定パートを持たない電源OFFや運転モード設定を実行命令とするスケルトンルールが候補スケルトンルールとして選択され、そして、監視対象機器の存否から、イベント判定パートの“監視対象デバイスタイプ”に人感センサーや温度センサーを含むスケルトンルールが候補スケルトンルールとして選択される。また、ある部屋が寝室２（図３には記載せず）の場合に、その部屋のエアコン(たとえばAC-003)は停止中であり同室内には、監視対象機器が存在しないとすると、候補スケルトンルールとして、イベント判定パートを持たない電源ONや運転モードを設定するスケルトンルが選択される。いずれの場合も、コントローラ１００が時計機能を備える場合には、イベント判定パートにタイマー指定を含むスケルトンルールも候補スケルトンルールとして選択される。
【００５２】
そして、特定された候補によって当該機器に指示可能な命令を、候補スケルトンルールのアクション制御パートの“命令”や、イベント判定パート等の記述に基づいて、当該機器への命令指示候補としてユーザに提示する。
【００５３】
かかる提示に対して、ユーザが、所定の操作により命令指示を設定すると、次に、ルール生成部１０５は、当該命令指示を実現するスケルトンルールを候補スケルトンルールから抽出し、この抽出したスケルトンルールのパラメータ（アクション制御パートおよびイベント判定パート）の値を設定させるためのパラメータ設定情報を、ユーザに提示する。この時、イベント判定パートに“ＡＮＤ／ＯＲ”或いは“否定条件（ＮＯＴ）”などの選択に関する情報についてもパラメータ設定情報とし提示する。
【００５４】
これに対し、ユーザが所定のパラメータを設定すると、ルール生成部１０５は、ユーザからのパラメータを取得し、さらに、イベント判定パートの”ＡＮＤ／ＯＲ“或いは”否定条件（ＮＯＴ）等の選択を行って、実行ルールのアクション制御パートとイベント判定パートの構成を確定する。次に、当該機器に対するデバイスＩＤ、監視対象機器のデバイスＩＤをデバイスＤＢ１０３より抽出し、これを、上記の如くして抽出したスケルトンルールの“対象機器デバイスタイプ”、“監視対象デバイスタイプ”に設定する。そして、ユーザが設定したパラメータを、該当する“パラメータ“に設定する。この時点で、実行ルールの生成が終了する。なお、イベント判定パートがない場合や、アクション制御パートの“パラメータ”がない場合等は、その設定手続きが省略される。
【００５５】
このようにして生成された制御ルール（実行ルール）は実行ルールＤＢ１０６に格納される。そして、機器からの状態通知（イベント）を受信する毎に、ルール実行部１０７によって参照され、当該状態通知（イベント）が、イベント判定パートのコンディションを充足しないかが判定される。
【００５６】
図５（ａ）〜（ｂ）に、機器からコントローラ１００に送信されるデータ（イベント）の構成と、コントローラ１００から機器に送信されるデータ（アクション）の構成例を示す。
【００５７】
なお、図５（ａ）は、ネットワークに機器を登録する際に機器から送信されるイベントの構成で、図５（ｂ）は、ネットワークに接続された後の通常動作時に機器から送信されるイベントの構成、図５（ｃ）は、機器からコントローラ１００にスケルトンルールを送信する際（後述）に機器から送信されるイベントの構成、図５（ｄ）は、ネットワークに接続された後の通常動作時にコントローラから送信されるアクションの構成である。
【００５８】
図中、“イベント種別”とは、当該イベントの種別（ネットワーク登録要求／スケルトンルール送信／自発的な状態通知／問い合わせに対する状態通知／等）を規定するものである。“アクション種別”とは、当該アクションの種別（ネットワーク登録通知／スケルトンルール送信要求／制御コマンド送信／状態通知の送信要求／等）を規定するものである。“ステータスタイプ”とは、たとえば「運転モード」や「温度」等、状態通知の対象となるステータス区分を規定するものである。“バリュー”とは、たとえば「暖房」や「２６℃」等、ステータスタイプに対応する状態値を規定するものである。その他、“デバイスＩＤ”、“デバイスタイプ”、“デバイス名”、“命令”および“パラメータ”は、既に図３および図４において説明したデータ項目にそれぞれ対応するものである。
【００５９】
なお、図５（ｄ）において、“アクション種別”が「状態通知の送信要求」の場合、“命令”と“パラメータ”はＮＵＬＬとされる。
【００６０】
また、上記制御ルール（実行ルール）の生成時にコントローラ１００と操作端末２００間で送受信されるイベントとアクションの構成は、図示省略されている。この場合、イベントとアクションは、それぞれ、“イベント種別”と“アクション種別”を含み、さらに、相手先を特定するための情報（デバイスＩＤ）と、送受信するコンテンツデータを格納するパートを含む構成をとる。その他、ロケーション情報の送受信等においても同様のデータ構成にてデータ通信される。
【００６１】
なお、同図では、“イベント種別”と“アクション種別”を付してイベントとアクションの種別を識別するようにしたが、他のデータ項目によってイベントまたはアクションの種別を識別できる場合には、“イベント種別”と“アクション種別”を省略しても良い。
【００６２】
図６に、イベント受信時にコントローラ１００において実行される処理の処理フローを示す。なお、上記制御ルール（実行ルール）作成時の処理フローは、図示省略している。
【００６３】
ある機器からイベントを受信すると、コントローラ１００（制御部１０２）は、受信したイベントの種別を判別する（Ｓ１０１）。そして、これがネットワークへの接続要求（登録要求）であれば、上記図５（ａ）に示すイベント中に含まれている当該機器のデバイスタイプをもとにスケルトンＤＢ１０４を検索し（Ｓ１０２）、当該デバイスタイプに対応するスケルトンルールが既にスケルトンＤＢ１０４に格納されているかを判別する（Ｓ１０３）。ここで、対応するスケルトンルールが格納されていれば、当該機器を有効デバイスとしてデバイスＤＢ１０３に登録する（Ｓ１１０）。一方、対応するスケルトンルールが格納されていなければ、当該機器に対応するスケルトンルールを取得するための処理を行う。
【００６４】
すなわち、コントローラ１００は、サービスエージェント３００に対する接続処理を実行し（Ｓ１０４）、接続できれば（Ｓ１０５：ＹＥＳ）、サービスエージェント３００に対し、当該機器に対応するスケルトンルールの送信要求を、当該機器のデバイスＩＤ、デバイスタイプ、デバイス名とともに、サービスエージェント３００に送信する（Ｓ１０６）。
【００６５】
これを受けて、サービスエージェント３００は、受信したデバイスタイプとデバイス名をもとに、スケルトンルールファイルを検索する。そして、対応するスケルトンルールファイルを検索できれば、これをルール提供サーバ４００から取得し、これを、デバイスＩＤ、デバイスタイプ、デバイス名とともに、コントローラ１００に送信する。一方、対応するスケルトンルールファイルを検索できなければ、その旨の通知を、デバイスＩＤ、デバイスタイプ、デバイス名とともに、コントローラ１００に送信する。
【００６６】
しかして、サービスエージェント３００からの応答を受信すると（Ｓ１０７）、コントローラ１００は、受信した応答にスケルトンルールファイルが含まれているかを判別する（Ｓ１０８）。そして、スケルトンルールファイルが含まれていれば（Ｓ１０８：ＹＥＳ）、当該スケルトンルールをスケルトンＤＢ１０４に追加し（Ｓ１０９）、当該機器を有効デバイスとしてデバイスＤＢ１０３に登録する（Ｓ１１０）。一方、スケルトンルールファイルが含まれていなければ（Ｓ１０８：ＮＯ）、当該機器を不明デバイスとしてデバイスＤＢ１０３に登録し（Ｓ１１１）、当該機器に対し、デバイスルールの送信要求を送信する（Ｓ１１２）。
【００６７】
なお、上記Ｓ１０５にてサービスエージェント３００に対し接続できなかった場合も、コントローラ１００は、Ｓ１１１とＳ１１２の処理を実行する。
【００６８】
当該機器が、自身のスケルトンルールを格納した機器である場合、Ｓ１１２における送信要求に応答して、当該機器からコントローラ１００にスケルトンルールが送信される（Ｓ１０１：ルール送信）。コントローラ１００は、これにより受信したスケルトンルールをスケルトンＤＢ１０４に追加し（Ｓ１０９）、当該機器を不明デバイスから有効デバイスに変更して、デバイスＤＢ１０３に登録する（Ｓ１１０）。
【００６９】
機器から受信したイベントが状態通知である場合（Ｓ１０１：状態通知）、コントローラ１００は、受信した機器の状態を反映するためにデバイスＤＢ１０３を変更する（Ｓ１１３）。つまり、イベントのデバイスＩＤに対応するステータスに対して、当該イベントのステータスタイプとバリュー（図５（ｂ）参照）を格納する。このとき、同一のステータスタイプが既に格納されていれば、そのバリューを変更する。また、当該デバイスＩＤに対して不要なステータスタイプとバリューが格納されていると判断できる場合には、不要なステータスタイプとバリューを削除するようにしてもかまわない。ただ、イベントを送信してきた機器の状態が、適正にステータスに反映されていさえすればよい。
【００７０】
そして、この受信したイベントのデバイスＩＤをルール実行部１０７に送る（Ｓ１１４）。これを受けて、ルール実行部１０７は、ルール実行処理を実行する（Ｓ１１５）。つまり、受け取ったデバイスＩＤを監視対象機器とした実行ルールの実行可否を、実行ルールＤＢ１０６を参照しつつ判断し、実行条件が満たされる場合、制御対象機器に対してアクションを送信する。実行条件が満たされなければ、次のイベントが通知されるまで待機する。
【００７１】
次に、機器の設置場所（ロケーション）が登録された場合の処理につき、図７を参照して説明する。なお、ロケーションが登録された場合とは、新たな機器をネットワークに登録するときに当該機器のロケーションを設定する場合、機器の移動によってロケーションを変更する場合、およびネットワークに登録された機器の登録を削除する場合が含まれる。
【００７２】
デバイスＤＢ１０３上、ある機器のロケーションが登録されると（Ｓ２０１）、コントローラ１００から操作端末２００に対し、スケルトンルールの取得の要否をユーザに問い合わせるためのデータが送信される（Ｓ２０２）。これに対し、スケルトンルールの取得を要求する旨の入力がユーザによりなされると、コントローラ１００は、サービスエージェント３００に対する接続処理を実行し（Ｓ２０４）、接続できれば（Ｓ２０５：ＹＥＳ）、サービスエージェント３００に対し、当該ロケーションの登録によって追加されるべき新たなスケルトンルールの送信要求を、デバイスＤＢ１０３に格納したデバイス情報（ロケーション登録変更済み）とともに、サービスエージェント３００に送信する（Ｓ２０６）。なお、スケルトンルール生成のための情報としてサービスエージェント３００に送信するデバイス情報は、デバイＤＢ１０３に格納した全てのデバイス情報であっても良いし、ロケーション登録の対象となったロケーションに配置されているデバイス情報のみとしても良い。後者では、ロケーション登録が削除された場合のロケーションも対象とされ、デバイス情報として、登録削除が送信される。さらに、コントローラ１００は、どの機器のロケーションが変更されたかを示すデータを同時に送信するようにしても良い。これにより、サービスエージェント３００が、どのデバイスに対するスケルトンルールを生成すればよいかを特定できる。その結果、サービスエージェント３００では、スケルトンルールの生成を効率的に行える。そして、コントローラ１００では、すでにスケルトンＤＢ１０４に格納されているスケルトンルールを重ねて受信することがなくなる。
【００７３】
これを受けて、サービスエージェント３００は、スケルトンルール生成エンジンを起動させ、当該ロケーションの変動に応じて新たに追加されるべき機器連携機能を提供するスケルトンルールを生成する。あるいは、当該ロケーションの登録に応じて追加されるべきスケルトンルールを、自身のデータベースから抽出する。そして、生成または抽出したスケルトンルールを、要求元のコントローラ１００に送信する。なお、当該ロケーションの登録に応じて新たに追加されるべきスケルトンルールがない場合、サービスエージェント３００は、その旨の通知をコントローラ１００に送信する。
【００７４】
しかして、サービスエージェント３００からの応答を受信すると（Ｓ２０７）、コントローラ１００は、受信した応答にスケルトンルールが含まれているかを判別する（Ｓ２０８）。そして、スケルトンルールファイルが含まれていれば（Ｓ２０８：ＹＥＳ）、当該スケルトンルールをスケルトンＤＢ１０４に追加する（２０９）。このとき、当該スケルトンルールが既にスケルトンＤＢ１０４に格納されている場合には、スケルトンＤＢへの追加は行わない。
【００７５】
以上、本実施の形態によれば、簡便な操作によって制御ルール（実行ルール）をコントローラ１００に設定することができる。
【００７６】
また、当該機器に対応したスケルトンルールがスケルトンＤＢ１０４に存在しない場合にも、対応するスケルトンルールを適宜、サービスエージェント３００または当該機器から取得できるから、たとえば新種の機器がネットワークに接続されたような場合にも、当該機器に対する制御ルール（実行ルール）を円滑に設定することができる。
【００７７】
さらに、機器のロケーションを登録した場合には、当該ロケーションの登録によって追加されるべき新たなスケルトンルールを適宜、サービスエージェント３００から取得できるから、たとえば、同一の部屋に複数のエアコンを設置する等、予め想定されない使用形態にて機器が使用される場合にも、その使用形態に応じた機器の連携制御を行うスケルトンルールを適宜サービスエージェントか３００から取得して、使用形態に応じた制御ルール（実行ルール）を円滑に設定することができる。
【００７８】
なお、本発明は、上記実施の形態に限定されるものではなく、他に種々の変更が可能であることは言うまでもない。
【００７９】
たとえば、上記実施の形態では、まず、サービスエージェント３００に対しスケルトンルールファイルの送信要求を行い、これによりスケルトンルールファイルを取得できない場合に、当該機器に対してスケルトンルールの送信要求を送信するようにしたが、まず、当該機器に対してスケルトンルールの送信要求を行い、これによりスケルトンルールを取得できない場合に、サービスエージェント３００にスケルトンルールファイルの送信要求を行うようにしても良い。この場合の処理フローを図８に示す。すなわち、Ｓ１０３において、スケルトンＤＢ１０４に対応するスケルトンルールが存在しないと判別すると、コントローラ１００は、当該機器に対し、スケルトンルールの送信要求を送信する（Ｓ１２０）。そして、これに対する当該機器からの応答（Ｓ１２１）にスケルトンルールが含まれていれば（Ｓ１２２：ＹＥＳ）、当該スケルトンルールをスケルトンＤＢ１０４に追加し（Ｓ１０９）、当該機器を有効デバイスとしてデバイスＤＢ１０３に登録する（Ｓ１１０）。一方、スケルトンルールが含まれていなければ（Ｓ１２２：ＮＯ）、サービスエージェント３００に対する接続処理を実行し（Ｓ１０４）、接続できれば（Ｓ１０５：ＹＥＳ）、上記と同様、サービスエージェント３００に対し、当該機器に対応するスケルトンルールの送信要求を送信する（Ｓ１０６）。そして、これによりスケルトンルールを取得できれば、取得したスケルトンルールをスケルトンＤＢ１０４に追加し（Ｓ１０９）、当該機器を有効デバイスとしてデバイスＤＢ１０３に登録する（Ｓ１１０）。一方、取得できなければ、当該機器を不明デバイスとしてデバイスＤＢ１０３に登録し(Ｓ１１１)、当該機器の登録処理を終了する。
【００８０】
この他、本発明の実施の形態は、特許請求の範囲に示された技術的思想の範囲内において、適宜、種々の変更が可能である。
【図面の簡単な説明】
【００８１】
【図１】実施の形態に係るネットワークシステムの構成を示す図
【図２】実施の形態に係るコントローラの構成を示す図
【図３】実施の形態に係るデバイスＤＢに格納されるデータの構成を示す図
【図４】実施の形態に係るスケルトンルールおよび実行ルールを説明する図
【図５】実施の形態に係るイベント、アクションのデータ構成を示す図
【図６】実施の形態に係るイベント受信時に実行される処理フローを示す図
【図７】実施の形態に係る機器ロケーション移動時の処理フローを示す図
【図８】イベント受信時に実行される処理フローの変更例を示す図
【符号の説明】
【００８２】
１００  コントローラ
１０１  通信制御部
１０２  制御部
１０３  デバイスＤＢ
１０４  スケルトンＤＢ
１０５  ルール生成部
１０６  実行ルールＤＢ
１０７  ルール実行部
【図１】
2005260919.tif 000003
【図２】
2005260919.tif 000004
【図３】
2005260919.tif 000005
【図４】
2005260919.tif 000006
【図５】
2005260919.tif 000007
【図６】
2005260919.tif 000008
【図７】
2005260919.tif 000009
【図８】
2005260919.tif 000010