(57)【要約】【課題】制御対象のサブユニットを複数備えるターゲット機器に対し、所望のサブユニットを制御できるコントローラ機器を提供する。【解決手段】シリアルバス・インターフェースを有するコントローラ機器において、（ａ）シリアルバス・インターフェースを介して認識されるターゲット機器に含まれる各サブユニットに対して優先度を設定する優先度設定部と、（ｂ）各サブユニットのうち優先度が最も高く設定されたサブユニットを選択する機器種別決定部と、（ｃ）選択されたサブユニットをターゲット機器の機器種別としてユーザーに提示する機器種別提示部とを備えることによる。【選択図】      図１
2004320517.tif 000002
【特許請求の範囲】
【請求項１】
シリアルバス・インターフェースを有するコントローラ機器において、
前記シリアルバス・インターフェースを介して認識されるターゲット機器に含まれる各サブユニットに対して優先度を設定する優先度設定部と、
前記各サブユニットのうち前記優先度が最も高く設定されたサブユニットを選択する機器種別決定部と、
前記選択されたサブユニットを前記ターゲット機器の機器種別としてユーザーに提示する機器種別提示部と
を備えることを特徴とするコントローラ機器。
【請求項２】
前記優先度設定部は、前記優先度をユーザーが設定できるユーザーインタフェースを有することを請求項１に記載のコントローラ機器。
【請求項３】
シリアルバス・インターフェースを有するコントローラ機器によるターゲット機器に対する制御方法であって、
前記シリアルバス・インターフェースを介して認識される前記ターゲット機器に含まれる各サブユニットに対して優先度設定部により優先度を設定する段階と、
前記各サブユニットのうち前記優先度が最も高く設定されたサブユニットを機器種別決定部により選択する段階と、
前記選択されたサブユニットを前記ターゲット機器の機器種別として機器種別提示部によりユーザーに提示する段階と
を含むことを特徴とする制御方法。
【請求項４】
シリアルバス・インターフェースを有するコントローラ機器によるターゲット機器に対する制御プログラムであって、
前記シリアルバス・インターフェースを介して認識される前記ターゲット機器に含まれる各サブユニットに対して優先度設定部により優先度を設定するステップと、
前記各サブユニットのうち前記優先度が最も高く設定されたサブユニットを機器種別決定部により選択するステップと、
前記選択されたサブユニットを前記ターゲット機器の機器種別として機器種別提示部によりユーザーに提示するステップと
を前記コントローラ機器に実行させることを特徴とする制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、本発明は、例えばＩＥＥＥ１３９４ハイ・パフォーマンス・シリアルバス等の、シリアルバス・インターフェースを介して他の機器（ターゲット機器）を制御するコントローラ機器、コントローラ機器による制御方法及び制御プログラムに関する。
【０００２】
【従来の技術】
例えば、ビデオカセットレコーダ（ＶＣＲ；Ｖｉｄｅｏ  Ｃａｓｓｅｔｔｅ  Ｒｅｃｏｒｄｅｒ）やセット・トップ・ボックス（ＳＴＢ；Ｓｅｔ  Ｔｏｐ  Ｂｏｘ）などのデジタルＡＶ機器を相互接続して、デジタルコンテンツの送受信や機器間の制御コマンドを送受信するインタフェースとして、「ＩＥＥＥ１３９４ハイ・パフォーマンス・シリアルバス（ＩＥＥＥ  １３９４  Ｓｔａｎｄａｒｄ  ｆｏｒ  ａ  Ｈｉｇｈ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｓｅｒｉａｌ  Ｂｕｓ）」（以下、ＩＥＥＥ１３９４と略記する）がある。
【０００３】
ＩＥＥＥ１３９４は、通常のデータ転送に使用する非同期（Ａｓｙｎｃｈｒｏｎｏｕｓ）転送モードと、所定の時間（例えば１２５マイクロ秒）内にデータ転送されることが保証されている同期（Ｉｓｏｃｈｒｏｎｏｕｓ）転送モードの２種類のデータ転送モードを備えている。例えばマルチメディアシステムでは、転送の時間遅れがあまり問題にならないコマンドの転送に非同期転送モードが用いられ、時間遅れが問題となる動画や音声データなどの転送に同期転送モードが用いられる。
【０００４】
ＩＥＥＥ１３９４バスでは、６４ビットの固定アドレッシングが用いられ、その上位１６ビットが、バス上の機器（ノード）のアドレスを示し、下位４８ビットは各機器内のアドレス空間を示す。上位１６ビットのうちの上位１０ビットはバスＩＤ（ｂｕｓ＿ＩＤ）と呼ばれ、ローカルバス内では全ビットが「１」となる「１０２３」がバスＩＤとして用いられる。上位１６ビットのうちの下位６ビットはノードＩＤ（ｎｏｄｅ＿ＩＤ）と呼ばれ、ＩＥＥＥ１３９４バスに新たな機器が接続されたり、ＩＥＥＥ１３９４バスから機器が取り外されたりする場合に発生するバス・リセット時に、各機器に０から昇順で割り当てられる。非同期転送モードでは、このノードＩＤによって、パケットの転送元と転送先の機器（ノード）が特定される。
【０００５】
ＩＥＥＥ１３９４を搭載するＡＶ機器は、機器ごとに異なる６４ビットのノード・ユニークＩＤ（ｎｏｄｅ＿ｕｎｉｑｕｅ＿ＩＤ）と呼ばれる識別番号を、コンフィグレーションＲＯＭ（Ｃｏｎｆｉｇｕｒａｔｉｏｎ  ＲＯＭ）と呼ばれる機器の情報を格納するメモリ内に持つことが定められている。ＩＥＥＥ１３９４バスに接続されている外部機器は、このコンフィグレーションＲＯＭに格納されている他の機器の情報を非同期転送モードで読み出すことが可能であるため、読み出した機器の情報をＩＥＥＥ１３９４バスに接続されている個々の機器を一意に識別するための情報として用いることができる。
【０００６】
そこで、ノードＩＤとノード・ユニークＩＤ（機器種別）とを対応づけることでＩＥＥＥ１３９４バスに接続されている機器を特定する技術（例えば、特許文献１を参照）や、バス・リセット発生時にノード・ユニークＩＤを取得してＩＥＥＥ１３９４バスに接続されている機器を特定する技術（例えば、特許文献２，３を参照）などが提案されている。
【０００７】
ノードＩＤはパケットの転送アドレスを設定するために用いられるが、バス・リセットの度に同一の機器に対して同一のノードＩＤが割り当てられる保証はない。よって、バス・リセットを跨いで個々の機器を識別し、同一のアプリケーションを継続させるためには、バス・リセット発生の度にバス上に存在する全ての機器のノード・ユニークＩＤを読み出し、ノードＩＤと関連付けて記憶する必要がある。
【０００８】
民生用ＡＶ機器のコンフィグレーションＲＯＭには、ノード・ユニークＩＤの他に、その機器のベンダー名、モデル名などを示すテキストコードなども格納されているので、これらの情報を取得し、オン・スクリーン・ディスプレイ（ＯＳＤ；Ｏｎ  Ｓｃｒｅｅｎ  Ｄｉｓｐｌａｙ）などでユーザーに提示することも可能である。
【０００９】
ところで、ＩＥＥＥ１３９４でＡＶ機器を制御するためのインタフェース仕様に、１３９４ＴＡ（１３９４  Ｔｒａｄｅ  Ａｓｓｏｃｉａｔｉｏｎ）が定めた「ＡＶ／Ｃ・デジタルインタフェース・コマンドセット（Ａｕｄｉｏ／Ｖｉｄｅｏ  Ｃｏｎｔｒｏｌ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ  Ｃｏｍｍａｎｄ  Ｓｅｔ）」（以下、このインタフェース仕様に基づくコマンドを「ＡＶ／Ｃコマンド」と略記する）がある。制御する側のコントローラから制御される側のターゲットに送られるパケットフレームをＡＶ／Ｃコマンドフレーム、逆にターゲットからコントローラに送られるパケットフレームをＡＶ／Ｃレスポンスフレームといい、ＡＶ／Ｃコマンドフレーム／レスポンスフレームの転送には非同期転送モードが使用される。
【００１０】
図５はＡＶ／Ｃコマンドフレームの転送フォーマットを示す図であり、図６はＡＶ／Ｃレスポンスフレーム転送フォーマットを示す図である。ＡＶ／Ｃコマンドフレーム／レスポンスフレームの先頭の「００００」は、このコマンドセットがＡＶ／Ｃコマンドであることを示すＣＴＳコードである。ＡＶ／Ｃコマンドフレームの「ｃｔｙｐｅ」はコマンドタイプを表し、図７に示すような設定値が格納される。「サブユニットタイプ（ｓｕｂｕｎｉｔ＿ｔｙｐｅ）」はサブユニットのタイプを表し、図８に示すように、例えば「ｓｕｂｕｎｉｔ＿ｔｙｐｅ」が「５」の場合「チューナー（Ｔｕｎｅｒ）」を表す。「サブユニットＩＤ（ｓｕｂｕｎｉｔ＿ＩＤ）」は、図９に示すようにサブユニット中の識別番号であり、各サブユニットのうち最大５台までを識別できる。尚、図１０に示すように「ｓｕｂｕｎｉｔ＿ｔｙｐｅ」と「ｓｕｂｕｎｉｔ＿ＩＤ」を合わせてＡＶ／Ｃアドレスという。「ｏｐｃｏｄｅ」は、コマンドの内容を示し、「ｏｐｅｒａｎｄ［０］〜［ｎ］」は「ｏｐｃｏｄｅ」に付帯するパラメータを示す。図１１に示すように、例えば「ｏｐｃｏｄｅ」が「Ｂ２（１６）」で「ｏｐｅｒａｎｄ［０］」が「７０（１６）」の場合、「パワーオン（Ｐｏｗｅｒ）」を表す。また、「ｒｅｓｐｏｎｓｅ（応答）」は、図１２に示すようにコマンドの受け付け状況を表す。
【００１１】
ＩＥＥＥ１３９４バスに接続されているある機器（コントローラ機器）が他の機器（ターゲット機器）の動作を制御しようとする場合、コントローラ機器はＡＶ／Ｃコマンドフレームをターゲット機器に対して送る。コマンドを受信したターゲット機器は、ＡＶ／Ｃコマンドフレームの内容を吟味し、制御内容を受け入れるか否かを示すＡＶ／Ｃレスポンスフレームをコントローラ機器に送る。例えば図１３に示す「パワーオン（Ｐｏｗｅｒ）」を指示するＡＶ／Ｃコマンドフレームをコントローラ機器から受け取ったターゲット機器が、その制御内容を受け入れる場合には、図１４に示すように「ｒｅｓｐｏｎｓｅ」を「ＡＣＣＥＰＴＥＤ（了解）」としたＡＶ／Ｃレスポンスフレームをコントローラ機器に送り、ターゲット機器の状態をパワーオンに遷移させる。逆に、コントローラ機器からの制御内容を受け入れない場合、ターゲット機器は、図１５に示すように「ｒｅｓｐｏｎｓｅ」を「ＲＥＪＥＣＴＥＤ（拒絶）」としたＡＶ／Ｃレスポンスフレームをコントローラ機器に送る。
【００１２】
次に、ＡＶ／Ｃコマンドで使用されるユニットとサブユニットについて説明する。ユニットとはひとつのＡＶ機器を示し、サブユニットはそのＡＶ機器内に存在する機能単位を表す。例えば、図１６に示すように、テープレコーダ／プレイヤー２１ｃとアナログチューナー２２ｃとを併せ持つＶＣＲ２０ｃの場合、ＶＣＲ２０ｃがユニットで、テープレコーダ／プレイヤー２１ｃとアナログチューナー２２ｃがサブユニットとなる。ＡＶ／Ｃコマンドは、ユニットまたはサブユニットに対して送ることが可能である。
【００１３】
例えば、コントローラ機器から
「ｓｕｂｕｎｉｔ＿ｔｙｐｅ」＝「１Ｆ（１６）（ｕｎｉｔ）」，
「ｓｕｂｕｎｉｔ＿ＩＤ」＝「７（ｉｇｎｏｒｅ）」，
「ｏｐｃｏｄｅ」＝「Ｂ２（１６）」，
「ｏｐｅｒａｎｄ」＝「７０（１６）」としたＡＶ／ＣコマンドをＶＣＲ２０ｃに送ると、ＶＣＲ２０ｃ全体がパワーオンとなる。
【００１４】
一方、コントローラ機器から
「ｓｕｂｕｎｉｔ＿ｔｙｐｅ」＝「５（１６）（ｔｕｎｅｒ）」，
「ｓｕｂｕｎｉｔ＿ＩＤ」＝「０（Ｓｕｂｕｎｉｔ  Ｉｎｓｔａｎｃｅ  ｎｕｍｂｅｒ）」，
「ｏｐｃｏｄｅ」＝「Ｂ２（１６）」，
「ｏｐｅｒａｎｄ」＝「７０（１６）」としたＡＶ／ＣコマンドをＶＣＲ２０ｃに送ると、ＶＣＲ２０ｃの中のテープレコーダ／プレイヤー２１ｃ（「ｓｕｂｕｎｉｔ＿ＩＤ」＝「０」であるサブユニット）がパワーオンとなる。
【００１５】
ターゲット機器がそのユニット内にどのようなサブユニットを備えているかをコントローラ機器が確認するためのＡＶ／Ｃコマンドとして、「ＳＵＢＵＮＩＴ  ＩＮＦＯ」コマンドがある。この「ＳＵＢＵＮＩＴ  ＩＮＦＯ」コマンドを受信したターゲット機器は、自機器（ユニット）内に含まれるサブユニットの種類とその数をＡＶ／Ｃレスポンスフレームでコントローラ機器に伝える。図１７に「ＳＵＢＵＮＩＴ  ＩＮＦＯ」コマンドのＡＶ／Ｃコマンドフレームの例を示し、図１７の「ＳＵＢＵＮＩＴ  ＩＮＦＯ」コマンド対するＡＶ／Ｃレスポンスフレームの例を図１８及び図１９に示す。図１８のＡＶ／Ｃレスポンスフレームは、図１６に示したサブユニット構成を持つターゲット機器のレスポンス例である。
【００１６】
ＡＶ／Ｃコマンドフレーム／レスポンスフレームの「ｏｐｅｒａｎｄ［１］〜［４］」には、サブユニットタイプとそのサブユニットの最大ＩＤを設定する。図１９に示した例において、「ｏｐｅｒａｎｄ［１］」では、サブユニットとして「チューナー（５）」を備え、その最大ＩＤが「２」であることを示している。「ｏｐｅｒａｎｄ［２］」では、サブユニットとして「テープレコーダ／プレイヤー（４）」を備え、その最大ＩＤが「１」であることを示している。「ｏｐｅｒａｎｄ［３］〜［４］」には、それ以外のサブユニットを備えていないことを示すために、無効値「ＦＦ（１６）」が設定されている。つまり、図１９に示す例では、チューナーを３つと、テープレコーダ／プレイヤーを２つ備えたターゲット機器を表している。
【００１７】
尚、図１７〜図１９における「ｏｐｅｒａｎｄ［０］」の「ｐａｇｅ」は、このコマンド構造において「ｏｐｅｒａｎｄ［１］〜［４］」で最大４種類のサブユニットの情報しか転送できないことを補うために用意されている仕組みで、５種類以上のサブユニットを持つ可能性のあるユニットに対しては、この「ｐａｇｅ」を指定して次のサブユニット情報を読み出すことが可能となっている。
【００１８】
ターゲット機器がどのような種類のユニットであるかによって、それを制御するアプリケーションは異なる。よって、コントローラ機器がターゲット機器を制御するアプリケーションを実行する前に、コントローラ機器はターゲット機器がどのような種別の機器であるかを認識する必要がある。また、ユーザーが、ＩＥＥＥ１３９４バスに接続されているターゲット機器の中から、所望の制御対象機器を選択するための情報として、このＡＶ／Ｃレスポンスフレームを利用することもできる。
【００１９】
ＩＥＥＥ１３９４バスに新たなターゲット機器が接続されるとバス・リセットが発生するため、ＩＥＥＥ１３９４では、通常、バス・リセット終了後に接続されたターゲット機器の種別を認識する処理を行う。
【００２０】
図２０は、コントローラ機器がターゲット機器の機器種別を認識する処理手順の一例を示すフローチャートである。
【００２１】
まず、コントローラ機器がバス・リセット発生を検出すると（ステップＳ２１）、コントローラ機器は機器を一意に識別可能なノード・ユニークＩＤをＩＥＥＥ１３９４バス上の全てのターゲット機器から読み出し（ステップＳ２２）、新たなターゲット機器がＩＥＥＥ１３９４バスに接続されたか否かを判別する（ステップＳ２３）。判別の結果、新たなターゲット機器がＩＥＥＥ１３９４バスに接続されていない場合、処理を終了する。逆に、新たなターゲット機器がＩＥＥＥ１３９４バスに接続されたと判別した場合、コントローラ機器は、新たなターゲット機器、つまり機器種別を未だ取得していないターゲット機器に対し、その機器のコンフィグレーションＲＯＭを読み出し、ベンダー名やモデル名などの情報を取得する（ステップＳ２４）。更に、コントローラ機器は「ＳＵＢＵＮＩＴ  ＩＮＦＯ」コマンドをターゲット機器に送り、ターゲット機器（ユニット）内に含まれるサブユニットの情報を取得する（ステップＳ２５）。
【００２２】
そして、新たなターゲット機器の機器種別を決定するために、ステップＳ２５において取得した各サブユニットに対し、以下のステップＳ２６からＳ２８を繰り返す。通常、「ＳＵＢＵＮＩＴ  ＩＮＦＯ」コマンドのレスポンスフレームの先頭（ｏｐｅｒａｎｄ［１］）に記述されたサブユニットのうち、サブユニットＩＤが「０」であるサブユニットからサブユニットＩＤの昇順にサブユニットの詳細情報を取得する。
【００２３】
ステップＳ２７において、コントローラ機器はサブユニットの詳細な識別を行う。この詳細な識別は、サブユニットのサブユニットタイプと、それを制御するアプリケーションが存在するか否かによって変動する。例えば、サブユニットがテープレコーダ／プレイヤーサブユニットなら、Ｄ−ＶＨＳタイプとＤＶタイプとではアプリケーションによる制御方式が異なるので、そのサブユニットの詳細識別をテープレコーダ／プレイヤーサブユニットに対して行う。また、チューナーサブユニットを制御対象としないのであれば、そのサブユニットの詳細識別は行わないなどのコントローラ機器の判断基準も考えられる。
【００２４】
ステップＳ２８において、コントローラ機器は、サブユニットタイプに加えて、ステップＳ２７で取得したサブユニットの詳細識別情報を用いて、サブユニットの種別を決定する。例えば、コントローラ機器は、テープレコーダ／プレイヤーサブユニットが、Ｄ−ＶＨＳタイプと詳細識別されたのであれば、そのサブユニットの種別を「Ｄ−ＶＨＳ」とし、ＤＶタイプと詳細識別されたのであれば、そのサブユニットの種別を「ＤＶ」とする。また、チューナーサブユニットが制御対象でないのであれば、コントローラ機器はチューナーサブユニットを「制御対象外」とする。図１６に示したサブユニット構成を持つＶＣＲ２０ｃに対しては、テープレコーダ／プレイヤー２１ｃを１つと、アナログチューナー２２ｃを１つ備えているため、コントローラ機器はステップＳ２６からステップＳ２８の処理を２回繰り返すことになる。
【００２５】
コントローラ機器は、ステップＳ２５からステップＳ２８の処理で取得したサブユニット情報に基づいて、ステップ９において、新たなターゲット機器の機器種別を決定し、ステップＳ２３に戻る。
【００２６】
コントローラ機器は、以上のステップＳ２３からステップＳ２９の各処理を新たにバスに接続されたターゲット機器の数だけ繰り返し、全てのターゲット機器の機器種別を決定すると、処理が終了となる。
【００２７】
図２２は、上記ステップＳ２９における機器種別の決定処理の一例を示すフローチャートである。
【００２８】
まず、コントローラ機器は、ステップＳ２８で詳細識別したサブユニットのうち最初のサブユニットを選択し（ステップＳ３１）、選択したサブユニットの種別が制御対象のものであるか否かを判定する（ステップＳ３２）。ここで「制御対象であるか否か」という判断は、コントローラ機器がその選択したサブユニットに対応する制御アプリケーションを実装しているか否かを判断基準にする。例えば、選択したサブユニットの種別が「ＤＶ」タイプのテープレコーダ／プレイヤーサブユニットで、コントローラ機器が「ＤＶ」タイプのテープレコーダ／プレイヤーサブユニットに対するアプリケーションを実装しているのであれば、コントローラ機器は、選択したそのサブユニットが制御対象であると判断する。
【００２９】
ステップＳ３２の判定において、選択したサブユニットを制御対象と判断した場合、コントローラ機器は、ステップＳ３６において、制御対象と判断したサブユニットの種別を、ターゲット機器（ユニット）の種別として設定する。
【００３０】
ステップＳ３２の判定において、そのサブユニットは制御対象ではないと判断した場合、コントローラ機器は、ステップＳ３３において、選択したサブユニットが最後のサブユニットであるか否かを判定する。最後のサブユニットでない場合には、コントローラ機器は次のサブユニットを選択し（ステップＳ３４）、ステップＳ３２に戻る。ステップＳ３３の判定の結果、最後のサブユニットである場合には、ターゲット機器（ユニット）の種別を「制御対象外」に設定する（ステップＳ３５）。
【００３１】
コントローラ機器は、以上のステップＳ３２からステップＳ３４の処理を制御対象のサブユニットが見つかるまで繰り返し、制御対象のサブユニットが見つかった場合、それをターゲット機器（ユニット）の種別として登録する。
【００３２】
例えば、図１６に示したサブユニット構成を備えたＶＣＲ２０ｃに対して、テープレコーダ／プレイヤー２１ｃが「Ｄ−ＶＨＳ」タイプのサブユニットと認識され、アナログチューナー２２ｃが「制御対象外」と認識されていたものとし、コントローラ機器が「Ｄ−ＶＨＳ」タイプのサブユニットを制御対象とすると、この場合、コントローラ機器は、最初のサブユニットである「Ｄ−ＶＨＳ」タイプのテープレコーダ／プレイヤー２１ｃが制御対象であると判断し、ＶＣＲ２０ｃ機器種別は「Ｄ−ＶＨＳ」に設定される。
【００３３】
コントローラ機器は、認識されたターゲット機器の機器識別（Ｄ−ＶＨＳ、ＤＶ、チューナーなど）に基づいて、対応するアプリケーションを選択し、ＡＶ／Ｃコマンドを用いてターゲット機器を制御することができる。
【００３４】
また、コントローラ機器が、図２１に示すように、認識されたターゲット機器の機器識別を、コンフィグレーションＲＯＭから取得したベンダー名やモデル名などの情報と共にＯＳＤなどに表示することにより、表示された情報を制御対象のターゲット機器を選択するための情報としてユーザーが用いることもできる。
【００３５】
【特許文献１】
特開平１０−１７３６８８号公報
【００３６】
【特許文献２】
特開２０００−３５８０４５号公報
【００３７】
【特許文献３】
特開２００１−００７８３０号公報
【００３８】
【発明が解決しようとする課題】
ところで、１つのターゲット機器に複数のサブユニットが含まれている場合、全てのサブユニットに対応するアプリケーションをコントローラ機器が実装しているとは限らない。例えば、図１６に示したサブユニット構成を備えるＶＣＲ２０ｃをターゲットとする場合、アナログチューナー２２ｃはＩＥＥＥ１３９４のＡＶ／Ｃコマンドで制御することが通常はできないため、アナログチューナー２２ｃのサブユニットは制御対象と判断する必要がない。従って、コントローラ機器は、ＶＣＲ２０ｃが備えるサブユニットのうちテープレコーダ／プレイヤー２１ｃのみを制御対象と判断するだけで良かった。
【００３９】
従来、コントローラ機器が制御可能なサブユニットが複数含まれているようなターゲット機器は存在しなかったため、ターゲット機器の機器種別を決定する際に、ターゲット機器（ユニット）内に複数のサブユニットが含まれていたとしても、図２２で示したように、コントローラ機器は、複数のサブユニットのうち最初に見つかった制御対象のサブユニットを選択し、選択したサブユニットの詳細種別をターゲット機器（ユニット）の種別として決定し、それに対応するアプリケーションを実行することで問題はなかった。例えば、図１６に示したようなサブユニット構成を備えたＶＣＲ２０ｃの場合、最初に見つかった制御対象のサブユニットであるＤ−ＶＨＳタイプのテープレコーダ／プレイヤー２１ｃを選択し、そのサブユニットの詳細種別である「Ｄ−ＶＨＳ」をＶＣＲ２０ｃ（ユニット）の種別とすることで、問題が生じることはなかった。
【００４０】
ところが、このような最初に見つかった制御対象のサブユニットを選択して、それを固定的に機器の種別とする方法では、例えば、図１９に示したような「ＳＵＢＵＮＩＴ  ＩＮＦＯ」ＡＶ／Ｃコマンドのレスポンスを返すターゲット機器を制御する場合に問題が生じる。コントローラ機器が「Ｄ−ＶＨＳ」タイプと「ＤＶ」タイプのサブユニットを制御対象とするアプリケーションを両方とも実装しているとすると、図１９のようなサブユニットを持つ機器に対しては、まず、チューナーサブユニットのＩＤ＝０から制御対象であるかを判断し、例えば３つのチューナーサブユニットはいずれも制御対象ではないと判断される。次に、テープレコーダ／プレイヤーサブユニットのサブユニットＩＤが「０」であるサブユニットが「ＤＶ」であり、サブユニットＩＤが「１」であるサブユニットが「Ｄ−ＶＨＳ」であったとすると、コントローラ機器は、最初に見つかった制御対象のサブユニットである、サブユニットＩＤが「０」である「ＤＶ」のサブユニットを選択し、この「ＤＶ」をターゲット機器であるＶＣＲ２０ｃの機器種別として登録することになる。
【００４１】
この場合、コントローラ機器は、サブユニットＩＤが「１」である「Ｄ−ＶＨＳ」タイプのサブユニットの存在をユーザーに提示することもできないし、またそのサブユニットを選択することもできないので、「Ｄ−ＶＨＳ」タイプのサブユニットを制御するアプリケーションを起動することもできない。
【００４２】
本発明は、このような課題を解決するためになされたものであり、制御対象のサブユニットを複数備えるターゲット機器に対し、従来のユーザーインタフェースを変更することなく、所望のサブユニットを制御できるコントローラ機器、コントローラ機器による制御方法及び制御プログラムを提供することを目的とする。
【００４３】
【課題を解決するための手段】
本発明に係るコントローラ機器の特徴は、シリアルバス・インターフェースを有するコントローラ機器において、（ａ）シリアルバス・インターフェースを介して認識されるターゲット機器に含まれる各サブユニットに対して優先度を設定する優先度設定部と、（ｂ）各サブユニットのうち優先度が最も高く設定されたサブユニットを選択する機器種別決定部と、（ｃ）選択されたサブユニットをターゲット機器の機器種別としてユーザーに提示する機器種別提示部とを備えることにある。
【００４４】
また、本発明に係るコントローラ機器による制御方法は、シリアルバス・インターフェースを有するコントローラ機器によるターゲット機器に対する制御方法であって、（ａ）シリアルバス・インターフェースを介して認識されるターゲット機器に含まれる各サブユニットに対して優先度設定部により優先度を設定する段階と、（ｂ）各サブユニットのうち優先度が最も高く設定されたサブユニットを機器種別決定部により選択する段階と、（ｃ）選択されたサブユニットをターゲット機器の機器種別として機器種別提示部によりユーザーに提示する段階とを含むことにある。
【００４５】
また、本発明に係るコントローラ機器による制御プログラムは、シリアルバス・インターフェースを有するコントローラ機器によるターゲット機器に対する制御プログラムであって、（ａ）シリアルバス・インターフェースを介して認識されるターゲット機器に含まれる各サブユニットに対して優先度設定部により優先度を設定するステップと、（ｂ）各サブユニットのうち優先度が最も高く設定されたサブユニットを機器種別決定部により選択するステップと、（ｃ）選択されたサブユニットをターゲット機器の機器種別として機器種別提示部によりユーザーに提示するステップとをコントローラ機器に実行させることにある。
【００４６】
また、上記優先度設定部において、優先度をユーザーが設定できるユーザーインタフェースを有するように構成することもできる。
【００４７】
このような構成によれば、制御対象のサブユニットを複数備えるターゲット機器に対し、従来のインタフェースを変更することなく、所望のサブユニットを制御可能とすることができる。
【００４８】
【発明の実施の形態】
以下、図面を参照して、本発明の実施の形態について詳しく説明する。尚、各図面を通じて同一もしくは同等の部位や構成要素には、同一もしくは同等の参照符号を付し、その説明を省略もしくは簡略化する。
【００４９】
図１は、ＩＥＥＥ１９３４バス３０に接続されたコントローラ機器１０とターゲット機器２０ａ，２０ｂの構成例を示す図である。
【００５０】
コントローラ機器１０は、シリアルバス・インターフェースを介して認識されるターゲット機器２０ａに含まれる各サブユニット２１ａ〜２５ａ，ターゲット機器２０ｂ含まれる各サブユニット２１ｂ〜２４ｂに対して優先度を設定する優先度設定部１２、各サブユニットのうち優先度が最も高く設定されたサブユニットを選択する機器種別決定部１３、選択されたサブユニットをターゲット機器２０ａ，２０ｂの機器種別としてユーザーに提示する機器種別提示部１４、優先度設定部１２にて設定された優先度を記憶する優先度記憶部１５、上記各部を制御する制御部１１などを備える。
【００５１】
ターゲット機器２０ａは、チューナーサブユニットとして衛星デジタルチューナー２１ａ（サブユニットＩＤ＝「０」）、地上波デジタルチューナー２２ａ（サブユニットＩＤ＝「１」）、アナログチューナー２３ａ（サブユニットＩＤ＝「２」）を備え、テープレコーダ／プレイヤーサブユニットとしてＤＶレコーダ２４ａ（サブユニットＩＤ＝「０」）とＤ−ＶＨＳレコーダ２５ａ（サブユニットＩＤ＝「１」）を備えている。
【００５２】
ターゲット機器２０ｂは、チューナーサブユニットとしてアナログチューナー２１ｂ（サブユニットＩＤ＝「０」）を備え、テープレコーダ／プレイヤーサブユニットとしてＤＶレコーダ２２ｂ（サブユニットＩＤ＝「０」）とＤ−ＶＨＳレコーダ２３ｂ（サブユニットＩＤ＝「１」）、ディスクサブユニットとしてハードディスクレコーダ２４ｂ（サブユニットＩＤ＝「０」）を備えている。
【００５３】
コントローラ機器１０は、ターゲット機器２０ａ，２０ｂ内に含まれる各サブユニット２１ａ〜２５ａ，２１ｂ〜２４ｂの詳細識別結果として得られるサブユニットの種別に対して、制御対象としての必要性に応じた優先度を優先度設定部１２にて設定し、設定した優先度が最も高いサブユニットの種別を各ターゲット機器２０ａ，２０ｂの種別として機器種別決定部１３にて決定し、例えばＯＳＤ等の機器種別提示部１４によりユーザーに提示する。また、優先度設定部１２において、優先度をユーザーが設定できるようなユーザーインタフェースを設ける。
【００５４】
図２は、優先度設定部１２における、サブユニット種別に対する優先度設定画面４０の一例である。このような優先度設定画面４０をユーザーに対して表示する。ユーザーは、例えばマウスポインタ４４などにより、優先度を設定したいサブユニット種別４１を選択し、優先度設定ボタン４２，４３により、選択したサブユニット種別４１（図２に示す例では、Ｄ−ＶＨＳレコーダ（サブユニットＩＤ＝「１」）が選択されている）の優先度を高く、あるいは低く設定する。例えば、図１に示すように、ＤＶレコーダ２４ａとＤ−ＶＨＳレコーダ２５ａの２つのテープレコーダ／プレイヤーサブユニットを備えるターゲット機器２０ａをユーザーが既に所有しているため、ＤＶレコーダ２４ａとＤ−ＶＨＳレコーダ２３ｂの２つのテープレコーダ／プレイヤーサブユニットとハードディスクレコーダ２４ｂとを備えるターゲット機器２０ｂについては、「ハードディスクレコーダ」として使用したいと考える場合には、ターゲット機器２０ｂのハードディスクレコーダ２４ｂの優先度を他のサブユニット（２１ｂ〜２３ｂ）よりも高く設定することで、ターゲット機器２０ｂの機器種別を「ハードディスクレコーダ」と設定することができる。尚、図２に示す例では、優先度の数字が小さいほど優先度が高いものとしているが、優先度を示す符号はこれに限らない。
【００５５】
また、優先度設定部１２におけるサブユニット種別に対する優先度の設定をユーザーに設定させるようにするだけでなく、例えば、コントローラ機器１０がデジタルチューナーである場合に、その放送を記録機器に録画するアプリケーションを良く使用することが想定されるため、例えば、ターゲット機器２０ａのＤ−ＶＨＳレコーダ２５ａが最も優先度が高くなるように、コントローラ機器１０自身が優先度を設定することもできる。
【００５６】
図３は、コントローラ機器１０が実行する機器種別決定の処理手順を例示するフローチャートである。尚、図３に示す処理手順をコンピュータプログラムとして磁気的あるいは光学的記録媒体に格納しコントローラ機器１０に読み込ませる、もしくは伝送媒体を介してコントローラ機器１０に供給することもできる。コントローラ機器１０の制御部１１は、記録媒体もしくは伝送媒体を介して供給される上記コンピュータプログラムに基づいて、コントローラ機器１０内の各部を制御し、以下に示す処理を実行する。
【００５７】
予め、コントローラ機器１０は、ターゲット機器（例えばターゲット機器２０ａ）に「ＳＵＢＵＮＩＴ  ＩＮＦＯ」コマンドを発行し、ターゲット機器の各サブユニットの詳細情報を取得しておく。
【００５８】
まず、優先度設定部１２は、ターゲット機器（例えばターゲット機器２０ａ）の各サブユニット２１ａ〜２５ａのうち、選択すべきサブユニット（例えば、Ｄ−ＶＨＳレコーダ２５ａ）の種別の優先度を最高ランクに設定する（ステップＳ０１）。
【００５９】
次に、機器種別決定部１３は、「ＳＵＢＵＮＩＴ  ＩＮＦＯ」コマンドに対するレスポンスにより識別したサブユニットのうち最初のサブユニットを選択し（ステップＳ０２）、選択したサブユニットの種別が、選択すべき優先度のものであるかを判定する（ステップＳ０３）。
【００６０】
ステップＳ０３の判定の結果、選択したサブユニットの種別が選択すべき優先度のものであると判断した場合、ステップＳ０７において、選択したサブユニットの種別をターゲット機器（ユニット）の機器種別として設定する。
【００６１】
逆に、ステップＳ０３の判定の結果、選択したサブユニットの種別が選択すべき優先度のものではないと判断した場合、次に、ステップＳ０４において、機器種別決定部１３は選択したサブユニットが最後のサブユニットであるか否かを判定する。判定の結果、最後のサブユニットでない場合には、機器種別決定部１３は次のサブユニットを選択し（ステップＳ０５）、ステップＳ０３に戻る。
【００６２】
ステップＳ０４の判定の結果、選択したサブユニットが最後のサブユニットであった場合には、機器種別決定部１３は、選択すべきサブユニット種別の優先度を１ランク下げ（ステップＳ０６）、ステップＳ０２に戻る。
【００６３】
機器種別決定部１３は、このステップＳ０３からステップＳ０５の各処理により、当該優先度のサブユニット種別が見つかるまで各サブユニットを順に検索する。見つからない場合は、機器種別決定部１３は、優先度を下げ、もう一度最初のサブユニットから検索を繰り返す。
【００６４】
以上の処理により、機器種別決定部１３は、ターゲット機器に含まれるサブユニットの中で優先度の最も高いサブユニットの種別を、ターゲット機器の機器種別として登録することになる。
【００６５】
ここで、図１に示したターゲット機器２０ａに対して、図３に示した機器種別決定処理をコントローラ機器１０が実行する例を以下に示す。
【００６６】
まず、ステップＳ０１において、優先度設定部１２は、図２に示すような優先度を設定し、最高ランクの優先度の「Ｄ−ＶＨＳレコーダ」を選択対象とする。
【００６７】
ステップＳ０２において、機器種別決定部１３は、「ＳＵＢＵＮＩＴ  ＩＮＦＯ」コマンドのレスポンスの先頭に格納されているチューナーサブユニットのうちサブユニットＩＤ＝「０」の衛星デジタルチューナー２１ａから判定を開始する。
【００６８】
ステップＳ０３において、機器種別決定部１３は、このサブユニット（衛星デジタルチューナー２１ａ）の優先度は現在選択対象のサブユニットの優先度より低いと判定する。
【００６９】
ステップＳ０４において、衛星デジタルチューナー２１ａは、ターゲット機器２０ａの中の最後サブユニットではないため、次に、ステップＳ０５において、機器種別決定部１３は、次のチューナーサブユニットであるサブユニットＩＤ＝「１」の地上波デジタルチューナー２２ａを選択し、再びステップＳ０３の判定に戻る。
【００７０】
機器種別決定部１３はこの判定を、サブユニットＩＤ＝「０」のチューナーサブユニット、サブユニットＩＤ＝「１」のチューナーサブユニット、サブユニットＩＤ＝「２」のチューナーサブユニット、サブユニットＩＤ＝「０」のテープレコーダ／プレイヤーサブユニット、サブユニットＩＤ＝「１」のテープレコーダ／プレイヤーサブユニットの順に行い、サブユニットＩＤ＝「１」のテープレコーダ／プレイヤーサブユニットである「Ｄ−ＶＨＳレコーダ２５ａ」が選択された段階で、ステップＳ０３の判定結果は「Ｙｅｓ」となり、機器種別決定部１３は、Ｄ−ＶＨＳレコーダ２５ａの詳細種別である「Ｄ−ＶＨＳ」をターゲット機器２０ａの機器種別として決定する。
【００７１】
図４に機器種別提示画面５０の例を示すように、決定された機器種別はＯＳＤとしてユーザーに提示するなどして、ユーザーが制御対象の機器を選択するための情報として用いることができる。それと同時に、コントローラとしては、このターゲットに対して「Ｄ−ＶＨＳ」用のアプリケーションを対応付けることにより、シリアルインターフェースを介して、ユーザーからの指示によりターゲットを制御することが可能となる。
【００７２】
また、ユーザーが、例えば、ターゲット機器２０ａを地上波デジタルチューナー２２ａとして使用したいと考え、図２の優先度設定画面４０で地上波デジタルチューナー２２ａの優先度を最高ランクの設定した場合には、サブユニットＩＤ＝「１」のチューナーサブユニット（地上波デジタルチューナー２２ａ）が選択された段階で、ステップＳ０３の判定結果が「Ｙｅｓ」となり、機器種別決定部１３は、ターゲット機器２０ａの機器種別を「地上波デジタルチューナー」に設定することになり、ターゲット機器２０ａを地上波デジタルチューナーとして使用することができる。
【００７３】
以上、説明したように、本実施形態におけるコントローラ機器１０によれば、優先度設定部１２において制御対象として必要性が高いか否かによる優先度をサブユニット種別毎に設定し、機器種別決定部１３においてターゲット機器２０ａ，２０ｂ内に含まれる複数のサブユニットの中から優先度が最も高いサブユニットの種別をターゲット機器２０ａ，２０ｂの機器種別として決定することで、従来のインタフェース（ＡＶ／Ｃコマンドフレーム／レスポンスフレームなど）を変更せずに、所望のサブユニットを制御可能とすることができる。つまり、複数の制御可能なサブユニットを備えるターゲット機器２０ａ，２０ｂに対して、コントローラ機器１０は、最適なサブユニットをターゲット機器２０ａ，２０ｂの機器種別とすることができ、その機器種別に対応するアプリケーションを選択してターゲット機器２０ａ，２０ｂを制御することができる。また、上記優先度をユーザーが設定できるユーザーインタフェースを優先度設定部１２に設けることにより、ユーザーが希望するサブユニットを制御することができる。
【００７４】
以上、本発明の実施の形態について詳細に説明したが、本発明は、その精神または主要な特徴から逸脱することなく、他の色々な形で実施することができる。
【００７５】
例えば、図１に示した構成例において、コントローラ機器１０はターゲット機器としても機能させることもできるし、一方でターゲット機器２０ａ，２０ｂはコントローラ機器にもなり得る。
【００７６】
前述の実施例はあらゆる点で単なる例示に過ぎず、限定的に解釈してはならない。本発明の範囲は、特許請求の範囲によって示すものであって、明細書本文には何ら拘束されない。更に、特許請求の範囲の均等範囲に属する変形や変更は、全て本発明の範囲内のものである。
【００７７】
【発明の効果】
本発明によれば、制御対象のサブユニットを複数備えるターゲット機器に対し、従来のインタフェースを変更することなく、所望のサブユニットを制御できるコントローラ機器、コントローラ機器による制御方法及び制御プログラムを提供することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態におけるコントローラ機器とターゲット機器の構成を示す概略ブロック図である。
【図２】図１に示すコントローラ機器の優先度設定部における優先度設定画面の一例を示す図である。
【図３】図１に示すコントローラ機器の機器種別決定部における機器種別決定の処理手順を例示するフローチャートである。
【図４】図１に示すコントローラ機器の機器種別提示部における機器種別提示画面の一例を示す図である。
【図５】ＡＶ／Ｃコマンドフレームの転送フォーマットを示す図である。
【図６】ＡＶ／Ｃレスポンスフレームの転送フォーマットを示す図である。
【図７】図５に示すＡＶ／Ｃコマンドフレームにおけるコマンドタイプの設定値を示す図である。
【図８】図５に示すＡＶ／Ｃコマンドフレーム及び図６に示すＡＶ／Ｃレスポンスフレームにおけるサブユニットタイプの設定値を示す図である。
【図９】図５に示すＡＶ／Ｃコマンドフレーム及び図６に示すＡＶ／ＣレスポンスフレームにおけるサブユニットＩＤの設定値を示す図である。
【図１０】図５に示すＡＶ／Ｃコマンドフレーム及び図６に示すＡＶ／ＣレスポンスフレームにおけるＡＶ／Ｃアドレスのフォーマットを示す図である。
【図１１】図５に示すＡＶ／Ｃコマンドフレーム及び図６に示すＡＶ／Ｃレスポンスフレームにおけるオペランドの設定値を示す図である。
【図１２】図６に示すＡＶ／Ｃレスポンスフレームにおけるレスポンスの設定値を示す図である。
【図１３】「パワーオン」を指示するＡＶ／Ｃコマンドフレーム（ＣＯＮＴＲＯＬ）の一例を示す図である。
【図１４】図１３に示すＡＶ／Ｃコマンドに対するＡＶ／Ｃレスポンスフレーム（ＡＣＣＥＰＴＥＤ）の一例を示す図である。
【図１５】図１３に示すＡＶ／Ｃコマンドに対するＡＶ／Ｃレスポンスフレーム（ＲＥＪＥＣＴＥＤ）の一例を示す図である。
【図１６】複数のサブユニットを備えた機器（ユニット）の一例を示す図である。
【図１７】サブユニット情報の取得を指示するＡＶ／Ｃコマンドフレーム（ＳＵＢＵＮＩＴ  ＩＮＦＯ）の一例を示す図である。
【図１８】図１７に示すＡＶ／Ｃコマンドに対するＡＶ／Ｃレスポンスフレーム（ＳＴＡＢＬＥ）の一例を示す図である。
【図１９】図１７に示すＡＶ／Ｃコマンドに対するＡＶ／Ｃレスポンスフレーム（ＳＴＡＢＬＥ）の別の例を示す図である。
【図２０】一般的なコントローラ機器における機器種別決定の処理手順を例示するフローチャートである。
【図２１】ターゲット機器の機器種別を提示するＯＳＤを例示する図である。
【図２２】図２０に示す機器種別決定処理の詳細な処理手順を例示するフローチャートである。
【符号の説明】
１０…コントローラ機器
１１…制御部
１２…優先度設定部
１３…機器種別決定部
１４…機器種別提示部
１５…優先度記憶部
２０ａ，２０ｂ…ターゲット機器
２０ｃ…ＶＣＲ
２１ａ…衛星デジタルチューナー
２１ｂ…アナログチューナー
２１ｃ…テープレコーダ／プレイヤー
２２ａ…地上波デジタルチューナー
２２ｂ…ＤＶレコーダ
２２ｃ…アナログチューナー
２３ａ…アナログチューナー
２３ｂ…Ｄ−ＶＨＳレコーダ
２４ａ…ＤＶレコーダ
２４ｂ…ハードディスクレコーダ
２５ａ…Ｄ−ＶＨＳレコーダ
３０…ＩＥＥＥ１９３４バス
４０…優先度設定画面
４１…サブユニット種別
４２，４３…優先度設定ボタン
４４…マウスポインタ
５０…機器種別提示画面
【図１】
2004320517.tif 000003
【図２】
2004320517.tif 000004
【図３】
2004320517.tif 000005
【図４】
2004320517.tif 000006
【図５】
2004320517.tif 000007
【図６】
2004320517.tif 000008
【図７】
2004320517.tif 000009
【図８】
2004320517.tif 000010
【図９】
2004320517.tif 000011
【図１０】
2004320517.tif 000012
【図１１】
2004320517.tif 000013
【図１２】
2004320517.tif 000014
【図１３】
2004320517.tif 000015
【図１４】
2004320517.tif 000016
【図１５】
2004320517.tif 000017
【図１６】
2004320517.tif 000018
【図１７】
2004320517.tif 000019
【図１８】
2004320517.tif 000020
【図１９】
2004320517.tif 000021
【図２０】
2004320517.tif 000022
【図２１】
2004320517.tif 000023
【図２２】
2004320517.tif 000024