以下、本発明の実施の形態について、図面を参照して説明する。以下の実施の形態では、本発明の入力装置を具える携帯端末の一例として、携帯電話を想定して説明する。しかしながら、本発明の入力装置が適用できる携帯端末は携帯電話に限定されるものではなく、例えばPDAなどタッチパネルを有する任意の携帯端末などに適用できる。また、本発明は、タッチパネルを有する携帯端末に限定されるものでもなく、上述したような銀行のATMや駅の券売機など、タッチパネルを有する任意の入力端末にも適用できる。
図1は、本発明の実施の形態に係る入力装置を備える携帯電話10の概略構成を示す外観斜視図である。この携帯電話10は、端末本体の前面に、一部切り欠いて示すように、液晶ディスプレイ(LCD)または有機ELディスプレイなどに種々の情報およびキーやボタンなどの形状を描画してこれらの配列を表示する表示部32を備えている。また、この表示部32の前面には、ユーザの指やスタイラスペンなどによる入力を受け付けるマトリクススイッチ等で構成した入力部34を配設する。本実施の形態では、これら表示部32と入力部34とを含めてタッチパネル30を構成している。携帯電話10はさらに、マイクなどにより構成される音声入力部70、スピーカなどにより構成される音声出力部80、および、少なくとも1つの機械的なキーにより構成されるキー入力部90も備えている。
他にも、携帯電話10は、必要な機能に応じて、デジタルカメラ機能部、ワンセグ放送用チューナ、赤外線通信機能部などの近距離無線通信部、および各種インタフェース等を備える場合もあるが、これらの詳細については図示および説明を省略する。
図2は、本実施の形態に係る携帯電話10の内部構成を概略的に示す機能ブロック図である。図2に示すように、携帯電話10は、制御部20と、タッチパネル30と、荷重検出部40と、振動部50と、記憶部60と、音声入力部70と、音声出力部80と、キー入力部90と、を備えている。制御部20は、携帯端末10の各機能ブロックをはじめとして携帯端末10全体を制御および管理する。タッチパネル30は、上述したように、ユーザからの入力を受け付ける入力部34を、表示部32の前面に重畳させて配設することにより構成する。このような構成により、タッチパネル30は、ユーザからの操作入力を受け付けると共に、各アプリケーションプログラム(以下、「アプリケーション」と略記する)に応じて入力結果など各種情報の表示を行う。
タッチパネル30の入力部34は、ユーザの指先やスタイラス等の接触(押圧)による入力を検知することにより、当該接触による入力が検知された位置に対応する信号を出力する。このタッチパネル30は、例えば抵抗膜方式や静電容量方式などの公知のものを用いて構成する。表示部32は、各アプリケーションに対応する表示を行う他、入力部34へのユーザの操作入力を受け付ける各種キーやボタンなどで構成するユーザインタフェースを所定の表示領域に描画して表示する。本実施の形態においては、このように、タッチパネル30の入力部34に対するユーザの操作入力を受け付けるために、表示部32に表示する各種キーやボタンなどの画像を「入力用オブジェクト」と記す。
荷重検出部40は、タッチパネル30(または入力部34)に対する押圧荷重を検出するもので、例えば歪みゲージセンサを用いて構成する。振動部50は、タッチパネル30を振動させるもので、例えば、圧電素子または超音波振動子などを用いて構成する。なお、荷重検出部40および振動部50と、タッチパネル30との構成上の関係については後述する。
記憶部60は、各種アプリケーションおよび入力された各種情報などを記憶するとともに、ワークメモリなどとしても機能する。また、記憶部60は、各アプリケーションに応じて使用される各種の入力用オブジェクトを含んだ複数のテンプレートなども記憶する。
音声入力部70は、ユーザの音声などを入力信号に変換して制御部20に伝達する。音声出力部80は、制御部20から伝達された音声信号を音声に変換して出力する。キー入力部90は、ユーザによる操作入力に応じて、対応する信号を制御部10に送信する。キー入力部90を構成する各種キーは、使用するアプリケーションに従って、その用途および機能が規定される。
なお、携帯電話10はさらに、音声通話および電子メールのデータなど各種情報をインターネットや無線通信等を介して基地局と送受信するアンテナおよび無線通信部など、通常の携帯電話としての機能を提供するために必要な各種機能部も備えている。しかしながら、これらは全て公知技術のものと特に変わるところはないため、説明を省略する。
次に、上述した荷重検出部40および振動部50と、タッチパネル30との構成上の関係について説明する。
図3は、図2に示した携帯電話10のタッチパネル30、荷重検出部40、および振動部50の実装構造の一例を示す図である。図3(A)は要部断面図であり、図3(B)は要部平面図である。
タッチパネル30に各種の入力用オブジェクトを表示する表示部32は、筐体12内に収納保持する。表示部32上には、弾性部材からなるインシュレータ36を介して、入力部34を保持する。なお、本実施の形態に係る入力装置は、表示部32および入力部34を平面視で矩形状とする。図3においては、タッチパネル30は、正方形状として示してあるが、タッチパネル30を実装する携帯端末の仕様に応じて、長方形としてもよい。また、この入力装置は、入力部34を、図3(B)に仮想線で示す表示部32の表示領域Aから外れた4隅に配設したインシュレータ36を介して、表示部32に保持する。
また、筐体12には、表示部32の表示領域から外れた入力部34の表面領域を覆うようにアッパカバー14を設け、このアッパカバー14と入力部34との間に、弾性部材からなるインシュレータ16を配設する。
なお、入力部34は、例えば、表面すなわち操作入力を受け付ける面が透明フィルムで構成され、裏面がガラスで構成され、操作面が押圧されると、押圧力に応じて表面の透明フィルムが微少量撓む(歪む)構造のものを用いる。
さらに、本実施の形態に係る入力装置は、入力部34の表面の透明フィルム上で、アッパカバー14で覆われる各辺の近傍に、入力部34に加わる押圧荷重(押圧力)を検出するための歪みゲージセンサをそれぞれ接着等により設ける。また、入力部34の裏面のガラス面上で、対向する2つの辺の近傍には、入力部34を振動させるための圧電素子または超音波振動子などを、それぞれ接着等により設ける。すなわち、図3に示す入力装置は、図2に示した荷重検出部40を4つの歪みゲージセンサを用いて構成し、振動部50を2つの振動子を用いて構成する。なお、図3(B)は、図3(A)に示した筐体12、アッパカバー14、およびインシュレータ16の図示を省略している。
本実施の形態に係る入力装置は、制御部20において、入力部34で検知される入力を監視するとともに、荷重検出部40で検出される押圧荷重を監視する。制御部20は、入力部34で検知された押圧入力が表示部32に表示された入力用オブジェクトに対する入力で、かつ、荷重検出部40により検知される押圧荷重が、当該入力を受け付ける際の所定の基準を満たした際に、当該入力を正規の入力として受け付ける。以下、このような「入力を受け付ける際の基準」を、単に「荷重基準」と記す。また、入力の荷重基準が満たされた際、制御部20は、振動部50に振動を発生させて、入力部34を押圧しているユーザの指もしくはスタイラスペンなどの押圧物に対して振動を伝えるように制御する。なお、荷重検出部40は、例えば、4つの歪みゲージセンサの出力の平均値から荷重を検出する。また、振動部50は、例えば、2つの超音波振動子を同相で駆動する。このような、荷重基準が満たされた際に発生する振動部50の振動により、ユーザは、自らの行った押圧入力が適切に受け付けられたことを認識することができる。
次に、本実施の形態による、入力用オブジェクトの荷重基準について説明する。図4は、ユーザがタッチパネル30の入力部34を押圧する動作により操作入力を行う際の、荷重検出部40が検出する押圧荷重(押圧力)の時間変化の例を概略的に表すグラフである。一般的に、ユーザは、タッチパネル30の入力部34を押圧する動作(押圧入力)を行う際、入力部34に触れてから、入力が受け付けられたと判断できる時点までは、入力部34に対する押圧力を増大し続ける(つまり入力部34を押し込む動作を行う)。また、ユーザは、入力が受け付けられたと判断した時点からは、入力部34に対する押圧力を低減する(つまり入力部34から指などを離そうとする動作を行う)。したがって、荷重検出部40が検出する荷重は、図4に示す曲線のように、左から右に時間の経過に従って最初は右上がりに増大し、途中から右下がりに減少する。
以下、本実施の形態による、入力用オブジェクトの荷重基準設定処理を行うための準備となる初期設定について説明する。本実施の形態では、入力用オブジェクトの荷重基準設定処理を行う前提として、まず、表示部32に表示されている入力用オブジェクトに対して通常の操作入力を行うための、入力部34に入力がされたと判定する荷重基準P1を予め設定する。この際、荷重基準の値P1は、ユーザが表示部32に対して通常の操作入力を行う際の普段の押圧力に基づいて設定する。この設定に基づいて、ユーザが通常の操作入力を行う際の普段の押圧力として、P1(A1)を超える押圧荷重が荷重検出部40によって検出された場合、制御部20は、表示部32に表示されている入力用オブジェクトが押下されたと判定する。また、(A1の後)押圧された入力用オブジェクトに対してP1(A2)を割り込んだ押圧荷重が荷重検出部40によって検知された場合、制御部20は、押下中の入力用オブジェクトに対する操作入力が完了(確定)したと判定する。
このように、荷重基準の値P1を設定することにより、ユーザが入力部34にごく軽く触れただけで入力として判定してしまうことを防ぎ、これにより、ユーザの意図しない入力を回避することができる。
また、このように荷重基準の値P1を設定することにより、入力部34上で同一位置(同じ入力用オブジェクト)を連続して複数回押圧する連打入力を行う場合、ユーザは、1回の入力ごとに入力部34から指を離すことなく連打入力を行うことができる。すなわち、入力部34上にユーザの指が触れたままであっても、ユーザは、指の押圧力の強弱を調整して、荷重基準の値P1に対して連続して押圧力を上下させるような入力を行うことにより、当該入力を連打入力として入力部34に認識させることができる。このような入力方法は、ユーザにとっては指を動かすストロークが少なくて済むため、ユーザは、この入力方法に習熟することにより、より少ない動きで素早く楽に入力を行うことができる。
次に、本実施の形態では、ユーザが入力部34に対して通常の操作入力を行う際の普段の押圧力よりも大きな(強い)押圧力に基づいて、荷重基準の値P2を設定する。本実施の形態では、このように設定した荷重基準の値P2を超える押圧を、上述した荷重基準の値がP1である入力用オブジェクトと隣り合っている入力用オブジェクトに対する入力として受け付ける。このため、荷重基準の値がP1の入力用オブジェクトと隣り合っている入力用オブジェクトに対して、P1より大きな押圧力P2(B1)を超える押圧荷重が荷重検出部40によって検出された場合、制御部20は、当該隣り合っている入力用オブジェクトが押下されたと判定する。また、(B1の後)押圧された当該隣り合っている入力用オブジェクトに対してP2(B2)を割り込んだ押圧荷重が荷重検出部40によって検出された場合、制御部20は、押下中の入力用オブジェクトに対する操作入力が完了(確定)したと判定する。すなわち、制御部20は、表示部32に表示されている入力用オブジェクトに対する押圧入力を受け付ける荷重基準P1よりも、当該入力用オブジェクトと隣り合って表示された入力用オブジェクトに対する押圧入力を受け付ける荷重基準を高くするように制御する。
したがって、荷重基準の値がP1の入力用オブジェクトと隣り合っている入力用オブジェクトに対して、ユーザが通常の操作入力を行う際の普段の(P2に達しない)押圧力で押圧しても、この押圧入力は、当該隣り合っている入力用オブジェクトに対する入力として受け付けられない。ユーザが通常の操作入力を行う際の普段の押圧力(P1)よりも大きなP2を超える押圧力で押圧された場合に初めて、この押圧入力は、当該隣り合って表示された入力用オブジェクトに対する入力として受け付けられる。
なお、上述の説明では、例として、荷重基準(P1,P2)の値を「押圧荷重のしきい値」に見立て、荷重基準の値を「超えた」場合に「荷重基準が満たされた」と判定する態様について説明した。以下も、このような態様により判定する場合について説明するが、「荷重基準が満たされた」と判定できる態様はこれに限定されるものではなく、いくつもの態様を含むことが想定できる。例えば、入力用オブジェクトに対するユーザの押圧入力による押圧荷重が上記荷重基準の値に「達した」場合に荷重基準が満たされたと判定することもできる。また、上記荷重基準の値を示す押圧荷重が荷重検出部40によって「検出された」場合に荷重基準が満たされたと判定することもできる。
次に、本実施の形態に係る振動部50の動作について説明する。振動部50は、制御部20の制御により入力部34を振動させる。この入力部34の振動は、操作入力を行うユーザの指先やスタイラスなどに伝導するため、ユーザは、入力部34に対する入力が適切な行われたことを感触により認識することができる。この振動を発生する際、制御部20は、荷重検出部40により検出される押圧荷重が荷重基準を満たした際に、振動部50を駆動するように制御する。
本実施の形態では、上述したP1およびP2の各荷重基準について、それぞれ別の振動を発生する。すなわち、制御部20は、荷重基準の値がP1である入力用オブジェクトについては、当該荷重基準P1に対応する振動を発生させる。これにより、ユーザは、当該入力用オブジェクトについて押圧荷重P1による入力が適切に受け付けられたことを認識できる。また、制御部20は、荷重基準の値がP2である入力用オブジェクトについては、当該荷重基準P2に対応する、P1の場合とは別の振動を発生させる。これにより、ユーザは、当該入力用オブジェクトについて押圧荷重P2による入力が適切に受け付けられたことを認識できる。
例えば、荷重基準の値がP1である入力用オブジェクトに対して、図4に示すP1(A1)を超える押圧荷重が荷重検出部40により検出された時点で、制御部20は、図5(A)に示すような波形の振動を振動部50に発生させる。この後、当該入力用オブジェクトに対して、図4に示すP1(A2)以下となる押圧荷重が荷重検出部40により検出された時点で、制御部20は、図5(B)に示すような波形の振動を振動部50に発生させる。また、荷重基準の値がP2である入力用オブジェクトに対して、図4に示すP2(B1)を超える押圧荷重が荷重検出部40により検出された時点で、制御部20は、図5(C)に示すような波形の振動を振動部50に発生させる。この後、当該入力用オブジェクトに対して、図4に示すP2(B2)以下となる押圧荷重が荷重検出部40により検出された時点で、制御部20は、図5(D)に示すような波形の振動を振動部50に発生させる。
図5に示す振動の例では、荷重基準の値が低い(P1)である入力用オブジェクトに対しては短めの振動を発生させ、荷重基準の値が高い(P2)である入力用オブジェクトに対しては長めの振動を発生させている。これにより、ユーザは、弱い(低い)押圧荷重に係る入力に対しては弱い(短い)振動により入力の確認を行うことができ、強い(高い)押圧荷重に係る入力に対しては強い(長い)振動により入力の確認を行うことができる。
次に、図6のフローチャートを参照して、本実施の形態による入力用オブジェクトの荷重基準設定処理について説明する。本実施の形態による入力用オブジェクトの荷重基準設定処理は、制御部20が、入力用オブジェクトにより構成されるユーザインタフェースをタッチパネル30の表示部32上に表示するアプリケーションを起動する要求(命令)を受けることにより開始する。ユーザインタフェースを表示するアプリケーションを起動する命令を受けると、制御部20は、記憶部60に記憶されている各種ユーザインタフェースのテンプレートの中から、上述した要求に対応するテンプレートを読み込む(ステップS1)。
ユーザインタフェースのテンプレートを読み込んだら、制御部20は、テンプレートに含まれる入力用オブジェクトが複数であるか否かを判定する(ステップS2)。テンプレートに含まれる入力用オブジェクトが複数である場合、制御部20は、次に、隣り合った入力用オブジェクトが所定の間隔未満で配置される仕様になっているか否かを判定する(ステップS3)。なお、所定の間隔については、後述する。テンプレートに含まれる入力用オブジェクトが複数で、かつ、隣り合った入力用オブジェクトが所定の間隔未満で配置される場合、制御部20は、これらの入力用オブジェクトに対する押圧入力を受け付ける荷重基準が相違(P1およびP2)するように、各入力用オブジェクトの荷重基準を設定する(ステップS4)。
ステップS4にて各入力用オブジェクトの荷重基準の設定が完了したら、制御部20は、これらの各入力用オブジェクトを表示部32に表示して、ユーザからの入力を受け付ける(ステップS5)。なお、ステップS2において入力用オブジェクトが複数でない場合、すなわち入力用オブジェクトが1つしかない場合には、当該入力用オブジェクトに通常の荷重基準(P1)を設定してから(ステップS6)、ステップS5に移行する。また、ステップS3において、複数の入力用オブジェクトが互いに所定の間隔以上の間隔で配置される場合にも、それらの入力用オブジェクトに通常の荷重基準(P1)を設定してから(ステップS6)、ステップS5に移行する。
以上の処理により、複数の入力用オブジェクトが隣り合って配置される場合に、各入力用オブジェクトに対する押圧入力を受け付ける荷重基準が相違する態様で配置される。前述した所定の間隔とは、入力用オブジェクト同士の間隔が当該所定の間隔未満の場合、ユーザが入力を誤って、意図する入力用オブジェクトとは異なる入力用オブジェクトを押圧してしまう可能性が高まるとして設定する間隔である。ここで、所定の間隔として設定される間隔は、入力用オブジェクト同士の端部から端部の距離とすることができるし、また、入力用オブジェクト同士の中心部から中心部の距離とすることもできる。以下、上述した処理の結果を、典型的な実施例につき具体的に説明する。
例えば図7(A)に示すように、ユーザメモ作成アプリケーションを起動している場合を説明する。このアプリケーションは、タッチパネル30の表示部32のほぼ下半分に文字入力用オブジェクトを表示して、入力部34に対するユーザの入力を受け付ける。なお、このユーザメモ作成アプリケーションは、文字入力用オブジェクトを互いに所定の間隔以上離間して表示する。したがって、本例では、ユーザが入力を誤って、意図する入力用オブジェクトとは異なる入力用オブジェクトを押圧してしまう可能性は低いため、これらの文字入力用オブジェクトには、それぞれ通常の荷重基準(P1)を設定する。なお、本例のように、仮名文字に対応したテンキーを用いて、キーの入力回数に応じて、各キーに対応する仮名文字を「あいうえお順」に遷移させることにより文字を1文字ずつ入力する方式は、従来「マルチタップ入力方式」として公知技術のため説明を省略する。
図7(A)に示すような文字の入力を完了した後、ユーザがこのメモを記憶部60(メモリ)に保存する場合、タッチパネル30の表示部32の左上に示す「機能」の入力用オブジェクトに触れて、図7(B)に示すような、いわゆるプルダウン表示を出現させる。この「機能」のプルダウン表示には、「保存」および「削除」の入力用オブジェクトが含まれている。これら2つの入力用オブジェクトが互いに所定の間隔未満で配置される場合、上述した荷重基準設定処理により、「保存」の入力用オブジェクトと「削除」の入力用オブジェクトとは、押圧入力を受け付ける荷重基準が相違する態様で配置される。この場合、この「削除」の入力用オブジェクトのように、互いに隣り合う入力用オブジェクトの一方が、リカバリのきかない(重要な)動作に係るものである場合、この入力用オブジェクトには、例えば3N(ニュートン)とする荷重基準の値P2を設定する。また、この「保存」の入力用オブジェクトのように、荷重基準の値がP2である入力用オブジェクトと隣り合っている入力用オブジェクトには、例えば1Nとする荷重基準の値P1を設定する。
このように、入力用オブジェクトの荷重基準を相違させて配置することにより、例えば、ユーザが「保存」のオブジェクトを押圧しようと意図していたが誤って「削除」のオブジェクトを押圧してしまった場合に対処することができる。すなわち、「削除」のオブジェクトに対して、通常の操作入力を行う際の普段の(P2を超えない)押圧力による入力は受け付けられない。「削除」のオブジェクトに対する入力を行うためには、ユーザは、意図的に、通常の操作入力を行う際の普段の押圧力(P1)より大きな荷重基準の値(P2)を超える押圧荷重により操作入力を行う必要がある。
また、タッチパネル30が、複数の入力用オブジェクトに対する入力を同時に受け付ける機能を有する場合でも、上述したのと同様な対処を行うことができる。すなわち、ユーザが「保存」のオブジェクトを押圧しようと意図していたが、誤って(または入力部34を押圧する指の接触面積がはみ出すことにより)「保存」と「削除」の入力用オブジェクトを両方同時に押圧してしまう恐れがある。このような場合でも、「削除」のオブジェクトに対して、通常の操作入力を行う際の普段の(P2を超えない)押圧力による入力は受け付けられない。なお、上述の場合と逆に、ユーザが「削除」のオブジェクトを押圧しようと意図していたが誤って「保存」のオブジェクトを押圧してしまった場合の対処については、後述する。
このように、本実施の形態では、普段の操作入力に基づく(P1を超える)押圧荷重により入力を受け付ける入力用オブジェクトと隣り合って配置される入力用オブジェクトに対しては、普段の操作入力に基づく押圧荷重よりも大きな(P2を超える)荷重に設定する。普段の操作入力よりも大きな(重い)押圧荷重による入力は、通常の入力方法として想定される各種の入力態様(例えば長押しや、ダブルクリックのような2度押しなど)とは異なる入力である。したがって、荷重基準がP2である入力用オブジェクトに対して、通常の入力方法として想定される各種の入力態様による入力は受け付けられないため、ユーザが意図せずに誤って行ってしまった入力は有効な入力として受け付けられることはない。すなわち、ユーザの意図しない誤操作による入力は回避される。
なお、本実施の形態の処理により入力用オブジェクトを隣り合わせて配置する場合、荷重基準の値がP2である入力用オブジェクトに対する入力は通常の操作入力時よりも強い押圧力で入力する必要があることを、ユーザに示唆する表示を行うのが好適である。例えば、図7(C)に示す「削除」のキーの入力用オブジェクトのように、強い押圧力で入力する必要がある入力用オブジェクトは、他のキーの入力用オブジェクトとは異なる色で表示部32に表示する。これにより、異なる色の入力用オブジェクトは、荷重基準の値がP2である入力用オブジェクトであることを強調することができる。また、このような入力用オブジェクトを表示部32に表示する際には、例えば「『削除』キーの入力は強めにタッチして下さい」等の文字を表示部32の所定位置に表示してもよい。
また、他の実施例について説明する。図8に示すユーザメモ作成アプリケーションによる画面表示は、タッチパネル30の表示部32に表示された文字入力用オブジェクトの構成は図7に示したものと類似するが、ユーザの入力結果(メモ)を表示する領域が大きめになっている。そのため、ユーザの押圧入力を受け付ける文字入力用オブジェクトを配置する領域が相対的に小さい。このような場合、図8に示すように、各入力用オブジェクトの面積をそれぞれ縮小するとともに、入力用オブジェクト同士の間隔を狭くして表示する。この入力用オブジェクト同士の間隔が所定の間隔未満である場合、本実施の形態による入力用オブジェクトの荷重基準設定処理に基づいて、制御部20は、間隔が所定の間隔未満で隣り合う入力用オブジェクトについて、それぞれ異なる荷重基準を設定する。
本実施の形態による荷重基準設定処理により、例えば図8に示すように、異なる荷重基準の入力用オブジェクトが交互に配置される。図8に示す例では、異なる荷重基準により入力用オブジェクトが配置されていることを示すために、強い押圧力で入力する必要がある入力用オブジェクトは色を変更して表示している。すなわち、色の濃い(破線のハッチングを施した)入力用オブジェクトは、通常の操作入力を行う際の荷重基準(P1)より大きな荷重基準(P2)が設定されていることを示している。一方、通常の色の(白抜きした)入力用オブジェクトは、通常の荷重基準(P1)が設定されていることを示している。
このように荷重基準が設定された結果、タッチパネル30の入力部34は、通常の荷重基準(P1)が設定された入力用オブジェクトと隣り合わせて、通常の荷重基準(P1)よりも大きな荷重基準(P2)が設定される配置になる。すなわち、通常の荷重基準(P1)が設定された入力用オブジェクトと、通常の荷重基準(P1)よりも大きな荷重基準(P2)が設定された入力用オブジェクトとが、1つおきに配置される。したがって、複数の入力用オブジェクトが密集して隣り合う場合であっても、ユーザは、これらの入力用オブジェクトの入力を区別して行うことができる。
次に、図9に示すフローチャートを参照して、図6で説明した入力用オブジェクトの荷重基準設定処理により入力用オブジェクトを配置した後に行う、入力用オブジェクトの押圧入力受付処理について説明する。本処理は、図6で説明した処理により、ユーザメモ作成アプリケーション等を起動して、入力用オブジェクトを隣り合わせて表示部32に表示した後、入力部34に対するユーザの入力を受け付ける時点から開始する。
本実施の形態による入力用オブジェクトの押圧入力受付処理が開始すると、制御部20は、タッチパネル30の入力部34に対するユーザの指先やスタイラスなどによる入力(以下、「ユーザによる入力」と略記する)が検知されたか否かを判定する(ステップS12)。
ステップS12にて入力部34に対するユーザによる入力が検知された場合、制御部20は、入力部34からの入力に基づいて、当該入力を受け付けた入力部34の位置に対応する、表示部32における位置を判定する(ステップS13)。さらに、この判定結果に基づいて、制御部20は、入力が検知された位置に対応する表示部32の位置が、通常の荷重基準(P1)よりも大きな荷重基準(P2)が設定された入力用オブジェクトに対応する位置であるか否かを判定する。入力位置が、通常の荷重基準(P1)よりも大きな荷重基準(P2)が設定された入力用オブジェクトに対応する位置である場合(ステップS13のYes)、制御部20は、当該入力用オブジェクトをハイライト表示する(ステップS14)。
ステップS14におけるハイライト表示とは、入力用オブジェクトに対して、ユーザの指先などが触れていることをユーザに認識させるために行う強調表示のことである。例えば、図10(A)に示すような「削除」ボタンの入力用オブジェクトに対するユーザの入力が検知された場合、制御部20は、当該入力用オブジェクトを、図10(B)に示すようなハイライト表示に変化させる。これにより、ユーザは、入力部34に触れている自分の指先などの入力が適切に検知されていることを視認できる。なお、このハイライト表示は、ユーザの指先などが入力部34に触れていることのみを示すものであり、この時点では、まだ入力が受け付けられた(つまりキーが押下された)とは判定されていない。
次に、制御部20は、荷重検出部40により検出される押圧荷重の値Pが荷重基準の値P2を超えたか否かを判定する(ステップS15)。荷重基準P2が設定された入力用オブジェクトに対しては、この荷重基準の値P2を超える入力がなされないと、入力を受け付けたものとして処理しない。したがって、ステップS15にて、荷重基準の値P2を超える値の押圧荷重Pが荷重検出部40により検出されない場合、制御部20は、入力部34に対するユーザによる入力が解除されたか否かを判定する(ステップS16)。
ステップS16にて当該入力が解除されない(つまりユーザが指先などを入力部34から離していない)場合、制御部20は、ステップS15に戻って、荷重検出部40により検出される押圧荷重の値Pを監視する。ステップS16にて、入力部34に対するユーザによる入力が解除された場合、ユーザが触れた入力用オブジェクトに対しては入力がされなかったものとして扱い、ハイライト表示を解除して(ステップS17)、本処理は終了する。
ステップS17におけるハイライト表示の解除とは、入力用オブジェクトに対応する位置の入力部34に触れていたユーザの指先などの入力が検知されなくなったことを、ユーザに示すための表示である。例えば、制御部20は、図10(B)に示すように、ユーザの入力が検知されて表示部32に表示していた入力用オブジェクトのハイライト表示を、図10(A)に示すような表示に戻す。これにより、ユーザは、入力部34に触れていた自分の指先などが、入力部34から離れたことを視認できる。
一方、ステップS15にて、荷重基準の値P2(図4に示すB1)を超える押圧荷重Pが荷重検出部40により検出された場合、制御部20は、押圧荷重Pが荷重基準の値P2を超えたことをユーザに知らせるために、振動部50を振動させる(ステップS18)。この場合、制御部20は、図5(C)に示したような波形の振動(強い入力に対応する長めの振動)を振動部50に発生させる。これにより、ユーザは、自らの押圧荷重Pが荷重基準の値P2を超えたことを識別できる。
さらに、ステップS18において、制御部20は、入力が検知されている入力用オブジェクトがキーとして押下されたことを示すように表示部32の表示を変更する。すなわち、例えば、図10(B)に示すようなハイライトされた入力用オブジェクトの表示を、図10(C)に示すように、当該入力用オブジェクトが押下されたことを示すような表示を行う。これにより、ユーザは、入力部34に触れていた自分の指先などによる押圧入力が、入力用オブジェクトに対して、押下入力として適切に受け付けられていることを視認できる。
ステップS18の後、制御部20は、入力部34に対するユーザによる入力の押圧力が減少し、荷重検出部40により検出される押圧荷重Pが荷重基準の値P2(図4に示すB2)以下になったか否かを判定する(ステップS19)。ステップS19にて、押圧荷重Pが荷重基準の値P2以下になった場合、制御部20は、現在入力を受け付けている最中の、荷重基準がP2である入力用オブジェクトに対する操作入力が確定されたものとして受け付ける(ステップS20)。すなわち、本実施形態による入力処理においては、機械式のキーに例えると、キーを押下した時点では、まだキーの入力の受け付けを確定せずに、キーの押下が解除された時点で初めて当該キーの入力の受け付けを確定する。
また、ステップS20においては、制御部20は、入力が検知されている入力用オブジェクトに対する押圧荷重がP2以下になったことを示すように、表示部32の表示をハイライト表示に戻す。すなわち、例えば、図10(C)に示す入力用オブジェクトが押下されたことを示すような表示を、図10(B)に示すように、ハイライト表示された入力用オブジェクトの表示に戻す。これにより、ユーザは、入力用オブジェクトに対する押下入力が入力として確定され、かつ、入力用オブジェクトを押圧している押圧力を緩和させたことが適切に認識されていることを視認できる。
さらに、ステップS20において、制御部20は、荷重基準がP2である入力用オブジェクトに対する操作入力が確定されたことをユーザに示すために、振動部50を振動させる。この際、制御部20は、図5(D)に示したような波形の振動(強い入力に対応する長めの振動)を振動部50に発生させる。これにより、ユーザは、荷重基準がP2である入力用オブジェクトに対する操作入力が確定したことを識別できる。
ステップS20の後、制御部20は、入力部34に対するユーザによる入力が解除されたか否かを判定する(ステップS21)。ステップS21にて当該入力が解除されない(つまりユーザが指先などを入力部34から離していない)場合、制御部20は、荷重検出部40により検出される押圧荷重Pを監視し続ける。ステップS21にて、入力部34に対するユーザによる入力が解除された場合、上述したステップS17に移行してハイライト表示を解除して、本処理は終了する。
なお、以上説明したような、ステップS15からステップS18を経て、ステップS19およびステップ20へと続く一連の処理が行われる際、荷重検出部40により検出される入力部34に対する押圧荷重を例示すると、図11に示す曲線βのようになる。
一方、ステップS13にて、入力位置が、荷重基準P2が設定された入力用オブジェクトに対応する位置ではない場合、制御部20は、ステップS22に移行して、当該入力用オブジェクトをハイライト表示する。なお、ステップS13からステップS22に移行する場合というのは、ユーザによる入力が検知された入力用オブジェクトが、荷重基準P1が設定された入力用オブジェクトである場合である。この場合に行う入力用オブジェクトのハイライト表示も、ステップS14にて説明したのと同じ態様のハイライト表示を行う。
次に、制御部20は、荷重検出部40により検出される押圧荷重の値Pが荷重基準の値P1を超えたか否かを判定する(ステップS23)。荷重基準P1が設定された入力用オブジェクトに対しては、通常の操作入力を行う場合と同様に、荷重基準の値P1を超える入力がなされれば、入力を受け付けたものとして処理する。そのため、ステップS23にて、荷重基準の値P1を超える値の押圧荷重Pが荷重検出部40により検出されない場合、入力部34に対するユーザによる入力が解除されたか否かを判定する(ステップS24)。
ステップS24にて当該入力が解除されない(つまりユーザが指先などを入力部34から離していない)場合、制御部20は、ステップS23に戻って、荷重検出部40により検出される押圧荷重の値Pを監視する。ステップS24にて、入力部34に対するユーザによる入力が解除された場合、ユーザが触れた入力用オブジェクトに対しては入力がされなかったものとして扱い、ハイライト表示を解除して(ステップS17)、本処理は終了する。
一方、ステップS23にて、荷重基準の値P1(図4に示すA1)を超える押圧荷重Pが荷重検出部40により検出された場合、制御部20は、押圧荷重Pが荷重基準の値P1を超えたことをユーザに知らせるために、振動部50を振動させる(ステップS25)。この場合、制御部20は、図5(A)に示したような波形の振動(弱い(通常の)入力に対応する短めの振動)を振動部50に発生させる。これにより、ユーザは、押圧荷重Pが荷重基準の値P1を超えたことを識別できる。
さらに、ステップS25において、制御部20は、入力が検知されている入力用オブジェクトが押下されたことを示すように表示部32の表示を変更する。すなわち、例えば、図10(B)に示すようなハイライトされた入力用オブジェクトの表示を、図10(C)に示すように、当該入力用オブジェクトが押下されたことを示すような表示を行う。これにより、ユーザは、入力部34に触れていた自分の指先などによる押圧入力が、入力用オブジェクトに対して、押下入力として適切に受け付けられていることを視認できる。
ステップS25の後、制御部20は、入力部34に対するユーザによる入力の押圧力が減少し、荷重検出部40により検出される押圧荷重Pが荷重基準の値P1(図4に示すA2)以下になったか否かを判定する(ステップS26)。ステップS26にて、押圧荷重Pが荷重基準の値P1以下になった場合、制御部20は、現在入力を受け付けている最中の、荷重基準がP1である入力用オブジェクトに対する操作入力が確定されたものとして受け付ける(ステップS27)。
また、ステップS27において、制御部20は、入力が検知されている入力用オブジェクトに対する押圧荷重がP1以下になったことを示すように、表示部32の表示をハイライト表示に戻す。すなわち、例えば、図10(C)に示すような入力用オブジェクトが押下されたことを示すような表示を、図10(B)に示すように、ハイライト表示された入力用オブジェクトの表示に戻す。これにより、ユーザは、入力用オブジェクトに対する押下入力が入力として確定され、かつ、入力用オブジェクトを押圧している押圧力を緩和させたことが適切に認識されていることを視認できる。
さらに、ステップS27において、制御部20は、荷重基準がP1である入力用オブジェクトに対する操作入力が確定されたことをユーザに示すために、振動部50を振動させる。この際、制御部20は、図5(B)に示したような波形の振動(弱い(通常の)入力に対応する短めの振動)を振動部50に発生させる。これにより、ユーザは、荷重基準がP1である入力用オブジェクトに対する操作入力が確定したことを識別できる。
ステップS27の後、制御部20は、入力部34に対するユーザによる入力が解除されたか否かを判定する(ステップS21)。ステップS21にて当該入力が解除されない(つまりユーザが指先などを入力部34から離していない)場合、制御部20は、荷重検出部40により検出される押圧荷重Pを監視し続ける。ステップS21にて、入力部34に対するユーザによる入力が解除された場合、上述したステップS17に移行してハイライト表示を解除して、本処理は終了する。
なお、以上説明したような、ステップS23からステップS25を経て、ステップS26およびステップ27へと続く一連の処理が行われる際、荷重検出部40により検出される入力部34に対する押圧荷重を例示すると、図11に示す曲線αのようになる。
一方、ステップS26にて、押圧荷重Pが荷重基準の値P1以下にならない場合、制御部20は、入力部34により検知される押圧入力の位置が変化する、いわゆるスライド入力が検知されたか否かを判定する(ステップS28)。ここでいうスライド入力とは、ユーザが入力部34を指などで押圧したままの状態で、その指などを移動させ、もともと押圧していた入力用オブジェクトから他の入力用オブジェクトまで入力位置が変化する入力のことを表す。
ステップS28にて、このようなスライド入力が入力部34に検知されない場合、制御部20は、ステップS26に戻って、荷重検出部40により検出される押圧荷重の値Pの監視を続行する。しかしながら、ステップS28にて、入力部34対して押圧荷重がP1を超えたままのスライド入力が検出された場合、制御部20は、ステップS13に移行して処理を続行する。なお、ステップS28からステップS13に移行する際には、もともと押圧入力が検知されていた(スライド入力が行われる前の)入力用オブジェクトの押圧表示を解除してから移行する。
スライド入力(ステップS28)後のステップS13において、スライド入力により入力位置が変化した先が荷重基準の低い(P1)入力用オブジェクトである場合、処理の流れは、ステップS22からステップS23を経てステップS25へと続く。すなわち、荷重基準がP1の入力用オブジェクトに対する入力の押圧荷重Pが、荷重基準の値P1を超えた時点ではまだ入力が受け付けられていない(確定していない)ため、当該入力が確定するまでは、スライド入力によって入力用オブジェクトを変更できる。スライド入力により入力用オブジェクトを変更して、荷重基準がP1の入力用オブジェクトに対して押圧入力の押圧荷重がP1以下となった場合、その時点で押圧している荷重基準がP1の入力用オブジェクトに対する入力が確定する。
一方、スライド入力(ステップS28)後のステップS13において、スライド入力により入力位置が変化した先が荷重基準の高い(P2)入力用オブジェクトである場合、ステップS14に移行して、制御部20は当該入力用オブジェクトをハイライト表示する。ここで、押圧荷重P1を超えたまま行われたスライド入力の押圧荷重がP2を超えていなければ、入力位置が変化した先の荷重基準の高い(P2)入力用オブジェクトに対する入力は、まだ押下入力として受け付けられていない。すなわち、荷重基準P1の入力用オブジェクトに対して検出されていた当初の押圧入力(P1<P<P2)を、未確定の状態のまま、荷重基準P2の入力用オブジェクトまでスライド入力を行うことにより、押圧荷重の異なる入力用オブジェクトに対する入力に変更できる。
したがって、この後、ステップS15にて、制御部20は、荷重検出部40により検出される押圧荷重の値Pが、荷重基準の値P2を超えたか否かを判定する。ステップS15にて、荷重基準の値P2を超える押圧荷重Pが荷重検出部40により検出された場合、制御部20は、当該入力用オブジェクトが押下されたものとして扱う。さらに、ステップS19にて、押圧荷重Pが荷重基準の値P2以下になった場合、制御部20は、現在入力を受け付けている最中の当該入力用オブジェクトに対する操作入力を、確定された入力として受け付ける。
このように、ステップ28のスライド入力を受け付ける処理により、荷重基準P2の入力用オブジェクトを押圧しようと意図していたユーザが、誤って荷重基準P1のオブジェクトを押圧してしまった場合にも対処できる。すなわち、この処理により、例えば図7に示す例において、ユーザが「削除」のオブジェクト(荷重基準P2(高い))を押圧しようと意図していたが誤って「保存」のオブジェクト(荷重基準P1(低い))を押圧してしまった場合に対処することができる。このような場合の処理および操作について、以下、具体的に説明する。
当初、荷重基準P2の入力用オブジェクトを押圧しようと意図しつつ、誤って荷重基準P1のオブジェクトを押圧した場合(ステップS23のYes)、ユーザは、荷重基準P2に対応する長めの振動が返ってくるものと期待する。しかしながら、実際は、荷重基準P1に対応する短めの振動が発生する(ステップS25)。この振動により、ユーザは自らの押圧入力が荷重基準P2の入力用オブジェクトに対して適切に入力されておらず、荷重基準P1の入力用オブジェクトに触れてしまっていることを自覚できる。しかしながら、この時点では、ユーザが押圧している入力用オブジェクト(荷重基準P1)に対する操作入力の受け付けは、まだ確定していない(確定処理はステップS27にて行われる)。
この振動により誤って荷重基準P1のオブジェクトを押圧していると認識したユーザは、荷重基準P1を超える押圧荷重を保ったまま、荷重基準P2の当初意図したオブジェクトまで、入力部34を押圧している指などをスライドできる(ステップS28)。荷重基準P1のオブジェクトから、当初意図した荷重基準P2の入力用オブジェクトまでスライド入力を行うと(ステップS13)、移動先の荷重基準P2の入力用オブジェクトは、ハイライト表示されるが(ステップS14)、まだ押圧表示はされていない。
そこで、ユーザによりP2を超える押圧荷重の押圧入力が行われることによって(ステップS15)、当初意図した荷重基準P2の入力用オブジェクトに対して押圧入力が受け付けられる(ステップS18)。この際のユーザによる操作は、当初意図した入力用オブジェクトまでスライド入力した後に、当該入力用オブジェクトを強く押し込む動作に相当する。その後、ユーザにより押圧荷重が弱められるか、または入力部34から指を離すなどの動作が行われることにより(ステップS19)、当初意図した荷重基準P2の入力用オブジェクトに対する押圧入力が確定される(ステップS20)。
以上説明したような、スライド入力を経る前後の一連の処理が行われる際、荷重検出部40により検出される入力部34に対する押圧荷重を例示すると、図11に示す曲線γのようになる。曲線γにおいて、ユーザが荷重基準P2の入力用オブジェクトを押圧しようと意図しつつ、誤って荷重基準P1のオブジェクトを押圧した時点がA1に相当し、これに対応する動作はステップS13からステップS22になる。また、A1において、意図と異なる振動が発生することにより押し間違いに気付いたユーザがスライド入力を行う期間(ステップS28)が、A1からB1までの間の平坦な部分に対応する。さらに、ユーザが当初意図した入力用オブジェクトまでスライド入力した後、当該入力用オブジェクトを強く押し込む動作をした時点がB1に相当し、これに対応する動作はステップS15からステップS18になる。その後ユーザが押圧力を弱めて入力部34から指を離そうとする動作によりB2を通過し、これに対応する動作はステップS19からステップS20になる。
このように、本実施の形態では、入力用オブジェクトの押圧入力受付処理により、ユーザが荷重基準P2のオブジェクトを押圧しようと意図していたが、誤って荷重基準P1のオブジェクトを押圧してしまった場合にも対処することができる。
なお、本発明は、上述した実施の形態にのみ限定されるものではなく、幾多の変更または変形が可能である。例えば、上述した実施の形態においては、入力用オブジェクトの荷重基準の値P1、P2、および所定の間隔は、予め設定することを想定したが、必要に応じて、ユーザが適宜変更または調整できるようにするのが望ましい。このようにすれば、操作中に、ユーザが押圧荷重の設定について違和感がある場合、後から適宜設定を修正することができる。
また、上述した実施の形態では、ユーザによる入力の押圧荷重がP1またはP2を超えた際、そのことをユーザに認識させるために、振動部50を振動させた。振動部50の発生する振動は、図5に記載した波形に基づく振動の態様に限定されるものではなく、ユーザによる入力の押圧荷重がP1を超えたか、またはP2を超えたかの区別が付くものであれば任意の振動とすることができる。また、このような場合に振動を発生させることは必須の要件ではなく、振動の他にも、例えば音声出力部80から特定の音を発生することもできる。さらに、当該入力を受け付けている入力用オブジェクトの色や表示態様を表示部32上で変化させることにより、ユーザによる入力の押圧荷重がP1またはP2を超えたことを示してもよい。
また、上述した実施の形態では、入力用オブジェクト同士の間隔が当該所定の間隔未満の場合、ユーザの誤操作を防止するために、各入力用オブジェクトの荷重基準を相違させた。しかしながら、入力用オブジェクト同士の間隔が無く、隣接していたとしても、個々の入力用オブジェクトの入力受付範囲が広い場合、ユーザが入力を誤る可能性は低い。よって、このような場合、個々の入力用オブジェクトの入力受付範囲が所定の面積以上であれば、荷重基準を相違させなくてもよい。また、個々の入力用オブジェクトの入力受付範囲が広いと、ユーザが入力を誤る可能性が低いことに基づき、荷重基準を相違させるか否かの基準となる所定の間隔を入力用オブジェクトの入力受付範囲に依存させ、変動させてもよい。つまり、所定の間隔として1cmを設定したとしても、入力用オブジェクトの入力受付範囲が広い場合、入力用オブジェクトの間隔が0.1cm未満にならなければ荷重基準が相違せず、また、入力用オブジェクトの入力受付範囲が狭い場合、入力用オブジェクトの間隔が2cm未満になったら荷重基準が相違するようにしてもよい。
上述した実施の形態では、最も単純な例として、荷重基準がP1およびP2の2つの場合を説明したが、必要に応じて、この荷重基準を3つ以上にしてもよい。