以下、図面を参照しつつ本発明の実施の形態について説明する。
<1.第1の実施の形態>
<1−1.概要>
図1は、第1の実施の形態に係るタッチパネル装置1の概要を示す図である。
タッチパネル装置1は、車両2(本実施の形態では自動車)に搭載されるナビゲーション装置等の一部として構成される電子制御装置である。タッチパネル装置1は、タッチパネル装置1の操作者であるユーザ3により、操作パネル4が接触操作されると、接触位置のコマンドボタンに対応する制御を実行する。かかるユーザ3による接触操作を複数の圧力センサ5(5a,5b,5c,5d)により検出している。ユーザ3は、操作パネル4を接触操作することで、例えばナビゲーションにおける経路探索や目的地の設定を行うことができる。
<1−2.構成>
図2は、タッチパネル装置1における圧力センサ5及び支持部材BMを説明する図である。
圧力センサ5は、操作パネル4の四隅に配置され、操作面となる操作パネル4に対するユーザ3の押圧力を検出する。押圧される位置及び圧力により四隅に配置された圧力センサ5へ伝達される圧力が異なるため、各圧力センサ5の検出値と接触位置とを関連付けたデータテーブルを予め備え、タッチパネル装置1は、かかるデータテーブルに基づき、各圧力センサ5の検出値から接触位置を検出することができる。また、タッチパネル装置1は、各圧力センサ5の検出した検出値を合算することで、接触圧力を検出することができる。接触位置及び圧力の検出手法は後述する。
支持部材BMは、ユーザ3により操作パネル4が押圧された際、押圧により操作パネル4の撓みを低減するための、操作パネル4を支持する部材である。図3に示すように、ユーザ3により操作パネル4が押圧されると、押圧力に応じて操作パネル4に撓みが生じ得る。操作パネル4に撓みが生じると、操作パネル4の周辺部が、押圧された方向と逆の方向へ反り返るよう湾曲するため、かかる周辺部の圧力センサ5への圧力が減殺される。圧力センサ5への圧力が減殺されることで、押圧力が正確に圧力センサ5へ伝達されず、正確な接触位置及び圧力の検出ができない。このため、操作パネル4の撓みの生じ得る箇所に支持部材BMを設けることで、操作パネル4の反り返りを低減し、ユーザ3の押圧による操作パネル4の撓みを低減する。なお、支持部材BMは、圧力センサ5を操作パネル4の隅部に設ける場合には、操作パネル4の外周の辺の略中央に設けられることが好ましい。特に、操作パネル4の外周の長辺の略中央に設けられることが好ましい。かかる箇所がユーザ3による操作パネル4の押圧の撓みが生じやすいからである。また、支持部材BMは、操作パネル4と点で接することが好ましい。接する面積が広いほど支持部材BMにより押圧力が減少され、圧力センサ5が検出すべき圧力が減少するからである。支持部材BMが操作パネル4に接する面積は、圧力センサの検出感度に基づき決定されればよい。また、支持部材BMの材質は、ゴムや樹脂、シリコン等が好ましい。一定の弾性を有する材質とすることで、操作パネル4の撓みを低減しつつ、操作パネル4へ加えられた押圧力を圧力センサ5へ適切に伝達できるためである。
図4は、タッチパネル装置1の構成を示すブロック図である。タッチパネル装置1は、互いに電気的に接続されたタッチパネル部1a、ディスプレイ部1b、及び本体部1cを備える。
タッチパネル部1aは、ユーザ3からの接触操作によりユーザ3の入力を受け付ける部材であり、車両の乗員、特に運転者から操作容易となるよう、ダッシュボード上に配置されるのが好ましい。また、タッチパネル部1aは、操作パネル4及び圧力センサ5(5a,5b,5c,5d)を備える。
操作パネル4は、表示部に表示されたコマンドボタンを示す領域にユーザ3が接触操作する操作面であり、ガラスやアクリル等からなる。
圧力センサ5(5a,5b,5c,5d)は、操作パネル4の互いに異なる位置に配置され、操作パネル4に加わる押圧力を検出するセンサであり、例えば歪みゲージである。圧力センサ5は、押圧されることにより抵抗値が変化する抵抗器(図示せず)を備え、押圧により変化した抵抗値と基準電圧等に基づき、加えられた押圧力に比例する電圧(センサ電圧)を検出抵抗器(図示せず)に発生させる。後述する制御部は、検出抵抗器に発生した電圧を検出し、操作パネル4に加えられた押圧力を検出する。このようにして、タッチパネル装置1は、圧力センサ5により、ユーザ3が操作パネル4に対し、どの程度の圧力で押圧したかを検出できる。なお、圧力センサ5は、本実施の形態において、操作パネル4の四隅に配置されるが、複数の圧力センサ5を操作パネル4に接するいずれかの位置に配置すればよい。ユーザ3が操作パネル4を押圧した場合、操作パネル4のいずれの位置においても圧力が発生するからである。
ディスプレイ部1bは、表示パネル6及び表示ドライバ7を備え、ユーザ3に映像情報を表示する。
表示パネル6は、タッチパネル部1aに重ねて配置され、ユーザの指示を受け付けるコマンドボタンや地図等を表示する液晶ディスプレイ等である。
表示ドライバ7は、表示パネル6の輝度や色調を調整し、制御部8から送信される画像情報を表示パネル6に表示させる駆動回路である。
本体部1cは、制御部8、記憶部9、及びカードスロット10を備える電子制御装置である。
制御部8は、CPU、RAM、及びROMを備えるコンピュータである。制御部8による制御は、ROMに予め記憶されたファームウェアとしてのプログラムに従い、CPUが演算処理を実行して実現される。また、制御部8はCPU等の他、位置圧力検出部81、異常検出部82、接触検出部83、及び画像生成部84を備える。
位置圧力検出部81は、各圧力センサ5のセンサ電圧を検出し、センサ電圧値が所定の範囲内である場合に、後述の第1データテーブル91に基づき、押圧された位置を検出する。また、位置圧力検出部81は、各圧力センサ5のセンサ電圧を合算し、押圧された圧力を検出する。なお、センサ電圧値が所定の範囲外となる場合には、ユーザ3による押圧に基づき発生したセンサ電圧でないと見做し、位置及び圧力の検出を行う必要がない。また、位置圧力検出部81は、圧力センサ5に異常が検出された場合、複数の圧力センサ5のうち異常が検出されていない圧力センサ5の検出結果であるセンサ電圧に基づき、操作パネル4におけるユーザの接触位置及び圧力を検出する。
異常検出部82は、各圧力センサ5のセンサ電圧を検出し、検出したセンサ電圧を所定条件と対比することで、各圧力センサ5それぞれの異常を検出する。また、異常検出部82は、圧力センサ5に異常の傾向が発生しているかを検出する。センサ電圧と所定条件との対比手法及び異常傾向の検出手法については、後にフローチャートを用いて説明する処理手順において詳述する。
接触検出部83は、各圧力センサ5のセンサ電圧を検出し、検出したセンサ電圧が所定値を超えたか判断することで、ユーザ3が操作パネル4へ接触操作を行ったかを検出する。
画像生成部84は、ユーザ3が接触操作すべきコマンドボタンを生成し、表示ドライバ7へ送信する。コマンドボタンは、異常検出部82が検出した圧力センサ5の異常状態に応じて、その大きさ、色彩及び配置等が調整される。図5は、画像生成部84により生成されたコマンドボタンCBが、表示ドライバ7により表示された例を示す。画像生成部84は、タッチパネル装置1にナビゲーション用画面が表示される場合には、「目的地」や「広域」等のコマンドボタンCBを生成し、さらに操作パネル4の四隅に配置された圧力センサ5(5a,5b,5c,5d)の異常傾向の検出を行わせる「検査」コマンドボタンや、オーディオ装置へ挿入された音楽等のメディアを排出するイジェクトコマンドボタン等を生成する。
記憶部9は、不揮発性の記憶媒体であり、第1データテーブル91、第2データテーブル92、異常センサリスト93、プログラム94、及び地図情報等を記憶する。例えば記憶部9は、EEPROM(Electrical Erasable Programmable Read-Only memory)、フラッシュメモリ、磁気ディスクを備えたハードディスクドライブ等である。
第1データテーブル91は、図6に示すように、4つの圧力センサ5a,5b,5c,5dの各電圧値を正規化した値(圧力センサの電圧値の合計を1とした場合の割合)と操作パネル4上の位置座標が対応付けられている。例えば、圧力センサ5a,5b,5c,5dの電圧値が全て5[v]を示す場合、各電圧値を正規化した値は、0.25:0.25:0.25:0.25となる。したがって、ユーザ3により接触操作された位置は、タッチパネル上の座標(x1,y1)で示される位置(この場合は、操作パネル4の中心位置)となる。
この第1データテーブル91は、4つの圧力センサ5のいずれも正常の場合に利用される。これに対して、第2データテーブル92は、4つの圧力センサ5のいずれか1つに異常が生じた場合に利用される。
第2データテーブル92は、4つの圧力センサ5のうちから選択される所定数(本実施の形態では3つ)の圧力センサ5の組合せ毎に複数(本実施の形態では4つ)用意される。選択される3つの圧力センサ5の組合せとは、異常が生じていない3つの圧力センサ5の組み合わせに相当する。そして、第2データテーブル92は、かかる組合せに含まれる3つの圧力センサ5のセンサ電圧と、ユーザ3の操作パネル4への接触位置とを対応付けた三次元テーブルである。
例えば、図7に示す第2データテーブル92は、圧力センサ5aに異常が生じた場合に利用されるものである。このため、図7に示す第2データテーブル92では、圧力センサ5a以外の3つの圧力センサ5b,5c,5dの各センサ電圧と、操作パネル4上の位置とが対応付けられている。図の例では、圧力センサ5bのセンサ電圧(正規化値)が0.25、圧力センサ5cのセンサ電圧(正規化値)が0.40、圧力センサ5dのセンサ電圧(正規化値)が0.35の場合に、操作パネル4上のユーザの操作位置が座標(x1,y2)の位置であることを示している。このような図7に示す第2データテーブル92は、4つの圧力センサ5のそれぞれが故障した場合を想定して、4つのものが用意される。
異常センサリスト93は、異常検出部82により異常が検出された圧力センサを記憶するリストである。
プログラム94は、制御部8により記憶部9から読み出され、制御部8がタッチパネル装置1を制御するために実行されるファームウェアである。
カードスロット10は、メモリカードの差込口であり、差し込まれたメモリカードに対してデータの読み取りや書き込みを行う。
メモリカード101は、フラッシュメモリ等を備える可搬性の記録媒体である。
<1−2.処理手順>
図8は、タッチパネル装置1において、操作パネル4への接触位置及び圧力を検出する処理手順を示すフローチャートである。かかる処理は、タッチパネル装置1の電源投入時又は起動時に開始し、所定周期で繰り返し実行される。
処理が開始されると、まず異常検出部82が、圧力センサ5に異常の傾向が発生したか否か判断する(ステップS111)。異常検出部82は、(1)ユーザ3による同一位置への接触操作頻度が高い場合、(2)センサ電圧に所定範囲を超える変動が発生している場合、(3)ユーザ3によりセンサの異常検査を行う旨のコマンドボタンが操作されたと判断した場合のいずれかに該当する際、圧力センサ5に異常の傾向が発生したと判断する。
なお、(1)ユーザ3による同一位置への接触操作頻度が高い場合とは、ユーザ3がコマンドボタンを接触操作しているにも係らず、コマンドが実行されないため、ユーザ3が操作パネル4の同一位置への接触操作を繰り返し行っている場合である。例えば、操作パネル4の同一位置に対し、5[sec]以内に3度の接触操作が繰り返し行われた場合である。また、(2)センサ電圧に所定範囲を超える変動が発生している場合とは、圧力センサの配線不良やセンサの経年劣化等が生じている場合である。例えば、正常状態で押圧力を受けない場合に、5[v]のセンサ電圧を出力する圧力センサに対し、センサ電圧が3[v]から7[v]の範囲外への変動が常時発生している場合である。また、(3)ユーザ3によりセンサの異常検査を行う旨のコマンドボタンが操作された場合とは、操作パネル4を操作するユーザ3自身が圧力センサ5の異常傾向を感知し、異常検査を行うコマンドボタンを操作した場合である。
異常検出部82が圧力センサ5に異常の傾向がないと判断した場合(ステップS111でNo)は、ステップS119に進む。ステップS119の処理内容は、後に説明する。
一方、異常検出部82が圧力センサ5に異常の傾向が発生したと判断した場合(ステップS111でYes)は、異常検出部82は圧力センサ5の異常検査を実行する(ステップS112)。
図9は、圧力センサ5の異常検査の処理手順を示すフローチャートであり、ステップS112の詳細を示す。圧力センサ5の異常検査が実行されると、図10に示すように、まず画像生成部84が、検査指標TM及び検査指標TMに接触操作すべき旨のダイアログボックスDLを生成し、表示ドライバ7により表示パネル6にポップアップ表示される(ステップS121)。検査指標TMは、表示パネル6の画面の予め定められた4つの位置に表示される。
ステップS121が実行されると、位置圧力検出部81が、ユーザ3により検査指標TMが押圧された際の各圧力センサ5のセンサ電圧を検出する(ステップS122)。また、異常検出部82が、位置圧力検出部81により検出されたセンサ電圧と、第1データテーブル91の位置座標(x,y)とを対比し、いずれの圧力センサ5に異常が生じているか否かを判断する。
検査指標TMのそれぞれの位置は予め定められているため、ユーザが検査指標TMに対して接触した場合かつ正常の場合における4つの圧力センサ5の正規化した電圧値(相対的な電圧値)は第1データテーブル91に基づいて既知である。したがって、他の圧力センサ5の電圧値に対して相対的に異常となる電圧値を出力する圧力センサ5がある場合は、当該圧力センサ5に異常が生じていることになる。このため、異常検出部82は、検査対象とする一の圧力センサ5の電圧値が、第1データテーブル91に基づき、他の圧力センサ5の電圧値から想定される値と異なる場合は、当該圧力センサ5に異常が生じていると判断する。このような判断を、4つの位置のそれぞれの検査指標TMに関して繰り返すことで、異常検出部82は、異常が生じている圧力センサ5を特定することができる。
異常検出部82が、いずれかの圧力センサ5が異常であると判断する場合(ステップS123でYes)は、かかる圧力センサ5を異常センサリスト93に登録する(ステップS124)。一方、異常検出部82が、いずれの圧力センサ5も異常でないと判断する場合(ステップS123でNo)は、ステップS124は実行せず、ステップS125に進む。
位置圧力検出部81は、全ての圧力センサ5(5a,5b,5c,5d)が検査されたか否か判断する(ステップS125)。かかる判断は、検査指標の表示された位置に順次接触圧力が発生したか否かにより判断すればよい。
位置圧力検出部81が、全ての圧力センサ5を検査したと判断した場合(ステップS125でNo)、ステップS121に戻り、検査指標TM及びダイアログボックスDLの表示を継続し、ユーザ3による接触操作の待機状態となる。一方、位置圧力検出部81が、全ての圧力センサ5(5a,5b,5c,5d)を検査したと判断した場合(ステップS125でYes)、処理は図8のステップに戻る。
図8において、ステップS112の圧力センサ5の異常検査が実行されると、制御部8は異常センサリスト93に登録されたセンサの数を計数する(ステップS113)。
制御部8が、異常センサリスト93に登録されたセンサ数が「0」と判断すると(ステップS113で「0」)、すなわち、いずれの圧力センサ5にも異常がないと判断するとステップS119に進む。ステップS119の処理は、後述する。
一方、制御部8が、異常センサリスト93に登録されたセンサ数が「1」と判断すると(ステップS113で「1」)、すなわち、3つの圧力センサ5に異常がないと判断すると、画像生成部84はコマンドボタンCBを拡大して生成し、表示ドライバ7に拡大したコマンドボタンCBを表示させる(ステップS114)。なお、4つの圧力センサ5に基づき、ユーザ3による接触位置及び圧力を検出した場合に比較して、3つ以下の圧力センサ5に基づいて接触位置及び圧力を検出すると、検出する接触位置及び圧力に誤差を生じ易い。操作パネル4における様々な位置から検出したセンサ電圧に基づく方が、より正確に接触位置及び圧力を検出できるからである。したがって、コマンドボタンCBを拡大して表示させることで、接触位置及び圧力の検出に誤差を生じた場合でも、コマンドボタンCBの範囲内、つまりコマンドボタンCBが接触操作されたと判断することができ、操作性を低下させることがない。コマンドボタンCBの拡大率は、圧力センサ5に異常がないとした場合における大きさの10[%]程度であればよい。従って、異常が発生したと判断された圧力センサ5が2つであれば、20[%]程度である。ただし、かかる拡大率は、圧力センサ5の感度や表示パネル6の面積等に基づき、誤差を解消できる程度に適切に設定されることが好ましい。なお、異常と判断されたセンサ数に応じ、コマンドボタンCBの大きさを変更してもよい。すなわち、異常と判断されたセンサ数が多い程、コマンドボタンCBを大きくしてもよい。この場合、接触位置及び圧力の検出誤差をより大きく許容することができ、コマンドボタンCBに対する接触操作の有無を判断することができる。
他方、制御部8が、異常センサリスト93に登録されたセンサ数が「2」と判断すると(ステップS113で「2」)、すなわち、2つの圧力センサ5に異常がないと判断すると、制御部8はどの位置の圧力センサ5に異常が発生したかリストに基づき判断する。異常がないと判断された圧力センサ5の位置に応じ、コマンドボタンCBの配列及び第2データテーブル92を変更することで、接触操作されたコマンドボタンCBの位置を検出するためである。
位置圧力検出部81は、異常がないと判断された圧力センサ5が2つである場合、かかる圧力センサ5を結ぶ線上にコマンドボタンCBを並列に表示する(ステップS115)。例えば図11に示すように、異常がないと判断された圧力センサ5が5cと5dであれば、画像生成部84は表示ドライバ7を制御し、圧力センサ5cと5dとを結ぶ線上にコマンドボタンCBを並列に表示する。これにより、異常がないと判断された圧力センサ5が2つであっても、2つの圧力センサ5を結ぶ線上にコマンドボタンCBを配列するので、かかる配列に応じた第2データテーブル92を参照することで、いずれのコマンドボタンCBを操作した場合であっても、位置圧力検出部81はユーザ3により接触操作された位置を検出することができる。
さらに、制御部8が、異常センサリスト93に登録されたセンサ数が「3」と判断すると(ステップS113で「3」)、すなわち、1つの圧力センサ5に異常がないと判断すると、画像生成部84はコマンドボタンCBを1つ生成し、表示ドライバ7に表示させる(ステップS116)。又は、画像生成部84は、図12に示すように、接触操作による入力可能なコマンドボタンCBを1つのみ表示し、他のコマンドボタンCBは色彩を変更して表示する。1つの圧力センサ5のみに異常がないと判断される場合、位置の検出は困難となるものの、ユーザ3による操作パネル4への接触操作の有無は検知可能だからである。したがってこの場合、単一のコマンドボタンCBを表示し、かかるボタンへの接触操作がなされたか否かを判断する。単一で表示されるコマンドボタンCBは、例えば音楽等メディアをオーディオ機器から排出させるイジェクトボタンである。音楽等メディアの取出しができない事態は、ユーザ3にとって著しい不都合だからである。また、単一で表示されるコマンドボタンCBは、例えば音量を増減させる音量ボタンである。大きな音量で音楽再生等を行っていた場合に、音量を低減できない事態は、ユーザ3にとって著しく不快だからである。どのようなボタンを表示させるかは、音楽等メディアの挿入状態や音量等を考慮し、圧力センサ5の異常を検知した際に決定してもよい。例えば、音量が所定量以上の場合には音量を低減させるボタンを表示し、音量が所定量未満の場合であって音楽等メディアが挿入されている場合にはイジェクトボタンを表示するようにしてもよい。
ステップS115又はステップS116が実行されると、画像生成部84はコマンドボタンCBを拡大して生成し、表示ドライバ7に拡大したコマンドボタンCBを表示させる(ステップS114)。ステップS115又はステップS116が実行された場合にステップS114を実行するのは、いずれかの圧力センサ5に異常が発生しているためであり、接触位置及び圧力の検出誤差の許容範囲を拡大することが好ましいからである。
コマンドボタンCBの拡大表示が行われると、画像生成部84が、圧力センサ5の異常内容を示すメッセージボックスを生成し、表示ドライバ7により表示パネル6にメッセージボックスがポップアップ表示される(ステップS117)。ユーザ3は、かかるメッセージボックスを参照することにより、圧力センサ5に異常が生じたことを知り得、タッチパネル装置1の修理等を行うことができる。
メッセージボックスが表示されると、異常センサ数が1の場合には、位置圧力検出部81は、接触位置を検出する際に参照するデータテーブルの切替えを行う(ステップS118)。第2データテーブル92は4つの圧力センサ5のうちから選択される3つの圧力センサ5の組合せごとに用意されるため、位置圧力検出部81は、異常センサリスト93を参照し、異常が検出されていない3つの圧力センサ5に対応する組合せの第2データテーブル92へ切替えを行う。なお、異常センサ数が2または3の場合は、このようなデータテーブルの切替を行う必要は無い。
位置圧力検出部81により第2データテーブル92への切替えが行われた場合、又はステップS111でNoと判断された場合、異常センサ数が0の場合は、接触位置及び圧力の検出が行われる(ステップS119)。異常センサ数が0の場合には、第1データテーブル91と各圧力センサ5のセンサ電圧とに基づき、接触位置の検出が行われる。
また、異常センサ数が1の場合には、位置圧力検出部81が、異常が検出されていない3つの圧力センサ5の組合せに応じた第2データテーブル92と、異常が検出されていない3つの圧力センサ5のセンサ電圧とに基づき、接触位置を検出する。異常センサ数が1の場合には、異常が検出されていない圧力センサ5が平面上に分散して存在するため、位置圧力検出部81により接触位置の検出が可能だからである。
また、異常センサ数が2の場合には、位置圧力検出部81が、異常が検出されていない2つの圧力センサ5のセンサ電圧に基づき、接触位置を検出する。位置圧力検出部81は、正常な2つの圧力センサ5のセンサ電圧の比に基づいて、これらの圧力センサ5を結ぶ線上の位置を接触位置として検出する。この場合は、正常な2つの圧力センサ5を結ぶ線上にコマンドボタンCBが配置されているため、このように線上の位置を接触位置として検出したとしても、ユーザが押圧したコマンドボタンCBを特定することができる。
また、異常センサ数が3の場合には、接触検出部83が、異常が検出されていない1つの圧力センサ5のセンサ電圧に基づき、操作パネル4に対するユーザ3の接触の有無を検出する。異常センサ数が3の場合には、単一のコマンドボタンCBのみが表示され、異常が検出されていない圧力センサ5が1つのみ存在するため、位置の検出までは行わず接触の有無のみ検出する。したがって、単一のコマンドボタンCBが押圧されたか否かのみが検出されることになる。
ステップS119が実行されると、操作パネル4への接触位置及び圧力を検出する処理手順は終了する。
以上のように、本実施の形態は、タッチパネル装置1の操作面となる操作パネル4への押圧力を検出する複数の圧力センサ5のうち、異常が検出されていない圧力センサ5の検出結果に基づきユーザ3の接触位置を検出するため、いずれかの圧力センサ5が異常となっても接触位置を検出することができる。
<2.第2の実施の形態>
上記第1の実施の形態では、異常の検出されていない圧力センサ5の検出結果に基づき、ユーザ3の接触位置及び圧力を検出した。
圧力センサ5を利用したタッチパネル装置1は、ユーザ3による接触位置のみならず、押圧力の大きさも検出する。したがって、同一位置を接触操作された場合でも、押圧力の大きさに応じて制御内容を変更し、操作性の向上を図っている。例えば、ユーザ3が音量ボタンを強く押すと音量変更速度を速くし、同様に弱く押すと遅くすることで、操作性を高めている。
しかし、タッチパネル装置1が設置された車両2に加速や減速が生じると、加速度により押圧力が加減され、押圧力を誤検出する恐れがあった。すなわち、操作パネル4を押圧する方向に加速度が生じた場合には押圧力が弱められ、反対方向に加速度が生じた場合には押圧力が強められる。この場合、押圧力の大きさに応じた制御内容を適切に実行できない恐れがあった。例えば、ユーザ3が音量ボタンを弱く押しているにも係わらず、音量変更速度が速くなれば、意図しない大音量が出力され、ユーザ3は著しい不快を感じることとなる。
そこで、本発明の第2の実施の形態は、複数の圧力センサ5を用いたタッチパネル装置1に加速度が発生した場合であっても、ユーザ3による接触位置及び圧力を適切に検出する技術を提供することを目的とする。すなわち、本実施の形態は、タッチパネル装置1に加速度が発生した場合には、検出した押圧力を発生した加速度に応じて補正処理することで、加速度が発生しない場合における押圧力の検出を適切に行うことができる。
<2−1.構成>
第2の実施の形態のタッチパネル装置1は第1の実施の形態と同様の構成を含むため、以下、第1の実施の形態との相違点を中心に説明する。
図13は、第2の実施の形態に係るタッチパネル装置1の構成を示すブロック図である。第1の実施の形態との相違点は、制御部8が補正処理部85、無効処理部87、及び無効禁止表示部86を備えたうえ加速度検出部11と接続され、記憶部9が加速度テーブル95を備えた点である。その他の構成は、第1の実施の形態と同様に構成され、また同様に機能する。また、第2の実施の形態の説明において参照される各図において、第1の実施の形態と同一の構成には、同一の符号を付す。
補正処理部85は、後述の加速度検出部11により検出された加速度の大きさに基づき、各圧力センサ5のセンサ電圧を補正する。補正処理部85が、センサ電圧を補正する際には、後述の加速度テーブル95を参照する。これにより、加速度の発生がないとした場合におけるセンサ電圧になるよう補正を行うので、加速度が発生しない場合における押圧力の検出を行うことができる。なお、補正処理部85は、各圧力センサ5のセンサ電圧を補正するのではなく、位置圧力検出部81の検出したユーザ3による操作パネル4への押圧力の値を補正してもよい。
無効処理部87は、タッチパネル装置1に加速度が生じた際にユーザ3によるコマンドボタンCBへの接触操作があった場合、かかる操作に対応する制御を無効化し、接触操作に対応したタッチパネル装置1の制御が実行されないよう処理を行う。
無効禁止表示部86は、タッチパネル装置1に加速度が生じた際に、ユーザ3がコマンドボタンCBへ接触操作を行わないよう案内するコメントボックスを表示パネル6へ表示させる。また、無効禁止表示部86は、タッチパネル装置1に加速度が生じた際に、ユーザ3がコマンドボタンCBへ接触操作を行っても、かかる操作が無効となる旨の案内となるコメントボックスを表示パネル6へ表示させる。
加速度検出部11は、車両2に設置され、車両2に加わる加速度を検出する半導体センサである。加速度検出部11は、互いに直交する3軸又は2軸に基づき車両2に発生した加速度や減速度を検出し、検出した加速度データを制御部8へ送信する。制御部8は、送信された加速度データに基づき、車両2に設置されたタッチパネル装置1に生じる加速度を検出することができる。本実施の形態においては、加速度検出部11は、操作パネル4が押圧される方向及びその反対方向に加わる加速度データを制御部8へ送信する。なお、加速度検出部11は、タッチパネル装置1の内部に設置されてもよい。その場合、加速度検出部11は、タッチパネル装置1に直接加わる加速度を検出することができる。
加速度テーブル95は、車両2に発生した加速度の大きさと、補正される各圧力センサ5のセンサ電圧値との対応関係を示し、記憶部9に記憶されるデータテーブルである。図14に加速度テーブル95の例を示す。図14において、[G]の単位で示される値は加速度の大きさであり+0.5から−0.5まで0.1毎に入力される。プラスで表記される加速度はユーザ3が操作パネル4を押圧する方向へ加わる加速度を示し、マイナスで表記される加速度はユーザ3が操作パネル4を押圧する方向と反対方向へ加わる加速度を示す。したがって、プラスの加速度はユーザ3の操作パネル4への押圧力を弱め、マイナスの加速度はユーザ3の操作パネル4への押圧力を強める。各加速度の値より下位の行に示される値は、各圧力センサ5のセンサ電圧に加算される補正電圧値である。各加速度値と補正電圧値とにより、補正されるセンサ電圧の値が決定される。例えば、ユーザ3が操作パネル4を押圧する方向へ+0.4[G]が検出された場合には、各圧力センサ5のセンサ電圧に0.2[v]が加算される。加速度テーブル95は、加速度検出部11により加速度の発生が検出されると、補正処理部85により参照され、検出された加速度の大きさに対応する補正電圧値に基づき、各圧力センサ5のセンサ電圧が補正される。なお、加速度テーブル95は、車両2に発生した加速度の大きさに基づき、加速度の発生がないとした場合における押圧力に補正するデータテーブルとしてもよい。
<2−2.処理手順>
図15は、第2の実施の形態に係るタッチパネル装置1における、操作パネル4への接触位置及び圧力を検出する処理手順を示すフローチャートである。かかる処理は、タッチパネル装置1の電源投入時又は起動時に開始し、所定周期で繰り返し実行される。
処理が開始されると、まず位置圧力検出部81が、ユーザ3により操作パネル4が押圧された際のセンサ電圧を検出する(ステップS211)。次に、加速度検出部11による加速度データの送信に基づき、制御部8が加速度の発生の有無を判断する(ステップS212)。この際、制御部8は、発生した加速度の絶対値が所定の値を超えたか否かにより、加速度の発生の有無を判断する。制御部8が加速度の絶対値を判断の対象とするのは、加速度はユーザ3が操作パネル4へ接触操作する方向及びその反対方向へ発生するからである。所定の値とは、例えば、2[G]である。すなわち、制御部8は、発生した加速度が+2[G]より大きい、又は−2[G]より小さいか否か判断する。
制御部8が加速度の発生が無いと判断すると(ステップS212でNo)、処理はステップS215に進む。ステップS215の処理内容は後述する。一方、制御部8は、加速度が発生したと判断すると(ステップS212でYes)、発生した加速度が既知の加速度であるか、すなわち加速度テーブル95に予め入力された加速度であるか否か判断する(ステップS213)。
制御部8が、発生した加速度が既知の加速度であると判断すると(ステップS213でYes)、補正処理部85は、加速度テーブル95を参照し、加速度検出部11により検出された加速度の大きさに対応する補正電圧値に基づき、各圧力センサ5のセンサ電圧を補正する(ステップS214)。
補正処理部85により各圧力センサ5のセンサ電圧が補正されると、位置圧力検出部81は、ユーザにより接触操作された操作パネル4の位置及び圧力を補正されたセンサ電圧に基づき検出する(ステップS215)。
一方、ステップS213において、検出された加速度が既知の加速度でないと判断された場合(ステップS213でNo)、制御部8は、加速度対策の処理を実行する(ステップS216)。検出された加速度が既知の加速度でない場合には、センサ電圧を補正不能のため、別途対策が必要となるためである。
図16は、ステップS216における加速度対策の処理手順を示すフローチャートである。加速度対策の処理が実行されると、まず無効禁止表示部86が、表示ドライバ7を操作して表示パネル6に接触操作を禁止する旨のメッセージボックスを表示する(ステップS221)。発生した加速度が未知でありセンサ電圧の補正が不能であるため、かかるメッセージボックスを表示することにより、ユーザにコマンドボタンCBへの接触操作を回避させ、押圧力の誤検出を防止するためである。この際、無効禁止表示部86は、例えば図17に示すメッセージボックスMB1のように、加速度が発生している旨、及び接触操作を禁止又は回避するよう促す旨の案内となるメッセージを表示パネル6に表示させる。なお、メッセージボックスMB1は、地図等の他の表示に優先し、最前面に表示されることが好ましい。ユーザ3に確実にメッセージを伝達し、誤検出を防止するためである。
無効禁止表示部86が接触操作を禁止する表示を行うと、接触検出部83は、操作パネル4へユーザ3による接触操作があったか否か判断する(ステップS222)。接触操作を禁止する旨のメッセージボックスMB1を表示しても、ユーザ3がコマンドボタンCBを接触操作する場合も生じ得るからである。
接触検出部83が操作パネル4への接触操作がないと判断する場合(ステップS222でNo)、処理はステップS224へ進む。ステップS224の処理内容は後述する。
接触検出部83が操作パネル4への接触操作があると判断する場合(ステップS222でYes)、無効処理部87は、かかる接触操作に対応する制御を無効化する処理を行う(ステップS223)。この際、無効処理部87は、接触操作により発生したセンサ電圧を0[v]に補正する処理、位置圧力検出部81による位置及び圧力の検出値が無いものに補正する処理、又は制御部8による接触操作に該当するコマンドの実行を禁止する処理を行うことで接触操作に対応する制御を無効化する。要するに無効化処理は、接触操作に該当するコマンドが実行されない処理であればよい。無効処理部87により接触操作を無効とする処理を行うことで、ユーザ3による操作パネル4への押圧力に車両2の加速度が加わることによる、押圧力の誤検出に基づく、誤ったコマンドの実行を防止することができる。
無効処理部87により接触操作を無効とする処理が行われると、無効禁止表示部86が、表示ドライバ7を操作して表示パネル6に接触操作を無効とした旨のメッセージボックスを表示する(ステップS224)。かかるメッセージボックスの表示により、ユーザ3は、自らの操作が無効となった旨を認識し、タッチパネル装置1の故障と誤解せず、コマンドボタンCBへの接触操作を再度試みることができる。この際、無効禁止表示部86は、例えば図17に示すメッセージボックスMB2のように、接触操作を無効にした旨のメッセージを表示パネル6に表示させる。なお、メッセージボックスMB2は、同MB1と同様に地図等の他の表示に優先し、最前面に表示されることが好ましい。ユーザ3に確実にメッセージを伝達し、円滑な操作性を保つためである。
無効禁止表示部86により接触操作を無効とした旨の表示が行われると、制御部8が、加速度検出部11からの加速度データに基づき、加速度の発生が継続しているか否か判断する(ステップS225)。制御部8が加速度の発生が継続していると判断する場合(ステップS225でYes)、ステップS221に戻り、無効禁止表示部86が接触操作を禁止する旨のメッセージボックスMB1を再度表示する。
一方、加速度の発生が継続していないと判断する場合(ステップS225でNo)、加速度対策の処理は終了し、処理は図15に戻る。
図15において、ステップS215の接触位置及び圧力の検出、又はステップS216の加速度対策の処理が実行されると、操作パネル4への接触位置及び圧力を検出する処理は終了する。
以上の通り、圧力センサ5を用いたタッチパネル装置1において、加速度が検出されると、操作パネル4への押圧力に対応する処理を実行しないため、加速度の発生による誤った処理の実行を防止できる。
また、加速度が検出されると、タッチパネル装置1へ入力操作を行わないよう表示するので、ユーザ3は加速度の発生による誤った処理の実行を未然に回避できる。
<2−3.付記>
上述した第2の実施の形態に関しては、以下に記載する発明が含まれている。
(付記1)タッチパネル装置であって、互いに異なる位置に配置され、操作面への圧力を検出する複数の圧力センサと、前記複数の圧力センサの検出結果に基づき、前記操作面におけるユーザの押圧力を検出する位置検出手段と、前記押圧力に対応する処理を実行する実行手段と、前記タッチパネル装置へ加わる加速度を検出する加速度検出手段と、を備え、前記実行手段は、前記加速度が所定の条件を満足する場合、前記実行手段を無効化することを特徴とするタッチパネル装置。
(付記2)付記1に記載のタッチパネル装置において、前記加速度が検出されると、前記タッチパネル装置へ入力操作を行わないよう案内を表示する表示手段をさらに備えることを特徴とするタッチパネル装置。
<3.第3の実施の形態>
上記第1の実施の形態では、表示パネル6にコマンドボタンCBを表示し、ユーザ3は操作パネル4を接触操作して、コマンドボタンCBに対応する制御を実行させていた。
かかる構成は、ユーザ3が操作パネル4のどの位置にコマンドボタンCBが表示されるか目視する必要があり、素早い接触操作の妨げであった。すなわち、操作パネル4の表面は平面であるため、キーボードやゲームコントローラのボタン操作のように、指感覚でコマンドボタンCBを操作できなかった。これにより、ユーザは素早い入力操作を要求されるアプリケーション、例えばゲームを操作パネル4を用いて楽しむことが困難であった。
そこで、本発明の第3の実施の形態は、操作パネル4に取付けられた立体的なボタンであるアタッチメントにより、コマンドボタンCBを接触操作する技術を提供することを目的とする。アタッチメントにより、コマンドボタンの位置を逐一視認せずとも、指が立体的ボタンへ接触する感覚でコマンドボタン位置を判別できるため、瞬時のボタン操作を可能にした。第3の実施の形態は、素早いコマンド入力が要求されるアプリケーション、特にゲームの操作に好適である。
図18は、第3の実施の形態に係る操作パネル4の表面にアタッチメントATが取付けられるタッチパネル装置1の概要である。ユーザ3は、自らの指3aでアタッチメントATの立体的なボタンを操作できるため、コマンドボタンCBの位置を視認せずとも指3aの感覚でコマンドボタンCBを操作でき、例えばゲーム画面から視線を移動することなく素早いコマンド入力が可能となる。
<3−1.構成>
第3の実施の形態のタッチパネル装置1は、第1の実施の形態と同様の構成を含むため、以下、第1の実施の形態との相違点を中心に説明する。また、第3の実施の形態の説明において参照される各図において、第1の実施の形態と同一の構成には、同一の符号を付す。
図19は、操作パネル4に取付けられ、コマンドボタンCBを接触操作する立体的ボタンであるアタッチメントATの斜視図である。アタッチメントATの寸法は、高さ(Z軸方向)が20[mm]程度、幅(X軸又はY軸方向)が40[mm]程度である。但し、寸法は、アタッチメントATを操作する指3aの可動範囲や操作容易性、操作パネル4の大きさに応じて決定されればよい。
図20は、アタッチメントATの側面図である。アタッチメントATは、取付け部ATa、押圧脚部ATb、ボタン部ATcを含んで構成される。
取付け部ATaは、アタッチメントATを操作パネル4の表面に取り付ける部材であり、プラスチックやゴム等の弾性を有する部材である。操作パネル4の表面と接触する面は吸盤で構成される。
押圧脚部ATbは、アタッチメントATが操作されることにより、操作パネル4と接触し、コマンドボタンCBを接触操作する棒状部材である。アタッチメントATが操作されない場合は、押圧脚部ATbは、操作パネル4と接触しないよう構成される。
ボタン部ATcは、ユーザ3の指3aにより、直接接触されて操作される部材である。ボタン部ATcは、高さ(Z軸方向)が10[mm]程度であるが、操作する指3aの感覚でボタン形状を認識できる高さであればよい。ボタン部ATcの形状は、十字形状のほか、点形状や上下方向(Y軸方向)又は左右方向(X軸方向)のみの形状で構成されてもよく、押圧脚部ATbの位置に応じて構成されればよい。
図21は、第3の実施の形態に係るタッチパネル装置1の構成を示すブロック図である。第1の実施の形態との相違点は、制御部8が操作指示部88a及びテーブル更新部88bを有するキャリブレーション部88を備え、記憶部9が変換テーブル96を備えた点である。その他の構成は、第1の実施の形態と同様に構成され、また同様に機能する。
キャリブレーション部88は、操作指示部88a及びテーブル更新部88bを備え、アタッチメントATがタッチパネル装置1に取り付けられた位置が本来取り付けられるべき位置と誤差が生じた場合に、かかる誤差を解消するキャリブレーション処理を実行する。これにより、アタッチメントATが取り付けられた位置に誤差が生じても、接触操作を適正に行うことができる。
操作指示部88aは、キャリブレーション部88によりキャリブレーション処理が実行された際、ユーザ3へアタッチメントATを操作するよう指示を行う。
テーブル更新部88bは、後述の変換テーブル96に入力されている座標について、アタッチメントATの取り付け位置の誤差が解消されるよう更新する。テーブル更新部88bにより変換テーブル96が更新されることにより、アタッチメントATにより接触操作された位置座標と、かかる接触操作に該当するコマンドとが対応し、アタッチメントATによる適正なコマンド入力が可能となる。
変換テーブル96は、アタッチメントATによる接触操作された操作パネル4の位置座標と、かかる座標に対応する制御処理の内容(コマンド)とを対応付けたデータからなるテーブルであり、アタッチメントATの取付け位置毎に複数用意される。
図22は、変換テーブル96の例を示す。図22左欄は、アタッチメントATにより接触操作される位置座標を示し、かかる座標で形成される四角形内のいずれかの位置が接触操作された場合に、図22右欄に示すコマンドが実行される。例えば、座標(x1,y1)と(x2,y2)とを対角とする四角形内が接触操作された場合、制御部8は「↑」コマンドが操作されたと認識する。なお、変換テーブル96に入力される位置座標で示される領域は、四角形のみならず円形でもよいし、他の形状でもよい。円形とする場合、変換テーブル96には円形の中心の位置座標及び半径を入力すればよい。
<3−2.処理手順>
図23は、第3の実施の形態に係るタッチパネル装置1の処理手順を示すフローチャートである。かかる処理は、タッチパネル装置1において所定のアプリケーションが実行された際に開始し、アプリケーションの実行中は所定周期で繰り返し実行される。
処理が開始されると、まず制御部8が、アタッチメントATを使用するか否か判断する(ステップS311)。制御部8によるアタッチメントAT使用の判断は、例えばユーザ3により、アタッチメントATを使用する旨のコマンドが入力されたか否かにより判断される。この場合、アプリケーション実行中に、アタッチメントATの使用に関するコマンドボタンCBを表示パネル6に表示させればよい。また、制御部8による判断は、実行されたアプリケーションの種類により判断されてもよい。アプリケーションの種類は、例えばゲームである。ゲームのアプリケーションを実行する場合には、アタッチメントATの使用により、特に操作性が向上するためである。
制御部8がアタッチメントATを使用しないと判断する場合には(ステップS311でNo)、処理はステップS315に進み、操作パネル4への押圧位置を検知し、対応するコマンドを実行する。ステップS315以降の処理は後述する。
一方、制御部8がアタッチメントATを使用すると判断する場合には(ステップS311でYes)、画像生成部84は、表示画面のレイアウトを変更する(ステップS312)。レイアウトの変更は、画像生成部84が、表示パネル6の全領域に渡りアプリケーションの実行画面を生成していた場合、かかる実行画面を3分の2程度に縮小して表示し、残りの領域をアタッチメント設置領域となるように表示画面を変更することである。
次に、画像生成部84は、表示パネル6に生成したアタッチメント設置領域に、アタッチメントATの取り付け位置を表示する(ステップS312)。かかる取り付け位置は、取付け部ATaの吸盤が取り付けられる位置である。なお、取り付け位置は、例えばアタッチメントATが十字形状ボタンである場合には、ユーザ3が操作パネル4と正対した場合におけるアタッチメント設置領域の左寄り、同様にアタッチメントATが単一ボタン形状である場合には、設置領域の右側寄りが好ましい。既に流通しているコントローラ形状と類似させることで、ユーザ3によるアタッチメントATの操作性が向上するためである。
画像生成部84が取り付け位置を表示すると、制御部8は、実行されたアプリケーションに基づき、適切な変換テーブル96を選択する(ステップS313)。
次に、キャリブレーション部88が、キャリブレーション処理を実行する(ステップS314)。図24は、ステップS314におけるキャリブレーション処理の詳細を示すフローチャートである。キャリブレーション処理が実行されると、まず操作指示部88aが、ユーザ3にアタッチメントATの所定のボタンを操作することで、所定のコマンドを入力するようメッセージボックスを表示パネル6へ表示する(ステップS321)。
次に、位置圧力検出部81が、ユーザ3によるアタッチメントATのボタン操作により、操作パネル4へ接触操作された位置を検出する(ステップS322)。
接触操作された位置が検出されると、テーブル更新部88bは、変換テーブル96の更新を行う(ステップS323)。すなわち、テーブル更新部88bは、ユーザ3により接触操作された位置座標が対応するコマンドの位置座標となるように、変換テーブル96の更新を行う。テーブル更新部88bは、変換テーブル96に入力されているコマンドの位置座標が四角形の領域を示す場合には、キャリブレーション処理により接触操作された位置座標が、かかる四角形の中心となるよう変更すればよい。
変換テーブル96の更新が行われると、操作指示部88aは、アタッチメントATの全てのボタンについてキャリブレーション処理が完了したか判断する(ステップS324)。アタッチメントATの全てのボタンについてキャリブレーション処理が完了していないと判断する場合には(ステップS324でNo)、操作指示部88aは、キャリブレーション処理が完了していないボタンについて操作するよう、メッセージボックスの表示を行い、ステップS321以降の処理が再度実行される。一方、アタッチメントATの全てのボタンについてキャリブレーション処理が完了したと判断する場合には(ステップS324でYes)、処理は図23に戻る。
図23において、ステップS314のキャリブレーション処理が実行された場合、及びステップS311で制御部8がアタッチメントATを使用しないと判断した場合は、位置圧力検出部81が、ユーザ3によるアタッチメントATのボタン操作により、操作パネル4へ接触操作された位置を検出する(ステップS315)。
位置圧力検出部81が操作位置を検出すると、制御部8は、変換テーブル96を参照し、位置圧力検出部81により検出された座標位置に対応するコマンドを実行する(ステップS316)。すなわち、検出された座標位置をコマンドの内容へ変換処理する。これにより、アタッチメントATの取り付け位置に誤差があった場合でも、制御部8は、誤差を解消するようキャリブレーション処理により変更された変換テーブル96を参照することにより、アタッチメントATの操作に応じた適切なコマンドを実行することができる。
次に、制御部8は、実行中のアプリケーションが終了したか否か判断する(ステップS317)。アプリケーションが終了していないと判断する場合(ステップS317でNo)、制御部8は、ステップS311に戻り、アタッチメントATが使用されるか再度判断する。既にアタッチメントATを使用している場合であっても、ユーザ3が他のアタッチメントATの使用を欲する場合があるからである。一方、アプリケーションが終了したと判断する場合(ステップS317でYes)、本処理は終了する。
以上の通り、操作パネル4に取付けられた立体的なボタンであるアタッチメントATによりコマンドボタンCBを接触操作するので、ユーザ3は、コマンドボタンCBの位置を逐一視認せずとも指が立体的ボタンへ接触する感覚によりボタン位置を判別できるため、瞬時のボタン操作が可能となる。
<4.変形例>
以上、本発明の実施の形態について説明したが、この発明は上記実施の形態に限定されず様々に変形可能である。以下、変形例について説明する。上記実施の形態及び以下で説明する形態は、適宜組合せ可能である。
上記実施の形態では、圧力センサ5は、タッチパネル装置1の四隅に配置されると説明したが、必ずしも隅に配置される必要はなく、タッチパネルに接する所定の位置でよい。但し、なるべく分散することが好ましい。なお、データテーブルは、圧力センサ5の配置された位置に応じ、適宜作成されればよい。
上記実施の形態では、タッチパネル装置1として、車両用ナビゲーション装置を例に説明したが、これに限定されるものでない。携帯型のタッチパネル装置でもよい。
第2の実施の形態では、補正処理部85は、接触位置及び圧力を補正するとしたが、圧力値を補正してもよい。また、センサ電圧を補正してもよい。
第3の実施の形態では、タッチパネル装置1は、複数の圧力センサ5を備える形態に基づき説明したが、必ずしも複数の圧力センサ5を備えたタッチパネル装置1である必要はない。電気的にタッチ操作を検出する導電性の透過膜を用いた抵抗膜方式や静電容量方式のタッチパネルでもよいし、音や光、画像認識を利用してタッチ操作を検出するタッチパネルでもよい。アタッチメントATの押圧脚部ATbが、操作パネル4に接触することで、タッチ操作を検出できればよい。
第3の実施の形態では、アタッチメントATは、4つの押圧脚部ATbを備える旨説明したが、押圧脚部ATbは1つや8つ、16等でもよく、4つに限られるものではない。1つの押圧脚部ATbで構成する場合には、取付け部ATaを円筒形状とし、取付け部ATaの中に押圧脚部ATbを設ければよい。
上記実施の形態では、プログラムに従ったCPUの演算処理によってソフトウェア的に各種の機能が実現されると説明したが、これら機能のうちの一部は電気的なハードウェア回路により実現されてもよい。また逆に、ハードウェア回路によって実現されるとした機能のうちの一部は、ソフトウェア的に実現されてもよい。