(57)【特許請求の範囲】
【請求項１】
指示具からの光を座標入力面に照射して光スポットを生成し、前記光スポットに対応した座標を生成する座標入力装置であって、
指示具からの照射により座標入力面に生成された光スポットを検出する検出手段と、
少なくとも３個所の既知の第１乃至第３の位置における光スポットによる前記検出手段の出力情報を記憶する記憶手段と、
前記記憶手段に記憶された第１乃至第３の位置における出力情報の内、少なくとも前記第１及び第２の位置における出力情報を用いて、前記座標入力面に生成された光スポットの座標値（Ｘ’、Ｙ’）を演算する第１の演算手段と、
前記第１の演算手段で演算された座標値（Ｘ’、Ｙ’）と前記第３の位置における出力情報を用いて前記座標入力面に生成された光スポットの座標値（Ｘ”、Ｙ”）を演算する第２の演算手段とを備え、
前記座標入力面の座標入力有効エリアは、矩形であり、
前記第１の位置は、前記座標入力面の座標入力有効エリアの中央位置であり、
前記第２の位置は、前記座標入力面の座標入力有効エリアを前記第１の位置を中央に４つの象限に区切った場合の１つの象限の中央位置であり、
前記第３の位置は、前記１つの象限を規定する４点の内の、前記座標入力面の座標入力有効エリアの４隅部の１つに対応する位置である
ことを特徴とする座標入力装置。
【請求項２】
前記第２の演算手段によって演算される座標値（Ｘ”、Ｙ”）は、前記第１の演算手段で演算された座標値（Ｘ’、Ｙ’）の従属関数である
ことを特徴とする請求項１に記載の座標入力装置。
【請求項３】
前記第１の演算手段によって演算された座標値（Ｘ’、Ｙ’）が前記座標入力面の座標入力有効エリア内の特定の判定領域内にあるか否かに基づいて、該第１の演算手段によって演算された座標値（Ｘ’、Ｙ’）を出力するか、該座標値（Ｘ’、Ｙ’）に基づいて第２の演算手段を実行して座標値（Ｘ”、Ｙ”）を出力するかを判定する判定手段を更に備える
ことを特徴とする請求項２に記載の座標入力装置。
【請求項４】
前記検出手段は、感光部がＸ軸方向に直線状に配列されたＸ軸用センサと、感光部がＹ軸方向に直線状に配列されたＹ軸用センサとからなり、前記Ｘ軸用センサにはＹ軸方向に軸を有する円柱状レンズを介して光スポットの光が結像され、前記Ｙ軸用センサにはＸ軸方向に軸を有する円柱状レンズを介して光スポットの光が結像され、
前記第３の位置は、前記座標入力面の座標入力有効エリア内において、前記円柱状レンズに入射するその位置からの光線と、前記検出手段の前記感光部の垂線との間の角度が最大となる位置に設定される
ことを特徴とする請求項１に記載の座標入力装置。
【請求項５】
指示具からの光を座標入力面に照射して光スポットを生成し、前記光スポットに対応した座標を生成する座標入力装置の制御方法であって、
指示具からの照射により座標入力面に生成された光スポットを検出する検出工程と、
少なくとも３個所の既知の第１乃至第３の位置における光スポットによる前記検出工程の出力情報の内、少なくとも前記第１及び第２の位置における出力情報を用いて、前記座標入力面に生成された光スポットの座標値（Ｘ’、Ｙ’）を演算する第１の演算工程と、
前記第１の演算工程で演算された座標値（Ｘ’、Ｙ’）と前記第３の位置における出力情報を用いて前記座標入力面に生成された光スポットの座標値（Ｘ”、Ｙ”）を演算する第２の演算工程とを備え、
前記座標入力面の座標入力有効エリアは、矩形であり、
前記第１の位置は、前記座標入力面の座標入力有効エリアの中央位置であり、
前記第２の位置は、前記座標入力面の座標入力有効エリアを前記第１の位置を中央に４つの象限に区切った場合の１つの象限の中央位置であり、
前記第３の位置は、前記１つの象限を規定する４点の内の、前記座標入力面の座標入力有効エリアの４隅部の１つに対応する位置である
を備えることを特徴とする座標入力装置の制御方法。
【請求項６】
前記第２の演算工程によって演算される座標値（Ｘ”、Ｙ”）は、前記第１の演算工程で演算された座標値（Ｘ’、Ｙ’）の従属関数である
ことを特徴とする請求項５に記載の座標入力装置の制御方法。
【請求項７】
前記第１の演算工程によって演算された座標値（Ｘ’、Ｙ’）が前記座標入力面の座標入力有効エリア内の特定の判定領域内にあるか否かに基づいて、該第１の演算工程によって演算された座標値（Ｘ’、Ｙ’）を出力するか、該座標値（Ｘ’、Ｙ’）に基づいて第２の演算工程を実行して座標値（Ｘ”、Ｙ”）を出力するかを判定する判定工程を更に備える
ことを特徴とする請求項６に記載の座標入力装置の制御方法。
【請求項８】
指示具からの光を座標入力面に照射して光スポットを生成し、前記光スポットに対応した座標を生成する手順をコンピュータに実行させるためのプログラムであって、
指示具からの照射により座標入力面に生成された光スポットを検出する検出手順と、
少なくとも３個所の既知の第１乃至第３の位置における光スポットによる前記検出手順の出力情報の内、少なくとも前記第１及び第２の位置における出力情報を用いて、前記座標入力面に生成された光スポットの座標値（Ｘ’、Ｙ’）を演算する第１の演算手順と、
前記第１の演算手順で演算された座標値（Ｘ’、Ｙ’）と前記第３の位置における出力情報を用いて前記座標入力面に生成された光スポットの座標値（Ｘ”、Ｙ”）を演算する第２の演算手順とをコンピュータに実行させ、
前記座標入力面の座標入力有効エリアは、矩形であり、
前記第１の位置は、前記座標入力面の座標入力有効エリアの中央位置であり、
前記第２の位置は、前記座標入力面の座標入力有効エリアを前記第１の位置を中央に４つの象限に区切った場合の１つの象限の中央位置であり、
前記第３の位置は、前記１つの象限を規定する４点の内の、前記座標入力面の座標入力有効エリアの４隅部の１つに対応する位置である
ことを特徴とするプログラム。
【請求項９】
前記第１の演算手順によって演算された座標値（Ｘ’、Ｙ’）が前記座標入力面の座標入力有効エリア内の特定の判定領域内にあるか否かに基づいて、該第１の演算手順によって演算された座標値（Ｘ’、Ｙ’）を出力するか、該座標値（Ｘ’、Ｙ’）に基づいて第２の演算手順を実行して座標値（Ｘ”、Ｙ”）を出力するかを判定する判定手順を更に備える
ことを特徴とする請求項８に記載のプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、指示具からの光を座標入力画面に照射して光スポットを生成し、前記光スポットに対応した座標を生成する座標入力装置及びその制御方法、プログラムに関するものである。
【０００２】
【従来の技術】
近年、大画面ディスプレイの画面の明るさが改善され、明るく照明された環境においても十分使用できるようになってきており、需要が拡大されつつある。そして、座標入力装置は、そのような大画面ディスプレイと組み合わせた環境においても使用できるように、外乱光に強いことがますます必要とされてきている。
【０００３】
また、近年、無線通信手段として、赤外線を利用する機器が増加しており、赤外、可視光ともに外乱光は増加傾向にあるため、外乱光に強いことは、装置の重要な特性の一つである。
【０００４】
しかしながら、特公平７−７６９０２号公報、特開平６−２７４２６６号公報に開示されているように従来のＣＣＤセンサを用いるものは、光学フィルタでしか外乱光を抑制することができない。
【０００５】
これに対して、特許第２５０３１８２号に開示されているＰＳＤを用いる装置では、光強度を周波数変調し、この変調波を同期検波することにより、外乱光の影響を抑制できるため、光学フィルタと併用することによって、外乱光に対して強い特性を発揮する。
【０００６】
一方、大画面ディスプレイは、明るさの改善と同時に高解像度化も進められている。このため、座標入力装置の分解能も向上させる必要があるが、外乱光に強いＰＳＤを用いた装置ではこの点において問題がある。
【０００７】
すなわち、センサ出力電圧のダイナミックレンジが入力範囲にそのまま対応しているため、例えば全体を１０００の座標に分解する場合には少なくとも６０ｄＢ以上のＳ／Ｎ比が必要になり、さらに前記特許第２５０３１８２号で述べられているように、直線性誤差のデジタル補正が必須であるため、高精度なアナログ回路と多ビットのＡＤ変換器と演算回路とが必要になる。さらに、センサ出力信号のＳ／Ｎ比は光量と光スポットのシャープさに依存するため、前述した外乱光の抑圧だけでは不十分であり、明るく高精度な光学系も必要になる。このようなことから、装置自体が非常に高価で、大型なものになってしまう。
【０００８】
ＣＣＤセンサを用い、分解能を高める手法として、前記特公平７−７６９０２号公報では、ビデオカメラを複数台同時使用することが開示されているが、これでは装置が大型化し、高価になる。また、一台で画素数の多いビデオカメラの場合には、複数のカメラを用いるよりもさらに大型化し、高価となる。また、画像処理によって、画素数よりも高い分解能を達成するには、膨大な画像データの高速処理が必要となり、リアルタイム動作をさせるには非常に大型で、高価なものとなってしまう。
【０００９】
また、前記特開平６−２７４２６６号公報では、特殊な光学マスクと信号処理とによって高分解能が得られるようにしており、外乱光が小さく良好なＳ／Ｎ比が確保できれば高分解能化が可能である。しかし、実際には、リニアセンサでは結像が線状であり、点像となるエリアセンサに比べて面内で外乱光との分離ができないため、外乱光の影響を受けやすく、外乱光の少ない特殊な環境でしか実用にならないという問題がある。
【００１０】
そこで、外乱光の影響を抑制し、安価な座標入力装置を提供することを目的として、特開平１１−２１９２５３号に開示されているように、筆記具に内蔵された発光素子を点滅させ、点灯時の信号と非点灯時の信号との差分信号をリニアセンサで検出することで外乱光の影響を抑制し、リニアセンサのどの画素にその差分信号が出力されているかによって、前記筆記具の位置を検出する方式がある。
【発明が解決しようとする課題】
しかしながら、前記特開平１１−２１９２５３号に開示される座標入力装置においては、次のような課題が存在する。図７には、２つのリニアセンサ２０Ｘ、２０Ｙの配置関係、結像光学系としての円柱状レンズ９０Ｘ、９０Ｙの配置関係、及び円柱状レンズ９０Ｘ、９０Ｙによって座標入力面１０上の光スポット５の像が各リニアセンサ２０Ｘ、２０Ｙの感光部２１Ｘ、２１Ｙ上に線状に結像する様子（図中の像９１Ｘ、９１Ｙ）を示す。
【００１１】
これら２つのリニアセンサ２０Ｘ、２０Ｙを正確に直角に配置することによって、それぞれが光スポット５のＸ座標、Ｙ座標を反映した画素に光出力が最大となるようなセンサ出力信号が得られることになる。光スポット５の像９１Ｘ、９１Ｙが各リニアセンサ２０Ｘ、２０Ｙの画素の数倍の像幅となるように焦点調節を行って適度にボケを生じさせ、複数の画素から光出力が得られるように構成され、この複数画素の信号の重心位置を求めることによって、光スポット５からのリニアセンサ２０Ｘ、２０Ｙの出力画素番号αX、αYを算出することができる。
【００１２】
ここで、この出力画素番号αX、αYを用いて座標値を演算する従来技術について説明する。
【００１３】
出力データの重心（αX、αY）から座標を算出するためには、予め既知の所定位置における光スポット５のリニアセンサ２０Ｘ、２０Ｙの出力画素番号を記憶しておく必要がある。すなわち、第１の既知の点の座標値（Ｘ0、Ｙ0）及び第２の既知の点の座標値（Ｘ1、Ｙ1）における光スポット５のリニアセンサ２０Ｘ、２０Ｙの出力画素番号を各々（αX0、αY0）、（αX1、αY1）とすれば、検出すべき任意の位置の光スポット５の座標値（Ｘ、Ｙ）は、下記の式（１）、（２）で与えられる。
【００１４】
Ｘ＝（αX−αX0）（Ｘ1−Ｘ0）／（αX1−αX0）＋Ｘ0          （１）
Ｙ＝（αY−αY0）（Ｙ1−Ｙ0）／（αY1−αY0）＋Ｙ0          （２）
このような演算で求められる座標入力装置の座標算出精度について示したのが、図１７である。同図において、Ｘ軸、Ｙ軸は座標入力面の座標値を示し、座標値（０、０）が座標入力有効エリアの中央位置に相当し、この原点に対しレンズ等の光学素子を幾何学的に対象に配置すれば、各象現での光学的特性は原点を中心に対称となる。そこで、ある象現におけるこの座標入力装置の座標算出精度について調べた結果が図１７に示されている。
【００１５】
ここで、図１４はその光学的配置をＸ軸方向のみ（Ｘ軸方向センサ２０Ｘ、及び円柱状レンズ９０Ｘ）示したものであり、図１７のＸ軸、Ｙ軸は座標入力面の座標値軸であって、図１４のＸ軸、Ｙ軸と同等である。また、図１７のＺ軸は、本来算出すべき座標値と、得られる座標入力装置の算出座標値の差、つまり、この座標入力装置の座標算出精度について示したものである。
【００１６】
この解析結果は、式（１）、（２）に示される既知の点（Ｘ0、Ｙ0）、（Ｘ1、Ｙ1）を、図１４に示されるように、第１の既知の点（Ｘ0、Ｙ0）を原点（座標入力有効エリアの中央位置）、第２の既知の点（Ｘ1、Ｙ1）をその象現における座標入力有効エリアの中央位置とした場合のものである。これによれば、Ｘ軸の値が大きく、かつ、Ｙ軸の値が大きくなる領域において、徐々に精度が悪くなる様子が見て取れる（グラフよりこの座標入力装置の精度は約１１ｍｍ程度と言える）。尚、図１７は、Ｘ方向の座標算出精度について調べたものであるが、Ｙ軸方向の座標算出精度も同様の結果となった。
【００１７】
つまり、従来例における座標算出精度は、Ｘ軸の値が大きく、かつ、Ｙ軸の値が大きくなる領域で、座標算出精度が低下する問題が発生している。本現象は、数値シミュレーションによる解析の結果、円柱状レンズを用いたことにより発生するものであることが分かった。この歪みを解決するためには、前記円柱状レンズの軸に垂直な方向ばかりでなく、軸に平行な方向の断面形状も例えば非球面状としなければならず、たとえそのようなレンズの光学的な設計が可能であったとしても、プラスチックレンズの型制作が容易でなく、非常に高価なレンズとなってしまう。
【００１８】
本発明は上記のような問題に鑑みてなされたものであり、高精度、高分解能であり、操作性に優れた座標入力装置及びその制御方法、プログラムを安価に提供することを目的とする。
【００１９】
【課題を解決するための手段】
上記の目的を達成するための本発明による座標入力装置は以下の構成を備える。即ち、
指示具からの光を座標入力面に照射して光スポットを生成し、前記光スポットに対応した座標を生成する座標入力装置であって、
指示具からの照射により座標入力面に生成された光スポットを検出する検出手段と、
少なくとも３個所の既知の第１乃至第３の位置における光スポットによる前記検出手段の出力情報を記憶する記憶手段と、
前記記憶手段に記憶された第１乃至第３の位置における出力情報の内、少なくとも前記第１及び第２の位置における出力情報を用いて、前記座標入力面に生成された光スポットの座標値（Ｘ’、Ｙ’）を演算する第１の演算手段と、
前記第１の演算手段で演算された座標値（Ｘ’、Ｙ’）と前記第３の位置における出力情報を用いて前記座標入力面に生成された光スポットの座標値（Ｘ”、Ｙ”）を演算する第２の演算手段とを備え、
前記座標入力面の座標入力有効エリアは、矩形であり、
前記第１の位置は、前記座標入力面の座標入力有効エリアの中央位置であり、
前記第２の位置は、前記座標入力面の座標入力有効エリアを前記第１の位置を中央に４つの象限に区切った場合の１つの象限の中央位置であり、
前記第３の位置は、前記１つの象限を規定する４点の内の、前記座標入力面の座標入力有効エリアの４隅部の１つに対応する位置である。
【００２０】
また、好ましくは、前記第２の演算手段によって演算される座標値（Ｘ”、Ｙ”）は、前記第１の演算手段で演算された座標値（Ｘ’、Ｙ’）の従属関数である。
【００２２】
また、好ましくは、前記第１の演算結果に基づいて、前記第２の演算の実行の有無を判定する判定手段を
更に備える。
【００２３】
また、好ましくは、前記第３の位置は、前記座標入力面の座標入力有効エリアの４隅部の少なくとも１つである。
【００２４】
また、好ましくは、前記検出手段は、感光部がＸ軸方向に直線状に配列されたＸ軸用センサと、感光部がＹ軸方向に直線状に配列されたＹ軸用センサとからなり、前記Ｘ軸用センサにはＹ軸方向に軸を有する円柱状レンズを介して光スポットの光が結像され、前記Ｙ軸用センサにはＸ軸方向に軸を有する円柱状レンズを介して光スポットの光が結像され、
前記第３の位置は、前記座標入力面の座標入力有効エリア内において、前記円柱状レンズに入射するその位置からの光線と、前記検出手段の前記感光部の垂線との間の角度が最大となる位置に設定される。
【００３１】
上記の目的を達成するための本発明による座標入力装置の制御方法は以下の構成を備える。即ち、
指示具からの光を座標入力面に照射して光スポットを生成し、前記光スポットに対応した座標を生成する座標入力装置の制御方法であって、
指示具からの照射により座標入力面に生成された光スポットを検出する検出工程と、
少なくとも３個所の既知の第１乃至第３の位置における光スポットによる前記検出工程の出力情報の内、少なくとも前記第１及び第２の位置における出力情報を用いて、前記座標入力面に生成された光スポットの座標値（Ｘ’、Ｙ’）を演算する第１の演算工程と、
前記第１の演算工程で演算された座標値（Ｘ’、Ｙ’）と前記第３の位置における出力情報を用いて前記座標入力面に生成された光スポットの座標値（Ｘ”、Ｙ”）を演算する第２の演算工程とを備え、
前記座標入力面の座標入力有効エリアは、矩形であり、
前記第１の位置は、前記座標入力面の座標入力有効エリアの中央位置であり、
前記第２の位置は、前記座標入力面の座標入力有効エリアを前記第１の位置を中央に４つの象限に区切った場合の１つの象限の中央位置であり、
前記第３の位置は、前記１つの象限を規定する４点の内の、前記座標入力面の座標入力有効エリアの４隅部の１つに対応する位置である。
【００３２】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
指示具からの光を座標入力面に照射して光スポットを生成し、前記光スポットに対応した座標を生成する手順をコンピュータに実行させるためのプログラムであって、
指示具からの照射により座標入力面に生成された光スポットを検出する検出手順と、
少なくとも３個所の既知の第１乃至第３の位置における光スポットによる前記検出手順の出力情報の内、少なくとも前記第１及び第２の位置における出力情報を用いて、前記座標入力面に生成された光スポットの座標値（Ｘ’、Ｙ’）を演算する第１の演算手順と、
前記第１の演算手順で演算された座標値（Ｘ’、Ｙ’）と前記第３の位置における出力情報を用いて前記座標入力面に生成された光スポットの座標値（Ｘ”、Ｙ”）を演算する第２の演算手順とをコンピュータに実行させ、
前記座標入力面の座標入力有効エリアは、矩形であり、
前記第１の位置は、前記座標入力面の座標入力有効エリアの中央位置であり、
前記第２の位置は、前記座標入力面の座標入力有効エリアを前記第１の位置を中央に４つの象限に区切った場合の１つの象限の中央位置であり、
前記第３の位置は、前記１つの象限を規定する４点の内の、前記座標入力面の座標入力有効エリアの４隅部の１つに対応する位置である。
【００３３】
【発明の実施の形態】
以下、図面を参照して、本発明の実施の形態を詳細に説明する。
【００３４】
まず、本発明に係る光学式座標入力装置の概略構成について、図１を用いて説明する。
＜実施形態１＞
図１は実施形態１の座標入力装置の概略構成を示す図である。
【００３５】
本座標入力装置は大別して、座標入力面であるスクリーン１０に対して光スポット５を形成する指示具４と、光スポット５のスクリーン１０上の座標値等を検出する座標検出器１とからなる。図１には、それらの構成と合わせて、出力装置としてスクリーン１０に、画像あるいは座標値等を表示する投射型表示装置８を示している。
【００３６】
座標検出器１は、座標検出センサ部２と、この座標検出センサ部２の制御および座標演算などを行うコントローラ３、受光素子６、信号処理部７、各種設定値を記憶するＥＥＰＲＯＭ等からなる不揮発メモリ９とから構成されている。光スポット５のスクリーン１０上の座標位置及び指示具４の後述する各スイッチの状態に対応する制御信号とを検出して、コントローラ３によって外部接続装置（不図示）にその情報を通信するようにしている。
【００３７】
投射型表示装置８は、ホストコンピュータ（不図示）などの外部接続装置である表示信号源からの画像信号が入力される画像信号処理部８１と、これにより制御される液晶パネル８２、ランプ８３、ミラー８４、コンデンサーレンズ８５からなる照明光学系と、液晶パネル８２の像をスクリーン１０上に投影する投影レンズ８６とからなり、所望の画像情報をスクリーン１０に表示することができる。スクリーン１０は、投射画像の観察範囲を広くするために適度な光拡散性を持たせてあるので、指示具４から発射された光ビームも光スポット５の位置で拡散され、画面上の位置や光ビームの方向によらず、光スポット５の位置で拡散された光の一部が座標検出器１に入射するように構成されている。
【００３８】
このように構成することで、指示具４によりスクリーン１０上で文字情報や線画情報を入力し、その情報を投射型表示装置８で表示することにより、あたかも『紙と鉛筆』のような関係で情報の入出力を可能とする他、ボタン操作やアイコンの選択決定などの入力操作を自由に行うことが可能となる。
＜指示具４の詳細説明＞
図２は実施形態１の指示具の詳細構成を示す図である。
【００３９】
指示具４は、光ビームを発射する半導体レーザ、あるいは赤外光を発射するＬＥＤ等の発光素子４１と、その発光を駆動制御する発光制御部４２、電源部４４、操作用スイッチ４３Ａ〜４３Ｄと、電池等の電源部４４、さらに発光素子４１を覆う脱着可能な透光性部材よりなるキャップ４６とを内蔵している。発光制御部４２は、操作用スイッチ４３Ａ〜４３Ｄの状態により、発光のＯＮ（オン）／ＯＦＦ（オフ）と、後述する変調方法とによって、制御信号を重畳した発光制御を行う。
【００４０】
図３は実施形態１の指示具の動作モードを示す図である。
【００４１】
スイッチＡ〜Ｄは、図２のスイッチ４３Ａ〜４３Ｄに対応している。尚、図３中、「発光」とは発光信号（座標信号）に対応し、「ペンダウン」、「ペンボタン」とは制御信号に対応する。
【００４２】
操作者は、指示具４を握ってスクリーン１０にその先端を向ける。このとき、スイッチ４３Ａは親指が自然に触れる位置に配置されており、これを押すことによって光ビーム４５が発射される。これにより、スクリーン１０上に光スポット５が生成され、所定の処理によって座標信号が出力され始める。但し、この状態では、ペンダウン及びペンボタンの制御信号はＯＦＦの状態（例えば、図３の２段目の状態）である。このため、スクリーン１０上では、カーソルの動きやボタンのハイライト切替などによる操作者への指示位置の明示のみが行われる。
【００４３】
また、人差し指及び中指が自然に触れる位置に配置されたスイッチ４３Ｃ、４３Ｄを押すことによって、図３に示すようにペンダウン及びペンボタンの制御信号が、発光信号に重畳された信号となる。すなわち、スイッチ４３Ｃを押すことによってペンダウンの状態となり、文字や線画の入力を開始したり、ボタンを選択決定するなどの画面制御が実行できる。スイッチ４３Ｄを押すことによって、ペンボタンの状態（例えば、図３の３、５段目の状態）となり、メニューの呼び出しなどの別機能に対応させることができる。これにより、操作者は、片手でスクリーン１０上の任意の位置で、片手で、すばやく正確に文字や図形を描いたり、ボタンやメニューを選択したりすることによって、軽快に操作することができる。
【００４４】
また、指示具４の先端部には、スイッチ４３Ｂが設けられていて、スクリーン１０に指示具４を押し付けることによって動作する。操作者が、指示具４を握り、その先端部をスクリーン１０に押し付けることでペンダウン状態（（図３の最下段の状態）となるので、余分なボタン操作を行うことなしに自然なペン入力操作を行うことができる。
【００４５】
また、スイッチ４３Ａはペンボタンの役割を持つ。もちろん、画面に押し付けないでスイッチ４３Ａを押せば、カーソルのみを動かすこともできる。実際上、文字や図形の入力は画面から離れて行うより、直接画面に触れた方が遥かに操作性、正確性が良い。
【００４６】
実施形態１では、このように４個のスイッチを用いて画面から離れていても、また、直前にいても、自然で快適な操作が可能であり、場合によって使い分けることができるように構成されている。さらには、直接入力専用（ポインタとして使用しない）ならば、光ビームでなく拡散光源でよいので、半導体レーザよりも安価で長寿命のＬＥＤを用いることも可能である。
【００４７】
また、このように近接用、遠隔用の２種類の指示具４を用いたり、同時に２人以上で操作する、あるいは色や太さなど属性の異なる複数の指示具４を用いる場合のために、発光制御部４２は、固有のＩＤ番号を制御信号と共に送信するように設定されている。送信されたＩＤ番号に対応して、描かれる線の太さや色などの属性を外部接続機器側のソフトウェアなどで決定するようになっており、スクリーン１０上のボタンやメニューなどで設定変更することができる。この操作は、指示具４に別途操作ボタン等を設けて変更指示信号送信するようにしてもよく、これらの設定については、指示具４内部あるいは座標検出器１内に状態を保持するようにしてＩＤ番号ではなく、属性情報を外部接続機器へ送信するように構成することも可能である。
【００４８】
また、このような追加の操作ボタンは、他の機能、例えば、表示装置の点滅や信号源の切換、録画装置などの操作などを行えるようにも設定可能である。さらに、スイッチ４３Ａ、４３Ｂのいずれか一方または両方に圧力検出手段を設けることによって筆圧検出を行い、この筆圧データを制御信号と共に送信するなど各種の有用な信号を送信することが可能である。
【００４９】
指示具４のスイッチ４３Ａまたはスイッチ４３ＢがＯＮになると発光が開始され、その発光信号は比較的長い連続するパルス列からなるリーダ部と、これに続くコード（メーカーＩＤなど）とからなるヘッダ部をまず出力し、その後、ペンＩＤや制御信号などからなる送信データ列が予め定義された順序と形式に従ってその情報を順次出力する（図５、ＬＳＧ信号参照）。
【００５０】
尚、実施形態１では、各データビットにおいて、“１”ビットは“０”ビットに対して２倍の間隔をもつような変調形式で形成しているが、データの符号化方式については種々のものが使用可能である。しかしながら、後述するように座標検出のためには、平均光量が一定していること、また、ＰＬＬの同調を行うにはクロック成分が十分大きいこと等が望ましく、送信すべきデータ量から見て冗長度を比較的高くしても支障はない等を勘案して、実施形態１においては、６ビット（６４個）のデータを１０ビット長のコードのうち、１と０が同数で、かつ、１あるいは０の連続数が３以下の１０８個のコードに割り付ける方法で符号化している。このような符号化方式をとることによって、平均電力が一定になり、また十分なクロック成分が含まれるので、復調時に容易に安定した同期信号を生成することができる。
【００５１】
また、前述したように、ペンダウンおよびペンボタンの制御信号は、２ビットであるがＩＤなどその他の長いデータも送信しなければならない。そこで、実施形態１では、２４ビットを１ブロックとして、先頭の２ビットは制御信号、次の２ビットは内容識別コード（例えば、筆圧信号は００、ＩＤは１１等）、次の２ビットはこれらのパリティ、その後に、１６ビットのデータと２ビットのパリティとを並べて、１ブロックのデータとして構成する。このようなデータを前述したような方式により符号化すると、４０ビット長の信号になる。その先頭に１０ビット長のシンクコードを付加する。このシンクコードは０が４個、１が５個連続する、あるいはその反転パターン（直前のブロックの終わりが、１か０かで切り替える）という特殊なコードを使用して、データワードとの識別が容易で、データ列の途中においても確実にその位置を識別してデータの復元ができるようになっている。従って、１ブロックで５０ビット長の伝送信号となり、制御信号と１６ビットのＩＤまたは筆圧等のデータを送信していることになる。
【００５２】
実施形態１では、第１の周波数６０ｋＨｚの１／８の７．５ｋＨｚを第２の周波数としているが、前述のような符号化方式を採用しているため、平均伝送ビットレートは、この２／３の５ｋＨｚとなる。さらに、１ブロックが５０ビットなので、１００Ｈｚでは１ブロック２４ビットのデータを送信していることになる。従って、パリティを除いた実効ビットレートは、２０００ビット／秒である。このように冗長性は高いが、誤検出を防止し、同期を容易にすることが非常に簡単な構成で実現できる方式となっている。また、後述のセンサ制御のための位相同期信号と、シンクコードの繰り返し周期のチェックとを併用することによって、信号に短いドロップアウトが発生した場合でも追従ができ、逆に実際に、ペンアップやダブルタップのような素早い操作を行った場合との識別は、ヘッダ信号の有無によって確実に行えるようにもなっている。
＜座標検出器１の詳細説明＞
図４は実施形態１の座標検出器の詳細構成を示す図である。
【００５３】
この座標検出器１には、集光光学系によって高感度に光量検出を行う受光素子６と、結像光学系によって光の到来方向を検出する２つのリニアセンサ２０Ｘ，２０Ｙとが設けられている。そして、指示具４に内蔵された発光素子４１からの光ビームにより、スクリーン１０上に生成された光スポット５からの拡散光をそれぞれ受光する。
＜集光光学系の動作説明＞
受光素子６には、集光光学系としての集光レンズ６ａが装着されており、スクリーン１０上の全範囲から高感度で所定波長の光量を検知する。この検知出力は、周波数検波部７１によって検波された後、制御信号検出部７２において制御信号（指示具４の発光制御部４２によって重畳された信号）などのデータを含むデジタル信号に復調される。
【００５４】
この制御信号の復元動作におけるタイミングチャートについて、図５を用いて説明する。
【００５５】
図５は実施形態１の制御信号の復元動作におけるタイミングチャートである。
【００５６】
上述したようなビット列からなるデータ信号は、受光素子６で光出力信号ＬＳＧとして検出され、周波数検波部７１で検波される。周波数検波部７１は、光出力信号ＬＳＧの中で最も高い第１の周波数のパルス周期に同調するように構成され、光学的なフィルタと併用することによって、外乱光の影響を受けることなく、変調信号ＣＭＤを復調する。この検波方法は広く実用されている赤外線リモートコントローラと同様であり、信頼性の高い無線通信方式である。
【００５７】
実施形態１では、この第１の周波数としては、一般に使用されている赤外線リモートコントローラより高い帯域である６０ＫＨｚを用い、同時に使用しても誤動作することの無いように構成したが、この第１の周波数を一般に使用されている赤外線リモートコントローラと同じ帯域にすることも可能であり、このような場合にはＩＤなどで識別することによって誤動作を防止する。
【００５８】
さて、周波数検波部７１により検波された変調信号ＣＭＤは、制御信号検出部７２によってデジタルデータとして解釈され、前述したペンダウンやペンボタンなどの制御信号が復元される。この復元された制御信号は、通信制御部３３に送られる。また、変調信号ＣＭＤに含まれる第２の周波数であるコード変調の周期は、センサ制御部３１によって検出され、この信号によってリニアセンサ２０Ｘ、２０Ｙを制御することになる。すなわち、センサ制御部３１では、図５に示したヘッダ部（ＨＥＡＤＥＲ）のタイミングでリセットし、その後、変調信号ＣＭＤの立ち下がりに位相同期した信号ＬＣＫを生成する。
【００５９】
従って、この生成された信号ＬＣＫは、指示具４の発光の有無に同期した一定周波数の信号となる。また、変調信号ＣＭＤからは、光入力の有無を示す信号ＬＯＮと、この信号ＬＯＮによって起動されるセンサリセット信号ＲＣＬとが生成される。このセンサリセット信号ＲＣＬがハイレベルの間に２つのリニアセンサ２０Ｘ、２０Ｙはリセットされ、信号ＬＣＫの立ち上がりに同期したセンサリセット信号ＲＣＬの立ち下がりのタイミングによって後述する同期積分動作が開始される。
【００６０】
一方、制御信号検出部７２はヘッダ部を検出し、他の機器やノイズではなく、指示具４からの入力が開始されたことを確認すると、この確認を示す信号が通信制御部３３からセンサ制御部３１に伝達され、リニアセンサ２０Ｘ，２０Ｙの動作有効を示す信号ＣＯＮがハイレベルにセットされ、座標演算部３２の動作が開始される。
【００６１】
図６は、光出力信号ＬＳＧが無くなり、一連動作の終了時におけるタイミングチャートを示す。光出力信号ＬＳＧから検波された変調信号ＣＭＤがローレベルを一定時間以上続けると、光入力の有無を示す信号ＬＯＮがローレベルになり、さらに、センサ動作有効を示す信号ＣＯＮもローレベルとなり、その結果、リニアセンサ２０Ｘ，２０Ｙによる座標の出力動作を終了する。
＜結像光学系の動作説明＞
図７はリニアセンサ２０Ｘ，２０Ｙの配置関係を示す図である。
【００６２】
図７では、２つのリニアセンサ２０Ｘ，２０Ｙの配置関係を示すと共に、結像光学系としての円柱状レンズ９０Ｘ，９０Ｙによって光スポット５の像が、リニアセンサ２０Ｘ，２０Ｙの各センサの感光部２１Ｘ、２１Ｙに線状に像９１Ｘ、９１Ｙを結像する。これらリニアセンサ２０Ｘ，２０Ｙを正確に直角に配置することによって、それぞれがＸ座標、Ｙ座標を反映した画素にピークを持つ出力が得られる。
【００６３】
そして、これらリニアセンサ２０Ｘ，２０Ｙは、センサ制御部３１によって制御され、出力信号はセンサ制御部３１に接続されたＡＤ変換部３１Ａによってデジタル信号として座標演算部３２に送られる。座標演算部３２は、入力されたデジタル信号より出力座標値を計算し、その計算結果を制御信号検出部７２からの制御信号などのデータと共に通信制御部３３を介して、所定の通信方法で外部制御装置（不図示）に送出する。また、調整時など通常と異なる動作（例えば、ユーザ校正値の設定）を行わせる場合は、通信制御部３３からセンサ制御部３１、座標演算部３２へモード切換信号が送られる。
【００６４】
本例では、光スポット５の像がリニアセンサ２０Ｘ，２０Ｙの各センサの画素の数倍の像幅となるように焦点調節あるいは拡散フィルム等を用いて故意にボケを生じさせている。直径１．５ｍｍのプラスチック製の円柱状レンズと画素ピッチ約１５μｍ、有効６４画素のリニアＣＣＤ、赤外線ＬＥＤを用いた実験によれば、最もシャープな結像をさせると、約４０度の画角全面にわたって１５μｍ以下の像幅となる。このような状態では、画素間分割演算結果が階段状に歪んでしまうことがわかった。
【００６５】
そこで、像幅が３０から６０μｍ程度となるように、レンズの位置を調節すると、非常に滑らかな座標データが得られた。もちろん、大きくぼけさせると、ピークレベルが小さくなってしまうので、数画素程度の像幅が最適である。画素数の少ないＣＣＤと、適度にボケた光学系を用いることが、本発明のポイントの一つであり、このような組み合わせを用いることによって、演算データ量が少なく、小さなセンサと光学系で非常に高分解能、高精度、高速でかつ低コストな座標入力装置を実現できる。
【００６６】
アレイ状に配置されたＸ座標検出用リニアセンサ２０Ｘ，Ｙ座標検出用リニアセンサ２０Ｙは同一の構成であり、その詳細構成について、図８を用いて説明する。
【００６７】
図８は実施形態１のリニアセンサの詳細構成を示す図である。
【００６８】
受光部であるセンサアレイ２１はＮ個の画素（例えば、光電変換素子が６４個、直線状に配列されたセンサアレイであって、この場合、６４画素と定義する）からなり、受光量に応じた電荷が積分部２２に貯えられる。積分部２２は、Ｎ個からなり、ゲートＩＣＧに電圧を加えることによってリセットできるため、電子シャッタ動作が可能である。この積分部２２に貯えられた電荷は、電極ＳＴにパルス電圧を加えることによって蓄積部２３に転送される。この蓄積部２３は、２Ｎ個からなり、指示具４の発光タイミングに同期したＩＲＣＬＫ信号のＨ（ハイレベル）とＬ（ローレベル）とにそれぞれ対応して別々に電荷が蓄積される。その後、光の点滅に同期して各々別々に蓄積された電荷は、転送クロックを簡単にするために設けられた２Ｎ個からなるシフト部２４を介して、２Ｎ個からなるリニアＣＣＤ部２５に転送される。
【００６９】
これにより、リニアＣＣＤ部２５には、Ｎ画素のセンサ出力の光の点滅に各々対応した電荷が隣接して並んで記憶されることになる。これらリニアＣＣＤ部２５に並べられた電荷は、２Ｎ個からなるリングＣＣＤ部２６に順次転送される。このリングＣＣＤ２６は、ＣＬＲ信号によってＣＬＲ部２７で空にされた後、リニアＣＣＤ部２５からの電荷を順次蓄積していく。
【００７０】
このようにして蓄積された電荷は、アンプ２９によって読み出される。このアンプ２９は、非破壊で蓄積電荷量に比例した電圧を出力するものであり、実際には、隣接した電荷量の差分、すなわち、発光素子４１の点灯時の電荷量から非点灯時の電荷量を差し引いた分の値を増幅して出力する。
【００７１】
この時、得られるリニアセンサ２０Ｘ，２０Ｙの出力波形の一例について、図９（横軸がＣＣＤ画素番号、縦軸が出力レベル）を用いて説明する。
【００７２】
図９中、Ｂの波形は発光素子４１の点灯時の信号のみを読み出したときの波形であり、Ａの波形は非点灯時の波形、すなわち、外乱光のみの波形である（図８に示したように、リングＣＣＤ部２６には、これらＡ，Ｂの波形に対応する画素の電荷が隣接して並んでいる）。アンプ２９は、その隣接する電荷量の差分値（Ｂ−Ａの波形）を非破壊増幅して出力することになるが、これにより、指示具４からの光のみの像の信号を得ることができ、外乱光（ノイズ）の影響を受けることなく安定した座標入力が可能となる。
【００７３】
また、図９に示したＢ−Ａの波形の最大値をＰＥＡＫ値と定義すれば、光に対してリニアセンサ２０Ｘ，２０Ｙの各リニアセンサが機能する蓄積時間を増大させれば、その時間に応じてＰＥＡＫ値は増大する。換言すれば、ＩＲＣＬＫ信号の１周期分の時間を単位蓄積時間とし、それを単位として蓄積回数ｎを定義すれば、蓄積回数ｎを増大させることでＰＥＡＫ値は増大する。そして、このＰＥＡＫ値が所定の大ささＴＨ１に達したことを検出することで、常に一定した品位の出力波形を得ることができる。
【００７４】
一方、外乱光が非常に強い場合、差分波形Ｂ−Ａのピークが十分な大きさになる前に、リングＣＣＤ部２６の転送電荷が飽和してしまう恐れがある。このような場合を考慮して、リニアセンサ２０Ｘ，２０Ｙの各リニアセンサにはスキム機能を有するＳＫＩＭ部２８が付設されている。ＳＫＩＭ部２８は、非点灯信号のレベルを監視し、図１０において、ｎ回目のＡｎで信号レベルが所定の値を超えている場合（図中、一点鎖線）、一定量の電荷をＡ，Ｂの各画素から抜き取るようにする。これにより、次のｎ＋１回目には、Ａｎ＋１に示すような波形となり、これを繰り返すことによって、非常に強い外乱光があっても飽和することなく、信号電荷の蓄積を続けることができる。
【００７５】
従って、指示具４からの点滅光の光量が微弱であっても、多数回積分動作を継続することによって、十分な大きさの信号波形を得ることが可能になる。特に、指示具４に可視光域の発光源を用いる場合、表示画像の信号が重畳するので、前述したスキム機能と差分出力を用いることによって、非常にノイズの少ないシャープな波形を得ることが可能となる。
【００７６】
また、非常に強い外乱光が入射された場合には、ＰＥＡＫ値を監視し、そのＰＥＡＫ値が所定レベルに達した時に蓄積動作を停止させても良い。つまり、このような場合には、蓄積回数を増大させなくても十分な品位の出力波形が得られるので、信頼性の高い座標演算が可能となる。それとともに、蓄積回数が比較的少なくて済むことから、入射光が弱い場合に比べて、単位時間あたりの座標サンプリングレートが向上する（例えば、２０点／秒で座標算出としていたものが４０点／秒とより高速で座標演算が可能という意味）という利点が得られる。
【００７７】
次に、リニアセンサ２０Ｘ，２０Ｙの動作制御について、図１１を用いて説明する。
【００７８】
図１１は実施形態１のリニアセンサの動作制御を示すフローチャートである。
【００７９】
センサ制御部３１がセンサ制御動作を開始すると、ステップＳ１０２において、信号ＣＯＮを監視する。そして、信号ＣＯＮがハイレベルである場合（ステップＳ１０２でＹＥＳ）、ステップＳ１０３に進み、フラグｐｏｎが１にセットされ、蓄積回数ｎを０にリセットする。そして、ステップＳ１０４において、センサ出力のＰＥＡＫ値（ピークレベル）が所定値ＴＨ１より大きいか否かを判定する。
【００８０】
ＰＥＡＫ値が所定値ＴＨ１未満である場合（ステップＳ１０４でＮＯ）、ステップＳ１０５において、蓄積回数ｎが第１所定回数ｎ０より大きいか否かを判定する。蓄積回数ｎが第１所定回数ｎ０未満である場合（ステップＳ１０５でＮＯ）、ステップＳ１０６に進み、蓄積回数ｎを１インクリメントして、ステップＳ１０４に戻る。一方、ＰＥＡＫ値が所定値ＴＨ１より大きい場合（ステップＳ１０４でＹＥＳ）、あるいは蓄積回数ｎが第１所定回数ｎ０より大きい場合（ステップＳ１０５でＹＥＳ）、ステップＳ１０７に進み、積分停止信号ＲＯＮがハイレベル（ＨＩ）になって積分動作が停止される。そして、座標演算部３２による座標値演算の処理が開始される。
【００８１】
その後、ステップＳ１０８において、蓄積回数ｎが第２所定回数ｎ１より大きいか否かを判定する。蓄積回数ｎが第１所定回数ｎ１未満である場合（ステップＳ１０８でＮＯ）、ステップＳ１０９に進み、蓄積回数ｎを１インクリメントして、ステップＳ１０８に戻る。一方、蓄積回数ｎが第２所定回数ｎ１より大きい場合（ステップＳ１０８でＹＥＳ）、ステップＳ１１０に進み、積分停止信号ＲＯＮがローレベルになり、同時に、信号ＬＣＫの周期の数倍（図６では２倍）の間、センサリセット信号ＲＣＬがハイレベルになる。次に、ステップＳ１１２において、信号ＣＯＮを監視する。信号ＣＯＮがハイレベルである場合（ステップＳ１１２でＹＥＳ）、ステップＳ１０３に進む。一方、信号ＣＯＮがローレベルである場合（ステップＳ１１２でＮＯ）、ステップＳ１１１に進み、処理１周期分待機する。
【００８２】
つまり、信号ＣＯＮがハイレベルである間はこの動作が繰り返され、所定回数ｎ１で決まる周期ごとに座標値演算が行われる。また、ごみなどの影響で、信号ＣＯＮがドロップしても、１回のみは状態を保持するように、ステップＳ１１１が設けられている。もし、連続して２周期の間、信号ＣＯＮがローレベルである場合（ステップＳ１０２でＮＯ）、ステップＳ１１３に進み、フラグｐｏｎが０にリセットされ、シンク信号待ちの状態になって、初期状態に戻る。
【００８３】
このドロップアウト対策部分は、１周期でなくもっと長くすることも可能であり、外乱が少なければ、逆に短くしてしまってもよいことは言うまでもない。尚、ここの１周期を前述のデータブロックの周期の自然数倍として、シンクコードのタイミングと一致させ、信号ＣＯＮの代りにシンクコード検出信号を用いても同様の動作を行える。
【００８４】
また、座標検出器に到達する指示具４の光は、指示具４に内蔵された電源（電池）４４の消耗により変動する他、指示具４の姿勢によっても変動する。特に、スクリーン１０の光拡散性が小さい場合、表示画像の正面輝度は向上するが、この指示具４の姿勢によるリニアセンサ２０Ｘ、２０Ｙへの入力光量の変動が大きくなってしまう。しかしながら、実施形態１では、このような場合であっても、積分回数が自動的に追従して常に安定した出力信号を得ることができるので、安定した座標検出が可能となる優れた効果が得られる。また、ポインタとして光があまり散乱されずにリニアセンサ２０Ｘ、２０Ｙに入射した場合は、かなり強い光が入ることになるが、このような場合であっても安定した座標検出ができることは明らかである。
【００８５】
また、画面に直接接触させて使用するＬＥＤを用いたペンとポインタを併用する場合、ＬＥＤはより大きな光量のものが使用可能であるので、図１１に示した積分回数である第１所定回数ｎ０，第２所定回数ｎ１をＩＤ信号によってペンかポインタかを判別して切替を行い、ペンの場合は座標サンプリングレートを高速に、ポインタの場合は低速にすることも可能である。実際、文字入力のように繊細な描画作業はポインタでは不可能であり、むしろ低速な座標サンプリングレートによって滑らかな線を描けるほうが使い勝手がよく、このような切替を設けることも有効である。
【００８６】
以上説明したように、点滅光に高周波数のキャリアを加え、そのキャリアを周波数検波して得た所定周期の復調信号によって積分動作のタイミング制御を行うようにしたので、指示具と搬像部とをコードレスで同期させることができ、使い勝手の良い座標入力装置を実現することができる。また、レーザービームを用いることによって画面から離れた位置で容易に繰作することが可能となる優れた利点も得られる。また、積分部からの差分信号中のピークレベルが所定レベルを超えことを検出し、積分動作を停止させる積分制御手段を設けたので、光量が変化してもほぼ一定レベルの光スポット像の信号を作成でき、これにより、常に安定した高分解能な座標演算結果を得ることができる。
＜座標値演算＞
座標演算部３２における座標演算処理について説明する。
【００８７】
上述したように、上記の座標入力装置では、リニアセンサ２０Ｘ、２０Ｙに入射する光量の多少にかかわらず信号の品位を一定に保つ方法を説明したが、ここで一つ課題が発生する。前述の光量は、先に説明したように、指示具４に内蔵された電源部（電池）４４の消耗により変動する他、指示具４の姿勢（座標入力を行う通常の筆記動作により指示具４が傾く）、あるいは、リニアセンサや発光素子の変換効率の個体間差等によって変動することが想定される。
【００８８】
リニアセンサ２０Ｘ、２９Ｙに到達する光が減少した場合、それ相応に積分時間を長くする、すなわち、第１所定回数ｎ０、第２所定回数ｎ１の値を大きくし、積分回数を増大させることで品位の良い信号波形を得ることはできるが、積分時間の増大は、座標サンプリングレート、つまり、単位時間に算出できる座標点数の減少を意味し、操作者の筆跡を忠実に再現するにはおのずと限界がある。例えば、その筆跡を忠実に再現するために、２５点／秒の座標サンプリングレートが必要であると仮定すれば、１回の座標算出動作時間は少なくとも４０ｍｓｅｃ以下であることが必要であり、その時間内の積分時間で信号波形が所定のピークレベルに到達することが求められる。
【００８９】
しかしながら、所定レベルのピークレベルが得られなかった場合でも、信頼性の高い座標を算出することが可能となれば、操作者にとって筆記性の良い指示具（例えば、指示具の傾きをより大きくできる）が実現可能であり、また電池寿命を延ばすことも可能となるメリットが生まれる。
【００９０】
そこで、実施形態１の座標演算部３２では、図１２に示すような座標演算処理を行う。
【００９１】
上述したようにして得られた２つのリニアセンサ２０Ｘ，２０Ｙの出力信号（アンプ２９からの差分信号）は、センサ制御部３１に設けられたＡＤ変換部３１Ａでデジタル信号として座標演算部３２に送られ、座標値が演算される。座標値の演算は、まず、Ｘ座標、Ｙ座標の各方向の出力に対して、リニアセンサ２０Ｘ，２０Ｙの座標値（Ｘ１，Ｙ１）を求める。尚、演算処理は、Ｘ座標、Ｙ座標同様であるので、Ｘ座標値の演算についてのみ説明する。
【００９２】
次に、実施形態１の座標演算処理の処理フローについて、図１２を用いて説明する。
【００９３】
図１２は実施形態１の座標演算処理の処理フローを示すフローチャートである。
【００９４】
まず、処理の開始時には、処理回数をカウントするカウンタｃｏｎｔ＝０にセットする。
【００９５】
次に、ステップＳ２０２において、任意の座標入力点での各画素の差分信号である差分データＤｘ（ｎ）（例えば、画素数ｎ＝６４）を読み込む。次に、ステップＳ２０３において、各画素（６４画素）の出力値の平均値を導出し、所定のオフセット量Ｖoffを加えたＶth1を定義する。このＶth1を、出力信号の有効性を判定する第１の閾値として用いる（図１３（ａ）参照）。つまり、Ｖth1はリニアセンサに入力される光量、つまり、信号レベルに応じて可変するとともに、前述の光量が全く入射されていない状態での出力電圧にも依存することになるので、リニアセンサ個体間の部品公差を吸収し、最適な閾値レベルを自動的に設定できる。
【００９６】
次に、ステップＳ２０４において、差分データＤｘ（ｎ）の最大値を有するピーク画素ｎpeakを検出する。ステップＳ２０５において、ピーク画素ｎpeakの前後ｍ番目の画素の出力値、Ｄｘ（ｎpeak−ｍ）、Ｄｘ（ｎpeak＋ｍ）を各々求め、その値を比較する。次に、ステップＳ２０６、Ｓ２０７において、比較結果に応じて第２の閾値Ｖth2をＤｘ（ｎpeak−ｍ）、Ｄｘ（ｎpeak＋ｍ）のいずれかに設定する。実施形態１の場合、信号レベルがより小さい値を閾値レベルとしているが、ｍ＝３とした場合のその様子を図１３（ｂ）に示し、閾値がＤｘ（ｎpeak−ｍ）に設定されていることが理解される。実施形態１の場合、両者の信号レベルで、値がより小さい値を閾値レベルとして採用しているが、ｍの値をより大きくし、信号レベルの高い値を閾値レベルとして採用しても同等の効果が得られる。
【００９７】
次に、ステップＳ２０８において、第１の閾値Ｖth1と第２の閾値Ｖth2を比較する。第２の閾値Ｖth2が第１の閾値Ｖth1以上である場合（ステップＳ２０８でＹＥＳ）、有効な光が十分に入射されたものとして、ステップＳ２０９以降の座標演算を実行する。一方、第２の閾値Ｖth2が第１の閾値Ｖth1未満である場合（ステップＳ２０８でＮＯ）、有効な光が十分に得られていないので、処理を中止する。
【００９８】
ステップＳ２０９において、第２の閾値Ｖth２と各画素の差分データＤｘ（ｎ）との差分であるＥｘ（ｎ）を不揮発メモリ９に記憶する。次に、ステップＳ２１０において、座標算出のための有効画素を判定する。この有効画素は、その出力値が第２の閾値Ｖth2を越えるピーク画素ｎpeakを含む連続した画素のことであり、ピーク画素ｎpeakの前の画素群の出力値が連続して第２の閾値Ｖth2を越える画素の最小値ｎminから、ピーク画素ｎpeakの後の画素群の出力値が連続して第２の閾値Ｖth2を越える画素の最大値ｎmaxまでが有効画素となる。例として、図１３（ｃ）では、最小値ｎminはｎpeak−ｍでその差分データはＤｘ（ｎpeak−ｍ）であり、最大値ｎmaxはｎpeak＋ｍ＋１でその差分データはＤx(ｎpeak＋ｍ＋１）となる。この場合、ｎpeak＋ｍより大きいｎpeak＋ｍ＋１の画素の出力値も座標算出の際に有効なデータとして使用されることになる。尚、図１３（ｃ）中、第２の閾値Ｖth2を超える画素が他にも存在するが、連続の条件を満たさないため、有効画素とはならない。
【００９９】
有効画素の出力値を用いて、ステップＳ２１１において、リニアセンサ２０Ｘ上の重心値である画素座標αXを算出する。実施形態１では、重心法により出力データの重心を算出している。但し、この画素座標αXを求める数学的手法は、例えば、出力データＥｘ（ｎ）のピーク値を求める方法（例えば、微分法による）等が有り、計算の方法によって限定されるものではない。
【０１００】
以上の構成により、低光量時においても、求めるべき画素番号を安定して精度良く算出することが可能となる。
【０１０１】
次に、算出された重心値である画素座標αXから、指示具４の座標値を求める方法について説明するが、その前に、実施形態１の結像光学系の構成について、図１４を用いて説明する。尚、図１４では、Ｘ軸方向のみについて説明するが、Ｙ軸方向も同様の構成となる。
【０１０２】
図１４は実施形態１の結像光学系の構成例を示す図である。
【０１０３】
図１４（ａ）、（ｂ）に示すように、座標入力有効エリアの中央部（原点：ｃｏｎｔ＝０）での光スポット５の光線が、円柱状レンズ９０Ｘを介して、座標入力面と平行に配置されたリニアセンサ２０Ｘのほぼ中央部分に集光するように配置されている。
【０１０４】
尚、円柱状レンズ９０Ｘは、レンズ軸に垂直な断面が単純な円のものと、非球面のものとの２種類であって、レンズ軸に平行な断面は同一形状となる比較的制作が容易で安価なプラスチックレンズを採用している。上記の定義は、本座標入力装置で必要とするレンズとしての有効面のみがその定義を満足していれば良く、設置のための支持部材等をそれ以外の領域に設けてレンズ取り付けを容易にすること等はプラスチックレンズの一体成形で容易であり、機能上問題がない。またガラス等の他の部材によるレンズであっても良いことは言うまでもない。
【０１０５】
さて課題の項でも説明したように、実施形態１の座標入力装置の結像光学系の光学的配置及び円柱状レンズ等の光学特性の影響で座標算出精度が大きく劣化する位置は、座標入力有効エリアの４隅部となるが、高精度に座標を導出するために、図１５を用いてその演算、補正方法について説明する。
【０１０６】
図１５は実施形態１の座標演算処理の詳細な処理フローを示すフローチャートである。
【０１０７】
まず、上述の図１２で算出した画素座標αXから座標を算出するためには、初期動作時には基準点を設定するための所定値を算出しておく必要が有り、ステップＳ００３において、その所定値を算出するルーチンなのか（基準点設定モード）、その所定値に基づいて通常の座標値を算出するモード（座標算出モード）なのかを判定する。
【０１０８】
尚、基準点設定モードは、通常、工場出荷時に行われ、座標入力装置本体に用意された所定スイッチあるいは指示具４からの指示に基づいて実行される。
【０１０９】
基準点設定モードである場合は、実施形態１では、従来技術に対して、スクリーン１０上の少なくとも３つの既知の点の座標値（Ｘcont，Ｙcont）及びその各々における重心値αXcont、αYcontを算出する。この算出された３つの既知の点の座標値及びその重心値に基づいて、より高精度な座標演算を実現する。
【０１１０】
具体的には、まず、ステップＳ００２において、カウンタｃｏｎｔ＝０の時のスクリーン１０上の１つ目の既知の点の座標値（Ｘ0，Ｙ0）を指示して、上述のステップＳ２０２〜ステップＳ２１１の処理を実行することで、その座標値と重心値αX0、αY0を算出する。次に、ステップＳ００３において、基準点設定モードであるか否かを判定する。基準点設定モードでない場合（ステップＳ００３でＮＯ）、ステップＳ００４に進む。一方、基準点設定モードである場合（ステップＳ００３でＹＥＳ）、ステップＳ００９に進む。
【０１１１】
ステップＳ００９において、算出した座標値及び重心値αX0を不揮発メモリ９に記憶する。ステップＳ０１０において、カウンタｃｏｎｔを１インクリメントする。そして、ステップＳ０１１において、カウンタｃｏｎｔのカウンタ値が２より大きいか否かを判定する。２より小さい場合（この場合、ｃｏｎｔ＝１であり、ステップＳ０１１でＮＯ）、ステップＳ００２に進み、２つ目の既知の点の座標値（Ｘ1，Ｙ1）を指示して、上述のステップＳ２０２〜ステップＳ２１２の処理を実行することにより、ステップＳ００９において、その座標値と重心値αX1、αY1を不揮発メモリ９に記憶する。そして、ステップＳ０１０で、カウンタｃｏｎｔが１インクリメントされ、そのカウンタ値が２となる。この場合、カウンタ値は２より大きくないので、再度、ステップＳ００２に戻り、３つ目の既知の点の座標値（Ｘ2，Ｙ2）を指示して、上述のステップＳ２０２〜ステップＳ２１２の処理を実行することにより、ステップＳ００９において、その座標値と重心値αX2、αY2を不揮発メモリ９に記憶する。そして、ステップＳ０１０で、カウンタｃｏｎｔが１インクリメントされ、そのカウンタ値が３となる。これにより、ステップＳ０１１において、カウンタｃｏｎｔのカウンタ値が２より大きくなり、ステップＳ０１２に進む。
【０１１２】
以上の処理により、既知の点の座標値（Ｘ0、Ｙ0）〜（Ｘ2、Ｙ2）、その重心値αX0〜αX2、αY0〜αY2が、基準点として不揮発メモリ９に記憶される。
【０１１３】
尚、本実施の形態においては、第１の既知の点（Ｘ0、Ｙ0）を座標入力有効エリアの中央位置、第２の既知の点（Ｘ1、Ｙ1）を各象現（図１４（ａ）における座標入力有効エリアの１／４領域）における座標入力有効エリアの中央位置（ｃｏｎｔ＝１）、第３の既知の点（Ｘ2、Ｙ2）を座標入力有効エリアの４隅部の少なくとも１つとしている。
【０１１４】
尚、第３の既知の点は、図１４（ａ）に示すとおり、座標入力有効エリア内において光スポット５からの光線とＺ軸との間の角度θが最大となる点である。
【０１１５】
上述したように、円柱状レンズ９０Ｘを結像光学系に有するこの種の座標入力装置においては、円柱状レンズ９０Ｘの軸と光スポット５からの光線が成す角度が最大となる位置において、レンズ等の光学的特性により座標算出精度が劣化する。また、その劣化の発生割合は、座標入力位置（Ｘ軸方向及びＹ軸方向の両者）に依存しＸ軸の値が増大するにつれ、かつＹ軸の値が増大していくことで、非線型的に劣化する（図１６参照）。
【０１１６】
そして、この非線型的に座標算出精度が劣化する現象を抑制し、高精度な座標算出を可能とするために、実施形態１では、３つの既知の点の座標値及びその重心値を用いて、高精度な座標算出を実現する。この座標算出方法を示したのが、ステップＳ００４以降の処理及びステップＳ０１２の処理である。
【０１１７】
ステップＳ００４では、ステップＳ００９で不揮発メモリ９に記憶された重心値αX0、αX1及びその座標値（Ｘ0、Ｙ0）及び（Ｘ1、Ｙ1）を用いて、下記の式（３ａ）により任意の点の光スポット５の位置Ｘ’を概略演算が可能となる（第１の演算）。
【０１１８】
Ｘ’＝（Ｘ1−Ｘ0）（αX−αX0）／（αX1−αX0）＋Ｘ0      （３ａ）
ここで、上記式（３ａ）により、座標算出精度が最も悪くなる第３の既知の点の座標値（Ｘ2、Ｙ2）におけるセンサの出力重心値αX2を用いてＸ’を算出すれば、既知の座標Ｘ2とこの値の差が、座標算出測定誤差ΔＸとなる（ステップＳ０１２）。
【０１１９】
この誤差ΔＸを補正係数として用いることで、出力座標値を校正することになるが、この補正係数ΔＸを、前述既知の位置における出力画素を記憶する際に、この値を演算して不揮発メモリ９あるいは信号処理部７に記憶しても良いことは言うまでもない。尚、ｙ方向に関しても式（３ａ）に対応する式（３ｂ）を用いて、Ｙ’を算出することができる。このＹ’とＹ2との差ΔＹも補正係数として不揮発メモリ９に記憶しておく。
【０１２０】
Ｙ’＝（Ｙ1−Ｙ0）（αY−αY0）／（αY1−αY0）＋Ｙ0      （３ｂ）
図１７に示されるように、Ｘの値が大きく、かつＹの値が大きくなるにつれて、光学的特性により座標算出精度が劣化する（図１４（ａ）、座標入力有効エリアのハッチング部分であって、特に、ｃｏｎｔ＝２の部分）。従って、式（３ａ）及び式（３ｂ）による第１の演算による出力座標値（Ｘ’、Ｙ’）を用いて、この出力座標値がハッチング部分の判定領域に相当するかの判定を行い、ステップＳ００５において、座標校正の必要の有無を判定する。判定領域外（ハッチング部以外）である場合、座標校正の必要がないとして、ステップＳ００６に進み、第１の演算による座標値（Ｘ’、Ｙ’）を確定値とし、ステップＳ００８において、座標値を出力する。
【０１２１】
一方、判定領域内である場合、座標校正の必要があるとして、ステップＳ００７に進み、第１の演算により出力された座標値（Ｘ’、Ｙ’）と補正係数ΔＸを用いて、下記の式（４）により座標値を補正（第２の演算）し、ステップＳ００８において、その補正した座標値を出力する。
【０１２２】
Ｘ＝Ｘ’＋ΔＸ（Ｘ’−Ｘ1）（Ｙ’−Ｙ1）／（Ｘ2−Ｘ1）（Ｙ2−Ｙ1）    （４）
上記式（４）は、第１の演算による座標値（Ｘ’、Ｙ’）の両方を用いて確定座標Ｘを算出（ＸはＸ’及びＹ’の従属関数）することで、座標入力位置による非線形的な座標算出誤差発生に対応すると共に、第１の演算のみによる座標算出（ステップＳ００４、Ｓ００６）によるか、第２の演算による座標算出（ステップＳ００４、Ｓ００７）によるか、その判定領域境界部分に座標入力が行われた場合であっても、同一の座標値が算出できるように構成されている。つまり、判定領域の境界上の座標入力であっても、演算方法による差による座標値の差が発生しない、座標入力装置の分解能を低下させることがない優れた利点が得られるように構成されている。
【０１２３】
尚、（４）式に対応するｙ方向に関する式（第１項のＸ’をＹ’に、第２項のΔＸをΔＹに置き換える）を用いて、補正されたＹを算出することができる。
【０１２４】
また、上記演算はステップＳ００５にて領域判定を行っているが、誤差の発生の非線形性（Ｘ軸の値が大きく、かつＹ軸の値が大きくなるにつれて、より座標算出精度が低下する）を考慮して、次式に示すような高次の補正式を用いて、ステップＳ００５における判定を行わずに、常に、第２の演算を実行するようにしても良く、上述した方法と同等の座標算出性能を得ることが可能となる。さらには、この演算式を用いることにより、判定条件式がなくなるので、処理の高速化を図ることが可能であり、どちらの演算式を用いるかは、ＣＰＵ、あるいはメモリ等の構成仕様により、適宜選択すれば良い。
【０１２５】
Ｘ＝Ｘ’＋ΔＸ（Ｘ’／Ｘ2）2（Ｙ’／Ｙ2）2
以上の処理により、従来方法による座標演算結果である座標算出精度（図１７）に比べ、実施形態１による座標演算結果でる座標算出精度（図１６）から明らかなように、座標算出精度が大幅に改善されていることが分かる。
【０１２６】
以上説明したように、実施形態１によれば、スクリーン１０上の既知の位置の座標値及び重心値を記憶すると共に、算出した座標値に領域判定による演算方法の改良を計ることによって、分解能を低下させることなく座標算出精度を大幅に改善すると共に、単純な形状の円柱状レンズを用いて実施が可能なので、低コストで、高精度、高分解能に座標を出力する座標入力装置を実現することができる。
【０１２７】
尚、上記実施形態によって確定した座標値をそのままリアルタイムで出力することも可能であるし、目的に応じてデータを間引く（例えば、確定座標１０個毎で１個のデータのみ出力）等も可能であることは言うまでもないが、以下の仕様を想定する場合には、重要である。
【０１２８】
指示具４をペンのように使う場合と、ポインタとして画面から離れて使う場合とでは、使用者の手の安定性が異なる。ポインタとして使う場合には、画面上のカーソルが細かく震えてしまうので、このような細かい動きを抑制したほうが使いやすい。一方、ペンのように使う場合には、できるだけ忠実に速く追従することが求められる。特に、文字を書く場合などには小さな素早い操作ができないと、正しく入力できなくなってしまう。
【０１２９】
実施形態１では、制御信号によりＩＤを送信しているため、ポインタタイプか否かを、先端のスイッチが押されているか否かで判定可能なので、これにより、ポインタとして、あるいはペンとして使っているかどうかを判定できる。ポインタである場合は、例えば、前回及び前々回の座標値（Ｘ−１，Ｙ−１）、（Ｘ−２，Ｙ−２）を用いて移動平均を算出して、今回の出力座標値（Ｘ，Ｙ）を算出するようにすれば、ぶれの少ない操作性の良い構成となる。
【０１３０】
実施形態１では、ポインタとして使用している場合における座標算出は、単純な移動平均を用いているが、このような移動平均を算出するための平滑化処理に用いる関数としては、他にも差分絶対値を大きさにより非線型圧縮したり、移動平均による予測値を用いて、これとの差分を非線型圧縮するなどの各種方式が使用可能である。つまり、ポインタとして使用している場合は、平滑化を強目にし、ペンとして使用している場合は弱めに切り替えることが、制御信号により可能である。そのため、それぞれ使い勝手のよい状態を実現可能であり、この点でも本発明の効果は大きい。
【０１３１】
尚、これらの座標演算処理は、前述したように座標サンプリングレートが１００Ｈｚの場合には１０ｍｓｅｃの間に終了すればよく、データは６４画素×２（Ｘ座標およびＹ座標）×ＡＤ変換回路の８ビットと非常に少ない上、収束演算も必要ないので低速の８ビット１チップマイクロプロセッサで十分処理が可能である。このようなことは、コスト的に有利なだけでなく、仕様変更が容易で、開発期間の短縮や様々な派生商品の間発が容易になる利点もある。特に、エリアセンサを用いる場合のように、高速の画像データ処理を行う専用のＬＳＩの開発などは不要であり、開発費用、開発期間などの優位性は非常に大きなものである。
【０１３２】
また、上述したような演算処理によって算出した座標値（Ｘ，Ｙ）を示すデータ信号は、座標演算部３２から通信制御部３３に送られる。この通信制御部３３には、そのデータ信号と、制御信号検出部７２からの制御信号とが入力される。そして、これらデータ信号および制御信号は、ともに所定の形式の通信信号に変換され、外部の表示制御装置に送出される。これにより、スクリーン１０上のカーソルやメニュー、文字や線画の入力などの各種操作を行うことができる。前述したように、６４画素のセンサアレイを使った場合でも、１０００超の分解能と十分な精度とが得られ、リニアセンサ、光学系ともに小型、低コストな構成でよく、また、演算回路も非常に小規模な構成とすることが可能な座標入力装置を得ることができる。
＜実施形態２＞
図１８は実施形態２の座標検出器の詳細構成を示す図である。
【０１３３】
尚、実施形態２の座標検出器は、実施形態１の座標検出器の変形例であり、同一の構成要素については、同一の参照番号を付加し、その詳細については省略する。
【０１３４】
実施形態２の座標検出器１は、結像光学系によって光の到来方向を検出する４つのリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂとが設けられている。そして、指示具４に内蔵された発光素子４１からの光ビームにより、スクリーン１０上に生成された光スポット５からの拡散光をそれぞれ受光する。
【０１３５】
実施形態１でも説明したように、受光素子６には、集光光学系としての集光レンズ６ａが装着されており、スクリーン１０上の全範囲から高感度で所定波長の光量を検知する。この検知出力は、周波数検波部７１によって検波された後、制御信号検出部７２において制御信号（指示具４の発光制御部４２によって重畳された信号）などのデータを含むデジタル信号に復調される。
【０１３６】
また、実施形態２では、タイミング信号を送信するコード等の手段を有しないため、変調信号によってリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂを制御することになる。また、後述するが、信号検出は、発光時と非発光時時の差分によって行う。そして、そのシャッタタイミングと発光タイミングをあわせるために、上記変調信号のタイミングを用いて、リニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂのリセット信号を発生させている。
【０１３７】
ここで、周波数検波部７１で扱われる信号のタイミングチャートについて、図１９を用いて説明する。
【０１３８】
図１９は本実施形態で扱われる信号のタイミングチャートである。
【０１３９】
図１９において、８−１がペンダウン時の変調信号を周波数検波部７１で検波した後の信号ＩＲである。このＩＲ信号は、いわば、発光している期間をあらわしているため、リニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂのシャッタタイミングをこの信号に同期させる必要がある。
【０１４０】
一方、８−２が、リニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂのシャッタ周期をあらわすもので、Ｌ（ローレベル）の時に発光時の検出を行い、Ｈ（ハイレベル）の時に非発光時の検出を行うタイミングを示す信号ＩＲＣＬＫである。このＩＲＣＬＫ信号は、リニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂに供給されているクロックによって、リニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂから出力される。このＩＲＣＬＫ信号と、発光期間を同期させるために、８−１で示すＩＲ信号が検出されたら、ＩＲ信号とＩＲＣＬＫ信号が同期する程度の一定量の遅延時間をもって、８ー３で示すリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂにクリア（ＣＬＲ）信号を出力する。
【０１４１】
このクリア動作によって、同期が可能になる。遅延量は、ＣＬＲ信号が終了後、ＩＲＣＬＫ信号がＬＯＷになる時間によって、決定すればよい。
＜結像光学系の動作説明＞
図２０はリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂの配置関係を示す図である。
【０１４２】
図２０において、結像光学系としての円柱状レンズ９０Ｘａ，９０Ｘｂ、９０Ｙａ，９０Ｙｂによって光スポット５の像が、リニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂの各センサの感光部２１Ｘａ、２１Ｘｂ、２１Ｙａ、２１Ｙｂに線状に結像する。これらリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂを正確に直角に配置することによって、それぞれがＸ座標、Ｙ座標を反映した画素にピークを持つ出力が得られる。
【０１４３】
そして、これらリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂは、センサ制御部３１によって制御され、出力信号はセンサ制御部３１に接続されたＡＤ変換部３１Ａによってデジタル信号として座標演算部３２に送られる。座標演算部３２は、入力されたデジタル信号より出力座標値を計算し、その計算結果を制御信号検出部７２からの制御信号などのデータと共に通信制御部３３を介して、所定の通信方法で外部制御装置（不図示）に送出する。また、調整時など通常と異なる動作（例えば、ユーザ校正値の設定）を行わせる場合は、通信制御部３３からセンサ制御部３１、座標演算部３２へモード切換信号が送られる。
【０１４４】
尚、光スポット５の像に関するリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂの構成は、実施形態１のリニアセンサ２０Ｘ、２０Ｙと同様である。また、各リニアセンサの詳細構成及び出力波形における説明は、実施形態１の図８〜図１０と同様である。
【０１４５】
次に、リングＣＣＤ部２６の出力制御におけるタイミングチャートについて、図２１を用いて説明する。
【０１４６】
図２１は実施形態２のリングＣＣＤの出力制御におけるタイミングチャートである。
【０１４７】
まず、ＩＲ信号から一定遅延時間後のＣＬＲ信号によりすべての動作がクリアされる。このあと、指示具４による入力があると、ＣＣＤＯＵＴ信号のような検出信号が、積分動作によって大きくなる。そして、一定レベル（ＶＴＨ）を超えると、コンパレータの出力ＣＭＰＯＵＴ信号が立ち下がりリングＣＣＤ２６の積分動作を停止させる。センサ制御部３１は、このＣＭＰＯＵＴ信号が下がるとＡＤ変換を開始する。ＡＤ変換期間は、ＡＤＳＭＰＬ信号で示したように、リングＣＣＤ２６の画素出力すべてに対して行われる。
【０１４８】
上述のように、リングＣＣＤ２６の出力が、一定レベルを超えない場合には、センサ制御部３１は、クリアからの経過時間をカウントし、あらかじめ定めた一定時間を過ぎているような場合には、強制的にＡＤ変換動作を行う。このようにしておけば、入力が小さい場合でも、一定サンプリング時間内に必ずサンプリングが行われるようになる。
【０１４９】
ＡＤ変換は、図２２に示すようなタイミングで行われる。つまり、リングＣＣＤ２６の出力であるＣＣＤＯＵＴ信号は時間軸を拡大すると、図２２のように画素単位の検出光レベルに応じた電圧で出力される。この信号を、サンプリングパルスＳＰのタイミングで画素毎にＡＤ変換し、センサ制御部３１は、そのレベルをメモリなどに記憶する。
【０１５０】
上記のような動作を、各座標軸に対応したリングＣＣＤ部２６のすべてに対して行い、後述の座標計算を行う。
【０１５１】
また、座標検出器１に到達する指示具４の光は、指示具４に内蔵された電源部（電池）４４の消耗により変動する他、指示具４の姿勢によっても変動する。特に、スクリーン１０の光拡散性が小さい楊合、表示画像の正面輝度は向上するが、この指示具４の姿勢による座標検出器１への入力光量の変動が大きくなってしまう。しかしながら、実施形態２では、このような場合であっても、積分回数が自動的に追従して常に安定した出力信号を得ることができるので、安定した座標検出が可能となる。
【０１５２】
以上説明したように、点滅光に高周波数のキャリアを加え、そのキャリアを周波数検波して得た所定周期の復調信号によって積分動作のタイミング制御を行うようにしたので、指示具と搬像部とをコードレスで同期させることができ、使い勝手の良い座標入力装置を実現することができる。また、積分部からの差分信号中のピークレベルを関しし、積分動作を停止させる積分制御手段を設けたので、光量が変化してもほぼ一定レベルの光スポット像の信号を作成でき、これにより、常に安定した高分解能な座標演算結果を得ることができる。
＜座標値演算＞
座標演算部３２における座標演算処理について説明する。
【０１５３】
上述したようにして得られた４つのリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂの出力信号（アンプ２９からの差分信号）は、センサ制御部３１に設けられたＡＤ変換部３１Ａでデジタル信号として座標演算部３２に送られ、座標値が演算される。座標値の演算は、まず、Ｘ座標、Ｙ座標の各方向の出力に対して求める。尚、演算処理は、Ｘ座標、Ｙ座標同様であるので、Ｘ座標値の演算についてのみ説明する。
【０１５４】
リニアセンサ２０Ｘａ，２０Ｘｂはそれぞれ、図２３に示すように、スクリーン１０の縦半分の検出領域として構成されており、その中央付近では、検出領域が重複している。
【０１５５】
リニアセンサ２０Ｘａは、スクリーン１０のＳＸａ領域に光スポットがある場合に光を検出し、リニアセンサ２０Ｘｂはスクリーン１０のＳＸｂ領域に光スポットがある場合に光を検出する。重複領城では、両センサで検出が行われる。その時のリニアセンサ２０Ｘａ，２０Ｘｂの出力について、図２４を用いて説明する。
【０１５６】
図２４はリニアセンサの出力を模式的に示す図である。
【０１５７】
中央の重なりの部分に光スポットがある場合には、１５−１に示すように、リニアセンサ２０Ｘａ，２０Ｘｂともに出力が現れる。一方、ＳＸｂ領域に光スポットがある場合には、１５−２に示すように、リニアセンサ２０Ｘｂのみに出力が現れる。このように理想的に重複部分以外では、一方の出力がある場合には、例えば、一方の座標値を元に、その値が、基準点を超えたか否かで、切り換えの判定を行い、座標値を連結する。
【０１５８】
しかしながら、ノイズ、あるいは漏れ光、外乱光などによって、１５−３に示すような本来の光スポット以外の所に、出力が生じる場合がある。
【０１５９】
このような時に、一方の座標値で判定を行っていると、間違った判定をしてしまい表示画面上で、いきなり違う点にカーソルなどが表示され、例えば、描画中であると、不要な線が引かれてしまうことになる。そこで、本発明では、得られたリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂの出力のピーク値に基づいて、座標値の判定を行う。
【０１６０】
次に、実施形態２の座標演算処理の処理フローについて、図２５を用いて説明する。
【０１６１】
図２５は実施形態２の座標演算処理の処理フローを示すフローチャートである。
【０１６２】
尚、リニアセンサ２０Ｘａ，２０Ｘｂの各リングＣＣＤ２６の出力をＤＸａ、ＤＸｂとする。この値は、先に説明したように、ＡＤ変換された値であるから、リングＣＣＤ２６の各画素ごとの光検出量に応じた電圧値である。そこで、各データの最大値をもって、ピークレベルを決定することができる。
【０１６３】
また、リニアセンサ２０Ｘａ，２０Ｘｂで検出される座標を、それぞれＣＣＤＸａ、ＣＣＤＸｂとする。
【０１６４】
まず、ステップＳ３０１で、任意の座標入力点での各画素の差分信号である差分データＤＸａ（ｎ）（実施形態２の場合、画素数ｎ＝６４）が読み込まれ、バッファメモリ（不図示）に貯えられる。ステップＳ３０２で、このデータのピークレベルを求め、Ｘａｐとして記憶する。次に、ステップＳ３０３で、あらかじめ設定しておいた閾値Ｖと比較し、閾値以上のデータ値Ｅｘａ（ｎ）を算出する。このデータ値Ｅｘａ（ｎ）を用いて、ステップＳ３０４で、リニアセンサ２０Ｘａ上の座標ＣＣＤＸａを算出する。実施形態２では、重心法により出力データの重心を算出しているが、出力データＥｘａ（ｎ）のピーク値を求める方法（例えば、微分法による）等、計算の方法はこれに限定されないことは言うまでもない。
【０１６５】
同様にして、リニアセンサ２０Ｘｂ上の座標ＣＣＤＸｂも算出する。
【０１６６】
これら算出された座標値は、リニアセンサ２０Ｘａ，２０ＸｂのそれぞれのリニアＣＣＤ２６上での画素に対応した座標である。そのため、これらの座標値を連結することで一つのリニアセンサ２０Ｘａ，２０Ｘｂ上での座標値として扱えるようになる。
【０１６７】
そこで、リニアセンサ２０Ｘａ，２０ＸｂのそれぞれのリニアＣＣＤ２６上での画素に対応した座標値を連結するための基準座標を定義する。
【０１６８】
この基準座標の定義について、図２６を用いて説明する。
【０１６９】
図２６は実施形態２の基準座標の定義を説明するための図である。
【０１７０】
図２６は、リニアセンサ２０Ｘａ，２０ＸｂのそれぞれのリニアＣＣＤ２６の座標を概念的に配置した構成を示している。リニアセンサ２０Ｘａ，２０Ｘｂの検出領域は、先に説明したように重複部分を有しているため、その座標位置を重ねると、同図のようになる。
【０１７１】
この時、リニアセンサ２０Ｘａ，２０ＸｂのそれぞれのリニアＣＣＤ２６が共に測定可能な領域で、基準点をあらかじめ定義する。つまり、スクリーン１０上の重複部分に入力を行い、座標ＣＣＤＸａ，ＣＣＤＸｂ（ＣＣＤＸａ＿ｏｒｇ，ＣＣＤＸｂ＿ｏｒｇ）として読み込む。これらの値を、基準点データ（基準座標）として、ＥＥＰＲＯＭ等の不揮発性メモリ（不図示）に記憶しておき、通常の使用時にはこの値を読み出して、座標値演算を行う。
【０１７２】
以下、これらの基準点データを用いて、リニアセンサ２０Ｘａ，２０ＸｂのそれぞれのリニアＣＣＤ２６上での画素に対応した座標値を連結した連結座標ＣＣＤＸの算出処理について、図２７を用いて説明する。
【０１７３】
図２７は実施形態２の連結座標ＣＣＤＸの算出処理の処理フローを示すフローチャートである。
【０１７４】
まず、ステップＳ３０７で、リニアセンサ２０Ｘａ，２０ＸｂのそれぞれのリニアＣＣＤ２６の基準点データ（ＣＣＤＸａ＿ｏｒｇ，ＣＣＤＸｂ＿ｏｒｇ）をメモリから読み込む。ステップＳ３０８で、指示具４からの入力がなされた時に計算されるＣＣＤＸａ、ＣＣＤＸｂの値と、基準点データの差分を算出する。これにより、図２６の中央付近にある直線Ｌ１の点を原点としたリニアＣＣＤ上の座標に変換される。
【０１７５】
次に、ステップＳ３０９で、先に記憶しておいたリニアセンサ２０Ｘａ，２０Ｘｂ各々のピークレベルＸａＰ、ＸｂＰを比較する。通常、外乱光などによる信号は、正規の光スポットによる信号よりかなり小さいため、ピーク値の大きい方を正規の座標として採用する。このようにして、Ｌ１を境にリニアセンサ２０Ｘａ，２０ＸｂのそれぞれのリニアＣＣＤ２６の両リニアＣＣＤの座標値を連結できる。
【０１７６】
具体的には、ピークレベルＸａＰがピークレベルＸｂＰより大きい場合（ステップＳ３０９でＹＥＳ）、ステップＳ３１０に進み、ＣＣＤＸ＝ＣＣＤＸａとして、ステップＳ３１２に進む。一方、ピークレベルＸａＰがピークレベルＸｂＰ未満である場合（ステップＳ３０９でＮＯ）、ステップＳ３１１に進み、ＣＣＤＸ＝ＣＣＤＸｂとして、ステップＳ３１２に進む。
【０１７７】
そして、ステップＳ３１２で、スクリーン１０上の座標値を一致させるために、上記の処理で得られたＣＣＤＸからスクリーン１０上の座標値Ｘへの変換であるスクリーン座標計算を行う。尚、この処理の詳細については、後述する。
【０１７８】
以上の処理は、Ｘ座標について説明を行ったが、同様にして、Ｙ座標についても行う。
【０１７９】
そして、上述のような演算処理によって算出した座標値（Ｘ，Ｙ）を示すデータ信号は、座標演算部３２から通信制御部３３に送られる。この通信制御部３３には、そのデータ信号と、制御信号検出部７２からの制御信号とが入力される。そして、これらデータ信号および制御信号は、ともに所定の形式の通信信号に変換され、外部の表示制御装置に送出される。これにより、スクリーン１０上のカーソルやメニュー、文字や線画の入力などの各種操作を行うことができる。
＜基準点設定＞
ＣＣＤ座標値とスクリーン１０上の座標値と一致させるためには、ＣＣＤ座標値をスクリーン１０上の座標値へ変換するための倍率、原点の座標値などの情報をあらかじめ、決定しておく必要がある。そのために、既知の複数の座標位置（基準点）のＣＣＤ座標を取得し、不揮発メモリ等に記憶する。
【０１８０】
図２８は実施形態２の基準点の座標位置例を示す図である。
【０１８１】
まず、基準となる原点を設定する。その際には、同図Ｐ０位置に入力を行い、その時のＣＣＤ座標値を記憶する。この時、リニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂの重複部分を、この位置に設定しておけば、上述のようなリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂの座標値を連結するための基準点入力を兼ねることも可能である。
【０１８２】
次に、原点にたいして、倍率決定のための入力を行う。実際には原点から既知の点一点の情報があれば倍率は計算可能である。
【０１８３】
しかしながら、レンズの収差、ばらつき等によって、入力位置（基準点）によって、倍率にばらつきが生じる。
【０１８４】
図２９は実施形態２の基準点による倍率のばらつき例を示す図である。
【０１８５】
この図は、基準点のＣＣＤ座標値の出力を示している。
【０１８６】
例として、図２８の基準点Ｐ０からＰ７間のＣＣＤ座標値の理論値は線形性のある直線状のデータ列となる。これに対し、基準点Ｐ０からＰ３間のＣＣＤ座標値の実測値は、理論値と同様、線形性にＣＣＤ座標値の出力が得られるが、基準点Ｐ７付近では、ＣＣＤ座標値は線形性でなくなり、ＣＣＤ座標値の理論値の直線状のデータ列からずれてしまうことがある。このような場合に、例えば、基準点Ｐ７で、倍率のためのデータを取得し、それを元に座標計算を行うと、全体的に誤差を生じてしまうことになる。
【０１８７】
そこで、倍率決定のためには、Ｐ３点などの、比較的、ＣＣＤ座標値の理論値に近いＣＣＤ座標値の実測値を得ることができる基準点でのＣＣＤ座標値を用いる。
【０１８８】
上述してきたように、複数のリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂを用いて連結して座標値を得るので、図２８のように、各々リニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂの用いられる範囲は、図中Ｘａ，Ｙａ，Ｘｂ，Ｙｂで示される領域になる。
【０１８９】
円柱状レンズ９０Ｘａ，９０Ｘｂ，９０Ｙａ，９０Ｙｂ自体は、各リニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂに対して用意してあるので、結局、Ｘａ，ｂ、Ｙａｂそれぞれがばらつきを有することになる。
【０１９０】
そこで、各リニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂに対応した倍率を求める必要があり、そのために、基準点Ｐ３以外にも、基準点Ｐ１，Ｐ２，Ｐ４の各点でのリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０Ｙｂの出力を記憶する。
【０１９１】
基準点Ｐ０が図２８のように重複部分に存在するとすると、この点ではＸａｂ，Ｙａｂの各々の値が取得される。この時のリニアセンサ２０Ｘａ，２０Ｘｂ，２０Ｙａ，２０ＹｂのＣＣＤデータをＰ０Ｘａ、Ｐ０Ｙａ、Ｐ０Ｘｂ、Ｐ０Ｙｂとする。基準点Ｐ０は原点であるので、この場合には、スクリーン１０上の座標値は（Ｘ＿Ｐ０，Ｙ＿Ｐ０）＝（０，０）である。
【０１９２】
倍率の決定は、基準点Ｐ３を例にとり、基準点Ｐ３でのＣＣＤ座標をＰ３Ｘａ、Ｐ３Ｙａとし、スクリーン１０上の座標値をＸ＿Ｐ３、Ｙ＿Ｐ３とした場合、倍率α３ｘ、α３ｙは
α３ｘ＝（Ｘ＿Ｐ３−Ｘ＿Ｐ０）／（Ｐ３Ｘａ−Ｐ０Ｘａ）      （５）
α３ｙ＝（Ｙ＿Ｐ３−Ｙ＿Ｐ０）／（Ｐ３Ｙａ−Ｐ０Ｙａ）      （６）
で計算される。
【０１９３】
このように、各基準点に対して計算された倍率をもって、ＣＣＤＸ座標値に掛け合わせることでスクリーン１０上の座標値を計算することができる。
【０１９４】
実際の計算では、まず、得られたＣＣＤＸ、ＣＣＤＹ座標値から、領域判定を行い、各領域に対応した倍率α１、２、３、４を用いて計算を行う。
【０１９５】
このようにして、線形性の良い基準点での倍率を決定したが、図２８のように、基準点Ｐ７付近（スクリーン１０周辺部）では線形性が低下しているので、スクリーン１０周辺部では誤差を生じることになる。
【０１９６】
実際の機器では、スクリーン１０の有効投影範囲以外に余白となる部分が設定されるが、この領域が小さい場合には、入力がその部分で制限され、実際の投影範囲に入力できない部分が発生する可能性がある。
【０１９７】
通常のＰＣ使用環境では、メニューバー等を画像周辺部へカーソルを移動することで、表示するような場合があり、このように、誤差が発生していると、その操作を阻害する可能性がある。
【０１９８】
そこで、倍率は、そのままに、スクリーン１０周辺部への入力を可能とするために、基準点Ｐ５からＰ８までのＣＣＤ座標値を取得、記憶しておき、固定入力点のデータとする。ここで言う固定入力点とは、入力がその位置になされた場合、必ず、あらかじめ設定された点の座標を出力する点である。
【０１９９】
つまり、その固定入力点でのＣＣＤ座標が得られた場合には、倍率に関わらずスクリーン１０上の固定の座標値を出力する。
【０２００】
そのさい、その点だけを強制的に固定座標値にすると、急に座標値がかわってしまい、使用感を低下させるので、適当な点（例えば、基準点Ｐ７に対して基準点Ｐ３）のような点から、徐々に変化させる必要がある。
【０２０１】
ここで、座標系を図２８の基準点Ｐ０から右をＸプラス方向、基準点Ｐ０より下をＹプラス方向とした場合に、得られたＣＣＤ座標値に倍率を乗じたものがＸ＿Ｐ３より大きく、Ｙ＿Ｐ３より小さい場合、以下の式で重みを変えて、座標計算を行う。
【０２０２】
Ｘ＝（ＣＣＤＸ*α３ｘ）＋（Ｘ−Ｘ＿Ｐ３）／（Ｘ＿Ｐ７−Ｘ＿Ｐ３））            *（（Ｙ−Ｙ＿Ｐ３）／（Ｙ＿Ｐ３−Ｙ＿Ｐ７））
*（Ｘ＿Ｐ７−（ｐ７ｘ*α３ｘ））                      （７）
Ｙ＝（ＣＣＤＹ*α３ｙ）＋（Ｘ−Ｘ＿Ｐ３）／（Ｘ＿Ｐ７−Ｘ＿Ｐ３））            *（（Ｙ−Ｙ＿Ｐ３）／（Ｙ＿Ｐ３−Ｙ＿Ｐ７））
*（Ｙ＿Ｐ７−（ｐ７ｙ*α３ｙ））                      （８）
他の領域についても、各々基準点Ｐ１と基準点Ｐ５、基準点Ｐ４と基準点Ｐ６、基準点Ｐ２と基準点Ｐ８の組み合わせで同様の計算を行えば良い。
【０２０３】
また、上記式は、一例であり、より高次の式を用いても良い。
【０２０４】
以上のようにして、スクリーン１０上の座標値と一致するＣＣＤ座標値を計算することができる。これは、図２７のステップＳ３１２のスクリーン座標の計算処理に相当する。
【０２０５】
以下、図２７のステップＳ３１２の処理の詳細について、図３０を用いて説明する。
【０２０６】
図３０は実施形態２のステップＳ３１２の処理の詳細を示すフローチャートである。
【０２０７】
まず、ステップＳ４０２で、不揮発メモリ等に記憶された基準点Ｐ０〜Ｐ８でのＣＣＤ座標値を読み出す。このＣＣＤ座標値と、スクリーン１０上の基準点Ｐ０〜Ｐ８に対応する既知の座標値を用いて、式（５）、（６）を用いて倍率を計算する。
【０２０８】
ステップＳ４０４で、入力された各リニアセンサのＣＣＤ座標値を読み出す。次に、ステップＳ４０５で、読み出したＣＣＤ座標値を連結する。
【０２０９】
次に、ステップＳ４０６で、連結されたＣＣＤ座標値から、その座標値がスクリーン１０上のどの象現に入るか判定する。これは、原点座標との比較で行えば良く、例えば、図２８に示すように、第１象現をＳ１、以下各象現毎にＳ２，Ｓ３，Ｓ４とする。
【０２１０】
判定された象現によって、各々の象現の計算に振り分けられる。
【０２１１】
例えば、第１象限Ｓ１について説明すれば、ステップＳ４１１で、第１象限Ｓ１の倍率と連結されたＣＣＤ座標値を乗じて、スクリーン座標を計算する。次に、ステップＳ４１５で、計算されたスクリーン座標が固定入力点となる固定エリアであるか否か判定する。この判定は、第１象限Ｓ１の場合では、上述したように、基準点Ｐ３の座標値で判定すれば良い。他の象現も同様にして判定すれば良い。
【０２１２】
ステップＳ４１５において、固定エリアでない場合（ステップＳ４１５でＮＯ）、ステップＳ４２３に進み、その計算されたスクリーン座標を出力する。一方、固定エリアである場合（ステップＳ４１５でＹＥＳ）、式（７）、（８）を用いて固定エリアに対するスクリーン座標を計算する。そして、ステップＳ４２３に進み、その計算されたスクリーン座標を出力する。座標送出後は、すでに倍率等は計算されてメモリに貯えられているので、再度、ステップＳ４０４に戻る。
【０２１３】
ここでは、第１象限Ｓ１について説明したが、他の象現でも用いる基準点の座標値が異なるだけで、演算方法は同様である。
【０２１４】
以上のように、既知の基準点のＣＣＤ座標値を取得し、不揮発性メモリに記憶しておく。そして、記憶されたＣＣＤ座標値を用いて、原点、倍率、固定入力点を計算し座標計算を行うことで、より高精度の座標入力装置を提供可能になる。
【０２１５】
尚、複数の基準点のＣＣＤ座標値の取得は、既知の入力位置に入力できる治具を用いてもよいし、また、画面上で出荷時に設定することもできる。
【０２１６】
例えば、通信制御部３３に対して、スクリーン１０上の基準点の座標値を送信すると、ホストコンピュータ側のドライバがスクリーン１０上のその位置にカーソルを表示する。そして、そのカーソル位置に対して、入力を行えば基準点のＣＣＤ座標値が得られる。順次、送出する座標値を変更して繰り返しこの処理を行えば、図３１に示すごとく、９点の基準点のＣＣＤ座標値をホストコンピュータ等の外部接続装置側で入力することができる。
【０２１７】
図３１は実施形態２の９点の基準点の座標値を入力する場合の処理を示すフローチャートである。
【０２１８】
外部接続装置では、基準点取得モードに入ると、ステップＳ５０２で、ＣＣＤ座標値を取得する基準点Ｐｎ（ここでは、ｎ：１，２，…，８，９）に基準…Ｐ０のスクリーン１０の座標値をセットする（ここでは説明を簡単にするため、Ｘ，Ｙに細かく分けて説明していないが、Ｘ，Ｙ共にセットされている）。
【０２１９】
次に、ステップＳ５０３で、基準点ＰｎにおけるＣＣＤ座標値の取得回数を計測するためのカウンタをクリアする。これは、基準点のＣＣＤ座標値をより精度良くするために、同一の基準点のＣＣＤ座標値を複数回取得し、その取得された複数のＣＣＤ座標値の平均値をその基準点のＣＣＤ座標値とするためである。また、この取得回数は、装置のノイズ等の状態に応じて、要求される精度に基づいて決定すればよい。
【０２２０】
次に、ステップＳ５０４で、先にセットした基準点の座標値を送出する。ステップＳ５０５で、その基準点に対するＣＣＤ座標を取得し、メモリに記憶する。ステップＳ５０７で、取得回数のカウンタをインクリメントする。ステップＳ５０８で、規定回数取得したか否かを判定する。
【０２２１】
規定回数に達していない場合（ステップＳ５０８でＮＯ）、ステップＳ５０５に戻る。規定回数に達している場合（ステップＳ５０８でＹＥＳ）、ステップＳ５０９に進み、同一の基準点に対して取得した複数のＣＣＤ座標値の平均を計算し、この平均のＣＣＤ座標値を各基準点毎に用意されたメモリに格納する。
【０２２２】
ステップＳ５１０で、処理対象が最後の基準点Ｐｎであるか否かを判定する。最後の基準点Ｐｎでない場合（ステップＳ５１０でＮＯ）、ステップＳ５１１に進み、処理対象の基準点Ｐｎを１インクリメントして、ステップＳ５０３に戻る。一方、最後の基準点Ｐｎである場合（ステップＳ５１０でＹＥＳ）、ステップＳ５１２で、得られた各基準点のＣＣＤ座標値を不揮発メモリ９に格納する。
【０２２３】
このような作業は、毎回電源投入時に行ってもよいが、一般的に出荷時に行えば良い。
【０２２４】
以上説明したように、実施形態２によれば、複数の基準点のＣＣＤ座標値を不揮発性メモリに記憶しておき、これらのＣＣＤ座標値から最終的なスクリーン１０上の座標値を得るための原点、倍率、固定点を算出し、座標演算を行うことで、高精度な座標入力装置を提供可能になる。
【０２２５】
また、本発明中の基準点の数は、これに限定するものでは無く、各システムの構成により決定すればよい。
【０２２６】
また、基準点の数は、上記９点に限定せずとも、システムに合わせて決定すれば良い。
【０２２７】
尚、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【０２２８】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２２９】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【０２３０】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２３１】
更に、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２３２】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【０２３３】
【発明の効果】
以上説明したように、本発明によれば、高精度、高分解能であり、操作性に優れた座標入力装置及びその制御方法、プログラムを安価に提供できる。
【図面の簡単な説明】
【図１】実施形態１の座標入力装置の概略構成を示す図である。
【図２】実施形態１の指示具の詳細構成を示す図である。
【図３】実施形態１の指示具の動作モードを示す図である。
【図４】実施形態１の座標検出器の詳細構成を示す図である。
【図５】実施形態１の制御信号の復元動作におけるタイミングチャートである。
【図６】実施形態１で扱われる信号のタイミングチャートである。
【図７】実施形態１のリニアセンサの配置関係を示す図である。
【図８】実施形態１のリニアセンサの詳細構成を示す図である。
【図９】実施形態１のリニアセンサの出力波形の一例を示す図である。
【図１０】実施形態１のリニアセンサのスキム動作を説明するための出力波形の一例を示す図である。
【図１１】実施形態１のリニアセンサの動作制御を示すフローチャートである。
【図１２】実施形態１の座標演算処理の処理フローを示すフローチャートである。
【図１３】実施形態１の座標演算に関する説明図である。
【図１４】実施形態１の結像光学系の構成例を示す図である。
【図１５】実施形態１の座標演算処理の詳細な処理フローを示すフローチャートである。
【図１６】実施形態１の座標入力装置の座標算出精度の分布を示す図である。
【図１７】従来の座標入力装置の座標算出精度の分布を示す図である。
【図１８】実施形態２の座標検出器の詳細構成を示す図である。
【図１９】実施形態２で扱われる信号のタイミングチャートである。
【図２０】実施形態２のリニアセンサの配置関係を示す図である。
【図２１】実施形態２のリングＣＣＤの出力制御におけるタイミングチャートである。
【図２２】実施形態２のＡＤ変換のタイミングチャートである。
【図２３】実施形態２のリニアセンサの構成を示す図である。
【図２４】実施形態２のリニアセンサの出力を模式的に示す図である。
【図２５】実施形態２の座標演算処理の処理フローを示すフローチャートである。
【図２６】実施形態２の基準座標の定義を説明するための図である。
【図２７】実施形態２の連結座標ＣＣＤＸの算出処理の処理フローを示すフローチャートである。
【図２８】実施形態２の基準点の座標位置例を示す図である。
【図２９】実施形態２の基準点による倍率のばらつき例を示す図である。
【図３０】実施形態２のステップＳ３１２の処理の詳細を示すフローチャートである。
【図３１】実施形態２の９点の基準点の座標値を入力する場合の処理を示すフローチャートである。
【符号の説明】
１  座標検出器
２  座標検出センサ部
３  コントローラ
４  指示具
５  光スポット
６  受光素子
６ａ  集光レンズ
７  信号処理部
８  投射型表示装置
９  不揮発メモリ
８１  画像信号処理部
８２  液晶パネル
８３  ランプ
８４  ミラー
８５  コンデンサーレンズ
８６  投影レンズ
２０Ｘ、２０Ｙ、２０Ｘａ、２０Ｘｂ、２０Ｙａ、２０Ｙｂ  リニアセンサ
２１  センサアレイ
２２  積分部
２３  シフト部
２４  蓄積部
２５  リニアＣＣＤ
２６  リングＣＣＤ
２７  クリア部
２８  スキム部
２９  アンプ
３１  センサ制御部
３１Ａ  ＡＤ変換部
３２  座標演算部
３３  通信制御部
７１  周波数検波部
７２  制御信号検出部
【図１】
0004697916.tif 000002
【図２】
0004697916.tif 000003
【図３】
0004697916.tif 000004
【図４】
0004697916.tif 000005
【図５】
0004697916.tif 000006
【図６】
0004697916.tif 000007
【図７】
0004697916.tif 000008
【図８】
0004697916.tif 000009
【図９】
0004697916.tif 000010
【図１０】
0004697916.tif 000011
【図１１】
0004697916.tif 000012
【図１２】
0004697916.tif 000013
【図１３】
0004697916.tif 000014
【図１４】
0004697916.tif 000015
【図１５】
0004697916.tif 000016
【図１６】
0004697916.tif 000017
【図１７】
0004697916.tif 000018
【図１８】
0004697916.tif 000019
【図１９】
0004697916.tif 000020
【図２０】
0004697916.tif 000021
【図２１】
0004697916.tif 000022
【図２２】
0004697916.tif 000023
【図２３】
0004697916.tif 000024
【図２４】
0004697916.tif 000025
【図２５】
0004697916.tif 000026
【図２６】
0004697916.tif 000027
【図２７】
0004697916.tif 000028
【図２８】
0004697916.tif 000029
【図２９】
0004697916.tif 000030
【図３０】
0004697916.tif 000031
【図３１】
0004697916.tif 000032