JP2019061725A - ポインタの位置検出方法 - Google Patents

ポインタの位置検出方法 Download PDF

Info

Publication number
JP2019061725A
JP2019061725A JP2019010852A JP2019010852A JP2019061725A JP 2019061725 A JP2019061725 A JP 2019061725A JP 2019010852 A JP2019010852 A JP 2019010852A JP 2019010852 A JP2019010852 A JP 2019010852A JP 2019061725 A JP2019061725 A JP 2019061725A
Authority
JP
Japan
Prior art keywords
pen
detection
pointer
touch
detected
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019010852A
Other languages
English (en)
Other versions
JP6616534B2 (ja
Inventor
佳生 野村
Yoshio Nomura
佳生 野村
小田 康雄
Yasuo Oda
康雄 小田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wacom Co Ltd
Original Assignee
Wacom Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wacom Co Ltd filed Critical Wacom Co Ltd
Priority to JP2019010852A priority Critical patent/JP6616534B2/ja
Publication of JP2019061725A publication Critical patent/JP2019061725A/ja
Priority to JP2019202072A priority patent/JP6952753B2/ja
Application granted granted Critical
Publication of JP6616534B2 publication Critical patent/JP6616534B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Position Input By Displaying (AREA)

Abstract

【課題】アクティブペンの接触位置とパッシブポインタの接触位置とを正しく識別できるポインタの位置検出方法を提供する。【解決手段】信号を送信しないパッシブポインタの位置と、先端部分に設けられたペン電極とセンサパターンとの間に形成されたキャパシタンスを介してペン信号を送信可能に構成されたアクティブペンの位置と、を検出するポインタの位置検出方法であって、ペン電極を介して送信されたペン信号を検出し、検出されたペン信号のレベルに基づいてアクティブペンの位置であるペン位置を検出するペン検出ステップS2〜S4と、センサパターンにおけるキャパシタンスの変化を検出することによって、それぞれパッシブポインタの位置の候補である1以上の候補タッチ位置を検出し、1以上の候補タッチ位置の中から上記ペン位置を除いてなる1以上の候補タッチ位置をパッシブポインタ位置として出力するタッチ検出ステップS5〜S9と、を含む。【選択図】図3

Description

本発明はポインタの位置検出方法に関し、特に、アクティブ静電方式の電子ペンの検出と、指などのパッシブポインタの検出とを並行して実施するための、ポインタの位置検出方法に関する。
従来、電子ペンとして、電磁共鳴方式のもの(以下、「EMRペン」と称する)が知られている。EMRペンは、ペン先から交番磁界を送信するように構成された電子ペンである。EMRペンの先端は、交番磁界を乱さないよう樹脂などの不導体によって構成される。
また、近年、アクティブ静電方式のもの(以下、「アクティブペン」と称する)の開発が進んできている。アクティブペンは、ペン先から、電界により信号を送信するように構成された電子ペンである。アクティブペンの先端は、電界を生成するアンテナとしての役割を果たす金属などの導体(ペン電極)を含んで構成される。
また近年、例えば指あるいは指と同様に信号を送信しない補助デバイス(以下、「パッシブポインタ」と総称する)を、電子ペンと併用して用いる例が増加している。例えば、右手に電子ペンを持って絵を描きながら、左手の指あるいは補助デバイスでズームイン、ズームアウト、回転などの補助作業を行う、というような例である。このような場合、ポインタの検出を行う位置検出器は、電子ペンの検出とパッシブポインタの検出とを並行して実施する必要がある。
特許文献1には、EMRペンの検出とパッシブポインタの検出とを並行して実施する位置検出器の例が開示されている。同文献の図4にも示されるように、EMRペンの検出とパッシブポインタの検出とを並行して実施する位置検出器においては、それぞれの検出に用いるセンサを別々に用意する必要がある。EMRペンの検出用センサには、交番磁界を生成する機能と、EMRペンが送信した信号を受信する機能とが設けられる。一方、パッシブポインタの検出用センサには、パッシブポインタの先端(例えば、指先)とセンサ内に配置される電極との間に生ずる容量結合を検出する機能が設けられる。パッシブポインタは交番磁界に応じて信号を送信せず、EMRペンはセンサ内の電極と容量結合しないことから、EMRペンの検出とパッシブポインタの検出とは、完全に同じタイミングで(時分割によらずに)実行され得る。
また、特許文献2には、アクティブペンの検出とパッシブポインタの検出とを並行して実施する位置検出器の例が開示されている。同文献の図6にも示されるように、アクティブペンの検出とパッシブポインタの検出とは、同じセンサを用いて実行される。このセンサは、パッシブポインタに関しては、特許文献1に関して上述したパッシブポインタの検出用センサと同様に、パッシブポインタの先端とセンサ内に配置される電極との間に生ずる容量結合を検出することによって、検出を実行する。一方、アクティブペンに関しては、アクティブペンに対して信号を送信し、それに応じてアクティブペンが送信した信号を受信することによって、検出を実行する。このとき、アクティブペンの先端に配置される導体(ペン電極)と、センサ内に配置される電極とは、それぞれ信号を送受信するためのアンテナとして機能する。パッシブポインタの検出とアクティブペンの検出とが同じセンサによって行われることから、アクティブペンの検出とパッシブポインタの検出とを完全に同じタイミングで実行することはできず、両者は時分割で実行される。
特許第4787087号公報 特許第6082172号公報
ところで、アクティブペンの検出とパッシブポインタの検出とを並行して実施する従来の位置検出器には、アクティブペンの接触位置とパッシブポインタの接触位置とを相互に誤認識してしまうという問題があり、改善が求められていた。以下、詳しく説明する。
まず、位置検出器がアクティブペンの接触位置をパッシブポインタの接触位置と誤認識してしまうのは、アクティブペンのペン電極がセンサ内の電極との間に容量結合を発生させるためである。位置検出器は、この容量結合をパッシブポインタの接触によって発生した容量結合と区別できないので、パッシブポインタが接触したものと誤認識してしまう。近年では複数のパッシブポインタを認識可能に構成された位置検出器も多くなっているが、そのような位置検出器であれば、アクティブペンの接触を、2つ目、3つ目のパッシブポインタの接触と誤認識してしまうことになる。
次に、位置検出器がパッシブポインタの接触位置をアクティブペンの接触位置と誤認識してしまうのは、アクティブペンの送信信号が人間の体を通じて掌などに伝わり、そこからセンサに向けて送信されてしまうためである。位置検出器は、こうして受信される信号をアクティブペンのペン電極から直接送信されたものと区別できないので、掌の接触位置を、アクティブペンの接触位置と誤認識してしまう。
したがって、本発明の目的の一つは、アクティブペンの接触位置とパッシブポインタの接触位置とを正しく識別できるポインタの位置検出方法を提供することにある。
また、上述したようにアクティブペンの検出とパッシブポインタの検出とは時分割で実行される。仮に、アクティブペンの検出に要する時間を1回あたり3ミリ秒、パッシブポインタの検出に要する時間を1回あたり2ミリ秒とし、アクティブペン検出とパッシブポインタ検出を交互に実行することとすると、アクティブペンの検出レート及びパッシブポインタの検出レートは等しくなる(ともに約200(1/5×1000)回/秒)。
このような場合において、アクティブペンの検出レートをさらに向上させようとすると、例えば、アクティブペン検出を2回続けて行った後、パッシブポインタ検出を1回行うようにすることなどが考えられる。
しかし、上記のように単純にアクティブペンの検出とパッシブペンの検出とを適当な回数の比率で実行させる制御方法をとったのでは、アクティブペン検出の間隔が一定でなくなる場合がある。例えば上記の例のような場合、アクティブペン検出が2回連続して実行された後、次のアクティブペン検出はパッシブポインタ検出が完了するまで間がおかれることになる。すると、センサコントローラから順次出力されるアクティブペンの座標データが時間的に等間隔に送信されていることを期待して動作する描画アプリケーションなどにおいて、描画結果が不自然になってしまうという問題が生ずるため、改善が求められていた。
したがって、本発明の目的の他の一つは、アクティブペン及びパッシブポインタ双方の検出レートを維持しつつ、アクティブペンの検出を等間隔で実行できるポインタの位置検出方法を提供することにある。
また、位置検出器がアクティブペンの検出を行う際には、アクティブペンもパッシブポインタも接触していない位置をアクティブペンの接触位置として誤認識してしまう場合がある。これは、アクティブペンのペン電極からセンサ内の電極を通ってアクティブペンを持っている手とは反対側の腕に入り、人体を経由してアクティブペンに戻る電流経路が形成され、その結果として、この腕の下方でアクティブペンの送信信号が検出されてしまう場合があることによるものである。以下、このようにして誤認識されたアクティブペンの接触位置を「ゴースト位置」と称する。
例えばアクティブペンが位置検出器を構成するタブレットのベゼル領域からタッチ面内に急に移動するような場合、位置検出器は、実際のペン位置を検出する前にゴースト位置を検出してしまうことがある。そうすると、検出されたゴースト位置と、その直後に検出された実際のペン位置との間に不要な線分が描画されてしまうことになるので、改善が必要とされていた。
したがって、本発明の目的のさらに他の一つは、ゴースト位置の存在によって不要な線分が描画されてしまうことを防止できるポインタの位置検出方法を提供することにある。
本発明によるポインタの位置検出方法は、センサパターンに接続されたセンサコントローラによって実行され、信号を送信しないパッシブポインタの位置と、先端部分に設けられたペン電極から信号を送信可能に構成されたアクティブペンの位置と、を検出するポインタの位置検出方法であって、前記ペン電極を介して送信されたペン信号を検出し、検出された前記ペン信号のレベルに基づいて前記アクティブペンの位置であるペン位置を検出するペン検出ステップと、前記センサパターンにおけるキャパシタンスの変化を検出することによって、それぞれ前記パッシブポインタの位置の候補である1以上の候補タッチ位置を検出し、前記1以上の候補タッチ位置の中から前記ペン位置を除いてなる1以上の候補タッチ位置を、前記パッシブポインタの位置であるパッシブポインタ位置として出力するタッチ検出ステップと、を含む、ポインタの位置検出方法である。
また、本発明の他の側面によるポインタの位置検出方法は、所定の領域内に存在するポインタの位置検出方法であって、第1の検出レートで第1検出処理の1/Nの処理を実行し、前記1/Nの処理に基づいて第1のポインタが存在するか否かを示す部分検出データを取得してメモリに保持する第1の検出ステップと、前記第1の検出ステップが前記部分検出データを前記メモリに新たに保持する都度、それまでに前記メモリに保持されているN−1個分の前記部分検出データと、新たに保持された前記部分検出データとを合成し、前記所定の領域の全体について前記第1のポインタが存在するか否かを示す全体検出データを生成する合成ステップと、前記全体検出データを前記第1の検出レートで出力するレポートステップと、を含む、ポインタの位置検出方法である。
また、本発明のさらに他の側面によるポインタの位置検出方法は、所定の領域内に存在するポインタの位置検出方法であって、第2の検出レートで第2検出処理の全部を実行し、第2のポインタの検出を実行する第2の検出ステップと、第1の検出レートで第1検出処理の1/Nの処理を実行し、前記1/Nの処理に基づいて前記第2のポインタとは異なる第1のポインタが存在するか否かを示す部分検出データを取得してメモリに保持する第1の検出ステップと、を含み、前記第2の検出ステップと、前記第1の検出ステップとは、交互に実行される、ポインタの位置検出方法である。
また、本発明のさらに他の側面によるポインタの位置検出方法は、K個の第1の電極及びK個の第2の電極を含む所定の領域内に存在するポインタの位置検出方法であって、それぞれK個のパルスからなるN×M個のパルス群をメモリから1パルス群ずつ順次読み出し、該読み出しの都度、読み出したパルス群を構成するK個のパルスを前記K個の第1の電極のそれぞれに対して送信し、該送信の結果として前記K個の第2の電極のそれぞれから出力される信号のレベルを示す部分検出データを前記メモリに格納する検出ステップと、前記検出ステップによってM個のパルス群のそれぞれに対応する前記部分検出データが前記メモリに格納される都度、前記第2の電極ごとに、それまでに前記メモリに格納されていた(N−1)×M個のパルス群のそれぞれに対応する前記部分検出データと合成し、対応する前記第2の電極上に前記ポインタが存在するか否かを示す合成検出データを生成する合成ステップと、を含む、ポインタの位置検出方法である。
また、本発明のさらに他の側面によるポインタの位置検出方法は、センサパターンに接続されたセンサコントローラによって実行され、信号を送信しないパッシブポインタの位置と、先端部分に設けられたペン電極から信号を送信可能に構成されたアクティブペンの位置と、を検出するポインタの位置検出方法であって、前記センサパターンにおけるキャパシタンスの変化を検出することによって前記パッシブポインタの位置を検出するとともにパーム領域を決定するタッチ検出ステップと、前記ペン電極を介して送信されたペン信号を検出し、検出された前記ペン信号のレベルに基づいて前記アクティブペンの位置であるペン位置を検出するペン検出ステップと、を含み、前記ペン検出ステップは、(1)前回検出した前記ペン位置が前記パーム領域を基準とする所定領域内に入っており、かつ、(2)今回検出した前記ペン位置と前回得られた前記ペン位置との間の距離が所定値を超えている場合に、前記アクティブペンがタッチ面から離れたことを示すペンアップ情報を出力する、ポインタの位置検出方法である。
また、本発明のさらに他の側面によるポインタの位置検出方法は、センサパターンに接続されたセンサコントローラによって実行され、信号を送信しないパッシブポインタの位置と、先端部分に設けられたペン電極から信号を送信可能に構成されたアクティブペンの位置と、を検出するポインタの位置検出方法であって、前記センサパターンにおけるキャパシタンスの変化を検出することによって前記パッシブポインタの位置を検出するとともにパーム領域を決定するタッチ検出ステップと、前記ペン電極を介して送信されたペン信号を検出し、検出された前記ペン信号のレベルに基づいて前記アクティブペンの位置であるペン位置を検出するとともに、前記アクティブペンが送信したペン信号に基づき筆圧を検出するペン検出ステップと、を含み、前記ペン検出ステップは、今回検出した前記ペン位置が前記パーム領域の近傍に存在するか否かを判定し、存在すると判定した場合に、前回検出した前記筆圧が無効であった場合には今回検出した前記ペン位置を無効とし、前回検出した前記筆圧が有効であった場合には今回検出した前記ペン位置を有効とする、ポインタの位置検出方法である。
本発明にかかるポインタの位置検出方法によれば、メモリに保持されたアクティブペン位置に応じて、パッシブポインタ位置として出力する1以上の候補タッチ位置を選択できるので、アクティブペンの接触位置とパッシブポインタの接触位置とを正しく識別することが可能になる。
本発明にかかるポインタの位置検出方法によれば、第1検出処理(パッシブポインタの位置検出処理)をN回に分けて実行するので、アクティブペン及びパッシブポインタ双方の検出レートを維持しつつ、アクティブペンの検出を等間隔で実行することが可能になる。
本発明にかかるポインタの位置検出方法によれば、今回検出したペン位置と前回検出したペン位置との間の距離が所定値を超えている場合にペンアップ情報を出力することができるので、ゴースト位置の存在によって不要な線分が描画されてしまうことを防止することが可能になる。
本発明の第1の実施の形態による位置検出システム1の使用状態の一例を示す図である。 本発明の背景技術による位置検出器に設けられるセンサコントローラが実行するポインタの位置検出処理の概略を示すフロー図である。 本発明の実施の形態によるセンサコントローラ31が実行するポインタの位置検出処理の概略を示すフロー図である。 図1に示したタブレット3の構成を示す図である。 図4に示したMCU40が実行する指4の位置検出処理の原理を示す図である。 (a)は、本発明の実施の形態による出力位置決定処理で利用されるペン位置テーブルを示す図であり、(b)は、本発明の実施の形態による出力位置決定処理で利用されるタッチ位置テーブルを示す図である。 図6に示したペン位置テーブル及びタッチ位置テーブルを用いてMCU40が行う出力位置決定処理の一例を示す図である。 図6に示したペン位置テーブル及びタッチ位置テーブルを用いてMCU40が行う出力位置決定処理の一例を示す図である。 図3に示したフロー図の詳細を示す図である。 図3に示したフロー図の詳細を示す図である。 本発明の実施の形態の第4の変形例によるセンサコントローラ31が実行するポインタの位置検出処理を示すフロー図である。 (a)は、本発明の背景技術によるポインタの位置検出処理にかかる制御シーケンスを示す図であり、(b)は、本発明の実施の形態によるポインタの位置検出処理にかかる制御シーケンスを示す図である。 16×16のセンサ30とともに用いられる指検出用信号FDSの一例を示す図である。 本発明の実施の形態による1/Nの処理の内容の第1の例を示す図である。 本発明の実施の形態による1/Nの処理の内容の第2の例を示す図である。 本発明の実施の形態による1/Nの処理の内容の第3の例を示す図である。 本発明の実施の形態による1/Nの処理の内容の第4の例を示す図である。 本発明の実施の形態による1/Nの処理の内容の第5の例を示す図である。 第5の例におけるシフトレジスタ40aの具体的な記憶内容の一例を示す図である。 第5の例におけるシフトレジスタ40aの具体的な記憶内容の他の一例を示す図である。 (a)は、本発明の実施の形態の第1の変形例によるポインタの位置検出処理にかかる制御シーケンスを示す図であり、(b)は、本発明の実施の形態の第2の変形例によるポインタの位置検出処理にかかる制御シーケンスを示す図であり、(c)は、本発明の実施の形態の第3の変形例によるポインタの位置検出処理にかかる制御シーケンスを示す図である。 本発明の第2の実施の形態による位置検出システム1の使用状態の一例を示す図である。 本発明の第2の実施の形態の背景技術によるホストプロセッサ32の動作を説明する図である。 本発明の第2の実施の形態によるセンサコントローラ31が実行するポインタの位置検出処理を示すフロー図である。
以下、添付図面を参照しながら、本発明の実施の形態について詳細に説明する。
図1は、本発明の第1の実施の形態による位置検出システム1の使用状態の一例を示す図である。同図に示すように、本実施の形態による位置検出システム1はアクティブペン2及びタブレット3を備える。タブレット3はタッチ面3aを有しており、タッチ面3a上におけるアクティブペン及びパッシブポインタの位置を検出可能に構成される。図1には、アクティブペン2のペン先、パッシブポインタとしての指4の先端、及び、アクティブペン2を保持しているユーザの手5がタッチ面3aに接触している様子を示している。なお、ユーザの指4はパッシブポインタの一例として示しているもので、本実施の形態においてパッシブポインタの種類は問わない。以下の説明では、アクティブペン2と指4に代表されるパッシブポインタとをまとめて、「ポインタ」と称する場合がある。
ここで、本実施の形態の内容について詳しく説明する前に、本発明の概要について、図2及び図3を参照しながら説明する。
まず図2は、本発明の背景技術によるタブレットに設けられるセンサコントローラ(図示せず)が実行するポインタの位置検出処理の概略を示すフロー図である。同図に示すように、本発明の背景技術によるセンサコントローラは、ステップS101〜S106の処理を繰り返し実行するよう構成される(ステップS100)。
ステップS101〜S106の処理について具体的に説明すると、センサコントローラはまず初めにアクティブペン2の位置検出処理を実行し(ステップS101)、検出した位置をホストプロセッサ(図示せず)に出力する(ステップS102)。続いて、再度アクティブペン2の位置検出処理を実行し(ステップS103)、検出した位置をホストプロセッサに出力する(ステップS104)。次に、センサコントローラは指4の位置検出処理を実行し(ステップS105)、検出した位置をホストプロセッサに出力する(ステップS106)。
ステップS101,S103と2回続けてアクティブペン2の位置検出処理を行っているのは、上述したように、アクティブペン2の検出レートを確保するためである。しかしながら、こうすることでアクティブペン2の検出間隔が一定でなくなってしまうため、上述したように、例えばセンサコントローラから順次出力されるアクティブペン2の座標データが時間的に等間隔に送信されていることを期待して動作する描画アプリケーションなどにおいて、描画結果が不自然になってしまうという問題が発生する。
また、上述したように、アクティブペン2の位置検出処理には、手5の接触位置をアクティブペンの位置として誤検出してしまう可能性があるという問題があり、指4の位置検出処理には、アクティブペン2又は手5の接触位置を指4の位置として検出してしまう可能性があるという問題がある。
本実施の形態によるタブレット3に設けられるセンサコントローラ31(後述する図4を参照)が行う処理は、これらの問題を解消できるものとなっている。以下、図3を参照しながら、その概要について説明する。
図3は、センサコントローラ31が実行するポインタの位置検出処理の概略を示すフロー図である。同図に示すように、センサコントローラ31は、ステップS2〜S9の処理を繰り返し実行するよう構成される(ステップS1)。このうちステップS2〜S4は、アクティブペン2の位置であるペン位置を検出するためのペン検出ステップであり、ステップS5〜S9は、指4の位置であるパッシブポインタ位置を検出するためのタッチ検出ステップである。
ステップS2〜S9の処理について、図2に示した処理と比較しながら具体的に説明すると、まずステップS2の位置検出処理自体は、ステップS101の位置検出処理と同様である。しかし、検出した位置の出力処理は、背景技術のステップS102とは異なるものとなっている。すなわち、センサコントローラ31は、ステップS2で検出した位置をそのままホストプロセッサ32(後述する図4を参照)に出力するのではなく、検出した1以上の位置(候補ペン位置)の中からペン位置を決定する処理(以下、「ペン位置決定処理」と称する)を行い(ステップS3)、決定したペン位置のみをホストプロセッサ32に出力する(ステップS4)ように構成される。ペン位置決定処理の具体的な内容については後述するが、この処理の中で手5の接触位置を出力対象から除外することができるので、センサコントローラ31は、アクティブペン2の接触位置を正しく識別できる。
次に、センサコントローラ31は、ステップS5で指4の位置検出処理を行うが、1回の処理では、ステップS105で実行される位置検出処理の1/Nの処理のみを実行する(ステップS5)。1/Nの処理の具体的な内容については後述するが、1/Nしか実行しないので、センサコントローラ31は、指4の位置を得るためにN回分の結果を合成する必要がある。そこで、センサコントローラ31は、1/Nの処理で得た部分的な検出結果を示すデータ(以下、「部分検出データ」と称する)を記録しておき(ステップS6)、過去に記録したN−1回分の部分検出データとの合成により、指4の位置を示すデータ(以下、「全体検出データ」と称する)を生成するように構成される(ステップS7)。1/Nの処理は、ステップS105で実行される位置検出処理と比べると概ね1/Nの時間で完了するので、センサコントローラ31の処理をステップS5〜S7のように構成することで、図2の例のようにアクティブペン2の位置検出処理を2回続けて実行しなくても、アクティブペン2の検出レートを確保することが可能になる。
その後、センサコントローラ31は、ステップS7で生成した全体検出データにより示される1以上の位置(候補タッチ位置)の中からパッシブポインタ位置を決定する処理(以下、「パッシブポインタ位置決定処理」と称する)を行い(ステップS8)、決定したパッシブポインタ位置のみをホストプロセッサ32に出力する(ステップS9)。ステップS8,S9の処理を実行する主旨はステップS3,S4のそれと同じであり、この処理の中でアクティブペン2及び手5の接触位置を出力対象から除外することができるので、センサコントローラ31は、指4の接触位置を正しく識別できることになる。パッシブポインタ位置決定処理の具体的な内容についても、後述する。以下では、ペン位置決定処理とパッシブポインタ位置決定処理とを「出力位置決定処理」と総称する場合がある。
以上、本発明の概要について説明した。以下、図1に戻り、本実施の形態の内容について詳細に説明する。以下では、初めに本実施の形態による位置検出システム1の構成の全体概要について説明し、その後、上述した出力位置決定処理と1/Nの処理の詳細な内容について、順に説明する。
アクティブペン2は、アクティブ静電方式によって動作する電子ペンである。図示していないが、アクティブペン2の内部には制御部及び送受信部が設けられており、制御部は、送受信部を介してタブレット3と相互に信号を送受信可能に構成される。以下では、タブレット3からアクティブペン2に向けて送信される信号をアップリンク信号USと称し、アクティブペン2からタブレット3に向けて送信される信号(ペン信号)をダウンリンク信号DSと称する。
アクティブペン2の先端部分にはペン電極が設けられており、アクティブペン2の送受信部は、このペン電極と、タブレット3のタッチ面3aに設けられるセンサ30(後述する図4を参照)との間に形成されたキャパシタンスを介して、アップリンク信号USの受信及びダウンリンク信号DSの送信を行う。なお、アップリンク信号US受信用のペン電極とダウンリンク信号DS送信用のペン電極とは、異なっていてもよいし、同じであってもよい。
アクティブペン2はまた、ペン先に印加された圧力(筆圧)を検出する筆圧検出部、側面に設けられたサイドスイッチのオンオフ状態を検出するサイドスイッチ状態検出部、予め割り当てられた固有IDを記憶する記憶部(メモリ)、及び、アクティブペン2の動作電源を供給する電源部(バッテリ)を有して構成される。アクティブペン2の制御部は、これらの各部を制御可能に構成される。
ダウンリンク信号DSは、所定周波数のバースト信号である位置信号と、アクティブペン2からタブレット3に対して送信するデータを含むデータ信号とを含んで構成される。位置信号は、タブレット3において、アクティブペン2の位置を検出するために使用される。データ信号により送信するデータは、例えば、筆圧検出部によって検出された筆圧を示すデータ(筆圧データ)、サイドスイッチ状態検出部によって取得されたサイドスイッチのオンオフ状態を示すデータ(スイッチデータ)、記憶部内に記憶される固有IDなどであり、制御部によってデータ信号内に配置される。
アップリンク信号USは、所定のスタートビットと、タブレット3からアクティブペン2への命令を示すコマンドとを含んで構成される。アクティブペン2の制御部は、受信されたアップリンク信号USからコマンドを取り出して復号し、その内容に従うデータをデータ信号内に配置するよう構成される。これによりタブレット3は、所望のデータをアクティブペン2から取り出すことが可能になる。
タブレット3は、液晶表示装置としての機能と、タッチ面3a上におけるポインタの位置を検出する位置検出器としての機能とを併せ持つ電子機器である。タッチ面3aは、液晶の表示画面上に設けられる。また、タブレット3が検出可能なポインタには、図1に示したアクティブペン2及び指4の両方が含まれる。
詳しくは図4を参照して後述するが、タッチ面3aの内側には、各複数のセンサ電極30X,30Y(センサパターン)を含むセンサ30が設けられる。タブレット3は、このセンサ30におけるキャパシタンスの変化を検出することによって指4の位置(パッシブポインタ位置)を検出するとともに、センサ30によって上述した位置信号を検出することによってアクティブペン2の位置(ペン位置)を検出するように構成される。
各センサ電極30Xは液晶表示装置の共通電極を兼ねており、画素駆動動作時には、固定電位である画素駆動用電圧Vcomが各センサ電極30Xに供給される。このように位置検出用のセンサ電極を液晶表示用の電極としても使用するタイプのタブレット3は、一般に「インセル型」と呼ばれる。「インセル型」のタブレット3では、画素駆動動作時にはセンサ電極30Xを位置検出用に用いることができないので、指4又はアクティブペン2の位置検出は、画素駆動動作のインターバル(例えば、水平帰線期間及び垂直帰線期間)に実行される。ただし、本発明は、複数のセンサ電極30X,30Yが液晶表示装置の電極(共通電極及び画素電極)から独立しているタイプのタブレット(非インセル型)に対しても、同様に適用可能である。
図4は、タブレット3の構成を示す図である。同図に示すように、タブレット3は、センサ30と、センサコントローラ31と、ホストプロセッサ32とを有して構成される。
センサ30は、それぞれY方向に延在し、Y方向と直交するX方向に等間隔で配置された複数のセンサ電極30Xと、それぞれX方向に延在し、Y方向に等間隔で配置された複数のセンサ電極30Yとがマトリクス状に配置された構成を有する。なお、ここではセンサ電極30X,30Yがともに直線状の導電体により構成される例を示しているが、他の形状の導電体によってセンサ電極30X,30Yを構成することも可能である。例えば、センサ電極30X,30Yの一方を、アクティブペン2の二次元座標が検出可能なように二次元に配置された複数の矩形導電体によって構成することとしてもよい。
センサコントローラ31は、このセンサ30を用い、画素駆動動作のインターバルに時分割で、アクティブペン2との通信(アクティブペン2の位置検出を含む)と、指4の位置検出とを行うよう構成される。また、画素駆動動作時には、画素駆動用電圧Vcomを複数のセンサ電極30Xのそれぞれに供給するよう構成される。以下、センサコントローラ31の構成について、より詳細に説明する。
センサコントローラ31は、図4に示すように、MCU40、ロジック部41、送信部42,43、受信部44、選択部45を有して構成される。
MCU40及びロジック部41は、送信部42,43、受信部44、及び選択部45を制御することにより、センサコントローラ31の送受信動作を制御する制御部である。具体的に説明すると、まずMCU60は、内部にメモリ(ROM及びRAM)を有しており、このメモリに格納されたプログラムを実行することによって動作するマイクロプロセッサである。MCU40の動作タイミングは、ホストプロセッサ32から供給されるタイミング信号によって制御される。MCU40が行う動作には、ロジック部41の制御動作の他、画素駆動用電圧Vcomを選択部45に供給する動作と、指検出用信号FDSを出力するよう送信部42を制御する動作と、アクティブペン2に対する指示の内容を示すコマンドCOMを送信部43に供給する動作と、受信部44から供給されるデジタル信号に基づいてアクティブペン2及び指4それぞれの位置(具体的には、タッチ面3a内の位置を示す座標x,y)を検出する動作と、受信部44から供給されるデジタル信号を復号することにより、アクティブペン2が送信したデータRes(例えば、上述した筆圧データ、スイッチデータ、又は固有IDなど)を取得する動作と、データRes内に含まれる筆圧データに基づいてアクティブペン2のタッチ面3aに対する接触状態を判定する動作とが含まれる。ロジック部41は、MCU40の制御に基づき、制御信号ctrl_t1〜ctrl_t4,ctrl_rを出力する機能を有する。
送信部42は、MCU40の制御に従って指検出用信号FDSを生成し、選択部45を通じて各センサ電極30Xに供給する回路である。ここで、指検出用信号FDSの具体的な内容及び各センサ電極30Xへの供給方法について、図5を参照しながら説明する。
図5は、MCU40が実行する指4の位置検出処理の原理を示す図である。同図には、指4の位置検出処理を図3に示した1/Nの処理に分割する前の状態、すなわち図2に示したステップS105で実行される指4の位置検出処理を示している。簡単のため、同図には4本のセンサ電極30Xのみを示しているが、実際にはより多くのセンサ電極30Xが配置される。以下、センサ電極30Xの本数がK本であるとして説明を続ける。
図5に示すように、指検出用信号FDSは例えば、それぞれK個の「1」又は「−1」で表されるパルスからなるK個の信号s〜sによって構成される。信号s〜sそれぞれのn番目(n=1〜K)のパルスはパルス群pを構成し、1つのパルス群pを構成する各パルスは、図4に示した送信部42から選択部45を通じて、各センサ電極30Xにパラレルに入力される。
図4に戻る。送信部43は、MCU40及びロジック部41の制御に従ってアップリンク信号USを生成し、選択部45に供給する回路であり、同図に示すように、パターン供給部50、スイッチ51、符号列保持部52、拡散処理部53、及び送信ガード部54を含んで構成される。なお、このうち特にパターン供給部50に関して、本実施の形態では送信部43内に含まれるものとして説明するが、MCU40内に含まれることとしてもよい。
パターン供給部50は、アップリンク信号USの先頭に配置されるスタートビットSBを保持しており、ロジック部41から供給される制御信号ctrl_t1の指示に従って、保持しているスタートビットSBを出力するよう構成される。
スイッチ51は、ロジック部41から供給される制御信号ctrl_t2に基づいてパターン供給部50及びMCU40のいずれか一方を選択し、選択した一方の出力を拡散処理部53に供給する機能を有する。スイッチ51がパターン供給部50を選択した場合、拡散処理部53にはスタートビットSBが供給される。一方、スイッチ51がMCU40を選択した場合、拡散処理部53にはコマンドCOMが供給される。
符号列保持部52は、ロジック部41から供給される制御信号ctrl_t3に基づき、自己相関特性を有する所定チップ長の拡散符号を生成して保持する機能を有する。符号列保持部52が保持している拡散符号は、拡散処理部53に供給される。
拡散処理部53は、スイッチ51を介して供給される値(スタートビットSB又はコマンドCOM)に基づいて符号列保持部52によって保持される拡散符号を変調することにより、所定チップ長の送信チップ列を取得する機能を有する。拡散処理部53は、取得した送信チップ列を、送信ガード部54を介して選択部45に供給する。
送信ガード部54は、ロジック部41から供給される制御信号ctrl_t4に基づき、アップリンク信号USの送信期間とダウンリンク信号DSの受信期間との間に、送信動作と受信動作を切り替えるために必要となるガード期間(送信と受信の両方を行わない期間)を挿入する機能を有する。
選択部45は、スイッチ58x,58yと、導体選択回路59x,59yとを含んで構成される。
スイッチ58yは、共通端子とT端子及びR端子のいずれか一方とが接続されるように構成されたスイッチ素子である。スイッチ58yの共通端子は導体選択回路59yに接続され、T端子は送信部43の出力端に接続され、R端子は受信部44の入力端に接続される。また、スイッチ58xは、共通端子とT1端子、T2端子、D端子、及びR端子のいずれか1つとが接続されるように構成されたスイッチ素子である。このうちT2端子は、実際にはセンサ電極30Xの数分の端子の集合である。スイッチ58xの共通端子は導体選択回路59xに接続され、T1端子は送信部43の出力端に接続され、T2端子は送信部42の出力端に接続され、D端子は画素駆動用電圧Vcomを出力するMCU40の出力端に接続され、R端子は受信部44の入力端に接続される。
導体選択回路59xは、複数のセンサ電極30Xを選択的にスイッチ58xの共通端子に接続するためのスイッチ素子である。導体選択回路59xは、複数のセンサ電極30Xの一部又は全部を同時にスイッチ58xの共通端子に接続することも可能に構成される。また、スイッチ58x内においてT2端子と共通端子とが接続されている場合、導体選択回路59xは、T2端子を構成する複数の端子と複数のセンサ電極30Xとを一対一に接続する。
導体選択回路59yは、複数のセンサ電極30Yを選択的にスイッチ58yの共通端子に接続するためのスイッチ素子である。導体選択回路59yも、複数のセンサ電極30Yの一部又は全部を同時にスイッチ58yの共通端子に接続することも可能に構成される。
選択部45には、ロジック部41から4つの制御信号sTRx,sTRy,selX,selYが供給される。具体的には、制御信号sTRxはスイッチ58xに、制御信号sTRyはスイッチ58yに、制御信号selXは導体選択回路59xに、制御信号selYは導体選択回路59yにそれぞれ供給される。ロジック部41は、これら制御信号sTRx,sTRy,selX,selYを用いて選択部45を制御することにより、アップリンク信号US又は指検出用信号FDSの送信並びに画素駆動用電圧Vcomの印加と、ダウンリンク信号DS又は指検出用信号FDSの受信とを実現する。
より具体的に説明すると、まずアップリンク信号USを送信するタイミングでは、ロジック部41は、複数のセンサ電極30Yのすべてが同時に送信部43に接続されることとなるよう、選択部45を制御する。これにより、複数のセンサ電極30Yのすべてから同時にアップリンク信号USが送信されることになるので、アクティブペン2は、タッチ面3a上のどこにいても、アップリンク信号USを受信可能となる。
次にダウンリンク信号DSのうち上述した位置信号を受信するタイミングでは、ロジック部41は、複数のセンサ電極30X,30Yを1つずつ順に選択し、選択したセンサ電極30X,30Yが受信部44に接続されるよう、選択部45を制御する。これにより、センサ電極30X,30Yの数に等しい数の位置信号が、受信部44に順次供給されることになる。詳しくは後述するが、MCU40は、こうして受信部44に供給される位置信号のレベルに基づいて、アクティブペン2の位置を検出するよう構成される。
具体的に説明すると、MCU40は、受信部44から供給されるデジタル信号(後述)に基づき、複数のセンサ電極30X,30Yの各交点における位置信号のレベルを決定する。そして、決定した各レベルに基づき、アクティブペン2の位置を検出する。具体的には、位置信号のレベルが所定値以上であるタッチ面3a内の領域を決定し、例えばその中心位置をアクティブペン2の位置として検出すればよい。
ダウンリンク信号DSのうち上述したデータ信号を受信するタイミングでは、まずMCU40により、複数のセンサ電極30X,30Yのうちの1本以上が選択される。この選択は、直前の位置信号に基づいて検出されたアクティブペン2の位置に基づいて実行される。そしてロジック部41は、選択されたセンサ電極30X,30Yが受信部44に接続されるよう、選択部45を制御する。これにより、アクティブペン2が送信したデータ信号を受信部44に供給することが可能になる。
次に指検出用信号FDSを送信するタイミングでは、ロジック部41は、MCU40とともに、1つのセンサ電極30Yを選択し、上述したパルス群p〜pを送信部42に順次各センサ電極30Xに入力させる、という動作を各センサ電極30Yについて繰り返す。具体的に説明すると、ロジック部41はまず、スイッチ58xのT2端子を構成する複数の端子と複数のセンサ電極30Xとが一対一に接続されることとなるよう、選択部45を制御する。そして、その状態を維持しながら、複数のセンサ電極30Yを1本ずつ順に選択し、選択したセンサ電極30Yが受信部44に接続されるよう選択部45を制御する。
MCU40はさらに、1本のセンサ電極30Yを選択している間に、パルス群p〜pをメモリから1パルス群ずつ順次読み出し、該読み出しの都度、読み出したパルス群を構成するK個のパルスを送信部42に供給する。送信部42は、こうして供給されたK個のパルスを、K本のセンサ電極30Xにパラレルに入力する。このような制御の結果として受信部44から供給されるデジタル信号のレベルは、選択中のセンサ電極30Yと、各センサ電極30Xとの交点に形成されるキャパシタンスの変化を反映したものとなる。そこでMCU40は、受信部44から供給されるデジタル信号のレベルに基づいて、指4の位置を検出するよう構成される。
ここで、再度図5を参照しながら、MCU40が実行する指4の位置検出処理について、より詳しく説明する。以下では、センサ電極30Xの本数が4本(すなわち、K=4)であるとして説明を行うが、センサ電極30Xの本数が3本以下又は5本以上である場合についても同様である。
センサ電極30Xの本数が4本である場合、信号s〜sはそれぞれ4個の「1」又は「−1」で表されるパルスによって構成されることになる。具体的には、図5に示すように、信号sが「1,1,1,1」、信号sが「1,1,−1,−1」、信号sが「1,−1,−1,1」、信号sが「1−1,1,−1」によりそれぞれ構成される。
MCU40は機能的に、シフトレジスタ40a及び相関器40bを含んで構成される。シフトレジスタ40aはFIFO形式の記憶部であり、センサ電極30Xの本数と同数(すなわち、K個)のデータを格納可能に構成される。シフトレジスタ40aに新たにデータを格納する際には、K回前に格納されたデータが消去される。MCU40及びロジック部41は、上述したように、1つのセンサ電極30Yを選択し、送信部42にパルス群p〜pを順次各センサ電極30Xに入力させる、という動作を各センサ電極30Yについて繰り返す。これにより、選択中のセンサ電極30Yには、それぞれパルス群p〜pに対応する4つのレベルL〜Lが順次現れることになる。MCU40は、こうしてセンサ電極30Yに現れるレベルL〜Lを受信部44を介して順次取得し、その都度、シフトレジスタ40aに格納する。
レベルL〜Lの具体的な内容について、図5に示したセンサ電極30Yが選択されている場合を例に取って詳しく説明する。以下の説明では、センサ電極30Yと4本のセンサ電極30X〜30Xのそれぞれとの間に形成されるキャパシタンスを、それぞれC11〜C41とする。
まずパルス群pに対応してシフトレジスタ40aに格納されるレベルLは、キャパシタンスのベクトル(C11,C21,C31,C41)と、パルス群pを示すベクトル(1,1,1,1)との内積となる。この内積は、図5にも示すように、C11+C21+C31+C41と計算される。同様に、パルス群pに対応してシフトレジスタ40aに格納されるレベルLは、キャパシタンスのベクトル(C11,C21,C31,C41)と、パルス群pを示すベクトル(1,1,−1,−1)との内積となってC11+C21−C31−C41と計算され、パルス群pに対応してシフトレジスタ40aに格納されるレベルLは、キャパシタンスのベクトル(C11,C21,C31,C41)と、パルス群pを示すベクトル(1,−1,−1,1)との内積となってC11−C21−C31+C41と計算され、パルス群pに対応してシフトレジスタ40aに格納されるレベルLは、キャパシタンスのベクトル(C11,C21,C31,C41)と、パルス群pを示すベクトル(1,−1,1,−1)との内積となってC11−C21+C31−C41と計算される。
MCU40は、相関器40bを用い、4個のパルス群p〜pのそれぞれについて、シフトレジスタ40aに蓄積したレベルL〜Lとの相関値T〜Tを順次算出する。こうして算出される相関値T〜Tの具体的な内容は、図5にも示すように、それぞれ4C11,4C21,4C31,4C41となる。すなわち、相関値T〜Tには、それぞれセンサ電極30X〜30Xと、センサ電極30Yとの交点に形成されるキャパシタンスの変化が反映されることになる。したがってMCU40は、各センサ電極30Yについて算出される相関値T〜Tを参照することにより、指4の位置を検出することが可能になる。具体的には、キャパシタンスの変化が所定値以上であるタッチ面3a内の領域を決定し、例えばその中心位置を指4の位置として検出すればよい。
以上、MCU40が実行する指4の位置検出処理について、詳細に説明した。次に図4に戻り、ロジック部41は、画素駆動用電圧Vcomを印加するタイミングでは、D端子が共通端子に接続されるよう、スイッチ58xを制御する。これにより、複数のセンサ電極30Xのそれぞれに画素駆動用電圧Vcomが供給され、画素駆動動作を実行することが可能になる。
受信部44は、ロジック部41の制御信号ctrl_rに基づいて、アクティブペン2が送信したダウンリンク信号DS又は送信部42が送信した指検出用信号FDSを受信する回路である。具体的には、増幅回路55、検波回路56、及びアナログデジタル(AD)変換器57を含んで構成される。
増幅回路55は、選択部45から供給されるダウンリンク信号DS又は指検出用信号FDSを増幅して出力する。検波回路56は、増幅回路55の出力信号のレベルに対応した電圧を生成する回路である。AD変換器57は、検波回路56から出力される電圧を所定時間間隔でサンプリングすることによって、デジタル信号を生成する回路である。AD変換器57が出力するデジタル信号は、MCU40に供給される。
MCU40は、こうして供給されたデジタル信号に基づき、指4及びアクティブペン2の位置(座標x,y)の検出と、アクティブペン2が送信したデータResの取得とを行う。具体的に説明すると、まず指4の位置に関して、MCU40は、供給されたデジタル信号に基づいて、センサ電極30Yごとに、それぞれパルス群p〜pに対応するレベルL〜Lを取得する。レベルL〜Lから指4の位置を検出する方法については、図5を参照して上述したとおりである。次にアクティブペン2の位置に関して、MCU40は、上述したように、供給されたデジタル信号に基づいて複数のセンサ電極30X,30Yの各交点における位置信号のレベルを決定し、決定した各レベルに基づいてアクティブペン2の位置を検出する。最後にデータResに関して、MCU40は、受信部44から供給されるデジタル信号を復号することによって、データResを取得する。MCU40は、こうして検出した位置(座標x,y)及びデータResを、ホストプロセッサ32に出力するよう構成される。
また、MCU40は、取得したデータRes内に含まれる筆圧データに基づいてアクティブペン2のタッチ面3aに対する接触状態を判定し、アクティブペン2が新たにタッチ面3aに接触したと判定した場合(すなわち、筆圧が0からプラスの値に変化した場合)には、ペンダウン情報IN−PROXYをホストプロセッサ32に出力し、アクティブペン2がタッチ面3aから離れたと判定した場合(すなわち、筆圧がプラスの値から0に変化した場合)には、ペンアップ情報OUT−PROXYをホストプロセッサ32に出力するよう構成される。こうして出力されたペンダウン情報IN−PROXY及びペンアップ情報OUT−PROXYは、ホストプロセッサ32によって、ストロークの始まりと終わりを認識するために使用される。
以上が、本実施の形態による位置検出システム1の構成の概要である。続いて、上述した出力位置決定処理及び1/Nの処理の詳細な内容について、順に説明する。
初めに、出力位置決定処理について、詳細に説明する。
図6(a)は、本実施の形態による出力位置決定処理で利用されるペン位置テーブルを示す図であり、図6(b)は、本実施の形態による出力位置決定処理で利用されるタッチ位置テーブルを示す図である。MCU40は、アクティブペン2又は指4のそれぞれについて上述した処理によって1以上の位置を検出した後、ホストプロセッサ32に出力する位置を決定するために、これらのテーブルを利用する。
ペン位置テーブルは、図6(a)に示すように、候補ペン位置cP[i]と、確定ペン位置fP[i]と、有効フラグとを対応付けて記憶するテーブルである。一方、タッチ位置テーブルは、候補タッチ位置cT[j]と、確定タッチ位置fT[j]と、有効フラグと、領域種別とを対応付けて記憶するテーブルである。ただし、i,jはそれぞれ、0以上の整数である。また、候補ペン位置cP[i]は、図3のステップS2で検出されたアクティブペン2の位置であり、候補タッチ位置cT[j]は、図3のステップS7で生成された全体検出データにより示される指4の位置である。その他のパラメータについては、以下の説明の中で説明する。
ここで、出力位置決定処理の内容を具体的に説明する前に、この処理の考え方について、図1を再度参照しながら、詳細に説明する。
図1に示す例では、アクティブペン2、指4、アクティブペン2を保持する手5という3種類の物体がタッチ面3aに接触している。指4の位置検出処理では、本来であればこのうち指4のみが検出されることが好ましいが、アクティブペン2及び手5も検出されてしまう可能性がある。これは、センサ電極30X,30Yにおけるキャパシタンスの変化に、アクティブペン2又は手5とセンサ電極30X,30Yに形成されたキャパシタンスによるセンサ電極30X,30Yでのキャパシタンスの変化が含まれ得るからである。一方、アクティブペン2の位置検出処理では、本来であればアクティブペン2のみが検出されることが好ましいが、手5も検出されてしまう可能性がある。これは、アクティブペン2のペン先からタッチ面3aに至るルート(図1の矢印A)だけでなく、手5を経由するルート(図1の矢印B)も通って、アクティブペン2からタブレット3にダウンリンク信号DSが伝達されてしまうからである。
MCU40は、図3のステップS5〜S7に示した処理(図2のステップS105に示した処理でもよい)により1以上の候補タッチ位置を取得した後、まず各候補タッチ位置の広さ(キャパシタンスの変化量が所定量以上である領域の広さ)を判定する。そして、判定した広さが所定サイズ以上である候補タッチ位置を出力対象から除外する。図1の例では、ここで手5の接触位置が除外されることになる。次いで、残りの候補タッチ位置のそれぞれについて、ペン位置テーブルを参照することにより直前のアクティブペン2の位置検出処理においてアクティブペン2の位置として検出されていたか否かを判定し、検出されていた候補タッチ位置を出力対象から除外する。図1の例では、ここでアクティブペン2の接触位置が除外されることになる。こうして最後まで残った候補タッチ位置が、図3のステップS9でホストプロセッサ32に出力される位置となる。これによれば、手5の接触位置及びアクティブペン2の接触位置が出力対象から除外されるので、指4の位置のみを正しく選別して出力することが可能になる。
一方、MCU40は、図3のステップS2に示した処理により1以上の候補ペン位置を取得した後、取得した1以上の候補ペン位置のそれぞれについて、タッチ位置テーブルを参照することにより直前の指4の位置検出処理において指4又は手5の位置として検出されていたか否かを判定する。そして、手5の位置として検出されていたと判定した候補ペン位置を出力対象から除外する。図1の例では、ここで手5の接触位置が除外されることになる。ここで除外されなかった候補ペン位置、すなわち、検出されていないと判定した候補ペン位置、及び、指4として検出されていたと判定した候補ペン位置が、図3のステップS4でホストプロセッサ32に出力される位置となる。これによれば、手5の接触位置が出力対象から除外されるので、アクティブペン2の位置のみを正しく選別して出力することが可能になる。
このように、本実施の形態による位置検出処理によれば、アクティブペン2及び指4の位置を正しく選別し、ホストプロセッサ32に出力することが可能になる。以下、ペン位置テーブル及びタッチ位置テーブルを用いてMCU40が行う出力位置決定処理の具体的な内容について、詳しく説明する。
図7及び図8はそれぞれ、ペン位置テーブル及びタッチ位置テーブルを用いてMCU40が行う出力位置決定処理の一例を示す図である。
図7は、アクティブペン2の位置検出が先行した場合におけるペン位置テーブル及びタッチ位置テーブルの変化の一例を、時系列で示したものである。この例によるMCU40は、1回目のアクティブペン2の位置検出処理を行った結果として、2つの候補ペン位置cP[0],cP[1]をペン位置候補テーブルに格納する。そして、対応する確定ペン位置fP[0],fP[1]のそれぞれに候補ペン位置cP[0],cP[1]を設定し、それぞれの有効フラグを「有効」に設定する。MCU40は、こうして「有効」を設定した確定ペン位置fP[0],fP[1]のそれぞれを、アクティブペン2の検出位置としてホストプロセッサ32に供給する。ただし、この段階では、ホストプロセッサ32への検出位置の供給を行わないこととしてもよい。
次にMCU40は、1回目の指4の位置検出処理を行い、その結果として、3つの候補タッチ位置cT[0]〜cT[2]をタッチ位置候補テーブルに格納する。そしてまず、各候補タッチ位置cT[0]〜cT[2]の広さ(キャパシタンスの変化量が所定量以上である領域の広さ)を検出する。ここでは、候補タッチ位置cT[1]についてのみ所定サイズ以上の広さが検出され、他の候補タッチ位置cT[0],cT[2]については所定サイズ未満の広さが検出されたとすると、MCU40は、確定タッチ位置fT[1]に候補タッチ位置cT[1]を設定しつつ、対応する有効フラグを「無効」とし、さらに、対応する領域種別に「パーム(掌の意)」を設定する。
次いでMCU40は、所定サイズ未満の広さが検出された候補タッチ位置cT[0],cT[2]のそれぞれについて、ペン位置候補テーブルに格納されている確定ペン位置fP[0],fP[1]のそれぞれと略等しいか否かを判定する。ここでいう「略等しい」とは、一方の位置と他方の位置の間の距離がタッチ面3aの広さに比べて十分小さい所定値以下であることをいう。この所定値の具体的な値は、例えば数画素分の長さとすることが好ましい。
図7の例では、候補タッチ位置cT[0]が確定ペン位置fP[0]に略等しいと判定され、候補タッチ位置cT[2]は確定ペン位置fP[0],fP[1]のいずれとも等しくないと判定される。この場合、MCU40は、確定ペン位置fP[2]に候補タッチ位置cT[2]を設定するとともに、対応する有効フラグを「有効」とし、さらに、対応する領域種別に「指」を設定する。一方、確定ペン位置fP[0]には何も設定せず(初期値であるNULLのままとし)、対応する有効フラグを「無効」とする。確定ペン位置fP[0]に対応する領域種別については、初期値のまま(何も設定しないまま)とする。
MCU40は、以上のようにしてタッチ位置候補テーブルを設定した後、対応する有効フラグが「有効」となっている確定タッチ位置fT[2]のみを、指4の検出位置としてホストプロセッサ32に供給する。確定ペン位置fP[0]の近傍に位置し、かつ、検出された上記広さが上記所定サイズ未満である候補タッチ位置cT[0]については、ホストプロセッサ32に供給されないことになる。
次にMCU40は、ペン位置候補テーブルを一度リセットした後、2回目のアクティブペン2の位置検出処理を行う。ここでは、アクティブペン2、指4、手5のいずれもタッチ面3a上で移動していないとすると、位置検出の結果として、1回目と同じく2つの候補ペン位置cP[0],cP[1]がペン位置候補テーブルに格納されることになる。
そしてMCU40は、取得した候補ペン位置cP[0],cP[1]のそれぞれについて、タッチ位置候補テーブルに格納されている確定タッチ位置fT[0]〜fT[2]のそれぞれと略等しいか否かを判定する。なお、図7の例では、この時点で確定タッチ位置fT[0]にNULLが設定されているので、実質的には確定タッチ位置fT[1],fT[2]のそれぞれと略等しいか否かの判定となる。
図7の例では、候補ペン位置cP[1]が確定タッチ位置fT[1]に略等しいと判定され、候補ペン位置cP[0]は確定タッチ位置fT[0]〜fT[2]のいずれとも等しくないと判定される。この場合、MCU40はまず、確定ペン位置fP[0]に候補ペン位置cP[0]を設定するとともに、対応する有効フラグを「有効」とする。一方、候補ペン位置cP[1]については、対応する確定タッチ位置fT[1]の領域種別が「パーム」と「指」のいずれであるかを判定する。そして、判定の結果が「パーム」であれば、確定ペン位置fP[1]にNULLを設定するとともに、対応する有効フラグを「無効」とする。一方、判定の結果が「指」であれば、確定ペン位置fP[1]に候補ペン位置cP[1]を設定するとともに、対応する有効フラグを「有効」とする。図7の例では、確定タッチ位置fT[1]の領域種別が「パーム」であるので、対応する確定ペン位置fP[1]にNULLが設定されている。
図8は、指4の位置検出が先行した場合におけるペン位置テーブル及びタッチ位置テーブルの変化の一例を、時系列で示したものである。この例によるMCU40は、1回目の指4の位置検出処理を行った結果として、3つの候補タッチ位置cT[0]〜cT[2]をタッチ位置候補テーブルに格納する。続いてMCU40は、各候補タッチ位置cT[0]〜cT[2]の広さ(キャパシタンスの変化量が所定量以上である領域の広さ)を検出する。ここでは、図7の例と同じく候補タッチ位置cT[1]についてのみ所定サイズ以上の広さが検出されたとすると、MCU40はまず、確定タッチ位置fT[1]に候補タッチ位置cT[1]を設定しつつ、対応する有効フラグを「無効」とし、さらに、対応する領域種別に「パーム」を設定する。一方、他の2つの候補タッチ位置cT[0],cT[2]については、確定タッチ位置fT[0],fT[2]にそれぞれ候補タッチ位置cT[0],cT[2]を設定しつつ、対応する有効フラグを「有効」とし、さらに、対応する領域種別に「指」を設定する。MCU40は、こうして「有効」を設定した確定タッチ位置fT[0],fT[2]のそれぞれを、指4の検出位置としてホストプロセッサ32に供給する。ただし、この段階では、ホストプロセッサ32への検出位置の供給を行わないこととしてもよい。
次にMCU40は、1回目のアクティブペン2の位置検出処理を行い、その結果として、2つの候補ペン位置cP[0],cP[1]をペン位置候補テーブルに格納する。そしてMCU40は、取得した候補ペン位置cP[0],cP[1]のそれぞれについて、タッチ位置候補テーブルに格納されている確定ペン位置fT[0]〜fT[2]のそれぞれと略等しいか否かを判定する。
図8の例では、候補ペン位置cP[0]が確定タッチ位置fT[0]に略等しいと判定され、候補ペン位置cP[1]が確定タッチ位置fT[1]に略等しいと判定されることになる。次いでMCU40は、確定タッチ位置fT[0],fT[1]それぞれの領域種別が「パーム」と「指」のいずれであるかを判定する。図8の例では、確定タッチ位置fT[0]の領域種別は「指」であると判定され、確定タッチ位置fT[1]の領域種別は「パーム」であると判定されることになる。
MCU40は、対応する確定タッチ位置fT[1]の領域種別が「パーム」であると判定した候補ペン位置cP[1]について、確定ペン位置fP[1]にNULLを設定するとともに、対応する有効フラグを「無効」とする。一方、対応する確定タッチ位置fT[0]の領域種別が「指」であると判定した候補ペン位置cP[0]については、確定ペン位置fP[0]に候補ペン位置cP[0]を設定するとともに、対応する有効フラグを「有効」とする。この処理は、指4の位置検出処理に誤りがあったとみなすことを意味する。MCU40は、こうして「有効」を設定した確定ペン位置fP[0]を、アクティブペン2の検出位置としてホストプロセッサ32に供給する。
次にMCU40は、タッチ位置候補テーブルを一度リセットした後、2回目の指4の位置検出処理を行う。ここでは、アクティブペン2、指4、手5のいずれもタッチ面3a上で移動していないとすると、位置検出の結果として、1回目と同じく3つの候補タッチ位置cT[0]〜cT[2]がタッチ位置候補テーブルに格納されることになる。
候補タッチ位置cT[0]〜cT[2]をタッチ位置候補テーブルに格納したMCU40は、次に、各候補タッチ位置cT[0]〜cT[2]の広さ(キャパシタンスの変化量が所定量以上である領域の広さ)を検出する。ここでは、1回目の検出時と同様に候補タッチ位置cT[1]についてのみ所定サイズ以上の広さが検出されたとすると、確定タッチ位置fT[1]に候補タッチ位置cT[1]を設定しつつ、対応する有効フラグを「無効」とし、さらに、対応する領域種別に「パーム」を設定する。この処理は、1回目の指4の位置検出後に行った処理と同じである。
次いでMCU40は、残りの候補タッチ位置cT[0],cT[2]のそれぞれについて、ペン位置候補テーブルに格納されている確定ペン位置fP[0],fP[1]のそれぞれと略等しいか否かを判定する。図8の例では、この判定により、候補タッチ位置cT[0]が確定ペン位置fP[0]に略等しいと判定され、候補タッチ位置cT[2]は確定ペン位置fP[0],fP[1]のいずれとも等しくないと判定される。この場合、MCU40は、確定ペン位置fP[2]に候補タッチ位置cT[2]を設定するとともに、対応する有効フラグを「有効」とし、さらに、対応する領域種別に「指」を設定する。一方、確定ペン位置fP[0]には何も設定せず(初期値であるNULLのままとし)、対応する有効フラグを「無効」とする。確定ペン位置fP[0]に対応する領域種別については、初期値のまま(何も設定しないまま)とする。
MCU40は、以上のようにしてタッチ位置候補テーブルを設定した後、対応する有効フラグが「有効」となっている確定タッチ位置fT[2]のみを、指4の検出位置としてホストプロセッサ32に供給する。
以上説明したように、本実施の形態による出力位置決定処理によれば、ペン位置決定処理の中で手5の接触位置を出力対象から除外することができ、パッシブポインタ位置決定処理の中でアクティブペン2及び手5の接触位置を出力対象から除外することができる。したがって、候補ペン位置及び候補タッチ位置の段階ではアクティブペン2の接触位置と指4の接触位置とが相互に誤認識されてしまっていたとしても、最終的には、アクティブペン2及び指4の位置を正しくホストプロセッサ32に出力することが可能になる。
次に、MCU40の処理フローを参照しながら、ペン位置テーブル及びタッチ位置テーブルを用いてMCU40が行う出力位置決定処理について、再度別の観点からより詳しく説明する。
図9及び図10は、図3に示したフロー図の詳細を示す図である。初めに図9を参照すると、MCU40はまず、アクティブペン2の検出を実行し(ステップS21)、その結果としてアクティブペン2が検出されたか否かを判定する(ステップS22)ことによって、図3に示したステップS2の処理を実行する。ステップS22で検出されなかったと判定した場合には、図10のステップS51に移って指4の位置検出処理を開始する。
一方、ステップS22で検出されたと判定した場合、MCU40は、図3のステップS3に示したペン位置決定処理を実行する。具体的には、まずペン位置テーブルをリセットする(ステップS31)。リセット後のペン位置テーブルは、候補ペン位置cP[i]が1つも設定されていない状態となる。続いて、MCU40は、ステップS21において検出されたI個(Iは1以上の整数)の候補ペン位置cP[i](i=0〜I−1)を取得し、ペン位置テーブルに設定する(ステップS32)。そして、すべてのiについて、順次、ステップS34〜S36の処理を行う(ステップS33)。
具体的に説明すると、MCU40はまず、候補ペン位置cP[i]と等しい確定タッチ位置fT[j]がタッチ位置テーブルに格納されているか否かを判定する(ステップS34)。その結果、格納されていると判定した場合には、候補ペン位置cP[i]と略等しい確定タッチ位置fT[j]についてタッチ位置テーブルに格納されている領域種別が「指」「パーム」のいずれであるかを判定する(ステップS35)。
ステップS34で格納されていないと判定した場合、及び、ステップS35で「指」であると判定した場合、MCU40は、確定ペン位置fP[i]に候補ペン位置cP[i]を設定するとともに、対応する有効フラグに「有効」を設定する(ステップS36)。一方、ステップS35で「パーム」であると判定した場合にはステップS36の処理を行わず、結果として、対応する確定ペン位置fP[i]にはNULL、対応する有効フラグには「無効」がそれぞれ設定される。
すべてのiについてステップS34〜S36の処理が終了した場合、MCU40は、対応する有効フラグが「有効」となっている確定ペン位置fP[i]のみをアクティブペン2の検出位置としてホストプロセッサ32に出力し(ステップS4)、その後、指4の位置検出処理を開始する。
具体的には、図10に示すように、指4の検出を実行し(ステップS51)、その結果として指4が検出されたか否かを判定する(ステップS52)ことによって、図3に示したステップS5〜S7の処理を実行する。なお、ここではステップS5〜S7の処理を実行することとしているが、図2のステップS105の処理を実行することとしてもよい。ただし、この場合には、アクティブペン2の検出レートを確保するため、ステップS2〜S4の処理を2回連続して行う必要がある。ステップS52で検出されなかったと判定した場合には、図9のステップS21に移ってアクティブペン2の位置検出処理を開始する。
一方、ステップS52で検出されたと判定した場合、MCU40は、図3のステップS8に示したパッシブポインタ位置決定処理を実行する。具体的には、まずタッチ位置テーブルをリセットする(ステップS81)。リセット後のタッチ位置テーブルは、候補タッチ位置cT[j]が1つも設定されていない状態となる。続いて、MCU40は、ステップS51において検出されたJ個(Jは1以上の整数)の候補タッチ位置cT[j](j=0〜J−1)を取得し、タッチ位置テーブルに設定する(ステップS82)。そして、すべてのjについて、順次、ステップS84〜S87の処理を行う(ステップS83)。
具体的に説明すると、MCU40はまず、候補タッチ位置cT[j]の面積を算出する。ここで算出される面積は、候補タッチ位置cT[j]を含み、かつ、キャパシタンスの変化量が所定量以上であった領域の面積である。そして、算出した面積が所定サイズ以上であるか否かを判定する(ステップS84)。
ステップS84で所定サイズ以上であると判定した場合(すなわち、面積=大であると判定した場合)、MCU40は、確定タッチ位置fT[j]に候補タッチ位置cT[j]を設定するとともに、対応する有効フラグに「無効」、対応する領域種別に「パーム」をそれぞれ設定する(ステップS85)。
一方、ステップS84で所定サイズ以上でないと判定した場合(すなわち、面積=小であると判定した場合)、MCU40は、続いて候補タッチ位置cT[j]と略等しい確定ペン位置fP[i]がペン位置テーブルに格納されているか否かを判定する(ステップS86)。その結果、格納されていないと判定した場合、MCU40は、確定タッチ位置fT[j]に候補タッチ位置cT[j]を設定するとともに、対応する有効フラグに「有効」、対応する領域種別に「指」をそれぞれ設定する(ステップS87)。一方、ステップS86で格納されていると判定した場合、MCU40はステップS87の処理を行わず、結果として、対応する確定タッチ位置fT[j]にはNULL、対応する有効フラグには「無効」がそれぞれ設定される。
すべてのiについてステップS15〜S18の処理が終了した場合、MCU40は、対応する有効フラグが「有効」となっている確定タッチ位置fT[j]のみを指4の検出位置としてホストプロセッサ32に出力し(ステップS9)、その後、ステップS2に戻ってアクティブペン2の位置検出処理を開始する。
以上、ペン位置テーブル及びタッチ位置テーブルを用いてMCU40が行う出力位置決定処理について、MCU40の処理フローを参照しながら、再度より詳しく説明した。ここで、本実施の形態による出力位置決定処理には、各種の変形例が考えられる。そこで以下では、本実施の形態による出力位置決定処理の変形例として、第1〜第4の変形例を挙げて説明することとする。
第1の変形例は、ペン位置決定処理に関するものである。本変形例によるMCU40は、ダウンリンク信号DSのレベルが所定レベル以上である位置が複数検出された場合に、最もダウンリンク信号DSのレベルが大きい位置を、アクティブペン2の位置としてホストプロセッサ32に出力するよう構成される。図7の例で言えば、ユーザの手5を通じて受信されたダウンリンク信号DSにより検出された候補ペン位置cP[1]におけるダウンリンク信号DSのレベルは、通常、アクティブペン2のペン電極から直接受信されたダウンリンク信号DSにより検出された候補ペン位置cP[0]におけるダウンリンク信号DSのレベルに比べて小さくなる。したがって、MCU40は、候補ペン位置cP[0]をアクティブペン2の位置としてホストプロセッサ32に出力することになる。この結果は、上記実施の形態によるものと同じである。したがって、本変形例によっても、MCU40は、アクティブペン2の位置を正しくホストプロセッサ32に出力できると言える。
第2の変形例も、ペン位置決定処理に関するものである。本変形例によるMCU40は、ダウンリンク信号DSのレベルが所定レベル以上である位置が離れて複数検出された場合に、該所定レベル以上であるダウンリンク信号DSのレベルが連続してなる領域の面積に基づいて、アクティブペン2の位置を検出するよう構成される。より具体的に言えば、この面積が小さい方の位置を、アクティブペン2の位置として検出する。図7の例で言えば、ユーザの手5を通じて受信されたダウンリンク信号DSにより検出された候補ペン位置cP[1]にかかる上記面積は、アクティブペン2のペン電極から直接受信されたダウンリンク信号DSにより検出された候補ペン位置cP[0]にかかる上記面積に比べて大きくなる。したがって、MCU40は、候補ペン位置cP[0]をアクティブペン2の位置としてホストプロセッサ32に出力することになる。この結果も、上記実施の形態によるものと同じである。したがって、本変形例によっても、MCU40は、アクティブペン2の位置を正しくホストプロセッサ32に出力できると言える。
第3の変形例は、パッシブポインタ位置決定処理に関するものである。本変形例によるMCU40は、直前のアクティブペン2の位置検出処理によりアクティブペン2の位置が検出されているか否かに応じて、図10に示したステップS15における判定(パーム判定)の基準となる所定サイズを変更するよう構成される。より具体的には、直前のペン検出ステップ(図3を参照)によりペン位置が1つ以上出力された場合に、上記所定サイズを縮小するよう構成される。例えば、直前のアクティブペン2の位置検出処理によりアクティブペン2の位置が検出されていない場合には所定サイズを20mmとし、直前のアクティブペン2の位置検出処理によりアクティブペン2の位置が1つ以上検出されている場合には所定サイズを16mmとすることが考えられる。この変更処理は、アクティブペン2が検出されている場合に、アクティブペン2と手5の区別をより迅速に行えるようにするためのものである。つまり、手5がタッチ面3aに接触するには若干ではあるもののある程度の時間を要し、その時間内には手5とタッチ面3aとの接触面積が小さいタイミングが存在し得るので、指4の位置検出処理において面積の判定によりパームか指かを判定する際に、手5の接触位置を指4の接触位置と誤判定してしまうことが発生し得る。本変形例によれば、上記のように所定サイズを縮小するので、アクティブペン2が検出されている場合にそのような誤判定が起きる可能性を小さくすることが可能になる。
ここで、上述したアクティブペン2の位置検出処理によれば、アクティブペン2がタッチ面3aに接触していない状態(ホバー状態)においても、アクティブペン2の位置が検出され得る。これは、ホバー状態においても、アクティブペン2がある程度以上タッチ面3aに近づいていれば、MCU40はダウンリンク信号DSを検出できるからである。第3の変形例によれば、タッチ面3aに接近しつつあるアクティブペン2がホバー状態であるうちに上記所定サイズを縮小しておくことができるので、上記誤判定が起きる可能性が低減された状態で、アクティブペン2がタッチ面3aに接触するタイミングを迎えることが可能になる。
図11は、第4の変形例によるセンサコントローラ31が実行するポインタの位置検出処理を示すフロー図である。同図には、図9に示したフロー図の変形例を示している。
図11と図9の違いは、ステップS35で「パーム」であると判定した後に、ステップS37を実行する点である。詳しく説明すると、本変形例によるMCU40は、ステップS35で今回検出したペン位置(具体的には、候補ペン位置cP[i])がパーム領域の近傍に存在するか否か(すなわち、候補ペン位置cP[i]と略等しい確定タッチ位置fT[j]についてタッチ位置テーブルに格納されている領域種別が「指」「パーム」のいずれであるか)を判定し、パーム領域の近傍に存在すると判定した場合(すなわち、領域種別が「パーム」であると判定した場合)に、前回のペン検出ステップで出力したデータResに含まれていた筆圧データにより示される筆圧(前回検出した筆圧)が有効(筆圧>0)及び無効(筆圧=0)のいずれであったかを判定する(ステップS37)。そして、有効と判定した場合にはステップS36に処理を移し、候補ペン位置cP[i]を確定ペン位置fP[i]に設定するとともに、対応する有効フラグに「有効」を設定する(ステップS36)。一方、無効と判定した場合にはステップS36の処理を行わない。この場合、、対応する確定ペン位置fP[i]にはNULL、対応する有効フラグには「無効」がそれぞれ設定されることになる。
第4の変形例によれば、ユーザがアクティブペン2による入力操作を行う際に、パーム領域の近傍で描画線が消えてしまうことを防止することができる。すなわち、図9の処理フローによれば、ユーザがアクティブペンによる入力操作を行う際にペン先がパーム領域に差し掛かると、ステップS35により「パーム」と判定され、確定ペン位置fP[i]に候補ペン位置cP[i]が設定されなくなる。そうすると、ホストプロセッサ32に座標が出力されなくなるので、描画線が途切れることになる。しかしながら、ペン先がパーム領域に近づいたとしても、ユーザが引き続き入力操作を行っている以上、描画線の途切れは発生しないことが好ましい。第4の変形例によれば、ステップS37において前回検出した筆圧が有効及び無効のいずれであるかを判定しているので、ユーザが引き続き入力操作を行っている場合であるか否かを判定することができる。その結果、ユーザが引き続き入力操作を行っている場合にホストプロセッサ32への座標出力を継続することができるので、ユーザがアクティブペン2による入力操作を行う際に、パーム領域の近傍で描画線が消えてしまうことを防止することが可能になる。
次に、1/Nの処理について、詳細に説明する。以下では、初めに1/Nの処理に対応する背景技術の課題及び1/Nの処理の導入によって奏される効果について再度より詳しく説明した後、1/Nの処理の内容について詳しく説明する。
図12(a)は、本発明の背景技術によるポインタの位置検出処理にかかる制御シーケンスを示す図であり、図12(b)は、本実施の形態によるポインタの位置検出処理にかかる制御シーケンスを示す図である。これらの図において、「T」はMCU40が指4の位置検出処理を行う期間を示し、「P」はMCU40がアクティブペン2の位置検出処理を行う期間を示す。
図12(a)に示すように、本発明の背景技術によるMCU40は、1回あたり3ミリ秒を要するアクティブペン2の位置検出処理を2回続けて行った後、1回あたり2ミリ秒を要する指4の位置検出処理を1回行う、というリズムで、指4とアクティブペン2の位置検出処理を繰り返すよう構成される。この場合の指4の検出レートは125(=1/8×1000)回/秒となり、アクティブペン2の検出レートは250(=2/8×1000)回/秒となる。このようにすることで、アクティブペン2の検出レートを向上させることができる。しかし、この位置検出処理によれば、アクティブペン2の検出間隔が一定でないので、例えばセンサコントローラ31から順次出力されるアクティブペン2の座標データが時間的に等間隔に送信されていることを期待して動作する描画アプリケーションなどにおいて、描画結果が不自然になってしまうという問題が発生する。
これに対し、本実施の形態によるMCU40は、図12(b)に示すように、250(=1/4×1000)回/秒のレート(第1の検出レート)で指4(第1のポインタ)の位置検出処理(第1検出処理)の1/Nの処理を実行する。図12(b)ではN=2であり、この場合、この1/Nの処理を実行するのに要する時間は、図12(a)の例による指4の位置検出処理が必要とする時間の1/2、すなわち1ミリ秒となる。そして、MCU40は、この1/Nの処理に基づいて指4が存在するか否かを示す部分検出データを取得し、図5に示したシフトレジスタ40aに保持する(ここまで、第1の検出ステップ)。なお、シフトレジスタ40aはN回分の部分検出データを記憶可能に構成されており、部分検出データを新たにシフトレジスタ40aに書き込む際には、N回前に取得した部分検出データは消去される。
さらに、MCU40は、部分検出データをメモリに新たに保持する都度、それまでにメモリに保持されているN−1個分の部分検出データと、新たに保持された部分検出データとを合成し、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成する(合成ステップ)。生成された全体検出データは、図5を参照して説明した相関値の算出処理(相関値算出ステップ)を経て、MCU40からホストプロセッサ32に対し、パッシブポインタ位置として上記第1の検出レート(250回/秒)で出力される(レポートステップ)。
1/Nの処理は所定のインターバル(具体的には、3ミリ秒のインターバル)で実行され、このインターバルには、アクティブペン2(第2のポインタ)の位置検出処理(第2検出処理)の全部が1回だけ実行される(第2の検出ステップ)。したがって、アクティブペン2の位置の検出レート(第2の検出レート)は、上記第1の検出レート(250回/秒)に等しい値となる。アクティブペン2の検出が等間隔で実行されるにもかかわらず、この検出レートは、図12(a)の例によるアクティブペン2の検出レートと同じ値となっている。
このように、本実施の形態によるポインタの位置検出処理によれば、指4の位置検出処理をN回に分けて実行するので、アクティブペン2及び指4双方の検出レートを維持しつつ、アクティブペン2の検出を等間隔で実行することが可能になる。したがって、上述した問題が解消されることになる。以下、1/Nの処理の内容について詳しく説明する。
以下の説明では、1/Nの処理の内容について、第1〜第5の例を挙げて説明する。第1〜第4の例にかかる1/Nの処理は、タッチ面3a全体の1/Nを検出(すなわち、センサ電極30Xとセンサ電極30Yの交点におけるキャパシタンスの変化を検出)するというもので、例えば複数のセンサ電極30X(第1の電極)の略1/N(後述する図14、図16を参照)、又は、例えば複数のセンサ電極30Y(第2の電極)の略1/N(後述する図15、図17を参照)を用いる。なお、略1/Nとは、1/Nが整数とならない場合に、整数となるよう各回において用いるセンサ電極30X又はセンサ電極30Yの本数を調整することを意味する。一方、第5の例にかかる1/Nの処理は、指検出用信号FDSの1/N部分(具体的には、上述した信号s〜sのそれぞれを構成するN×M個(M=K/N)のパルスのうちのM個)を用いる(後述する図18を参照)というものである。以下、それぞれについて詳しく説明する。なお、以下では、N=2であり、かつ、16×16のセンサ30を用いる場合を例に取って説明するが、N≧3である場合や、センサ30のサイズが16×16でない場合についても同様である。
まず図13は、16×16のセンサ30とともに用いられる指検出用信号FDSの一例を示す図である。同図に示すように、この場合の指検出用信号FDSは、16個のパルス群p〜p16によって構成される。また、各パルス群p〜p16はそれぞれ、16個の「1」又は「−1」で表されるパルスを含んで構成される。
MCU40及びロジック部41は、上述したように、1つのセンサ電極30Yを選択し、送信部42に各パルス群p(n=1〜16)を順次各センサ電極30Xに入力させる、という動作を各センサ電極30Yについて繰り返すよう構成される。したがって、1つのパルス群pの処理に要する時間をtとすると、指4の位置検出処理(ここでは、図2に示したステップS105において実行される位置検出処理)を行うために必要な時間は、t×16(=パルス群pの総数)×16(=センサ電極30Yの総数)となる。
図14は、1/Nの処理の内容の第1の例を示す図であり、図14(a)は1回目の処理、図14(b)は2回目の処理をそれぞれ表している。この例では、1回目と2回目のそれぞれにおいて、互いに異なる8個のセンサ電極30Xを用いて1/Nの処理が行われる。より具体的には、X方向に整列する16個のセンサ電極30Xを1つおきに選択して1回目の処理で使用し、残りのセンサ電極30Xを2回目の処理で使用するようにしている。
この第1の例によれば、1回の処理で指検出用信号FDSの入力対象となるセンサ電極30Xの本数が8となるので、8個のパルス群p〜pのみで指検出用信号FDSを構成することが可能になる。したがって、1回の処理を行うために必要な時間はt×8(=パルス群pの総数)×16(=センサ電極30Yの総数)となるので、図2又は図12(a)の例による位置検出処理に比べて1/2の時間で、1回の処理を完了することが可能になる。
また、第1の例によれば、1回目と2回目ですべてのセンサ電極30Xを網羅することになるので、MCU40は、1回目の処理の結果としてシフトレジスタ40a(図5を参照)に保持した部分検出データと、2回目の処理の結果としてシフトレジスタ40aに保持した部分検出データとを合成することにより、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成することが可能になる。
さらに、第1の例によれば、1回目と2回目の間に順序性がないことから、新たに部分検出データを取得した場合に、MCU40は、1/Nの処理を行う都度、シフトレジスタ40aに格納済みのN−1回分の部分検出データとの合成により全体検出データを生成することが可能になる。つまり、1回目の処理の結果としてシフトレジスタ40aに保持した部分検出データと、その直後に実行した2回目の処理の結果としてシフトレジスタ40aに保持した部分検出データとを合成することだけでなく、2回目の処理の結果としてシフトレジスタ40aに保持した部分検出データと、その直後に実行した1回目の処理の結果としてシフトレジスタ40aに保持した部分検出データとを合成することによっても、全体検出データを生成することが可能になる。したがって、図2又は図12(a)の例による指4の検出レートに比べて2倍の検出レートで、指4の検出結果を出力することが可能になる。
図15は、1/Nの処理の内容の第2の例を示す図であり、図15(a)は1回目の処理、図15(b)は2回目の処理をそれぞれ表している。この例では、1回目と2回目のそれぞれにおいて、互いに異なる8個のセンサ電極30Yを用いて1/Nの処理が行われる。より具体的には、Y方向に整列する16個のセンサ電極30Yを1つおきに選択して1回目の処理で使用し、残りのセンサ電極30Yを2回目の処理で使用するようにしている。
この第2の例によれば、1回の処理で選択の対象となるセンサ電極30Yの本数が8となる。したがって、1回の処理を行うために必要な時間はt×16(=パルス群pの総数)×8(=センサ電極30Yの総数)となるので、図2又は図12(a)の例による位置検出処理に比べて1/2の時間で、1回の検出動作を完了することが可能になる。
また、第2の例によっても、1回目と2回目ですべてのセンサ電極30Yを網羅することになるので、第1の例と同様、MCU40は、1回目の処理の結果としてシフトレジスタ40aに保持した部分検出データと、2回目の処理の結果としてシフトレジスタ40aに保持した部分検出データとを合成することにより、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成することが可能になる。
さらに、第2の例においても、1回目と2回目の間に順序性がないので、第1の例と同様、MCU40は、図2又は図12(a)の例による指4の検出レートに比べて2倍の検出レートで、指4の検出結果を出力することが可能になる。
図16は、1/Nの処理の内容の第3の例を示す図であり、図16(a)は1回目の処理、図16(b)は2回目の処理をそれぞれ表している。この例では、第1の例と同様、1回目と2回目のそれぞれにおいて、互いに異なる8個のセンサ電極30Xを用いて1/Nの処理が行われる。ただし、本例では、整列する16個のセンサ電極30Xのうちの8本を一端から順に選択して1回目の処理で使用し、残りのセンサ電極30Xを2回目の処理で使用するようにしている。
この第3の例によっても、第1の例と同様の理由により、図2又は図12(a)の例による位置検出処理に比べて1/2の時間で、1回の処理を完了することが可能になる。また、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成することが可能になる。さらに、図2又は図12(a)の例による指4の検出レートに比べて2倍の検出レートで、指4の検出結果を出力することが可能になる。
図17は、1/Nの処理の内容の第4の例を示す図であり、図17(a)は1回目の処理、図17(b)は2回目の処理をそれぞれ表している。この例では、第2の例と同様、1回目と2回目のそれぞれにおいて、互いに異なる8個のセンサ電極30Yを用いて1/Nの処理が行われる。ただし、本例では、整列する16個のセンサ電極30Yのうちの8本を一端から順に選択して1回目の処理で使用し、残りのセンサ電極30Yを2回目の処理で使用するようにしている。
この第4の例によっても、第2の例と同様の理由により、図2又は図12(a)の例による位置検出処理に比べて1/2の時間で、1回の処理を完了することが可能になる。また、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成することが可能になる。さらに、図2又は図12(a)の例による指4の検出レートに比べて2倍の検出レートで、指4の検出結果を出力することが可能になる。
図18は、1/Nの処理の内容の第5の例を示す図であり、図18(a)は1回目の処理、図18(b)は2回目の処理をそれぞれ表している。この例では、1回目の処理において16個のパルス群p〜p16のうちの半分のみが使用され、2回目の処理において残りが使用される。より具体的には、1回目の処理においてパルス群p〜pが使用され、2回目の処理においてパルス群p〜p16が使用される。
この第5の例によれば、1回の処理で各センサ電極30Xに入力されるパルスの数は8個のみとなる。したがって、1回の処理を行うために必要な時間がt×8(=パルス群pの総数)×16(=センサ電極30Yの総数)となるので、図2又は図12(a)の例による位置検出処理に比べて1/2の時間で、1回の検出動作を完了することが可能になる。
また、第5の例によれば、1回目と2回目で16個のパルス群p〜p16のすべてを網羅することになるので、第1〜第4の例と同様、MCU40は、1回目の処理の結果としてシフトレジスタ40aに保持した部分検出データと、2回目の処理の結果としてシフトレジスタ40aに保持した部分検出データとを合成することにより、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成することが可能になる。
さらに、第5の例においても、1回目と2回目の間に順序性がないので、第1〜第4の例と同様、MCU40は、図2又は図12(a)の例による指4の検出レートに比べて2倍の検出レートで、指4の検出結果を出力することが可能になる。
図19及び図20は、第5の例におけるシフトレジスタ40a(図5参照)の具体的な記憶内容の例を示す図である。同図には、理解が容易になるよう、各センサ電極30Yに対応してシフトレジスタ40aの記憶内容を並べて表示している。また、同図においてセンサ30の中に示した数値は、センサ電極30X,30Yの各交点におけるキャパシタンスの値を示している。以下、この図19及び図20を参照しながら、第5の例における全体検出データの生成方法について具体的に説明する。
図19は、1回目の処理が完了した直後におけるシフトレジスタ40aの記憶内容を示している。1回目の処理では、各センサ電極30YについてレベルL〜Lがシフトレジスタ40aに格納される。あるセンサ電極30Yについての1回目の処理が完了した時点で、シフトレジスタ40aには、図19に示すように、そのセンサ電極30Yについて直前に行われた2回目の処理でシフトレジスタ40aに格納されたレベルL〜L16が残っている。そこでMCU40は、新たに格納したレベルL〜Lにより表される部分検出データと、シフトレジスタ40a内に残っているレベルL〜L16により表される部分検出データとを合成して1つの全体検出データとし、この全体検出データを用いて、上述した相関値の算出を行う。これにより、MCU40は、1回目の検出動作が完了した時点で、指4の位置を示す座標をホストプロセッサ32に出力することが可能になる。
図20は、2回目の処理が完了した直後におけるシフトレジスタ40aの記憶内容を示している。2回目の処理では、各センサ電極30YについてレベルL〜L16がシフトレジスタ40aに格納される。あるセンサ電極30Yについての2回目の処理が完了した時点で、シフトレジスタ40aには、図19に示すように、そのセンサ電極30Yについて直前に行われた1回目の処理でシフトレジスタ40aに格納されたレベルL〜Lが残っている。そこでMCU40は、新たに格納したレベルL〜L16により表される部分検出データと、シフトレジスタ40a内に残っているレベルL〜Lにより表される部分検出データとを合成して1つの全体検出データとし、この全体検出データを用いて、上述した相関値の算出を行う。これにより、MCU40は、2回目の検出動作が完了した時点でも、指4の位置を示す座標をホストプロセッサ32に出力することが可能になる。
以上説明したように、本実施の形態によるポインタの位置検出処理によれば、指4の位置検出処理をN回に分けて実行するので、アクティブペン2及び指4双方の検出レートを維持しつつ、アクティブペン2の検出を等間隔で実行することが可能になる。したがって、アクティブペン2の検出間隔が一定でないために、例えばセンサコントローラ31から順次出力されるアクティブペン2の座標データが時間的に等間隔に送信されていることを期待して動作する描画アプリケーションなどにおいて、描画結果が不自然になってしまうという背景技術の問題が解決される。また、本実施の形態による位置検出処理によれば、背景技術よりも高い検出レートで、指4を検出することが可能になる。
次に、本発明の第2の実施の形態による位置検出システム1について、説明する。本実施の形態による位置検出システム1は、第1の実施の形態による位置検出システム1に、上述したゴースト位置の存在によって不要な直線が描画されてしまうことを防止するための機能を追加したものである。以下、第1の実施の形態と同一の構成には同一の符号を付し、第1の実施の形態との相違点に着目して説明する。
図22は、本実施の形態による位置検出システム1の使用状態の一例を示す図である。また、図23は、本実施の形態の背景技術によるホストプロセッサ32の動作を説明する図である。以下では、まずこれら図22及び図23を参照しながら本実施の形態の課題について説明し、その後、本実施の形態によるセンサコントローラ31の動作について説明することにする。
図22に示すように、ユーザは、アクティブペン2による入力操作を行う際に、アクティブペン2を持っている手(以下、右手とする)とは反対側の手(以下、左手とする)をタッチ面3aについている場合がある。この場合において、左手の接触位置(図示したパーム領域Palm)は第1の実施の形態に示した処理によってタッチ位置及びペン位置の両方から除外されることになるが、それとは別に、左腕の下方にペン位置(図示したゴースト位置G)が検出されてしまう場合がある。これは、同図に示す電流経路CR(アクティブペン2のペン電極からセンサ電極30Xを通って左腕に入り、人体を経由してアクティブペン2に戻る電流経路)が形成され、その結果として、左腕の下方でアクティブペン2の送信信号が検出されてしまうことによるものである。なお、図22にはセンサ電極30Xの例を示しているが、センサ電極30Yについても同様である。
ゴースト位置Gで検出される信号のレベルはアクティブペン2の接触位置(図示したペン位置P)で検出される信号のレベルに比べて小さく、また、タブレット3が同時に検出可能なアクティブペン2は通常1本だけであるので、アクティブペン2がタッチ面3aに接触している限り、このゴースト位置Gが問題になることはない。しかしながら、例えばアクティブペン2がタブレット3のベゼル領域3bからタッチ面3a内に、図示した矢印Aに沿って急に移動するような場合、センサコントローラ31は、実際のペン位置Pを検出する前に、ゴースト位置Gを検出してしまうことがある。
図23では、そのような場合に最初に検出されたゴースト位置Gをn−1番目の確定ペン位置fPn−1とし、次いで検出されたペン位置Pをn番目の確定ペン位置fPとして、それぞれを図示している。こうして確定ペン位置fPn−1,fPが相次いで検出されると、これらの供給を受けたホストプロセッサ32は、図23に示すように、これらの間に線分Lを描画することになる。この線分Lはユーザが意図したものではないので、線分Lが描画されないようにする必要がある。これが本実施の形態の課題である。以下、この課題を解決するためのセンサコントローラ31の動作について、図24を参照しながら詳しく説明する。
図24は、本実施の形態によるセンサコントローラ31が実行するポインタの位置検出処理を示すフロー図である。同図は、図3に示したペン検出ステップ内にステップS101〜S107を追加したものとなっている。以下、図24とともに図23も再度参照しながら、本実施の形態によるセンサコントローラ31の動作について詳しく説明する。
本実施の形態によるセンサコントローラ31(具体的には、図4に示したMCU40)は、ステップS3でペン位置を決定した後、直前のタッチ検出ステップ(図3参照)で領域種別がパームとされたタッチ位置が検出されていたか否かを判定する(ステップS101)。検出されていないと判定した場合、センサコントローラ31は、決定したペン位置を上述したペン位置テーブルとは別に記憶したうえで(ステップS107)、ステップS4の出力処理を行う。一方、検出されていたと判定した場合のセンサコントローラ31は次に、前回のステップS106で記憶していたペン位置(前回ペン位置)が、検出されていたパーム領域Palmを基準とする所定領域内に位置しているか否かを判定する(ステップS102)。
図23には、この所定領域の一例を示している。センサコントローラ31は、図5を参照して説明した相関値からパーム領域Palmの広がりを取得し、その結果に基づいて、パーム領域Palm内を通過するセンサ電極30X,30Yに対応するタッチ面3a内の十字形の領域(十字領域XR)を取得するよう構成される。上記所定領域は、こうして取得された十字領域XRによって構成される。
図24に戻り、続いてセンサコントローラ31は、今回のステップS3において決定されたペン位置(今回ペン位置)に対応するアクティブペン2の送信信号(具体的には、上述した位置信号)のレベルを所定の閾値と比較し、比較の結果に応じて、検出したペン位置を出力するか否かを決定する(ステップS103)。具体的には、送信信号のレベルが所定の閾値より低いと判定した場合(低)には、ステップS4の後に処理を進め、図3に示したタッチ検出ステップに移行する。一方、送信信号のレベルが所定の閾値以上であると判定した場合(高)には、ステップS104に処理を進める。ここで、ステップS103で使用する閾値は、MCU40がアクティブペン2の位置を検出するために使用する上記所定値より小さな値に設定される。ステップS103の処理はペン位置を検出するための閾値を事後的に上昇させる処理に他ならず、これにより、十字領域XR内においてゴースト位置Gが検出される可能性を低減することが可能になる。
次にセンサコントローラ31は、前回ペン位置と今回ペン位置との間の距離を算出する。この距離は、図23においては、確定ペン位置fPn−1,fP間の距離に相当する。そしてセンサコントローラ31は、この距離が所定値を超えているか(長)否か(短)を判定する(ステップS104)。そして、超えていると判定した場合には、アクティブペン2がタッチ面3aから離れたことを示すペンアップ情報OUT−PROXYと、アクティブペン2がタッチ面3aに接触したことを示すペンダウン情報IN−PROXYとを順次ホストプロセッサ32に出力する(ステップS105,S106)。ステップS104で超えていないと判定した場合、及び、ステップS106が終了した後には、センサコントローラ31は、決定したペン位置を上述したペン位置テーブルとは別に記憶したうえで(ステップS107)、ステップS4の出力処理を行う。
以上説明したように、本実施の形態によるポインタの位置検出処理によれば、今回検出したペン位置と前回検出したペン位置との間の距離が所定値を超えている場合に、ペンアップ情報OUT−PROXYをホストプロセッサ32に対して出力することができる。したがって、ホストプロセッサ32は、今回ペン位置と前回ペン位置とを異なるストロークに属するものと判断するので、ゴースト位置Gの存在によって、図23に示した線分Lのような不要な線分が描画されてしまうことが防止される。
以上、本発明の好ましい実施の形態について説明したが、本発明はこうした実施の形態に何等限定されるものではなく、本発明が、その要旨を逸脱しない範囲において、種々なる態様で実施され得ることは勿論である。
例えば、本実施の形態によるポインタの位置検出処理は、ここまでで説明したもの以外の態様でも、好適に実施可能である。以下、具体的な例を挙げて説明する。
図21(a)は、本実施の形態の第1の変形例による位置検出処理にかかる制御シーケンスを示す図である。本変形例によるMCU40は、所定のインターバルで1/2の処理を行い、各処理で得られた部分検出データと、その直前の処理で得られた部分検出データとを合成することにより、2倍の検出レートで全体検出データFM1、FM2、FM3、FM4・・・を生成するよう構成される。なお、上記インターバルには、アクティブペン2の位置検出処理又は画素駆動動作を実行することとしてもよいし、アクティブペン2の位置検出処理と画素駆動動作を時分割で実行することとしてもよい。
第1の変形例に関連して、MCU40は、指4の位置検出処理を上記所定のインターバルで実行するか否かを判定し、実行すると判定した場合にのみ、指4の位置検出処理をN回に分けて実行することとしてもよい。実行しないと判定した場合には、図3に示したステップS5〜S7を図2に示したステップS103によって置き換えることとなる。こうすることで、アクティブペン2の位置検出処理又は画素駆動動作を行う必要がある場合とない場合とで、指4の位置検出処理の実行方法を変更することが可能になる。
図21(b)は、本実施の形態の第2の変形例による位置検出処理にかかる制御シーケンスを示す図である。本変形例によるMCU40は、指4の位置検出処理を連続的に(インターバルを空けずに)行うにもかかわらず、指4の位置検出処理を2回の処理に分けて行うよう構成される。これにより、同図にも示すように、指4の位置検出処理を1回の処理で行う場合に比べて2倍の検出レートで、全体検出データFM1、FM2、FM3、FM4・・・を生成することが可能になる。
図21(c)は、本実施の形態の第3の変形例による位置検出処理にかかる制御シーケンスを示す図である。本変形例によるMCU40は、指4の位置検出処理を連続的に(インターバルを空けずに)行うにもかかわらず、指4の位置検出処理を3回の処理に分けて行うよう構成される。これにより、同図にも示すように、指4の位置検出処理を1回の処理で行う場合に比べて3倍の検出レートで、全体検出データFM1、FM2、FM3、FM4・・・を生成することが可能になる。
その他、上記実施の形態では、指4(パッシブポインタ)の位置検出処理を複数回に分割して行う例を説明したが、アクティブペン2の位置検出処理についても、同様に複数回に分割して行うこととしてもよい。
また、上記実施の形態では、MCU40が常にペン位置テーブル及びタッチ位置テーブルを用いて出力位置決定処理を行うものとして説明したが、例えば、図9のステップS21で検出された位置が1つのみであった場合には、その位置を出力対象のペン位置として決定し、ステップS3のペン位置決定処理をスキップすることとしてもよい。同様に、図9のステップS51で検出された位置が1つのみであった場合には、その位置を出力対象のパッシブポインタ位置として決定し、ステップS8のパッシブポインタ位置決定処理をスキップすることとしてもよい。
また、上記実施の形態においては、ロジック部41及びMCU40は、指検出用信号FDSを送信する場合に、1つのセンサ電極30Yを選択し、上述したパルス群p〜pを送信部42に順次各センサ電極30Xに入力させる、という動作を各センサ電極30Yについて繰り返すよう構成されるとしたが、センサ電極30Yごとに受信部44を設け、各センサ電極30Yに対する処理をパラレルに実行することとしてもよい。この場合、図15及び図17に示した1/Nの処理の内容の第2及び第4の例では位置検出処理の時間を短縮するという効果が得られないことになるが、一方で、2本のセンサ電極30Yで1つの受信部44を共有することが可能になるので、センサ電極30Yごとに受信部44を設ける場合に比べ、受信部44の回路規模を削減するという新たな効果を得ることが可能になる。
1 位置検出システム
2 アクティブペン
3 タブレット
3a タッチ面
3b ベゼル領域
4 指
5 手
30 センサ
30X,30Y センサ電極
31 センサコントローラ
32 ホストプロセッサ
40a シフトレジスタ
40b 相関器
41 ロジック部
42,43 送信部
44 受信部
45 選択部
50 パターン供給部
51 スイッチ
52 符号列保持部
53 拡散処理部
54 送信ガード部
55 増幅回路
56 検波回路
57 アナログデジタル変換器
58x,58y スイッチ
59x,59y 導体選択回路
COM コマンド
CR 電流経路
DS ダウンリンク信号
FDS 指検出用信号
〜L レベル
Res データ
SB スタートビット
〜T 相関値
US アップリンク信号
Vcom 画素駆動用電圧
cP[i] 候補ペン位置
cT[j] 候補タッチ位置
ctrl_t1〜ctrl_t4,ctrl_r 制御信号
fP[i] 確定ペン位置
fT[j] 確定タッチ位置
G ゴースト位置
P ペン位置
Palm パーム領域
〜p パルス群
〜s 信号
XR 十字領域

Claims (10)

  1. センサパターンに接続されたセンサコントローラによって実行され、
    信号を送信しないパッシブポインタの位置と、
    先端部分に設けられたペン電極と前記センサパターンとの間に形成されたキャパシタンスを介してペン信号を送信可能に構成されたアクティブペンの位置と、を検出するポインタの位置検出方法であって、
    前記ペン電極を介して送信されたペン信号を検出し、検出された前記ペン信号のレベルに基づいて前記アクティブペンの位置であるペン位置を検出するペン検出ステップと、
    前記センサパターンにおけるキャパシタンスの変化を検出することによって、それぞれ前記パッシブポインタの位置の候補である1以上の候補タッチ位置を検出し、前記1以上の候補タッチ位置の中から前記ペン位置を除いてなる1以上の候補タッチ位置を、前記パッシブポインタの位置であるパッシブポインタ位置として出力するタッチ検出ステップと、
    を含む、ポインタの位置検出方法。
  2. 前記キャパシタンスの変化は、前記ペン電極と前記センサパターンとの間に形成されたキャパシタンスによる前記センサパターンでのキャパシタンスの変化を含む、
    請求項1に記載のポインタの位置検出方法。
  3. 前記パッシブポインタは少なくとも指を含む、
    請求項1に記載のポインタの位置検出方法。
  4. 前記タッチ検出ステップは、
    前記1以上の候補タッチ位置のそれぞれについて前記キャパシタンスの変化量が所定量以上であった領域の広さを検出し、
    前記ペン位置の近傍に位置し、かつ、検出した前記広さが所定サイズ未満である前記候補タッチ位置を、前記パッシブポインタ位置として出力しない、
    請求項1に記載のポインタの位置検出方法。
  5. 前記ペン検出ステップは、前記ペン信号のレベルが所定レベル以上である位置が複数検出された場合に、最も前記ペン信号のレベルが大きい位置を前記ペン位置として出力する、
    請求項1に記載のポインタの位置検出方法。
  6. 前記ペン検出ステップは、前記ペン信号のレベルが所定レベル以上である位置が離れて複数検出された場合に、前記所定レベル以上である前記ペン信号のレベルが連続してなる領域の面積に基づいて、前記ペン位置を検出する、
    請求項1に記載のポインタの位置検出方法。
  7. 前記タッチ検出ステップは、前記1以上の候補タッチ位置のそれぞれについて前記キャパシタンスの変化量が所定量以上であった領域の広さを検出し、検出した前記広さが所定サイズ以上である前記候補タッチ位置をパームによるものとみなして前記パッシブポインタ位置から除外し、
    前記ペン検出ステップは、前記ペン信号のレベルが所定レベル以上である位置が複数検出された場合に、前記タッチ検出ステップにより前記パームによるものとみなされた位置を前記ペン位置として出力しない、
    請求項1に記載のポインタの位置検出方法。
  8. 前記タッチ検出ステップは、
    前記1以上の候補タッチ位置のそれぞれについて前記キャパシタンスの変化量が所定量以上であった領域の広さを検出し、検出した前記広さが所定サイズ以上である前記候補タッチ位置をパームによるものとみなして前記パッシブポインタ位置から除外し、
    前記ペン検出ステップにより前記ペン位置が検出されているか否かに応じて前記所定サイズを変更する、
    請求項1に記載のポインタの位置検出方法。
  9. 前記タッチ検出ステップは、前記ペン検出ステップにより前記アクティブペン位置が検出されたことに応じて前記所定サイズを縮小する、
    請求項8に記載のポインタの位置検出方法。
  10. 前記センサコントローラは、プロセッサとメモリとを含み、
    前記前記ペン検出ステップと前記タッチ検出ステップとは、前記プロセッサにより時分割で実行され、
    前記プロセッサは、前記ペン検出ステップにより検出された前記ペン位置を前記メモリに書き込むよう構成され、
    前記タッチ検出ステップは、前記1以上の候補タッチ位置の中から前記メモリに記憶される前記ペン位置を除いてなる1以上の候補タッチ位置を、前記パッシブポインタ位置として出力するよう構成される、
    請求項1乃至9のいずれか一項に記載のポインタの位置検出方法。
JP2019010852A 2019-01-25 2019-01-25 ポインタの位置検出方法及びセンサコントローラ Active JP6616534B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019010852A JP6616534B2 (ja) 2019-01-25 2019-01-25 ポインタの位置検出方法及びセンサコントローラ
JP2019202072A JP6952753B2 (ja) 2019-01-25 2019-11-07 アクティブペンの位置検出方法及びセンサコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019010852A JP6616534B2 (ja) 2019-01-25 2019-01-25 ポインタの位置検出方法及びセンサコントローラ

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2018562681A Division JP6473554B1 (ja) 2017-06-08 2017-06-08 ポインタの位置検出方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2019202072A Division JP6952753B2 (ja) 2019-01-25 2019-11-07 アクティブペンの位置検出方法及びセンサコントローラ

Publications (2)

Publication Number Publication Date
JP2019061725A true JP2019061725A (ja) 2019-04-18
JP6616534B2 JP6616534B2 (ja) 2019-12-04

Family

ID=66178582

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019010852A Active JP6616534B2 (ja) 2019-01-25 2019-01-25 ポインタの位置検出方法及びセンサコントローラ

Country Status (1)

Country Link
JP (1) JP6616534B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11194410B2 (en) 2020-03-16 2021-12-07 Wacom Co., Ltd. Pointer position detection method and sensor controller

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012022543A (ja) * 2010-07-15 2012-02-02 Panasonic Corp タッチパネルシステム
JP2015022410A (ja) * 2013-07-17 2015-02-02 シャープ株式会社 マルチモード入力システムおよび情報処理システム
JP2016206803A (ja) * 2015-04-17 2016-12-08 株式会社ジャパンディスプレイ 指示装置及びタッチ検出システム
JP2017068855A (ja) * 2013-11-19 2017-04-06 株式会社ワコム インクデータ送信方法、装置、及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012022543A (ja) * 2010-07-15 2012-02-02 Panasonic Corp タッチパネルシステム
JP2015022410A (ja) * 2013-07-17 2015-02-02 シャープ株式会社 マルチモード入力システムおよび情報処理システム
JP2017068855A (ja) * 2013-11-19 2017-04-06 株式会社ワコム インクデータ送信方法、装置、及びプログラム
JP2016206803A (ja) * 2015-04-17 2016-12-08 株式会社ジャパンディスプレイ 指示装置及びタッチ検出システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11194410B2 (en) 2020-03-16 2021-12-07 Wacom Co., Ltd. Pointer position detection method and sensor controller
US11586301B2 (en) 2020-03-16 2023-02-21 Wacom Co., Ltd. Pointer position detection method and sensor controller

Also Published As

Publication number Publication date
JP6616534B2 (ja) 2019-12-04

Similar Documents

Publication Publication Date Title
JP6473554B1 (ja) ポインタの位置検出方法
JP6537759B1 (ja) センサコントローラ
US10955964B2 (en) Active pen and touchscreen display device
KR102301621B1 (ko) 스타일러스 펜, 터치 패널 및 이들을 구비한 좌표 측정 시스템
US20110304570A1 (en) Touch screen device
CN110869897A (zh) 修正笔坐标与指示器的显示位置之间的偏离的方法
KR20100098706A (ko) 패시브-매트릭스 멀티컨택트 촉각 센서에 대한 용량성/저항성 측정의 교체를 구비하는 전자 분석 회로
JP2011134069A (ja) タッチパネル装置
CN110597414B (zh) 触摸屏的触控检测方法及相关设备
WO2021161701A1 (ja) ポインタの位置検出方法及びセンサコントローラ
KR20170019170A (ko) 터치 센서, 이를 포함하는 표시 장치 및 터치 패널을 센싱하는 방법
JP6952753B2 (ja) アクティブペンの位置検出方法及びセンサコントローラ
JP7475950B2 (ja) アップリンク信号の送受信システム、及びセンサ制御回路
JP6616534B2 (ja) ポインタの位置検出方法及びセンサコントローラ
US11586301B2 (en) Pointer position detection method and sensor controller
JP7209064B2 (ja) ポインタの位置検出方法
US20020005910A1 (en) Novel cursor control system
KR101715997B1 (ko) 정전용량 터치패널용 구동 방법 및 장치
CN113168242A (zh) 手写系统的控制方法和手写系统
CN116450025A (zh) 位置检测电路、位置检测系统及位置检测方法
JP2017126243A (ja) 入力装置および文字入力プログラム
CN115904129A (zh) 触控设备、触控对象识别方法及装置
JP2021121918A (ja) センサシステム
JP2015079350A (ja) 表示装置
CN112114693A (zh) 感测装置的信号管线处理方法及感测装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190125

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190125

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190704

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191008

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191107

R150 Certificate of patent or registration of utility model

Ref document number: 6616534

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250