以降、諸図面を参照しながら本発明の実施態様を詳細に説明するが、携帯電子機器の典型例として携帯電話端末に本発明を適用して説明する。
図1は、本実施例の携帯電話端末の概要を示すブロック図である。図に示した携帯電話端末100は、制御部110、センサ部120、表示部130、記憶部(フラッシュメモリなど)140、OSタイマーCLK、情報処理機能部150、電話機能部160、キー操作部KEY、およびスピーカSP、さらに、図示しないCDMA通信網に接続して通信を行う通信部COMにより構成されている。さらに、制御部110は、計時部112及び判定部114を含む。さらに、センサ部120は複数のセンサ素子(例えば、その検知部を機器筐体の外面に設けてあり、指などの物体の接触・近接を検出する接触センサ)を含んだセンサ素子群を、用途に応じてn個、すなわち第1のセンサ素子群G1、第2のセンサ素子群G2および第nのセンサ素子群G3を含み、記憶部140は保存領域142、外部データ保存領域144から構成されている。制御部110および情報処理機能部150は、CPUなどの演算手段およびソフトウェアモジュールなどから構成させることが好適である。なお、後述するシリアルインターフェース部SI、シリアルインターフェース部SIを介して制御部110に接続されるRFIDモジュールRFIDや赤外線通信部IR、さらにはカメラ180やライト190の他、マイク、ラジオモジュール、電源、電源コントローラ等が制御部110に接続されるが、ここでは簡略化のため省略する。
図1のブロック図における各ブロックの機能を簡単に説明する。制御部110は、センサ部120によりユーザの指などの物体の接触を検出し、記憶部140の保存領域142に検出した情報を格納し、情報処理機能部150により格納した情報の処理を制御する。そして、処理結果に応じた情報を表示部130に表示させる。また、後にその効果について詳細に述べるが、計時部112は、表示部130の表示が開始されてからの時間を計時する。判定部114は、センサ部120が検知した接触操作が所定の接触操作であるかの判定を行い、さらに、所定の接触が、所定の時間内に完了したか否かの判定を行う。さらに制御部110は、通常の通話機能のための電話機能部160、キー操作部KEY、およびスピーカSPを制御する。なお、表示部130は、サブ表示部ELDおよび図示しないメイン表示部(携帯電話端末100が閉状態にて隠れ、開状態にて露出する位置に設けられる表示部)を含んで構成される。
図2は、センサ素子を筐体に実装した本実施例の携帯電話端末100の斜視図である。携帯電話端末100は、図2に示すような閉状態のほか、ヒンジ部を回転、スライドさせて開状態を形成することが可能であって、タッチセンサ部170は閉状態においても操作可能な位置に設けられている。図2(a)は携帯電話端末100の外観を示す斜視図である。携帯電話端末100は、タッチセンサ部170(外観上、センサ部120、すなわちセンサ素子G1、G2を覆う図3にて後述するパネルPNLが見えている)、カメラ180、およびライト190を備える。図2(b)は、本実施例によるタッチセンサの動作の説明のために、パネルPNLを省略し、センサ素子とサブ表示部ELD周辺のみの配置を表示した本実施例の携帯電話端末100の斜視図である。図のように、センサ素子L1〜L4およびR1〜R4が、サブ表示部ELDの周囲に沿って並べて配置されている。センサ素子R1〜R4、L1〜L4は、それぞれ第1のセンサ素子群、第2のセンサ素子群を構成している。第1のセンサ素子群と第2のセンサ素子群は、離間部SP1、SP2を隔てて並べられている。第1のセンサ素子群G1のレイアウトに対して、第2のセンサ素子群G2は、表示部を挟み、選択候補項目の並べられている方向を中心線とする線対称なレイアウトを持つ。また、本実施例ではサブ表示部ELDに有機ELディスプレイを用いてあるが、例えば液晶表示ディスプレイ等を用いることもできる。また、本実施例ではセンサ素子として静電容量式の接触センサを用いたが、薄膜抵抗式の接触センサ等を用いることもできる。
図2の携帯電話端末100において、サブ表示部ELDは携帯電話端末100の用途に応じた情報を表示する。例えば、携帯電話端末100を音楽プレーヤーとして用いる場合、サブ表示部ELDには演奏できる曲目が表示される。曲名およびアーティスト名の組で1つの項目、即ち、「選択候補項目」となる。ユーザは、操作入力部としてタッチセンサ部170を操作してセンサ素子R1〜R4、L1〜L4の静電容量を変化させて、サブ表示部ELDに表示された項目や操作対象領域を移動させて曲目の選択を行う。このとき、タッチセンサは、図2のようにサブ表示部ELDの周囲にセンサ素子を並べる構成とすれば、小型な携帯電子機器の外部筐体における実装部分を大きく占有せずに済み、かつ、ユーザはサブ表示部ELDの表示を見ながらセンサ素子を操作することができる。
図3は、図2に示した本実施例の携帯電話端末100実装した表示部周囲の構成を示す分解斜視図である。わかり易くするため、各部材を、構成する順に分離して示している。図に示すように、有機EL素子からなる表示部ELDの周囲に沿ってドーナツ状のパネルPNLが配されている。パネルPNLは、下部に設けるセンサ素子の感度に影響を与えないように十分に薄くすることが好適である。パネルPNLの下部には、人体の指の接触を検知できる静電容量型の8個のセンサ素子L1−L4、R1−R4をほぼ環状に配置してある。左側の4つのセンサ素子L1−L4で第1のセンサ素子群、右側の4つのセンサ素子R1−R4で第2のセンサ素子群をそれぞれ構成している。各センサ素子群内の隣接するセンサ素子の間には、隣接するセンサ素子同士で接触検出機能に干渉しないように、クリアランス(隙間)を設けて配置してある。なお、干渉しないタイプのセンサ素子を用いる場合にはこのクリアランスは不要である。第1のセンサ素子群の一端に位置するセンサ素子L4と、第2のセンサ素子群の一端に位置するセンサ素子R1との間には、前記クリアランスより大きいクリアランス(例えば、2倍以上の長さ)である離間部SP1を設ける。第1のセンサ素子群G1の他端に位置するセンサ素子L1と、第2のセンサ素子群G2の他端に位置するセンサ素子R4との間にも、離間部SP1と同様に離間部SP2を設ける。このような離間部SP1、SP2によって、第1のセンサ素子群G1と第2のセンサ素子群G2とが別個に機能させる際に、互いに指が干渉することを防止することができる。
第1のセンサ素子群G1の各センサ素子は円弧状に配置されているが、この円弧の中央、即ち、センサ素子L2およびL3の中間の下部に、タクトスイッチSW1の中心を配置する。同様に、第2のセンサ素子群G2の各センサ素子で形成される円弧の中央、即ち、センサ素子R2およびR3の中間の下部に、タクトスイッチSW2を配置する。このように、方向性を連想させない位置であるセンサ素子群の配置方向にほぼ中央にタクトスイッチを配置することによって、センサ素子上におけるユーザによる指の方向性を持った移動指示操作による方向指示とは直接関係しない操作を行うスイッチであることを、ユーザは容易に把握することができる。センサ素子群の配置方向の中央ではなく端部(例えばL1やL4)にタクトスイッチを配置してあると、端部側向きの方向性を連想させるため、タッチセンサによる移動動作を継続などのために長押しする「スイッチ」であるという誤解をユーザに与え易い。一方、本発明の構成のように、センサ素子群の配置方向の中央にタクトスイッチを配置してあれば、このような誤解を防止することができ、より快適なユーザインターフェースを提供することが可能である。また、センサ素子の下方にタクトスイッチを配して機器外面に露出していないため、機器の外観上も露出する操作部の点数を削減でき、複雑な操作を要さない様なスマートな印象となる。なお、スイッチパネルPNL下部以外の箇所に設ける場合には、機器筐体に別途貫通孔を設ける必要があるが、貫通孔を設ける位置によっては筐体強度の低下が生じ得る。本構成では、パネルPNL、および、センサ素子の下方にタクトスイッチを配することによって、新たな貫通孔を設ける必要がなくなり、筐体強度の低下も防止できる。
ユーザが、例えば、指で順次にセンサ素子L1、L2、L3、L4を円弧状に上方に向かってなぞると、表示部ELDに表示されている選択候補項目(例えば、音、表示、データ、カメラ)のうち選択対象領域(反転表示や別のカラーでの強調表示など)として表示されている項目が上方のものに順次変化したり、選択候補項目が上方にスクロールしたりする。所望の選択候補項目が選択対象領域として表示されているときに、ユーザは、パネルPNLおよびセンサ素子L2、L3越しにタクトスイッチSW1を押下して選択決定を行ったり、タクトスイッチSW2を押下して表示事態を別画面に変更したりすることができる。即ち、パネルPNLは、タクトスイッチSW1、SW2を押下するのに十分な可逆性を持つ、あるいはわずかに傾倒可能に機器筐体に取り付けられ、タクトスイッチSW1、SW2に対する押し子の役割も持っている。
図4は、上述した本実施例の携帯電話端末100のタッチセンサ機能のより詳細な構成を示すブロック図である。図に示した携帯電話端末100は、タッチセンサドライバブロックTDB、タッチセンサベースアプリブロックTSBA、デバイス層DL、割込ハンドラIH、キューQUE、OSタイマーCLK、各種アプリAP1〜AP3を備える。ここでタッチセンサベースアプリブロックTSBAは、ベースアプリBAおよびタッチセンサドライバ上位アプリケーションプログラムインターフェースAPIを備え、タッチセンサドライバブロックTDBは、タッチセンサドライバTSDおよび結果通知部NTFを備える。また、デバイス層DLは、切替制御部SWCON、切替部SW、シリアルインターフェース部SI、赤外線通信部IR、RFIDモジュールRFIDおよびタッチセンサモジュールTSMを備え、割込ハンドラIHは、シリアル割込み監視部SIMONおよび確認部CNFを備える。
次に、各ブロックの機能を図を参照に説明する。タッチセンサベースアプリブロックTSBAにおいて、ベースアプリBAと、タッチセンサドライバ上位アプリケーションプログラムインターフェースAPIとの間では、タッチセンサを起動するか否かのやり取りが行なわれる。ベースアプリBAは、サブ表示部用のアプリケーションであるサブ表示部表示アプリAP1、セキュリティ保護用に携帯電話端末100にロックをかけるアプリケーションであるロックセキュリティアプリAP2、その他のアプリケーションAP3のベースとなるアプリケーションであり、ベースアプリBAに前記各アプリからタッチセンサの起動が要求された場合に、タッチセンサドライバ上位のアプリケーションプログラムインターフェースAPIにタッチセンサの起動を要求する。なおサブ表示部とは、各図に示すサブ表示部ELDであって、本実施例における携帯電話端末100においてセンサ素子により囲まれた表示部のことを指す。
RFIDモジュールRFIDは、近接無線交信を使用する非接触型の認識装置(タグ)であり、一般に通信制御回路、メモリを内蔵するICチップ、及びアンテナを備える。対象とするホスト装置(リーダライタ)と至近距離で無線交信を行うことにより、メモリ内の情報を読み出しあるいはメモリ内に情報を書き込むことが可能である。近年、前述の回路素子を小さなワンチップのICで実現できるようになり、ICタグとも呼ばれる。このICタグを搭載した本実施例における携帯電話端末にて、電子マネーを取り扱うことが可能となっている。
このようなRFIDモジュールRFIDを用いた電子マネー機能を安全に使うため、パスワード等によって他人の不正使用や成りすましを防止するセキュリティロック機構およびそのためのアプリケーション(即ち、ロックセキュリティアプリAP2)を設ける必要がある。本発明による携帯電話端末は筐体外面にタッチセンサを配してあり、このタッチセンサは筐体を折り畳んだ状態で操作可能であり、これををセキュリティロック機構のための操作部として利用する(詳細は後述する)。
ここでタッチセンサによる検出動作について説明する。起動の要求を受け、タッチセンサ上位アプリケーションプログラムインターフェースAPIは、ベースアプリBA内のアプリケーションの起動を管理するブロック(図示せず)に、タッチセンサの起動が可能か否かの確認を行う。すなわち、アプリケーションの選択が実行されていることを示すサブ表示部ELDの点灯、キーのロック、またはFMラジオその他の携帯電話端末100に付属するアプリケーション等の、予めタッチセンサの起動が不可能と設定されたアプリケーションの起動を示すフラグの有無を確認する。その結果、タッチセンサモジュールの起動が可能と判断された場合、タッチセンサ上位アプリケーションプログラムインターフェースAPIはタッチセンサドライバTSDにタッチセンサの起動を要求する。すなわち、実質的には電源コントローラPSCONを介した電源PSからタッチセンサモジュールTSMへの電源供給を開始する。
起動が要求されると、タッチセンサドライバTSDはデバイス層DL内のシリアルインターフェース部SIに要求して、シリアルインターフェース部SIにおけるタッチセンサドライバTSDとのポートを開くように制御する。
その後、タッチセンサドライバTSDは、タッチセンサのセンシング結果の情報を有する信号(以降、接触信号と記す)を、タッチセンサモジュールTSMが有する内部クロックによる20msの周期で、シリアルインターフェース部SIに出力されるように制御する。
前記接触信号は、上述した各センサ素子R1〜R4およびL1〜L4の8つのセンサ素子それぞれに対応した8ビット信号で出力されている。すなわち、各センサ素子が接触を検知すると、この接触を検知したセンサ素子に対応するビットに、接触検知を表す「フラグ:1」が立っている信号であって、これらのビット列により接触信号が形成される。つまり、接触信号には、「どのセンサ素子」が「接触/非接触のいずれか」を示す情報が含まれる。
割込ハンドラIHにおけるシリアル割込み監視部SIMONは、シリアルインターフェース部SIに出力された接触信号を取り出す。ここで確認部CNFが、シリアルインターフェース部SIにおいて予め設定された条件に従い、取り出した接触信号のTrue/Falseの確認を行い、True(真)な信号のデータのみをキューQUEに入れる(信号のTrue/Falseの種別については後述する。)。また、シリアル割込み監視部SIMONは、タクトスイッチの押下の発生などのタッチセンサ起動中のシリアルインターフェース部SIの他の割込み事象の監視も行う。
なお、監視部SIMONは、検出した接触が最初の接触であった場合には「プレス」を意味する信号を接触信号の前にキューQUEに入れる(キューイングする)。その後、オペレーションシステムの有するOSタイマーCLKによるクロック45ms周期で接触信号の更新を行い、所定回数接触を検出しなかった場合には「リリース」を意味する信号をキューQUEに入れる。このことにより、接触開始からリリースまでのセンサ素子間での接触検出の移動を監視することができるようになる。なお、「最初の接触」とは、キューQUEにデータのない状態、或いは、直近の入力データが「リリース」である場合に「フラグ:1」を有する信号が発生する事象を指す。これらの処理により、タッチセンサドライバTSDは、「プレス」から「リリース」の区間のセンサ素子の検出状態を知ることができる。
同時に、監視部SIMONは、タッチセンサから出力される接触信号がFalseとなる条件を満たす信号であった場合に、「リリース」を意味する信号を擬似的に生成してキューQUEに入れる。ここでFalse(偽)となる条件としては、「非連続な2つのセンサ素子で接触を検出した場合」、「タッチセンサ起動中に割込みが生じた場合(例えば、メール着信等の通知でサブ表示部ELDの点灯/消灯状態が変更された場合)」、「タッチセンサ起動中にキー押下が発生した場合」、または「複数のセンサ素子群をまたぐ接触を検出した場合」などが設定される。
また、監視部SIMONは、例えば、センサ素子R2とR3といった隣接する2つのセンサ素子で同時に接触を検出した場合には、単一の素子を検出した場合と同様に、接触を検出した素子に対応するビットにフラグが立った接触信号をキューQUEに入れる。
タッチセンサドライバTSDは、45ms周期でキューQUEから接触信号を読み出し、読み出した接触信号によって、接触を検知した素子を判定する。タッチセンサドライバTSDは、キューQUEから順次に読み出した接触信号により判定した接触の変化、および、検知した素子との位置関係を考慮して、「接触スタートの素子」、「接触の移動方向(右/左回り)の検出」、および「プレスからリリースまでに移動した素子の数(すなわち移動距離)」の判定を行う。タッチセンサドライバTSDは、判定された結果を結果通知部NTFに書き込むと共に、ベースアプリBAに結果を更新するように通知する。
接触の移動方向および移動距離の判定は、隣接するセンサ素子の検出および各センサ素子の検出の組合せによって行うが、これには種々の手法(判定ルール)を適用することができる(詳細について後述する)。例えば、ある1つのセンサ素子(例えばR2)から隣接するセンサ素子(この例の場合、R2およびR3)へと接触が遷移すると、その方向に、1素子分(サブ表示部における1項目分)の移動とすると判定する。
前述のように、結果の更新がタッチセンサドライバTSDによってベースアプリBAに通知されると、ベースアプリBAは結果通知部NTFを確認し、この結果通知部NTFに通知された情報の内容を、さらに上位のアプリケーションであってタッチセンサ結果を要するアプリケーション(サブ表示部におけるメニュー画面表示のための表示部表示アプリAP1、およびロック制御のためのロックセキュリテイアプリAP2など)に通知する。
図5は、本実施例の携帯電話端末100における各センサ素子による接触検知のデータ処理を示す概略ブロック図である。説明の簡易化のため、センサ素子R1〜R4についてのみ示してあるが、センサ素子L1〜L4についても同様である。センサ素子R1〜R4の各々には、高周波が印加されており、一定の浮遊容量の変化を考慮してキャリブレーションし、このときの高周波状態を基準として設定されており、それぞれ、前処理部200(R1用前処理部200a、R2用前処理部200b、R3用前処理部200c、R4用前処理部200d)にて、指の接触などによる静電容量の変化に基づく高周波状態の変動を検出すると、A/D変換器210(R1用A/D変換器210a、R2用A/D変換器210b、R3用A/D変換器210c、R4用A/D変換器210d)へと送信され、接触検出を示すデジタル信号に変換される。デジタル化された信号は制御部220へと送信されてセンサ素子群としてのまとまった信号の集合として、記憶部230に信号の保持する情報を格納する。その後、シリアルインターフェース部、割り込みハンドラにこの信号が送出され、割り込みハンドラにて、タッチセンサドライバが読み取り可能な信号に変換した後、変換後の信号をキューに入れる。なお、制御部220は、記憶部230に格納した情報に基づき、隣接したセンサ素子の2つ以上で接触を検出した時点で方向の検出を行う。図5では、センサ素子検出専用の制御部220および記憶部230を設けた例を示したが、これらの各部は、図1の制御部110および記憶部140と共用させてもよい。
図6は、本実施例の携帯電話端末100における、セキュリティロック解除条件を設定する際の表示部の推移を説明する概略図である。本実施例の携帯電話端末100において電子マネーを取り扱う場合、他人の使用を防止するためにセキュリティロックを設定/解除する必要がある。このセキュリティロックを設定/解除するためのパスワードとなる、タッチセンサにおける「所定の接触操作」を、予めユーザが決定しておくことができる。ここで所定の接触操作とは、「タッチセンサを右回りに1周なぞる」又は「タッチセンサを左周りに2周なぞる」といった接触操作である。これら所定の接触操作の組合せによって、ユーザは任意のパスワードを設定することが可能である。即ち、ユーザにのみ分かるようなパスワードを作成できる。以下、図を参照して、セキュリティロック解除条件の設定を例に述べる。まず、画面D1のようなメニュー項目を表示部に表示させる。ユーザは、タッチセンサ又は他の好適なキー(キー操作部)により項目を選択することができ、ここでは4番の「セキュリティ」を選択する。次に画面D2を表示して、ユーザにセキュリティロック解除の条件の選択を促す。ここでは1番の「タッチセンサ」を選択した場合を説明する。次に、画面D3、D4のような、タッチセンサをなぞるパターンが提示される。画面D3は「右回り1周」、画面D4は「左回り1周」の例であり、その他にも「左回り1周」、「右回り2周」といったパターンが表示部に提示される。ユーザは、タッチセンサ又は他の好適なキー(キー操作部)によりパターンを選択し、パスワードとして使用したい組合せを作成することができる。組合せを決定した後、画面D5を表示して、ユーザにパスワードの確認として決定キー押下を促す。決定キーが押下されると、画面D6を表示して設定が完了したことがユーザに通知される。
図7〜図9は、本実施例の携帯電話端末100における、時間の経過に伴う各ブロックの動作と、それに伴う表示部の動作を説明する概略図である。以下、図を用いて、セキュリティロックの解除を行う場合について本実施例を説明する。図において、頭文字ステップSTで始まる符号は動作ステップを、頭文字Tで始まる符号は時間を示す。図7(a)は、所定の時間内に所定の接触操作が完了しなかった場合の、時間の経過に伴う各ブロックの動作を、同図(b)はそれに伴う表示部の動作を説明する図である。図6では、携帯電話端末100を開状態にしたときに表れる表示部(ディスプレイ)に表示されたメニュー項目から、キー操作部を操作してセキュリティロック解除用のパスワードを設定する場合について説明した。図7〜図9では、携帯電話端末100を閉状態のまま、筐体外面に設けたサブ表示部ELDとタッチセンサ170を操作して、セキュリティロックの解除を行う。このように、本携帯電話端末100では、筐体を閉じたままでもセキュリティロック解除モードに入ることが可能である。図6のようにメニューを表示させて、メニュー上で、適宜選択を繰り返してセキュリティロック解除モードに移行することもできるが、操作が簡便になるように、図10に示したタクトスイッチSW1−4のうちのいずれか1つの長押し、或いは、これらのうちの2つのタクトスイッチの組合せによる同時押下などを「セキュリティロック解除モード用ジャンプボタン」に予め割り当てても良い。これによって、ユーザは簡易な操作によって、セキュリティロック解除モードに移行することができる。
ユーザは、表示部ELDの表示を見ながらタッチセンサを操作し、携帯電話端末100をセキュリティロック解除モードにする。すなわち、携帯電話端末100では、タッチセンサの接触を検知部で検知すると(ステップST11)、制御部はその出力データから実行すべきアプリケーション(モード)の判定を行い(ステップST12)、判定に応じて、上位層にアプリケーションの更新を指示する。実際には、ユーザがタッチセンサを操作してセキュリティロック解除モードに到るまで、ステップST11とステップST12が繰り返されるが、図では、セキュリティロック解除モードに到る直前の接触を検出した場合を示す。セキュリティロック解除モードに入ると、制御部は、表示部が表示動作を開始するように指示すると共に、計時部に計時を開始するように指示する(ステップST13)。指示を受け表示部には、例えば画面D11のような「パスワードを入力して下さい」といったメッセージが表示され、計時が開始される(ステップST14)。このときの時間をT11とする。その後、制御部は、所定の時間が経過するまでに、キューイングされたデータから検出操作の判定を行う(ステップST15)。操作判定の結果、所定の時間が経過しても、ロックを解除する操作を検知しなかった場合、制御部は、表示部の表示動作を停止するように指示すると共に、計時部に計時を停止するように指示する(ステップST16)。指示を受け表示部の表示は、画面D12のように消え、計時が停止する(ステップST17)。同時に制御部は、検知部に検知を停止するように指示する。このときの時間をT12とする。ここで、「所定の時間」とは、操作対象のアプリケーションや、そのアプリケーションに対する情報を表示するときの消費電力に基づき予め規定されている。例えば、表示部が有機EL素子などの自発光素子から構成されるディスプレイである場合には、表示されるべき画素データの平均輝度、1秒あたりのフレーム数、表示予定時間、画素−輝度の消費電流相関データなどに基づき消費電力を算出することができる。具体的には、本実施例のロック解除の場合、タッチセンサの操作をユーザが完了するまでに要する時間も鑑み、[3秒]としている。図の例の場合、「所定の時間」は[T12−T11]となる。
ここで、ステップST15での判定操作は、ユーザによる接触操作が予め規定した基準「所定の接触操作」に達したか否かにて行う。「所定の接触操作」は、アプリケーション別に規定すること、或いは、ユーザが任意に規定することができ、当該アプリケーションに対する接触操作をユーザが試行するものであり、かつ、ユーザが操作続行の意志を持つものとみなすことができるような値を設定する。例えば、ロック解除の操作を「タッチセンサの(右/左周り)1周」の「6周」検出と設定した場合、接触の検出はその「半分」の「3周」を基準とし、操作判定の結果3周に満たない場合は、ロックを解除する操作を検知しなかったとみなす。この場合、基準を例えば「3分の2以上」などとし、「4周」検知したかを判定するものでもよい。判定の結果、所定の接触操作が完了した場合については、以降に示す。
図8(a)は、所定の時間内に所定の接触操作が完了した場合の時間の経過に伴う各ブロックの動作を、(b)はそれに伴う表示部の動作を説明する図である。図7と同様に、タッチセンサの接触を検知部で検知すると(ステップST21)、制御部はその出力データから実行すべきアプリケーション(モード)の判定を行い(ステップST22)、判定に応じて、上位層にアプリケーションの更新を指示する。図では、セキュリティロック解除モードに到る直前の接触を検出した場合を示す。セキュリティロック解除モードに入ると、制御部は、表示部が表示動作を開始するように指示すると共に、計時部に計時を開始するように指示する(ステップST23)。指示を受け表示部には、例えば画面D21のような「パスワードを入力して下さい」といったメッセージが表示され、計時が開始される(ステップST24)。このときの時間をT21とする。その後、検知部で接触を検出した場合(ステップST25)、その出力データをキューイングする。制御部は、所定の時間が経過するまでに、キューイングされたデータから検出操作の判定を行う(ステップST26)。判定の結果、検知した接触操作がパスワードと合致する場合、例えば画面D22に示す「解除しました」といったパスワードを認識したことをユーザに知らせるメッセージが、表示部に表示される。その後、制御部は、パスワード解除後に行うアプリケーションへの更新を上位層へ要求し、表示部には、例えば画面D23のような「メニュー画面」が表示される。このときの時間をT22とする。このように所定の接触操作が完了した場合には、制御部は、所定の時間が経過した後にそれ以前の時間をリセットし、かつ新たに計時を開始するように計時部に指示すると共に、表示部に表示を延長するように指示をする(ステップST27)。その後計時部は、表示部の表示動作を延長した時間の計時を開始する(ステップST28)。このときの時間をT23とする。図の例の場合、「所定の時間」は[T23−T21]となる。
図9は、所定の時間内に所定の接触操作が完了しなかった場合だが、図7で説明した場合と異なり、接触を検知したが、その接触操作がパスワード解除操作と異なっている場合についての、各ブロックと表示部の動作を説明する図である。上述の場合と同様に、タッチセンサの接触を検知部で検知すると(ステップST31)、制御部はその出力データから実行すべきアプリケーション(モード)の判定を行い(ステップST32)、判定に応じて、上位層にアプリケーションの更新を指示する。図では、セキュリティロック解除モードに到る直前の接触を検出した場合を示す。セキュリティロック解除モードに入ると、制御部は、表示部が表示動作を開始するように指示すると共に、計時部に計時を開始するように指示する(ステップST33)。指示を受け表示部には、例えば画面D31のような「パスワードを入力して下さい」といったメッセージが表示され、計時が開始される(ステップST34)。このときの時間をT31とする。その後、検知部で接触を検出した場合(ステップST35)、その出力データをキューイングする。制御部は、所定の時間が経過するまでに、キューイングされたデータから検出操作の判定を行う(ステップST36)。操作判定の結果、検知した接触操作がパスワードと合致しなかった場合、制御部は、表示部に例えば画面D32のような「パスワードが違います、もう一度入力して下さい」といったメッセージを表示させる。このときの時間をT32とする。
その後、制御部は、所定の時間が経過した後にそれ以前の時間をリセットし、かつ新たに計時を開始するように計時部に指示すると共に、表示部に表示を延長するように指示をする(ステップST37)。その後、計時部は、表示部の表示動作を延長した時間の計時を開始する(ステップST38)。このときの時間をT33とする。その後同様に、所定の時間内で所定の接触操作、すなわちユーザによるタッチセンサ接触操作が完了したか否かの判定を続け、制御部は、所定の接触操作が完了した場合は例えば図8で説明したように制御し、完了しなかった場合は図7で説明したように制御する。この例では、図7のように所定の接触操作が完了しなかったとして説明する。所定の時間が経過しても、ロックを解除する操作、すなわちタッチセンサの接触が検知されなかった場合、制御部は、表示部の表示動作を停止するように指示すると共に、計時部に計時を停止するように指示する(ステップST39)。指示を受け表示部の表示は、画面D33のように消え、計時が停止する(ステップST40)。同時に制御部は、検知部に検知を停止するように指示する。このときの時間をT34とする。この例の場合、パスワード解除が開始されてからの第1の「所定の時間」は[T33−T31]であり、前記第1の所定の時間を延長させてからの第2の「所定の時間」は[T34−T33]となる。
ここまで、パスワード解除時のタッチセンサ接触検出について説明したが、音楽プレーヤーとして本携帯電話端末100を使用するときも、同様の制御が行われる。すなわち、再生する音楽リストをユーザに選択させる場合に、所定の接触操作をタッチセンサの「半周」と予め規定しておき、所定の時間(例えば、5秒)内にタッチセンサの接触を検知しなかった場合や、接触を検知しても接触がタッチセンサの半周分に到らなかった場合には、ユーザは選択を行う意思がないものとみなし、表示部の表示を上述した実施例と同様に停止するものである。
ここで、本発明に係るタッチセンサの接触検出方法について説明する。図10は、センサ素子検出状態を単一素子検出状態だけでなく、隣接する2つの素子をさらに検出している複数素子検出状態を判定するようにして16個に分割して示した概念図である。図3の構成とほぼ同様であるが、第1のセンサ素子群G1と第2のセンサ素子群G2との間にもタクトスイッチを設けた構成である。即ち、センサ素子L4とセンサ素子R1との間にタクトスイッチSW3と、センサ素子R4とセンサ素子L1との間にタクトスイッチSW4とが新たに設けられている。8個のセンサ素子の検出状態を1個ずつ管理すると、8個の検出状態を管理できる。しかしながら、8個の検出状態では、状態の数、即ち、状態変化が少ないため、あまり精密な制御はできない。例えば、センサ素子間にまたがって配置されるタクトスイッチSW1の場合には、タクトスイッチSW1を押下するときに、先にセンサ素子L2、L3に接触が検出されるため、ユーザの意図しない動作指示となる恐れがある。つまり、センサ素子L2、L3の順に検出された場合には、何らかの決定指示のためのタクトスイッチSW1押下動作にもかかわらず、上方への移動指示となってしまい、操作対象領域が上方に「1つずれた後」でタクトスイッチSW1押下による選択動作が確定したりして、意図しない項目が決定指示されたりするなどの可能性がある。
このようなタクトスイッチSW1−4の押下処理を適切に処理するために、16個の検出状態で2つまたは3つの検出状態変化(移動)を検出するまで、移動指示の確定を保留する方法がある。また、タクトスイッチの押下が確定した時点でそれまでのセンサ素子の検出状態(結果)を破棄する方法も考えられ、以降、フローチャートを参照して詳細に説明する。
図11は、16個の検出状態における移動確定処理(即ち、保留処理)の一例を示すフローチャートであって、いずれか1個の検出状態がキューQUEに発生することを検出する毎に、このフローチャート処理をタッチセンサドライバTSPが行う。リリースされた状態から最初に検出した位置(16個のいずれか1つの検出状態)を最初の基準点とする。この基準点、現在の検出位置(キューQUEに新たに入れられた検出状態)、前回の検出位置(キューQUEに残されている1つ前の検出状態)の3つから、移動距離(検出状態の遷移)を判定する。図に示すように、ステップK10では、前回の位置がリリースされたか否かを判定する。リリースされていると判定された(キューQUEに残っている前回のデータが「リリース」である)場合は、ステップK12に進み、現在の検出位置がリリースされたか否か(即ち、新たに入れられたデータが「リリース」であるか否か)を判定する。現在の検出位置がリリースされていると判定された場合は処理を終了し、そうでない場合はステップK14に進み、基準点と前回の検出位置を現在の検出位置に設定する。
ステップK10で前回の位置がリリースされていないと判定された場合(即ち、他に検出が生じており、今回の検出がそれに引き続くものである場合)は、ステップK16に進み、現在の検出位置がリリースされたか否か(即ち、新たに入れられた信号が「リリース」であるか否か)を判定する。現在の検出位置がリリースされていると判定された場合は、基準点と前回の検出位置を初期化(クリアー)して処理を終える(ステップK18)。ステップK16で現在の検出位置がリリースされていないと判定された場合は、前回の検出位置と現在の検出位置との距離を計算して(ステップK20)、計算した距離が1または2であるか否かを判定する(ステップK22)。計算した距離が1または2ではない(即ち、3以上)と判定された場合は、センサ素子を飛ばして不連続な検出状態であると判定し(ステップK24)、基準点を現在の検出位置に設定し(ステップK26)、ステップK36に進む。ステップK22で計算した距離が1または2であると判定された場合は、現在の検出位置と基準点との距離を計算する(ステップK28)。なお、距離の計算は、キューQUEに入れられる信号により、センサ素子ごとの検出位置が分かるため、前回の検出位置と、現在の検出位置との間に、16個の検出状態のうちの何個分の差があるのかをタッチセンサドライバTSDが判断して行う。
また、ステップK28で計算された距離が、2または3である否かを判定し(ステップK30)、条件を満たさない場合(即ち、4以上)はステップK36にエラーとして進み、条件を満たす場合(距離が2または3である場合)は、移動を確定する(ステップK32)。即ち、最初に触れた位置が「基準点」とされ、その後「リリース」されることなく引き続いて接触が検出され続けると「前回位置」が更新され、最終的に、最新の検出位置である「現在の位置」が基準点に対して「2または3移動した」と判定されたときに初めて、「移動あり」と判定している。さらに、単一素子検出状態および複数素子検出状態を連続して検出することで、「2の移動」であると判定しているため、センサ素子上では、上記「2の移動」により初めてセンサ素子1つ分指が移動していることになる。次の基準点を前の基準点から移動方向に2つ移動した位置に設定し(ステップK34)、ステップK36に進む。ステップK36では、次回の処理のために「前回の検出位置」を「現在の検出位置」に設定して、処理を終える。
また、タクトスイッチSW1−SW4が押下された場合は、押下検出時に設定されている前回の検出位置と基準点とを初期化(クリアー)する。次に、このようなフローチャートの移動確定処理を用いて、図10のタクトスイッチが押下された場合の処理を説明する。タクトスイッチSW1を押す場合に、「L2検出状態」、「L2−L3検出状態」の順に検出状態が遷移する場合には、この時点では1つしか検出状態が遷移(移動/変化)していないため、移動は確定しない。タクトスイッチSW1を押下した後で、指を離すときに、「L2−L3検出状態」、「L3検出状態」の順に検出状態が遷移する場合が考えられる。このとき、タクトスイッチ押下までの検出状態が保持されている場合には、「L2検出状態」、「L2−L3検出状態」、「L3検出状態」の順に検出状態が2つ遷移しているため、移動が確定してしまう恐れがあるが、上述したように、タクトスイッチSW1の押下を検出した時点で、過去の検出結果を破棄してあるため、指を離すときの誤検出を防止することができ、タクトスイッチのリリース時にセンサ素子の移動指示であると誤認識することがない。
或いは、タクトスイッチSW1を離すときに、「L2検出状態」、「L2−L3検出状態」の順に検出状態が遷移することがある。タクトスイッチ押下前の検出結果を破棄しても、タクトスイッチを離す際に、再度、センサ素子に触れてしまうことが考えられる。しかし、このような場合であっても、図11のフローチャートの処理に従えば、検出状態は1つしか遷移していないため、タクトスイッチのリリース時にセンサ素子の移動指示であると誤認識することがない。
図12は、図11のフローチャートの処理を図10のセンサ素子L1からL4への接触に適用した場合の確定処理を説明する図である。図に示すように、検出状態変化は、「L1検知」、「L1−L2検知」、「L2検知」、「L2−L3検知」「L3検知」、「L3−L4検知」、「L4検知」となる。即ち、単一素子検出状態と複数素子検出状態とL1からL4まで繰り返し検知する。まず、初めの「L1検知」が基準点BP1に設定される(K14)。次に「L1−L2検知」が生じると、前回の位置がリリースではなく「L1検知」であるため、前回の位置と今回検出された現在位置とを比較する(K20)。ここではL1から「L1−L2」への1コマの移動であるため有効とされ、今度は基準点と現在位置とを比較する(K28)。ここでは、基準点も前回位置も同じL1に設定されているため、やはり移動量は1コマであり、この段階では移動は確定せず、現在位置のL1−L2検知状態を前回位置PP1とする(K36)。
さらに「リリース」が途中で生じることなく「L2検知」が生じると、前回の位置が「L1−L2検知」であるため、前回の位置と今回検出された現在位置CP1とを比較する(K20)。ここではL1−L2からL2への1コマの移動であり、「1または2か?」の判定条件を満たすため有効とされ、今度は、基準点と現在位置とを比較する(K28)。今回も基準点はL1検知時と変わらず同じL1に設定されているため、L2との位置関係は2コマであるため、移動量は2コマと判定される(K30)。そして、ここで初めて移動が確定する(K32)。そして、次の判定のために、基準点BP2を「L1検知」から移動方向に2コマ遷移させた点、すなわち「L2検知」に設定(K34)すると共に、前回位置を現在位置「L2検知」に再度設定し直して、確定処理1が完了する。
このように、タッチセンサドライバは、2コマの検知状態の遷移を検出することにより、移動「1」が決定される。つまり、ステップK32において移動が確定されると、結果通知部NTFに移動方向成分(L1からL4に向かう時計回り方向、すなわちSP2からSP1に向かう方向)および「1」の移動を格納すると共に、ベースアプリに対して記憶内容の更新を通知し、ベースアプリはこの更新内容を抽出してサブ表示部表示アプリAP1などに通知することになる。サブ表示部表示アプリAP1が使用中ならば、移動方向成分に基づいて「下から上に向かう方向」に、「1」の移動量か与えられているので、これに見合った処理として、サブ表示部ELDの表示を変化させる。ところで、この確定処理1と同様に第2のセンサ素子群であるR1−R4に対して、「R4検知」状態から連続して「R4−R3検知」「R3検知」と継続して検知状態が遷移したときにもタッチセンサからは移動方向成分に基づいて「下から上に向かう方向」および、「1」の移動量の付与の情報がベースアプリ経由でサブ表示部表示アプリAP1に与えられ、リスト表示の画面表示上は第1のセンサ素子部における操作と同じように、操作対象領域は項目LS4からLS3に変化することとなる。
次に、確定処理1に引き続き、「リリース」が生じることなく指の移動が継続した場合を説明する。確定処理1の場合と同様、図中の確定処理2に示すように、検知状態が基準点BP2から「L2−L3検知」を前回の位置PP2とし、「L3検知」が現在の位置CP2となったとき、基準点BP2と現在の位置CP2との距離が2コマとなるため、さらに移動「1」が確定する。すなわち、確定処理1に引き続いた確定処理2の両方により、合計「2」の移動が確定する。そして、さらに引き続く処理のために、基準点BP2「L2検知」から2コマ先の「L3検知」を新たな基準点BP3として基準点を変更する。
同様に、図中の確定処理3に示すように、検知状態が、基準点BP3から2コマ進み、「L3−L4検知」を前回の位置CP3として「L4検知」が現在の位置CP3になった時点で、距離が2コマとなるため、さらに「1」移動が確定して、確定処理1・2と合わせて合計「3」個の移動が確定する。このようにして、合計「3」の移動がアプリに通知されることとなる。
サブ表示部ELDにおける表示としては、サブ表示部表示アプリAP1に、確定処理1に引き続いて、「下から上に向かう方向」に「1」の移動確定が2回通知されることとなるので、操作対象領域がLS3から上方向に「2」移動したLS1にまで変化することとなる。ここで、単一素子検出状態の検出だけではなく、複数素子検出状態も検出するように構成して検出状態を細分化したにもかかわらず、状態遷移2コマの移動により確定する移動量を「1」としたことにより、結局、例のような4つのセンサ素子で構成されるセンサ素子時の場合には最大「3」の移動確定を行うようにした。つまり、センサ素子数4つの場合に単一素子検出のみによって移動確定を行う場合と、最終的に見た目の移動量は非常に近似したものとなるが、正確に単一の素子の真上のみを触っていなくとも、最大「3」の移動量を確保することが出来、ユーザの不正確な操作にも無反応などとなることなく、ユーザの希望に沿う形で対応できることとなる。このようにして、タッチセンサにより項目が選択され、引き続いてタクトスイッチを押下する際、タッチセンサ操作中に当接していたドーナツ状のパネルをそのまま押し込むことによってキー検出ドライバにより決定の指示をべースアプリ経由でサブ表示部表示アプリなどの使用中アプリに与えることが出来るため、ユーザにとって指の移動量の少ないさらに快適なユーザインターフェースとなる。
また、センサ素子数が「4」つで構成されるセンサ素子群の場合、初めに当接するセンサ素子分「1」を引いた「3」が最大移動確定量となる。よって、サブ表示部ELDに選択項目をリスト表示させる際、サブ表示部表示アプリは、センサ素子数「4」と同数である「4」行の選択項目を表示させることが好ましい。このように表示制御することにより、最下部(SP1側)のセンサ素子L1やR4に初めに接触検出され、最上部(SP2側)にまで連続し接触検出が継続すると、「3」の移動確定がサブ表示部表示アプリに供給されるため、最下段(LS4)から最上段(LS1)に選択対象領域が移動することになる。すなわち、最下部から最上部への最大移動が、表示上でも最下段から最上段への最大移動となるため、タッチセンサへの移動操作とサブ表示部ELDにおける移動表示が一致するため、ユーザにとって非常に操作内容を把握し易いユーザインターフェースとすることが出来る。
さらに、第1センサ素子群と第2センサ素子群とがサブ表示部ELDを挟み、対称な形態に配されているため、いずれを操作しても同様の操作指示を与えることが出来る。その上、互いの端部を並べて配してあるため、例えば、センサ素子L1から時計回りに接触検出状態を遷移させて、センサ素子R4検知状態にまで至るとき、サブ表示部ELD上では次のような表示の変化が生じる。すなわち、L1検出からL4検出時点までで最下段LS4から最上段LS1にまで操作対象領域が移動し、続いてR1検知してR4まで検知状態が遷移すると最上段LS1から最下段LS4に操作対象領域が戻ることとなる。これにより、ユーザは一度も指を離さなくとも、選択項目の選択時に上下方向を付与することが出来たり、操作対象領域をもとの位置に戻したりすることができ、ユーザにとって快適性の高い操作感を与えることが出来る。
なお、携帯電話機を携帯するユーザが、振動の生じやすい場所にて操作を行ったときに、外部振動によって指の移動中に一瞬タッチセンサから指が離れる場合などが考られる。このような場合に、センサ素子数分についてのみを検知するという単一素子検出のみを行って移動検出する粗い検知方式ならば、検知漏れが生じにくいが、単一素子検出だけでなく複数素子検出状態も検知するような緻密な検知方式とした場合、瞬間的に指示離れただけでも指は回転動作を継続中であるために検知状態を1つ飛ばしてしまう場合も考えられる。しかしながら、ステップK22にて「前回位置と現在位置の距離が1か2か?」としたことにより、前回位置から2移動している場合、つまり前回位置から1つ飛ばしても連続移動検出状態として扱うことが出来るため、振動下においてもユーザの希望した動作に極力近づけることが出来る。
なお、ステップK30において距離2コマだけでなく3コマについても有効としていることからも、振動などで指が一瞬はずれたり、素早い操作で検出状態が1つ飛んで検出されたりした場合などにも移動操作を検出することが出来る。さらに、3コマの移動量検出でも、次の2コマのときと同様に「1」の移動量確定とするだけでなく、次回検出のための基準点の設定は2コマ移動のときと同様に前回基準点に対して2コマのみ移動させるにとどめているため、3コマ検出による移動確定を行った場合でも、センサ素子数nから1を引いた「n−1」の移動確定する量を確保することが出来、ユーザにとってはいかなる触り方をしても同じ操作感という安定した操作感を得ることが出来るようになる。
本発明を諸図面や実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。従って、これらの変形や修正は本発明の範囲に含まれることに留意されたい。例えば、各部材、各手段、各ステップなどに含まれる機能などは論理的に矛盾しないように再配置可能であり、複数の手段やステップなどを1つに組み合わせたり、或いは分割したりすることが可能である。実施例においては、タッチセンサとして静電容量式のものを用いて説明したが、この方式に限定されるものではない。例えば、複数の薄膜電極同士の当接の検出による電流の変動計測などで接触を検出する薄膜抵抗方式などのタッチセンサも存在するが、このような方式のタッチセンサを用いても本発明は実現可能である。また、例えば、実施例では、円環状に設けたセンサ素子レイアウトで説明したが、コ字状に配置されるセンサ素子群を表示部を挟んで対向配置させてもよい。また、センサ素子群は左右の配置の実施例で説明したが、上下2群で構成してもよい。さらに、実施例では、携帯電話端末を挙げて説明してあるが、電話以外の携帯無線端末、PDA(パーソナルデジタルアシスタンス)、携帯ゲーム機、携帯オーディオプレイヤー、携帯ビデオプレイヤー、携帯電子辞書、携帯電子書籍ビューワーなどの携帯電子機器に幅広く本発明を適用することが可能である。また、実施例では、センサ素子として静電容量式の接触センサを挙げたが、前述した薄膜抵抗式、さらには、受光量の変動によって接触を検知する光学方式、表面弾性波の減衰によって接触を検知するSAW方式、誘導電流の発生によって接触を検知する電磁誘導方式のセンサ素子を用いてもよい。また、接触センサのタイプによっては、指以外の専用ペンなどの指示器具を使用するものがあるが、本発明の原理はこのような接触センサを搭載した携帯電子機器にも適用し得るものである。