(57)【特許請求の範囲】
【請求項１】
リモコンからのリモコン信号を受信するリモコン信号受信手段と、
前記リモコンが未知のリモコンであるか否かを判定する判定手段と、
前記リモコンが未知のリモコンであると判定された場合に、前記リモコンのＩＤ情報と被制御装置のＩＤ情報とをホストコンピュータに送信し、前記リモコンと前記被制御装置とに対応するリモコンガイドを表示するのに必要なプログラムを前記ホストコンピュータから受信する通信手段と、
前記ホストコンピュータから受信した前記プログラムを用いて、前記リモコンガイドを表示手段に表示する表示制御手段と
を有することを特徴とするユーザインタフェース制御装置。
【請求項２】
前記リモコンのＩＤ情報と、前記被制御装置のＩＤ情報と、前記プログラムとを登録する登録手段をさらに有することを特徴とする請求項１に記載のユーザインタフェース制御装置。
【請求項３】
前記判定手段は、前記リモコン信号から取得された前記リモコンのＩＤ情報に基づいて、前記リモコンが未知のリモコンであるか否かを判定することを特徴とする請求項１または２に記載のユーザインタフェース制御装置。
【請求項４】
前記ユーザインタフェース制御装置は、テレビ受像機であることを特徴とする請求項１から３のいずれか１項に記載のユーザインタフェース制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、リモートコントローラ（以下、リモコンという。）を用いて被制御装置の制御を行うことができるユーザインタフェース制御装置に関する。
【０００２】
【従来の技術】
デジタル信号処理技術の発達に伴い、映像，音声，制御データがマルチメディアデータとしてデジタル信号で提供されはじめ、ディスクメディア，ＩＳＤＮ通信網，衛星デジタル通信網やケーブルテレビ網などのインフラを経由して、家庭まで配信されるようになってきた。
【０００３】
そして家庭内においても、テレビやＶＣＲ、デジタル衛星チューナなどさまざまな映像・情報機器間を共通の入出力インタフェースで接続し、マルチメディアデータを伝送可能とするホームマルチメディアネットワークが提案されている。
【０００４】
このようなホームマルチメディアネットワークには大きな障害が存在する。それは、ユーザインタフェースの中心となるリモコンのキーの増加とそれに伴う操作の難しさである。現在市販されているテレビ用リモコンにおいてはテレビ受像機の制御キーとＶＴＲの操作キーを持つものが多いが、既にキーの数は２０を超えており、不慣れなユーザやお年寄りや子供にとって使いやすいものとは必ずしも言えないのが現状である。
【０００５】
したがって従来のユーザインタフェースのままでテレビ受像機にこれ以上の機能増加を実現することは非常に困難である。
【０００６】
多くの機能を持った機器の操作をシンプルなリモコンで行うユーザインタフェースとしては、表示画面上にメニュー画面や操作パネルなどを表示し、上下、左右などのカーソルキーと決定キーによって選択を行う方式のユーザインタフェースが最もポピュラーである。このようなユーザインタフェースは、カーナビゲーションシステムやＷＷＷ（ＷｏｒｌｄＷｉｄｅＷｅｂ）閲覧機能を内蔵したインタネットテレビなど多くの採用例が見られる。しかしながら、この方式のユーザインタフェースは、一つの選択動作中にカーソルキーを数回押す必要があり、ユーザが目的の処理を終えるまでにリモコンキーを押す回数が多くなり、比較的時間がかかってしまうという点が問題であった。
【０００７】
一方、多機能を実現するもう一つのユーザインタフェースとして、リモコンキーにあてがう機能をダイナミック（動的）に変化させる手法がある。この提案はマルチアングルやマルチチャネル対応番組の内容に従い、リモコンキーにチャネル番号をダイナミックに割り当てると同時に、キーの割り当てを示す画面を表示し、ユーザが容易にマルチチャネル間を移動出来るようにするというものである。
【０００８】
このようにリモコンキーにダイナミックに機能を割り当てる手法は、カーソルキーと決定キーを基本とした手法よりキーを押す回数が少なくなり、ユーザにとって早く目的の処理が終えられるという大きなメリットがある。
【０００９】
【発明が解決しようとする課題】
しかしながら、前述の従来の手法は基本的にテレビのチャネルを選択するという目的は変わらず、単に選択するチャネル番号がダイナミックに変化するというものであり、ホームネットワーク上の機器を制御する為のさまざまな異なる目的の処理をダイナミックに変化させるものではない。また従来技術においては、あらかじめ決められた機能だけを割り付けることしかできず、例えばまったく新しい機能を持った映像機器が登場しても、対応できなかった。さらに従来技術においては、使用するリモコンはあらかじめ決められた仕様のリモコンしか用いることができず、ユーザが望んでもリモコンの仕様を変えることができなかった。
【００１０】
また、先に示したようにリモコンキーにダイナミックに機能を割り当てる手法は、大きなメリットがある一方で、リモコンガイドがすべての操作画面で常に同様のアイコン配置で表示される為、ユーザにとっては操作中の機器の違いやモードの違いを認識しづらいという一面もあった。
【００１１】
また、従来技術はリモコンキーの数よりも選択する項目が少ない場合しか考えられておらず、選択項目がキーの数を上回った場合には新たな技術を必要としていた。
【００１２】
本発明は、未知のリモコンと被制御装置の組み合わせに対応したリモコンガイドの表示が可能なユーザインタフェース制御装置を提供することを目的とする。
【００１３】
【課題を解決するための手段】
本発明に係るユーザインタフェース制御装置は、リモコンからのリモコン信号を受信するリモコン信号受信手段と、前記リモコンが未知のリモコンであるか否かを判定する判定手段と、前記リモコンが未知のリモコンであると判定された場合に、前記リモコンのＩＤ情報と被制御装置のＩＤ情報とをホストコンピュータに送信し、前記リモコンと前記被制御装置とに対応するリモコンガイドを表示するのに必要なプログラムを前記ホストコンピュータから受信する通信手段と、前記ホストコンピュータから受信した前記プログラムを用いて、前記リモコンガイドを表示手段に表示する表示制御手段とを有することを特徴とする。
【００３５】
【発明の実施の形態】
以下本発明の実施の形態をユーザインタフェース制御装置の実施例により詳しく説明する。なお本発明はユーザインタフェース制御装置に限らず、ユーザインタフェース制御方法の形で同様に実施することができる。
【００３６】
【実施例】
（実施例１）
〈各部の説明〉
図１は、実施例１である“ユーザインタフェース制御装置”を有するシステム全体、すなわちＩＥＥＥ１３９４高速シリアルバスを用いたホームマルチメディアネットワークシステム全体を表わす図である。
【００３７】
図１を用いてホームマルチメディアネットワークシステムを説明する。このシステムは電子機器としてテレビ受像機・ＴＶ１，ＴＶ２，ＴＶ３、ビデオカセットレコーダ１・ＶＣＲ１、デジタル衛星放送チューナ１・Ｔｕｎｅｒ１、デジタルビデオディスク１・ＤＶＤ１，ＤＶＤ２、そして、ネットワークインタフェースユニットＮＩＵを備えている。
【００３８】
そしてこれらの電子機器はＩＥＥＥ１３９４シリアルバスによって接続されている。各電子機器はシリアルバスの電気信号を中継する機能を有しているため、デージチェーン接続が可能である。またネットワークインタフェースユニットＮＩＵもこのシリアルバスの中継機能を有しているため、各部屋のシリアル接続が中継され、図１の電子機器全体として一つのバスシステムとして機能する。
【００３９】
ＩＥＥＥ１３９４バスシステムにおいては、所定のサイクルでデータ転送が行われ、一定のデータ転送レートを保ちながら伝送するアイソクロナス（同期）通信と、制御命令や不定期なデータを伝送するアシンクロナス（非同期）通信の両方を行うことができる。通信サイクルの始めにはサイクルスタートパケットがあり、それに続いてアイソクロナス通信のパケット送信が開始される。このアイソクロナス通信パケットにはチャネル番号がつけられ、複数のアイソクロナス通信が行うことができる。例えば、ＶＣＲ１からＴＶ１へと流れるＤＶフォーマットのストリームデータがチャネル１を、ＤＶＤ２からＴＶ２へと流れるＭＰＥＧ２ストリームデータがチャネル２を使用することにより、複数のアイソクロナス通信が同時に行えるので、アイソクロナス通信の終了後、アシンクロナス通信のパケット送信が開始される。
【００４０】
一般にアイソクロナス通信はデジタルビデオにおけるＤＶフォーマットの画像データ転送、ＭＰＥＧ２フォーマットの画像・音声ストリームの転送など、データ転送の確実性よりもリアルタイム性を重視するデータ転送に用いられ、アシクロナス通信は制御コマンドやファイル・プリントデータなどの確実性を重視するデータを転送に用いられる。
【００４１】
ＡＶ機器の制御を目的としたＡＶ／Ｃ（Ａｕｄｉｏ  Ｖｉｄｅｏ／Ｃｏｎｔｒｏｌ）コマンドはアシンクロナス通信で行われる。
【００４２】
アシンクロナス通信で行われるコマンドには、通常のＣｏｎｔｒｏｌコマンドと、そのコマンドをサポートされているかを確かめるＩｎｑｕｉｒｙコマンド、相手の状態を確かめるＳｔａｔｕｓコマンドがあり、多くのコマンドはそれに対するレスポンスと呼ばれるデータを受信することで完結する。コマンド送信者は受信したレスポンスの内容を調べることで、コマンドが正常に実行されたかどうかや、相手のステータス情報などを知ることができるのである。
【００４３】
また、ＩＥＥＥ１３９４シリアルバスにおいては、バスに接続された各電子機器に対して物理アドレスが割り付けられる。この物理アドレスは接続される電子機器の増減などによって起こるバスリセットに続く設定プロセスの中で自動的に決定される。
【００４４】
図１に示すようにＩＥＥＥ１３９４シリアルバスを基盤としたホームマルチメディアネットワークが家庭内に張り巡らされると、１台の衛星放送チューナの受信映像を家の中のどのテレビでも楽しめるようになったり、１台のＶＣＲの映像をどのテレビでも見られるようになるなど、従来に無い新しい使用形態・利便が生れてくる。例えば図１の例ではＤＶＤ２のビデオディスクに保存された映画のストリームデータをネットワークを介してＴＶ１に入力し鑑賞することが可能となる。また、ＴＶ３で受信したテレビ番組をＤＶＤ２で保存したり、ＴＶ１で見ることなども可能となる。
【００４５】
そしてそれに伴いテレビ受像機にも新たな機能が要求されてきている。すなわち映像デバイスがテレビ受像機の近く、つまりそれを見ているユーザ部屋にあるとは限らない為、従来各機器に対して直接行っていた「再生，録画，停止」などの操作をテレビ受像機を介して行う、つまりユーザはテレビ受像機を各機器のユーザインタフェースとしながら各機器を操作できるようにすることが望まれている。
【００４６】
図２はテレビ受像機１（図１におけるＴＶ１）を構成するブロックを示した図である。２−１はＴＶアンテナからテレビ放送波を受信し、映像信号に変換するアナログチューナ部、２−２はＩＥＥＥ１３９４バスとの送受信を行う１３９４インタフェース部、２−３はＩＥＥＥ１３９４バスから入力した映像ストリームデータを映像信号に変換するデコーダ部である。２−４は表示器２−６が実際に表示する表示データを作成するところであり、アナログチューナ２−１からの映像とデコーダ２−３からの映像をメモリ２−５に蓄えると共に、これら２つの入力映像信号と、後述するグラフィックプレーンデータとを重ねあわせて表示したり、ウィンドウ表示したりする表示制御部である。さらに表示制御部２−４はマイコン２−７からの描画コマンドを受け取り、メモリ２−５内のグラフィックプレーンに対して、アイコンやボタン等々のグラフィックオブジェクトの書き込みも行う。
【００４７】
２−７はテレビ受像機ＴＶ１全体の制御を行う制御マイコン、２−８はリモコン２−１１からワイヤレス信号で送られてくるキーコードを受け取るリモコンインタフェース部、２−９は電話回線を介してデータ通信を行う為のモデム、２−１０はＩＥＥＥ１３９４インタフェースのコネクタである。
【００４８】
図３はリモコン２−１１を更に詳しく示したもので、３−１はテレビ受像機ＴＶ１のリモコンインタフェース２−８に対してキーコードを表す信号を出力するワイヤレス信号送信部、３−２はテレビ受像機の電源Ｏｎ／Ｏｆｆ制御用キー、３−３は３×４に配列されたキーアレイであり、ボタン表面には「１」「２」……「９」「０」「＊」「＃」と印字されている。以後、説明の中で、キーアレイの中のそれぞれのキーを個別に示す場合この印字を用いて示す。例えば左上のキーを「１」キーと呼ぶ。
【００４９】
また図４に、リモコン２−１１から送信されるワイヤレス信号のフォーマットを示す。本実施例のリモコン２−１１は、図示のようにキーコードの他にリモコンのタイプを識別するリモコンＩＤが含むワイヤレス信号を送信する。
【００５０】
図５はテレビ受像機ＴＶ１のマイコン２−７上で動作するリモコンガイド制御プログラムの構造を示した図である。本実施例の制御の中心とするリモコンガイドマスタプログラム５−１のようなドライバまたはソフトウェア階層を通じてハードウェアとのデータのやり取りを行う。
【００５１】
〈動作説明〉
以下にテレビ受像機ＴＶ１の動作を説明し、本実施例のユーザインタフェース制御装置の特徴となるユーザインタフェース制御方式について述べていく。
【００５２】
テレビ受像機ＴＶ１のマイコン２−７上ではリモコンガイドマスタプログラム５−１（以下マスタプログラムという）が常に起動している。
【００５３】
図６はマスタプログラムがメモリ内に持っているリモコンガイド情報テーブル５−１３の内容を示したものである。図中「機器ＩＤ」とは１３９４機器の製造者及び製品を識別できる個別ＩＤで、ＩＥＥＥ１３９４規格においてはコンフィグレーションＲＯＭ内のＢｕｓ＿ｉｎｆｏ＿ｂｌｏｃｋフィールドにおけるＮｏｄｅＶｅｎｄｏｒＩＤやＲｏｏｔ＿ｄｉｒｅｃｔｏｒｙフィールドにおけるＭｏｄｕｌｅＶｅｎｄｏｒＩＤ、ＭｏｄｕｌｅＳｐｅｃ＿ＩＤなどの値がこれに該当する。マスタプログラムは電源Ｏｎ直後、またはバスリセット直後に各機器のコンフィグレーションＲＯＭから「機器ＩＤ」を読み出し、「ノード番号」と共に図６に示すリモコンガイド情報テーブル５−１３に記録する。また、図中の「サブユニットタイプ」はＡＶ／Ｃ（ＡｕｄｉｏＶｉｄｅｏ／Ｃｏｎｔｒｏｌ）規格で定められたＡＶ機器のタイプを示す値で、マスタプログラムはＡＶ／ＣコマンドであるＵｎｉｔＩｎｆｏまたはＳｕｂｕｎｉｔＩｎｆｏコマンドを各機器に送信し、返ってきたレスポンスのデータから、その機器のタイプを識別し同じく図６のテーブルに記録する。図中「フラグ」については後述する。なお、図中−−で示した部分はテレビ受信機ＴＶ１に内蔵しているアナログチューナに該当する部分であり、１３９４機器でない為、機器ＩＤ，ノードＩＤ，サブユニットタイプに関する情報は記録されない。
【００５４】
ユーザがリモコン２−１１の電源キー３−２を押すと、テレビ受像機ＴＶ１のマスタプログラムは表示器２−６や表示制御部２−４、チューナ部２−１などの各ブロックをアクティブにすると共に、リモコン２−１１からのワイヤレス信号に含まれるリモコンＩＤ（前述）を読み取り、ユーザが使用しているリモコン２−１１を認識する。ここではリモコンＩＤ＝０というリモコンを認識したとする。テレビ受像機ＴＶ１はそのリモコンＩＤを読み取ることで、ユーザが使用しているリモコン２−１１を認識することが可能となる。
【００５５】
その後、マスタープログラムは図７に示すようなリモコンガイドを表示し、ユーザにテレビ受像機ＴＶ１に内蔵されたアナログテレビ放送チューナの映像を見るのか、ホームネットワーク上の機器を使って映像を見るのかを選択させる画面を表示させる。図では「１」のキーにＶＣＲ１、「２」キーにＤＶＤ１、「３」キーにＤＶＤ２、「４」キーにＴｕｎｅｒｌ、「５」キーにアナログチューナが割り当てられている様子を示している。本実施例ではリモコンキーにダイナミックに機能が割り当てられる為、カーソルキーなどで所望のアイコンを選んで「決定」キーを押すといった複数の操作は必要なく、単にキーを一つ押すだけで機器を選択することができる。
【００５６】
図８はユーザが機器選択した後のマスタプログラムの動作を示す動作シーケンスである。
【００５７】
ユーザがリモコンのボタン操作により機器を選択すると、マスタプログラムは、先に認識したリモコンＩＤと選択された機器ＩＤから前記リモコンガイド情報テーブルを参照し、対応したリモコンガイドフレームＩＤを読み取り、メモリ内に保存されているリモコンフレームプログラム（以下フレームプログラムという）を読み出し、実行する。
【００５８】
〈リモコンフレームプログラム〉
フレームプログラムは、リモコンガイドを構成する表示画面の描画およびリモコンキーの入力を監視し、キー操作に対応した処理の実行を行う。マイコン２−７のメモリには複数のフレームプログラムが記録されており、それぞれに前述の（リモコンガイド）フレームＩＤが割り付けられている。以下にフレームプログラムの動作について説明する。
【００５９】
フレームプログラムはまず最初にエントリ処理を実行する。エントリ処理とは例えば映像を転送する為のアイソクロナス転送のためのチャンネルの確保やチューナであれば以前見ていたチャンネルの再設定などである。フレームプログラムはエントリ処理実行後にリモコンガイドの表示を行う。
【００６０】
なお、このフレームプログラムはＪＡＶＡに代表されるようなバイコードであっても良い。
【００６１】
図９はユーザがビデオカセットレコーダＶＣＲ１を選択した際に実行されるフレームプログラムの表示画面例を示したものである。太い枠がリモコンフレーム全体を示しており、その中にリモコンと同じボタン配列のアイコンが表示される。さらに各アイコンにはそれぞれ対応するキーに現在割り当てられている機能を示すマーク（再生ならば△印、停止なら□印など）が記されている。また、図中斜線で示したアイコンは対応するキーが現在、機能を割り当てられていないことを示しており、表示画面上では印のないアイコンと背景にある映像とが合成（αブレンディング）されて表示される。
【００６２】
例えばビデオカセットレコーダＶＣＲ１のフレームプログラムにおいては、各ボタンに対し、ＶＣＲ１に対する操作コマンドの送信を行う処理プロセスが割り当てられており、例えばユーザが「３」のキーを押すと、ＩＥＥＥ１３９４のＡＶ／Ｃ（Ａｕｄｉｏ  Ｖｉｄｅｏ／Ｃｏｎｔｒｏｌ）のＶＣＲサブユニット規格で定められているＰｌａｙコマンドの送信とそのコマンドに対するレスポンスのチェック処理（正しく処理が実行されたかどうか確認）が実行される。
【００６３】
また、図９の表示状態でユーザが「＃」キーを押すと、リモコンフレームは終了処理が実行し、マスタプログラムに制御を返す。終了処理とは例えばエントリ処理で確保したアイソクロナスチャネルの解放などの処理である。
【００６４】
以上のフレームプログラムの動作を示したフローチャートを図１０に示す。
【００６５】
〈未知の機器が接続された場合の動作〉
以上が本実施例におけるテレビ受像機ＴＶ１のリモコンガイドに関する基本的な動作であるが、本実施例においては、あらかじめメモリ（リモコンガイド情報テーブル）５−１３にデータがない機器が１３９４バスに接続された場合においても、最適なリモコンガイドを表示することができる。以下に図１１のフローチャートを用いてその動作を示す。
【００６６】
機器が１３９４バスに接続されると、バスリセットが発生し、ＩＥＥＥ１３９４バスにおける設定プロセスで各機器に物理アドレス（ノードアドレス）が新たに割り振られる（Ｓ１１−１）。その後リモコンマスタプログラムは前述のように１３９４バス上の各機器（ノード）の機器ＩＤを読み出し、メモリ上のリモコンガイド情報テーブルに格納されている機器ＩＤとの比較を行う（その際テーブル上のノード番号の更新も同時に行う、Ｓ１１−２）。そして未知の機器ＩＤを発見した場合には（Ｓ１１−３，ＹＥＳ）、その機器に対して前述のＵｎｉｔＩｎｆｏまたはＳｕｂｕｉｎｕＩｎｆｏコマンドを送信し、サブユニットタイプを調べる一方で、ネットワーク通信によってホストコンピュータ２−２０に対して問い合わせを行う（Ｓ１１−４）。図１７はホストコンピュータ上のソフトウェア構成を示した図である。ホストコンピュータ２−２０はリモコンフレームデータベースを持っており、常に新しい機器に最適なリモコンガイドを表示するためのリモコンフレームプログラムが登録・保存されている。
【００６７】
〈ホストとの通信〉
本実施例ではホストコンピュータ２−２０はホームネットワーク外にあるサービスセンタに位置することを想定しているため、リモコンマスタプログラムは電話回線を使ったＰＰＰ（Ｐｏｉｎｔ−Ｐｏｉｎｔ−Ｐｒｏｔｏｃｏｌ）接続によってホストコンピュータ２−２０との接続を行い、論理的接続を確立する。
【００６８】
その後、リモコンマスタプロクラムは、ホストコンピュータ２−２０のフレーム提供サービスプログラム１７−１に対して未知の機器ＩＤとメモリ内のテーブル５−１３に登録されているリモコンＩＤを送信することにより、ホストコンピュータ２−２０からその機器に適したリモコンフレームプログラムのダウンロードが行われる。リモコンマスタプログラムはダウンロードしたり、リモコンフレームプログラムを図６に示したテーブルに新規に登録し、ユーザがその新しい機器を選択した際に実行できるようにする。
【００６９】
〈新しいリモコンが使用された場合の動作〉
本実施例では、あらかじめメモリ（リモコンガイド情報テーブル５−１３）にデータがないリモコンＩＤを受信した場合においても、そのリモコンの仕様にあった最適なリモコンガイドを表示することができる。図１２のフローチャートによりその動作を示す。
【００７０】
図１３（ａ）に示すような異なるタイプのリモコンからの信号を受け、未知のリモコンＩＤを受信した場合、マスタプログラムは前述同様ホストコンピュータ２−２０との接続を実行する。そしてホストコンピュータ２−２０のフレーム提供サービスプログラム１７−１に対して未知のリモコンＩＤとメモリ内のテーブル５−１３に登録されているすべての機器ＩＤを送信することにより、ホストコンピュータ２−２０から新しいリモコンフレームプログラムのダウンロードが行われる。リモコンマスタプログラムはダウンロードしたり、リモコンフレームプログラムを図６に示したテーブルに追加登録し、ユーザがその未知のリモコンを使って機器を操作する際に実行できるようにする。図１３（ｂ）はこの場合のリモコンガイドの表示例を示したものである。
【００７１】
このように本実施例においては、テレビ受像機は図１４に示すように複数のリモコンＩＤをテーブルに登録することが出来、さらにそのリモコンＩＤごとに１３９４バス上の機器を操作するためのリモコンフレームプログラムを保持できるため、例えばユーザが２つのタイプのリモコンを交互に使用しても、常に最適なリモコンガイドが表示可能である。例えばビデオカセットレコーダＶＣＲ１を使用しているときに、リモコンＡ（ＩＤ＝０）からの信号を受信すればそれに対応したリモコンフレームプログラム（フレームＩＤ＝０００２）が実行され、リモコンＢ（ＩＤ＝１）からの信号を受信すればそれに対応したリモコンフレームプログラム（フレームＩＤ＝００１１）が実行される。
【００７２】
〈ホストに該当する機器ＩＤがない場合〉
前述の説明において、ホストコンピュータ２−２０には操作し得る全ての１３９４機器に対応したリモコンフレームプログラムが登録されているとしたが、実際には何らかの原因で全ての機器のリモコンフレームプログラムが登録されていない状況も有り得る。また電話回線による通信の不具合で正しくリモコンフレームプログラムがダウンロードできない場合も有り得る。この場合テレビ受像機ＴＶ１のリモコンマスタプログラムはＩＥＥＥ１３９４のＡＶ／Ｃ（Ａｕｄｉｏ  Ｖｉｄｅｏ／Ｃｏｎｔｒｏｌ）コマンドのＵｎｉｔＩｎｆｏコマンドやＳｕｂｕｎｉｔＩｎｆｏコマンドをその機器に対して送信して得たサブユニットタイプ情報を取得するとともに、メモリ内に格納されているリモコンガイド情報テーブル５−１３から同じサブユニットタイプを持つ機器を検索し、見つかった場合その機器のリモコンフレームプログラムを代用として実行する。さらにテーブルの「フラグ」にフラグをセットすることで、定期的なホストコンピュータ２−２０に対してアクセスし、最適なリモコンフレームプログラムを入手しようと試みる。
【００７３】
またリモコンガイドマスタプログラムは図１５に示すように各機器に対してリモコンフレームプログラムを複数登録することもできる。本実施例におけるＴＶ受像機のリモコンガイドマスタプログラムでは、内蔵のテレビチューナを使ったＴＶ映像表示に番組のジャンルごとにリモコンガイドフレームプログラムを変更することができる。
【００７４】
図１６にその動作シーケンスを示す。マスタプログラムは、チューナ２−１から放送と共に送られてくる電子番組ガイド情報を受け取り、現在ユーザが視聴している番組のジャンルを識別する。そして例えばドラマにはフレーム（１）を、スポーツにはフレーム（２）を、その他にはフレーム（３）を選択してリモコンガイドフレームプログラムを実行する。このような機能によりユーザはリモコンガイドからの番組のジャンルを知ることができるだけでなく、例えば野球放送などのときはボールカウントや出塁状態などの文字，図形表示が多いので、リモコンガイドの表示によって重要な情報を隠れてしまうのを防ぐ為に小さなリモコンガイドを表示したりすることが可能となる。
【００７５】
また図１５に示すようなリモコンフレームＩＤを複数持ったテーブルを用いれば、例えば同じベンダの同じ製品が１３９４バス上に２つあるときなどに、全く同一のリモコンガイドを表示するのではなく、同機能で異なる色やアイコンを持ったリモコンガイドを表示することで、ユーザに機器の違いを強く認識させ、誤操作を軽減することができるなどのメリットもある。
【００７６】
以上説明してきた本実施例においては、テレビ受像機とホストコンピュータとの通信手段として電話回線を用いた例を示したが、これに限ることなく、イーサネットなどのＬＡＮを用いても良い。また、本実施例はテレビ受像機としての中に表示器が組み込まれた構成を例に説明したが、本発明の本質からすればこれに限ることなく、表示を持たないセットトップボックスであっても、同様の効果が得られることは言うまでもない。またテレビ受像機以外の電子機器においてユーザインタフェース制御を行う形で同様に実施することができる。
【００７７】
以上説明したように、本実施例のユーザインタフェース制御装置によれば、ホームネットワーク環境における多種多様な操作をＴＶ受像機のリモコンを使って行う際に、リモコンキーの数を増やすことなく実現できるばかりでなく、しかも非常に速く操作を行うことができるようになる。特にカーソルキーと決定キーの組み合わせによるユーザインタフェースに比べると、キーを押す回数が大幅に減らすことができる。
【００７８】
また、従来の提案においても、本実施例のようにリモコンキーにダイナミックに機能を割り付ける方式があるが、本実施例はその提案では解決できなかった課題を解決している。例えば本実施例によれば、新しいＡＶ機器が接続された時でもその機器にあった最適なリモコンキーの割り当て及びリモコンガイドの表示が可能であり、さらにユーザが新しいタイプのリモコンを使用した場合においても同様に最適なリモコンキーの割り当て及びリモコンガイドの表示が可能となる。また、さらに本実施例では複数タイプのリモコンにもダイナミックに対応できるなどの数多くの効果が得られる。
【００７９】
（実施例２）
〈各部の説明〉
図１８は、実施例２である“ユーザインタフェース制御装置”を有するシステム全体、すなわちＩＥＥＥ１３９４高速シリアルバスを用いたホームマルチメディアネットワークシステム全体を表す図である。この図についての説明は図１の説明で既に行っているので割愛する。なお機能は図１と同一とはいえないので、別の符号を付けている。
【００８０】
図１９はテレビ受像機１（図１８におけるＴＶ１）を構成するブロックを示した図である。１９−１はＴＶアンテナからＴＶ放送波を受信し、映像信号に変換するアナログチューナ部、１９−２はＩＥＥＥ１３９４バスとの送受信を行う１３９４インタフェース部、１９−３はＩＥＥＥ１３９４バスから入力した映像ストリームデータを映像信号に変換するデコーダ部である。１９−４は、表示器１９−６が実際に表示する表示データを作成するところであり、アナログチューナ１９−１からの映像とデコーダ１９−３からの映像をメモリ１９−５に蓄えると共に、これら２つの入力映像信号と、後述するグラフックプレーンデータとを重ねあわせて表示したり、ウィンドウ表示したりする表示制御部である。さらに表示制御部１９−４はマイコン１９−７からの描画コマンドを受け取り、メモリ１９−５内のグラフィックプレーンに対して、アイコンやボタン等々のグラフィックオブジェクトの書き込みも行う。
【００８１】
１９−７はテレビ受像機ＴＶ１全体の制御を行う制御マイコン、１９−８はリモコン１９−１１からワイヤレス信号で送られてくるキーコードを受け取るリモコンインタフェース部、１９−９は電話回線を介したデータ通信を行う為のモデム、１９−１０はＩＥＥＥ１３９４インタフェースのコネクタである。
【００８２】
図２０はリモコン１９−１１を更に詳しく示したもので、２０−１はテレビ受像機ＴＶ１のリモコンインタフェース１９−８に対してキーコードを表す信号を出力するワイヤレス信号送信部、２０−２の２つのキーは左右カーソルキー、２０−３は３×４に配列されたキーアレイであり、ボタン表面には「１」「２」……「９」「０」「＊」「＃」と印字されている。以後、説明の中で、キーアレイ中のそれぞれのキーを個別に示す場合この印字を用いて示す。例えば左上のキーを「１」キーと呼ぶ。
【００８３】
〈動作説明〉
以下にテレビ受像機ＴＶ１の動作を説明する。
【００８４】
図２１はマイコン１９−７の初期動作シーケンスを示す。マイコン１９−７は、リモコン操作によって電源がＯＦＦされたときも動作しており、リモコン１９−１１からのキーコードの受信が可能である。マイコン１９−７は電源ＯＦＦモード時にリモコン１９−１１から何らかのキーコードを受け取ると、電源ＯＮつまりシステム起動の動作を開始する（Ｓ２１−１）。
【００８５】
そして、マイコン１９−７は１３９４インタフェースを介して１３９４バスに接続されている他のＡＶ機器の調査を行う（Ｓ２１−２）。具体的にはＡＶ／Ｃ（Ａｕｄｉｏ  Ｖｉｄｅｏ／Ｃｏｎｔｒｏｌ）規格に基づいたコマンドであるＵｎｉｔＩｎｆｏまたはＳｕｂｕｎｉｔＩｎｆｏコマンドを送信することにより相手の機器のタイプを問い合わせるもので、このコマンドに対して返されるレスポンスデータを解析することにより、１３９４バス上に接続されている機器がＶＣＲ，ＤＶＤ，Ｔｕｎｅｒ，Ｍｏｎｉｔｏｒなどあらかじめ定められた機器タイプのいずれかに属するのかを判断することができる。
【００８６】
図２２はＵｎｉｔＩｎｆｏコマンドの例を示した図である。図中（ａ）はテレビ受像機ＴＶ１が他の機器に対して送信するＵｎｉｔＩｎｆｏコマンドのフォーマット、（ｂ）は（ａ）のコマンドを受信した機器が返すレスポンスフォーマットである。そしてこのレスポンス中のＵｎｉｔ＿ｔｙｐｅフィールドに埋め込まれたＩＤによって、機器のタイプを知ることができる。図２３はそのタイプＩＤの例を示したものである。
【００８７】
次に、マイコン１９−７は前述の動作で調査したＡＶ機器タイプ情報を基に、リモコンキーの割り付けを行う（Ｓ２１−３）。ここでテレビ受像機ＴＶ１のマイコン１９−７は図１８で示した機器のうちＶＣＲ１，ＤＶＤ１，ＤＶＤ２，Ｔｕｎｅｒｌの４つの利用可能なＡＶ機器と認識したため、リモコンキーにこれら各機器を割り付ける。例えば「１」のキーにＶＣＲ１、「２」のキーにＤＶＤ１、「３」のキーにＤＶＤ２、「４」のキーにＴｕｎｅｒｌとなる。更に「５」のキーにはＴＶ１自らが持っているアナログＴＶ機能を割り付ける。
【００８８】
そして、その割付結果を基に、リモコンガイド表示データを生成する（Ｓ２１−４）。図２４はその一例を示したものである。
【００８９】
マイコン１９−７はリモコンのボタン配列（３×４）と同じ配列のアイコンデータを生成する。図中斜線で示した部分は機能が割り振られていないボタンに対する表示で、表示制御部の重ねあわせ機能により背景の画像が半透明に透けて見えるように表示される。
【００９０】
この状態でユーザがリモコンキーの「１」を押すと、マイコン１９−７はＶＣＲ１からの映像が映像領域に表示するように表示制御部を制御し、また「２」のキーを押すとＤＶＤ１からの映像が映像領域に表示するよう表示制御部を制御する（Ｓ２１−５）。
【００９１】
〈ＡＶ機器の操作〉
次に、ユーザが「１」のキー押してビデオカセットレコーダＶＣＲ１を選択した場合の動作を示す。図２５はマイコン１９−７の動作シーケンスを示した図である。
【００９２】
ユーザがビデオカセットレコーダＶＣＲ１を選択すると（Ｓ２５−１）、マイコン１９−７はビデオカセットレコーダＶＣＲ１に対してコマンド送信し、ビデオカセットレコーダＶＣＲ１がどのような操作コマンドをサポートしているかを調査する（Ｓ２５−２）。ＡＶ／Ｃ規格においてＶＣＲ用コマンドとして、ＰＬＡＹ，ＦＯＲＷＡＲＤ，ＲＥＣＯＲＤなど十数のコマンドが定義されているが、どのコマンドをサポートしているかは機器によって異なる為、あらかじめ調査しておく必要がある。ＡＶ／Ｃではこの調査の方法も定義しており、ＰＬＡＹなどの各コマンドのコマンドタイプフィールドを「Ｉｎｑｕｉｒｙ」とすると、相手の機器がそのコマンドをサポートしているかを調べることができる。
【００９３】
図２６はコマンドのフォーマットを示したものである。図中ＣＴ（Ｃｏｍｍｎａｎｄ  ｔｙｐｅ）というフィールドにＩｎｑｕｉｒｙというタイプを示すＩＤ（＝０２ｈ）を設定することにより、そのコマンドを受け取った機器はＯｐＣｏｄｅ＋Ｏｐｅｒａｎｄに示したコマンドをサポートしていればＩＭＰＬＥＭＥＮＴを、サポートしていなければＮＯＴ  ＩＭＰＬＥＭＥＮＴをレスポンスして返す。マイコン１９−７はＡＶ／Ｃで定義されたＶＣＲ用コマンドのうち主要なものをすべてＩｎｐｕｉｒｙタイプコマンドとしてビデオカセットレコーダＶＣＲ１に対して送信し、それぞれのレスポンスを解決することによって、ビデオカセットレコーダＶＣＲ１のサポートするコマンドのリストを作成する。
【００９４】
次に、マイコン１９−７は前述の動作で調査した内容をもとに、リモコンキー割付けを行う（Ｓ２５−３）。ここでビデオカセットレコーダＶＣＲ１は操作コマンドとして、Ｐｌａｙ，Ｗｉｎｄの２つのコマンドをサポートされており、さらにＰｌａｙは順方向／逆方向／ストップの３つのモード、Ｗｉｎｄは順方向／逆方向２つのモードをサポートしているとすると、マイコン１９−７は「１」キーにＰｌａｙ（逆方向）、「３」キーにＰｌａｙ（順方向）、「５」キーにＰｌａｙ（ストップ）、「４」キーにＷｉｎｄ（逆方向）、「６」キーにＷｉｎｄ（順方向）を割り付ける。そして、この割付結果を基に、リモコンガイドの表示データを生成する（Ｓ２５−４）。図２７はその一例を示したものである。例えばここでユーザがリモコンの「６」キーを押すと、順方向ワインド（早送り）コマンドがビデオカセットレコーダＶＣＲ１に対して送信される。
【００９５】
〈リモコンキーが足りない場合〉
以上説明してきた動作はリモコンキーの数より割り当てる対象の方が少なかった場合であるが、本実施例では、リモコンキーの数より割り当て対象が多かった場合でも、操作性を損なうこと無く対応できる。図２８はこの場合のリモコンガイドの表示例を示している。この例ではビデオカセットレコーダＶＣＲの再生スピードが順方向、逆方向合わせて１２種類サポートされている場合を想定している。
【００９６】
マイコン１９−７は、ビデオカセットレコーダＶＣＲ１のサポートするコマンド数がリモコン１９−１１のキー数を上回る場合、グループモードで表示を行う。グループモードとは例えば図２８のように６×４のアイコンを表示し、その内半分の３×４のアイコンを枠で囲った表示を行うことを言う（図中（ａ））。そしてユーザがカーソルキー２０−２（図２０参照）を押すと、枠が移動し、もう一方の３×４のアイコンを囲む表示となる（図中（ｂ））。そして図２８（ａ）の示す場所に枠が表示されているときには「１」キーはストップ、「３」は早送り、「５」は順方向スロー再生のレベル２（図中ＳＬ２と示す）が割り当てられ、また図２８（ｂ）に示す場所に枠が表示されているときには「１」キーは巻き戻し、「３」はストップ、「５」は逆方向スロー再生のレベル２（図中ＳＬ２）と示す）を割り当てる。
【００９７】
このようにリモコンキーの数よりも割り当てる対象（処理）が多い場合にも前記グループモード表示により最悪でも２回のボタン操作で図２８に示すどのコマンドも送信でき、スピーディな操作が可能となる。
【００９８】
このグループモードによる表示は当然ビデオカセットレコーダＶＣＲの操作だけでなく、例えばチューナＴｕｎｅｒ１が受信できる番組サービス（チャネル）などを選択する場合にもおいても、同様に適用できる。図２９はその場合の表示例を示したものである。
【００９９】
図２９（ａ）の位置に枠が表示されているときには「１」キーはＣＳ６が、「９」キーにはＮＨＫ２が割り付けられており、ユーザがリモコン１９−１１のカーソル２０−２を押して図２９（ｂ）の位置に枠を移動させると、今度は「１」キーにＢＳ１が、「９」キーにＣＳ２が割り付けられる。この場合も前述の場合と同様、最悪でも２回のボタン操作ですべてのサービスが選択可能となる。
【０１００】
〈文字入力への応用〉
図３０に示す例はグループモードの例を文字入力に対応した例である。この例ではカーソルによって３つのグループを選択することになるが、この場合でも最悪で３回のキー操作で文字の入力が可能なため、スピーディな文字入力が可能となる。
【０１０１】
〈録画予約設定時〉
ユーザがチューナＴｕｎｅｒ１を使用してＴＶ番組を見ている状態でのリモコンガイドの表示例を図３１に示す。本実施例においては通常ＴＶ視聴時、リモコン１９−１１の各キーには図３１に示すような、ユーザがあらかじめ設定したか、視聴履歴を解析したことによって選ばれた放送サービスが９つ「１」から「９」キーに割り当てられ、リモコンキーを押すとダイレクトにサービスが選択されるようになっている。また「＊」キーにはメニュー表示へ移動する処理が、「＃」キーには録画設定の為の処理が割り当てられている。
【０１０２】
ここで、ユーザが「＃」キー（録画）を押して、録画設定をしようとすると、マイコン１９−７によって、図３２に示す表示が行われる。
【０１０３】
図３２（ａ）は「＃」（録画）キーが押された直後の画面であり、ユーザがアクションを指定する所である。この時マイコン１９−７はアクションアイテム３つをキー「１」「２」「３」に割り当てる。そしてユーザが何れかを選択すると、そのアクションが実行可能なＡＶ機器のアイテムをその下、つまり「４」，「５」，「６」により割り当てる（図３２（ｂ））。ユーザがＡＶ機器を選択すると、さらにその機器のメディアに応じた録画場所の条件が「７」，「８」，「９」に割り付けられる（図３２（ｃ））。そして録画場所条件が選択することで、たとえば現在見ている番組の来週放送分のビデオ録画予約が完了する。
【０１０４】
本実施例においては、ＴＶ受信機のリモコンキーにダイレクトに機能を割り振る為、はじめに録画キーを押してからたった３回のボタン操作で、録画設定を終了することができる。
【０１０５】
また、一般に本実施例のような各リモコンキーに処理がダイレクトに割り付けられている場合、不慣れなユーザが操作するとボタンの押し間違いが発生しやすいが、本実施例では図３２の録画設定ようないくつかの手順を必要な設定に対しては、仮にボタンを押し間違えても、その後正しいキーを押せばそれまでの設定はキャンセルさせ、直ちに設定手順を進めることができる。例えば図３２（ｂ）でＤＶＤ１と間違えてＶＣＲ１のキーを押してしまっても、その後、すぐにＤＶＤ１のキー（つまり「５」キー）を押すことにより、直ちに表示内容が切り替わり、ＤＶＤ１のメディアに応じた録画条件が表示されるようになる。以上の動作シーケンスを図３３のフローチャートに示す。
【０１０６】
なお、図３２は、操作手段を列（タテ）方向に進めるものであるが、これに限らず、行（ヨコ）方向に進める形で実施することもできる。
【０１０７】
〈カーソルモードへの移行〉
本実施例では、これまで説明してきたさまざまな機能・処理をダイナミックにリモコンキーに割り付ける「ダイナミックモード」のインターフェースの他に、従来から一般的であるカーソルと決定キーの組み合わせによる「カーソルモード」インターフェースも有しており、設定画面で選択することができる。図３４（ａ）はその設定画面の例を示しており、「ダイナミックモード」から「カーソルモード」に切替えるときは、設定画面で「１」のキーを押すことにより可能となる。図３４（ｂ）はカーソルモードになった後の設定画面の例を示している。この場合リモコンキー「２」，「４」，「６」，「８」にそれぞれ上下左右のカーソル移動処理が、「５」キーに決定処理が固定的に割り付けられており、「ダイナミックモード」に戻す為には「２」，「４」，「６」，「８」キーを押してカーソルを「カーソルモード」と書いたアイコンまで持っていき、「５」を押して決定を行えば良い。
【０１０８】
以上説明してきた実施例においては、テレビ受像機に表示部が組み込まれている構成となっているが、本発明の本質からすればこれに限ることなく表示部を持たないセットトップボックスであっても、同様の効果が得られることは言うまでもない。また、テレビ受像機以外の電子機器において、ユーザインタフェース制御を行う形で同様に実施することができる。
【０１０９】
また、本実施例においてはネットワークの基本技術にＩＥＥＥ１３９４を用いて説明を行ったが、これも本発明の本質からすればこれに限ることなく、同様のバスシステム、またはネットワークシステムであっても同様であることは明らかである。
【０１１０】
以上説明したように、本実施例ユーザインタフェース制御装置によれば、ホームネットワーク環境における多種多様な操作をＴＶ受像機のリモコンを使って行う際に、リモコンキーの数を増やすこと無く実現できるばかりでなく、しかも非常に速く処理を行うことができるようになる。特に、カーソルキーと決定キーの組み合わせによるユーザインタフェースに比べると、キーを押す回数が大幅に減らすことができる。
【０１１１】
また、従来の提案においても、本実施例のようにリモコンキーにダイナミックに機能を割り付ける方式が提案されていたが、本実施例はそれに比しても、リモコンキーの数が機能の数よりも少なかった場合でも対応可能であり、さらにホームネットワーク上の機器構成やリソースを反映したキー割り当てが可能である。また、録画予約などの多くの手順を必要とする処理も非常に短時間で行えるようになる、など多くのメリットがある。
【０１１２】
【発明の効果】
以上説明したように、本発明によれば、未知のリモコンと被制御装置の組み合わせに対応したリモコンガイドの表示が可能となる。
【図面の簡単な説明】
【図１】  実施例１である“ユーザインタフェース制御装置”を有するシステムの全体構成を示す図
【図２】  テレビ受像機ＴＶ１の構成を示すブロック図
【図３】  リモコンのキー配列を示す図
【図４】  リモコンから送信されるワイヤレス信号のフォーマットを示す図
【図５】  リモコンガイド制御プログラムの構造を示す図
【図６】  プログラムを有するリモコンガイド情報テーブルを示す図
【図７】  リモコンガイドの表示例を示す図
【図８】  マスタプログラムの動作シーケンスを示す図
【図９】  リモコンガイドの表示例を示す図
【図１０】  リモコンフレームプログラムの動作シーケンスを示す図
【図１１】  未知の機器が接続された場合のマスタプログラムの動作シーケンスを示す図
【図１２】  未知のリモコンが使用された場合のマスタプログラムの動作シーケンスを示す図
【図１３】  未知のリモコンの例と、それに対応したリモコンガイドの表示例を示す図
【図１４】  リモコンガイド情報テーブルの例を示す図
【図１５】  １つのリモコンに複数のリモコンフレームＩＤを設けたリモコンガイド情報テーブルを示す図
【図１６】  テレビ番組の番組ジャンルごとにリモコンフレームを切り替える場合の動作シーケンスを示す図
【図１７】  ホストコンピュータのソフトウエア構成を示す図
【図１８】  実施例２である“ユーザインタフェース制御装置”を有するシステムの全体構成を示す図
【図１９】  テレビ受像機ＴＶ１の構成を示すブロック図
【図２０】  リモコンのキー配列を示す図
【図２１】  マイコンの初期動作シーケンスを示す図
【図２２】  コマンドパケット，レスポンスパケットのフォーマット示す図
【図２３】  機器タイプのＩＤを示す図
【図２４】  リモコンガイドの表示例を示す図
【図２５】  マイコンの動作シーケンスを示す図
【図２６】  操作コマンドパケットのフォーマットを示す図
【図２７】  リモコンガイドの表示例を示す図
【図２８】  リモコンガイドの表示例（グループモード）を示す図
【図２９】  リモコンガイドの表示例（グループモード）を示す図
【図３０】  グループモードのリモコンガイドを文字入力に利用する場合に表示例を示す図
【図３１】  チューナ使用時のリモコンガイドの表示例を示す図
【図３２】  録画設定処理画面の表示例を示す図
【図３３】  録画設定時のマイコンの動作を示すフローチャート
【図３４】  入力モードを切り替えるための設定画面の例を示す図
【図１】
0004434467.tif 000002
【図２】
0004434467.tif 000003
【図３】
0004434467.tif 000004
【図４】
0004434467.tif 000005
【図５】
0004434467.tif 000006
【図６】
0004434467.tif 000007
【図７】
0004434467.tif 000008
【図８】
0004434467.tif 000009
【図９】
0004434467.tif 000010
【図１０】
0004434467.tif 000011
【図１１】
0004434467.tif 000012
【図１２】
0004434467.tif 000013
【図１３】
0004434467.tif 000014
【図１４】
0004434467.tif 000015
【図１５】
0004434467.tif 000016
【図１６】
0004434467.tif 000017
【図１７】
0004434467.tif 000018
【図１８】
0004434467.tif 000019
【図１９】
0004434467.tif 000020
【図２０】
0004434467.tif 000021
【図２１】
0004434467.tif 000022
【図２２】
0004434467.tif 000023
【図２３】
0004434467.tif 000024
【図２４】
0004434467.tif 000025
【図２５】
0004434467.tif 000026
【図２６】
0004434467.tif 000027
【図２７】
0004434467.tif 000028
【図２８】
0004434467.tif 000029
【図２９】
0004434467.tif 000030
【図３０】
0004434467.tif 000031
【図３１】
0004434467.tif 000032
【図３２】
0004434467.tif 000033
【図３３】
0004434467.tif 000034
【図３４】
0004434467.tif 000035