JP2004062656A - 座標入力装置及びその制御方法、プログラム - Google Patents
座標入力装置及びその制御方法、プログラム Download PDFInfo
- Publication number
- JP2004062656A JP2004062656A JP2002221818A JP2002221818A JP2004062656A JP 2004062656 A JP2004062656 A JP 2004062656A JP 2002221818 A JP2002221818 A JP 2002221818A JP 2002221818 A JP2002221818 A JP 2002221818A JP 2004062656 A JP2004062656 A JP 2004062656A
- Authority
- JP
- Japan
- Prior art keywords
- coordinate
- calculation
- detection
- calculating
- input device
- 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.)
- Withdrawn
Links
Images
Landscapes
- Position Input By Displaying (AREA)
Abstract
【課題】座標入力装置の操作状況に応じて好適な座標算出を可能とし、かつその信頼性及び操作性を改善することができる座標入力装置及びその制御方法、プログラムを提供する。
【解決手段】第1座標演算方法で座標を算出する座標演算と、第2座標演算方法で座標を算出する第2座標演算のどちらかを選択し、その選択された座標演算を用いて、指示具の位置座標を出力する。
【選択図】 図3B
【解決手段】第1座標演算方法で座標を算出する座標演算と、第2座標演算方法で座標を算出する第2座標演算のどちらかを選択し、その選択された座標演算を用いて、指示具の位置座標を出力する。
【選択図】 図3B
Description
【0001】
【発明の属する技術分野】
本発明は、表示システムと組み合わせて使用することにより、入出力一体の装置を構成することができる座標入力装置及びその制御方法、プログラムに関するものである。より詳しくは、ディスプレイの画面に指示具によって直接座標を入力する、あるいはディスプレイの画面から離れたところにおいて座標を入力することにより、ディスプレイに接続されているコンピュータ等の外部機器を制御したり、文字や図形などを書き込むために用いられる座標入力装置及びその制御方法、プログラムに関するものである。
【0002】
【従来の技術】
従来、CRTディスプレイ、液晶ディスプレイ(LCD)、あるいはプロジェクタ等の表示装置の表示面に、座標を入力することができる座標入力装置を重ねて配置し、操作者が行った指示具によるポインティングあるいは筆跡を表示装置に表示し、あたかも、紙と鉛筆のような関係を実現することができる装置が知られている。
【0003】
座標入力装置としては、抵抗膜方式をはじめ、静電方式、ガラス等の座標入力面に超音波を伝播させる超音波方式等の透明な入力板を有する方式や、光学方式、あるいは空中に音波を放射することで位置を検出する方式、さらには電磁誘導(電磁授受)方式のように表示装置の裏側に座標算出のための機構を配置し、表示装置の前面に透明な保護板を配置して、入出力一体の情報機器を構成している物もある。
【0004】
このような情報機器は、携帯性を有する小型の電子手帳に始まり、ペン入力コンピュータ等、表示装置の大型化に伴って、比較的大きなサイズのペン入力コンピュータ等の情報機器も見られるようになった。その他、フロントプロジェクタ、リアプロジェクタ、あるいはPDP等の大型表示装置と組み合わせて、例えば、プレゼンテーション装置、TV会議システム等に利用され始めている。
【0005】
また、これらの大型の表示装置は、例えば、オフィスにおいて使われていたホワイトボード、あるいは電子黒板にとって変わり、パーソナルコンピュータ内にあらかじめ用意した資料用データを大型の表示装置に表示させることで、会議用途、打ち合わせ用途に使われ始めている。
【0006】
また、このような大型表示用ディスプレイに座標入力装置を組み合わせることによって、直接画面をタッチすることで、表示されている情報を更新、つまり表示画面を制御しているパーソナルコンピュータ等の外部機器を動作させることができる。そのため、大型表示装置と外部機器が離れて設置してある場合であっても、外部機器のオペレータが不要なばかりでなく、操作者が話の内容、進展に伴なって、ディスプレイの直前で必要な情報をタイムリーに表示することができる。
【0007】
【発明が解決しようとする課題】
しかしながら、従来の座標入力装置において、抵抗膜方式、静電方式等の座標入力装置は、完全に透明な入力板を構成することが困難であり、表示装置の画像の質を低下させると言う問題が生じる。
【0008】
また、ガラス等の伝播体に超音波を伝播させて座標を算出す超音波方式では、例えば室内で用いる際の蛍光灯の映りこみを防止するために、そのガラスの表面を光学的に処理する必要があり、画像の画質を維持すると言う点で大幅なコストアップが避けられない。
【0009】
更に、電磁誘導方式は、表示面の裏側にマトリックス上の電極を配置し、入力ペンとの間で電磁的な信号の送受を行うので、表示装置が大型化し装置の厚みが増すと、原理的に座標算出が困難なものとなる。その上、会議用途、あるいはプレゼン用途といった大型の座標入力装置を構成する場合には、非常にコストの高い装置となってしまう欠点を有する。
【0010】
また、大型の表示システムを採用した場合には、大勢の聴衆による同時視聴が想定され、画像の視野角あるいはコントラスト等は十分な性能が要求される。従って、これらの大型表示システムと座標入力措置を組み合わせる場合には、十分に低コストで精度良く座標算出が可能となるばかりでなく、表示装置の画質を劣化させないと言うことが重要な要件となる。
【0011】
さらには、この種の大型の入出力一体のシステムを考慮した場合、大勢の参加者を想定した打ち合わせ、あるいはネットワーク時代を考慮すれば、操作者が直接画面をタッチすることでパソコンを制御するばかりでなく、例えば、質問者がその場で遠隔操作(ディスプレイより離れた位置で操作)により、画面を操作したり、必要に応じてネットワークより情報を引き出せるような構成になるのが好ましい形態であると言える。
【0012】
本発明は上記の課題に鑑みてなされたものであり、座標入力装置の操作状況に応じて好適な座標算出を可能とし、かつその信頼性及び操作性を改善することができる座標入力装置及びその制御方法、プログラムを提供することを目的とする。
【0013】
【課題を解決するための手段】
上記の目的を達成するための本発明による座標入力装置は以下の構成を備える。即ち、
表示画面上にXY平面及び該表示画面に対してZ軸を形成する3次元空間において、指示具が指示する位置座標を算出する座標入力装置であって、
第1座標演算方法で座標を算出する第1座標演算手段と
第2座標演算方法で座標を算出する第2座標演算手段と、
前記第1及び第2座標演算手段のどちらかを選択する選択手段と
前記選択手段で選択された座標演算手段を用いて、前記指示具の位置座標を出力する出力手段と
を備える。
【0014】
また、好ましくは、前記選択手段は、前記指示具が有するスイッチの押下状態に基づいて、前記第1及び第2演算手段のどちらかを選択する。
【0015】
また、好ましくは、前記選択手段は、前記第1座標演算手段で算出される座標値に基づいて、前記第1及び第2演算手段のどちらかを選択する。
【0016】
また、好ましくは、前記第2座標演算手段で算出されたZ座標値が所定範囲内にあるか否かを判定する判定手段と、
前記判定手段の判定結果に基づいて、前記第2座標演算手段で用いるパラメータを変更して、再度、該第2座標演算手段による演算を実行する実行手段と
を更に備える。
【0017】
上記の目的を達成するための本発明による座標入力装置は以下の構成を備える。即ち、
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置であって、
前記検出部が検出する信号のエンベロープを検出する検出手段と、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第1時間検出手段と、
前記第1時間検出手段の検出結果に基づいて、ゲート信号を生成するゲート信号生成手段と、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第2時間検出手段と、
前記第1時間検出手段の検出結果に基づいて、前記指示具の位置座標を算出する第1座標算出手段と、
前記第1及び第2時間検出手段のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第2座標算出手段と、
前記第1及び第2座標算出手段のどちらかを選択する選択手段と、
前記選択手段で選択された座標算出手段による算出結果を、前記指示具の座標値として出力する出力手段と
を備える。
【0018】
また、好ましくは、前記選択手段は、前記指示具が有するスイッチの押下状態に基づいて、前記第1及び第2座標算出手段のどちらかを選択する。
【0019】
また、好ましくは、前記選択手段は、前記第1座標算出手段で算出された座標値に基づいて、前記第1及び第2座標算出手段のどちらかを選択する。
【0020】
上記の目的を達成するための本発明による座標入力装置の制御方法は以下の構成を備える。即ち、
表示画面上にXY平面及び該表示画面に対してZ軸を形成する3次元空間において、指示具が指示する位置座標を算出する座標入力装置の制御方法であって、
第1座標演算方法で座標を算出する第1座標演算工程と
第2座標演算方法で座標を算出する第2座標演算工程と、
前記第1及び第2座標演算工程のどちらかを選択する選択工程と
前記選択工程で選択された座標演算工程を用いて、前記指示具の位置座標を出力する出力工程と
を備える。
【0021】
上記の目的を達成するための本発明による座標入力装置の制御方法は以下の構成を備える。即ち、
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置の制御方法であって、
前記検出部が検出する信号のエンベロープを検出する検出工程と、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第1時間検出工程と、
前記第1時間検出工程の検出結果に基づいて、ゲート信号を生成するゲート信号生成工程と、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第2時間検出工程と、
前記第1時間検出工程の検出結果に基づいて、前記指示具の位置座標を算出する第1座標算出工程と、
前記第1及び第2時間検出工程のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第2座標算出工程と、
前記第1及び第2座標算出工程のどちらかを選択する選択工程と、
前記選択工程で選択された座標算出工程による算出結果を、前記指示具の座標値として出力する出力工程と
を備える。
【0022】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
表示画面上にXY平面及び該表示画面に対してZ軸を形成する3次元空間において、指示具が指示する位置座標を算出する座標入力装置の制御をコンピュータに機能させるためのプログラムであって、
第1座標演算方法で座標を算出する第1座標演算工程のプログラムコードと
第2座標演算方法で座標を算出する第2座標演算工程のプログラムコードと、前記第1及び第2座標演算工程のどちらかを選択する選択工程のプログラムコードと
前記選択工程で選択された演算工程を用いて、前記指示具の位置座標を出力する出力工程のプログラムコードと
を備える。
【0023】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置の制御をコンピュータに機能させるためのプログラムであって、
前記検出部が検出する信号のエンベロープを検出する検出工程のプログラムコードと、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第1時間検出工程のプログラムコードと、前記第1時間検出工程の検出結果に基づいて、ゲート信号を生成するゲート信号生成工程のプログラムコードと、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第2時間検出工程のプログラムコードと、
前記第1時間検出工程の検出結果に基づいて、前記指示具の位置座標を算出する第1座標算出工程のプログラムコードと、
前記第1及び第2時間検出工程のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第2座標算出工程のプログラムコードと、
前記第1及び第2座標算出工程のどちらかを選択する選択工程のプログラムコードと、
前記選択工程で選択された座標算出工程による算出結果を、前記指示具の座標値として出力する出力工程のプログラムコードと
を備える。
【0024】
【発明の実施の形態】
以下、図面を参照して本発明の好適な実施形態を詳細に説明する。
【0025】
<実施形態1>
図1は本発明の実施形態1の3次元(空間)座標計測可能な座標入力装置の概略構成を示す図である。
【0026】
4は指示具であるところの座標入力ペンであり、操作者による座標入力動作により空中に超音波を放射すると共に、超音波の放射タイミング、あるいはペンのスイッチ情報を伝送するための赤外光を放射するように構成されている。放射された赤外光は光検出センサ5で受光されると共に、同時に放射される音波は複数の検出センサ3(実施形態1の場合、4個の検出センサ3_Sa〜Sdを使用する)により検出され、後述する方法により信号波形検出回路2で処理される。その後、演算制御回路1によって、座標入力ペン4の超音波発信源の位置(X,Y,Z)を算出するように構成されている。
【0027】
演算制御回路1は、座標入力装置全体を制御するとともに、得られる座標データを基に、ディスプレイ駆動回路5を介して、ディスプレイ6に表示されているカーソルを移動したり、あるいは筆記等の手書き情報をディスプレイ6に表示、追記できるように構成されている。
【0028】
以上のように、座標入力装置とディスプレイを組み合わせることで、あたかも『紙と鉛筆』のような関係を実現することができるマンマシンインターフェースを提供することが可能となる。
【0029】
次に、座標入力ペン4の構成について、図2を用いて説明する。
【0030】
図2は本発明の実施形態1の座標入力ペンの構成を示す図である。
【0031】
座標入力ペン4内に内蔵された振動発生源43は、ペン電源46、およびタイマと発振回路並びに座標入力ペン4に具備されている複数のスイッチ情報を検知して制御する制御回路、各種データを記憶するメモリ等で構成された駆動回路45によって駆動される。振動発生源43は、例えば、PVDF(ポリフッ化ビニリデン)等の圧電性素子(電気機械変化素子)で構成される。振動発生源43の駆動信号は、タイマによって発せられる所定の周期で繰り返すパルス信号であって、発振回路により所定のゲインで増幅された後、振動発生源43に印加される。この電気的な駆動信号は、振動発生源43によって機械的な振動に変換され、空中にそのエネルギーが放射されることになる。そのタイミングに同期して、赤外LED44を介して光信号が放射される。
【0032】
尚、実施形態1における座標入力ペン4は、そのペン先端部を押圧することで動作するペン先スイッチ(SW)41、並びに座標入力ペン4の筐体に設けられた複数のペンサイドスイッチ(SW)42_a、42_bを具備する。
【0033】
座標入力ペン4のペン先SW41、または複数のペンサイドSW_a、42_bのいずれかがON状態になると、所定の周期で超音波信号と光信号の両者が放射されることになる。光信号は、超音波を放射するタイミングと同期した信号であり、超音波放射タイミングを光検出センサ5を介して演算制御回路1が検知して、後述の方法により、振動発生源である座標入力ペン4の位置座標を算出する。一方、光信号には座標入力ペンの状態(例えば、どのスイッチがON状態となっているか、あるいはペンを識別するためのコード等)を示す信号が重畳されて出力されている。
【0034】
その情報を伝送する方法は、例えば、連続するパルス列からなるリーダ部と、これに続くコード(メーカーIDなど)とからなるへッダ部をまず出力し、その後、ペンIDや制御信号などからなる送信データ列が予め定義された順序と形式に従って、その情報を順次出力する。この方法はよく知られた方法(例えば、赤外線を利用したリモコン等)であり、ここでの詳述は省略する。
【0035】
次に、座標入力ペン4の動作モード及び各種動作について、図3A、図3Bを用いて説明する。
【0036】
図3Aは本発明の実施形態1の座標入力ペンの動作モードを示す図であり、図3Bは本発明の実施形態1の座標入力ペンの動作を示すフローチャートである。
【0037】
まず、ステップS402で、ペン先SW41がON状態であるか否かを判定する。ペン先SW41がON状態とは、座標入力面であるディスプレイ6上に座標入力ペン4が位置し、操作者によってまさに座標入力が行われ、筆跡を入力しようとする状態(ペンダウン状態)である。また、例えば、ペン先SW41を2回動作させることで、座標入力装置の座標サンプリングレートを参照しながら信号を受信した時間、間隔、あるいは座標を算出しているタイミング等を監視することで、マウスのダブルクリック動作を認識するように構成されている。
【0038】
この時、画面上に表示された筆跡は、操作者による筆記動作に対して忠実に行われなければ、操作者は座標入力装置の座標算出精度が十分でないと認知し、その性能を疑うことになる。つまり、座標算出精度は十分な精度が要求される状態である。従って、実施形態1においては、ペン先SW41がON状態である場合(ステップS402でYES)、ステップS406に進み、より座標を高精度に算出することが可能な座標演算方法2により座標を算出し、忠実に操作者の筆跡を再現できるように構成されている。
【0039】
一方、ステップS402において、ペン先SW41がON状態でない場合、つまり、OFF状態である場合(ステップS402でNO)、ステップS403に進む。
【0040】
ステップS403〜S405では、ペンサイドSW_a、42_bの状態を判別する。実施形態1においては、座標入力ペン4にはペンサイドスイッチ42_a、42_bの2個のサイドスイッチが具備されており、少なくともどちらか一方がON状態にあれば、ペンアップ状態、その両者がON状態となっていればペンダウン状態として動作するように構成されている。
【0041】
このように、ペン先SW41がOFF状態、かつ少なくともどちらかのペンサイドSW42_a、42_bが動作状態となる具体的想定使用例は、操作者が座標入力面であるところのディスプレイ6から離れた位置で、画面を制御しようとしている場合であって、例えば、離れた位置でカーソルを所望の位置に移動したり、筆跡を入力しようとする場合である。
【0042】
つまり、少なくとも一方のペンサイドSW42_a、42_bが動作している場合は、操作者は画面上に示されているカーソルを移動することができ、その両者が動作している場合には、カーソルの移動を筆跡として残すことができるような状態を実現することができる。また、座標入力装置が座標を算出する際に、ペンの状態(ペンアップ、ペンダウン)を情報として同時に出力することができるように構成しているので、その情報を基にパーソナルコンピュータ等の外部機器に格納されている制御ソフト、あるいはアプリケーションソフト等によって、所望の動作を実現することができるのである。
【0043】
また、『少なくとも一方のペンサイドスイッチ』、あるいは『両者のペンサイドスイッチ』と言うことでその状態を区別した意図は、利き腕を考慮した結果である。つまり、図2に示すように、実施形態1の座標入力ペンのサイドSW42_a、42_bは、座標入力ペン4の対称軸に対称に、しかも隣接するように配置してあるので、右利き、左利きの区別無く、同一の動作で同一の効果が得られるように構成しいている。ペンサイドスイッチの他の実施形態としては、2段スイッチ、つまり、スイッチのキートップを押圧することで1段目のスイッチが動作し、さらに押圧することによって2段目のスイッチが動作するスイッチを用いることによって、同様の効果も得られる。
【0044】
先に述べたように、ペン先SW41がOFF状態、かつ少なくともどちらかのペンサイドSW42_a、42_bが動作状態となる状態は、操作者が座標入力面であるところのディスプレイ6から離れた位置で、画面を制御しようとしている場合であって、その場合における座標入力装置の座標算出精度は高精度であることを必要としない。その理由は、座標入力ペン4のペン先と表示位置は離れているので、操作者は指示しようとした位置と実際に表示された位置がそこそこにあっていれば、操作者は『指示した位置がそもそも不正確だった』のか、『指示した位置は正確なのに座標入力装置の座標算出精度が悪くて所定の位置を指示できない』のか区別することができない。
【0045】
操作者はむしろ指示したと言う動作の結果、ディスプレイ6上に表示されたカーソル位置を見ながら、そのカーソルを所望の位置に動かすために指示位置から相対的な位置の移動を行って、目的を達成するのである。つまり、比較的性能の低い座標算出性能であっても、人間は違和感無く道具として使いこなすことができるのでる。この例では、現在の会議等に使われているレーザポインタの例をみても理解できる。
【0046】
つまり、レーザポインタを使って遠くの所定点を指示する場合、まず最初のレーザ発射時(1点目)においては、とんでもない位置を指示することが良く見られる。人間はこのレーザの照射位置を視認して、相対的にレーザポインタを操作することによって、所望の位置にレーザの照射位置を移動するである。これは、視認、修正という行為を、違和感無く行うことが可能であり、『ちゃんと指示しているのに照射位置がおかしい(レーザが壊れている)』と感じるのでなく、修正作業により人間の能力(こっちの方角だと思って指し示す能力)の不備を補間しているのである。従って、このような遠隔操作における指示動作と言う観点では、どんなに座標入力装置の座標算出性能が高くても意味が無い。もちろん遠隔操作における高精度な座標算出であっても、操作上の弊害は発生しないが、『遠隔操作ではそれほどの座標算出精度を要求しない』という観点で、実施形態1の座標入力装置の座標算出原理において固有の効果が期待できる。尚、その効果の詳細については、後述する。
【0047】
図3Bの説明に戻る。
【0048】
まず、ステップS403で、ペンサイドSW42_aがON状態であるか否かを判定する。ON状態である場合(ステップS403でYES)、ステップS405に進む。一方、ペンサイドSW42_aがON状態でない場合(ステップS403でNO)、ステップS404に進み、ペンサイドSW42_bがON状態であるか否かを判定する。ペンサイドSW42_bがON状態でない場合(ステップS404でNO)、処理を終了する。一方、ペンサイドSW42_bがON状態である場合(ステップS404でYES)、ステップS408に進む。
【0049】
ステップS408で、上述した座標演算方法2より簡略化された座標演算方法1により、検出した座標値とペンアップ/ダウンの状態を出力する。
【0050】
以上、座標入力装置として、画面上を直接タッチして座標を入力して筆跡を追記したり、あるいはパーソナルコンピュータを制御する場合と、それと同様に画面から離れた地点で同様な操作を行うための遠隔操作について、座標入力ペン4に具備されている各種スイッチの割り付け、及びそのスイッチのいずれかが動作することで、定期的に音波が放射され、同時に前述音波の放射と同期した信号、並びにペンの状態(ペンアップ/ダウン、ペンのID番号等)を伝送する光信号が放射される。
【0051】
次に、放射された音波、光波による信号処理、並びに座標算出原理について説明を加える。
【0052】
駆動回路44は、所定周期毎(例えば、10msec毎、その場合、1秒間あたりに音波を100回放射するので、本座標入力装置の座標出力サンプリングレートは、100回/秒となる)に、座標入力ペン4内の振動発生源43を駆動させる信号を出力し、空中に音波を放射することになる。この音波は、振動発生源43と各検出センサ3_Sa〜Sd迄の距離に各々応じて遅延し、到達、検出されることになる。
【0053】
この種の座標入力装置は、座標入力ペン4の振動発生源43と各検出センサ3_Sa〜Sd間の距離を、音波の既知の音速と、その到達時間の積により各々導出し、各検出センサ3_Sa〜Sdの位置情報を用いて幾何学的に振動発生源43の位置情報を得ることを基本としたシステムである。
【0054】
そこで、この音波の到達時間を検出する到達時間検出方法について、図4、図5を用いて説明する。
【0055】
図4は本発明の実施形態1の音波の到達時間検出方法を説明するためのタイミングチャートであり、図5は本発明の実施形態1の音波の到達時間検出を実現する検出回路のブロック図である。
【0056】
101は駆動回路45が振動発生源43を駆動する駆動信号であり、それと同期して赤外LED44から上述の超音波発生のタイミング情報を伝送するためのスタート信号が光信号として放射される。この光信号は、光検出センサ5を介して検出され、周波数検波回路210、制御信号検出回路211を介して、超音波発生のタイミング、あるいはペンの状態(例えば、ペンアップ/ペンダウン等)を演算制御回路1に送信し、演算制御回路1内のタイマ303(図6参照)をスタートさせる。
【0057】
一方、空中に放射された音波は、振動発生源43と検出センサ3_Sa〜Sd間の距離に応じて遅延し、各検出センサ3_Sa〜Sdで検出されることになる。102は、前置増幅回路201で所定レベルまで増幅された検出センサ3_Sa〜Sdで検出された検出信号を示す。この信号を、絶対値回路及び低域通過フィルタ等により構成されるエンベロープ検出回路203で処理を行い、検出信号のエンベロープ103を抽出する。
【0058】
このエンベロープ103に着目すると、このエンベロープ波形が伝播する音速は群速度Vgであり、このエンベロープ103の特異な点、例えば、エンベロープのピークやエンベロープの変曲点を検出して、tg信号検出回路207により生成される信号107により、前述カウント動作を継続しているタイマ303をストップさせれば、群速度Vgに関わる遅延時間tgが得られる(第1遅延時間検出手段)。
【0059】
エンベロープ103のピークあるいは変曲点を検出するエンベロープ特異点検出回路206は、微分回路、ゼロクロスコンパレータを用いて容易に検出が可能であり、実施形態1では2階微分することによって信号106を形成し、閾値レベル104とエンベロープ103で比較されたゲート信号を参照してエンベロープ103の変曲点を検出する(信号107)。
【0060】
尚、厳密に言えば、この検出された群遅延時間tgには、波形処理に関わる回路の遅延時間分等が含まれるが、後述する方法により、その影響は完全に除去されるので、ここでは説明を簡略化するために、回路遅延時間は無いものとして説明を加える。
【0061】
以上のことから、この群遅延時間tgにより、振動発生源43と検出センサ3_Sa〜Sd間の距離Lは次式で求めることができる。
【0062】
L=Vg×tg (1)
そして、座標入力ペン4から各々の検出センサ3_Sa〜Sdまでの距離を各々(1)式により求めれば、後述する方法によって、座標入力ペン4の位置座標を検出することが可能となる(座標演算方法1)。
【0063】
一方、座標演算方法1より高精度な距離検出可能とする座標演算方法2は、検出信号波形の位相情報と第1遅延時間検出手段の出力結果の両者より、座標入力ペン4の位置情報を導出する。
【0064】
その詳細について説明すれば、検出センサ3_Sa〜Sdの検出信号102は、帯域通過フィルタ208により余分な周波数成分を除いた後、tp信号検出回路209に入力される。tp信号検出回路209は、ゼロクロスコンパレータ、マルチバイブレータ等で構成され、帯域通過フィルタ208によって出力された検出信号108のゼロクロス点に関わる信号109を生成する。さらに前述所定の閾値レベル104と比較するゲート信号発生回路205が生成するゲート信号105と比較し、ゲート信号105の期間内において、帯域通過フィルタ208で出力される信号波形の位相が、例えば、負側から正側にクロスする最初のゼロクロス点を出力する信号110を生成する。
【0065】
同様にして、この信号110を用いて前述したスタート信号により動作しているタイマ303をストップさせれば、位相速度Vpに関わる位相遅延時間tpを検出することが可能である。
【0066】
尚、厳密に言えば、この検出された位相延時間tpには、波形処理に関わる回路の遅延時間分等が含まれるが、後述する方法により、その影響は完全に除去されるので、ここでは説明を簡略化するために、回路遅延時間は無いものとして説明を加える。
【0067】
以上のことから、この位相遅延時間tpにより、振動発生源43と検出センサ3_Sa〜Sd間の距離Lは次式で求めることができる。
L=Vp×tp+n×λp (2)
ここで、λpは音波の波長、nは整数である。(2)式、右辺第2項(n×λp)の持つ意味は、仮に音波の検出レベルが小さくなった場合には、それに応じてエンベロープ信号のレベルも低下することになるので、このエンベロープ103と閾値レベル104とを比較して生成されるゲート信号105のゲート信号発生期間は、例えば、信号111のようになる。
【0068】
つまり、ゲート信号発生期間は、検出信号102の信号レベルに依存することになる。信号レベルが変化する一番の要因は、振動発生源43と検出センサ3_Sa〜Sd間の距離であり、その信号レベルは距離に応じて指数関数的に減少することが良く知られている。
【0069】
従って、本来、信号110によって位相遅延時間tpを検出すべきなのに、信号レベルが低くなった結果、ゲート信号の発生期間が変化し、信号112により位相遅延時間tpが検出されることが起こりえる。
【0070】
図4において、信号110と信号112の時間差は、検出信号108の1周期分に相当するので、距離に換算すれば音波の波長と言うことになる。つまり、位相遅延時間tp、位相速度Vpにより導出される距離Lは、信号レベルに応じて波長の整数倍の誤差を含むことになるので、式(2)の右辺第二項はその補正項となる。
【0071】
一方、式(1)、式(2)で各々導出される距離Lは、本来、同じ値となるべきものである。従って、式(1)、式(2)を連立させれば、整数nは次式で求めることができる。
【0072】
n=int[(Vg・tg−Vp・tp)/λp+1/2] (3)
式(3)において、整数化を実行しているのは、群遅延時間tgに基づく距離演算は、位相遅延時間tpに基づく距離演算に比べ、その性能が劣化するので、この差分を吸収するためである。仮に、位相遅延時間tpに基づく距離演算に誤差が無いものと仮定すれば、群遅延時間tgに基づく距離演算に半波長以下の誤差が含まれても、式(3)による整数nの演算は正確に行われるので、式(2)による正確な距離導出が可能となる。
【0073】
換言すれば、群遅延時間tgに基づく距離計算で、半波長以上の誤差が含まれると、式(3)による整数nの導出に誤りが含まれ、大幅な距離測定精度の劣化が起こる(正確な距離導出を行っている状態で、何らかの要因で整数nを突然間違えると、波長分の誤差が突然発生する)。
【0074】
本発明は、この点を鑑み成されたものであり、信頼性を向上させる効果を期待できるものである。実施形態1において、具体的に想定される座標算出可能領域について述べれば、直接画面をタッチすることで操作する用途では、その座標入力範囲は画面の大きさに限定される。例えば、画面サイズが16:9の対角70インチであって、検出センサ3_Sa〜Sdを図1に示すがごとく、表示画面の4隅近傍に配置すれば、座標入力ペン4と検出センサ検出センサ3_Sa〜Sdの最大距離は、画面の対角線+αの距離であって、高々1800mm程度に過ぎない。
【0075】
ところが、遠隔操作を考慮した場合には、その画面の大きさに対する最適視覚距離を鑑みても画面から約5000mm程度離れた距離でも、座標入力することが可能となる仕様が好ましい。
【0076】
つまり、遠隔操作の仕様を考慮した3次元入力可能な座標入力装置の座標検出可能距離は、飛躍的に大きくなるのである。一般的に音波の音速は一定であるという前提で本座標入力装置は構成されているが、距離の範囲が大きくなると、以下の様な距離測定誤差要因が発生する。
【0077】
1)波の信号レベルは距離と共に指数関数的減少し、ノイズの影響を受けやすくなる
2)距離増大に応じて信号波形のエンベロープが滑らかになる(エンベロープ波形の変形による非線形性)
従って、距離増大要因により、前述した『式(1)による群遅延時間tgに基づく距離演算が半波長以下』という必要条件が満足できずに、式(3)による整数nに誤差を含み、結果として式(2)右辺第2項に波長の整数倍の誤差を含む確率が高くなるので、距離測定精度を大幅に劣化させる要因となる。
【0078】
ここで、再度、式(1)による距離演算と、式(2)による距離演算の特徴をまとめれば、式(1)による距離演算は、アナログ処理によるエンベロープの抽出により遅延時間を検出しているので、距離算出精度は高精度とは言えない。しかしながらその誤差の発生の仕方は、測定距離に対して連続的である。
【0079】
一方、式(2)により距離演算は、整数nを正確に求めることができれば非常に高精度であるが、整数nを間違えたとたんにその測定誤差は、不連続的に発生することになる。
【0080】
この現象を使用者の立場にたって考えてみると、画面を直接座標入力ペン4でタッチして、その筆跡をディスプレイ6上に表示しようとする場合、式(1)に基づく距離算出から座標入力ペン4の位置を導出すれば、座標算出性能が高精度と言えないので、実際に座標入力ペン4で指示した位置とは離れたところに筆跡が残る。このため、操作者は性能が悪く、操作性の低い座標入力装置と認知するだろう。しかしながら、式(2)に基づく座標算出は高精度なので、性能が良く、操作性に優れた座標入力装置として認知されることになる。
【0081】
一方、画面から離れた位置で同様の操作をする場合、前述した通り、操作者は指示位置が間違っているのか、あるいは指示位置があっているのにも関わらず座標入力装置の性能が悪くて異なる地点に筆跡が残るのかを判定できない。むしろ表示されたカーソルの位置を視認しながら、それをフィードバックして操作者による補間作業により目的を達成するので、式(1)による座標算出方法であっても何ら障害を認知することが無いのである。
【0082】
一方、式(2)による座標演算方法では、遠隔操作による測定距離が大幅に伸びているので、整数nを誤検出する可能性、またその確率が距離増大と共に増大することになる。正常に整数nを検出している時に、たまたま整数nを誤検出したデータが含まれると、その地点で操作者が筆記した筆跡に不連続な筆跡が残ることになる(図8参照)。これは、明らかに操作者に視認されることになるので、座標入力装置の信頼性を大幅に低下させる原因となる。
【0083】
本発明は、この点を鑑みてなされたものであり、遠隔操作の場合には、たとえ誤差を含んだ座標検出方法であっても、誤差の発生の仕方が連続的に発生する座標検出方法を採用し、操作者の筆跡が滑らかに、連続的になるように構成したものである。一方、画面を直接タッチして筆跡を残す場合には、より高精度な座標検出方法を採用することにより、指示した位置と筆跡の位置を一致させることで、操作性の良い座標入力装置を実現したものである。
【0084】
このように、本発明は、この3次元座標検出可能な座標入力装置の具体的使用例を鑑みてなされたものであり、操作者にとって信頼性の高い座標入力装置を提供するものである。
【0085】
次に、実施形態1の演算制御回路1の概略構成について、図6を用いて説明する。
【0086】
図6は本発明の実施形態1の演算制御回路の概略構成を示すブロック図である。
【0087】
尚、図6では説明を簡略化するために、複数ある検出センサ3_Sa〜Sdのその1つについて、その構成要素及びその動作概略について説明する。
【0088】
301は、演算制御回路1及び本座標入力装置全体を制御するマイクロコンピュータであり、内部カウンタ、操作手順を記憶したROM、そして計算等に使用するRAM、定数等を記憶する不揮発性メモリ等によって構成されている。
【0089】
前述した通り、駆動回路45により座標入力ペン4内の振動発生源43の駆動タイミングと同期したスタート信号が、制御信号検出回路211より入力されると、演算制御回路1内のタイマ303(例えば、カウンタなどにより構成されている)をスタートさせる。
【0090】
このように構成することで、座標入力ペン4内の振動発生源43を駆動する駆動タイミングと、演算制御回路1内の例えばタイマとの同期が得られるので、振動発生源43で発生した音波が、振動発生源43から各検出センサ3_Sa〜Sdに各々達するのに要する時間を測定することが可能となる。
【0091】
信号波形検出回路2より出力される検出センサ3_Sa〜Sdよりの振動到達タイミング信号(信号107及び信号110)は、検出信号入力ポート306を介してラッチ回路304_a、304_bに各々入力される。ラッチ回路304_a、304_bは、対応するタイミング信号を受信すると、その時のタイマ303の計時値をラッチする。
【0092】
このようにして、座標検出に必要な全ての検出信号の受信がなされたことを判定回路305が判定すると、マイクロコンピュータ301にその旨の信号を出力する。マイクロコンピュータ301が、この判定回路305からの信号を受信すると、ラッチ回路304_a、304_bから各々の検出センサ3_Sa〜Sdまでの振動到達時間をラッチ回路304_a、304_bより読み取り、所定の計算を行なって、座標入力ペン4の座標位置を算出する。
【0093】
その算出結果を、I/Oポート307を介してディスプレイ駆動回路7に出力し、ディスプレイ6の対応する位置に、例えば,ドット等を表示することができる。また,I/Oポート307を介しインターフェース回路に、座標位置情報、あるいはペンの状態信号(ペンアップ/ダウン、ペンID等)を出力することによって、外部機器に座標値、あるいは制御信号を出力することができるように構成している。
【0094】
以上説明した実施形態1において、検出された時間には、振動発生源43と各検出センサ_Sa〜Sdまで音波が到達する時間に加えて、回路等による電気的な処理時間も含まれる。従って、ここでは、音波が伝播する時間以外に余分に計測される時間を除去する方法について説明する。
【0095】
ラッチ回路304_a、304_bによってラッチされた群遅延時間tg、もしくは位相遅延時間tpには、各々群回路遅延時間etg、位相回路遅延時間etpを含む。この回路遅延時間は、時間計測毎に同一の値を必ず含む。
【0096】
そこで、ある計測回路によって、振動発生源43と検出センサ3_Sa〜Sd間を伝播する際に計測された時間をt*、その計測回路における回路遅延時間をe、実際に音波が振動発生源43と検出センサ3_Sa〜Sd間を伝播したのに要した時間をtとすれば、
t*=t+e (4)
となる。
【0097】
一方、振動発生源43と検出センサ3_Sa〜Sd間の距離が既知の距離Liniにおける時間計測値をtini*とし、その計測回路における回路遅延時間をe、実際に音波が伝播した時間をtiniとすれば
tini*=tini+e (5)
となる。よって
t*−tini*=t−tini (6)
となる。ここで、音波の音速をVとすれば、
となる。
【0098】
よって、求めるべき任意の振動発生源43と検出センサ3間の距離Lは、
L=V×t=V×(t*−tini*)+Lini (8)となる。
【0099】
上記、既知の距離Lini、及びその距離における時間計測値tini*を、出荷時やリセット時に演算制御回路1の不揮発性メモリ等の記憶媒体に記憶することによって、任意の距離における振動発生源43と検出センサ3間の距離を精度良く算出することが可能となる。
【0100】
次に、図7に示すような座標系に検出センサ3_Sa〜Sdが配置された場合、振動発生源43の位置座標(X,Y,Z)を求める方法について説明する。
【0101】
上記の方法により正確に求められた振動発生源43と各検出センサ3_Sa〜Sdまでの距離を各々La〜Ld、X方向の検出センサ間距離をXs−s、Y方向の検出センサ間距離をYs−sとすれば、
【0102】
となる。同様にして、
【0103】
となる。
【0104】
以上示したように、振動発生源43と少なくとも3個の検出センサ3までの距離が測定できれば、容易に振動発生源43の位置(空間)座標を求めることが可能となる。本発明では、検出センサを4個用いており、例えば、距離が最も遠い情報を使わず(この場合、検出センサ3で出力される信号は、距離が遠いために信号レベルが最も小さくなっている)、残り3個の距離情報のみで、座標を算出することで、信頼性の高い座標算出を可能としている。
【0105】
また、この距離が遠いセンサの距離情報を活用することで、出力された座標値の信頼性が高いものか判定することも可能である。
【0106】
具体的な方法としては、例えば、距離情報La、Lb、Lcで算出された座標値と、距離情報Lb、Lc、Ldで算出された座標値は同一の値を出力するはずであり(距離情報の組み合わせを変更して演算する)、両者が一致しない場合には、いずれかの距離情報が不正、つまり、誤検出したことになるので、その場合には、座標値を出力しないといった信頼性を向上させる構成も実施可能となる。
【0107】
以上説明したように、実施形態1によれば、座標入力ペン4が有するスイッチの押下状態に基づいて、その押下状態に最適な座標演算方法による座標値を出力することができる。
【0108】
<実施形態2>
実施形態1では、直接画面をタッチして行う場合と画面から離れた個所で遠隔操作による操作を想定し、直接入力する場合にはより高精度な演算方法で、遠隔操作の場合には誤差の発生の仕方が不連続とならないような演算方法で座標を算出する構成について説明した。これに対し、実施形態2では、この遠隔操作をさらに操作性の良い座標入力装置として実現する構成について説明する。
【0109】
上述したように、遠隔操作における表示画面と操作位置が離れている場合には、高精度な座標算出精度を必要としないが、遠隔操作の場合であっても、比較的表示画面に近い遠隔操作を想定する。
【0110】
具体的には、画面を直接タッチして操作する場合でなくても、画面に近い、或いはほぼ近接した領域で操作する場合を想定する。この場合。操作者は、座標入力ペン4が画面に近くなれば近いほど、座標入力ペン4の指示位置と、例えば、カーソル位置の誤差を認知できるようになるので、両者間の距離が小さいほど座標算出精度は高精度であることが好ましい形態である。両者間の距離が小さい場合の操作を『近接入力』と定義すれば、実施形態2の座標入力ペン4の動作モード及び各種動作について、図9A、図9Bを用いて説明する。
【0111】
図9Aは本発明の実施形態2の座標入力ペンの動作モードを示す図であり、図9Bは本発明の実施形態2の座標入力ペンの動作を示すフローチャートである。
【0112】
ペン入力の場合は、ペン先SW41が座標入力面であるところの画面に押圧されて動作する点、近接入力及び遠隔入力の場合、ペンサイドSW_a、42_bの少なくとも一方が押圧された場合にはペンアップ状態で、その両者が押圧された場合にはペンダウン状態で作用することは実施形態1と同様である。
【0113】
しかしながら、実施形態2では、座標入力ペン4のスイッチ情報により座標演算モードを決定するのでなく、いずれの場合も、ステップS502で、必要な情報が全て得られたかを判定する。つまり、有効信号が検出されたか否かを判定する。有効信号が検出されない場合(ステップS502でNO)、処理を終了する。一方、有効信号が検出された場合(ステップS502でYES)、ステップS503に進む。
【0114】
次に、ステップS503で、まず、座標演算方法1により、座標値(X,Y,Z)を演算する。演算されたZ座標値は、図7の説明でも明らかなように、表示面と座標入力ペン4の距離に関するパラメータとなっているので、このZ座標値がほぼ『0』となる状態は、ペン先SW41が動作してペン入力を行っている状態と判定できる。一方、Z座標値が十分大きければ、遠隔操作の状態であると判定できる。また、Z座標値が所定値以下であれば、座標入力ペン4は比較的表示面に近い位置に位置していると判定できるので、近接入力状態にあると判定できる。
【0115】
従って、まず、ステップS504で、Z座標値が第1所定値以上であるか否かを判定する。Z座標値が第1所定値以上である場合(ステップS504でYES)、ステップS507に進み、そのまま座標演算方法1による演算結果を出力するように動作する。一方、Z座標値が第1所定値未満である場合(ステップS504でNO)、ステップS505に進む。
【0116】
ステップS505で、Z座標値が第2所定値以下であるか否かを判定する。Z座標値が第2所定値以下である場合(ステップS505でNO)、処理を終了する。一方、Z座標値が第2所定値より大きい場合(ステップS505でYES)、ステップS506に進み、より高精度な座標演算を可能とする座標演算方法2による演算結果を出力するように動作する。
【0117】
尚、ステップS504における第1所定値(座標算出値)と、ステップS505の第2所定値を、例えば、図9Aに示すように異なる値に設定した場合には、両者の所定値の間の値が検出されると、いずれの座標値も出力しないように構成される。
【0118】
また、両者の値が同一である場合には、例えば、連続入力されている最初の1点目のみのZ座標値を判定基準として採用することが好ましい形態といえる。つまり、連続して座標入力が実行されている際に、座標演算方法が異なる出力結果を混在で出力すると、両者の誤差の程度によって筆跡の不連続点が発生する可能性があり、それを防止することを目的とする。
【0119】
以上説明したように、実施形態2によれば、『ペン入力』、『近接入力』、『遠隔入力』が想定される環境において、各入力状態に応じて、最適な座標演算方法による座標値を出力することができる。
【0120】
<実施形態3>
実施形態3では、実施形態1の図8で説明した、整数nを誤検出した場合であっても、整数nを補正して、正しい座標値を出力する構成について説明する。
【0121】
図10は本発明の実施形態3の座標値補正動作を示すフローチャートである。
【0122】
まず、ステップS402で、式(2)を用いる座標演算方法は、図3Bでも説明した通り、直接入力面であるところの表示面をタッチして、ペン先SW41がON状態となっている時である。
【0123】
そのとき、上述した手順により、まず、ステップS403で、式(3)により整数nを算出する。座標演算に必要は全ての距離情報を得るために、各々の3_Sa〜Sdで同様の演算を行うが、ここでは、説明を簡略化するために、1つの検出センサについて説明するを加える。
【0124】
ステップS404で、整数nを算出した後、式(2)により、振動発生源43と検出センサ3までの距離を算出する。ステップS405で、その算出した距離情報に基づいて、上述のようにして、座標値(X,Y,Z)を算出する。
【0125】
ここで、ペン先SW41が動作して表示面を押圧することで座標演算が行われているのであるから、算出したZ座標値はほぼ『0』にならなければならない。逆に言えば、何らかの障害により整数nが不正に計算された場合には、計算されるZ座標値は『0』とはならない。
【0126】
そこで、ステップS406で、Z座標値がほぼ『0』(Z≒0)であるか否かを判定する。Z座標値がほぼ『0』でない場合(ステップS406でNO)、ステップS407に進み、先に算出された整数nに1加算した、あるいは減算した値を新たな整数nとして、ステップS404、ステップS405にて、再度、座標値(X,Y,Z)を算出する。そして、再度、ステップS406にて、算出したZ座標値の新欄性を判定する。このループを繰り返すことによって、真の座標値を確定することができる。
【0127】
一方、Z座標値がほぼ『0』である場合(ステップS406でYES)、ステップS408に進み、座標値(X,Y)を出力する。ここで、『ほぼ』と言う表現を用いているが、これは計算上の丸め誤差、あるいは測定誤差等により『Z=0』と厳密にはならないことを想定したものである。そして、ほぼ『0』であるか否かの判定は、例えば、閾値(例えば、閾値0.1とし、その値以下であれば、ほぼ『0』とみなす)を用いて判定する方法、あるいは上述した計算ループを繰り返した際に、最もZ座標値が『0』に近くなる状態を判別することで、最適な整数nを決定することができる。
【0128】
先にも説明したように、図4の信号110と信号112の関係は、検出信号108の位相周期に相当するのであって、整数n(パラメータ)に1を加減算することは、この周期分の補正を実行することと同等である。『ペン先SW41が動作している』ということは、『Z≒0』でなければならないということであり、『Z≒0』とならないのは整数nのカウントを間違えているからで、真の整数nを算出するということは、換言すれば、正確な座標値を算出するということと等価である。
【0129】
以上の説明は、不正な座標値を検出したことを検知して、それを補正して正しい座標値を出力するように構成するものであるが、その誤検出は偶発的な要因によって引き起こされる確率が高いので、例えば、誤検出を検知した場合には、その座標値を出力せず、新規に遅延時間を測定して座標値を算出しても良いことは言うまでもない。
【0130】
以上説明したように、実施形態3によれば、電気的ノイズあるいは装置が設置されている環境等から発生する音響的ノイズ等により、整数nを誤検出して、結果的に座標算出精度が低下させる可能性がある場合に、その整数nを用いて座標を算出するのは、操作者が直接画面上をタッチして行う場合にだけに限定し、その場合は『ペン先SW41が動作している』状態であり、かつZ座標値が『Z≒0』(Z=0を含む所定範囲内)でなければならないという状態であることを利用して、座標の誤検出を検出することができる。
【0131】
<実施形態4>
実施形態1〜3では、音波の放射を利用した3次元座標入力可能な座標入力装置について説明したが、座標算出方式によって本願発明が限定されるものではない。例えば、表示画面上のXY平面のみの座標を検知することができる座標入力装置と、空間の位置座標を検知することができる座標入力装置を組み合わせて、本発明が想定する『ペン入力』、『近接入力』、『遠隔入力』を実現する装置にも適用が可能であり、その際の座標入力装置の座標算出原理は、両者で別個のものであっても良いし、同一のものであっても良い。
【0132】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。その場合、プログラムの機能を有していれば、形態は、プログラムである必要はない。
【0133】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0134】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0135】
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
【0136】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0137】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0138】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【0139】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【0140】
【発明の効果】
以上説明したように、本発明によれば、座標入力装置の操作状況に応じて好適な座標算出を可能とし、かつその信頼性及び操作性を改善することができる座標入力装置及びその制御方法、プログラムを提供できる。
【図面の簡単な説明】
【図1】本発明の実施形態1の3次元(空間)座標計測可能な座標入力装置の概略構成を示す図である。
【図2】本発明の実施形態1の座標入力ペンの構成を示す図である。
【図3A】本発明の実施形態1の座標入力ペンの動作モードを示す図である。
【図3B】本発明の実施形態1の座標入力ペンの動作を示すフローチャートである。
【図4】本発明の実施形態1の音波の到達時間検出方法を説明するためのタイミングチャートである。
【図5】本発明の実施形態1の音波の到達時間検出を実現する検出回路のブロック図である。
【図6】本発明の実施形態1の演算制御回路の概略構成を示すブロック図である。
【図7】本発明の実施形態1の座標系を説明するための図である。
【図8】本発明の実施形態1の座標演算方法による性能を説明するための図である。
【図9A】本発明の実施形態2の座標入力ペンの動作モードを示す図である。
【図9B】本発明の実施形態2の座標入力ペンの動作を示すフローチャートである。
【図10】本発明の実施形態3の座標値補正動作を示すフローチャートである。
【符号の説明】
1 演算制御回路
2 信号波形検出回路
3 検出センサ
4 座標入力ペン
5 光検出センサ5
6 ディスプレイ
41 ペン先スイッチ
42_a、42_b ペンサイドスイッチ
43 振動発生源
44 赤外LED
45 駆動回路
201 前置増幅回路
203 エンベロープ検出回路
205 ゲート信号発生回路
206 エンベロープ特異点検出回路
207 tg信号検出回路
209 tp信号検出回路
210 周波数検波回路
211 制御信号検出回路
【発明の属する技術分野】
本発明は、表示システムと組み合わせて使用することにより、入出力一体の装置を構成することができる座標入力装置及びその制御方法、プログラムに関するものである。より詳しくは、ディスプレイの画面に指示具によって直接座標を入力する、あるいはディスプレイの画面から離れたところにおいて座標を入力することにより、ディスプレイに接続されているコンピュータ等の外部機器を制御したり、文字や図形などを書き込むために用いられる座標入力装置及びその制御方法、プログラムに関するものである。
【0002】
【従来の技術】
従来、CRTディスプレイ、液晶ディスプレイ(LCD)、あるいはプロジェクタ等の表示装置の表示面に、座標を入力することができる座標入力装置を重ねて配置し、操作者が行った指示具によるポインティングあるいは筆跡を表示装置に表示し、あたかも、紙と鉛筆のような関係を実現することができる装置が知られている。
【0003】
座標入力装置としては、抵抗膜方式をはじめ、静電方式、ガラス等の座標入力面に超音波を伝播させる超音波方式等の透明な入力板を有する方式や、光学方式、あるいは空中に音波を放射することで位置を検出する方式、さらには電磁誘導(電磁授受)方式のように表示装置の裏側に座標算出のための機構を配置し、表示装置の前面に透明な保護板を配置して、入出力一体の情報機器を構成している物もある。
【0004】
このような情報機器は、携帯性を有する小型の電子手帳に始まり、ペン入力コンピュータ等、表示装置の大型化に伴って、比較的大きなサイズのペン入力コンピュータ等の情報機器も見られるようになった。その他、フロントプロジェクタ、リアプロジェクタ、あるいはPDP等の大型表示装置と組み合わせて、例えば、プレゼンテーション装置、TV会議システム等に利用され始めている。
【0005】
また、これらの大型の表示装置は、例えば、オフィスにおいて使われていたホワイトボード、あるいは電子黒板にとって変わり、パーソナルコンピュータ内にあらかじめ用意した資料用データを大型の表示装置に表示させることで、会議用途、打ち合わせ用途に使われ始めている。
【0006】
また、このような大型表示用ディスプレイに座標入力装置を組み合わせることによって、直接画面をタッチすることで、表示されている情報を更新、つまり表示画面を制御しているパーソナルコンピュータ等の外部機器を動作させることができる。そのため、大型表示装置と外部機器が離れて設置してある場合であっても、外部機器のオペレータが不要なばかりでなく、操作者が話の内容、進展に伴なって、ディスプレイの直前で必要な情報をタイムリーに表示することができる。
【0007】
【発明が解決しようとする課題】
しかしながら、従来の座標入力装置において、抵抗膜方式、静電方式等の座標入力装置は、完全に透明な入力板を構成することが困難であり、表示装置の画像の質を低下させると言う問題が生じる。
【0008】
また、ガラス等の伝播体に超音波を伝播させて座標を算出す超音波方式では、例えば室内で用いる際の蛍光灯の映りこみを防止するために、そのガラスの表面を光学的に処理する必要があり、画像の画質を維持すると言う点で大幅なコストアップが避けられない。
【0009】
更に、電磁誘導方式は、表示面の裏側にマトリックス上の電極を配置し、入力ペンとの間で電磁的な信号の送受を行うので、表示装置が大型化し装置の厚みが増すと、原理的に座標算出が困難なものとなる。その上、会議用途、あるいはプレゼン用途といった大型の座標入力装置を構成する場合には、非常にコストの高い装置となってしまう欠点を有する。
【0010】
また、大型の表示システムを採用した場合には、大勢の聴衆による同時視聴が想定され、画像の視野角あるいはコントラスト等は十分な性能が要求される。従って、これらの大型表示システムと座標入力措置を組み合わせる場合には、十分に低コストで精度良く座標算出が可能となるばかりでなく、表示装置の画質を劣化させないと言うことが重要な要件となる。
【0011】
さらには、この種の大型の入出力一体のシステムを考慮した場合、大勢の参加者を想定した打ち合わせ、あるいはネットワーク時代を考慮すれば、操作者が直接画面をタッチすることでパソコンを制御するばかりでなく、例えば、質問者がその場で遠隔操作(ディスプレイより離れた位置で操作)により、画面を操作したり、必要に応じてネットワークより情報を引き出せるような構成になるのが好ましい形態であると言える。
【0012】
本発明は上記の課題に鑑みてなされたものであり、座標入力装置の操作状況に応じて好適な座標算出を可能とし、かつその信頼性及び操作性を改善することができる座標入力装置及びその制御方法、プログラムを提供することを目的とする。
【0013】
【課題を解決するための手段】
上記の目的を達成するための本発明による座標入力装置は以下の構成を備える。即ち、
表示画面上にXY平面及び該表示画面に対してZ軸を形成する3次元空間において、指示具が指示する位置座標を算出する座標入力装置であって、
第1座標演算方法で座標を算出する第1座標演算手段と
第2座標演算方法で座標を算出する第2座標演算手段と、
前記第1及び第2座標演算手段のどちらかを選択する選択手段と
前記選択手段で選択された座標演算手段を用いて、前記指示具の位置座標を出力する出力手段と
を備える。
【0014】
また、好ましくは、前記選択手段は、前記指示具が有するスイッチの押下状態に基づいて、前記第1及び第2演算手段のどちらかを選択する。
【0015】
また、好ましくは、前記選択手段は、前記第1座標演算手段で算出される座標値に基づいて、前記第1及び第2演算手段のどちらかを選択する。
【0016】
また、好ましくは、前記第2座標演算手段で算出されたZ座標値が所定範囲内にあるか否かを判定する判定手段と、
前記判定手段の判定結果に基づいて、前記第2座標演算手段で用いるパラメータを変更して、再度、該第2座標演算手段による演算を実行する実行手段と
を更に備える。
【0017】
上記の目的を達成するための本発明による座標入力装置は以下の構成を備える。即ち、
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置であって、
前記検出部が検出する信号のエンベロープを検出する検出手段と、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第1時間検出手段と、
前記第1時間検出手段の検出結果に基づいて、ゲート信号を生成するゲート信号生成手段と、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第2時間検出手段と、
前記第1時間検出手段の検出結果に基づいて、前記指示具の位置座標を算出する第1座標算出手段と、
前記第1及び第2時間検出手段のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第2座標算出手段と、
前記第1及び第2座標算出手段のどちらかを選択する選択手段と、
前記選択手段で選択された座標算出手段による算出結果を、前記指示具の座標値として出力する出力手段と
を備える。
【0018】
また、好ましくは、前記選択手段は、前記指示具が有するスイッチの押下状態に基づいて、前記第1及び第2座標算出手段のどちらかを選択する。
【0019】
また、好ましくは、前記選択手段は、前記第1座標算出手段で算出された座標値に基づいて、前記第1及び第2座標算出手段のどちらかを選択する。
【0020】
上記の目的を達成するための本発明による座標入力装置の制御方法は以下の構成を備える。即ち、
表示画面上にXY平面及び該表示画面に対してZ軸を形成する3次元空間において、指示具が指示する位置座標を算出する座標入力装置の制御方法であって、
第1座標演算方法で座標を算出する第1座標演算工程と
第2座標演算方法で座標を算出する第2座標演算工程と、
前記第1及び第2座標演算工程のどちらかを選択する選択工程と
前記選択工程で選択された座標演算工程を用いて、前記指示具の位置座標を出力する出力工程と
を備える。
【0021】
上記の目的を達成するための本発明による座標入力装置の制御方法は以下の構成を備える。即ち、
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置の制御方法であって、
前記検出部が検出する信号のエンベロープを検出する検出工程と、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第1時間検出工程と、
前記第1時間検出工程の検出結果に基づいて、ゲート信号を生成するゲート信号生成工程と、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第2時間検出工程と、
前記第1時間検出工程の検出結果に基づいて、前記指示具の位置座標を算出する第1座標算出工程と、
前記第1及び第2時間検出工程のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第2座標算出工程と、
前記第1及び第2座標算出工程のどちらかを選択する選択工程と、
前記選択工程で選択された座標算出工程による算出結果を、前記指示具の座標値として出力する出力工程と
を備える。
【0022】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
表示画面上にXY平面及び該表示画面に対してZ軸を形成する3次元空間において、指示具が指示する位置座標を算出する座標入力装置の制御をコンピュータに機能させるためのプログラムであって、
第1座標演算方法で座標を算出する第1座標演算工程のプログラムコードと
第2座標演算方法で座標を算出する第2座標演算工程のプログラムコードと、前記第1及び第2座標演算工程のどちらかを選択する選択工程のプログラムコードと
前記選択工程で選択された演算工程を用いて、前記指示具の位置座標を出力する出力工程のプログラムコードと
を備える。
【0023】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置の制御をコンピュータに機能させるためのプログラムであって、
前記検出部が検出する信号のエンベロープを検出する検出工程のプログラムコードと、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第1時間検出工程のプログラムコードと、前記第1時間検出工程の検出結果に基づいて、ゲート信号を生成するゲート信号生成工程のプログラムコードと、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第2時間検出工程のプログラムコードと、
前記第1時間検出工程の検出結果に基づいて、前記指示具の位置座標を算出する第1座標算出工程のプログラムコードと、
前記第1及び第2時間検出工程のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第2座標算出工程のプログラムコードと、
前記第1及び第2座標算出工程のどちらかを選択する選択工程のプログラムコードと、
前記選択工程で選択された座標算出工程による算出結果を、前記指示具の座標値として出力する出力工程のプログラムコードと
を備える。
【0024】
【発明の実施の形態】
以下、図面を参照して本発明の好適な実施形態を詳細に説明する。
【0025】
<実施形態1>
図1は本発明の実施形態1の3次元(空間)座標計測可能な座標入力装置の概略構成を示す図である。
【0026】
4は指示具であるところの座標入力ペンであり、操作者による座標入力動作により空中に超音波を放射すると共に、超音波の放射タイミング、あるいはペンのスイッチ情報を伝送するための赤外光を放射するように構成されている。放射された赤外光は光検出センサ5で受光されると共に、同時に放射される音波は複数の検出センサ3(実施形態1の場合、4個の検出センサ3_Sa〜Sdを使用する)により検出され、後述する方法により信号波形検出回路2で処理される。その後、演算制御回路1によって、座標入力ペン4の超音波発信源の位置(X,Y,Z)を算出するように構成されている。
【0027】
演算制御回路1は、座標入力装置全体を制御するとともに、得られる座標データを基に、ディスプレイ駆動回路5を介して、ディスプレイ6に表示されているカーソルを移動したり、あるいは筆記等の手書き情報をディスプレイ6に表示、追記できるように構成されている。
【0028】
以上のように、座標入力装置とディスプレイを組み合わせることで、あたかも『紙と鉛筆』のような関係を実現することができるマンマシンインターフェースを提供することが可能となる。
【0029】
次に、座標入力ペン4の構成について、図2を用いて説明する。
【0030】
図2は本発明の実施形態1の座標入力ペンの構成を示す図である。
【0031】
座標入力ペン4内に内蔵された振動発生源43は、ペン電源46、およびタイマと発振回路並びに座標入力ペン4に具備されている複数のスイッチ情報を検知して制御する制御回路、各種データを記憶するメモリ等で構成された駆動回路45によって駆動される。振動発生源43は、例えば、PVDF(ポリフッ化ビニリデン)等の圧電性素子(電気機械変化素子)で構成される。振動発生源43の駆動信号は、タイマによって発せられる所定の周期で繰り返すパルス信号であって、発振回路により所定のゲインで増幅された後、振動発生源43に印加される。この電気的な駆動信号は、振動発生源43によって機械的な振動に変換され、空中にそのエネルギーが放射されることになる。そのタイミングに同期して、赤外LED44を介して光信号が放射される。
【0032】
尚、実施形態1における座標入力ペン4は、そのペン先端部を押圧することで動作するペン先スイッチ(SW)41、並びに座標入力ペン4の筐体に設けられた複数のペンサイドスイッチ(SW)42_a、42_bを具備する。
【0033】
座標入力ペン4のペン先SW41、または複数のペンサイドSW_a、42_bのいずれかがON状態になると、所定の周期で超音波信号と光信号の両者が放射されることになる。光信号は、超音波を放射するタイミングと同期した信号であり、超音波放射タイミングを光検出センサ5を介して演算制御回路1が検知して、後述の方法により、振動発生源である座標入力ペン4の位置座標を算出する。一方、光信号には座標入力ペンの状態(例えば、どのスイッチがON状態となっているか、あるいはペンを識別するためのコード等)を示す信号が重畳されて出力されている。
【0034】
その情報を伝送する方法は、例えば、連続するパルス列からなるリーダ部と、これに続くコード(メーカーIDなど)とからなるへッダ部をまず出力し、その後、ペンIDや制御信号などからなる送信データ列が予め定義された順序と形式に従って、その情報を順次出力する。この方法はよく知られた方法(例えば、赤外線を利用したリモコン等)であり、ここでの詳述は省略する。
【0035】
次に、座標入力ペン4の動作モード及び各種動作について、図3A、図3Bを用いて説明する。
【0036】
図3Aは本発明の実施形態1の座標入力ペンの動作モードを示す図であり、図3Bは本発明の実施形態1の座標入力ペンの動作を示すフローチャートである。
【0037】
まず、ステップS402で、ペン先SW41がON状態であるか否かを判定する。ペン先SW41がON状態とは、座標入力面であるディスプレイ6上に座標入力ペン4が位置し、操作者によってまさに座標入力が行われ、筆跡を入力しようとする状態(ペンダウン状態)である。また、例えば、ペン先SW41を2回動作させることで、座標入力装置の座標サンプリングレートを参照しながら信号を受信した時間、間隔、あるいは座標を算出しているタイミング等を監視することで、マウスのダブルクリック動作を認識するように構成されている。
【0038】
この時、画面上に表示された筆跡は、操作者による筆記動作に対して忠実に行われなければ、操作者は座標入力装置の座標算出精度が十分でないと認知し、その性能を疑うことになる。つまり、座標算出精度は十分な精度が要求される状態である。従って、実施形態1においては、ペン先SW41がON状態である場合(ステップS402でYES)、ステップS406に進み、より座標を高精度に算出することが可能な座標演算方法2により座標を算出し、忠実に操作者の筆跡を再現できるように構成されている。
【0039】
一方、ステップS402において、ペン先SW41がON状態でない場合、つまり、OFF状態である場合(ステップS402でNO)、ステップS403に進む。
【0040】
ステップS403〜S405では、ペンサイドSW_a、42_bの状態を判別する。実施形態1においては、座標入力ペン4にはペンサイドスイッチ42_a、42_bの2個のサイドスイッチが具備されており、少なくともどちらか一方がON状態にあれば、ペンアップ状態、その両者がON状態となっていればペンダウン状態として動作するように構成されている。
【0041】
このように、ペン先SW41がOFF状態、かつ少なくともどちらかのペンサイドSW42_a、42_bが動作状態となる具体的想定使用例は、操作者が座標入力面であるところのディスプレイ6から離れた位置で、画面を制御しようとしている場合であって、例えば、離れた位置でカーソルを所望の位置に移動したり、筆跡を入力しようとする場合である。
【0042】
つまり、少なくとも一方のペンサイドSW42_a、42_bが動作している場合は、操作者は画面上に示されているカーソルを移動することができ、その両者が動作している場合には、カーソルの移動を筆跡として残すことができるような状態を実現することができる。また、座標入力装置が座標を算出する際に、ペンの状態(ペンアップ、ペンダウン)を情報として同時に出力することができるように構成しているので、その情報を基にパーソナルコンピュータ等の外部機器に格納されている制御ソフト、あるいはアプリケーションソフト等によって、所望の動作を実現することができるのである。
【0043】
また、『少なくとも一方のペンサイドスイッチ』、あるいは『両者のペンサイドスイッチ』と言うことでその状態を区別した意図は、利き腕を考慮した結果である。つまり、図2に示すように、実施形態1の座標入力ペンのサイドSW42_a、42_bは、座標入力ペン4の対称軸に対称に、しかも隣接するように配置してあるので、右利き、左利きの区別無く、同一の動作で同一の効果が得られるように構成しいている。ペンサイドスイッチの他の実施形態としては、2段スイッチ、つまり、スイッチのキートップを押圧することで1段目のスイッチが動作し、さらに押圧することによって2段目のスイッチが動作するスイッチを用いることによって、同様の効果も得られる。
【0044】
先に述べたように、ペン先SW41がOFF状態、かつ少なくともどちらかのペンサイドSW42_a、42_bが動作状態となる状態は、操作者が座標入力面であるところのディスプレイ6から離れた位置で、画面を制御しようとしている場合であって、その場合における座標入力装置の座標算出精度は高精度であることを必要としない。その理由は、座標入力ペン4のペン先と表示位置は離れているので、操作者は指示しようとした位置と実際に表示された位置がそこそこにあっていれば、操作者は『指示した位置がそもそも不正確だった』のか、『指示した位置は正確なのに座標入力装置の座標算出精度が悪くて所定の位置を指示できない』のか区別することができない。
【0045】
操作者はむしろ指示したと言う動作の結果、ディスプレイ6上に表示されたカーソル位置を見ながら、そのカーソルを所望の位置に動かすために指示位置から相対的な位置の移動を行って、目的を達成するのである。つまり、比較的性能の低い座標算出性能であっても、人間は違和感無く道具として使いこなすことができるのでる。この例では、現在の会議等に使われているレーザポインタの例をみても理解できる。
【0046】
つまり、レーザポインタを使って遠くの所定点を指示する場合、まず最初のレーザ発射時(1点目)においては、とんでもない位置を指示することが良く見られる。人間はこのレーザの照射位置を視認して、相対的にレーザポインタを操作することによって、所望の位置にレーザの照射位置を移動するである。これは、視認、修正という行為を、違和感無く行うことが可能であり、『ちゃんと指示しているのに照射位置がおかしい(レーザが壊れている)』と感じるのでなく、修正作業により人間の能力(こっちの方角だと思って指し示す能力)の不備を補間しているのである。従って、このような遠隔操作における指示動作と言う観点では、どんなに座標入力装置の座標算出性能が高くても意味が無い。もちろん遠隔操作における高精度な座標算出であっても、操作上の弊害は発生しないが、『遠隔操作ではそれほどの座標算出精度を要求しない』という観点で、実施形態1の座標入力装置の座標算出原理において固有の効果が期待できる。尚、その効果の詳細については、後述する。
【0047】
図3Bの説明に戻る。
【0048】
まず、ステップS403で、ペンサイドSW42_aがON状態であるか否かを判定する。ON状態である場合(ステップS403でYES)、ステップS405に進む。一方、ペンサイドSW42_aがON状態でない場合(ステップS403でNO)、ステップS404に進み、ペンサイドSW42_bがON状態であるか否かを判定する。ペンサイドSW42_bがON状態でない場合(ステップS404でNO)、処理を終了する。一方、ペンサイドSW42_bがON状態である場合(ステップS404でYES)、ステップS408に進む。
【0049】
ステップS408で、上述した座標演算方法2より簡略化された座標演算方法1により、検出した座標値とペンアップ/ダウンの状態を出力する。
【0050】
以上、座標入力装置として、画面上を直接タッチして座標を入力して筆跡を追記したり、あるいはパーソナルコンピュータを制御する場合と、それと同様に画面から離れた地点で同様な操作を行うための遠隔操作について、座標入力ペン4に具備されている各種スイッチの割り付け、及びそのスイッチのいずれかが動作することで、定期的に音波が放射され、同時に前述音波の放射と同期した信号、並びにペンの状態(ペンアップ/ダウン、ペンのID番号等)を伝送する光信号が放射される。
【0051】
次に、放射された音波、光波による信号処理、並びに座標算出原理について説明を加える。
【0052】
駆動回路44は、所定周期毎(例えば、10msec毎、その場合、1秒間あたりに音波を100回放射するので、本座標入力装置の座標出力サンプリングレートは、100回/秒となる)に、座標入力ペン4内の振動発生源43を駆動させる信号を出力し、空中に音波を放射することになる。この音波は、振動発生源43と各検出センサ3_Sa〜Sd迄の距離に各々応じて遅延し、到達、検出されることになる。
【0053】
この種の座標入力装置は、座標入力ペン4の振動発生源43と各検出センサ3_Sa〜Sd間の距離を、音波の既知の音速と、その到達時間の積により各々導出し、各検出センサ3_Sa〜Sdの位置情報を用いて幾何学的に振動発生源43の位置情報を得ることを基本としたシステムである。
【0054】
そこで、この音波の到達時間を検出する到達時間検出方法について、図4、図5を用いて説明する。
【0055】
図4は本発明の実施形態1の音波の到達時間検出方法を説明するためのタイミングチャートであり、図5は本発明の実施形態1の音波の到達時間検出を実現する検出回路のブロック図である。
【0056】
101は駆動回路45が振動発生源43を駆動する駆動信号であり、それと同期して赤外LED44から上述の超音波発生のタイミング情報を伝送するためのスタート信号が光信号として放射される。この光信号は、光検出センサ5を介して検出され、周波数検波回路210、制御信号検出回路211を介して、超音波発生のタイミング、あるいはペンの状態(例えば、ペンアップ/ペンダウン等)を演算制御回路1に送信し、演算制御回路1内のタイマ303(図6参照)をスタートさせる。
【0057】
一方、空中に放射された音波は、振動発生源43と検出センサ3_Sa〜Sd間の距離に応じて遅延し、各検出センサ3_Sa〜Sdで検出されることになる。102は、前置増幅回路201で所定レベルまで増幅された検出センサ3_Sa〜Sdで検出された検出信号を示す。この信号を、絶対値回路及び低域通過フィルタ等により構成されるエンベロープ検出回路203で処理を行い、検出信号のエンベロープ103を抽出する。
【0058】
このエンベロープ103に着目すると、このエンベロープ波形が伝播する音速は群速度Vgであり、このエンベロープ103の特異な点、例えば、エンベロープのピークやエンベロープの変曲点を検出して、tg信号検出回路207により生成される信号107により、前述カウント動作を継続しているタイマ303をストップさせれば、群速度Vgに関わる遅延時間tgが得られる(第1遅延時間検出手段)。
【0059】
エンベロープ103のピークあるいは変曲点を検出するエンベロープ特異点検出回路206は、微分回路、ゼロクロスコンパレータを用いて容易に検出が可能であり、実施形態1では2階微分することによって信号106を形成し、閾値レベル104とエンベロープ103で比較されたゲート信号を参照してエンベロープ103の変曲点を検出する(信号107)。
【0060】
尚、厳密に言えば、この検出された群遅延時間tgには、波形処理に関わる回路の遅延時間分等が含まれるが、後述する方法により、その影響は完全に除去されるので、ここでは説明を簡略化するために、回路遅延時間は無いものとして説明を加える。
【0061】
以上のことから、この群遅延時間tgにより、振動発生源43と検出センサ3_Sa〜Sd間の距離Lは次式で求めることができる。
【0062】
L=Vg×tg (1)
そして、座標入力ペン4から各々の検出センサ3_Sa〜Sdまでの距離を各々(1)式により求めれば、後述する方法によって、座標入力ペン4の位置座標を検出することが可能となる(座標演算方法1)。
【0063】
一方、座標演算方法1より高精度な距離検出可能とする座標演算方法2は、検出信号波形の位相情報と第1遅延時間検出手段の出力結果の両者より、座標入力ペン4の位置情報を導出する。
【0064】
その詳細について説明すれば、検出センサ3_Sa〜Sdの検出信号102は、帯域通過フィルタ208により余分な周波数成分を除いた後、tp信号検出回路209に入力される。tp信号検出回路209は、ゼロクロスコンパレータ、マルチバイブレータ等で構成され、帯域通過フィルタ208によって出力された検出信号108のゼロクロス点に関わる信号109を生成する。さらに前述所定の閾値レベル104と比較するゲート信号発生回路205が生成するゲート信号105と比較し、ゲート信号105の期間内において、帯域通過フィルタ208で出力される信号波形の位相が、例えば、負側から正側にクロスする最初のゼロクロス点を出力する信号110を生成する。
【0065】
同様にして、この信号110を用いて前述したスタート信号により動作しているタイマ303をストップさせれば、位相速度Vpに関わる位相遅延時間tpを検出することが可能である。
【0066】
尚、厳密に言えば、この検出された位相延時間tpには、波形処理に関わる回路の遅延時間分等が含まれるが、後述する方法により、その影響は完全に除去されるので、ここでは説明を簡略化するために、回路遅延時間は無いものとして説明を加える。
【0067】
以上のことから、この位相遅延時間tpにより、振動発生源43と検出センサ3_Sa〜Sd間の距離Lは次式で求めることができる。
L=Vp×tp+n×λp (2)
ここで、λpは音波の波長、nは整数である。(2)式、右辺第2項(n×λp)の持つ意味は、仮に音波の検出レベルが小さくなった場合には、それに応じてエンベロープ信号のレベルも低下することになるので、このエンベロープ103と閾値レベル104とを比較して生成されるゲート信号105のゲート信号発生期間は、例えば、信号111のようになる。
【0068】
つまり、ゲート信号発生期間は、検出信号102の信号レベルに依存することになる。信号レベルが変化する一番の要因は、振動発生源43と検出センサ3_Sa〜Sd間の距離であり、その信号レベルは距離に応じて指数関数的に減少することが良く知られている。
【0069】
従って、本来、信号110によって位相遅延時間tpを検出すべきなのに、信号レベルが低くなった結果、ゲート信号の発生期間が変化し、信号112により位相遅延時間tpが検出されることが起こりえる。
【0070】
図4において、信号110と信号112の時間差は、検出信号108の1周期分に相当するので、距離に換算すれば音波の波長と言うことになる。つまり、位相遅延時間tp、位相速度Vpにより導出される距離Lは、信号レベルに応じて波長の整数倍の誤差を含むことになるので、式(2)の右辺第二項はその補正項となる。
【0071】
一方、式(1)、式(2)で各々導出される距離Lは、本来、同じ値となるべきものである。従って、式(1)、式(2)を連立させれば、整数nは次式で求めることができる。
【0072】
n=int[(Vg・tg−Vp・tp)/λp+1/2] (3)
式(3)において、整数化を実行しているのは、群遅延時間tgに基づく距離演算は、位相遅延時間tpに基づく距離演算に比べ、その性能が劣化するので、この差分を吸収するためである。仮に、位相遅延時間tpに基づく距離演算に誤差が無いものと仮定すれば、群遅延時間tgに基づく距離演算に半波長以下の誤差が含まれても、式(3)による整数nの演算は正確に行われるので、式(2)による正確な距離導出が可能となる。
【0073】
換言すれば、群遅延時間tgに基づく距離計算で、半波長以上の誤差が含まれると、式(3)による整数nの導出に誤りが含まれ、大幅な距離測定精度の劣化が起こる(正確な距離導出を行っている状態で、何らかの要因で整数nを突然間違えると、波長分の誤差が突然発生する)。
【0074】
本発明は、この点を鑑み成されたものであり、信頼性を向上させる効果を期待できるものである。実施形態1において、具体的に想定される座標算出可能領域について述べれば、直接画面をタッチすることで操作する用途では、その座標入力範囲は画面の大きさに限定される。例えば、画面サイズが16:9の対角70インチであって、検出センサ3_Sa〜Sdを図1に示すがごとく、表示画面の4隅近傍に配置すれば、座標入力ペン4と検出センサ検出センサ3_Sa〜Sdの最大距離は、画面の対角線+αの距離であって、高々1800mm程度に過ぎない。
【0075】
ところが、遠隔操作を考慮した場合には、その画面の大きさに対する最適視覚距離を鑑みても画面から約5000mm程度離れた距離でも、座標入力することが可能となる仕様が好ましい。
【0076】
つまり、遠隔操作の仕様を考慮した3次元入力可能な座標入力装置の座標検出可能距離は、飛躍的に大きくなるのである。一般的に音波の音速は一定であるという前提で本座標入力装置は構成されているが、距離の範囲が大きくなると、以下の様な距離測定誤差要因が発生する。
【0077】
1)波の信号レベルは距離と共に指数関数的減少し、ノイズの影響を受けやすくなる
2)距離増大に応じて信号波形のエンベロープが滑らかになる(エンベロープ波形の変形による非線形性)
従って、距離増大要因により、前述した『式(1)による群遅延時間tgに基づく距離演算が半波長以下』という必要条件が満足できずに、式(3)による整数nに誤差を含み、結果として式(2)右辺第2項に波長の整数倍の誤差を含む確率が高くなるので、距離測定精度を大幅に劣化させる要因となる。
【0078】
ここで、再度、式(1)による距離演算と、式(2)による距離演算の特徴をまとめれば、式(1)による距離演算は、アナログ処理によるエンベロープの抽出により遅延時間を検出しているので、距離算出精度は高精度とは言えない。しかしながらその誤差の発生の仕方は、測定距離に対して連続的である。
【0079】
一方、式(2)により距離演算は、整数nを正確に求めることができれば非常に高精度であるが、整数nを間違えたとたんにその測定誤差は、不連続的に発生することになる。
【0080】
この現象を使用者の立場にたって考えてみると、画面を直接座標入力ペン4でタッチして、その筆跡をディスプレイ6上に表示しようとする場合、式(1)に基づく距離算出から座標入力ペン4の位置を導出すれば、座標算出性能が高精度と言えないので、実際に座標入力ペン4で指示した位置とは離れたところに筆跡が残る。このため、操作者は性能が悪く、操作性の低い座標入力装置と認知するだろう。しかしながら、式(2)に基づく座標算出は高精度なので、性能が良く、操作性に優れた座標入力装置として認知されることになる。
【0081】
一方、画面から離れた位置で同様の操作をする場合、前述した通り、操作者は指示位置が間違っているのか、あるいは指示位置があっているのにも関わらず座標入力装置の性能が悪くて異なる地点に筆跡が残るのかを判定できない。むしろ表示されたカーソルの位置を視認しながら、それをフィードバックして操作者による補間作業により目的を達成するので、式(1)による座標算出方法であっても何ら障害を認知することが無いのである。
【0082】
一方、式(2)による座標演算方法では、遠隔操作による測定距離が大幅に伸びているので、整数nを誤検出する可能性、またその確率が距離増大と共に増大することになる。正常に整数nを検出している時に、たまたま整数nを誤検出したデータが含まれると、その地点で操作者が筆記した筆跡に不連続な筆跡が残ることになる(図8参照)。これは、明らかに操作者に視認されることになるので、座標入力装置の信頼性を大幅に低下させる原因となる。
【0083】
本発明は、この点を鑑みてなされたものであり、遠隔操作の場合には、たとえ誤差を含んだ座標検出方法であっても、誤差の発生の仕方が連続的に発生する座標検出方法を採用し、操作者の筆跡が滑らかに、連続的になるように構成したものである。一方、画面を直接タッチして筆跡を残す場合には、より高精度な座標検出方法を採用することにより、指示した位置と筆跡の位置を一致させることで、操作性の良い座標入力装置を実現したものである。
【0084】
このように、本発明は、この3次元座標検出可能な座標入力装置の具体的使用例を鑑みてなされたものであり、操作者にとって信頼性の高い座標入力装置を提供するものである。
【0085】
次に、実施形態1の演算制御回路1の概略構成について、図6を用いて説明する。
【0086】
図6は本発明の実施形態1の演算制御回路の概略構成を示すブロック図である。
【0087】
尚、図6では説明を簡略化するために、複数ある検出センサ3_Sa〜Sdのその1つについて、その構成要素及びその動作概略について説明する。
【0088】
301は、演算制御回路1及び本座標入力装置全体を制御するマイクロコンピュータであり、内部カウンタ、操作手順を記憶したROM、そして計算等に使用するRAM、定数等を記憶する不揮発性メモリ等によって構成されている。
【0089】
前述した通り、駆動回路45により座標入力ペン4内の振動発生源43の駆動タイミングと同期したスタート信号が、制御信号検出回路211より入力されると、演算制御回路1内のタイマ303(例えば、カウンタなどにより構成されている)をスタートさせる。
【0090】
このように構成することで、座標入力ペン4内の振動発生源43を駆動する駆動タイミングと、演算制御回路1内の例えばタイマとの同期が得られるので、振動発生源43で発生した音波が、振動発生源43から各検出センサ3_Sa〜Sdに各々達するのに要する時間を測定することが可能となる。
【0091】
信号波形検出回路2より出力される検出センサ3_Sa〜Sdよりの振動到達タイミング信号(信号107及び信号110)は、検出信号入力ポート306を介してラッチ回路304_a、304_bに各々入力される。ラッチ回路304_a、304_bは、対応するタイミング信号を受信すると、その時のタイマ303の計時値をラッチする。
【0092】
このようにして、座標検出に必要な全ての検出信号の受信がなされたことを判定回路305が判定すると、マイクロコンピュータ301にその旨の信号を出力する。マイクロコンピュータ301が、この判定回路305からの信号を受信すると、ラッチ回路304_a、304_bから各々の検出センサ3_Sa〜Sdまでの振動到達時間をラッチ回路304_a、304_bより読み取り、所定の計算を行なって、座標入力ペン4の座標位置を算出する。
【0093】
その算出結果を、I/Oポート307を介してディスプレイ駆動回路7に出力し、ディスプレイ6の対応する位置に、例えば,ドット等を表示することができる。また,I/Oポート307を介しインターフェース回路に、座標位置情報、あるいはペンの状態信号(ペンアップ/ダウン、ペンID等)を出力することによって、外部機器に座標値、あるいは制御信号を出力することができるように構成している。
【0094】
以上説明した実施形態1において、検出された時間には、振動発生源43と各検出センサ_Sa〜Sdまで音波が到達する時間に加えて、回路等による電気的な処理時間も含まれる。従って、ここでは、音波が伝播する時間以外に余分に計測される時間を除去する方法について説明する。
【0095】
ラッチ回路304_a、304_bによってラッチされた群遅延時間tg、もしくは位相遅延時間tpには、各々群回路遅延時間etg、位相回路遅延時間etpを含む。この回路遅延時間は、時間計測毎に同一の値を必ず含む。
【0096】
そこで、ある計測回路によって、振動発生源43と検出センサ3_Sa〜Sd間を伝播する際に計測された時間をt*、その計測回路における回路遅延時間をe、実際に音波が振動発生源43と検出センサ3_Sa〜Sd間を伝播したのに要した時間をtとすれば、
t*=t+e (4)
となる。
【0097】
一方、振動発生源43と検出センサ3_Sa〜Sd間の距離が既知の距離Liniにおける時間計測値をtini*とし、その計測回路における回路遅延時間をe、実際に音波が伝播した時間をtiniとすれば
tini*=tini+e (5)
となる。よって
t*−tini*=t−tini (6)
となる。ここで、音波の音速をVとすれば、
となる。
【0098】
よって、求めるべき任意の振動発生源43と検出センサ3間の距離Lは、
L=V×t=V×(t*−tini*)+Lini (8)となる。
【0099】
上記、既知の距離Lini、及びその距離における時間計測値tini*を、出荷時やリセット時に演算制御回路1の不揮発性メモリ等の記憶媒体に記憶することによって、任意の距離における振動発生源43と検出センサ3間の距離を精度良く算出することが可能となる。
【0100】
次に、図7に示すような座標系に検出センサ3_Sa〜Sdが配置された場合、振動発生源43の位置座標(X,Y,Z)を求める方法について説明する。
【0101】
上記の方法により正確に求められた振動発生源43と各検出センサ3_Sa〜Sdまでの距離を各々La〜Ld、X方向の検出センサ間距離をXs−s、Y方向の検出センサ間距離をYs−sとすれば、
【0102】
となる。同様にして、
【0103】
となる。
【0104】
以上示したように、振動発生源43と少なくとも3個の検出センサ3までの距離が測定できれば、容易に振動発生源43の位置(空間)座標を求めることが可能となる。本発明では、検出センサを4個用いており、例えば、距離が最も遠い情報を使わず(この場合、検出センサ3で出力される信号は、距離が遠いために信号レベルが最も小さくなっている)、残り3個の距離情報のみで、座標を算出することで、信頼性の高い座標算出を可能としている。
【0105】
また、この距離が遠いセンサの距離情報を活用することで、出力された座標値の信頼性が高いものか判定することも可能である。
【0106】
具体的な方法としては、例えば、距離情報La、Lb、Lcで算出された座標値と、距離情報Lb、Lc、Ldで算出された座標値は同一の値を出力するはずであり(距離情報の組み合わせを変更して演算する)、両者が一致しない場合には、いずれかの距離情報が不正、つまり、誤検出したことになるので、その場合には、座標値を出力しないといった信頼性を向上させる構成も実施可能となる。
【0107】
以上説明したように、実施形態1によれば、座標入力ペン4が有するスイッチの押下状態に基づいて、その押下状態に最適な座標演算方法による座標値を出力することができる。
【0108】
<実施形態2>
実施形態1では、直接画面をタッチして行う場合と画面から離れた個所で遠隔操作による操作を想定し、直接入力する場合にはより高精度な演算方法で、遠隔操作の場合には誤差の発生の仕方が不連続とならないような演算方法で座標を算出する構成について説明した。これに対し、実施形態2では、この遠隔操作をさらに操作性の良い座標入力装置として実現する構成について説明する。
【0109】
上述したように、遠隔操作における表示画面と操作位置が離れている場合には、高精度な座標算出精度を必要としないが、遠隔操作の場合であっても、比較的表示画面に近い遠隔操作を想定する。
【0110】
具体的には、画面を直接タッチして操作する場合でなくても、画面に近い、或いはほぼ近接した領域で操作する場合を想定する。この場合。操作者は、座標入力ペン4が画面に近くなれば近いほど、座標入力ペン4の指示位置と、例えば、カーソル位置の誤差を認知できるようになるので、両者間の距離が小さいほど座標算出精度は高精度であることが好ましい形態である。両者間の距離が小さい場合の操作を『近接入力』と定義すれば、実施形態2の座標入力ペン4の動作モード及び各種動作について、図9A、図9Bを用いて説明する。
【0111】
図9Aは本発明の実施形態2の座標入力ペンの動作モードを示す図であり、図9Bは本発明の実施形態2の座標入力ペンの動作を示すフローチャートである。
【0112】
ペン入力の場合は、ペン先SW41が座標入力面であるところの画面に押圧されて動作する点、近接入力及び遠隔入力の場合、ペンサイドSW_a、42_bの少なくとも一方が押圧された場合にはペンアップ状態で、その両者が押圧された場合にはペンダウン状態で作用することは実施形態1と同様である。
【0113】
しかしながら、実施形態2では、座標入力ペン4のスイッチ情報により座標演算モードを決定するのでなく、いずれの場合も、ステップS502で、必要な情報が全て得られたかを判定する。つまり、有効信号が検出されたか否かを判定する。有効信号が検出されない場合(ステップS502でNO)、処理を終了する。一方、有効信号が検出された場合(ステップS502でYES)、ステップS503に進む。
【0114】
次に、ステップS503で、まず、座標演算方法1により、座標値(X,Y,Z)を演算する。演算されたZ座標値は、図7の説明でも明らかなように、表示面と座標入力ペン4の距離に関するパラメータとなっているので、このZ座標値がほぼ『0』となる状態は、ペン先SW41が動作してペン入力を行っている状態と判定できる。一方、Z座標値が十分大きければ、遠隔操作の状態であると判定できる。また、Z座標値が所定値以下であれば、座標入力ペン4は比較的表示面に近い位置に位置していると判定できるので、近接入力状態にあると判定できる。
【0115】
従って、まず、ステップS504で、Z座標値が第1所定値以上であるか否かを判定する。Z座標値が第1所定値以上である場合(ステップS504でYES)、ステップS507に進み、そのまま座標演算方法1による演算結果を出力するように動作する。一方、Z座標値が第1所定値未満である場合(ステップS504でNO)、ステップS505に進む。
【0116】
ステップS505で、Z座標値が第2所定値以下であるか否かを判定する。Z座標値が第2所定値以下である場合(ステップS505でNO)、処理を終了する。一方、Z座標値が第2所定値より大きい場合(ステップS505でYES)、ステップS506に進み、より高精度な座標演算を可能とする座標演算方法2による演算結果を出力するように動作する。
【0117】
尚、ステップS504における第1所定値(座標算出値)と、ステップS505の第2所定値を、例えば、図9Aに示すように異なる値に設定した場合には、両者の所定値の間の値が検出されると、いずれの座標値も出力しないように構成される。
【0118】
また、両者の値が同一である場合には、例えば、連続入力されている最初の1点目のみのZ座標値を判定基準として採用することが好ましい形態といえる。つまり、連続して座標入力が実行されている際に、座標演算方法が異なる出力結果を混在で出力すると、両者の誤差の程度によって筆跡の不連続点が発生する可能性があり、それを防止することを目的とする。
【0119】
以上説明したように、実施形態2によれば、『ペン入力』、『近接入力』、『遠隔入力』が想定される環境において、各入力状態に応じて、最適な座標演算方法による座標値を出力することができる。
【0120】
<実施形態3>
実施形態3では、実施形態1の図8で説明した、整数nを誤検出した場合であっても、整数nを補正して、正しい座標値を出力する構成について説明する。
【0121】
図10は本発明の実施形態3の座標値補正動作を示すフローチャートである。
【0122】
まず、ステップS402で、式(2)を用いる座標演算方法は、図3Bでも説明した通り、直接入力面であるところの表示面をタッチして、ペン先SW41がON状態となっている時である。
【0123】
そのとき、上述した手順により、まず、ステップS403で、式(3)により整数nを算出する。座標演算に必要は全ての距離情報を得るために、各々の3_Sa〜Sdで同様の演算を行うが、ここでは、説明を簡略化するために、1つの検出センサについて説明するを加える。
【0124】
ステップS404で、整数nを算出した後、式(2)により、振動発生源43と検出センサ3までの距離を算出する。ステップS405で、その算出した距離情報に基づいて、上述のようにして、座標値(X,Y,Z)を算出する。
【0125】
ここで、ペン先SW41が動作して表示面を押圧することで座標演算が行われているのであるから、算出したZ座標値はほぼ『0』にならなければならない。逆に言えば、何らかの障害により整数nが不正に計算された場合には、計算されるZ座標値は『0』とはならない。
【0126】
そこで、ステップS406で、Z座標値がほぼ『0』(Z≒0)であるか否かを判定する。Z座標値がほぼ『0』でない場合(ステップS406でNO)、ステップS407に進み、先に算出された整数nに1加算した、あるいは減算した値を新たな整数nとして、ステップS404、ステップS405にて、再度、座標値(X,Y,Z)を算出する。そして、再度、ステップS406にて、算出したZ座標値の新欄性を判定する。このループを繰り返すことによって、真の座標値を確定することができる。
【0127】
一方、Z座標値がほぼ『0』である場合(ステップS406でYES)、ステップS408に進み、座標値(X,Y)を出力する。ここで、『ほぼ』と言う表現を用いているが、これは計算上の丸め誤差、あるいは測定誤差等により『Z=0』と厳密にはならないことを想定したものである。そして、ほぼ『0』であるか否かの判定は、例えば、閾値(例えば、閾値0.1とし、その値以下であれば、ほぼ『0』とみなす)を用いて判定する方法、あるいは上述した計算ループを繰り返した際に、最もZ座標値が『0』に近くなる状態を判別することで、最適な整数nを決定することができる。
【0128】
先にも説明したように、図4の信号110と信号112の関係は、検出信号108の位相周期に相当するのであって、整数n(パラメータ)に1を加減算することは、この周期分の補正を実行することと同等である。『ペン先SW41が動作している』ということは、『Z≒0』でなければならないということであり、『Z≒0』とならないのは整数nのカウントを間違えているからで、真の整数nを算出するということは、換言すれば、正確な座標値を算出するということと等価である。
【0129】
以上の説明は、不正な座標値を検出したことを検知して、それを補正して正しい座標値を出力するように構成するものであるが、その誤検出は偶発的な要因によって引き起こされる確率が高いので、例えば、誤検出を検知した場合には、その座標値を出力せず、新規に遅延時間を測定して座標値を算出しても良いことは言うまでもない。
【0130】
以上説明したように、実施形態3によれば、電気的ノイズあるいは装置が設置されている環境等から発生する音響的ノイズ等により、整数nを誤検出して、結果的に座標算出精度が低下させる可能性がある場合に、その整数nを用いて座標を算出するのは、操作者が直接画面上をタッチして行う場合にだけに限定し、その場合は『ペン先SW41が動作している』状態であり、かつZ座標値が『Z≒0』(Z=0を含む所定範囲内)でなければならないという状態であることを利用して、座標の誤検出を検出することができる。
【0131】
<実施形態4>
実施形態1〜3では、音波の放射を利用した3次元座標入力可能な座標入力装置について説明したが、座標算出方式によって本願発明が限定されるものではない。例えば、表示画面上のXY平面のみの座標を検知することができる座標入力装置と、空間の位置座標を検知することができる座標入力装置を組み合わせて、本発明が想定する『ペン入力』、『近接入力』、『遠隔入力』を実現する装置にも適用が可能であり、その際の座標入力装置の座標算出原理は、両者で別個のものであっても良いし、同一のものであっても良い。
【0132】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。その場合、プログラムの機能を有していれば、形態は、プログラムである必要はない。
【0133】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0134】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0135】
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
【0136】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0137】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0138】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【0139】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【0140】
【発明の効果】
以上説明したように、本発明によれば、座標入力装置の操作状況に応じて好適な座標算出を可能とし、かつその信頼性及び操作性を改善することができる座標入力装置及びその制御方法、プログラムを提供できる。
【図面の簡単な説明】
【図1】本発明の実施形態1の3次元(空間)座標計測可能な座標入力装置の概略構成を示す図である。
【図2】本発明の実施形態1の座標入力ペンの構成を示す図である。
【図3A】本発明の実施形態1の座標入力ペンの動作モードを示す図である。
【図3B】本発明の実施形態1の座標入力ペンの動作を示すフローチャートである。
【図4】本発明の実施形態1の音波の到達時間検出方法を説明するためのタイミングチャートである。
【図5】本発明の実施形態1の音波の到達時間検出を実現する検出回路のブロック図である。
【図6】本発明の実施形態1の演算制御回路の概略構成を示すブロック図である。
【図7】本発明の実施形態1の座標系を説明するための図である。
【図8】本発明の実施形態1の座標演算方法による性能を説明するための図である。
【図9A】本発明の実施形態2の座標入力ペンの動作モードを示す図である。
【図9B】本発明の実施形態2の座標入力ペンの動作を示すフローチャートである。
【図10】本発明の実施形態3の座標値補正動作を示すフローチャートである。
【符号の説明】
1 演算制御回路
2 信号波形検出回路
3 検出センサ
4 座標入力ペン
5 光検出センサ5
6 ディスプレイ
41 ペン先スイッチ
42_a、42_b ペンサイドスイッチ
43 振動発生源
44 赤外LED
45 駆動回路
201 前置増幅回路
203 エンベロープ検出回路
205 ゲート信号発生回路
206 エンベロープ特異点検出回路
207 tg信号検出回路
209 tp信号検出回路
210 周波数検波回路
211 制御信号検出回路
Claims (16)
- 表示画面上にXY平面及び該表示画面に対してZ軸を形成する3次元空間において、指示具が指示する位置座標を算出する座標入力装置であって、
第1座標演算方法で座標を算出する第1座標演算手段と
第2座標演算方法で座標を算出する第2座標演算手段と、
前記第1及び第2座標演算手段のどちらかを選択する選択手段と
前記選択手段で選択された座標演算手段を用いて、前記指示具の位置座標を出力する出力手段と
を備えることを特徴とする座標入力装置。 - 前記選択手段は、前記指示具が有するスイッチの押下状態に基づいて、前記第1及び第2演算手段のどちらかを選択する
ことを特徴とする請求項1に記載の座標入力装置。 - 前記選択手段は、前記第1座標演算手段で算出される座標値に基づいて、前記第1及び第2演算手段のどちらかを選択する
ことを特徴とする請求項1に記載の座標入力装置。 - 前記第2座標演算手段で算出されたZ座標値が所定範囲内にあるか否かを判定する判定手段と、
前記判定手段の判定結果に基づいて、前記第2座標演算手段で用いるパラメータを変更して、再度、該第2座標演算手段による演算を実行する実行手段と
を更に備えることを特徴とする請求項1に記載の座標入力装置。 - 指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置であって、
前記検出部が検出する信号のエンベロープを検出する検出手段と、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第1時間検出手段と、
前記第1時間検出手段の検出結果に基づいて、ゲート信号を生成するゲート信号生成手段と、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第2時間検出手段と、
前記第1時間検出手段の検出結果に基づいて、前記指示具の位置座標を算出する第1座標算出手段と、
前記第1及び第2時間検出手段のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第2座標算出手段と、
前記第1及び第2座標算出手段のどちらかを選択する選択手段と、
前記選択手段で選択された座標算出手段による算出結果を、前記指示具の座標値として出力する出力手段と
を備えることを特徴とする座標入力装置。 - 前記選択手段は、前記指示具が有するスイッチの押下状態に基づいて、前記第1及び第2座標算出手段のどちらかを選択する
ことを特徴とする請求項5に記載の座標入力装置。 - 前記選択手段は、前記第1座標算出手段で算出された座標値に基づいて、前記第1及び第2座標算出手段のどちらかを選択する
ことを特徴とする請求項5に記載の座標入力装置。 - 表示画面上にXY平面及び該表示画面に対してZ軸を形成する3次元空間において、指示具が指示する位置座標を算出する座標入力装置の制御方法であって、
第1座標演算方法で座標を算出する第1座標演算工程と
第2座標演算方法で座標を算出する第2座標演算工程と、
前記第1及び第2座標演算工程のどちらかを選択する選択工程と
前記選択工程で選択された座標演算工程を用いて、前記指示具の位置座標を出力する出力工程と
を備えることを特徴とする座標入力装置の制御方法。 - 前記選択工程は、前記指示具が有するスイッチの押下状態に基づいて、前記第1及び第2演算工程のどちらかを選択する
ことを特徴とする請求項8に記載の座標入力装置。 - 前記選択工程は、前記第1座標演算工程で算出される座標値に基づいて、前記第1及び第2演算工程のどちらかを選択する
ことを特徴とする請求項8に記載の座標入力装置の制御方法。 - 前記第2座標演算工程で算出されたZ座標値が所定範囲内にあるか否かを判定する判定工程と、
前記判定工程の判定結果に基づいて、前記第2座標演算工程で用いるパラメータを変更して、再度、該第2座標演算工程による演算を実行する実行工程と
を更に備えることを特徴とする請求項8に記載の座標入力装置の制御方法。 - 指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置の制御方法であって、
前記検出部が検出する信号のエンベロープを検出する検出工程と、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第1時間検出工程と、
前記第1時間検出工程の検出結果に基づいて、ゲート信号を生成するゲート信号生成工程と、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第2時間検出工程と、
前記第1時間検出工程の検出結果に基づいて、前記指示具の位置座標を算出する第1座標算出工程と、
前記第1及び第2時間検出工程のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第2座標算出工程と、
前記第1及び第2座標算出工程のどちらかを選択する選択工程と、
前記選択工程で選択された座標算出工程による算出結果を、前記指示具の座標値として出力する出力工程と
を備えることを特徴とする座標入力装置の制御方法。 - 前記選択工程は、前記指示具が有するスイッチの押下状態に基づいて、前記第1及び第2座標算出工程のどちらかを選択する
ことを特徴とする請求項12に記載の座標入力装置の制御方法。 - 前記選択工程は、前記第1座標算出工程で算出された座標値に基づいて、前記第1及び第2座標算出工程のどちらかを選択する
ことを特徴とする請求項12に記載の座標入力装置の制御方法。 - 表示画面上にXY平面及び該表示画面に対してZ軸を形成する3次元空間において、指示具が指示する位置座標を算出する座標入力装置の制御をコンピュータに機能させるためのプログラムであって、
第1座標演算方法で座標を算出する第1座標演算工程のプログラムコードと
第2座標演算方法で座標を算出する第2座標演算工程のプログラムコードと、前記第1及び第2座標演算工程のどちらかを選択する選択工程のプログラムコードと
前記選択工程で選択された演算工程を用いて、前記指示具の位置座標を出力する出力工程のプログラムコードと
を備えることを特徴とするプログラム。 - 指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置の制御をコンピュータに機能させるためのプログラムであって、
前記検出部が検出する信号のエンベロープを検出する検出工程のプログラムコードと、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第1時間検出工程のプログラムコードと、前記第1時間検出工程の検出結果に基づいて、ゲート信号を生成するゲート信号生成工程のプログラムコードと、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第2時間検出工程のプログラムコードと、
前記第1時間検出工程の検出結果に基づいて、前記指示具の位置座標を算出する第1座標算出工程のプログラムコードと、
前記第1及び第2時間検出工程のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第2座標算出工程のプログラムコードと、
前記第1及び第2座標算出工程のどちらかを選択する選択工程のプログラムコードと、
前記選択工程で選択された座標算出工程による算出結果を、前記指示具の座標値として出力する出力工程のプログラムコードと
を備えることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002221818A JP2004062656A (ja) | 2002-07-30 | 2002-07-30 | 座標入力装置及びその制御方法、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002221818A JP2004062656A (ja) | 2002-07-30 | 2002-07-30 | 座標入力装置及びその制御方法、プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004062656A true JP2004062656A (ja) | 2004-02-26 |
Family
ID=31942028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002221818A Withdrawn JP2004062656A (ja) | 2002-07-30 | 2002-07-30 | 座標入力装置及びその制御方法、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004062656A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009523335A (ja) * | 2006-01-13 | 2009-06-18 | スマート テクノロジーズ ユーエルシー | 対話型入力システム |
JP2010134912A (ja) * | 2008-10-31 | 2010-06-17 | Sony Corp | 入力装置および方法、並びにプログラム |
-
2002
- 2002-07-30 JP JP2002221818A patent/JP2004062656A/ja not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009523335A (ja) * | 2006-01-13 | 2009-06-18 | スマート テクノロジーズ ユーエルシー | 対話型入力システム |
JP2010134912A (ja) * | 2008-10-31 | 2010-06-17 | Sony Corp | 入力装置および方法、並びにプログラム |
US8648798B2 (en) | 2008-10-31 | 2014-02-11 | Sony Corporation | Input device and method and program |
US9990056B2 (en) | 2008-10-31 | 2018-06-05 | Sony Corporation | Input device and method and program |
US10474250B2 (en) | 2008-10-31 | 2019-11-12 | Sony Corporation | Input device and method and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4590114B2 (ja) | 座標入力装置及びその制御方法、記録媒体 | |
JP4006290B2 (ja) | 座標入力装置、座標入力装置の制御方法、プログラム | |
JP3952896B2 (ja) | 座標入力装置及びその制御方法、プログラム | |
US7075514B2 (en) | Coordinate input apparatus, control method therefor, and computer-readable memory | |
JP5651358B2 (ja) | 座標入力装置及びプログラム | |
JP2004062656A (ja) | 座標入力装置及びその制御方法、プログラム | |
JP2002351605A (ja) | 座標入力装置 | |
JP4615178B2 (ja) | 情報入出力システム、プログラムおよび記憶媒体 | |
JP2004185488A (ja) | 座標入力装置 | |
KR101153977B1 (ko) | 휴대 단말기용 입력 시스템 | |
JP2004070496A (ja) | 座標入力装置、座標値処理方法 | |
JP4136584B2 (ja) | 座標入力装置及び座標値出力方法とプログラム | |
JP2004272636A (ja) | 検出座標値の処理方法、及び座標入力装置 | |
JP2003029917A (ja) | 座標入力装置 | |
JP2004192033A (ja) | 座標入力装置 | |
JP2002236545A (ja) | 座標入力装置及びその制御方法、コンピュータ可読メモリ | |
JP2004310351A (ja) | 座標入力装置 | |
JPH10149252A (ja) | ペン入力装置及び該装置における位置座標補正方法 | |
JP2004240634A (ja) | 座標入力装置 | |
JP2004192032A (ja) | 座標入力装置 | |
JP2004070575A (ja) | 座標入力装置、及び検出座標値の処理方法 | |
JP4847593B2 (ja) | 情報入出力装置、その制御方法、及びその制御プログラムを格納したコンピュータにより読み取り可能な記録媒体 | |
JP2004240633A (ja) | 座標入力装置 | |
JP2003216335A (ja) | 座標入力装置及びその制御方法、プログラム | |
CN112567319A (zh) | 一种信号输入的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20051004 |