JP7209064B2 - Pointer position detection method - Google Patents
Pointer position detection method Download PDFInfo
- Publication number
- JP7209064B2 JP7209064B2 JP2021157746A JP2021157746A JP7209064B2 JP 7209064 B2 JP7209064 B2 JP 7209064B2 JP 2021157746 A JP2021157746 A JP 2021157746A JP 2021157746 A JP2021157746 A JP 2021157746A JP 7209064 B2 JP7209064 B2 JP 7209064B2
- Authority
- JP
- Japan
- Prior art keywords
- pen
- detection
- detected
- pointer
- processing
- 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.)
- Active
Links
Images
Landscapes
- Position Input By Displaying (AREA)
Description
本発明はポインタの位置検出方法に関し、特に、アクティブ静電方式の電子ペンの検出と、指などのパッシブポインタの検出とを並行して実施するための、ポインタの位置検出方法に関する。 The present invention relates to a pointer position detection method, and more particularly to a pointer position detection method for simultaneously detecting an active electrostatic electronic pen and detecting a passive pointer such as a finger.
従来、電子ペンとして、電磁共鳴方式のもの(以下、「EMRペン」と称する)が知られている。EMRペンは、ペン先から交番磁界を送信するように構成された電子ペンである。EMRペンの先端は、交番磁界を乱さないよう樹脂などの不導体によって構成される。 Conventionally, as an electronic pen, an electromagnetic resonance type pen (hereinafter referred to as "EMR pen") is known. An EMR pen is an electronic pen configured to transmit an alternating magnetic field from the pen tip. The tip of the EMR pen is made of a non-conductor such as resin so as not to disturb the alternating magnetic field.
また、近年、アクティブ静電方式のもの(以下、「アクティブペン」と称する)の開発が進んできている。アクティブペンは、ペン先から、電界により信号を送信するように構成された電子ペンである。アクティブペンの先端は、電界を生成するアンテナとしての役割を果たす金属などの導体(ペン電極)を含んで構成される。 In recent years, development of active electrostatic pens (hereinafter referred to as "active pens") has progressed. An active pen is an electronic pen that is configured to transmit signals through an electric field from the pen tip. The tip of an active pen consists of a conductor (pen electrode), such as metal, which acts as an antenna to generate an electric field.
また近年、例えば指あるいは指と同様に信号を送信しない補助デバイス(以下、「パッシブポインタ」と総称する)を、電子ペンと併用して用いる例が増加している。例えば、右手に電子ペンを持って絵を描きながら、左手の指あるいは補助デバイスでズームイン、ズームアウト、回転などの補助作業を行う、というような例である。このような場合、ポインタの検出を行う位置検出器は、電子ペンの検出とパッシブポインタの検出とを並行して実施する必要がある。 Further, in recent years, there has been an increasing number of cases where a finger or an auxiliary device that does not transmit a signal like a finger (hereinafter collectively referred to as a "passive pointer") is used in combination with an electronic pen. For example, while drawing a picture with the electronic pen in the right hand, an auxiliary operation such as zooming in, zooming out, or rotating is performed with the fingers of the left hand or an auxiliary device. In such a case, the position detector that detects the pointer needs to detect the electronic pen and the passive pointer in parallel.
特許文献1には、EMRペンの検出とパッシブポインタの検出とを並行して実施する位置検出器の例が開示されている。同文献の図4にも示されるように、EMRペンの検出とパッシブポインタの検出とを並行して実施する位置検出器においては、それぞれの検出に用いるセンサを別々に用意する必要がある。EMRペンの検出用センサには、交番磁界を生成する機能と、EMRペンが送信した信号を受信する機能とが設けられる。一方、パッシブポインタの検出用センサには、パッシブポインタの先端(例えば、指先)とセンサ内に配置される電極との間に生ずる容量結合を検出する機能が設けられる。パッシブポインタは交番磁界に応じて信号を送信せず、EMRペンはセンサ内の電極と容量結合しないことから、EMRペンの検出とパッシブポインタの検出とは、完全に同じタイミングで(時分割によらずに)実行され得る。
また、特許文献2には、アクティブペンの検出とパッシブポインタの検出とを並行して実施する位置検出器の例が開示されている。同文献の図6にも示されるように、アクティブペンの検出とパッシブポインタの検出とは、同じセンサを用いて実行される。このセンサは、パッシブポインタに関しては、特許文献1に関して上述したパッシブポインタの検出用センサと同様に、パッシブポインタの先端とセンサ内に配置される電極との間に生ずる容量結合を検出することによって、検出を実行する。一方、アクティブペンに関しては、アクティブペンに対して信号を送信し、それに応じてアクティブペンが送信した信号を受信することによって、検出を実行する。このとき、アクティブペンの先端に配置される導体(ペン電極)と、センサ内に配置される電極とは、それぞれ信号を送受信するためのアンテナとして機能する。パッシブポインタの検出とアクティブペンの検出とが同じセンサによって行われることから、アクティブペンの検出とパッシブポインタの検出とを完全に同じタイミングで実行することはできず、両者は時分割で実行される。
Further,
ところで、アクティブペンの検出とパッシブポインタの検出とを並行して実施する従来の位置検出器には、アクティブペンの接触位置とパッシブポインタの接触位置とを相互に誤認識してしまうという問題があり、改善が求められていた。以下、詳しく説明する。 By the way, the conventional position detector that detects the active pen and the passive pointer in parallel has the problem of erroneously recognizing the contact position of the active pen and the contact position of the passive pointer. , was in need of improvement. A detailed description will be given below.
まず、位置検出器がアクティブペンの接触位置をパッシブポインタの接触位置と誤認識してしまうのは、アクティブペンのペン電極がセンサ内の電極との間に容量結合を発生させるためである。位置検出器は、この容量結合をパッシブポインタの接触によって発生した容量結合と区別できないので、パッシブポインタが接触したものと誤認識してしまう。近年では複数のパッシブポインタを認識可能に構成された位置検出器も多くなっているが、そのような位置検出器であれば、アクティブペンの接触を、2つ目、3つ目のパッシブポインタの接触と誤認識してしまうことになる。 First, the reason why the position detector erroneously recognizes the contact position of the active pen as the contact position of the passive pointer is that the pen electrode of the active pen causes capacitive coupling with the electrode in the sensor. Since the position detector cannot distinguish this capacitive coupling from the capacitive coupling caused by the contact of the passive pointer, it erroneously recognizes that the passive pointer has come into contact. In recent years, there are many position detectors that are configured to recognize multiple passive pointers. It will be erroneously recognized as contact.
次に、位置検出器がパッシブポインタの接触位置をアクティブペンの接触位置と誤認識してしまうのは、アクティブペンの送信信号が人間の体を通じて掌などに伝わり、そこからセンサに向けて送信されてしまうためである。位置検出器は、こうして受信される信号をアクティブペンのペン電極から直接送信されたものと区別できないので、掌の接触位置を、アクティブペンの接触位置と誤認識してしまう。 Next, the position detector mistakenly recognizes the contact position of the passive pointer as the contact position of the active pen. This is because Since the position detector cannot distinguish the signal thus received from the signal directly transmitted from the pen electrode of the active pen, the contact position of the palm is erroneously recognized as the contact position of the active pen.
したがって、本発明の目的の一つは、アクティブペンの接触位置とパッシブポインタの接触位置とを正しく識別できるポインタの位置検出方法を提供することにある。 SUMMARY OF THE INVENTION Accordingly, one object of the present invention is to provide a pointer position detecting method capable of correctly identifying the contact position of an active pen and the contact position of a passive pointer.
また、上述したようにアクティブペンの検出とパッシブポインタの検出とは時分割で実行される。仮に、アクティブペンの検出に要する時間を1回あたり3ミリ秒、パッシブポインタの検出に要する時間を1回あたり2ミリ秒とし、アクティブペン検出とパッシブポインタ検出を交互に実行することとすると、アクティブペンの検出レート及びパッシブポインタの検出レートは等しくなる(ともに約200(1/5×1000)回/秒)。 Also, as described above, the detection of the active pen and the detection of the passive pointer are executed in a time division manner. Assuming that the time required for active pen detection is 3 milliseconds per detection and the time required for passive pointer detection is 2 milliseconds per detection, active pen detection and passive pointer detection are performed alternately. The detection rate of the pen and the detection rate of the passive pointer are equal (both about 200 (1/5×1000) times/second).
このような場合において、アクティブペンの検出レートをさらに向上させようとすると、例えば、アクティブペン検出を2回続けて行った後、パッシブポインタ検出を1回行うようにすることなどが考えられる。 In such a case, in order to further improve the active pen detection rate, for example, it is conceivable to perform active pen detection twice in succession and then perform passive pointer detection once.
しかし、上記のように単純にアクティブペンの検出とパッシブペンの検出とを適当な回数の比率で実行させる制御方法をとったのでは、アクティブペン検出の間隔が一定でなくなる場合がある。例えば上記の例のような場合、アクティブペン検出が2回連続して実行された後、次のアクティブペン検出はパッシブポインタ検出が完了するまで間がおかれることになる。すると、センサコントローラから順次出力されるアクティブペンの座標データが時間的に等間隔に送信されていることを期待して動作する描画アプリケーションなどにおいて、描画結果が不自然になってしまうという問題が生ずるため、改善が求められていた。 However, if a control method is adopted in which the active pen detection and the passive pen detection are simply performed at an appropriate number of times as described above, the interval between active pen detections may not be constant. For example, as in the example above, after two consecutive active pen detections, the next active pen detection will be delayed until the passive pointer detection is complete. As a result, in a drawing application that expects that the coordinate data of the active pen sequentially output from the sensor controller is transmitted at equal time intervals, the drawing results become unnatural. Therefore, improvement was required.
したがって、本発明の目的の他の一つは、アクティブペン及びパッシブポインタ双方の検出レートを維持しつつ、アクティブペンの検出を等間隔で実行できるポインタの位置検出方法を提供することにある。 Therefore, another object of the present invention is to provide a pointer position detection method that can detect the active pen at regular intervals while maintaining the detection rate of both the active pen and the passive pointer.
また、位置検出器がアクティブペンの検出を行う際には、アクティブペンもパッシブポインタも接触していない位置をアクティブペンの接触位置として誤認識してしまう場合がある。これは、アクティブペンのペン電極からセンサ内の電極を通ってアクティブペンを持っている手とは反対側の腕に入り、人体を経由してアクティブペンに戻る電流経路が形成され、その結果として、この腕の下方でアクティブペンの送信信号が検出されてしまう場合があることによるものである。以下、このようにして誤認識されたアクティブペンの接触位置を「ゴースト位置」と称する。 Further, when the position detector detects the active pen, it may erroneously recognize a position where neither the active pen nor the passive pointer is in contact as the contact position of the active pen. This forms a current path from the pen electrode of the active pen through the electrode in the sensor, into the arm opposite the hand holding the active pen, and back to the active pen via the human body, resulting in This is because the transmission signal of the active pen may be detected below the arm. Hereinafter, the contact position of the active pen that is erroneously recognized in this way will be referred to as a "ghost position".
例えばアクティブペンが位置検出器を構成するタブレットのベゼル領域からタッチ面内に急に移動するような場合、位置検出器は、実際のペン位置を検出する前にゴースト位置を検出してしまうことがある。そうすると、検出されたゴースト位置と、その直後に検出された実際のペン位置との間に不要な線分が描画されてしまうことになるので、改善が必要とされていた。 For example, if the active pen suddenly moves from the bezel area of the tablet that constitutes the position detector into the touch surface, the position detector may detect a ghost position before detecting the actual pen position. be. In that case, an unnecessary line segment is drawn between the detected ghost position and the actual pen position detected immediately after that, so an improvement has been required.
したがって、本発明の目的のさらに他の一つは、ゴースト位置の存在によって不要な線分が描画されてしまうことを防止できるポインタの位置検出方法を提供することにある。 Therefore, still another object of the present invention is to provide a pointer position detection method that can prevent unnecessary line segments from being drawn due to the presence of a ghost position.
本発明によるポインタの位置検出方法は、センサパターンに接続されたセンサコントローラによって実行され、信号を送信しないパッシブポインタの位置と、先端部分に設けられたペン電極から信号を送信可能に構成されたアクティブペンの位置と、を検出するポインタの位置検出方法であって、前記ペン電極を介して送信されたペン信号を検出し、検出された前記ペン信号のレベルに基づいて前記アクティブペンの位置であるペン位置を検出するペン検出ステップと、前記センサパターンにおけるキャパシタンスの変化を検出することによって、それぞれ前記パッシブポインタの位置の候補である1以上の候補タッチ位置を検出し、前記1以上の候補タッチ位置の中から前記ペン位置を除いてなる1以上の候補タッチ位置を、前記パッシブポインタの位置であるパッシブポインタ位置として出力するタッチ検出ステップと、を含む、ポインタの位置検出方法である。 A pointer position detection method according to the present invention is executed by a sensor controller connected to a sensor pattern. A pointer position detection method for detecting a position of a pen, and detecting a pen signal transmitted through the pen electrode, and determining the position of the active pen based on the level of the detected pen signal. Detecting one or more candidate touch positions, each of which is a candidate for the position of the passive pointer, by a pen detection step of detecting a pen position and detecting a change in capacitance in the sensor pattern; a touch detection step of outputting one or more candidate touch positions other than the pen position as a passive pointer position, which is the position of the passive pointer.
また、本発明の他の側面によるポインタの位置検出方法は、所定の領域内に存在するポインタの位置検出方法であって、第1の検出レートで第1検出処理の1/Nの処理を実行し、前記1/Nの処理に基づいて第1のポインタが存在するか否かを示す部分検出データを取得してメモリに保持する第1の検出ステップと、前記第1の検出ステップが前記部分検出データを前記メモリに新たに保持する都度、それまでに前記メモリに保持されているN-1個分の前記部分検出データと、新たに保持された前記部分検出データとを合成し、前記所定の領域の全体について前記第1のポインタが存在するか否かを示す全体検出データを生成する合成ステップと、前記全体検出データを前記第1の検出レートで出力するレポートステップと、を含む、ポインタの位置検出方法である。 A pointer position detection method according to another aspect of the present invention is a pointer position detection method existing in a predetermined area, wherein 1/N of the first detection processing is performed at a first detection rate. a first detection step of acquiring partial detection data indicating whether or not the first pointer exists based on the 1/N process and storing the partial detection data in a memory; Each time the detection data is newly held in the memory, the N−1 partial detection data held in the memory so far and the newly held partial detection data are synthesized, and the predetermined a synthesizing step of generating overall detection data indicating whether or not the first pointer exists for the entire area of the pointer; and a reporting step of outputting the overall detection data at the first detection rate. position detection method.
また、本発明のさらに他の側面によるポインタの位置検出方法は、所定の領域内に存在するポインタの位置検出方法であって、第2の検出レートで第2検出処理の全部を実行し、第2のポインタの検出を実行する第2の検出ステップと、第1の検出レートで第1検出処理の1/Nの処理を実行し、前記1/Nの処理に基づいて前記第2のポインタとは異なる第1のポインタが存在するか否かを示す部分検出データを取得してメモリに保持する第1の検出ステップと、を含み、前記第2の検出ステップと、前記第1の検出ステップとは、交互に実行される、ポインタの位置検出方法である。 A pointer position detection method according to still another aspect of the present invention is a pointer position detection method existing in a predetermined area, wherein the entire second detection process is executed at a second detection rate, a second detection step of performing detection of 2 pointers, performing 1/N processing of the first detection processing at a first detection rate, and detecting the second pointer based on the 1/N processing a first detection step of acquiring partial detection data indicating whether or not a different first pointer exists and holding it in a memory, wherein the second detection step and the first detection step is a pointer position detection method that is executed alternately.
また、本発明のさらに他の側面によるポインタの位置検出方法は、K個の第1の電極及びK個の第2の電極を含む所定の領域内に存在するポインタの位置検出方法であって、それぞれK個のパルスからなるN×M個のパルス群をメモリから1パルス群ずつ順次読み出し、該読み出しの都度、読み出したパルス群を構成するK個のパルスを前記K個の第1の電極のそれぞれに対して送信し、該送信の結果として前記K個の第2の電極のそれぞれから出力される信号のレベルを示す部分検出データを前記メモリに格納する検出ステップと、前記検出ステップによってM個のパルス群のそれぞれに対応する前記部分検出データが前記メモリに格納される都度、前記第2の電極ごとに、それまでに前記メモリに格納されていた(N-1)×M個のパルス群のそれぞれに対応する前記部分検出データと合成し、対応する前記第2の電極上に前記ポインタが存在するか否かを示す合成検出データを生成する合成ステップと、を含む、ポインタの位置検出方法である。 A pointer position detection method according to still another aspect of the present invention is a pointer position detection method in a predetermined area including K first electrodes and K second electrodes, comprising: N×M pulse groups each consisting of K pulses are sequentially read out from the memory one pulse group at a time, and K pulses constituting the read pulse group are applied to the K first electrodes each time the reading is performed. a detection step of transmitting partial detection data to each of the K second electrodes and storing in the memory partial detection data indicating levels of signals output from each of the K second electrodes as a result of the transmission; each time the partial detection data corresponding to each of the pulse groups is stored in the memory, for each of the second electrodes, the (N−1)×M pulse groups that have been stored in the memory so far and a synthesizing step of synthesizing with the partial detection data corresponding to each of the above to generate synthesized detection data indicating whether or not the pointer exists on the corresponding second electrode. is.
また、本発明のさらに他の側面によるポインタの位置検出方法は、センサパターンに接続されたセンサコントローラによって実行され、信号を送信しないパッシブポインタの位置と、先端部分に設けられたペン電極から信号を送信可能に構成されたアクティブペンの位置と、を検出するポインタの位置検出方法であって、前記センサパターンにおけるキャパシタンスの変化を検出することによって前記パッシブポインタの位置を検出するとともにパーム領域を決定するタッチ検出ステップと、前記ペン電極を介して送信されたペン信号を検出し、検出された前記ペン信号のレベルに基づいて前記アクティブペンの位置であるペン位置を検出するペン検出ステップと、を含み、前記ペン検出ステップは、(1)前回検出した前記ペン位置が前記パーム領域を基準とする所定領域内に入っており、かつ、(2)今回検出した前記ペン位置と前回得られた前記ペン位置との間の距離が所定値を超えている場合に、前記アクティブペンがタッチ面から離れたことを示すペンアップ情報を出力する、ポインタの位置検出方法である。 Further, a pointer position detecting method according to still another aspect of the present invention is executed by a sensor controller connected to a sensor pattern, and detects the position of a passive pointer that does not transmit a signal and the pen electrode provided at the tip of the pointer. A pointer location detection method for detecting the position of an active pen configured to transmit and detecting the position of the passive pointer and determining a palm area by detecting changes in capacitance in the sensor pattern. a touch detection step; and a pen detection step of detecting a pen signal transmitted through the pen electrode and detecting a pen position, which is the position of the active pen, based on the level of the detected pen signal. , the pen detection step is performed by determining that (1) the previously detected pen position is within a predetermined area based on the palm area, and (2) the currently detected pen position and the previously obtained pen A pointer position detection method for outputting pen-up information indicating that the active pen has left the touch surface when the distance from the position exceeds a predetermined value.
また、本発明のさらに他の側面によるポインタの位置検出方法は、センサパターンに接続されたセンサコントローラによって実行され、信号を送信しないパッシブポインタの位置と、先端部分に設けられたペン電極から信号を送信可能に構成されたアクティブペンの位置と、を検出するポインタの位置検出方法であって、前記センサパターンにおけるキャパシタンスの変化を検出することによって前記パッシブポインタの位置を検出するとともにパーム領域を決定するタッチ検出ステップと、前記ペン電極を介して送信されたペン信号を検出し、検出された前記ペン信号のレベルに基づいて前記アクティブペンの位置であるペン位置を検出するとともに、前記アクティブペンが送信したペン信号に基づき筆圧を検出するペン検出ステップと、を含み、前記ペン検出ステップは、今回検出した前記ペン位置が前記パーム領域の近傍に存在するか否かを判定し、存在すると判定した場合に、前回検出した前記筆圧が無効であった場合には今回検出した前記ペン位置を無効とし、前回検出した前記筆圧が有効であった場合には今回検出した前記ペン位置を有効とする、ポインタの位置検出方法である。 Further, a pointer position detecting method according to still another aspect of the present invention is executed by a sensor controller connected to a sensor pattern, and detects the position of a passive pointer that does not transmit a signal and the pen electrode provided at the tip of the pointer. A pointer location detection method for detecting the position of an active pen configured to transmit and detecting the position of the passive pointer and determining a palm area by detecting changes in capacitance in the sensor pattern. a touch detection step of detecting a pen signal transmitted through the pen electrode, detecting a pen position, which is the position of the active pen, based on the level of the detected pen signal; and a pen detection step of detecting writing pressure based on the pen signal, wherein the pen detection step determines whether or not the pen position detected this time exists in the vicinity of the palm area, and determines that the pen position exists. In this case, if the pen pressure detected last time was invalid, the pen position detected this time is invalidated, and if the pen pressure detected last time was valid, the pen position detected this time is valid. This is a pointer position detection method.
本発明にかかるポインタの位置検出方法によれば、メモリに保持されたアクティブペン位置に応じて、パッシブポインタ位置として出力する1以上の候補タッチ位置を選択できるので、アクティブペンの接触位置とパッシブポインタの接触位置とを正しく識別することが可能になる。 According to the pointer position detection method of the present invention, one or more candidate touch positions to be output as the passive pointer position can be selected according to the active pen position held in the memory. It is possible to correctly identify the contact position of the
本発明にかかるポインタの位置検出方法によれば、第1検出処理(パッシブポインタの位置検出処理)をN回に分けて実行するので、アクティブペン及びパッシブポインタ双方の検出レートを維持しつつ、アクティブペンの検出を等間隔で実行することが可能になる。 According to the pointer position detection method according to the present invention, the first detection process (passive pointer position detection process) is divided into N times and executed. Pen detection can be performed at regular intervals.
本発明にかかるポインタの位置検出方法によれば、今回検出したペン位置と前回検出したペン位置との間の距離が所定値を超えている場合にペンアップ情報を出力することができるので、ゴースト位置の存在によって不要な線分が描画されてしまうことを防止することが可能になる。 According to the pointer position detection method of the present invention, pen-up information can be output when the distance between the currently detected pen position and the previously detected pen position exceeds a predetermined value. It is possible to prevent unnecessary line segments from being drawn due to the presence of positions.
以下、添付図面を参照しながら、本発明の実施の形態について詳細に説明する。 BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
図1は、本発明の第1の実施の形態による位置検出システム1の使用状態の一例を示す図である。同図に示すように、本実施の形態による位置検出システム1はアクティブペン2及びタブレット3を備える。タブレット3はタッチ面3aを有しており、タッチ面3a上におけるアクティブペン及びパッシブポインタの位置を検出可能に構成される。図1には、アクティブペン2のペン先、パッシブポインタとしての指4の先端、及び、アクティブペン2を保持しているユーザの手5がタッチ面3aに接触している様子を示している。なお、ユーザの指4はパッシブポインタの一例として示しているもので、本実施の形態においてパッシブポインタの種類は問わない。以下の説明では、アクティブペン2と指4に代表されるパッシブポインタとをまとめて、「ポインタ」と称する場合がある。
FIG. 1 is a diagram showing an example of usage of a
ここで、本実施の形態の内容について詳しく説明する前に、本発明の概要について、図2及び図3を参照しながら説明する。 Here, before describing the contents of the present embodiment in detail, the outline of the present invention will be described with reference to FIGS. 2 and 3. FIG.
まず図2は、本発明の背景技術によるタブレットに設けられるセンサコントローラ(図示せず)が実行するポインタの位置検出処理の概略を示すフロー図である。同図に示すように、本発明の背景技術によるセンサコントローラは、ステップS101~S106の処理を繰り返し実行するよう構成される(ステップS100)。 First, FIG. 2 is a flowchart showing an overview of pointer position detection processing executed by a sensor controller (not shown) provided in a tablet according to the background art of the present invention. As shown in the figure, the sensor controller according to the background art of the present invention is configured to repeatedly execute the processes of steps S101 to S106 (step S100).
ステップS101~S106の処理について具体的に説明すると、センサコントローラはまず初めにアクティブペン2の位置検出処理を実行し(ステップS101)、検出した位置をホストプロセッサ(図示せず)に出力する(ステップS102)。続いて、再度アクティブペン2の位置検出処理を実行し(ステップS103)、検出した位置をホストプロセッサに出力する(ステップS104)。次に、センサコントローラは指4の位置検出処理を実行し(ステップS105)、検出した位置をホストプロセッサに出力する(ステップS106)。
Specifically describing the processing of steps S101 to S106, the sensor controller first executes the position detection processing of the active pen 2 (step S101), and outputs the detected position to the host processor (not shown) (step S102). Subsequently, the position detection processing of the
ステップS101,S103と2回続けてアクティブペン2の位置検出処理を行っているのは、上述したように、アクティブペン2の検出レートを確保するためである。しかしながら、こうすることでアクティブペン2の検出間隔が一定でなくなってしまうため、上述したように、例えばセンサコントローラから順次出力されるアクティブペン2の座標データが時間的に等間隔に送信されていることを期待して動作する描画アプリケーションなどにおいて、描画結果が不自然になってしまうという問題が発生する。
The reason why the position detection processing of the
また、上述したように、アクティブペン2の位置検出処理には、手5の接触位置をアクティブペンの位置として誤検出してしまう可能性があるという問題があり、指4の位置検出処理には、アクティブペン2又は手5の接触位置を指4の位置として検出してしまう可能性があるという問題がある。
Further, as described above, the position detection processing of the
本実施の形態によるタブレット3に設けられるセンサコントローラ31(後述する図4を参照)が行う処理は、これらの問題を解消できるものとなっている。以下、図3を参照しながら、その概要について説明する。
The processing performed by the sensor controller 31 (see FIG. 4 described later) provided in the
図3は、センサコントローラ31が実行するポインタの位置検出処理の概略を示すフロー図である。同図に示すように、センサコントローラ31は、ステップS2~S9の処理を繰り返し実行するよう構成される(ステップS1)。このうちステップS2~S4は、アクティブペン2の位置であるペン位置を検出するためのペン検出ステップであり、ステップS5~S9は、指4の位置であるパッシブポインタ位置を検出するためのタッチ検出ステップである。
FIG. 3 is a flowchart showing an overview of pointer position detection processing executed by the
ステップS2~S9の処理について、図2に示した処理と比較しながら具体的に説明すると、まずステップS2の位置検出処理自体は、ステップS101の位置検出処理と同様である。しかし、検出した位置の出力処理は、背景技術のステップS102とは異なるものとなっている。すなわち、センサコントローラ31は、ステップS2で検出した位置をそのままホストプロセッサ32(後述する図4を参照)に出力するのではなく、検出した1以上の位置(候補ペン位置)の中からペン位置を決定する処理(以下、「ペン位置決定処理」と称する)を行い(ステップS3)、決定したペン位置のみをホストプロセッサ32に出力する(ステップS4)ように構成される。ペン位置決定処理の具体的な内容については後述するが、この処理の中で手5の接触位置を出力対象から除外することができるので、センサコントローラ31は、アクティブペン2の接触位置を正しく識別できる。
The processing of steps S2 to S9 will be specifically described in comparison with the processing shown in FIG. 2. First, the position detection processing itself of step S2 is the same as the position detection processing of step S101. However, the output processing of the detected position is different from step S102 of the background art. That is, the
次に、センサコントローラ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の検出レートを確保することが可能になる。
Next, the
その後、センサコントローラ31は、ステップS7で生成した全体検出データにより示される1以上の位置(候補タッチ位置)の中からパッシブポインタ位置を決定する処理(以下、「パッシブポインタ位置決定処理」と称する)を行い(ステップS8)、決定したパッシブポインタ位置のみをホストプロセッサ32に出力する(ステップS9)。ステップS8,S9の処理を実行する主旨はステップS3,S4のそれと同じであり、この処理の中でアクティブペン2及び手5の接触位置を出力対象から除外することができるので、センサコントローラ31は、指4の接触位置を正しく識別できることになる。パッシブポインタ位置決定処理の具体的な内容についても、後述する。以下では、ペン位置決定処理とパッシブポインタ位置決定処理とを「出力位置決定処理」と総称する場合がある。
After that, the
以上、本発明の概要について説明した。以下、図1に戻り、本実施の形態の内容について詳細に説明する。以下では、初めに本実施の形態による位置検出システム1の構成の全体概要について説明し、その後、上述した出力位置決定処理と1/Nの処理の詳細な内容について、順に説明する。
The outline of the present invention has been described above. Hereinafter, referring back to FIG. 1, the contents of the present embodiment will be described in detail. In the following, first, an overall overview of the configuration of the
アクティブペン2は、アクティブ静電方式によって動作する電子ペンである。図示していないが、アクティブペン2の内部には制御部及び送受信部が設けられており、制御部は、送受信部を介してタブレット3と相互に信号を送受信可能に構成される。以下では、タブレット3からアクティブペン2に向けて送信される信号をアップリンク信号USと称し、アクティブペン2からタブレット3に向けて送信される信号(ペン信号)をダウンリンク信号DSと称する。
The
アクティブペン2の先端部分にはペン電極が設けられており、アクティブペン2の送受信部は、このペン電極と、タブレット3のタッチ面3aに設けられるセンサ30(後述する図4を参照)との間に形成されたキャパシタンスを介して、アップリンク信号USの受信及びダウンリンク信号DSの送信を行う。なお、アップリンク信号US受信用のペン電極とダウンリンク信号DS送信用のペン電極とは、異なっていてもよいし、同じであってもよい。
A pen electrode is provided at the tip of the
アクティブペン2はまた、ペン先に印加された圧力(筆圧)を検出する筆圧検出部、側面に設けられたサイドスイッチのオンオフ状態を検出するサイドスイッチ状態検出部、予め割り当てられた固有IDを記憶する記憶部(メモリ)、及び、アクティブペン2の動作電源を供給する電源部(バッテリ)を有して構成される。アクティブペン2の制御部は、これらの各部を制御可能に構成される。
The
ダウンリンク信号DSは、所定周波数のバースト信号である位置信号と、アクティブペン2からタブレット3に対して送信するデータを含むデータ信号とを含んで構成される。位置信号は、タブレット3において、アクティブペン2の位置を検出するために使用される。データ信号により送信するデータは、例えば、筆圧検出部によって検出された筆圧を示すデータ(筆圧データ)、サイドスイッチ状態検出部によって取得されたサイドスイッチのオンオフ状態を示すデータ(スイッチデータ)、記憶部内に記憶される固有IDなどであり、制御部によってデータ信号内に配置される。
The downlink signal DS includes a position signal, which is a burst signal of a predetermined frequency, and a data signal including data to be transmitted from the
アップリンク信号USは、所定のスタートビットと、タブレット3からアクティブペン2への命令を示すコマンドとを含んで構成される。アクティブペン2の制御部は、受信されたアップリンク信号USからコマンドを取り出して復号し、その内容に従うデータをデータ信号内に配置するよう構成される。これによりタブレット3は、所望のデータをアクティブペン2から取り出すことが可能になる。
The uplink signal US includes a predetermined start bit and a command indicating instructions from the
タブレット3は、液晶表示装置としての機能と、タッチ面3a上におけるポインタの位置を検出する位置検出器としての機能とを併せ持つ電子機器である。タッチ面3aは、液晶の表示画面上に設けられる。また、タブレット3が検出可能なポインタには、図1に示したアクティブペン2及び指4の両方が含まれる。
The
詳しくは図4を参照して後述するが、タッチ面3aの内側には、各複数のセンサ電極30X,30Y(センサパターン)を含むセンサ30が設けられる。タブレット3は、このセンサ30におけるキャパシタンスの変化を検出することによって指4の位置(パッシブポインタ位置)を検出するとともに、センサ30によって上述した位置信号を検出することによってアクティブペン2の位置(ペン位置)を検出するように構成される。
Although details will be described later with reference to FIG. 4, a
各センサ電極30Xは液晶表示装置の共通電極を兼ねており、画素駆動動作時には、固定電位である画素駆動用電圧Vcomが各センサ電極30Xに供給される。このように位置検出用のセンサ電極を液晶表示用の電極としても使用するタイプのタブレット3は、一般に「インセル型」と呼ばれる。「インセル型」のタブレット3では、画素駆動動作時にはセンサ電極30Xを位置検出用に用いることができないので、指4又はアクティブペン2の位置検出は、画素駆動動作のインターバル(例えば、水平帰線期間及び垂直帰線期間)に実行される。ただし、本発明は、複数のセンサ電極30X,30Yが液晶表示装置の電極(共通電極及び画素電極)から独立しているタイプのタブレット(非インセル型)に対しても、同様に適用可能である。
Each
図4は、タブレット3の構成を示す図である。同図に示すように、タブレット3は、センサ30と、センサコントローラ31と、ホストプロセッサ32とを有して構成される。
FIG. 4 is a diagram showing the configuration of the
センサ30は、それぞれY方向に延在し、Y方向と直交するX方向に等間隔で配置された複数のセンサ電極30Xと、それぞれX方向に延在し、Y方向に等間隔で配置された複数のセンサ電極30Yとがマトリクス状に配置された構成を有する。なお、ここではセンサ電極30X,30Yがともに直線状の導電体により構成される例を示しているが、他の形状の導電体によってセンサ電極30X,30Yを構成することも可能である。例えば、センサ電極30X,30Yの一方を、アクティブペン2の二次元座標が検出可能なように二次元に配置された複数の矩形導電体によって構成することとしてもよい。
The
センサコントローラ31は、このセンサ30を用い、画素駆動動作のインターバルに時分割で、アクティブペン2との通信(アクティブペン2の位置検出を含む)と、指4の位置検出とを行うよう構成される。また、画素駆動動作時には、画素駆動用電圧Vcomを複数のセンサ電極30Xのそれぞれに供給するよう構成される。以下、センサコントローラ31の構成について、より詳細に説明する。
The
センサコントローラ31は、図4に示すように、MCU40、ロジック部41、送信部42,43、受信部44、選択部45を有して構成される。
The
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を出力する機能を有する。
The
送信部42は、MCU40の制御に従って指検出用信号FDSを生成し、選択部45を通じて各センサ電極30Xに供給する回路である。ここで、指検出用信号FDSの具体的な内容及び各センサ電極30Xへの供給方法について、図5を参照しながら説明する。
The
図5は、MCU40が実行する指4の位置検出処理の原理を示す図である。同図には、指4の位置検出処理を図3に示した1/Nの処理に分割する前の状態、すなわち図2に示したステップS105で実行される指4の位置検出処理を示している。簡単のため、同図には4本のセンサ電極30Xのみを示しているが、実際にはより多くのセンサ電極30Xが配置される。以下、センサ電極30Xの本数がK本であるとして説明を続ける。
FIG. 5 is a diagram showing the principle of position detection processing of the
図5に示すように、指検出用信号FDSは例えば、それぞれK個の「1」又は「-1」で表されるパルスからなるK個の信号s1~sKによって構成される。信号s1~sKそれぞれのn番目(n=1~K)のパルスはパルス群pnを構成し、1つのパルス群pnを構成する各パルスは、図4に示した送信部42から選択部45を通じて、各センサ電極30Xにパラレルに入力される。
As shown in FIG. 5, the finger detection signal FDS is composed of, for example, K signals s 1 to s K each composed of K pulses represented by “1” or “−1”. The n-th (n=1 to K) pulses of each of the signals s 1 to s K constitute a pulse group p n , and each pulse constituting one pulse group p n is transmitted from the
図4に戻る。送信部43は、MCU40及びロジック部41の制御に従ってアップリンク信号USを生成し、選択部45に供給する回路であり、同図に示すように、パターン供給部50、スイッチ51、符号列保持部52、拡散処理部53、及び送信ガード部54を含んで構成される。なお、このうち特にパターン供給部50に関して、本実施の形態では送信部43内に含まれるものとして説明するが、MCU40内に含まれることとしてもよい。
Return to FIG. The
パターン供給部50は、アップリンク信号USの先頭に配置されるスタートビットSBを保持しており、ロジック部41から供給される制御信号ctrl_t1の指示に従って、保持しているスタートビットSBを出力するよう構成される。
The
スイッチ51は、ロジック部41から供給される制御信号ctrl_t2に基づいてパターン供給部50及びMCU40のいずれか一方を選択し、選択した一方の出力を拡散処理部53に供給する機能を有する。スイッチ51がパターン供給部50を選択した場合、拡散処理部53にはスタートビットSBが供給される。一方、スイッチ51がMCU40を選択した場合、拡散処理部53にはコマンドCOMが供給される。
The
符号列保持部52は、ロジック部41から供給される制御信号ctrl_t3に基づき、自己相関特性を有する所定チップ長の拡散符号を生成して保持する機能を有する。符号列保持部52が保持している拡散符号は、拡散処理部53に供給される。
The code
拡散処理部53は、スイッチ51を介して供給される値(スタートビットSB又はコマンドCOM)に基づいて符号列保持部52によって保持される拡散符号を変調することにより、所定チップ長の送信チップ列を取得する機能を有する。拡散処理部53は、取得した送信チップ列を、送信ガード部54を介して選択部45に供給する。
The spreading
送信ガード部54は、ロジック部41から供給される制御信号ctrl_t4に基づき、アップリンク信号USの送信期間とダウンリンク信号DSの受信期間との間に、送信動作と受信動作を切り替えるために必要となるガード期間(送信と受信の両方を行わない期間)を挿入する機能を有する。
The
選択部45は、スイッチ58x,58yと、導体選択回路59x,59yとを含んで構成される。
The
スイッチ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の入力端に接続される。
The
導体選択回路59xは、複数のセンサ電極30Xを選択的にスイッチ58xの共通端子に接続するためのスイッチ素子である。導体選択回路59xは、複数のセンサ電極30Xの一部又は全部を同時にスイッチ58xの共通端子に接続することも可能に構成される。また、スイッチ58x内においてT2端子と共通端子とが接続されている場合、導体選択回路59xは、T2端子を構成する複数の端子と複数のセンサ電極30Xとを一対一に接続する。
The
導体選択回路59yは、複数のセンサ電極30Yを選択的にスイッチ58yの共通端子に接続するためのスイッチ素子である。導体選択回路59yも、複数のセンサ電極30Yの一部又は全部を同時にスイッチ58yの共通端子に接続することも可能に構成される。
The
選択部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の受信とを実現する。
The
より具体的に説明すると、まずアップリンク信号USを送信するタイミングでは、ロジック部41は、複数のセンサ電極30Yのすべてが同時に送信部43に接続されることとなるよう、選択部45を制御する。これにより、複数のセンサ電極30Yのすべてから同時にアップリンク信号USが送信されることになるので、アクティブペン2は、タッチ面3a上のどこにいても、アップリンク信号USを受信可能となる。
More specifically, at the timing of transmitting the uplink signal US, the
次にダウンリンク信号DSのうち上述した位置信号を受信するタイミングでは、ロジック部41は、複数のセンサ電極30X,30Yを1つずつ順に選択し、選択したセンサ電極30X,30Yが受信部44に接続されるよう、選択部45を制御する。これにより、センサ電極30X,30Yの数に等しい数の位置信号が、受信部44に順次供給されることになる。詳しくは後述するが、MCU40は、こうして受信部44に供給される位置信号のレベルに基づいて、アクティブペン2の位置を検出するよう構成される。
Next, at the timing of receiving the position signal described above out of the downlink signal DS, the
具体的に説明すると、MCU40は、受信部44から供給されるデジタル信号(後述)に基づき、複数のセンサ電極30X,30Yの各交点における位置信号のレベルを決定する。そして、決定した各レベルに基づき、アクティブペン2の位置を検出する。具体的には、位置信号のレベルが所定値以上であるタッチ面3a内の領域を決定し、例えばその中心位置をアクティブペン2の位置として検出すればよい。
Specifically, the
ダウンリンク信号DSのうち上述したデータ信号を受信するタイミングでは、まずMCU40により、複数のセンサ電極30X,30Yのうちの1本以上が選択される。この選択は、直前の位置信号に基づいて検出されたアクティブペン2の位置に基づいて実行される。そしてロジック部41は、選択されたセンサ電極30X,30Yが受信部44に接続されるよう、選択部45を制御する。これにより、アクティブペン2が送信したデータ信号を受信部44に供給することが可能になる。
At the timing of receiving the above-described data signal in the downlink signal DS, the
次に指検出用信号FDSを送信するタイミングでは、ロジック部41は、MCU40とともに、1つのセンサ電極30Yを選択し、上述したパルス群p1~pKを送信部42に順次各センサ電極30Xに入力させる、という動作を各センサ電極30Yについて繰り返す。具体的に説明すると、ロジック部41はまず、スイッチ58xのT2端子を構成する複数の端子と複数のセンサ電極30Xとが一対一に接続されることとなるよう、選択部45を制御する。そして、その状態を維持しながら、複数のセンサ電極30Yを1本ずつ順に選択し、選択したセンサ電極30Yが受信部44に接続されるよう選択部45を制御する。
Next, at the timing of transmitting the finger detection signal FDS, the
MCU40はさらに、1本のセンサ電極30Yを選択している間に、パルス群p1~pKをメモリから1パルス群ずつ順次読み出し、該読み出しの都度、読み出したパルス群を構成するK個のパルスを送信部42に供給する。送信部42は、こうして供給されたK個のパルスを、K本のセンサ電極30Xにパラレルに入力する。このような制御の結果として受信部44から供給されるデジタル信号のレベルは、選択中のセンサ電極30Yと、各センサ電極30Xとの交点に形成されるキャパシタンスの変化を反映したものとなる。そこでMCU40は、受信部44から供給されるデジタル信号のレベルに基づいて、指4の位置を検出するよう構成される。
Further, while selecting one
ここで、再度図5を参照しながら、MCU40が実行する指4の位置検出処理について、より詳しく説明する。以下では、センサ電極30Xの本数が4本(すなわち、K=4)であるとして説明を行うが、センサ電極30Xの本数が3本以下又は5本以上である場合についても同様である。
Here, referring to FIG. 5 again, the position detection processing of the
センサ電極30Xの本数が4本である場合、信号s1~sKはそれぞれ4個の「1」又は「-1」で表されるパルスによって構成されることになる。具体的には、図5に示すように、信号s1が「1,1,1,1」、信号s2が「1,1,-1,-1」、信号s3が「1,-1,-1,1」、信号s4が「1-1,1,-1」によりそれぞれ構成される。
When the number of
MCU40は機能的に、シフトレジスタ40a及び相関器40bを含んで構成される。シフトレジスタ40aはFIFO形式の記憶部であり、センサ電極30Xの本数と同数(すなわち、K個)のデータを格納可能に構成される。シフトレジスタ40aに新たにデータを格納する際には、K回前に格納されたデータが消去される。MCU40及びロジック部41は、上述したように、1つのセンサ電極30Yを選択し、送信部42にパルス群p1~p4を順次各センサ電極30Xに入力させる、という動作を各センサ電極30Yについて繰り返す。これにより、選択中のセンサ電極30Yには、それぞれパルス群p1~p4に対応する4つのレベルL1~L4が順次現れることになる。MCU40は、こうしてセンサ電極30Yに現れるレベルL1~L4を受信部44を介して順次取得し、その都度、シフトレジスタ40aに格納する。
The
レベルL1~L4の具体的な内容について、図5に示したセンサ電極30Y1が選択されている場合を例に取って詳しく説明する。以下の説明では、センサ電極30Y1と4本のセンサ電極30X1~30X4のそれぞれとの間に形成されるキャパシタンスを、それぞれC11~C41とする。
Specific contents of the levels L 1 to L 4 will be described in detail, taking as an example the case where the
まずパルス群p1に対応してシフトレジスタ40aに格納されるレベルL1は、キャパシタンスのベクトル(C11,C21,C31,C41)と、パルス群p1を示すベクトル(1,1,1,1)との内積となる。この内積は、図5にも示すように、C11+C21+C31+C41と計算される。同様に、パルス群p2に対応してシフトレジスタ40aに格納されるレベルL2は、キャパシタンスのベクトル(C11,C21,C31,C41)と、パルス群p1を示すベクトル(1,1,-1,-1)との内積となってC11+C21-C31-C41と計算され、パルス群p3に対応してシフトレジスタ40aに格納されるレベルL3は、キャパシタンスのベクトル(C11,C21,C31,C41)と、パルス群p3を示すベクトル(1,-1,-1,1)との内積となってC11-C21-C31+C41と計算され、パルス群p4に対応してシフトレジスタ40aに格納されるレベルL4は、キャパシタンスのベクトル(C11,C21,C31,C41)と、パルス群p4を示すベクトル(1,-1,1,-1)との内積となってC11-C21+C31-C41と計算される。
First, the level L 1 stored in the
MCU40は、相関器40bを用い、4個のパルス群p1~p4のそれぞれについて、シフトレジスタ40aに蓄積したレベルL1~L4との相関値T1~T4を順次算出する。こうして算出される相関値T1~T4の具体的な内容は、図5にも示すように、それぞれ4C11,4C21,4C31,4C41となる。すなわち、相関値T1~T4には、それぞれセンサ電極30X1~30X4と、センサ電極30Y1との交点に形成されるキャパシタンスの変化が反映されることになる。したがってMCU40は、各センサ電極30Yについて算出される相関値T1~T4を参照することにより、指4の位置を検出することが可能になる。具体的には、キャパシタンスの変化が所定値以上であるタッチ面3a内の領域を決定し、例えばその中心位置を指4の位置として検出すればよい。
The
以上、MCU40が実行する指4の位置検出処理について、詳細に説明した。次に図4に戻り、ロジック部41は、画素駆動用電圧Vcomを印加するタイミングでは、D端子が共通端子に接続されるよう、スイッチ58xを制御する。これにより、複数のセンサ電極30Xのそれぞれに画素駆動用電圧Vcomが供給され、画素駆動動作を実行することが可能になる。
The position detection processing of the
受信部44は、ロジック部41の制御信号ctrl_rに基づいて、アクティブペン2が送信したダウンリンク信号DS又は送信部42が送信した指検出用信号FDSを受信する回路である。具体的には、増幅回路55、検波回路56、及びアナログデジタル(AD)変換器57を含んで構成される。
The receiving
増幅回路55は、選択部45から供給されるダウンリンク信号DS又は指検出用信号FDSを増幅して出力する。検波回路56は、増幅回路55の出力信号のレベルに対応した電圧を生成する回路である。AD変換器57は、検波回路56から出力される電圧を所定時間間隔でサンプリングすることによって、デジタル信号を生成する回路である。AD変換器57が出力するデジタル信号は、MCU40に供給される。
The
MCU40は、こうして供給されたデジタル信号に基づき、指4及びアクティブペン2の位置(座標x,y)の検出と、アクティブペン2が送信したデータResの取得とを行う。具体的に説明すると、まず指4の位置に関して、MCU40は、供給されたデジタル信号に基づいて、センサ電極30Yごとに、それぞれパルス群p1~pKに対応するレベルL1~LKを取得する。レベルL1~LKから指4の位置を検出する方法については、図5を参照して上述したとおりである。次にアクティブペン2の位置に関して、MCU40は、上述したように、供給されたデジタル信号に基づいて複数のセンサ電極30X,30Yの各交点における位置信号のレベルを決定し、決定した各レベルに基づいてアクティブペン2の位置を検出する。最後にデータResに関して、MCU40は、受信部44から供給されるデジタル信号を復号することによって、データResを取得する。MCU40は、こうして検出した位置(座標x,y)及びデータResを、ホストプロセッサ32に出力するよう構成される。
The
また、MCU40は、取得したデータRes内に含まれる筆圧データに基づいてアクティブペン2のタッチ面3aに対する接触状態を判定し、アクティブペン2が新たにタッチ面3aに接触したと判定した場合(すなわち、筆圧が0からプラスの値に変化した場合)には、ペンダウン情報IN-PROXYをホストプロセッサ32に出力し、アクティブペン2がタッチ面3aから離れたと判定した場合(すなわち、筆圧がプラスの値から0に変化した場合)には、ペンアップ情報OUT-PROXYをホストプロセッサ32に出力するよう構成される。こうして出力されたペンダウン情報IN-PROXY及びペンアップ情報OUT-PROXYは、ホストプロセッサ32によって、ストロークの始まりと終わりを認識するために使用される。
Further, the
以上が、本実施の形態による位置検出システム1の構成の概要である。続いて、上述した出力位置決定処理及び1/Nの処理の詳細な内容について、順に説明する。
The above is the outline of the configuration of the
初めに、出力位置決定処理について、詳細に説明する。 First, the output position determination process will be described in detail.
図6(a)は、本実施の形態による出力位置決定処理で利用されるペン位置テーブルを示す図であり、図6(b)は、本実施の形態による出力位置決定処理で利用されるタッチ位置テーブルを示す図である。MCU40は、アクティブペン2又は指4のそれぞれについて上述した処理によって1以上の位置を検出した後、ホストプロセッサ32に出力する位置を決定するために、これらのテーブルを利用する。
FIG. 6(a) is a diagram showing a pen position table used in the output position determination process according to this embodiment, and FIG. 6(b) shows a touch table used in the output position determination process according to this embodiment. It is a figure which shows a position table.
ペン位置テーブルは、図6(a)に示すように、候補ペン位置cP[i]と、確定ペン位置fP[i]と、有効フラグとを対応付けて記憶するテーブルである。一方、タッチ位置テーブルは、候補タッチ位置cT[j]と、確定タッチ位置fT[j]と、有効フラグと、領域種別とを対応付けて記憶するテーブルである。ただし、i,jはそれぞれ、0以上の整数である。また、候補ペン位置cP[i]は、図3のステップS2で検出されたアクティブペン2の位置であり、候補タッチ位置cT[j]は、図3のステップS7で生成された全体検出データにより示される指4の位置である。その他のパラメータについては、以下の説明の中で説明する。
The pen position table, as shown in FIG. 6A, is a table that associates and stores candidate pen positions cP[i], fixed pen positions fP[i], and valid flags. On the other hand, the touch position table is a table that associates and stores candidate touch positions cT[j], confirmed touch positions fT[j], valid flags, and area types. However, i and j are each an integer of 0 or more. The candidate pen position cP[i] is the position of the
ここで、出力位置決定処理の内容を具体的に説明する前に、この処理の考え方について、図1を再度参照しながら、詳細に説明する。 Here, before specifically describing the contents of the output position determination process, the concept of this process will be described in detail with reference to FIG. 1 again.
図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が伝達されてしまうからである。
In the example shown in FIG. 1, three types of objects, the
MCU40は、図3のステップS5~S7に示した処理(図2のステップS105に示した処理でもよい)により1以上の候補タッチ位置を取得した後、まず各候補タッチ位置の広さ(キャパシタンスの変化量が所定量以上である領域の広さ)を判定する。そして、判定した広さが所定サイズ以上である候補タッチ位置を出力対象から除外する。図1の例では、ここで手5の接触位置が除外されることになる。次いで、残りの候補タッチ位置のそれぞれについて、ペン位置テーブルを参照することにより直前のアクティブペン2の位置検出処理においてアクティブペン2の位置として検出されていたか否かを判定し、検出されていた候補タッチ位置を出力対象から除外する。図1の例では、ここでアクティブペン2の接触位置が除外されることになる。こうして最後まで残った候補タッチ位置が、図3のステップS9でホストプロセッサ32に出力される位置となる。これによれば、手5の接触位置及びアクティブペン2の接触位置が出力対象から除外されるので、指4の位置のみを正しく選別して出力することが可能になる。
After acquiring one or more candidate touch positions by the processing shown in steps S5 to S7 in FIG. 3 (or the processing shown in step S105 in FIG. 2), the
一方、MCU40は、図3のステップS2に示した処理により1以上の候補ペン位置を取得した後、取得した1以上の候補ペン位置のそれぞれについて、タッチ位置テーブルを参照することにより直前の指4の位置検出処理において指4又は手5の位置として検出されていたか否かを判定する。そして、手5の位置として検出されていたと判定した候補ペン位置を出力対象から除外する。図1の例では、ここで手5の接触位置が除外されることになる。ここで除外されなかった候補ペン位置、すなわち、検出されていないと判定した候補ペン位置、及び、指4として検出されていたと判定した候補ペン位置が、図3のステップS4でホストプロセッサ32に出力される位置となる。これによれば、手5の接触位置が出力対象から除外されるので、アクティブペン2の位置のみを正しく選別して出力することが可能になる。
On the other hand, after acquiring one or more candidate pen positions by the process shown in step S2 in FIG. is detected as the position of the
このように、本実施の形態による位置検出処理によれば、アクティブペン2及び指4の位置を正しく選別し、ホストプロセッサ32に出力することが可能になる。以下、ペン位置テーブル及びタッチ位置テーブルを用いてMCU40が行う出力位置決定処理の具体的な内容について、詳しく説明する。
As described above, according to the position detection processing according to the present embodiment, it is possible to correctly select the positions of the
図7及び図8はそれぞれ、ペン位置テーブル及びタッチ位置テーブルを用いてMCU40が行う出力位置決定処理の一例を示す図である。
7 and 8 are diagrams showing examples of output position determination processing performed by the
図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への検出位置の供給を行わないこととしてもよい。
FIG. 7 shows an example of changes in the pen position table and the touch position table when the position detection of the
次にMCU40は、1回目の指4の位置検出処理を行い、その結果として、3つの候補タッチ位置cT[0]~cT[2]をタッチ位置候補テーブルに格納する。そしてまず、各候補タッチ位置cT[0]~cT[2]の広さ(キャパシタンスの変化量が所定量以上である領域の広さ)を検出する。ここでは、候補タッチ位置cT[1]についてのみ所定サイズ以上の広さが検出され、他の候補タッチ位置cT[0],cT[2]については所定サイズ未満の広さが検出されたとすると、MCU40は、確定タッチ位置fT[1]に候補タッチ位置cT[1]を設定しつつ、対応する有効フラグを「無効」とし、さらに、対応する領域種別に「パーム(掌の意)」を設定する。
Next, the
次いでMCU40は、所定サイズ未満の広さが検出された候補タッチ位置cT[0],cT[2]のそれぞれについて、ペン位置候補テーブルに格納されている確定ペン位置fP[0],fP[1]のそれぞれと略等しいか否かを判定する。ここでいう「略等しい」とは、一方の位置と他方の位置の間の距離がタッチ面3aの広さに比べて十分小さい所定値以下であることをいう。この所定値の具体的な値は、例えば数画素分の長さとすることが好ましい。
Next, the
図7の例では、候補タッチ位置cT[0]が確定ペン位置fP[0]に略等しいと判定され、候補タッチ位置cT[2]は確定ペン位置fP[0],fP[1]のいずれとも等しくないと判定される。この場合、MCU40は、確定ペン位置fP[2]に候補タッチ位置cT[2]を設定するとともに、対応する有効フラグを「有効」とし、さらに、対応する領域種別に「指」を設定する。一方、確定ペン位置fP[0]には何も設定せず(初期値であるNULLのままとし)、対応する有効フラグを「無効」とする。確定ペン位置fP[0]に対応する領域種別については、初期値のまま(何も設定しないまま)とする。
In the example of FIG. 7, the candidate touch position cT[0] is determined to be substantially equal to the confirmed pen position fP[0], and the candidate touch position cT[2] is either the confirmed pen position fP[0] or fP[1]. are determined to be unequal. In this case, the
MCU40は、以上のようにしてタッチ位置候補テーブルを設定した後、対応する有効フラグが「有効」となっている確定タッチ位置fT[2]のみを、指4の検出位置としてホストプロセッサ32に供給する。確定ペン位置fP[0]の近傍に位置し、かつ、検出された上記広さが上記所定サイズ未満である候補タッチ位置cT[0]については、ホストプロセッサ32に供給されないことになる。
After setting the touch position candidate table as described above, the
次にMCU40は、ペン位置候補テーブルを一度リセットした後、2回目のアクティブペン2の位置検出処理を行う。ここでは、アクティブペン2、指4、手5のいずれもタッチ面3a上で移動していないとすると、位置検出の結果として、1回目と同じく2つの候補ペン位置cP[0],cP[1]がペン位置候補テーブルに格納されることになる。
Next, the
そしてMCU40は、取得した候補ペン位置cP[0],cP[1]のそれぞれについて、タッチ位置候補テーブルに格納されている確定タッチ位置fT[0]~fT[2]のそれぞれと略等しいか否かを判定する。なお、図7の例では、この時点で確定タッチ位置fT[0]にNULLが設定されているので、実質的には確定タッチ位置fT[1],fT[2]のそれぞれと略等しいか否かの判定となる。
Then, the
図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が設定されている。
In the example of FIG. 7, the candidate pen position cP[1] is determined to be approximately equal to the confirmed touch position fT[1], and the candidate pen position cP[0] is any of the confirmed touch positions fT[0] to fT[2]. are determined to be unequal. In this case, the
図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への検出位置の供給を行わないこととしてもよい。
FIG. 8 shows an example of changes in the pen position table and the touch position table when the position detection of the
次にMCU40は、1回目のアクティブペン2の位置検出処理を行い、その結果として、2つの候補ペン位置cP[0],cP[1]をペン位置候補テーブルに格納する。そしてMCU40は、取得した候補ペン位置cP[0],cP[1]のそれぞれについて、タッチ位置候補テーブルに格納されている確定ペン位置fT[0]~fT[2]のそれぞれと略等しいか否かを判定する。
Next, the
図8の例では、候補ペン位置cP[0]が確定タッチ位置fT[0]に略等しいと判定され、候補ペン位置cP[1]が確定タッチ位置fT[1]に略等しいと判定されることになる。次いでMCU40は、確定タッチ位置fT[0],fT[1]それぞれの領域種別が「パーム」と「指」のいずれであるかを判定する。図8の例では、確定タッチ位置fT[0]の領域種別は「指」であると判定され、確定タッチ位置fT[1]の領域種別は「パーム」であると判定されることになる。
In the example of FIG. 8, the candidate pen position cP[0] is determined to be approximately equal to the confirmed touch position fT[0], and the candidate pen position cP[1] is determined to be substantially equal to the confirmed touch position fT[1]. It will be. Next, the
MCU40は、対応する確定タッチ位置fT[1]の領域種別が「パーム」であると判定した候補ペン位置cP[1]について、確定ペン位置fP[1]にNULLを設定するとともに、対応する有効フラグを「無効」とする。一方、対応する確定タッチ位置fT[0]の領域種別が「指」であると判定した候補ペン位置cP[0]については、確定ペン位置fP[0]に候補ペン位置cP[0]を設定するとともに、対応する有効フラグを「有効」とする。この処理は、指4の位置検出処理に誤りがあったとみなすことを意味する。MCU40は、こうして「有効」を設定した確定ペン位置fP[0]を、アクティブペン2の検出位置としてホストプロセッサ32に供給する。
The
次にMCU40は、タッチ位置候補テーブルを一度リセットした後、2回目の指4の位置検出処理を行う。ここでは、アクティブペン2、指4、手5のいずれもタッチ面3a上で移動していないとすると、位置検出の結果として、1回目と同じく3つの候補タッチ位置cT[0]~cT[2]がタッチ位置候補テーブルに格納されることになる。
Next, the
候補タッチ位置cT[0]~cT[2]をタッチ位置候補テーブルに格納したMCU40は、次に、各候補タッチ位置cT[0]~cT[2]の広さ(キャパシタンスの変化量が所定量以上である領域の広さ)を検出する。ここでは、1回目の検出時と同様に候補タッチ位置cT[1]についてのみ所定サイズ以上の広さが検出されたとすると、確定タッチ位置fT[1]に候補タッチ位置cT[1]を設定しつつ、対応する有効フラグを「無効」とし、さらに、対応する領域種別に「パーム」を設定する。この処理は、1回目の指4の位置検出後に行った処理と同じである。
After storing the candidate touch positions cT[0] to cT[2] in the touch position candidate table, the
次いで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]に対応する領域種別については、初期値のまま(何も設定しないまま)とする。
Next, the
MCU40は、以上のようにしてタッチ位置候補テーブルを設定した後、対応する有効フラグが「有効」となっている確定タッチ位置fT[2]のみを、指4の検出位置としてホストプロセッサ32に供給する。
After setting the touch position candidate table as described above, the
以上説明したように、本実施の形態による出力位置決定処理によれば、ペン位置決定処理の中で手5の接触位置を出力対象から除外することができ、パッシブポインタ位置決定処理の中でアクティブペン2及び手5の接触位置を出力対象から除外することができる。したがって、候補ペン位置及び候補タッチ位置の段階ではアクティブペン2の接触位置と指4の接触位置とが相互に誤認識されてしまっていたとしても、最終的には、アクティブペン2及び指4の位置を正しくホストプロセッサ32に出力することが可能になる。
As described above, according to the output position determination process according to the present embodiment, the contact position of the
次に、MCU40の処理フローを参照しながら、ペン位置テーブル及びタッチ位置テーブルを用いてMCU40が行う出力位置決定処理について、再度別の観点からより詳しく説明する。
Next, referring to the processing flow of the
図9及び図10は、図3に示したフロー図の詳細を示す図である。初めに図9を参照すると、MCU40はまず、アクティブペン2の検出を実行し(ステップS21)、その結果としてアクティブペン2が検出されたか否かを判定する(ステップS22)ことによって、図3に示したステップS2の処理を実行する。ステップS22で検出されなかったと判定した場合には、図10のステップS51に移って指4の位置検出処理を開始する。
9 and 10 are diagrams showing details of the flow diagram shown in FIG. Referring first to FIG. 9, the
一方、ステップS22で検出されたと判定した場合、MCU40は、図3のステップS3に示したペン位置決定処理を実行する。具体的には、まずペン位置テーブルをリセットする(ステップS31)。リセット後のペン位置テーブルは、候補ペン位置cP[i]が1つも設定されていない状態となる。続いて、MCU40は、ステップS21において検出されたI個(Iは1以上の整数)の候補ペン位置cP[i](i=0~I-1)を取得し、ペン位置テーブルに設定する(ステップS32)。そして、すべてのiについて、順次、ステップS34~S36の処理を行う(ステップS33)。
On the other hand, if it is determined in step S22 that it has been detected, the
具体的に説明すると、MCU40はまず、候補ペン位置cP[i]と等しい確定タッチ位置fT[j]がタッチ位置テーブルに格納されているか否かを判定する(ステップS34)。その結果、格納されていると判定した場合には、候補ペン位置cP[i]と略等しい確定タッチ位置fT[j]についてタッチ位置テーブルに格納されている領域種別が「指」「パーム」のいずれであるかを判定する(ステップS35)。
More specifically, the
ステップS34で格納されていないと判定した場合、及び、ステップS35で「指」であると判定した場合、MCU40は、確定ペン位置fP[i]に候補ペン位置cP[i]を設定するとともに、対応する有効フラグに「有効」を設定する(ステップS36)。一方、ステップS35で「パーム」であると判定した場合にはステップS36の処理を行わず、結果として、対応する確定ペン位置fP[i]にはNULL、対応する有効フラグには「無効」がそれぞれ設定される。
When it is determined in step S34 that it is not stored, and when it is determined in step S35 that it is a "finger", the
すべてのiについてステップS34~S36の処理が終了した場合、MCU40は、対応する有効フラグが「有効」となっている確定ペン位置fP[i]のみをアクティブペン2の検出位置としてホストプロセッサ32に出力し(ステップS4)、その後、指4の位置検出処理を開始する。
When the processing of steps S34 to S36 is completed for all i, the
具体的には、図10に示すように、指4の検出を実行し(ステップS51)、その結果として指4が検出されたか否かを判定する(ステップS52)ことによって、図3に示したステップS5~S7の処理を実行する。なお、ここではステップS5~S7の処理を実行することとしているが、図2のステップS105の処理を実行することとしてもよい。ただし、この場合には、アクティブペン2の検出レートを確保するため、ステップS2~S4の処理を2回連続して行う必要がある。ステップS52で検出されなかったと判定した場合には、図9のステップS21に移ってアクティブペン2の位置検出処理を開始する。
Specifically, as shown in FIG. 10, the detection of the
一方、ステップS52で検出されたと判定した場合、MCU40は、図3のステップS8に示したパッシブポインタ位置決定処理を実行する。具体的には、まずタッチ位置テーブルをリセットする(ステップS81)。リセット後のタッチ位置テーブルは、候補タッチ位置cT[j]が1つも設定されていない状態となる。続いて、MCU40は、ステップS51において検出されたJ個(Jは1以上の整数)の候補タッチ位置cT[j](j=0~J-1)を取得し、タッチ位置テーブルに設定する(ステップS82)。そして、すべてのjについて、順次、ステップS84~S87の処理を行う(ステップS83)。
On the other hand, if it is determined in step S52 that the pointer is detected, the
具体的に説明すると、MCU40はまず、候補タッチ位置cT[j]の面積を算出する。ここで算出される面積は、候補タッチ位置cT[j]を含み、かつ、キャパシタンスの変化量が所定量以上であった領域の面積である。そして、算出した面積が所定サイズ以上であるか否かを判定する(ステップS84)。
Specifically, the
ステップS84で所定サイズ以上であると判定した場合(すなわち、面積=大であると判定した場合)、MCU40は、確定タッチ位置fT[j]に候補タッチ位置cT[j]を設定するとともに、対応する有効フラグに「無効」、対応する領域種別に「パーム」をそれぞれ設定する(ステップS85)。
If it is determined in step S84 that the size is equal to or larger than the predetermined size (that is, if it is determined that the area is large), the
一方、ステップS84で所定サイズ以上でないと判定した場合(すなわち、面積=小であると判定した場合)、MCU40は、続いて候補タッチ位置cT[j]と略等しい確定ペン位置fP[i]がペン位置テーブルに格納されているか否かを判定する(ステップS86)。その結果、格納されていないと判定した場合、MCU40は、確定タッチ位置fT[j]に候補タッチ位置cT[j]を設定するとともに、対応する有効フラグに「有効」、対応する領域種別に「指」をそれぞれ設定する(ステップS87)。一方、ステップS86で格納されていると判定した場合、MCU40はステップS87の処理を行わず、結果として、対応する確定タッチ位置fT[j]にはNULL、対応する有効フラグには「無効」がそれぞれ設定される。
On the other hand, if it is determined in step S84 that the size is not equal to or larger than the predetermined size (that is, if it is determined that the area is small), the
すべてのiについてステップS15~S18の処理が終了した場合、MCU40は、対応する有効フラグが「有効」となっている確定タッチ位置fT[j]のみを指4の検出位置としてホストプロセッサ32に出力し(ステップS9)、その後、ステップS2に戻ってアクティブペン2の位置検出処理を開始する。
When the processing of steps S15 to S18 is completed for all i, the
以上、ペン位置テーブル及びタッチ位置テーブルを用いてMCU40が行う出力位置決定処理について、MCU40の処理フローを参照しながら、再度より詳しく説明した。ここで、本実施の形態による出力位置決定処理には、各種の変形例が考えられる。そこで以下では、本実施の形態による出力位置決定処理の変形例として、第1~第4の変形例を挙げて説明することとする。
As above, the output position determination processing performed by the
第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に出力できると言える。
A first modification relates to pen position determination processing. When a plurality of positions where the level of the downlink signal DS is equal to or higher than a predetermined level are detected, the
第2の変形例も、ペン位置決定処理に関するものである。本変形例によるMCU40は、ダウンリンク信号DSのレベルが所定レベル以上である位置が離れて複数検出された場合に、該所定レベル以上であるダウンリンク信号DSのレベルが連続してなる領域の面積に基づいて、アクティブペン2の位置を検出するよう構成される。より具体的に言えば、この面積が小さい方の位置を、アクティブペン2の位置として検出する。図7の例で言えば、ユーザの手5を通じて受信されたダウンリンク信号DSにより検出された候補ペン位置cP[1]にかかる上記面積は、アクティブペン2のペン電極から直接受信されたダウンリンク信号DSにより検出された候補ペン位置cP[0]にかかる上記面積に比べて大きくなる。したがって、MCU40は、候補ペン位置cP[0]をアクティブペン2の位置としてホストプロセッサ32に出力することになる。この結果も、上記実施の形態によるものと同じである。したがって、本変形例によっても、MCU40は、アクティブペン2の位置を正しくホストプロセッサ32に出力できると言える。
The second modification also relates to pen position determination processing. In the
第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が検出されている場合にそのような誤判定が起きる可能性を小さくすることが可能になる。
A third modification relates to passive pointer position determination processing. The
ここで、上述したアクティブペン2の位置検出処理によれば、アクティブペン2がタッチ面3aに接触していない状態(ホバー状態)においても、アクティブペン2の位置が検出され得る。これは、ホバー状態においても、アクティブペン2がある程度以上タッチ面3aに近づいていれば、MCU40はダウンリンク信号DSを検出できるからである。第3の変形例によれば、タッチ面3aに接近しつつあるアクティブペン2がホバー状態であるうちに上記所定サイズを縮小しておくことができるので、上記誤判定が起きる可能性が低減された状態で、アクティブペン2がタッチ面3aに接触するタイミングを迎えることが可能になる。
Here, according to the position detection processing of the
図11は、第4の変形例によるセンサコントローラ31が実行するポインタの位置検出処理を示すフロー図である。同図には、図9に示したフロー図の変形例を示している。
FIG. 11 is a flow chart showing pointer position detection processing executed by the
図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、対応する有効フラグには「無効」がそれぞれ設定されることになる。
The difference between FIG. 11 and FIG. 9 is that step S37 is executed after it is determined to be "palm" in step S35. More specifically, the
第4の変形例によれば、ユーザがアクティブペン2による入力操作を行う際に、パーム領域の近傍で描画線が消えてしまうことを防止することができる。すなわち、図9の処理フローによれば、ユーザがアクティブペンによる入力操作を行う際にペン先がパーム領域に差し掛かると、ステップS35により「パーム」と判定され、確定ペン位置fP[i]に候補ペン位置cP[i]が設定されなくなる。そうすると、ホストプロセッサ32に座標が出力されなくなるので、描画線が途切れることになる。しかしながら、ペン先がパーム領域に近づいたとしても、ユーザが引き続き入力操作を行っている以上、描画線の途切れは発生しないことが好ましい。第4の変形例によれば、ステップS37において前回検出した筆圧が有効及び無効のいずれであるかを判定しているので、ユーザが引き続き入力操作を行っている場合であるか否かを判定することができる。その結果、ユーザが引き続き入力操作を行っている場合にホストプロセッサ32への座標出力を継続することができるので、ユーザがアクティブペン2による入力操作を行う際に、パーム領域の近傍で描画線が消えてしまうことを防止することが可能になる。
According to the fourth modification, when the user performs an input operation with the
次に、1/Nの処理について、詳細に説明する。以下では、初めに1/Nの処理に対応する背景技術の課題及び1/Nの処理の導入によって奏される効果について再度より詳しく説明した後、1/Nの処理の内容について詳しく説明する。 Next, the 1/N processing will be described in detail. In the following, the problems of the background art corresponding to the 1/N processing and the effects achieved by the introduction of the 1/N processing will be described in more detail, and then the contents of the 1/N processing will be described in detail.
図12(a)は、本発明の背景技術によるポインタの位置検出処理にかかる制御シーケンスを示す図であり、図12(b)は、本実施の形態によるポインタの位置検出処理にかかる制御シーケンスを示す図である。これらの図において、「T」はMCU40が指4の位置検出処理を行う期間を示し、「P」はMCU40がアクティブペン2の位置検出処理を行う期間を示す。
FIG. 12(a) is a diagram showing a control sequence for pointer position detection processing according to the background art of the present invention, and FIG. 12(b) is a control sequence for pointer position detection processing according to the present embodiment. FIG. 4 is a diagram showing; In these figures, "T" indicates the period during which the
図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の座標データが時間的に等間隔に送信されていることを期待して動作する描画アプリケーションなどにおいて、描画結果が不自然になってしまうという問題が発生する。
As shown in FIG. 12(a), the
これに対し、本実施の形態による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回前に取得した部分検出データは消去される。
On the other hand, the
さらに、MCU40は、部分検出データをメモリに新たに保持する都度、それまでにメモリに保持されているN-1個分の部分検出データと、新たに保持された部分検出データとを合成し、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成する(合成ステップ)。生成された全体検出データは、図5を参照して説明した相関値の算出処理(相関値算出ステップ)を経て、MCU40からホストプロセッサ32に対し、パッシブポインタ位置として上記第1の検出レート(250回/秒)で出力される(レポートステップ)。
Furthermore, each time the
1/Nの処理は所定のインターバル(具体的には、3ミリ秒のインターバル)で実行され、このインターバルには、アクティブペン2(第2のポインタ)の位置検出処理(第2検出処理)の全部が1回だけ実行される(第2の検出ステップ)。したがって、アクティブペン2の位置の検出レート(第2の検出レート)は、上記第1の検出レート(250回/秒)に等しい値となる。アクティブペン2の検出が等間隔で実行されるにもかかわらず、この検出レートは、図12(a)の例によるアクティブペン2の検出レートと同じ値となっている。
The 1/N processing is executed at a predetermined interval (specifically, an interval of 3 milliseconds), and during this interval, the position detection processing (second detection processing) of the active pen 2 (second pointer) is performed. Everything is done only once (second detection step). Therefore, the detection rate (second detection rate) of the position of the
このように、本実施の形態によるポインタの位置検出処理によれば、指4の位置検出処理をN回に分けて実行するので、アクティブペン2及び指4双方の検出レートを維持しつつ、アクティブペン2の検出を等間隔で実行することが可能になる。したがって、上述した問題が解消されることになる。以下、1/Nの処理の内容について詳しく説明する。
As described above, according to the pointer position detection processing according to the present embodiment, the position detection processing of the
以下の説明では、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部分(具体的には、上述した信号s1~sKのそれぞれを構成するN×M個(M=K/N)のパルスのうちのM個)を用いる(後述する図18を参照)というものである。以下、それぞれについて詳しく説明する。なお、以下では、N=2であり、かつ、16×16のセンサ30を用いる場合を例に取って説明するが、N≧3である場合や、センサ30のサイズが16×16でない場合についても同様である。
In the following description, the details of the 1/N processing will be described with first to fifth examples. The 1/N processing according to the first to fourth examples is to detect 1/N of the
まず図13は、16×16のセンサ30とともに用いられる指検出用信号FDSの一例を示す図である。同図に示すように、この場合の指検出用信号FDSは、16個のパルス群p1~p16によって構成される。また、各パルス群p1~p16はそれぞれ、16個の「1」又は「-1」で表されるパルスを含んで構成される。
First, FIG. 13 is a diagram showing an example of the finger detection signal FDS used together with the 16×16
MCU40及びロジック部41は、上述したように、1つのセンサ電極30Yを選択し、送信部42に各パルス群pn(n=1~16)を順次各センサ電極30Xに入力させる、という動作を各センサ電極30Yについて繰り返すよう構成される。したがって、1つのパルス群pnの処理に要する時間をtとすると、指4の位置検出処理(ここでは、図2に示したステップS105において実行される位置検出処理)を行うために必要な時間は、t×16(=パルス群pnの総数)×16(=センサ電極30Yの総数)となる。
As described above, the
図14は、1/Nの処理の内容の第1の例を示す図であり、図14(a)は1回目の処理、図14(b)は2回目の処理をそれぞれ表している。この例では、1回目と2回目のそれぞれにおいて、互いに異なる8個のセンサ電極30Xを用いて1/Nの処理が行われる。より具体的には、X方向に整列する16個のセンサ電極30Xを1つおきに選択して1回目の処理で使用し、残りのセンサ電極30Xを2回目の処理で使用するようにしている。
14A and 14B are diagrams showing a first example of the contents of the 1/N processing, FIG. 14A showing the first processing, and FIG. 14B showing the second processing. In this example, 1/N processing is performed using eight
この第1の例によれば、1回の処理で指検出用信号FDSの入力対象となるセンサ電極30Xの本数が8となるので、8個のパルス群p1~p8のみで指検出用信号FDSを構成することが可能になる。したがって、1回の処理を行うために必要な時間はt×8(=パルス群pnの総数)×16(=センサ電極30Yの総数)となるので、図2又は図12(a)の例による位置検出処理に比べて1/2の時間で、1回の処理を完了することが可能になる。
According to this first example, the number of
また、第1の例によれば、1回目と2回目ですべてのセンサ電極30Xを網羅することになるので、MCU40は、1回目の処理の結果としてシフトレジスタ40a(図5を参照)に保持した部分検出データと、2回目の処理の結果としてシフトレジスタ40aに保持した部分検出データとを合成することにより、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成することが可能になる。
Further, according to the first example, since all the
さらに、第1の例によれば、1回目と2回目の間に順序性がないことから、新たに部分検出データを取得した場合に、MCU40は、1/Nの処理を行う都度、シフトレジスタ40aに格納済みのN-1回分の部分検出データとの合成により全体検出データを生成することが可能になる。つまり、1回目の処理の結果としてシフトレジスタ40aに保持した部分検出データと、その直後に実行した2回目の処理の結果としてシフトレジスタ40aに保持した部分検出データとを合成することだけでなく、2回目の処理の結果としてシフトレジスタ40aに保持した部分検出データと、その直後に実行した1回目の処理の結果としてシフトレジスタ40aに保持した部分検出データとを合成することによっても、全体検出データを生成することが可能になる。したがって、図2又は図12(a)の例による指4の検出レートに比べて2倍の検出レートで、指4の検出結果を出力することが可能になる。
Furthermore, according to the first example, since there is no order between the first and second times, when new partial detection data is acquired, the
図15は、1/Nの処理の内容の第2の例を示す図であり、図15(a)は1回目の処理、図15(b)は2回目の処理をそれぞれ表している。この例では、1回目と2回目のそれぞれにおいて、互いに異なる8個のセンサ電極30Yを用いて1/Nの処理が行われる。より具体的には、Y方向に整列する16個のセンサ電極30Yを1つおきに選択して1回目の処理で使用し、残りのセンサ電極30Yを2回目の処理で使用するようにしている。
FIGS. 15A and 15B are diagrams showing a second example of the contents of the 1/N process, where FIG. 15A shows the first process and FIG. 15B shows the second process. In this example, 1/N processing is performed using eight
この第2の例によれば、1回の処理で選択の対象となるセンサ電極30Yの本数が8となる。したがって、1回の処理を行うために必要な時間はt×16(=パルス群pnの総数)×8(=センサ電極30Yの総数)となるので、図2又は図12(a)の例による位置検出処理に比べて1/2の時間で、1回の検出動作を完了することが可能になる。
According to this second example, the number of
また、第2の例によっても、1回目と2回目ですべてのセンサ電極30Yを網羅することになるので、第1の例と同様、MCU40は、1回目の処理の結果としてシフトレジスタ40aに保持した部分検出データと、2回目の処理の結果としてシフトレジスタ40aに保持した部分検出データとを合成することにより、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成することが可能になる。
Also, according to the second example, all the
さらに、第2の例においても、1回目と2回目の間に順序性がないので、第1の例と同様、MCU40は、図2又は図12(a)の例による指4の検出レートに比べて2倍の検出レートで、指4の検出結果を出力することが可能になる。
Furthermore, in the second example as well, there is no order between the first and second times. It is possible to output the detection result of the
図16は、1/Nの処理の内容の第3の例を示す図であり、図16(a)は1回目の処理、図16(b)は2回目の処理をそれぞれ表している。この例では、第1の例と同様、1回目と2回目のそれぞれにおいて、互いに異なる8個のセンサ電極30Xを用いて1/Nの処理が行われる。ただし、本例では、整列する16個のセンサ電極30Xのうちの8本を一端から順に選択して1回目の処理で使用し、残りのセンサ電極30Xを2回目の処理で使用するようにしている。
16A and 16B are diagrams showing a third example of the contents of the 1/N process, where FIG. 16A shows the first process and FIG. 16B shows the second process. In this example, similarly to the first example, 1/N processing is performed using the eight
この第3の例によっても、第1の例と同様の理由により、図2又は図12(a)の例による位置検出処理に比べて1/2の時間で、1回の処理を完了することが可能になる。また、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成することが可能になる。さらに、図2又は図12(a)の例による指4の検出レートに比べて2倍の検出レートで、指4の検出結果を出力することが可能になる。
According to the third example, for the same reason as the first example, one process can be completed in half the time of the position detection process according to the example of FIG. 2 or FIG. 12(a). becomes possible. Further, it is possible to generate whole detection data indicating whether or not the
図17は、1/Nの処理の内容の第4の例を示す図であり、図17(a)は1回目の処理、図17(b)は2回目の処理をそれぞれ表している。この例では、第2の例と同様、1回目と2回目のそれぞれにおいて、互いに異なる8個のセンサ電極30Yを用いて1/Nの処理が行われる。ただし、本例では、整列する16個のセンサ電極30Yのうちの8本を一端から順に選択して1回目の処理で使用し、残りのセンサ電極30Yを2回目の処理で使用するようにしている。
FIGS. 17A and 17B are diagrams showing a fourth example of the contents of the 1/N processing, FIG. 17A showing the first processing, and FIG. 17B showing the second processing. In this example, similarly to the second example, 1/N processing is performed using the eight
この第4の例によっても、第2の例と同様の理由により、図2又は図12(a)の例による位置検出処理に比べて1/2の時間で、1回の処理を完了することが可能になる。また、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成することが可能になる。さらに、図2又は図12(a)の例による指4の検出レートに比べて2倍の検出レートで、指4の検出結果を出力することが可能になる。
According to the fourth example, for the same reason as the second example, one process can be completed in half the time of the position detection process according to the example of FIG. 2 or FIG. 12(a). becomes possible. Further, it is possible to generate whole detection data indicating whether or not the
図18は、1/Nの処理の内容の第5の例を示す図であり、図18(a)は1回目の処理、図18(b)は2回目の処理をそれぞれ表している。この例では、1回目の処理において16個のパルス群p1~p16のうちの半分のみが使用され、2回目の処理において残りが使用される。より具体的には、1回目の処理においてパルス群p1~p8が使用され、2回目の処理においてパルス群p9~p16が使用される。 FIGS. 18A and 18B are diagrams showing a fifth example of the contents of the 1/N processing, FIG. 18A representing the first processing, and FIG. 18B representing the second processing. In this example, only half of the 16 pulse groups p 1 -p 16 are used in the first run and the rest in the second run. More specifically, pulse groups p 1 to p 8 are used in the first processing, and pulse groups p 9 to p 16 are used in the second processing.
この第5の例によれば、1回の処理で各センサ電極30Xに入力されるパルスの数は8個のみとなる。したがって、1回の処理を行うために必要な時間がt×8(=パルス群pnの総数)×16(=センサ電極30Yの総数)となるので、図2又は図12(a)の例による位置検出処理に比べて1/2の時間で、1回の検出動作を完了することが可能になる。
According to this fifth example, only eight pulses are input to each
また、第5の例によれば、1回目と2回目で16個のパルス群p1~p16のすべてを網羅することになるので、第1~第4の例と同様、MCU40は、1回目の処理の結果としてシフトレジスタ40aに保持した部分検出データと、2回目の処理の結果としてシフトレジスタ40aに保持した部分検出データとを合成することにより、タッチ面3aの全体について指4が存在するか否かを示す全体検出データを生成することが可能になる。
Further, according to the fifth example, since all 16 pulse groups p 1 to p 16 are covered in the first and second times, the
さらに、第5の例においても、1回目と2回目の間に順序性がないので、第1~第4の例と同様、MCU40は、図2又は図12(a)の例による指4の検出レートに比べて2倍の検出レートで、指4の検出結果を出力することが可能になる。
Furthermore, in the fifth example as well, there is no order between the first and second times. It becomes possible to output the detection result of the
図19及び図20は、第5の例におけるシフトレジスタ40a(図5参照)の具体的な記憶内容の例を示す図である。同図には、理解が容易になるよう、各センサ電極30Yに対応してシフトレジスタ40aの記憶内容を並べて表示している。また、同図においてセンサ30の中に示した数値は、センサ電極30X,30Yの各交点におけるキャパシタンスの値を示している。以下、この図19及び図20を参照しながら、第5の例における全体検出データの生成方法について具体的に説明する。
19 and 20 are diagrams showing examples of specific storage contents of the
図19は、1回目の処理が完了した直後におけるシフトレジスタ40aの記憶内容を示している。1回目の処理では、各センサ電極30YについてレベルL1~L8がシフトレジスタ40aに格納される。あるセンサ電極30Yについての1回目の処理が完了した時点で、シフトレジスタ40aには、図19に示すように、そのセンサ電極30Yについて直前に行われた2回目の処理でシフトレジスタ40aに格納されたレベルL9~L16が残っている。そこでMCU40は、新たに格納したレベルL1~L8により表される部分検出データと、シフトレジスタ40a内に残っているレベルL9~L16により表される部分検出データとを合成して1つの全体検出データとし、この全体検出データを用いて、上述した相関値の算出を行う。これにより、MCU40は、1回目の検出動作が完了した時点で、指4の位置を示す座標をホストプロセッサ32に出力することが可能になる。
FIG. 19 shows the contents stored in the
図20は、2回目の処理が完了した直後におけるシフトレジスタ40aの記憶内容を示している。2回目の処理では、各センサ電極30YについてレベルL9~L16がシフトレジスタ40aに格納される。あるセンサ電極30Yについての2回目の処理が完了した時点で、シフトレジスタ40aには、図19に示すように、そのセンサ電極30Yについて直前に行われた1回目の処理でシフトレジスタ40aに格納されたレベルL1~L8が残っている。そこでMCU40は、新たに格納したレベルL9~L16により表される部分検出データと、シフトレジスタ40a内に残っているレベルL1~L8により表される部分検出データとを合成して1つの全体検出データとし、この全体検出データを用いて、上述した相関値の算出を行う。これにより、MCU40は、2回目の検出動作が完了した時点でも、指4の位置を示す座標をホストプロセッサ32に出力することが可能になる。
FIG. 20 shows the contents stored in the
以上説明したように、本実施の形態によるポインタの位置検出処理によれば、指4の位置検出処理をN回に分けて実行するので、アクティブペン2及び指4双方の検出レートを維持しつつ、アクティブペン2の検出を等間隔で実行することが可能になる。したがって、アクティブペン2の検出間隔が一定でないために、例えばセンサコントローラ31から順次出力されるアクティブペン2の座標データが時間的に等間隔に送信されていることを期待して動作する描画アプリケーションなどにおいて、描画結果が不自然になってしまうという背景技術の問題が解決される。また、本実施の形態による位置検出処理によれば、背景技術よりも高い検出レートで、指4を検出することが可能になる。
As described above, according to the pointer position detection processing according to the present embodiment, the position detection processing of the
次に、本発明の第2の実施の形態による位置検出システム1について、説明する。本実施の形態による位置検出システム1は、第1の実施の形態による位置検出システム1に、上述したゴースト位置の存在によって不要な直線が描画されてしまうことを防止するための機能を追加したものである。以下、第1の実施の形態と同一の構成には同一の符号を付し、第1の実施の形態との相違点に着目して説明する。
Next, a
図22は、本実施の形態による位置検出システム1の使用状態の一例を示す図である。また、図23は、本実施の形態の背景技術によるホストプロセッサ32の動作を説明する図である。以下では、まずこれら図22及び図23を参照しながら本実施の形態の課題について説明し、その後、本実施の形態によるセンサコントローラ31の動作について説明することにする。
FIG. 22 is a diagram showing an example of the usage state of the
図22に示すように、ユーザは、アクティブペン2による入力操作を行う際に、アクティブペン2を持っている手(以下、右手とする)とは反対側の手(以下、左手とする)をタッチ面3aについている場合がある。この場合において、左手の接触位置(図示したパーム領域Palm)は第1の実施の形態に示した処理によってタッチ位置及びペン位置の両方から除外されることになるが、それとは別に、左腕の下方にペン位置(図示したゴースト位置G)が検出されてしまう場合がある。これは、同図に示す電流経路CR(アクティブペン2のペン電極からセンサ電極30Xを通って左腕に入り、人体を経由してアクティブペン2に戻る電流経路)が形成され、その結果として、左腕の下方でアクティブペン2の送信信号が検出されてしまうことによるものである。なお、図22にはセンサ電極30Xの例を示しているが、センサ電極30Yについても同様である。
As shown in FIG. 22, when performing an input operation with the
ゴースト位置Gで検出される信号のレベルはアクティブペン2の接触位置(図示したペン位置P)で検出される信号のレベルに比べて小さく、また、タブレット3が同時に検出可能なアクティブペン2は通常1本だけであるので、アクティブペン2がタッチ面3aに接触している限り、このゴースト位置Gが問題になることはない。しかしながら、例えばアクティブペン2がタブレット3のベゼル領域3bからタッチ面3a内に、図示した矢印Aに沿って急に移動するような場合、センサコントローラ31は、実際のペン位置Pを検出する前に、ゴースト位置Gを検出してしまうことがある。
The level of the signal detected at the ghost position G is smaller than the level of the signal detected at the contact position of the active pen 2 (pen position P shown in the figure), and the
図23では、そのような場合に最初に検出されたゴースト位置Gをn-1番目の確定ペン位置fPn-1とし、次いで検出されたペン位置Pをn番目の確定ペン位置fPnとして、それぞれを図示している。こうして確定ペン位置fPn-1,fPnが相次いで検出されると、これらの供給を受けたホストプロセッサ32は、図23に示すように、これらの間に線分Lを描画することになる。この線分Lはユーザが意図したものではないので、線分Lが描画されないようにする必要がある。これが本実施の形態の課題である。以下、この課題を解決するためのセンサコントローラ31の動作について、図24を参照しながら詳しく説明する。
In FIG. 23, the first detected ghost position G in such a case is defined as the (n-1)th fixed pen position fPn -1 , and the subsequently detected pen position P is defined as the nth fixed pen position fPn. Each is illustrated. When the determined pen positions fP n−1 and fP n are successively detected in this manner, the
図24は、本実施の形態によるセンサコントローラ31が実行するポインタの位置検出処理を示すフロー図である。同図は、図3に示したペン検出ステップ内にステップS101~S107を追加したものとなっている。以下、図24とともに図23も再度参照しながら、本実施の形態によるセンサコントローラ31の動作について詳しく説明する。
FIG. 24 is a flowchart showing pointer position detection processing executed by the
本実施の形態によるセンサコントローラ31(具体的には、図4に示したMCU40)は、ステップS3でペン位置を決定した後、直前のタッチ検出ステップ(図3参照)で領域種別がパームとされたタッチ位置が検出されていたか否かを判定する(ステップS101)。検出されていないと判定した場合、センサコントローラ31は、決定したペン位置を上述したペン位置テーブルとは別に記憶したうえで(ステップS107)、ステップS4の出力処理を行う。一方、検出されていたと判定した場合のセンサコントローラ31は次に、前回のステップS106で記憶していたペン位置(前回ペン位置)が、検出されていたパーム領域Palmを基準とする所定領域内に位置しているか否かを判定する(ステップS102)。
After determining the pen position in step S3, the sensor controller 31 (specifically, the
図23には、この所定領域の一例を示している。センサコントローラ31は、図5を参照して説明した相関値からパーム領域Palmの広がりを取得し、その結果に基づいて、パーム領域Palm内を通過するセンサ電極30X,30Yに対応するタッチ面3a内の十字形の領域(十字領域XR)を取得するよう構成される。上記所定領域は、こうして取得された十字領域XRによって構成される。
FIG. 23 shows an example of this predetermined area. The
図24に戻り、続いてセンサコントローラ31は、今回のステップS3において決定されたペン位置(今回ペン位置)に対応するアクティブペン2の送信信号(具体的には、上述した位置信号)のレベルを所定の閾値と比較し、比較の結果に応じて、検出したペン位置を出力するか否かを決定する(ステップS103)。具体的には、送信信号のレベルが所定の閾値より低いと判定した場合(低)には、ステップS4の後に処理を進め、図3に示したタッチ検出ステップに移行する。一方、送信信号のレベルが所定の閾値以上であると判定した場合(高)には、ステップS104に処理を進める。ここで、ステップS103で使用する閾値は、MCU40がアクティブペン2の位置を検出するために使用する上記所定値より大きな値に設定される。ステップS103の処理はペン位置を検出するための閾値を事後的に上昇させる処理に他ならず、これにより、十字領域XR内においてゴースト位置Gが検出される可能性を低減することが可能になる。
Returning to FIG. 24, the
次にセンサコントローラ31は、前回ペン位置と今回ペン位置との間の距離を算出する。この距離は、図23においては、確定ペン位置fPn-1,fPn間の距離に相当する。そしてセンサコントローラ31は、この距離が所定値を超えているか(長)否か(短)を判定する(ステップS104)。そして、超えていると判定した場合には、アクティブペン2がタッチ面3aから離れたことを示すペンアップ情報OUT-PROXYと、アクティブペン2がタッチ面3aに接触したことを示すペンダウン情報IN-PROXYとを順次ホストプロセッサ32に出力する(ステップS105,S106)。ステップS104で超えていないと判定した場合、及び、ステップS106が終了した後には、センサコントローラ31は、決定したペン位置を上述したペン位置テーブルとは別に記憶したうえで(ステップS107)、ステップS4の出力処理を行う。
Next, the
以上説明したように、本実施の形態によるポインタの位置検出処理によれば、今回検出したペン位置と前回検出したペン位置との間の距離が所定値を超えている場合に、ペンアップ情報OUT-PROXYをホストプロセッサ32に対して出力することができる。したがって、ホストプロセッサ32は、今回ペン位置と前回ペン位置とを異なるストロークに属するものと判断するので、ゴースト位置Gの存在によって、図23に示した線分Lのような不要な線分が描画されてしまうことが防止される。
As described above, according to the pointer position detection processing according to the present embodiment, when the distance between the pen position detected this time and the pen position detected last time exceeds a predetermined value, the pen-up information OUT -PROXY can be output to the
以上、本発明の好ましい実施の形態について説明したが、本発明はこうした実施の形態に何等限定されるものではなく、本発明が、その要旨を逸脱しない範囲において、種々なる態様で実施され得ることは勿論である。 Although preferred embodiments of the present invention have been described above, the present invention is by no means limited to such embodiments, and the present invention can be implemented in various forms without departing from the gist thereof. is of course.
例えば、本実施の形態によるポインタの位置検出処理は、ここまでで説明したもの以外の態様でも、好適に実施可能である。以下、具体的な例を挙げて説明する。 For example, the pointer position detection processing according to the present embodiment can be preferably implemented in modes other than those described above. Specific examples will be described below.
図21(a)は、本実施の形態の第1の変形例による位置検出処理にかかる制御シーケンスを示す図である。本変形例によるMCU40は、所定のインターバルで1/2の処理を行い、各処理で得られた部分検出データと、その直前の処理で得られた部分検出データとを合成することにより、2倍の検出レートで全体検出データFM1、FM2、FM3、FM4・・・を生成するよう構成される。なお、上記インターバルには、アクティブペン2の位置検出処理又は画素駆動動作を実行することとしてもよいし、アクティブペン2の位置検出処理と画素駆動動作を時分割で実行することとしてもよい。
FIG. 21(a) is a diagram showing a control sequence for position detection processing according to the first modification of the present embodiment. The
第1の変形例に関連して、MCU40は、指4の位置検出処理を上記所定のインターバルで実行するか否かを判定し、実行すると判定した場合にのみ、指4の位置検出処理をN回に分けて実行することとしてもよい。実行しないと判定した場合には、図3に示したステップS5~S7を図2に示したステップS103によって置き換えることとなる。こうすることで、アクティブペン2の位置検出処理又は画素駆動動作を行う必要がある場合とない場合とで、指4の位置検出処理の実行方法を変更することが可能になる。
In relation to the first modification, the
図21(b)は、本実施の形態の第2の変形例による位置検出処理にかかる制御シーケンスを示す図である。本変形例によるMCU40は、指4の位置検出処理を連続的に(インターバルを空けずに)行うにもかかわらず、指4の位置検出処理を2回の処理に分けて行うよう構成される。これにより、同図にも示すように、指4の位置検出処理を1回の処理で行う場合に比べて2倍の検出レートで、全体検出データFM1、FM2、FM3、FM4・・・を生成することが可能になる。
FIG. 21(b) is a diagram showing a control sequence for position detection processing according to the second modification of the present embodiment. The
図21(c)は、本実施の形態の第3の変形例による位置検出処理にかかる制御シーケンスを示す図である。本変形例によるMCU40は、指4の位置検出処理を連続的に(インターバルを空けずに)行うにもかかわらず、指4の位置検出処理を3回の処理に分けて行うよう構成される。これにより、同図にも示すように、指4の位置検出処理を1回の処理で行う場合に比べて3倍の検出レートで、全体検出データFM1、FM2、FM3、FM4・・・を生成することが可能になる。
FIG. 21(c) is a diagram showing a control sequence for position detection processing according to the third modification of the present embodiment. The
その他、上記実施の形態では、指4(パッシブポインタ)の位置検出処理を複数回に分割して行う例を説明したが、アクティブペン2の位置検出処理についても、同様に複数回に分割して行うこととしてもよい。
In addition, in the above-described embodiment, the position detection processing of the finger 4 (passive pointer) is divided into a plurality of times, but the position detection processing of the
また、上記実施の形態では、MCU40が常にペン位置テーブル及びタッチ位置テーブルを用いて出力位置決定処理を行うものとして説明したが、例えば、図9のステップS21で検出された位置が1つのみであった場合には、その位置を出力対象のペン位置として決定し、ステップS3のペン位置決定処理をスキップすることとしてもよい。同様に、図9のステップS51で検出された位置が1つのみであった場合には、その位置を出力対象のパッシブポインタ位置として決定し、ステップS8のパッシブポインタ位置決定処理をスキップすることとしてもよい。
In the above embodiment, the
また、上記実施の形態においては、ロジック部41及びMCU40は、指検出用信号FDSを送信する場合に、1つのセンサ電極30Yを選択し、上述したパルス群p1~pKを送信部42に順次各センサ電極30Xに入力させる、という動作を各センサ電極30Yについて繰り返すよう構成されるとしたが、センサ電極30Yごとに受信部44を設け、各センサ電極30Yに対する処理をパラレルに実行することとしてもよい。この場合、図15及び図17に示した1/Nの処理の内容の第2及び第4の例では位置検出処理の時間を短縮するという効果が得られないことになるが、一方で、2本のセンサ電極30Yで1つの受信部44を共有することが可能になるので、センサ電極30Yごとに受信部44を設ける場合に比べ、受信部44の回路規模を削減するという新たな効果を得ることが可能になる。
In the above embodiment, the
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 指検出用信号
L9~LK レベル
Res データ
SB スタートビット
T1~T4 相関値
US アップリンク信号
Vcom 画素駆動用電圧
cP[i] 候補ペン位置
cT[j] 候補タッチ位置
ctrl_t1~ctrl_t4,ctrl_r 制御信号
fP[i] 確定ペン位置
fT[j] 確定タッチ位置
G ゴースト位置
P ペン位置
Palm パーム領域
p1~pK パルス群
s1~sK 信号
XR 十字領域
1
Claims (4)
信号を送信しないパッシブポインタの位置と、
先端部分に設けられたペン電極から信号を送信可能に構成されたアクティブペンの位置と、を検出するポインタの位置検出方法であって、
前記ペン電極を介して送信されたペン信号を検出し、検出された前記ペン信号のレベルに基づいて前記アクティブペンの位置であるペン位置を検出するペン検出ステップを含み、
前記ペン検出ステップは、
今回検出した前記ペン位置と前回検出した前記ペン位置との間の距離が所定値を超えている場合に、前記アクティブペンがタッチ面から離れたことを示すペンアップ情報を出力した後、今回検出した前記ペン位置を出力し、
今回検出した前記ペン位置と前回検出した前記ペン位置との間の距離が前記所定値を超えていない場合には、前記ペンアップ情報を出力することなく、今回検出した前記ペン位置を出力する、
ポインタの位置検出方法。 performed by a sensor controller connected to the sensor pattern,
the position of a passive pointer that does not send a signal, and
A pointer position detection method for detecting the position of an active pen configured to transmit a signal from a pen electrode provided at the tip thereof, and
a pen detection step of detecting a pen signal transmitted through the pen electrode and detecting a pen position, which is the position of the active pen, based on the level of the detected pen signal;
The pen detection step includes:
When the distance between the currently detected pen position and the previously detected pen position exceeds a predetermined value, the current detection is performed after outputting pen-up information indicating that the active pen has left the touch surface. output the pen position obtained by
When the distance between the pen position detected this time and the pen position detected last time does not exceed the predetermined value, the pen position detected this time is output without outputting the pen-up information.
Pointer position detection method.
請求項1に記載のポインタの位置検出方法。 In the pen detection step, when the distance between the pen position detected this time and the pen position detected last time exceeds a predetermined value, pen-down information indicating that the active pen has come into contact with the touch surface is transmitted. Output the pen position detected this time after outputting the pen-up information,
2. The pointer position detection method according to claim 1.
前記ペン検出ステップは、前記タッチ検出ステップにより前記領域種別がパームであると判定された前記パッシブポインタの位置が検出されていた場合に、今回検出した前記ペン位置と前回検出した前記ペン位置との間の距離が前記所定値を超えているか否かを判定する、
請求項1又は2に記載のポインタの位置検出方法。 a touch detection step of detecting a position of the passive pointer by detecting a change in capacitance in the sensor pattern and determining whether the region type of the detected position of the passive pointer is a palm or a finger; further includes
In the pen detection step, when the position of the passive pointer whose area type is determined to be palm by the touch detection step is detected, the difference between the pen position detected this time and the pen position detected last time is detected. Determining whether the distance between exceeds the predetermined value,
3. The pointer position detecting method according to claim 1 or 2.
検出された前記ペン信号のレベルが所定値以上である場合に前記ペン位置を検出し、
今回検出した前記ペン位置に対応する前記アクティブペンの送信信号のレベルを前記所定値より大きい所定の閾値と比較し、前記レベルが前記所定の閾値より低い場合に、今回検出した前記ペン位置の出力を行わない、
請求項1乃至3のいずれか一項に記載のポインタの位置検出方法。 The pen detection step includes:
detecting the pen position when the level of the detected pen signal is equal to or higher than a predetermined value;
Comparing the level of the transmission signal of the active pen corresponding to the pen position detected this time with a predetermined threshold larger than the predetermined value, and outputting the pen position detected this time when the level is lower than the predetermined threshold do not
The pointer position detection method according to any one of claims 1 to 3.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021157746A JP7209064B2 (en) | 2019-11-07 | 2021-09-28 | Pointer position detection method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019202072A JP6952753B2 (en) | 2019-01-25 | 2019-11-07 | Active pen position detection method and sensor controller |
JP2021157746A JP7209064B2 (en) | 2019-11-07 | 2021-09-28 | Pointer position detection method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019202072A Division JP6952753B2 (en) | 2019-01-25 | 2019-11-07 | Active pen position detection method and sensor controller |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021193625A JP2021193625A (en) | 2021-12-23 |
JP7209064B2 true JP7209064B2 (en) | 2023-01-19 |
Family
ID=79168790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021157746A Active JP7209064B2 (en) | 2019-11-07 | 2021-09-28 | Pointer position detection method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7209064B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2023104316A (en) | 2022-01-17 | 2023-07-28 | 株式会社ワコム | Position detection circuit, position detection system, and position detection method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002268813A (en) | 2001-03-13 | 2002-09-20 | Ricoh Co Ltd | Information input device, information input-output system, program and storage medium |
US20120105362A1 (en) | 2010-10-28 | 2012-05-03 | Cypress Semiconductor Corporation | Synchronizing a stylus with a capacitive sense array |
WO2016139861A1 (en) | 2015-03-02 | 2016-09-09 | 株式会社ワコム | Active capacitive stylus, sensor controller, system comprising these, and method executed by these |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60114924A (en) * | 1983-11-25 | 1985-06-21 | Hitachi Ltd | Noise eliminating system at time series sampling point |
-
2021
- 2021-09-28 JP JP2021157746A patent/JP7209064B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002268813A (en) | 2001-03-13 | 2002-09-20 | Ricoh Co Ltd | Information input device, information input-output system, program and storage medium |
US20120105362A1 (en) | 2010-10-28 | 2012-05-03 | Cypress Semiconductor Corporation | Synchronizing a stylus with a capacitive sense array |
WO2016139861A1 (en) | 2015-03-02 | 2016-09-09 | 株式会社ワコム | Active capacitive stylus, sensor controller, system comprising these, and method executed by these |
Also Published As
Publication number | Publication date |
---|---|
JP2021193625A (en) | 2021-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6473554B1 (en) | Pointer position detection method | |
JP7215881B2 (en) | sensor controller | |
US20230393675A1 (en) | Active pen and sensor controller that use data generated from identification data | |
JP7550839B2 (en) | Pointer position detection method and sensor controller | |
US11720189B2 (en) | Communication method executed between active pen and sensor controller, and active pen | |
US20210333975A1 (en) | Position detection system, sensor control circuit, and electronic pen | |
JP6952753B2 (en) | Active pen position detection method and sensor controller | |
JP7209064B2 (en) | Pointer position detection method | |
JP6616534B2 (en) | Pointer position detection method and sensor controller | |
US11586301B2 (en) | Pointer position detection method and sensor controller | |
EP3137980B1 (en) | Method of detecting touch input, apparatus for sensing touch input, and apparatus for inputting touch input | |
JP6866541B1 (en) | Sensor system | |
JP7018151B2 (en) | Sensor system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211025 |
|
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: 20221220 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230106 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7209064 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |