タッチパネル装置
【課題】比較的簡易に精度良くタッチ位置の座標を検出することができるタッチパネル装置を提供する。
【解決手段】タッチパネルTP2の端子X1,X2間に電源VDDを印加し、且つタッチパネルTP1の端子Y1,Y2を短絡した状態で、端子Y1の電圧Xp21を検出する。また、タッチパネルTP1の端子Y1,Y2間に電源VDDを印加し、且つタッチパネルTP2の端子X1,X2を短絡した状態で、端子X1の電圧Yp21を検出する。そして、1点タッチ時には(Xp21,Yp21)をタッチ位置のXY座標とし、2点タッチ時には(Xp21,Yp21)を2点の中心のXY座標とする。
【解決手段】タッチパネルTP2の端子X1,X2間に電源VDDを印加し、且つタッチパネルTP1の端子Y1,Y2を短絡した状態で、端子Y1の電圧Xp21を検出する。また、タッチパネルTP1の端子Y1,Y2間に電源VDDを印加し、且つタッチパネルTP2の端子X1,X2を短絡した状態で、端子X1の電圧Yp21を検出する。そして、1点タッチ時には(Xp21,Yp21)をタッチ位置のXY座標とし、2点タッチ時には(Xp21,Yp21)を2点の中心のXY座標とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、タッチパネル装置に関し、特にタッチパネル上をタッチされたときのタッチ入力の座標を検出可能な抵抗膜式のタッチパネル装置に関する。
【背景技術】
【0002】
従来のタッチパネル装置としては、例えば特許文献1に記載の技術がある。この技術は、タッチパネル上で2点がタッチされると、2層タッチパネルに設けた対向する端子間の抵抗値が低下する現象を利用して、2点タッチを判定するものである。
このようなタッチパネル装置では、タッチ位置の座標を以下の手順で検出するのが一般的である。
【0003】
X座標を求める際には、図19に示す回路構成でのパネルTP1の各端子の電圧YP,YN(電圧Xp1,Xp2)を測定する。すなわち、一方のパネルTP2の端子間に電源VDDの電圧を印加した状態で、他方のパネルTP1の各端子の電圧レベルをそれぞれ測定する。そして、1点タッチ時には電圧Xp1をタッチ位置のX座標とし、2点タッチ時には電圧Xp1と電圧Xp2との平均値を2点の中心のX座標とする。
【0004】
また、Y座標を求める際にも、同様に、一方のパネルTP1の端子間に電源VDDの電圧を印加した状態で、他方のパネルTP2の各端子の電圧レベルをそれぞれ電圧Yp1,Yp2として測定する。そして、1点タッチ時には電圧Yp1をタッチ位置のY座標とし、2点タッチ時には電圧Yp1と電圧Yp2との平均値を2点の中心のY座標とする。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平8−241161号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述したように、従来のタッチパネル装置にあっては、2点タッチ時における2点の中心座標を求めるために、各パネルの対向する2つの端子の電圧をそれぞれ測定する必要がある。つまり、X座標とY座標を算出するためには、それぞれ2回ずつ計4回の電圧測定が必要となる。
また、上記従来のタッチパネル装置にあっては、測定電圧Xp1,Xp2,Yp1,Yp2がタッチ位置の影響を受けるため、1点タッチ時に電圧Xp1,Yp1をXY座標として採用する方法では、高精度な座標検出を期待できない。
そこで、本発明は、比較的簡易に精度良くタッチ位置の座標を検出することができるタッチパネル装置を提供することを課題としている。
【課題を解決するための手段】
【0007】
上記課題を解決するために、請求項1に係るタッチパネル装置は、一対の電極端子が対向する端辺部にそれぞれ設けられた2枚の抵抗膜を、上下で前記電極端子が直交するように互いに接触可能に近接対向させて構成したタッチパネルを備えるタッチパネル装置であって、一方の抵抗膜の一対の電極端子間に電源電圧を印加し、且つ他方の抵抗膜の一対の電極端子間を短絡した状態で、前記他方の抵抗膜の一対の電極端子のうち何れか一方の電極端子の電圧を検出する第1の電圧検出手段と、前記第1の電圧検出手段で検出した電圧に基づいて、前記タッチパネル上のタッチ入力の座標を検出する座標検出手段と、を備えることを特徴としている。
【0008】
これにより、1点タッチ時には第1の電圧検出手段で検出した電圧をタッチ位置の座標とし、2点タッチ時には第1の電圧検出手段で検出した電圧を2点の中心座標とすることができる。したがって、1点タッチ時には、従来の端子間をショートしない方法と比較して、座標検出精度を向上させることができる。また、2点タッチ時には、1回の電圧測定で中心座標を検出することができるので、比較的簡易に座標検出を行うことができる。
【0009】
また、請求項2に係るタッチパネル装置は、請求項1に係る発明において、前記一方の抵抗膜の一対の電極端子間に抵抗を介して電源電圧を印加し、且つ前記他方の抵抗膜の一対の電極端子間を短絡した状態で、前記他方の抵抗膜の一対の電極端子のうち何れか一方の電極端子の電圧を検出する第2の電圧検出手段と、前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比に基づいて、前記タッチパネル上で2点がタッチされたか否かを判定する2点タッチ判定手段と、を備えることを特徴としている。
【0010】
ここでは、1点タッチ時と2点タッチ時とで、前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比が異なることを利用し、当該比が1点タッチ時の値と異なっている場合には、2点タッチであると判定する。このように、2点タッチのときは1点タッチのときと比較して各パネルの端子間抵抗値が小さくなることを利用するので、確実にタッチパネル上で2点がタッチされたか否かを判定することができる。
【0011】
さらに、請求項3に係るタッチパネル装置は、請求項2に係る発明において、前記2点タッチ判定手段で2点がタッチされたと判定したとき、前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比に基づいて、タッチされた2点間の距離を検出する2点間距離検出手段を備えることを特徴としている。
このように、2点間の距離に応じて前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比が変化することを利用して、2点間距離を検出するので、適正に2点間距離を検出することができる。また、座標検出や2点タッチ判定に用いる測定電圧を用いて2点間距離を検出するので、新たに2点間距離検出用の電圧測定を行う必要がない。したがって、その分電圧測定の回数を削減することができる。
【0012】
また、請求項4に係るタッチパネル装置は、請求項3に係る発明において、前記2点タッチ判定手段で2点がタッチされたと判定したとき、タッチ入力の押圧力を検出する押圧力検出手段をさらに備え、前記2点間距離検出手段は、前記タッチパネルが1点タッチされているときに前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比と、前記タッチパネルが2点タッチされているときに前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比との差分に基づいて、前記2点間の距離の基準値を算出する基準値算出手段と、前記押圧力検出手段で検出した押圧力が小さいほど、前記基準値算出手段で算出した前記2点間の距離の基準値を増加補正する補正手段と、を備えることを特徴としている。
【0013】
このように、タッチ入力の押圧力を考慮してタッチされた2点間の距離を検出するので、例えば、操作者が2点タッチした際に、2点間距離を一定としたままでタッチ開始時から徐々に押圧力を変化させるような操作を行った場合であっても、適正に一定の2点間距離を検出することができるなど、2点間距離を精度良く求めることができる。
【発明の効果】
【0014】
本発明によれば、1点タッチであるときにはそのタッチ位置の座標を精度良く検出することができると共に、2点タッチであるときには2点の中心座標を少ない電圧測定で検出することができる。
【図面の簡単な説明】
【0015】
【図1】本発明におけるタッチパネル装置の構成を示す回路図である。
【図2】制御部10で実行する初期化処理手順を示すフローチャートである。
【図3】R_XP測定時における回路図である。
【図4】R_YP測定時における回路図である。
【図5】制御部10で実行する初期化処理手順を示すフローチャートである。
【図6】Xp21測定時における回路図である。
【図7】Yp21測定時における回路図である。
【図8】RXp21測定時における回路図である。
【図9】RYp21測定時における回路図である。
【図10】制御部10で実行する2点タッチ処理手順を示すフローチャートである。
【図11】Yp1測定時における回路図である。
【図12】Z1,Z2測定時における回路図である。
【図13】Z1PP,Z2PP測定時における回路図である。
【図14】第2の実施形態における初期化処理手順を示すフローチャートである。
【図15】第2の実施形態における2点タッチ処理手順を示すフローチャートである。
【図16】2点タッチのジェスチャを示す図である。
【図17】ジェスチャ判断処理手順を示すフローチャートである。
【図18】回転判断処理手順を示すフローチャートである。
【図19】従来のX座標検出における電圧Xp1,Xp2測定時の回路図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施の形態を図面に基づいて説明する。
(第1の実施形態)
(構成)
図1は、本発明におけるタッチパネル装置の構成を示す回路図である。
タッチパネル装置は、装置全体を制御する制御部10と、必要な情報を表示するためのLCDモジュール11と、LCDモジュール11上に設置されるタッチパネルTPとを備える。
タッチパネルTPは、2枚のタッチパネルTP1,TP2から構成される。タッチパネルTP1は、タッチパネルTP2上に微小な隙間を設けて重ね合わせる。タッチパネルTP1は、Y方向に伸びた一対の電極からなる端子Y1,Y2間に延設された抵抗膜を有する。また、タッチパネルTP2は、Y方向に直交するX方向に伸びた一対の電極からなる端子X1,X2間に延設された抵抗膜を有する。
【0017】
タッチパネルTP1及びTP2は、それぞれの抵抗膜を張り合わせて構成されるアナログタッチパネルであり、人間の指やペン等でそのタッチ感応表面上のどこにタッチしても、そのタッチを検出できるようになっている。
また、このタッチパネル装置は、スイッチSW1〜SW8を備える。
スイッチSW1の一端は、所定の直流電圧を印加する電源VDDに接続され、その他端は、タッチパネルTP1の端子Y1に接続されている。スイッチSW2の一端は電源VDDに接続され、その他端は抵抗R1を介してタッチパネルTP1の端子Y1に接続されている。スイッチSW3の一端は接地接続され、その他端はタッチパネルTP1の端子Y2に接続されている。
【0018】
また、スイッチSW4の一端は電源VDDに接続され、その他端はタッチパネルTP2の端子X1に接続されている。スイッチSW5の一端は電源VDDに接続され、その他端は抵抗R2を介してタッチパネルTP2の端子X1に接続されている。スイッチSW6の一端は接地接続され、その他端はタッチパネルTP2の端子X2に接続されている。
さらに、スイッチSW7の一端はタッチパネルTP1の端子Y1に接続され、その他端はタッチパネルTP1の端子Y2に接続されている。また、スイッチSW8の一端はタッチパネルTP2の端子X1に接続され、その他端はタッチパネルTP2の端子X2に接続されている。
【0019】
これらスイッチSW1〜SW8は、制御部10によってそれぞれ開閉状態が制御されるようになっている。
制御部10は、スイッチSW1〜SW8を開閉制御し、所定の接続状態で各端子X1,X2,Y1,Y2に発生した電圧XP,XN,YP,YNを取得する。ここで、制御部10は、図示しないADコンバータを備え、測定電圧をデジタルデータに変換する。
そして、制御部10は、これらの取得した電圧値をもとに、タッチパネルTP上で2点がタッチされたか否かを判定すると共に、1点がタッチされた場合にはそのタッチ位置(X座標,Y座標)、2点がタッチされた場合には2点の中心座標(X座標,Y座標)、2点間の距離(X方向距離,Y方向距離)及び2点の方向を検出し、出力する。
図2は、制御部10で実行する初期化処理手順を示すフローチャートである。
【0020】
この初期化処理は、タッチパネルTPがタッチされていないときに実行する。
先ずステップS1で、図3に示す状態での端子X1の電圧XP(電圧R_XP)を取得する。すなわち、スイッチSW5及びSW6を閉状態とし、それ以外のスイッチを開状態に制御することで、端子X1に抵抗R2を介して電源VDDの電圧を与えると共に、端子X2を接地接続する。このように、抵抗R2を介して端子X1,X2間に電源VDDの電圧を印加する。そして、この状態で、端子X1の電圧レベルを測定する。
【0021】
このとき測定される電圧レベルは、端子X1,X2間の抵抗値と既知の抵抗値R2とで分圧した値となる。このようにして、端子X1,X2間の抵抗値に相当する電圧レベルを求めることができる。なお、図3は、2点タッチした際の端子X1,X2間の回路構成を示している。
次に、ステップS2では、図4に示す状態での端子Y1の電圧YP(電圧R_YP)を取得する。すなわち、スイッチSW2及びSW3を閉状態とし、それ以外のスイッチを開状態に制御することで、端子Y1に抵抗R1を介して電源VDDの電圧を与えると共に、端子Y2を接地接続する。このように、抵抗R1を介して端子Y1,Y2間に電源VDDの電圧を印加する。そして、この状態で、端子Y1の電圧レベルを測定する。
【0022】
このとき測定される電圧レベルは、端子Y1,Y2間の抵抗値と既知の抵抗値R1とで分圧した値となる。このようにして、端子Y1,Y2間の抵抗値に相当する電圧レベルを求めることができる。なお、図4は、2点タッチした際の端子Y1,Y2間の回路構成を示している。
次に、ステップS3では、前記ステップS1で取得した電圧R_XPを基準電圧R_XP0に設定すると共に、前記ステップS2で取得した電圧R_YPを基準電圧R_YP0に設定する。
そして、ステップS4では、前記ステップS3で設定した基準電圧R_XP0,R_YP0をメモリ(不図示)に記憶して、初期化処理を終了する。
【0023】
図5は、制御部10で実行する初期化処理手順を示すフローチャートである。
この初期化処理は、タッチパネルTPが1点タッチされている状態で実行する。
先ずステップS11で、図6に示す状態での端子Y1の電圧YP(電圧Xp21)を取得する。すなわち、スイッチSW4,SW6及びSW7を閉状態とし、それ以外のスイッチを開状態に制御することで、端子X1,X2間に電源VDDの電圧を印加すると共に、端子Y1,Y2を接続した短絡状態とする。そして、この状態での端子Y1の電圧レベルを測定する。なお、図6は、2点タッチした際の端子X1,X2間の回路構成を示している。
【0024】
次に、ステップS12で、図7に示す状態での端子X1の電圧XP(電圧Yp21)を取得する。すなわち、スイッチSW1,SW3及びSW8を閉状態とし、それ以外のスイッチを開状態に制御することで、端子Y1,Y2間に電源VDDの電圧を印加すると共に、端子X1,X2を接続した短絡状態とする。そして、この状態での端子X1の電圧レベルを測定する。なお、図7は、1点タッチした際の端子Y1,Y2間の回路構成を示している。
【0025】
ステップS13では、図8に示す状態での端子Y1の電圧YP(電圧RXp21)を取得する。すなわち、図6の状態に対し、スイッチSW4を開状態、スイッチSW5を閉状態として、抵抗R2を介して端子X1,X2間に電源VDDの電圧を印加すると共に、端子Y1,Y2を接続した短絡状態とする。そして、この状態での端子Y1の電圧レベルを測定する。なお、図8は、2点タッチした際の端子X1,X2間の回路構成を示している。
【0026】
次に、ステップS14で、図9に示す状態での端子X1の電圧XP(電圧RYp21)を取得する。すなわち、図7の状態に対し、スイッチSW1を開状態、スイッチSW2を閉状態として、抵抗R1を介して端子Y1,Y2間に電源VDDの電圧を印加すると共に、端子X1,X2を接続した短絡状態とする。そして、この状態での端子X1の電圧レベルを測定する。なお、図9は、1点タッチした際の端子Y1,Y2間の回路構成を示している。
【0027】
ステップS15では、前記ステップS11〜S14でそれぞれ取得した電圧Xp21,Yp21,RXp21,RYp21に基づいて、次式をもとにSRXYを算出する。
SRXY=4096・(RXp21+RYp21)/(Xp21+Yp21) ………(1)
なお、上記(1)式は、12bit(212=4096)の場合の算出式である。
そして、ステップS16では、前記ステップS15で算出した値SRXYをメモリ(不図示)に記憶して、初期化処理を終了する。
【0028】
図10は、制御部10で実行するタッチ処理手順を示すフローチャートである。
このタッチ処理は、通常操作時において、タッチパネルTPがタッチされているときに所定時間毎(2msec〜10msec毎)に実行する。先ずステップS21で、各種データを取得する。具体的には、電圧Xp21,Yp21,RXp21,RYp21を取得する。
【0029】
電圧Xp21は、図6に示す状態で測定した電圧YPであり、電圧Yp21は、図7に示す状態で測定した電圧XPである。また、電圧RXp21は、図8に示す状態で測定した電圧YPであり、電圧RYp21は、図9に示す状態で測定した電圧XPである。
次にステップS22に移行して、前記ステップS21で取得した各電圧と、メモリに記憶したSRXYとに基づいて、次式をもとにDXYを算出する。
【0030】
DXY=SRXY・(Xp21+Yp21)/4096−(RXp21+RYp21) ………(2)
【0031】
ステップS23では、前記ステップS22で算出したDXYが、予め設定した判定閾値Dual_DXYより大きいか否かを判定する。SRXYは、1点タッチ時には一定値となり、2点タッチ時には1点タッチ時より小さくなることから、上記DXYは、1点タッチ時に0、2点タッチ時に0より大きい値となる。そこで、判定閾値Dual_DXYは、0又は所定のマージンを設けた0より大きい値に設定する。
【0032】
そして、DXY≦Dual_DXYであるときには1点タッチであると判定し、ステップS24に移行して、前記ステップS21で取得した電圧Xp21,Yp21をタッチ位置のXY座標として出力してからタッチ処理を終了する。
一方、DXY>Dual_DXYであるときには2点タッチであると判定し、ステップS25に移行する。このステップS25では、電圧R_XP,R_YP,Yp1を取得する。
【0033】
電圧R_XPは、図3に示す状態で測定した電圧XPであり、電圧R_YPは、図4に示す状態で測定した電圧YPである。
また、電圧Yp1は、図11に示す状態で測定した電圧XPである。すなわち、図4の状態に対し、スイッチSW2を開状態、スイッチSW1を閉状態として、端子Y1,Y2間に電源VDDの電圧を印加した状態で、他方のパネルの端子X1の電圧レベルを測定する。
【0034】
次にステップS26に移行して、前記ステップS21で取得した電圧Yp21が前記ステップS25で取得した電圧Yp1より大きいか否かを判定する。そして、Yp21>Yp1であるときにはステップS27に移行し、Yp21≦Yp1であるときには後述するステップS29に移行する。
ステップS27では、2点の方向を示す情報dYを“+1”に設定し、ステップS28に移行する。
【0035】
ステップS28では電圧Z1,Z2を取得し、後述するステップS31に移行する。電圧Z1,Z2は、図12(a)に示す状態で測定した電圧XPと、図12(b)に示す状態で測定した電圧YNである。すなわち、スイッチSW1及びSW6を閉状態とし、それ以外のスイッチを開状態に制御することで、端子Y1に電源VDDの電圧を与えると共に、端子X2を接地接続する。そして、この状態で、端子X1及びY2の電圧レベルを測定する。ここで、図12は、点A及び点Bを2点タッチした際の各端子間の回路構成を示しており、タッチパネルTP1側のタッチ入力点をA1,B1、タッチパネルTP2側のタッチ入力点をA2,B2としている。
【0036】
また、ステップS29では、2点の方向を示す情報dYを“−1”に設定し、ステップS30に移行する。
ステップS30では電圧Z1PP,Z2PPを取得し、ステップS31に移行する。電圧Z1PP,Z2PPは、図13(a)に示す状態での電圧XNと、図13(b)に示す状態での電圧YNである。すなわち、端子Y1に直接電源VDDの電圧を与えると共に、端子X1を接地接続した状態で、端子X2及びY2の電圧レベルを測定する。そして、このようにして測定した電圧Z1PP,Z2PPを、電圧Z1,Z2として設定する。ここで、図13は、点A及び点Bを2点タッチした際の各端子間の回路構成を示しており、タッチパネルTP1側のタッチ入力点をA1,B1、タッチパネルTP2側のタッチ入力点をA2,B2としている。
【0037】
2点の座標を(xa,ya)、(xb,yb)(但し、xa<xb)としたとき、2点の中心座標と2点間距離の情報では、y座標値が入れ替わった(xa,yb)、(xb,ya)との区別ができない。図11の回路では、XPの電圧(電圧Yp1)はybの影響を受けやすいため、Yp21>Yp1のときはya>yb、Yp21<Yp1のときはya<ybであると判断する。
すなわち、xa<xb且つya>ybのときはdY=+1、xa<xb且つya<ybのときはdY=−1となる。
ステップS31では、押圧パラメータXZ21を算出する。この押圧パラメータXZ21は、タッチ入力点の押圧力と相関関係のあるパラメータであり、当該押圧力が大きいほど小さくなる値である。ここでは、次式をもとに押圧パラメータXZ21を算出する。
XZ21=Xp21/4096(Z2/Z1−1) ………(3)
【0038】
次に、ステップS32に移行して、前記ステップS31で算出した押圧パラメータXZ21が、予め設定した判定閾値D_XZ21より小さいか否かを判定する。そして、XZ21≧D_XZ21である場合には、タッチ入力点に一定圧力がかかっていないものと判断して、そのままタッチ処理を終了する。一方、XZ21<D_XZ21である場合には、タッチ入力点に一定圧力がかかっているものと判断してステップS33に移行する。
【0039】
ステップS33では、次式をもとにX方向の2点間距離XDualを算出する。
XDual=A・(R_XP0−R_XP−B)・(XZ21+C)+D ………(4)
ここで、A,B,C,Dはそれぞれ予め設定した定数である。
このように、基準電圧R_XP0と電圧R_XPとの差分に基づいて算出される2点間距離基準値A・(R_XP0−R_XP−B)を、押圧パラメータXZ21ともとに設定される補正係数(XZ21+C)で補正することで、X方向の2点間距離XDualを算出する。
【0040】
次に、ステップS34では、次式をもとにY方向の2点間距離YDualを算出する。
YDual=A・(R_YP0−R_YP−B)・(XZ21+C)+D ………(5)
このように、基準電圧R_YP0と電圧R_YPとの差分に基づいて算出される2点間距離基準値A・(R_YP0−R_YP−B)を、押圧パラメータXZ21ともとに設定される補正係数(XZ21+C)で補正することで、Y方向の2点間距離YDualを算出する。
【0041】
そして、ステップS35では、2点の中心座標(Xp21,Yp21)と、2点間距離XDual,YDualと、2点の方向を示す情報dYとを出力し、タッチ処理を終了する。
なお、上述した処理においては、各種データを取得する際に、平均化処理等を実施するようにしてもよい。平均化処理としては、例えば、6データを取得し、その6データのうち最大値及び最小値を削除した後、残りの4データの平均を取る処理を行う。これにより、測定データの信頼性を向上させることができる。
【0042】
また、図10において、ステップS21(特に図6及び図7)が第1の電圧検出手段に対応し、ステップS21(特に図8及び図9)が第2の電圧検出手段に対応している。さらに、ステップS24及びS35が座標検出手段に対応し、ステップS22及びS23が2点タッチ判定手段に対応し、ステップS33及びS34が2点間距離検出手段に対応している。また、ステップS26〜31が押圧力検出手段に対応している。
【0043】
(動作)
次に、本実施形態の動作について説明する。
今、操作者がタッチパネルTPをタッチしていない状態であるとすると、制御部10は、図2の初期化処理を実行開始し、図3に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧R_XPを測定する(ステップS1)。次に、図4に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧R_YPを測定する(ステップS2)。そして、測定した電圧を、それぞれ電圧R_XP0及び電圧R_YP0として設定し(ステップS3)、これらをメモリに格納する(ステップS4)。
【0044】
次に、タッチパネルTPを1点タッチしている状態で、制御部10は図5の初期化処理を実行する。このとき、先ず、図6に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧Xp21を測定する(ステップS11)。次に、図7に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧Yp21を測定する(ステップS12)。さらに、図8に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧RXp21を測定し(ステップS13)、図9に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧RYp21を測定する(ステップS14)。そして、前記(1)式をもとに1点タッチ時のSRXYを算出し(ステップS15)、これをメモリに格納する(ステップS16)。
【0045】
その後、操作者による通常のタッチ操作がなされると、制御部10は図10のタッチ処理を実行開始する。そして、タッチ位置の座標検出や2点タッチ判定に用いる各種データ(Xp21,Yp21,RXp21,RYp21)を取得する(ステップS21)。
このとき、操作者がタッチパネルTPの1点をタッチしているものとすると、前記(2)式をもとに算出するDXYが“0”となる。そのため、制御部10は1点タッチであると判断し、タッチ位置の座標Xp21,Yp21を出力して(ステップS24)タッチ処理を終了する。
【0046】
一方、操作者がタッチパネルTPの2点をタッチしている場合には、前記(2)式をもとに算出するDXYが“0”より大きい値となる。したがって、この場合にはDXY>Dual_DXY(ステップS23でYes)となるため、制御部10は2点タッチであると判断する。
このように、1点タッチのときはDXYが一定値となることを利用することで、2点タッチであるか否かを判定することができる。そして、2点タッチであると判定した場合には、2点の中心座標(Xp21,Yp21)、2点間の距離XDual,YDual及び2点の方向dYを出力する。
【0047】
ところで、一般に、タッチパネルTPを2点タッチしているときの2点の中心座標を検出するためには、一方のパネルの端子間に電源電圧を印加した状態で、他方のパネルの各端子の電圧レベルをそれぞれ測定する必要がある。
例えば、2点の中心のX座標を求める際には、図19の接続状態で電圧YP,YN(電圧Xp1,Xp2)を測定し、電圧Xp1と電圧Xp2との平均値を求める。すなわち、2点の中心のX座標を求めるためには、2回の電圧測定が必要となる。
【0048】
これに対して、本実施形態では、図6の接続状態で測定した電圧Xp21が、そのまま2点の中心のX座標となる。このように、1回の電圧測定で2点の中心のX座標を求めることができる。
また、タッチパネルTPを1点タッチしている場合、図19の接続状態で測定した電圧YP(電圧Xp1)をタッチ位置のX座標とするのが一般的である。
【0049】
これに対して、本実施形態では、図6に示すように、端子X1,X2間に電源電圧を印加し、且つ端子Y1,Y2をショートした状態で測定した端子Y1の電圧YP(電圧Xp21)をタッチ位置のX座標とする。したがって、上述した一般的な座標検出方法と比較して、タッチ位置の影響を受け難くすることができ、タッチ位置のX座標の検出精度を向上させることができる。なお、Y座標についても同様である。
【0050】
また、本実施形態では、押圧パラメータXZ21を用い、タッチ入力の押圧力に応じて2点間距離を補正する。このとき、押圧パラメータXZ21の算出に際し、2点の方向に応じて電圧Z1,Z2の測定方法を変更する。
2点の方向dY=+1のとき、すなわちxa<xb且つya>ybのときに図12の接続状態で測定した電圧XP,YNは、共に点Aよりも点B側の接触抵抗値の影響を受け易い。一方、2点の方向dY=−1のとき、すなわちxa<xb且つya<ybのときは、図12(a)の接続状態で測定した電圧XPは点B、図12(b)の接続状態で測定した電圧YNは点Aの接触抵抗値の影響を受け易い。このように、影響を受け易い点が異なると2点間距離の算出精度を向上させることができない。
【0051】
そこで、dY=−1のときは、図13の接続状態で測定した電圧XN,YNを電圧Z1,Z2として用いる。2点の方向dY=−1のとき、すなわちxa<xb且つya<ybのときに図13の接続状態で測定した電圧XN,YNは、共に点Aの接触抵抗値の影響を受け易い値である。
このように、2点の方向に応じて電圧Z1,Z2の測定方法を変更することで、2点タッチ時の各点の接触抵抗の影響を考慮した押圧パラメータを算出することができる。その結果、2点間距離の算出精度を向上させることができる。
【0052】
なお、ここでは、dY=+1のとき、図12の接続状態で測定した電圧XP,YN(電圧Z1,Z2)に基づいて押圧パラメータXZ21を算出する場合について説明したが、当該押圧パラメータXZ21と、図12の状態に対し、端子Y2に直接電源VDDの電圧を与えると共に端子X1を接地接続した状態で測定した電圧XN,YP(電圧Z1NP,Z2NP)に基づいて算出した押圧パラメータXZ21NPとの平均を、最終的な押圧パラメータXZ21としてもよい。
【0053】
また、同様に、dY=−1のときは、図13の接続状態で測定した電圧XN,YN(電圧Z1PP,Z2PP)に基づいて算出した押圧パラメータXZ21と、図13の状態に対し、端子Y2に直接電源VDDの電圧を与えると共に端子X2を接地接続した状態で測定した電圧XP,YP(電圧Z1NN,Z2NN)に基づいて算出した押圧パラメータXZ21NNとの平均を、最終的な押圧パラメータXZ21としてもよい。
このように、点Aの影響を受け易い押圧パラメータと点Bの影響を受け易い押圧パラメータの平均を取ることで、より2点間距離の算出精度を向上させることができる。
【0054】
(効果)
このように、上記実施形態では、一方のパネルの電極間に電源電圧を印加すると共に、他方のパネルの電極間を接続した状態(ショートさせた状態)で、当該接続点の電圧(Xp21,Yp21)を測定し、測定した電圧をタッチ位置の座標とする。そのため、電圧測定回数の削減と、座標検出精度の向上とを実現することができる。
さらに、一方のパネルの電極間に抵抗R1を介して電源電圧を印加すると共に、他方のパネルの電極間を接続した状態で電圧RXp21,RYp21を測定し、電圧Xp21,Yp21と電圧RXp21,RYp21との比に基づいて、2点タッチの判定を行う。このように、2点タッチ時には2点間の抵抗値がタッチパネルTP2側の抵抗が並列に見えることで減少することを利用し、上記比が1点タッチ時の値と異なっている場合には、2点タッチであると判定する。したがって、タッチパネル上の2点がタッチされているか否かを確実に判定することができる。
【0055】
また、タッチ入力点の押圧力を考慮して2点間距離を算出するので、例えば、操作者が2点間距離を一定として押圧力を変化させる操作を行った場合であっても、適正に一定の2点間距離を算出することができる。また、操作者が押圧力を変化させながら2点間距離を変化させる操作を行った場合に、2点間距離が一定であると誤判定してしまうのを防止することができる。このように、精度良く2点間距離を算出することができる。
【0056】
さらにまた、2点間距離を算出する際には、タッチパネルがタッチされていないときの端子間抵抗値と、タッチパネルがタッチされたときの端子間抵抗値との差分に基づいて2点間距離の基準値を算出し、この基準値を押圧力に応じて補正する。これにより、押圧力(接触抵抗値)の変化に伴う端子間抵抗値の変化分を補正することができるので、適正な2点間距離を算出することができる。
【0057】
さらに、電圧Z1,Z2を測定し、演算により押圧力と相関関係のある押圧パラメータを求めるので、タッチ入力点の押圧力を検出するためのセンサ等を別途設ける必要がなく、タッチパネル装置の小型化及びコストの削減を実現することができる。
また、2点の方向に応じて電圧Z1,Z2の測定方法を変更するので、2点タッチ時の各点の接触抵抗の影響を考慮した押圧パラメータを用いて2点間距離を算出することができる。そのため、2点間距離の算出精度を向上させることができる。
【0058】
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。
この第2の実施形態は、前述した第1の実施形態において、上記(4)及び(5)式に示すように、電圧R_XP0,R_YP0,R_XP,R_YPを用いて2点間距離を算出しているのに対し、電圧Xp21,Yp21,RXp21,RYp21を用いて2点間距離を算出するようにしたものである。
【0059】
(構成)
この第2の実施形態では、制御部10で図2に示す初期化処理は行わず、タッチパネルTPが1点タッチされている状態で、図5に示す初期化処理の代わりに図14に示す初期化処理を行う。
すなわち、図14に示す初期化処理では、図5におけるステップS16を、SRX0及びSRY0を算出するステップS41と、ステップS15で算出したSRXY、ステップS41で算出したSRX0及びSRY0をメモリに記憶するステップS42とに置換したことを除いては、図5と同様の処理を行う。したがって、図5と同様の処理を行うステップには図5と同一ステップ番号を付し、処理の異なる部分を中心に説明する。
【0060】
ステップS41では、前記ステップS11で取得した電圧Xp21と、前記ステップS13で取得した電圧RXp21とに基づいて、次式をもとにSRX0を算出する。
SRX0=4096・RXp21/Xp21 ………(6)
次に、前記ステップS12で取得した電圧Yp21と、前記ステップS14で取得した電圧RYp21とに基づいて、次式をもとにSRY0を算出する。
SRY0=4096・RYp21/Yp21 ………(7)
【0061】
また、制御部10では、タッチパネルTPがタッチされているときに図15に示すタッチ処理を実行する。
このタッチ処理では、図10におけるステップS25,S33及びS34を、それぞれステップS51〜S53に置換したしたことを除いては、図10と同様の処理を行う。したがって、図10と同様の処理を行うステップには図10と同一ステップ番号を付し、処理の異なる部分を中心に説明する。
ステップS51では、電圧Yp1のみを取得する。
また、ステップS52では、次式をもとにX方向の2点間距離XDualを算出する。
XDual=A・(SRX0−4096・RXp21/Xp21−B)・(XZ21+C)+D ………(8)
【0062】
このように、1点タッチ時の電圧Xp21と電圧RXp21との比であるSRX0と、2点タッチ時の電圧Xp21と電圧RXp21との比との差分に基づいて算出される2点間距離基準値A・(SRX0−4096・RXp21/Xp21−B)を、押圧パラメータXZ21ともとに設定される補正係数(XZ21+C)で補正することで、X方向の2点間距離XDualを算出する。
ステップS52では、次式をもとにY方向の2点間距離YDualを算出する。
YDual=A・(SRY0−4096・RYp21/Yp21−B)・(XZ21+C)+D ………(9)
【0063】
このように、1点タッチ時の電圧Yp21と電圧RYp21との比であるSRY0と、2点タッチ時の電圧Yp21と電圧RYp21との比との差分に基づいて算出される2点間距離基準値A・(SRY0−4096・RYp21/Yp21−B)を、押圧パラメータXZ21ともとに設定される補正係数(XZ21+C)で補正することで、Y方向の2点間距離YDualを算出する。
以上のように、2点間の距離に応じてRXp21/Xp21やRYp21/Yp21が変化することを利用して、2点間距離XDual及びYDualを算出する。
【0064】
(動作)
次に、本発明の第2の実施形態の動作について説明する。
今、操作者がタッチパネルTP上の2点をタッチしているものとする。このとき、2点間距離が比較的短いものとすると、2点タッチ時のRXp21/Xp21やRYp21/Yp21は、1点タッチ時のRXp21/Xp21(=SRX0)やRYp21/Yp21(=SRY0)に比較的近い値となる。
そのため、制御部10は、上記(8)及び(9)式をもとに、2点間距離XDual及びYDualを比較的小さい値に算出する(ステップS53,S54)。
【0065】
2点タッチ時のRXp21/Xp21やRYp21/Yp21は、2点間距離が長いほど、SRX0やSRY0と比較して小さい値となる。そのため、2点間距離が比較的長い場合には、制御部10は、上記(8)及び(9)式をもとに、2点間距離XDual及びYDualを比較的大きい値に算出する(ステップS53,S54)。
以上のように、2点間の距離に応じて電圧比RXp21/Xp21やRYp21/Yp21が変化することを利用するので、適正に2点間距離を算出することができる。
【0066】
(効果)
このように、上記第2の実施形態では、タッチ位置の座標検出や2点タッチの判定に用いる電圧Xp21,Yp21,RXp21,RYp21を用いて2点間距離を算出するので、2点間距離の算出のためだけに用いる電圧(R_XP,R_YP)を測定する必要がない。したがって、上述した第1の実施形態と比較して、電圧の測定回数を削減することができる。
【0067】
(応用例)
なお、上記各実施形態においては、2点間距離XDual,YDualを算出した後、これら2点間距離XDual,YDualを用いて、図16に示す2点タッチのジェスチャ(拡大、縮小、回転)を判定するようにしてもよい。この場合、上述した図10や図15のタッチ処理を実行した後、図17に示すジェスチャ判断処理を実行する。
先ずステップS61で、次式をもとに2点間距離の変化量DualMoveを算出する。
DualMove=XDual−XDual0+YDual−YDual0 ………(10)
ここで、XDual0,YDual0は前回のサンプリングで算出した2点間距離XDual,YDualである。
【0068】
次にステップS62では、X方向の2点間距離XDualが前回値XDual0より大きいか否かを判定し、XDual>XDual0である場合には、X方向の2点間距離が増加していると判断してステップS63に移行し、XDual≦XDual0である場合には後述するステップS66に移行する。
ステップS63では、Y方向の2点間距離YDualが前回値YDual0より大きいか否かを判定し、YDual>YDual0である場合には、Y方向の2点間距離が増加していると判断してステップS64に移行し、YDual≦YDual0である場合には後述するステップS70に移行する。
【0069】
ステップS64では、前記ステップS61で算出した2点間距離の変化量DualMoveが、予め設定した判定閾値n1より大きいか否かを判定する。そして、DualMove≦n1である場合には後述するステップS70に移行し、DualMove>n1である場合には、ステップS65に移行して2点タッチのジェスチャが拡大操作であると判断し、ジェスチャ判断処理を終了する。
ステップS66では、Y方向の2点間距離YDualが前回値YDual0より小さいか否かを判定し、YDual<YDual0である場合には、Y方向の2点間距離が減少していると判断してステップS67に移行し、YDual≧YDual0である場合には後述するステップS70に移行する。
【0070】
ステップS67では、前記ステップS61で算出した2点間距離の変化量DualMoveの符号を反転し、ステップS68に移行する。そして、ステップS68では、前記ステップS67で設定した2点間距離の変化量DualMoveが、予め設定した判定閾値n2より大きいか否かを判定する。DualMove≦n2である場合には後述するステップS70に移行し、DualMove>n2である場合には、ステップS69に移行して2点タッチのジェスチャが縮小操作であると判断し、ジェスチャ判断処理を終了する。
【0071】
また、ステップS70では、2点タッチのジェスチャが回転操作であると判断し、図18に示す回転判断処理を実行してからジェスチャ判断処理を終了する。
図18に示すように、回転判断処理では、先ずステップS71でX方向変化量dXp=Xp−Xp0を算出する。ここで、Xp0は、前回のサンプリングで算出したX座標Xpである。
次にステップS72では、Y方向変化量dYp=Yp−Yp0を算出する。ここで、Yp0は、前回のサンプリングで算出したY座標Ypである。
【0072】
次にステップS73では、前記ステップS71で算出したX方向変化量dXpが予め設定した回転判断閾値D_Rot(>0)より大きいか否かを判定する。そして、dXp>D_Rotである場合にはステップS74に移行して、2点タッチのジェスチャが右回転操作であると判断し、回転判断処理を終了する。一方、dXp≦D_Rotである場合にはステップS75に移行し、前記ステップS72で算出したY方向変化量dYpが回転判断閾値D_Rotより大きいか否かを判定する。そして、dYp>D_Rotである場合には前記ステップS74に移行し、dYp≦D_Rotである場合にはステップS76に移行する。
【0073】
ステップS76では、前記ステップS71で算出したX方向変化量dXpが回転判断閾値−D_Rotより小さいか否かを判定する。そして、dXp<−D_Rotである場合にはステップS77に移行して、2点タッチのジェスチャが左回転操作であると判断し、回転判断処理を終了する。一方、dXp≧−D_Rotである場合にはステップS78に移行し、前記ステップS72で算出したY方向変化量dYpが回転判断閾値−D_Rotより小さいか否かを判定する。そして、dYp<−D_Rotである場合には前記ステップS77に移行し、dYp≧−D_Rotである場合にはそのまま回転判断処理を終了する。
なお、ジェスチャ判断のみを行うタッチパネル装置とする場合には、2点間距離の算出に用いる定数を、A=1,D=0とすることもできる。これにより2点間距離の算出処理を簡潔にすることができる。
【符号の説明】
【0074】
10…制御部、11…LCDモジュール、TP1,TP2…タッチパネル、X1,X2…端子(X方向)、Y1,Y2…端子(Y方向)、SW1〜SW8…スイッチ
【技術分野】
【0001】
本発明は、タッチパネル装置に関し、特にタッチパネル上をタッチされたときのタッチ入力の座標を検出可能な抵抗膜式のタッチパネル装置に関する。
【背景技術】
【0002】
従来のタッチパネル装置としては、例えば特許文献1に記載の技術がある。この技術は、タッチパネル上で2点がタッチされると、2層タッチパネルに設けた対向する端子間の抵抗値が低下する現象を利用して、2点タッチを判定するものである。
このようなタッチパネル装置では、タッチ位置の座標を以下の手順で検出するのが一般的である。
【0003】
X座標を求める際には、図19に示す回路構成でのパネルTP1の各端子の電圧YP,YN(電圧Xp1,Xp2)を測定する。すなわち、一方のパネルTP2の端子間に電源VDDの電圧を印加した状態で、他方のパネルTP1の各端子の電圧レベルをそれぞれ測定する。そして、1点タッチ時には電圧Xp1をタッチ位置のX座標とし、2点タッチ時には電圧Xp1と電圧Xp2との平均値を2点の中心のX座標とする。
【0004】
また、Y座標を求める際にも、同様に、一方のパネルTP1の端子間に電源VDDの電圧を印加した状態で、他方のパネルTP2の各端子の電圧レベルをそれぞれ電圧Yp1,Yp2として測定する。そして、1点タッチ時には電圧Yp1をタッチ位置のY座標とし、2点タッチ時には電圧Yp1と電圧Yp2との平均値を2点の中心のY座標とする。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平8−241161号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述したように、従来のタッチパネル装置にあっては、2点タッチ時における2点の中心座標を求めるために、各パネルの対向する2つの端子の電圧をそれぞれ測定する必要がある。つまり、X座標とY座標を算出するためには、それぞれ2回ずつ計4回の電圧測定が必要となる。
また、上記従来のタッチパネル装置にあっては、測定電圧Xp1,Xp2,Yp1,Yp2がタッチ位置の影響を受けるため、1点タッチ時に電圧Xp1,Yp1をXY座標として採用する方法では、高精度な座標検出を期待できない。
そこで、本発明は、比較的簡易に精度良くタッチ位置の座標を検出することができるタッチパネル装置を提供することを課題としている。
【課題を解決するための手段】
【0007】
上記課題を解決するために、請求項1に係るタッチパネル装置は、一対の電極端子が対向する端辺部にそれぞれ設けられた2枚の抵抗膜を、上下で前記電極端子が直交するように互いに接触可能に近接対向させて構成したタッチパネルを備えるタッチパネル装置であって、一方の抵抗膜の一対の電極端子間に電源電圧を印加し、且つ他方の抵抗膜の一対の電極端子間を短絡した状態で、前記他方の抵抗膜の一対の電極端子のうち何れか一方の電極端子の電圧を検出する第1の電圧検出手段と、前記第1の電圧検出手段で検出した電圧に基づいて、前記タッチパネル上のタッチ入力の座標を検出する座標検出手段と、を備えることを特徴としている。
【0008】
これにより、1点タッチ時には第1の電圧検出手段で検出した電圧をタッチ位置の座標とし、2点タッチ時には第1の電圧検出手段で検出した電圧を2点の中心座標とすることができる。したがって、1点タッチ時には、従来の端子間をショートしない方法と比較して、座標検出精度を向上させることができる。また、2点タッチ時には、1回の電圧測定で中心座標を検出することができるので、比較的簡易に座標検出を行うことができる。
【0009】
また、請求項2に係るタッチパネル装置は、請求項1に係る発明において、前記一方の抵抗膜の一対の電極端子間に抵抗を介して電源電圧を印加し、且つ前記他方の抵抗膜の一対の電極端子間を短絡した状態で、前記他方の抵抗膜の一対の電極端子のうち何れか一方の電極端子の電圧を検出する第2の電圧検出手段と、前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比に基づいて、前記タッチパネル上で2点がタッチされたか否かを判定する2点タッチ判定手段と、を備えることを特徴としている。
【0010】
ここでは、1点タッチ時と2点タッチ時とで、前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比が異なることを利用し、当該比が1点タッチ時の値と異なっている場合には、2点タッチであると判定する。このように、2点タッチのときは1点タッチのときと比較して各パネルの端子間抵抗値が小さくなることを利用するので、確実にタッチパネル上で2点がタッチされたか否かを判定することができる。
【0011】
さらに、請求項3に係るタッチパネル装置は、請求項2に係る発明において、前記2点タッチ判定手段で2点がタッチされたと判定したとき、前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比に基づいて、タッチされた2点間の距離を検出する2点間距離検出手段を備えることを特徴としている。
このように、2点間の距離に応じて前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比が変化することを利用して、2点間距離を検出するので、適正に2点間距離を検出することができる。また、座標検出や2点タッチ判定に用いる測定電圧を用いて2点間距離を検出するので、新たに2点間距離検出用の電圧測定を行う必要がない。したがって、その分電圧測定の回数を削減することができる。
【0012】
また、請求項4に係るタッチパネル装置は、請求項3に係る発明において、前記2点タッチ判定手段で2点がタッチされたと判定したとき、タッチ入力の押圧力を検出する押圧力検出手段をさらに備え、前記2点間距離検出手段は、前記タッチパネルが1点タッチされているときに前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比と、前記タッチパネルが2点タッチされているときに前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比との差分に基づいて、前記2点間の距離の基準値を算出する基準値算出手段と、前記押圧力検出手段で検出した押圧力が小さいほど、前記基準値算出手段で算出した前記2点間の距離の基準値を増加補正する補正手段と、を備えることを特徴としている。
【0013】
このように、タッチ入力の押圧力を考慮してタッチされた2点間の距離を検出するので、例えば、操作者が2点タッチした際に、2点間距離を一定としたままでタッチ開始時から徐々に押圧力を変化させるような操作を行った場合であっても、適正に一定の2点間距離を検出することができるなど、2点間距離を精度良く求めることができる。
【発明の効果】
【0014】
本発明によれば、1点タッチであるときにはそのタッチ位置の座標を精度良く検出することができると共に、2点タッチであるときには2点の中心座標を少ない電圧測定で検出することができる。
【図面の簡単な説明】
【0015】
【図1】本発明におけるタッチパネル装置の構成を示す回路図である。
【図2】制御部10で実行する初期化処理手順を示すフローチャートである。
【図3】R_XP測定時における回路図である。
【図4】R_YP測定時における回路図である。
【図5】制御部10で実行する初期化処理手順を示すフローチャートである。
【図6】Xp21測定時における回路図である。
【図7】Yp21測定時における回路図である。
【図8】RXp21測定時における回路図である。
【図9】RYp21測定時における回路図である。
【図10】制御部10で実行する2点タッチ処理手順を示すフローチャートである。
【図11】Yp1測定時における回路図である。
【図12】Z1,Z2測定時における回路図である。
【図13】Z1PP,Z2PP測定時における回路図である。
【図14】第2の実施形態における初期化処理手順を示すフローチャートである。
【図15】第2の実施形態における2点タッチ処理手順を示すフローチャートである。
【図16】2点タッチのジェスチャを示す図である。
【図17】ジェスチャ判断処理手順を示すフローチャートである。
【図18】回転判断処理手順を示すフローチャートである。
【図19】従来のX座標検出における電圧Xp1,Xp2測定時の回路図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施の形態を図面に基づいて説明する。
(第1の実施形態)
(構成)
図1は、本発明におけるタッチパネル装置の構成を示す回路図である。
タッチパネル装置は、装置全体を制御する制御部10と、必要な情報を表示するためのLCDモジュール11と、LCDモジュール11上に設置されるタッチパネルTPとを備える。
タッチパネルTPは、2枚のタッチパネルTP1,TP2から構成される。タッチパネルTP1は、タッチパネルTP2上に微小な隙間を設けて重ね合わせる。タッチパネルTP1は、Y方向に伸びた一対の電極からなる端子Y1,Y2間に延設された抵抗膜を有する。また、タッチパネルTP2は、Y方向に直交するX方向に伸びた一対の電極からなる端子X1,X2間に延設された抵抗膜を有する。
【0017】
タッチパネルTP1及びTP2は、それぞれの抵抗膜を張り合わせて構成されるアナログタッチパネルであり、人間の指やペン等でそのタッチ感応表面上のどこにタッチしても、そのタッチを検出できるようになっている。
また、このタッチパネル装置は、スイッチSW1〜SW8を備える。
スイッチSW1の一端は、所定の直流電圧を印加する電源VDDに接続され、その他端は、タッチパネルTP1の端子Y1に接続されている。スイッチSW2の一端は電源VDDに接続され、その他端は抵抗R1を介してタッチパネルTP1の端子Y1に接続されている。スイッチSW3の一端は接地接続され、その他端はタッチパネルTP1の端子Y2に接続されている。
【0018】
また、スイッチSW4の一端は電源VDDに接続され、その他端はタッチパネルTP2の端子X1に接続されている。スイッチSW5の一端は電源VDDに接続され、その他端は抵抗R2を介してタッチパネルTP2の端子X1に接続されている。スイッチSW6の一端は接地接続され、その他端はタッチパネルTP2の端子X2に接続されている。
さらに、スイッチSW7の一端はタッチパネルTP1の端子Y1に接続され、その他端はタッチパネルTP1の端子Y2に接続されている。また、スイッチSW8の一端はタッチパネルTP2の端子X1に接続され、その他端はタッチパネルTP2の端子X2に接続されている。
【0019】
これらスイッチSW1〜SW8は、制御部10によってそれぞれ開閉状態が制御されるようになっている。
制御部10は、スイッチSW1〜SW8を開閉制御し、所定の接続状態で各端子X1,X2,Y1,Y2に発生した電圧XP,XN,YP,YNを取得する。ここで、制御部10は、図示しないADコンバータを備え、測定電圧をデジタルデータに変換する。
そして、制御部10は、これらの取得した電圧値をもとに、タッチパネルTP上で2点がタッチされたか否かを判定すると共に、1点がタッチされた場合にはそのタッチ位置(X座標,Y座標)、2点がタッチされた場合には2点の中心座標(X座標,Y座標)、2点間の距離(X方向距離,Y方向距離)及び2点の方向を検出し、出力する。
図2は、制御部10で実行する初期化処理手順を示すフローチャートである。
【0020】
この初期化処理は、タッチパネルTPがタッチされていないときに実行する。
先ずステップS1で、図3に示す状態での端子X1の電圧XP(電圧R_XP)を取得する。すなわち、スイッチSW5及びSW6を閉状態とし、それ以外のスイッチを開状態に制御することで、端子X1に抵抗R2を介して電源VDDの電圧を与えると共に、端子X2を接地接続する。このように、抵抗R2を介して端子X1,X2間に電源VDDの電圧を印加する。そして、この状態で、端子X1の電圧レベルを測定する。
【0021】
このとき測定される電圧レベルは、端子X1,X2間の抵抗値と既知の抵抗値R2とで分圧した値となる。このようにして、端子X1,X2間の抵抗値に相当する電圧レベルを求めることができる。なお、図3は、2点タッチした際の端子X1,X2間の回路構成を示している。
次に、ステップS2では、図4に示す状態での端子Y1の電圧YP(電圧R_YP)を取得する。すなわち、スイッチSW2及びSW3を閉状態とし、それ以外のスイッチを開状態に制御することで、端子Y1に抵抗R1を介して電源VDDの電圧を与えると共に、端子Y2を接地接続する。このように、抵抗R1を介して端子Y1,Y2間に電源VDDの電圧を印加する。そして、この状態で、端子Y1の電圧レベルを測定する。
【0022】
このとき測定される電圧レベルは、端子Y1,Y2間の抵抗値と既知の抵抗値R1とで分圧した値となる。このようにして、端子Y1,Y2間の抵抗値に相当する電圧レベルを求めることができる。なお、図4は、2点タッチした際の端子Y1,Y2間の回路構成を示している。
次に、ステップS3では、前記ステップS1で取得した電圧R_XPを基準電圧R_XP0に設定すると共に、前記ステップS2で取得した電圧R_YPを基準電圧R_YP0に設定する。
そして、ステップS4では、前記ステップS3で設定した基準電圧R_XP0,R_YP0をメモリ(不図示)に記憶して、初期化処理を終了する。
【0023】
図5は、制御部10で実行する初期化処理手順を示すフローチャートである。
この初期化処理は、タッチパネルTPが1点タッチされている状態で実行する。
先ずステップS11で、図6に示す状態での端子Y1の電圧YP(電圧Xp21)を取得する。すなわち、スイッチSW4,SW6及びSW7を閉状態とし、それ以外のスイッチを開状態に制御することで、端子X1,X2間に電源VDDの電圧を印加すると共に、端子Y1,Y2を接続した短絡状態とする。そして、この状態での端子Y1の電圧レベルを測定する。なお、図6は、2点タッチした際の端子X1,X2間の回路構成を示している。
【0024】
次に、ステップS12で、図7に示す状態での端子X1の電圧XP(電圧Yp21)を取得する。すなわち、スイッチSW1,SW3及びSW8を閉状態とし、それ以外のスイッチを開状態に制御することで、端子Y1,Y2間に電源VDDの電圧を印加すると共に、端子X1,X2を接続した短絡状態とする。そして、この状態での端子X1の電圧レベルを測定する。なお、図7は、1点タッチした際の端子Y1,Y2間の回路構成を示している。
【0025】
ステップS13では、図8に示す状態での端子Y1の電圧YP(電圧RXp21)を取得する。すなわち、図6の状態に対し、スイッチSW4を開状態、スイッチSW5を閉状態として、抵抗R2を介して端子X1,X2間に電源VDDの電圧を印加すると共に、端子Y1,Y2を接続した短絡状態とする。そして、この状態での端子Y1の電圧レベルを測定する。なお、図8は、2点タッチした際の端子X1,X2間の回路構成を示している。
【0026】
次に、ステップS14で、図9に示す状態での端子X1の電圧XP(電圧RYp21)を取得する。すなわち、図7の状態に対し、スイッチSW1を開状態、スイッチSW2を閉状態として、抵抗R1を介して端子Y1,Y2間に電源VDDの電圧を印加すると共に、端子X1,X2を接続した短絡状態とする。そして、この状態での端子X1の電圧レベルを測定する。なお、図9は、1点タッチした際の端子Y1,Y2間の回路構成を示している。
【0027】
ステップS15では、前記ステップS11〜S14でそれぞれ取得した電圧Xp21,Yp21,RXp21,RYp21に基づいて、次式をもとにSRXYを算出する。
SRXY=4096・(RXp21+RYp21)/(Xp21+Yp21) ………(1)
なお、上記(1)式は、12bit(212=4096)の場合の算出式である。
そして、ステップS16では、前記ステップS15で算出した値SRXYをメモリ(不図示)に記憶して、初期化処理を終了する。
【0028】
図10は、制御部10で実行するタッチ処理手順を示すフローチャートである。
このタッチ処理は、通常操作時において、タッチパネルTPがタッチされているときに所定時間毎(2msec〜10msec毎)に実行する。先ずステップS21で、各種データを取得する。具体的には、電圧Xp21,Yp21,RXp21,RYp21を取得する。
【0029】
電圧Xp21は、図6に示す状態で測定した電圧YPであり、電圧Yp21は、図7に示す状態で測定した電圧XPである。また、電圧RXp21は、図8に示す状態で測定した電圧YPであり、電圧RYp21は、図9に示す状態で測定した電圧XPである。
次にステップS22に移行して、前記ステップS21で取得した各電圧と、メモリに記憶したSRXYとに基づいて、次式をもとにDXYを算出する。
【0030】
DXY=SRXY・(Xp21+Yp21)/4096−(RXp21+RYp21) ………(2)
【0031】
ステップS23では、前記ステップS22で算出したDXYが、予め設定した判定閾値Dual_DXYより大きいか否かを判定する。SRXYは、1点タッチ時には一定値となり、2点タッチ時には1点タッチ時より小さくなることから、上記DXYは、1点タッチ時に0、2点タッチ時に0より大きい値となる。そこで、判定閾値Dual_DXYは、0又は所定のマージンを設けた0より大きい値に設定する。
【0032】
そして、DXY≦Dual_DXYであるときには1点タッチであると判定し、ステップS24に移行して、前記ステップS21で取得した電圧Xp21,Yp21をタッチ位置のXY座標として出力してからタッチ処理を終了する。
一方、DXY>Dual_DXYであるときには2点タッチであると判定し、ステップS25に移行する。このステップS25では、電圧R_XP,R_YP,Yp1を取得する。
【0033】
電圧R_XPは、図3に示す状態で測定した電圧XPであり、電圧R_YPは、図4に示す状態で測定した電圧YPである。
また、電圧Yp1は、図11に示す状態で測定した電圧XPである。すなわち、図4の状態に対し、スイッチSW2を開状態、スイッチSW1を閉状態として、端子Y1,Y2間に電源VDDの電圧を印加した状態で、他方のパネルの端子X1の電圧レベルを測定する。
【0034】
次にステップS26に移行して、前記ステップS21で取得した電圧Yp21が前記ステップS25で取得した電圧Yp1より大きいか否かを判定する。そして、Yp21>Yp1であるときにはステップS27に移行し、Yp21≦Yp1であるときには後述するステップS29に移行する。
ステップS27では、2点の方向を示す情報dYを“+1”に設定し、ステップS28に移行する。
【0035】
ステップS28では電圧Z1,Z2を取得し、後述するステップS31に移行する。電圧Z1,Z2は、図12(a)に示す状態で測定した電圧XPと、図12(b)に示す状態で測定した電圧YNである。すなわち、スイッチSW1及びSW6を閉状態とし、それ以外のスイッチを開状態に制御することで、端子Y1に電源VDDの電圧を与えると共に、端子X2を接地接続する。そして、この状態で、端子X1及びY2の電圧レベルを測定する。ここで、図12は、点A及び点Bを2点タッチした際の各端子間の回路構成を示しており、タッチパネルTP1側のタッチ入力点をA1,B1、タッチパネルTP2側のタッチ入力点をA2,B2としている。
【0036】
また、ステップS29では、2点の方向を示す情報dYを“−1”に設定し、ステップS30に移行する。
ステップS30では電圧Z1PP,Z2PPを取得し、ステップS31に移行する。電圧Z1PP,Z2PPは、図13(a)に示す状態での電圧XNと、図13(b)に示す状態での電圧YNである。すなわち、端子Y1に直接電源VDDの電圧を与えると共に、端子X1を接地接続した状態で、端子X2及びY2の電圧レベルを測定する。そして、このようにして測定した電圧Z1PP,Z2PPを、電圧Z1,Z2として設定する。ここで、図13は、点A及び点Bを2点タッチした際の各端子間の回路構成を示しており、タッチパネルTP1側のタッチ入力点をA1,B1、タッチパネルTP2側のタッチ入力点をA2,B2としている。
【0037】
2点の座標を(xa,ya)、(xb,yb)(但し、xa<xb)としたとき、2点の中心座標と2点間距離の情報では、y座標値が入れ替わった(xa,yb)、(xb,ya)との区別ができない。図11の回路では、XPの電圧(電圧Yp1)はybの影響を受けやすいため、Yp21>Yp1のときはya>yb、Yp21<Yp1のときはya<ybであると判断する。
すなわち、xa<xb且つya>ybのときはdY=+1、xa<xb且つya<ybのときはdY=−1となる。
ステップS31では、押圧パラメータXZ21を算出する。この押圧パラメータXZ21は、タッチ入力点の押圧力と相関関係のあるパラメータであり、当該押圧力が大きいほど小さくなる値である。ここでは、次式をもとに押圧パラメータXZ21を算出する。
XZ21=Xp21/4096(Z2/Z1−1) ………(3)
【0038】
次に、ステップS32に移行して、前記ステップS31で算出した押圧パラメータXZ21が、予め設定した判定閾値D_XZ21より小さいか否かを判定する。そして、XZ21≧D_XZ21である場合には、タッチ入力点に一定圧力がかかっていないものと判断して、そのままタッチ処理を終了する。一方、XZ21<D_XZ21である場合には、タッチ入力点に一定圧力がかかっているものと判断してステップS33に移行する。
【0039】
ステップS33では、次式をもとにX方向の2点間距離XDualを算出する。
XDual=A・(R_XP0−R_XP−B)・(XZ21+C)+D ………(4)
ここで、A,B,C,Dはそれぞれ予め設定した定数である。
このように、基準電圧R_XP0と電圧R_XPとの差分に基づいて算出される2点間距離基準値A・(R_XP0−R_XP−B)を、押圧パラメータXZ21ともとに設定される補正係数(XZ21+C)で補正することで、X方向の2点間距離XDualを算出する。
【0040】
次に、ステップS34では、次式をもとにY方向の2点間距離YDualを算出する。
YDual=A・(R_YP0−R_YP−B)・(XZ21+C)+D ………(5)
このように、基準電圧R_YP0と電圧R_YPとの差分に基づいて算出される2点間距離基準値A・(R_YP0−R_YP−B)を、押圧パラメータXZ21ともとに設定される補正係数(XZ21+C)で補正することで、Y方向の2点間距離YDualを算出する。
【0041】
そして、ステップS35では、2点の中心座標(Xp21,Yp21)と、2点間距離XDual,YDualと、2点の方向を示す情報dYとを出力し、タッチ処理を終了する。
なお、上述した処理においては、各種データを取得する際に、平均化処理等を実施するようにしてもよい。平均化処理としては、例えば、6データを取得し、その6データのうち最大値及び最小値を削除した後、残りの4データの平均を取る処理を行う。これにより、測定データの信頼性を向上させることができる。
【0042】
また、図10において、ステップS21(特に図6及び図7)が第1の電圧検出手段に対応し、ステップS21(特に図8及び図9)が第2の電圧検出手段に対応している。さらに、ステップS24及びS35が座標検出手段に対応し、ステップS22及びS23が2点タッチ判定手段に対応し、ステップS33及びS34が2点間距離検出手段に対応している。また、ステップS26〜31が押圧力検出手段に対応している。
【0043】
(動作)
次に、本実施形態の動作について説明する。
今、操作者がタッチパネルTPをタッチしていない状態であるとすると、制御部10は、図2の初期化処理を実行開始し、図3に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧R_XPを測定する(ステップS1)。次に、図4に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧R_YPを測定する(ステップS2)。そして、測定した電圧を、それぞれ電圧R_XP0及び電圧R_YP0として設定し(ステップS3)、これらをメモリに格納する(ステップS4)。
【0044】
次に、タッチパネルTPを1点タッチしている状態で、制御部10は図5の初期化処理を実行する。このとき、先ず、図6に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧Xp21を測定する(ステップS11)。次に、図7に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧Yp21を測定する(ステップS12)。さらに、図8に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧RXp21を測定し(ステップS13)、図9に示す接続状態となるようにスイッチSW1〜SW8を制御して電圧RYp21を測定する(ステップS14)。そして、前記(1)式をもとに1点タッチ時のSRXYを算出し(ステップS15)、これをメモリに格納する(ステップS16)。
【0045】
その後、操作者による通常のタッチ操作がなされると、制御部10は図10のタッチ処理を実行開始する。そして、タッチ位置の座標検出や2点タッチ判定に用いる各種データ(Xp21,Yp21,RXp21,RYp21)を取得する(ステップS21)。
このとき、操作者がタッチパネルTPの1点をタッチしているものとすると、前記(2)式をもとに算出するDXYが“0”となる。そのため、制御部10は1点タッチであると判断し、タッチ位置の座標Xp21,Yp21を出力して(ステップS24)タッチ処理を終了する。
【0046】
一方、操作者がタッチパネルTPの2点をタッチしている場合には、前記(2)式をもとに算出するDXYが“0”より大きい値となる。したがって、この場合にはDXY>Dual_DXY(ステップS23でYes)となるため、制御部10は2点タッチであると判断する。
このように、1点タッチのときはDXYが一定値となることを利用することで、2点タッチであるか否かを判定することができる。そして、2点タッチであると判定した場合には、2点の中心座標(Xp21,Yp21)、2点間の距離XDual,YDual及び2点の方向dYを出力する。
【0047】
ところで、一般に、タッチパネルTPを2点タッチしているときの2点の中心座標を検出するためには、一方のパネルの端子間に電源電圧を印加した状態で、他方のパネルの各端子の電圧レベルをそれぞれ測定する必要がある。
例えば、2点の中心のX座標を求める際には、図19の接続状態で電圧YP,YN(電圧Xp1,Xp2)を測定し、電圧Xp1と電圧Xp2との平均値を求める。すなわち、2点の中心のX座標を求めるためには、2回の電圧測定が必要となる。
【0048】
これに対して、本実施形態では、図6の接続状態で測定した電圧Xp21が、そのまま2点の中心のX座標となる。このように、1回の電圧測定で2点の中心のX座標を求めることができる。
また、タッチパネルTPを1点タッチしている場合、図19の接続状態で測定した電圧YP(電圧Xp1)をタッチ位置のX座標とするのが一般的である。
【0049】
これに対して、本実施形態では、図6に示すように、端子X1,X2間に電源電圧を印加し、且つ端子Y1,Y2をショートした状態で測定した端子Y1の電圧YP(電圧Xp21)をタッチ位置のX座標とする。したがって、上述した一般的な座標検出方法と比較して、タッチ位置の影響を受け難くすることができ、タッチ位置のX座標の検出精度を向上させることができる。なお、Y座標についても同様である。
【0050】
また、本実施形態では、押圧パラメータXZ21を用い、タッチ入力の押圧力に応じて2点間距離を補正する。このとき、押圧パラメータXZ21の算出に際し、2点の方向に応じて電圧Z1,Z2の測定方法を変更する。
2点の方向dY=+1のとき、すなわちxa<xb且つya>ybのときに図12の接続状態で測定した電圧XP,YNは、共に点Aよりも点B側の接触抵抗値の影響を受け易い。一方、2点の方向dY=−1のとき、すなわちxa<xb且つya<ybのときは、図12(a)の接続状態で測定した電圧XPは点B、図12(b)の接続状態で測定した電圧YNは点Aの接触抵抗値の影響を受け易い。このように、影響を受け易い点が異なると2点間距離の算出精度を向上させることができない。
【0051】
そこで、dY=−1のときは、図13の接続状態で測定した電圧XN,YNを電圧Z1,Z2として用いる。2点の方向dY=−1のとき、すなわちxa<xb且つya<ybのときに図13の接続状態で測定した電圧XN,YNは、共に点Aの接触抵抗値の影響を受け易い値である。
このように、2点の方向に応じて電圧Z1,Z2の測定方法を変更することで、2点タッチ時の各点の接触抵抗の影響を考慮した押圧パラメータを算出することができる。その結果、2点間距離の算出精度を向上させることができる。
【0052】
なお、ここでは、dY=+1のとき、図12の接続状態で測定した電圧XP,YN(電圧Z1,Z2)に基づいて押圧パラメータXZ21を算出する場合について説明したが、当該押圧パラメータXZ21と、図12の状態に対し、端子Y2に直接電源VDDの電圧を与えると共に端子X1を接地接続した状態で測定した電圧XN,YP(電圧Z1NP,Z2NP)に基づいて算出した押圧パラメータXZ21NPとの平均を、最終的な押圧パラメータXZ21としてもよい。
【0053】
また、同様に、dY=−1のときは、図13の接続状態で測定した電圧XN,YN(電圧Z1PP,Z2PP)に基づいて算出した押圧パラメータXZ21と、図13の状態に対し、端子Y2に直接電源VDDの電圧を与えると共に端子X2を接地接続した状態で測定した電圧XP,YP(電圧Z1NN,Z2NN)に基づいて算出した押圧パラメータXZ21NNとの平均を、最終的な押圧パラメータXZ21としてもよい。
このように、点Aの影響を受け易い押圧パラメータと点Bの影響を受け易い押圧パラメータの平均を取ることで、より2点間距離の算出精度を向上させることができる。
【0054】
(効果)
このように、上記実施形態では、一方のパネルの電極間に電源電圧を印加すると共に、他方のパネルの電極間を接続した状態(ショートさせた状態)で、当該接続点の電圧(Xp21,Yp21)を測定し、測定した電圧をタッチ位置の座標とする。そのため、電圧測定回数の削減と、座標検出精度の向上とを実現することができる。
さらに、一方のパネルの電極間に抵抗R1を介して電源電圧を印加すると共に、他方のパネルの電極間を接続した状態で電圧RXp21,RYp21を測定し、電圧Xp21,Yp21と電圧RXp21,RYp21との比に基づいて、2点タッチの判定を行う。このように、2点タッチ時には2点間の抵抗値がタッチパネルTP2側の抵抗が並列に見えることで減少することを利用し、上記比が1点タッチ時の値と異なっている場合には、2点タッチであると判定する。したがって、タッチパネル上の2点がタッチされているか否かを確実に判定することができる。
【0055】
また、タッチ入力点の押圧力を考慮して2点間距離を算出するので、例えば、操作者が2点間距離を一定として押圧力を変化させる操作を行った場合であっても、適正に一定の2点間距離を算出することができる。また、操作者が押圧力を変化させながら2点間距離を変化させる操作を行った場合に、2点間距離が一定であると誤判定してしまうのを防止することができる。このように、精度良く2点間距離を算出することができる。
【0056】
さらにまた、2点間距離を算出する際には、タッチパネルがタッチされていないときの端子間抵抗値と、タッチパネルがタッチされたときの端子間抵抗値との差分に基づいて2点間距離の基準値を算出し、この基準値を押圧力に応じて補正する。これにより、押圧力(接触抵抗値)の変化に伴う端子間抵抗値の変化分を補正することができるので、適正な2点間距離を算出することができる。
【0057】
さらに、電圧Z1,Z2を測定し、演算により押圧力と相関関係のある押圧パラメータを求めるので、タッチ入力点の押圧力を検出するためのセンサ等を別途設ける必要がなく、タッチパネル装置の小型化及びコストの削減を実現することができる。
また、2点の方向に応じて電圧Z1,Z2の測定方法を変更するので、2点タッチ時の各点の接触抵抗の影響を考慮した押圧パラメータを用いて2点間距離を算出することができる。そのため、2点間距離の算出精度を向上させることができる。
【0058】
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。
この第2の実施形態は、前述した第1の実施形態において、上記(4)及び(5)式に示すように、電圧R_XP0,R_YP0,R_XP,R_YPを用いて2点間距離を算出しているのに対し、電圧Xp21,Yp21,RXp21,RYp21を用いて2点間距離を算出するようにしたものである。
【0059】
(構成)
この第2の実施形態では、制御部10で図2に示す初期化処理は行わず、タッチパネルTPが1点タッチされている状態で、図5に示す初期化処理の代わりに図14に示す初期化処理を行う。
すなわち、図14に示す初期化処理では、図5におけるステップS16を、SRX0及びSRY0を算出するステップS41と、ステップS15で算出したSRXY、ステップS41で算出したSRX0及びSRY0をメモリに記憶するステップS42とに置換したことを除いては、図5と同様の処理を行う。したがって、図5と同様の処理を行うステップには図5と同一ステップ番号を付し、処理の異なる部分を中心に説明する。
【0060】
ステップS41では、前記ステップS11で取得した電圧Xp21と、前記ステップS13で取得した電圧RXp21とに基づいて、次式をもとにSRX0を算出する。
SRX0=4096・RXp21/Xp21 ………(6)
次に、前記ステップS12で取得した電圧Yp21と、前記ステップS14で取得した電圧RYp21とに基づいて、次式をもとにSRY0を算出する。
SRY0=4096・RYp21/Yp21 ………(7)
【0061】
また、制御部10では、タッチパネルTPがタッチされているときに図15に示すタッチ処理を実行する。
このタッチ処理では、図10におけるステップS25,S33及びS34を、それぞれステップS51〜S53に置換したしたことを除いては、図10と同様の処理を行う。したがって、図10と同様の処理を行うステップには図10と同一ステップ番号を付し、処理の異なる部分を中心に説明する。
ステップS51では、電圧Yp1のみを取得する。
また、ステップS52では、次式をもとにX方向の2点間距離XDualを算出する。
XDual=A・(SRX0−4096・RXp21/Xp21−B)・(XZ21+C)+D ………(8)
【0062】
このように、1点タッチ時の電圧Xp21と電圧RXp21との比であるSRX0と、2点タッチ時の電圧Xp21と電圧RXp21との比との差分に基づいて算出される2点間距離基準値A・(SRX0−4096・RXp21/Xp21−B)を、押圧パラメータXZ21ともとに設定される補正係数(XZ21+C)で補正することで、X方向の2点間距離XDualを算出する。
ステップS52では、次式をもとにY方向の2点間距離YDualを算出する。
YDual=A・(SRY0−4096・RYp21/Yp21−B)・(XZ21+C)+D ………(9)
【0063】
このように、1点タッチ時の電圧Yp21と電圧RYp21との比であるSRY0と、2点タッチ時の電圧Yp21と電圧RYp21との比との差分に基づいて算出される2点間距離基準値A・(SRY0−4096・RYp21/Yp21−B)を、押圧パラメータXZ21ともとに設定される補正係数(XZ21+C)で補正することで、Y方向の2点間距離YDualを算出する。
以上のように、2点間の距離に応じてRXp21/Xp21やRYp21/Yp21が変化することを利用して、2点間距離XDual及びYDualを算出する。
【0064】
(動作)
次に、本発明の第2の実施形態の動作について説明する。
今、操作者がタッチパネルTP上の2点をタッチしているものとする。このとき、2点間距離が比較的短いものとすると、2点タッチ時のRXp21/Xp21やRYp21/Yp21は、1点タッチ時のRXp21/Xp21(=SRX0)やRYp21/Yp21(=SRY0)に比較的近い値となる。
そのため、制御部10は、上記(8)及び(9)式をもとに、2点間距離XDual及びYDualを比較的小さい値に算出する(ステップS53,S54)。
【0065】
2点タッチ時のRXp21/Xp21やRYp21/Yp21は、2点間距離が長いほど、SRX0やSRY0と比較して小さい値となる。そのため、2点間距離が比較的長い場合には、制御部10は、上記(8)及び(9)式をもとに、2点間距離XDual及びYDualを比較的大きい値に算出する(ステップS53,S54)。
以上のように、2点間の距離に応じて電圧比RXp21/Xp21やRYp21/Yp21が変化することを利用するので、適正に2点間距離を算出することができる。
【0066】
(効果)
このように、上記第2の実施形態では、タッチ位置の座標検出や2点タッチの判定に用いる電圧Xp21,Yp21,RXp21,RYp21を用いて2点間距離を算出するので、2点間距離の算出のためだけに用いる電圧(R_XP,R_YP)を測定する必要がない。したがって、上述した第1の実施形態と比較して、電圧の測定回数を削減することができる。
【0067】
(応用例)
なお、上記各実施形態においては、2点間距離XDual,YDualを算出した後、これら2点間距離XDual,YDualを用いて、図16に示す2点タッチのジェスチャ(拡大、縮小、回転)を判定するようにしてもよい。この場合、上述した図10や図15のタッチ処理を実行した後、図17に示すジェスチャ判断処理を実行する。
先ずステップS61で、次式をもとに2点間距離の変化量DualMoveを算出する。
DualMove=XDual−XDual0+YDual−YDual0 ………(10)
ここで、XDual0,YDual0は前回のサンプリングで算出した2点間距離XDual,YDualである。
【0068】
次にステップS62では、X方向の2点間距離XDualが前回値XDual0より大きいか否かを判定し、XDual>XDual0である場合には、X方向の2点間距離が増加していると判断してステップS63に移行し、XDual≦XDual0である場合には後述するステップS66に移行する。
ステップS63では、Y方向の2点間距離YDualが前回値YDual0より大きいか否かを判定し、YDual>YDual0である場合には、Y方向の2点間距離が増加していると判断してステップS64に移行し、YDual≦YDual0である場合には後述するステップS70に移行する。
【0069】
ステップS64では、前記ステップS61で算出した2点間距離の変化量DualMoveが、予め設定した判定閾値n1より大きいか否かを判定する。そして、DualMove≦n1である場合には後述するステップS70に移行し、DualMove>n1である場合には、ステップS65に移行して2点タッチのジェスチャが拡大操作であると判断し、ジェスチャ判断処理を終了する。
ステップS66では、Y方向の2点間距離YDualが前回値YDual0より小さいか否かを判定し、YDual<YDual0である場合には、Y方向の2点間距離が減少していると判断してステップS67に移行し、YDual≧YDual0である場合には後述するステップS70に移行する。
【0070】
ステップS67では、前記ステップS61で算出した2点間距離の変化量DualMoveの符号を反転し、ステップS68に移行する。そして、ステップS68では、前記ステップS67で設定した2点間距離の変化量DualMoveが、予め設定した判定閾値n2より大きいか否かを判定する。DualMove≦n2である場合には後述するステップS70に移行し、DualMove>n2である場合には、ステップS69に移行して2点タッチのジェスチャが縮小操作であると判断し、ジェスチャ判断処理を終了する。
【0071】
また、ステップS70では、2点タッチのジェスチャが回転操作であると判断し、図18に示す回転判断処理を実行してからジェスチャ判断処理を終了する。
図18に示すように、回転判断処理では、先ずステップS71でX方向変化量dXp=Xp−Xp0を算出する。ここで、Xp0は、前回のサンプリングで算出したX座標Xpである。
次にステップS72では、Y方向変化量dYp=Yp−Yp0を算出する。ここで、Yp0は、前回のサンプリングで算出したY座標Ypである。
【0072】
次にステップS73では、前記ステップS71で算出したX方向変化量dXpが予め設定した回転判断閾値D_Rot(>0)より大きいか否かを判定する。そして、dXp>D_Rotである場合にはステップS74に移行して、2点タッチのジェスチャが右回転操作であると判断し、回転判断処理を終了する。一方、dXp≦D_Rotである場合にはステップS75に移行し、前記ステップS72で算出したY方向変化量dYpが回転判断閾値D_Rotより大きいか否かを判定する。そして、dYp>D_Rotである場合には前記ステップS74に移行し、dYp≦D_Rotである場合にはステップS76に移行する。
【0073】
ステップS76では、前記ステップS71で算出したX方向変化量dXpが回転判断閾値−D_Rotより小さいか否かを判定する。そして、dXp<−D_Rotである場合にはステップS77に移行して、2点タッチのジェスチャが左回転操作であると判断し、回転判断処理を終了する。一方、dXp≧−D_Rotである場合にはステップS78に移行し、前記ステップS72で算出したY方向変化量dYpが回転判断閾値−D_Rotより小さいか否かを判定する。そして、dYp<−D_Rotである場合には前記ステップS77に移行し、dYp≧−D_Rotである場合にはそのまま回転判断処理を終了する。
なお、ジェスチャ判断のみを行うタッチパネル装置とする場合には、2点間距離の算出に用いる定数を、A=1,D=0とすることもできる。これにより2点間距離の算出処理を簡潔にすることができる。
【符号の説明】
【0074】
10…制御部、11…LCDモジュール、TP1,TP2…タッチパネル、X1,X2…端子(X方向)、Y1,Y2…端子(Y方向)、SW1〜SW8…スイッチ
【特許請求の範囲】
【請求項1】
一対の電極端子が対向する端辺部にそれぞれ設けられた2枚の抵抗膜を、上下で前記電極端子が直交するように互いに接触可能に近接対向させて構成したタッチパネルを備えるタッチパネル装置であって、
一方の抵抗膜の一対の電極端子間に電源電圧を印加し、且つ他方の抵抗膜の一対の電極端子間を短絡した状態で、前記他方の抵抗膜の一対の電極端子のうち何れか一方の電極端子の電圧を検出する第1の電圧検出手段と、
前記第1の電圧検出手段で検出した電圧に基づいて、前記タッチパネル上のタッチ入力の座標を検出する座標検出手段と、を備えることを特徴とするタッチパネル装置。
【請求項2】
前記一方の抵抗膜の一対の電極端子間に抵抗を介して電源電圧を印加し、且つ前記他方の抵抗膜の一対の電極端子間を短絡した状態で、前記他方の抵抗膜の一対の電極端子のうち何れか一方の電極端子の電圧を検出する第2の電圧検出手段と、
前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比に基づいて、前記タッチパネル上で2点がタッチされたか否かを判定する2点タッチ判定手段と、を備えることを特徴とする請求項1に記載のタッチパネル装置。
【請求項3】
前記2点タッチ判定手段で2点がタッチされたと判定したとき、前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比に基づいて、タッチされた2点間の距離を検出する2点間距離検出手段を備えることを特徴とする請求項2に記載のタッチパネル装置。
【請求項4】
前記2点タッチ判定手段で2点がタッチされたと判定したとき、タッチ入力の押圧力を検出する押圧力検出手段をさらに備え、
前記2点間距離検出手段は、
前記タッチパネルが1点タッチされているときに前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比と、前記タッチパネルが2点タッチされているときに前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比との差分に基づいて、前記2点間の距離の基準値を算出する基準値算出手段と、
前記押圧力検出手段で検出した押圧力が小さいほど、前記基準値算出手段で算出した前記2点間の距離の基準値を増加補正する補正手段と、を備えることを特徴とする請求項3に記載のタッチパネル装置。
【請求項1】
一対の電極端子が対向する端辺部にそれぞれ設けられた2枚の抵抗膜を、上下で前記電極端子が直交するように互いに接触可能に近接対向させて構成したタッチパネルを備えるタッチパネル装置であって、
一方の抵抗膜の一対の電極端子間に電源電圧を印加し、且つ他方の抵抗膜の一対の電極端子間を短絡した状態で、前記他方の抵抗膜の一対の電極端子のうち何れか一方の電極端子の電圧を検出する第1の電圧検出手段と、
前記第1の電圧検出手段で検出した電圧に基づいて、前記タッチパネル上のタッチ入力の座標を検出する座標検出手段と、を備えることを特徴とするタッチパネル装置。
【請求項2】
前記一方の抵抗膜の一対の電極端子間に抵抗を介して電源電圧を印加し、且つ前記他方の抵抗膜の一対の電極端子間を短絡した状態で、前記他方の抵抗膜の一対の電極端子のうち何れか一方の電極端子の電圧を検出する第2の電圧検出手段と、
前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比に基づいて、前記タッチパネル上で2点がタッチされたか否かを判定する2点タッチ判定手段と、を備えることを特徴とする請求項1に記載のタッチパネル装置。
【請求項3】
前記2点タッチ判定手段で2点がタッチされたと判定したとき、前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比に基づいて、タッチされた2点間の距離を検出する2点間距離検出手段を備えることを特徴とする請求項2に記載のタッチパネル装置。
【請求項4】
前記2点タッチ判定手段で2点がタッチされたと判定したとき、タッチ入力の押圧力を検出する押圧力検出手段をさらに備え、
前記2点間距離検出手段は、
前記タッチパネルが1点タッチされているときに前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比と、前記タッチパネルが2点タッチされているときに前記第1の電圧検出手段で検出した電圧と前記第2の電圧検出手段で検出した電圧との比との差分に基づいて、前記2点間の距離の基準値を算出する基準値算出手段と、
前記押圧力検出手段で検出した押圧力が小さいほど、前記基準値算出手段で算出した前記2点間の距離の基準値を増加補正する補正手段と、を備えることを特徴とする請求項3に記載のタッチパネル装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【公開番号】特開2011−123815(P2011−123815A)
【公開日】平成23年6月23日(2011.6.23)
【国際特許分類】
【出願番号】特願2009−283023(P2009−283023)
【出願日】平成21年12月14日(2009.12.14)
【出願人】(303046277)旭化成エレクトロニクス株式会社 (840)
【Fターム(参考)】
【公開日】平成23年6月23日(2011.6.23)
【国際特許分類】
【出願日】平成21年12月14日(2009.12.14)
【出願人】(303046277)旭化成エレクトロニクス株式会社 (840)
【Fターム(参考)】
[ Back to top ]