以下で説明する第1の実施形態に係る家電機器100aは、制御命令列に含まれる複数の命令であって家電機器100aの状態を設定する命令に基づいて、家電機器100aの状態を設定する。そして、家電機器100aは、制御命令列に含まれる複数の命令の中に、第1の設定部40による家電機器100aの状態の設定が失敗した命令がある場合には、家電機器100aの状態を第1の設定部40により状態が設定される前の状態に設定する。
また、以下で説明する第2の実施形態に係る家電機器100bは、制御命令列に含まれる複数の命令であって家電機器100bの状態を設定する命令に基づいて、家電機器100bの状態を設定する。そして、家電機器100bは、制御命令列に含まれる複数の命令の中に、第1の設定部43による家電機器100bの状態の設定が失敗した命令がある場合には、制御命令列に含まれる全ての命令が成功するまで、繰り返し、失敗した命令に基づいて、家電機器100bの状態を設定する。
また、以下で説明する第3の実施形態に係る家電機器100cは、制御命令列に含まれる複数の命令であって家電機器100cの状態を設定する命令に基づいて、家電機器100cの状態を設定する。そして、家電機器100cは、制御命令列に含まれる複数の命令の中に、第1の設定部46による家電機器100cの状態の設定が失敗した命令がある場合に、家電機器100cに異常が発生したか否かを判定する。そして、家電機器100cは、判定部47により家電機器100cに異常が発生したと判定された場合には、家電機器100cの状態を第1の設定部46により状態が設定される前の状態に設定する。また、家電機器100cは、判定部47により家電機器100cに異常が発生していないと判定された場合には、失敗した命令に基づいて、家電機器100cの状態を設定する。
また、以下で説明する第4の実施形態に係るゲートウェイ装置10aは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、ゲートウェイ装置10aは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、家電機器100の状態を第1の送信部50により送信された制御命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。
また、以下で説明する第5の実施形態に係るゲートウェイ装置10bは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、ゲートウェイ装置10bは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、制御命令列に含まれる全ての命令が成功するまで、繰り返し、失敗した命令を家電機器100に送信する。
また、以下で説明する第6の実施形態に係るゲートウェイ装置10cは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、ゲートウェイ装置10cは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合に、家電機器100に異常が発生したか否かを判定する。そして、ゲートウェイ装置10cは、判定部55により家電機器100に異常が発生したと判定された場合には、家電機器100の状態を第1の送信部54により送信された命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。また、ゲートウェイ装置10cは、判定部55により家電機器100に異常が発生していないと判定された場合には、失敗した命令を家電機器100に送信する。
また、以下で説明する第7の実施形態に係る通信アダプタ120aは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、通信アダプタ120aは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、家電機器100の状態を第1の送信部60により送信された制御命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。
また、以下で説明する第8の実施形態に係る通信アダプタ120bは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、通信アダプタ120bは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、制御命令列に含まれる全ての命令が成功するまで、繰り返し、失敗した命令を家電機器100に送信する。
また、以下で説明する第9の実施形態に係る通信アダプタ120cは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、通信アダプタ120cは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合に、家電機器100に異常が発生したか否かを判定する。そして、通信アダプタ120cは、判定部65により家電機器100に異常が発生したと判定された場合には、家電機器100の状態を第1の送信部64により送信された命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。また、通信アダプタ120cは、判定部65により家電機器100に異常が発生していないと判定された場合には、失敗した命令を家電機器100に送信する。
以下、図面を参照して、各実施形態に係る家電機器を説明する。各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。なお、以下の実施形態で説明する家電機器は、一例を示すに過ぎない。例えば、以下の実施形態では、家電機器がエアコンであるものとして説明するが、これに限らず、家電機器は、照明器具、空調装置、洗濯機、給湯器、電気錠、インターホン(ドアホン)などの生活家電、テレビジョンセット、テレビジョン録画機などのオーディオ・ビジュアル機器などであってもよい。また、家電機器は、ゲーム機などのアミューズメント家電、パーソナルコンピュータなどの情報家電、太陽光発電関連機器などであってもよい。すなわち、家電機器は、広く家庭電化製品一般であってもよい。
[第1の実施形態]
図1は、第1の実施形態に係る家電機器制御システム1の構成例を示す図である。図1に示した家電機器制御システム1は、例えば、宅内に設置されている家電機器等の制御や監視を実現するシステムであり、HEMS(Home Energy Management System)などと呼ばれる。かかる家電機器制御システム1は、例えば、HEMS標準プロトコルの「ECHONET」や「ECHONET Lite」が適用される。
図1に示すように、家電機器制御システム1には、ホームネットワークシステム2aと、ユーザ端末3と、管理サーバ4とが含まれる。ホームネットワークシステム2a、ユーザ端末3及び管理サーバ4は、ネットワーク5を介して、有線又は無線により通信可能に接続される。かかるネットワーク5は、例えば、インターネットやイントラネットに該当する。なお、図1に示すホームネットワークシステム2a、ユーザ端末3、管理サーバ4の数は、一例に過ぎず、家電機器制御システム1の構成に応じて適宜変更可能である。
ホームネットワークシステム2aは、例えばユーザ宅内や店舗内などに構築され、ゲートウェイ装置(コントローラ)10、ユーザ端末20、アクセスポイント30、家電機器(エアコン)100aなどを有する。なお、図1に示す家電機器100aの数は、一例に過ぎず、ホームネットワークシステム2aの構成に応じて適宜変更可能である。
ゲートウェイ装置10は、アクセスポイント30と接続され、ホームネットワークシステム2aを外部のネットワーク5に接続する通信機器である。図1の例では、ゲートウェイ装置10は、ホームネットワークシステム2a内のアクセスポイント30と、ホームネットワークシステム2a外のユーザ端末3や管理サーバ4とをネットワーク5を介して接続する。ゲートウェイ装置10は、ネットワーク5を介して管理サーバ4から受信した家電機器100aに対する複数の制御命令を含む制御命令列をアクセスポイント30に送信する。また、ゲートウェイ装置10は、アクセスポイント30から受信した家電機器100aに関する各種情報をネットワーク5を介して管理サーバ4に送信する。
ユーザ端末3は、例えば、タブレット端末、PC(Personal Computer)、携帯電話機、PDA(Personal Data Assistance)などであり、ネットワーク5を介して管理サーバ4に接続される。かかるユーザ端末3は、ユーザ操作に従って家電機器100aに対する複数の制御命令を含む制御命令列を管理サーバ4に送信したり、管理サーバ4から受信した家電機器100aに関する各種情報を表示したりする。
図2は、制御命令列の一例を示す図である。図2の例に示す制御命令列は、エアコンである家電機器100aの運転モードを「冷房」に設定するという命令と、家電機器100aの設定温度を「20℃」に設定するという命令と、家電機器100aの運転状態を「ON(オン)」にするという命令とを含む。
図1の説明に戻り、管理サーバ4は、ネットワーク5を介してユーザ端末3から受信した制御命令列を、ネットワーク5を介してホームネットワークシステム2a内のゲートウェイ装置10に送信する。また、管理サーバ4は、ネットワーク5を介してゲートウェイ装置10から受信した家電機器100aに関する各種情報を、ユーザ端末3に送信する。
ユーザ端末20は、例えば、タブレット端末、PC、携帯電話機、PDAなどであり、無線LANや有線LANなどを介してアクセスポイント30に接続される。かかるユーザ端末20は、ユーザ操作に従って家電機器100aに対する複数の制御命令を含む制御命令列をアクセスポイント30に送信したり、アクセスポイント30から受信した家電機器100aに関する各種情報を表示したりする。なお、ユーザ端末20は、無線LANや有線LANなどを介してゲートウェイ装置10に接続されてもよい。この場合、ユーザ端末20は、ゲートウェイ装置10経由で、アクセスポイント30に制御命令列を送信したり、アクセスポイント30から受信した家電機器100aに関する各種情報を表示したりする。
アクセスポイント30は、Bluetooth(登録商標)などの近距離無線規格や宅内LANを用いて、ゲートウェイ装置10、ユーザ端末20及び通信アダプタ120と通信を行う。かかるアクセスポイント30は、ユーザ端末20やゲートウェイ装置10から入力された制御命令列を通信アダプタ120に送信したり、通信アダプタ120から受信した家電機器100aに関する各種情報をユーザ端末20やゲートウェイ装置10に送信したりする。なお、アクセスポイント30は、ゲートウェイ装置10と一体となって形成されてもよい。
通信アダプタ120は、アクセスポイント30を介して、家電機器100aとゲートウェイ10やユーザ端末20との間で送受信される制御命令列や家電機器100aに関する各種情報などを中継する。通信アダプタ120は、アクセスポイント30から受信した制御命令列を家電機器100aに送信する。また、通信アダプタ120は、家電機器100aから受信した家電機器100aに関する各種情報をアクセスポイント30に送信する。
家電機器100aは、通信アダプタ120から受信した制御命令列に含まれる複数の命令のそれぞれを実行する。そして、家電機器100aは、制御命令列に含まれる複数の命令のそれぞれの実行結果を家電機器100aに関する各種情報として通信アダプタ120に送信する。
家電機器100aは、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)などを含むコンピュータを有する。CPUは、RAMを処理結果などを一時的に記憶させる記憶媒体として用いて、ROMに記憶された状態制御プログラムを実行する。コンピュータが状態制御プログラムを実行する場合の家電機器100aを機能的に表すと、図3に示すように、家電機器100aは、第1の設定部40と、第2の設定部41と、送信部42とを有することとなる。
第1の設定部40は、制御命令列に含まれる複数の命令であって家電機器100aの状態を設定する命令に基づいて、家電機器100aの状態を設定する。
第1の設定部40の一態様について説明する。例えば、第1の設定部40は、まず、通信アダプタ120から制御命令列を受信したか否かを判定する。制御命令列を受信したと判定した場合には、第1の設定部40は、現在の家電機器100aの各種の状態をRAMに格納する。ここで、家電機器100aの各種の状態の一例としては、家電機器の運転モード、設定温度、運転状態などが挙げられる。そして、第1の設定部40は、受信した制御命令列に含まれる複数の命令のそれぞれに基づいて、家電機器100aの状態を設定する。例えば、図2の例に示すような制御命令列を受信した場合には、第1の設定部40は、家電機器100aの運転モードを「冷房」に設定する。また、第1の設定部40は、家電機器100aの設定温度を「20℃」に設定する。さらに、第1の設定部40は、家電機器100aの運転状態を「ON」に設定する。
第2の設定部41は、制御命令列に含まれる複数の命令の中に、第1の設定部40による家電機器100aの状態の設定が失敗した命令がある場合には、家電機器100aの状態を第1の設定部40により状態が設定される前の状態に設定する。
第2の設定部41の一態様について説明する。例えば、第2の設定部41は、第1の設定部40により家電機器100aの状態の設定が行われると、制御命令列に含まれる複数の命令の中に、第1の設定部40による家電機器100aの状態の設定が失敗した命令があるか否かを判定する。
ここで、制御命令列に含まれる複数の命令の中に、第1の設定部40による家電機器100aの状態の設定が失敗した命令があると判定した場合には、第2の設定部41は、家電機器100aの状態が、第1の設定部40によりRAMに格納された各種の状態となるように、家電機器100aの状態を設定する。例えば、RAMに格納された家電機器100aの状態が、「運転モード:除湿」、「設定温度:24℃」、「運転状態:ON」である場合には、第2の設定部41は、家電機器100aの状態が、「運転モード:除湿」、「設定温度:24℃」、「運転状態:ON」となるように、家電機器100aの状態を設定する。
送信部42は、第2の設定部41により、制御命令列に含まれる複数の命令の中に、第1の設定部40による家電機器100aの状態の設定が失敗した命令がないと判定された場合に、制御命令列に含まれる全ての命令の成功を示す結果を通信アダプタ120に送信する。これにより、ユーザ端末20やユーザ端末3において、制御命令列に含まれる全ての命令の成功を示す結果が表示される。
また、送信部42は、第2の設定部41により、家電機器100aの状態がRAMに格納された各種の状態となるように、家電機器100aの状態が設定された場合に、制御命令列に含まれる全ての命令の失敗を示す結果を通信アダプタ120に送信する。これにより、ユーザ端末20やユーザ端末3において、制御命令列に含まれる全ての命令の失敗を示す結果が表示される。
[家電機器100aの処理手順]
次に、図4を用いて、家電機器100aの処理手順について説明する。図4は、第1の実施形態に係る家電機器100aが実行する状態制御処理の流れを示すフローチャートである。状態制御処理は、例えば、家電機器100aが、通信アダプタ120から制御命令列を受信したタイミングで実行される。
図4に示すように、第1の設定部40は、現在の家電機器100aの各種の状態をRAMに格納する(S101)。そして、第1の設定部40は、受信した制御命令列に含まれる複数の命令のそれぞれに基づいて、家電機器100aの状態を設定する(S102)。すなわち、第1の設定部40は、制御命令列に含まれる複数の命令のそれぞれを実行する。
そして、第2の設定部41は、制御命令列に含まれる複数の命令の中に、第1の設定部40による家電機器100aの状態の設定が失敗した命令があるか否かを判定する(S103)。
制御命令列に含まれる複数の命令の中に、第1の設定部40による家電機器100aの状態の設定が失敗した命令があると判定した場合(S103;Yes)には、第2の設定部41は、家電機器100aの状態が、第1の設定部40によりRAMに格納された各種の状態となるように、家電機器100aの状態を設定する(S104)。
そして、送信部42は、制御命令列に含まれる全ての命令の失敗を示す結果を通信アダプタ120に送信し(S105)、処理を終了する。一方、制御命令列に含まれる複数の命令の中に、第1の設定部40による家電機器100aの状態の設定が失敗した命令がないと判定された場合(S103;No)には、送信部42は、制御命令列に含まれる全ての命令の成功を示す結果を通信アダプタ120に送信し(S106)、処理を終了する。
以上、説明したように、第1の実施形態に係る家電機器100aは、制御命令列に含まれる複数の命令であって家電機器100aの状態を設定する命令に基づいて、家電機器100aの状態を設定する。そして、家電機器100aは、制御命令列に含まれる複数の命令の中に、第1の設定部40による家電機器100aの状態の設定が失敗した命令がある場合には、家電機器100aの状態を第1の設定部40により状態が設定される前の状態に設定する。したがって、第1の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合には、家電機器100aは、制御命令列に含まれる命令を実行する前の状態となる。したがって、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合であっても、家電機器100aの状態は、好ましい状態となる。よって、第1の実施形態によれば、家電機器100aが好ましくない状態となる事態の発生を抑制することができる。
[第2の実施形態]
次に、第2の実施形態について説明する。第2の実施形態に係るホームネットワークシステム2aは、第1の実施形態に係る家電機器100aに代えて、家電機器100bを有する。なお、第2の実施形態において、第1の実施形態と同一の機器や装置などには同一の符号を付し、重複する説明を省略する。
家電機器100bは、通信アダプタ120から受信した制御命令列に含まれる複数の命令のそれぞれを実行する。そして、家電機器100bは、制御命令列に含まれる複数の命令のそれぞれの実行結果を家電機器100bに関する各種情報として通信アダプタ120に送信する。
家電機器100bは、CPU、ROM、RAMなどを含むコンピュータを有する。CPUは、RAMを処理結果などを一時的に記憶させる記憶媒体として用いて、ROMに記憶された状態制御プログラムを実行する。コンピュータが状態制御プログラムを実行する場合の家電機器100bを機能的に表すと、図5に示すように、家電機器100bは、第1の設定部43と、第2の設定部44と、送信部45とを有することとなる。
第1の設定部43は、制御命令列に含まれる複数の命令であって家電機器100bの状態を設定する命令に基づいて、家電機器100bの状態を設定する。
第1の設定部43の一態様について説明する。例えば、第1の設定部43は、まず、通信アダプタ120から制御命令列を受信したか否かを判定する。制御命令列を受信したと判定した場合には、第1の設定部43は、受信した制御命令列に含まれる複数の命令のそれぞれに基づいて、家電機器100bの状態を設定する。
第2の設定部44は、制御命令列に含まれる複数の命令の中に、第1の設定部43による家電機器100bの状態の設定が失敗した命令がある場合には、制御命令列に含まれる全ての命令が成功するまで、繰り返し、失敗した命令に基づいて、家電機器100bの状態を設定する。
第2の設定部44の一態様について説明する。例えば、第2の設定部44は、第1の設定部43により家電機器100bの状態の設定が行われると、制御命令列に含まれる複数の命令の中に、第1の設定部43による家電機器100bの状態の設定が失敗した命令があるか否かを判定する。
ここで、制御命令列に含まれる複数の命令の中に、第1の設定部43による家電機器100bの状態の設定が失敗した命令があると判定した場合には、第2の設定部44は、制御命令列に含まれる全ての命令が成功するまで、繰り返し、失敗した命令に基づいて、家電機器100bの状態を設定する。例えば、失敗した命令が、家電機器100aの運転状態を「ON(オン)」にするという命令である場合には、第2の設定部44は、家電機器100bの運転状態が「ON(オン)」の状態になるまで、繰り返し、家電機器100bの運転状態を「ON(オン)」の状態にすることを試みる。
送信部45は、制御命令列に含まれる全ての命令が成功した場合には、制御命令列に含まれる全ての命令の成功を示す結果を通信アダプタ120に送信する。これにより、ユーザ端末20やユーザ端末3において、制御命令列に含まれる全ての命令の成功を示す結果が表示される。また、送信部45は、第2の設定部44により、制御命令列に含まれる複数の命令の中に第1の設定部43による家電機器100bの状態の設定が失敗した命令がないと判定された場合にも、制御命令列に含まれる全ての命令の成功を示す結果を通信アダプタ120に送信する。
[家電機器100bの処理手順]
次に、図6を用いて、家電機器100bの処理手順について説明する。図6は、第2の実施形態に係る家電機器100bが実行する状態制御処理の流れを示すフローチャートである。状態制御処理は、例えば、家電機器100bが、通信アダプタ120から制御命令列を受信したタイミングで実行される。
図6に示すように、第1の設定部43は、受信した制御命令列に含まれる複数の命令のそれぞれに基づいて、家電機器100bの状態を設定する(S201)。
そして、第2の設定部44は、制御命令列に含まれる複数の命令の中に、第1の設定部43による家電機器100bの状態の設定が失敗した命令があるか否かを判定する(S202)。
制御命令列に含まれる複数の命令の中に、第1の設定部43による家電機器100bの状態の設定が失敗した命令があると判定した場合(S202;Yes)には、第2の設定部44は、失敗した命令に基づいて、家電機器100bの状態を設定する(S203)。そして、第2の設定部44は、S203で実行した命令の結果が失敗であるか否かを判定する(S204)。失敗である場合(S204;Yes)には、第2の設定部44は、再び、S203において、失敗した命令に基づいて、家電機器100bの状態を設定する。
一方、S203で実行した命令の結果が失敗でないと第2の設定部44により判定された場合(S204;No)には、送信部45は、制御命令列に含まれる全ての命令の成功を示す結果を通信アダプタ120に送信し(S205)、処理を終了する。また、制御命令列に含まれる複数の命令の中に、第1の設定部43による家電機器100bの状態の設定が失敗した命令がないと第2の設定部44により判定された場合(S202;No)にも、送信部45は、制御命令列に含まれる全ての命令の成功を示す結果を通信アダプタ120に送信し(S205)、処理を終了する。
以上、説明したように、第2の実施形態に係る家電機器100bは、制御命令列に含まれる複数の命令であって家電機器100bの状態を設定する命令に基づいて、家電機器100bの状態を設定する。そして、家電機器100bは、制御命令列に含まれる複数の命令の中に、第1の設定部43による家電機器100bの状態の設定が失敗した命令がある場合には、制御命令列に含まれる全ての命令が成功するまで、繰り返し、失敗した命令に基づいて、家電機器100bの状態を設定する。したがって、第2の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合には、家電機器100bは、制御命令列が示す所望の状態となる。したがって、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合であっても、最終的には、家電機器100bの状態は、好ましい状態となる。よって、第2の実施形態によれば、家電機器100bが好ましくない状態となる事態の発生を抑制することができる。
[第3の実施形態]
次に、第3の実施形態について説明する。第3の実施形態に係るホームネットワークシステム2aは、第1の実施形態に係る家電機器100aに代えて、家電機器100cを有する。なお、第3の実施形態において、第1の実施形態及び第2の実施形態と同一の機器や装置などには同一の符号を付し、重複する説明を省略する。
家電機器100cは、通信アダプタ120から受信した制御命令列に含まれる複数の命令のそれぞれを実行する。そして、家電機器100cは、制御命令列に含まれる複数の命令のそれぞれの実行結果を家電機器100cに関する各種情報として通信アダプタ120に送信する。
家電機器100cは、CPU、ROM、RAMなどを含むコンピュータを有する。CPUは、RAMを処理結果などを一時的に記憶させる記憶媒体として用いて、ROMに記憶された状態制御プログラムを実行する。コンピュータが状態制御プログラムを実行する場合の家電機器100cを機能的に表すと、図7に示すように、家電機器100cは、第1の設定部46と、判定部47と、第2の設定部48と、送信部49とを有することとなる。
第1の設定部46は、制御命令列に含まれる複数の命令であって家電機器100cの状態を設定する命令に基づいて、家電機器100cの状態を設定する。
第1の設定部46の一態様について説明する。例えば、第1の設定部46は、まず、通信アダプタ120から制御命令列を受信したか否かを判定する。制御命令列を受信したと判定した場合には、第1の設定部46は、現在の家電機器100cの各種の状態をRAMに格納する。そして、第1の設定部46は、受信した制御命令列に含まれる複数の命令のそれぞれに基づいて、家電機器100cの状態を設定する。
判定部47は、制御命令列に含まれる複数の命令の中に、第1の設定部46による家電機器100cの状態の設定が失敗した命令がある場合に、家電機器100cに異常が発生したか否かを判定する。
判定部47の一態様について説明する。例えば、判定部47は、第1の設定部46により家電機器100cの状態の設定が行われると、制御命令列に含まれる複数の命令の中に、第1の設定部46による家電機器100cの状態の設定が失敗した命令があるか否かを判定する。
制御命令列に含まれる複数の命令の中に、第1の設定部46による家電機器100cの状態の設定が失敗した命令があると判定した場合には、判定部47は、家電機器100cの異常発生有無を示す状態を検出し、検出した状態が異常であるか否かを判定することにより、家電機器100cに異常が発生したか否かを判定する。
第2の設定部48は、判定部47により家電機器100cに異常が発生したと判定された場合には、家電機器100cの状態を第1の設定部46により状態が設定される前の状態に設定する。また、第2の設定部48は、判定部47により家電機器100cに異常が発生していないと判定された場合には、失敗した命令に基づいて、家電機器100cの状態を設定する。
第2の設定部48の一態様について説明する。例えば、第2の設定部48は、判定部47により家電機器100cに異常が発生したと判定された場合には、家電機器100cの状態が、第1の設定部46によりRAMに格納された各種の状態となるように、家電機器100cの状態を設定する。
一方、判定部47により家電機器100cに異常が発生していないと判定された場合には、第2の設定部48は、制御命令列に含まれる全ての命令が成功するまで、繰り返し、失敗した命令に基づいて、家電機器100cの状態を設定する。
送信部49は、制御命令列に含まれる全ての命令が成功した場合には、制御命令列に含まれる全ての命令の成功を示す結果を通信アダプタ120に送信する。また、送信部49は、判定部47により、制御命令列に含まれる複数の命令の中に第1の設定部46による家電機器100cの状態の設定が失敗した命令がないと判定された場合にも、制御命令列に含まれる全ての命令の成功を示す結果を通信アダプタ120に送信する。
また、送信部49は、第2の設定部48により、家電機器100cの状態がRAMに格納された各種の状態となるように、家電機器100cの状態が設定された場合に、制御命令列に含まれる全ての命令の失敗を示す結果を通信アダプタ120に送信する。
[家電機器100cの処理手順]
次に、図8を用いて、家電機器100cの処理手順について説明する。図8は、第3の実施形態に係る家電機器100cが実行する状態制御処理の流れを示すフローチャートである。状態制御処理は、例えば、家電機器100cが、通信アダプタ120から制御命令列を受信したタイミングで実行される。
図8に示すように、第1の設定部46は、現在の家電機器100cの各種の状態をRAMに格納する(S301)。そして、第1の設定部46は、受信した制御命令列に含まれる複数の命令のそれぞれに基づいて、家電機器100cの状態を設定する(S302)。
そして、判定部47は、制御命令列に含まれる複数の命令の中に、第1の設定部46による家電機器100cの状態の設定が失敗した命令があるか否かを判定する(S303)。
制御命令列に含まれる複数の命令の中に、第1の設定部46による家電機器100cの状態の設定が失敗した命令があると判定した場合(S303;Yes)には、判定部47は、家電機器100cの異常発生有無を示す状態を検出し、検出した状態が異常であるか否かを判定することにより、家電機器100cに異常が発生したか否かを判定する(S304)。
判定部47により家電機器100cに異常が発生したと判定された場合(S304;Yes)には、第2の設定部48は、家電機器100cの状態を第1の設定部46により状態が設定される前の状態に設定する(S305)。そして、送信部49は、制御命令列に含まれる全ての命令の失敗を示す結果を通信アダプタ120に送信し(S306)、処理を終了する。
一方、判定部47により家電機器100cに異常が発生していないと判定された場合(S304;No)には、第2の設定部48は、失敗した命令に基づいて、家電機器100cの状態を設定する(S307)。そして、第2の設定部48は、S307で実行した命令の結果が失敗であるか否かを判定する(S308)。失敗である場合(S308;Yes)には、第2の設定部48は、再び、S307において、失敗した命令に基づいて、家電機器100cの状態を設定する。
一方、S307で実行した命令の結果が失敗でないと第2の設定部48により判定された場合(S308;No)には、送信部49は、制御命令列に含まれる全ての命令の成功を示す結果を通信アダプタ120に送信し(S309)、処理を終了する。また、制御命令列に含まれる複数の命令の中に、第1の設定部46による家電機器100cの状態の設定が失敗した命令がないと判定部47により判定された場合(S303;No)にも、送信部49は、制御命令列に含まれる全ての命令の成功を示す結果を通信アダプタ120に送信し(S309)、処理を終了する。
以上、説明したように、第3の実施形態に係る家電機器100cは、制御命令列に含まれる複数の命令であって家電機器100cの状態を設定する命令に基づいて、家電機器100cの状態を設定する。そして、家電機器100cは、制御命令列に含まれる複数の命令の中に、第1の設定部46による家電機器100cの状態の設定が失敗した命令がある場合に、家電機器100cに異常が発生したか否かを判定する。そして、家電機器100cは、判定部47により家電機器100cに異常が発生したと判定された場合には、家電機器100cの状態を第1の設定部46により状態が設定される前の状態に設定する。また、家電機器100cは、判定部47により家電機器100cに異常が発生していないと判定された場合には、失敗した命令に基づいて、家電機器100cの状態を設定する。したがって、第3の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合に、家電機器100cに異常が発生していないと判定したときには、家電機器100cは、制御命令列が示す所望の状態となる。また、第3の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合に、家電機器100cに異常が発生していると判定したときには、家電機器100cは、制御命令列に含まれる命令を実行する前の状態となる。したがって、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合であっても、最終的には、家電機器100cの状態は、好ましい状態となる。よって、第3の実施形態によれば、家電機器100cが好ましくない状態となる事態の発生を抑制することができる。
また、家電機器100cは、家電機器100cに異常が発生したと判定した場合には、制御命令列に含まれる命令を実行する前の状態となる。これは、家電機器100cに異常が発生した場合には、制御命令列に含まれる命令を家電機器100cが実行しても失敗してしまう可能性が高いからである。したがって、第3の実施形態によれば、家電機器100cの状態を、制御命令列に含まれる命令を実行する前の状態とするか、または、制御命令列が示す所望の状態とするかを適切に制御することができる。
[第4の実施形態]
次に、第4の実施形態について説明する。図9に示すように、第4の実施形態に係る家電機器制御システム11のホームネットワークシステム2bは、第1の実施形態に係るホームネットワークシステム2aが有する家電機器100aに代えて、家電機器100を有する。また、第4の実施形態に係るホームネットワークシステム2bは、第1の実施形態に係るホームネットワークシステム2aが有するゲートウェイ装置10に代えて、ゲートウェイ装置10aを有する。なお、第4の実施形態において、第1〜第3の各実施形態と同一の機器や装置などには同一の符号を付し、重複する説明を省略する。
家電機器100は、通信アダプタ120から受信した制御命令列に含まれる複数の命令のそれぞれを実行する。そして、家電機器100は、制御命令列に含まれる複数の命令のそれぞれの実行結果を家電機器100に関する各種情報として通信アダプタ120に送信する。
ゲートウェイ装置10aは、ネットワーク5を介して管理サーバ4から受信した家電機器100に対する複数の制御命令を含む制御命令列をアクセスポイント30に送信する。また、ゲートウェイ装置10aは、アクセスポイント30から受信した家電機器100に関する各種情報をネットワーク5を介して管理サーバ4に送信する。
ゲートウェイ装置10aは、CPU、ROM、RAMなどを含むコンピュータを有する。CPUは、RAMを処理結果などを一時的に記憶させる記憶媒体として用いて、ROMに記憶された状態制御プログラムを実行する。コンピュータが状態制御プログラムを実行する場合のゲートウェイ装置10aを機能的に表すと、図10に示すように、ゲートウェイ装置10aは、第1の送信部50と、第2の送信部51とを有することとなる。
第1の送信部50は、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。
第1の送信部50の一態様について説明する。例えば、第1の送信部50は、まず、ネットワーク5を介して、管理サーバ4から制御命令列を受信したか否かを判定する。制御命令列を受信したと判定した場合には、第1の送信部50は、現在の家電機器100の各種の状態を家電機器100から取得し、取得した状態をRAMに格納する。そして、第1の送信部50は、受信した制御命令列を家電機器100に向けて送信する。例えば、第1の送信部50は、アクセスポイント30に制御命令列を送信する。これにより、制御命令列が家電機器100に送信される。
第2の送信部51は、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、家電機器100の状態を第1の送信部50により送信された制御命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。
第2の送信部51の一態様について説明する。例えば、第2の送信部51は、第1の送信部50により制御命令列が家電機器100に送信されると、アクセスポイント30から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。なお、ここでいう実行結果とは、家電機器100による命令を実行した結果を指す。全ての命令の実行結果を受信したと判定した場合には、第2の送信部51は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する。
ここで、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合には、第2の送信部51は、家電機器100の状態を、第1の送信部50によりRAMに格納された各種の状態にするための命令を家電機器100に向けて送信する。例えば、第2の送信部51は、家電機器100の状態を、RAMに格納された各種の状態にするための命令を、アクセスポイント30に送信する。これにより、かかる命令が家電機器100に送信される。そして、第2の送信部51は、送信した命令に対する実行結果をアクセスポイント30から受信し、実行結果が失敗である場合には、再び、家電機器100の状態を、第1の送信部50によりRAMに格納された各種の状態にするための命令を家電機器100に向けて送信する。第2の送信部51は、成功を示す実行結果を受信するまで、繰り返し、かかる命令を家電機器100に向けて送信する。
[ゲートウェイ装置10aの処理手順]
次に、図11を用いて、ゲートウェイ装置10aの処理手順について説明する。図11は、第4の実施形態に係るゲートウェイ装置10aが実行する状態制御処理の流れを示すフローチャートである。状態制御処理は、例えば、ゲートウェイ装置10aが、ネットワーク5を介して管理サーバ4から制御命令列を受信したタイミングで実行される。
図11に示すように、第1の送信部50は、現在の家電機器100の各種の状態を取得してRAMに格納する(S401)。そして、第1の送信部50は、受信した制御命令列を家電機器100に向けて送信する(S402)。
そして、第2の送信部51は、アクセスポイント30から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する(S403)。全ての命令の実行結果を受信していないと判定した場合(S403;No)には、第2の送信部51は、S403において、再び、制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。一方、全ての命令の実行結果を受信したと判定した場合(S403;Yes)には、第2の送信部51は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する(S404)。失敗した命令がないと判定した場合(S404;No)には、第2の送信部51は、処理を終了する。
一方、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合(S404;Yes)には、第2の送信部51は、次の処理を行う。すなわち、第2の送信部51は、家電機器100の状態を、第1の送信部50によりRAMに格納された各種の状態にするための命令を家電機器100に向けて送信する(S405)。
そして、第2の送信部51は、送信した命令に対する実行結果をアクセスポイント30から受信したか否かを判定する(S406)。実行結果を受信していないと判定した場合(S406;No)には、第2の送信部51は、S406において、再び、送信した命令に対する実行結果をアクセスポイント30から受信したか否かを判定する。一方、実行結果を受信したと判定した場合(S406;Yes)には、第2の送信部51は、受信した実行結果が失敗を示すか否かを判定する(S407)。実行結果が失敗を示す場合(S407;Yes)には、第2の送信部51は、S405において、再び、家電機器100の状態を、第1の送信部50によりRAMに格納された各種の状態にするための命令を家電機器100に向けて送信する。一方、受信した実行結果が失敗を示さない場合(S407;No)、すなわち、実行結果が成功を示す場合には、第2の送信部51は、処理を終了する。
以上、説明したように、第4の実施形態に係るゲートウェイ装置10aは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、ゲートウェイ装置10aは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、家電機器100の状態を第1の送信部50により送信された制御命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。したがって、第4の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合には、家電機器100は、制御命令列に含まれる命令を実行する前の状態となる。したがって、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合であっても、家電機器100の状態は、好ましい状態となる。よって、第4の実施形態によれば、家電機器100が好ましくない状態となる事態の発生を抑制することができる。
[第5の実施形態]
次に、第5の実施形態について説明する。第5の実施形態に係るホームネットワークシステム2bは、第4の実施形態に係るゲートウェイ装置10aに代えて、ゲートウェイ装置10bを有する。なお、第5の実施形態において、第4の実施形態と同一の機器や装置などには同一の符号を付し、重複する説明を省略する。
ゲートウェイ装置10bは、ネットワーク5を介して管理サーバ4から受信した家電機器100に対する複数の制御命令を含む制御命令列をアクセスポイント30に送信する。また、ゲートウェイ装置10bは、アクセスポイント30から受信した家電機器100に関する各種情報をネットワーク5を介して管理サーバ4に送信する。
ゲートウェイ装置10bは、CPU、ROM、RAMなどを含むコンピュータを有する。CPUは、RAMを処理結果などを一時的に記憶させる記憶媒体として用いて、ROMに記憶された状態制御プログラムを実行する。コンピュータが状態制御プログラムを実行する場合のゲートウェイ装置10bを機能的に表すと、図12に示すように、ゲートウェイ装置10bは、第1の送信部52と、第2の送信部53とを有することとなる。
第1の送信部52は、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。
第1の送信部52の一態様について説明する。例えば、第1の送信部52は、まず、ネットワーク5を介して、管理サーバ4から制御命令列を受信したか否かを判定する。制御命令列を受信したと判定した場合には、第1の送信部52は、受信した制御命令列を家電機器100に向けて送信する。例えば、第1の送信部52は、アクセスポイント30に制御命令列を送信する。これにより、制御命令列が家電機器100に送信される。
第2の送信部53は、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、制御命令列に含まれる全ての命令が成功するまで、繰り返し、失敗した命令を家電機器100に送信する。
第2の送信部53の一態様について説明する。例えば、第2の送信部53は、第1の送信部52により制御命令列が家電機器100に送信されると、アクセスポイント30から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。なお、ここでいう実行結果とは、家電機器100による命令を実行した結果を指す。全ての命令の実行結果を受信したと判定した場合には、第2の送信部53は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する。
ここで、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合には、第2の送信部53は、失敗した命令を家電機器100に向けて送信する。例えば、第2の送信部53は、失敗した命令を、アクセスポイント30に送信する。これにより、かかる命令が家電機器100に送信される。そして、第2の送信部53は、送信した命令に対する実行結果をアクセスポイント30から受信し、実行結果が失敗である場合には、再び、失敗した命令を家電機器100に向けて送信する。第2の送信部53は、成功を示す実行結果を受信するまで、繰り返し、かかる命令を家電機器100に向けて送信する。
[ゲートウェイ装置10bの処理手順]
次に、図13を用いて、ゲートウェイ装置10bの処理手順について説明する。図13は、第5の実施形態に係るゲートウェイ装置10bが実行する状態制御処理の流れを示すフローチャートである。状態制御処理は、例えば、ゲートウェイ装置10bが、ネットワーク5を介して管理サーバ4から制御命令列を受信したタイミングで実行される。
図13に示すように、第1の送信部52は、受信した制御命令列を家電機器100に向けて送信する(S501)。
そして、第2の送信部53は、アクセスポイント30から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する(S502)。全ての命令の実行結果を受信していないと判定した場合(S502;No)には、第2の送信部53は、S502において、再び、制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。一方、全ての命令の実行結果を受信したと判定した場合(S502;Yes)には、第2の送信部53は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する(S503)。失敗した命令がないと判定した場合(S503;No)には、第2の送信部53は、処理を終了する。
一方、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合(S503;Yes)には、第2の送信部53は、失敗した命令を家電機器100に向けて送信する(S504)。
そして、第2の送信部53は、送信した命令に対する実行結果をアクセスポイント30から受信したか否かを判定する(S505)。実行結果を受信していないと判定した場合(S505;No)には、第2の送信部53は、S505において、再び、送信した命令に対する実行結果をアクセスポイント30から受信したか否かを判定する。一方、実行結果を受信したと判定した場合(S505;Yes)には、第2の送信部53は、受信した実行結果が失敗を示すか否かを判定する(S506)。実行結果が失敗を示す場合(S506;Yes)には、第2の送信部53は、S504において、再び、失敗した命令を家電機器100に向けて送信する。一方、受信した実行結果が失敗を示さない場合(S506;No)、すなわち、実行結果が成功を示す場合には、第2の送信部53は、処理を終了する。
以上、説明したように、第5の実施形態に係るゲートウェイ装置10bは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、ゲートウェイ装置10bは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、制御命令列に含まれる全ての命令が成功するまで、繰り返し、失敗した命令を家電機器100に送信する。したがって、第5の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合には、家電機器100は、制御命令列が示す所望の状態となる。したがって、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合であっても、最終的には、家電機器100の状態は、好ましい状態となる。よって、第5の実施形態によれば、家電機器100が好ましくない状態となる事態の発生を抑制することができる。
[第6の実施形態]
次に、第6の実施形態について説明する。第6の実施形態に係るホームネットワークシステム2bは、第4の実施形態に係るゲートウェイ装置10aに代えて、ゲートウェイ装置10cを有する。なお、第6の実施形態において、第4の実施形態及び第5の実施形態と同一の機器や装置などには同一の符号を付し、重複する説明を省略する。
ゲートウェイ装置10cは、ネットワーク5を介して管理サーバ4から受信した家電機器100に対する複数の制御命令を含む制御命令列をアクセスポイント30に送信する。また、ゲートウェイ装置10cは、アクセスポイント30から受信した家電機器100に関する各種情報をネットワーク5を介して管理サーバ4に送信する。
ゲートウェイ装置10cは、CPU、ROM、RAMなどを含むコンピュータを有する。CPUは、RAMを処理結果などを一時的に記憶させる記憶媒体として用いて、ROMに記憶された状態制御プログラムを実行する。コンピュータが状態制御プログラムを実行する場合のゲートウェイ装置10cを機能的に表すと、図14に示すように、ゲートウェイ装置10cは、第1の送信部54と、判定部55と、第2の送信部56とを有することとなる。
第1の送信部54は、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。
第1の送信部54の一態様について説明する。例えば、第1の送信部54は、まず、ネットワーク5を介して、管理サーバ4から制御命令列を受信したか否かを判定する。制御命令列を受信したと判定した場合には、第1の送信部54は、現在の家電機器100の各種の状態を家電機器100から取得し、取得した状態をRAMに格納する。そして、第1の送信部54は、受信した制御命令列を家電機器100に向けて送信する。例えば、第1の送信部54は、アクセスポイント30に制御命令列を送信する。これにより、制御命令列が家電機器100に送信される。
判定部55は、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合に、家電機器100に異常が発生したか否かを判定する。
判定部55の一態様について説明する。例えば、判定部55は、第1の送信部54により家電機器100に向けて制御命令列が送信されると、アクセスポイント30から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。なお、ここでいう実行結果とは、家電機器100による命令を実行した結果を指す。全ての命令の実行結果を受信したと判定した場合には、判定部55は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する。
制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合には、判定部55は、家電機器100の異常発生有無を示す状態を取得し、取得した状態が異常であるか否かを判定することにより、家電機器100に異常が発生したか否かを判定する。
第2の送信部56は、判定部55により家電機器100に異常が発生したと判定された場合には、家電機器100の状態を第1の送信部54により送信された命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。また、第2の送信部56は、判定部55により家電機器100に異常が発生していないと判定された場合には、失敗した命令を家電機器100に送信する。
第2の送信部56の一態様について説明する。例えば、第2の送信部56は、判定部55により家電機器100に異常が発生したと判定された場合には、家電機器100の状態を、第1の送信部54によりRAMに格納された各種の状態にするための命令を家電機器100に向けて送信する。例えば、第2の送信部56は、家電機器100の状態を、RAMに格納された各種の状態にするための命令を、アクセスポイント30に送信する。これにより、かかる命令が家電機器100に送信される。そして、第2の送信部56は、送信した命令に対する実行結果をアクセスポイント30から受信し、実行結果が失敗である場合には、再び、家電機器100の状態を、第1の送信部54によりRAMに格納された各種の状態にするための命令を家電機器100に向けて送信する。第2の送信部56は、成功を示す実行結果を受信するまで、繰り返し、かかる命令を家電機器100に向けて送信する。
一方、判定部55により家電機器100に異常が発生していないと判定された場合には、第2の送信部56は、失敗した命令を家電機器100に向けて送信する。例えば、第2の送信部56は、失敗した命令を、アクセスポイント30に送信する。これにより、かかる命令が家電機器100に送信される。そして、第2の送信部56は、送信した命令に対する実行結果をアクセスポイント30から受信し、実行結果が失敗である場合には、再び、失敗した命令を家電機器100に向けて送信する。第2の送信部56は、成功を示す実行結果を受信するまで、繰り返し、かかる命令を家電機器100に向けて送信する。
[ゲートウェイ装置10cの処理手順]
次に、図15を用いて、ゲートウェイ装置10cの処理手順について説明する。図15は、第6の実施形態に係るゲートウェイ装置10cが実行する状態制御処理の流れを示すフローチャートである。状態制御処理は、例えば、ゲートウェイ装置10cが、ネットワーク5を介して管理サーバ4から制御命令列を受信したタイミングで実行される。
図15に示すように、第1の送信部54は、現在の家電機器100の各種の状態を家電機器100から取得し、取得した状態をRAMに格納する(S601)。そして、第1の送信部54は、受信した制御命令列を家電機器100に向けて送信する(S602)。
そして、判定部55は、アクセスポイント30から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する(S603)。全ての命令の実行結果を受信していないと判定した場合(S603;No)には、判定部55は、S603において、再び、制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。一方、全ての命令の実行結果を受信したと判定した場合(S603;Yes)には、判定部55は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する(S604)。失敗した命令がないと判定した場合(S604;No)には、判定部55は、処理を終了する。
一方、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合(S604;Yes)には、判定部55は、家電機器100の状態を取得し、取得した状態が異常であるか否かを判定することにより、家電機器100に異常が発生したか否かを判定する(S605)。
判定部55により家電機器100に異常が発生したと判定された場合(S605;Yes)には、第2の送信部56は、家電機器100の状態を、第1の送信部54によりRAMに格納された各種の状態にするための命令を家電機器100に向けて送信する(S606)。そして、第2の送信部56は、送信した命令に対する実行結果をアクセスポイント30から受信したか否かを判定する(S607)。実行結果を受信していない場合(S607;No)には、第2の送信部56は、S607において、再び、送信した命令に対する実行結果をアクセスポイント30から受信したか否かを判定する。
一方、実行結果を受信した場合(S607;Yes)には、第2の送信部56は、受信した実行結果が失敗を示すか否かを判定する(S608)。実行結果が失敗を示す場合(S608;Yes)には、第2の送信部56は、S606において、再び、家電機器100の状態を、第1の送信部54によりRAMに格納された各種の状態にするための命令を家電機器100に向けて送信する。一方、実行結果が失敗を示さない場合(S608;No)、すなわち、実行結果が成功を示す場合には、第2の送信部56は、処理を終了する。
一方、判定部55により家電機器100に異常が発生していないと判定された場合(S605;No)には、第2の送信部56は、失敗した命令を家電機器100に向けて送信する(S609)。そして、第2の送信部56は、送信した命令に対する実行結果をアクセスポイント30から受信したか否かを判定する(S610)。実行結果を受信していない場合(S610;No)には、第2の送信部56は、S610において、再び、送信した命令に対する実行結果をアクセスポイント30から受信したか否かを判定する。
一方、実行結果を受信した場合(S610;Yes)には、第2の送信部56は、受信した実行結果が失敗を示すか否かを判定する(S611)。実行結果が失敗を示す場合(S611;Yes)には、第2の送信部56は、S609において、再び、失敗した命令を家電機器100に向けて送信する。一方、実行結果が失敗を示さない場合(S611;No)、すなわち、実行結果が成功を示す場合には、第2の送信部56は、処理を終了する。
以上、説明したように、第6の実施形態に係るゲートウェイ装置10cは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、ゲートウェイ装置10cは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合に、家電機器100に異常が発生したか否かを判定する。そして、ゲートウェイ装置10cは、判定部55により家電機器100に異常が発生したと判定された場合には、家電機器100の状態を第1の送信部54により送信された命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。また、ゲートウェイ装置10cは、判定部55により家電機器100に異常が発生していないと判定された場合には、失敗した命令を家電機器100に送信する。したがって、第6の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合に、家電機器100cに異常が発生していないと判定したときには、家電機器100は、制御命令列が示す所望の状態となる。また、第6の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合に、家電機器100に異常が発生していると判定したときには、家電機器100は、制御命令列に含まれる命令を実行する前の状態となる。したがって、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合であっても、最終的には、家電機器100cの状態は、好ましい状態となる。よって、第6の実施形態によれば、家電機器100が好ましくない状態となる事態の発生を抑制することができる。
また、第6の実施形態において、家電機器100は、家電機器100に異常が発生したと判定した場合には、制御命令列に含まれる命令を実行する前の状態となる。これは、家電機器100に異常が発生した場合には、制御命令列に含まれる命令を家電機器100が実行しても失敗してしまう可能性が高いからである。したがって、第6の実施形態によれば、家電機器100の状態を、制御命令列に含まれる命令を実行する前の状態とするか、または、制御命令列が示す所望の状態とするかを適切に制御することができる。
[第7の実施形態]
次に、第7の実施形態について説明する。図16に示すように、第7の実施形態に係る家電機器制御システム12のホームネットワークシステム2cは、第4の実施形態に係るホームネットワークシステム2bが有するゲートウェイ装置10aに代えて、ゲートウェイ装置10を有する。また、第7の実施形態に係るホームネットワークシステム2cは、第4の実施形態に係るホームネットワークシステム2bが有する通信アダプタ120に代えて、通信アダプタ120aを有する。なお、第7の実施形態において、第1〜第6の各実施形態と同一の機器や装置などには同一の符号を付し、重複する説明を省略する。
通信アダプタ120aは、アクセスポイント30を介して、家電機器100とゲートウェイ10やユーザ端末20との間で送受信される制御命令列や家電機器100に関する各種情報などを中継する。通信アダプタ120aは、アクセスポイント30から受信した制御命令列を家電機器100に送信する。また、通信アダプタ120aは、家電機器100から受信した家電機器100に関する各種情報をアクセスポイント30に送信する。
通信アダプタ120aは、CPU、ROM、RAMなどを含むコンピュータを有する。CPUは、RAMを処理結果などを一時的に記憶させる記憶媒体として用いて、ROMに記憶された状態制御プログラムを実行する。コンピュータが状態制御プログラムを実行する場合の通信アダプタ120aを機能的に表すと、図17に示すように、通信アダプタ120aは、第1の送信部60と、第2の送信部61とを有することとなる。
第1の送信部60は、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。
第1の送信部60の一態様について説明する。例えば、第1の送信部60は、まず、アクセスポイント30から制御命令列を受信したか否かを判定する。制御命令列を受信したと判定した場合には、第1の送信部60は、現在の家電機器100の各種の状態を家電機器100から取得し、取得した状態をRAMに格納する。そして、第1の送信部60は、受信した制御命令列を家電機器100に送信する。
第2の送信部61は、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、家電機器100の状態を第1の送信部60により送信された制御命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。
第2の送信部61の一態様について説明する。例えば、第2の送信部61は、第1の送信部60により制御命令列が家電機器100に送信されると、家電機器100から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。なお、ここでいう実行結果とは、家電機器100による命令を実行した結果を指す。全ての命令の実行結果を受信したと判定した場合には、第2の送信部61は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する。
ここで、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合には、第2の送信部61は、家電機器100の状態を、第1の送信部60によりRAMに格納された各種の状態にするための命令を家電機器100に送信する。そして、第2の送信部61は、送信した命令に対する実行結果を家電機器100から受信し、実行結果が失敗である場合には、再び、家電機器100の状態を、第1の送信部60によりRAMに格納された各種の状態にするための命令を家電機器100に送信する。第2の送信部61は、成功を示す実行結果を受信するまで、繰り返し、かかる命令を家電機器100に送信する。
[通信アダプタ120aの処理手順]
次に、図18を用いて、通信アダプタ120aの処理手順について説明する。図18は、第7の実施形態に係る通信アダプタ120aが実行する状態制御処理の流れを示すフローチャートである。状態制御処理は、例えば、通信アダプタ120aが、アクセスポイント30から制御命令列を受信したタイミングで実行される。
図18に示すように、第1の送信部60は、現在の家電機器100の各種の状態を取得してRAMに格納する(S701)。そして、第1の送信部60は、受信した制御命令列を家電機器100に送信する(S702)。
そして、第2の送信部61は、家電機器100から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する(S703)。全ての命令の実行結果を受信していないと判定した場合(S703;No)には、第2の送信部61は、S703において、再び、制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。一方、全ての命令の実行結果を受信したと判定した場合(S703;Yes)には、第2の送信部61は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する(S704)。失敗した命令がないと判定した場合(S704;No)には、第2の送信部61は、処理を終了する。
一方、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合(S704;Yes)には、第2の送信部61は、次の処理を行う。すなわち、第2の送信部61は、家電機器100の状態を、第1の送信部60によりRAMに格納された各種の状態にするための命令を家電機器100に送信する(S705)。
そして、第2の送信部61は、送信した命令に対する実行結果を家電機器100から受信したか否かを判定する(S706)。実行結果を受信していないと判定した場合(S706;No)には、第2の送信部61は、S706において、再び、送信した命令に対する実行結果を家電機器100から受信したか否かを判定する。一方、実行結果を受信したと判定した場合(S706;Yes)には、第2の送信部61は、受信した実行結果が失敗を示すか否かを判定する(S707)。実行結果が失敗を示す場合(S707;Yes)には、第2の送信部61は、S705において、再び、家電機器100の状態を、第1の送信部60によりRAMに格納された各種の状態にするための命令を家電機器100に送信する。一方、受信した実行結果が失敗を示さない場合(S707;No)、すなわち、実行結果が成功を示す場合には、第2の送信部61は、処理を終了する。
以上、説明したように、第7の実施形態に係る通信アダプタ120aは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、通信アダプタ120aは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、家電機器100の状態を第1の送信部60により送信された制御命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。したがって、第7の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合には、家電機器100は、制御命令列に含まれる命令を実行する前の状態となる。したがって、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合であっても、家電機器100の状態は、好ましい状態となる。よって、第7の実施形態によれば、家電機器100が好ましくない状態となる事態の発生を抑制することができる。
また、第7の実施形態によれば、ゲートウェイ装置10が制御命令列を送信した後では、通信アダプタ120aが、家電機器100の状態を制御する。そのため、第7の実施形態によれば、ゲートウェイ装置10の負荷を軽減することができる。
[第8の実施形態]
次に、第8の実施形態について説明する。第8の実施形態に係るホームネットワークシステム2cは、第7の実施形態に係る通信アダプタ120aに代えて、通信アダプタ120bを有する。なお、第8の実施形態において、第7の実施形態と同一の機器や装置などには同一の符号を付し、重複する説明を省略する。
通信アダプタ120bは、アクセスポイント30を介して、家電機器100とゲートウェイ10やユーザ端末20との間で送受信される制御命令列や家電機器100に関する各種情報などを中継する。通信アダプタ120bは、アクセスポイント30から受信した制御命令列を家電機器100に送信する。また、通信アダプタ120bは、家電機器100から受信した家電機器100に関する各種情報をアクセスポイント30に送信する。
通信アダプタ120bは、CPU、ROM、RAMなどを含むコンピュータを有する。CPUは、RAMを処理結果などを一時的に記憶させる記憶媒体として用いて、ROMに記憶された状態制御プログラムを実行する。コンピュータが状態制御プログラムを実行する場合の通信アダプタ120bを機能的に表すと、図19に示すように、通信アダプタ120bは、第1の送信部62と、第2の送信部63とを有することとなる。
第1の送信部62は、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。
第1の送信部62の一態様について説明する。例えば、第1の送信部62は、まず、アクセスポイント30から制御命令列を受信したか否かを判定する。制御命令列を受信したと判定した場合には、第1の送信部62は、受信した制御命令列を家電機器100に送信する。
第2の送信部63は、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、制御命令列に含まれる全ての命令が成功するまで、繰り返し、失敗した命令を家電機器100に送信する。
第2の送信部63の一態様について説明する。例えば、第2の送信部63は、第1の送信部62により制御命令列が家電機器100に送信されると、家電機器100から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。なお、ここでいう実行結果とは、家電機器100による命令を実行した結果を指す。全ての命令の実行結果を受信したと判定した場合には、第2の送信部63は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する。
ここで、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合には、第2の送信部63は、失敗した命令を家電機器100に送信する。そして、第2の送信部63は、送信した命令に対する実行結果を家電機器100から受信し、実行結果が失敗である場合には、再び、失敗した命令を家電機器100に送信する。第2の送信部63は、成功を示す実行結果を受信するまで、繰り返し、かかる命令を家電機器100に送信する。
[通信アダプタ120bの処理手順]
次に、図20を用いて、通信アダプタ120bの処理手順について説明する。図20は、第8の実施形態に係る通信アダプタ120bが実行する状態制御処理の流れを示すフローチャートである。状態制御処理は、例えば、通信アダプタ120bが、アクセスポイント30から制御命令列を受信したタイミングで実行される。
図20に示すように、第1の送信部62は、受信した制御命令列を家電機器100に向けて送信する(S801)。
そして、第2の送信部63は、家電機器100から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する(S802)。全ての命令の実行結果を受信していないと判定した場合(S802;No)には、第2の送信部63は、S802において、再び、制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。一方、全ての命令の実行結果を受信したと判定した場合(S802;Yes)には、第2の送信部63は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する(S803)。失敗した命令がないと判定した場合(S803;No)には、第2の送信部63は、処理を終了する。
一方、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合(S803;Yes)には、第2の送信部63は、失敗した命令を家電機器100に送信する(S804)。
そして、第2の送信部63は、送信した命令に対する実行結果を家電機器100から受信したか否かを判定する(S805)。実行結果を受信していないと判定した場合(S805;No)には、第2の送信部63は、S805において、再び、送信した命令に対する実行結果を家電機器100から受信したか否かを判定する。一方、実行結果を受信したと判定した場合(S805;Yes)には、第2の送信部63は、受信した実行結果が失敗を示すか否かを判定する(S806)。実行結果が失敗を示す場合(S806;Yes)には、第2の送信部63は、S804において、再び、失敗した命令を家電機器100に送信する。一方、受信した実行結果が失敗を示さない場合(S806;No)、すなわち、実行結果が成功を示す場合には、第2の送信部63は、処理を終了する。
以上、説明したように、第8の実施形態に係る通信アダプタ120bは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、通信アダプタ120bは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合には、制御命令列に含まれる全ての命令が成功するまで、繰り返し、失敗した命令を家電機器100に送信する。したがって、第8の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合には、家電機器100は、制御命令列が示す所望の状態となる。したがって、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合であっても、最終的には、家電機器100の状態は、好ましい状態となる。よって、第8の実施形態によれば、家電機器100が好ましくない状態となる事態の発生を抑制することができる。
また、第8の実施形態によれば、ゲートウェイ装置10が制御命令列を送信した後では、通信アダプタ120bが、家電機器100の状態を制御する。そのため、第8の実施形態によれば、ゲートウェイ装置10の負荷を軽減することができる。
[第9の実施形態]
次に、第9の実施形態について説明する。第9の実施形態に係るホームネットワークシステム2cは、第7の実施形態に係る通信アダプタ120aに代えて、通信アダプタ120cを有する。なお、第9の実施形態において、第7の実施形態及び第8の実施形態と同一の機器や装置などには同一の符号を付し、重複する説明を省略する。
通信アダプタ120cは、アクセスポイント30を介して、家電機器100とゲートウェイ10やユーザ端末20との間で送受信される制御命令列や家電機器100に関する各種情報などを中継する。通信アダプタ120cは、アクセスポイント30から受信した制御命令列を家電機器100に送信する。また、通信アダプタ120cは、家電機器100から受信した家電機器100に関する各種情報をアクセスポイント30に送信する。
通信アダプタ120cは、CPU、ROM、RAMなどを含むコンピュータを有する。CPUは、RAMを処理結果などを一時的に記憶させる記憶媒体として用いて、ROMに記憶された状態制御プログラムを実行する。コンピュータが状態制御プログラムを実行する場合の通信アダプタ120cを機能的に表すと、図21に示すように、通信アダプタ120cは、第1の送信部64と、判定部65と、第2の送信部66とを有することとなる。
第1の送信部64は、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。
第1の送信部64の一態様について説明する。例えば、第1の送信部64は、まず、アクセスポイント30から制御命令列を受信したか否かを判定する。制御命令列を受信したと判定した場合には、第1の送信部64は、現在の家電機器100の各種の状態を家電機器100から取得し、取得した状態をRAMに格納する。そして、第1の送信部64は、受信した制御命令列を家電機器100に送信する。
判定部65は、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合に、家電機器100に異常が発生したか否かを判定する。
判定部65の一態様について説明する。例えば、判定部65は、第1の送信部64により家電機器100に制御命令列が送信されると、家電機器100から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。なお、ここでいう実行結果とは、家電機器100による命令を実行した結果を指す。全ての命令の実行結果を受信したと判定した場合には、判定部65は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する。
制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合には、判定部65は、家電機器100の状態を取得し、取得した状態が異常であるか否かを判定することにより、家電機器100に異常が発生したか否かを判定する。
第2の送信部66は、判定部65により家電機器100に異常が発生したと判定された場合には、家電機器100の状態を第1の送信部64により送信された命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。また、第2の送信部66は、判定部65により家電機器100に異常が発生していないと判定された場合には、失敗した命令を家電機器100に送信する。
第2の送信部66の一態様について説明する。例えば、第2の送信部66は、判定部65により家電機器100に異常が発生したと判定された場合には、家電機器100の状態を、第1の送信部64によりRAMに格納された各種の状態にするための命令を家電機器100に送信する。そして、第2の送信部66は、送信した命令に対する実行結果を家電機器100から受信し、実行結果が失敗である場合には、再び、家電機器100の状態を、第1の送信部64によりRAMに格納された各種の状態にするための命令を家電機器100に送信する。第2の送信部66は、成功を示す実行結果を受信するまで、繰り返し、かかる命令を家電機器100に送信する。
一方、判定部65により家電機器100に異常が発生していないと判定された場合には、第2の送信部66は、失敗した命令を家電機器100に送信する。そして、第2の送信部66は、送信した命令に対する実行結果を家電機器100から受信し、実行結果が失敗である場合には、再び、失敗した命令を家電機器100に送信する。第2の送信部66は、成功を示す実行結果を受信するまで、繰り返し、かかる命令を家電機器100に送信する。
[通信アダプタ120cの処理手順]
次に、図22を用いて、通信アダプタ120cの処理手順について説明する。図22は、第9の実施形態に係る通信アダプタ120cが実行する状態制御処理の流れを示すフローチャートである。状態制御処理は、例えば、通信アダプタ120cが、アクセスポイント30から制御命令列を受信したタイミングで実行される。
図22に示すように、第1の送信部64は、現在の家電機器100の各種の状態を家電機器100から取得し、取得した状態をRAMに格納する(S901)。そして、第1の送信部64は、受信した制御命令列を家電機器100に送信する(S902)。
そして、判定部65は、家電機器100から制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する(S903)。全ての命令の実行結果を受信していないと判定した場合(S903;No)には、判定部65は、S903において、再び、制御命令列に含まれる全ての命令の実行結果を受信したか否かを判定する。一方、全ての命令の実行結果を受信したと判定した場合(S903;Yes)には、判定部65は、受信した実行結果から、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があるか否かを判定する(S904)。失敗した命令がないと判定した場合(S904;No)には、判定部65は、処理を終了する。
一方、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令があると判定した場合(S904;Yes)には、判定部65は、家電機器100の状態を取得し、取得した状態が異常であるか否かを判定することにより、家電機器100に異常が発生したか否かを判定する(S905)。
判定部65により家電機器100に異常が発生したと判定された場合(S905;Yes)には、第2の送信部66は、家電機器100の状態を第1の送信部64によりRAMに格納された各種の状態にするための命令を家電機器100に送信する(S906)。そして、第2の送信部66は、送信した命令に対する実行結果を家電機器100から受信したか否かを判定する(S907)。実行結果を受信していない場合(S907;No)には、第2の送信部66は、S907において、再び、送信した命令に対する実行結果を家電機器100から受信したか否かを判定する。
一方、実行結果を受信した場合(S907;Yes)には、第2の送信部66は、受信した実行結果が失敗を示すか否かを判定する(S908)。実行結果が失敗を示す場合(S908;Yes)には、第2の送信部66は、S906において、再び、家電機器100の状態を第1の送信部64によりRAMに格納された各種の状態にするための命令を家電機器100に送信する。一方、実行結果が失敗を示さない場合(S908;No)、すなわち、実行結果が成功を示す場合には、第2の送信部66は、処理を終了する。
一方、判定部65により家電機器100に異常が発生していないと判定された場合(S905;No)には、第2の送信部66は、失敗した命令を家電機器100に送信する(S909)。そして、第2の送信部66は、送信した命令に対する実行結果を家電機器100から受信したか否かを判定する(S910)。実行結果を受信していない場合(S910;No)には、第2の送信部66は、S910において、再び、送信した命令に対する実行結果を家電機器100から受信したか否かを判定する。
一方、実行結果を受信した場合(S910;Yes)には、第2の送信部66は、受信した実行結果が失敗を示すか否かを判定する(S911)。実行結果が失敗を示す場合(S911;Yes)には、第2の送信部66は、S909において、再び、失敗した命令を家電機器100に送信する。一方、実行結果が失敗を示さない場合(S911;No)、すなわち、実行結果が成功を示す場合には、第2の送信部66は、処理を終了する。
以上、説明したように、第9の実施形態に係る通信アダプタ120cは、家電機器100の状態を設定する複数の命令を含む命令列を家電機器100に送信する。そして、通信アダプタ120cは、制御命令列に含まれる複数の命令の中に、家電機器100の状態の設定が失敗した命令がある場合に、家電機器100に異常が発生したか否かを判定する。そして、通信アダプタ120cは、判定部65により家電機器100に異常が発生したと判定された場合には、家電機器100の状態を第1の送信部64により送信された命令列によって状態が設定される前の状態に設定するための命令を家電機器100に送信する。また、通信アダプタ120cは、判定部65により家電機器100に異常が発生していないと判定された場合には、失敗した命令を家電機器100に送信する。したがって、第9の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合に、家電機器100cに異常が発生していないと判定したときには、家電機器100は、制御命令列が示す所望の状態となる。また、第9の実施形態において、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合に、家電機器100に異常が発生していると判定したときには、家電機器100は、制御命令列に含まれる命令を実行する前の状態となる。したがって、制御命令列に含まれる命令のうち、一部の命令の実行が成功し、他の命令の実行が失敗した場合であっても、最終的には、家電機器100cの状態は、好ましい状態となる。よって、第9の実施形態によれば、家電機器100が好ましくない状態となる事態の発生を抑制することができる。
また、第9の実施形態において、家電機器100は、家電機器100に異常が発生したと判定した場合には、制御命令列に含まれる命令を実行する前の状態となる。これは、家電機器100に異常が発生した場合には、制御命令列に含まれる命令を家電機器100が実行しても失敗してしまう可能性が高いからである。したがって、第9の実施形態によれば、家電機器100の状態を、制御命令列に含まれる命令を実行する前の状態とするか、または、制御命令列が示す所望の状態とするかを適切に制御することができる。
また、第9の実施形態によれば、ゲートウェイ装置10が制御命令列を送信した後では、通信アダプタ120cが、家電機器100の状態を制御する。そのため、第9の実施形態によれば、ゲートウェイ装置10の負荷を軽減することができる。
以上説明したとおり、上記各実施形態によれば、容易に家電機器の各種の状態を設定することができる。また、上記各実施形態によれば、家電機器が好ましくない状態となる事態の発生を抑制することができる。
なお、上記第7〜第9の各実施形態において、通信アダプタ120が行う各処理は、宅内のユーザ端末20や、宅外のユーザ端末3や管理サーバ4が同様に行うことができる。
また、上記第2、第3、第5、第6、第8及び第9の各実施形態において、失敗した命令を、成功するまで、繰り返し、家電機器に実行させる場合について説明した。しかしながら、これらの各実施形態において、命令の実行回数の上限値を定めておき、実行回数の上限値まで失敗した命令を繰り返し実行しても、成功しない場合には、処理を終了するなどしてもよい。また、第3の実施形態において、実行回数の上限値まで失敗した命令を繰り返し実行しても、成功しない場合には、RAMに格納された各種の状態となるように、家電機器100cの状態を設定するようにしてもよい。また、第6及び第9の各実施形態において、実行回数の上限値まで失敗した命令を繰り返し実行しても、成功しない場合には、RAMに格納された各種の状態にするための命令を家電機器100に送信するようにしてもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。