(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0017】
本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係るリモートコントロールシステムは、
図1に例示するように、リモートコントロール装置10と、対象機器20とを含んで構成され、これらは互いに、無線ネットワークシステム30を介して通信を行う。本実施の形態において対象機器20は、リモートコントロール装置10からの指示を受け入れて動作するものであり、ハードディスクレコーダや、いわゆるネットワークチューナー(テレビ信号等を受信して動画像データとして出力する機器)、あるいは画像表示装置であってもよい。また、この対象機器20は、NAS(Network Attached Storage)等のコンピュータ周辺機器や、ホームコントローラ(家電機器を制御する装置)であってもよい。例えばNAS等が提供する設定用のウェブページを表示するブラウザを、リモートコントロール装置10から制御するようにしてもよい。
【0018】
ここで無線ネットワークシステム30は、
図1に示したように、無線LAN(Local Area Network)アクセスポイントAPと、有線LANとを含んで構成される。本実施の形態では、リモートコントロール装置10が無線LANアクセスポイントAPとの間で無線にて通信を行い、無線LANアクセスポイントAPが有線LANに接続された対象機器20に対してリモートコントロール装置10から受信した、対象機器20宛の情報を送出する。また無線LANアクセスポイントAPは、対象機器20からリモートコントロール装置10宛の情報を有線LANを介して受信し、無線にてリモートコントロール装置10宛に送出する。なお、本実施の形態において通信回線の態様はここで例示した態様に限られず、例えば対象機器20もまた、無線にて、無線LANアクセスポイントAPとの間で通信を行っても構わない。さらに、通信回線の態様としては、リモートコントロール装置10が携帯電話回線網のデータ通信ネットワークと通信し、対象機器20の接続されているネットワークに例えばVPN(Virtual Private Network)を介してアクセスし、対象機器20に対して情報を送出してもよい。また、ここでは無線LANアクセスポイントAPを介する例としているが、リモートコントロール装置10と対象機器20とが無線LANにより直接通信を行ってもよい。さらに無線LANに代えて、ブルートゥース(登録商標)等の無線通信方式を用いてリモートコントロール装置10と対象機器20との間の通信が行われてもよい。
【0019】
リモートコントロール装置10は、例えばスマートフォン等の携帯端末であり、制御部11、記憶部12、操作部13、表示部14、及び通信部15を含んで構成される。また対象機器20は、通信部21と、機能部22とを基本的に含んで構成される。
【0020】
リモートコントロール装置10の制御部11は、CPU等のプログラム制御デバイスであり、記憶部12に格納されたプログラムに従って動作する。本実施の形態では、この制御部11はリモートコントロール装置としての機能を実現するための処理を行う。すなわち制御部11は、対象機器20の操作に係るコマンドを、遠隔(対象機器20から離れた場所)から無線にて送出する。具体的にこの制御部11は、利用者から複数の操作要素を含んだ一連の操作指示を受け入れ、当該受け入れた個々の操作要素に対応するコマンドを、対象機器20に対して無線にて送出する。また、制御部11は送出したコマンドごとのレスポンスを対象機器20から受信し、コマンドの送出履歴を、対象機器20からレスポンスを受信したか否かを表す情報に関連付けて保持する。そして当該保持された送出履歴において、レスポンスの受信がない旨を表す送出履歴が予め定めた数以上続く場合に、当該レスポンスの受信がない旨を表す情報に関連付けられたコマンドの列を再送候補リストとして提示する。制御部11は、利用者がこの再送候補リストに含まれるコマンドのうちから再送の指示を行うと、当該再送の指示があったコマンドを再送する。この制御部11の動作については、後に詳しく述べる。
【0021】
記憶部12は、メモリデバイス等であり、制御部11によって実行されるプログラムを保持する。このプログラムは、DVD−ROM等のコンピュータ可読、かつ持続的(non-transitory)な記録媒体によって提供され、この記憶部12に複写されたものであってもよいし、ネットワーク等の通信回線を介して提供され、この記憶部12に複写されたものであってもよい。またこの記憶部12は、制御部11のワークメモリとしても動作する。
【0022】
操作部13は、例えば表示部14に重ね合わせて配されたタッチパネルやボタン等であり、利用者からの指示操作を受け入れて、当該指示操作の内容を制御部11に出力する。表示部14は、ディスプレイ等であり、制御部11から入力される指示に従って情報を表示する。
【0023】
通信部15は、無線LANインタフェースを含み、制御部11から入力される指示に従って、無線にて、情報を送出する。またこの通信部15は、無線にて自己宛の情報を受信すると、当該受信した情報を制御部11に出力する。なお、リモートコントロール装置10が例えばスマートフォン等、電話としての機能を有している場合は、この通信部15は、携帯電話通信網を介して音声信号やパケットデータを送受する機能を有してもよい。
【0024】
対象機器20の通信部21は、ネットワークインタフェース(無線LANインタフェースや有線LANインタフェース等)であり、ネットワークを介して自己(対象機器20)宛の情報を受信すると、当該受信した情報を機能部22に出力する。またこの通信部21は、機能部22から入力される指示に従い、ネットワークを介して指示された情報を送出する。また本実施の形態では、この通信部21は、リモートコントロール装置10からコマンドを含んだ情報を受信すると、コマンドを受信した旨を表す情報(ここではレスポンスと呼ぶ)を、リモートコントロール装置10に対して送出する。本実施の形態の一例では、このレスポンスには、受信したコマンドを特定する情報が含まれる。
【0025】
機能部22は、対象機器20としての機能を実現するものであり、例えば対象機器20がハードディスクレコーダであれば、受信した放送信号に基づく映像データを、ハードディスクドライブに記録するといった動作をするものである。本実施の形態では、この機能部22はCPU等のプログラム制御デバイスを含んで構成され、予め設定されたプログラムに従って動作する。本実施の形態では、この機能部22は通信部21がリモートコントロール装置10から受信したコマンドを受け入れて、当該コマンドに従った処理を実行する。
【0026】
次に、リモートコントロール装置10の制御部11の動作について説明する。本実施の形態では、制御部11によりリモートコントロール装置10が
図2に例示するように、機能的に、受入部31と、送出部32と、受信部33と、履歴保持部34と、候補提示部35と、再送処理部36とを含むものとして動作する。
【0027】
ここで受入部31は、操作部13に対する利用者からの操作を受け入れる。本実施の形態では、受入部31は、表示部14に対してリモートコントローラとしての操作画面を表示する。本実施の形態の一例では、この操作画面は、
図3に例示するように、カーソルを上下左右に移動する指示を行うための仮想的なボタン(L,R,U,D)や「決定」ボタン(E)を配している。
【0028】
利用者はこの画面において、いずれかのボタンが表示されている位置をタップし、カーソルの移動を行う。例えば利用者は、ボタンDが表示されている位置を3回、次にボタンRが表示されている位置を1回タップすることで、カーソルを下方へ3回、右方向へ1回移動するべき旨の指示操作を行う。利用者はこうした一連の指示操作を行うことで、対象機器20を制御する。この一連の指示操作は、各ボタンのタップ操作のように、一般に複数の操作要素を含んでいる。
【0029】
受入部31は複数の操作要素を含む一連の操作指示を受け入れ、当該受け入れた各操作要素の内容を表す情報を、受け入れた順に、送出部32に出力する。
【0030】
送出部32は、受入部31が受け入れた個々の操作要素に対応するコマンドを、受入部31が受け入れた順に、対象機器20に対して無線にて送出する。受信部33は、送出したコマンドごとのレスポンスを対象機器20から受信する。本実施の形態では対象機器20がコマンドを受信するごとにレスポンスを送信しており、受信部33は当該レスポンスを受信する。無線ネットワークシステム30の状況により対象機器20がコマンドを受信できなかった場合や、レスポンスが伝送できなかった場合は、受信部33はレスポンスを受信できないこととなる。
【0031】
履歴保持部34は、送出部32が送出したコマンドの送出履歴を含む履歴データベースを記憶部12に格納する。本実施の形態では、この履歴データベースには、
図4(a)に例示するように、送出部32が送出したコマンドが、例えば送出順に記録され、各コマンドの記録には、対象機器20からレスポンスを受信したか否かを表す情報が関連付けられる。この履歴保持部34は、送出部32がコマンドを送出すると、当該送出したコマンドを特定する情報に対して、レスポンスを受信していない旨を表す情報(空の情報であってもよい)とを関連付けて、履歴データベースの末尾に追記する。
【0032】
また履歴保持部34は、受信部33がレスポンスを受信すると、履歴データベースに記録されたコマンドのうちレスポンスを受信している旨を表す情報が関連付けられていないコマンドであって、かつ、当該受信したレスポンスによって特定されるものと同じコマンドを記録した順に検索する。履歴保持部34は、この検索により最初に見出したコマンドに、レスポンスを受信した旨の情報を関連付けて記録し、履歴データベースを更新する。
【0033】
一例として利用者が、ボタンDが表示されている位置を3回、次にボタンRが表示されている位置を1回タップしてカーソルを下方へ3回、右方向へ1回移動するべき旨の指示操作を行うと、送出部32がカーソルを下方へ移動するべき旨のコマンドを3回送出した後、カーソルを右方向へ移動するべき旨のコマンドを1回送出することとなる。そこで履歴保持部34は、送出履歴としての履歴データベースに、カーソルを下方へ移動するべき旨のコマンドを3回記録し、続けてカーソルを右方向へ移動するべき旨のコマンドを1回記録する。つまりカーソルを右方向へ移動するべき旨のコマンドは4回目の記録として記録される。当初、各記録に係るコマンドには、レスポンスを受信している旨を表す情報は関連付けられない(
図4(b))。
【0034】
ここで受信部33が対象機器20から、カーソルを下方へ移動するべき旨のコマンドを特定する情報を含んだレスポンスを1回と、カーソルを右方向へ移動するべき旨のコマンドを特定する情報を含んだレスポンスを1回とを受信したものとする。つまり、カーソルを下方へ移動するべき旨のコマンド2回分のレスポンスは、何らかの原因(例えば対象機器20によって受信されなかったか、またはレスポンスの伝送に失敗したなどの原因)により受信できなかったものとする。
【0035】
この場合、履歴保持部34は、最初にカーソルを下方へ移動するべき旨のコマンドを特定する情報を含んだレスポンスを受信したときに、最初に記録されている、カーソルを下方へ移動するべき旨のコマンドに、レスポンスを受信している旨を表す情報を関連付けて記録する(
図4(c))。また次にカーソルを右方向へ移動するべき旨のコマンドを特定する情報を含んだレスポンスが受信されると、履歴データベースに記録されたコマンドのうちレスポンスを受信している旨を表す情報が関連付けられていないコマンドであって、かつ、当該受信したレスポンスによって特定されるものと同じコマンドを記録した順に検索し、4番目の記録を見出す。そして履歴保持部34は、当該見出した記録に含まれる、カーソルを右方向へ移動するべき旨のコマンドに対し、レスポンスを受信している旨を表す情報を関連付けて記録する(
図4(d))。
【0036】
候補提示部35は、送出履歴である履歴データベースを参照し、レスポンスの受信がない旨を表す情報に関連付けられたコマンドが予め定めた数以上続く記録が含まれる場合に、当該レスポンスの受信がない旨を表す情報に関連付けられたコマンドの列を再送候補リストとして作成し、当該再送候補リストを表示部14に表示出力して利用者に提示する。
【0037】
具体的にここでの予め定めた数は1以上の値であれば適宜設定されたものでよい。なお、この値は設定により利用者が変更できるようになっていても構わない。先に示した
図4(d)の例のように、履歴データベースの一部に、レスポンスを受信している旨を表す情報が関連付けられていないコマンドが2つ続けてある場合に、上記予め定めた数が「2」と設定されていれば、候補提示部35は、ここでレスポンスを受信している旨を表す情報が関連付けられていないコマンドの列を再送候補リストとして作成する。このとき再送候補リストに含める各コマンドは、履歴データベースに記録されている順に、再送候補リストに含める。つまりここでの
図4(d)の例の場合、カーソルを下方へ移動するべき旨のコマンドを表す情報を2つ続けて記載したリストが、再送候補リストとして作成される。候補提示部35は、作成した再送候補リストに含まれるコマンドを特定する文字列や、アイコン等を列挙した画像を生成して、表示部14に出力する。この画像は例えば
図5(a)に例示したようなものとなる。
【0038】
またこの候補提示部35は、履歴データベースの一部に、レスポンスを受信している旨を表す情報が関連付けられていないコマンドが予め定めた数以上続けて記録されている場合に、直ちに再送候補リストを作成するのではなく、対象機器20への無線での通信を試行し、通信に成功したときに再送候補リストを作成するようにしてもよい。この例では、本発明の一態様に係る試行手段が、この候補提示部35により実現される。
【0039】
再送処理部36は、候補提示部35が提示した再送候補リストに含まれるコマンドのうち、利用者が再送の指示操作を行ったコマンドを、対象機器20に対して再度送信する処理を行う。具体的には、利用者は
図5(a)に例示したような再送候補リストが提示されると、当該リスト上にあるコマンドのうち、再送を希望するコマンドに対応する文字列等の画像が表示された位置をタップする。すると再送処理部36が、当該タップされた画像に対応するコマンドを、対象機器20に対して送信する。なお、ここでの利用者の操作は一例であり、例えばリスト上の複数のコマンドに対応する画像が表示された範囲を指でなぞる操作を利用者から受け入れることにより、当該範囲の複数のコマンドを、先に送信したのと同じ順に(再送候補リストに含められている順に)送出することとしてもよい。
【0040】
またこの再送処理部36は、利用者が再送の指示操作を行ったときに、直ちにコマンドの再送を行うのではなく、対象機器20への無線での通信を試行し、通信に成功したときに再送の指示がされたコマンドを送信するようにしてもよい。この例では、本発明の一態様に係る試行手段が、この再送処理部36により実現される。
さらに再送処理部36は、コマンドの再送を行ったときには、履歴データベースの内容を初期化(履歴データベースに格納したコマンドの記録等を削除)してもよい。
【0041】
本実施の形態に係るリモートコントロール装置10は、基本的に以上の構成を備えており、次のように動作する。以下の例では、対象機器20は、ハードディスクドライブ等のストレージデバイスを備え、このストレージデバイス内に格納した写真画像をテレビ受像機等に表示する機能を備えた画像表示装置であるものとする。この対象機器20では、ストレージデバイス内に格納した写真画像を撮影日ごとに分類し、例えば月ごとのカレンダー表示(一週分の複数のセルを横一列に配列し、さらに当該一週分のセルの組を、表示の対象とした月に含まれる週だけ縦方向に配列した表示態様)として、撮影日に対応するセル内に、当日撮影された写真のサムネイル画像(複数ある場合はそのうち代表として選択された一枚のサムネイル画像でよい)を表示する。そして対象機器20は、このセルのいずれかにカーソルを表示し、利用者からリモートコントロール装置10により上下左右にカーソルを移動する指示を受けて、例えば左右方向にカーソル移動の指示があれば前日、または翌日のセルにカーソルを移動し、上下方向のカーソル移動の指示があれば前週、または翌週のセルにカーソルを移動する。移動したセルが前月、または翌月の日に対応するものであれば、当該応答する月のカレンダー表示を行う、といった処理を実行する。また利用者が、「決定」ボタンをタップしたときには、そのときカーソルが示しているセルに対応する日を撮影日とする写真の画像があれば、当該写真の画像の一覧を表示する処理を行う。
【0042】
いま利用者が、カーソルのある日から3週と4日だけ後の撮影日の写真画像の一覧を表示させようとするものとする。このとき利用者は、カーソルを3回下方向に移動し、次いで右方向に4回移動し、「決定」ボタンをタップすることとなる。
【0043】
利用者がリモートコントロール装置10を操作して、上述の操作を順次行うと、リモートコントロール装置10は
図6に例示するように、各操作が行われるごとに、対応するコマンドを送出し(S1)、送出履歴としての履歴データベースに、送出したコマンドを記録する(S2)。この段階で当該記録に係るコマンドには、レスポンスを受信している旨を表す情報は関連付けられない。
【0044】
そして対象機器20が当該コマンドを無線ネットワークシステム30を介して受信すると、対象機器20では当該受信したコマンドへのレスポンスを送出する(S3)。そして対象機器20では当該受信したコマンドに対応する動作を行う(S4)。
【0045】
レスポンスを受信したリモートコントロール装置10では、受信したレスポンスに対応するコマンドを履歴データベースから検索し、検索により見出したコマンドに、レスポンスを受信している旨を表す情報を関連付けて履歴データベースを更新する(S5)。なお、ここでの検索は既に述べたように、履歴データベースに記録されたコマンドのうちレスポンスを受信している旨を表す情報が関連付けられていないコマンドであって、かつ、当該受信したレスポンスによって特定されるものと同じコマンドを、記録した順に検索するものである。
【0046】
本実施の形態では、基本的には上記処理S1からS5までの動作を、操作要素ごとに繰り返す。ここで一例としてカーソルを下方へ移動するべき旨のコマンドが3回、対象機器20へ送出されて対象機器20から当該コマンドへのレスポンスが送信された後、カーソルを右方向へ移動するべき旨のコマンドが1回だけ対象機器20によって受信され、そのコマンドへのレスポンスが送信されたものとする。その後、リモートコントロール装置10は利用者の操作に従い、さらにカーソルを右方向へ移動するべき旨のコマンドを3回(合計で4回となる)、対象機器20宛に送出するが、無線ネットワークシステム30との通信状況の悪化などの原因によって、対象機器20が送出された3回分のコマンドを受信しなかったものとする。
【0047】
この場合、上記処理S1からS5までの処理が、カーソルを下方へ移動するべき旨のコマンド3回分と、カーソルを右方向へ移動するべき旨のコマンド1回分だけ繰り返して行われ、その後は処理S1,S2のみがカーソルを右方向へ移動するべき旨のコマンド3回分だけ繰り返して行われる。
【0048】
このとき、履歴データベースにはカーソルを下方へ移動するべき旨のコマンドが3回記録され、続けてカーソルを右方向へ移動するべき旨のコマンドが4回記録され、そのうち最初の4つの記録に係るコマンドに対して、レスポンスを受信している旨を表す情報が関連付けられていることとなる。
【0049】
さらに利用者が、対象機器20の操作画面を参照し、カーソルの移動が所望の通りになっていないことから、カーソルの右方向移動の操作を2回ほど余計に繰り返して行ってしまうと、リモートコントロール装置10が当該操作に応じて当該余計に操作された2回分のコマンドを対象機器20宛に送出することとなり、また、履歴データベースにはさらにカーソルを右方向へ移動するべき旨のコマンドが追加的に2回分記録される。従ってカーソルの右方向移動の記録は合計で6回分記録されることとなる。
【0050】
リモートコントロール装置10は、
図6に例示するように、所定のタイミングごとに(例えば所定の時間をおいて定期的に繰り返して)、履歴データベースを参照し、履歴データベースの一部に、レスポンスを受信している旨を表す情報が関連付けられていないコマンドが予め定めた数(例えば2回)以上続けて記録されているか否かを調べる(S11)。ここでレスポンスを受信している旨を表す情報が関連付けられていないコマンドが予め定めた数以上続けて記録されていないならば、リモートコントロール装置10は、再送候補リストを生成する処理をすることなく、利用者からの指示操作を待機し、指示操作に応じてコマンドを送出する処理を続ける。
【0051】
ここでカーソルを右方向へ移動するべき旨のコマンドについて、レスポンスを受信している旨を表す情報が関連付けられていない記録が2以上続けて履歴データベースに含まれていれば(Yesならば)、リモートコントロール装置10は、再送候補リストを生成する処理を開始して、対象機器20への無線での通信を繰り返し試行する(S12)。リモートコントロール装置10は、試行による通信が成功する(処理(S12)にて「成功」となる)と、再送候補リストを作成する。なお、試行回数には予め制限回数を設定しておき、リモートコントロール装置10は、当該制限回数を超えて試行しても通信が成功しない場合は、エラーを報知して処理を終了してもよい。
【0052】
リモートコントロール装置10は、履歴データベースに記録されている、レスポンスを受信している旨を表す情報が関連付けられていない記録を、記録されている順に再送候補リストに含める(S13)。つまりここでの例の場合、カーソルを右方向へ移動するべき旨のコマンドを表す情報を複数回続けて記載したリストが、再送候補リストとして作成される。
【0053】
例えば、利用者が追加的に操作したことにより送出された2回分のコマンドも、対象機器20が受信できなかったとすると、履歴データベースには、レスポンスを受信している旨を表す情報が関連付けられていないカーソルを右方向へ移動するべき旨のコマンドの記録が、5回分記録されていることとなる。そこでこの場合、リモートコントロール装置10は、再送候補リストとしてカーソルを右方向へ移動するべき旨のコマンドを表す情報を5回続けて記載したリストを作成して表示する(S14)。
【0054】
利用者は現在の対象機器20の操作画面を参照して、あと3回だけカーソルを右方向へ移動するべき旨のコマンドを送出すれば、所望の状態となることを知ることができる。そこで利用者は、提示された再送候補リストから、カーソルを右方向へ移動するべき旨のコマンドを3回分だけ選択して再送させる。
【0055】
リモートコントロール装置10は、当該利用者の選択の操作を受け入れ(S15)、当該受け入れた操作の内容に従い、カーソルを右方向へ移動するべき旨のコマンドを3回分だけ送出する(S16)。これにより、利用者は所望の状態に対象機器20を制御できる。その後、リモートコントロール装置10は、また別の指示操作を利用者から受け入れて、同様の処理を続ける。
【0056】
またここでの例において、利用者が追加的に操作したことにより送出された2回分のコマンドが、対象機器20により受信された場合、履歴データベースには、レスポンスを受信している旨を表す情報が関連付けられている、カーソルを右方向へ移動するべき旨のコマンドの記録が3回分記録され、次いで、レスポンスを受信している旨を表す情報が関連付けられていない、カーソルを右方向へ移動するべき旨のコマンドの記録が3回分記録されていることとなる。そこでこの場合、リモートコントロール装置10は、再送候補リストとしてカーソルを右方向へ移動するべき旨のコマンドを表す情報を3回続けて記載したリストを作成して表示する。
【0057】
このときには、利用者は現在の対象機器20の操作画面を参照して、あと1回だけカーソルを右方向へ移動するべき旨のコマンドを送出すれば、所望の状態となることを知ることができる。そこで利用者は、提示された再送候補リストから、カーソルを右方向へ移動するべき旨のコマンドを1回分だけ選択して再送させる。
【0058】
リモートコントロール装置10は、当該利用者の選択の操作に従い、カーソルを右方向へ移動するべき旨のコマンドを1回だけ送出する。この場合も、利用者は所望の状態に対象機器20を制御できる。
【0059】
[履歴データベースへの記録の別の例]
また、コマンドの送出と、対象機器20におけるコマンド受信へのレスポンスの送出の態様は、ここまでに説明した例に限られない。例えば本実施の形態では、リモートコントロール装置10は、コマンドを送出する際に、対象機器20に対して、送出した時刻に係る情報(タイムスタンプ情報)を併せて送出してもよい。この場合、対象機器20は、コマンドを受け入れたレスポンスに、当該コマンドに併せて送出された時刻に係る情報(タイムスタンプ情報)を含める。具体的には対象機器20は、コマンド受信に対するレスポンスとして、受信したコマンドとともに送出されているタイムスタンプ情報そのものを、リモートコントロール装置10宛に送出してもよい。
【0060】
この例では、送出部32が受入部31にて受け入れた個々の操作要素に対応するコマンドを、受入部31が受け入れた順に、時刻の情報とともに対象機器20に対して無線にて送出する。ここで時刻を表すタイムスタンプ情報は、一般的なコンピュータが保持する、図示しないカレンダーIC等で計時している情報そのものでよい。
【0061】
また受信部33は、送出したコマンドごとのレスポンスを対象機器20から受信する。ここでの例では対象機器20はコマンドとタイムスタンプ情報とを受信するごとに、レスポンスとして当該タイムスタンプ情報を送信する。
【0062】
受信部33は当該レスポンスとしてのタイムスタンプ情報を受信する。無線ネットワークシステム30の状況により対象機器20がコマンドを受信できなかった場合や、レスポンスが伝送できなかった場合は、受信部33はレスポンスとしてのタイムスタンプ情報を受信できないこととなる。
【0063】
この例でも、履歴保持部34は、送出部32が送出したコマンドの送出履歴を含む履歴データベースを記憶部12に格納する。本実施の形態では、この履歴データベースには、送出部32が送出したコマンドとタイムスタンプ情報とが関連付けて記録される。この例においてはタイムスタンプ情報がキー情報(検索や並べ替えの対象)として記録される。
【0064】
またこの例でも、各コマンドの記録には、対象機器20からレスポンスを受信したか否かを表す情報が関連付けられる。この履歴保持部34は、送出部32がコマンドを送出すると、当該送出したコマンドを特定する情報に対して、レスポンスを受信していない旨を表す情報(空の情報であってもよい)とを関連付けて、履歴データベースの末尾に追記する。
【0065】
また履歴保持部34は、受信部33がレスポンスとしてタイムスタンプ情報を受信すると、履歴データベースに記録されたタイムスタンプ情報から、当該受信したタイムスタンプ情報に一致するものを検索する。履歴保持部34は、この検索により最初に見出したタイムスタンプ情報に対して、レスポンスを受信した旨の情報を関連付けて記録し、履歴データベースを更新する。
【0066】
さらにここでの例では候補提示部35が再送候補リストを作成するときには、タイムスタンプ情報が示す時刻の順に並べ替えてコマンドを列挙すればよい。これにより再送候補リストに含められるコマンド列が、各コマンドの送信順の順列となる。
【0067】
[提示態様の例]
また本実施の形態における再送候補リストの表示例は、単に再送候補リストに含まれるコマンドを表す文字列やアイコン等を、その順に配列したものに限られない。例えば本実施の形態の一例では、
図5(b)に示すように、再送候補リストに含まれるコマンドの列に、同一のコマンドがN回(N>1の整数)連続する部分が含まれるときには、当該コマンドをN回続けて列挙することに代えて、当該コマンドの内容を表す文字列やアイコンなどの情報と、その連続回数Nとを表示した画像(P)を利用者に提示してもよい。
【0068】
この例では、リモートコントロール装置10は、連続回数とともに提示したコマンドについては、利用者からの指示により、当該コマンドを、当該提示された連続回数だけ再送するか、当該連続回数未満の回数だけ再送するかを決定し、当該決定した回数だけ当該コマンドを再送する。
【0069】
具体的に、
図5(b)に例示した態様では、カーソルを右方向に移動する旨のコマンドが5回続けて、レスポンスを受信した旨の情報に関連付けられていなかった場合を示しており、カーソルを右方向に移動する旨のコマンドを表す文字列の情報と、その回数「5」とが表示されている例を示している(P)。
【0070】
本実施の形態の例では、ここで利用者がこの表示がされている位置をタップするなどして再送を指示すると、リモートコントロール装置10はカーソルを右方向に移動する旨のコマンドを5回続けて送出する。また、ここでリモートコントロール装置10は、当該表示されている回数を増減させる指示操作を受け入れてもよい。この場合、当該受け入れた指示操作に従ってリモートコントロール装置10は、表示されている回数を増減させる。そして当該回数の増減操作後に利用者が再送を指示すると、リモートコントロール装置10はカーソルを右方向に移動する旨のコマンドを当該増減後の回数だけ続けて送出する。
【0071】
なお、ここでは回数を増減させる例としたが、リモートコントロール装置10は、例えば表示された位置を長押しするなど、コマンドをリスト表示する指示操作を受け入れて、当該表示に代えて、カーソルを右方向に移動する旨のコマンドを表す文字列を5回続けて並べた画像を表示するようにしてもよい(
図5(c))。この場合は既に述べた例と同様に、利用者は表示されたコマンドを所望の数だけ選択して再送指示を行う。
【0072】
[数値コントロールの例]
さらにここまでの例ではカーソルの移動に係る操作を行う例について示したが、対象機器20に対する操作としては、カーソルの移動に限られず、例えば録画予約時刻の設定や、チャンネルの設定など、数値を設定するために値をインクリメントまたはデクリメントするコマンドを、リモートコントロール装置10から送出したい場合もある。このような対象機器20では、設定の対象となる数値のインクリメントコマンドやデクリメントコマンド(1ずつ増減させるコマンド)のほかに、設定の対象となる数値を指定するコマンド(最終設定値を指定するコマンド)を受け入れて、当該コマンドにより指定された数値に、設定の対象となる数値を設定する動作を行うものもある。
【0073】
一例として、ハードディスクレコーダ等の機器において、録画しようとするチャネルの番号を設定の対象とする場合、チャネル番号を1チャンネルずつ増減させて切り替えるのではなく、チャネル番号をそのまま指定して切り替えることを可能としてもよい。
【0074】
このような対象機器20に対する指示を行うリモートコントロール装置10において、利用者が当該設定の対象となる数値のインクリメントやデクリメントを行わせる指示操作を行ったときには、リモートコントロール装置10は、当該指示操作に対応するコマンドを順次送出することとなる。そして当該コマンドに対するレスポンスが受信できない場合は、リモートコントロール装置10の履歴データベースでは、数値をインクリメントまたはデクリメントさせるコマンドが、レスポンスが受信できた旨の情報に関連付けられずに記録された状態となる。
【0075】
この場合、リモートコントロール装置10は、再送候補リストとしてレスポンスが受信できなかったとされたコマンドを列挙し、当該コマンドの列を利用者に提示してもよいが、当該コマンドの列に代えて、数値をインクリメントまたはデクリメントした結果の値を直接、利用者に入力させてもよい。具体的にリモートコントロール装置10は、数値のインクリメントまたはデクリメントのコマンドの列挙に代えて、数値を直接入力させるインタフェース(数値入力インタフェース)を提供する。ここで利用者が当該インタフェースを介して、設定するべき数値を直接入力して再送を指示すると、リモートコントロール装置10は、設定の対象となる数値を、当該入力された数値に設定するべき旨のコマンドを、対象機器20宛に送出する。
【0076】
[人為的操作を介さない例]
また、ここまでの例では、リモートコントロール装置10は、どのような場合であっても、再送候補リストに含まれるコマンドの列を利用者に提示していたが、本実施の形態はこれに限らず、予め定めた所定の条件を満足するときには、再送候補リストに含まれるコマンドの列を、人為的操作を経ずに(利用者の指示を待たずに)、対象機器20宛に送出してもよい。
【0077】
例えば再送候補リストに含まれるコマンドの列が、予め定めたサイズより短い場合には、当該再送候補リストに含まれるコマンドの列を、人為的操作を経ずに(利用者の指示を待たずに)、対象機器20宛に送出する。また別の例では、リモートコントロール装置10は送出したコマンドにタイムスタンプ情報を関連付けて履歴データベースに記録し、候補提示部35が再送候補リストを作成する際に、対象機器20への無線での通信を試行し、通信に成功したときに、再送候補リストに含まれるコマンドのうち、最も先に送出したコマンドに関連付けられているタイムスタンプ情報が示す時刻と、通信が成功した時点の時刻とを比較し、これらの時刻の差が予め定めたしきい値を下回る場合に、人為的操作を経ずに(利用者の指示を待たずに)、対象機器20宛に送出する。
【0078】
[いわゆる長押し操作]
また、本実施の形態のリモートコントロール装置10では、制御部11が操作部13に対する利用者からの操作として、カーソルボタン等を所定の時間(例えば2秒)以上押し続ける、いわゆる長押し操作を受け入れて、次のように動作してもよい。
【0079】
本実施の形態の一例では、制御部11は、操作部13に対する利用者の操作としてボタン等が押された後、押し続けられた状態が、予め定めた時間だけ経過するごとに、所定数のコマンドを送出する。具体的に利用者がカーソルを上方向に移動するボタンUを6秒間押し続けた場合に、予め定めた時間(例えば2秒)が経過するごとに、ボタンUが所定数(例えば5回)押されたとみなしてカーソルを上方向に移動するべき旨のコマンドを5回送出する。
この例では6秒間(2秒×3)押し続けている例としているので、最初に押下された時点でカーソルを上方向に移動するべき旨のコマンドを送出した後、さらに5×3=15回、カーソルを上方向に移動するべき旨のコマンドを送出する。
【0080】
また制御部11は、こうして続けて送出したコマンドの送出履歴を履歴データベースに追記する。制御部11は、コマンドを送出するごとに、当該送出したコマンドを特定する情報に対して、レスポンスを受信していない旨を表す情報(空の情報であってもよい)とを関連付けて、履歴データベースの末尾に追記する。従って上記の例の場合、15回分のコマンドの送出履歴が記録されることとなる。
【0081】
なお、送出したコマンドとタイムスタンプ情報とを関連付けて記録する場合は、送出したコマンドごとにタイムスタンプ情報を記録する。つまり、上記の例では15回分のコマンドのそれぞれに対応してタイムスタンプ情報が記録されることになる。
【0082】
そして対象機器20では、リモートコントロール装置10からコマンドを含んだ情報を受信すると、コマンドを受信した旨を表すレスポンスを、リモートコントロール装置10に対して送出する。
【0083】
また対象機器20はリモートコントロール装置10から、上記のように、単位時間内に所定数以上のコマンドが受け入れられたときに、次のように動作してもよい。すなわちこの例において対象機器20はコマンドを受信したときに、当該コマンドを受信した時刻を表す情報を得る。なお、コマンドとともに、タイムスタンプ情報を受け入れたときには、当該タイムスタンプ情報が表す時刻を受信した時刻とみなして次の処理を行ってもよい。
【0084】
対象機器20は、受信したコマンドを受信順に読み出し、当該読み出したコマンドに従った処理を実行するが、読み出したコマンドの受信時刻以後であって、受信時刻から所定の時間内に受信されたコマンドを参照し、読み出したコマンドと参照したコマンドとが同じコマンドであれば、ボタンの長押しにより入力されたコマンドとして、当該コマンドに対応するボタンが長押しされたとした場合の処理(例えばカーソル上方移動のコマンドに対応するボタンが長押しされたとする場合、カーソルを最上位置に移動するなど)を行う。
【0085】
このように対象機器20は、コマンドごとに、対応するボタンが長押しされた場合に行う処理を定めておくのであるが、少なくとも一部のボタンについては長押しがされたときの処理を定めなくてもよい。例えば「決定」ボタンについては長押しの処理を定めないようにしてもよい。
【0086】
またリモートコントロール装置10でも、送出履歴にタイムスタンプ情報を含めて記録しておき、後に履歴データベースを参照して再送候補リストを生成する処理を行うにあたり、次のように動作してもよい。
【0087】
リモートコントロール装置10の制御部11は、履歴データベースを参照して、レスポンスの受信がない旨を表す情報に関連付けられたコマンドが予め定めた数以上続く記録を見出すと、当該記録に含まれるコマンドのうち、関連付けられたタイムスタンプ情報により最先の時刻に送出されたものとして記録されているコマンドを見出す。以下、ここで見出したコマンドの送出時刻を最先時刻と呼ぶ。
【0088】
制御部11は、当該見出したコマンドより後に送出したコマンドを送出順に調べ、関連付けられたタイムスタンプ情報により表される送出時刻が最先時刻より所定の時間内となっているコマンドを参照する(ここで参照されるコマンドについてはレスポンスがあるものを含んでもよい)。そして当該参照したコマンドが、先に見出したコマンドと同じコマンドであれば、当該見出したコマンド及び参照したコマンドの列が、ボタンの長押しにより入力されたコマンドであるとして、再送候補リストを作成するときに、当該見出したコマンドについては、対応するボタンが長押しされたとした場合のコマンド列を再送するか否かを問い合せる。
【0089】
そして、長押しされたとした場合のコマンド列を再送するべき旨の操作が行われると、制御部11は、上記見出したコマンドに対応するボタンが長押しされた場合のコマンドを再送する(例えばコマンドを複数回連続して送出するのであればそのように再送する)。
【0090】
また本実施の形態の別の例では、次のように動作してもよい。すなわち、リモートコントロール装置10の制御部11が、操作部13に対する利用者の操作としてボタン等が押されたときに、カーソルを上方向に移動するべき旨のコマンドを送出して、その送出履歴を履歴データベースに追記し、その後、押し続けられた状態が続いて予め定めた時間だけ経過したときに、先に記録した送出履歴(カーソルを上方向に移動するべき旨のコマンドの送出履歴)に、レスポンスの受信がない旨を表す情報が関連付けられているか否かを調べる。
ここで先に記録した送出履歴(カーソルを上方向に移動するべき旨のコマンドの送出履歴)に、レスポンスの受信がない旨を表す情報が関連付けられていなければ、長押しされていることを表す、所定数のコマンドを送出する。
【0091】
また、先に記録した送出履歴(カーソルを上方向に移動するべき旨のコマンドの送出履歴)に、レスポンスの受信がない旨を表す情報が関連付けられていたならば、長押しされていることを表す所定数のコマンドを送出することなく、当該先に記録した送出履歴に係るコマンドより後に送出するべきコマンド(所定数のコマンド、つまり長押しされたとした場合のコマンド列)を、再送候補リストに追記する。
さらにその後も、直前のコマンド(例えば所定数のコマンドを含むコマンド列)に対するレスポンスの受信がないと判断される場合には、押し続けられた状態が続いて予め定めた時間だけ経過するごとに、長押しされた場合のコマンド(ここでの例では所定数のコマンド)を、送出することなく、再送候補リストに追記する。
【0092】
そして、長押しされたとした場合のコマンド列を再送するべき旨の操作が行われると、制御部11は、当該コマンドに対応するボタンが長押しされた場合のコマンドを再送する(ここでの例であればコマンドを所定数回連続して送出する)。
【0093】
また、ここで制御部11では、コマンドごとに、対応するボタンが長押しされた場合のコマンドの送出方法(複数回連続して送信する、など)を定めておくのであるが、少なくとも一部のボタンについては長押しがされたときにも、単にタップされたとき(長押しされなかったとき)と同じ送出方法としておいてもよい。例えば「決定」ボタンについては長押しのときとそうでないときで同じコマンドを、同じように(例えば1回だけ)送出することとしてもよい。