説明

座標入力装置

【発明の詳細な説明】
[産業上の利用分野]
本発明は座標入力装置、特に振動ペンから入力された振動を振動伝達板に複数設けられた振動センサにより検出して前記振動ペンの振動伝達板上での座標を検出する座標入力装置に関するものである。
[従来の技術]
上記のような座標検出方式では、入力タブレットを構成する振動伝達板の構成が簡単であること、また振動伝達板として透明材料を利用できるため、表示器、原稿などに重ねて配置することができるなどの利点がある。
この種の座標入力装置では、振動伝達板に設けられた複数の振動センサにより振動ペンからの入力振動を検出するが、振動伝達板上での振動伝達の際の位相遅延の影響、検出回路の回路遅延時間の影響を補正しないと正しい座標値を検出することができない。回路遅延には、電気的な回路のみならず、振動ペン〜振動伝達板間の機械的に振動が伝達される回路のもつ固有の遅延も含まれる。
[発明が解決しようとする課題]
第8図は横軸に時間t、縦軸に入力点〜振動センサまでの振動伝達距離をとって、ある距離を振動波形のエンベロープが進行する群遅延時間tgと、波形の位相が進行する位相遅延時間tpの変化を示したものである。
図示のように、回路遅延時間etは距離0においても必ず含まれ、各遅延時間の曲線(直線)をグラフの右方向にオフセットさせる。また、位相波形は波長に応じて図示のように規則的な位相遅延を生じるが、距離0における群遅延時間tgと位相遅延時間の差tof、すなわち位相のオフセットは回路遅延の時間の影響により変化する。
振動伝達板上の横波成分を検出することにより振動伝達時間を測定する方式では、群遅延時間tgおよび位相遅延時間tpの両方を用いて振動伝達時間を決定する方法が知られているが、このような方法では、上記の回路遅延時間etおよび位相オフセットtof分の補正を行なわなければ、正しい振動伝達時間を得ることができない。
このため、従来ではあらかじめ測定した平均的な回路遅延時間etおよび位相オフセットtofに応じた補正値を記憶し、これを測定値から減算することにより振動伝達時間を補正する方法が知られている。
ところが、この回路遅延時間et、位相オフセットtofの決定に対しては、ある点でサンプリングされたデータに対して群速度、位相速度、および周期などの定数を用いて演算を行う必要があり、そのため、速度などの値の誤差、また、演算上の誤差によって、座標決定に対して精度の低下を招くことがあった。
また、温度などの環境変動に応じて実際の回路遅延時間は変化するため、従来方式では環境条件の変化にかかわらず正確な振動伝達時間を測定することができないという問題があった。
本発明の課題は以上の問題を解決することである。
[課題を解決するための手段]
以上の課題を解決するために、本発明において、振動ペンから入力された振動を振動伝達板に複数設けられた振動センサにより検出して前記振動ペンの振動伝達板上での座標を検出する座標入力装置において、前記振動伝達板上の任意の入力点から入力された振動の前記各振動センサへの伝達時間から前記任意の入力点の座標値を導出する第1の演算手段と、該第1の演算手段により演算された座標値と、該伝達時間を記憶する記憶手段と、該記憶手段に記憶された座標値及び伝達時間と、前記入力ペンによる座標入力点から前記各センサまでの伝達時間より前記入力座標を演算する第2の演算手段とを有する構成を採用した。
[作 用]
以上の構成によれば、前記任意の入力点から各振動センサへの振動伝達時間および、入力点から各振動センサへの振動伝達時間には同じように回路遅延時間および位相オフセット時間が含まれているため、これらを減算することにより回路遅延時間および位相オフセット時間を除去した振動伝達時間を算出できる。この振動伝達時間は振動センサ位置を起点として計った任意の点から座標入力点までの距離に相当するため、この振動伝達時間に基づき座標演算を行なえば回路遅延時間および位相オフセット時間の影響にかかわらず正確な座標値を得ることができる。
[実施例]
以下、図面に示す実施例に基づき、本発明を詳細に説明する。
第1図は本発明を採用した情報入出力装置の構造を示している。第1図の情報入出力装置は振動伝達板8からなる入力タブレットに振動ペン3によって座標入力を行なわせ、入力された座標情報にしたがって入力タブレットに重ねて配置されたCRTからなる表示器11′に入力画像を表示するものである。
図において符号8で示されたものはアクリル、ガラス板などからなる振動伝達板で振動ペン3から伝達される振動をその角部に3個設けられた振動センサ6に伝達する。本実施例では振動ペン3から振動伝達板8を介して振動センサ6に伝達された超音波振動の伝達時間を計測することにより振動ペン3の振動伝達板8上での座標を検出する。
振動伝達板8は振動ペン3から伝達された振動が周辺部で反射されて中央部の方向に戻るのを防止するためにその周辺部分をシリコンゴムなどから構成された反射防止材7によって支持されている。
振動伝達板8はCRT(あるいは液晶表示器など)など、ドット表示が可能な表示器11′上に配置され、振動ペン3によりなぞられた位置にドット表示を行なうようになっている。すなわち、検出された振動ペン3の座標に対応した表示器11′上の位置にドット表示が行なわれ、振動ペン3により入力された点、線などの要素により構成される画像はあたかも紙に書き込みを行なったように振動ペンの軌跡の後に現れる。
また、このような構成によれば表示器11′にはメニュー表示を行ない、振動ペンによりそのメニュー項目を選択させたり、プロンプトを表示させて所定の位置に振動ペン3を接触させるなどの入力方式を用いることもできる。
さらに、振動伝達板8の入力面の所定位置(位置はまったく任意である)にマーク8aを設けてある。本実施例では、このマーク8aの座標があらかじめROMなどに記憶され、振動ペン3により振動入力を行なわせ、各振動センサ6への振動伝達時間を測定し、この測定値を振動伝達時間の補正に用いる。補正方法に関しては後に詳述する。
振動伝達板8に超音波振動を入力する振動ペン3は、内部に圧電素子などから構成した振動子4を有しており、振動子4の発生した超音波振動を先端が尖ったホーン部5を介して振動伝達板8に伝達する。
第2図は振動ペン3の構造を示している。振動ペン3に内蔵された振動子4は、振動子駆動回路2により駆動される。振動子4の駆動信号は第1図の演算および制御回路1から低レベルのパルス信号として供給され、低インピーダンス駆動が可能な振動子駆動回路2によって所定のゲインで増幅された後、振動子4に印加される。
電気的な駆動信号は振動子4によって機械的な超音波振動に変換され、ホーン部5を介して振動板8に伝達される。
振動子4の振動周波数はアクリル、ガラスなどの振動伝達板8に板波を発生させることができる値に選択される。また、振動子駆動の際、振動伝達板8に対して第2図R>図の垂直方向に振動子4が主に振動するような振動モードが選択される。また、振動子4の振動周波数を振動子4の共振周波数とすることで効率のよい振動変換が可能である。
上記のようにして振動伝達板8に伝えられる弾性波は板波であり、表面波などに比して振動伝達板8の表面の傷、障害物などの影響を受けにくいという利点を有する。
再び、第1図において、振動伝達板8の角部に設けられた振動センサ6も圧電素子などの機械〜電気変換素子により構成される。3つの振動センサ6の各々の出力信号は波形検出回路9に入力され、後述の波形検出処理により、各センサへの振動到達タイミングを検出する。この検出タイミング信号は演算制御回路1に入力される。
演算制御回路1は波形検出回路から入力された検出タイミングにより各センサへの振動伝達時間を検出し、さらにこの振動伝達時間から振動ペン3の振動伝達板8上での座標入力位置を検出する。
検出された振動ペン3の座標情報は演算制御回路1において表示器11′による出力方式に応じて処理される。すなわち、演算制御回路は入力座標情報に基づいてビデオ信号処理装置10を介して表示器11′の出力動作を制御する。
第3図は第1図の演算制御回路1の構造を示している。ここでは主に振動ペン3の駆動系および振動センサ6による振動検出系の構造を示している。
マイクロコンピュータ11は内部カウンタ、ROM11aおよびRAM11bを内蔵している。ROM11aには、先のマーク8aの座標値が格納される。また、RAM11bには、後述の振動伝達時間補正に用いられる補正値、すなわち振動伝達板8のマーク8aから入力された振動の各振動センサ6への伝達時間が格納される。
駆動信号発生回路12は第1図の振動子駆動回路2に対して所定周波数の駆動パルスを出力するもので、マイクロコンピュータ11により座標演算用の回路と同期して起動される。
カウンタ13の計数値はマイクロコンピュータ11によりラッチ回路14にラッチされる。
一方、波形検出回路9は、振動センサ6の出力から後述のようにして振動伝達時間を計測するための検出信号のタイミング情報を出力する。これらのタイミング情報は入力ポート15にそれぞれ入力される。
波形検出回路9から入力されるタイミング信号は入力ポート15に入力され、ラッチ回路14内の各振動センサ6に対応する記憶領域に記憶され、その結果がマイクロコンピュータ11に伝えられる。
すなわち、カウンタ13の出力データのラッチ値として振動伝達時間が表現され、この振動伝達時間値により座標演算が行なわれる。このとき、判定回路16は複数の振動センサ6からの波形検出のタイミング情報がすべて入力されたかどうかを判定し、マイクロコンピュータ11に報知する。
表示器11′の出力制御処理は入出力ポート17を介して行なわれる。
第4図は第1図の波形検出回路9に入力される検出波形と、それに基づく振動伝達時間の計測処理を説明するものである。第4図において符号41で示されるものは振動ペン3に対して印加される駆動信号パルスである。このような波形により駆動された振動ペン3から振動伝達板8に伝達された超音波振動は振動伝達板8内を通って振動センサ6に検出される。
振動伝達板8内を振動センサ6までの距離に応じた時間tgをかけて信号した後、振動は振動センサ6に到達する。第4図の符号42は振動センサ6が検出した信号波形を示している。本実施例において用いられる板波においては検出波形のエンベロープ421と位相422の関係は振動伝達距離に応じて変化する。
ここで、エンベロープの進む速度を群速度Vg、位相速度をVpとする。この群速度および位相速度の違いから振動ペン3と振動センサ6間の距離を検出することができる。
まず、エンベロープ421のみに着目すると、その速度はVgであり、ある特定の波形上の点、たとえばピークを第4図の符号43のように検出すると、振動ペン3および振動センサ6の間の距離dはその振動伝達時間をtgとしてd=Vg・tg …(1)
この式は振動センサ6の1つに関するものであるが、同じ式により他の2つの振動センサ6と振動ペン3の距離を示すことができる。
さらに、より高精度な座標値を決定するためには、位相信号の検出に基づく処理を行なう。第4図の位相波形422の特定の検出点、たとえば振動印加から、ピーク通過後のゼロクロス点までの時間をtpとすれば振動センサと振動ペンの距離はd=n・λp+Vp・tp …(2)
となる。ここでλpは弾性波の波長、nは整数である。
前記の(1)式と(2)式から上記の整数nはn=[(Vg・tg−Vp・tp)/λp+1/N] …(3)
と示される。ここでNは0以外の実数であり、適当な数値を用いる。たとえばN=2とし、±1/2波長以上であれば、nを決定することができる。
上記のようにして求めたnを(2)式に代入することで、振動ペン3および振動センサ6間の距離を正確に測定することができる。
第4図に示した2つの振動伝達時間tgおよびtpの測定のため、波形検出回路9はたとえば第5図に示すように構成することができる。
第5図において、振動センサ6の出力信号は前述の増幅回路51により所定のレベルまで増幅される。
増幅された信号はエンベロープ検出回路52に入力され、検出信号のエンベロープのみが取り出される。抽出されたエンベロープのピークのタイミングはエンベロープピーク検出回路53によって検出される。ピーク検出信号はモノマルチバイブレータなどから構成された信号検出回路54によって所定波形のエンベロープ遅延時間検出信号Tgが形成され、演算制御回路1に入力される。
また、このTg信号のタイミングと、遅延時間調整回路57によって遅延された元信号から検出回路58により位相遅延時間検出信号Tpが形成され、演算制御回路1に入力される。
すなわち、Tg信号は単安定マルチバイブレータ55により所定幅のパルスに変換される。また、コンパレートレベル供給回路56はこのパルスタイミングに応じてtp信号を検出するためのしきい値を形成する。この結果、コンパレートレベル供給回路56は第3図の符号44のようなレベルとタイミングを有する信号44を形成し、検出回路58に入力する。
すなわち、単安定マルチバイブレータ55およびコンパレートレベル供給回路56は位相遅延時間の測定がエンベロープピーク検出後の一定時間のみしか作動しないようにするためのものである。
この信号はコンパレータなどから構成された検出回路58に入力され、第4図のように遅延された検出波形と比較され、この結果符号45のようなtp検出パルスが形成される。
以上に示した回路は振動センサ6の1つ分のもので、他のそれぞれのセンサに対しても同じ回路が設けられる。センサの数を一般化してh個とすると、エンベロープ遅延時間Tg1〜h、位相遅延時間Tp1〜hのそれぞれh個の検出信号が演算制御回路1に入力される。
第3図の演算制御回路では上記のTg1〜h、Tp1〜h信号を入力ポート15から入力し、各々のタイミングをトリガとしてカウンタ13のカウント値をラッチ回路14に取り込む。前記のようにカウンタ13は振動ペンの駆動と同期してスタートされているので、ラッチ回路14にはエンベロープおよび位相のそれぞれに遅延時間を示すデータが取り込まれる。
第6図のように振動伝達板8の角部に3つの振動センサ6を符号S1からS3の位置に配置すると、第4図に関連して説明した処理によって振動ペン3の位置Pから各々の振動センサ6の位置までの直線距離d1〜d3を求めることができる。さらに演算制御回路1でこの直線距離d1〜d3に基づき振動ペン3の位置Pの座標(x、y)を3平方の定理から次式のようにして求めることができる。
x=X/2+(d1+d2)(d1−d2)/2X …(4)
y=Y/2+(d1+d3)(d1−d3)/2Y …(5)
ここでX、YはS2、S3の位置の振動センサ6と原点(位置S1)のセンサのX、Y軸に沿った距離である。
以上のようにして振動ペン3の位置座標をリアルタイムで検出することができる。
次に以上の構成において、上述のペン・センサ間距離および座標決定の演算において、回路遅延時間etおよび位相オフセット時間tofの影響を除去するための補正処理について説明する。
前記ラッチ回路14によりラッチされた振動伝達時間は、回路遅延時間etおよび位相オフセット時間tofを含んでいる。これらにより生じる誤差は、振動ペン3から振動伝達板8、振動センサ6へと行なわれる振動伝達の際に必ず同じ量が含まれる。
そこで、たとえば、第1図のマーク8aの位置から、振動センサ6の1つまでの距離をRとし、実測されたマーク8aからセンサまでの振動伝達時間をtg′r、tp′r、また、マーク8aからセンサまでの真の伝達時間をtgr、tprとすれば、これらは回路遅延時間etおよび位相オフセットtofに関してtg′r=tgr+et …(6)
tp′r=tgr+et+tof …(7)
の関係がある。
一方、任意の入力点P点での実測値tg′p、tp′pは、同様にtg′p=tgp+et …(8)
tp′p=tpp+et+tof …(9)
となる。この両者の差を求めると、tg′p−tg′r=(tgp+et)−(tgr+et)=tgp−tgr …(10)
tp′p−tp′r=(tpp+et+tof)−(tpr+et+tof)
=tpp−tpr …(11)
となり、各伝達時間に含まれる回路遅延時間etおよび位相オフセットtofが除去され、マーク8aの位置から入力点Pの間のセンサ位置を起点とする距離に応じた真の振動伝達時間の差を求めることができる。
時間差値に対して前述の(2)、(3)式の演算を用いれば両地点の距離差を求めることができ、マーク8aからセンサまでの距離RはあらかじめROM11aに格納されており既知であるので、これらの和を求めれば入力点・センサ間の距離を決定でき、さらに前述の(4)、(5)式の演算によって座標位置を決定することができる。
マーク8aの位置への振動入力による補正値tg′r、tp′rの取得は所定タイミング、たとえば電源投入直後などに表示器11′に表示を行なうことなどにより操作者を促して行なわせればよい。あるいは、この補正値の取得は動作中に所定時間ごとに行なってもよい。取得した補正値は、RAM11bに格納しておけばよい。
上記補正を動作の際に必ず行なうようにすれば、環境変動などの影響により生じる回路遅延時間などの変化を適切に補正することができる。しかし、工場出荷時に補正値を取り込み、そのデータを不揮発性メモリなどに記憶させる方式によっても、少なくとも装置各々のバラツキをもつ回路遅延、位相オフセットを適切に補正することができる。
前記実施例では既知のマーク8aの位置点での遅延時間を測定することが必要であり、操作者はマーク8aの位置に正確に座標入力を行なうことが要求される。しかし、次のような方法を用いることにより、任意の位置で補正値入力のための座標入力を行なうことができる。
すなわち、センサ間の遅延時間差を用いて双曲線関数から座標を決定し、その値から遅延時間補正を行う。
遅延時間差による座標決定は、例えば第7図のようにセンサを配置し対向するセンサを結ぶ直線の交点0を原点とした場合、センサS0とS1間の距離の差がa、S2とS3間の距離の差がbとすれば、指示点P(x,y)は次式のように双曲線関数の交点として求められる。




