(57)【要約】【課題】家電機器において、機能を拡張すれば制御手段が大規模になってしまう。【解決手段】制御モード取得部２０４は、家電機器７からモード情報を取得する。プログラム取得部２０６は、そのモード情報に対応する制御プログラムをホームネットワーク３を介して取得する。制御部２２０は、その制御プログラムを実行することにより、制御情報を家電機器７に出力する。家電機器７は、その制御情報に準じて所定の動作を行う。これにより、家電機器７の内部に制御プログラムを実行するための制御手段が不要になるので、制御手段の大規模化を抑制できる。【選択図】図２
2005202518.tif 000002
【特許請求の範囲】
【請求項１】
家電機器のモード情報に応じたプログラムを記憶するサーバ装置が接続可能なネットワークと第１通信回線を介して通信を行うネット通信部と、
第２通信回線を介して前記家電機器と通信を行う機器通信部と、
前記第２通信回線を介して前記家電機器から所定の機能を特定するモード情報を受け付けるモード取得部と、
前記モード情報に基づいて、前記所定の機能を実現するためのプログラムを前記第１通信回線を介して前記ネットワークに接続されているサーバ装置から取得するプログラム取得部と、
前記プログラム取得部で取得したプログラムを実行し、前記所定の機能を実現するための制御情報を、前記第２通信回線を介して前記家電機器に供給する制御部と、
を備えることを特徴とするアダプタ。
【請求項２】
前記プログラム取得部は、前記家電機器の種類または前記モード情報の種類に応じて、前記プログラムを取得できない場合の対応処理を変更することを特徴とする請求項１に記載のアダプタ。
【請求項３】
前記プログラム取得部は、前記プログラムを取得できない場合、所定の時間が経過した後、再び前記プログラムの取得処理を行い、前記プログラムの取得に所定の回数失敗した場合に、その旨を通知させることを特徴とする請求項１または２に記載のアダプタ。
【請求項４】
前記家電機器がリアルタイム性の高い機能を提供する機器または、前記モード情報で特定される所定の機能がリアルタイム性の高い機能の場合、前記プログラム取得部は、前記通知までのタイミングを短くする方向に前記所定の時間および前記所定の回数の少なくとも一方を変更することを特徴とする請求項３に記載のアダプタ。
【請求項５】
前記プログラム取得部は、前記制御部が前記モード情報に基づいて取得したプログラムの実行を終了したことを契機に、前記家電機器を識別する情報に基づいて取得したプログラムを前記制御部に実行させることを特徴とする請求項１から４のいずれかに記載のアダプタ。
【請求項６】
前記プログラムを格納するための格納部を更に備え、
前記プログラム取得部は、前記格納部に既に格納されているプログラムを、新たに取得したプログラムに書き換えることで、新たに取得したプログラムを記録し、
前記制御部は、前記格納部に新たに格納されたプログラムを読み込んで実行することを特徴とする請求項１から５のいずれかに記載のアダプタ。
【請求項７】
前記第１通信回線にて送受信される第１制御情報と、前記第２通信回線にて送受信される第２制御情報とが異なる場合、前記プログラム取得部は、前記第１制御情報と前記第２制御情報とを互いに変換するためのプログラムを取得し、そのプログラムを実行することにより、前記制御部は前記第１通信回線に接続された装置と、前記家電機器とを通信可能にすることを特徴とする請求項１から６のいずれかに記載のアダプタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク技術に関し、とくに家電機器を家電ネットワークに接続するための装置に関する。
【背景技術】
【０００２】
ネットワーク技術の進歩にともない、インターネットなどのネットワークが急速に普及している。そうしたネットワークに家庭内の電気機器（以下、単に「家電機器」という）を接続し、ネットワークを介して家電機器を操作できるようにする試みが各所で行われている。一般に、ネットワークに対応した家電機器は、ネットワークを介して所定の動作を指示するコマンドを受信し、そのコマンドに対応する動作を実行する。こうしたコマンドを受信する機能を有していない家電機器をネットワークに参加させるために、ネットワークと家電機器との間にアダプタを設け、そのアダプタを介してネットワークへの参加を可能にするものがある（例えば、特許文献１参照）。
【特許文献１】特開２００３−２８３５０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
家電機器の機能は、日々進歩している。こうした進歩により、家電機器はより便利になり、使いやすいものになっていく。家電機器は、内部にＣＰＵなどの制御手段を有し、各種のプログラムをＣＰＵに実行させることにより各種の機能を実現するための制御を行っていた。そのため、家電機器の機能が高度化することにともない、家電機器に搭載するＣＰＵやメモリなどの制御手段も大規模になってきた。
【０００４】
本発明はこうした点に鑑みてなされたもので、その目的は、家電機器の機能を減らすことなく、家電機器に搭載する制御手段を小規模にする技術の提供にある。別の目的は、ユーザが所望する機能を、本来その機能を有していない家電機器でも実現することを可能にする技術の提供にある。
【課題を解決するための手段】
【０００５】
本発明のある態様は、家電機器をホームネットワークに接続するためのアダプタ装置である。このアダプタは、家電機器のモード情報に応じたプログラムを記憶するサーバ装置が接続可能なネットワークと第１通信回線を介して通信を行うネット通信部と、第２通信回線を介して家電機器と通信を行う機器通信部と、第２通信回線を介して前記家電機器から所定の機能を特定するモード情報を受け付けるモード取得部と、モード情報に基づいて、所定の機能を実現するためのプログラムを第１通信回線を介して前記ネットワークに接続されているサーバ装置から取得するプログラム取得部と、前記プログラム取得部で取得したプログラムを実行し、所定の機能を実現するための制御情報を、第２通信回線を介して家電機器に供給する制御部とを備える。
【０００６】
この態様によれば、アダプタにおいて所定の機能を実現するためのプログラムが実行され、所定の機能を実現するための制御情報が家電機器に供給されるので、家電機器はプログラムを実行するための制御手段を搭載する必要がない。家電機器は、アダプタから供給される制御情報を解釈する機能を搭載すればよいので、制御手段を小規模な構成にできる。また、所定の機能を実現するためのプログラムは、必要に応じて第１通信回線を介して取得されるので、アダプタに全てのプログラムを格納する必要がない。すなわち、アダプタが搭載すべきメモリサイズを小さくできる。「第１通信回線」は、例えばホームネットワークなどの複数の装置と相互接続可能なネットワークに接続するための通信線であってよい。「第２通信回線」は、単一の家電機器と直接接続するための通信線であってよい。
【０００７】
プログラム取得部は、家電機器の種類またはモード情報の種類に応じて、プログラムを取得できない場合の対応処理を変更してもよい。これにより、このアダプタは、各種の家電機器の特性に応じて適切なエラー対応処置をとることができる。
【０００８】
プログラム取得部は、プログラムを取得できない場合、所定の時間が経過した後、再びプログラムの取得処理を行い、プログラムの取得に所定の回数失敗した場合に、その旨を通知させてよい。これにより、このアダプタは、各種の家電機器の特性に応じて適切なエラー対応処置をとることができ、プログラムを取得できなかったことを家電機器の特性に応じたタイミングでユーザに通知できる。
【０００９】
家電機器がリアルタイム性の高い機能を提供する機器または、モード情報で特定される所定の機能がリアルタイム性の高い機能の場合、プログラム取得部は、通知までのタイミングを短くする方向に所定の時間および所定の回数の少なくとも一方を変更してもよい。これにより、リアルタイム性が必要な状況下でエラーが生じた場合に、その状況下におけるリアルタイム性の重要度に応じて、通知までのタイミングが調整される。
【００１０】
プログラム取得部は、制御部がモード情報に基づいて取得したプログラムの実行を終了したことを契機に、家電機器を識別する情報に基づいて取得したプログラムを制御部に実行させてよい。これにより、家電機器に対する制御内容を、通常の制御内容に戻すことができる。
【００１１】
このアダプタは、プログラムを格納するための格納部を更に備え、プログラム取得部は、格納部に既に格納されているプログラムを、新たに取得したプログラムに書き換えることで、新たに取得したプログラムを記録し、制御部は、格納部に新たに格納されたプログラムを読み込んで実行してもよい。これにより、格納部のメモリサイズが有効に利用される。
【００１２】
第１通信回線にて送受信される第１制御情報と、第２通信回線にて送受信される第２制御情報とが異なる場合、プログラム取得部は、第１制御情報と第２制御情報とを互いに変換するためのプログラムを取得し、そのプログラムを実行することにより、制御部は第１通信回線に接続された装置と、家電機器とを通信可能にしてもよい。これにより、異なる通信プロトコルを用いて通信を行う装置が同一のネットワークに複数存在する場合でも、相互に通信が可能になる。
【００１３】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１４】
本発明によれば、家電機器に搭載する制御手段を簡素化できるとともに、家電機器に対して様々な制御を行うことのできる汎用性の高い利便的なアダプタを提供できる。
【発明を実施するための最良の形態】
【００１５】
図１は、実施の形態に係るホームネットワークシステム１の構成図である。各家庭におけるホームネットワークシステム１には、例えば電灯線を利用して形成されたホームネットワーク３が設けられ、家庭内の通信制御などを行うホームサーバ２、洗濯機５、電子レンジ６、およびエアーコンディショナ１４（以下、単に「エアコン１４」という）がそれぞれホームネットワーク３に接続されている。ここで、洗濯機５、電子レンジ６、およびエアコン１４は、それぞれ第１アダプタ１００ａ、第２アダプタ１００ｂ、ならびに第３アダプタ１００ｃを介してホームネットワーク３に接続されている。以下、第１アダプタ１００ａ、第２アダプタ１００ｂ、および第３アダプタ１００ｃを総称してアダプタ１００といい、洗濯機５、電子レンジ６、エアコン１４、およびビデオ（図示しない）などの家庭内の電化機器を総称して家電機器７という。つまり、アダプタ１００は、ホームネットワーク３と家電機器７との間に接続されることになる。
【００１６】
アダプタ１００は接続中の家電機器７の制御を行う。つまり、家電機器７は、自らが有する制御手段により自らの機能を制御するのではなく、アダプタ１００から制御情報を受け付け、その制御情報に準じて自らの機能を制御する。具体的には、アダプタ１００は、家電機器７から所定の処理を特定する情報としてモード情報を受け付ける。そして、アダプタ１００は、そのモード情報に対応付けられたプログラムを実行し、適切な制御情報を家電機器７に供給する。家電機器７はその制御情報に基づいて動作を行う。
【００１７】
アダプタ１００に電子レンジ６が接続されている場合、アダプタ１００は、電子レンジ６から、例えば冷凍食品を加熱するための制御に対応するモード情報を受け付け、そのモード情報に対応する冷凍食品を加熱するための加熱制御プログラムを実行する。そして、アダプタ１００は、加熱制御プログラムを実行することにより、冷凍食品の加熱に適した加熱手順に準じて制御情報を電子レンジ６に出力する。電子レンジ６は、その制御情報に応じてマイクロ波の出力電力を調整する。
【００１８】
アダプタ１００は、そうしたプログラムを、インターネットなどの外部のネットワーク１０を介して取得する機能を有し、モード情報に対応するプログラムを適宜取得して実行する。一般に、家電機器７における処理は、通常時の処理と、操作指示に応じて単発的に行われる処理の２つに分けることができる。本実施の形態では、家電機器７が通常時の処理を行っている状態を「通常モード」といい、家電機器７が単発的な処理を行っている状態を「オプションモード」という。また、通常モードは家電機器７毎にひとつあり、オプションモードは家電機器７における制御内容毎に定義される。例えば、家電機器７に対する制御内容が３つある場合、３つのオプションモードと通常モードの合計４種類のモード情報が使われる。また、通常モードに対応するプログラムを「基本制御プログラム」といい、オプションモードに対応するプログラムを「オプションプログラム」という。また、基本制御プログラムとオプションプログラムを総称して「制御プログラム」という。また、ホームネットワーク３およびネットワーク１０は、本発明の「家電機器のモード情報に応じたプログラムを記憶する装置が接続可能なネットワーク」に相当する。
【００１９】
本実施の形態では、アダプタ１００は、所定のサイズのメモリを有効的に利用するために、制御プログラムの書込み、消去を管理する機能を有する。例えば、アダプタ１００は、モード情報に対応するオプションプログラムを必要なときにネットワーク１０から取得し、その処理が完了すると再び基本制御プログラムを取得して実行する。このようなメモリ管理機能を備えることにより、アダプタ１００に搭載するメモリを有効的に利用できるので、メモリのサイズを小さくできる。
【００２０】
家電ネットワークが普及するまでの過渡期には、複数の通信規格が乱立することが予想される。こうした状況下でも、通信規格が異なる複数の家電機器７をホームネットワーク３に共存させるためには、異なる通信規格における通信プロトコルを互いに変換すればよい。本実施の形態では、この変換機能を、基本制御プログラムを実行することによりアダプタ１００に実現させる。基本制御プログラムを実行することにより、例えばアダプタ１００は、ホームネットワーク３を介して受信したエコネットなどの通信規格に準じたコマンド等の制御情報（以下、単に「第１制御情報」という）と、接続中の家電機器７独自の通信規格に準じたコマンド等の制御情報（以下、単に「第２制御情報」という）とを相互に変換し、家電機器７をホームネットワーク３に参加させる。もちろん、他の例では変換機能がオプションプログラムにより実現されてもよい。
【００２１】
ホームサーバ２は、プロバイダのサーバ９を介してインターネットなどのネットワーク１０に接続されている。プロバイダのサーバ９とホームサーバ２とは、例えば電話回線や光ファイバなどの通信回線で接続されている。
【００２２】
ソフトライブラリサーバ１２は、アダプタ１００において利用される各種の制御プログラムを格納する。それぞれの制御プログラムは、例えばアダプタ１００において、家電機器７からのモード情報に対応する機能を実現するためのプログラムやそのプログラムが利用する種々の設定データを含んでよい。
【００２３】
そして、ソフトライブラリサーバ１２は、格納中の制御プログラムをアダプタ１００に提供する。詳細は後述するが、接続中の家電機器７が通常モードの場合、アダプタ１００は基本制御プログラムをソフトライブラリサーバ１２から取得する。また、接続中の家電機器７がオプションモードで動作する場合、アダプタ１００はオプションプログラムをソフトライブラリサーバ１２から取得する。このように、制御プログラムにより各種の制御を実現することにより、同一のハードウエアを有するアダプタ１００により複数の種類の家電機器７に対応することができる。
【００２４】
インデックスサーバ１３は、家電機器７毎にアダプタ１００において利用可能な制御プログラムを特定する情報を保持し、アダプタ１００が取得すべき制御プログラムを指示する。例えば、インデックスサーバ１３は、家電機器７を特定する機器識別コードに対応付けて、モード情報と、プログラムの格納場所を特定する情報を保持する。例えば、格納場所は、ＵＲＬ（Uniform Resource Locator）などのアドレスとして保持されている。そして、アダプタ１００から問い合わせがあった場合、インデックスサーバ１３は、機器識別コードに対応付けられ、かつモード情報に対応するプログラムの格納場所のアドレスを返答する。アダプタ１００は、そのアドレスに基づいて、ネットワーク１０からソフトライブラリサーバ１２を特定し、必要な制御プログラムを取得する。
【００２５】
他の例において、ソフトライブラリサーバ１２およびインデックスサーバ１３は、単一のサーバとして設けられてもよい。要は、機器識別コードおよびモード情報に基づいて、アダプタ１００が取得すべき制御プログラムを特定し、そのアダプタ１００に提供するための構成がネットワーク１０に設けられていればよい。
【００２６】
基地局１６は、携帯電話などの携帯端末１５から無線で家電機器７を制御するための情報を受信する。そして、携帯端末１５からの動作指示はネットワーク１０を介してホームサーバ２に転送される。このように、家電機器７に対する動作指示は、ホームネットワーク３に直接接続された装置からだけでなく、ホームネットワーク３の外部にある装置からも行うことができる。
【００２７】
図２は、図１のアダプタ１００の内部構成図である。ネット通信部２０２は、例えば電灯線や、１００Ｂａｓｅ−Ｔなどの第１通信回線５０によりホームネットワーク３に接続して通信を行う。アダプタ側機器通信部２１８は、第１通信回線５０とは異なる第２通信回線５２を介して、家電機器７と接続して通信を行う。アダプタ側機器通信部２１８は、例えばＲＳ−２３２Ｃなどを利用して有線で通信を行ってもよいし、無線などを利用して通信を行ってもよい。
【００２８】
制御部２２０は、例えば、ＣＰＵなどのプログラムを実行して所定の機能を実現するユニットであり、プログラム格納部２１０に格納されている制御プログラムを読み込んで、その制御プログラムを実行する。オプションプログラム実行部２１４は、家電機器７から受信したモード情報に対応するオプションプログラムが実行されることにより形成される。これにより、モード情報に対応した制御が実現される。
【００２９】
変換部２１６は、家電機器７の基本制御プログラムが実行されることで形成される。変換部２１６は、ネット通信部２０２を介してホームネットワーク３から受信した第１制御情報を第２制御情報に変換してアダプタ側機器通信部２１８に出力する。また、変換部２１６はアダプタ側機器通信部２１８を介して家電機器７から受信した第２制御情報を第１制御情報に変換してネット通信部２０２を介してネット通信部２０２に出力する。例えば、基本制御プログラムは、第１制御情報とその第１制御情報に対応する第２制御情報とを対応づけたテーブルを形成させ、そのテーブルを参照させて第１制御情報および第２制御情報を相互に変換させてもよい。
【００３０】
本図では、オプションプログラム実行部２１４および変換部２１６が図示されているが、制御部２２０に同時期に実現されてもよいし、いずれか一方が実現されてもよい。例えば、制御部２２０のスペックが高く、マルチタスクで処理を行える場合、オプションプログラム実行部２１４および変換部２１６が同時期に実現されてもよい。また、制御部２２０のスペックが低く、シングルタスクのみの処理を行う場合、同時期にオプションプログラム実行部２１４および変換部２１６が実現されず、いずれか一方が実現される。
【００３１】
いずれの場合にも、制御部２２０には優先的に制御情報を家電機器７に出力するユニットがひとつ存在し、その優先度は家電機器７における動作モードに基づいて設定される。本実施の形態では、制御部２２にはオプションプログラム実行部２１４および変換部２１６のいずれか一方が常時実行されており、その切り替えはプログラム取得部２０６からの指示に応じて行われる。詳細は後述するが、プログラム取得部２０６は、モード情報に基づいて新たに制御プログラムを取得すると、その制御プログラムをプログラム格納部２１０に書き込む。そして、プログラム取得部２０６は、書込みを終了したことを契機に、その制御プログラムの格納先の先頭アドレスを制御部２２０に供給する。制御部２２０は、その先頭アドレスで特定される位置からプログラム格納部２１０に保持されているプログラムを読み込み、実行する。これにより、制御部２２０には、オプションプログラム実行部２１４および変換部２１６のいずれか一方が形成される。
【００３２】
家電情報取得部２１２は、アダプタ側機器通信部２１８を介して接続中の家電機器７の識別コードを取得する。家電情報取得部２１２は、取得した識別コードを記憶し、既に記憶している識別コードと新たに取得した識別コードとを比較する。一致している場合には、既に記憶している識別コードをそのまま保持し、一致していない場合には新たに取得した識別コードを記憶する。そして、家電情報取得部２１２は、プログラム取得部２０６にその識別コードに基づいて、接続中の家電機器７に対応する基本制御プログラムを取得することを指示する。
【００３３】
プログラム取得部２０６は、ネット通信部２０２を介してソフトライブラリサーバ１２から識別コードに対応した基本制御プログラムを取得する。そして取得した基本制御プログラムをプログラム格納部２１０に格納するとともに、その格納先アドレスを制御部２２０に出力する。制御部２２０は、その格納先アドレスに基づいて、プログラム格納部２１０に格納されている基本制御プログラムを実行する。これにより、変換部２１６が形成される。
【００３４】
制御モード取得部２０４は、アダプタ側機器通信部２１８を介して家電機器７からモード情報を取得する。制御モード取得部２０４は、取得したモード情報をプログラム取得部２０６に出力する。
【００３５】
プログラム取得部２０６は、ネット通信部２０２を介してソフトライブラリサーバ１２からそのモード情報に対応したオプションプログラムを取得する。そしてプログラム取得部２０６は、取得したオプションプログラムをプログラム格納部２１０に格納するとともに、その格納先アドレスを制御部２２０に出力する。制御部２２０は、その格納先アドレスに基づいて、プログラム格納部２１０に格納されているオプションプログラムを実行する。これにより、オプションプログラム実行部２１４が形成される。
【００３６】
プログラム取得部２０６は、受信した制御プログラムをプログラム格納部２１０に格納するが、この際、プログラム格納部２１０の空き容量に応じて書込処理を行う。プログラム格納部２１０の空き容量が少ない場合、プログラム取得部２０６は、既に格納されている制御プログラムを削除して新たな制御プログラムを書込み、プログラム格納部２１０に空き容量がある場合、プログラム取得部２０６は新たな制御プログラムを追加して書き込む。
【００３７】
プログラム格納部２１０に格納されている制御プログラムを削除して新たに取得した制御プログラムを書込む場合、プログラム取得部２０６は、既にプログラム格納部２１０に格納されている制御プログラムを古いものから削除してもよいし、基本制御プログラムなど利用頻度の高い制御プログラムを残すように削除してもよい。
【００３８】
制御プログラムのダウンロードに失敗した場合、プログラム取得部２０６は、その制御プログラムを取得するまでリトライを繰り返してもよい。また、プログラム取得部２０６は、家電機器７の種類や動作モードに応じてリトライを繰り返さずに、制御プログラムのダウンロードに失敗したことを即時に通知部２０８に通知させてもよい。これにより、例えば電子レンジ６における加熱処理などのように、迅速に加熱制御プログラムを取得する必要がある場合には、制御プログラムを取得できないことをユーザに通知でき、手動操作をユーザに要求できる。また、冷蔵庫などのように長時間駆動している装置の場合には、プログラム取得部２０６は、制御プログラムを取得するまでリトライを繰り返してもよい。
【００３９】
このように、プログラム取得部２０６は、家電機器７の種類またはモード情報の種類に応じて、制御プログラムを取得できない場合の対応処理を変更してもよい。例えば、プログラム取得部２０６は、制御プログラムを取得できない場合、所定の時間が経過した後、再び制御プログラムの取得処理を行い、制御プログラムの取得に所定の回数失敗した場合に、その旨を通知部２０８に通知させてもよい。具体的には、家電機器７がリアルタイム性の高い機能を提供する機器または、モード情報で特定される制御がリアルタイム性の高い制御の場合、プログラム取得部２０６は、通知までのタイミングを短くする方向にリトライまでの時間およびリトライ回数の少なくとも一方を変更する。これにより、リアルタイム性が必要な状況下でエラーが生じた場合に、その状況下におけるリアルタイム性の重要度に応じて、通知までのタイミングが調整されるので、ユーザはエラーに応じて適切な処置をとることができる。
【００４０】
通知部２０８は、プログラム取得部２０６から供給される制御プログラムの取得状況に応じてユーザに通知を行う。例えばその通知は、アダプタ１００に設けられたＬＥＤなどの表示部（図示しない）を制御することによって行ってもよいし、表示用の制御情報をアダプタ側機器通信部２１８を介して家電機器７に供給することにより、家電機器７にメッセージを表示させてもよい。
【００４１】
プログラム取得部２０６が制御プログラムをダウンロード中の場合、通知部２０８は家電機器７にダウンロード中であることを示すメッセージを表示させる。また、制御プログラムの取得処理が完了した場合、通知部２０８は家電機器７に制御プログラムを取得したことを示すメッセージを表示させる。また、プログラム取得部２０６が制御プログラムの取得に失敗した場合、通知部２０８は家電機器７に制御プログラムを取得できなかったことを示すメッセージと、次の指示を促すメッセージを表示させる。
【００４２】
図３は、図１の電子レンジ６の内部構成図である。家電側機器通信部２６４は、第２通信回線５２を介してアダプタ１００と接続する。アダプタ１００から識別コードを要求された場合、家電側機器通信部２６４は識別コード記憶部２６６から識別コードを読み込んでアダプタ１００に供給する。
【００４３】
操作メニュー格納部２５８は、電子レンジ６における操作メニューを格納する。その操作メニューには、操作項目ごとにモード情報が対応づけられている。操作系処理部２５６は操作メニュー格納部２５８に格納されている操作メニュー情報に基づいて、ユーザインターフェイスを構築する。操作系処理部２５６は、操作メニューを表示部２５４に表示させる。
【００４４】
入力部２５２は、例えばボタンやタッチパネル、マウス、バーコードリーダーなどの入力デバイスであり、ユーザからの操作を受け付ける。操作系処理部２５６は、ユーザに指示された操作項目に対応するモード情報を操作メニュー格納部２５８から読み込み、家電側機器通信部２６４を介してアダプタ１００に出力する。
【００４５】
家電側機器通信部２６４は、アダプタ１００から操作メニューに関わる情報を受け付けると、それを操作メニュー格納部２５８に格納する。このように操作メニューを更新する機能を備えることにより、新たなオプションプログラムが作られた場合にも、家電機器はそのオプションプログラムをユーザが選択できるようにメニューを書き換えることができる。これに対応して、図２のアダプタ１００は、定期的に図１のソフトライブラリサーバ１２に格納されている制御プログラムを検査する。そして、新たに電子レンジ６が利用可能な制御プログラムが格納された場合、アダプタ１００は、新たに追加された制御プログラムのモード情報と制御内容とを追加操作メニューとして電子レンジ６に提供する。家電側機器通信部２６４は、この追加操作メニューを受け付けると、それを操作メニュー格納部２５８に追加登録する。これにより、操作メニュー格納部２５８に登録されている操作メニューが随時更新されるので、電子レンジ６は新しく追加された機能も利用できる。
【００４６】
家電側機器通信部２６４は、アダプタ１００から受け付けた制御情報を制御系処理部２６０に出力する。制御系処理部２６０は、その制御情報に応じて電子レンジ機能部２６２の例えば、マグネトロンから出力されるマイクロ波の出力電力を調整したり、回転テーブルの回転速度を調整したり電子レンジの機能に関わるハードウェア構成を制御する。
【００４７】
制御系処理部２６０において、例えばマイクロ波を出力できなくなったり、回転テーブルを回転できなくなったりした状態等のエラーが生じた場合、制御系処理部２６０は、その情報を操作系処理部２５６に出力する。例えば、各エラーには、エラーコードが対応付けられており、制御系処理部２６０は、そのエラーコードを操作系処理部２５６に出力する。操作系処理部２５６は、そのエラーコードに対応付けられたモード情報を操作メニュー格納部２５８を参照して特定する。そして、操作系処理部２５６は、エラーコードに対応付けられたモード情報をアダプタ１００に送信する。これにより、エラーが生じたときには、自動的に対策処置が実行される。
【００４８】
本実施の形態における電子レンジ６は、操作系処理部２５６と制御系処理部２６０の２つに処理系が分かれている。操作系処理部２５６は、ユーザインターフェイスを提供するための処理部である。制御系処理部２６０は、電子レンジ６が有するハードウェア構成を制御するための処理部である。このように処理系を２つに分離することにより、ユーザインターフェイスを提供するための操作系処理部２５６を各種の家電機器７で共通化できる。これにより、開発期間およびコストを削減することができる。
【００４９】
図４は、図２のアダプタ１００における処理のフローチャートの一例を示す図である。電源が投入されると、図２の家電情報取得部２１２は、図２のアダプタ側機器通信部２１８を介して接続中の電子レンジ６の識別コードを取得する（Ｓ５０）。家電情報取得部２１２は、すでに格納している識別コードと新たに取得した識別コードとを比較して、一致しているか否かを判定する（Ｓ５２）。
【００５０】
ステップ５２で、識別コードが一致しない場合（Ｓ５２のＮ）、家電情報取得部２１２は格納中の識別コードを消去する（Ｓ６８）。プログラム取得部２０６は、新たな識別コードに対応する基本制御プログラムをソフトライブラリサーバ１２から取得する（Ｓ７０）。プログラム取得部２０６は取得した基本制御プログラムをプログラム格納部２１０に書き込む（Ｓ７２）。家電情報取得部２１２は新たな識別コードを記憶する（Ｓ７４）。そして、図２の制御部２２０は、プログラム格納部２１０から基本制御プログラムを読み込み、実行する（Ｓ５４）。また、ステップ５２で識別コードが一致している場合（Ｓ５２のＹ）、制御部２２０はプログラム格納部２１０から通常モードで利用する基本制御プログラムを読み込み、実行する（Ｓ５４）。
【００５１】
アダプタ１００は、電子レンジ６からモード情報を受け付けるまで待機する（Ｓ５６のＮ）。電子レンジ６からモード情報を受け付けた場合、すなわちオプションプログラムの実行要求を受け付けた場合（Ｓ５６のＹ）、図２の制御モード取得部２０４は、そのモード情報を図２のプログラム取得部２０６に出力し、プログラム取得部２０６はそのモード情報に対応するオプションプログラムを図１のソフトライブラリサーバ１２から取得する（Ｓ５８）。プログラム取得部２０６は、オプションプログラムを取得すると、そのオプションプログラムをプログラム格納部２１０に書き込む（Ｓ６０）。
【００５２】
そして、制御部２２０は新たにプログラム格納部２１０に書き込まれたオプションプログラムを実行する（Ｓ６２）。これにより図２のオプションプログラム実行部２１４が形成され、ユーザに指示されたオプション機能が実現される。このオプションプログラムは、一連の処理が完了するまで実行される（Ｓ６４のＮ）。このオプションプログラムの実行が終了した場合（Ｓ６４のＹ）、オプションモードの終了が指示され（Ｓ６６）、ステップ７０にすすみ、再び基本制御プログラムが実行される。すなわち、アダプタ１００は、オプションモードによる制御が終了すれば、自動的に通常モードによる制御に切り替わる。
【００５３】
図５は、図４のステップ５８におけるオプションプログラム取得処理の詳細なフローチャートの一例を示す図である。このプログラム取得処理が開始すると、図２のプログラム取得部２０６は、ソフトライブラリサーバ１２に制御プログラムを要求する（Ｓ１３０）。プログラム取得部２０６は、制御プログラムを取得出来たか否かを判定し（Ｓ１３２）、プログラムを取得出来た場合（Ｓ１３２のＹ）、プログラム取得処理を完了し、図４のステップ６０にすすむ。プログラムを取得出来なかった場合（Ｓ１３２のＮ）、プログラム取得部２０６は取得すべき制御プログラムの種別を特定する（Ｓ１３４）。例えば、加熱制御プログラムのようなリアルタイム性が高い制御プログラムの場合（Ｓ１３６のＹ）、プログラム取得部２０６は、制御プログラムを取得出来なかったことをユーザに通知する（Ｓ１３８）。そして、例えば冷蔵庫の故障判定プログラムのようなリアルタイム性が低い制御プログラムの場合（Ｓ１３６のＮ）、プログラム取得部２０６は取得できるまでリトライを繰り返す（Ｓ１４０）。
【００５４】
例えば電子レンジを使って料理を作る場合、利用者は電子レンジに加熱前の食材を入れ、加熱処理の開始を指示する。この指示に基づき、電子レンジは加熱制御を示すモード情報をアダプタ１００に出力する。アダプタ１００は、モード情報に対応する加熱制御用の制御プログラムの取得を試みる。このとき通信エラーなどの種々の原因により、加熱制御用の制御プログラムが取得できず、リトライ処理を繰り返し行っていると、いつまでも調理が始まらない。こうした状況を避けるため、リアルタイム性の高い制御プログラムとリアルタイム性の低い制御プログラムとで、制御プログラムを取得できなかった場合の対応処理が別々に用意されている。
【００５５】
リアルタイム性が高い制御プログラムとは、例えばユーザが家電機器のそばにいる必要がある処理であって、所定の事象を成し遂げるためにその処理の開始指示とは別に利用者から操作指示を受け付ける工程が含まれる制御プログラムであってよい。また、リアルタイム性が高い制御プログラムは、例えばマイクロ波加熱による調理など短期間で行われるべき処理であって、一般に短期間で処理が完了すると認識されている処理を行う制御プログラムであってよい。リアルタイム性の高低は、ユーザを主体とする観点から判断されてもよいし、家電機器を主体とする観点から判断されてもよい。すなわち、ユーザに何らかの結果物を提供するための処理を実現するための制御プログラムはリアルタイム性が高いとされ、家電機器における故障診断処理を実現するための制御プログラムはリアルタイム性が低いとされてよい。こうした観点から、ユーザに結果物をなんら提供しない家電機器に対する制御プログラムは全てリアルタイム性が低いと判断することができ、ひいては家電機器の種別に応じて制御プログラムのリアルタイム性の判断も可能になる。
【００５６】
家電機器の種別に応じて制御プログラムのリアルタイム性を判断するために、図２のプログラム取得部２０６は、家電機器を特定する情報と家電機器の種別とリアルタイム性の高低を特定する属性情報とを対応付けたデータベースを保持する。そして、プログラム取得部２０６は、接続されている家電機器の識別コードもしくはモード情報をキーとしてデータベースを参照することにより家電機器の種別を特定し、リアルタイム性の高低を特定する。他の例では、そのデータベースは図１のインデックスサーバ１３に保持され、制御プログラムの属性情報は制御プログラムの格納場所のアドレスとともにアダプタ１００に提供されてもよい。
【００５７】
別の例ではリアルタイム性の高低は、制御プログラムの供給主体により予め決められてよく、制御プログラムはリアルタイム性の高低のいずれかを示す属性情報が対応付けられて提供されてよい。本実施の形態では、図３の操作メニュー格納部２５８はモード情報に対応付けて属性情報を格納する。そして、図３の操作系処理部２５６は、ユーザに指示された操作項目に対応するモード情報と属性情報とを操作メニュー格納部２５８から読み込み、家電側機器通信部２６４を介してアダプタ１００に出力する。図２のプログラム取得部２０６は、属性情報に基づいて取得中の制御プログラムのリアルタイム性を特定し、リアルタイム性に応じた対応処理を行う。他の例では、制御プログラム毎の属性情報は、図１のインデックスサーバ１３に保持され、制御プログラムの格納場所のアドレスとともにアダプタ１００に提供されてもよい。要は、図２のプログラム取得部２０６が制御プログラムの取得処理を開始する前のタイミング、もしくは制御プログラムの取得を失敗したタイミングで属性情報を取得できるようシステムが構成されればよい。
【００５８】
図６は、図３の電子レンジ６における処理のフローチャートの一例を示す図である。図３の家電側機器通信部２６４は、アダプタ１００から識別情報を要求された場合（Ｓ８０のＹ）、図３の識別コード記憶部２６６から識別コードを読み込み、アダプタ１００に出力する（Ｓ１００）。図１のホームネットワーク３を介して制御情報を受け付けた場合（Ｓ８２のＹ）、その制御情報に基づいて図３の制御系処理部２６０は処理を行う（Ｓ１０２）。例えば、この制御情報は、予約調理の設定、電子レンジ６の動作状態を確認するための指示であってよい。
【００５９】
次に、図３の入力部２５２が操作されたか否かを判定し（Ｓ８４）、操作されていない場合（Ｓ８４のＮ）、ステップ８０に戻り、ステップ８０からステップ８４の処理を繰り返す。入力部２５２が操作された場合（Ｓ８４のＹ）、その操作指示がスタートボタンなどの電子レンジ６の駆動を指示する操作であるか否かを判定する（Ｓ８６）。電子レンジ６の駆動指示でない場合（Ｓ８６のＮ）、図１のネットワーク１０に設けられたサーバから調理制御プログラムや故障診断プログラムなど所定の情報の取得要求であるか否かを判定する（Ｓ１０４）。取得要求でない場合（Ｓ１０４のＮ）、入力間違いであると判断し、ステップ８０に戻る。ステップ１０４で、取得要求の場合（Ｓ１０４のＹ）、要求された情報をアダプタ１００を介して取得し（Ｓ１０６）、ステップ８０に戻る。
【００６０】
ステップ８６で、電子レンジ６の駆動指示の場合（Ｓ８６のＹ）、電子レンジ６は駆動を開始し、例えば加熱処理を開始する（Ｓ８８）。そして、ステップ９８で加熱処理を終了したと判断するまで動作を継続する（Ｓ９８のＮ）。ステップ９８で加熱処理を終了した場合（Ｓ９８のＹ）、電子レンジ６は駆動を停止し処理を終了する（Ｓ１１６）。そして、ステップ８０に戻り、次の指示まで待機する。
【００６１】
電子レンジ６が駆動中の間、ステップ９０では、ホームネットワーク３を介して制御情報を受け付けたか否かの判定を行い（Ｓ９０）、受け付けた場合（Ｓ９０のＹ）、その制御情報に基づいて処理を行う（Ｓ１０８）。ステップ９２では、オプション動作の要求の有無を判定する（Ｓ９２）。このオプション動作の要求は、ユーザが図３の入力部２５２を操作することにより出されてもよいし、各種のセンサからの情報に基づいてエラーが発生したことを検出したことを契機として自動的に出されてもよい。例えば、エラーが発生した場合、図３の制御系処理部２６０は、その旨を図３の操作系処理部２５６に出力する。操作系処理部２５６は、そのエラー状態に対応するモード情報を、家電側機器通信部２６４を介してアダプタ１００に出力する（Ｓ１１０）。これにより、アダプタ１００は、故障診断用のオプションプログラムを取得して、実行する。
【００６２】
そして、オプションプログラムが実行されることにより、アダプタ１００からオプション動作の開始指示を受信したか否かを判断する（Ｓ９４）。開始指示を受け付けた場合（Ｓ９４のＹ）、電子レンジ６は、通常モードからオプションモードに移行し、アダプタ１００からの制御情報に対して同調できる状態にする（Ｓ１１２）。ステップ９６では、アダプタ１００からオプション動作の終了指示を受信したか否かに基づいて、オプション動作を終了するか否かを判定する（Ｓ９６）。オプション動作の終了指示を受信した場合（Ｓ９６のＹ）、電子レンジ６はオプションモードから通常モードに移行する（Ｓ１１４）。そして、ステップ９８にすすむ。ステップ１１４で、オプションモードから通常モードに移行した場合、図３の操作系処理部２５６は通常モードを示すモード情報を家電側機器通信部２６４を介してアダプタ１００に送信する。これにより、アダプタ１００は、基本制御プログラムを再び取得して、実行する。
【００６３】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。こうした変形例として、アダプタ１００と家電機器７とを接続する第２通信回線５２を短くし、家電機器７の内部にアダプタ１００を装着してもよい。これにより、アダプタ１００と家電機器７とは独立しているので、機能的には上述した機能を実現でき、外観的に優れたものになる。また、アダプタ１００の制御モード取得部２０４は、家電機器のモード情報を家電機器から第２通信回線５２を介して取得することを説明したが、本発明はこれに限定されず、ホームネットワーク３やネットワーク１０から第１通信回線５０を介してモード情報を取得してもよい。
【図面の簡単な説明】
【００６４】
【図１】実施の形態に係るホームネットワークシステムの構成図である。
【図２】図１のアダプタの内部構成図である。
【図３】図１の電子レンジの内部構成図である。
【図４】図２のアダプタにおける処理のフローチャートの一例を示す図である。
【図５】図４のオプションプログラム取得処理の詳細なフローチャートの一例を示す図である。
【図６】図３の電子レンジにおける処理のフローチャートの一例を示す図である。
【符号の説明】
【００６５】
１  ホームネットワークシステム、２  ホームサーバ、３  ホームネットワーク、６  電子レンジ、７  家電機器、１０  ネットワーク、１２  ソフトライブラリサーバ、１３  インデックスサーバ、１４  エアコン、１５  携帯端末、１６  基地局、１００  アダプタ、２０２  ネット通信部、２０４  制御モード取得部、２０６  プログラム取得部、２０８  通知部、２１０  プログラム格納部、２１２  家電情報取得部、２１４  オプションプログラム実行部、２１６  変換部、２１８  アダプタ側機器通信部、２２０  制御部、２５２  入力部、２５４  表示部、２５６  操作系処理部、２５８  操作メニュー格納部、２６０  制御系処理部、２６２  電子レンジ機能部、２６４  家電側機器通信部、２６６  識別コード記憶部。
【図１】
2005202518.tif 000003
【図２】
2005202518.tif 000004
【図３】
2005202518.tif 000005
【図４】
2005202518.tif 000006
【図５】
2005202518.tif 000007
【図６】
2005202518.tif 000008