JP2012048404A - 座標入力装置及びその制御方法、プログラム - Google Patents
座標入力装置及びその制御方法、プログラム Download PDFInfo
- Publication number
- JP2012048404A JP2012048404A JP2010188759A JP2010188759A JP2012048404A JP 2012048404 A JP2012048404 A JP 2012048404A JP 2010188759 A JP2010188759 A JP 2010188759A JP 2010188759 A JP2010188759 A JP 2010188759A JP 2012048404 A JP2012048404 A JP 2012048404A
- Authority
- JP
- Japan
- Prior art keywords
- coordinate input
- coordinate
- sheet
- light
- input surface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
【課題】座標入力面のシート状物体の有無に応じて、適応的に高精度な入力座標を算出することができる座標入力装置及びその制御方法、プログラムを提供する。
【解決手段】入力のない状態である初期状態における受光部が出力した出力信号を第1のリファレンスデータとして記憶する。座標入力サンプリング状態における受光部が出力した出力信号であるサンプリングデータと記憶される第1のリファレンスデータとを比較する。比較の結果に基づいて、座標入力面におけるシート状物体の有無を判定する。判定の結果、シート状物体が座標入力面に有ると判定された場合、サンプリングデータを第2のリファレンスデータとして記憶する。判定の結果に応じて、サンプリングデータと、第1のリファレンスデータあるいは第2のリファレンスデータとを用いて、座標入力面に対する指示具による入力位置の座標値を算出する。
【選択図】図9
【解決手段】入力のない状態である初期状態における受光部が出力した出力信号を第1のリファレンスデータとして記憶する。座標入力サンプリング状態における受光部が出力した出力信号であるサンプリングデータと記憶される第1のリファレンスデータとを比較する。比較の結果に基づいて、座標入力面におけるシート状物体の有無を判定する。判定の結果、シート状物体が座標入力面に有ると判定された場合、サンプリングデータを第2のリファレンスデータとして記憶する。判定の結果に応じて、サンプリングデータと、第1のリファレンスデータあるいは第2のリファレンスデータとを用いて、座標入力面に対する指示具による入力位置の座標値を算出する。
【選択図】図9
Description
本発明は、座標入力装置に関するものである。より詳しくは、入力面に指示具や指によって指示して座標を入力することにより、接続されたコンピュータを制御したり、文字や図形などを書き込むために用いられる座標入力装置であって、その性能を改善する技術に関するものである。
従来より、この種の装置として各種方式のタッチパネルや座標入力装置が提案、または製品化されており、特殊な器具などを用いずに、画面上でPC等の端末の操作が簡単にできるため、広く用いられている。
座標入力方式としては、抵抗膜を用いたもの、また、超音波や電磁波、光を利用したもの等、様々な方式がある。例えば、専用の筆記具であるところの指示具の先端部に発光部を設け、この指示具によるタッチ入力操作により、指示具の発光から光を放射する。そして、座標入力有効領域の周囲角部に設けられた受光部によりその光を検出することによって、指示具のタッチ入力位置を演算する座標入力装置が知られている(例えば、特許文献1参照)。
また、座標入力面外側に再帰性反射シートを設け、光を照明する投光部30からの光を再帰反射部材で再帰反射し、受光部によりその光量分布を検出する構成も知られている。また、座標入力有効領域内を指等の指示具で指示することにより、その光路を遮断することで、遮蔽された領域の方向を検出し、幾何学的に入力位置の座標を決定するものが、知られている(例えば特許文献2参照)。さらには、遮光された方向を検知するために、センサ出力信号を微分等の波形処理演算して検出する方式もある(例えば、特許文献3参照)。さらには、センサ出力信号を特定のレベルパターンとの比較することによって方向を検知する構成も知られている(例えば、特許文献4参照)。
また、初期状態における投光部からの投光無しの受光分布と投光部からの投光有りの2つの受光分布を予め記憶する。そして、座標検出時に検出される受光分布と記憶されている2つの受光分布とを用いて、反射光量の変化量と変化率を用いて座標を精度良く算出する方法も示されている(例えば、特許文献5参照)。
さらには、検出信号波形の中で入力状態が検知できている方向以外の信号のみを、予め記憶されている信号と置き換える方法(例えば、特許文献6参照)も知られている。また、所定時間の指示動作が行われていないことを検知して、予め記憶されている信号を検出された信号で置き換える構成(例えば、特許文献7参照)も知られている。
さらには、タッチ位置を検出することが可能な座標入力装置であって、検出した座標値に基づき、タッチした領域を判定し、その判定結果に基づき座標入力装置の出力モードを制御する方法も知られている(例えば、特許文献8参照)。具体的には、ある領域で操作をしていると判定した場合には、専用指示具の発光信号に基づき、指示具が座標入力面をタッチしたか否かを判定する。また、特定のある領域で操作をしていると判定した場合には、専用指示具の発光信号に頼ること無く、座標入力面をタッチしたか否かを判定する。前者の制御状態をペンモード、後者の制御状態をタッチモード(各々のモードについては、本願発明の実施形態で詳細を説明する)と呼ぶとする。このように構成することで、通常は、ペンモードで動作している座標入力装置が、特定領域のみ操作することで、タッチモードとして動作することになる。
本願発明に関わる座標入力装置は、座標入力面外側に再帰性反射シートを設け、光を投光する投光部からの光を再帰反射部材4で再帰反射し、受光部40によりその光量分布を検出する方式である。そして、座標入力動作を行うことによってその光路が遮られ、その方向を複数の受光部40で検出することにより指示位置を算出する。
そして、指示位置を高精度に検出するために、指示動作の無い状態で投光部30の照明無しの状態での受光部40が検出するベースデータBas_data[N](整数NはCCD画素の画素番号に相当する)を検出して記憶する。次いで、投光部30で照明したときの初期光量分布に相当するリファレンスデータRef_data[N]を取得して記憶する。遮光位置を検出するための光量分布サンプリングデータNorm_data[N]を取り込み、先に記憶されているベースデータBas_data[N]とリファレンスデータRef_data[N]を用いて、遮光位置を高精度に算出する。
詳細は本願発明の実施形態で説明するが、指示具による座標入力動作(光を遮る物体が存在しない状態)が行われていない、例えば、電源投入時にベースデータBas_data[N]とリファレンスデータRef_data[N]を取り込む。このように構成することで、受光部を構成するCCD画素の個体間差を吸収する、設置環境の周囲光の影響を排除する、装置の経年変化による特性変化を吸収する、あるいは経年変化によるゴミの付着による影響を排除する効果等々が得られる。
しかしながら、このベースデータBas_data[N]とリファレンスデータRef_data[N]取得後、使用中に、この信号が何らかの影響で変化するようなことが起こると、座標算出精度劣化、あるいは致命的な誤動作を引き起こす。
特に、投光部30から再帰反射部材4に向けて投光された光は、扇状に略90°の範囲を座標入力面沿って投光される。しかしながら、その光は完全にコリメートされた平行光にすることは困難であり、その光の一部は入力面で反射して再帰反射部材に到達する。すなわち、座標入力面で反射した光の一部も受光部40は検出してしまう。従って、座標入力面の状態が変化すると、リファレンスデータRef_data[N]が変化する。換言すれば、座標入力面にシート状の媒体(例えば、紙)を搭載した場合、リファレンスデータRef_data[N]は大きく変化する。
本願発明のこの種の座標入力装置を机上に配置して、シート状のポストイット、あるいはパンフレット等のシート状物体を机上に置いたりして、複数人で議論するようなユースケースを想定する。議論の途中で、ユーザがパンフレットを提示して、机上に置いた場合、座標入力面の状態が変化するので、その間、正確に座標入力装置は位置算出ができない状態となる。逆に言えば、この種の座標入力装置を使う場合には、座標入力面状態を初期状態と同一状態に保つ必要があり、このように、パンフレットや書類等のシート状物体を机上に置くことができない。
上記は、シート状物体が置かれている状態での課題を説明した。
当然の如くこの種の光を利用した座標入力装置にあっては、シート状物体を置く、あるいは除去する段階で、シート状物体が光路を遮る。さらには、シート状物体を移動させるための操作者の手、腕等も、光路を遮る可能性が十分にある。従って、操作者は、シート状物体を置く、あるいは除去することを意図しただけなのに、光路を遮ったことによって座標入力装置は何らかの座標を出力するはずであり、操作者の意図しない誤動作が発生する可能性がある。
さらには、シート状物体、とりわけパンフレット等の薄紙上をタッチ操作しようとする場合は、薄紙が移動しないように、利き腕と反対の手で紙を抑えて操作する場合が起こる。つまり、紙を抑える動作に座標入力装置が反応してしまうと、やはり操作者が意図しない誤動作へと結びつくことになる。
図14は、これらの紙を『置く』、『剥がす』動作で発生する不具合について説明する図である。
図14(A)は、紙を座標入力面に『置く』、『剥がす』動作の際に、紙がめくれることによって、本願発明の座標入力装置の光線62を必ず遮ることを示している。更には、その紙を持つことによる操作者の手、手首等も光線62を遮ることを示唆している。操作者は紙を『置く』、『剥がす』ことを意図しているだけであるので、座標入力装置は、この動作に対して何ら動作しないことが好ましい。つまり、このような動作により座標を検出して出力してしまうと、操作者の意図しない誤動作が発生する可能性が生じる。
図14(B)は、操作者のタッチにより筆跡が表示される、情報処理装置にインストールされているアプリケーションの例を説明する図である。位置71で指によるタッチが行われ、そのままタッチした状態で手を軌跡78に添って移動して位置72に移動したとする。座標入力装置の座標入力面の配下に重ねて配置されたディスプレイ(表示部)には、タッチによる移動を軌跡78として表示することができる。
そのようなアプリケーションを動作させている状態で、シート状物体である紙64が置かれ、その紙が移動しないように左手人差し指で位置73で抑えたとする。その動作により、座標入力装置は左手人差し指の位置73を出力することになり、ディスプレイ上にはその位置に筆跡としての点が表示されてしまう。つまり、操作者の意図は紙を抑えることで有り、その位置に点を表示させることではない。つまり、この動作では座標入力装置は何も出力しないのが好ましい形態であり、出力してしまえば、操作者の意図しない動作を実行してしまうのである。
図14(C)は、何らかの手段あるいは方法により、シート状物体を置く位置を規定する枠74を予め設定できるようなシステム例である。例えば、この枠74は、シート状物体の大きさにあわせて、シート状物体を置きたい領域に、例えば、その対角線位置をタッチすることで領域を定義し、ディスプレイにその枠74を表示させることができる。枠74の表示にあわせて、動作を指示するためのアイコン75、76、77を同時に表示する。これらのアイコンは、例えば、枠74の表示を消す等のコマンドが割り付けられる。
さらには、置かれたシート状物体の情報を取得、電子化するために、カメラ部が設けられているようなシステムに有っては、アイコンをタッチすることで、カメラ部を用いてシート状物体を撮影することが可能である。例えば、アイコン76タッチすることで、シート状物体であるパンフレットを撮影して、そのパンフレットに関する画像情報を電子情報として取り込むことができる。しかしながら、この撮影は操作者の不用意な操作によって動作してしまうことが起こる。つまり、シート状物体が置かれてない状態でも、その部分の情報を取り込み、不要な電子データを蓄積あるいいはその情報削除のために操作者に不要な作業を強いることになる。
本発明は上記の課題を解決するためになされたものであり、座標入力面のシート状物体の有無に応じて、適応的に高精度な入力座標を算出することができる座標入力装置及びその制御方法、プログラムを提供することを目的とする。
上記の目的を達成するための本発明による座標入力装置は以下の構成を備える。即ち、
座標入力面の2つの角部にそれぞれ配置されたセンサユニットの投光部により投光された光が、該座標入力面の周囲に配置された再帰反射部材で再帰反射され、前記センサユニットの受光部でその光を検出することで、該座標入力面に対する指示具による入力位置の座標値を算出する座標入力装置であって、
入力のない状態である初期状態における前記受光部が出力した出力信号を第1のリファレンスデータとして記憶する第1の記憶手段と、
座標入力サンプリング状態における前記受光部が出力した出力信号であるサンプリングデータと前記第1の記憶手段に記憶される第1のリファレンスデータとを比較する比較手段と、
前記比較手段の比較の結果に基づいて、前記座標入力面におけるシート状物体の有無を判定する判定手段と、
前記判定手段の判定の結果、前記シート状物体が前記座標入力面に有ると判定された場合、前記サンプリングデータを第2のリファレンスデータとして記憶する第2の記憶手段と、
前記判定手段の判定の結果に応じて、前記サンプリングデータと、前記第1のリファレンスデータあるいは前記第2のリファレンスデータとを用いて、前記座標入力面に対する前記指示具による入力位置の座標値を算出する算出手段と
を備える。
座標入力面の2つの角部にそれぞれ配置されたセンサユニットの投光部により投光された光が、該座標入力面の周囲に配置された再帰反射部材で再帰反射され、前記センサユニットの受光部でその光を検出することで、該座標入力面に対する指示具による入力位置の座標値を算出する座標入力装置であって、
入力のない状態である初期状態における前記受光部が出力した出力信号を第1のリファレンスデータとして記憶する第1の記憶手段と、
座標入力サンプリング状態における前記受光部が出力した出力信号であるサンプリングデータと前記第1の記憶手段に記憶される第1のリファレンスデータとを比較する比較手段と、
前記比較手段の比較の結果に基づいて、前記座標入力面におけるシート状物体の有無を判定する判定手段と、
前記判定手段の判定の結果、前記シート状物体が前記座標入力面に有ると判定された場合、前記サンプリングデータを第2のリファレンスデータとして記憶する第2の記憶手段と、
前記判定手段の判定の結果に応じて、前記サンプリングデータと、前記第1のリファレンスデータあるいは前記第2のリファレンスデータとを用いて、前記座標入力面に対する前記指示具による入力位置の座標値を算出する算出手段と
を備える。
以上説明したように、本発明によれば、座標入力面のシート状物体の有無に応じて、適応的に高精度な入力座標を算出することができる座標入力装置及びその制御方法、プログラムを提供できる。
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。尚、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
<実施形態1>
まず、本発明に係る座標入力装置の概略構成について、図1を用いて説明する。
まず、本発明に係る座標入力装置の概略構成について、図1を用いて説明する。
1L及び1Rは投光部30及び受光部40を有するセンサユニットである。実施形態1の場合、センサユニット1L及び1Rは、座標入力有効領域3のX軸に平行に、かつY軸に対称な位置(座標入力有効領域3の角部)に所定距離離れて配置されている。センサユニット1L及び1Rは、制御・演算ユニット2に接続され、制御信号を制御・演算ユニット2から受信すると共に、検出した信号を制御・演算ユニット2に送信する。
4は入射光を到来方向に反射する再帰反射面を有する再帰反射部材である。再帰反射部材4は、座標入力面5上の座標入力有効領域3の周囲3辺に配置され、左右それぞれのセンサユニット1L及び1Rから略90°範囲に投光された光を、センサユニット1L及び1Rに向けて再帰反射する。
6は特定の波長のみの光を透過することができる光透過部材であって、再帰反射部材4が直接外観に露出することを防止し、製品外観の一部を構成する保護カバーである。このように構成することで、製品として使われている際に堆積する『ほこり』、『ゴミ』の類は、保護カバー6に堆積する。従って、保護カバー6をユーザが『拭く』等の動作により、ほこりを簡単に除去できるので、その結果として再帰反射部材4の光学特性を半永久的に維持することが容易となり、信頼性の高い装置を実現することが可能となる。
再帰反射部材4で再帰反射された光は、集光光学系とラインCCD等の光学系によって構成されたセンサユニット1L及び1Rの受光部40によって1次元的に検出され、その光量分布が制御・演算ユニット2に送信される。
座標入力有効領域3は、PDPやリアプロジェクタ、LCDパネル等の表示装置の表示画面で構成することで、インタラクティブな座標入力装置として、利用可能となる。この場合、例えば、座標入力面5の配下に表示装置が重ねて配置されることになる。
このように構成することで、座標入力有効領域3に指等の指示具による入力指示がなされると、投光部30から投光された光が指示具によって遮られる。従って、センサユニット1L及び1Rの受光部40では、その遮光範囲のみの光(再帰反射による反射光)を検出することができなくなり、その結果、どの方向からの光が検出できなかったかを判定することが可能となる。
制御・演算ユニット2は、左右のセンサユニット1L及び1Rの光量変化から入力指示された部分の遮光範囲を検出し、その遮光範囲の情報から遮光位置の方向(角度)をそれぞれ導出する。さらに、導出された方向(角度)、及びセンサユニット1L及び1R間の距離情報等から、座標入力有効領域3上の座標位置を算出する。そして、表示装置に接続されているPC等の端末に、USB等の通信インタフェースを経由して座標値を出力する。このようにして、指等の指示具によって、画面上に線を描画したり、表示画面上のアイコン操作によりPCの制御が可能となる。
<センサユニット1L及び1Rの詳細説明>
図2はセンサユニット1L及び1R中における投光部30及び受光部40の構成例を示す図である。
図2はセンサユニット1L及び1R中における投光部30及び受光部40の構成例を示す図である。
図2(A)は投光部30を正面方向(座標入力面5に対し垂直方向)から見た図であり、31は赤外光を発する赤外LEDであり、発光した光は投光レンズ32によって、略90°範囲に光を投光する。一方、図2(C)は同じ構成を横から見た側面図であり(座標入力面5に対し水平方向)、この方向では、赤外LED31からの光は上下方向に制限された光束として投光され、主に、再帰反射部材4に対して光が投光されるように構成されている。
図2(B)は受光部40の正面方向(座標入力面5に対して垂直方向)から見た図であり、図2(C)はその側面図である。尚、図2(B)中の破線部分は、図2(C)に示されるセンサユニット1L及び1R中の投光部30の配置を示すものである。実施形態1の場合、投光部30と受光部40を重ねて配置しており、その光軸間の距離Lは、投光部30から再帰反射部材4までの距離に比べて十分に小さな値に設定される。従って、距離Lを有していても十分な再帰反射光を受光部40で検知することが可能な構成となっている。
また、図2(B)において、受光部40は、1次元のラインCCD41及び集光光学系としてのレンズ42、入射光の入射方向を概略制限する絞り43、可視光等の余分な光の入射を防止する赤外フィルター44からなる。従って、投光部30で投光された光は、再帰反射部材4によって再帰反射され、赤外フィルター44、絞り43を抜けてレンズ42によって、ラインCCD41の検出面上に集光される。従って、ラインCCD41の出力信号は、再帰反射光の入射角に応じた光量分布を出力することになるので、ラインCCD41を構成する画素群の各画素番号が角度情報を示すことになる。
<制御・演算ユニットの説明>
図1の制御・演算ユニット2とセンサユニット1L及び1Rの間では、ラインCCD41用の制御信号、ラインCCD41用のクロック信号、ラインCCD41用の出力信号、及び赤外LED31用の駆動信号が送受信されている。
図1の制御・演算ユニット2とセンサユニット1L及び1Rの間では、ラインCCD41用の制御信号、ラインCCD41用のクロック信号、ラインCCD41用の出力信号、及び赤外LED31用の駆動信号が送受信されている。
図3(A)は制御・演算ユニット2の構成を示すブロック図である。
ラインCCD41用の制御信号は、ワンチップマイコン等で構成される演算制御回路(CPU)83から出力されており、ラインCCD41のシャッタタイミングやデータの出力制御等の各種制御を行っている。ラインCCD41用のクロック信号は、クロック発生回路(CLK)87からセンサユニット1L及び1Rに送信されると共に、ラインCCD41との同期をとって、各種制御を行うために、演算制御回路83にも入力されている。この演算制御回路83は、メインクロック発生回路86からのクロック信号に従って動作する。尚、符号の末尾についているL、Rは、左右に配置されたセンサユニット1L及び1Rを各々の制御していることを意味する。
赤外LED31用の駆動信号は、演算制御回路83からLED駆動回路84L及び84Rを経て、センサユニット1L及び1Rの赤外LED31に各々供給されている。
センサユニット1L及び1Rの受光部40であるラインCCD41からの検出信号(アナログ信号)は、制御・演算ユニット2中のA/Dコンバータ81L及び81Rに入力され、演算制御回路83からの制御によって、デジタル信号に変換される。変換されたデジタル信号は必要に応じてメモリ82に記憶され、後述する方法で角度算出、さらには座標値が算出され、その結果を外部端末にシリアルインタフェース88を介して出力される。
<光量分布検出の説明>
図3(B)は制御信号、クロック信号、駆動信号等の各種信号のタイミングチャートである。
図3(B)は制御信号、クロック信号、駆動信号等の各種信号のタイミングチャートである。
91、92、93がラインCCD41用の制御信号であり、Sh信号91の間隔で、ラインCCD41のシャッタ解放時間が決定される。ICGL信号92及びICGR信号93は、センサユニット1L及び1Rそれぞれへのゲート信号であり、それぞれのラインCCD41内部の光電変換部の電荷を読出部へ転送する信号である。
LEDL駆動信号94及びLEDR駆動信号95は、センサユニット1L及び1Rの赤外LED31の駆動信号である。ここで、Sh信号91の最初の周期で一方のLED(センサユニット1L中の赤外LED31)を点灯するためにLEDL駆動信号94が、LED駆動回路(この場合、LED駆動回路84L)を経て投光部30に供給される。次の周期で、もう一方のLED(センサユニット1R中の赤外LED31)を点灯するためにLEDR駆動信号95が、LED駆動回路(この場合、LED駆動回路84R)を経て投光部30に供給される。センサユニット1L及び1Rの双方の投光部30の駆動が終了した後に、センサユニット1L及び1Rの双方の受光部40(ラインCCD41)から検出信号が読み出される。
ここで、センサユニット1L及び1Rの双方から読み出される検出信号は、座標入力有効領域3への指示具による入力がない場合(遮光範囲がない場合)、それぞれのセンサユニット1L及び1Rからの出力として、図4(A)のような光量分布が検出される。この光量分布は、再帰反射部材4の特性(再帰反射部材4の入射角による再帰反射特性)や、赤外LED31を含む投光部30やレンズ42を含む受光部40の特性、または経時変化(反射面の汚れ等)によって、この光量分布は変化する。
図4(A)において、レベルAが最高光量を検出した時のレベルであり、レベルBが最低光量を検出した時のレベルを示している。従って、再帰反射光が検出されない状態では、検出されるレベルはレベルB付近になり、反射光量が増えるほどレベルAに近づくことになる。このように、センサユニット1L及び1RそれぞれのラインCCD41から出力された検出信号は、逐次、対応するA/Dコンバータ81L及び81RでA/D変換されて、演算制御回路83にデジタル信号として取り込まれる。
図4(B)は、指等の指示具で入力を行った、つまり、反射光を指示具で遮った場合の出力の例である。Cの部分が指示具で反射光が遮られたため、その部分のみ光量が低下している。
座標の検出は、この光量分布の変化を検知して行うものであり、具体的に説明すれば、まず、図4(A)のような入力のない状態(以後、この状態(初期状態)で検出されるデータを初期データと呼ぶ)を、まず、予めメモリ82に記憶する。そして、センサユニット1L及び1Rそれぞれの検出信号のサンプル期間で検出されるデータと、予め記憶しておいた初期データとの差分を算出することで、図4(B)のような光量分布の変化があるか否かを判定する。
<角度計算の説明>
センサユニット1L及び1Rに対する指示具の角度計算にあたっては、まず、指示具による遮光範囲を検出する必要がある。
センサユニット1L及び1Rに対する指示具の角度計算にあたっては、まず、指示具による遮光範囲を検出する必要がある。
上述のように、センサユニット1L及び1Rが検出する光量分布は、経時変化等の要因で一定ではないため、システムの起動時等に上述の初期データをメモリ82に記憶することが望ましい。仮に、工場等の出荷時に初期データを設定し、その初期データの更新が行われないと仮定する。このような状態で、例えば、市場での使用中に所定の位置の再帰反射部材4にゴミが付着してしまった場合を考える。そのゴミが付着した部分では再帰反射効率が低下するので、その方向から帰ってくる再帰反射光は工場出荷時より低下する。従って、あたかもその位置(センサユニット1Lあるいは1Rから見た方向)で座標入力動作が行われた、すなわち、誤検出してしまうと言う重大な結果を引き起こす可能性がある。
従って、システムの起動時等に初期データを逐次記憶することで、再帰反射面が経時的にほこり等の要因で汚れて再帰反射効率が落ちていても、その状態を初期状態として設定しなおすことができる。更には、使用による経年変化により、例えば、光電変換素子の光変換効率が劣化したような場合であっても、誤動作を防止できる。従って、安定した品位の装置を、継続的に提供することができる優れた利点が得られるようになる。無論、ゴミ等の要因による影響で、再帰反射部材4からの信号がその付着した部分で全く受け取ることができなくなれば、座標検出不能の事態となり、何らかの方法で、そのゴミ等を除去することが好ましい。
さて、電源投入時、入力のない(遮光範囲がない)状態で、まず、センサユニット1L及び1Rの投光部30から照明無しの状態で、受光部40からの出力(光量分布)をA/D変換して、ベースデータBas_data[N]としてメモリ82に記憶する。これは、受光部40(ラインCCD41)のバイアスのばらつき等を含んだデータとなり、図4(A)のレベルB付近のデータとなる。ここで、NはラインCCD41を構成する画素の画素番号であり、有効な入力範囲に対応する画素番号が用いられる。次に、投光部30から照明有りの状態で、受光部40からの出力である光量分布をA/D変換して、この値を、リファレンスデータRef_data[N]としてメモリ82(第1の記憶部)に記憶する。これは、図4(A)の実線で表されたデータとなる。以上の処理によって、初期データの記憶を完了する。
これらのデータを用いて、まず、入力が成されたか、換言すると、指示具により光路が遮られて、光を検出することができない遮光範囲があるか否かを判定する。あるサンプル期間において、ラインCCD41のN番目の画素の画素データをサンプリングデータNorm_data[N]とする。まず、遮光範囲を特定するために、画素データの変化の絶対量によって、遮光範囲の有無を判定する(図4(B)参照)。これは、ノイズ等による誤判定を防止し、所定量の確実な変化を検出するためである。画素データの変化の絶対量を、ラインCCD41の各々の画素において以下の計算を行い、予め決定してある閾値Vthaと比較する。
Norm_data_a[N] = Norm_data[N] - Ref_data[N] (1)
従って、Norm_data_a[N]は、ラインCCD41の各画素における絶対変化量に相当することになる。この処理は、ラインCCDの各画素の絶対変化量Norm_data_a[N]を算出し、それを閾値Vthaと比較するだけである。従って、処理時間をさほど必要とせず、入力の有無の判定を高速に行うことが可能である。そして、特に、閾値Vthaを初めて超えた画素が所定数を超えて検出された場合に、指示具の入力があると判定する(図4(B)における矢印Cの部分の信号)。
従って、Norm_data_a[N]は、ラインCCD41の各画素における絶対変化量に相当することになる。この処理は、ラインCCDの各画素の絶対変化量Norm_data_a[N]を算出し、それを閾値Vthaと比較するだけである。従って、処理時間をさほど必要とせず、入力の有無の判定を高速に行うことが可能である。そして、特に、閾値Vthaを初めて超えた画素が所定数を超えて検出された場合に、指示具の入力があると判定する(図4(B)における矢印Cの部分の信号)。
次に、より高精度に検出するために、画素データの変化の比Norm_data_r[N]を算出して、座標入力点の決定を行う。
Norm_data_r[N] = Norm_data_a[N] / (Bas_data[N] - Ref_data[N]) (2)
この算出結果は、出力信号(光量分布)の変動比(変化比信号)であらわされるため、閾値Vthrと比較することで、遮光範囲に対応する画素データ分布の立上がり部と立下がり部に対応する画素番号を取得することができる。そして、この両者の中央を指示具による入力に対応する画素の画素番号とすることで、高精度に指示具の入力位置を決定することができる(図4(D)参照)。
この算出結果は、出力信号(光量分布)の変動比(変化比信号)であらわされるため、閾値Vthrと比較することで、遮光範囲に対応する画素データ分布の立上がり部と立下がり部に対応する画素番号を取得することができる。そして、この両者の中央を指示具による入力に対応する画素の画素番号とすることで、高精度に指示具の入力位置を決定することができる(図4(D)参照)。
<画素情報(画素番号)から角度情報への変換、及び指示位置算出の説明>
さて、遮光範囲の中心点を示す中央画素番号から、実際の指示具の座標値を算出するためには、この中心画素番号を角度情報に変換する必要がある。画素番号と角度θの関係を、例えば、工場出荷時等に予め測定して設定しておけば、算出された画素番号に基づき、角度θは、次式で算出される。
さて、遮光範囲の中心点を示す中央画素番号から、実際の指示具の座標値を算出するためには、この中心画素番号を角度情報に変換する必要がある。画素番号と角度θの関係を、例えば、工場出荷時等に予め測定して設定しておけば、算出された画素番号に基づき、角度θは、次式で算出される。
θ=f(N) (3)
本願発明では、1次近似式を用いて近似できるように、センサユニット1L及び1Rの受光部40のレンズ群を構成する。しかしながら、これに限定されるものではなく、レンズ群の光学的収差等の要因により、より高次な近似式を用いたほうが、より高精度に角度情報を算出することが可能となる場合がある。どのようなレンズ群を採用するかは、製造コストと密接に関連し、レンズ群の製造原価を下げることによって一般的に発生する光学的な歪を、より高次の近似式を用いて補正する仕様も考えられる。その場合には、それなりの演算能力(演算速度)や近似式の導出に作業工数がかかるので、目的とする製品に要求される座標算出精度や製造数量を鑑みながら、最適な構成を選択すれば良い。
本願発明では、1次近似式を用いて近似できるように、センサユニット1L及び1Rの受光部40のレンズ群を構成する。しかしながら、これに限定されるものではなく、レンズ群の光学的収差等の要因により、より高次な近似式を用いたほうが、より高精度に角度情報を算出することが可能となる場合がある。どのようなレンズ群を採用するかは、製造コストと密接に関連し、レンズ群の製造原価を下げることによって一般的に発生する光学的な歪を、より高次の近似式を用いて補正する仕様も考えられる。その場合には、それなりの演算能力(演算速度)や近似式の導出に作業工数がかかるので、目的とする製品に要求される座標算出精度や製造数量を鑑みながら、最適な構成を選択すれば良い。
図1に戻り、センサユニット1L及び1Rからは各々の指示位置Pの角度情報θL及びθRが算出される。センサユニット1L及び1R間の距離Dsは既知であり、これらの情報を用いて幾何学的に指示位置Pの座標を算出することが可能となる
<座標入力面に紙を置いた時の現象説明>
本願発明の座標入力装置の位置検出方法について説明してきたが、ここで、座標入力面に紙を置いて操作する場合について考えてみる。つまり、この種の座標入力装置とディスプレイ(表示部)を一体化したインタラクティブディスプレイを、机の天板に重ね置き、あるいは机と一体化して使う場合を想定する。座標入力面の法線方向は略天地方向となるので、座標入力面に紙等の物体を置くことが物理的に可能となる。実際に、書類等をその座標入力面に置いた状態であっても、座標入力面をタッチすることにより操作することが可能となれば、ユーザの利便性は向上する。
<座標入力面に紙を置いた時の現象説明>
本願発明の座標入力装置の位置検出方法について説明してきたが、ここで、座標入力面に紙を置いて操作する場合について考えてみる。つまり、この種の座標入力装置とディスプレイ(表示部)を一体化したインタラクティブディスプレイを、机の天板に重ね置き、あるいは机と一体化して使う場合を想定する。座標入力面の法線方向は略天地方向となるので、座標入力面に紙等の物体を置くことが物理的に可能となる。実際に、書類等をその座標入力面に置いた状態であっても、座標入力面をタッチすることにより操作することが可能となれば、ユーザの利便性は向上する。
具体的には、操作者が座標入力面に書類を置き、書類に描かれている図形を書類の上からなぞることで、その一連の操作を本願発明の座標入力装置で検出できるので、図形情報を正確に電子化することが可能となる。図形、写真等を扱うデザイナーにとっては、特に有益な操作環境が提供される。更には、カメラ等の撮像部により頭上から座標入力面を撮影できるようなシステムに有っては、座標入力面上に置かれた書類上の一部分を四角形等の閉ループで囲むことにより、その四角形内の部分のみをトリミングして電子化することも可能となる。
さて、本願発明の座標入力装置で、座標入力面上に紙を置いた場合に起こる物理現象を説明する。
図5(A)は座標入力装置の光路を説明するための断面図であり、投光部30、受光部40を内蔵するセンサユニット1(センサユニット1Lあるいは1R)、及び再帰反射部材4、座標入力面5を示している。投光部30からの光は対向する辺に設けられた再帰反射部材4に向けられて投光することになる(光線61)が、その光線61は図5(A)に示されるが如く、断面方向に広がった光線となる。勿論、断面方向にコリメートされた光源を採用する(例えば、レーザー、あるいは視野絞りや複数のレンズ群を用いた光学系)ことは可能であるが、高価な装置構成とならざるを得ない。
広がった光線として投光部30から投光された光の一部は、座標入力面5で正反射(図中、位置63)して、対向する辺に設けられた再帰反射部材4に到達する(光線62)。再帰反射部材4は、その光線62を元の方向へと再帰反射させるので、その光の一部は受光部40で検出されることになる。
ここで、正反射した光を受光部40が検出できるポイントは、正反射位置がセンサユニット1と再帰反射部材4間の距離の中点付近(図中、位置63)のみとはならない。それは、再帰反射部材4が縦方向に有限の距離を有すること、再帰反射面で全ての光が正反射するのでなく、多かれ少なかれ乱反射することで拡散光が発生するためである。
このような状態で、座標入力面5に、例えば、書類である所の紙を置いたものとする。図5(B)はその状態を示したものであり、座標入力面5に紙64が置かれている。従って、紙64が置かれた部分では、座標入力面5の反射面の物理的反射特性が変化することになる。
また、ここでは、紙64として説明しているが、薄板状の物体であって、座標入力面5と表面の状態が異なる物体であれば、同様の現象が起こるはずであり、紙64に限定されるものではない。つまり、図5(A)のような光学系を有する座標入力装置に有っては、たとえ紙状の物体を座標入力面5に置いたとしても、光線61は紙64を置くことによって遮られることは無い。従って、その紙64の上をタッチすることによって光線61を遮った場合に、その位置を高精度に算出できる。つまり、本願発明の座標入力装置では、紙64が置かれた状態であっても、その紙64の上から、あるいはその紙64の周囲でタッチしても、高精度にその位置検出が行えるようにすることを目的としている。
<紙の有無判定に関する説明>
この現象をセンサユニット1Lあるいは1Rの受光部40が出力した信号波形で説明すると、図4(C)の光量分布の状態になる。つまり、本来、出力されるべきリファレンスデータRef_data[N](図4(A)の実線の波形)よりも、画素番号の有効範囲の内、範囲Dの区間で、出力が低下する。この状態における変化の比Norm_data_r[N]は、判定する閾値Vthrより低いので座標入力装置は何ら出力することはない。しかしながら、今、紙64は、座標入力面5に置かれた状態にあり、紙64が取り除かれるまで、操作者によるタッチ操作がなければセンサユニット1Lあるいは1Rからの出力信号は、図4(C)の状態のままである。
この現象をセンサユニット1Lあるいは1Rの受光部40が出力した信号波形で説明すると、図4(C)の光量分布の状態になる。つまり、本来、出力されるべきリファレンスデータRef_data[N](図4(A)の実線の波形)よりも、画素番号の有効範囲の内、範囲Dの区間で、出力が低下する。この状態における変化の比Norm_data_r[N]は、判定する閾値Vthrより低いので座標入力装置は何ら出力することはない。しかしながら、今、紙64は、座標入力面5に置かれた状態にあり、紙64が取り除かれるまで、操作者によるタッチ操作がなければセンサユニット1Lあるいは1Rからの出力信号は、図4(C)の状態のままである。
さて、図6(A)は初期状態の光量分布を示し、図6(B)は座標入力面5に紙状の物体が置かれた時の光量分布であり、図6(C)は紙状の物体が置かれ、その紙上を操作者がタッチした時に検出される光量分布である。先に説明した通り、入力がない状態の信号(図6(A))をリファレンスデータRef_data[N]として演算することによって、正確にタッチ位置の算出が可能となる。同様に、このリファレンスデータRef_data[N]を用いて、紙64をただ置いた状態(この状態は、入力がない状態として扱われる)で、紙64上をタッチした時の信号を処理すれば、当然のことながら、タッチ位置の算出に誤差が生じる。つまり、紙64を置いた状態でのタッチ操作は、その操作位置が紙64の上であろうとなかろうと、正確な位置算出は行えない。
一方、紙64をただ置いた状態の信号をリファレンスデータRef_data[N]として採用(図6(B)の信号)することを考える。紙64をただ置いた状態とは、操作者はタッチ操作を行っておらず、入力がない状態として扱われる。この状態で、紙64上でタッチ操作を行えば、信号は図6(C)が検出され、リファレンスデータRef_data[N]を図6(B)の信号とすれば、算出される比は図6(F)の状態となりタッチ位置を正確に算出できる。
先の説明に適用すれば、電源投入時に既に紙64が置かれていれば、電源投入時に検出されるリファレンスデータRef_data[N]は、図6(B)の信号であり、紙64がその位置に置かれている限り、タッチ位置は正確に算出可能となる筈である。本願発明は、この点に着目する。
具体的に説明すると、電源投入時に紙64が置かれていなければ、リファレンスデータRef_data[N]は図6(A)である。その後、使用途中に紙64が置かれたものとすると、出力信号は図6(B)となる。つまり、紙64が置かれた角度範囲(図中、範囲D)の出力信号レベルが低下するが、この範囲Dや位置は、紙64の大きさや、紙が置かれた位置に依存する。しかしながら、先に説明した通り、算出される比は、図4(E)もしくは図6(D)に示すように、第1の閾値Vthrよりは十分低い値となる。そこで、第2の閾値Vthr2を用いて、所定の範囲で連続的に第1の閾値Vthrと第2の閾値Vthr2を超えたかを判定する。そして、所定の範囲で連続的に閾値を超えたと判定した時には、紙64が座標入力面5に置かれたものと判定して、以後の計算では、リファレンスデータRef_data[N]として図6(B)の信号を採用する。
尚、紙64を置いて反射波が影響を受ける範囲は、指や指示具の直径、つまり、それらのタッチ操作により光路が遮られる遮光範囲よりは十分大きいはずである。従って、『所定の範囲で連続的』と言う条件をつけることで、指等によるタッチ操作との区別をより信頼性を持って判定することが可能となる。
さて、紙64を置いた状態と判定され、リファレンスデータRef_data[N]として、図6(B)の状態の信号が採用されていると仮定する。この状態で、座標入力面5に置いてある紙64を取り除いたとする。その時、検出される信号は、当然のことながら紙64も無く、入力もない状態である所の信号(図6(A))の状態となる筈である。従って、算出される比は、リファレンスデータRef_data[N]が図6(B)、サンプリングデータが図6(A)、従って、算出される比は図6(E)となる。従って、この場合、第3の閾値Vthr3を用いて、所定の範囲で連続的に第2の閾値Vthr2と第3の閾値Vthr3を超えたかを判定することで、紙64が取り除かれたかを判定することが可能となる。従って、紙64が取り除かれたと判定した時には、リファレンスデータRef_data[N]を図6(B)から図6(A)の信号に変更することで、紙64の無い状態でのタッチ操作を高精度で検出することが可能となる。
<紙の位置がずれた時の判定に関する説明>
図7(A)の信号は、図4(C)もしくは図6(B)の再掲である。紙の有無判定について説明したが、操作者の操作等、何らかの原因で置かれている紙64の位置がずれた場合を考える。その場合、図7(B)に示すとおり、正反射が受ける影響の範囲がずれるので、信号変化のある範囲は範囲Dから範囲D’へと移動する。今、図7(A)は紙がある状態の信号であり、その状態では図7(A)の信号がリファレンスデータRef_data[N]として採用されている。その時、図7(B)の信号が検出されたとすると、算出される比は、図7(C)の信号が検出されるはずである。つまり、紙の移動により、紙が無くなった領域はα部の信号として、そして、新たに紙が置かれた領域はβ部の信号となる。そして、α部とβ部の間の信号領域(計算される比はほぼゼロ)は、紙の移動によっても、紙がありつづけた領域と言うことになる。つまり、第2の閾値Vthr2、第3の閾値Vthr3により、図7(C)の信号状態にあるかを判定することによって、紙の移動を検出することが可能となる。
図7(A)の信号は、図4(C)もしくは図6(B)の再掲である。紙の有無判定について説明したが、操作者の操作等、何らかの原因で置かれている紙64の位置がずれた場合を考える。その場合、図7(B)に示すとおり、正反射が受ける影響の範囲がずれるので、信号変化のある範囲は範囲Dから範囲D’へと移動する。今、図7(A)は紙がある状態の信号であり、その状態では図7(A)の信号がリファレンスデータRef_data[N]として採用されている。その時、図7(B)の信号が検出されたとすると、算出される比は、図7(C)の信号が検出されるはずである。つまり、紙の移動により、紙が無くなった領域はα部の信号として、そして、新たに紙が置かれた領域はβ部の信号となる。そして、α部とβ部の間の信号領域(計算される比はほぼゼロ)は、紙の移動によっても、紙がありつづけた領域と言うことになる。つまり、第2の閾値Vthr2、第3の閾値Vthr3により、図7(C)の信号状態にあるかを判定することによって、紙の移動を検出することが可能となる。
従って、紙が移動したと判定した場合には、リファレンスデータRef_data[N]を図7(A)から図7(B)に変更することで、そのような場合であってもタッチ位置を高精度に算出することが可能となる。
<座標算出処理についての説明>
さて、図8及び図9はデータ取得から座標算出までの座標算出処理を示すフローチャートである。尚、この座標算出処理は、制御・演算ユニット2の制御によって実行される。
さて、図8及び図9はデータ取得から座標算出までの座標算出処理を示すフローチャートである。尚、この座標算出処理は、制御・演算ユニット2の制御によって実行される。
まず、図8において、電源投入が行われると、ステップS102で、制御・演算ユニット2のポート設定、タイマ設定、Flag=0等の座標入力装置に係る各種初期化を行う。ステップS103で、受光素子であるところのラインCCD41の画素有効範囲や動作条件(シャッタ開放時間等)、あるいはラインCCD41の電源投入時のみの動作を設定する。また、ラインCCD41の初期読込動作の初期読込回数を設定する。例えば、メモリ82に予め記憶されている設定値から設定する。また、ラインCCDの初期読込動作の初期読込回数を設定する。
尚、この初期読込動作は、座標入力装置の起動時におけるラインCCDの不要電荷除去を行うのための動作である。ラインCCDでは、動作させていないときに不要な電荷を蓄積している場合があり、その電荷が蓄積されている状態で座標入力動作を実行すると、検出不能になったり、誤検出の原因となる。そこで、これを避けるために、ステップS104で、投光部30による投光を停止している状態で、所定回数の読込動作を実行する。これにより、不要電荷の除去を行う。
ステップS104で、ラインCCDの読込動作を実行する。ステップS105で、所定回数以上の読込を実行したか否かを判定する。所定回数以上の読込を実行していない場合(ステップS105でNO)、ステップS105に戻る。一方、所定回数以上の読込を実行した場合(ステップS105でYES)、ステップS106に進む。
ステップS106で、投光部30の照明なしの状態で、ベースデータBas_data[N]を取り込む。ステップS107で、ベースデータBas_data[N]をメモリ82に記憶する。ステップS108で、投光部30の照明ありの状態で、初期光量分布に相当するリファレンスデータRef_data[N]を取り込む。ステップS109で、リファレンスデータRef_data[N]をメモリ82に記憶する。
以上の動作により、電源投入時、あるいはシステムリセット時の初期設定動作を完了する。この初期設定動作は、座標入力装置に構成されているリセットスイッチ等により操作者の意図によって動作するように構成しても良いことは言うまでも無い。この初期設定動作を経て、指示具による通常の座標入力動作状態(座標入力サンプリング状態)に移行することになる。
初期設定動作を完了すると、図9において、ステップS110で、座標入力サンプリング状態で、通常データとしてのサンプリングデータNorm_data[N]を取り込む。ステップS111で、Flagの参照として、Flag=0であるか否かを判定する。Flag=0であると判定した場合(ステップS111でYES)、リファレンスデータとして、ステップS108及びステップS109で検出済のデータを採用する。そして、ステップS112で、ステップS110で検出されたサンプリングデータNorm_data[N]とリファレンスデータRef_data[N]を用いて、式(2)より出力信号の変化比信号を算出する(制御・演算ユニット2による変化比算出機能)。ステップS114で、図4及び図6のような信号変化があるか否かを閾値を用いて判定する(制御・演算ユニット2による閾値比較機能)。
ここで用いられる閾値は、第1の閾値Vthr、第2の閾値Vthr2もしくは第3の閾値Vthr3である。第1の閾値Vthrはタッチ動作が行われているかを判定するものであり、第2の閾値Vthr2もしくは第3の閾値Vthr3は紙64の有無を判定する閾値である。つまり、タッチ動作が行われておらず、紙64が無い状態から有る状態に変化した時には、第1の閾値Vthrでは信号が検出されず、第2の閾値Vthr2で、所定の範囲で連続的に信号が検出(生成)されることになる。
これらの3つの異なる閾値により信号が検出されない場合、つまり、信号変化がない場合(ステップS114でNO)、タッチ操作や紙64の状態変化がないものとして、ステップS110に戻って、サンプリングデータNorm_data[N]を取り込む。いずれかの閾値で信号が検出されると、ステップS115で、各々の閾値で規定される複数の閾値範囲の内、どの閾値範囲での信号変化(変化比信号)が存在するか否かを判定する。ステップS116で、その判定結果に基づいて、紙64が無い状態から有る状態、または紙64が有る状態から無い状態になったか、つまり、紙64の状態変化の有無を判定する。つまり、第1の閾値Vthrで信号は検出されないものの、第2の閾値Vthr2および第3の閾値Vthr3のいずれかの閾値で信号が検出される場合は、紙64の有無状態あるいは紙64の位置が変化(移動)した状態(紙64の状態変化)と判定できる。
逆に、紙64の状態変化がない状態とは、第2の閾値Vthr2および第3の閾値Vthr3のいずれかで検出される信号は、所定の範囲で連続的に検出される信号とはなっておらず、かつ第1の閾値Vthrで信号が検出されている状態である。換言すると、紙64の状態変化はないが、操作者のタッチ操作が行われている状態と言える。従って、ステップS116で、紙64の状態変化がないと判定した場合(ステップS116でNO)、ステップS117で、式(3)を用いて、ラインCCD41が出力する画素情報から角度を算出する。そして、ステップS118で、入力位置(タッチ位置)を算出/出力して、ステップS110に戻る。
ステップS116で、紙64の状態変化があると判定した場合(ステップS116でYES)、第2の閾値Vthr2もしくは第3の閾値Vthr3で信号が検出される。そして、紙64が無い状態から紙64が有る(置かれている)状態になったなら図6(D)の信号が検出されるはずである。つまり、第2の閾値Vthr2により、所定の範囲で連続的に信号が検出される。次に、ステップS120で、紙64の移動の有無を判定する。紙64の移動が有ると判定した場合(ステップS120でYES)、ステップS122に進む。一方、紙64の移動が無いと判定した場合(ステップS120でNO)、ステップS121に進む。
紙64が無い状態から紙64が有る状態になった場合で、紙64の移動が無いと判定した場合(ステップS120でNO)、ステップS121で、Flag=0であるか否かを判定する。Flag=0であると判定した場合(ステップS121でYES)、ステップS122に進む。一方、Flag=0でないと判定した場合(ステップS121でNO)、ステップS123に進む。
ここで、今、算出に使用しているリファレンスデータ(第1のリファレンスデータ)は、図6(A)の信号で、かつFlag=0であるので、Flag=0であると判定される(ステップS121でYES)ので、ステップS122で、Flag=1に設定する。そして、ステップS124で、ステップS110で取り込んだサンプリングデータNorm_data[N]を第2のリファレンスデータRef_data2[N]としてメモリ82(第2の記憶部)に記憶して、ステップS110に戻る。
紙64が座標入力面5にそのまま置かれている状態で、タッチ操作も行われてなければ、ステップS110で、新たに検出されるサンプリングデータNorm_data[N]と、第2のリファレンスデータRef_data2[N]は略同一の信号である。従って、今は、Flag=1の状態である。この場合、Flag=0でないと判定されるので(ステップS111でNO)、ステップS113に進む。そして、ステップS113で、ステップS110で取り込んだサンプリングデータNorm_data[N]と第2のリファレンスデータRef_data2[N]を用いて、式(2)より出力信号の変化比信号を算出する。この場合、信号変化はない状態と判定されるので(ステップS114でNO)、ステップS110に戻ることになる。
一方、紙64が置かれている状態でタッチ操作を行えば、信号変化が有ると判定されるので(ステップS114でYES)、ステップS115に進む。そして、ステップS115で、ステップS111の判定に基づき選択されたリファレンスデータ(Ref_data[N]あるいはRef_data2[N])を使用して、閾値範囲での信号変化の有無を判定する。
次に、紙64が置かれた状態(紙64が有る状態)から紙64が取り除かれた状態(紙64が無い状態)の処理について説明する。
今、紙64が置かれた状態であるので、Flag=1であって、第2のリファレンスデータRef_data2[N](図6(B)の信号)が選択されている。その状態から紙64を取り除くと、検出されるサンプリングデータNorm_data[N]は図6(A)であるから、信号変化が有ると判定される(ステップS114でYES)。そして、ステップS115を経て、紙64の状態変化が有ると判定される(ステップS116でYES)。つまり、ステップS115で、算出される信号変化の比の値は図6(E)であり、第3の閾値Vthr3により、所定の範囲で連続的な信号が検出されている。そして、紙64の移動は無いと判定され(ステップS120でNO)、また、現状、Flag=1に設定されているので(ステップS121でNO)、ステップS123で、Flag=0に設定する。
また、紙64が有る状態で、その紙64の位置が移動した場合を考える。その場合のサンプリングデータNorm_data[N]は図7(B)であり、ステップS115における閾値範囲での信号変化の有無の判定で、第2の閾値Vthr2かつ第3の閾値Vthr3で信号が検出されるはずである(図7(C)参照)。従って、紙の状態変化が有ると判定され(ステップS116でYES)、ステップS120に移行する。
先に説明した通り、紙64の状態変化が有る場合には、第2のVthr2もしくは第3の閾値Vthr3で検出される出力信号は、所定の範囲で連続的でなければならない。しかしながら、紙64の位置が移動した場合には、図7(C)に示すが如く、第2の閾値Vthr2かつ第3の閾値Vthr3の両者により信号が検出されるはずである。つまり、紙64の状態変化の有無を判定するだけでなく、紙64の位置が移動したかを判定することも可能である。従って、ステップS120で、紙64の移動が有ると判定した場合(ステップS120でYES)、ステップS122で、紙が置かれていることを示すフラグをFlag=1のままとして設定する。そして、ステップS124で、今、検出されたサンプリングデータNorm_data[N]を第2のリファレンスデータRef_data2[N]として更新する。
以上のように構成することで、紙64が置かれようと置かれまいと、あるいは紙64の位置が移動したような場合であっても、その影響を受けること無く、高精度にタッチ位置を算出することができる。
以上説明したように、実施形態1によれば、操作者が紙等のシート状物体を座標入力面上に配置したかを否か判定することにより、シート状物体が配置された状態でも、高精度な位置検出が可能となる。
具体的には、座標入力装置と表示装置を一体に構成したインタラクティブディスプレイを机上に配置して、机を取り囲んで議論や会議をする場面を想定する。操作者は、机上に表示されているオブジェクトを直接タッチすることで、オブジェクトの選択や、オブジェクトに割り付けられた動作を制御することができる。その際、本願発明の座標入力装置によって指示位置を検出することができる。さらには、操作者が指示した軌跡を筆跡としてディスプレイに表示することも可能であり、議事録を作成したり、議論を集約するために用いられる。
また、会議中、操作者が議論を円滑に進めるために、資料としての、例えば、パンフレットを机上に置いて、その内容を参加者に提示、説明することが日常的に行われる。その資料が座標入力有効領域内に置かれたとしても、その影響を受けることなく、例えば、表示されているオブジェクトをタッチして、別の資料を呼び出したりすることも可能となる。
さらには、その資料の範囲内をタッチすることにより指示、あるいは資料内の必要な情報部分の範囲を指示することで、資料の上からであっても座標入力操作することが可能となる。このようにして、座標入力装置が検出したその指示範囲を使って、例えば、撮像部でその指示範囲(領域)のみを撮影して電子化する等の操作も行え、操作性を大幅に向上させることができる。
<実施形態2>
実施形態1においては、紙64の有無、あるいは位置の移動を検知するために、第1のリファレンスデータRef_data[N]と第2のリファレンスデータRef_data2[N]を記憶し、状態に応じてそのどちらかを選択する構成としている。そして、選択したリファレンスデータを用いてサンプリングデータNorm_data[N]との変化比信号を算出し、複数の閾値で比較した時に検出される信号に基づき、その時の紙64の状態を判定する。さらには、紙64の位置が移動した場合にも、第2のリファレンスデータRef_data2[N]を更新する構成としている。
実施形態1においては、紙64の有無、あるいは位置の移動を検知するために、第1のリファレンスデータRef_data[N]と第2のリファレンスデータRef_data2[N]を記憶し、状態に応じてそのどちらかを選択する構成としている。そして、選択したリファレンスデータを用いてサンプリングデータNorm_data[N]との変化比信号を算出し、複数の閾値で比較した時に検出される信号に基づき、その時の紙64の状態を判定する。さらには、紙64の位置が移動した場合にも、第2のリファレンスデータRef_data2[N]を更新する構成としている。
しかしながら、これに限定されるものではない。例えば、第1の閾値Vthrによる信号が検出されない状態(タッチ操作が行われてない状態)で、以下に示す場合に、第1のリファレンスデータRef_data[N]を、今、検出されたサンプリングデータNorm_data[N]で更新しても良い。
第1の場合は、第2の閾値Vthr2もしくは第3の閾値Vthr3いずれかにより、所定の範囲で連続的な信号が検出された場合である。つまり、図6(D)あるいは図6(E)のいずれかの信号が検出された場合であって、紙64が状態変化した(無い状態から有る状態、または有る状態から無い状態)場合である。
第2の場合は、第2の閾値Vthr2かつ第3の閾値Vthr3で、連続的な信号が検出された場合である。つまり、図7(C)の信号が検出された場合であって、紙64の位置がずれた(移動)した場合である。
具体的に、図10を用いて説明すれば、初期動作を完了して、ステップS210で、サンプリングデータNorm_data[N]を取り込む。ステップS211で、サンプリングデータNorm_data[N]と、記憶されているリファレンスデータRef_data[N]とを用いて、式(2)より出力信号の変化比信号を算出する。ステップS212で、信号変化の有無を判定する。そして、ステップS213で、閾値範囲での信号変化の有無を判定する。
ステップS214で、その判定結果に基づいて、タッチ入力の有無を判定する。つまり、第1の閾値Vthrによる信号が検出されたか否かを判定する。第1の閾値Vthrによる信号が検出されたと判定した場合(ステップS214でYES)、ステップS215で、式(3)を用いて、ラインCCD41が出力する画素情報から角度を算出する。そして、ステップS216で、入力位置(タッチ位置)を算出/出力して、ステップS210に戻る。
一方、第1の閾値Vthrによる信号が検出されないと判定した場合(ステプS214でNO)、ステップS217で、紙64の状態変化の有無を判定する。つまり、紙64が無い状態から有る状態に変化すれば、無い状態の信号(図6(A)の信号)をリファレンスデータとしているので、図6(D)の信号が検出される。また、紙64が有る状態から無い状態に変化すれば、有る状態の信号(図6(B)の信号)をリファレンスデータととしているので、図6(E)の信号が検出される。そして、紙64の状態変化があると判定した場合(ステップS217でYES)、ステップS219で、今、検出されたサンプリングデータNorm_data[N]をリファレンスデータRef_data[N]として更新する。
一方、紙64の状態変化が無いと判定した場合(ステップS217でNO)、紙64の移動が有無を判定する。紙64の移動が無いと判定した場合(ステップS218でNO)、ステップS210に戻る。一方、紙64の移動が有ると判定した場合(ステップS218でYES)、図7(C)の信号が検出されるはずである。この場合、ステップS219で、今、検出されたサンプリングNorm_data[N]をリファレンスデータRef_data[N]として更新する。
以上説明したように、実施形態2によれば、電源投入時に検出したリファレンスデータは消去されるが、実施形態1と同様に、紙があっても正確にタッチ位置を算出することが可能となる。
<実施形態3>
実施形態1及び2は、光を利用した座標入力装置の説明、及び座標入力面にシート状物体が置かれたか否かを判定する方法について説明している。
実施形態1及び2は、光を利用した座標入力装置の説明、及び座標入力面にシート状物体が置かれたか否かを判定する方法について説明している。
しかしながら、紙が有る状態に移行することは、紙を置く動作が必ず発生するし、紙が無い状態とは、紙を取り除く動作が必ず発生することになる。この種の光を利用した座標入力装置にあっては、シート状物体を置く、あるいは取り除く段階で、シート状物体が光路を遮る。さらには、シート状物体を移動させるための操作者の手、腕等も、光路を遮る可能性が十分にある。従って、操作者は紙を置く、あるいは取り除くことを意図しただけなのに、光路を遮ったことによって座標入力装置は何らかの座標を出力するはずであり、操作者の意図しない誤動作が発生する可能性がある。
さらには、シート状物体、とりわけパンフレット等の薄紙上をタッチ操作しようとする場合は、薄紙が移動しないように、利き腕と反対の手で紙を抑えて操作する。つまり、紙を抑える動作に座標入力装置が反応してしまうと、やはり、操作者が意図しない誤動作へと結びつくことになる。
実施形態3は、これらの課題を解決するものである。
まず、実施形態3では、座標入力面5上にシート状物体を置く場所(特定領域)を操作者が先ず設定して、その領域にシート状物体を置いて作業をする構成を想定する。シート状物体を置く方法は、まず、座標入力装置を制御する情報処理装置にインストールされているアプリケーションプログラムがディスプレイ上に表示されたメニューアイコンを選択する等の操作で、シート状物体位置設定モードに移行する。そして、操作者が所望する位置をタッチすることで、そのタッチ位置を中心に領域を自動的に設定する。あるいは、操作者が所望する領域をタッチ操作しながら囲む(閉ループを描く)、あるいは所望する領域の対角線の両端をタッチする等、種々の操作方法が考えられるが、本願発明は、この領域設定方法に限定されるものではない。
図11は実施形態3の座標算出処理を示すフローチャートである。
ステップS301で、シート状物体を置くための領域が指定されているか否かを示すフラグ(A−Flag)、その領域にシート状物体が置かれているか否かを示すフラグ(M−Flag)を判定するフラグを初期化する。ここでは、初期値として、領域が指定されていないことを示すA−Flag=0、領域にシート状物体が置かれていないことを示すM−Flag=0に設定する。
ステップS302で、タッチ入力の有無を判定する。つまり、図6(D)もしくは図6(E)で示される第1の閾値Vthrによる信号が検出されたか否かを判定する。タッチ入力が有ると判定した場合(ステップS302でYES)、ステップS303で、その操作がシート状物体を置くための領域を指定するための領域指定操作であるか否かを判定する。その判定は、先に説明したメニューアイコンの選択状態、あるいは特定の操作を実行(例えば、ジェスチャー)したことで、領域指定の動作モードになっているかを判定することで実現される。
ステップS303で、領域指定操作であると判定した(例えば、図14(C)の枠74がディスプレイに表示される)場合(ステップS303でYES)、ステップS304で、領域が指定されたことを示すフラグA−Flag=1に設定する。そして、ステップS305で、座標入力装置のセンサユニット1L及び1Rからみて、その領域がどの角度範囲にあるのかを算出して、記憶する。
そして、再び、ステップS302に戻り、タッチ入力の有無を判定する。タッチ入力が有ると判定した場合(ステップS302でYES)、その時は、領域指定操作が完了しているので、領域指定操作がないと判定され(ステップS303でNO)、ステップS306で、A−Flag=1であるか否かを判定する。A−Flag=1でないと判定した場合(ステップS306でNO)、ステップS309に進む。一方、A−Flag=1であると判定した場合(ステップS306でYES)、ステップS307に進む。
領域指定操作が完了している場合、ステップS303を経て、A−Flag=1と判定されるので(ステップS306でYES)、ステップS307に進む。そして、ステップS307で、今、入力され算出された位置座標が、ステップS303で指定された領域内であるか否かを判定する(制御・演算ユニット2による領域判定機能)。
そして、その入力が領域内でないと判定した場合(ステップS307でNO)、ステップS309で、入力された座標をタッチモードとして動作するように設定する(詳細は後述)。一方、ステップS307で、その入力が領域内であると判定した場合(ステップS307でYES)、ステップS308で、M−Flag=1であるか否かを判定する。M−Flag=1でないと判定した場合(ステップS308でNO)、ステップS302に戻る。一方、M−Flag=1であると判定した場合(ステップS308でYES)、ステップS310に進む。
つまり、ステップS308で、領域にシート状物体が置かれているか否かを示すフラグM−Flagを参照することになる。ここで、現状のM−Flagは初期状態(M−Flag=0)であり、M−Flag=1でないと判定され(ステップS308でNO)、ステップS302へと戻る。
ここまでの動作は、操作者が、領域に紙であるシート状物体を置くための領域を指定し、その領域に紙を置こうとしている状態、つまり、図14(C)の状態である。換言すれば、シート状物体、あるいはそれを保持している操作者の手によって光線62が遮られ、枠74の領域のいずれかの座標を検出している状態である。しかしながら、本願発明の座標入力装置は、出力される位置座標が指定した領域内であること、シート状物体はまだ置かれてないことを識別できるので、座標入力装置は検出した座標値を出力することなく、新たに位置検出動作を開始する。
操作者による紙を置く動作が完了すると、紙のめくれや操作者の手による光線62の遮断がなくなるので、座標入力装置はタッチ位置を検出することが一旦は無くなる。
再び、図11に戻り、今、入力が途切れたので、ステップS302を経て、ステップS311で、A−Flag=1であるか否かを判定する。A−Flag=1でないと判定した場合(ステップS311でNO)、ステップS302に戻る。一方、A−Flag=1であると判定した場合(ステップS311でYES)、ステップS312へ進む。
ステップS312で、背景光の変化が、ステップS305で算出された各々のセンサユニット1の角度範囲で、図6(B)もしくは図6(D)のような波形変化があるかを判定する。ここで、実施形態3における背景光とは、図6(A)の信号であり、判定に用いられる閾値は、図6(D)に示される第2の閾値Vthr2、もしくは図6(E)に示される第3の閾値Vthr3である。波形変化があると判定した場合(ステップS312でYES)、ステップS317で、シート状物体が置かれたとして、M−Flag=1に設定して、ステップS302に戻る。
その状態で、ステップS302で、入力が有ると判定すれば(ステップS302でYES)、ステップS303及びステップS306を経て、ステップS307で、その入力が指定された領域内であるか否かを判定する。その入力が指定された領域内であると判定した場合(ステップS307でYES)、図8(C)のような信号が、各々のセンサユニット1で検出されているはずである。そのため、この場合、ステップS308(M−Flag=1である)を経て、ステップS310で、入力された座標をペンモードとして動作するように設定し(詳細を後述)、ステップS302に戻る。一方、その入力が領域内でないと判定した場合(ステップS307でNO)、ステップS309で、入力された座標をタッチモードとして動作するように設定し、ステップS302に戻る。
従って、図14(B)において、紙64が枠74の範囲に置かれている状態とすれば、枠の範囲外である所の位置71から72までの出力は、ステップS309のタッチモードとして動作する。一方、位置73は枠74の範囲内であるから、ステップS310のペンモードとして動作し、位置73でのタッチによる出力は成されない。
また、ステップS317で、シート状物体が置かれたことを出力することによって、図14(C)に示されるアイコン75〜77をアクティブ状態に制御することで、操作者の意図しない誤操作を防止することも可能となる。尚、アイコン75〜77は、シート状物体である紙64を置く位置を規定する枠(特定領域)74の外に表示制御される。
さて、シート状物体を置いた状態で、操作者が意図する操作を完了したものとし、シート状物体を取り除く動作をしたとする。この場合、取り除く動作(図14(C)参照)により光線62は遮られるので、ステップS303及びステップS306を経て、入力が指定された領域でないと判定される(ステップS307でYES)。そして、ステップS308を経て、ステップS310で、ペンモードとして動作するように設定(検出された座標値は出力されない)し、この一連のフローを繰り返す。
シート状物体が取り除かれると、ステップS302で、タッチ入力が一旦停止することになる。この場合、A−Flag=1、M−Flag=1であり、ステップS312で、背景光の波形変化の有無を判定する。シート状物体が取り除かれている場合、図6(A)の信号が検出されるはずである。従って、ステップS312で、背景光が元の状態に戻っているので、ステップS313で、M−Flag=1であるか否かを判定する。M−Flag=1であると判定した場合(ステップS313でYES)、ステップS316へ進む。一方、M−Flag=1でないと判定した場合(ステップS313でNO)、ステップS314へ進む。
この場合、M−Flag=1であるので(ステップS313でYES)、ステップS316に進む。ステップS316で、M−Flag=0に設定する。そして、ステップS315で、領域指定が解除されたことを示すために、A−Flag=0に設定して、ステップS302に戻る。
以上の説明は、置いてあったシート状物体を取り除いた場合の動作である。しかしながら、操作者はシート状物体を取り除こうとしたが、その動作途中でその動作を中断した場合、あるいは、操作者がシート状物体の移動を意図した場合を考える。
同様に移動させる動作により、光線62は遮られ、ステップS303及びステップS306を経て、ステップS307で、入力が領域内であると判定される。そして、紙の取り除きの中断、あるいは移動動作が完了すると、ステップS302で、タッチ出力が一旦停止することになる。この時、A−Flag=1、M−Flag=1であり、ステップS312で、背景光の波形変化の有無を判定する。シート状物体が移動している場合、図7(B)の信号が検出されるはずである。ステップS312では、シート状物体が無い状態の信号と比較するので、この場合、背景光りの波形変化が有ると判定して(ステップS312でYES)、ステップS317で、M−Flag=1に設定して、ステップS302に戻る。
一方、ステップS302で、入力が有るものの、A−Flag=0の状態では、常に。ステップS306を経てステップS309のタッチモードとして動作している。更には、A−Flag=1の状態であっても、ステップS311〜ステップS314を経て、ステップS302に戻るルーチンを所定時間繰り返しても何ら入力が検出されない場合(ステップS314でYES)、ステップS315に進む。そして、ステップS315で、M−Flag=0に設定し、指定された領域を解除する。
以上説明したとおり、シート状物体が無い状態では通常の動作モードとして、タッチモードが選択されている。そして、操作者がシート状物体を置いて操作したい場合には、シート状物体を置く位置、領域を先ず設定する動作を行う。そして、その領域内で検出された位置情報、及びシート状物体の有無を判定することで、シート状物体を置く、あるいは取り除く動作によって出力された位置情報なのか、操作者の意図した操作により出力されたかを判定する。そして、シート状物体が置かれ、かつシート状物体の領域内を操作している場合は、ペンモードとして動作するように構成する。このように構成することで、シート状物体を置く、取り除くことによる誤動作を防止、あるいはシート状物体の有無によりアクティブとするアイコンを選択できるようになる。さらには、シート状物体が動かないように、そのシート状物体を抑えつけることも可能となる。
<タッチモードとペンモードの説明>
光を遮ることによって、その位置を検出する座標入力装置は、指等の光を遮ることが可能な指示具であれば、そのタッチ位置を検出することが可能である。この種の光を用いた座標入力装置では、実際に指示具がタッチしたか否かの判定は、指示具によって光がどの程度遮光されたか否かで判定する。つまり、簡潔に概略的に述べれば、センサユニットで、検出される光の量が半分となれば、光路を半分遮ったと言える。つまり、光路が、座標入力面からの高さ10mmまでの範囲に設定されているものとすれば、半分の光量になったと言うことは、座標入力面からの高さ約5mmの位置に指示具が有ると言える。また、光路が完全に遮られ、その方向からの光が全く検出できない状態とは、指示具が座標入力面をタッチした状態と言うこともできる。しかしながら、この判定は、受光光学系のピントの問題等による精度良く判定することは困難である。
光を遮ることによって、その位置を検出する座標入力装置は、指等の光を遮ることが可能な指示具であれば、そのタッチ位置を検出することが可能である。この種の光を用いた座標入力装置では、実際に指示具がタッチしたか否かの判定は、指示具によって光がどの程度遮光されたか否かで判定する。つまり、簡潔に概略的に述べれば、センサユニットで、検出される光の量が半分となれば、光路を半分遮ったと言える。つまり、光路が、座標入力面からの高さ10mmまでの範囲に設定されているものとすれば、半分の光量になったと言うことは、座標入力面からの高さ約5mmの位置に指示具が有ると言える。また、光路が完全に遮られ、その方向からの光が全く検出できない状態とは、指示具が座標入力面をタッチした状態と言うこともできる。しかしながら、この判定は、受光光学系のピントの問題等による精度良く判定することは困難である。
そこで、本願発明では、専用指示具として、そのペン先部分には、その先端部が座標入力面をタッチしたかを判定するための圧力検知部が設けられている。その圧力検知部の検知結果は、専用指示具内に設けられた通信部を介して、例えば、制御・演算ユニット2に送信される。
圧力検知部を有する専用指示具からの信号に基づき、専用指示具が座標入力面をタッチ(入力)されたか否かを判定して、タッチされたことを示すダウン信号を生成する。そして、そのダウン信号と共に指示位置(座標値)を出力するモード(第1の出力形態)を、上述のペンモードと称する。これに対し、光量がどの程度遮光されたかによって、指等の指示具が座標入力面をタッチした否かを判定して、その指示位置(座標値)と共に出力するモード(第2の出力形態)を、上述のタッチモードと称する。つまり、このタッチモードでは、光量がどの程度遮光されたかによって、タッチしたか否かの判定をするダウン信号を生成する。
両者のモードの特徴を比較すれば、ペンモードは、座標入力面を正確にタッチしたか否かを判定できるので、文字や図形の入力、すなわち、細かい作業に適している。一方、タッチモードでは、正確にタッチしたか否かを判定できないので、細かい作業には不適である。一方、前者は専用指示具での操作しかできないが、後者は専用指示具を必要とせず、指による操作も行える利点を有する。
そこで、本願発明に有っては、通常は、タッチモードとして動作させているが、パンフレット等のシート状物体を置いた時は、そのパンフレットに情報を書き込んだり、トリミング等の細かい作業が必要になることを想定する。そして、細かい作業を行おうとすれば、そのパンフレットが移動しないように、手(指)で抑えつけようとするのは、自然な動作となる。その抑えつける動作により、その位置の座標を出力してしまえば、誤動作の原因となるのは明白である。
この課題を回避するために、パンフレットを置いた領域をペンモードとする。つまり、手(指)によるタッチで抑えつけた位置は当然領域内であり、専用指示具に設けられた圧力検知部の出力は検出されないので、座標を検知してもダウン信号は生成されない。つまり、手(指)による操作を無効として、何ら出力をすることが無い。
一方、パンフレットを抑えつけ、専用指示具を利き腕で操作すれば、専用指示具がタッチすることで圧力検知部の出力が制御・演算ユニット2に送信され、ダウン信号が生成される。つまり、細かい作業をする時に便利な専用指示具の位置情報とダウン信号が生成され、出力信号として有効となるのである。
尚、ダウン信号を生成する専用指示具を用いた場合であっても、その信号を無視して、専用指示具による遮光状態に基づきタッチしたかの判定を行えば、それはタッチモードで動作したことになる。
以上説明したように、実施形態3によれば、検出された座標値が、シート状物体が置かれている範囲内であるか否かを判定し、その領域内外で座標入力装置の動作を制御する。検出された座標値がシート状物体が置かれている領域外であると判定した場合には、検出された座標値をタッチモードで制御する。一方、検出された座標値がシート状物体が置かれている領域内であると判定した場合には、検出された座標値をペンモードで制御する。
このように制御することで、例えば、シート状物体を抑えながらシート状物体上を操作することで、所望の操作をすることができる。また、更には、検出された座標値が、指や指示具による入力であるか否かを判定することで、シート状物体を置く、あるいは取り除く際に発生する座標値を出力しない、つまり、誤動作しないようすることができる。更にには、シート状物体を置く位置(領域)をあらかじめ設定し、シート状物体が置かれたことを検知して初めてアクティブとなる、例えば、メニューアイコン等のコントロールを表示できる。
<実施形態4>
実施形態4は、実施形態3と同様に、紙の有無に関する操作性向上を目的とする構成について説明する。
実施形態4は、実施形態3と同様に、紙の有無に関する操作性向上を目的とする構成について説明する。
図12は、センサユニット1L及び1Rと座標入力有効領域3の位置関係を示すとともに、シート状物体である紙64が座標入力有効領域3内に設けられたことを示す図である。従って、センサユニット1Lにあっては角度範囲θWLの範囲で、センサユニット1Rにあっては角度範囲θWRの範囲で、図6(B)の範囲Dのような信号の変化が観測されるはずである。逆に言えば、センサユニット1Lにあっては角度方向173及び角度方向174の範囲内であって、センサユニット1Rにあっては角度方向171及び角度方向172の範囲内に紙64が置かれていると判定が可能である。つまり、図中の領域abcdの範囲に紙64が置かれていることが検知可能となる。
この領域abcdと実際に紙64が置かれている範囲は、完全には一致しない。しかしながら、センサユニットの数を増す(座標入力有効領域3の4頂点にセンサユニットを各々設置する等)、あるいは、紙64の大きさが既知(例えば、A4シート)ならば、両者の領域をより一致させることができる。ここで言う紙64の大きさが既知とは、例えば、ユーザがB5シートを使うのであれば、メニューアイコン等を操作者がタッチすることで、B5シートがこれから置かれる、ということをシステムが事前に検知している状態を意味する。換言すれば、メニューアイコンをタッチすることで、そのアイコンに割り付けられたコマンドの実行を有効とする(情報処理装置のアプリケーションプログラムによる表示制御機能及びコマンド制御機能)。つまり、紙64が座標入力有効領域3内のどの範囲に置かれたかを、本願発明の座標入力は検知することが可能な構成となっている。
図13は、紙64の位置検出と、紙64の有無によってなされる制御の一連のフローを示したものである。
まず、ステップS401で、カウンタT=0、フラグFlag=0に初期化する。ステップS402で、入力の有無を判定する。ここで用いる閾値は、図6(E)に示されるVthr、Vthr2、Vthr3である。いずれかの閾値により信号が検出されない場合(ステップS402でNO)、検出されるまで待機する。一方、いずれかの閾値により信号が検出される場合(ステップS402でYES)、ステップS403で、タッチ入力の有無を判定する。
タッチ入力が有ると判定した場合(ステップS403でYES)、閾値Vthrにより信号が検出されているはずであるが、シート状物体である紙64を置く、あるいは取り除く際も光路を遮るので、この場合も、閾値Vthrにより信号が検出されてしまう。そこで、ここでは検出された信号の幅、つまり、遮光されている光の範囲(遮光範囲)を観測(識別)する。操作者による指、もしくは専用指示具によって操作している状態の遮光範囲に比べ、紙64を置く、もしくは取り除く際、検出される遮光範囲は格段に大きい。従って、遮光範囲を観測(識別)することで、その識別結果に基づいて、操作者の指示に基づくタッチ入力の有無を判定することができる。
また、ステップS403において、閾値Vthrでは信号が検出されないが、閾値Vthr2、もしくは閾値Vthr3で信号が検出されている場合も、タッチ入力は行われてないと判定される。
タッチ入力が無いと判定した場合(ステップS403でNO)、ステップS410に進む。ステップS410で、入力に対するサンプリングデータと直前のサンプリングデータを比較して、両者の信号変化の有無を判定する。信号変化が有ると判定した場合(ステップS410でYES)、この状態は、紙64を置く、あるいは取り除く動作がまだ完了してない状態と言えるので、ステップS415で、カウンタT=0にリセットして、ステップS402に戻る。
ステップS402、ステップS403、ステップS410、ステップS415のルーチンを繰り返して、紙を置く、取り除く動作が完了すると、ステップS410で、直前に検出したサンプリングデータと今、検出したサンプリングデータが同一の状態になる。この場合、信号変化が無いと判定されるので(ステップS410でNO)、ステップS411で、カウンタTを1インクリメント(T=T+1)する。ステップS412で、所定時間T0をその状態のまま経過したか否かを判定する。所定時間T0を経過していない場合(ステップS412でNO)、ステップS402に戻る。一方、所定時間T0を経過している場合(ステップS412でYES)、ステップS413に進む。
ステップS402、ステップS403、ステップS410、ステップS411、ステップS412のルーチンを繰り返す。そして、所定時間T0その状態が経過する(ステップS412でYES)まで、ステップS413で、シート状物体が置かれた状態であるか否かを判定する。シート状物体が置かれている状態であると判定した場合(ステップS413でYES)、図6(B)の信号が検出されているはずであるので、ステップS414で、シート状物体が有ることを示すフラグFlag=1に設定する。一方、シート状物体が置かれた状態でないと判定した場合(ステップS413でNO)、図6(A)の信号が検出されるはずであるので、ステップS416で、シート状物体が無いことを示すフラグFlag=0に設定する。
更に、シート状物体が有る場合には、ステップS417で、センサユニット1L及び1Rからそのシート状物体が有る角度範囲θWL、θWRを各々算出する。次に、ステップS418で、シート状物体の領域abcd(特定領域)を算出する(制御・演算ユニット2による領域算出機能)。そして、ステップS419で、算出した領域abcdから得られるシート状物体の形状及び大きさ情報から、シート状物体の領域abcdの位置を算出する。
一方、ステップS403で、タッチ入力が有ると判定した場合(ステップS403でYES)、ステップS404で、式(3)を用いて、ラインCCD41が出力する画素情報から角度情報を算出する。そして、ステップS405で、入力位置(タッチ位置)を算出する。ステップS406で、Flag=1であるか否かを判定する。つまり、シート状物体である紙64の有無を判定する。
Flag=1でないと判定した場合(ステップS406でNO)、つまり、紙64が無い場合、ステップS408で、常にタッチモードとして動作して、そのタッチ位置を出力する(ステップS408)。一方、Flag=1であると判定した場合(ステップS406でYES)、つまり、紙64が有る場合、ステップS407で、そのタッチ位置がシート状物体の領域内であるか否かを判定する。
タッチ位置がシート状物体の領域内でないと判定した場合(ステップS407でNO)、ステップS408に進み、タッチモードとして動作してタッチ位置を出力する。一方、タッチ位置がシート状物体の領域内であると判定した場合(ステップS407でYES)、ステップS409に進み、ペンモードとして動作してタッチ位置を出力する。つまり、シート状物体内を操作している時は、指による操作の場合には出力が行われず、専用指示具によるタッチ信号が検出(識別)された場合のみ、その指示位置を出力することになる。
以上説明したように、実施形態4によれば、実施形態3で説明した効果に加えて、シート状物体の有無を判定して、座標値の出力形態の動作機能を制限したり、動作制御することで、操作者にとって使い勝手の良い操作環境を提供できる。
尚、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出し実行する処理である。
Claims (13)
- 座標入力面の2つの角部にそれぞれ配置されたセンサユニットの投光部により投光された光が、該座標入力面の周囲に配置された再帰反射部材で再帰反射され、前記センサユニットの受光部でその光を検出することで、該座標入力面に対する指示具による入力位置の座標値を算出する座標入力装置であって、
入力のない状態である初期状態における前記受光部が出力した出力信号を第1のリファレンスデータとして記憶する第1の記憶手段と、
座標入力サンプリング状態における前記受光部が出力した出力信号であるサンプリングデータと前記第1の記憶手段に記憶される第1のリファレンスデータとを比較する比較手段と、
前記比較手段の比較の結果に基づいて、前記座標入力面におけるシート状物体の有無を判定する判定手段と、
前記判定手段の判定の結果、前記シート状物体が前記座標入力面に有ると判定された場合、前記サンプリングデータを第2のリファレンスデータとして記憶する第2の記憶手段と、
前記判定手段の判定の結果に応じて、前記サンプリングデータと、前記第1のリファレンスデータあるいは前記第2のリファレンスデータとを用いて、前記座標入力面に対する前記指示具による入力位置の座標値を算出する算出手段と
を備えることを特徴とする座標入力装置。 - 前記判定手段は、
前記第1のリファレンスデータと前記サンプリングデータとを用いて、前記受光部が出力する出力信号の変化比信号を算出する変化比算出手段と、
前記変化比算出手段で算出された変化比信号を複数の異なる閾値で比較する閾値比較手段と、
を備え、
前記判定手段は、前記閾値比較手段によって、複数の異なる閾値で規定される複数の閾値範囲の内、どの閾値範囲で前記変化比信号が存在するか否かを判定することで、前記シート状物体の有無を判定し、かつ該シート状物体が有ると判定する場合には、更に、該シート状物体の移動の有無を判定する
ことを特徴とする請求項1に記載の座標入力装置。 - 前記判定手段の判定の結果として、前記シート状物体の有無を示すフラグを設定する設定手段を更に備え、
前記算出手段は、前記設定手段で設定されているフラグが前記シート状物体が前記座標入力面に無いことを示す場合には、前記第1のリファレンスデータと前記サンプリングデータとを用いて、前記座標入力面に対する前記指示具による入力位置の座標値を算出し、前記設定手段で設定されているフラグが前記シート状物体が前記座標入力面に有ることを示す場合には、前記第2のリファレンスデータと前記サンプリングデータとを用いて、前記座標入力面に対する前記指示具による入力位置の座標値を算出する
ことを特徴とする請求項1または2に記載の座標入力装置。 - 前記判定手段は、更に、前記比較手段の比較の結果に基づいて、前記座標入力面の入力の有無を判定し、
前記判定手段が、前記座標入力面の入力が無いと判定した上で、更に、前記シート状物体が前記座標入力面に有ると判定した場合には、前記記憶手段は、当該記憶手段に記憶されている前記第1のリファレンスデータを、前記サンプリングデータで更新して記憶する
ことを特徴とする請求項1または2に記載の座標入力装置。 - 前記複数の異なる閾値は、
指示具による入力の有無を判定するための第1の閾値と、
前記シート状物体が有ることを判定するための第2の閾値と、
前記シート状物体が無いことを判定するための第3の閾値と
を備える
ことを特徴とする請求項2に記載の座標入力装置。 - 前記シート状物体を前記座標入力面に置くための領域を指定する指定手段と、
前記指定手段で前記領域が指定されている場合に、前記算出手段で算出した座標値が、前記領域内にあるか否かを判定する領域判定手段と、
前記領域判定手段の判定の結果に基づいて、前記座標値の出力形態を制御する出力制御手段と
を更に備えることを特徴とする請求項2に記載の座標入力装置。 - 前記出力制御手段は、
前記算出手段で算出した座標値が領域内にある場合には、第1の出力形態として、前記座標値と、前記座標入力面に対して前記指示具による入力がなされたことを示すダウン信号を出力し、
前記領域判定手段の判定の結果、前記算出手段で算出した座標値が領域内にない場合には、第2の出力形態として、前記座標値を出力する
ことを特徴とする請求項6に記載の座標入力装置。 - 前記受光部が出力した出力信号から、当該受光部で受光する光の内、光が遮られた遮光範囲に基づいて、前記算出手段で算出した座標値が前記指示具による入力のものであるか否かを識別する識別手段を更に備え、
前記出力制御手段は、前記領域判定手段の判定の結果と、前記識別手段の識別の結果に基づいて、前記座標値の出力形態を制御する
ことを特徴とする請求項6または7に記載の座標入力装置。 - 座標入力面の2つの角部にそれぞれ配置されたセンサユニットの受光部それぞれが出力した出力信号に基づき、前記算出手段が算出した2つの座標値に基づいて、前記座標入力面に前記シート状物体を置くための領域を算出する領域算出手段を更に備える
ことを特徴とする請求項6乃至8のいずれか1項に記載の座標入力装置。 - 前記座標入力面の配下に重ねて配置された表示部と、
前記表示部に、前記シート状物体を置くための領域と、その領域外にメニューアイコンを表示制御する表示制御手段と、
所定時間が経過するまで、前記判定手段の判定の結果、前記シート状物体を置くための領域に前記シート状物体が有ると判定された場合には、前記メニューアイコンがタッチされることで、該メニューアイコンに割り付けられたコマンドの実行を有効にするコマンド制御手段と
を更に備えることを特徴とする請求項9に記載の座標入力装置。 - 前記表示制御手段及び前記コマンド制御手段は、当該座標入力装置を制御する情報処理装置にインストールされているアプリケーションプログラムによって実現される
ことを特徴とする請求項10に記載の座標入力装置。 - 座標入力面の2つの角部にそれぞれ配置されたセンサユニットの投光部により投光された光が、該座標入力面の周囲に配置された再帰反射部材で再帰反射され、前記センサユニットの受光部でその光を検出することで、該座標入力面に対する指示具による入力位置の座標値を算出する座標入力装置の制御方法であって、
入力のない状態である初期状態における前記受光部が出力した出力信号を第1のリファレンスデータとして記憶媒体に記憶する第1の記憶工程と、
座標入力サンプリング状態における前記受光部が出力した出力信号であるサンプリングデータと前記記憶媒体に記憶される第1のリファレンスデータとを比較する比較工程と、
前記比較工程の比較の結果に基づいて、前記座標入力面におけるシート状物体の有無を判定する判定工程と、
前記判定工程の判定の結果、前記シート状物体が前記座標入力面に有ると判定された場合、前記サンプリングデータを第2のリファレンスデータとして前記記憶媒体に記憶する第2の記憶工程と、
前記判定工程の判定の結果に応じて、前記サンプリングデータと、前記第1のリファレンスデータあるいは前記第2のリファレンスデータとを用いて、前記座標入力面に対する前記指示具による入力位置の座標値を算出する算出工程と
を備えることを特徴とする座標入力装置の制御方法。 - 座標入力面の2つの角部にそれぞれ配置されたセンサユニットの投光部により投光された光が、該座標入力面の周囲に配置された再帰反射部材で再帰反射され、前記センサユニットの受光部でその光を検出することで、該座標入力面に対する指示具による入力位置の座標値を算出する座標入力装置の制御をコンピュータに機能させるためのプログラムであって、
前記コンピュータを、
入力のない状態である初期状態における前記受光部が出力した出力信号を第1のリファレンスデータとして記憶する第1の記憶手段と、
座標入力サンプリング状態における前記受光部が出力した出力信号であるサンプリングデータと前記第1の記憶手段に記憶される第1のリファレンスデータとを比較する比較手段と、
前記比較手段の比較の結果に基づいて、前記座標入力面におけるシート状物体の有無を判定する判定手段と、
前記判定手段の判定の結果、前記シート状物体が前記座標入力面に有ると判定された場合、前記サンプリングデータを第2のリファレンスデータとして記憶する第2の記憶手段と、
前記判定手段の判定の結果に応じて、前記サンプリングデータと、前記第1のリファレンスデータあるいは前記第2のリファレンスデータとを用いて、前記座標入力面に対する前記指示具による入力位置の座標値を算出する算出手段と
して機能させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010188759A JP5517834B2 (ja) | 2010-08-25 | 2010-08-25 | 座標入力装置及びその制御方法、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010188759A JP5517834B2 (ja) | 2010-08-25 | 2010-08-25 | 座標入力装置及びその制御方法、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012048404A true JP2012048404A (ja) | 2012-03-08 |
JP5517834B2 JP5517834B2 (ja) | 2014-06-11 |
Family
ID=45903215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010188759A Expired - Fee Related JP5517834B2 (ja) | 2010-08-25 | 2010-08-25 | 座標入力装置及びその制御方法、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5517834B2 (ja) |
-
2010
- 2010-08-25 JP JP2010188759A patent/JP5517834B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP5517834B2 (ja) | 2014-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4442877B2 (ja) | 座標入力装置およびその制御方法 | |
JP4891179B2 (ja) | 座標入力装置、座標入力方法 | |
US8115753B2 (en) | Touch screen system with hover and click input methods | |
CN101663637B (zh) | 利用悬浮和点击输入法的触摸屏系统 | |
JP5489886B2 (ja) | 座標入力装置、該装置における受光装置、及びその製造方法 | |
US20100201637A1 (en) | Touch screen display system | |
JP2010257089A (ja) | 光学式位置検出装置 | |
US9377897B2 (en) | Control of coordinate input apparatus based on light distribution and moving amounts of sensor units | |
JP5806573B2 (ja) | 座標入力装置およびその制御方法、座標入力システム | |
JP5517834B2 (ja) | 座標入力装置及びその制御方法、プログラム | |
JP2005165830A (ja) | 光学式座標入力装置 | |
JP5049747B2 (ja) | 座標入力装置及びその制御方法、プログラム | |
JP2012048403A (ja) | 座標入力装置及びその制御方法、プログラム | |
JP5865053B2 (ja) | 座標入力装置、座標入力装置の制御方法、およびプログラム | |
JP5814608B2 (ja) | 座標入力装置及びその制御方法、プログラム | |
JP2006350908A (ja) | 光学式情報入力装置 | |
JP6334980B2 (ja) | 座標入力装置及びその制御方法、プログラム | |
JP2005173684A (ja) | 光学式座標入力装置 | |
JP2004326232A (ja) | 座標入力装置 | |
JP2004185283A (ja) | 光学式座標入力装置 | |
JP2006059153A (ja) | 光学式座標入力装置 | |
JP2005346230A (ja) | 光学式座標入力装置 | |
JP2005071022A (ja) | 座標入力装置、座標入力方法 | |
JP2005352756A (ja) | 遮光型座標入力装置及び座標入力方法 | |
JP5738112B2 (ja) | 座標入力装置及びその制御方法、プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130812 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140129 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140303 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140401 |
|
LAPS | Cancellation because of no payment of annual fees |