(57)【特許請求の範囲】
【請求項１】
複数の操作体に押圧される操作面と、
前記操作面を押圧する前記複数の操作体の各押圧位置を検出する位置センサと、
前記複数の操作体から前記操作面に加わる荷重を異なる位置で検出値として各々検出する複数の荷重センサと、
複数の前記押圧位置の各々に加わる荷重を表す押圧点荷重を、前記複数の押圧位置と複数の前記検出値とに基づいて算出する荷重算出部と、
を備え、
前記荷重算出部が、１回以上の算出ループを実行することにより複数の前記押圧点荷重を算出し、
前記荷重算出部が、１回目の前記算出ループにおいて、前記複数の押圧位置の各々に対応した初期押圧点荷重として所定の値を使用し、
前記算出ループが、
複数の前記初期押圧点荷重と前記複数の押圧位置との対応に従って前記複数の初期押圧点荷重を前記複数の押圧位置に加えたと仮定した場合に前記複数の荷重センサで検出される荷重を表す複数の算出値を算出することと、
前記複数の荷重センサの各々について、前記算出値と前記検出値との比較に基づいた比較値を算出することと、
前記複数の押圧位置の各々について、前記初期押圧点荷重を補正する補正値を前記比較値と前記押圧位置とに基づいて算出することと、
前記複数の押圧位置の各々について、前記補正値に基づいて前記初期押圧点荷重を補正することにより前記押圧点荷重を算出することと、
を含み、
前記荷重算出部が、前記複数の押圧位置の各々について、前記算出ループにおいて算出された前記押圧点荷重を、次回の前記算出ループにおける前記初期押圧点荷重として使用する、
入力装置。
【請求項２】
前記複数の算出値を算出することが、複数の荷重分散係数に基づいて前記複数の算出値を算出することを含み、
前記複数の荷重分散係数の各々が、前記複数の押圧位置のうちの１つと前記複数の荷重センサのうちの１つとの異なる組み合わせに対応し、
前記複数の荷重分散係数の各々が、１つの前記組み合わせを構成する前記押圧位置に加わる前記押圧点荷重のうち前記１つの前記組み合わせを構成する前記荷重センサで検出される荷重の割合を表し、
前記複数の荷重センサの各々について、前記比較値を算出することが、前記複数の荷重センサの各々について、前記検出値を前記算出値で除算することを含み、
１つの前記押圧位置に対応するすべての前記荷重分散係数を、１群の荷重分散係数と呼ぶとき、前記１つの前記押圧位置に対応する前記補正値を算出することが、前記複数の荷重センサの各々について、前記１つの前記押圧位置に対応する前記１群の荷重分散係数に含まれる前記荷重分散係数と前記比較値とを乗算した値の和を前記補正値として算出することを含み、
前記複数の押圧位置の各々について、前記押圧点荷重を算出することが、前記複数の押圧位置の各々について、前記補正値と前記初期押圧点荷重とを乗算することにより前記押圧点荷重を算出することを含む、
請求項１に記載の入力装置。
【請求項３】
４つの前記荷重センサを備え、
前記操作面が、平面であり、
前記操作面上の位置が、第１方向の第１座標と前記第１方向に直交する第２方向の第２座標とにより表され、
前記４つの荷重センサの各々が、前記操作面上の一点に対応付けられ、
前記４つの荷重センサに対応する前記操作面上の４つの前記一点が、前記第１方向に沿った２辺と前記第２方向に沿った２辺とを持つ長方形の頂点に配置されており、
前記４つの荷重センサの各々が、前記一点付近で前記操作面に直交する方向に沿って前記操作面に加わる前記検出値を検出し、
前記１つの前記組み合わせに対応した前記荷重分散係数が、第１値と第２値との乗算により算出される値であり、
前記第１値が、前記第１方向における前記長方形の第１幅から、前記１つの前記組み合わせを構成する前記荷重センサの第１座標と、前記１つの前記組み合わせを構成する押圧位置の第１座標との差の大きさを引いた値を、前記第１幅で除算した値であり、
前記第２値が、前記第２方向における前記長方形の第２幅から、前記１つの前記組み合わせを構成する前記荷重センサの第２座標と、前記１つの前記組み合わせを構成する押圧位置の第２座標との差の大きさを引いた値を、前記第２幅で除算した値である、
請求項２に記載の入力装置。
【請求項４】
前記押圧位置の数が、ｎと表され、
ｎ個の前記押圧点荷重を要素とするｎ行１列の行列が、行列Ｚと表され、
ｎ個の前記初期押圧点荷重を要素とするｎ行１列の行列が、行列Ｚ０と表され、
ｎ個の前記補正値を要素とするｎ行１列の行列が、行列ＺＣと表され、
前記行列Ｚと前記行列Ｚ０と前記行列ＺＣとにおいて、同じ行の要素が、同じ前記押圧位置に対応し、
前記荷重センサの数が、ｍと表され、
ｍ個の前記検出値を要素とするｍ行１列の行列が、行列Ｓと表され、
ｍ個の前記算出値を要素とするｍ行１列の行列が、行列Ｓ０と表され、
ｍ個の前記比較値を要素とするｍ行１列の行列が、行列ＳＣと表され、
前記行列Ｓと前記行列Ｓ０と前記行列ＳＣとにおいて、同じ行の要素が、同じ前記荷重センサに対応し、
ｐが、１以上ｎ以下の整数である、かつ、
ｋが、１以上ｍ以下の整数である、としたとき、
前記荷重算出部が、前記荷重分散係数を要素とするｍ行ｎ列の係数行列Ａと前記係数行列Ａの転置行列ＡＴとを算出し、
前記係数行列Ａと前記行列Ｓとにおいて、同じ行の要素が、同じ前記荷重センサに対応し、
前記転置行列ＡＴと前記行列Ｚとにおいて、同じ行の要素が、同じ前記押圧位置に対応し、
すべてのｋとすべてのｐとについて、前記係数行列Ａのｋ行ｐ列の要素が、ｐ列に対応する前記押圧位置に加わる前記押圧点荷重のうち、ｋ行に対応する前記荷重センサで検出される荷重の割合を表し、
前記複数の算出値を算出することが、Ｓ０＝Ａ・Ｚ０を算出することを含み、
前記複数の荷重センサの各々について、前記比較値を算出することが、１以上ｍ以下のすべての整数ｋについて、前記行列Ｓのｋ行目の要素を前記行列Ｓ０のｋ行目の要素で割った値を前記行列ＳＣのｋ行目の要素とすることを含み、
前記複数の押圧位置の各々について、前記補正値を算出することが、ＺＣ＝ＡＴ・ＳＣを算出することを含み、
前記複数の押圧位置の各々について、前記初期押圧点荷重を補正することにより前記押圧点荷重を算出することが、１以上ｎ以下のすべての整数ｐについて、前記行列Ｚ０のｐ行目の要素に前記行列ＺＣのｐ行目の要素を乗じた値を前記行列Ｚのｐ行目の要素とすることを含む、
請求項２または請求項３に記載の入力装置。
【請求項５】
前記荷重算出部が、前記１回目の前記算出ループにおいて、前記複数の押圧位置の各々に対応した前記初期押圧点荷重として所定の正値を使用する、
請求項４に記載の入力装置。
【請求項６】
前記荷重算出部が、前記算出ループを複数回繰り返す、
請求項２乃至請求項５のいずれか一項に記載の入力装置。
【請求項７】
前記荷重算出部は、前記算出ループを実行する前の前記初期押圧点荷重と、前記算出ループにより算出された前記押圧点荷重との差の絶対値が、所定値より小さいことに応答して、前記算出ループの繰り返しを終了する、
請求項１乃至請求項６のいずれか一項に記載の入力装置。
【請求項８】
前記複数の押圧位置の各々について、前記押圧点荷重を算出することは、前記複数の押圧位置の各々について、
前記補正値と１との差の絶対値が、所定値を越えている場合、前記補正値を前記所定値未満の補正係数分１に近づけた値と前記初期押圧点荷重とを乗算することにより前記押圧点荷重を算出することと、
前記補正値と１との差の絶対値が、所定値以下である場合、前記補正値と前記初期押圧点荷重とを乗算することにより前記押圧点荷重を算出することと、
を含む、
請求項２乃至請求項６のいずれか一項に記載の入力装置。
【請求項９】
複数の操作体に押圧される操作面と、前記操作面を押圧する前記複数の操作体の各押圧位置を検出する位置センサと、前記複数の操作体から前記操作面に加わる荷重を異なる位置で検出値として各々検出する複数の荷重センサと、複数の前記押圧位置の各々に加わる荷重を表す押圧点荷重を、前記複数の押圧位置と複数の前記検出値とに基づいて算出する荷重算出部とを備える入力装置により実行される荷重算出方法であって、
前記荷重算出部により、１回以上の算出ループを実行することにより複数の前記押圧点荷重を算出することと、
前記荷重算出部により、１回目の前記算出ループにおいて、前記複数の押圧位置の各々に対応した初期押圧点荷重として所定の値を使用することと、
前記荷重算出部により、前記複数の押圧位置の各々について、前記算出ループにおいて算出された前記押圧点荷重を、次回の前記算出ループにおける前記初期押圧点荷重として使用することと、
を含み、
前記算出ループが、
複数の前記初期押圧点荷重と前記複数の押圧位置との対応に従って前記複数の初期押圧点荷重を前記複数の押圧位置に加えたと仮定した場合に前記複数の荷重センサで検出される荷重を表す複数の算出値を算出することと、
前記複数の荷重センサの各々について、前記算出値と前記検出値との比較に基づいた比較値を算出することと、
前記複数の押圧位置の各々について、前記初期押圧点荷重を補正する補正値を前記比較値と前記押圧位置とに基づいて算出することと、
前記複数の押圧位置の各々について、前記補正値に基づいて前記初期押圧点荷重を補正することにより前記押圧点荷重を算出することと、
を有する、
荷重算出方法。
【請求項１０】
コンピュータに請求項９に記載の荷重算出方法を実行させる荷重算出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力装置、荷重算出方法及び荷重算出プログラムに関するものである。
【背景技術】
【０００２】
従来、特許文献１に記載のように、操作面上で指が触れた押圧点の座標を検出するタッチパネルセンサと、タッチパネルセンサの裏側に設けられてタッチパネルに加わる荷重を検出する複数の荷重検出センサと、各押圧点における荷重を検出する制御部とを備える入力装置がある。【０００３】
特許文献１の制御部は、タッチパネルセンサの出力から各押圧点の位置座標を求め、荷重検出センサの出力から各押圧点の重心座標と重心荷重とを求め、位置座標と重心座標と重心荷重に基づいて、各押圧点の荷重を算出する。具体的な計算では、押圧点の荷重を要素とする行列Ｐに、位置座標と重心荷重とから求められる行列Ａを掛けると、重心座標のｘ座標と重心座標のｙ座標と重心荷重とを要素とする行列Ｍが求められることを利用する。すなわち、行列Ｍに逆行列Ａを掛けて、求めたい行列Ｐを取得する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】ＷＯ２０１２／１５３５５５
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の入力装置では、原則として行列Ａの逆行列を算出して厳密に計算を行うので、ノイズ等の外乱を受けた場合に、本来はプラスの値のみを取る荷重がマイナスになるなどの誤った解が算出され、指の位置や動きを誤検出するという不利益がある。また、３つの押圧点が直線状に並んだときのように逆行列が存在しない場合には、計算上の押圧点を意図的にずらして逆行列を作成するので、荷重を正確に算出できないという不利益がある。また、押圧点が４つ以上になると、逆行列を算出する時間が著しく長くなるという不利益がある。【０００６】
本発明はかかる事情に鑑みてなされたものであり、その目的は、少ない計算量で押圧位置の荷重を正確に算出できる入力装置、荷重算出方法及び荷重算出プログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明は、複数の操作体に押圧される操作面と、操作面を押圧する複数の操作体の各押圧位置を検出する位置センサと、複数の操作体から操作面に加わる荷重を異なる位置で検出値として各々検出する複数の荷重センサと、複数の押圧位置の各々に加わる荷重を表す押圧点荷重を、複数の押圧位置と複数の検出値とに基づいて算出する荷重算出部と、を備え、荷重算出部が、１回以上の算出ループを実行することにより複数の押圧点荷重を算出し、荷重算出部が、１回目の算出ループにおいて、複数の押圧位置の各々に対応した初期押圧点荷重として所定の値を使用し、算出ループが、複数の初期押圧点荷重と複数の押圧位置との対応に従って複数の初期押圧点荷重を複数の押圧位置に加えたと仮定した場合に複数の荷重センサで検出される荷重を表す複数の算出値を算出することと、複数の荷重センサの各々について、算出値と検出値との比較に基づいた比較値を算出することと、複数の押圧位置の各々について、初期押圧点荷重を補正する補正値を比較値と押圧位置とに基づいて算出することと、複数の押圧位置の各々について、補正値に基づいて初期押圧点荷重を補正することにより押圧点荷重を算出することと、を含み、荷重算出部が、複数の押圧位置の各々について、算出ループにおいて算出された押圧点荷重を、次回の算出ループにおける初期押圧点荷重として使用する、入力装置である。【０００８】
この構成によれば、荷重算出部が算出ループにおいて、複数の荷重センサの各々について、初期押圧点荷重から算出した算出値と検出値との比較に基づいた比較値を算出し、比較値と押圧位置とに基づいて補正値を算出し、補正値に基づいて初期押圧点荷重を補正することにより押圧点荷重を算出するので、やみくもに初期押圧点荷重を選択する場合に比べると、少ない計算量で押圧点荷重を実際の値に近づけやすい。すなわち、仮に設定した初期押圧点荷重を出発点として近似計算を行うことで、厳密な計算を行う場合より少ない計算量としながら、算出値と検出値とのずれを考慮することで押圧位置の荷重を正確に算出できる。【０００９】
好適には本発明の入力装置において、複数の算出値を算出することが、荷重分散係数に基づいて複数の算出値を算出することを含み、荷重分散係数の各々が、複数の押圧位置のうちの１つと複数の荷重センサのうちの１つとの異なる組み合わせに対応し、荷重分散係数の各々が、１つの組み合わせを構成する押圧位置に加わる押圧点荷重のうち１つの組み合わせを構成する荷重センサで検出される荷重の割合を表し、複数の荷重センサの各々について、比較値を算出することが、複数の荷重センサの各々について、検出値を算出値で除算することを含み、１つの押圧位置に対応するすべての荷重分散係数を、１群の荷重分散係数と呼ぶとき、１つの押圧位置に対応する補正値を算出することが、複数の荷重センサの各々について、１つの押圧位置に対応する１群の荷重分散係数に含まれる荷重分散係数と比較値とを乗算した値の和を補正値として算出することを含み、複数の押圧位置の各々について、押圧点荷重を算出することが、複数の押圧位置の各々について、補正値と初期押圧点荷重とを乗算することにより押圧点荷重を算出することを含む。【００１０】
この構成によれば、各押圧位置に加わる押圧点荷重のうち各荷重センサで検出される荷重の割合を表す荷重分散係数に基づいて、算出値と補正値とを算出するので、操作面の実際の物理的な動作を反映して正確に押圧点荷重を算出することができる。【００１１】
好適には本発明の入力装置において、４つの荷重センサを備え、操作面が、平面であり、操作面上の位置が、第１方向の第１座標と第１方向に直交する第２方向の第２座標とにより表され、４つの荷重センサの各々が、操作面上の一点に対応付けられ、４つの荷重センサに対応する操作面上の４つの一点が、第１方向に沿った２辺と第２方向に沿った２辺とを持つ長方形の頂点に配置されており、４つの荷重センサの各々が、一点付近で操作面に直交する方向に沿って操作面に加わる検出値を検出し、１つの組み合わせに対応した荷重分散係数が、第１値と第２値との乗算により算出される値であり、第１値が、第１方向における長方形の第１幅から、１つの組み合わせを構成する荷重センサの第１座標と、１つの組み合わせを構成する押圧位置の第１座標との差の大きさを引いた値を、第１幅で除算した値であり、第２値が、第２方向における長方形の第２幅から、１つの組み合わせを構成する荷重センサの第２座標と、１つの組み合わせを構成する押圧位置の第２座標との差の大きさを引いた値を、第２幅で除算した値である。【００１２】
この構成によれば、荷重センサの位置と押圧位置とに基づいて荷重分散係数が算出されるので、実際の物理的な位置関係を反映して正確に押圧点荷重を算出することができる。【００１３】
好適には本発明の入力装置において、押圧位置の数が、ｎと表され、ｎ個の押圧点荷重を要素とするｎ行１列の行列が、行列Ｚと表され、ｎ個の初期押圧点荷重を要素とするｎ行１列の行列が、行列Ｚ０と表され、ｎ個の補正値を要素とするｎ行１列の行列が、行列ＺＣと表され、行列Ｚと行列Ｚ０と行列ＺＣとにおいて、同じ行の要素が、同じ押圧位置に対応し、荷重センサの数が、ｍと表され、ｍ個の検出値を要素とするｍ行１列の行列が、行列Ｓと表され、ｍ個の算出値を要素とするｍ行１列の行列が、行列Ｓ０と表され、ｍ個の比較値を要素とするｍ行１列の行列が、行列ＳＣと表され、行列Ｓと行列Ｓ０と行列ＳＣとにおいて、同じ行の要素が、同じ荷重センサに対応し、ｐが、１以上ｎ以下の整数である、かつ、ｋが、１以上ｍ以下の整数である、としたとき、荷重算出部が、荷重分散係数を要素とするｍ行ｎ列の係数行列Ａと係数行列Ａの転置行列ＡＴとを算出し、係数行列Ａと行列Ｓとにおいて、同じ行の要素が、同じ荷重センサに対応し、転置行列ＡＴと行列Ｚとにおいて、同じ行の要素が、同じ押圧位置に対応し、すべてのｋとすべてのｐとについて、係数行列Ａのｋ行ｐ列の要素が、ｐ列に対応する押圧位置に加わる押圧点荷重のうち、ｋ行に対応する荷重センサで検出される荷重の割合を表し、複数の算出値を算出することが、Ｓ０＝Ａ・Ｚ０を算出することを含み、複数の荷重センサの各々について、比較値を算出することが、１以上ｍ以下のすべての整数ｋについて、行列Ｓのｋ行目の要素を行列Ｓ０のｋ行目の要素で割った値を行列ＳＣのｋ行目の要素とすることを含み、複数の押圧位置の各々について、補正値を算出することが、ＺＣ＝ＡＴ・ＳＣを算出することを含み、複数の押圧位置の各々について、初期押圧点荷重を補正することにより押圧点荷重を算出することが、１以上ｎ以下のすべての整数ｐについて、行列Ｚ０のｐ行目の要素に行列ＺＣのｐ行目の要素を乗じた値を行列Ｚのｐ行目の要素とすることを含む。【００１４】
この構成によれば、逆行列を使用しない近似計算が可能であるため、従来のように逆行列を厳密に計算する方法に比べて少ない計算量で押圧点荷重を正確に算出できる。また、押圧位置が１直線に並んだ場合のように、従来なら逆行列が算出できない場合でも、本構成では逆行列を使用しないので押圧点荷重を正確に算出できる。【００１５】
好適には本発明の入力装置において、荷重算出部が、１回目の算出ループにおいて、複数の押圧位置の各々に対応した初期押圧点荷重として所定の正値を使用する。【００１６】
この構成によれば、１回目の算出ループにおいて、複数の押圧位置の各々に対応した初期押圧点荷重として所定の正値を使用するので、検出値が正であれば解が必ず正となり、押圧面に負の圧力が加わる場合に得られる解のような明らかに間違った解を排除できる。【００１７】
好適には本発明の入力装置において、荷重算出部が、算出ループを複数回繰り返す。【００１８】
この構成によれば、算出ループを複数回繰り返すので、初期押圧点荷重を徐々に実際の押圧点荷重に近づけることができるので、より正確に押圧点荷重を算出することができる。【００１９】
好適には本発明の入力装置において、荷重算出部は、算出ループを実行する前の初期押圧点荷重と、算出ループにより算出された押圧点荷重との差の絶対値が、所定値より小さいことに応答して、算出ループの繰り返しを終了する。【００２０】
この構成によれば、算出ループを実行する前の初期押圧点荷重と算出ループにより算出された押圧点荷重との差の絶対値が所定値より小さいことに応答して、前記算出ループの繰り返しを終了するので、算出ループの繰返し回数で終了を判定する場合に比べて、最終的な計算結果の精度を均一にすることができる。また、算出ループの繰返し回数で終了を判定する場合には、途中で目標とする精度に達していても、不要な算出ループが繰り返されるが、本実施形態によれば、目標とする精度に達すれば、迅速に処理を終了することができる。【００２１】
好適には本発明の入力装置において、複数の押圧位置の各々について、押圧点荷重を算出することは、複数の押圧位置の各々について、補正値と１との差の絶対値が、所定値を越えている場合、補正値を所定値未満の補正係数分１に近づけた値と初期押圧点荷重とを乗算することにより押圧点荷重を算出することと、補正値と１との差の絶対値が、所定値以下である場合、補正値と初期押圧点荷重とを乗算することにより押圧点荷重を算出することと、を含む。【００２２】
この構成によれば、補正値が１から所定範囲内にない場合に補正係数分１に近づけるので、補正係数を使用しない場合に比べて収束を速めることができる。【００２３】
本発明は、複数の操作体に押圧される操作面と、操作面を押圧する複数の操作体の各押圧位置を検出する位置センサと、複数の操作体から操作面に加わる荷重を異なる位置で検出値として各々検出する複数の荷重センサと、複数の押圧位置の各々に加わる荷重を表す押圧点荷重を、複数の押圧位置と複数の検出値とに基づいて算出する荷重算出部とを備える入力装置により実行される荷重算出方法であって、荷重算出部により、１回以上の算出ループを実行することにより複数の押圧点荷重を算出することと、荷重算出部により、１回目の算出ループにおいて、複数の押圧位置の各々に対応した初期押圧点荷重として所定の値を使用することと、荷重算出部により、複数の押圧位置の各々について、算出ループにおいて算出された押圧点荷重を、次回の算出ループにおける初期押圧点荷重として使用することと、を含み、算出ループが、複数の初期押圧点荷重と複数の押圧位置との対応に従って複数の初期押圧点荷重を複数の押圧位置に加えたと仮定した場合に複数の荷重センサで検出される荷重を表す複数の算出値を算出することと、複数の荷重センサの各々について、算出値と検出値との比較に基づいた比較値を算出することと、複数の押圧位置の各々について、初期押圧点荷重を補正する補正値を比較値と押圧位置とに基づいて算出することと、複数の押圧位置の各々について、補正値に基づいて初期押圧点荷重を補正することにより押圧点荷重を算出することと、を有する、荷重算出方法である。【００２４】
本発明は、コンピュータに上記の荷重算出方法を実行させる荷重算出プログラムである。
【発明の効果】
【００２５】
本発明によれば、少ない計算量で正確な荷重を出力できる。
【図面の簡単な説明】
【００２６】
【図１】本発明の第１実施形態の入力装置の概略構成図である。
【図２】荷重算出方法を説明するためのフローチャートである。
【図３】第１実施形態の第１実施例における、算出ループの繰返し回数と押圧点荷重との関係を示すグラフである。
【図４】第１実施形態の第２実施例において、ノイズの影響がない場合の押圧位置の変化と押圧点荷重との関係を示すグラフである。
【図５】第１実施形態の第２実施例において、ノイズの影響がある場合の押圧位置の変化と押圧点荷重との関係を示すグラフである。
【図６】比較例において、ノイズの影響がない場合の押圧位置の変化と押圧点荷重との関係を示すグラフである。
【図７】比較例において、ノイズの影響がある場合の押圧位置の変化と押圧点荷重との関係を示すグラフである。
【図８】第１実施形態の第３実施例と第４実施例とにおける押圧位置を示す図である。
【図９】第１実施形態の第５実施例における押圧位置を示す図である。
【図１０】第２実施形態の荷重算出方法を説明するためのフローチャートである。
【図１１】第３実施形態の荷重算出方法を説明するためのフローチャートである。
【図１２】第３実施形態と第１実施形態とにおける、算出ループの繰返し回数と押圧点荷重との関係を示すグラフである。
【発明を実施するための形態】
【００２７】
（第１実施形態の入力装置の全体構成）
以下、本発明の第１実施形態に係る入力装置について説明する。図１は、本実施形態に係る入力装置１００の概略構成図である。入力装置１００は、パソコンなどの外部機器に搭載されて、複数の操作体（例えば、人間の指、操作用のペンなど）が触れた位置と荷重とを検出する。
【００２８】
本明細書において、互いに直交するｘ方向とｙ方向とを規定する。これらの方向は、相対的な位置関係を説明するために便宜上規定するのであって、実際の使用時の方向を限定するわけではない。構成要素の形状は、「略」という記載があるかないかにかかわらず、本明細書で開示された実施形態の技術思想が実現される限り、記載された表現に基づく厳密な幾何学的な形状に限定されない。
【００２９】
図１に示すように、入力装置１００は、ｘｙ平面に平行に広がる平板状の操作板１１０と、操作板１１０に触れた操作体の位置を検出する位置センサ１２０と、操作板１１０に加わる荷重を検出する第１荷重センサ１３０−１〜第４荷重センサ１３０−４（以下、区別せずに荷重センサ１３０と呼ぶ場合がある。）と、記憶装置１４０と、演算処理装置１５０とを含む。
【００３０】
（操作板）
操作板１１０は、ｘｙ平面に平行な操作面１１１を有し、ｘｙ平面に直交する方向にわずかな厚みをもつ平板状の直方体である。操作面１１１は、ｘｙ平面に直交する方向に見たとき、ｘ方向とｙ方向とに沿う４つの辺をもつ長方形である。操作面１１１は、複数の操作体に押圧される部分であり、ほぼ撓まずにｘｙ平面に直交する方向に、移動する。操作面１１１のｘ方向の幅をＷ（本実施形態では、２４３２）と表し、操作面１１１のｙ方向の幅をＨ（本実施形態では、１２８０）と表す。
【００３１】
（位置センサ）
位置センサ１２０は、操作面１１１の反対側で操作板１１０に近接している。位置センサ１２０は、操作面１１１を押圧する複数の操作体の各押圧位置１６０を検出する。位置センサ１２０は、ｘ方向に延びた電極とｙ方向に延びた電極との交差部分の静電容量の変化に基づいて押圧位置１６０を検出する。位置センサ１２０は、他の原理で押圧位置１６０を検出するものであってもよい。
【００３２】
例えば、位置センサ１２０は、３つの操作体に押圧された第１押圧位置１６０−１、第２押圧位置１６０−２、及び第３押圧位置１６０−３（区別せずに押圧位置１６０と呼ぶ場合がある。）を検出する。押圧位置１６０は、３つより多くても少なくてもよい。押圧位置１６０はｘ座標とｙ座標により表される。
【００３３】
（荷重センサ）
荷重センサ１３０は、操作面１１１上の一点に対応付けられており、複数の操作体から操作面１１１に加わる荷重を異なる位置で検出値として各々検出する。４つの荷重センサ１３０に対応する操作面１１１上の４つの一点が、ｘ方向に沿った２辺とｙ方向に沿った２辺とを持つ長方形の頂点、すなわち操作面１１１の四隅に配置されている。荷重センサ１３０は、操作面１１１の反対側に位置し、ｘｙ平面に直交する方向の荷重を検出する。荷重センサ１３０は、図示しない弾性部材を有する。操作面１１１が操作体に押圧されてｘｙ平面に直交する方向に移動すると弾性部材が弾性変形し、操作体が操作面１１１から離れると、弾性部材の弾性力により操作板１１０が元の位置に戻る。
【００３４】
荷重センサ１３０は、荷重により変形する導電ゴムと電極との接触面積の変化に基づいて荷重を検出する。荷重センサ１３０は、他の原理で荷重を検出するものであってもよい。荷重センサ１３０は、押圧位置１６０の荷重を直接検出するわけではない。操作板１１０がｘｙ平面に垂直な方向に押圧されたときに、４つの荷重センサ１３０が、分担して操作板１１０からの荷重を検出する。本実施形態では、荷重センサ１３０は、定常位置にある操作板１１０が一方向に押圧されたときの荷重を正の値で検出する。正常に動作しているとき、検出値は、負にならない。
【００３５】
（記憶装置）
記憶装置１４０は、荷重算出プログラム１４１を記憶する。荷重算出プログラム１４１は、演算処理装置１５０によって読み出されて、演算処理装置１５０に荷重算出方法の一部を行うための機能、及び他の機能を実装させる。演算処理装置１５０が種々の機能を実行するとき、記憶装置１４０は、演算処理装置１５０に制御されて、適宜必要な情報を記憶する。記憶装置１４０は、非一時的な有形の記憶媒体である。記憶装置１４０は、ＲＯＭ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）及びＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）を含む。記憶装置１４０は、揮発性または不揮発性の記憶媒体である。記憶装置１４０は、取り外し可能であってもよく、取り外し不能であってもよい。
【００３６】
（演算処理装置）
演算処理装置１５０は、記憶装置１４０に記憶された荷重算出プログラム１４１を読み出して実行することにより、荷重算出部１５１として機能する。本実施形態の演算処理装置１５０は、汎用コンピュータであるが、特定用途向け集積回路（ＡＳＩＣ；ａｐｐｌｉｃａｔｉｏｎ  ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔｓ）であってもよく、本実施形態で説明される各機能を実装可能な他の回路であってもよい。
【００３７】
（荷重算出部）
荷重算出部１５１は、荷重算出方法を実行することにより、複数の押圧位置１６０の各々に加わる荷重を表す押圧点荷重を、複数の押圧位置１６０と複数の検出値とに基づいて算出する。
【００３８】
（荷重算出方法）
図２は、荷重算出方法を説明するためのフローチャートである。以下、図１の構成と図２のフローチャートを参照しながら、荷重算出部１５１が実行する荷重算出方法について説明する。一般的な説明と併せて、第１実施例として相互に関連する具体的な数値を例示するが、本実施形態は、例示した数値に限られるわけではない。
【００３９】
操作面１１１内の位置は、（ｘ座標、ｙ座標）と表す。第１荷重センサ１３０−１の座標は、（０、０）である。第２荷重センサ１３０−２の座標は、（０、Ｈ）である。第３荷重センサ１３０−３の座標は、（Ｗ、０）である。第３荷重センサ１３０−３の座標は、（Ｗ、Ｈ）である。荷重センサ１３０の数は、予め決まっており、ｍと表される。第１実施例では、ｍ＝４とする。
【００４０】
ステップ２１０において、荷重算出部１５１は、位置センサ１２０から複数の押圧位置１６０を取得し、複数の押圧位置１６０の数を操作体の数として取得する。押圧位置１６０は、操作面１１１内の座標として取得される。図１の例では、第１押圧位置１６０−１の座標を（ｘ１、ｙ１）とする。第２押圧位置１６０−２の座標を（ｘ２、ｙ２）とする。第３押圧位置１６０−３の座標を（ｘ３、ｙ３）とする。押圧位置１６０の数、すなわち操作体の数は、ｎと表される。
【００４１】
第１実施例において、押圧位置１６０の数は３である。第１押圧位置１６０−１の座標は（１１８４、３５３）である。第２押圧位置１６０−２の座標は（２０３３、５８６）である。第３押圧位置１６０−３の座標は（４０９、１１４８）である。
【００４２】
ステップ２１０の次にステップ２１２が実行される。ステップ２１２において、荷重算出部１５１は、ｍ個の検出値を要素とするｍ行１列の検出値行列Ｓを生成する。検出値行列Ｓは、式１のように構成される。検出値行列Ｓの行は、上から順に第１荷重センサ１３０−１〜第４荷重センサ１３０−４に対応する。式１の数値は、第１実施例の値である。
【数１】
0006608535.tif 000002
【００４３】
ステップ２１２の次にステップ２１４が実行される。ステップ２１４において、荷重算出部１５１は、後述の荷重分散係数を要素とするｍ行ｎ列の係数行列Ａと、係数行列Ａの転置行列ＡＴとを算出する。係数行列Ａは、例えば、式２のように構成される。
【数２】
0006608535.tif 000003
【００４４】
係数行列Ａの行は、上から順に第１荷重センサ１３０−１〜第４荷重センサ１３０−４に対応する。係数行列Ａの列は、左から順に第１押圧位置１６０−１〜第３押圧位置１６０−３に対応する。すなわち、ｍ×ｎ個の荷重分散係数の各々は、複数の押圧位置１６０のうちの１つと複数の荷重センサ１３０のうちの１つとの異なる組み合わせに対応する。
【００４５】
１以上ｍ以下のすべての整数ｋと、１以上ｎ以下のすべての整数ｐとについて、係数行列Ａのｋ行ｐ列の要素（すなわち、荷重分散係数）は、ｐ列に対応する押圧位置１６０に加わる押圧点荷重のうち、ｋ行に対応する荷重センサ１３０で検出される荷重の割合を表す。すなわち、荷重分散係数の各々は、１つの組み合わせを構成する押圧位置１６０に加わる押圧点荷重のうち、同じ１つの組み合わせを構成する荷重センサ１３０で検出される荷重の割合を表す。
【００４６】
荷重分散係数は、ｘ方向の全幅Ｗから、荷重センサ１３０のｘ座標と押圧位置１６０のｘ座標との差の大きさを引いた値を、ｘ方向の全幅Ｗで除算した第１値と、ｙ方向の全幅Ｈから、荷重センサ１３０のｙ座標と押圧位置１６０のｙ座標との差の大きさを引いた値を、ｙ方向の全幅Ｈで除算した第２値との乗算により算出される。
【００４７】
式３は、第１実施例の数値を使用した係数行列Ａである。
【数３】
0006608535.tif 000004
【００４８】
ステップ２１４の次にステップ２１６が実行される。ステップ２１６において、荷重算出部１５１は、後述するｎ個の初期押圧点荷重を要素とするｎ行１列の初期押圧点荷重行列Ｚ０を作成する。初期押圧点荷重行列Ｚ０は、式４のように構成される。初期押圧点荷重行列Ｚ０の行は、上から順に第１押圧位置１６０−１〜第３押圧位置１６０−３に対応する。式４の数値は、第１実施例の値である。
【数４】
0006608535.tif 000005
【００４９】
初期押圧点荷重は、算出ループを実行する前の押圧点荷重として、押圧位置１６０の各々に対して仮に設定される荷重を表す。荷重算出部１５１は、後述の１回目の算出ループにおいて、複数の押圧位置１６０の各々に対応した初期押圧点荷重として所定の値を使用する。所定の値は、正値である。第１実施例において、所定の値はすべて１である。
【００５０】
ステップ２１６の次にステップ２１８が実行される。以下に説明するステップ２１８〜ステップ２２４を算出ループと呼ぶ。荷重算出部１５１は、１回以上の算出ループを実行することにより複数の押圧点荷重を算出する。荷重算出部１５１は、算出ループを複数回繰り返してよい。
【００５１】
ステップ２１８において、荷重算出部１５１は、複数の初期押圧点荷重と複数の押圧位置１６０との対応に従って複数の初期押圧点荷重を複数の押圧位置１６０に加えたと仮定した場合に複数の荷重センサ１３０で検出される荷重を表す複数の算出値を算出する。複数の算出値を算出することは、荷重分散係数に基づいて複数の算出値を算出することを含む。
【００５２】
具体的には、複数の算出値を算出することは、ｍ個の算出値を要素とするｍ行１列の算出値行列Ｓ０＝Ａ・Ｚ０を算出することを含む。算出値行列Ｓ０は、式５のように構成される。算出値行列Ｓ０の行は、上から順に第１荷重センサ１３０−１〜第４荷重センサ１３０−４に対応する。式５の値は、式３と式４とを使用した場合の値である。
【数５】
0006608535.tif 000006
【００５３】
ステップ２１８の次にステップ２２０が実行される。ステップ２２０において、荷重算出部１５１は、複数の荷重センサ１３０の各々について、算出値と検出値との比較に基づいた比較値を算出する。複数の荷重センサ１３０の各々について、比較値を算出することが、複数の荷重センサ１３０の各々について、検出値を算出値で除算することを含む。
【００５４】
具体的には、複数の荷重センサ１３０の各々について、比較値を算出することは、ｍ個の比較値を要素とするｍ行１列の比較値行列ＳＣを算出することを含む。比較値行列ＳＣは、式６のように構成される。比較値行列ＳＣの行は、上から順に第１荷重センサ１３０−１〜第４荷重センサ１３０−４に対応する。１以上ｍ以下のすべての整数ｋについて、検出値行列Ｓのｋ行目の要素を算出値行列Ｓ０のｋ行目の要素で割った値を、比較値行列ＳＣのｋ行目の要素とする。式６の値は、式１と式５とを使用した場合の値である。
【数６】
0006608535.tif 000007
【００５５】
ステップ２２０の次にステップ２２２が実行される。ステップ２２２において、荷重算出部１５１は、複数の押圧位置１６０の各々について、初期押圧点荷重を補正する補正値を比較値と押圧位置１６０とに基づいて算出する。１つの押圧位置１６０に対応するすべての荷重分散係数を、１群の荷重分散係数と呼ぶとき、１つの押圧位置１６０に対応する補正値を算出することが、複数の荷重センサ１３０の各々について、１つの押圧位置１６０に対応する１群の荷重分散係数に含まれる荷重分散係数と比較値とを乗算した値の和を補正値として算出することを含む。
【００５６】
具体的には、複数の押圧位置１６０の各々について、補正値を算出することが、ｎ個の補正値を要素とするｎ行１列の補正値行列ＺＣ＝ＡＴ・ＳＣを算出することを含む。補正値行列ＺＣは、式７のように構成される。補正値行列ＺＣの行は、上から順に第１押圧位置１６０−１〜第３押圧位置１６０−３に対応する。式７の値は、式３と式６とを使用した場合の値である。
【数７】
0006608535.tif 000008
【００５７】
ステップ２２２の次にステップ２２４が実行される。ステップ２２４において、荷重算出部１５１は、複数の押圧位置１６０の各々について、補正値に基づいて初期押圧点荷重を補正することにより押圧点荷重を算出する。複数の押圧位置１６０の各々について、押圧点荷重を算出することが、複数の押圧位置１６０の各々について、補正値と初期押圧点荷重とを乗算することにより押圧点荷重を算出することを含む。
【００５８】
具体的には、複数の押圧位置１６０の各々について、初期押圧点荷重を補正することにより押圧点荷重を算出することは、ｎ個の押圧点荷重を要素とするｎ行１列の押圧点荷重行列Ｚを算出することを含む。押圧点荷重行列Ｚは、式８のように構成される。押圧点荷重行列Ｚの行は、上から順に第１押圧位置１６０−１〜第３押圧位置１６０−３に対応する。１以上ｎ以下のすべての整数ｐについて、初期押圧点荷重行列Ｚ０のｐ行目の要素に補正値行列ＺＣのｐ行目の要素を乗じた値を押圧点荷重行列Ｚのｐ行目の要素とすることとを含む。式８の値は、式４と式７とを使用した場合の値である。
【数８】
0006608535.tif 000009
【００５９】
ステップ２２４の次にステップ２２６が実行される。ステップ２２６において、荷重算出部１５１は、算出ループを所定回数実行したか判定する。所定回数は、例えば、１０回である。荷重算出部１５１は、算出ループを所定回数実行したと判定した場合、荷重算出方法を終了する。荷重算出部１５１は、算出ループを所定回数実行していないと判定した場合、ステップ２２８に進む。
【００６０】
ステップ２２８において、荷重算出部１５１は、複数の押圧位置１６０の各々について、算出ループにおいて算出された押圧点荷重を、次回の算出ループにおける初期押圧点荷重として使用する。具体的には、式４の値の代わりに式８の値を使用する。ステップ２２８の次に再びステップ２１８が実行される。算出ループが複数回実施されると、比較値が徐々に１に近づくので、押圧点荷重が徐々に実際の値に近づいていることがわかる。
【００６１】
荷重算出部１５１は、他の例において、実行回数を制限するのではなく、算出ループを、所定の時間繰り返してもよい。荷重算出部１５１は、他の例において、実行回数を制限するのではなく、押圧点荷重の変化量が閾値より小さくなるまで、算出ループを繰り返してもよい。
【００６２】
なお、押圧点荷重行列Ｚ（式８）と初期押圧点荷重行列Ｚ０（式４）と補正値行列ＺＣ（式７）とにおいて、同じ行の要素が、同じ押圧位置１６０に対応する。検出値行列Ｓ（式１）と算出値行列Ｓ０（式５）と比較値行列ＳＣ（式６）とにおいて、同じ行の要素が、同じ荷重センサ１３０に対応する。転置行列ＡＴ（式７）と押圧点荷重行列Ｚ（式８）とにおいて、同じ行の要素が、同じ押圧位置１６０に対応する。係数行列Ａ（式３）と検出値行列Ｓ（式１）とにおいて、同じ行の要素が、同じ荷重センサ１３０に対応する。
【００６３】
（第１実施形態の第１実施例の結果）
図３は、算出ループの繰返し回数と押圧点荷重との関係を示すグラフである。数値は、上述の荷重算出方法で説明した第１実施例の数値を使用した。グラフ３０１は、第１押圧位置１６０−１の押圧点荷重を示す。グラフ３０２は、第２押圧位置１６０−２の押圧点荷重を示す。グラフ３０３は、第３押圧位置１６０−３の押圧点荷重を示す。グラフ３０１、グラフ３０２、及びグラフ３０３に示すように、１回目で収束値に近い押圧点荷重が得られ、その後、大きく変動せずに押圧点荷重が収束する。
【００６４】
（第１実施形態の第２実施例）
【００６５】
図４〜図７は、３つの操作体の押圧位置の変化と押圧点荷重との関係を示す。横軸は押圧位置１６０の違いを示す。縦軸は押圧点荷重を示す。３つの操作体が加える荷重は、互いに異なるが、位置にかかわらず一定である。図４及び図５は、本実施形態の第２実施例である。図６及び図７は、比較例である。比較例では、係数行列Ａから導出した従来の疑似逆行列（すなわち、逆行列そのもの、または係数行列Ａから逆行列を計算できるように逆行列に似せて作成された行列）を使用して押圧点荷重を厳密に求めた。以下、ノイズとは、位置センサ１２０及び荷重センサ１３０の検出値及び押圧位置に加わる変動量である。例えば、ノイズは、強い電磁界ノイズ、静電気、操作に無関係な応力などである。また、例えば、ノイズは、温度、湿度、または電圧の変化により発生する。
【００６６】
図４は、本実施形態の第２実施例において、ノイズの影響がない場合に対応する。グラフ３１１、グラフ３１２、及びグラフ３１３は、異なる操作体に対応する。図５は、本実施形態の第２実施例において、２０ｄＢのノイズの影響がある場合に対応する。グラフ３２１、グラフ３２２、及びグラフ３２３は、異なる操作体に対応する。図４及び図５からわかるように、本実施形態の場合、ノイズの有無にかかわらず、押圧点荷重に対するノイズの影響がほとんどなかった。
【００６７】
図６は、比較例において、ノイズの影響がない場合に対応する。グラフ３３１、グラフ３３２、及びグラフ３３３は、異なる操作体に対応する。比較例の場合、ノイズの影響がなければ、押圧点荷重に対するノイズが極めて小さかった。図７は、比較例において、２０ｄＢのノイズの影響がある場合に対応する。グラフ３４１、グラフ３４２、及びグラフ３４３は、異なる操作体に対応する。比較例の場合、ノイズの影響があると、押圧点荷重に対するノイズが極めて大きかった。
【００６８】
（第１実施形態の第３実施例）
次に、第１実施形態の第３実施例について説明する。図８は、第３実施例における押圧位置を示す。押圧位置の数は３であった。第１押圧位置３６０−１の座標は（１２００、３００）であった。第２押圧位置３６０−２の座標は（７００、７００）であった。第３押圧位置３６０−３の座標は（１６００、７００）であった。
【００６９】
検出値行列Ｓは、式９のようになった。検出値行列Ｓの行は、上から順に図１に示す第１荷重センサ１３０−１〜第４荷重センサ１３０−４に対応する。係数行列Ａは、前述と同様の計算で求めた。
【数９】
0006608535.tif 000010
【００７０】
従来のように、係数行列Ａの逆行列を使用して、Ｚ＝Ａ−１・Ｓの計算をすると、式１０のように押圧点荷重行列Ｚが算出された。押圧点荷重行列Ｚの行は、上から順に第１押圧位置３６０−１〜第３押圧位置３６０−３に対応する。当然、検算のために式１０を使用してＳ＝Ａ・Ｚを計算すると、式９がそのまま得られる。すなわち、結果の精度は高い。しかし、従来の方法では、逆行列を算出するので、計算量は非常に多い。
【数１０】
0006608535.tif 000011
【００７１】
本実施形態の荷重算出方法により複数回の算出ループを実行すると、式１１のように押圧点荷重行列Ｚが算出された。押圧点荷重行列Ｚの行は、上から順に第１押圧位置３６０−１〜第３押圧位置３６０−３に対応する。
【数１１】
0006608535.tif 000012
【００７２】
検算のために式１１を使用してＳ＝Ａ・Ｚを計算すると、式１２が得られた。式９に対して若干の誤差が見られるものの、式９に近いことから、式１１の精度が高いことがわかる。
【数１２】
0006608535.tif 000013
【００７３】
（第１実施形態の第４実施例）
次に、第１実施形態の第４実施例について説明する。第４実施例における押圧位置と数は第３実施例と同じであった。本実施例は、理想的には第３実施例の検出値行列Ｓが得られる状況で、検出値行列Ｓに１０％のノイズが含まれる場合に相当する。
【００７４】
検出値行列Ｓは、式１３のようになった。検出値行列Ｓの行は、上から順に図１に示す第１荷重センサ１３０−１〜第４荷重センサ１３０−４に対応する。式９に示す第３実施例の検出値行列Ｓと比べると、１０％のずれが見られた。係数行列Ａは、前述と同様の計算で求めた。
【数１３】
0006608535.tif 000014
【００７５】
従来のように、係数行列Ａの逆行列を使用して、Ｚ＝Ａ−１・Ｓの計算をすると、式１４のように押圧点荷重行列Ｚが算出された。押圧点荷重行列Ｚの行は、上から順に第１押圧位置３６０−１〜第３押圧位置３６０−３に対応する。当然、検算のために式１４を使用してＳ＝Ａ・Ｚを計算すると、式１３がそのまま得られる。すなわち、式１４が解であることは間違いがない。しかし、ノイズの無い場合の押圧点荷重行列Ｚ（すなわち、第３実施例における式１０）から大きくずれている。また、要素に負値が含まれることから、算出結果が異常であることがわかる。つまり、従来の方法では、ノイズが算出結果に大きく影響していることがわかる。
【数１４】
0006608535.tif 000015
【００７６】
本実施形態の荷重算出方法により複数回の算出ループを実行すると、式１５のように押圧点荷重行列Ｚが算出された。押圧点荷重行列Ｚの行は、上から順に第１押圧位置３６０−１〜第３押圧位置３６０−３に対応する。従来に比べて、ノイズの無い場合の押圧点荷重行列Ｚ（すなわち、第３実施例における式１０）に近い。また、要素は全て正値であることから、算出結果が正常であることがわかる。
【数１５】
0006608535.tif 000016
【００７７】
検算のために式１５を使用してＳ＝Ａ・Ｚを計算すると、式１６が得られた。式１３に対して若干の誤差が見られるものの、式１３に近いことから、式１５の精度が高いことがわかる。すなわち、本実施形態の方が、従来よりもノイズの影響を受けにくい。
【数１６】
0006608535.tif 000017
【００７８】
（第１実施形態の第５実施例）
次に、第１実施形態の第５実施例について説明する。図９は、第５実施例における押圧位置を示す。押圧位置の数は３であった。第１押圧位置３６１−１の座標は（３００、３００）であった。第２押圧位置３６１−２の座標は（８００、３００）であった。第３押圧位置３６１−３の座標は（１３００、３００）であった。すなわち、押圧位置が一直線に並んでいた。
【００７９】
検出値行列Ｓは、式１７のようになった。検出値行列Ｓの行は、上から順に図１に示す第１荷重センサ１３０−１〜第４荷重センサ１３０−４に対応する。係数行列Ａは、前述と同様の計算で求めた。
【数１７】
0006608535.tif 000018
【００８０】
従来のように、係数行列Ａの逆行列を使用して、Ｚ＝Ａ−１・Ｓの計算をすると、式１８のように押圧点荷重行列Ｚが算出された。ただし、逆行列そのものは存在しないので、逆行列を計算できるように係数行列Ａを操作した。押圧点荷重行列Ｚの行は、上から順に第１押圧位置３６１−１〜第３押圧位置３６１−３に対応する。要素に負値が含まれることから、算出結果が異常であることがわかる。つまり、従来の方法では、係数行列の変更が算出結果に大きく影響していることがわかる。
【数１８】
0006608535.tif 000019
【００８１】
検算のために式１８を使用してＳ＝Ａ・Ｚを計算すると、式１９が得られた。式１８を算出するため、係数行列Ａを変更して逆行列を算出したので、式１９は、式１７から大きくずれた。すなわち、押圧位置が直線に並ぶとき、従来の方法では、係数行列の変更が算出結果に大きく影響していることがわかる。
【数１９】
0006608535.tif 000020
【００８２】
本実施形態の荷重算出方法により複数回の算出ループを実行すると、式２０のように押圧点荷重行列Ｚが算出された。押圧点荷重行列Ｚの行は、上から順に第１押圧位置３６１−１〜第３押圧位置３６１−３に対応する。要素が全て正値であることから、算出結果が正常であることがわかる。
【数２０】
0006608535.tif 000021
【００８３】
検算のために式２０を使用してＳ＝Ａ・Ｚを計算すると、式２１が得られた。式１７に対して若干の誤差が見られるものの、式１７に近いことから、式２０の精度が高いことがわかる。すなわち、本実施形態の場合、押圧位置が直線に並んでいても高精度に押圧点荷重行列Ｚを算出できる。また、本実施形態は、従来のように、押圧位置が直線に並んでいる場合に係数行列Ａを変更するといった特異な操作を必要としないので、処理が簡単である。
【数２１】
0006608535.tif 000022
【００８４】
（まとめ）
本実施形態によれば、荷重算出部１５１が算出ループにおいて、複数の荷重センサ１３０の各々について、初期押圧点荷重から算出した算出値と検出値との比較に基づいた比較値を算出し、比較値と押圧位置１６０とに基づいて補正値を算出し、補正値に基づいて初期押圧点荷重を補正することにより押圧点荷重を算出するので、やみくもに初期押圧点荷重を選択する場合に比べると、少ない計算量で押圧点荷重を実際の値に近づけやすい。すなわち、仮に設定した初期押圧点荷重を出発点として近似計算を行うことで、厳密な計算を行う場合より少ない計算量としながら、算出値と検出値とのずれを考慮することで押圧位置１６０の荷重を正確に算出できる。
【００８５】
本実施形態によれば、各押圧位置１６０に加わる押圧点荷重のうち各荷重センサ１３０で検出される荷重の割合を表す荷重分散係数に基づいて、算出値と補正値とを算出するので、操作面の実際の物理的な動作を反映して正確に押圧点荷重を算出することができる。
【００８６】
本実施形態によれば、荷重センサ１３０の位置と押圧位置１６０とに基づいて荷重分散係数が算出されるので、実際の物理的な位置関係を反映して正確に押圧点荷重を算出することができる。
【００８７】
本実施形態によれば、逆行列を使用しない近似計算が可能であるため、従来のように逆行列を厳密に計算する方法に比べて少ない計算量で押圧点荷重を正確に算出できる。また、押圧位置１６０が１直線に並んだ場合のように、従来なら逆行列が算出できない場合でも、本実施形態では逆行列を使用しないので押圧点荷重を正確に算出できる。
【００８８】
本実施形態によれば、１回目の算出ループにおいて、複数の押圧位置１６０の各々に対応した初期押圧点荷重として所定の正値を使用するので、検出値が正であれば解が必ず正となり、押圧面に負の圧力が加わる場合に得られる解のような明らかに間違った解を排除できる。
【００８９】
本実施形態によれば、算出ループを複数回繰り返すので、初期押圧点荷重を徐々に実際の押圧点荷重に近づけることができるので、より正確に押圧点荷重を算出することができる。
【００９０】
（第２実施形態の荷重算出方法）
図１０は、第２実施形態の荷重算出方法を説明するためのフローチャートである。以下、図１の構成と図１０のフローチャートを参照しながら、荷重算出部１５１が実行する第２実施形態の荷重算出方法について説明する。以下、第１実施形態の荷重算出方法と本実施形態の荷重算出方法との相違点を中心に説明する。
【００９１】
図１０に示すステップ４１０〜ステップ４１６は、それぞれ、図２に示すステップ２１０〜ステップ２１６と同じであるので、説明は省略する。
【００９２】
ステップ４１６の次にステップ４１８が実行される。以下に説明するステップ４１８〜ステップ４２６を算出ループと呼ぶ。荷重算出部１５１は、１回以上の算出ループを実行することにより複数の押圧点荷重を算出する。荷重算出部１５１は、算出ループを複数回繰り返してよい。
【００９３】
ステップ４１８において、荷重算出部１５１は、ｎ個の初期押圧点荷重を要素とするｎ行１列の前回押圧点荷重行列ＺＬを作成する。前回押圧点荷重行列ＺＬは、この時点での初期押圧点荷重行列Ｚ０に等しい。前回押圧点荷重行列ＺＬの行は、上から順に第１押圧位置１６０−１〜第３押圧位置１６０−３に対応する。
【００９４】
ステップ４１８の次にステップ４２０が実行される。図１０に示すステップ４２０〜ステップ４２６は、それぞれ、図２に示すステップ２１８〜ステップ２２４と同じであるので、説明は省略する。
【００９５】
ステップ４２６の次にステップ４２８が実行される。ステップ４２８において、荷重算出部１５１は、１以上ｎ以下のすべての整数ｐについて、前回押圧点荷重行列ＺＬのｐ行目の要素と押圧点荷重行列Ｚのｐ行目の要素との差の絶対値が、いずれも既定値より小さいか判定する。荷重算出部１５１は、差の絶対値がいずれも既定値より小さいと判定した場合、荷重算出方法を終了する。荷重算出部１５１は、差の絶対値がいずれかが既定値以上であると判定した場合、ステップ４３０に進む。すなわち、前回押圧点荷重行列ＺＬの要素と算出ループにより算出された押圧点荷重行列Ｚの要素との差の絶対値が小さければ、収束したと判定して荷重算出方法が終わる。
【００９６】
図１０に示すステップ４３０は、図２に示すステップ２２８と同じであるので、説明は省略する。ステップ４３０の次に再びステップ４１８が実行される。すなわち、算出ループが繰り返される。
【００９７】
（まとめ）
本実施形態によれば、算出ループを実行する前の初期押圧点荷重と算出ループにより算出された押圧点荷重との差の絶対値が所定値より小さいことに応答して、前記算出ループの繰り返しを終了するので、算出ループの繰返し回数で終了を判定する場合に比べて、最終的な計算結果の精度を均一にすることができる。また、算出ループの繰返し回数で終了を判定する場合には、途中で目標とする精度に達していても、不要な算出ループが繰り返されるが、本実施形態によれば、目標とする精度に達すれば、迅速に処理を終了することができる。
【００９８】
（第３実施形態の荷重算出方法）
図１１は、第３実施形態の荷重算出方法を説明するためのフローチャートである。以下、図１の構成と図１１のフローチャートを参照しながら、荷重算出部１５１が実行する第３実施形態の荷重算出方法について説明する。以下、第１実施形態の荷重算出方法と本実施形態の荷重算出方法との相違点を中心に説明する。
【００９９】
以下で説明するように、複数の押圧位置の各々について、押圧点荷重を算出することは、複数の押圧位置１６０の各々について、補正値と１との差の絶対値が、所定値を越えている場合、補正値を所定値未満の補正係数分１に近づけた値と初期押圧点荷重とを乗算することにより押圧点荷重を算出することと、補正値と１との差の絶対値が、所定値以下である場合、補正値と初期押圧点荷重とを乗算することにより押圧点荷重を算出することとを含む。
【０１００】
図１１に示すステップ５１０〜ステップ５１６は、それぞれ、図２に示すステップ２１０〜ステップ２１６と同じであるので、説明は省略する。
【０１０１】
ステップ５１６の次にステップ５１８が実行される。以下に説明するステップ５１８〜ステップ５２８を算出ループと呼ぶ。荷重算出部１５１は、１回以上の算出ループを実行することにより複数の押圧点荷重を算出する。荷重算出部１５１は、算出ループを複数回繰り返してよい。
【０１０２】
ステップ５１６の次にステップ５１８が実行される。図１１に示すステップ５１８〜ステップ５２２は、それぞれ、図２に示すステップ２１８〜ステップ２２２と同じであるので、説明は省略する。
【０１０３】
ステップ５２２の次にステップ５２４が実行される。ステップ５２４において、荷重算出部１５１は、補正値行列ＺＣのすべての要素が、所定範囲内であるか判定する。例えば、所定範囲は、０．９７以上かつ１．０３以下である。荷重算出部１５１は、補正値行列ＺＣのすべての要素が、所定範囲内であると判定した場合、ステップ５２８に進む。荷重算出部１５１は、補正値行列ＺＣのいずれかの要素が、所定範囲内にないと判定した場合、ステップ５２６に進む。
【０１０４】
ステップ５２６において、荷重算出部１５１は、補正値行列ＺＣの各要素のうち、所定範囲（ステップ５２４における所定範囲と同じ）内にないものに、加速係数ａを加算する。例えば、要素の値が１００未満の場合の加速係数ａは０．０２５である。要素の値が１００を越える場合の加速係数ａは−０．０２５である。
【０１０５】
ステップ５２６の次にステップ５２８が実行される。図１１に示すステップ５２８〜５３２は、図２に示すステップ２２４〜２２８と同じであるので、説明は省略する。ステップ５３２の次に再びステップ５１８が実行される。すなわち、算出ループが繰り返される。
【０１０６】
図１２は、算出ループの繰返し回数と押圧点荷重との関係を示すグラフである。グラフ５４１、グラフ５４２、及びグラフ５４３は、すべて、加速係数を加算しない場合（第１実施形態の場合）のグラフである。グラフ５５１、グラフ５５２、及びグラフ５５３は、すべて、本実施形態の場合のグラフである。加速係数を使用すること以外の条件は、図３に示す第１実施例の場合と同様とする。グラフ５４１とグラフ５５１とは、第１押圧位置１６０−１の押圧点荷重を示す。グラフ５４２とグラフ５５２とは、第２押圧位置１６０−２の押圧点荷重を示す。グラフ５４３とグラフ５５３とは、第３押圧位置１６０−３の押圧点荷重を示す。グラフ５４１、グラフ５４２、及びグラフ５４３よりも、グラフ５５１、グラフ５５２、及びグラフ５５３のほうが速く収束した。すなわち、本実施形態の加速係数を使用したほうが、速く収束した。
【０１０７】
（まとめ）
本実施形態によれば、補正値が１から所定範囲内にない場合に補正係数分１に近づけるので、補正係数を使用しない場合に比べて収束を速めることができる。
【０１０８】
本発明は上述した実施形態には限定されない。すなわち、当業者は、本発明の技術的範囲またはその均等の範囲内において、上述した実施形態の構成要素に関し、様々な変更、コンビネーション、サブコンビネーション、並びに代替を行ってもよい。
【産業上の利用可能性】
【０１０９】
本発明は、複数の操作体による位置と荷重を検出する入力装置に適用可能である。
【符号の説明】
【０１１０】
１００…入力装置、１１０…操作板、１１１…操作面
１２０…位置センサ、１３０…荷重センサ（１３０−１〜４…第１〜第４荷重センサ）
１４０…記憶装置、１４１…荷重算出プログラム
１５０…演算処理装置、１５１…荷重算出部
１６０…押圧位置（１６０−１〜３…第１〜第３押圧位置）
【図１】
0006608535.tif 000023
【図２】
0006608535.tif 000024
【図３】
0006608535.tif 000025
【図４】
0006608535.tif 000026
【図５】
0006608535.tif 000027
【図６】
0006608535.tif 000028
【図７】
0006608535.tif 000029
【図８】
0006608535.tif 000030
【図９】
0006608535.tif 000031
【図１０】
0006608535.tif 000032
【図１１】
0006608535.tif 000033
【図１２】
0006608535.tif 000034