ただしc2=4X2−a2,d2=4Y2−b2,c2d2−a2b2>0 これらの式によって任意の入力点の座標を決定できる。この際の各センサへの振動伝達時間を補正値としてRAM11bに格納しておけば、上記の補正処理を行なうことができる。
このような手法によれば、任意位置での補正値の取得が可能になるため、ユーザでも簡単に補正が行える。また、例えば一定時間間隔で定期的あるいは不定期に(例えば座標入力中にある任意のエリア内を指示した時)この動作を行えば、ユーザが意識することなく、自動的に補正値を取り込むことができる。また、温度変化などによる回路遅延時間の変化などを完全に補正することが可能となる。
ただし、(12)、(13)式を見てわかるように、マイクロプロセッサを用いた演算が非常に複雑になるため、精度および計算スピードなどの点から、リアルタイムの座標決定に対しては前述の方法の方が有利である。
しかしながら、本実施例のように補正値を取り込む場合には時間の制限はあまりなく、また、計算の桁数をかせぐことができるので、座標決定に対して充分使用可能である。
第7図のようなセンサ配置であっても、前述と同様に三平方の定理により座標決定が可能なのはいうまでもない。
以上の実施例においては、主に板波を用いた座標入力装置について説明したが、本発明の構成はこれに限定されることなく、振動伝達を媒介とする種々の座標入力装置に適用可能なのはいうまでもない。
[発明の効果]
以上から明らかなように、本発明によれば、振動ペンから入力された振動を振動伝達板に複数設けられた振動センサにより検出して前記振動ペンの振動伝達板上での座標を検出する座標入力装置において、前記振動伝達板上の任意の入力点から入力された振動の前記各振動センサへの伝達時間から前記任意の入力点の座標値を導出する第1の演算手段と、該第1の演算手段により演算された座標値と、該伝達時間を記憶する記憶手段と、該記憶手段に記憶された座標値及び伝達時間と、前記入力ペンによる座標入力点から前記各センサまでの伝達時間より前記入力座標を演算する第2の演算手段とを有する構成を採用しているので、任意の入力点から座標入力点までの距離に相当する振動伝達時間を算出する際の減算により回路遅延時間および位相オフセット時間の影響を除去することができ、しかも実測された補正値を用いるので環境条件にかかわらず正確な座標値を得ることができる、さらに、通常の座標入力を上記任意の点への座標入力として扱えば、面倒な補正値入力操作を必要とせず、自動的に補正を行なえるなどの優れた効果がある。
【図面の簡単な説明】
第1図は本発明を採用した情報入出力装置の構成を示した説明図、第2図は第1図の振動ペンの構造を示した説明図、第3図は第1図の演算制御回路の構造を示したブロック図、第4図は振動ペンと振動センサの間の距離測定を説明する検出波形を示した波形図、第5図は第1図の波形検出回路の構成を示したブロック図、第6図は振動センサの配置を示した説明図、第7図は異なる実施例におけるセンサ配置を示した説明図、第8図は従来の座標入力装置の問題点を示した線図である。
1……演算制御回路、3……振動ペン
4……振動子、6……振動センサ
8……振動伝達板、8a……マーク
11……マイクロコンピュータ
11a……ROM、11b……RAM

【特許請求の範囲】
【請求項1】振動ペンから入力された振動を振動伝達板に複数設けられた振動センサにより検出して前記振動ペンの振動伝達板上での座標を検出する座標入力装置において、前記振動伝達板上の任意の入力点から入力された振動の前記各振動センサへの伝達時間から前記任意の入力点の座標値を導出する第1の演算手段と、該第1の演算手段により演算された座標値と、該伝達時間を記憶する記憶手段と、該記憶手段に記憶された座標値及び伝達時間と、前記入力ペンによる座標入力点から前記各センサまでの伝達時間より前記入力座標を演算する第2の演算手段と、を有することを特徴とする座標入力装置。

【第2図】
image rotate


【第3図】
image rotate


【第7図】
image rotate


【第1図】
image rotate


【第4図】
image rotate


【第5図】
image rotate


【第6図】
image rotate


【第8図】
image rotate


【特許番号】第2503042号
【登録日】平成8年(1996)3月13日
【発行日】平成8年(1996)6月5日
【国際特許分類】
【出願番号】特願昭63−63181
【出願日】昭和63年(1988)3月18日
【公開番号】特開平1−237712
【公開日】平成1年(1989)9月22日
【出願人】(999999999)キヤノン株式会社