特許第6301809号(P6301809)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アルパイン株式会社の特許一覧

特許6301809タッチパネル入力装置及びコンピュータプログラム
<>
  • 特許6301809-タッチパネル入力装置及びコンピュータプログラム 図000002
  • 特許6301809-タッチパネル入力装置及びコンピュータプログラム 図000003
  • 特許6301809-タッチパネル入力装置及びコンピュータプログラム 図000004
  • 特許6301809-タッチパネル入力装置及びコンピュータプログラム 図000005
  • 特許6301809-タッチパネル入力装置及びコンピュータプログラム 図000006
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6301809
(24)【登録日】2018年3月9日
(45)【発行日】2018年3月28日
(54)【発明の名称】タッチパネル入力装置及びコンピュータプログラム
(51)【国際特許分類】
   G06F 3/041 20060101AFI20180319BHJP
   G06F 3/045 20060101ALI20180319BHJP
【FI】
   G06F3/041 595
   G06F3/041 520
   G06F3/045 F
【請求項の数】7
【全頁数】14
(21)【出願番号】特願2014-216293(P2014-216293)
(22)【出願日】2014年10月23日
(65)【公開番号】特開2016-85518(P2016-85518A)
(43)【公開日】2016年5月19日
【審査請求日】2017年7月18日
(73)【特許権者】
【識別番号】000101732
【氏名又は名称】アルパイン株式会社
(74)【代理人】
【識別番号】100099748
【弁理士】
【氏名又は名称】佐藤 克志
(72)【発明者】
【氏名】三浦 翔
【審査官】 塩屋 雅弘
(56)【参考文献】
【文献】 特開平10−055238(JP,A)
【文献】 特開平01−273122(JP,A)
【文献】 特開平05−324163(JP,A)
【文献】 特開平11−134107(JP,A)
【文献】 特開2001−067185(JP,A)
【文献】 米国特許第06366866(US,B1)
【文献】 特開平11−212714(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F3/03
3/041−3/047
(57)【特許請求の範囲】
【請求項1】
タッチされた位置の座標を検出座標として検出するタッチパネルを備え、前記検出座標に基づいて入力を受け付ける座標である入力座標を算定するタッチパネル入力装置であって、
タッチパネルが検出したN(但し、Nは複数)個の検出座標を取得し、取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいか否かを判定し、前記分布範囲の大きさが所定の大きさより小さいと判定した場合に、取得したN個の検出座標から所定の算出法によって入力座標を算定する第1入力座標算定手段と、
前記第1入力座標算定手段が前記分布範囲の大きさが所定の大きさより小さくないと判定した場合に、取得したN個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化しているかどうかを判定し、一方向にのみ変化している場合に、前記第1入力座標算定手段が取得した前記N個の検出座標に引き続いてタッチパネルが検出したN個の検出座標を新たに取得し、新たに取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいか否かを判定し、当該新たに取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいと判定した場合に、当該新たに取得したN個の検出座標から前記所定の算出法によって入力座標を算定し、当該新たに取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さくないと判定した場合に、当該新たに取得したN個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化しているかどうかを判定し、一方向にのみ変化している場合に、当該新たに取得した前記N個の検出座標から前記所定の算出法によって入力座標を算定する第2入力座標算定手段とを有することを特徴とするタッチパネル入力装置。
【請求項2】
タッチされた位置の座標を検出座標として検出するタッチパネルを備え、前記検出座標に基づいて入力を受け付ける座標である入力座標を算定するタッチパネル入力装置であって、
タッチパネルが検出したN(但し、Nは複数)個の検出座標を取得する処理を繰り返し行う検出座標取得手段と、
前記検出座標取得手段による前記N個の検出座標の取得の各回において、今回取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいか否かを判定する分布範囲判定手段と、
前記N個の検出座標の取得の各回において、前記分布範囲判定手段が前記分布範囲の大きさが所定の大きさより小さくないと判定した場合に、今回取得したN個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化しているかどうかを判定する増減判定手段と
前記入力座標を算定する入力座標算定手段とを有し、
当該入力座標算定手段は、
前記N個の検出座標の取得の各回において、前記分布範囲判定手段が前記分布範囲の大きさが所定の大きさより小さいと判定した場合に、今回取得したN個の検出座標から所定の算出法によって入力座標を算定し、
前記N個の検出座標の取得の各回において、前記分布範囲判定手段が前記分布範囲の大きさが所定の大きさより小さくないと判定した場合に、今回及び前回の前記N個の検出座標の取得の回の双方において、前記増減判定手段が当該N個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化していると判定しているときに、今回取得したN個の検出座標から前記所定の算出法によって入力座標を算定し、今回と前回の前記N個の検出座標の取得の回の少なくとも一方の回において、前記増減判定手段が当該N個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化していないと判定しているときに入力座標の算定を行わないことを特徴とするタッチパネル入力装置。
【請求項3】
請求項1または2記載のタッチパネル入力装置であって、
前記タッチパネルはタッチされた位置のXY座標を検出し、
前記N個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化しているかどうかの判定を、N個の検出座標のうちの検出の時間順が2番目以降のX座標の全てが検出の時間順が一つ前のX座標より小さくない場合と、N個の検出座標のうちの検出の時間順が2番目以降のX座標の全てが検出の時間順が一つ前のX座標より大きくない場合と、N個の検出座標のうちの検出の時間順が2番目以降のY座標の全てが検出の時間順が一つ前のY座標より小さく無い場合と、N個の検出座標のうちの検出の時間順が2番目以降のY座標の全てが検出の時間順が一つ前のY座標より大きくない場合とに、N個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化していると判定することにより行うことを特徴とするタッチパネル入力装置。
【請求項4】
請求項1または2記載のタッチパネル入力装置であって、
前記タッチパネルはタッチされた位置のXY座標を検出し、
前記Nは3以上の整数であり、
前記所定の算出法は、N個の検出座標のN個のX座標のうちの最大値と最小値を除くX座標の平均値を入力座標のX座標とし、N個の検出座標のN個のY座標のうちの最大値と最小値を除くY座標の平均値を入力座標のY座標とする算出法であることを特徴とするタッチパネル入力装置。
【請求項5】
請求項1または2記載のタッチパネル入力装置であって、
前記タッチパネルはタッチされた位置のXY座標を検出し、
前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいか否かの判定を、N個の検出座標のX座標の最大値と最小値との差と、N個の検出座標のY座標の最大値と最小値との差との双方が所定のしきい値より小さい場合に、当該N個の検出座標の分布範囲の大きさが所定の大きさより小さいと判定することにより行うことを特徴とするタッチパネル入力装置。
【請求項6】
タッチされた位置の座標を検出座標として検出するタッチパネルを備えたコンピュータによって読み取られ実行されるコンピュータプログラムであって、
前記コンピュータを、
タッチパネルが検出したN(但し、Nは複数)個の検出座標を取得し、取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいか否かを判定し、前記分布範囲の大きさが所定の大きさより小さいと判定した場合に、取得したN個の検出座標から所定の算出法によって入力を受け付ける座標である入力座標を算定する第1入力座標算定手段と、
前記第1入力座標算定手段が前記分布範囲の大きさが所定の大きさより小さくないと判定した場合に、取得したN個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化しているかどうかを判定し、一方向にのみ変化している場合に、前記第1入力座標算定手段が取得した前記N個の検出座標に引き続いてタッチパネルが検出したN個の検出座標を新たに取得し、新たに取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいか、新たに取得したN個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化しているときに、新たに取得した前記N個の検出座標から前記所定の算出法によって入力座標を算定する第2入力座標算定手段として機能させることを特徴とするコンピュータプログラム。
【請求項7】
タッチされた位置の座標を検出座標として検出するタッチパネルを備えたコンピュータによって読み取られ実行されるコンピュータプログラムであって、
当該コンピュータプログラムは、前記コンピュータを、
タッチパネルが検出したN(但し、Nは複数)個の検出座標を取得する処理を繰り返し行う検出座標取得手段と、
前記検出座標取得手段による前記N個の検出座標の取得の各回において、今回取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいか否かを判定する分布範囲判定手段と、
前記N個の検出座標の取得の各回において、前記分布範囲判定手段が前記分布範囲の大きさが所定の大きさより小さくないと判定した場合に、今回取得したN個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化しているかどうかを判定する増減判定手段と
入力を受け付ける座標である入力座標を算定する入力座標算定手段として機能させるコンピュータプログラムであって、
当該入力座標算定手段は、
前記N個の検出座標の取得の各回において、前記分布範囲判定手段が前記分布範囲の大きさが所定の大きさより小さいと判定した場合に、今回取得したN個の検出座標から所定の算出法によって入力座標を算定し、
前記N個の検出座標の取得の各回において、前記分布範囲判定手段が前記分布範囲の大きさが所定の大きさより小さくないと判定した場合に、今回及び前回の前記N個の検出座標の取得の回の双方において、前記増減判定手段が当該N個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化していると判定しているときに、今回取得したN個の検出座標から前記所定の算出法によって入力座標を算定し、今回と前回の前記N個の検出座標の取得の回の少なくとも一方の回において、前記増減判定手段が当該N個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化していないと判定しているときに入力座標の算定を行わないことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、タッチパネルを入力に用いるタッチパネル入力装置において入力座標を算定する技術に関するものである。
【背景技術】
【0002】
タッチパネルを入力に用いるタッチパネル入力装置において入力座標を検出する技術としては、タッチパネルが時間的に連続して検出した複数の座標のうちの最大値と最小値を除く座標の平均値を入力座標として算定する技術が知られている(特許文献1)。
【0003】
また、タッチパネルが時間的に連続して検出した複数の座標間の偏差が所定のしきい値より小さい場合にのみ、タッチパネルが検出した座標を入力座標として算定し、偏差が所定のしきい値より大きい場合にはタッチパネルが検出した座標を破棄して入力座標の算定を行わない技術も知られている(特許文献2)。
【0004】
これらの技術によれば、チャタリング等のノイズによるタッチパネルの座標の誤検出に基づいて、誤った座標を入力座標として算定してしまうことを抑制することができる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平10-333835号公報
【特許文献2】特開平09-044308号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述したタッチパネルが時間的に連続して検出した複数の座標のうちの最大値と最小値を除く座標の平均値を入力座標として算定する技術によれば、検出した複数の座標のうちの最大値と最小値以外の座標もタッチパネルの誤検出によるものであった場合には、誤った座標を入力座標として算定してしまうことになる。
【0007】
そこで、上述したタッチパネルが時間的に連続して検出した複数の座標間の偏差が所定のしきい値より小さい場合にのみ入力座標を算定する技術を組み合わせ、タッチパネルが時間的に連続して検出した複数の座標の最大値と最小値の偏差(複数の座標間の偏差の最大値)が所定のしきい値より小さい場合にのみ、最大値と最小値を除く座標の平均値を入力座標として算定し、最大値と最小値の偏差が所定のしきい値より大きい場合には入力座標の算定を行わないようにすれば、より信頼性の高い入力座標の算定を行うことができるようになる。
【0008】
しかしながら、このようにすると、ユーザがタッチパネルにタッチしながらタッチする位置を大きく移動する操作(手書き操作、スライド操作、フリック操作等)を行った場合に、タッチパネルが時間的に連続して検出した複数の座標の最大値と最小値の偏差が所定のしきい値より大きくなってしまい、タッチパネルが座標を誤検出していないにも関わらずに、入力座標を算定できなくなってしまうという問題が生じる。
【0009】
そこで、本発明は、タッチパネルの座標の誤検出に起因する入力座標の誤算定を効果的に抑制しつつ、ユーザのタッチする位置を大きく移動する操作に対しても正しく入力座標を算定することのできるタッチパネル入力装置を提供することを課題とする。
【課題を解決するための手段】
【0010】
前記課題達成のために、本発明は、タッチされた位置の座標を検出座標として検出するタッチパネルを備え、前記検出座標に基づいて入力を受け付ける座標である入力座標を算定するタッチパネル入力装置に、タッチパネルが検出したN(但し、Nは複数)個の検出座標を取得し、取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいか否かを判定し、前記分布範囲の大きさが所定の大きさより小さいと判定した場合に、取得したN個の検出座標から所定の算出法によって入力座標を算定する第1入力座標算定手段と、前記第1入力座標算定手段が前記分布範囲の大きさが所定の大きさより小さくないと判定した場合に、取得したN個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化しているかどうかを判定し、一方向にのみ変化している場合に、前記第1入力座標算定手段が取得した前記N個の検出座標に引き続いてタッチパネルが検出したN個の検出座標を新たに取得し、新たに取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいか否かを判定し、当該新たに取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいと判定した場合に、当該新たに取得したN個の検出座標から所定の算出法によって入力座標を算定し、当該新たに取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さくないと判定した場合に、当該新たに取得したN個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化しているかどうかを判定し、一方向にのみ変化している場合に、当該新たに取得した前記N個の検出座標から所定の算出法によって入力座標を算定する第2入力座標算定手段とを備えたものである。
【0011】
また、本発明は、前記課題達成のために、本発明は、タッチされた位置の座標を検出座標として検出するタッチパネルを備え、前記検出座標に基づいて入力を受け付ける座標である入力座標を算定するタッチパネル入力装置に、タッチパネルが検出したN(但し、Nは複数)個の検出座標を取得する処理を繰り返し行う検出座標取得手段と、前記検出座標取得手段による前記N個の検出座標の取得の各回において、今回取得した前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいか否かを判定する分布範囲判定手段と、前記N個の検出座標の取得の各回において、前記分布範囲判定手段が前記分布範囲の大きさが所定の大きさより小さくないと判定した場合に、今回取得したN個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化しているかどうかを判定する増減判定手段と前記入力座標を算定する入力座標算定手段とを備えたものである。ただし、入力座標算定手段は、前記N個の検出座標の取得の各回において、前記分布範囲判定手段が前記分布範囲の大きさが所定の大きさより小さいと判定した場合に、今回取得したN個の検出座標から所定の算出法によって入力座標を算定し、前記N個の検出座標の取得の各回において、前記分布範囲判定手段が前記分布範囲の大きさが所定の大きさより小さくないと判定した場合に、今回及び前回の前記N個の検出座標の取得の回の双方において、前記増減判定手段が当該N個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化していると判定しているときに、今回取得したN個の検出座標から前記所定の算出法によって入力座標を算定し、今回と前回の前記N個の検出座標の取得の回の少なくとも一方の回において、前記増減判定手段が当該N個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化していないと判定しているときに入力座標の算定を行わない。
【0012】
ここで、以上のタッチパネル入力装置は、タッチパネルがタッチされた位置のXY座標を検出するものである場合には、前記N個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化しているかどうかの判定は、N個の検出座標のうちの検出の時間順が2番目以降のX座標の全てが検出の時間順が一つ前のX座標より小さくない場合と、N個の検出座標のうちの検出の時間順が2番目以降のX座標の全てが検出の時間順が一つ前のX座標より大きくない場合と、N個の検出座標のうちの検出の時間順が2番目以降のY座標の全てが検出の時間順が一つ前のY座標より小さく無い場合と、N個の検出座標のうちの検出の時間順が2番目以降のY座標の全てが検出の時間順が一つ前のY座標より大きくない場合とに、N個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化していると判定することにより行われるようにしてもよい。
【0013】
また、以上のタッチパネル入力装置は、タッチパネルがタッチされた位置のXY座標を検出するものである場合には、前記Nは3以上の整数とし、前記所定の算出法を、N個の検出座標のN個のX座標のうちの最大値と最小値を除くX座標の平均値を入力座標のX座標とし、N個の検出座標のN個のY座標のうちの最大値と最小値を除くY座標の平均値を入力座標のY座標とする算出法としてもよい。
【0014】
また、以上のタッチパネル入力装置は、タッチパネルがタッチされた位置のXY座標を検出するものである場合には、前記N個の検出座標の分布範囲の大きさが所定の大きさより小さいか否かの判定を、N個の検出座標のX座標の最大値と最小値との差と、N個の検出座標のY座標の最大値と最小値との差との双方が所定のしきい値より小さい場合に、当該N個の検出座標の分布範囲の大きさが所定の大きさより小さいと判定することにより行うようにしてもよい。
【0015】
以上のようなタッチパネル入力装置によれば、タッチパネルが検出したN個の検出座標の分布範囲の大きさが所定の大きさより小さくない場合であっても、2回連続してN個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化している場合には、ユーザのタッチパネルのタッチ位置の移動操作が発生していると推定できるので、N個の検出座標から入力座標を算定する。一方、タッチパネルが検出したN個の検出座標の分布範囲の大きさが所定の大きさより小さくない場合に、2回連続してN個の検出座標の少なくとも一つの座標軸についての値が検出の時間順に増減方向について一方向にのみ変化していない場合には、タッチ位置の移動操作が発生しておらず、タッチパネルの座標の誤検出が発生したものと推定されるので入力座標の算定を行わない。
【0016】
よって、検出座標の分布範囲の大きさについてのしきい値を用いて、タッチパネルの座標の誤検出に起因する入力座標の誤算定を抑制しつつ、ユーザのタッチする位置を移動する操作に対しては正しく入力座標を算定することができるようになる。
【発明の効果】
【0017】
以上のように、本発明によればタッチパネルの座標の誤検出に起因する入力座標の誤算定を効果的に抑制しつつ、ユーザのタッチする位置を大きく移動する操作に対しても正しく入力座標を算定することのできるタッチパネル入力装置を提供するこができる。
【図面の簡単な説明】
【0018】
図1】本発明の実施形態に係る電子機器の構成を示すブロック図である。
図2】本発明の実施形態に係るタッチパネルの構成を示す図である。
図3】本発明の実施形態に係る入力座標算定処理を示すフローチャートある。
図4】本発明の実施形態に係る入力座標算定処理の処理例を示す図である。
図5】本発明の実施形態に係る入力座標算定処理の他の例を示すフローチャートある。
【発明を実施するための形態】
【0019】
以下、本発明の実施形態について説明する。
図1に、本実施形態に係る電子機器の構成を示す。
図示するように、電子機器は、ディスプレイ1、ディスプレイ1の表示面に重ねて配置されたタッチパネル2、ディスプレイ1を駆動するディスプレイコントローラ3、ユーザによってタッチされたタッチパネル2上のX座標とY座標を検出し検出座標として出力するタッチパネルコントローラ4、オペレーティングシステム5、オペレーティングシステム5上で稼働するアプリケーション6とを備えている。
【0020】
また、オペレーティングシステム5は、ディスプレイコントローラ3を介してディスプレイ1の表示を制御するディスプレイドライバ51を備えている。また、オペレーティングシステム5は、タッチパネルコントローラ4が出力する検出座標からユーザの入力座標を算定し、その時点でタッチパネル2を入力に用いているオペレーティングシステム5やアプリケーション6に出力するタッチパネルドライバ52を備えている。
【0021】
但し、電子機器は、ハードウエア的には、CPUやメモリなどを備えたコンピュータを用いて構成されるものであり、オペレーティングシステム5や、アプリケーション6などは、当該コンピュータが、所定のコンピュータプログラムを実行することにより実現されるものである。
【0022】
次に、本実施形態において用いるタッチパネル2の例について説明する。
なお、ここでは、タッチパネル2として、4線式抵抗膜式タッチパネルを用いる場合を例にとり説明する。
図2a1に、タッチパネル2の断面を示すように、タッチパネル2は、X抵抗膜21を下面に成膜した透明なフィルム22と、Y抵抗膜23を上面に成膜した透明なガラス24とが外周スペーサ25とドットスペーサ26を介して対向配置された構成を備えている。ここで、X抵抗膜21とY抵抗膜23とは、透明抵抗膜の一種であるITO(Indium Tin Oxide)膜である。
【0023】
そして、図2b1に示すように、X抵抗膜21のX方向の両端部にはX電極211が設けられており、Y抵抗膜23のY方向の両端部にはY電極231が設けられている。
また、図2a2に示すように、X抵抗膜21、フィルム22はある程度弾力を有しており、その上面に圧力をかけると圧力をかけた箇所が撓んでX抵抗膜21がY抵抗膜23に接触するようになっている。
【0024】
そして、図2a1に示すように、X電極211間に電圧Vを印加した状態で、フィルム22の上面にユーザがタッチすると、タッチした位置でX抵抗膜21とY抵抗膜23とが接触し、Y抵抗膜23のY電極231に、X電極211からタッチした位置までのX抵抗膜21の抵抗値に応じた電圧Vxが表れる。
【0025】
また、図2a2に示すように、Y電極231間に電圧Vを印加した状態で、フィルム22の上面にユーザがタッチすると、タッチした位置でX抵抗膜21とY抵抗膜23とが接触し、X抵抗膜21のX電極211に、Y電極231からタッチした位置までのY抵抗膜23の抵抗値に応じた電圧Vyが表れる。
【0026】
そして、タッチパネルコントローラ4は、X電極211間に電圧Vを印加しY電極231の電圧Vxからユーザがタッチした位置のX座標であるxdを検出し、Y電極231間に電圧Vを印加しX電極211の電圧Vyからユーザがタッチした位置のY座標であるydを検出し、検出座標(xd、yd)とする座標検出動作を繰り返し行う。
【0027】
次に、タッチパネルドライバ52は、タッチパネルコントローラ4が検出した検出座標(xd、yd)から入力座標(Xin、Yin)を算定し、その時点でタッチパネル2を入力に用いているオペレーティングシステム5やアプリケーション6に出力し、入力座標(Xin、Yin)を受け取ったオペレーティングシステム5やアプリケーション6は、それぞれ入力座標(Xin、Yin)に応じた処理を行う。
【0028】
以下、このような電子機器において、タッチパネルドライバ52がタッチパネルコントローラ4が検出した検出座標(xd、yd)から入力座標(Xin、Yin)を算定する動作について説明する。
【0029】
図3に、タッチパネルドライバ52が入力座標の算定のために行う入力座標算定処理の手順を示す。なお、入力座標算定処理は、タッチパネルコントローラ4がタッチを検出している期間、すなわち、検出座標(xd、yd)を検出している期間中実行される。
【0030】
図示するように、この処理においてタッチパネルドライバ52は、まず、フラグFを0にセットする(ステップ302)。
そして、一定時間間隔(たとえば、4ms)で4回(ステップ304、308、310)、タッチパネルコントローラ4が検出した検出座標(xd、yd)を取得する(ステップ306)。ここで、以下では、このように4回取得した検出座標(xd、yd)のうちのj番目に取得した検出座標(xd、yd)を検出座標(xd_j、yd_j)と表して説明を行う。但し、jは1から4の整数である。
【0031】
次に、取得した4つの検出座標(xd_j、yd_j)の4つのX座標xd_1、xd_2、xd_3、xd_4の最大値Max(xd_j)と最小値Min(xd_j)との差が所定のしきい値Th以上であるか、または、取得した4つの検出座標(xd_j、yd_j)の4つのY座標yd_1、yd_2、yd_3、yd_4の最大値Max(yd_j)と最小値Min(yd_j)との差が所定のしきい値Th以上であるかどうかを調べる(ステップ312)。
【0032】
そして、X座標の最大値Max(xd_j)と最小値Min(xd_j)との差と、Y座標の最大値Max(yd_j)と最小値Min(yd_j)との差の双方が、しきい値Th未満であれば(ステップ312)、チャタリング等のノイズによる検出座標(xd、yd)の誤検出が発生していないと推定されるので、4つの検出座標(xd_j、yd_j)の4つのX座標xd_jのうちの最大値と最小値を除く2つのX座標の平均値をXinとして算出すると共に、4つの検出座標(xd_j、yd_j)の4つのY座標yd_jのうちの最大値と最小値を除く2つのY座標の平均値をYinとして算出する(ステップ314)。
【0033】
そして、座標(Xin 、Yin)を入力座標として確定し(ステップ316)、ステップ302からの処理に戻る。
一方、ステップ312において、X座標の最大値Max(xd_j)と最小値Min(xd_j)との差と、Y座標の最大値Max(yd_j)と最小値Min(yd_j)との差の少なくとも一方が、しきい値Th以上であれば(ステップ312)、4つの検出座標(xd_j、yd_j)がX座標またはY座標について時間順に漸増または漸減する漸増/減座標群であるかどうかを調べる(ステップ314)。ここで、4つの検出座標(xd_j、yd_j)の4つのX座標xd_1、xd_2、xd_3、xd_4が、時間順に増減方向に関して一方向に変化(すなわち、時間順に増加または時間順に減少)しているか、または、4つの検出座標(xd_j、yd_j)の4つのY座標yd_1、yd_2、yd_3、yd_4が、時間順に増減方向に関して一方向に変化(すなわち、時間順に増加または時間順に減少)している場合に、4つの検出座標(xd_j、yd_j)は漸増/減座標群となる。
【0034】
より具体的には、ステップ318では、たとえば、xd_1≦xd_2≦xd_3≦xd_4、xd_1≧xd_2≧xd_3≧xd_4、yd_1≦yd_2≦yd_3≦yd_4、yd_1≧yd_2≧yd_3≧yd_4の4つの条件の少なくとも一つが満たされてかどうかを調べ、少なくとも一つが満たされている場合に4つの検出座標(xd_j、yd_j)は漸増/減座標群であると判定する。または、ステップ318では、たとえば、xd_1<xd_2<xd_3<xd_4、xd_1>xd_2>xd_3>xd_4、yd_1<yd_2<d_3<yd_4、yd_1>yd_2>yd_3>yd_4の4つの条件の少なくとも一つが満たされてかどうかを調べ、少なくとも一つが満たされている場合に4つの検出座標(xd_j、yd_j)は漸増/減座標群であると判定するようにしてもよい。
【0035】
そして、4つの検出座標(xd_j、yd_j)が漸増/減座標群でなければ(ステップ318)、ステップ312でX座標の最大値Max(xd_j)と最小値Min(xd_j)との差またはY座標の最大値Max(yd_j)と最小値Min(yd_j)との差がしきい値Th以上となった原因は、チャタリング等のノイズによる検出座標(xd、yd)の誤検出であるものと推定されるので、入力座標(Xin 、Yin)の算定は行わずに、そのままステップ302からの処理に戻る。
【0036】
一方、4つの検出座標(xd_j、yd_j)は漸増/減座標群であれば(ステップ318)、フラグFが1に設定されているかどうかを調べる(ステップ320)、そして、フラグFが1に設定されていなければ、ステップ312でX座標の最大値Max(xd_j)と最小値Min(xd_j)との差またはY座標の最大値Max(yd_j)と最小値Min(yd_j)との差がしきい値Th以上となった原因が、チャタリング等のノイズによる検出座標(xd、yd)の誤検出であるのか、ユーザのタッチ位置を移動する操作であるかが確定できないので、フラグFを1に設定し(ステップ322)、ステップ304からの処理に戻る。なお、タッチパネル2へのタッチ開始直後には、チャタリング等のノイズにより、検出座標(xd_j、yd_j)の誤検出が、検出座標(xd_j、yd_j)がX座標またはY座標について時間順に漸増または漸減してしまう形態で発生し易い。
【0037】
一方、フラグFが1に設定されていれば(ステップ320)、前回取得した4つの検出座標(xd_j、yd_j)も、今回取得した4つの検出座標(xd_j、yd_j)も共に漸増/減座標群であるので、ステップ312でX座標の最大値Max(xd_j)と最小値Min(xd_j)との差またはY座標の最大値Max(yd_j)と最小値Min(yd_j)との差がしきい値Th以上となった原因は、ユーザのタッチ位置を移動する操作であると推定できるので、ステップ314に進み、4つの検出座標(xd_j、yd_j)の4つのX座標xd_jのうちの最大値と最小値を除く2つのX座標の平均値をXinとして算出すると共に、4つの検出座標(xd_j、yd_j)の4つのY座標yd_jのうちの最大値と最小値を除く2つのY座標の平均値をYinとして算出し(ステップ314)、座標(Xin 、Yin)を入力座標として確定し(ステップ316)、ステップ302からの処理に戻る。
【0038】
以上、タッチパネルドライバ52が行う入力座標算定処理について説明した。
なお、このような入力座標算定処理によって確定された入力座標(Xin 、Yin)は、上述のようにその時点でタッチパネル2を入力に用いているオペレーティングシステム5やアプリケーション6に出力される。
【0039】
以下、以上のような入力座標算定処理の処理例を示す。
いま、ユーザがタッチパネル2上でタッチする位置を移動する操作を行い、タッチパネルコントローラ4が検出する検出座標(xd、yd)のX座標xdが図4aに示したように時間変化した場合を想定する。
そして、タッチパネルドライバ52は、#1から#6の各サイクルにおいてタッチパネルコントローラ4から4つの検出座標(xd_j、yd_j)を取得したものとする。また、図4aに示した#1から#6の各サイクルにおいて、タッチパネルコントローラ4から取得した4つの検出座標(xd_j、yd_j)の4つのY座標のyd_jの最大値と最小値の差はしきい値Th未満であったものとする。また、サイクル#1の開始時点において、フラグFは0にセットされているものとする。
【0040】
この場合、最初の#1のサイクルでは、タッチパネルドライバ52がタッチパネルコントローラ4から取得した4つの検出座標(xd_j、yd_j)の4つのX座標xd_jの最大値と最小値の差は図示するようにしきい値Th未満であり、4つの検出座標(xd_j、yd_j)の4つのY座標のyd_jの最大値と最小値の差もしきい値Th未満であるので、Avg_mid (xd_j,#n)がサイクル#nで取得した4つのX座標xd_jの最大値と最小値を除く残り二つのX座標xd_jの平均値を表し、Avg_mid (yd_j,#n)がサイクル#nで取得した4つのY座標yd_jの最大値と最小値を除く残り二つのY座標yd_jの平均値を表すものとして、入力座標(Xin,Yin)としては、{Avg_mid (xd_j,#1)、Avg_mid (yd_j,#1)}が算定される。
【0041】
次に、#1の次のサイクル#2では、タッチパネルドライバ52がタッチパネルコントローラ4から取得した4つの検出座標(xd_j、yd_j)の4つのX座標xd_jの最大値と最小値の差は図示するようにしきい値Th未満であり、4つの検出座標(xd_j、yd_j)の4つのY座標のyd_jの最大値と最小値の差もしきい値Th未満であるので、入力座標(Xin,Yin)としては、{Avg_mid (xd_j,#2)、Avg_mid (yd_j,#2)}が算定される。
【0042】
そして、#2の次のサイクル#3では、タッチパネルドライバ52がタッチパネルコントローラ4から取得した4つの検出座標(xd_j、yd_j)の4つのX座標xd_jの最大値と最小値の差は図示するようにしきい値Th以上であり、4つのX座標xd_jは時間順に漸増している。そして、この時点では、フラグFは0に設定されているので入力座標(Xin,Yin)の算定は行われずフラグFの1へのセットのみが行われる。
【0043】
次に、#3の次のサイクル#4では、タッチパネルドライバ52がタッチパネルコントローラ4から取得した4つの検出座標(xd_j、yd_j)の4つのX座標xd_jの最大値と最小値の差は図示するようにしきい値Th以上であり、4つのX座標xd_jは時間順に漸増している。そして、この時点ではフラグFが1に設定されているので、入力座標(Xin,Yin)として{Avg_mid (xd_j,#4)、Avg_mid (yd_j,#4)}が算定され、フラグFが0にセットされる。
【0044】
次に、#4の次のサイクル#5では、タッチパネルドライバ52がタッチパネルコントローラ4から取得した4つの検出座標(xd_j、yd_j)の4つのX座標xd_jの最大値と最小値の差は図示するようにしきい値Th以上であり、4つのX座標xd_jは時間順に漸増している。そして、この時点でフラグFが0に設定されているので入力座標(Xin,Yin)の算定は行われずフラグFの1へのセットのみが行われる。
【0045】
そして、#5の次のサイクル#6でh、タッチパネルドライバ52がタッチパネルコントローラ4から取得した4つの検出座標(xd_j、yd_j)の4つのX座標xd_jの最大値と最小値の差は図示するようにしきい値Th以上であり、4つのX座標xd_jは時間順に漸増している。そして、この時点ではフラグFが1に設定されているので、入力座標(Xin,Yin)として{Avg_mid (xd_j,#6)、Avg_mid (yd_j,#6)}が算定され、フラグFが0にセットされる。
【0046】
以上のように、本実施形態の入力座標算定処理では、サイクル#4、#6のように、タッチパネルコントローラ4が検出した4つの検出座標(xd_j、yd_j)の4つのX座標xd_jの最大値と最小値の差がしきい値Th以上であっても、それがユーザのタッチパネル2のタッチ位置の移動操作によるものである場合には入力座標(Xin,Yin)を算定する。よって、しきい値Thを用いたタッチパネル2の座標の誤検出に起因する入力座標の誤算定を抑制しつつ、ユーザのタッチする位置を移動する操作に対しては正しく入力座標を算定することができるようになる。
【0047】
以上、本発明の実施形態について説明した。
ところで、以上ではタッチパネルドライバ52が入力座標算定処理として図3に示した処理を行うものとして説明したが、タッチパネルドライバ52は入力座標算定処理として図3に示した処理に代えて図5に示した入力座標算定処理を行うようにしてもよい。
【0048】
図5に示した入力座標算定処理の、図3に示した入力座標算定処理に対する相違点は、ステップ312において、X座標の最大値Max(xd_j)と最小値Min(xd_j)との差と、Y座標の最大値Max(yd_j)と最小値Min(yd_j)との差の双方が、しきい値Th未満であると判定された場合に、フラグFを0にセットした上で(ステップ313)、ステップ314に進むようにした点と、ステップ316において座標(Xin 、Yin)を入力座標として確定したならば、ステップ302ではなくステップ304に戻るようにした点である。
【0049】
入力座標算定処理を図5に示すように行うことにより、ユーザがタッチする位置を移動する操作を開始してフラグFが1にセットされたらば、タッチする位置を移動する操作が行われている期間中フラグFが1に維持されるので、フラグFが1にセットされた以降は各サイクルについて入力座標を連続的に算定することができるようになる。
【0050】
すなわち、図3に示した入力座標算定処理では、図4aに示すように各サイクルで4つの検出座標(xd_j、yd_j)がタッチパネルコントローラ4から取得された場合、タッチする位置を1サイクル内でしきい値Th以上大きく移動する操作が行われている期間中(#3-#6)は、1サイクルおきに入力座標が算出されるが、図5に示した入力座標算定処理によれば、図4bにタッチパネルコントローラ4から取得した検出座標(xd、yd)が図4aと同様に時間変化した場合について示したように、タッチする位置を1サイクル内でしきい値Th以上大きく移動する操作が行われている期間中(#3-#6)は、最初のサイクル(#3)を除く各サイクルn(#4-#6のサイクル)において、入力座標{Avg_mid (xd_j,#n)、Avg_mid (yd_j,#n)}が算定される。
【0051】
ここで、以上の実施形態では、入力座標算定処理において、4つの検出座標(xd_j、yd_j)を単位として、4つの検出座標(xd_j、yd_j)に対して一つの入力座標(Xin 、Yin)を算定する処理を行ったが、これは3以上の任意数k個の検出座標(xd_j、yd_j)を単位としてk個の検出座標(xd_j、yd_j)に対して一つの入力座標(Xin 、Yin)を算定する処理を行うようにしてもよい。すなわち、この場合には、入力座標算定処理のステップ302-310で(図4a、bの各サイクルで)k個の検出座標(xd_j、yd_j)を取得して、ステップ312以降の処理に進むようにすればよい。
【0052】
また、以上の実施形態では、k個の検出座標(xd_j、yd_j)から1つの入力座標(Xin 、Yin)を算定する際に、k個の検出座標(xd_j、yd_j)のX座標xd_jの最大値と最小値を除く座標の平均値を入力座標のX座標Xin、Y座標yd_jの最大値と最小値を除く座標の平均値を入力座標のY座標Yinとして算出したが、入力座標のX座標Xin、Y座標Yinは、他の方法により算出するようにしてもよい。たとえば、k個の検出座標(xd_j、yd_j)の全てのX座標xd_jの平均値を入力座標のX座標Xin、全てのY座標yd_jの平均値を入力座標のY座標Yinとして算定したり、k個の検出座標(xd_j、yd_j)のk個のX座標xd_jのうちの大きさの順番が真ん中のX座標xd_jを入力座標のX座標Xin、k個のY座標yd_jのうちの大きさの順番が真ん中のY座標yd_jを入力座標のY座標Yinとして算定したりするようにしてもよい。
【0053】
また、以上の実施形態では、入力座標算定処理をタッチパネルドライバ52において行うものとして説明したが、以上の入力座標算定処理は、タッチパネルコントローラ4において行うようにすることもできる。また、タッチパネルドライバ52においてタッチパネルコントローラ4から取得した検出座標をそのままアプリケーション6に中継するものとして、以上の入力座標算定処理は、アプリケーション6において行うようにすることもできる。
【0054】
また、以上の実施形態は、4線式抵抗膜式タッチパネルを用いる場合について説明したが、タッチパネル2としては、4線式以外の他の抵抗膜式タッチパネルに同様に適用することができる。また、タッチパネル2として、静電容量式タッチパネルなどの他の方式のタッチパネル2を用いる場合についても適用が可能である。
【符号の説明】
【0055】
1…ディスプレイ、2…タッチパネル、3…ディスプレイコントローラ、4…タッチパネルコントローラ、5…オペレーティングシステム、6…アプリケーション、21…X抵抗膜、22…フィルム、23…Y抵抗膜、24…ガラス、25…外周スペーサ、26…ドットスペーサ、51…ディスプレイドライバ、52…タッチパネルドライバ、211…X電極、231…Y電極。
図1
図2
図3
図4
図5