(57)【要約】【課題】複数種類の機器のそれぞれを制御することが可能な端末が、自分の周囲の機器に有効な制御信号を特定することができるネットワークシステム、情報処理方法、サーバ、または端末を提供する。【解決手段】ネットワークシステム１は、機器３００と、複数の機器それぞれを制御するための複数の制御信号を出力可能な端末２００と、端末２００に複数の機器のうちの一部の機器を制御するための制御信号を出力させて、第１の所定の条件を満たすか否かに基づいて、複数の制御信号の中から端末２００の周囲にある機器を制御するための制御信号を絞り込むサーバ１００と、を備える。【選択図】図１
2018142776.tif 000002
【特許請求の範囲】
【請求項１】
機器と、
複数の機器それぞれを制御するための複数の制御信号を出力可能な端末と、
前記端末に前記複数の機器のうちの一部の機器を制御するための制御信号を出力させて、第１の所定の条件を満たすか否かに基づいて、前記端末の周囲にある前記機器を制御するための制御信号を絞り込むサーバと、を備えるネットワークシステム。
【請求項２】
前記サーバは、前記第１の所定の条件を満たした場合に、前記端末に前記一部の機器のさらに一部の機器を制御するための制御信号を出力させて、第２の所定の条件を満たすか否かに基づいて、前記端末の周囲にある前記機器を制御するための制御信号をさらに絞り込む、請求項１に記載のネットワークシステム。
【請求項３】
前記所定の条件とは、前記端末の周囲のユーザの動作に関する条件である、請求項１または２に記載のネットワークシステム。
【請求項４】
前記所定の条件とは、前記端末が所定の音声を受け付けることである、請求項３に記載のネットワークシステム。
【請求項５】
前記所定の条件とは、前記端末が所定の操作を受け付けることである、請求項３に記載のネットワークシステム。
【請求項６】
前記所定の条件とは、前記端末が前記機器の所定の動作を検知することである、請求項１から５のいずれか１項に記載のネットワークシステム。
【請求項７】
前記サーバは、各種の情報から計算される前記端末の周囲に存在する機器の確率に基づいて、前記複数の制御信号の中から前記端末の周囲にある前記機器を制御するための制御信号を絞り込む、請求項１から６のいずれか１項に記載のネットワークシステム。
【請求項８】
端末が複数の機器のうちの一部の機器を制御するための制御信号を出力するステップと、
サーバが、第１の所定の条件を満たすか否かに基づいて、前記端末の周囲にある前記機器を制御するための制御信号を絞り込むステップと、を備えるネットワークシステムにおける情報処理方法。
【請求項９】
端末と通信するための通信インターフェイスと、
前記通信インターフェイスを介して前記端末に、複数の機器のうちの一部の機器を制御するための制御信号を出力させて、第１の所定の条件を満たすか否かに基づいて、前記端末の周囲にある前記機器を制御するための制御信号を絞り込むためのプロセッサと、を備えるサーバ。
【請求項１０】
プロセッサが、通信インターフェイスを介して端末に、複数の機器のうちの一部の機器を制御するための制御信号を出力させるステップと、
前記プロセッサが、第１の所定の条件を満たすか否かに基づいて、前記端末の周囲にある前記機器を制御するための制御信号を絞り込むステップと、を備えるサーバにおける情報処理方法。
【請求項１１】
端末であって
センサと、
信号出力部と、
前記信号出力部に複数の機器のうちの一部の機器を制御するための制御信号を出力させて、第１の所定の条件を満たすか否かに基づいて、前記端末の周囲にある前記機器を制御するための制御信号を絞り込むためのプロセッサと、を備える端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、赤外線などを利用して機器をリモートコントロールするための技術に関する。
【背景技術】
【０００２】
従来から、赤外線などを利用して機器をリモートコントロールするための技術が知られている。たとえば、特開２０１６−１１１５４４号公報（特許文献１）には、電子機器の遠隔制御システム、送信装置、及び、電子機器が開示されている。特許文献１によると、遠隔制御システムは、複数の空気調和機（電子機器）と、各空気調和機を遠隔制御するリモコン（送信装置）とを備えている。リモコンは、２つの光源（第１の赤外ＬＥＤ及び第２の赤外ＬＥＤ）を含み、各光源からの光を空気調和機に対する命令信号として送信する信号送信部（送信部）を備えている。空気調和機は、リモコンの各光源からの光の強度をそれぞれ受信する信号受信部（受光部）と、信号受信部によって受信した各光源からの光の強度を比較し、その差が所定範囲以内である場合に、自身に対する命令信号であると判断し、当該命令信号に応じた制御を行う制御部とを備えている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１１１５４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、複数種類の機器のそれぞれを制御することが可能な端末が、自分の周囲の機器に有効な制御信号を特定することができるネットワークシステム、情報処理方法、サーバ、または端末を提供することにある。
【課題を解決するための手段】
【０００５】
本発明のある態様に従うと、ネットワークシステムが提供される。ネットワークシステムは、機器と、複数の機器それぞれを制御するための複数の制御信号を出力可能な端末と、端末に複数の機器のうちの一部の機器を制御するための制御信号を出力させて、第１の所定の条件を満たすか否かに基づいて、端末の周囲にある機器を制御するための制御信号を絞り込むサーバと、を備える。
【発明の効果】
【０００６】
以上のように、本発明によれば、複数種類の機器のそれぞれを制御することが可能な端末が、自分の周囲の機器に有効な制御信号を特定することができるネットワークシステム、情報処理方法、サーバ、または端末が提供される。
【図面の簡単な説明】
【０００７】
【図１】第１の実施の形態にかかるネットワークシステム１の全体構成と動作概要とを示す図である。
【図２】第１の実施の形態にかかるサーバ１００の構成を示すブロック図である。
【図３】第１の実施の形態にかかる機器情報テーブル１２１を示すイメージ図である。
【図４】第１の実施の形態にかかる機器制御テーブル１２２を示すイメージ図である。
【図５】第１の実施の形態にかかる試用テーブル１２３を示すイメージ図である。
【図６】第１の実施の形態にかかるサーバ１００における情報処理を示すフローチャートである。
【図７】第１の実施の形態にかかる電気機器３００の構成を示すブロック図である。
【図８】第１の実施の形態にかかるリモコン２００Ａの構成を示すブロック図である。
【図９】第１の実施の形態にかかるリモコン２００Ａにおける情報処理を示すフローチャートである。
【図１０】第１の実施の形態における制御信号を特定するための方法を示すイメージ図である。
【図１１】第２の実施の形態にかかるサーバ１００における情報処理を示すフローチャートである。
【図１２】第３の実施の形態にかかる可能性テーブル１２４を示すイメージ図である。
【図１３】第３の実施の形態にかかるサーバ１００における情報処理を示すフローチャートである。
【図１４】第４の実施の形態にかかるネットワークシステム１の全体構成と動作概要とを示す図である。
【図１５】第４の実施の形態にかかるロボット２００Ｂの構成を示すブロック図である。
【図１６】第５の実施の形態にかかるネットワークシステム１の全体構成と動作概要を示す図である。
【図１７】第５の実施の形態にかかるリモコン２００Ａにおける情報処理を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
＜第１の実施の形態＞
＜ネットワークシステム１の全体構成＞
【０００９】
まず、図１を参照して本実施の形態にかかるネットワークシステム１の全体構成について説明する。本実施の形態にかかるネットワークシステム１は、主に、サーバ１００と、ニュースや天気予報やユーザ情報などのデータを提供してくれる他の情報提供サーバ１００Ｂ，１００Ｃと、リモートコントローラ（リモコンともいう。）２００Ａと、エアコン３００Ａやテレビなどの電気機器と、を含む。
【００１０】
なお、電気機器は、エアコン３００Ａやテレビに限らず、冷蔵庫、電子レンジ、洗濯機、掃除機、空気清浄器、加湿器、除湿器、炊飯器、照明などの家電、ハードディスクレコーダ、プロジェクタ、音楽プレーヤ、ゲーム機、パーソナルコンピュータ、携帯電話、スマートフォンなどのＡＶ（オーディオ・ビジュアル）機器、組み込み照明、太陽光発電機、インターホン、給湯器、温水洗浄便座コントローラなどの住宅設備、などであってもよい。なお、以下では、これらの装置を総称して、電気機器３００ともいう。
＜ネットワークシステム１の動作概要＞
【００１１】
本実施の形態においては、ユーザがリモコン２００Ａに操作命令を入力すると、リモコン２００Ａが電気機器３００に当該操作命令に対応する赤外線の制御信号を発信する。これによって、ユーザの希望通りに電気機器３００が動作するものである。特に、本実施の形態においては、リモコン２００Ａは、複数種類のメーカの複数種類の機器の制御信号が発信できるが、周囲の機器の種類や当該機器に有効な制御信号の種類を認識するまでは、どの種類の制御信号を発信すべきかが、リモコン２００Ａもサーバ１００も解らない。そこで、本実施の形態においては、ネットワークシステム１が以下のような動作を行う。
【００１２】
なお、リモコン２００Ａは、予め複数種類のメーカの複数種類の機器の制御信号を格納しているものであってもよいし、制御信号を特定する際に複数種類のメーカの複数種類の機器の制御信号をサーバ１００からダウンロードするものであってもよい。また、リモコン２００Ａは、制御信号を発する度にサーバ１００から制御信号をダウンロードしてもよいし、機器の制御信号の種類を特定後に当該機器を制御するための一連の制御信号を格納するようにしてもよい。
【００１３】
まず、図１（Ａ）に示すように、リモコン２００Ａは、ユーザの「エアコンつけよう。」という音声メッセージを受け付けると、当該音声データをサーバ１００に送信する。サーバ１００は、当該音声データに基づいて、ユーザからのエアコンの電源ＯＮ命令を特定し、リモコン２００Ａが発信可能な制御信号の種類のうちの一部の種類、たとえば９種類のうちの３種類、の制御信号を周囲に発信するようにリモコン２００Ａに命令する。これによって、リモコン２００Ａは、自身が発信可能な制御信号の種類のうちの一部の種類の制御信号を周囲に発信する。
【００１４】
図１（Ｂ）に示すように、リモコン２００Ａの周囲の機器が、当該３種類の制御信号に対応していない場合、ユーザは、「あれ？つかないなぁ。」などという否定的な音声メッセージを発する。リモコン２００Ａは、ユーザの音声メッセージを受け付けると、当該音声データをサーバ１００に送信する。サーバ１００は、当該否定的な音声データに基づいて、前回の一部の種類の以外の種類の制御信号を周囲に発信するようにリモコン２００Ａに命令する。これによって、リモコン２００Ａは、自身が発信可能な制御信号の種類のうちの他の一部の種類の制御信号を周囲に発信する。
【００１５】
図１（Ｃ）に示すように、リモコン２００Ａの周囲の機器が、当該他の一部の種類の制御信号に対応している場合、ユーザは、「お、ついた、ついた。」などという肯定的なメッセージを発する。リモコン２００Ａは、ユーザの音声メッセージを受け付けると、当該音声データをサーバ１００に送信する。サーバ１００やリモコン２００Ａは、当該肯定的な音声データに基づいて、最後の数種類の制御信号のいずれかにリモコン２００Ａの周囲の機器が対応していることを認識することができる。
【００１６】
リモコン２００Ａとサーバ１００は、このような処理を繰り返して、リモコン２００Ａの周囲にある電気機器３００に有効な制御信号の種類を絞っていき、最終的に１種類の制御信号を特定する。
【００１７】
ユーザの新たな反応を検知するたびに、サーバ１００とリモコン２００Ａとがこのような処理を繰り返して、たとえば、２分木アルゴリズムなどによって、サーバ１００がリモコン２００Ａの周囲の電気機器３００に有効な制御信号の種類や当該電気機器３００の種類や当該電気機器３００のメーカなどを特定して、将来のために記憶しておくことができる。つまり、本実施の形態にかかるネットワークシステム１においては、複数種類の制御信号を発信できるリモコン２００Ａに対して、対象の電気機器３００の種類やメーカを登録する面倒な処理をユーザが行わなくても、サーバ１００やリモコン２００Ａが自動的に学習してくれるので、非常に便利である。特に、電気機器３００がリモコン２００Ａにデータを送信できない場合、あるいは電気機器３００がリモコン２００Ａに限らずデータを送信できない場合に便利である。以下、このような機能を実現するためのネットワークシステム１の具体的な構成について詳述する。
＜サーバ１００のハードウェア構成＞
【００１８】
まず、本実施の形態にかかるネットワークシステム１を構成するサーバ１００のハードウェア構成の一態様について説明する。他の情報提供サーバ１００Ｂ、１００Ｃもサーバ１００と同様の構成を有しているため、ここでは説明を繰り返さない。
【００１９】
図２を参照して、サーバ１００は、主たる構成要素として、ＣＰＵ（Central Processing Unit）１１０と、メモリ１２０と、操作部１４０と、通信インターフェイス１６０とを含む。
【００２０】
ＣＰＵ１１０は、メモリ１２０に記憶されているプログラムを実行することによって、サーバ１００の各部を制御する。たとえば、ＣＰＵ１１０は、メモリ１２０に格納されているプログラムを実行し、各種のデータを参照することによって、後述する各種の処理を実行する。
【００２１】
メモリ１２０は、各種のＲＡＭ（Random  Access  Memory）、各種のＲＯＭ（Read-Only  Memory）などによって実現される。メモリ１２０は、ＣＰＵ１１０によって実行されるプログラムや、ＣＰＵ１１０によるプログラムの実行により生成されたデータ、入力されたデータ、機器情報テーブル１２１と、機器制御テーブル１２２と、制御信号試用テーブル１２３などを記憶する。
【００２２】
ここで、機器情報テーブル１２１は、図３に示すように、たとえば機器毎に、機器ＩＤと、機器の種類と、ユーザのＩＤと、アドレスとの対応関係を含む。当該機器には、操作される側の電気機器３００も、操作する側のリモコン２００Ａも含まれる。
【００２３】
機器制御テーブル１２２は、図４に示すように、たとえば、操作される側の電気機器３００毎に、有効な制御信号の種類を特定するための情報を格納する。本実施の形態においては、制御信号の種類がメーカ毎に準備されているものとして、機器制御テーブル１２２は操作される電気機器３００毎に、制御信号が有効なメーカに対して、ＯＮフラグが立てられる。より詳細には、ＣＰＵ１１０は、制御される電気機器３００毎に、制御信号の種類（本実施の形態においてはメーカ）が確定しているものには当該メーカに対してＯＮフラグ（〇フラグ）が立てられ、制御信号の候補からはずれたものにはメーカに対して×フラグが立てられ、制御信号の候補ではあるが確定していないものにはメーカに対して？フラグが立てられる。
【００２４】
なお、本実施の形態においては、メーカと制御信号の種類が１対１であるものとして説明を行うが、メーカと制御信号の種類が１対複数であってもよい。
【００２５】
制御信号試用テーブル１２３は、図５に示すように、リモコン２００Ａが試験的に発信した制御信号の種類を記録するものである。より詳細には、制御信号試用テーブル１２３は、制御信号の種類を調べている最中のリモコン２００Ａ毎に、現在どのメーカの制御信号を調べる対象としているかを示す情報を格納する。なお、制御信号試用テーブル１２３は、制御信号を調べる対象として、リモコン２００Ａに提供中の複数種類の制御信号を特定する情報を格納してもよいし、制御信号は１つずつしか提供しないがユーザの反応を同時に確認する対象としての複数の制御信号を特定するものであってもよい。
【００２６】
本実施の形態においては、リモコン２００Ａは、サーバ１００からの指令に基づいて、候補のＸ種類の制御信号の内の、Ｘよりも少ないＹ種類の制御信号を試験的に周囲に発信するものである。つまり、制御信号試用テーブル１２３は、現在試験的に発信している制御信号の種類をリモコン２００Ａ毎に管理するためのデータである。
【００２７】
図２に戻って、操作部１４０は、サービスの管理者などの命令を受け付けて、当該命令をＣＰＵ１１０に入力する。
【００２８】
通信インターフェイス１６０は、ＣＰＵ１１０からのデータを、インターネット、キャリア網、ルータなどを介してリモコン２００Ａなどの他の装置に送信する。逆に、通信インターフェイス１６０は、インターネット、キャリア網、ルータなどを介してリモコン２００Ａなどの他の装置からのデータを受信して、ＣＰＵ１１０に受け渡す。
＜サーバ１００における情報処理＞
【００２９】
次に、図６を参照しながら、本実施の形態にかかるサーバ１００における制御信号特定のための情報処理について説明する。サーバ１００のＣＰＵ１１０は、通信インターフェイス１６０を介してリモコン２００Ａから、ユーザからの電気機器３００の操作命令を受け付けた旨のデータを受信すると以下の処理を実行する。なお、ユーザの操作命令は、たとえば、ユーザによる「エアコン点けよう。」という音声メッセージの入力や「エアコン、自動運転」という音声メッセージの入力や電源ＯＮボタンなどの押下などである。
【００３０】
なお、本実施の形態においては、電気機器３００に対するユーザ命令を発信する際の制御信号の種類が設定されていない場合に、リモコン２００Ａがサーバ１００に制御信号を特定するための処理を開始するためのデータを送信するものとする。
【００３１】
ＣＰＵ１１０は、受信したデータからリモコン２００Ａの機器ＩＤや送信元の機器の種類がリモコンであることなどを取得する（ステップＳ１０２）。ＣＰＵ１１０は、機器制御テーブル１２２や試用テーブル１２３を利用して、リモコン２００Ａが利用可能な複数種類たとえば８種類の制御信号のうちから、一部たとえば４種類の制御信号のグループを作成する(ステップＳ１０８)。ＣＰＵ１１０は、通信インターフェイス１６０を介して、当該グループに属する複数種類の制御信号を発信するようにリモコン２００Ａに指示する(ステップＳ１１０)。
【００３２】
このとき、リモコン２００Ａは、サーバ１００からの指示に基づいて、４種類の制御信号を順番に発信する。リモコン２００Ａは、ユーザの音声や動作や電気機器３００の音声などを取得して、当該情報をサーバ１００に送信する。
【００３３】
サーバ１００のＣＰＵ１１０は、リモコン２００Ａからのデータを受信すると(ステップＳ１１２にてＹＥＳである場合)、当該データから前回の４種類の制御信号の中に電気機器３００に有効な制御信号が含まれているか否かを判断する（ステップＳ１１４）。
【００３４】
なお、本実施の形態においては、サーバ１００のメモリ１２０に予めユーザの肯定的な反応や否定的な反応の音声データが格納されている。そして、ＣＰＵ１１０は、リモコン２００Ａからのデータに基づいて、ユーザが肯定的な反応を示した場合に、４種類の制御信号の中に電気機器３００に有効な制御信号が含まれていると判断し、ユーザが否定的な反応を示した場合に、４種類の制御信号の中に電気機器３００に有効な制御信号が含まれていないと判断する。
【００３５】
４種類の制御信号の中に電気機器３００に有効な制御信号が含まれていると判断できる場合（ステップＳ１１４にてＹＥＳである場合）、ＣＰＵ１１０は、機器制御テーブル１２２の当該４種類の制御信号に？のフラグを立てて、他の制御信号に×のフラグを立てる（ステップＳ１１６）。ＣＰＵ１１０は、ステップＳ１２２からの処理を実行する。
【００３６】
一方、４種類の制御信号の中に電気機器３００に有効な制御信号が含まれていない場合（ステップＳ１１４にてＮＯである場合）、ＣＰＵ１１０は、機器制御テーブル１２２の当該４種類の制御信号以外の制御信号に？のフラグを立てて、今回の４種類の制御信号に×のフラグを立てる（ステップＳ１２０）。
【００３７】
ＣＰＵ１１０は、機器制御テーブル１２２において、リモコン２００Ａが発信すべき制御信号の種類が１つに絞れると（ステップＳ１２２にてＹＥＳである場合）、機器制御テーブル１２２において当該リモコン２００Ａのための制御信号の種類を設定する（ステップＳ１２４）。ＣＰＵ１１０は、通信インターフェイス１６０を介して、次のリモコン２００Ａからのデータを待ち受ける。
【００３８】
機器制御テーブル１２２において、リモコン２００Ａが発信すべき制御信号の種類が１つに絞れていない場合（ステップＳ１２２にてＮＯである場合）、ＣＰＵ１１０は、ステップＳ１１０からの処理を繰り返す。
＜電気機器３００のハードウェア構成＞
【００３９】
次に、図７を参照して、ネットワークシステム１を構成する電気機器３００の構成の一態様について説明する。電気機器３００は、主たる構成要素として、ＣＰＵ３１０と、メモリ３２０と、ディスプレイ３３０と、操作部３４０と、通信インターフェイス３６０と、スピーカ３７０と、赤外線受光部３８０と、機器駆動部３９０とを含む。
【００４０】
ＣＰＵ３１０は、メモリ３２０あるいは外部の記憶媒体に記憶されているプログラムを実行することによって、電気機器３００の各部を制御する。
【００４１】
メモリ３２０は、各種のＲＡＭや、各種のＲＯＭなどによって実現される。メモリ３２０は、ＣＰＵ３１０によって実行されるプログラムや、ＣＰＵ３１０によるプログラムの実行により生成されたデータ、サーバ１００や他のサーバから受信したデータ、操作部３４０を介して入力されたデータなどを記憶する。
【００４２】
ディスプレイ３３０は、ＣＰＵ３１０からの信号に基づいて、文字や画像などを出力する。ディスプレイ３３０は、単にライトであってもよい。
【００４３】
操作部３４０は、ボタン、タッチパネルなどによって実現され、ユーザからの命令を受け付けて、当該命令をＣＰＵ３１０に入力する。なお、ディスプレイ３３０と操作部３４０とは、タッチパネルを構成してもよい。
【００４４】
通信インターフェイス３６０は、無線ＬＡＮ通信あるいは有線ＬＡＮなどの通信モジュールによって実現される。通信インターフェイス３６０は、有線通信あるいは無線通信によってサーバ１００などの他の装置との間でデータをやり取りする。
【００４５】
スピーカ３７０は、ＣＰＵ３１０からの信号に基づいて、音声を出力する。
【００４６】
赤外線受光部３８０は、リモコン２００Ａなどからの赤外線信号を受信して、当該信号をＣＰＵ３１０に入力する。
【００４７】
機器駆動部３９０は、ＣＰＵ３１０からの信号に基づいて、電気機器３００の各部（モータやヒータなど）を制御する。
＜リモコン２００Ａのハードウェア構成＞
【００４８】
次に、図８を参照して、ネットワークシステム１を構成するリモコン２００Ａの構成の一態様について説明する。リモコン２００Ａは、主たる構成要素として、ＣＰＵ２１０と、メモリ２２０と、ディスプレイ２３０と、操作部２４０と、カメラ２５０、通信インターフェイス２６０と、スピーカ２７０と、マイク２８０と、赤外線発信部２６５とを含む。
【００４９】
ＣＰＵ２１０は、メモリ２２０あるいは外部の記憶媒体に記憶されているプログラムを実行することによって、リモコン２００Ａの各部を制御する。
【００５０】
メモリ２２０は、各種のＲＡＭや、各種のＲＯＭなどによって実現される。メモリ２２０は、ＣＰＵ２１０によって実行されるプログラムや、ＣＰＵ２１０によるプログラムの実行により生成されたデータ、サーバ１００や他のサーバから受信したデータ、操作部２４０を介して入力されたデータ、複数種類のメーカの複数種類の機器の制御信号などを記憶する。なお、上述した通り、機器の制御信号は、必要なときにサーバ１００からダウンロードするものであってもよい。
【００５１】
ディスプレイ２３０は、ＣＰＵ２１０からの信号に基づいて、文字や画像などを出力する。ディスプレイ２３０は、単にライトであってもよい。
【００５２】
操作部２４０は、ボタン、タッチパネルなどによって実現され、ユーザからの命令を受け付けて、当該命令をＣＰＵ２１０に入力する。なお、ディスプレイ２３０と操作部２４０とは、タッチパネルを構成してもよい。
【００５３】
また、操作部２４０は、近接センサや温度センサなどであってもよい。この場合は、ＣＰＵ２１０は、操作部２４０としての近接センサや温度センサを介して、ユーザがリモコン２００に手をかざしたことを検知して、各種の動作を開始する。たとえば、リモコン２００がロボットであって、近接センサが額の近辺に配置されることによって、ユーザがリモコン２００をなでたり・たたいたりすることをリモコン２００が検知して、ユーザ操作として受け付けてもよい。
【００５４】
カメラ２５０は、画像を撮影して、画像データをＣＰＵ２１０に受け渡す。ＣＰＵ２１０は、カメラ２５０からの画像データに基づいてユーザの動きを操作命令として特定してもよいし、画像データをサーバ１００に提供してサーバ１００がユーザの動きを操作命令として特定してもよい。
【００５５】
通信インターフェイス２６０は、無線ＬＡＮ通信あるいは有線ＬＡＮなどの通信モジュールによって実現される。通信インターフェイス２６０は、有線通信あるいは無線通信によってサーバ１００などの他の装置との間でデータをやり取りする。
【００５６】
スピーカ２７０は、ＣＰＵ２１０からの信号に基づいて、音声を出力する。より詳細には、本実施の形態においては、ＣＰＵ２１０は、通信インターフェイス２６０を介してサーバ１００から受信した音声データに基づいてスピーカ２７０に音声メッセージを出力させる。
【００５７】
マイク２８０は、外部からの音声に基づいて音声信号を作成し、ＣＰＵ２１０に入力する。より詳細には、本実施の形態においては、ＣＰＵ２１０は、マイク２８０から取得した音声データを、通信インターフェイス２６０を介してサーバ１００に送信する。
【００５８】
赤外線発信部２６５は、ＣＰＵ２１０からの信号に応じて、赤外線信号を発信する。
＜リモコン２００Ａにおける情報処理＞
【００５９】
次に、図９を参照しながら、本実施の形態にかかるリモコン２００Ａにおける制御信号の種類の特定のための情報処理について説明する。リモコン２００ＡのＣＰＵ２１０は、マイク２８０や操作部２４０を介してユーザの操作命令を受け付けた場合に以下の処理を実行する。なお、ユーザの操作命令は、たとえば、ユーザによる「エアコン点けよう。」という音声メッセージの入力や「エアコン、自動運転」という音声メッセージの入力や電源ＯＮボタンなどの押下などである。
【００６０】
ＣＰＵ２１０は、今回対象となっている電気機器３００、すなわちユーザに指定された「エアコン」、の制御信号の種類が既に設定されている場合（ステップＳ２０２にてＹＥＳである場合）、当該制御信号に基づいて、電気機器３００を通常制御する（ステップＳ２２８）。たとえば、ＣＰＵ２１０は、赤外線発信部２６５にエアコン３００Ａの電源ＯＮなどの制御信号を出力させる。
【００６１】
ＣＰＵ２１０は、今回対象となっている電気機器３００の制御信号の種類が未だ設定されていない場合（ステップＳ２０２にてＮＯである場合）、通信インターフェイス２６０を介して、ユーザの操作命令を示す情報をサーバ１００に送信する（ステップＳ２０４）。
【００６２】
ＣＰＵ２１０は、通信インターフェイス２６０を介して、サーバ１００からの情報を待ち受ける（ステップＳ２０６）。ＣＰＵ２１０は、サーバ１００からの情報を受信すると（ステップＳ２０６にてＹＥＳである場合）、利用可能な複数種類たとえば８種類の制御信号のうちから、一部たとえば４種類の制御信号を赤外線発信部２６５から順番に発信する（ステップＳ２０８）。
【００６３】
ＣＰＵ２１０は、操作部２４０やカメラ２５０やマイク２８０などを介して、ユーザの動作や電気機器３００の動作を待ち受ける（ステップＳ２１０）。ユーザの動作や電気機器３００の動作を検知すると（ステップＳ２１０にてＹＥＳである場合）、ＣＰＵ２１０は、通信インターフェイス２６０を介して、当該ユーザの動作や電気機器３００の動作を示す情報をサーバ１００に送信する（ステップＳ２１２）。
【００６４】
その後、ＣＰＵ２１０は、通信インターフェイス２６０を介して、サーバ１００から一連の制御信号の設定命令を受信した場合（ステップＳ２１４にてＹＥＳである場合）、一連の制御信号に関する設定情報をメモリ２２０に格納する（ステップＳ２２６）。本実施の形態においては、この後、「エアコン」に対する制御命令に関して、当該一連の制御信号のなかから対応する制御信号が電気機器３００に送信される。
【００６５】
一方、ＣＰＵ２１０は、サーバ１００から制御信号の設定命令を受信しなかった場合（ステップＳ２１４にてＮＯである場合）、ステップＳ２０６からの処理を繰り返す。すなわち、ＣＰＵ２１０は、サーバ１００からの指示に基づいて別の種類の制御信号を赤外線発信部２６５から発信する。
＜第１の実施の形態のまとめ＞
【００６６】
本実施の形態においては、図１０に示すように、たとえばリモコン２００Ａが８種類の電気機器３００の制御信号を発信できる場合、リモコン２００Ａは電源ＯＮなどのユーザ操作に基づいて４種類の電気機器３００の制御信号を発信する。そして、サーバ１００は、ユーザの肯定的な音声や操作を受け付けると、当該４種類の電気機器３００の制御信号の中に、リモコン２００Ａの周囲の機器を制御するための制御信号が含まれていると判断する。
【００６７】
次に、リモコン２００Ａは目標温度を１℃下げるためのユーザ操作に基づいて上記の４種類のうちの２種類の電気機器３００の制御信号を順に発信する。そして、サーバ１００は、ユーザの肯定的な音声や操作を受け付けると、当該２種類の電気機器３００の制御信号の中に、リモコン２００Ａの周囲の機器を制御するための制御信号が含まれていると判断する。
【００６８】
次に、リモコン２００Ａはイオンを発生させるためのユーザ操作に基づいて上記の２種類のうちの１種類（メーカ１）の電気機器３００の制御信号を発信する。そして、サーバ１００は、ユーザの肯定的な音声や操作を受け付けると、当該１種類の電気機器３００の制御信号が、リモコン２００Ａの周囲の機器を制御するための制御信号であると決定する。
【００６９】
なお、イオンを発生させるための制御信号を発信した際に、ユーザの否定的な音声や操作を受け付けると、サーバ１００は、上記の２種類のうちの他の１種類（メーカ２）の電気機器３００の制御信号が、リモコン２００Ａの周囲の機器を制御するための制御信号であると決定する。
【００７０】
なお、目標温度を１℃下げるための制御信号を発信した際に、ユーザの否定的な音声や操作を受け付けると、サーバ１００は、上記の４種類のうちの他の２種類の電気機器３００の制御信号が、リモコン２００Ａの周囲の機器を制御するための制御信号であると判断する。サーバ１００は、他の２種類のうちの１種類の電気機器３００の目標温度を１℃下げるための制御信号を発信する。そして、サーバ１００は、ユーザの肯定的な音声や操作を受け付けると、当該１種類（メーカ３）の電気機器３００の制御信号が、リモコン２００Ａの周囲の機器を制御するための制御信号であると決定する。
【００７１】
なお、目標温度を１℃下げるための制御信号を発信した際に、ユーザの否定的な音声や操作を受け付けると、サーバ１００は、上記の他の２種類のうちの他の１種類（メーカ４）の電気機器３００の制御信号が、リモコン２００Ａの周囲の機器を制御するための制御信号であると決定する。
【００７２】
なお、電源ＯＮなどのユーザ操作の制御信号を発信した際に、ユーザの否定的な音声や操作を受け付けると、サーバ１００は、当該４種類とは別の４種類の電気機器３００の制御信号の中に、リモコン２００Ａの周囲の機器を制御するための制御信号が含まれていると判断する。そこで、サーバ１００は、別の４種類のうちの２種類の電気機器３００の制御信号を順に発信する。サーバ１００は、ユーザの肯定的な音声や操作を受け付けると、当該２種類の電気機器３００の制御信号の中に、リモコン２００Ａの周囲の機器を制御するための制御信号が含まれていると判断する。
【００７３】
次に、リモコン２００Ａは目標温度を１℃下げるためのユーザ操作に基づいて上記の２種類のうちの１種類の電気機器３００の制御信号を発信する。そして、サーバ１００は、ユーザの肯定的な音声や操作を受け付けると、当該１種類（メーカ５）の電気機器３００の制御信号が、リモコン２００Ａの周囲の機器を制御するための制御信号であると判断する。
【００７４】
なお、ユーザの否定的な音声や操作を受け付けると、サーバ１００は、上記の２種類のうちの別の１種類（メーカ６）の電気機器３００の制御信号が、リモコン２００Ａの周囲の機器を制御するための制御信号であると判断する。
【００７５】
なお、別の４種類のうちの２種類の電気機器３００の制御信号を発信した際に、ユーザの否定的な音声や操作を受け付けると、別の４種類のうちの別の２種類の電気機器３００の制御信号の中に、リモコン２００Ａの周囲の機器を制御するための制御信号が含まれていると判断する。
【００７６】
そこで、リモコン２００Ａは別の４種類のうちの別の２種類のうちの１種類の電気機器３００の制御信号を発信する。そして、サーバ１００は、ユーザの肯定的な音声や操作を受け付けると、当該１種類（メーカ７）の電気機器３００の制御信号が、リモコン２００Ａの周囲の機器を制御するための制御信号であると判断する。
【００７７】
なお、ユーザの否定的な音声や操作を受け付けると、サーバ１００は、上記の別の４種類のうちの別の２種類のうちの別の１種類（メーカ８）の電気機器３００の制御信号が、リモコン２００Ａの周囲の機器を制御するための制御信号であると判断する。
【００７８】
このようにして、本実施の形態にかかるネットワークシステム１は、自動的に、リモコン２００Ａに機器を制御するための制御信号の種類を設定することができる。
＜第２の実施の形態＞
【００７９】
第１の実施の形態においては、リモコン２００Ａの周囲の電気機器３００の制御信号の種類が未だ設定されていない場合に、リモコン２００Ａが制御信号を特定するためのデータをサーバ１００に送信するものであった。しかしながら、本実施の形態においては、常にリモコン２００Ａが、ユーザから受け付けた音声データをサーバ１００に送信するものである。
【００８０】
そのため、本実施の形態においては、図１１に示すように、ＣＰＵ１１０は、リモコン２００Ａの機器ＩＤや機器の種類を特定した後（ステップＳ１０２）、機器制御テーブル１２２を参照して、制御信号を選択する必要があるか否かを判断する (ステップＳ１０４)。すなわち、当該リモコン２００Ａの今回の機器に対する制御信号の種類が未だ確定していないかを判断する。
【００８１】
制御信号を選択する必要がない場合(ステップＳ１０４にてＮＯである場合)、ＣＰＵ１１０は、他の通常の処理（ステップＳ１２５）を実行する。たとえば、ＣＰＵ１１０は、機器制御テーブル１２２を参照して制御信号の種類を特定し、今回のリモコン２００Ａに入力された制御命令に対応する制御信号をリモコン２００Ａに提供する。
【００８２】
制御信号を選択する必要がある場合、すなわち当該リモコン２００Ａの制御信号の種類が未だ確定していな場合(ステップＳ１０４にてＹＥＳである場合)、ＣＰＵ１１０は、利用可能な複数種類たとえば８種類の制御信号のうちから、一部たとえば４種類の制御信号のグループを作成する(ステップＳ１０８)。これ以降の処理は、第１の実施の形態のそれと同様であるため、ここでは説明を繰り返さない。
＜第３の実施の形態＞
【００８３】
本実施の形態においては、候補としてリモコン２００Ａから発信する制御信号のグループを決める際に、リモコン２００Ａのユーザの好みに基づいて、可能性の高い制御信号を優先してグループに含めるものである。
【００８４】
本実施の形態においては、サーバ１００のメモリ１２０は、図１２に示すような好みテーブル１２４を記憶する。あるいは、サーバ１００は、他のサーバ１００Ｂからユーザの好みに関するデータを取得する。たとえば、好みテーブル１２４は、ユーザ毎の、所有している複数種類の電気機器３００のうちの、メーカ毎の電気機器３００の割合を含む。これによって、ＣＰＵ１１０は、ユーザ毎のメーカの好みを把握することができ、その結果、新たに制御対象となる電気機器３００がどのメーカである可能性が高いか予想することができる。
【００８５】
図１３を参照して、ＣＰＵ１１０は、受信したデータからリモコン２００Ａの機器ＩＤや機器の種類がリモコンであることなどを取得する（ステップＳ１０２）。ＣＰＵ１１０は、機器ＩＤに基づいてユーザＩＤを特定し、好みテーブル１２４からリモコン２００Ａの周囲にある対象の電気機器３００のメーカ毎の確率を読み出す（ステップＳ１０６）。
【００８６】
ＣＰＵ１１０は、利用可能な複数種類たとえば８種類の制御信号のうちから、ユーザが好んでいる可能性が高いものから順番に数種類の制御信号のグループを作成する(ステップＳ１０８Ｂ)。ＣＰＵ１１０は、通信インターフェイス１６０を介して、当該グループに属する複数種類の制御信号を発信するようにリモコン２００Ａに指示する(ステップＳ１１０)。これ以降の処理は、第１の実施の形態のそれと同様であるため、ここでは説明を繰り返さない。
【００８７】
なお、より詳細には、図１０に示すように、ユーザに否定的なメッセージを言わせずにユーザ操作がされる度に制御信号を絞っていくことが好ましい場合には、第３の実施の形態のように、ステップＳ１０８ＢにおいてＣＰＵ１１０は、ユーザが好んでいる可能性が高いメーカの制御信号から優先してグループに入れることが好ましい。しかしながら、ユーザに否定的なメッセージを言わせたとしても、できるだけ少ないユーザ操作で制御信号を絞っていくことが好ましい場合には、第３の実施の形態とは逆に、ユーザが好んでいる可能性が低いメーカの制御信号から優先してグループに入れることが好ましい。
＜第４の実施の形態＞
【００８８】
第１から第３の実施の形態のリモコン２００Ａは、棒状の赤外線リモコンであったが、このような形態には限られない。たとえば、赤外線以外の、リモコンからは制御信号を発信しやすいが、電気機器３００からの回答を受け取り難いネットワークシステムに上記の技術は便利である。
【００８９】
また、図１４に示すように、リモコンは、顔や胴体などを有するロボット２００Ｂであってもよい。ロボット２００Ｂは、図１４および図１５に示すように、周囲に複数の赤外線発信部２６５Ａ，２６５Ｂ・・・を有する。これによって、ユーザがロボット２００Ｂを保持したり、置かれている方向を変更したりしなくても、電気機器３００にロボット２００Ｂからの制御信号が到達することができる。
＜第５の実施の形態＞
【００９０】
なお、第１から第４の実施の形態のような、サーバ１００やリモコン２００Ａ，２００Ｂや電気機器３００の構造・機能・動作に限られず、各装置の役割が、他のサーバや端末やデータベースなどの複数の装置に分担されてもよい。逆に、複数の装置の役割の一部または全部が１つの装置に集約されてもよい。
【００９１】
たとえば、図１６に示すように、第１から第４の実施の形態にかかるサーバ１００の役割をリモコン２００Ａが有してもよい。まず、図１６（Ａ）に示すように、リモコン２００Ａは、ユーザの「エアコンつけよう。」という音声メッセージを受け付けると、当該音声データに基づいてユーザからのエアコンの電源ＯＮ命令を特定し、リモコン２００Ａが発信可能な制御信号の種類のうちの一部の種類、たとえば９種類のうちの３種類、の制御信号を周囲に発信する。
【００９２】
図１６（Ｂ）に示すように、リモコン２００Ａの周囲の機器が、当該３種類の制御信号に対応していない場合、ユーザは、「あれ？つかないなぁ。」などという否定的なメッセージを発する。リモコン２００Ａは、ユーザの否定的なメッセージを受け付けると、当該音声データに基づいて、前回の一部の種類の以外の他の種類の制御信号を周囲に発信する。
【００９３】
図１６（Ｃ）に示すように、リモコン２００Ａの周囲の機器が、当該３種類の制御信号に対応している場合、ユーザは、「お、ついた、ついた。」などという肯定的なメッセージを発する。リモコン２００Ａは、ユーザの肯定的なメッセージを受け付けると、当該音声データに基づいて、最後に発信した制御信号のいずれかにリモコン２００Ａの周囲の機器が対応していることを認識することができる。リモコン２００Ａは、このような処理を繰り返して、自身の周囲にある電気機器３００に有効な制御信号の種類を絞っていき、最終的に１種類の制御信号を特定する。
【００９４】
次に、図１７を参照しながら、本実施の形態にかかるリモコン２００Ａにおける制御信号特定のための情報処理について説明する。リモコン２００ＡのＣＰＵ２１０は、マイク２８０や操作部２４０を介してユーザの操作命令を受け付けた場合に以下の処理を実行する。
【００９５】
ＣＰＵ２１０は、制御信号の種類が既に設定されている場合（ステップＳ３０２にてＹＥＳである場合）、当該制御信号に基づいて、電気機器３００を通常通りに制御する（ステップＳ３２８）。たとえば、ＣＰＵ２１０は、赤外線発信部２６５にエアコン３００Ａの電源ＯＮなどの制御信号を出力させる。
【００９６】
ＣＰＵ２１０は、制御信号の種類が未だ設定されていない場合（ステップＳ３０２にてＮＯである場合）、試用テーブル１２３を利用して、利用可能な複数種類たとえば８種類の制御信号のうちから、一部たとえば４種類の制御信号のグループを作成する(ステップＳ３０８)。
【００９７】
ＣＰＵ２１０は、利用可能な複数種類たとえば８種類の制御信号のうちから、一部たとえば４種類の制御信号を順番に発信する（ステップＳ３１０）。ＣＰＵ２１０は、操作部２４０やカメラ２５０やマイク２８０などを介して、ユーザの動作や電気機器３００の動作を待ち受ける（ステップＳ３１２）。ユーザの動作や電気機器３００の動作を検知すると（ステップＳ３１２にてＹＥＳである場合）、ＣＰＵ２１０は、当該動作から前回の４種類の制御信号の中に電気機器３００に有効な制御信号が含まれているか否かを判断する（ステップＳ３１４）。
【００９８】
４種類の制御信号の中に電気機器３００に有効な制御信号が含まれていると判断できる場合（ステップＳ３１４にてＹＥＳである場合）、ＣＰＵ２１０は、機器制御テーブル１２２の当該４種類の制御信号に？のフラグを立てて、他の制御信号に×のフラグを立てる（ステップＳ３１６）。ＣＰＵ２１０は、ステップＳ３２２からの処理を実行する。
【００９９】
一方、４種類の制御信号の中に電気機器３００に有効な制御信号が含まれていない場合（ステップＳ３１４にてＮＯである場合）、ＣＰＵ１１０は、機器制御テーブル１２２の当該４種類の制御信号以外の制御信号に？のフラグを立てて、今回の４種類の制御信号に×のフラグを立てる（ステップＳ３２０）。
【０１００】
ＣＰＵ２１０は、機器制御テーブル１２２において、発信すべき制御信号の種類が１つに絞れると（ステップＳ３２２にてＹＥＳである場合）、ＣＰＵ２１０は、制御信号に関する設定情報をメモリ２２０に格納する（ステップＳ３２６）。本実施の形態においては、この後、「エアコン」に対する制御命令に関して対応する制御信号が電気機器３００に送信される。
【０１０１】
ＣＰＵ２１０は、機器制御テーブル１２２において、発信すべき制御信号の種類が１つに絞れていない場合（ステップＳ３２２にてＮＯである場合）、ＣＰＵ２１０は、ステップＳ３１０からの処理を繰り返す。
＜第６の実施の形態＞
【０１０２】
第１から第５の実施の形態においては、ステップＳ１１４などにおいて、ユーザの肯定的な音声メッセージを受け付けると、リモコン２００Ａが発した制御信号の中に電気機器３００に有効な制御信号が含まれていると判断し、ユーザの否定的な音声メッセージを受け付けると、リモコン２００Ａが発した制御信号の中に電気機器３００に有効な制御信号が含まれていないと判断するものであった。しかしながら、このような形態には限られない。
【０１０３】
たとえば、リモコン２００Ａが、ユーザから、前回とは異なる新たな操作を受け付けると、リモコン２００Ａが前回発した制御信号の中に電気機器３００に有効な制御信号が含まれていると判断し、リモコン２００Ａが前回と同じ操作を受け付けると、リモコン２００Ａが前回発した制御信号の中に電気機器３００に有効な制御信号が含まれていないと判断してもよい。
【０１０４】
あるいは、リモコン２００Ａの周囲の電気機器３００が命令を受け付けた際の「ピッ！！」という電子音を検知した場合に、リモコン２００Ａが発した制御信号の中に電気機器３００に有効な制御信号が含まれていたと判断し、制御信号を発してから所定時間たとえば５秒間内に当該電子音を検知できなかった場合に、リモコン２００Ａが発した制御信号の中に電気機器３００に有効な制御信号が含まれていなかったと判断してもよい。
＜その他の応用例＞
【０１０５】
本発明は、システム或いは装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。そして、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体（あるいはメモリ）を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の効果を享受することが可能となる。
【０１０６】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１０７】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【０１０８】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わる他の記憶媒体に書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【０１０９】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１１０】
１          ：ネットワークシステム
１００      ：サーバ
１００Ｂ    ：情報提供サーバ
１００Ｃ    ：情報提供サーバ
１１０      ：ＣＰＵ
１２０      ：メモリ
１２１      ：機器情報テーブル
１２２      ：機器制御テーブル
１２３      ：制御信号試用テーブル
１２４      ：可能性テーブル
１４０      ：操作部
１６０      ：通信インターフェイス
２００      ：リモコン
２００Ａ    ：リモコン
２００Ｂ    ：ロボット
２１０      ：ＣＰＵ
２２０      ：メモリ
２３０      ：ディスプレイ
２４０      ：操作部
２５０      ：カメラ
２６０      ：通信インターフェイス
２６５      ：赤外線発信部
２６５Ａ    ：赤外線発信部
２６５Ｂ    ：赤外線発信部
２７０      ：スピーカ
２８０      ：マイク
３００      ：電気機器
３００Ａ    ：エアコン
３１０      ：ＣＰＵ
３２０      ：メモリ
３３０      ：ディスプレイ
３４０      ：操作部
３５０      ：カメラ
３６０      ：通信インターフェイス
３７０      ：スピーカ
３８０      ：赤外線受光部
３９０      ：機器駆動部
【図１】
2018142776.tif 000003
【図２】
2018142776.tif 000004
【図３】
2018142776.tif 000005
【図４】
2018142776.tif 000006
【図５】
2018142776.tif 000007
【図６】
2018142776.tif 000008
【図７】
2018142776.tif 000009
【図８】
2018142776.tif 000010
【図９】
2018142776.tif 000011
【図１０】
2018142776.tif 000012
【図１１】
2018142776.tif 000013
【図１２】
2018142776.tif 000014
【図１３】
2018142776.tif 000015
【図１４】
2018142776.tif 000016
【図１５】
2018142776.tif 000017
【図１６】
2018142776.tif 000018
【図１７】
2018142776.tif 000019