(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0016】
同様の参照番号が同様の構成要素を示すこれらの図面を参照するに、
図1に図示されているのは、本明細書において説明される1つ以上の実施形態及び態様によるタッチセンシティブディスプレイ100Aである。タッチセンシティブディスプレイ100Aは、多種多様な消費者向け家電製品、例えば無線通信可能な携帯電話機及び他の電子機器、ミュージックプレーヤ、ノートブックコンピュータ、モバイル機器、ゲームコントローラ、コンピュータ「マウス」、電子ブックリーダ、及び他の機器に使用することができる。
【0017】
タッチセンシティブディスプレイ100Aは、ディスプレイ層102と、そしてタッチスクリーン層104(このタッチスクリーン層104は、保護カバー層として動作することもできる)と、を含む。タッチセンシティブディスプレイ100Aは、エアギャップをディスプレイ層102とタッチガラス104との間に含むことができる。
【0018】
タッチスクリーン層104は、ユーザがタッチセンシティブディスプレイ100Aとタッチイベントを通じて対話するために利用することができる表面106を含む。種々のインディシア(indicia:しるし)または1つのインディシアをユーザに対して、表面106に提示する、または表面106を通じて提示することにより、ユーザをこのような対話に誘導することができる。例えば、当該インディシアとして、スクリーン104の表面106のうち、ほんの少しの例として、ユーザ選択、ソフトウェア実行などを表示するために確保されるエリア群を挙げることができる。この記載において後で更に詳細に説明するように、タッチセンシティブディスプレイ100Aは、信号群をスクリーン104から受信して、表面106におけるイベント群の特定位置を含むタッチイベント群を検出する電子回路を含むことができる。
【0019】
タッチスクリーン層104は、ガラス、プラスチックなどのような何れかの適切な透明材料により形成することができる。プラスチックは安価であるが、ガラスは、性能を向上させると考えられる。従って、この記載の残りの部分では、ガラス材料を使用して、タッチスクリーン層104を形成することを前提として説明を進める。一例として、ガラスは、ソーダ石灰系ガラスのような化学強化ガラスとすることができる。1つのこのようなガラスが、イオン交換を利用して硬度を上げたアルカリアルミノケイ酸ガラスである。これらの種類のガラスは多くの場合、Na
2O(ソーダ)、CaO(石灰)、及びSiO
2(シリカ)だけでなく、MgO、Li
2O、K
2O、ZnO、及びZrO
2のような他の幾つかの酸化物から成る組成物である。一旦、イオン交換を利用して硬度を上げると、これらの種類のガラスは、特定の特徴を有するようになり、これらの特徴によって、これらのガラスは、タッチスクリーン用途に関してのみならず、カバーガラス(保護)用途に関しても望ましくなる。タッチスクリーン104としての使用に適するソーダ石灰系ガラスについての調製及び/又は製造に関する具体的な内容に関する更なる詳細については:2007年7月31日出願の米国特許出願第11/888,213号;2009年8月7日出願の米国特許出願第12/537,393号;2009年8月21日出願の米国特許出願第12/545,475号;及び、2009年2月25日出願の米国特許出願第12/392,577号の各明細書のうちの1つ以上の特許文献を参考にすることができ、これらの特許文献の全開示内容を本明細書において参照することにより、当該内容が本明細書に組み込まれる。
【0020】
ディスプレイ層102は、LCDディスプレイ技術などのような公知の電子ディスプレイ技術のうちの何れかのディスプレイ技術を用いて形成することができる。当該ディスプレイは、バックライト機構(図示せず)を含むことができ、このバックライト機構は、光を生成し、そして光を、タッチガラス層104を透過させて、光が、破線矢印で示すように、表面106を略直角に通過するようにする。1つ以上の実施形態では、前述のインディシアをユーザにディスプレイ層102を介して、光を、タッチスクリーン層104を通って投射することにより提示することによりことができる。
【0021】
バックライト機構または別の光源110を利用するかどうかに関係なく、タッチセンシティブディスプレイ100Aは、光を誘導してガラス層に入射させる、そして/またはガラス層を伝搬させる少なくとも1つの光源を含む。ディスプレイ層102にバックライト機構を用いる場合、当該バックライト機構からの光は、タッチガラス層104を略直角に伝搬することになる。光源110を用いる場合、光源110からの光は、タッチガラス層104に、タッチガラス層104の端面を通って入射し、そしてガラス内を導波モード112で伝搬することになる。一例として、光源110は、約400nm〜約650nmの波長領域の光を発光する可視光LED、または約700nm超の波長の光を発光する赤外線LEDのような1つ以上のLEDを含むことができる。
【0022】
ユーザの指のようなオブジェクトがタッチガラス層104の表面106に触れると、タッチガラス層104を通過する光の伝搬が乱されることにより、散乱光エネルギー114を発生する。タッチセンシティブディスプレイ100Aは、ガラス層104に接続され、かつオブジェクトが表面106に触れると散乱光エネルギー114を受信する、または検出するように動作する少なくとも1つの光検出素子116を含む。少なくとも1つの光検出素子116(フォトダイオード、撮像素子、または同様の素子)は、オブジェクトがガラス層104に触れる1つ以上の位置を算出するために十分な散乱光エネルギー114を示す信号群を生成することができる。タッチイベントの位置を算出する方法については、この記載の後の部分で、更に詳細に説明する。
【0023】
高い信号対雑音比を維持して、散乱光114を光検出素子116で正確に検出するためには、入射光112及び/又は散乱光114がタッチガラス層104の端面によって反射されるのを最小限に抑えることが望ましい。この点に関して、かつ
図2A及び2Bを参照するに、タッチセンシティブディスプレイ100A(及び/又は、本明細書における他の実施形態のうちの何れかの実施形態)は更に、このような光反射を低減するように動作する1つ以上の光抑制機構120A及び/又は120Bを含むことができる。
【0024】
光抑制機構120Aは、ガラス層104の少なくとも1つの端面に沿って配置される低反射率顔料(黒色ペイントまたは光吸収材料のような)を含む。少なくとも1つの光源110を用いて、光112を入射させる場合、光抑制機構120Aの低反射率顔料を、光源110とは反対側の端面に配置することが望ましい。低反射率顔料は、端面自体にのみ塗布される場合に良好に機能することができる;しかしながら、有利な結果は、顔料が端面だけでなく、このような端面に隣接するガラス層104の上面及び下面の少なくとも一部に配置される場合に得られると考えられる。顔料をガラス層104の全ての端面だけでなく、隣接する表面の関連する部分に含んでいることが最も好ましい。
【0025】
光抑制機構120Bは、ガラス層104の先細り厚肉部を端面または端面群に含む。この場合も同じように、少なくとも1つの光源110を用いて、光112を入射させる場合、光抑制機構120Bの先細り端部を、光源110とは反対側の端面に配置することが望ましい。更に、同様に、光抑制機構120Bをガラス層104の全ての端面に用いることが望ましい。光抑制機構120Bを先細りにすることにより、「漏洩導波管」特性をタッチガラス層104に持たせて、ガラスに戻ってくる光反射を抑制する。基本的に、光抑制機構120Bの先細りは、後方散乱を、ガラス層104の端面に達する光を漏洩させることにより低減させる。
【0026】
漏洩導波管特性の機能を例示するために、
図2Bは、タッチガラス層104内の2つの導波光線を示している。第1光線122は、表面106の法線と約40度の角度をなし、この角度は、約1.572の屈折率を持つガラスの約39.5度の臨界角度に近い。第2光線124は、先細り領域に衝突する前に、タッチガラス層104の中心線に沿って伝搬する。これらの2つの光線122,124は、導波光線角度の両極限位置を表わす。光線122,124が、光抑制機構120Bの先細り部分に衝突し、先細り部分で反射され、そして再度、先細り部分に衝突すると、入射角は、これらの光線が臨界角度以下で入射し、そしてタッチガラス層104から漏洩し始めるまで変化する。このようにして、タッチガラス層104に戻る反射を抑制する、そして/または最小限に抑える。
【0027】
後方散乱(例えば、跳ね返り回数、及び戻り光損失)の抑制特性は、タッチガラス層104の幾何学構造及び率屈折率に依存する。ガラスが約1.572の屈折率、1単位の厚さ、及び10度の先細り(例えば、約5.59単位の傾斜)を持つ場合、光線122,124には、約7回の漏洩と跳ね返りが生じることが計算により推定されている。10度の先細りを持つ場合について考察し、そして開示しているが、他の先細り角を用いてもよい。一般的に、先細りが更に増すと、反射されてタッチガラス層104に戻る前に、より多くの回数の漏洩と跳ね返りが、光線122,124に生じることになる。光線122に関する詳細な計算から、約6.65E−13の戻り光損失(7回の漏洩と跳ね返りに起因する)がp偏光光の場合に生じ、そして約3.01E−9の戻り光損失がs偏光光の場合に生じることが判明した。反射光は、s偏光成分が強い。LED光源110はランダムに偏光するので、平均端面反射率は約1.5E−9である。高い反射抑制効果(2桁または3桁の)が、p偏光透過偏光板を光検出素子116の前面に配置することにより得られる。更に、(黒色ペイントまたは光吸収材料のような)前述の顔料を先細り部分に用いることにより、端面反射を更に低減することができる。
【0028】
次に、
図3を参照するに、
図3は、本明細書における1つ以上の別の実施形態によるタッチセンシティブディスプレイ100Bの別の実施形態を模式的に表わしている。タッチセンシティブディスプレイ100Bは、ディスプレイ層(図示せず)と、そしてタッチガラス層104と、を含み、タッチガラス層104は上方から眺めた様子が示され、そしてタッチガラス層104は、この場合も同じように、保護カバーガラス層として機能することもできる。この実施形態では、タッチセンシティブディスプレイ100Bは、複数の光源110A,110B,110C,及び110Dを含み、各光源110は、スクリーン104の端面130A,130B,130C,及び130Dのうちの該当する1つの端面に接続される。以下に更に詳細に説明するように、少なくとも1つの光源110を、スクリーン104の各端面に用いることにより、より少ない個数の光源110とは異なり、有利な機能を提供することができる。しかしながら、4つのこのような光源110を示しているが、何れかの適正な数を用いることができる。例えば、2つ、3つ、またはそれよりも多い数のこのような光源110を用いることができる。
【0029】
タッチセンシティブディスプレイ100Bは、複数の光検出素子116A,116B,116C,及び116Dを含み、各光検出素子は、スクリーンの外周部の周りに意図的に配置される。具体的には、有利な動作は、光検出素子群116のそれぞれ1つの光検出素子がスクリーン104の各隅角部に配置される場合に得られる。しかしながら、十分な検出機能が得られる限り、何れの数の光検出素子116を用いることもでき、かつこれらの光検出素子の何れの配置(群)を用いても良いことを理解されたい。
【0030】
タッチセンシティブディスプレイ100Bはまた、制御回路140を含む、または制御回路140に接続される。制御回路140は、これらの光源110を作動させ、信号群をこれらの光検出素子116から受信し、そしてこのような信号を処理して、オブジェクトがタッチガラス層104の表面106に触れる1つ以上の位置を求めるために必要な機能を提供する。具体的には、当該制御回路は、マイクロプロセッサ142と、ドライバ回路144と、そしてインターフェース回路146と、を含む。マイクロプロセッサ142は、ドライバ回路144及びインターフェース回路146に、信号線、バスなどを介して接続される。マイクロプロセッサ142は、コンピュータ可読符号(ソフトウェアプログラム)を実行し、このコンピュータ可読符号によって、ドライバ回路144及びインターフェース回路146の動作を制御し、そして調整して、前述の機能を実現する。例えば、マイクロプロセッサ142は、制御信号群をドライバ回路144に供給して、それぞれの光源110を点灯及び消灯すべき時点を指示する。本明細書において後で更に詳細に説明するように、マイクロプロセッサ142は更に、付加的な情報を供給して、ドライバ回路144が、これらの光源110から放出される光を変調することができるようにする。インターフェース回路146は、信号群をこれらの光検出素子116から受信し、そしてこのような信号を処理して、これらの信号をマイクロプロセッサ142に入力することができるようにする。例えば、これらの光検出素子116がフォトダイオードである場合、インターフェース回路146は、これらのフォトダイオードを適切なバイアス状態に設定して、これらのフォトダイオードが光エネルギーを正しく検出することができるようにする。この点に関して、インターフェース回路146によって、特定の時間区間において、特定の光検出素子116を作動状態にし、そして他の光検出素子116を非作動状態にすることができる。インターフェース回路146は更に、これらのフォトダイオードから受信するアナログ信号を処理し、そして同アナログ信号をデジタル形式に変換してマイクロプロセッサ142に渡すことができる。
【0031】
マイクロプロセッサ142は、標準デジタル回路のような適切なハードウェア、公知のプロセッサ群のうちのソフトウェアプログラム及び/又はファームウェアプログラムを実行するように動作することができる何れかのプロセッサ、プログラマブルリードオンリメモリ(PROM)、プログラマブルアレイロジックデバイス(PAL)などのような1つ以上のプログラマブルデジタルデバイスまたはシステムを利用して実現することができる。更に、制御回路140は、特定の機能ブロック群(マイクロプロセッサ142、ドライバ144、及びインターフェース146)に区分されるものとして図示されているが、このようなブロック群は、個別の回路により実現することができる、そして/または組み合わせて1つ以上の機能ユニットとすることができる。
【0032】
マイクロプロセッサ142は、異なるソフトウェアプログラムを実行して異なる方法を実行することにより、オブジェクトがタッチガラス層104の表面106に触れる1つ以上の位置を算出することができる。1つのこのような方法が三角測量法であり、この三角測量法は、変化ポイント(この場合、オブジェクトがスクリーン104に触れるポイント(群))の位置を、既知ポイント群からこのようなポイントに至る角度を測定することにより求める公知のプロセスである。次に、変化ポイントは、1つの既知の辺、及び2つの既知の角度を持つ三角形の第3ポイントとして算出することができる。タッチセンシティブディスプレイ100Bでは、これらの光検出素子116のうちの何れか2つの光検出素子116を、三角測量アルゴリズムにおける固定ポイント群とすることができる。位置計算の精度を向上させるために、複数ペアの光検出素子116を使用して、タッチポイントを複数回算出し、そして次に、統計計算を利用して、最終的なタッチ位置に辿り着くことができる。
【0033】
幾つかの実施形態では、光検出素子群116の動作特性によって、三角測量法の使用が問題となり得る。例えば、光検出素子群116が、光強度のみを測定するフォトダイオードである場合、三角測量法は、行なうことが難しい、または不可能である。タッチイベントの位置を算出する別のアプローチでは、これらの光検出素子116が検出するそれぞれの信号強度を比較する。一例として、素子116A及び116Dが同じ信号強度を測定する場合、タッチイベントの位置が2つの素子116A及び116Dから等距離の直線上に在ると判断される可能性がある。しかしながら、これらの信号が等しくない場合、タッチイベントの位置が、他方の素子よりも一方の素子の方に近いと判断される可能性がある。実際、タッチイベントの位置は、直線上に在るのではなく、円弧上に在ることがあり得る。第3素子116Bの信号強度を検出することにより、タッチ位置に対応する単一ポイントを求めることができる。例示のために、かつ限定しないために、スクリーン104上のタッチイベントの位置を、これらの光検出素子116から受信する振幅データに基づいて算出する例示的なアルゴリズムを、この説明の後の方で、「例−位置検出アルゴリズム」という見出しで説明する。
【0034】
タッチ位置を算出するために使用される数学的手法の精度に影響する種々の要素の中でもとりわけ、これらの光検出素子116から受信する信号群を、特定の光源110または一連の光源110からの光エネルギーから取り出される信号として判別することができるマイクロプロセッサ142の能力がある。この点に関して、制御回路140は、光源群110のうちの少なくとも2つの光源(好ましくは、全ての光源)から放出される光が、少なくとも1つの大きく異なる性質を持つように動作することができる。このようにして、マイクロプロセッサ142は、このような性質の指示値を、これらの光検出素子116により生成される信号から抽出することにより、これらの信号のうちの何れの信号が、光源群110のうちの特定の光源に応じて生成される散乱光から取り出されたかを判別することができる。
【0035】
これらの顕著な特徴として:(i)光源群110のうちの2つ以上の光源から放出される光の異なる波長;(ii)変調成分によって、2つ以上の光源から放出される光が、それぞれ異なる符号で変調される構成の変調成分;及び(iii)周波数変調成分によって、2つ以上の光源から放出される光が、それぞれ異なる周波数で変調される構成の周波数変調成分、及び(iv)時間成分(または、時間多重)によって、光が、光源群のうちの2つ以上の光源から異なる時点で放出される構成の時間成分、のうちの少なくとも1つを挙げることができる。
【0036】
今度は、上に挙げた顕著な特徴群の各特徴を取り入れることにより、光源群110の各光源を、異なる光波長の該当するLEDで実現することができる。例えば、光源110Aは、約430nm〜約470nmの波長領域(この波長領域は普通、青色光スペクトルである)のような第1波長領域の光を放出することができる。光源110Bは、約490nm〜約550nmの波長領域(この波長領域は普通、緑色光スペクトルである)のような第2波長領域の光を放出することができる。光源110Cは、約615nm〜約650nmの波長領域(この波長領域は普通、赤色光スペクトルである)のような第3波長領域の光を放出することができる。これらの可視青色、緑色、及び赤色波長領域は、例示のためにのみ列挙しているにすぎない。実際、他の領域(複合青−緑発光波長領域、複合緑−赤発光波長領域など)を用いることもできる。更に、赤外線波長のような非可視波長を用いることもできる。従って、例えば光源110Dは、約820nm〜約880nmの波長領域のような第4波長領域の光を放出することができる。
【0037】
光源群110のうちの2つ以上の光源が、異なる波長の光を放出しているとすると、ステップ群をスクリーン104自体、及び/又は制御回路140の内部で行なって、これらの光検出素子116から受信する信号群を判別することができる。例えば、これらの光検出素子116は、特定の素子群116だけが、特定の光源群110から放出される散乱光を検出し易くなるように配置することができる。具体的には、光検出素子群116の向きが与えられると、各光源110の光照射領域から、光検出素子群116のうちの特定の光検出素子を除外することができる。一例として、光源110Aの光照射領域には、スクリーン104のうちの破線134Aよりも前方にのみ位置する部分を含めることができる。スクリーン104の端面群130における光反射が低減される、または最小限に抑えられると仮定すると、光検出素子116A及び116D(光源110Aと同じ端面130Aに沿って位置している)は、光源110Aからの光に起因するタッチイベントによる散乱光エネルギーを受信することになり、そして光源110Aから直接入射する光エネルギーは受信しないことになる。同様の分析が、他の光源群110及び光検出素子群116に当てはまる。
【0038】
光検出素子群116自体は、この技術分野で公知のように、光エネルギーの波長に異なる態様で応答することができる。例えば、所定の光検出素子116は、幾つかの波長に応答し、かつ他の波長には応答しないセンサ群を含むことができることにより、受信する光エネルギーの大きさのみならず、当該光エネルギーの波長(群)を示す出力を供給することができる。
【0039】
制御回路140が、具体的には、マイクロプロセッサ142が、光源群110からの入射光ではなく、それぞれの光検出素子116から受信する信号群を、光散乱イベントに由来するものとして判別することができる。更に、このような信号群は、スクリーン104上でのタッチイベント群の位置または位置群を算出するために適する計算アルゴリズムに使用することができる。
【0040】
上に説明したように、波長の顕著な特徴(当該特徴の他に、以下に説明する1つ以上の他の特徴も)を利用するタッチ位置計算の精度は、スクリーン104の端面群130における光反射の度合い、及び性質に影響される。このような端面反射が低減される、または最小限に抑えられることが最も望ましい。この点に関して、タッチセンシティブディスプレイ100Bは、
図2A〜2Bを参照しながらこれまで説明してきた端面反射以外の、または端面反射の他のこのような端面反射を低減する付加的な機能を含むことができる。
【0041】
この点に関して、
図4を参照するが、
図4は、更に別の光反射抑制機構を用いるタッチガラス層104の側面図を示している。具体的には、低反射率顔料120Aを、ガラス層104の端面130(好ましくは、全ての端面)に沿って配置することができる。低反射率顔料120Aは、当該顔料を貫通する窓を、それぞれの光源110に隣接して含むことにより、当該光源からの光を、邪魔されずに、ガラス層104に入射させることができる。窓及び/又は光源110自体による反射(別の光源、または散乱イベントから入射する光エネルギーに起因する)を低減するために、少なくとも1つのフィルタ126を、光源110とガラス層104の端面130との間に配置することができる。フィルタ126は、該当する光源110から発生する波長の領域から離れた波長領域の光を大幅に減衰させるように動作する。このようにして、窓及び光源110自体は、このような波長領域から離れた波長領域の光にとっては、「暗く」(すなわち、非反射体に)見える。可視光波長領域の場合、フィルタの具体的なフィルタ特性によって異なるが、単一のフィルタ126を用いることができる。しかしながら、或る場合には、第1フィルタ126A及び第2フィルタ126Bが、注目領域全体をフィルタリングするために必要となる。例えば、一方のフィルタ126Aが、第1可視光波長領域(前述の青色光領域のような)から離れた波長領域の光を減衰させることができるのに対し、他方のフィルタ126Bは、赤外線波長領域のような別のこのような領域から離れた波長領域の光を減衰させることができる。
【0042】
図5は、フィルタ群126のうちの1つ以上のフィルタの幾つかの透過特性を示すグラフである。具体的には、入射光波長(例えば、青色光波長128A、緑色光波長128B、赤色光波長128C、赤外線波長128D)とそれぞれのフィルタ特性129A、129B、129C、129Dとの間の関係を示している。グラフの垂直軸は、これまでの通り、光源110のパーセント透過率、またはフィルタを透過するパーセント透過率を表わしているのに対し、水平軸は、光波長をnm単位で表わしている。
【0043】
前述の顔料、先細り部分、及び/又はフィルタ126が、端面反射を十分減衰させることができないと判断される場合、光検出素子群116からの所望の信号を不所望の信号に対して、光源群110から発生する光を幾つかの付加的な情報で変調することにより、詳細に判別することができる。一例として、ドライバ回路144は、光源群110のうちの1つ以上の光源を変調して、当該光源群からのそれぞれの光が、公知のウォルシュ符号(Walsh codes)と同様の直交符号のような特定の符号を含むようにすることができる。一例として、特定の光源110から発生する光は、特定のビットレート(1kHzのような)の変調20ビットウォルシュ符号を含むことができる。インターフェース回路146は光受信機を含むことができ、この光受信機は、特定のウォルシュ符号を復調することができ、そしてこのような符号を含まない信号群を拒否することができる。この変調/復調プロセスによって確実に、(対向する端面または隣接する端面に位置する他の光源群110から直接放出される光ではなく)タッチイベントによる散乱光に応じて生成される信号群のみを処理して、タッチ位置を算出することができる。変調及び復調回路(直交符号化方式のような)は、信号処理分野では公知であることに留意されたい。説明を進めるために、このような変調及び復調回路の実施形態についての更に詳細な説明は、この説明の後の方の部分に、「例−符号変調の実施」という見出しで提示される。
【0044】
上記符号変調の変形例が、周波数変調の使用である。この実施形態では、ドライバ回路144は、光源群110のうちの1つ以上の光源を変調して、光源からのそれぞれの光が、特定の周波数、または周波数群(当該周波数を調整光受信機によって判別することができる)。インターフェース回路146は適切な光受信機を含むことができ、この光受信機は、特定の周波数を復調することができ、そしてこのような周波数を含まない信号群を拒否することができる。符号変調の場合と同じように、この変調/復調プロセスによって確実に、(対向する端面または隣接する端面に位置する光源群110から直接放出される光ではなく)タッチイベントによる散乱光に応じて生成される信号群のみを処理して、タッチ位置を算出することができる。周波数変調及び復調回路は、信号処理分野では公知であるので、周波数変調及び復調回路の実施例についての詳細な説明は、この説明から省略されていることに留意されたい。
【0045】
次に、特定の散乱イベント及び特定の光検出素子116に関する情報を載せた信号群を取り出し易くするために用いることができる次の顕著な特徴を取り入れることにより、光源群110の各光源を、時間多重方式で作動させることができる。例えば、制御回路140(例えば、ドライバ回路144)によって、光源群110のうちの1つの光源(または、特定の光源群)のみが、特定の時間区間において発光するようにすることができる。同時に、制御回路140(例えば、インターフェース回路146)によって、光検出素子群116のうちの特定の光検出素子群のみが、このような時間区間において作動状態になるようにすることができる。
【0046】
上記内容を例示すると、光源110Aが作動状態になっている場合、制御回路140は、光検出素子116A及び116Dのみを作動させることができる。これらの状態では、かつ端面反射が低く抑えられていると仮定すると、光検出素子116A及び116D(光源110Aと同じ端面130Aに沿って位置している)のみが、光源110Aからの光に起因するタッチイベントによる散乱光エネルギーを受信し、そして光源110Aから直接入射する光のエネルギーは受信しない。同様の分析が、他の時間区間における他の光源群110及び光検出素子群116に当てはまる。この時間多重方式は、1つよりも多くの光源110を一度に作動させることにより用いることができるが、その場合には、タッチ位置の算出の際に複数の光源を考慮に入れるように細心の注意を払う必要があることに留意されたい。更に、この時間多重方式は、同じ波長、または同じ波長領域の光源群110を利用して用いる必要があるが、その理由は、一度に作動状態になる光源群110及び光検出素子群116の数が少なく限定されるからである。従って、タッチスクリーン104の表面106の汚れによる悪影響を低減するために、そして/またはインディシアを実際にこのような表面106に表示することができるようにするために、またはそれ以外には、インディシアでこのような表面106を見えなくするために、これらの光源は全て、赤外線域の光源とする必要がある。
【0047】
時間多重方式を用いて、制御回路140は、それぞれの光検出素子116から受信する信号を、光源110からの入射光ではなく、光散乱イベントに由来するものとして判別することができる。これにより、このような信号を、例えばスクリーン104上でのタッチイベント群の位置または位置群を算出するアルゴリズムに使用することができる。この場合も同じように、「例−位置検出アルゴリズム」という見出しで説明される例示的なアルゴリズムを用いてタッチイベント群の位置を算出することができる。
【0048】
次に、
図6を参照するに、
図6は、本明細書における1つ以上の別の実施形態によるタッチセンシティブディスプレイ100Cの別の実施形態の模式図を示している。タッチセンシティブディスプレイ100Cもまた、ディスプレイ層(図示せず)と、そして上面図として図示されるタッチガラス層104と、を含む。この実施形態では、タッチセンシティブディスプレイ100Cは、複数の光源110A(例えば、4個の)を1つの端面130Aに沿って含み、複数の光源110Bを別の端面130Bに沿って含み、他の光源も同様にして含む。同様に、タッチセンシティブディスプレイ100Cは、複数の光検出素子(例えば、4個の)を端面130Aに沿って含み、複数の光検出素子を他の端面130Bに沿って含み、他の光検出素子も同様にして含む。本明細書における他の実施形態の場合と同じように、タッチセンシティブディスプレイ100Cは更に、制御回路140を含む、または制御回路140に接続される。タッチセンシティブディスプレイ100Cは、これまでの実施形態のタッチセンシティブディスプレイ100Bと同様に動作することができるが、スクリーン104の所定の端面130に沿った光源群110の全てを、波長分割多重の場合には、同じ波長(または、同じ波長領域)とすることができる、そして/または時間分割多重の場合には、同時に作動させる/遮断することができる。各それぞれの端面130に沿った光検出素子群116に関しても同様の構成とする。
【0049】
タッチセンシティブディスプレイの更に別の実施形態によれば、
図1,3,及び6に示す前述の実施形態群のうちの何れの実施形態も、蛍光発光の原理で動作することができる。オブジェクト(ヒトの指のような)が、ガラス層104の表面106に触れることに起因する入射光に応答して蛍光発光する場合、オブジェクトからの蛍光光は、ガラス層104に入射することができる。光源群110を細心の注意を払って選択して得られる蛍光光が、入射光とは異なる、より長い波長を有する場合、制御回路104によって散乱光を容易に検出することができ、そして検出される入射光を拒否することができる。
【0050】
本明細書の現在の箇所に説明されているように、指で光を散乱させて、タッチイベントの検出を可能にしている。光を同様に散乱させることができる受動スタイラスで、正に同じ操作を行なうことができる。しかしながら、能動スタイラスを実現する可能性も存在する。カバーガラス内に供給される、またはカバーガラスを通って供給される光を反射するのではなく、能動スタイラスが光源となる。
【0051】
次に、
図7を参照するに、
図7は、本明細書において開示されるタッチセンシティブディスプレイ群100のうちの1つ以上のタッチセンシティブディスプレイと組み合わせて使用することができる能動スタイラス200の模式図である。一般的に、能動スタイラス200のアプローチでは、光散乱を利用するのではなく、光源210を収容してタッチ位置検出を、ユーザがタッチスクリーン104に触れるために用いる形態のハウジング202内で行なう。このアプローチの利点は一つには、光源210が、何れの散乱光よりも強度がずっと高く、実際、そのように強度が高いことから、ユーザが場合によっては、位置検出ができないほど多くの量の光を減衰させることなく、スタイラス200で書き込みを行ないながらユーザの手のひらをスクリーン104に載せることができるので、確実であるということである。能動スタイラス200を使用する場合、光をタッチスクリーン104内に、またはタッチスクリーン104を通って供給する光源群110は、必ずしも必要ではないので、これらの光源を一括して無くすか、または一時的に消灯することができる。光源群110を一時的に消灯することにより、2つの動作モード:タッチ検出を、光源群110を用いて行なう1つのモード;及びタッチ検出を、能動スタイラス200を用いて行なう別のモードを実現する。
【0052】
光源210は、IR LEDのようなLEDとすることができ、この場合、光検出素子群116は、IR光を検出するように適合させる。光を、上に説明した通りに変調しようとする場合、光源210からの光の放出、及び光検出素子群116における信号検出を同期させる手段を用いる。このような手段は、当業者であれば、上の説明が与えられ、そして本明細書において後の方で
図9を参照しながら示され、かつ説明されるシステムが与えられる場合には、容易に理解できるであろう。光源からの光で、ハウジング202の遠位端のボール204を照らし、このボール204は、スタイラス200から放出される光を拡散させ、かつランダム化する。このような拡散によって、スタイラス200の姿勢が、光検出素子群116の位置における光の検出に影響することが無くなる。ボール204は、例えば約1%の二酸化チタンが充填されて散乱剤として機能するプラスチックのような何れかの適切な材料により形成することができる。
【0053】
光源210を、タッチスクリーン104との接触がないときにバッテリ206によって作動させることは望ましくない。スタイラス200をスクリーン104に接触する場合にのみ点灯させることができる非常に多種多様な可能な機械的構成が存在する。一例として、ボール204は、バネリング208によって、ハウジング202の遠位端に向かって前方に付勢されるようにすることができる。バネリング208は、或る弾性材料により形成することができ、この弾性材料は、極めて小さい力で圧縮することができ、かつ圧力を解除すると、当該材料のより大きい正常な形状に弾性力によって戻る。圧力をボール204に加え、そしてバネリング108を圧縮すると、導電性接点板212によって、2つのスイッチ接点214が接続されることにより、電流をバッテリ206から光源210に流すことができる。更に、または別の構成として、バッテリ206は無くすことができ、そしてスタイラス200は、タッチ感応ディスプレイ100内のホストが出力する電力を取得する機能を備えることができる。
【0054】
図8は、更に別のタッチセンシティブディスプレイ100Dを示している。タッチセンシティブディスプレイ100Dは、ディスプレイ層102と、ガラス層104(このガラス層104は、ディスプレイ層102の上に配置することができる)と、そしてガラス層104の上の弾性タッチ層105と、を含む。ギャップが弾性タッチ層105とガラス層104との間に、スペーサなどを挟んで形成される。タッチ層105は、曲がることができ、かつガラス層104にタッチイベントに応じて接触することができる適切なポリマーにより形成される。更に、タッチ層105は、良好な導波特性を有する材料により形成される。光源110は光を生成し、この光は、ガラス層104に入射し、そしてガラス層104内を導波モードで伝搬する。ガラス層104内では内部全反射が生じることから、タッチイベントが生じない状態では、光がタッチ層105に入射することがないので、散乱光を光検出素子群116が検出することはない。タッチイベントが生じると、ガラス層104内を伝搬する光の導波モードが消失し、そして当該光の或る部分がタッチ層105に入射する。これらの光検出素子116は従って、このような光を測定することができ、そしてこのような光を示す信号群を制御回路(図示せず)に供給することができる。このようにして、制御回路は、タッチイベントの位置を、上に説明した同様の方法及び装置を使用して算出することができる。
【0055】
例−位置検出アルゴリズム
この節では、タッチイベントを、上に開示し、かつ説明した実施形態群のうちの1つ以上の実施形態において算出するために利用することができる位置検出アルゴリズムについて説明する。この節では、位置検出アルゴリズムについて、当該アルゴリズムを、タッチセンシティブディスプレイの動作を管理するプログラムとして実行する際の考察事項と一緒に説明する。
【0056】
背景として、日常生活では、我々は、ランダムイベントの確率を分析する必要がある場合が多い。例えば、サイコロを投げる、トランプのカードを引く、または測定器の雑音を推定する。これらの場合、物理系を表わすモデル(確率分布)に関する知識を用いて、結果についての予測を行なう。データをモデル化する場合、我々は、全く逆のことを行なおうとする:実験データに関する情報が与えられると、我々は、良好な記述を与えるモデルを見付け出そうとする。このモデルに辿り着くための手段は、次式で表わされるベイズの定理(Bays’ theorem)を参考にして見付け出すことができる:
【数1】
【0057】
モデルを実験データが与えられる場合に見付け出すという現在の問題に適用すると、ベイズの定理は次式で表わされる:
【数2】
【0058】
確率P(model)はprior(プライヤ)と表記される;当該確率P(model)は、何れのモデルが成り立ちそうであるかということに関する仮定が行われない場合に定数であると見なすことができる。分母は、単なる正規化定数であり、この正規化定数によって確実に、全てのモデルの確率の合計が1に等しくなる。従って、次式が得られる:
【数3】
【0059】
上式は、サポートデータが、当該特定モデルが与えられるときに当該データが観測される確率に比例するとした場合のモデルが成立する確率を意味している。この結果は、本明細書において説明されるパラメータフィッティング法の基本的な考え方である。
【0060】
物理的設定から、i=1,...,Nとしたときに、
【0061】
と表記されるN個のデータ値(検出器116が測定する信号群)が得られ、これらのデータ値を、j=1,...,Mとしたときのa
jが未知のパラメータであるモデルf
i(a
i,...,a
M)にフィッティングしようとする。このモデルは、ランダムプロセスの性質についての或る物理的考察を用いて普通に設定される関数である。
【0062】
各データ値での実験誤差が、標準偏差σ
iで正規分布する場合、当該モデルによって値f
iが予測されるとすると、データ集合
【0063】
が実験的に測定される確率は、次式により与えられる:
【数4】
【0064】
ベイズの定理についての我々による議論を通して、方程式(4)も、観測データが与えられる場合に当該モデルが成立する確率であることを認識することができる。従って、最も確率の高いモデルは、方程式(4)を最大にするモデルである、または等価的に、方程式(4)の対数の負値を最小にするモデルである:
【数5】
【0065】
N及びΔfは定数であるので、最も確率の高いモデルは、次式で表わされる量を最小にすることと等価である:
【数6】
【0066】
従って、この問題は、(一般的に)非線形関数の最小値をM次元パラメータ空間で求めることに帰結される。χ
2を最小にするa
i,...,a
Mの値は、「最良一致パラメータ群、または最大尤度推定値群」と表記される。
【0067】
上に概要を説明した最小二乗法では、モデルについての仮定を行ない、そして当該モデルと当該データとの間の最良一致を生じるパラメータ群を選択する。しかしながら、実際には、当該モデルがランダムプロセスを良好に表わしていることが保証されない。当該モデルが十分であるかどうかを判断するための「適合度(goodness−of−fit)」基準が必要になる。
【0068】
この基準は、以下の結果により与えられる:モデルが、当該モデルのパラメータ群に関して線形である場合、量χ
2は、最小化されると、ν=N−Mで表わされる自由度のカイ二乗分布に従う。従って、「真の」モデルがχ
2と同じ大きさのカイ二乗値を有する確率Qは、次式により与えられる:
【数7】
【0069】
上式では、P(χ
2|ν)は不完全ガンマ関数:
【数8】
【0070】
であり、上式では、次式のような関係がある:
【数9】
【0071】
不完全ガンマ関数は、ほとんどの数値演算ソフトウェアから呼び出すことができる;Matlab(商標)では、当該不完全ガンマ関数は、コマンド「gammainc」によって呼び出される。Qが1に近い場合、当該モデルは当該データに強くフィットする。これとは異なり、Qが非常に小さい場合、一致度は良好な一致度ではない。実際、Qは、モデルが拒否される前には、10
−3という非常に小さい値となり得る。
【0072】
カイ二乗分布は厳密には、線形モデルにしか当てはまらないが、カイ二乗分布は、モデルがモデルパラメータ群に関して非線形である場合でも良好な近似となる。
【0073】
モデルf
i(a
i,...,a
M)が、パラメータa
jに対して非線形に依存すると仮定する。この理由により、カイ二乗の最小値を繰り返し求める必要がある。或る初期推定から始めて、パラメータ群を変更してχ
2の値を小さくする。当該手順をχ
2が減少しなくなるまで繰り返す。
【0074】
χ
2が最小値に近いか、または最小値から離れているかによって異なるが、2つの領域について考察する必要がある。最小値から離れると、χ
2の1次微分が大きくなるので、カイ二乗は、勾配を段階的に小さくすることにより小さくすることができる。a
(n)と表記される段階nにおけるパラメータ群の値から始めると、段階(n+1)における値は、次式により与えられる:
【数10】
【0075】
この方程式に現われる定数は、最小値を、通り過ぎてしまうことにより見失うことがないように十分小さくする必要がある。
【0076】
最小値の近傍では、χ
2の勾配は小さく、そしてその結果、最小値a
minの近傍の二次局所的拡大率(quadratic local expansion)が次式のように成り立つ:
【数11】
【0077】
a
kで微分すると、次式が得られる:
【数12】
【0078】
次のような関係式を導入する:
【数13】
【0080】
次に、方程式(12)は次式のように表現することができる:
【数15】
【0082】
従って、段階nにおける値a
(n)から始めると、段階(n+1)における最小値の近似は、次式により与えられる:
【数17】
【0083】
行列要素β
k及びα
klの計算に注力する。定義方程式(6)から、次式が得られる:
【数18】
【0085】
f
iの2次微分を含む第2項は実際には、第2項が、1次微分を含む項と比べて小さい可能性があり、かつ第2項によって実際に、最小化アルゴリズムが不安定になってしまうので、無視される場合が多い。従って、次の数式を用いて行列要素α
klを計算することとする:
【数20】
【0086】
方程式(10)及び(17)は、カイ二乗値が最小値から離れているか、または最小値に近いかどうかによって異なるが、反復法を与える。しかしながら、何れの領域を扱うのか、そして移行をいつ行なうべきかについてどのようにして認識すれば良いのであろうか?巧妙な技法が、Levenberg−Marquardt(レベンバーグ−マーカート)法によって提案されている。この巧妙な技法では更に、定数を求める問題を解いて方程式(10)に使用する。
【0087】
λが、1つの反復から次の反復のときに切り替えることができる値を有する定数である場合、行列αを、 行列αから、対角要素に(1+λ)を乗算することにより得られる行列α’で置換すると仮定する:
【数21】
【数22】
【0088】
置換が行なわれると、方程式(17)は次式のようになる:
【数23】
【0089】
反復数式の方程式(23)によって確実に、最小値から離れる領域から最小値に近い領域への移行が行なわれる。実際、λが非常に大きい場合、行列α’は基本的に対角行列になるので、方程式(23)は次式のようになる:
【数24】
【0090】
上式は、階段関数l/(α
kkλ)を有する方程式(10)そのものであり、この階段関数は、λが大きいので小さい。これとは異なり、λが非常に小さい場合、行列α’は行列αに帰結し、そして方程式(23)は方程式(17)と同じになる。方程式(23)は、λの値によって異なる両方の領域を表現するので、方程式(23)を反復法に使用して、カイ二乗の最小値を求める。
【0091】
最終的に、一旦、χ
2の最小値が求まると、α
−1がパラメータ群の共分散行列であることが分かる。具体的には、これらの推定値の標準偏差は、α
−1の対角要素により与えられる:
【数25】
【0092】
以下のアルゴリズムを使用して、カイ二乗を最小化することにより、最良一致パラメータ群を求める。
【0093】
1. パラメータa
i,...,a
Mに関する或る初期推定から始める。
【0094】
2.χ
2(a
i,...,a
M)を計算する。
【0095】
3.λを小さく選択する、すなわちλ=0.001とする。
【0096】
4.行列α’及びβを作成し、そして次の推定値a
(n+1)を、方程式(23)を用いて計算する。
【0097】
5.χ
2a
(n+1)≧χ
2(a
(n))が成り立つ場合、λを10だけ小さくし、そしてステップ4に戻る。(別の表現をすると、最小値からずっと離れ、そして段の高さが低い段を採用しながら勾配に従う必要がある)
6.χ
2a
(n+1)<χ
2(a
(n))が成り立つ(すなわち、最小値に近付いている)場合、λを10だけ小さくし、そして解を更新する:a
(n)→a
(n+1)。ステップ4に戻る。
【0098】
7.χ
2が0.001未満の値だけ変化するときに停止する。
【0099】
一旦、最良一致パラメータ群が求まると、方程式(7)で与えられる確率Qを計算して、当該一致が良好な一致であることを確認することが必ず良好な考え方となる。
【0100】
次に、上に説明したパラメータフィッティング法を用いて、上に説明したタッチセンシティブディスプレイの1つ以上の実施形態におけるタッチイベントの位置を特定する方法について説明する。過度に簡易化され、かつアルゴリズムの作用を表わすモデルについて説明することから始めることとし、そしてこの技術が、より簡単な代数学数式よりも良好に作用することを立証する。次に、更に実用的なモデルについて説明することとする。
【0101】
上に説明した概要機構を適用するために、当該データに対応するモデルを指定する必要がある。これは、考慮対象の物理系に関する考察が関与してくる事例である。種々の微調整を当該モデルに施して、事実を所望の精度で記述することができる。この節では、最も簡単なモデルを実現可能にすることから始めることとし、このモデルでは、検出器に到達する光の振幅は、タッチイベントまでの距離に反比例して変化する。このモデルは、表面に触れる指によって散乱して平板導波路に入射する光の振幅は、1/rに従って小さくなる。しかしながら、この表現は、信号強度が既知であり、かつ一定であり、光はガラスを通って伝搬するときに減衰しないという仮定であるので、極めて簡易化されており、そして検出器の応答の角度依存性を無視している。しかしながら、このモデルによって、良好な開始ポイントがアルゴリズムに適するようになる。
【0102】
従って、この節では、検出器iの応答は次式により与えられる:
【数26】
【0103】
上式では、タッチイベントと検出器との間の距離は次式のようになる:
【数27】
【0104】
この場合、x及びyは、タッチイベントの未知の座標値であり、そしてx
i及びy
iは、各検出器の既知の位置である。
【0105】
未知のパラメータx及びyのカイ二乗関数は、次式により与えられる:
【数28】
【0107】
は、N個の検出器の各検出器からの測定信号である。
【0108】
カイ二乗を最小化するために必要な行列α及びβを作成するために、f
iの微分を計算する必要がある:
【数29】
【数30】
【0109】
これらの行列要素は、方程式(18)及び(20)から得られる。これらの行列要素を具体的、かつ明示的に表現して、分かり易くする:
【数31】
【数32】
【0110】
上式から、以下の行列を作成する:
【数33】
【0111】
同様にして、以下の行列を作成する:
【数34】
【数35】
【数36】
【数37】
【0112】
これらの行列を使用して以下の行列を形成する:
【数38】
【0114】
次に、未知のパラメータ群を含むベクトルa=[x,y]’が、節2.5で詳述した手順に従って繰り返し取得される。
【0115】
一旦、解が得られると、位置に関する誤差は、標準偏差により与えられる:
【数40】
【数41】
【0116】
カイ二乗最小化アルゴリズムの過程は、
図1及び2に示されている。本明細書において使用される例は、縦横比が2:1であり、かつ4個の検出器が座標(x
i,y
i)=(±1,±0.5)で表わされる隅角部に位置する構成の矩形ディスプレイの場合である。合成データを生成して、位置(x
0,y
0)におけるタッチを以下の数式を用いて模擬した:
【数42】
【0117】
カイ二乗最小化プロセスは、原点(x,y)=(0,0)を初期推定値として用いて行なった。モデル化から、χ
2(x,y)のプロット、及び軌跡に、当該アルゴリズムが追従していることが判明した。(x
0,y
0)に位置する最小値は、ほんの数回反復した後に求めることができた。
【0118】
一般的に、タッチイベントの位置を、検出器のデータで表わす代数式を見付け出すことはできない。しかしながら、簡易な1/rモデルの場合、代数式は存在する。この事例において、統計的手法を代数学数式と比較する過程を検証することは興味深いことである。
【0119】
代数学数式は、1/f
i2を表わす表現式を具体的に表現することにより得られる:
【数43】
【0120】
一対の検出器1及び2を取り上げ、そして量1/f
12−1/f
22を計算すると、次式のようになる:
【数44】
【0121】
これらの検出器を、x
2=−x
1かつy
2=y
1が成り立つように配置する場合、x座標値は次式のように取り出すことができる:
【数45】
【0122】
同様にして、y座標値は、x
2=x
1かつy
2=−y
1に配置される2つの異なる検出器を取り上げることにより取り出すことができる。従って、幅w
x及び高さw
yの矩形の隅角部に対称に配置される4個の検出器を使用して、座標値を次の数式を用いて抽出することができる:
【数46】
【数47】
【0123】
代数解が、更に複雑なモデルに関して必ずしも存在しないということを無視することにする。検出器雑音がない状態では、代数式から位置が、高精度に、かつ殆ど演算を行なうことなく得られる。この場合、統計的手法を用いる必要がない。しかしながら、検出器雑音がある状態では、何れの方法がより正確であるかが明確ではなくなる。数値実験を実施して、当該疑問に答えている。検出器を4つの隅角部(±1,±0.5)の各隅角部に配置した構成の矩形ディスプレイを前提とした。合成データを所定のタッチ位置(x
0,y
0)に対応して生成し、そしてガウス雑音を各検出器の値に加算した。次に、タッチイベントの位置を、カイ二乗統計最小化アルゴリズム及び代数式の両方を用いて抽出した。この手順を100回繰り返して、重要な統計量を取得した。次に、両方の方法から取得されるx座標値及びy座標値の標準偏差を計算し、そして比較した。次に、手順全体を、タッチ位置(x
0,y
0)の異なる値に対応して繰り返した。
【0124】
この例では、合成データに加算される雑音は、標準偏差σ
i=0.05のガウス雑音であった。高精度の分析から得られる結果を、代数法及び統計法により取得される抽出座標値の不確定性σ
x及びσ
yと比較する。(統計法の場合、標準偏差は、2つの方法:分析方程式(40〜41)、及び多くの統計的関係式から取得した)。
【0125】
実験から、統計法が、代数式よりも正確であったと判断された。多数の関係式から取得される標準偏差は、理論的に推測される関係式に等しく、これにより、重要な理論に対する信頼度が増した。
【0126】
代数学的手法の精度が低いのは、数式に、実験データの逆数の二乗f
i−2を用いていることによる。この理由としては、情報の殆どを含んでいると予測される高強度信号の寄与度が小さくなっている。これとは異なり、雑音の影響を最も大きく受ける低強度信号の寄与度が大きくなっている。これにより、代数学的に決定される位置に関する誤差が何故、当該位置が統計学的に取得される場合よりも大きいのかという説明がつく。
【0127】
上に説明した蛍光法の使用を取り入れた実験グループでは、光検出器に到達する信号は基本的に、前の節で説明した1/rモデルに従う。しかしながら、多数の重要な改善を取り入れる必要がある。
【0128】
まず、光が伝搬するときに光が、ガラスの内部の全内部反射によって減衰することを考慮に入れる必要があることが判明した。従って、係数exp(−αr)をモデルに取り入れた。1.1mm厚さのゴリラガラス(Gorilla glass)シートでは、減衰係数の値がα≒7m
−1であると推定した。
【0129】
次に、光検出器の応答が、法線方向から60°を超える角度で、急激に低下したことが判明した。これは、ベゼルの設計に起因するものであったが、このベゼルに、ガラスの表面に、端面全体に沿って接触するOリングを取り入れることにより、迷光が検出器群に衝突するのを防止した。Oリングによって無視できるほどの僅かな損失しか法線方向に生じなかったが、Oリングによって大きな減衰が、ベゼルに大きい角度で入射する光に生じた。検出器の角度依存性は、mを偶数とした場合に数式exp[−(θ/θ
max)
m]で表わされるスーパーガウシアン伝達関数により考慮に入れることができた。値θ
max≒85°及び値m=6が、測定された応答分布とのかなり良い一致を実現することが判明した。
【0130】
最後に、散乱光の量は未知であり、かつ時間と共に変化する。従って、モデルに、時間ステップごとに変化することができる未知の総合比例定数を取り入れる必要がある。
【0131】
更に、検出器群の感度は、検出器ごとに僅かに変わり得る。従って、各検出器の応答に、既知の校正係数を乗算する必要があり、この校正係数の値は、1度測定しておく必要があり、そしてその時点以降、一定のままであると仮定される。
【0132】
全てのこれらの寄与因子を総合的に考慮すると、これらの光検出器の応答は次式のように表わすことができる:
【数48】
【0133】
上式では、次のような関係がある:
【数49】
【数50】
【0134】
そして、H
iは、校正定数を指す。このモデルは、3つの未知パラメータ:位置(x,y)及び振幅Cを含む。当該応答は、Rの項、及びθの項に分離することができるが、そのようにする必要があるという要件はない。距離は、いつもの通り次式により与えられる:
【数51】
【0135】
角度は、位置ベクトルと、センサの端面の法線のベクトル積をとることにより得られる:
【数52】
【0136】
ベクトル積を計算すると、次式が得られる:
【数53】
【0137】
上式では、次のような関係がある:
【数54】
【0138】
そして上式では、n
ix及びn
iyは、検出器iに関連する法線ベクトルのx成分及びy成分である。
【0139】
カイ二乗最小化アルゴリズムに必要な行列α及びβの計算では、f
iを当該f
iの変数パラメータ群で微分する必要がある。振幅Cで微分すると次式が簡単に得られる:
【数55】
【0140】
これらの位置変数でf
iを微分すると、次式が得られる:
【数56】
【0141】
上式では、次のような関係がある:
【数57】
【数58】
【0143】
yで微分して得られる式は、∂θ
i/∂yを除いて同様であり、∂θ
i/∂yは、次式のように、符号の違いを含んでいる:
【数60】
【0144】
次に、行列α及びβを方程式(18)及び(19)に従って、かつ節3で示した手順に従って形成する。行列αはこの時点で、解く必要のある未知数が3個あるので、3×3行列になっていることに注目されたい。
【0145】
上に説明した位置−検出アルゴリズムは、タッチセンサの動作を管理するプログラムの1つの形態に過ぎない。当該プログラムでは、コントローラボードによって生成されるデータを取得し、誤差をチェックし、データ平滑化処理を行ない、ベースラインレベルをモニタリングし、そして更新し、位置−検出アルゴリズムを呼び出し、結果が品質テストに合格するかどうかを判断し、ユーザにより入力されるタッチイベントの履歴を管理し、そしてこれらの結果をスクリーンに表示する。この節では、これらのタスクを更に詳細に説明する。
【0146】
我々の検証設定では、フォトダイオードにより生成される電気信号群は、コントローラボードによって処理される。コントローラの多くの機能の中でもとりわけ、このコントローラは変調信号を生成し、この変調信号を使用して赤外線バックライトを駆動する。約1kHzの変調を行なって、周囲光を除去する必要がある。コントローラボードは、10個の信号をフォトダイオード群から受信し、これらの信号の各信号を増幅し、そして同期検出を、これらの信号に、変調信号を乗算し、そして多くの期間に亘って積分することにより行なう。次に、当該コントローラボードは、各チャネルを、アナログ−デジタル変換器を使用して不連続な周波数に分割し、そして当該結果を、シリアルポートを介して送信する。これは、我々のMatlabプログラムが入力として受信するデータストリームである。
【0147】
当該データをまず、平滑化して雑音を低減する。このステップを行なわない場合、雑音は、僅かな変動が計算位置に生じるような十分な大きさである。データを平滑化するために使用される再帰的時間領域フィルタについて、次の節で説明することとする。
【0148】
プログラムを開始すると、信号レベルを短い期間(0.1秒)に亘ってモニタリングして、ベースラインを取得する。このベースラインを当該データから減算し、そして当該結果は、位置−検出アルゴリズムに渡される値である。当該ベースラインは、バックグランドレベルが、特にタッチスクリーンの表面に蓄積する埃及び指紋に起因してドリフトし易いので、頻繁に更新される。当該ベースラインは、当該ベースラインが信号レベルを決して上回ることがないように調整され、そして更に、全ての信号が十分長い期間(通常、0.5秒)に亘って一定のままである場合には必ず調整される。
【0149】
位置−検出アルゴリズムは、これらの信号のうちの1つの信号が特定の閾値を上回ると直ぐに、呼び出される。初期推定値を選択する手法は、この手法によってアルゴリズムが収束するかどうかが決まってしまうので繊細な問題である。当該アルゴリズムが初めて呼び出される場合、多くの位置が連続して吟味され、そしてデータに最も強くフィットする結果が保持される。信号振幅に対応する初期推定値は、信号レベル群を使用して推定される。当該アルゴリズムが次に呼び出される場合、前の時間ステップから得られた結果が、次の時間ステップに対応する初期推定値として使用される。
【0150】
1つの位置がアルゴリズムによって返された後、当該位置は、多数の品質テストに合格する必要がある。第1に、信号振幅(パラメータC)は、特定の閾値を上回る必要がある。これは、タッチイベントの終了を特定するために必要である。第2に、当該位置の不確定性(標準偏差σ
x及びσ
yに関連する)は特定の値を下回る必要がある。これにより、適正な信頼度を持つと判定された位置のみが保持される。第3に、1つのデータ値は、当該データ値が前の値から余りにもかけ離れて「飛んでしまっている」場合に拒否される。これにより、信号群が低強度値から増加する、または低強度値に減少する場合に、非物理的な高速移動がタッチイベントの開始時及び終了時に起こり易くなるのを防止する。
【0151】
最後に、当該プログラムは、セッションの履歴の追跡を継続する。連続軌跡がこのようにして特定され、そして連続ラインとしてスクリーンに表示される。痕跡「描画」プログラムによって、ユーザ群はスクリーンで、これらのユーザがガラスの表面に描いた物を見ることができる。
【0152】
コントローラボードからの信号群は、位置発見アルゴリズムに転送される前に平滑化されて、雑音による僅かな変動が低減されるということを前に述べた。このステップは、時間領域で、再帰線形フィルタ(「無限インパルス応答フィルタ」とも表記される)を使用して行なわれる。この節では、完全性定理の概要を説明する。
【0153】
雑音性データストリームがあり、この雑音性データストリームから平滑化されたデータストリームをリアルタイムに、データが入手可能になって直ぐに作成すると仮定する。入手可能な情報は、これまでに入手可能になっている全ての雑音値及び平滑化値の集合である。平滑化データを作成するために使用されるプロセスは、汎用線形フィルタによって次式のように表わされる:
【数61】
【0154】
上式では、x
nは、元の雑音性データを指し、そしてy
nは、平滑化データを指している。目標は、所望のフィルタを構成することになる係数c
k及びd
jの値を求めることである。この時間領域プロセスを、高調波信号を入力として使用して周波数領域で定義されるフィルタに関連付け、この高調波信号によって確実に、出力が所望のフィルタを満たすようになる。高調波信号群は次式で表わされると仮定する:
【数62】
【数63】
【0155】
上式では、振幅はx
0及びy
0であり、周期は1/fである。この場合、Δは、サンプリングレートを指す。方程式(61)に代入して、係数c
kとd
jとの間の関係を求めることができ、そして所望のフィルタ伝達関数H(f)が次式のように得られる:
【数64】
【0156】
z=e
2πifΔと置くと便利である。従って、当該フィルタは、次のように書き直すことができる:
【数65】
【0157】
全てのd
j’がゼロの場合、フィルタは、当該フィルタが平滑化データのこれまでの値に依存しないので非再帰的になる。このようなフィルタ群は常に安定である。少なくとも1つのd
j’が非ゼロの場合、フィルタは再帰的になる。通常、再帰フィルタ群は、より良好に動作するが、これらのフィルタは不安定になってしまう。安定性の条件は、次式で表わされる固有方程式:
【数66】
【0158】
の全ての根が、単位円に含まれる必要がある。
【0159】
所望のフィルタ伝達関数を有し、かつ同時に、安定性条件を満たすフィルタを作成する手順の概要を、この記載の後の方で説明する。考え方として、変数群の変化を利用し、この変化によって、フィルタ伝達関数が安定であるかどうかの確認を容易にする。この目的のために、次式を導入する:
【数67】
【0160】
変数群をこのように変化させることにより、単位円の内部(安定領域)を複素平面の上半分にマッピングする。従って、wに関しては、固有方程式(66)のゼロ解は、上半平面に含まれて安定性を確実にする必要がある。
【0161】
一例として、以下のことについて考察する:簡単な低域通過フィルタを次式で構成する:
【数68】
【0162】
上式では、bは遮断周波数に関連する。次に、応答の振幅を次式で表わす:
【数69】
【0163】
Hの極の位置を求めるために、フィルタ伝達関数の分母を簡単に因数分解する:
【数70】
【0164】
Hの極は±ibに位置するが、この時点で判明しているように、+ibのみが安定なフィルタに対応する。従って、H(f)の表現式に含まれる当該因数にのみ留意する:
【数71】
【0165】
この表現式が、方程式(69)で与えられる振幅を満たすことを確認することができる。−iの因子を取り入れて、所望の位相応答(すなわち、f=0でのゼロ位相シフト)が得られた。方程式(67)を用いて、フィルタ伝達関数をzのべき乗の項z
−1で表わすことができる:
【数72】
【0166】
再帰フィルタの一般表現式である方程式(65)と比較することにより、フィルタ係数を簡単に読み取ることができる:
【数73】
【数74】
【数75】
【0167】
この簡易フィルタは、1時間ステップ遡るだけである。
【0168】
これまで説明してきたフィルタは、当該フィルタの遮断特性が非常に緩やかであるので、非常に良好なフィルタであるという訳ではない。更に急峻に遮断する特性を持つフィルタは、少しだけより複雑なフィルタ伝達関数を用いることにより得られる:
【数76】
【0169】
当該フィルタの振幅応答は次式で表わされる:
【数77】
【0170】
この時点で、4つの極がe
iπ/4b,e
3iπ/4b,e
5iπ/4b,及びe
7iπ/4bに位置している。最初の2つに極だけが、上半平面に位置し、そして安定性条件を満たすので、これらの極のみが、次式が成り立つための因子である:
【数78】
【0171】
上式では、φは、位相因子であり、この位相因子は後で、πとして求めることができる。zを代入して、フィルタを方程式(65)の標準形に書き直すことができる。相当に面倒な代数計算を行なった後、再帰係数を次式により表わすことができることが分かった:
【数79】
【数80】
【数81】
【数82】
【数83】
【0172】
このフィルタは、2時間ステップ遡るだけである。当該フィルタは、更に急峻に遮断する特性を有するので、このフィルタは、LightTouchプロトタイプに搭載されるフィルタである。遮断パラメータb=0.3を用いると、十分な雑音低減を行なうことができることが分かった。
【0173】
例−符号変調の実施
上に説明したように、ドライバ回路144は、光源群110のうちの1つ以上の光源を変調して、これらの光源からのそれぞれの光が、公知のウォルシュ符号に類似する直交符号のような符号または符号群を含むようにする。説明を進めるために、この節では、符号変調を行なって、光源群110からの4つの同時の光源エネルギーの相互干渉を除去するために適する変調/復調回路について説明する。
【0174】
図9を参照するに、回路のブロック図が図示され、この回路は、前述の符号変調/復調を行なうために適している。特に、同じ全体回路接続形態を用いて、上に説明した変調方式群(周波数変調を含む)のうちの何れかの変調方式を実行することができるが、異なる変調方式を実行するために幾つかのファームウェア変更、及びソフトウェア変更を行なうことができる。
【0175】
簡潔性のために、単一の受信機チャネルに、LED光源110を1つだけ設けた構成を示しているが、複数の光源110を用いることができることに留意されたい。当該回路は、位相感応型検出、及び特定の擬似ランダム符号の両方に対応して用いることができる。位相感応型検出モードでは、マイクロプロセッサ142は、双極性(+/−1)方形波バーストをドライバ回路144に至るライン142Aに発生させる。方形波周波数は、或る程度任意であるが、当該方形波周波数は、プリアンプ150の1/f雑音よりも十分高く、かつ殆どの低コスト、低雑音オペアンプの利得帯域幅上限に収まるように十分低くする必要がある。更に、方形波バーストの周波数は、60Hzの2のべき乗倍の高調波成分周波数にならないようにする必要がある。約1kHzの周波数が良好に機能する。方形波バーストのサイクル数は、多くの要素に依存するが、50Hzレートで測定を行なってマイクロソフトウィンドウズ(登録商標)(Microsoft’s Windows(登録商標))7仕様に適合するためには、1符号列が終了する20サイクル(20msに対応する)が良好に機能する。光源110は、同じ方形波バースト波形によって駆動される;しかしながら、これらの光源110は、方形波の正の半サイクル期間においてのみ切り替わって点灯する。
【0176】
タッチ信号が光源110の出力と同期すると、方形波フォト電流が光検出素子116(フォトダイオードのような)を流れるようになる。このフォト電流は電圧に、インピーダンス変換プリアンプ150によって変換される。
【0177】
ライン152に出力されるプリアンプ信号電圧に、双極性符号を乗算器ブロック160において乗算することにより、このような信号(ライン152)と符号の積をライン154上に生成する。一旦、符号バーストが完了すると、マイクロプロセッサ142は、アナログ−デジタル変換器180に指示して、積分器170の出力をサンプリング及びデジタル化させ、続いて、指示を出して、積分器170を、ダンプスイッチを閉じることによりリセットする。乗算器ブロック160の値は、バックグランド信号が一定の場合に、双極性符号を乗算した後、当該値が、ライン156上の双極性出力信号に達し、そして双極性バックグランド信号の積分値が厳密にゼロになるように選択される。これにより、バックグランド光を抑えながら同期検出が行なわれる。バックグランド抑制よりも多くの利点が得られる。同期検出は、方形波周波数を中心とした狭帯域フィルタのように作用し、この狭帯域フィルタは、Tを方形波バーストの長さ、または積分時間とした場合に、1/Tに略等しい通過帯域幅を持つ。積分時間を長くすると、検出帯域が狭くなり、そして当該帯域が狭くなるとともに、雑音が小さくなる。
【0178】
光検出素子群116の全ての光検出素子からのデジタル化信号群(ライン156)は、マイクロプロセッサ142によって収集され、このマイクロプロセッサ142が次に、タッチ位置を、上に詳細に説明したアルゴリズムを用いて算出する。
【0179】
双極性方形波バースト信号を符号として使用する方法の別の方法として、他の注目すべき選択がある。他の光源からではなく、幾つかの光源110からの光を検出する光受信機を実現するために、ウォルシュ符号を、すなわち或るクラスの擬似雑音符号(これらの雑音符号は、CDMA携帯電話ネットワークにおいて使用される)を用いることができる。ウォルシュ符号は、2のべき乗の長さを持つように容易に作成される。20ビット符号列のような他の長さの場合、公知のアダマール行列の行を用いる。20次のアダマール行列を以下に示す。
【0181】
+符号及び−符号の各符号は、2値符号列の+1及び−1の値を表わす。これらの符号がバランスすることに注目されたい。すなわち、1の個数と−1の個数が等しく、各行の和がゼロになる。従って、一定のバックグランドを積分すると、前述の方形波符号と丁度同じように、ゼロになる。これらのアダマール符号列の重要な特性は、これらの符号列が直交していることである。従って、2つの異なる符号を項ごとに乗算し、そして得られる結果の和を求めると、ゼロの結果が得られる。当該特性によって、受信機が、異なるアダマール符号で変調される信号群に対する感度が低い1つのアダマール符号を用いて動作するようになるというのが、この特性である。
【0182】
図9のブロック図を参照するに、第1行のアダマール符号で変調される第2光源110を追加するとともに、乗算器160を第2行の符号を用いて動作させる場合、積分器170の出力は、当該回路が、上に説明したものと同じ演算を行なうのでゼロになる。
【0183】
本明細書における実施形態について、特定の態様及び特徴を参照しながら説明してきたが、これらの実施形態は、所望の原理及び応用形態の単なる例示に過ぎないことを理解されたい。従って、多数の変更をこれらの例示的な実施形態に加えることができ、かつ他の構成を、添付の請求項の思想及び範囲から逸脱しない範囲で考案することができることを理解されたい。