本発明に係るデータ表示/センサ装置(画像表示/像検知装置)の一実施形態について図1〜16を参照しつつ、以下に説明する。
(データ表示/センサ装置の外観)
まず、本実施形態に係るデータ表示/センサ装置の外観について、図9(a)を参照しつつ以下に説明する。データ表示/センサ装置100は、図9(a)に示すように、上部筐体40、下部筐体41の2つの筐体からなる。上部筐体40には、第1表示/光センサ部300Aが備えられており、下部筐体41には、第2表示/光センサ部300Bが備えられている。
なお、本実施形態では、主として、データ表示/センサ装置100が上部筐体40および下部筐体41の2つの筐体からなるデータ表示/センサ装置を例に挙げて説明するが、もちろん、データ表示/センサ装置100の構成はこれに限定されるものではない。例えば、図9(b)に示すように、右側筐体42および左側筐体43の2つの筐体からなる構成であってもよいし、図9(c)に示すように、第1筐体44、第2筐体45および第3筐体46の3つの筐体からなる構成であってもよい。また、ここには図示していないが、4つ以上の筐体からなる構成であってもよい。なお、図9(a)〜(c)における矢印は、各筐体の可動方向を示している。
(センサ内蔵液晶パネルの概要)
ここで、データ表示/センサ装置100の構成および処理動作の詳細な説明に先立って、本発明に係るデータ表示/センサ装置100の備えるセンサ内蔵液晶パネル301の概要について説明する。
データ表示/センサ装置100が備えるセンサ内蔵液晶パネル301は、データの表示に加え、対象物の画像検出が可能な液晶パネルである。ここで、対象物の画像検出とは、例えば、ユーザが指やペンなどでポインティング(タッチ)した位置の検出や、印刷物等の画像の読み取り(スキャン)である。なお、表示に用いるデバイスは、液晶パネルに限定されるものではなく、有機EL(Electro Luminescence)パネルなどであってもよい。
図2を参照しながら、センサ内蔵液晶パネル301の構造について説明する。図2は、センサ内蔵液晶パネル301の断面を模式的に示す図である。なお、ここで説明するセンサ内蔵液晶パネル301は一例であり、表示面と読取面とが共用されているものであれば、任意の構造のものが利用できる。
図示のとおり、センサ内蔵液晶パネル301は、背面側に配置されるアクティブマトリクス基板51Aと、表面側に配置される対向基板51Bとを備え、これら基板の間に液晶層52を挟持した構造を有している。アクティブマトリクス基板51Aには、画素電極56、データ信号線57、光センサ回路32(図示せず)、配向膜58、偏光板59などが設けられる。対向基板51Bには、カラーフィルタ53r(赤)、53g(緑)、53b(青)、遮光膜54、対向電極55、配向膜58、偏光板59などが設けられる。また、センサ内蔵液晶パネル301の背面には、バックライト307が設けられている。
なお、光センサ回路32に含まれるフォトダイオード6は、青のカラーフィルタ53bを設けた画素電極56の近傍に設けられているが、この構成に限定されるものではない。赤のカラーフィルタ53rを設けた画素電極56の近傍に設けてもよいし、緑のカラーフィルタ53gを設けた画素電極56の近傍に設けてもよい。
次に、図3(a)および図3(b)を参照しながら、ユーザが、指やペンで、センサ内蔵液晶パネル301上をタッチした位置を検出する2種類の方法について説明する。
図3(a)は、反射像を検知することにより、ユーザがタッチした位置を検出する様子を示す模式図である。バックライト307から光63が出射されると、フォトダイオード6を含む光センサ回路32は、指などの対象物64により反射された光63を検知する。これにより、対象物64の反射像を検知することができる。このように、センサ内蔵液晶パネル301は、反射像を検知することにより、タッチした位置を検出することができる。
また、図3(b)は、影像を検知することにより、ユーザがタッチした位置を検出する様子を示す模式図である。図3(b)に示すように、フォトダイオード6を含む光センサ回路32は、対向基板51Bなどを透過した外光61を検知する。しかしながら、ペンなどの対象物62がある場合は、外光61の入射が妨げられるので、光センサ回路32が検知する光量が減る。これにより、対象物62の影像を検知することができる。このように、センサ内蔵液晶パネル301は、影像を検知することにより、タッチした位置を検出することもできる。
上述のように、フォトダイオード6は、バックライト307より出射された光の反射光(影像)を検知してもよいし、外光による影像を検知してもよい。また、上記2種類の検知方法を併用して、影像と反射像とを両方を同時に検知するようにしてもよい。
(データ表示/センサ装置の要部構成)
次に、図4を参照しながら、上記データ表示/センサ装置100の要部構成について説明する。図4は、データ表示/センサ装置100の要部構成を示すブロック図である。図示のように、データ表示/センサ装置100は、1または複数の表示/光センサ部300、回路制御部600、データ処理部700、主制御部800、記憶部901、一次記憶部902、操作部903、外部通信部907、音声出力部908、および音声入力部909を備えている。ここでは、データ表示/センサ装置100は、表示/光センサ部300を2つ(第1表示/光センサ部300Aおよび第2表示/光センサ部300B)備えているものとして説明する。なお、第1表示/光センサ部300Aおよび第2表示/光センサ部300Bを区別しないときは、表示/光センサ部300と表記する。
表示/光センサ部300は、いわゆる光センサ内蔵液晶表示装置である。表示/光センサ部300は、センサ内蔵液晶パネル301、バックライト307、それらを駆動するための周辺回路309を含んで構成される。
センサ内蔵液晶パネル301は、マトリクス状に配置された複数の画素回路31および光センサ回路32を含んで構成される。センサ内蔵液晶パネル301の詳細な構成については後述する。
周辺回路309は、液晶パネル駆動回路304、光センサ駆動回路305、信号変換回路306、バックライト駆動回路308を含む。
液晶パネル駆動回路304は、回路制御部600の表示制御部601からのタイミング制御信号(TC1)およびデータ信号(D)に従って、制御信号(G)およびデータ信号(S)を出力し、画素回路31を駆動する回路である。画素回路31の駆動方法の詳細については後述する。
光センサ駆動回路305は、回路制御部600のセンサ制御部602からのタイミング制御信号(TC2)に従って、信号線(R)に電圧を印加し、光センサ回路32を駆動する回路である。光センサ回路32の駆動方法の詳細については後述する。
信号変換回路306は、光センサ回路32から出力されるセンサ出力信号(SS)をデジタル信号(DS)に変換し、該変換後の信号をセンサ制御部602に送信する回路である。
バックライト307は、複数の白色LED(Light Emitting Diode)を含んでおり、センサ内蔵液晶パネル301の背面に配置される。そして、バックライト駆動回路308から電源電圧が印加されると、バックライト307は点灯し、センサ内蔵液晶パネル301に光を照射する。なお、バックライト307は、白色LEDに限らず、他の色のLEDを含んでいてもよい。また、バックライト307は、LEDに代えて、例えば、冷陰極管(CCFL:Cold Cathode Fluorescent Lamp)を含むものであってもよい。
バックライト駆動回路308は、回路制御部600のバックライト制御部603からの制御信号(BK)がハイレベルであるときは、バックライト307に電源電圧を印加し、逆に、バックライト制御部603からの制御信号がローレベルであるときは、バックライト307に電源電圧を印加しない。
次に、回路制御部600について説明する。回路制御部600は、表示/光センサ部300の周辺回路309を制御するデバイスドライバとしての機能を備えるものである。回路制御部600は、表示制御部601、センサ制御部602、バックライト制御部603、および表示データ記憶部604を備えている。
表示制御部601は、データ処理部700の表示データ処理部701から表示データを受信するとともに、表示データ処理部701からの指示に従って、表示/光センサ部300の液晶パネル駆動回路304に、タイミング制御信号(TC1)およびデータ信号(D)を送信し、上記受信した表示データをセンサ内蔵液晶パネル301に表示させる。
なお、表示制御部601は、表示データ処理部701から受信した表示データを、表示データ記憶部604に一次記憶させる。そして、当該一次記憶させた表示データに基づいて、データ信号(D)を生成する。表示データ記憶部604は、例えば、VRAM(video random access memory)などである。
センサ制御部602は、データ処理部700のセンサデータ処理部703からの指示に従って、表示/光センサ部300の光センサ駆動回路305に、タイミング制御信号(TC2)を送信し、センサ内蔵液晶パネル301にてスキャンを実行させる。
また、センサ制御部602は、信号変換回路306からデジタル信号(DS)を受信する。そして、センサ内蔵液晶パネル301に含まれる全ての光センサ回路32から出力されたセンサ出力信号(SS)に対応するデジタル信号(DS)に基づいて、画像データを生成する。つまり、センサ内蔵液晶パネル301の読み取り領域全体で読み取った画像データを生成する。そして、該生成した画像データをセンサデータ処理部703に送信する。
バックライト制御部603は、表示データ処理部701およびセンサデータ処理部703からの指示に従って、表示/光センサ部300のバックライト駆動回路308に制御信号(BK)を送信し、バックライト307を駆動させる。
なお、データ表示/センサ装置100が、複数の表示/光センサ部300を備える場合、表示制御部601は、データ処理部700から、どの表示/光センサ部300にて表示データを表示するかの指示を受けたとき、当該指示に応じた表示/光センサ部300の液晶パネル駆動回路304を制御する。また、センサ制御部602は、データ処理部700から、どの表示/光センサ部300にて対象物のスキャンを行なうかの指示を受けたとき、当該指示に応じた表示/光センサ部300の光センサ駆動回路305を制御するとともに、当該指示に応じた表示/光センサ部300の信号変換回路306からデジタル信号(DS)を受信する。
次に、データ処理部700について説明する。データ処理部700は、主制御部800から受信する「コマンド」に基づいて、回路制御部600に指示を与えるミドルウェアとしての機能を備えるものである。なお、コマンドの詳細については後述する。
データ処理部700は、表示データ処理部701およびセンサデータ処理部703を備えている。そして、データ処理部700が、主制御部800からコマンドを受信すると、該受信したコマンドに含まれる各フィールド(後述する)の値に応じて、表示データ処理部701およびセンサデータ処理部703の少なくとも一方が動作する。
表示データ処理部701は、主制御部800から表示データを受信するとともに、データ処理部700が受信したコマンドに従って、表示制御部601およびバックライト制御部603に指示を与え、上記受信した表示データをセンサ内蔵液晶パネル301に表示させる。なお、コマンドに応じた、表示データ処理部701の動作については、後述する。
センサデータ処理部703は、データ処理部700が受信したコマンドに従って、センサ制御部602およびバックライト制御部603に指示を与える。
また、センサデータ処理部703は、センサ制御部602から画像データを受信し、当該画像データをそのまま画像データバッファ704に格納する。そして、センサデータ処理部703は、データ処理部700が受信したコマンドに従って、画像データバッファ704に記憶されている画像データに基づいて、「全体画像データ」、「部分画像データ(部分画像の座標データを含む)」、および「座標データ」の少なくともいずれか1つを、主制御部800に送信する。なお、全体画像データ、部分画像データ、および座標データについては、後述する。また、コマンドに応じた、センサデータ処理部703の動作については、後述する。
次に、主制御部800は、アプリケーションプログラムを実行するものである。主制御部800は、記憶部901に格納されているプログラムを、例えばRAM(Random Access Memory)等で構成される一次記憶部902に読み出して実行する。
主制御部800で実行されるアプリケーションプログラムは、センサ内蔵液晶パネル301に表示データを表示させたり、センサ内蔵液晶パネル301にて対象物のスキャンを行わせるために、データ処理部700に対して、コマンドおよび表示データを送信する。また、コマンドに「データ種別」を指定した場合は、当該コマンドの応答として、全体画像データ、部分画像データ、および座標データの少なくともいずれか1つを、データ処理部700から受信する。
なお、回路制御部600、データ処理部700、および主制御部800は、それぞれ、CPU(Central Processing Unit)およびメモリ等で構成することができる。また、データ処理部700は、ASIC(application specific integrate circuit)などの回路で構成されていてもよい。
次に、記憶部901は、図示のように、主制御部800が実行するプログラムおよびデータを格納するものである。なお、主制御部800が実行するプログラムは、アプリケーション固有のプログラムと、各アプリケーションが共用可能な汎用プログラムとに分離されていてもよい。
次に、操作部903は、データ表示/センサ装置100のユーザの入力操作を受けつけるものである。操作部903は、例えば、スイッチ、リモコン、マウス、キーボードなどの入力デバイスで構成される。そして、操作部903は、データ表示/センサ装置100のユーザの入力操作に応じた制御信号を生成し、該生成した制御信号を主制御部800へ送信する。
なお、上記スイッチの例としては、筐体のヒンジ部分に設けられ、筐体の開閉状態を検出するヒンジ部スイッチ904、電源のオンとオフとを切り替える電源スイッチ905、予め所定の機能が割り当てられているユーザスイッチ906などのハードウェアスイッチを想定している。
その他、データ表示/センサ装置100は、無線/有線通信によって外部装置と通信を行なうための外部通信部907、音声を出力するためのスピーカ等の音声出力部908、音声信号を入力するためのマイク等の音声入力部909などを適宜備えていてもよい。
(コマンドの詳細)
次に、図5および図6を参照しながら、主制御部800からデータ処理部700に送信されるコマンドの詳細について説明する。図5は、コマンドのフレーム構造の一例を模式的に示す図である。また、図6は、コマンドに含まれる各フィールドに指定可能な値の一例、および、その概要を説明する図である。
図5に示すように、コマンドは、「ヘッダ」、「データ取得タイミング」、「データ種別」、「スキャン方式」、「スキャン画像階調」、「スキャン解像度」、「スキャンパネル」、「表示パネル」、および「予備」の各フィールドを含んでいる。そして、各フィールドには、例えば、図5に示す値が指定可能である。
「ヘッダ」フィールドは、フレームの開始を示すフィールドである。「ヘッダ」フィールドであることが識別可能であれば、「ヘッダ」フィールドの値は、どのような値であってもよい。
次に、「データ取得タイミング」フィールドは、データを主制御部800へ送信すべきタイミングを指定するフィールドである。「データ取得タイミング」フィールドには、例えば、“00”(センス)、“01”(イベント)、および“10”(オール)という値が指定可能である。
ここで、“センス”は、最新のデータを直ちに送信することを指定するものである。よって、センサデータ処理部703は、「データ取得タイミング」フィールドの値が“センス”であるコマンドを受信すると、「データ種別」フィールドにて指定されている最新のデータを、直ちに、主制御部800に送信する。
また、“イベント”は、センサ制御部602から受信する画像データに変化が生じたタイミングで送信することを指定するものである。よって、センサデータ処理部703は、「データ取得タイミング」フィールドの値が“イベント”であるコマンドを受信すると、「データ種別」フィールドにて指定されているデータを、センサ制御部602から受信する画像データに、所定の閾値より大きい変化が生じたタイミングで、主制御部800に送信する。
また、“オール”は、所定周期でデータを送信することを指定するものである。よって、センサデータ処理部703は、「データ取得タイミング」フィールドの値が“オール”であるコマンドを受信すると、「データ種別」フィールドにて指定されているデータを、所定周期で、主制御部800に送信する。なお、上記所定周期は、光センサ回路32にてスキャンを行なう周期と一致する。
次に、「データ種別」フィールドは、センサデータ処理部703から取得するデータの種別を指定するフィールドである。なお、「データ種別」フィールドには、例えば、“001”(座標)、“010”(部分画像)、および“100”(全体画像)という値が指定可能である。さらに、これらの値を加算することによって、“座標”と、“部分画像”/“全体画像”とを、同時に指定可能である。例えば、“座標”と“部分画像”とを同時に指定する場合、“011”と指定することができる。
センサデータ処理部703は、「データ種別」フィールドの値が“全体画像”であるコマンドを受信すると、画像データバッファ704に記憶している画像データそのものを主制御部800に送信する。画像データバッファ704に記憶している画像データそのものを、「全体画像データ」と称する。
また、センサデータ処理部703は、「データ種別」フィールドの値が“部分画像”であるコマンドを受信すると、センサ制御部602から受信する画像データから、所定の閾値より大きい変化が生じた部分を含む領域を抽出し、該抽出した領域の画像データを主制御部800に送信する。ここで、当該画像データを、「部分画像データ」と称する。なお、上記部分画像データが複数抽出された場合、センサデータ処理部703は、該抽出されたそれぞれの部分画像データを主制御部800に送信する。
さらに、センサデータ処理部703は、「データ種別」フィールドの値が“部分画像”であるコマンドを受信したとき、部分画像データにおける代表座標を検出し、当該代表座標の部分画像データにおける位置を示す座標データを主制御部800に送信する。なお、上記代表座標とは、例えば、上記部分画像データの中心の座標、上記部分画像データの重心の座標などが挙げられる。
次に、センサデータ処理部703は、「データ種別」フィールドの値が“座標”であるコマンドを受信すると、上記代表座標の全体画像データにおける位置を示す座標データを主制御部800に送信する。なお、上記部分画像データが複数抽出された場合、センサデータ処理部703は、該抽出された、それぞれの部分画像データの、全体画像データにおける代表座標を検出し、当該代表座標を示す座標データのそれぞれを主制御部800に送信する(多点検出)。
なお、全体画像データ、部分画像データ、および座標データの具体例については、模式図を参照しながら後述する。
次に、「スキャン方式」フィールドは、スキャン実行時に、バックライト307を点灯するか否かを指定するフィールドである。「スキャン方式」フィールドには、例えば、“00”(反射)、“01”(透過)、および“10”(反射/透過)という値が指定可能である。
“反射”は、バックライト307を点灯した状態でスキャンを行なうことを指定するものである。よって、センサデータ処理部703は、「スキャン方式」フィールドの値が“反射”であるコマンドを受信すると、光センサ駆動回路305とバックライト駆動回路308とが同期して動作するように、センサ制御部602とバックライト制御部603とに指示を与える。
また、“透過”は、バックライト307を消灯した状態でスキャンを行なうことを指定するものである。よって、センサデータ処理部703は、「スキャン方式」フィールドの値が“透過”であるコマンドを受信すると、光センサ駆動回路305を動作させ、バックライト駆動回路308と動作させないようにセンサ制御部602とバックライト制御部603とに指示を与える。なお、“反射/透過”は、“反射”と“透過”とを併用してスキャンを行なうことを指定するものである。
次に、「スキャン画像階調」フィールドは、部分画像データおよび全体画像データの階調を指定するフィールドである。「スキャン画像階調」フィールドには、例えば、“00”(2値)、および“01”(多値)という値が指定可能である。
ここで、センサデータ処理部703は、「スキャン画像階調」フィールドの値が“2値”であるコマンドを受信すると、部分画像データおよび全体画像データをモノクロデータとして、主制御部800に送信する。
また、センサデータ処理部703は、「スキャン画像階調」フィールドの値が“多値”であるコマンドを受信すると、部分画像データおよび全体画像データを多階調データとして、主制御部800に送信する。
次に、「スキャン解像度」フィールドは、部分画像データおよび全体画像データの解像度を指定するフィールドである。「スキャン解像度」フィールドには、例えば、“0”(高)および“1”(低)という値が指定可能である。
ここで、“高”は、高解像度を指定するものである。よって、センサデータ処理部703は、「スキャン解像度」フィールドの値が“高”であるコマンドを受信すると、部分画像データおよび全体画像データを高解像度で主制御部800に送信する。例えば、画像認識などの画像処理を行なう対象の画像データ(指紋などの画像データ)には、“高”を指定することが望ましい。
また、“低”は、低解像度を指定するものである。よって、センサデータ処理部703は、「スキャン解像度」フィールドの値が“低”であるコマンドを受信すると、部分画像データおよび全体画像データを低解像度で主制御部800に送信する。例えば、タッチした位置等が分かる程度でよい画像データ(タッチした指や手の画像データなど)には、“低”を指定することが望ましい。
次に、「スキャンパネル」フィールドは、どの表示/光センサ部300にて対象物のスキャンを行なうかを指定するフィールドである。「スキャンパネル」フィールドには、例えば、“001”(第1表示/光センサ部300A)、“010”(第2表示/光センサ部300B)という値が指定可能である。なお、これらの値を加算することによって、複数の表示/光センサ部300を同時に指定可能である。例えば、“第1表示/光センサ部300A”と“第2表示/光センサ部300B”とを同時に指定する場合、“011”と指定することができる。
ここで、センサデータ処理部703は、「スキャンパネル」フィールドの値が“第1表示/光センサ部300A”であるコマンドを受信すると、第1表示/光センサ部300Aの光センサ駆動回路305およびバックライト駆動回路308を制御するように、センサ制御部602およびバックライト制御部603に指示を与える。
次に、「表示パネル」フィールドは、どの表示/光センサ部300にて表示データを表示させるかを指定するフィールドである。「表示パネル」フィールドには、例えば、“001”(第1表示/光センサ部300A)、“010”(第2表示/光センサ部300B)という値が指定可能である。なお、これらの値を加算することによって、複数の表示/光センサ部300を同時に指定可能である。例えば、“第1表示/光センサ部300A”と“第2表示/光センサ部300B”とを同時に指定する場合、“011”と指定することができる。
ここで、表示データ処理部701は、例えば、「表示パネル」フィールドの値が“第1表示/光センサ部300A”であるコマンドを受信すると、第1表示/光センサ部300Aに表示データを表示させるために、第1表示/光センサ部300Aの液晶パネル駆動回路304およびバックライト駆動回路308を制御するように、表示制御部601およびバックライト制御部603に指示を与える。
次に、「予備」フィールドは、上述したフィールドにて指定可能な情報以外の情報をさらに指定する必要がある場合に、適宜指定されるフィールドである。
なお、主制御部800にて実行されるアプリケーションは、コマンドを送信するにあたり、上述したフィールドを全て使用する必要はなく、使用しないフィールドには無効値(NULL値など)を設定しておけばよい。
また、ユーザが指やペンなどでタッチした位置の座標データを取得したいときは、「データ種別」フィールドに“座標”を指定したコマンドをデータ処理部700に送信することとなるが、指やペンなどは動きがあるため、さらに、当該コマンドの「データ取得タイミング」フィールドに“オール”を指定し、座標データを取得するようにすることが望ましい。また、タッチした位置の座標データが取得できればよいため、スキャンの精度は高くなくてもよい。したがって、上記コマンドの「スキャン解像度」フィールドの値は“低”を指定しておけばよい。
また、コマンドの「データ種別」フィールドに“座標”を指定した場合において、例えば、ユーザが、複数の指やペンなどでセンサ内蔵液晶パネル301を同時にタッチした場合は、該タッチした位置の座標データのそれぞれを取得することができる(多点検出)。
また、原稿などの対象物の画像データを取得する場合、「データ種別」フィールドに“全体画像”を指定したコマンドをデータ処理部700に送信することとなるが、原稿などの対象物は、通常、静止させた状態でスキャンを実行することが一般的であるため、周期的にスキャンを実行する必要はない。従って、この場合は、「データ取得タイミング」フィールドに“センス”または“イベント”を指定することが望ましい。なお、原稿などの対象物をスキャンするときは、ユーザが文字を読みやすいように、スキャン精度は高い方が望ましい。したがって、「スキャン解像度」フィールドには“高”を指定することが望ましい。
(全体画像データ/部分画像データ/座標データ)
次に、図7を参照しながら、全体画像データ、部分画像データ、および座標データについて、例を挙げて説明する。図7(a)に示す画像データは、対象物がセンサ内蔵液晶パネル301上に置かれていないときに、センサ内蔵液晶パネル301全体をスキャンした結果として得られる画像データである。また、図7(b)に示す画像データは、ユーザが指でセンサ内蔵液晶パネル301をタッチしているときに、センサ内蔵液晶パネル301全体をスキャンした結果として得られる画像データである。
ユーザが指でセンサ内蔵液晶パネル301をタッチしたとき、当該タッチした近傍の光センサ回路32が受光する光量が変化するため、当該光センサ回路32が出力する電圧に変化が生じ、その結果として、センサ制御部602が生成する画像データのうち、ユーザがタッチした部分の画素値の明度に変化が生じることとなる。
図7(b)に示す画像データでは、図7(a)に示す画像データと比べると、ユーザの指に該当する部分の画素値の明度が高くなっている。そして、図7(b)に示す画像データにおいて、明度が所定の閾値より大きく変化している画素値を全て含む最小の矩形領域(領域PP)が、“部分画像データ”である。
なお、領域APで示される画像データが、“全体画像データ”である。
また、部分画像データ(領域PP)の代表座標Zの、全体画像データ(領域AP)における座標データは(Xa,Ya)であり、部分画像データ(領域PP)における座標データは(Xp,Yp)である。
(センサ内蔵液晶パネルの構成)
次に、図8を参照しながら、センサ内蔵液晶パネル301の構成、および、センサ内蔵液晶パネル301の周辺回路309の構成について説明する。図8は、表示/光センサ部300の要部、特に、センサ内蔵液晶パネル301の構成および周辺回路309の構成を示すブロック図である。
センサ内蔵液晶パネル301は、光透過率(輝度)を設定するための画素回路31、および、自身が受光した光の強度に応じた電圧を出力する光センサ回路32を備えている。なお、画素回路31は、赤色、緑色、青色のカラーフィルタのそれぞれに対応するR画素回路31r、G画素回路31g、B画素回路31bの総称として用いる。
画素回路31は、センサ内蔵液晶パネル301上の列方向(縦方向)にm個、行方向(横方向)に3n個配置される。そして、R画素回路31r、G画素回路31g、およびB画素回路31bの組が、行方向(横方向)に連続して配置される。この組が1つの画素を形成する。
画素回路31の光透過率を設定するには、まず、画素回路31に含まれるTFT(Thin Film Transistor)33のゲート端子に接続される走査信号線Giにハイレベル電圧(TFT33をオン状態にする電圧)を印加する。その後、R画素回路31rのTFT33のソース端子に接続されているデータ信号線SRjに、所定の電圧を印加する。同様に、G画素回路31gおよびB画素回路31bについても、光透過率を設定する。そして、これらの光透過率を設定することにより、センサ内蔵液晶パネル301上に画像が表示される。
次に、光センサ回路32は、一画素毎に配置される。なお、R画素回路31r、G画素回路31g、およびB画素回路31bのそれぞれの近傍に1つずつ配置されてもよい。
光センサ回路32にて光の強度に応じた電圧を出力させるためには、まず、コンデンサ35の一方の電極に接続されているセンサ読み出し線RWiと、フォトダイオード36のアノード端子に接続されているセンサリセット線RSiとに所定の電圧を印加する。この状態において、フォトダイオード36に光が入射されると、入射した光量に応じた電流がフォトダイオード36に流れる。そして、当該電流に応じて、コンデンサ35の他方の電極とフォトダイオード36のカソード端子との接続点(以下、接続ノードV)の電圧が低下する。そして、センサプリアンプ37のドレイン端子に接続される電圧印加線SDjに電源電圧VDDを印加すると、接続ノードVの電圧は増幅され、センサプリアンプ37のソース端子からセンシングデータ出力線SPjに出力される。そして、当該出力された電圧に基づいて、光センサ回路32が受光した光量を算出することができる。
次に、センサ内蔵液晶パネル301の周辺回路である、液晶パネル駆動回路304、光センサ駆動回路305、およびセンサ出力アンプ44について説明する。
液晶パネル駆動回路304は、画素回路31を駆動するための回路であり、走査信号線駆動回路3041およびデータ信号線駆動回路3042を含んでいる。
走査信号線駆動回路3041は、表示制御部601から受信したタイミング制御信号TC1に基づいて、1ライン時間毎に、走査信号線G1〜Gmの中から1本の走査信号線を順次選択し、該選択した走査信号線にハイレベル電圧を印加するとともに、その他の走査信号線にローレベル電圧を印加する。
データ信号線駆動回路3042は、表示制御部601から受信した表示データD(DR、DG、およびDB)に基づいて、1ライン時間毎に、1行分の表示データに対応する所定の電圧を、データ信号線SR1〜SRn、SG1〜SGn、SB1〜SBnに印加する(線順次方式)。なお、データ信号線駆動回路3042は、点順次方式で駆動するものであってもよい。
光センサ駆動回路305は、光センサ回路32を駆動するための回路である。光センサ駆動回路305は、センサ制御部602から受信したタイミング制御信号TC2に基づいて、センサ読み出し信号線RW1〜RWmの中から、1ライン時間毎に1本ずつ選択したセンサ読み出し信号線に所定の読み出し用電圧を印加するとともに、その他のセンサ読み出し信号線には、所定の読み出し用電圧以外の電圧を印加する。また、同様に、タイミング制御信号TC2に基づいて、センサリセット信号線RS1〜RSmの中から、1ライン時間毎に1本ずつ選択したセンサリセット信号線に所定のリセット用電圧を印加するとともに、その他のセンサリセット信号線には、所定のリセット用電圧以外の電圧を印加する。
センシングデータ出力信号線SP1〜SPnはp個(pは1以上n以下の整数)のグループにまとめられ、各グループに属するセンシングデータ出力信号線は、時分割で順次オン状態になるスイッチ47を介して、センサ出力アンプ44に接続される。センサ出力アンプ44は、スイッチ47により接続されたセンシングデータ出力信号線のグループからの電圧を増幅し、センサ出力信号SS(SS1〜SSp)として、信号変換回路306へ出力する。
(データ表示/センサ装置100の要部構成)
続いて、データ表示/センサ装置100における主制御部800の要部構成について、図1を参照しつつ以下に説明する。図1は、データ表示/センサ装置100における主制御部800の要部構成を示すブロック図である。
データ表示/センサ装置100における主制御部800は、図1に示すように、画像数算出部11、指示方向検出部12、実行処理決定部13、表示位置決定部14および表示処理制御部15を備えている。これらの部材について、以下に説明する。
(画像数算出部11)
画像数算出部11は、表示/光センサ部300において検知された対象物の像のうち、表示/光センサ部300に表示されている画像上に位置する像の数を算出する。
(指示方向検出部12)
指示方向検出部12は、表示/光センサ部300に表示されている画像上の点を指示する対象物の位置座標と、この位置座標の次に指示された点の位置座標とに基づいて、指示方向を検出する。
ここで、本実施形態では、対象物の像における時間的に連続する位置座標から求められるベクトルの向きにより、指示方向を検出する場合を例に挙げて説明する。すなわち、本実施形態では、対象物(例えば、ユーザの指またはタッチペン)をスライドさせることにより得られるストロークに基づいて、指示方向を検出する場合を例に挙げて説明する。もちろん、指示方向の検出手法は、これに限定されるものではなく、対象物の位置座標の位置変化に応じて検出されるものであれば、いかなる手法により検出してもよい。
(実行処理決定部13)
実行処理決定部13は、対象物により少なくとも一部が被覆されている画像の種類および画像数算出部11において算出された像の数に応じて、データ表示/センサ装置100において実行する処理を決定する。
本実施形態では、画像がアプリケーションの実行ファイルに関連付けられたアイコンであり、そのアイコンを被覆する対象物の像の数が1つである場合、実行ファイルを実行することにより、アプリケーションを起動する。より具体的には、データ表示/センサ装置100において実行する処理を、アプリケーションに起動させ、起動したアプリケーションのウィンドウ画像を表示する。
画像を被覆する対象物の像の数が2つである場合には、画像を別の表示/光センサ部300に対してそのままの状態で移動する。
また、画像がアプリケーションのウィンドウ画像であり、ウィンドウ画像を被覆する対象物の像の数が3つである場合には、ウィンドウ画像の表示を終了する。より具体的には、アプリケーションのウィンドウ画像に変えて、当該アプリケーションの実行ファイルに関連付けられたアイコンを表示する。
なお、データ表示/センサ装置100において実行されるアプリケーションの実行ファイルを含むプログラムデータおよび当該実行ファイルに関連付けられたアイコンは、記憶部901に格納されていることが好ましい。すなわち、主制御部800は、アイコンを記憶部901から読み出して表示する。
(表示位置決定部14)
表示位置決定部14は、指示方向検出部12において検出された指示方向に基づいて、実行処理決定部13において決定された処理を実行することにより得られる画像を表示する表示/光センサ部300を決定する。
このとき、表示位置決定部14は、データ表示/センサ装置100における表示/光センサ部300の配置の認識に基づいて、表示/光センサ部300を決定する。
例えば、データ表示/センサ装置100が図9(a)に示す構成である場合、第2表示/光センサ部300Bにおいてユーザの指示する指示方向が上方向である場合には、第2表示/光センサ部300Bの上部に設けられている、上部筐体40における第1表示/光センサ部300Aに画像を表示する。
なお、データ表示/センサ装置100が図9(c)に示す構成である場合、すなわち3つの筐体からなる場合の指示方向の定義については、図10に示す。図10は、データ表示/センサ装置100が3つの筐体からなる場合における指示方向の定義を示す図である。
図10に示すように、第1筐体44における第1表示/光センサ部300Aにおいてユーザの指示する指示方向が方向A1である場合には、第2筐体45における第2表示/光センサ部300Bに画像を表示し、指示方向が方向A2である場合には、第3筐体46における第3表示/光センサ部300Cに画像を表示する。
同様に、第2表示/光センサ部300Bにおいてユーザの指示する指示方向が方向B1である場合には、第1表示/光センサ部300Aに画像を表示し、指示方向が方向B2である場合には、第3表示/光センサ部300Cに画像を表示する。第3表示/光センサ部300Cにおいてユーザの指示する指示方向が方向C1である場合には、第2表示/光センサ部300Bに画像を表示し、指示方向が方向C2である場合には、第1表示/光センサ部300Aに画像を表示する。
このように、データ表示/センサ装置100が図9(c)に示すような構成である場合の各指示方向は、対象物の部分画像における代表座標を中心とする扇状領域に基づいて決定すればよい。各扇状領域の大きさ、すなわち扇形の中心角は、データ表示/センサ装置100における表示/光センサ部300の配置の認識に基づいている。
なお、扇形の中心各の大きさは、予め設定された不変の値であってもよいし、ユーザにより適宜設定可能であってもよい。また、対象物が画像を被覆すると共に、図10に示す扇状領域を表示/光センサ部300に実際に表示するようにしてもよい。
表示/光センサ部300が4つ以上である場合には、対象物の部分画像における代表座標を中心とする扇状領域の数を増加することにより対応すればよい。
(表示処理制御部15)
表示処理制御部15は、実行処理決定部13において決定された処理を、表示位置決定部14において決定された表示/光センサ部300において実行するように指示する。
例えば、実行処理決定部13において決定された処理がアプリケーションの起動であり、かつ、表示位置決定部14において決定された表示/光センサ部300が、上側筐体40における第1表示/光センサ部300Aである場合、表示処理制御部15は、起動するアプリケーションを記憶部901から読み出すと共に、読み出したアプリケーションのウィンドウ画像を第1表示/光センサ部300Aにおいて表示する指示を出力する。
(ウィンドウ画像を表示させる際の動作処理の詳細)
次に、データ表示/センサ装置100において所望する表示/光センサ部300においてアプリケーションのウィンドウ画像を表示させる際の動作処理の詳細について、図11を参照しつつ以下に説明する。図11は、所望する表示/光センサ部300においてアプリケーションのウィンドウを表示させる際の動作を示すフローチャートである。
まず、画像数算出部11は、データ処理部700を介して入力された対象物の像のうち、表示/光センサ部300に表示されている画像上に位置する像の数がいくつであるのかを判定する(ステップS1)。
画像数算出部11が像の数が1つであると判定した場合、実行処理決定部13は、対象物により被覆される画像がアプリケーションを実行する実行ファイルに関連付けられたアイコンであるか否かを判定する(ステップS2)。対象物により被覆される画像がアイコンではない場合には(ステップS2においてNo)、データ表示/センサ装置100は処理を終了する。一方で、対象物により被覆される画像がアイコンである場合(ステップS2においてYes)、実行処理決定部13は、データ表示/センサ装置100において実行する処理を、アプリケーションの起動に決定する(ステップS3)。
また、指示方向検出部12は、データ処理部700を介して入力される、アイコンを被覆する対象物の像の時間的に連続する位置座標から指示方向を検出する(ステップS4)。そして、表示位置決定部14は、ステップS4において検出された指示方向に基づいて、アプリケーションを起動することにより表示されるウィンドウ画像を表示する表示/光センサ部300を決定する(ステップS5)。
最後に、表示処理制御部15は、表示位置決定部14において決定した表示/光センサ部300において、アイコンに関連付けられた実行ファイルを実行することにより起動するアプリケーションのウィンドウ画像を表示させるようにデータ処理部700に対して指示を出力する(ステップS6)。
(所望の表示/光センサ部300にウィンドウ画像を表示させる具体例)
次に、ユーザの所望する表示/光センサ部300においてウィンドウ画像を表示する具体例を図12(a)および(b)を参照しつつ以下に説明する。図12(a)および(b)は、ユーザの所望する表示/光センサ部300において、実行したアプリケーションのウィンドウ画像を表示する具体例を示す図であり、(a)はアプリケーションを実行する際の動作を示す図であり、(b)は(a)に示す動作に基づいてウィンドウ画像を表示した状態を示す図である。
なお、本項では、下部筐体41における第2表示/光センサ部300Bに表示されている「表計算」のアプリケーションを実行する実行ファイルに関連付けられたアイコンをタッチ(タップ)することにより、上部筐体40における表示/光センサ部300Aに「表計算」のアプリケーションのウィンドウ画像を表示する場合を例に挙げて説明する。
図12(a)に示すように、ユーザが下部筐体41における第2表示/光センサ部300Bに表示されているアイコンを一本指でタッチ(タップ)しつつ、アイコンをタッチした指を上方向にスライドさせる。このとき、データ表示/センサ装置100における画像数算出部11は、「表計算」のアプリケーションを起動するためのアイコンを被覆するユーザの指の像が1つであることを検出する。実行処理決定部13は、画像数算出部11における検出結果に基づいて、アイコンに関連付けられた実行ファイルを実行することにより、「表計算」のアプリケーションを起動する処理の実行を決定する。
また同時に、指示方向検出部12は、ユーザの指が上方向にスライドされたことを検出する。これに基づいて、表示位置決定部14は、「表計算」のアプリケーションを起動するためのアイコンに関連付けられた実行ファイルを実行することにより表示されるウィンドウ画像を上部筐体40における第1表示/光センサ部300Aに表示することを決定する。
これによって、図12(b)に示すように、起動した「表計算」のアプリケーションのウィンドウ画像を上部筐体40における第1表示/光センサ部300Aに表示させることができる。なお、このときアイコンは、図12(b)に示すように、下部筐体41における第2表示/光センサ部300Bにおいて、色を薄く表示する(例えば、グレイアウト表示)などして表示させ続けてもよいし、表示を消すようにしてもよい。
(画像を移動表示させる際の動作処理の詳細)
次に、データ表示/センサ装置100において、所望する表示/光センサ部300に画像を移動して表示させる際の動作処理の詳細について、図13を参照しつつ以下に説明する。図13は、所望する表示/光センサ部300に画像を移動して表示させる際の動作を示すフローチャートである。
画像数算出部11は、データ処理部700を介して入力された対象物の像のうち、表示/光センサ部300に表示されている画像上に位置する像の数が2つであると判定した場合、実行処理決定部13は、データ表示/センサ装置100において実行する処理を、対象物により被覆されている画像(すなわち、ユーザにより選択された画像)の移動処理に決定する(ステップS11)。
指示方向検出部12は、データ処理部700を介して入力される、画像を被覆する対象物の像における時間的に連続する位置座標から指示方向を検出する(ステップS12)。そして、表示位置決定部14は、ステップS12において検出された指示方向に基づいて、対象物により被覆されている画像を移動する表示/光センサ部300を決定する(ステップS13)。
最後に、表示処理制御部15は、表示位置決定部14において決定した表示/光センサ部300において、画像を表示させるようにデータ処理部700に対して指示を出力する(ステップS14)。
(所望の表示/光センサ部300に画像を移動して表示させる具体例)
次に、ユーザの所望する表示/光センサ部300にウィンドウ画像を移動して表示する具体例を、図14(a)および(b)を参照しつつ以下に説明する。図14(a)および(b)は、ユーザの所望する表示/光センサ部300にウィンドウ画像を移動して表示する具体例を示す図であり、(a)ウィンドウ画像を移動させる動作を示す図であり、(b)は(a)に示す動作に基づいてウィンドウ画像を移動して表示した状態を示す図である。
なお、図14(a)および(b)では、上部筐体40における第1表示/光センサ部300Aに表示されている「表計算」のアプリケーションのウィンドウ画像を、下部筐体41における第2表示/光センサ部300Bに移動して表示する場合を例に挙げて説明する。
図14(a)に示すように、ユーザが上部筐体40における第1表示/光センサ部300Aに表示されているウィンドウ画像を二本指でタッチ(タップ)しつつ、ウィンドウ画像をタッチした指を下側にスライドさせる。このとき、データ表示/センサ装置100における画像数算出部11は、「表計算」のアプリケーションのウィンドウ画像の一部を被覆するユーザの指の像が2つであることを検出する。実行処理決定部13は、画像数算出部11における検出結果に基づいて、ウィンドウ画像を移動させる処理の実行を決定する。
また同時に、指示方向検出部12は、ユーザの指が下方向にスライドされたことを検出する。これに基づいて、表示位置決定部14は、「表計算」のアプリケーションのウィンドウ画像を下部筐体41における第2表示/光センサ部300Bに移動することを決定する。
これによって、図14(b)に示すように、上部筐体40における第1表示/光センサ部300Aに表示されている「表計算」のアプリケーションのウィンドウ画像を、そのままの状態で下部筐体41における第2表示/光センサ部300Bに移動して表示することができる。
図14(a)および(b)では、「表計算」のアプリケーションのウィンドウ画像を移動させることを例に挙げて説明しているが、移動させることができる画像は、ウィンドウ画像に限定させるものではない。例えば、表示/光センサ部300に表示されているアイコンを別の表示/光センサ部300に移動して表示させることもできる。
ユーザの所望する表示/光センサ部300にアイコンを移動して表示する具体例を図15(a)および(b)を参照しつつ以下に説明する。図15(a)および(b)は、ユーザの所望する表示/光センサ部300にアイコンを移動して表示する具体例を示す図であり、(a)アイコンを移動させる動作を示す図であり、(b)は(a)に示す動作に基づいてアイコンを移動して表示した状態を示す図である。
なお、図15(a)および(b)では、下部筐体41における第2表示/光センサ部300Bに表示されている「表計算」のアプリケーションの実行ファイルに関連付けられたアイコンを、上部筐体40における第1表示/光センサ部300Aに移動して表示する場合を例に挙げて説明する。
図15(a)に示すように、ユーザが下部筐体41における第2表示/光センサ部300Bに表示されているアイコンを二本指でタッチ(タップ)しつつ、アイコンをタッチした指を上方向にスライドさせる。このとき、データ表示/センサ装置100における画像数算出部11は、アイコンの一部を被覆するユーザの指の像が2つであることを検出する。実行処理決定部13は、画像数算出部11における検出結果に基づいて、アイコンを移動させる処理の実行を決定する。
また同時に、指示方向検出部12は、ユーザの指が上方向にスライドされたことを検出する。これに基づいて、表示位置決定部14は、アイコンを上部筐体40における第1表示/光センサ部300Aに移動することを決定する。
これによって、図15(b)に示すように、下部筐体41における第2表示/光センサ部300Bに表示されている「表計算」のアプリケーションの実行ファイルに関連付けられたアイコンを、そのままの状態で上部筐体40における第1表示/光センサ部300Aに移動して表示することができる。
(ウィンドウ画像の表示を終了させる際の動作処理の詳細)
次に、データ表示/センサ装置100において表示/光センサ部300に表示されているウィンドウ画像の表示を終了させる際の動作処理の詳細について、図16を参照しつつ以下に説明する。図16は、表示/光センサ部300に表示されているウィンドウ画像の表示を終了させる際の動作を示すフローチャートである。
画像数算出部11は、データ処理部700を介して入力された対象物の像のうち、表示/光センサ部300に表示されている画像上に位置する像の数が3つであると判定した場合、実行処理決定部13は、対象物により被覆される画像がウィンドウ画像であるか否かを判定する(ステップS21)。対象物により被覆される画像がウィンドウ画像ではない場合には(ステップS21においてNo)、データ表示/センサ装置100は処理を終了する。一方で、実行処理決定部13が、対象物により被覆される画像がウィンドウ画像であると判定した場合には(ステップS21においてYes)、実行処理決定部13は、データ表示/センサ装置100において実行する処理を、ウィンドウ画像の表示の終了に決定する(ステップS22)。
指示方向検出部12は、データ処理部700を介して入力される、ウィンドウ画像を被覆する対象物の像における時間的に連続する位置座標から指示方向を検出する(ステップS23)。そして、表示位置決定部14は、ステップS23において検出された指示方向に基づいて、対象物により被覆されているウィンドウ画像に変えて表示する実行ファイルに関連付けられたアイコンを表示する表示/光センサ部300を決定する(ステップS24)。
最後に、表示処理制御部15は、表示されているウィンドウ画像の表示を終了すると共に、表示位置決定部14において決定した表示/光センサ部300にアイコンを表示させるようにデータ処理部700に対して指示を出力する(ステップS25)。
(所望の表示/光センサ部300に画像を移動して表示させる具体例)
次に、表示/光センサ部300に表示されているウィンドウ画像の表示を終了する具体例を図17(a)および(b)を参照しつつ以下に説明する。図17(a)および(b)は、表示/光センサ部300に表示されているウィンドウ画像の表示を終了する具体例を示す図であり、(a)ウィンドウ画像の表示を終了させる動作を示す図であり、(b)は(a)に示す動作に基づいてウィンドウ画像の表示を終了した状態を示す図である。
なお、図17(a)および(b)では、上部筐体40における第1表示/光センサ部300Aに表示されている「表計算」のアプリケーションのウィンドウ画像の表示を終了し、「表計算」のアプリケーションを実行する実行ファイルに関連付けられたアイコンを下部筐体41における第2表示/光センサ部300Bに表示する場合を例に挙げて説明する。
図17(a)に示すように、ユーザが上部筐体40における第1表示/光センサ部300Aに表示されているウィンドウ画像を三本指でタッチ(タップ)しつつ、ウィンドウ画像をタッチした指を下方向にスライドさせる。このとき、データ表示/センサ装置100における画像数算出部11は、「表計算」のアプリケーションのウィンドウ画像を被覆するユーザの指の像が3つであることを検出する。実行処理決定部13は、画像数算出部11における検出結果に基づいて、ウィンドウ画像の表示を終了する処理の実行を決定する。
また同時に、指示方向検出部12は、ユーザの指が下方向にスライドされたことを検出する。これに基づいて、表示位置決定部14は、「表計算」のアプリケーションを起動するためのアイコンを下部筐体41における第2表示/光センサ部300Bに表示することを決定する。
これによって、図17(b)に示すように、上部筐体40における第1表示/光センサ部300Aにおける「表計算」のアプリケーションのウィンドウ画像の表示を終了すると共に、「表計算」のアプリケーションを実行する実行ファイルに関連付けられたアイコンを下部筐体41における第2表示/光センサ部300B表示させることができる。なお、図12(b)に示すように、ウィンドウ画像を表示する際に、アイコンの色を薄くして表示するような場合には、アイコンの色を元に戻す処理を実行するようにすればよい。
(データ表示/センサ装置100の利点)
以上説明したように、本発明に係るデータ表示/センサ装置100では、ユーザの指示する指示方向を検出する指示方向検出部12と、指示方向により示される方向に配置されている画像表示領域からアプリケーションにより表示されるウィンドウ画像を表示する表示/光センサ部300を決定する表示位置決定部14と、決定された表示/光センサ部300にウィンドウ画像を表示する表示表示処理制御部15と、を備えている。
これによって、データ表示/センサ装置100では、ユーザはウィンドウ画像を表示させたい表示/光センサ部300の方向を指示するのみで、所望の表示/光センサ部300においてウィンドウ画像を表示させることができる。したがって、データ表示/センサ装置100は、ユーザに対して煩雑な操作を強いることなく、起動させたアプリケーションのウィンドウ画像をユーザの所望する画像表示領域において表示することができる。
また、本発明に係るデータ表示/センサ装置100は、表示/光センサ部300のいずれかに表示されている画像の少なくとも一部を被覆する対象物の像の数を算出する画像数算出部11と、画像の種類および画像数算出部11において算出された像の数の応じて、データ表示/センサ装置100において実行する処理を決定する実行処理決定部13と、をさらに備えている。
これによって、データ表示/センサ装置100は、対象物の像の数を変更するのみで、データ表示/センサ装置100に所望の処理を実行させることができる。例えば、ユーザの指の数またはタッチペンの数を変更することにより、データ表示/センサ装置100に所望の処理を実行させることができる。したがって、データ表示/センサ装置100は、データ表示/センサ装置100において実行する処理を容易な操作で設定することができる。
また、本発明に係るデータ表示/センサ装置100は、対象物のスクロール方向に応じて、指示方向を検出する。
これによって、ユーザは画像の表示される表示/光センサ部300をより一層直感的に設定することができるため、例えば年少者または高齢者などのようなデータ表示/センサ装置100の操作に不慣れなユーザであっても容易に理解できる操作により、指示方向を設定することができる。
(主制御部800のコマンドを用いた動作例)
上述した主制御部800の動作処理の説明では、本発明の理解を容易にするために、コマンドを用いることなく主制御部800の動作を説明したが、本項では、主制御部800からデータ処理部700に送信されるコマンドに触れながら主制御部800の動作について説明する。なお、本項では、データ表示/センサ装置100が2つの表示/光センサ部300を備えており、下部筐体41における第2表示/光センサ部300Bに表示されているアイコンに関連付けられた実行ファイルを実行することにより起動するアプリケーションのウィンドウ画像を上部筐体40における第1表示/光センサ部300Aに表示する場合の動作処理を例に挙げて説明する。
まず、下画面である第2表示/光センサ部300Bにおいて、アイコンの少なくとも一部を被覆する対象物の像の数を算出するために、画像数算出部11は、「スキャンパネル」フィールドの値として、“第2表示/光センサ部”(“001”)を指定し、「データ取得タイミング」フィールドの値として、“イベント”(“01”)または“オール”(“10”)を指定し、「データ種別」フィールドの値として、“部分画像”および“座標”の両方(“011”)を指定したコマンドを、データ処理部700に送信する。
これによって、画像数算出部11は、データ処理部700から、第2表示/光センサ部300Bにおける部分画像および部分画像の座標(全体画像における座標)を受信することができるため、この部分画像および座標に基づいて、アイコンの少なくとも一部を被覆する対象物の像の数を算出することができる。そして、アイコンの少なくとも一部を被覆する像の数が1つである場合、データ表示/センサ装置100は、上述したように、記憶部901に記憶されているアイコンに関連付けられた実行ファイルを実行することにより、アプリケーションを起動する。
また、下画面である第2表示/光センサ部300Bにおいてユーザの指示する指示方向を検出するために、指示方向検出部12は、「スキャンパネル」フィールドの値として、“第2表示/光センサ部”(“001”)を指定し、「データ取得タイミング」フィールドの値として、“オール”(“10”)を指定し、「データ種別」フィールドの値として、“座標”(“001”)を指定したコマンドを、データ処理部700に送信する。
これによって、指示方向検出部12は、データ処理部700から、第2表示/光センサ部300Bにおける部分画像の代表座標の経時的な変化を受信することができるため、対象物の移動方向、すなわちユーザの指示する指示方向を検出することができる。
そして、表示処理制御部15が、「表示パネル」フィールドの値として“第1表示/光パネル”(“010”)を指定したコマンドと共に、起動するアプリケーションのウィンドウ画像を、データ処理部700に送信する。これによって、第1表示/光センサ部300Aに、選択したアイコンに関連付けられた実行ファイルにより実行されるアプリケーションのウィンドウ画像を表示することができる。
(付記事項)
本実施形態では、図9(a)〜(c)に示すように、表示/光センサ部300の数が縦方向および横方向に連続して2つ備えられている場合を例に挙げて説明したが、表示/光センサ部300は縦方向または横方向に3つ以上連続して備えられていてもよい。
表示/光センサ部300が縦方向または横方向に3つ以上連続して備えられている場合には、画像を表示する指示方向と共に、いずれの表示/光センサ部300に画像を表示するようにするのかを決定するパラメータを検出するパラメータ検出部を備えていることが好ましい。これは、対象物の像の位置座標および当該像よりも後に検知される像の位置座標に基づいて検出されるベクトルの大きさから検出することができる。例えば、指示方向がユーザの指によるスクロールにより決定される場合には、単位時間あたりのスクロール量(すなわち、スクロール速度)により決定すればよい。
より具体的には、例えば、表示/光センサ部300が縦方向に3つ以上連続して備えられており、ユーザが最下部の表示/光センサ部300において指示方向を指定する場合、パラメータ検出部において検出したベクトルの大きさが所定の閾値よりも大きい場合、表示位置決定部14は、最上部の表示/光センサ部300を画像を表示する表示/光センサ部300に決定する。パラメータ検出部において検出したベクトルの大きさが所定の閾値よりも小さい場合、表示位置決定部14は、隣接する(すなわち、中段の)表示/光センサ部300を画像を表示する表示/光センサ部300に決定する。
なお、表示/光センサ部300が縦方向または横方向に4つ以上連続して備えられている場合には、閾値をより詳細に設定することにより対応するようにすればよい。
これによって、表示/光センサ部300が縦方向または横方向に3つ以上連続して備えられているような場合であっても、表示位置決定部14においていずれの表示/光センサ部300に画像を表示するのかを決定することができる。
また、本実施形態では、基本的には、筐体それぞれに表示/光センサ部300が備えられている場合、すなわち、表示/光センサ部300における画像表示領域が物理的に分割されている場合を例に挙げて説明したが、これに限定されるものではない。例えば、表示/光センサ部300が1つであり、1つの表示/光センサ部300において、仮想的に画像表示領域が複数に分割されているような構成であってもよい。また、筐体それぞれに表示/光センサ部300が備えられており、それらの表示/光センサ部300がさらに複数の画像表示領域に仮想的に分割されていてもよい。
さらに、ユーザの意図しない方向を指示方向として検出することを防止するために、指示方向検出部12は単位時間あたりの位置座標の変化量が所定以上の大きさである場合にのみ、指示方向を検出するようにすることが好ましい。すなわち、指示方向検出部12は、所定の速度以上で対象物をスクロールしたときにのみ、指示方向を検出するようにすることが好ましい。
また、上述した実施形態では、対象物の像の数が1つである場合にアプリケーションを起動させ、2つである場合に画像を移動させ、3つである場合にウィンドウ画像の表示の終了である場合を例に挙げて説明したが、もちろん対象物の像の数は任意に設定することができる。
(プログラムおよび記録媒体)
最後に、データ表示/センサ装置100に含まれている回路制御部600、データ処理部700、および主制御部800は、ハードウェアロジックによって構成すればよい。または、次のように、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
すなわち、回路制御部600、データ処理部700および主制御部800は、各機能を実現するプログラムの命令を実行するMPUなどのCPU、このプログラムを格納したROM(Read Only Memory)、上記プログラムを実行可能な形式に展開するRAM(Random Access Memory)、および、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)を備えている。
そして、本発明の目的は、回路制御部600、データ処理部700および主制御部800のプログラムメモリに固定的に担持されている場合に限らず、上記プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、または、ソースプログラム)を記録した記録媒体をデータ表示/センサ装置100に供給し、データ表示/センサ装置100が上記記録媒体に記録されている上記プログラムコードを読み出して実行することによっても、達成可能である。
上記記録媒体は、特定の構造または種類のものに限定されない。すなわちこの記録媒体は、たとえば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などとすることができる。
また、回路制御部600、データ処理部700および主制御部800(またはデータ表示/センサ装置100)を通信ネットワークと接続可能に構成しても、本発明の目的を達成できる。この場合、上記のプログラムコードを、通信ネットワークを介して回路制御部600、データ処理部700および主制御部800に供給する。この通信ネットワークは回路制御部600、データ処理部700および主制御部800にプログラムコードを供給できるものであればよく、特定の種類または形態に限定されない。たとえばインターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(Virtual Private Network)、電話回線網、移動体通信網、衛星通信網等であればよい。
この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な任意の媒体であればよく、特定の構成または種類のものに限定されない。たとえばIEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL(Asymmetric Digital Subscriber Line)回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
以上、本発明を実施形態に基づいて具体的に説明したが、本発明は、上述した実施形態に限定されるものではなく、請求項に示した範囲において種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。