以下、本発明につき図面を参照しつつ詳細に説明する。なお、以下の説明により本発明が限定されるものではない。また、以下の説明における構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。以下においては、電子機器として携帯電話端末を例として説明するが、本発明の適用対象は携帯電話端末に限定されるものではなく、入力部を備える各種装置、例えば、PHS(Personal Handyphone System)、PDA、ポータブルナビゲーション装置、パーソナルコンピュータ、ゲーム機等に対しても本発明は適用できる。
図1は、本発明の文字入力装置の一実施形態である携帯電話端末の外観を示す正面図であり、携帯電話端末1は、薄板状の筺体12を有する。携帯電話端末1は、筺体12の表面に、タッチパネル2と、ボタン20、ボタン22及び入力デバイス24からなる入力部3と、レシーバ7と、マイク8とが配置されている。タッチパネル2は、板状の筺体12の面積が最も広い面に配置されている。また、入力部3も、筺体12のタッチパネル2が配置されている面の、長手方向の一方の端部に配置されている。入力部3は、短手方向の一方から他方に向かって、ボタン20、入力デバイス24、ボタン22の順で配置されている。また、レシーバ7は、筺体12のタッチパネル2が配置されている面の長手方向の他方の端部、つまり、入力部3が配置されている端部とは反対側の端部に配置されている。また、マイク8は、筺体12のタッチパネル2が配置されている面の長手方向の一方の端部、つまり、入力部3が配置されている端部に配置されている。
タッチパネル2は、文字、図形、画像等を表示するとともに、指、スタイラス、ペン(ペンの先端、棒状部材の先端)等(以下、単に「指」という)を用いてタッチパネル2に対して行われる各種動作を検出する。ここで、図2は、タッチパネル上に表示される仮想キーボードを示す図である。例えば、携帯電話端末1は、利用者から文字の入力を受け付けるために、図2に示すように、タッチパネル2上に仮想キーボード4を表示させる。携帯電話端末1は、タッチパネル2上に仮想キーボード4を表示させる状態で、指によってタッチパネル2に入力される各種動作を検出し、仮想キーボード4のどのキーが押下されたか、接触されたかを検出し、押下、接触を検出したキーを入力したキーとすることで、文字入力を行うことができる。また、タッチパネル2は、文字の入力によらず、表示させている画像と、指によってタッチパネル2に対して行われる各種動作とに基づいて、各種操作の入力を検出し、入力された操作に基づいて各種制御を行う。
入力部3は、ボタン20、22が押下された場合に、押下されたボタンに対応する機能を起動させる。また、入力部3は、入力デバイス24に入力された動作も操作として検出し、入力された操作に基づいて各種制御を行う。以下、図3から図5を用いて、入力デバイス24の構成について説明する。ここで、図3は、入力デバイスの概略構成を示す断面図であり、図4は、入力デバイスの概略構成を示す表面図であり、図5は、入力動作の一例を説明するための説明図である。
入力デバイス24は、光源30と、光学ユニット32と、センサ34と、処理部36と、接触面38と、を有し、筺体12の表面に露出した接触面38に接触する指Fの動きを検出し、解析することで、指Fによって入力された操作を検出する。なお、本実施形態では、指Fの動きとしたが、接触面38に接触し、その接触の変化、つまり移動を検出することができる対象物であれば、操作を入力する対象物として用いることができる。対象物としては、上述のタッチパネル2と同様に、指、スタイラス、ペン等を用いることができる。また、接触面38は、表面に指F等の対象物が接触することにより、光の反射の特性が変化する材料で形成されている。また、接触面38は、露出面が円形形状である。なお、入力デバイス24の近傍には、タッチパネル2が配置されており、タッチパネル2は、表示部2Bと、表示部2Bに重畳されたタッチセンサ2Aとで構成されている。
光源30は、光を出力する光源である。光源としては、LED(Light Emitting Diode)、レーザダイオード等を用いることができる。なお、光源としては、一定の波長、特に、不可視領域の波長の光を出力する光源を用いることが好ましい。不可視領域の波長の光を用いることで、接触面38から外部に光が射出されても、認識されないようにすることができ、ユーザがまぶしい思いをすることを抑制できる。また、光学ユニットを簡単にすることができるため、指向性の高い光を射出する光源を用いることが好ましい。
光学ユニット32は、光源30から出力された光を、接触面38に到達させた後、センサ34まで案内する光の経路を構成する機構であり、ミラー32aと、光学系32bとを有する。ミラー32aは、光源30から出力された光を反射し、接触面38に向けて偏向する。光学系32bは、光を集光、屈折させる光学部材で構成され、接触面38で反射した光をセンサ34に向けて偏向する。
センサ34は、接触面38で反射された光を検出する光検出素子である。センサ34は、平面の検出面を有し、平面の各位置に入射される光の強度の分布を検出することで、接触面38の画像を取得する。センサ34は、検出した結果(画像)を処理部36に送る。処理部36は、入力処理部(DSP、Digital Signal Processor)であり、センサ34での検出結果に基づいて、指Fの動きを検出する。なお、処理部36については、後ほど説明する。
入力デバイス24は、以上のような構成であり、光源30から光を出力した光を光学ユニット32で案内することで、接触面38で反射させた後、センサ34に入射させる。その後、入力デバイス24は、センサ34で入射した光の分布の情報を処理部36に送り、処理部36で、検出結果を解析することで、接触面38に接触している指F(対象物)の形状を検出する。入力デバイス24は、このように、接触面38に接触している指Fの形状の検出を一定時間毎に繰り返すことで、接触面38に接触している指Fの形状の変化、つまり、指Fの動き、指Fの移動を検出する。なお、入力デバイス24は、指Fの画像を検出することで、指Fの凹凸(指紋等)を検出し、その指紋から特徴点を検出し、その特徴点の移動を検出することで、指の移動を検出することができる。また、図3では、接触面38の一箇所のみを検出している状態を示しているが、同様のユニットを複数配置することで、接触面38の全域の画像を取得(検出)することができる。
ここで、入力デバイス24は、図4に示すように、接触面38の領域が、第1領域40と、第2領域42と、第3領域44と、第4領域46とに分割して設定されている。ここで、第1領域40は、接触面38の中心を中心として、タッチパネル2に最も近い点を0°とした場合、315°から45°間までの領域である。同様に、第2領域42は、135°から225°間までの領域である。また、第3領域44は、225°から315°間までの領域である。また、第4領域46は、45°から135°間までの領域である。
入力デバイス24は、例えば、タッチパネル2に長手方向を上下方向とした画像を表示させている場合に、第1領域40から第2領域42に指F(指Fの任意の特徴点)が移動したことを検出したら、カーソル等の操作対象が、下方向に移動する指示が入力されたと判定する。また、図5に示すように、指FがX方向に移動し、入力デバイス24が、指Fが第3領域44から第4領域46に移動したことを検出したら、操作対象が、右方向に移動する指示が入力されたと判定する。このように、入力デバイス24は、領域を分割しておき、どの領域からどの領域に指が移動したかを検出することで、上下左右の4つのうちいずれの方向に移動する操作が入力されたかを判定することができる。つまり、入力デバイス24を方向キーとして好適に用いることができる。
次に、携帯電話端末1の機能と制御部との関係を説明する。図6は、図1に示す携帯電話端末の機能の概略構成を示すブロック図である。図6に示すように携帯電話端末1は、タッチパネル2と、入力部3と、電源部5と、通信部6と、レシーバ7と、マイク8と、記憶部9と、主制御部10と、RAM(Random Access Memory)11とを有する。
タッチパネル2は、上述したように、表示部2Bと、表示部2Bに重畳されたタッチセンサ2Aとを有する。タッチセンサ2Aは、指を用いてタッチパネル2に対して行われた各種動作を、動作が行われた場所のタッチパネル2上での位置とともに検出する。タッチセンサ2Aによって検出される動作には、指をタッチパネル2の表面に接触させる動作や、指をタッチパネル2の表面に接触させたまま移動させる動作や、指をタッチパネル2の表面から離す動作が含まれる。なお、タッチセンサ2Aは、感圧式、静電式等のいずれの検出方式を採用していてもよい。表示部2Bは、例えば、液晶ディスプレイ(LCD、Liquid Crystal Display)や、有機EL(Organic Electro−Luminescence)パネル等で構成され、文字、図形、画像等を表示する。
入力部3は、上述したようにボタン20、22と、入力デバイス24とを有する。ボタン20、22は、物理的な入力(押下)を通じて利用者の操作を受け付け、受け付けた操作に対応する信号を主制御部10へ送信する。なお、入力デバイス24については、後述する。
電源部5は、蓄電池または外部電源から得られる電力を、主制御部10を含む携帯電話端末1の各機能部へ供給する。通信部6は、基地局によって割り当てられるチャネルを介し、基地局との間でCDMA方式等による無線信号回線を確立し、基地局との間で電話通信及び情報通信を行う。レシーバ7は、電話通信における相手側の音声や着信音等を出力する。マイク8は、利用者等の音声を電気的な信号へ変換する。
記憶部9は、例えば、不揮発性メモリや磁気記憶装置であり、主制御部10での処理に利用されるプログラムやデータを保存する。具体的には、記憶部9は、メールの送受信や閲覧のためのメールプログラム9Aや、WEBページの閲覧のためのブラウザプログラム9Bや、入力デバイス24に入力された入力操作に基づいてテキスト編集の動作、処理を決定する入力処理プログラム9Cや、文字入力時にタッチパネル2に表示される仮想キーボード4に関する定義を含む仮想キーボードデータ9Dや、入力処理で検出した入力操作と制御動作とを対応付けた条件を含む処理条件テーブル9Eを記憶する。また、記憶部9には、携帯電話端末1の基本的な機能を実現するオペレーティングシステムプログラムや、氏名、電話番号、メールアドレス等が登録されたアドレス帳データ等の他のプログラムやデータも記憶される。また、記憶部9には、タッチパネル2に入力された入力操作に基づいて制御動作、処理を決定するプログラム等も記憶される。なお、制御動作、処理とは、携帯電話端末1で実行する各種動作、処理が含まれ、例えば、カーソル、ポインタの移動、画面の表示切替、文字入力処理、各種アプリケーションの起動処理、終了処理がある。
主制御部10は、例えば、CPU(Central Processing Unit)であり、携帯電話端末1の動作を統括的に制御する。具体的には、主制御部10は、記憶部9に記憶されているデータを必要に応じて参照しつつ、記憶部9に記憶されているプログラムを実行して、タッチパネル2、入力部3、通信部6等を制御することによって各種処理を実行する。主制御部10は、記憶部9に記憶されているプログラムや、処理を実行することによって取得/生成/加工されたデータを、一時的な記憶領域を提供するRAM11に必要に応じて展開する。なお、主制御部10が実行するプログラムや参照するデータは、通信部6による無線通信でサーバ装置からダウンロードすることとしてもよい。
次に、図6から図10を用いて、入力デバイス24について説明する。入力デバイス24は、図6に示すように、変位検出部50と、第1検出部52と、第2検出部54と、方向検出部56と、信号生成部58とを有する。なお、変位検出部50の一部と、第1検出部52と、第2検出部54と、移動方向検出部56と、信号生成部58とは、演算処理を実行する機能部であり、処理部36を構成する処理部により実行される。また、変位検出部50の一部と、第1検出部52と、第2検出部54と、移動方向検出部56と、信号生成部58との機能は、1つのアプリケーションソフト、プログラムで実行するようにしても、機能毎に別々のアプリケーションソフト、プログラムで実行するようにしてもよい。また、本実施形態では、処理部36と、主制御部10とを別々に設けたが、1つのCPUで両方の機能を実行するようにしてもよい。また、処理部36の一部の機能を主制御部10で実行するようにしてもよい。
変位検出部50は、上述した光源30と、光学ユニット32と、センサ34と、処理部36の一部の機能と、接触面38とを有する。変位検出部50は、上述した処理により、接触面38の画像を取得し、解析することで、対象物の変位(移動)を検出する。ここで、図7は、それぞれ、入力デバイスの動作を説明するための説明図である。変位検出部50は、図7に示すように、一定時間(20ms)毎に検出を行い(ポーリングデータを取得し)、接触面の画像の変化、または、何らかの接触があったことを検出したら、変位を検出する処理を開始する。
第1検出部52は、変位検出部50で検出した画像の情報または対象物の変位の情報から、単位時間当たりの変位量(瞬時値)を検出する。第1検出部52は、単位時間当たり毎に変位量を検出し、検出した変位量を瞬時値として検出する。なお、単位時間は、種々の設定とすることができ、つまり、設定した一定時間であればよく、例えば、変位検出部50で検出が行われる毎に行っても、設定された時間が経過する毎に行ってもよい。第1検出部52は、検出した瞬時値を信号生成部58に送る。
第2検出部54は、第1検出部52で検出した瞬時値を積算し、変位量の積算値を算出する。つまり、第2検出部54は、積算を開始してからの合計の変位量を算出する。なお、本実施形態では、第1検出部52で検出した瞬時値を用いるようにしたが、第1検出部52とは、別処理で瞬時値を算出し、変位量を積算するようにしてもよい。第2検出部54は、検出した変位量の積算値を信号生成部58に送る。また、第2検出部54は、信号生成部58等から積算値の初期化の指示が入力されたら、積算値を初期化、つまり0とし、初期化後に検出した瞬時値を用いて、再び変位量の積算を開始する。
移動方向検出部56は、変位検出部50で検出した変位の方向を検出し、対象物が移動した方向を検出する。つまり、移動方向検出部56は、対象物が、第1領域40から第4領域46のいずれかから、第1領域40から第4領域46のいずれかに移動したかを検出し、検出した移動方向の情報を信号生成部58に送る。
信号生成部58は、第1検出部52と、第2検出部54と、方向検出部56とから送られている情報に基づいて、操作信号を生成し、生成した操作信号を主制御部10に送る。まず、信号生成部58は、瞬時値と、変位量の積算値に対してそれぞれしきい値が設定されている。具体的には、瞬時値に対しては、変位量のしきい値である、変位量のしきい値(変位しきい値、速度検出レベル)が設定されており、変位量の積算値に対しては、変位量の積算値のしきい値である積算値のしきい値(積算しきい値、Key検出レベル)が設定されている。なお、変位量を基準とすると、積算値のしきい値は、変位量のしきい値よりも大きい値と設定されている。信号生成部58は、第1検出部52から送られる瞬時値としきい値とを比較し、かつ、第2検出部54から送られる変位量の積算値としきい値と比較し、比較結果に基づいて、操作信号を生成する。本実施形態では、信号生成部58は、第1検出部52から送られた瞬時値が変位量のしきい値を超えていたら、第1操作信号を生成し、第2検出部54から送られた変位量の積算値が積算値のしきい値を超えていたら、第2操作信号を生成する。また、信号生成部58は、同じ検出タイミングで、第1検出部52から送られた瞬時値が変位量のしきい値を超え、第2検出部54から送られた変位量の積算値が積算値のしきい値を超えた場合は、第1操作信号を生成する。また、信号生成部58は、第1操作信号または第2操作信号を生成し、生成した操作信号を主制御部10に出力したら、第2検出部54に積算値の初期化指示を出力する。これにより、第2検出部54は、第1操作信号または第2操作信号が主制御部10に送信される毎に積算値が初期化される。
また、信号生成部58は、移動方向検出部56から送られた移動方向の情報に基づいて、移動方向を示す操作信号を生成し、主制御部10に送る。なお、信号生成部58は、第1操作信号または第2操作信号を生成するときに、移動方向を示す操作信号を生成するようにしても、第1操作信号及び第2操作信号の生成とは関係なく、移動方向を示す操作信号を生成するようにしてもよい。
入力デバイス24は、以上のような構成であり、ユーザによる入力を瞬時値と、変位量の積算値との両方で検出し、その検出結果に基づいて異なる操作信号を生成する。つまり、入力デバイス24は、瞬時値制御と、積算値制御とを並列で実行する。
次に、図8から図10を用いて、入力デバイスの検出動作について説明する。ここで、図8から図10は、それぞれ、入力デバイスの動作を説明するための説明図である。また、図8は、検出した瞬時値及び積算値と、時間との関係を示すグラフである。なお、図8は、縦軸を変位量(瞬時値)または積算値とし、横軸を時間とした。また、図8は、任意の直線上の方向、例えば、上下方向、左右方向の変位を検出した状態である。また、図9及び図10は、それぞれ、入力デバイス24が操作を1回検出したときの瞬時値及び積算値と時間との関係を示すグラフである。図9及び図10は、縦軸を変位量(Delta X)[count]とし、横軸を時間[ms]とした。なお、変位量の単位countは、入力デバイス24での変位量の検出単位(例えば、移動した画素の数)である。
入力デバイス24は、変位検出部50で検出した値に基づいて、第1検出部52で瞬時値を検出することで、図8に示すように、各単位時間における変位量を算出することができる。変位検出部50で検出した値に基づいて、第2検出部54で変位量の積算値を検出することで、図8に示すように、各単位時間における変位量の積算値を算出することができる。また、移動方向検出部56の検出結果に基づいて、移動方向を検出することで、変位がプラス方向の変位量であるか、マイナス方向(プラス方向とは逆方向)の変位量であるかを検出することができる。信号生成部58は、検出された瞬時値に基づいた瞬時値制御と、積算値に基づいた積算値制御を並列で行う。また、図8に示す例では、積算値のしきい値として、「INTEG_THRESH」が設定されており、変位量のしきい値として、「SPEED_THRESH_MIDDLE」と、「SPEED_THRESH_MIDDLE」よりも変位量が大きい「SPEED_THRESH_HIGH」が設定されている。
信号生成部58は、瞬時値がしきい値を越えることなく、積算値がしきい値を超えたら、つまり、特異点60、特異点62となったら、第2操作信号を生成する。また、信号生成部58は、瞬時値として、しきい値を超える変位量を検出したら、つまり特異点64、66となる瞬時値を検出したら、第1操作信号を生成する。また、信号生成部58は、特異点60、62、64、66を検出し、操作信号を生成したら、積算値を初期化し、0とする。
信号生成部58は、以上のように制御を行うことで、例えば、図9に示すように、積算値がしきい値72、つまり、Key検出レベル(積算値のしきい値)を超える前に、瞬時値がしきい値74、つまり、速度検出レベル(変位量のしきい値)を超えたら、図9では時間が20msのときに、一定速度より速い速度で指が動かされたと判定し、第1操作信号を生成する。
また、信号生成部58は、例えば、図10に示すように、瞬時値がしきい値74を超える前に、積算値がしきい値72を超えたら、図10では、時間が60msのときに、一定速度以下で一定距離以上指が動かされたと判定し、第2操作信号を生成する。
次に、携帯電話端末1が入力デバイス24への操作を受け付ける場合の動作について説明する。図11は、携帯電話端末の動作の一例を示すフロー図である。また、図12−1から図12−3は、それぞれ、携帯電話端末の動作を説明するための説明図である。なお、図11から図12−3は、タッチパネル2の表示部2Bにテキスト編集画面を表示させる場合の携帯電子端末1及び入力デバイス24の動作の一例である。なお、図11から図12−3に示す携帯電話端末1の各動作は、入力デバイス24の処理部36と主制御部10の両方で情報の送受信を行い処理される。なお、主制御部10は、図11に示すフロー図の処理と、文字入力操作の検出処理とを並行して処理する。具体的には、図11に示す入力デバイス24に入力された処理を行っている間に、タッチパネル2へのテキスト編集画面で文字入力操作が検出されたら、その操作に基づいて、文字入力を行う。
まず、携帯電話端末1は、ステップS11として、入力デバイス24の第1検出部52により、瞬時値を検出する。携帯電話端末1は、ステップS11で瞬時値を検出したら、ステップS12として、信号生成部58により、検出した瞬時値がしきい値(変位量のしきい値)を超えるか、つまり、変位量のしきい値<瞬時値であるかを判定する。
携帯電話端末1は、ステップS12で瞬時値がしきい値を超える(ステップS12でYes)、つまり、変位量のしきい値<瞬時値であると判定したら、ステップS14として、信号生成部58で、第1操作信号を生成し、主制御部10に第1操作信号を出力する。その後、携帯電話端末1は、ステップS16として、主制御部10により、カーソルを次の句読点まで移動させる。ここで、主制御部10は、第1操作信号を受信したら、条件テーブルから第1操作信号に対応する動作を抽出、決定し、決定した動作を行う。本実施形態のように、テキスト編集画面が表示されている場合は、第1操作信号に、編集対象の位置を示すカーソルを、現在カーソルがテキスト(文字列)中で示している位置から次の句読点まで移動させる動作が対応付けられている。これにより、主制御部10は、第1操作信号を受信したら、カーソルの位置を次の句読点まで移動させる。なお、カーソルを移動させる方向は、対象物の変位方向に対応した方向である。携帯電話端末1は、ステップS16の処理を終了したら、ステップS24に進む。
また、携帯電話端末1は、ステップS12で、瞬時値がしきい値を超えない(ステップS12でNo)、つまり、変位量のしきい値≧瞬時値であると判定したら、ステップS17として、第2検出部54により積算値を検出する。なお、このステップS17の処理は、ステップS11と同時に行ってもよい。携帯電話端末1は、ステップS17で積算値を検出したら、ステップS18として、信号生成部58により、検出した積算値がしきい値(積算値のしきい値)を超えるか、つまり、積算値のしきい値<積算値であるかを判定する。また、携帯電話端末1は、ステップS18で、積算値がしきい値を超えない(ステップS18でNo)、つまり、積算値のしきい値≧積算値であると判定したら、ステップS11に進み、上記処理を繰り返す。つまり、携帯電話端末1(入力デバイス24)は、瞬時値と積算値のいずれかがしきい値を超えるまで、ステップS11、ステップS12、ステップS17、ステップS18の処理を繰り返す。
携帯電話端末1は、ステップS18で積算値がしきい値を超える(ステップS18でYes)、つまり、積算値のしきい値<積算値であると判定したら、ステップS20として、信号生成部58で、第2操作信号を生成し、主制御部10に第2操作信号を出力する。その後、携帯電話端末1は、ステップS22として、主制御部10により、カーソルを1文字分移動させる。ここで、主制御部10は、第2操作信号を受信したら、条件テーブルから第2操作信号に対応する動作を抽出、決定し、決定した動作を行う。本実施形態のように、テキスト編集画面が表示されている場合は、カーソルを1つ隣の文字に移動させる動作が第2操作信号に対応付けられている。これにより、主制御部10は、第2操作信号を受信したら、テキスト編集画面に表示させているカーソルを1文字分移動させる。なお、カーソルを移動させる方向は、対象物の変位方向に対応した方向である。携帯電話端末1は、ステップS22の処理を終了したら、ステップS24に進む。
携帯電話端末1は、ステップS16またはステップS22の処理を行ったら、ステップS24として、第2検出部54で算出している積算値を初期化し、0とし、その後処理を終了する。なお、携帯電話端末1は、テキスト編集画面を表示させている状態が継続されている間、つまりアプリケーションが実行されている間は、上記処理を繰り返し行う。
携帯電話端末1は、図11に示す処理により、入力デバイス24を操作することで、以下の制御を行うことができる。まず、携帯電話端末1には、図12−1に示すように、画面80の領域82に入力されたテキスト(文字列)が表示され、領域82には、カーソル84が表示されている。ここで領域82には、テキストとしては、「Hello Mr.X, I am fine. How are you?・・・Regards,・・・」が表示され、カーソル84は、「am」の前を指定している。なお、この状態で、文字が入力されると入力された文字は、「am」の前に挿入され、表示される。
携帯電話端末1は、図12−1に示す画面の状態で、移動方向が画面左から右方向の第2操作信号を検出したら、図12−2に示すように、カーソル84aが「a」と「m」との間を指定している状態となるように、カーソル84aの位置を移動させる。
また、携帯電話端末1は、図12−1に示す画面の状態で、移動方向が画面左から右方向の第1操作信号を検出したら、図12−3に示すように、カーソル84bが「.」と「I」との間を指定している状態となるように、カーソル84bの位置を移動させる。つまり、カーソルを、カーソルが現在指定している位置の次にある句読点まで、移動させる。
携帯電話端末1は、以上のように、入力デバイス24に入力される操作として検出する変位量を、瞬時値と積算値の両方で検出し、その検出された値に基づいて、実行する操作を切り替えることで、ユーザは、入力する操作、つまり指をスライドさせる速度を変えるだけで、異なる操作を入力することができる。これにより、入力デバイス24による入力可能な操作をより多くすることができる。具体的には、入力デバイス24を操作する(入力する)速度によって、カーソル84の移動量を異なる移動量とすることで、カーソル84をより効率的に移動させることができる。
また、本実施形態のように、入力速度(指の移動速度、対象物の移動速度)が速い入力をしたら、入力速度が遅い入力により実行する処理を複数回実行することで実現できる処理を実行するようにすることで、具体的には、カーソル84が移動する文字数を多くすることで、ユーザは、直感的な操作が可能になる。また、複数回操作を入力する必要が無くなるため、短時間での操作が可能となり、かつ、操作の手間もかからなくなる。
また、本実施形態のように指等の移動を検出する入力デバイス24を用いることで、光学マウスのように、移動させたい距離分の移動を入力しなくても、カーソルを移動させることができる。つまり、その場で移動を制御することができる。
また、携帯電話端末1は、変位量のしきい値と、積算値のしきい値との関係を、変位量のしきい値<積算値のしきい値とすることで、早く入力したのに第2操作信号が出力されてしまう可能性を低減することができる。これにより、ユーザが意図した操作が実行されやすくすることができる。
また、携帯電話端末1は、変位量のしきい値を複数の値で設定し、例えば、図8に示すように2段階で設定し、それぞれの変位量のしきい値毎に、異なる操作信号を出力させ、異なる操作を実行させるようにしてもよい。このように変位量のしきい値を複数の値で設定し、それぞれ異なる処理を実行させることで、入力デバイス24でより多くの種類の操作を入力することが可能となる。
以下、図13及び図14を用いて、変位量のしきい値を複数の値で設定した場合について説明する。図13は、入力デバイスの動作を説明するための説明図である。また、図14は、携帯電話端末の動作の一例を示すフロー図である。図13は、縦軸を変位量(Delta X)[count]とし、横軸を時間[ms]とした。なお、変位量の単位countは、入力デバイスでの変位量の検出単位(例えば、移動した画素の数)である。まず、図13に示すように、携帯電話端末1は、変位量のしきい値として、第1度速度検出レベル(第1しきい値)92と、第2度速度検出レベル(第2しきい値)94とが、設定されている。ここで、第2しきい値は、第1しきい値よりも高い変位量で設定されている。なお、本実施形態の場合も上記と同様に、積算値に対するしきい値も設定されている。また、積算値のしきい値と、変位量のしきい値との関係は、上述と同様である。
携帯電話端末1は、このように、第1しきい値92、第2しきい値94と、積算値のしきい値とを設定することで、移動量が一定以上の入力(積算値のしきい値を超える入力)を検出する検出パターンを3つに別けることができる。具体的には、携帯電話端末1は、検出パターンを、図13に示す検出パターン96aに示すように、瞬時値(その検出パターンにおける瞬時値の最大値)が第1しきい値92を超えない場合と、検出パターン96bに示すように、瞬時値が第1しきい値92を超え、かつ、第2しきい値94を超えない場合と、検出パターン96c、検出パターン96dに示すように、瞬時値が第2しきい値94を超える場合と、に別けることができる。携帯電話端末1は、検出した入力の瞬時値と積算値とに基づいて、検出パターンを、3つのパターンに分類し、それぞれの検出パターンに応じた制御を行う。なお、携帯電話端末1は、瞬時値が第1しきい値92を超えない場合(つまり、積算値のしきい値を超えても、瞬時値が第1しきい値92を超えない場合)は、第2操作信号を出力し、瞬時値が第1しきい値92を超え、かつ、第2しきい値94を超えない場合は、第3操作信号を出力し、瞬時値が第2しきい値94を超える場合は、第1操作信号を出力する。また、各操作信号には、それぞれ異なる操作が割り当てられている。
次に、携帯電話端末1が入力デバイス24への操作を受け付ける場合の動作について説明する。まず、図14に示すように、携帯電話端末1は、ステップS11として、入力デバイス24の第1検出部52により、瞬時値を検出する。携帯電話端末1は、ステップS11で瞬時値を検出したら、ステップS30として、信号生成部58により、検出した瞬時値が第1しきい値を超えるか、つまり、第1しきい値<瞬時値であるかを判定する。
携帯電話端末1は、ステップS30で瞬時値が第1しきい値を超える(ステップS30でYes)、つまり、変位量の第1しきい値<瞬時値であると判定したら、ステップS32として、信号生成部58により、検出した瞬時値が第2しきい値を超えるか、つまり、第2しきい値<瞬時値であるかを判定する。なお、携帯電話端末1は、ステップS32の判定は、検出パターンの入力が終了してから、検出パターンの瞬時値の最大値を比較する。
携帯電話端末1は、ステップS32で、瞬時値が第2しきい値を超える(ステップS32でYes)と判定したら、ステップS14として、信号生成部58で、第1操作信号を生成し、主制御部10に第1操作信号を出力する。その後、携帯電話端末1は、ステップS16として、主制御部10により、カーソルを次の句読点まで移動させる。携帯電話端末1は、ステップS16の処理を終了したら、ステップS24に進む。
また、携帯電話端末1は、ステップS32で、瞬時値が第2しきい値を超えない(ステップS32でNo)と判定したら、ステップS34として、信号生成部58で、第3操作信号を生成し、主制御部10に第3操作信号を出力する。その後、携帯電話端末1は、ステップS36として、主制御部10により、カーソルを1単語分移動させる。ここで、主制御部10は、第3操作信号を受信したら、条件テーブルから第3操作信号に対応する動作を抽出、決定し、決定した動作を行う。本実施形態のように、テキスト編集画面が表示されている場合は、第3操作信号に、編集対象の位置を示すカーソルを、現在カーソルがテキスト(文字列)中で示している位置から次の単語まで(つまり、1単語分)移動させる動作が対応付けられている。これにより、主制御部10は、第3操作信号を受信したら、カーソルの位置を1単語分移動させる。なお、カーソルを移動させる方向は、対象物の変位方向に対応した方向である。携帯電話端末1は、ステップS36の処理を終了したら、ステップS24に進む。
また、携帯電話端末1は、ステップS12で、瞬時値が第1しきい値を超えない(ステップS30でNo)、つまり、変位量のしきい値≧瞬時値であるかと判定したら、ステップS17として、第2検出部54により積算値を検出する。なお、ステップS17からステップS22までの処理は、図11に示す処理と同様であるので、説明は省略する。
携帯電話端末1は、ステップS16、ステップS22、ステップS36の処理を行ったら、ステップS24として、第2検出部54で算出している積算値を初期化し、0とし、その後処理を終了する。なお、携帯電話端末1は、テキスト編集画面を表示させている状態が継続されている間、つまりアプリケーションが実行されている間は、上記処理を繰り返し行う。
携帯電話端末1は、このように、瞬時値のしきい値を複数の値で設定し、それぞれの速度範囲と操作とを対応付けておくことで入力デバイス24でより多くの操作を実行することができる。また、入力速度が速くなるほど、カーソルの移動量を大きくすることで、直感的な操作が可能となる。なお、入力速度のしきい値としては、10[cm/s]以下、10[cm/s]より速く30[cm/s]以下、30[cm/s]以上の3段階が例示される。瞬時値が10[cm/s]以下の場合は、上述したように積算値がしきい値以上となったときに、入力されたと判定する設定とすればよい。
また、上記実施形態のように、携帯電話端末1は、入力デバイス24に、テキストを構成する文章の表示方向(文字の配列方向)と同じ方向(平行な方向)の操作が入力された場合に、上記カーソルの移動処理を行うことが好ましい。これにより、テキスト編集位置を示すカーソルを文字列に沿って移動させることができる。なお、本実施形態の場合は、テキストを横書きとしたが、縦書きの場合も同様である。
また、携帯電話端末1は、入力デバイス24に、テキストを構成する文章の表示方向(文字の配列方向)と直交する方向の操作が入力された場合も、同様に、瞬時値と積算値とに基づいて、実行する操作を異なる操作とすることが好ましい。つまり、テキストを構成する文章の表示方向(文字の配列方向)と直交する方向の操作が入力された場合に対しても、瞬時値のしきい値と、積算値のしきい値を設定しておき、検出した瞬時値と積算値と、瞬時値のしきい値と、積算値のしきい値とを比較し、その比較結果に基づいて、出力する操作信号(第1操作信号、第2操作信号、第3操作信号等)を決定し、その操作信号に基づいて、複数の操作を行うようにしてもよい。これにより、テキスト編集画面の表示時により多くの操作を簡単に入力することが可能となる。
図15−1から図15−3は、それぞれ、携帯電話端末の動作を説明するための説明図である。なお、図15−1から図15−3は、テキストを構成する文章の表示方向(文字の配列方向)と直交する方向の操作が入力された場合の処理の一例である。まず、携帯電話端末1には、図15−1に示すように、画面200の領域202に入力されたテキスト(文字列)が表示され、領域202には、カーソル204が表示されている。ここで領域202には、テキストとしては、「Hello Mr.X, I am fi」が表示され、カーソル204は、「fi」の後ろを指定している。なお、この状態で、文字が入力されると入力された文字は、「fi」の後ろに挿入され、表示される。
携帯電話端末1は、図15−1に示す画面の状態で、移動方向が画面上方向の第1操作信号を検出したら、図15−2に示すように、変換候補欄206を表示させる。なお、変換候補欄206は、カーソル204が指定している前後の入力中の文字列、本実施形態では「fi」の変換候補を検出し、表示させる欄である。なお、変換候補の検索は、辞書機能を用いればよい。なお、その後、変換候補を選択し、決定する操作が入力されたら、決定された単語を入力されたテキストとして領域202に表示させる。
また、携帯電話端末1は、図15−1に示す画面の状態で、移動方向が画面上方向の第2操作信号を検出したら、図15−3に示すように、カーソル204aが「r」と「.」との間を指定している状態となるように、カーソル204aの位置を移動させる。つまり、カーソルを、カーソルが現在指定している位置の上の行の対応する位置に移動させる。
このように、携帯電話端末1は、入力デバイス24への入力に対して、カーソルの移動に加え、他の機能も割り当てることで、ユーザは、より多くの操作を簡単に入力することが可能となる。なお、本実施形態では、テキストを構成する文章の表示方向(文字の配列方向)と直交する方向の操作に対して、カーソルの移動動作以外の動作を対応付けたが、複数のカーソルの移動動作(例えば、1行移動と、1つ上の段落まで移動等)を対応付けるようにしてもよい。また、カーソルの移動動作以外の動作としては、予測変換候補の表示のみならず、テキスト編集の種々の操作を対応付けることができる。
また、入力デバイス24は、本実施形態のように、第1検出部52と第2検出部54とを並列で処理することが好ましい。これにより、処理時間を短くすることができる。
また、上記実施形態では、画面のスクロール操作及びカーソルの移動操作の場合を例として説明したが、本発明はこれに限定されず、入力デバイスを用いた、種々の操作に対応付けることができる。ここで、入力デバイスで入力する操作としては、マウス、ジョイスティック、トラックボール等のいわゆるポインティングデバイスで入力可能な各種操作があり、カーソルの移動や、ポインタの移動、画面のスクロール等が例示される。例えば、第1操作信号が入力されたら、カーソルを画面の端まで移動させ、第2操作信号が入力されたら、カーソルを画面の途中まで移動させる制御が可能となる。
ここで、上記実施形態では、携帯電話端末として、タッチパネルを有する構成としたが、本発明はこれに限定されない。図16は、実施形態に係る携帯電話端末の他の実施形態の概略構成を示す正面図であり、図17は、図16に示す携帯電話端末の側面図である。図16、図17に示す携帯電話端末100は、無線通信機能を有する携帯電話機である。携帯電話端末100は、筐体101Cが複数の筐体で構成される。具体的には、筐体101Cは、第1筐体101CAと第2筐体101CBとで開閉可能に構成される。すなわち、携帯電話端末100は、折り畳み式の筐体を有する。なお、携帯電話端末100の筐体は、このような構造に限定されるものではない。例えば、携帯電話端末100の筐体は、両方の筐体を重ね合わせた状態から一方の筐体と他方の筐体とを互いにスライドできるようにしたスライド式の筐体であってもよいし、重ね合わせ方向に沿う軸線を中心に、一方の筐体を回転させるようにした回転式や、2軸ヒンジを介して両方の筐体を連結したものでもよい。
第1筐体101CAと第2筐体101CBとは、連結部であるヒンジ機構108で連結されている。ヒンジ機構108で第1筐体101CAと第2筐体101CBとを連結することにより、第1筐体101CA及び第2筐体101CBは、ヒンジ機構108を中心として、図17の矢印Rで示す方向に相対的に回動できる。第1筐体101CAと第2筐体101CBとは、ヒンジ機構108を中心として、図17中実線で示す位置から、図17中点線で示す位置、折り畳まれた状態となる位置まで移動することができる。
第1筐体101CAには、表示部として、図16に示すディスプレイ102が設けられる。ディスプレイ102は、携帯電話端末100が受信を待機している状態のときに待ち受け画像を表示したり、携帯電話端末100の操作を補助するために用いられるメニュー画像を表示したりする。また、第1筐体101CAには、携帯電話端末100の通話時に音声を出力する出力手段であるレシーバ106が設けられる。
第2筐体101CBには、通話相手の電話番号や、メール作成時等に文字を入力するための操作キー113Aが複数設けられ、また、操作キー113Aのヒンジ108側には、入力デバイス113Bが設けられている。操作キー113A及び入力デバイス113Bは、携帯電話端末100の操作部113を構成する。また、第2筐体101CBには、携帯電話端末100の通話時に音声を受け取る音声取得手段であるマイク115が設けられる。操作部113は、図17に示す、第2筐体101CBの操作面101PCに設けられる。操作面101PCとは反対側の面が、携帯電話端末100の背面101PBである。
第2筐体101CBの内部には、アンテナが設けられている。アンテナは、無線通信に用いる送受信アンテナであり、携帯電話端末100と基地局との間で通話や電子メール等に係る電波(電磁波)の送受信に用いられる。また、第2筐体101CBには、マイク115が設けられる。マイク115は、図17に示す、携帯電話端末100の操作面101PC側に配置される。
携帯電話端末100のように、操作キー113Aを有する場合も、入力デバイス113Bを設けることで、上述した各種操作を入力することができる。つまり、入力デバイス113Bを、ディスプレイ102に表示されるメニューの選択及び決定や画面のスクロール等を容易に実行するための方向及び決定キーとして用いることができる。
また、上記実施形態では、瞬時値と、積算値とが、それぞれの値に対して設定したしきい値を超えるか否かに基づいて、制御を行ったが、本発明はこれに限定されない。携帯電話端末(電子機器)は、入力デバイスで検出した、瞬時値と、積算値との両方に基づいて、入力された操作を判定すればよく、種々の基準で操作を判定することができる。また、上記実施形態では、入力デバイスで操作信号を生成したが、入力デバイスは、瞬時値と積算値のみを検出し、主制御部で操作信号を生成するようにしてもよい。
なお、上述した入力部(入力デバイス及びその制御)は、上述したように種々の電子機器に用いることができるが、上述したように携帯電子機器、特に携帯電話端末に用いることが好ましい。携帯電子機器、特に携帯電話端末のように、小型化、薄型化されており、配置できる入力部の領域が小さい場合でも、1つの入力デバイスで種々の入力が可能となる。このため、本発明の効果をより好適に得ることができる。