(57)【要約】【課題】座標入力装置の操作状況に応じて好適な座標算出を可能とし、かつその信頼性及び操作性を改善することができる座標入力装置及びその制御方法、プログラムを提供する。【解決手段】第１座標演算方法で座標を算出する座標演算と、第２座標演算方法で座標を算出する第２座標演算のどちらかを選択し、その選択された座標演算を用いて、指示具の位置座標を出力する。【選択図】　図３Ｂ
2004062656.tif 000002
【特許請求の範囲】
【請求項１】
表示画面上にＸＹ平面及び該表示画面に対してＺ軸を形成する３次元空間において、指示具が指示する位置座標を算出する座標入力装置であって、
第１座標演算方法で座標を算出する第１座標演算手段と
第２座標演算方法で座標を算出する第２座標演算手段と、
前記第１及び第２座標演算手段のどちらかを選択する選択手段と
前記選択手段で選択された座標演算手段を用いて、前記指示具の位置座標を出力する出力手段と
を備えることを特徴とする座標入力装置。
【請求項２】
前記選択手段は、前記指示具が有するスイッチの押下状態に基づいて、前記第１及び第２演算手段のどちらかを選択する
ことを特徴とする請求項１に記載の座標入力装置。
【請求項３】
前記選択手段は、前記第１座標演算手段で算出される座標値に基づいて、前記第１及び第２演算手段のどちらかを選択する
ことを特徴とする請求項１に記載の座標入力装置。
【請求項４】
前記第２座標演算手段で算出されたＺ座標値が所定範囲内にあるか否かを判定する判定手段と、
前記判定手段の判定結果に基づいて、前記第２座標演算手段で用いるパラメータを変更して、再度、該第２座標演算手段による演算を実行する実行手段と
を更に備えることを特徴とする請求項１に記載の座標入力装置。
【請求項５】
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置であって、
前記検出部が検出する信号のエンベロープを検出する検出手段と、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第１時間検出手段と、
前記第１時間検出手段の検出結果に基づいて、ゲート信号を生成するゲート信号生成手段と、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第２時間検出手段と、
前記第１時間検出手段の検出結果に基づいて、前記指示具の位置座標を算出する第１座標算出手段と、
前記第１及び第２時間検出手段のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第２座標算出手段と、
前記第１及び第２座標算出手段のどちらかを選択する選択手段と、
前記選択手段で選択された座標算出手段による算出結果を、前記指示具の座標値として出力する出力手段と
を備えることを特徴とする座標入力装置。
【請求項６】
前記選択手段は、前記指示具が有するスイッチの押下状態に基づいて、前記第１及び第２座標算出手段のどちらかを選択する
ことを特徴とする請求項５に記載の座標入力装置。
【請求項７】
前記選択手段は、前記第１座標算出手段で算出された座標値に基づいて、前記第１及び第２座標算出手段のどちらかを選択する
ことを特徴とする請求項５に記載の座標入力装置。
【請求項８】
表示画面上にＸＹ平面及び該表示画面に対してＺ軸を形成する３次元空間において、指示具が指示する位置座標を算出する座標入力装置の制御方法であって、
第１座標演算方法で座標を算出する第１座標演算工程と
第２座標演算方法で座標を算出する第２座標演算工程と、
前記第１及び第２座標演算工程のどちらかを選択する選択工程と
前記選択工程で選択された座標演算工程を用いて、前記指示具の位置座標を出力する出力工程と
を備えることを特徴とする座標入力装置の制御方法。
【請求項９】
前記選択工程は、前記指示具が有するスイッチの押下状態に基づいて、前記第１及び第２演算工程のどちらかを選択する
ことを特徴とする請求項８に記載の座標入力装置。
【請求項１０】
前記選択工程は、前記第１座標演算工程で算出される座標値に基づいて、前記第１及び第２演算工程のどちらかを選択する
ことを特徴とする請求項８に記載の座標入力装置の制御方法。
【請求項１１】
前記第２座標演算工程で算出されたＺ座標値が所定範囲内にあるか否かを判定する判定工程と、
前記判定工程の判定結果に基づいて、前記第２座標演算工程で用いるパラメータを変更して、再度、該第２座標演算工程による演算を実行する実行工程と
を更に備えることを特徴とする請求項８に記載の座標入力装置の制御方法。
【請求項１２】
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置の制御方法であって、
前記検出部が検出する信号のエンベロープを検出する検出工程と、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第１時間検出工程と、
前記第１時間検出工程の検出結果に基づいて、ゲート信号を生成するゲート信号生成工程と、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第２時間検出工程と、
前記第１時間検出工程の検出結果に基づいて、前記指示具の位置座標を算出する第１座標算出工程と、
前記第１及び第２時間検出工程のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第２座標算出工程と、
前記第１及び第２座標算出工程のどちらかを選択する選択工程と、
前記選択工程で選択された座標算出工程による算出結果を、前記指示具の座標値として出力する出力工程と
を備えることを特徴とする座標入力装置の制御方法。
【請求項１３】
前記選択工程は、前記指示具が有するスイッチの押下状態に基づいて、前記第１及び第２座標算出工程のどちらかを選択する
ことを特徴とする請求項１２に記載の座標入力装置の制御方法。
【請求項１４】
前記選択工程は、前記第１座標算出工程で算出された座標値に基づいて、前記第１及び第２座標算出工程のどちらかを選択する
ことを特徴とする請求項１２に記載の座標入力装置の制御方法。
【請求項１５】
表示画面上にＸＹ平面及び該表示画面に対してＺ軸を形成する３次元空間において、指示具が指示する位置座標を算出する座標入力装置の制御をコンピュータに機能させるためのプログラムであって、
第１座標演算方法で座標を算出する第１座標演算工程のプログラムコードと
第２座標演算方法で座標を算出する第２座標演算工程のプログラムコードと、前記第１及び第２座標演算工程のどちらかを選択する選択工程のプログラムコードと
前記選択工程で選択された演算工程を用いて、前記指示具の位置座標を出力する出力工程のプログラムコードと
を備えることを特徴とするプログラム。
【請求項１６】
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置の制御をコンピュータに機能させるためのプログラムであって、
前記検出部が検出する信号のエンベロープを検出する検出工程のプログラムコードと、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第１時間検出工程のプログラムコードと、前記第１時間検出工程の検出結果に基づいて、ゲート信号を生成するゲート信号生成工程のプログラムコードと、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第２時間検出工程のプログラムコードと、
前記第１時間検出工程の検出結果に基づいて、前記指示具の位置座標を算出する第１座標算出工程のプログラムコードと、
前記第１及び第２時間検出工程のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第２座標算出工程のプログラムコードと、
前記第１及び第２座標算出工程のどちらかを選択する選択工程のプログラムコードと、
前記選択工程で選択された座標算出工程による算出結果を、前記指示具の座標値として出力する出力工程のプログラムコードと
を備えることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、表示システムと組み合わせて使用することにより、入出力一体の装置を構成することができる座標入力装置及びその制御方法、プログラムに関するものである。より詳しくは、ディスプレイの画面に指示具によって直接座標を入力する、あるいはディスプレイの画面から離れたところにおいて座標を入力することにより、ディスプレイに接続されているコンピュータ等の外部機器を制御したり、文字や図形などを書き込むために用いられる座標入力装置及びその制御方法、プログラムに関するものである。
【０００２】
【従来の技術】
従来、ＣＲＴディスプレイ、液晶ディスプレイ（ＬＣＤ）、あるいはプロジェクタ等の表示装置の表示面に、座標を入力することができる座標入力装置を重ねて配置し、操作者が行った指示具によるポインティングあるいは筆跡を表示装置に表示し、あたかも、紙と鉛筆のような関係を実現することができる装置が知られている。
【０００３】
座標入力装置としては、抵抗膜方式をはじめ、静電方式、ガラス等の座標入力面に超音波を伝播させる超音波方式等の透明な入力板を有する方式や、光学方式、あるいは空中に音波を放射することで位置を検出する方式、さらには電磁誘導（電磁授受）方式のように表示装置の裏側に座標算出のための機構を配置し、表示装置の前面に透明な保護板を配置して、入出力一体の情報機器を構成している物もある。
【０００４】
このような情報機器は、携帯性を有する小型の電子手帳に始まり、ペン入力コンピュータ等、表示装置の大型化に伴って、比較的大きなサイズのペン入力コンピュータ等の情報機器も見られるようになった。その他、フロントプロジェクタ、リアプロジェクタ、あるいはＰＤＰ等の大型表示装置と組み合わせて、例えば、プレゼンテーション装置、ＴＶ会議システム等に利用され始めている。
【０００５】
また、これらの大型の表示装置は、例えば、オフィスにおいて使われていたホワイトボード、あるいは電子黒板にとって変わり、パーソナルコンピュータ内にあらかじめ用意した資料用データを大型の表示装置に表示させることで、会議用途、打ち合わせ用途に使われ始めている。
【０００６】
また、このような大型表示用ディスプレイに座標入力装置を組み合わせることによって、直接画面をタッチすることで、表示されている情報を更新、つまり表示画面を制御しているパーソナルコンピュータ等の外部機器を動作させることができる。そのため、大型表示装置と外部機器が離れて設置してある場合であっても、外部機器のオペレータが不要なばかりでなく、操作者が話の内容、進展に伴なって、ディスプレイの直前で必要な情報をタイムリーに表示することができる。
【０００７】
【発明が解決しようとする課題】
しかしながら、従来の座標入力装置において、抵抗膜方式、静電方式等の座標入力装置は、完全に透明な入力板を構成することが困難であり、表示装置の画像の質を低下させると言う問題が生じる。
【０００８】
また、ガラス等の伝播体に超音波を伝播させて座標を算出す超音波方式では、例えば室内で用いる際の蛍光灯の映りこみを防止するために、そのガラスの表面を光学的に処理する必要があり、画像の画質を維持すると言う点で大幅なコストアップが避けられない。
【０００９】
更に、電磁誘導方式は、表示面の裏側にマトリックス上の電極を配置し、入力ペンとの間で電磁的な信号の送受を行うので、表示装置が大型化し装置の厚みが増すと、原理的に座標算出が困難なものとなる。その上、会議用途、あるいはプレゼン用途といった大型の座標入力装置を構成する場合には、非常にコストの高い装置となってしまう欠点を有する。
【００１０】
また、大型の表示システムを採用した場合には、大勢の聴衆による同時視聴が想定され、画像の視野角あるいはコントラスト等は十分な性能が要求される。従って、これらの大型表示システムと座標入力措置を組み合わせる場合には、十分に低コストで精度良く座標算出が可能となるばかりでなく、表示装置の画質を劣化させないと言うことが重要な要件となる。
【００１１】
さらには、この種の大型の入出力一体のシステムを考慮した場合、大勢の参加者を想定した打ち合わせ、あるいはネットワーク時代を考慮すれば、操作者が直接画面をタッチすることでパソコンを制御するばかりでなく、例えば、質問者がその場で遠隔操作（ディスプレイより離れた位置で操作）により、画面を操作したり、必要に応じてネットワークより情報を引き出せるような構成になるのが好ましい形態であると言える。
【００１２】
本発明は上記の課題に鑑みてなされたものであり、座標入力装置の操作状況に応じて好適な座標算出を可能とし、かつその信頼性及び操作性を改善することができる座標入力装置及びその制御方法、プログラムを提供することを目的とする。
【００１３】
【課題を解決するための手段】
上記の目的を達成するための本発明による座標入力装置は以下の構成を備える。即ち、
表示画面上にＸＹ平面及び該表示画面に対してＺ軸を形成する３次元空間において、指示具が指示する位置座標を算出する座標入力装置であって、
第１座標演算方法で座標を算出する第１座標演算手段と
第２座標演算方法で座標を算出する第２座標演算手段と、
前記第１及び第２座標演算手段のどちらかを選択する選択手段と
前記選択手段で選択された座標演算手段を用いて、前記指示具の位置座標を出力する出力手段と
を備える。
【００１４】
また、好ましくは、前記選択手段は、前記指示具が有するスイッチの押下状態に基づいて、前記第１及び第２演算手段のどちらかを選択する。
【００１５】
また、好ましくは、前記選択手段は、前記第１座標演算手段で算出される座標値に基づいて、前記第１及び第２演算手段のどちらかを選択する。
【００１６】
また、好ましくは、前記第２座標演算手段で算出されたＺ座標値が所定範囲内にあるか否かを判定する判定手段と、
前記判定手段の判定結果に基づいて、前記第２座標演算手段で用いるパラメータを変更して、再度、該第２座標演算手段による演算を実行する実行手段と
を更に備える。
【００１７】
上記の目的を達成するための本発明による座標入力装置は以下の構成を備える。即ち、
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置であって、
前記検出部が検出する信号のエンベロープを検出する検出手段と、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第１時間検出手段と、
前記第１時間検出手段の検出結果に基づいて、ゲート信号を生成するゲート信号生成手段と、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第２時間検出手段と、
前記第１時間検出手段の検出結果に基づいて、前記指示具の位置座標を算出する第１座標算出手段と、
前記第１及び第２時間検出手段のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第２座標算出手段と、
前記第１及び第２座標算出手段のどちらかを選択する選択手段と、
前記選択手段で選択された座標算出手段による算出結果を、前記指示具の座標値として出力する出力手段と
を備える。
【００１８】
また、好ましくは、前記選択手段は、前記指示具が有するスイッチの押下状態に基づいて、前記第１及び第２座標算出手段のどちらかを選択する。
【００１９】
また、好ましくは、前記選択手段は、前記第１座標算出手段で算出された座標値に基づいて、前記第１及び第２座標算出手段のどちらかを選択する。
【００２０】
上記の目的を達成するための本発明による座標入力装置の制御方法は以下の構成を備える。即ち、
表示画面上にＸＹ平面及び該表示画面に対してＺ軸を形成する３次元空間において、指示具が指示する位置座標を算出する座標入力装置の制御方法であって、
第１座標演算方法で座標を算出する第１座標演算工程と
第２座標演算方法で座標を算出する第２座標演算工程と、
前記第１及び第２座標演算工程のどちらかを選択する選択工程と
前記選択工程で選択された座標演算工程を用いて、前記指示具の位置座標を出力する出力工程と
を備える。
【００２１】
上記の目的を達成するための本発明による座標入力装置の制御方法は以下の構成を備える。即ち、
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置の制御方法であって、
前記検出部が検出する信号のエンベロープを検出する検出工程と、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第１時間検出工程と、
前記第１時間検出工程の検出結果に基づいて、ゲート信号を生成するゲート信号生成工程と、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第２時間検出工程と、
前記第１時間検出工程の検出結果に基づいて、前記指示具の位置座標を算出する第１座標算出工程と、
前記第１及び第２時間検出工程のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第２座標算出工程と、
前記第１及び第２座標算出工程のどちらかを選択する選択工程と、
前記選択工程で選択された座標算出工程による算出結果を、前記指示具の座標値として出力する出力工程と
を備える。
【００２２】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
表示画面上にＸＹ平面及び該表示画面に対してＺ軸を形成する３次元空間において、指示具が指示する位置座標を算出する座標入力装置の制御をコンピュータに機能させるためのプログラムであって、
第１座標演算方法で座標を算出する第１座標演算工程のプログラムコードと
第２座標演算方法で座標を算出する第２座標演算工程のプログラムコードと、前記第１及び第２座標演算工程のどちらかを選択する選択工程のプログラムコードと
前記選択工程で選択された演算工程を用いて、前記指示具の位置座標を出力する出力工程のプログラムコードと
を備える。
【００２３】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
指示具から放射された音波が複数の検出部に到達する時間を計測することによって、前記指示具の位置座標を算出する座標入力装置の制御をコンピュータに機能させるためのプログラムであって、
前記検出部が検出する信号のエンベロープを検出する検出工程のプログラムコードと、
前記エンベロープの形状特徴点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第１時間検出工程のプログラムコードと、前記第１時間検出工程の検出結果に基づいて、ゲート信号を生成するゲート信号生成工程のプログラムコードと、
前記ゲート信号発生期間を参照して、前記検出部が検出する信号の位相ゼロクロス点を検出して、前記指示具から放射された音波が前記検出部に到達する時間を計測する第２時間検出工程のプログラムコードと、
前記第１時間検出工程の検出結果に基づいて、前記指示具の位置座標を算出する第１座標算出工程のプログラムコードと、
前記第１及び第２時間検出工程のそれぞれの検出結果に基づいて、前記指示具の位置座標を算出する第２座標算出工程のプログラムコードと、
前記第１及び第２座標算出工程のどちらかを選択する選択工程のプログラムコードと、
前記選択工程で選択された座標算出工程による算出結果を、前記指示具の座標値として出力する出力工程のプログラムコードと
を備える。
【００２４】
【発明の実施の形態】
以下、図面を参照して本発明の好適な実施形態を詳細に説明する。
【００２５】
＜実施形態１＞
図１は本発明の実施形態１の３次元（空間）座標計測可能な座標入力装置の概略構成を示す図である。
【００２６】
４は指示具であるところの座標入力ペンであり、操作者による座標入力動作により空中に超音波を放射すると共に、超音波の放射タイミング、あるいはペンのスイッチ情報を伝送するための赤外光を放射するように構成されている。放射された赤外光は光検出センサ５で受光されると共に、同時に放射される音波は複数の検出センサ３（実施形態１の場合、４個の検出センサ３＿Ｓａ〜Ｓｄを使用する）により検出され、後述する方法により信号波形検出回路２で処理される。その後、演算制御回路１によって、座標入力ペン４の超音波発信源の位置（Ｘ，Ｙ，Ｚ）を算出するように構成されている。
【００２７】
演算制御回路１は、座標入力装置全体を制御するとともに、得られる座標データを基に、ディスプレイ駆動回路５を介して、ディスプレイ６に表示されているカーソルを移動したり、あるいは筆記等の手書き情報をディスプレイ６に表示、追記できるように構成されている。
【００２８】
以上のように、座標入力装置とディスプレイを組み合わせることで、あたかも『紙と鉛筆』のような関係を実現することができるマンマシンインターフェースを提供することが可能となる。
【００２９】
次に、座標入力ペン４の構成について、図２を用いて説明する。
【００３０】
図２は本発明の実施形態１の座標入力ペンの構成を示す図である。
【００３１】
座標入力ペン４内に内蔵された振動発生源４３は、ペン電源４６、およびタイマと発振回路並びに座標入力ペン４に具備されている複数のスイッチ情報を検知して制御する制御回路、各種データを記憶するメモリ等で構成された駆動回路４５によって駆動される。振動発生源４３は、例えば、ＰＶＤＦ（ポリフッ化ビニリデン）等の圧電性素子（電気機械変化素子）で構成される。振動発生源４３の駆動信号は、タイマによって発せられる所定の周期で繰り返すパルス信号であって、発振回路により所定のゲインで増幅された後、振動発生源４３に印加される。この電気的な駆動信号は、振動発生源４３によって機械的な振動に変換され、空中にそのエネルギーが放射されることになる。そのタイミングに同期して、赤外ＬＥＤ４４を介して光信号が放射される。
【００３２】
尚、実施形態１における座標入力ペン４は、そのペン先端部を押圧することで動作するペン先スイッチ（ＳＷ）４１、並びに座標入力ペン４の筐体に設けられた複数のペンサイドスイッチ（ＳＷ）４２＿ａ、４２＿ｂを具備する。
【００３３】
座標入力ペン４のペン先ＳＷ４１、または複数のペンサイドＳＷ＿ａ、４２＿ｂのいずれかがＯＮ状態になると、所定の周期で超音波信号と光信号の両者が放射されることになる。光信号は、超音波を放射するタイミングと同期した信号であり、超音波放射タイミングを光検出センサ５を介して演算制御回路１が検知して、後述の方法により、振動発生源である座標入力ペン４の位置座標を算出する。一方、光信号には座標入力ペンの状態（例えば、どのスイッチがＯＮ状態となっているか、あるいはペンを識別するためのコード等）を示す信号が重畳されて出力されている。
【００３４】
その情報を伝送する方法は、例えば、連続するパルス列からなるリーダ部と、これに続くコード（メーカーＩＤなど）とからなるへッダ部をまず出力し、その後、ペンＩＤや制御信号などからなる送信データ列が予め定義された順序と形式に従って、その情報を順次出力する。この方法はよく知られた方法（例えば、赤外線を利用したリモコン等）であり、ここでの詳述は省略する。
【００３５】
次に、座標入力ペン４の動作モード及び各種動作について、図３Ａ、図３Ｂを用いて説明する。
【００３６】
図３Ａは本発明の実施形態１の座標入力ペンの動作モードを示す図であり、図３Ｂは本発明の実施形態１の座標入力ペンの動作を示すフローチャートである。
【００３７】
まず、ステップＳ４０２で、ペン先ＳＷ４１がＯＮ状態であるか否かを判定する。ペン先ＳＷ４１がＯＮ状態とは、座標入力面であるディスプレイ６上に座標入力ペン４が位置し、操作者によってまさに座標入力が行われ、筆跡を入力しようとする状態（ペンダウン状態）である。また、例えば、ペン先ＳＷ４１を２回動作させることで、座標入力装置の座標サンプリングレートを参照しながら信号を受信した時間、間隔、あるいは座標を算出しているタイミング等を監視することで、マウスのダブルクリック動作を認識するように構成されている。
【００３８】
この時、画面上に表示された筆跡は、操作者による筆記動作に対して忠実に行われなければ、操作者は座標入力装置の座標算出精度が十分でないと認知し、その性能を疑うことになる。つまり、座標算出精度は十分な精度が要求される状態である。従って、実施形態１においては、ペン先ＳＷ４１がＯＮ状態である場合（ステップＳ４０２でＹＥＳ）、ステップＳ４０６に進み、より座標を高精度に算出することが可能な座標演算方法２により座標を算出し、忠実に操作者の筆跡を再現できるように構成されている。
【００３９】
一方、ステップＳ４０２において、ペン先ＳＷ４１がＯＮ状態でない場合、つまり、ＯＦＦ状態である場合（ステップＳ４０２でＮＯ）、ステップＳ４０３に進む。
【００４０】
ステップＳ４０３〜Ｓ４０５では、ペンサイドＳＷ＿ａ、４２＿ｂの状態を判別する。実施形態１においては、座標入力ペン４にはペンサイドスイッチ４２＿ａ、４２＿ｂの２個のサイドスイッチが具備されており、少なくともどちらか一方がＯＮ状態にあれば、ペンアップ状態、その両者がＯＮ状態となっていればペンダウン状態として動作するように構成されている。
【００４１】
このように、ペン先ＳＷ４１がＯＦＦ状態、かつ少なくともどちらかのペンサイドＳＷ４２＿ａ、４２＿ｂが動作状態となる具体的想定使用例は、操作者が座標入力面であるところのディスプレイ６から離れた位置で、画面を制御しようとしている場合であって、例えば、離れた位置でカーソルを所望の位置に移動したり、筆跡を入力しようとする場合である。
【００４２】
つまり、少なくとも一方のペンサイドＳＷ４２＿ａ、４２＿ｂが動作している場合は、操作者は画面上に示されているカーソルを移動することができ、その両者が動作している場合には、カーソルの移動を筆跡として残すことができるような状態を実現することができる。また、座標入力装置が座標を算出する際に、ペンの状態（ペンアップ、ペンダウン）を情報として同時に出力することができるように構成しているので、その情報を基にパーソナルコンピュータ等の外部機器に格納されている制御ソフト、あるいはアプリケーションソフト等によって、所望の動作を実現することができるのである。
【００４３】
また、『少なくとも一方のペンサイドスイッチ』、あるいは『両者のペンサイドスイッチ』と言うことでその状態を区別した意図は、利き腕を考慮した結果である。つまり、図２に示すように、実施形態１の座標入力ペンのサイドＳＷ４２＿ａ、４２＿ｂは、座標入力ペン４の対称軸に対称に、しかも隣接するように配置してあるので、右利き、左利きの区別無く、同一の動作で同一の効果が得られるように構成しいている。ペンサイドスイッチの他の実施形態としては、２段スイッチ、つまり、スイッチのキートップを押圧することで１段目のスイッチが動作し、さらに押圧することによって２段目のスイッチが動作するスイッチを用いることによって、同様の効果も得られる。
【００４４】
先に述べたように、ペン先ＳＷ４１がＯＦＦ状態、かつ少なくともどちらかのペンサイドＳＷ４２＿ａ、４２＿ｂが動作状態となる状態は、操作者が座標入力面であるところのディスプレイ６から離れた位置で、画面を制御しようとしている場合であって、その場合における座標入力装置の座標算出精度は高精度であることを必要としない。その理由は、座標入力ペン４のペン先と表示位置は離れているので、操作者は指示しようとした位置と実際に表示された位置がそこそこにあっていれば、操作者は『指示した位置がそもそも不正確だった』のか、『指示した位置は正確なのに座標入力装置の座標算出精度が悪くて所定の位置を指示できない』のか区別することができない。
【００４５】
操作者はむしろ指示したと言う動作の結果、ディスプレイ６上に表示されたカーソル位置を見ながら、そのカーソルを所望の位置に動かすために指示位置から相対的な位置の移動を行って、目的を達成するのである。つまり、比較的性能の低い座標算出性能であっても、人間は違和感無く道具として使いこなすことができるのでる。この例では、現在の会議等に使われているレーザポインタの例をみても理解できる。
【００４６】
つまり、レーザポインタを使って遠くの所定点を指示する場合、まず最初のレーザ発射時（１点目）においては、とんでもない位置を指示することが良く見られる。人間はこのレーザの照射位置を視認して、相対的にレーザポインタを操作することによって、所望の位置にレーザの照射位置を移動するである。これは、視認、修正という行為を、違和感無く行うことが可能であり、『ちゃんと指示しているのに照射位置がおかしい（レーザが壊れている）』と感じるのでなく、修正作業により人間の能力（こっちの方角だと思って指し示す能力）の不備を補間しているのである。従って、このような遠隔操作における指示動作と言う観点では、どんなに座標入力装置の座標算出性能が高くても意味が無い。もちろん遠隔操作における高精度な座標算出であっても、操作上の弊害は発生しないが、『遠隔操作ではそれほどの座標算出精度を要求しない』という観点で、実施形態１の座標入力装置の座標算出原理において固有の効果が期待できる。尚、その効果の詳細については、後述する。
【００４７】
図３Ｂの説明に戻る。
【００４８】
まず、ステップＳ４０３で、ペンサイドＳＷ４２＿ａがＯＮ状態であるか否かを判定する。ＯＮ状態である場合（ステップＳ４０３でＹＥＳ）、ステップＳ４０５に進む。一方、ペンサイドＳＷ４２＿ａがＯＮ状態でない場合（ステップＳ４０３でＮＯ）、ステップＳ４０４に進み、ペンサイドＳＷ４２＿ｂがＯＮ状態であるか否かを判定する。ペンサイドＳＷ４２＿ｂがＯＮ状態でない場合（ステップＳ４０４でＮＯ）、処理を終了する。一方、ペンサイドＳＷ４２＿ｂがＯＮ状態である場合（ステップＳ４０４でＹＥＳ）、ステップＳ４０８に進む。
【００４９】
ステップＳ４０８で、上述した座標演算方法２より簡略化された座標演算方法１により、検出した座標値とペンアップ／ダウンの状態を出力する。
【００５０】
以上、座標入力装置として、画面上を直接タッチして座標を入力して筆跡を追記したり、あるいはパーソナルコンピュータを制御する場合と、それと同様に画面から離れた地点で同様な操作を行うための遠隔操作について、座標入力ペン４に具備されている各種スイッチの割り付け、及びそのスイッチのいずれかが動作することで、定期的に音波が放射され、同時に前述音波の放射と同期した信号、並びにペンの状態（ペンアップ／ダウン、ペンのＩＤ番号等）を伝送する光信号が放射される。
【００５１】
次に、放射された音波、光波による信号処理、並びに座標算出原理について説明を加える。
【００５２】
駆動回路４４は、所定周期毎（例えば、１０ｍｓｅｃ毎、その場合、１秒間あたりに音波を１００回放射するので、本座標入力装置の座標出力サンプリングレートは、１００回／秒となる）に、座標入力ペン４内の振動発生源４３を駆動させる信号を出力し、空中に音波を放射することになる。この音波は、振動発生源４３と各検出センサ３＿Ｓａ〜Ｓｄ迄の距離に各々応じて遅延し、到達、検出されることになる。
【００５３】
この種の座標入力装置は、座標入力ペン４の振動発生源４３と各検出センサ３＿Ｓａ〜Ｓｄ間の距離を、音波の既知の音速と、その到達時間の積により各々導出し、各検出センサ３＿Ｓａ〜Ｓｄの位置情報を用いて幾何学的に振動発生源４３の位置情報を得ることを基本としたシステムである。
【００５４】
そこで、この音波の到達時間を検出する到達時間検出方法について、図４、図５を用いて説明する。
【００５５】
図４は本発明の実施形態１の音波の到達時間検出方法を説明するためのタイミングチャートであり、図５は本発明の実施形態１の音波の到達時間検出を実現する検出回路のブロック図である。
【００５６】
１０１は駆動回路４５が振動発生源４３を駆動する駆動信号であり、それと同期して赤外ＬＥＤ４４から上述の超音波発生のタイミング情報を伝送するためのスタート信号が光信号として放射される。この光信号は、光検出センサ５を介して検出され、周波数検波回路２１０、制御信号検出回路２１１を介して、超音波発生のタイミング、あるいはペンの状態（例えば、ペンアップ／ペンダウン等）を演算制御回路１に送信し、演算制御回路１内のタイマ３０３（図６参照）をスタートさせる。
【００５７】
一方、空中に放射された音波は、振動発生源４３と検出センサ３＿Ｓａ〜Ｓｄ間の距離に応じて遅延し、各検出センサ３＿Ｓａ〜Ｓｄで検出されることになる。１０２は、前置増幅回路２０１で所定レベルまで増幅された検出センサ３＿Ｓａ〜Ｓｄで検出された検出信号を示す。この信号を、絶対値回路及び低域通過フィルタ等により構成されるエンベロープ検出回路２０３で処理を行い、検出信号のエンベロープ１０３を抽出する。
【００５８】
このエンベロープ１０３に着目すると、このエンベロープ波形が伝播する音速は群速度Ｖｇであり、このエンベロープ１０３の特異な点、例えば、エンベロープのピークやエンベロープの変曲点を検出して、ｔｇ信号検出回路２０７により生成される信号１０７により、前述カウント動作を継続しているタイマ３０３をストップさせれば、群速度Ｖｇに関わる遅延時間ｔｇが得られる（第１遅延時間検出手段）。
【００５９】
エンベロープ１０３のピークあるいは変曲点を検出するエンベロープ特異点検出回路２０６は、微分回路、ゼロクロスコンパレータを用いて容易に検出が可能であり、実施形態１では２階微分することによって信号１０６を形成し、閾値レベル１０４とエンベロープ１０３で比較されたゲート信号を参照してエンベロープ１０３の変曲点を検出する（信号１０７）。
【００６０】
尚、厳密に言えば、この検出された群遅延時間ｔｇには、波形処理に関わる回路の遅延時間分等が含まれるが、後述する方法により、その影響は完全に除去されるので、ここでは説明を簡略化するために、回路遅延時間は無いものとして説明を加える。
【００６１】
以上のことから、この群遅延時間ｔｇにより、振動発生源４３と検出センサ３＿Ｓａ〜Ｓｄ間の距離Ｌは次式で求めることができる。
【００６２】
Ｌ＝Ｖｇ×ｔｇ　　　　　　　　　　　　　　　　　　　　　　（１）
そして、座標入力ペン４から各々の検出センサ３＿Ｓａ〜Ｓｄまでの距離を各々（１）式により求めれば、後述する方法によって、座標入力ペン４の位置座標を検出することが可能となる（座標演算方法１）。
【００６３】
一方、座標演算方法１より高精度な距離検出可能とする座標演算方法２は、検出信号波形の位相情報と第１遅延時間検出手段の出力結果の両者より、座標入力ペン４の位置情報を導出する。
【００６４】
その詳細について説明すれば、検出センサ３＿Ｓａ〜Ｓｄの検出信号１０２は、帯域通過フィルタ２０８により余分な周波数成分を除いた後、ｔｐ信号検出回路２０９に入力される。ｔｐ信号検出回路２０９は、ゼロクロスコンパレータ、マルチバイブレータ等で構成され、帯域通過フィルタ２０８によって出力された検出信号１０８のゼロクロス点に関わる信号１０９を生成する。さらに前述所定の閾値レベル１０４と比較するゲート信号発生回路２０５が生成するゲート信号１０５と比較し、ゲート信号１０５の期間内において、帯域通過フィルタ２０８で出力される信号波形の位相が、例えば、負側から正側にクロスする最初のゼロクロス点を出力する信号１１０を生成する。
【００６５】
同様にして、この信号１１０を用いて前述したスタート信号により動作しているタイマ３０３をストップさせれば、位相速度Ｖｐに関わる位相遅延時間ｔｐを検出することが可能である。
【００６６】
尚、厳密に言えば、この検出された位相延時間ｔｐには、波形処理に関わる回路の遅延時間分等が含まれるが、後述する方法により、その影響は完全に除去されるので、ここでは説明を簡略化するために、回路遅延時間は無いものとして説明を加える。
【００６７】
以上のことから、この位相遅延時間ｔｐにより、振動発生源４３と検出センサ３＿Ｓａ〜Ｓｄ間の距離Ｌは次式で求めることができる。
Ｌ＝Ｖｐ×ｔｐ＋ｎ×λｐ　　　　　　　　　　　　　　　　　（２）
ここで、λｐは音波の波長、ｎは整数である。（２）式、右辺第２項（ｎ×λｐ）の持つ意味は、仮に音波の検出レベルが小さくなった場合には、それに応じてエンベロープ信号のレベルも低下することになるので、このエンベロープ１０３と閾値レベル１０４とを比較して生成されるゲート信号１０５のゲート信号発生期間は、例えば、信号１１１のようになる。
【００６８】
つまり、ゲート信号発生期間は、検出信号１０２の信号レベルに依存することになる。信号レベルが変化する一番の要因は、振動発生源４３と検出センサ３＿Ｓａ〜Ｓｄ間の距離であり、その信号レベルは距離に応じて指数関数的に減少することが良く知られている。
【００６９】
従って、本来、信号１１０によって位相遅延時間ｔｐを検出すべきなのに、信号レベルが低くなった結果、ゲート信号の発生期間が変化し、信号１１２により位相遅延時間ｔｐが検出されることが起こりえる。
【００７０】
図４において、信号１１０と信号１１２の時間差は、検出信号１０８の１周期分に相当するので、距離に換算すれば音波の波長と言うことになる。つまり、位相遅延時間ｔｐ、位相速度Ｖｐにより導出される距離Ｌは、信号レベルに応じて波長の整数倍の誤差を含むことになるので、式（２）の右辺第二項はその補正項となる。
【００７１】
一方、式（１）、式（２）で各々導出される距離Ｌは、本来、同じ値となるべきものである。従って、式（１）、式（２）を連立させれば、整数ｎは次式で求めることができる。
【００７２】
ｎ＝ｉｎｔ［（Ｖｇ・ｔｇ−Ｖｐ・ｔｐ）／λｐ＋１／２］　　　（３）
式（３）において、整数化を実行しているのは、群遅延時間ｔｇに基づく距離演算は、位相遅延時間ｔｐに基づく距離演算に比べ、その性能が劣化するので、この差分を吸収するためである。仮に、位相遅延時間ｔｐに基づく距離演算に誤差が無いものと仮定すれば、群遅延時間ｔｇに基づく距離演算に半波長以下の誤差が含まれても、式（３）による整数ｎの演算は正確に行われるので、式（２）による正確な距離導出が可能となる。
【００７３】
換言すれば、群遅延時間ｔｇに基づく距離計算で、半波長以上の誤差が含まれると、式（３）による整数ｎの導出に誤りが含まれ、大幅な距離測定精度の劣化が起こる（正確な距離導出を行っている状態で、何らかの要因で整数ｎを突然間違えると、波長分の誤差が突然発生する）。
【００７４】
本発明は、この点を鑑み成されたものであり、信頼性を向上させる効果を期待できるものである。実施形態１において、具体的に想定される座標算出可能領域について述べれば、直接画面をタッチすることで操作する用途では、その座標入力範囲は画面の大きさに限定される。例えば、画面サイズが１６：９の対角７０インチであって、検出センサ３＿Ｓａ〜Ｓｄを図１に示すがごとく、表示画面の４隅近傍に配置すれば、座標入力ペン４と検出センサ検出センサ３＿Ｓａ〜Ｓｄの最大距離は、画面の対角線＋αの距離であって、高々１８００ｍｍ程度に過ぎない。
【００７５】
ところが、遠隔操作を考慮した場合には、その画面の大きさに対する最適視覚距離を鑑みても画面から約５０００ｍｍ程度離れた距離でも、座標入力することが可能となる仕様が好ましい。
【００７６】
つまり、遠隔操作の仕様を考慮した３次元入力可能な座標入力装置の座標検出可能距離は、飛躍的に大きくなるのである。一般的に音波の音速は一定であるという前提で本座標入力装置は構成されているが、距離の範囲が大きくなると、以下の様な距離測定誤差要因が発生する。
【００７７】
１）波の信号レベルは距離と共に指数関数的減少し、ノイズの影響を受けやすくなる
２）距離増大に応じて信号波形のエンベロープが滑らかになる（エンベロープ波形の変形による非線形性）
従って、距離増大要因により、前述した『式（１）による群遅延時間ｔｇに基づく距離演算が半波長以下』という必要条件が満足できずに、式（３）による整数ｎに誤差を含み、結果として式（２）右辺第２項に波長の整数倍の誤差を含む確率が高くなるので、距離測定精度を大幅に劣化させる要因となる。
【００７８】
ここで、再度、式（１）による距離演算と、式（２）による距離演算の特徴をまとめれば、式（１）による距離演算は、アナログ処理によるエンベロープの抽出により遅延時間を検出しているので、距離算出精度は高精度とは言えない。しかしながらその誤差の発生の仕方は、測定距離に対して連続的である。
【００７９】
一方、式（２）により距離演算は、整数ｎを正確に求めることができれば非常に高精度であるが、整数ｎを間違えたとたんにその測定誤差は、不連続的に発生することになる。
【００８０】
この現象を使用者の立場にたって考えてみると、画面を直接座標入力ペン４でタッチして、その筆跡をディスプレイ６上に表示しようとする場合、式（１）に基づく距離算出から座標入力ペン４の位置を導出すれば、座標算出性能が高精度と言えないので、実際に座標入力ペン４で指示した位置とは離れたところに筆跡が残る。このため、操作者は性能が悪く、操作性の低い座標入力装置と認知するだろう。しかしながら、式（２）に基づく座標算出は高精度なので、性能が良く、操作性に優れた座標入力装置として認知されることになる。
【００８１】
一方、画面から離れた位置で同様の操作をする場合、前述した通り、操作者は指示位置が間違っているのか、あるいは指示位置があっているのにも関わらず座標入力装置の性能が悪くて異なる地点に筆跡が残るのかを判定できない。むしろ表示されたカーソルの位置を視認しながら、それをフィードバックして操作者による補間作業により目的を達成するので、式（１）による座標算出方法であっても何ら障害を認知することが無いのである。
【００８２】
一方、式（２）による座標演算方法では、遠隔操作による測定距離が大幅に伸びているので、整数ｎを誤検出する可能性、またその確率が距離増大と共に増大することになる。正常に整数ｎを検出している時に、たまたま整数ｎを誤検出したデータが含まれると、その地点で操作者が筆記した筆跡に不連続な筆跡が残ることになる（図８参照）。これは、明らかに操作者に視認されることになるので、座標入力装置の信頼性を大幅に低下させる原因となる。
【００８３】
本発明は、この点を鑑みてなされたものであり、遠隔操作の場合には、たとえ誤差を含んだ座標検出方法であっても、誤差の発生の仕方が連続的に発生する座標検出方法を採用し、操作者の筆跡が滑らかに、連続的になるように構成したものである。一方、画面を直接タッチして筆跡を残す場合には、より高精度な座標検出方法を採用することにより、指示した位置と筆跡の位置を一致させることで、操作性の良い座標入力装置を実現したものである。
【００８４】
このように、本発明は、この３次元座標検出可能な座標入力装置の具体的使用例を鑑みてなされたものであり、操作者にとって信頼性の高い座標入力装置を提供するものである。
【００８５】
次に、実施形態１の演算制御回路１の概略構成について、図６を用いて説明する。
【００８６】
図６は本発明の実施形態１の演算制御回路の概略構成を示すブロック図である。
【００８７】
尚、図６では説明を簡略化するために、複数ある検出センサ３＿Ｓａ〜Ｓｄのその１つについて、その構成要素及びその動作概略について説明する。
【００８８】
３０１は、演算制御回路１及び本座標入力装置全体を制御するマイクロコンピュータであり、内部カウンタ、操作手順を記憶したＲＯＭ、そして計算等に使用するＲＡＭ、定数等を記憶する不揮発性メモリ等によって構成されている。
【００８９】
前述した通り、駆動回路４５により座標入力ペン４内の振動発生源４３の駆動タイミングと同期したスタート信号が、制御信号検出回路２１１より入力されると、演算制御回路１内のタイマ３０３（例えば、カウンタなどにより構成されている）をスタートさせる。
【００９０】
このように構成することで、座標入力ペン４内の振動発生源４３を駆動する駆動タイミングと、演算制御回路１内の例えばタイマとの同期が得られるので、振動発生源４３で発生した音波が、振動発生源４３から各検出センサ３＿Ｓａ〜Ｓｄに各々達するのに要する時間を測定することが可能となる。
【００９１】
信号波形検出回路２より出力される検出センサ３＿Ｓａ〜Ｓｄよりの振動到達タイミング信号（信号１０７及び信号１１０）は、検出信号入力ポート３０６を介してラッチ回路３０４＿ａ、３０４＿ｂに各々入力される。ラッチ回路３０４＿ａ、３０４＿ｂは、対応するタイミング信号を受信すると、その時のタイマ３０３の計時値をラッチする。
【００９２】
このようにして、座標検出に必要な全ての検出信号の受信がなされたことを判定回路３０５が判定すると、マイクロコンピュータ３０１にその旨の信号を出力する。マイクロコンピュータ３０１が、この判定回路３０５からの信号を受信すると、ラッチ回路３０４＿ａ、３０４＿ｂから各々の検出センサ３＿Ｓａ〜Ｓｄまでの振動到達時間をラッチ回路３０４＿ａ、３０４＿ｂより読み取り、所定の計算を行なって、座標入力ペン４の座標位置を算出する。
【００９３】
その算出結果を、Ｉ／Ｏポート３０７を介してディスプレイ駆動回路７に出力し、ディスプレイ６の対応する位置に、例えば，ドット等を表示することができる。また，Ｉ／Ｏポート３０７を介しインターフェース回路に、座標位置情報、あるいはペンの状態信号（ペンアップ／ダウン、ペンＩＤ等）を出力することによって、外部機器に座標値、あるいは制御信号を出力することができるように構成している。
【００９４】
以上説明した実施形態１において、検出された時間には、振動発生源４３と各検出センサ＿Ｓａ〜Ｓｄまで音波が到達する時間に加えて、回路等による電気的な処理時間も含まれる。従って、ここでは、音波が伝播する時間以外に余分に計測される時間を除去する方法について説明する。
【００９５】
ラッチ回路３０４＿ａ、３０４＿ｂによってラッチされた群遅延時間ｔｇ、もしくは位相遅延時間ｔｐには、各々群回路遅延時間ｅｔｇ、位相回路遅延時間ｅｔｐを含む。この回路遅延時間は、時間計測毎に同一の値を必ず含む。
【００９６】
そこで、ある計測回路によって、振動発生源４３と検出センサ３＿Ｓａ〜Ｓｄ間を伝播する際に計測された時間をｔ＊、その計測回路における回路遅延時間をｅ、実際に音波が振動発生源４３と検出センサ３＿Ｓａ〜Ｓｄ間を伝播したのに要した時間をｔとすれば、
ｔ＊＝ｔ＋ｅ　　　　　　　　　　　　　　　　　　　　　　　　（４）
となる。
【００９７】
一方、振動発生源４３と検出センサ３＿Ｓａ〜Ｓｄ間の距離が既知の距離Ｌｉｎｉにおける時間計測値をｔｉｎｉ＊とし、その計測回路における回路遅延時間をｅ、実際に音波が伝播した時間をｔｉｎｉとすれば
ｔｉｎｉ＊＝ｔｉｎｉ＋ｅ　　　　　　　　　　　　　　　　　　　　（５）
となる。よって
ｔ＊−ｔｉｎｉ＊＝ｔ−ｔｉｎｉ　　　　　　　　　　　　　　　　　　（６）
となる。ここで、音波の音速をＶとすれば、
2004062656.tif 000003
となる。
【００９８】
よって、求めるべき任意の振動発生源４３と検出センサ３間の距離Ｌは、
Ｌ＝Ｖ×ｔ＝Ｖ×（ｔ＊−ｔｉｎｉ＊）＋Ｌｉｎｉ　　　　　　　　　　（８）となる。
【００９９】
上記、既知の距離Ｌｉｎｉ、及びその距離における時間計測値ｔｉｎｉ＊を、出荷時やリセット時に演算制御回路１の不揮発性メモリ等の記憶媒体に記憶することによって、任意の距離における振動発生源４３と検出センサ３間の距離を精度良く算出することが可能となる。
【０１００】
次に、図７に示すような座標系に検出センサ３＿Ｓａ〜Ｓｄが配置された場合、振動発生源４３の位置座標（Ｘ，Ｙ，Ｚ）を求める方法について説明する。
【０１０１】
上記の方法により正確に求められた振動発生源４３と各検出センサ３＿Ｓａ〜Ｓｄまでの距離を各々Ｌａ〜Ｌｄ、Ｘ方向の検出センサ間距離をＸｓ−ｓ、Ｙ方向の検出センサ間距離をＹｓ−ｓとすれば、
【０１０２】
2004062656.tif 000004
となる。同様にして、
【０１０３】
2004062656.tif 000005
となる。
【０１０４】
以上示したように、振動発生源４３と少なくとも３個の検出センサ３までの距離が測定できれば、容易に振動発生源４３の位置（空間）座標を求めることが可能となる。本発明では、検出センサを４個用いており、例えば、距離が最も遠い情報を使わず（この場合、検出センサ３で出力される信号は、距離が遠いために信号レベルが最も小さくなっている）、残り３個の距離情報のみで、座標を算出することで、信頼性の高い座標算出を可能としている。
【０１０５】
また、この距離が遠いセンサの距離情報を活用することで、出力された座標値の信頼性が高いものか判定することも可能である。
【０１０６】
具体的な方法としては、例えば、距離情報Ｌａ、Ｌｂ、Ｌｃで算出された座標値と、距離情報Ｌｂ、Ｌｃ、Ｌｄで算出された座標値は同一の値を出力するはずであり（距離情報の組み合わせを変更して演算する）、両者が一致しない場合には、いずれかの距離情報が不正、つまり、誤検出したことになるので、その場合には、座標値を出力しないといった信頼性を向上させる構成も実施可能となる。
【０１０７】
以上説明したように、実施形態１によれば、座標入力ペン４が有するスイッチの押下状態に基づいて、その押下状態に最適な座標演算方法による座標値を出力することができる。
【０１０８】
＜実施形態２＞
実施形態１では、直接画面をタッチして行う場合と画面から離れた個所で遠隔操作による操作を想定し、直接入力する場合にはより高精度な演算方法で、遠隔操作の場合には誤差の発生の仕方が不連続とならないような演算方法で座標を算出する構成について説明した。これに対し、実施形態２では、この遠隔操作をさらに操作性の良い座標入力装置として実現する構成について説明する。
【０１０９】
上述したように、遠隔操作における表示画面と操作位置が離れている場合には、高精度な座標算出精度を必要としないが、遠隔操作の場合であっても、比較的表示画面に近い遠隔操作を想定する。
【０１１０】
具体的には、画面を直接タッチして操作する場合でなくても、画面に近い、或いはほぼ近接した領域で操作する場合を想定する。この場合。操作者は、座標入力ペン４が画面に近くなれば近いほど、座標入力ペン４の指示位置と、例えば、カーソル位置の誤差を認知できるようになるので、両者間の距離が小さいほど座標算出精度は高精度であることが好ましい形態である。両者間の距離が小さい場合の操作を『近接入力』と定義すれば、実施形態２の座標入力ペン４の動作モード及び各種動作について、図９Ａ、図９Ｂを用いて説明する。
【０１１１】
図９Ａは本発明の実施形態２の座標入力ペンの動作モードを示す図であり、図９Ｂは本発明の実施形態２の座標入力ペンの動作を示すフローチャートである。
【０１１２】
ペン入力の場合は、ペン先ＳＷ４１が座標入力面であるところの画面に押圧されて動作する点、近接入力及び遠隔入力の場合、ペンサイドＳＷ＿ａ、４２＿ｂの少なくとも一方が押圧された場合にはペンアップ状態で、その両者が押圧された場合にはペンダウン状態で作用することは実施形態１と同様である。
【０１１３】
しかしながら、実施形態２では、座標入力ペン４のスイッチ情報により座標演算モードを決定するのでなく、いずれの場合も、ステップＳ５０２で、必要な情報が全て得られたかを判定する。つまり、有効信号が検出されたか否かを判定する。有効信号が検出されない場合（ステップＳ５０２でＮＯ）、処理を終了する。一方、有効信号が検出された場合（ステップＳ５０２でＹＥＳ）、ステップＳ５０３に進む。
【０１１４】
次に、ステップＳ５０３で、まず、座標演算方法１により、座標値（Ｘ，Ｙ，Ｚ）を演算する。演算されたＺ座標値は、図７の説明でも明らかなように、表示面と座標入力ペン４の距離に関するパラメータとなっているので、このＺ座標値がほぼ『０』となる状態は、ペン先ＳＷ４１が動作してペン入力を行っている状態と判定できる。一方、Ｚ座標値が十分大きければ、遠隔操作の状態であると判定できる。また、Ｚ座標値が所定値以下であれば、座標入力ペン４は比較的表示面に近い位置に位置していると判定できるので、近接入力状態にあると判定できる。
【０１１５】
従って、まず、ステップＳ５０４で、Ｚ座標値が第１所定値以上であるか否かを判定する。Ｚ座標値が第１所定値以上である場合（ステップＳ５０４でＹＥＳ）、ステップＳ５０７に進み、そのまま座標演算方法１による演算結果を出力するように動作する。一方、Ｚ座標値が第１所定値未満である場合（ステップＳ５０４でＮＯ）、ステップＳ５０５に進む。
【０１１６】
ステップＳ５０５で、Ｚ座標値が第２所定値以下であるか否かを判定する。Ｚ座標値が第２所定値以下である場合（ステップＳ５０５でＮＯ）、処理を終了する。一方、Ｚ座標値が第２所定値より大きい場合（ステップＳ５０５でＹＥＳ）、ステップＳ５０６に進み、より高精度な座標演算を可能とする座標演算方法２による演算結果を出力するように動作する。
【０１１７】
尚、ステップＳ５０４における第１所定値（座標算出値）と、ステップＳ５０５の第２所定値を、例えば、図９Ａに示すように異なる値に設定した場合には、両者の所定値の間の値が検出されると、いずれの座標値も出力しないように構成される。
【０１１８】
また、両者の値が同一である場合には、例えば、連続入力されている最初の１点目のみのＺ座標値を判定基準として採用することが好ましい形態といえる。つまり、連続して座標入力が実行されている際に、座標演算方法が異なる出力結果を混在で出力すると、両者の誤差の程度によって筆跡の不連続点が発生する可能性があり、それを防止することを目的とする。
【０１１９】
以上説明したように、実施形態２によれば、『ペン入力』、『近接入力』、『遠隔入力』が想定される環境において、各入力状態に応じて、最適な座標演算方法による座標値を出力することができる。
【０１２０】
＜実施形態３＞
実施形態３では、実施形態１の図８で説明した、整数ｎを誤検出した場合であっても、整数ｎを補正して、正しい座標値を出力する構成について説明する。
【０１２１】
図１０は本発明の実施形態３の座標値補正動作を示すフローチャートである。
【０１２２】
まず、ステップＳ４０２で、式（２）を用いる座標演算方法は、図３Ｂでも説明した通り、直接入力面であるところの表示面をタッチして、ペン先ＳＷ４１がＯＮ状態となっている時である。
【０１２３】
そのとき、上述した手順により、まず、ステップＳ４０３で、式（３）により整数ｎを算出する。座標演算に必要は全ての距離情報を得るために、各々の３＿Ｓａ〜Ｓｄで同様の演算を行うが、ここでは、説明を簡略化するために、１つの検出センサについて説明するを加える。
【０１２４】
ステップＳ４０４で、整数ｎを算出した後、式（２）により、振動発生源４３と検出センサ３までの距離を算出する。ステップＳ４０５で、その算出した距離情報に基づいて、上述のようにして、座標値（Ｘ，Ｙ，Ｚ）を算出する。
【０１２５】
ここで、ペン先ＳＷ４１が動作して表示面を押圧することで座標演算が行われているのであるから、算出したＺ座標値はほぼ『０』にならなければならない。逆に言えば、何らかの障害により整数ｎが不正に計算された場合には、計算されるＺ座標値は『０』とはならない。
【０１２６】
そこで、ステップＳ４０６で、Ｚ座標値がほぼ『０』（Ｚ≒０）であるか否かを判定する。Ｚ座標値がほぼ『０』でない場合（ステップＳ４０６でＮＯ）、ステップＳ４０７に進み、先に算出された整数ｎに１加算した、あるいは減算した値を新たな整数ｎとして、ステップＳ４０４、ステップＳ４０５にて、再度、座標値（Ｘ，Ｙ，Ｚ）を算出する。そして、再度、ステップＳ４０６にて、算出したＺ座標値の新欄性を判定する。このループを繰り返すことによって、真の座標値を確定することができる。
【０１２７】
一方、Ｚ座標値がほぼ『０』である場合（ステップＳ４０６でＹＥＳ）、ステップＳ４０８に進み、座標値（Ｘ，Ｙ）を出力する。ここで、『ほぼ』と言う表現を用いているが、これは計算上の丸め誤差、あるいは測定誤差等により『Ｚ＝０』と厳密にはならないことを想定したものである。そして、ほぼ『０』であるか否かの判定は、例えば、閾値（例えば、閾値０．１とし、その値以下であれば、ほぼ『０』とみなす）を用いて判定する方法、あるいは上述した計算ループを繰り返した際に、最もＺ座標値が『０』に近くなる状態を判別することで、最適な整数ｎを決定することができる。
【０１２８】
先にも説明したように、図４の信号１１０と信号１１２の関係は、検出信号１０８の位相周期に相当するのであって、整数ｎ（パラメータ）に１を加減算することは、この周期分の補正を実行することと同等である。『ペン先ＳＷ４１が動作している』ということは、『Ｚ≒０』でなければならないということであり、『Ｚ≒０』とならないのは整数ｎのカウントを間違えているからで、真の整数ｎを算出するということは、換言すれば、正確な座標値を算出するということと等価である。
【０１２９】
以上の説明は、不正な座標値を検出したことを検知して、それを補正して正しい座標値を出力するように構成するものであるが、その誤検出は偶発的な要因によって引き起こされる確率が高いので、例えば、誤検出を検知した場合には、その座標値を出力せず、新規に遅延時間を測定して座標値を算出しても良いことは言うまでもない。
【０１３０】
以上説明したように、実施形態３によれば、電気的ノイズあるいは装置が設置されている環境等から発生する音響的ノイズ等により、整数ｎを誤検出して、結果的に座標算出精度が低下させる可能性がある場合に、その整数ｎを用いて座標を算出するのは、操作者が直接画面上をタッチして行う場合にだけに限定し、その場合は『ペン先ＳＷ４１が動作している』状態であり、かつＺ座標値が『Ｚ≒０』（Ｚ＝０を含む所定範囲内）でなければならないという状態であることを利用して、座標の誤検出を検出することができる。
【０１３１】
＜実施形態４＞
実施形態１〜３では、音波の放射を利用した３次元座標入力可能な座標入力装置について説明したが、座標算出方式によって本願発明が限定されるものではない。例えば、表示画面上のＸＹ平面のみの座標を検知することができる座標入力装置と、空間の位置座標を検知することができる座標入力装置を組み合わせて、本発明が想定する『ペン入力』、『近接入力』、『遠隔入力』を実現する装置にも適用が可能であり、その際の座標入力装置の座標算出原理は、両者で別個のものであっても良いし、同一のものであっても良い。
【０１３２】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。その場合、プログラムの機能を有していれば、形態は、プログラムである必要はない。
【０１３３】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１３４】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１３５】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【０１３６】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１３７】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１３８】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【０１３９】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【０１４０】
【発明の効果】
以上説明したように、本発明によれば、座標入力装置の操作状況に応じて好適な座標算出を可能とし、かつその信頼性及び操作性を改善することができる座標入力装置及びその制御方法、プログラムを提供できる。
【図面の簡単な説明】
【図１】本発明の実施形態１の３次元（空間）座標計測可能な座標入力装置の概略構成を示す図である。
【図２】本発明の実施形態１の座標入力ペンの構成を示す図である。
【図３Ａ】本発明の実施形態１の座標入力ペンの動作モードを示す図である。
【図３Ｂ】本発明の実施形態１の座標入力ペンの動作を示すフローチャートである。
【図４】本発明の実施形態１の音波の到達時間検出方法を説明するためのタイミングチャートである。
【図５】本発明の実施形態１の音波の到達時間検出を実現する検出回路のブロック図である。
【図６】本発明の実施形態１の演算制御回路の概略構成を示すブロック図である。
【図７】本発明の実施形態１の座標系を説明するための図である。
【図８】本発明の実施形態１の座標演算方法による性能を説明するための図である。
【図９Ａ】本発明の実施形態２の座標入力ペンの動作モードを示す図である。
【図９Ｂ】本発明の実施形態２の座標入力ペンの動作を示すフローチャートである。
【図１０】本発明の実施形態３の座標値補正動作を示すフローチャートである。
【符号の説明】
１　演算制御回路
２　信号波形検出回路
３　検出センサ
４　座標入力ペン
５　光検出センサ５
６　ディスプレイ
４１　ペン先スイッチ
４２＿ａ、４２＿ｂ　ペンサイドスイッチ
４３　振動発生源
４４　赤外ＬＥＤ
４５　駆動回路
２０１　前置増幅回路
２０３　エンベロープ検出回路
２０５　ゲート信号発生回路
２０６　エンベロープ特異点検出回路
２０７　ｔｇ信号検出回路
２０９　ｔｐ信号検出回路
２１０　周波数検波回路
２１１　制御信号検出回路
【図１】
2004062656.tif 000006
【図２】
2004062656.tif 000007
【図３Ａ】
2004062656.tif 000008
【図３Ｂ】
2004062656.tif 000009
【図４】
2004062656.tif 000010
【図５】
2004062656.tif 000011
【図６】
2004062656.tif 000012
【図７】
2004062656.tif 000013
【図８】
2004062656.tif 000014
【図９Ａ】
2004062656.tif 000015
【図９Ｂ】
2004062656.tif 000016
【図１０】
2004062656.tif 000017