JP6262397B1 - アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス - Google Patents

アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス Download PDF

Info

Publication number
JP6262397B1
JP6262397B1 JP2017200990A JP2017200990A JP6262397B1 JP 6262397 B1 JP6262397 B1 JP 6262397B1 JP 2017200990 A JP2017200990 A JP 2017200990A JP 2017200990 A JP2017200990 A JP 2017200990A JP 6262397 B1 JP6262397 B1 JP 6262397B1
Authority
JP
Japan
Prior art keywords
information
stylus
sensor controller
active stylus
core
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
Application number
JP2017200990A
Other languages
English (en)
Other versions
JP2018026165A (ja
Inventor
定雄 山本
定雄 山本
小田 康雄
康雄 小田
山田 正彦
正彦 山田
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
Priority claimed from PCT/JP2016/058892 external-priority patent/WO2016170888A1/ja
Application filed by Wacom Co Ltd filed Critical Wacom Co Ltd
Application granted granted Critical
Publication of JP6262397B1 publication Critical patent/JP6262397B1/ja
Publication of JP2018026165A publication Critical patent/JP2018026165A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03545Pens or stylus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • G06F3/0383Signal control means within the pointing device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0412Digitisers structurally integrated in a display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/04162Control or interface arrangements specially adapted for digitisers for exchanging data with external devices, e.g. smart pens, via the digitiser sensing hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/0418Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • G06F3/0441Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means using active external devices, e.g. active pens, for receiving changes in electrical potential transmitted by the digitiser, e.g. tablet driving signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • G06F3/0442Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means using active external devices, e.g. active pens, for transmitting changes in electrical potential to be received by the digitiser
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • G06F3/0448Details of the electrode shape, e.g. for enhancing the detection of touches, for generating specific electric field shapes, for enhancing display quality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/046Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by electromagnetic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Quality & Reliability (AREA)
  • Position Input By Displaying (AREA)

Abstract

【課題】アクティブスタイラスからセンサコントローラに対し、芯体情報を効率よく送れるようにする。【解決手段】本発明による方法は、アクティブスタイラス及びセンサコントローラを用いた方法であって、アクティブスタイラスが、ステップS4におけるビーコン信号BSの検出に応じて、当該アクティブスタイラスのペン先における電極の個数又は配置を特定する情報を含む芯体情報を含む機能情報CPを送信するステップS6〜S8と、センサコントローラが芯体情報を受信することによってアクティブスタイラスの電極の個数又は配置を特定するステップと、アクティブスタイラスが、電極を用いて信号を繰り返し送信するステップS12,S13と、センサコントローラが、芯体情報に基づく方法により上記信号に基づいてアクティブスタイラスの位置を導出するステップとを備える。【選択図】図14

Description

本発明は、アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラスに関する。
電源装置内蔵型の位置指示器であるアクティブスタイラス(以下、単に「スタイラス」という場合がある)からタブレットに対し、静電結合により信号の送信を行うようにした位置検出装置が知られている。この種の位置検出装置においては、現状、スタイラスから信号を送信してタブレットのセンサコントローラで受信するという、一方向の通信が行われている。特許文献1には、このような位置検出装置の例として、座標データの導出専用の位置信号とともに、筆圧値などのデータとスタイラスの固有IDなどの情報とを通信するスタイラスが開示されている。
特許文献2には、位置検出装置の他の例が開示されている。この例によるスタイラスは、信号送信のための電極と電池とを備えており、筆圧検出した結果をデジタルで送信している。また、タブレットは表示装置及び透明センサによって構成されており、透明センサにより、スタイラスによる指示位置および筆圧と、指によるタッチ位置との両方が検出可能な構成とされている。
近年、スタイラスの筐体とは別の部材によって芯体(ペン先)を構成し、芯体を交換可能としたスタイラスが登場している。特許文献3,4には、そのようなスタイラスの一例が開示されている。
特許文献4には、複数のペン先のうち現在接続されている芯体を検出し、検出された芯体に基づいて位置検出装置の「アプリケーションの特徴」(消しゴムなど)を表すコードを決定し、決定したコードを音響コードにより位置検出装置に向けて送信するスタイラスが開示されている。また、特許文献4には、芯体とスタイラスの間の金属接点の配置又は構造を変えることにより、スタイラスによる芯体の検出を行うことが開示されている。
国際公開第2015/111159号公報 特開2014−63249号公報 米国特許第8648837号明細書 米国特許出願公開第2014/0168177号明細書
アクティブスタイラスにおいては、芯体の先端付近の電極の構造(電極の形状、個数、位置など)に応じて、センサコントローラによって検出される電界の分布が変化する可能性がある。このため、アクティブスタイラスからセンサコントローラに対し、予め、スタイラスに取り付けられている芯体の種別を伝達できるようにすることが望まれる。
この伝達を実現するための具体的な方法として、スタイラスからセンサコントローラに対し、芯体の種別を示す情報(以下、「芯体情報」と称する)を送信することが考えられる。しかしながら、静電結合による通信が可能な範囲は高々数十ミリメートルに過ぎないため、スタイラスが新たな芯体が取り付けられたことを検知し、取り付けられた芯体にかかる芯体情報を一度送信したとしても、センサコントローラによって受信されない可能性が高い。芯体が取り付けられる時点で、スタイラスはセンサコントローラから離れた位置にあることが通常だからである。
センサコントローラによる受信を確実なものとするための方法のひとつとして、スタイラスが芯体情報の送信を何度も繰り返し行うことが考えられる。そうして繰り返し送信している間にスタイラスがセンサコントローラに近づけば、結果的にセンサコントローラに芯体情報を伝達できる。しかしながら、スタイラス先端の電極とセンサコントローラが接続されたセンサとの結合容量を用いた通信のビットレートは極めて小さいため、芯体情報の送信を繰り返し行うようスタイラスを構成することは、通信リソースの利用効率の点で有効とは言えない。
したがって、本発明の目的の一つは、アクティブスタイラスからセンサコントローラに対し、芯体情報を効率よく送ることのできる、アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラスを提供することにある。
本発明による方法は、アクティブスタイラス及びセンサコントローラを用いた方法であって、前記アクティブスタイラスが、ペンダウン操作が発生した場合に生ずる所定のトリガに応じて、当該アクティブスタイラスのペン先を構成する芯体の種別を示す芯体情報を送信するステップと、前記センサコントローラが、前記芯体情報を受信し、前記アクティブスタイラスの前記芯体の種別を特定するステップと、前記アクティブスタイラスが、前記芯体に付加される筆圧値を含むデータ信号を繰り返し送信するステップと、前記センサコントローラが、特定された前記芯体情報に基づく方法により前記データ信号に基づいて前記アクティブスタイラスの位置を導出するステップとを備えるというものである。
本発明によるアクティブスタイラスは、センサコントローラに対して信号を送信可能に構成されたアクティブスタイラスであって、電極を有するペン先と、前記電極から信号を送信する送信部と、前記送信部を利用して、ペンダウン操作が発生した場合に生ずる所定のトリガに応じ、前記センサコントローラに対して、前記ペン先を構成する芯体の種別を特定するための芯体情報を1回送信する一方、前記芯体情報を1回送信した後、データ信号を前記センサコントローラに対して繰り返し送信する制御部とを含むというものである。
本発明によるセンサコントローラは、ペン先を構成する芯体の種別を示す芯体情報、及び、前記芯体に付加される筆圧値を含むデータ信号を送信可能に構成されたアクティブスタイラスとともに用いられるセンサコントローラであって、前記アクティブスタイラスにより送信された前記芯体情報を取得し、取得した前記芯体情報に基づいて1つの位置導出方法を決定し、決定された位置導出方法により、繰り返し送信される前記データ信号に基づいて繰り返し前記アクティブスタイラスの位置を導出するというものである。
本発明によれば、アクティブスタイラスが、ペンダウン操作が発生した場合に生ずる所定のトリガに応じて芯体情報を送信するので、アクティブスタイラスからセンサコントローラに対し、芯体情報を効率よく送ることが可能になる。
本発明の第1の実施の形態によるシステム1の構成を示す図である。 本発明の第1の実施の形態によるフレームFの構成を示す図である。 図1に示したスタイラス100の構成を示す図である。 図3に示したスタイラスコントローラIC106の機能ブロックを示す略ブロック図である。 (a)〜(c)は、図3に示した芯体121のバリエーションを示す図であり、(d)は、(a)に示したB−B線に対応する芯体121Aの断面を示す図であり、(e)は、(b)に示したC−C線に対応する芯体121Bの断面を示す図であり、(f)は、(c)に示したD−D線に対応する芯体121Cの断面を示す図である。 図3に示したA−A線に対応する芯体ホルダー120の断面を示す図である。 図1に示したセンサ30及びセンサコントローラ31の構成を示す図である。 図3に示した機能情報CPの構成を示す図である。 図8に示したデータフォーマットDFmtの内容を示す図である。 図9に示したオリエンテーションコードORCの定義を示す図である。 図8に示したデータフォーマットDFmtの記述例を示す図である。 図3に示したインタラクティブデータDFの構成を示す図である。 図3に示した非インタラクティブデータDINFの構成を示す図である。 図1に示したスタイラス100の動作フローを示す図である。 図1に示したセンサコントローラ31の動作フローを示す図である。 機能情報CPに対する時間スロットの割り当て例を示す図である。 機能情報CPのハッシュ値CP_Hashに対する時間スロットの割り当て例を示す図である。 インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当て例を示す図である。 インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当ての他の例を示す図である。 インタラクティブデータDFがカスタムデータCDを含む場合における、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当て例を示す図である。 インタラクティブデータDFがオリエンテーションORを含む場合における、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロット及び周波数の割り当て例を示す図である。 図15に示したセンサコントローラ31の動作フローの変形例を示す図である。 本発明の第2の実施の形態によるスタイラス100及びセンサコントローラ31の動作フローを示す図である。 時間スロットの割り当ての変形例を示す図である。 本発明の変形例によるスタイラス100の動作フローを示す図である。 本発明の変形例によるセンサコントローラ31の動作フローを示す図である。 (a)(b)はそれぞれ、本発明の変形例によるスタイラス100を示す図である。
以下、添付図面を参照しながら、本発明の実施の形態について詳細に説明する。
図1は、本発明の第1の実施の形態によるシステム1の構成を示す図である。システム1は、スタイラス100と、電子機器3に備えられたセンサコントローラ31とにより構成される。このうちスタイラス100は、各種のデータ(後述する機能情報CP、ハッシュ値CP_Hash、インタラクティブデータDF、非インタラクティブデータDINF、ビーコン信号BSなど)を送受信する機能を有する通信部110を備えて構成される。また、電子機器3は、センサコントローラ31の他に、電子機器3のタッチ面3aを構成するセンサ30と、センサ30及びセンサコントローラ31を含む電子機器3の各部の機能を制御するシステムコントローラ32(ホストプロセッサ)とを備えて構成される。センサコントローラ31は、センサ30を介してスタイラス100と容量結合することにより、スタイラス100との間で、フレームを使用する双方向通信を行うよう構成される。
図1中の破線矢印C1〜C5は、ユーザがスタイラス100を操作する典型的なサイクルを示している。ユーザは、スタイラス100の使用にあたり、まず初めにテイルスイッチ103(図3参照)を操作して、スタイラス100が描く線の色ColやスタイルStyl(図8参照)を決定する。また、必要に応じ、スタイラス100の芯体121(図3参照)を交換する。そして実際に線を描く際には、スタイラス100をセンシング範囲SR(センサコントローラ31がスタイラス100を検出可能な範囲)の外にある開始位置STからセンシング範囲SR内に移動(ダウン)させ(ペンダウン操作C1)、さらに、タッチ面3aに接触(タッチ)させる(ペンタッチ操作C2)。その後ユーザは、タッチ状態を維持しつつタッチ面3a上に所望の軌跡を描くようにスタイラス100を動かした後(ペンムーブ操作C3)、センシング範囲SR内からセンシング範囲SR外にスタイラス100を移動(アップ)させる(ペンアップ操作C4,C5)。ユーザは、これら一連の操作C1〜C5を繰り返すことにより、タッチ面3a上に文字や絵を描く。こうしてユーザが操作C1〜C5を繰り返すことにより、センサコントローラ31のセンシング範囲SRに対しスタイラス100がイン及びアウトを繰り返す状況が発生する。
センサコントローラ31は、システム1内で実行される通信を制御するマスター装置であり、フレームの基準時刻となるビーコン信号BS(アップリンク信号、探索信号)を、センサ30を用いてフレームごとに(フレーム周期のインターバルで)送出するよう構成される。
図2は、本実施の形態によるフレームFの構成を示す図であり、フレームF、ビーコン信号BS、及び時間スロットsの関係を示している。同図に示すように、例えば、各フレームFは16個(あるいは32個等)の時間スロットs0〜s15によって構成されており、ビーコン信号BSは、各フレームFの先頭に位置する時間スロットs0で送信される。1つのフレームFの時間長は例えば液晶のリフレッシュレートに合わせ16msec(60Hz相当)である。容量結合を介した通信は狭帯域通信であり、1つの時間スロットで送出できるビット数はせいぜい数十ビット(例えば20ビット)となる。ただし、システム1内で送受信される信号に数ビットの誤り検出符号(CRC)が付される場合があり、その場合には、1つの時間スロットで送信できるビット数は例えば16ビットとなる。以下では、1つの時間スロットsで16ビットが送信可能であることを前提として説明を続ける。
センサコントローラ31は、例えば、時間スロットs0でビーコン信号BSを送出した後、時間スロットs1〜s15で、スタイラス100から送信されるダウンリンク信号DSの受信を待機する。ダウンリンク信号DSを検出したセンサコントローラ31は、スタイラス100に装着されている芯体121(図3参照)の種別に基づいて設定される位置導出方法により、ダウンリンク信号DSの検出に用いたセンサ30の電極(後述する図7に示す複数の線状電極30X,30Y)の位置と、検出されたダウンリンク信号DSの受信レベルとに基づいてスタイラス100の位置を示す座標データ(X,Y)を導出するともに、スタイラス100がダウンリンク信号DSに含めて送信した各種の情報乃至データを取得するよう構成される。
スタイラス100がダウンリンク信号DSに含めて送信する各種の情報乃至データとは、具体的には、図8に示す機能情報CP、図12に示すインタラクティブデータDF、及び、図13に示す非インタラクティブデータDINFである。以下、このうちのインタラクティブデータDF及び非インタラクティブデータDINFをデータDと総称する場合がある。センサコントローラ31は、これらの情報乃至データを取得すると、位置情報(X,Y)とともにシステムコントローラ32に供給する。システムコントローラ32は、こうして供給された位置情報(X,Y)、機能情報CP、及びデータDを互いに対応付け、図示しないオペレーティングシステムを介し、描画アプリケーションなどの各種アプリケーションに供給するよう構成される。これにより、各種アプリケーションによる位置情報(X,Y)、機能情報CP、及びデータDの利用が実現される。
ここで、機能情報CP及びデータDの概要について説明する。詳細については、後ほど図8〜図13を参照しながら別途説明する。
まず機能情報CPは、スタイラス100がセンシング範囲SR外に存在する間に変化する情報であり、例えばスタイラス100のバージョン情報や、スタイラス100に装着されている芯体121(図3参照)の種別を示す芯体種別ID(芯体情報)などが該当する。別の言い方をすれば、機能情報CPは、ユーザがスタイラス100で書き込み操作を行っている間には、変化することのない情報である。機能情報CPには、例えばスタイラス100のベンダを示すベンダ識別子のような、全く変化することのない情報も含まれる。機能情報CPは、スタイラス100からセンサコントローラ31に対して各種のデータDが送信されるより前に、センサコントローラ31側で既知となっていなければならない。
データDは、スタイラス100がセンシング範囲SR内に存在する間に変化する可能性がある情報であり、上述したようにインタラクティブデータDF及び非インタラクティブデータDINFを含む。
インタラクティブデータDFは、例えば筆圧値やバレルボタンの押下状態のようなスタイラス100がユーザによって操作されている最中に頻繁に変化するデータであって、後述する図18に示すように、1つのフレームF(例えば、60Hz)内において1回以上(通常は複数回)、スタイラス100からセンサコントローラ31に対して送信される。また、インタラクティブデータDFは、1回データフォーマットが定められると、その後は、スタイラスとセンサコントローラとがお互いを検出している限り、決定されたデータフォーマットにより複数のフレームで繰り返し送信される。スタイラス100は原則として、センサコントローラ31からのポーリングへの応答としてではなく自発的に、インタラクティブデータDFを周期的に複数のフレームで繰り返し送信する。座標データの導出専用の位置信号も、その指示位置がスタイラス100の使用とともに頻繁に変化する点でインタラクティブデータDFの一種に含まれる。
非インタラクティブデータDINFは、例えばバッテリーレベルのような、インタラクティブデータDFに比べて少ない頻度で変化する(又は、そのような頻度で変化すると看做してかまわない)データであって、複数のフレームFごと(例えば、数百フレームごと)に1回送信される。スタイラス100は原則として、自発的ではなく、センサコントローラ31からのポーリング(送信要求)への応答として非インタラクティブデータDINFを送信する。
図3は、スタイラス100の構成を示す図である。同図に示すように、スタイラス100は、バッテリー101、電極102、テイルスイッチ103、バレルボタン104、操作状態検出部105、スタイラスコントローラIC106、芯体ホルダー120、及び芯体121を含み構成される。また、図4は、スタイラスコントローラIC106の機能ブロックを示す略ブロック図である。同図に示すように、スタイラスコントローラIC106は機能的に、通信部110、機能情報更新部111、インタラクティブデータ取得部112、及び非インタラクティブデータ取得部113を含み構成される。
初めに図3を参照すると、バッテリー101は、スタイラスコントローラIC106を駆動するための電力を供給する電源手段であり、自身の残量のレベル(図13に示すバッテリーレベルBL)に応じた信号をスタイラスコントローラIC106に供給するよう構成される。
操作状態検出部105は、インタラクティブデータDFに含まれる情報を検出する機構であり、例えば、スタイラス100の先端に付加された筆圧値(後述する図12に示す筆圧値TiP)の検出機構や、スタイラス100のオリエンテーション(向き。後述する図12に示すオリエンテーションOR)を検出する6軸IMUなどのセンサデバイスにより構成される。操作状態検出部105は、オリエンテーションを検出するセンサデバイスに関して、検出可能なオリエンテーションの種別を示すオリエンテーションコードORC(図9参照)を特定するための情報を、スタイラスコントローラIC106内の機能情報更新部111に通知するように構成される。なお、オリエンテーションコードORCには、操作状態検出部105がオリエンテーションを検出するセンサデバイスを有するか否かを示す情報も含まれる。
スタイラスコントローラIC106は、スタイラス100の各部から供給される信号を処理するとともに、スタイラス100の各部に対して信号を供給する機能を有する信号処理部である。以下、図4を参照しながら、スタイラスコントローラIC106の機能について詳しく説明する。
通信部110は受信部Rxと送信部Txとを含み、図2に示したフレームFの基準時刻(開始時刻)に応じて規定される複数の時間スロットに基づいた双方向通信を行う。より具体的に説明すると、通信部110は、芯体121と一体に構成される電極102を利用してビーコン信号BSを検出することによりフレームFの基準時刻を導出し、図2に示した時間スロットs0〜s15の基準時刻の設定あるいは同期調整を行う。そして、機能情報更新部111、インタラクティブデータ取得部112、及び非インタラクティブデータ取得部113のそれぞれから機能情報CP、インタラクティブデータDF、及び非インタラクティブデータDINFの供給を受け、それらの情報乃至データを、例えば図9に示すように決定されたフォーマットに従いダウンリンク信号DSの送信用に用いる時間スロットs1〜s15でダウンリンク信号DSに含めて、電極102から送信する。
機能情報更新部111は、機能情報CPを管理する機能を有する。具体的には、機能情報CPをレジスタ(図示せず)に維持するとともに、ユーザによるテイルスイッチ103の操作の内容(例えば、オン操作を行う回数)や芯体121の交換動作に応じて機能情報CPを更新し、通信部110に供給するよう構成される。こうして更新される機能情報CPには、図8に示す色Col、スタイルStyl、芯体種別IDが含まれる。
インタラクティブデータ取得部112は、インタラクティブデータDFを管理する機能を有する。具体的には、インタラクティブデータDFに含まれるデータを送信する都度、図12に示す筆圧値TiPやオリエンテーションORなどをそれぞれ操作状態検出部105から取得するとともに、バレルボタン104の押下状態(図12に示すバレルボタン状態BB)を取得し、通信部110に供給するよう構成される。
非インタラクティブデータ取得部113は、非インタラクティブデータDINFを管理する機能を有する。具体的には、非インタラクティブデータDINFを送信する都度、図13に示すバッテリーレベルBLなどを取得し、通信部110に供給するよう構成される。
図3に戻る。芯体ホルダー120は中空の筒状の形状を有する部材であり、スタイラス100の筐体と一体に形成される一方、スタイラス100のペン先を構成する芯体121を着脱可能に構成される。これによりスタイラス100は芯体121を交換可能に構成されており、スタイラス100のユーザは、芯体121を芯体ホルダー120から取り外した後、別の芯体121を芯体ホルダー120に取り付けることによって、芯体121の交換を行う。
図5(a)〜(c)は、それぞれ図3に示した芯体121のバリエーションである芯体121A〜121Cを示す図である。また、図5(d)は、図5(a)に示したB−B線に対応する芯体121Aの断面を示す図であり、図5(e)は、図5(b)に示したC−C線に対応する芯体121Bの断面を示す図であり、図5(f)は、図5(c)に示したD−D線に対応する芯体121Cの断面を示す図である。
芯体121A〜121Cは、一体に構成される電極102の構造、及び、末端部に設けられる端子123の構造の点で互いに異なっている。初めに電極102について説明すると、芯体121Aに設けられる電極102は棒状の導電性部材であり、芯体121Aの先端付近の内側に配置される。一方、芯体121Bに設けられる電極102は円錐台を対称軸に沿ってくり抜いてなる形状の導電性部材であり、芯体121Bの先端付近を取り囲むように配置される。また、芯体121Cに設けられる電極102は2つの電極102−1,102−2によって構成される。電極102−1は芯体121Aの先端付近の内側に配置され、電極102−2は芯体121Aの末端付近の内側に配置される。電極102−1,102−2はいずれも棒状の導電性部材であるが、電極102−1の方が電極102−2に比べて長く形成されている。
次に端子123について説明するが、その前に芯体ホルダー120の断面構造について説明する。
図6は、図3に示したA−A線に対応する芯体ホルダー120の断面を示す図である。同図に示すように、芯体ホルダー120は、側面に3つの凹部H1〜H3を有する略円形の断面を有している。凹部H1〜H3は、凹部H1から順に90度ずつ離れて配置される。凹部H1〜H3には、それぞれ端子T1〜T3が設けられる。端子T1はバッファを介して端子D1に接続され、端子T2は接地され、端子T3はバッファを介して端子D0に接続されている。端子T1,T3はそれぞれ、抵抗素子を介して、電源電位Vddが供給される電源配線にも接続される。なお、端子D0,D1は、図3に示すようにスタイラスコントローラIC106の入力端子であり、図4に示すように、端子D0,D1に入力された信号は機能情報更新部111に供給される。
図5に戻る。図5(d)〜(f)に示すように、芯体121A〜121Cはいずれも、3つの凸部を有する略円形の断面を有している。これら3つの凸部は、図6に示した凹部H1〜H3に嵌合するように構成される。
図5(d)に示す芯体121Aにおいては、3つの凸部のうち凹部H2,H3に対応する2つに端子123が形成される。これら2つの端子123は、配線L1により互いに接続されている。芯体121Aが芯体ホルダー120に取り付けられると、凹部H2,H3に対応する2つの端子123がそれぞれ端子T2,T3と導通するので、端子T3に接地電位が供給され、端子D0にハイレベル(1)が現れる。一方、端子123が接続されていない端子T1に対応する端子D1には、ローレベル(0)が現れる。機能情報更新部111は、こうして端子D1,D0に供給される電位レベル「0」「1」から、芯体121Aの芯体種別ID「01」を検出するよう構成される。
図5(e)に示す芯体121Bにおいては、3つの凸部のうち凹部H1,H2に対応する2つに端子123が形成される。これら2つの端子123は、配線L2により互いに接続されている。芯体121Bが芯体ホルダー120に取り付けられると、凹部H1,H2に対応する2つの端子123がそれぞれ端子T1,T2と導通するので、端子T1に接地電位が供給され、端子D1にハイレベル(1)が現れる。一方、端子123が接続されていない端子T3に対応する端子D0には、ローレベル(0)が現れる。機能情報更新部111は、こうして端子D1,D0に供給される電位レベル「1」「0」から、芯体121Aの芯体種別ID「01」を検出するよう構成される。
図5(f)に示す芯体121Cにおいては、3つの凸部のすべてに端子123が形成される。各端子123は、配線L3により互いに接続されている。芯体121Cが芯体ホルダー120に取り付けられると、凹部H1〜H3に対応する3つの端子123がそれぞれ端子T1〜T3と導通するので、端子T1,T3に接地電位が供給され、端子D1,D0の両方にハイレベル(1)が現れる。機能情報更新部111は、こうして端子D1,D0に供給される電位レベル「1」「1」から、芯体121Aの芯体種別ID「11」を検出するよう構成される。
図7は、電子機器3の構成を示す図である。同図に示すように、センサ30は、複数の線状電極30Xと複数の線状電極30Yとがマトリクス状に配置された構成を有しており、これら線状電極30X,30Yによってスタイラス100と容量結合する。また、センサコントローラ31は、送信部60、選択部40、受信部50、ロジック部70、及び、MCU80を有して構成される。
送信部60は、図1に示したビーコン信号BSを送信するための回路である。具体的には、第1の制御信号供給部61、スイッチ62、直接拡散部63、拡散符号保持部64、及び送信ガード部65を含み構成される。
第1の制御信号供給部61は検出パターンc1を保持しており、ロジック部70から供給される制御信号ctrl_t1の指示に従って、所定の連続送信期間(例えば、3msec)の間、検出パターンc1を連続して繰り返し出力し、その後、終了パターンSTPを出力する機能を有する。
検出パターンc1は、スタイラス100がセンサコントローラ31の存在を検出するために用いられるシンボルのパターンであり、事前に(スタイラス100がセンサコントローラ31を検出する前に)スタイラス100に既知にされている。ここでいうシンボルは、後述する直接拡散部63により1つの拡散符号列に変換される値の単位を意味し、シンボルを受信したスタイラス100によってビット列に変換される値(以下、「ビット列対応シンボル」と称する)と、シンボルを受信したスタイラス100によってビット列に変換されない値(以下、「ビット列非対応シンボル」と称する)とを含むことができる。前者にかかるシンボルは、「0」「0001」など変換後のビット列そのものによって表記される。こうしてビット列により表記される各シンボルのビット長は、直接拡散部63の仕様により決定される。一方、後者にかかるシンボルは、「P」「M」などと表記される。一例では、「P」と「M」はそれぞれ、所定の拡散符号列とその反転符号列とに対応付けられる。
検出パターンc1の具体的な例を挙げる。例えば検出パターンc1をビット長1のビット列対応シンボルのパターンにより表すことができ、その場合、例えば「010101・・・」のように検出パターンc1を構成することができる。また、検出パターンc1をビット長4のビット列対応シンボルのパターンにより表すこともでき、その場合、例えば「0000,1000,0000,1000,・・・」のように検出パターンc1を構成することができる。さらに、検出パターンc1をビット列非対応シンボルのパターンにより表すのであれば、例えば「PMPMPM・・・」のように検出パターンc1を構成することができる。いずれにおいても、検出パターンc1は互いに異なるシンボルの値を交互に繰り返してなるシンボルパターンとすることが好適である。
終了パターンSTPは、上記連続送信期間の終了をスタイラス100に通知するためのシンボルのパターンであり、検出パターンc1の繰り返し中に現れないシンボルのパターンによって構成される。一例を挙げると、上記のように検出パターンc1を「PMPMPM・・・」と構成する場合、終了パターンSTPは、ビット列非対応シンボル「P」を2回連続させてなるシンボルパターン「PP」により構成することができる。
スイッチ62は、ロジック部70から供給される制御信号ctrl_t2に基づいて第1の制御信号供給部61及びMCU80のいずれか一方を選択し、選択した一方の出力を直接拡散部63に供給する機能を有する。スイッチ62が第1の制御信号供給部61を選択した場合、直接拡散部63には上記検出パターンc1又は終了パターンSTPが供給される。一方、スイッチ62がMCU80を選択した場合、直接拡散部63には制御情報c2が供給される。
制御情報c2は、スタイラス100への指示内容を示すコマンドを含む情報であり、MCU80によって生成される。制御情報c2は、スタイラス100に対して機能情報CPを要求したり、データDの送信方法を設定したりするためのコマンドなどを構成する、スタイラス100との間でその値が事前に共有されていない複数のビット(任意のビット列)を含む情報である。
拡散符号保持部64は、ロジック部70から供給される制御信号ctrl_t3に基づき、自己相関性を有する拡散符号を生成する機能を有する。拡散符号保持部64によって生成された拡散符号は、直接拡散部63に供給される。
直接拡散部63は、拡散符号保持部64から供給される拡散符号を用いてスイッチ62から供給される信号(検出パターンc1、終了パターンSTP、制御情報c2)を変換することにより、ビーコン信号BSを生成する。
具体的な例を挙げると、例えば検出パターンc1、終了パターンSTP、制御情報c2がビット列対応シンボル「0」「1」の組み合わせによって構成され、かつ、拡散符号保持部64から供給される拡散符号が「00010010111」である場合、直接拡散部63は、表1に示すように、シンボル「0」を拡散符号「00010010111」に変換し、シンボル「1」を拡散符号「00010010111」の反転符号「11101101000」に変換することにより、ビーコン信号BSを生成すればよい。
Figure 0006262397
また、例えば検出パターンc1、終了パターンSTP、制御情報c2がビット列対応シンボル「0000」〜「1111」及びビット列非対応シンボル「P」「M」の組み合わせによって構成され、かつ、拡散符号保持部64から供給される拡散符号が「00010010111」である場合、直接拡散部63は、表2に示すように、ビット列非対応シンボル「P」を「00010010111」の先頭に「1」を付けてなる符号列に変換し、ビット列非対応シンボル「M」を「00010010111」の反転符号「11101101000」の先頭に「0」を付けてなる符号列に変換し、ビット列対応シンボル「0000」〜「0100」をそれぞれ「00010010111」を所定のシフト量で巡回シフトしてなる符号の先頭に「1」を付けてなる符号列に変換し、ビット列対応シンボル「1000」〜「1100」をそれぞれ「00010010111」の反転符号「11101101000」を所定のシフト量で巡回シフトしてなる符号の先頭に「0」を付けてなる符号列に変換することにより、ビーコン信号BSを生成すればよい。
Figure 0006262397
なお、直接拡散部63により生成されたビーコン信号BSは、検出パターンc1、終了パターンSTP、制御情報c2をこの順で含む信号となる。
送信ガード部65は、ロジック部70から供給される制御信号ctrl_t4に基づき、ビーコン信号BSの送信期間(図2に示した時間スロットs0)の最後に、送信動作と受信動作を切り替えるために送信と受信の両方を行わない期間であるガード期間を挿入する機能部である。図2では、ビーコン信号BSの終端と時間スロットs0の終端との間にある空白部分が、このガード期間に当たる。
選択部40は、ロジック部70の制御に基づいて、センサ30から信号を送信する送信期間と、センサ30により信号を受信する受信期間とを切り替えるスイッチである。具体的に説明すると、選択部40は、スイッチ44x,44yと、導体選択回路41x,41yとを含んで構成される。スイッチ44xは、ロジック部70から供給される制御信号sTRxに基づき、送信期間には、送信部60の出力端を導体選択回路41xの入力端に接続し、受信期間には、導体選択回路41xの出力端を受信部50の入力端に接続するよう動作する。スイッチ44yは、ロジック部70から供給される制御信号sTRyに基づき、送信期間には、送信部60の出力端を導体選択回路41yの入力端に接続し、受信期間には、導体選択回路41yの出力端を受信部50の入力端に接続するよう動作する。導体選択回路41xは、ロジック部70から供給される制御信号selXに基づき、複数の線状電極30Xのうちの1つを選択し、選択したものをスイッチ44xに接続するよう動作する。導体選択回路41yは、ロジック部70から供給される制御信号selYに基づき、複数の線状電極30Yのうちの1つを選択し、選択したものをスイッチ44yに接続するよう動作する。
受信部50は、ロジック部70の制御信号ctrl_rに基づいて、スタイラス100が送信するダウンリンク信号DSを受信する回路である。具体的には、増幅回路51、検波回路52、及び、アナログデジタル(AD)変換器53を含み構成される。
増幅回路51は、選択部40から供給されるダウンリンク信号DSを増幅して出力する。検波回路52は、増幅回路51の出力信号のレベルに対応した電圧を生成する回路である。AD変換器53は、検波回路49から出力される電圧を所定時間間隔でサンプリングすることによって、デジタルデータを生成する回路である。AD変換器53が出力するデジタルデータはMCU80に供給される。
MCU80は、内部にROMおよびRAMを有し、所定のプログラムに基づき動作するマイクロプロセッサである。ロジック部70は、MCU80の制御に基づき、上述した各制御信号を出力する。MCU80はまた、AD変換器53から供給されるデジタルデータに基づいてスタイラス100の位置を示す座標データ(X,Y)等を導出し、システムコントローラ32に対して出力する役割を担う。
ここで、システムコントローラ32において動作するいくつかの描画アルゴリズムやシグネチャ検証アルゴリズムは、センサコントローラ31から供給される位置情報(X,Y)や筆圧値TiP等のデータDが、時間軸上で等間隔に取得されたものであるという前提に立って実装されている。したがって、非インタラクティブデータDINFが時々送出されることにより、本来はインタラクティブデータDFが送出されるべきであった時間スロットにおいてインタラクティブデータDFが送信できなくなる(すなわち、データDが「どもる(stutter)」)場合があるとすると、上記の描画アルゴリズムやシグネチャ検証アルゴリズムが正常に動作しなくなるおそれがある。そこで、非インタラクティブデータDINFの送信に使用する時間スロットは、インタラクティブデータDFの通信の等間隔性を損なわないように選択される。この点の詳細については、図18及び図19を参照しながら後述する。
また、前述した通り、機能情報CPは、センサコントローラ31のセンシング範囲SRの外にスタイラス100が存在する間に変化する可能性がある。一方で、センサコントローラ31のホストであるシステムコントローラ32側で実行されるインキング処理(座標データのシーケンスに対して、色情報や線幅等の情報を与えるための処理)には、機能情報CP(特に、図8に示す色Col、線幅やブラシのタイプを決めるスタイルStylなど)がセンサコントローラ31に既知となっていることが必要である。同様に、MCU80がスタイラス100の位置を示す座標データ(X,Y)等を導出する際には、機能情報CPに含まれる芯体種別IDがセンサコントローラ31に既知となっていることが必要である。そこで、機能情報CPは、スタイラス100がセンシング範囲SRに入る都度、必ずセンサコントローラ31に新たに既知とされる。具体的には、機能情報CPは、スタイラス100からセンサコントローラ31に対してデータD(インタラクティブデータDF)を送信するより前の段階で、ビーコン信号BSへの応答信号として、センサコントローラ31に送信される。この点の詳細については、図16及び図17を参照しながら後述する。
図8は、機能情報CPの構成を示す図である。同図に示すように、機能情報CPは、互いに異なる「情報名」が与えられた複数の個別機能情報の集合である。各個別機能情報は、機能情報CPが送信される際、「送信サイズ」に示されるビット長で、機能情報CP内に配置される。また、各個別機能情報には、機能情報CP内に配置することが必須のもの(Y)とそうでないもの(N)とがあり、機能情報に必要なビット数の典型例を示すためにその別(Y)と(N)が例示されている。
機能情報CPを構成する個別機能情報として具体的には、同図に示すように、ベンダ識別子VID、シリアル番号SN、色Col、スタイルStyl、テイルスイッチ103の状態、バージョンVer、芯体種別ID、データフォーマットDFmtが含まれる。
ベンダ識別子VIDは、スタイラス100のベンダを示す8ビットの情報である。シリアル番号SNは、各ベンダが独自に付与するベンダごとにユニークな56ビットの情報である。シリアル番号SNにベンダ識別子VIDを付加することで、64ビットのユニークなユーザ識別子UID(スタイラス100の固有ID)が生成される。
色Colは、CSS(Cascading Style Sheets)内で使用可能な140の色を8ビットで表現する情報であり、テイルスイッチ103の操作により変更される。
スタイルStylは、スタイラス100のペン先が例えばブラシ又はボールペンのいずれかであるかを特定することにより、インキング処理の効果を決定する3ビットの情報である。
テイルスイッチ103の状態は、テイルスイッチ103のONOFFの操作状態を示す情報である。機能情報CPを構成する個別機能情報の1つであるが、他の個別機能情報の変更に反映されることになるため、それ自体をセンサコントローラ31に通知する必要はない。したがって、テイルスイッチ103の状態の送信サイズは、N/A(Not Applicable)となる。
バージョンVerは、スタイラス100が使用する通信プロトコルのバージョンを示す4ビットの情報である。
芯体種別IDは、スタイラス100に装着されている芯体121の種別を示す情報であり、図5及び図6を参照しながら説明したように、図4に示した機能情報更新部111により取得される。センサコントローラ31は、芯体種別IDを参照することにより、スタイラス100が信号送信のために使用する電極102が芯体121の内外いずれにあるか、また、そのような電極102の個数及び配置といった電極102に関する情報を取得する。なお、芯体種別IDは上述したスタイラス100の固有IDの一部であるとしてもよい。
データフォーマットDFmtは、データD(インタラクティブデータDF等)の送信に用いられるデータ信号のフォーマットを識別する10ビット〜44ビットの情報である。データフォーマットDFmtの詳細については、図9を参照しながら後述する。
このように、機能情報CPは各種の個別機能情報を含むが、そのうち機能情報CPへの配置が例えば必須(Y)とした情報(ユーザ識別子UID及びデータフォーマットDFmt)だけでも、70ビットを超える大きな送信サイズを有している。したがって、上述したように1つの時間スロットで送信可能なビット数が16ビットである場合、1つの時間スロットで機能情報CPの全体の送信を完了することはできない。
図9は、図8に示したデータフォーマットDFmtの内容を示す図である。同図に示すように、データフォーマットDFmtは、互いに異なる「名称」が与えられた複数の個別フォーマットの集合である。各個別フォーマットは、機能情報CPが送信される際、「送信サイズ」に示されるビット長で、データフォーマットDFmt内に配置される。
データフォーマットDFmtを構成する個別フォーマットとして具体的には、筆圧段階指示数PL、バレルボタン数BBN、接線方向筆圧フラグTaPf、オリエンテーションコードORC、カスタムデータフラグCDf、オリエンテーション分解能ORR、カスタム筆圧サイズCPS、カスタムボタンサイズCBS、カスタムオリエンテーションサイズCOS、カスタムデータサイズCDSが含まれる。図9の「定義」欄には、それぞれの意味を記述している。これらの内容は、スタイラス100が取得可能な1以上の個別インタラクティブデータ(後述)の種別と、それぞれの送信サイズとを示しており、後述する図14に示すステップS1,S3において、スタイラス100が取得可能な1以上の個別インタラクティブデータに基づいて決定される。以下、それぞれについて詳しく説明する。
筆圧段階指示数PLは、インタラクティブデータDFの一つである筆圧値TiP(図12参照)の段階数(解像度)を示す3ビットの情報であり、その値が0〜6である場合、段階数が256×2PLであることを示す。なお、PL=0である場合はPL=−8である場合であると言うこともできるが、その場合の筆圧段階数は256×2=256となる。PL=7である場合には、別途カスタム筆圧サイズCPSとして筆圧段階数が規定される。
バレルボタン数BBNは、スタイラス100が有するバレルボタン104(図3参照)の数を示す2ビットの情報であり、その値が0〜2である場合、BBN個のバレルボタン104を有していることを示す。スタイラス100がバレルボタン104以外の操作部を有する場合、バレルボタン数BBNにはその数も加算される。BBN=3である場合には、別途カスタムボタンサイズCBSとしてバレルボタン104を含む操作部の数が規定される。このバレルボタン数BBNは、第1のバレルボタン乃至第BBNのバレルボタンの各々の有無を示すビットとしてもよい。例えば2ビットであれば、第1のバレルボタン及び第2のバレルボタンを備えているかをそれぞれが示す2つのビットとしても良い。
接線方向筆圧フラグTaPfは、スタイラス100が接線方向筆圧値(タッチ面3aの接線方向に加わる圧力)の取得に対応しているか否かを示す1ビットの情報であり、0である場合に未対応、1である場合に対応を示す。スタイラス100が接線方向筆圧に対応している場合のその段階数としては、筆圧段階指示数PLと同じ段階数が用いられる。
オリエンテーションコードORCは、インタラクティブデータDFの一つであるオリエンテーションOR(図12参照)のフォーマットを定める3ビットの情報である。オリエンテーションコードORCの詳細は、後に図10を参照しながら詳しく説明するが、ORC=7である場合には、オリエンテーションORのデータサイズのみがカスタムオリエンテーションサイズCOSとして規定される。
カスタムデータフラグCDfは、スタイラス100がカスタムデータCD(インタラクティブデータDFの一つとして規格化されていないベンダ独自のデータ。図12参照)の取得を行うか否かを示す1ビットの情報であり、0である場合にカスタムデータCDがないことを示し、1である場合にカスタムデータCDがあることを示す。
オリエンテーション分解能ORRは、オリエンテーションOR(図12参照)の分解能を示す0〜2ビットの情報であり、オリエンテーションコードORCの値が0より大きい場合、すなわちスタイラス100がオリエンテーションORの取得に対応している場合にのみ、データフォーマットDFmt内に配置される。オリエンテーション分解能ORRにより示されるオリエンテーションORの分解能は(8+ORR)ビットとなる。
カスタム筆圧サイズCPSは、筆圧段階数のカスタム値を示す8ビットの情報であり、筆圧段階指示数PLが7である場合にのみデータフォーマットDFmt内に配置される。8ビットであることから、カスタム筆圧サイズCPSによって表せる筆圧段階数は最大で256段階となる。
カスタムボタンサイズCBSは、バレルボタン104を含む操作部の数を示す8ビットの情報であり、バレルボタン数BBNが3である場合にのみデータフォーマットDFmt内に配置される。8ビットであることから、カスタムボタンサイズCBSによって表せる操作部の数は最大で256個となる。
カスタムオリエンテーションサイズCOSは、オリエンテーションORのバイト数を示す8ビットの情報であり、オリエンテーションコードORCが7である場合にのみデータフォーマットDFmt内に配置される。8ビットであることから、カスタムオリエンテーションサイズCOSによって表せるオリエンテーションORのバイト数は最大で256バイトとなる。ただし、図12を参照して後述するように、実際のオリエンテーションORのサイズの最大値は72ビットである。
カスタムデータサイズCDSは、カスタムデータCDのバイト数を示す8ビットの情報であり、カスタムデータフラグCDfが1である場合にのみデータフォーマットDFmt内に配置される。8ビットであることから、カスタムデータサイズCDSによって表せるカスタムデータCDのバイト数は最大で256バイトとなる。ただし、図12を参照して後述するように、実際のカスタムデータCDのサイズの最大値は256ビットである。
ここまでで説明したように、システム1においては、カスタム筆圧サイズCPS、カスタムボタンサイズCBS、カスタムオリエンテーションサイズCOS、及びカスタムデータサイズCDSのそれぞれによって示されるカスタム値のデータサイズを、いずれも、データフォーマットDFmt内に配置される場合に8ビット、配置されない場合に0ビットとなるようにしている。これは、データフォーマットDFmtを可変長としつつも終了位置を示すビットを不要とし、それによってデータフォーマットDFmtの構成を簡易化するための構成である。
図10は、図9に示したオリエンテーションコードORCの定義を示す図(オリエンテーションコードテーブルOCT)である。同図中、左端の「ORC」はオリエンテーションコードORCの値を示し、右端の「データサイズ」は、オリエンテーションORのデータサイズを、占用時間スロット数(オリエンテーションORを1回送信するために必要となる時間スロット数)により表したものである。
オリエンテーションコードORCの値が「0」であることは、スタイラス100がオリエンテーションORの取得を行わない(又は取得機能を有しない)ことを示す。後述する図21に示すように、インタラクティブデータDF内にオリエンテーションORが配置される場合、インタラクティブデータDFを送信するために追加の時間スロットを用意する必要があるが、オリエンテーションコードORCの値が「0」である場合には、このような追加の時間スロットの用意は不要となる。
オリエンテーションコードORCの値が「1」であることは、スタイラス100が、2方向(Xチルト,Yチルト)の値で2次元(2D)の傾きを示すオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために2つの時間スロットの利用を要することを示している。後述する図21の例では、オリエンテーションORの送信用に連続した2つの時間スロットを割り当てているが、2つの時間スロットは連続していても連続していなくても良い。
オリエンテーションコードORCの値が「2」であることは、スタイラス100が、2方向(Xチルト,Yチルト)の値によって表される2次元(2D)の傾きと、ペン軸まわりの回転量であるツイストとからなる3次元(3D)の値を示すオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために、連続あるいは非連続の3つの時間スロットの利用を要することを示している。
オリエンテーションコードORCの値が「3」であることは、スタイラス100が、2方向(高度,方位角)の値で2次元(2D)の傾きを示すオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために2つの時間スロットの利用を要することを示している。
オリエンテーションコードORCの値が「4」であることは、スタイラス100が、2方向(高度,方位角)の値によって表される2次元(2D)の傾きと、ペン軸まわりの回転量であるツイストとからなる3次元(3D)の値を示すオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために3つの時間スロットの利用を要することを示している。
オリエンテーションコードORCの値が「5」であることは、スタイラス100が、加速度計及びジャイロを含む6軸慣性測定装置(IMU)による測量値であるオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために3つの時間スロットの利用を要することを示している。
オリエンテーションコードORCの値が「6」であることは、スタイラス100が、9軸慣性測定装置(IMU)による測量値であるオリエンテーションORを取得可能であり、そのオリエンテーションORを1回送信するために3つ以上の時間スロットの利用を要することを示している。
オリエンテーションコードORCの値が「7」であることは、上述したように、図9に示したカスタムオリエンテーションサイズCOSによってオリエンテーションORのバイト数が表されることを示している。
このように、オリエンテーションコードORCを使うことで、スタイラス100の機能の有無、あるいは、慣性測定装置(IMU)のタイプに応じて様々な情報となり得るオリエンテーションORの種別を、3ビットの短い情報によりセンサコントローラ31に通知することが可能になる。また、オリエンテーションORの種別によって連続あるいは非連続の異なる数の時間スロットを使用することに関しても、必要な時間スロット数をセンサコントローラ31に通知することが可能になる。
図11は、図8に示したデータフォーマットDFmtの記述例を示す図である。同図(a)に示す記述例1及び同図(b)に示す記述例2は、データフォーマットDFmtがカスタム値を含まず、9ビットで示される例を示している。記述例1では、オリエンテーションコードORCの値が0(0b000)、すなわちスタイラス100がオリエンテーションORを取得しないため、オリエンテーションOR用に追加の時間スロットを用意することは不要となる。一方、記述例2では、オリエンテーションコードORCの値が6(0b110)であるため、オリエンテーションOR用に3つ以上の時間スロットを追加で用意することが必要となる。また、同図(c)に示す記述例3は、筆圧段階指示数PLがカスタマイズされ、カスタム筆圧サイズCPSによって表される例を示している。この場合、8ビットのカスタム筆圧サイズCPSがデータフォーマットDFmtの末尾に記述され、データフォーマットDFmtのビット数が17ビットとなる。
以上説明したように、本実施の形態による機能情報CPに含まれるデータフォーマットDFmtは、10ビット〜44ビットのビット列によって表される。そして、このデータフォーマットDFmtがスタイラス100からセンサコントローラ31に通知されることにより、インタラクティブデータDFの要素、サイズ、及びオプションデータの有無が、インタラクティブデータDFが送出される前の段階でセンサコントローラ31に既知とされる。インタラクティブデータDFは、その後にスタイラス100から送信される。
図12は、インタラクティブデータDFの構成を示す図である。同図に示すように、インタラクティブデータDFは、互いに異なる「名称」が与えられた複数の個別インタラクティブデータの集合である。各個別インタラクティブデータは、インタラクティブデータDFが送信される際、「送信サイズ」に示されるビット長で、インタラクティブデータDF内に配置される。また、各個別インタラクティブデータには、インタラクティブデータDF内に配置することが必須のもの(Y)とそうでないもの(N)とがあり、図では、典型的に必要となる合計ビット数をカウントするためこの区別の例を示している。また、同図は個別インタラクティブデータの送信順も示しており、スタイラス100は、同図の上側にあるものから順に送信するよう構成される。
インタラクティブデータDFを構成する個別インタラクティブデータとして具体的には、筆圧値TiP、接線方向筆圧値TaP、バレルボタン状態BB、反転Inv、オリエンテーションOR、カスタムデータCDが含まれる。
筆圧値TiPは、スタイラス100の先端に付加された筆圧値を示す8〜256ビットの情報であって、図3に示した操作状態検出部105によって検出される。筆圧値TiPは、インタラクティブデータDF内に必ず配置される(Y)。筆圧値TiPのビット数は、図9に示したデータフォーマットDFmt内の筆圧段階指示数PL又はカスタム筆圧サイズCPSから導かれる。例えば、筆圧段階指示数PLが0(又は−8)である場合、筆圧段階数が256となることから、筆圧値TiPのビット数はlog256=8となる。典型的な例では、筆圧値TiPのビット数は8(256段階)〜11(2048段階)である。
接線方向筆圧値TaPは、接線方向の筆圧値を示す0〜256ビットの情報であって、図3に示した操作状態検出部105によって検出される。接線方向筆圧値TaPはオプショナルのデータであり、図9に示した接線方向筆圧フラグTaPfが1である場合にのみ、インタラクティブデータDF内に配置される(N)。インタラクティブデータDF内に配置される場合の接線方向筆圧値TaPのビット数は、筆圧値TiPと同じ値となる。典型的な例では、接線方向筆圧値TaPは0ビットの情報であり、インタラクティブデータDF内に配置されない。
バレルボタン状態BBは、図3に示したバレルボタン104の押下状態を示す2〜256ビットの情報である。バレルボタン状態BBは、インタラクティブデータDF内に必ず配置される(Y)。バレルボタン状態BBのビット数は、図9に示したデータフォーマットDFmt内のバレルボタン数BBN又はカスタムボタンサイズCBSによって示されるバレルボタン104の数に等しい値となる。例えば、バレルボタン数BBNが1である場合、スタイラス100が有するバレルボタン104の数が2個となることから、バレルボタン状態BBのビット数は2となる。典型的な例では、バレルボタン状態BBのビット数は2である。
反転Invは、1ビットの情報であって、インタラクティブデータDF内に配置される(Y)。
オリエンテーションORは、スタイラス100の向きを示す0〜72ビットのデータであって、図3に示した操作状態検出部105によって検出される。オリエンテーションORはオプショナルのデータであり、図9に示したオリエンテーションコードORCが0でない場合(図10参照)にのみ、インタラクティブデータDF内に配置される(N)。オリエンテーションORの具体的な意味は、図10を参照して説明したように、オリエンテーションコードORCによって表される。また、オリエンテーションORのサイズは、図10に示したデータサイズ(カスタムオリエンテーションサイズCOSによって指定する場合を含む)によって示される。例えば、2次元又は3次元の値を表すオリエンテーションORは、図10に示したオリエンテーションコードテーブルOCTの規定に従って、2つの時間スロット又は3つの時間スロットを使って送信される(図21参照)。
カスタムデータCDは、スタイラス100のベンダが独自に規定する0〜256ビットの情報である。カスタムデータCDはオプショナルのデータであり、図9に示したカスタムデータフラグCDfが1である場合にのみ、インタラクティブデータDF内に配置される(N)。カスタムデータCDのビット数は、図9に示したカスタムデータサイズCDSによって表される。例えば、カスタムデータサイズCDSが1である場合、カスタムデータCDのバイト数が1となることから、カスタムデータCDのビット数は8となる。
インタラクティブデータDFのビット数は、最小の例では、8ビットの接線方向筆圧値TaP、2ビットのバレルボタン状態BB、及び1ビットの反転Invの合計で11ビット(4ビットの誤り検出符号を加えると15ビット)となる。また、典型的な例では、11ビットの接線方向筆圧値TaP、2ビットのバレルボタン状態BB、及び1ビットの反転Invの合計で14ビット(4ビットの誤り検出符号を加えると18ビット)となる。上述したように、1つの時間スロットで16ビット分のデータを送信可能であることから、オリエンテーションORやカスタムデータCDを含まないインタラクティブデータDFの送信は、1つの時間スロットで完了することができる(図18及び図19参照)。一方、オリエンテーションORやカスタムデータCDを含むインタラクティブデータDFの送信については、通常16ビットを超えることになるので、1つの時間スロットで完了することはできず、複数の時間スロットを使用することになる(図20及び図21参照)。
図13は、非インタラクティブデータDINFの構成を示す図である。同図に示すように、非インタラクティブデータDINFは、互いに異なる「名称」が与えられた複数の個別非インタラクティブデータの集合である。各個別非インタラクティブデータは、非インタラクティブデータDINFが送信される際、「送信サイズ」に示されるビット長で、非インタラクティブデータDINF内に配置される。
非インタラクティブデータDINFを構成する個別非インタラクティブデータの例として、図13にはバッテリーレベルBLのみを示している。バッテリーレベルBLは、図3に示したバッテリー101の残量のレベルを示す4ビットの情報である。他の種類の個別非インタラクティブデータを非インタラクティブデータDINFに含めてもよいのは勿論である。
非インタラクティブデータDINFは、上述したように、複数のフレームFごと(例えば、数百フレームごと)に1回送信される(図18〜図21参照)。
次に、スタイラス100及びセンサコントローラ31の動作について、図14〜図21を参照しながら詳しく説明する。
まず図14は、スタイラス100の動作フローを示す図である。スタイラス100は、電源がオンされた後、センシング範囲SRの外に存在する間に、次のA1で説明する動作を行う。
<A1.機能情報CPの更新処理(センシング範囲SRの外での動作)>
スタイラス100は、電源がオンされた後、データフォーマットDFmtを含む機能情報CPを一旦決定する(ステップS1)。このときスタイラス100は、図3に示した端子D1,D0に供給される電位レベルから、芯体種別IDを取得する。また、自身が取得可能な1以上のインタラクティブデータDFに基づいて、データフォーマットDFmtの具体的な内容を決定する。すなわち、上述したように、例えばスタイラス100が接線方向筆圧の取得に対応していれば、データフォーマットDFmt内の接線方向筆圧フラグTaPfが1になり、対応していなければ、データフォーマットDFmt内の接線方向筆圧フラグTaPfが0になる。その後、スタイラス100はユーザによる機能情報CPの変更操作(具体的には、芯体121の交換やテイルスイッチ103の操作)の有無を判定する(ステップS2)。そして、変更操作がなされた場合には、操作の内容に応じて、ステップS1で決定した機能情報CPの変更を行う(ステップS3)。
ステップS2,S3の処理の後、スタイラス100は、ビーコン信号BSを検出したか否かを判定する(ステップS4)。このステップS4は、図1を参照して説明したペンダウン操作C1が行われたか否かを判定するためのものであり、本実施の形態によるスタイラス100は、このビーコン信号BSの検出をトリガ(ペンダウン操作が発生した場合に生ずる所定のトリガ)として芯体種別IDを含む機能情報CPの送信を行う(後述するステップS6〜S8)。ステップS4で検出していないと判定した場合(すなわち、スタイラス100がセンサコントローラ31のセンシング範囲SRの外にいる場合)、スタイラス100は、ステップS2に戻ってここまでの処理を繰り返す。一方、ステップS4で検出したと判定した場合、スタイラス100は次のA2で説明する動作を行う。
<A2.スタイラス100がセンシング範囲SR内に入った後の動作>
スタイラス100は、ユーザがペンダウン操作C1をしたことによってセンサコントローラ31のセンシング範囲SR内に入った後(S4の肯定判定)、検出したビーコン信号BSを基準としてセンサコントローラ31が規定するフレームFに同期し、その時間スロットs0〜s15を決定する(ステップS5)。
<A2−1.機能情報CPの通信>
続いてスタイラス100は、機能情報CPをセンサコントローラ31に既知とする(センサコントローラ31との間で共有する)ための処理を行う(ステップS6〜S8)。ここで、上述した通り、システム1では、1つの時間スロットで送信できるビット数が例えば16ビットに制限されている。一方で、機能情報CPは、上記したように70ビットを超える情報であるので、機能情報CPの全部を1つの時間スロットで送ることはできず、全部を送る場合には複数の時間スロットを使用して分割送信する必要が生ずる。しかしながら、このような分割送信を1回目のみならず2回目、3回目と行っていると、スタイラス100がタッチ面3a(図1参照)にタッチするまでに機能情報CPの送信が完了せず、その結果、スタイラス100がタッチ面3aにタッチしているにも関わらず、線が描かれないというユーザにとって不快な状況が生ずるおそれがある。そこで本実施の形態では、以下で説明するように、一度機能情報CPの全部を送ったセンサコントローラ31に対しては、機能情報CPそのものではなく、機能情報CPに対応する情報(具体的には機能情報CPのハッシュ値)を送るようにしている。以下、具体的に説明する。
スタイラス100はまず、ビーコン信号BSを送出するセンサコントローラ31と既にペアリング済みか否かを判定する(ステップS6)。この判定は、例えばスタイラス100内部のレジスタの値を判定することで行うことができる。なお、ビーコン信号BSにはセンサコントローラ31を特定する情報は含まれていないので、ここでの判定は、特定のセンサコントローラ31ではなく、いずれかのセンサコントローラ31とペアリング済みか否かについての判定となる。
ステップS6の判定の結果、センサコントローラ31とペアリング済みでないと判定した場合(S6の否定判定)、スタイラス100は、現時点の機能情報CP(図8に示した70ビットを超える情報。データフォーマットDFmtと、シリアル番号SN及びベンダ識別子VIDからなるユーザ識別子UIDとを含む)を、複数の時間スロットに分けて繰り返し送出する(ステップS7)。
図16は、機能情報CPに対する時間スロットの割り当て例を示す図である。同図の例によるスタイラス100は、機能情報CPを複数の部分機能情報CP1,CP2,・・・に分割し、それぞれをフレームFn,Fn+1,・・・の時間スロットs1で送信している。このように機能情報CPの送信には複数時間スロット分(この例では複数フレーム分)の時間がかかるが、初めに1回は必要な処理である。なお、図16にも示すように、機能情報CPは、時間スロットs1を用いて送信する必要がある。これは、機能情報CPあるいは短縮情報(ハッシュ値CP_Hash)を、コマンドが含まれるビーコン信号BSに対する応答信号が送信されるべき時間に送信することで、センサコントローラ31が、ビーコン信号BSを送信した後の時間スロットs1で受信される信号だけを監視することでビーコン信号BSに対する応答信号の有無(スタイラス100の有無)を認識することができ、かつ、時間スロットs1に後続する時間スロットs2〜s15をデータDの受信用に確保することができるようにするためである。
他方、ステップS6の判定の結果、センサコントローラ31とペアリング済みであると判定した場合(S6の肯定判定)には、スタイラス100は、ステップS7でデータフォーマットDFmtを含む機能情報CPの全部を送信するのではなく、機能情報CPを特定するための情報であって1つの時間スロットで送出可能なサイズの情報(短縮情報)のみを、1つの時間スロットs1を使用して送信する(ステップS8)。この情報は、例えば、機能情報CPの20ビット以下(例えば16ビット)のハッシュ値CP_Hash等、所定の確率で、対応する機能情報CPが真性であるか否かを識別可能な情報とすることが好適である。以下の説明では、短縮情報としてハッシュ値CP_Hashを用いることを前提とする。ステップS8でハッシュ値CP_Hashを送信する場合、スタイラス100は、送信に先立ち、機能情報CPからハッシュ値CP_Hashを導出する処理を行う。
図17は、機能情報CPのハッシュ値CP_Hashに対する時間スロットの割り当て例を示す図である。同図に示すように、ハッシュ値CP_Hashの送信はフレームFnの時間スロットs1のみで完了し、次のフレームFn+1からは、時間スロットs1においてインタラクティブデータDFを送信することが可能になる。
このように、本実施の形態によるシステム1によれば、スタイラス100は、機能情報CPが一旦センサコントローラ31に既知となった後(センサコントローラ31とペアリング済みになった後)には、センシング範囲SRに入る都度、1度送信済みの機能情報CPの送信に代えて短縮情報(具体的にはハッシュ値CP_Hash)の送信を行うことによって、機能情報CP(データフォーマットDFmtを含む)をセンサコントローラ31に通知することが可能になる。センサコントローラ31としては、1つの時間スロットで短縮情報を受信するだけで、実用上問題のおこらない確率で、接近中のスタイラス100の機能情報CPを特定することが可能になる。
なお、本実施の形態では、スタイラス100が送信した機能情報CPをセンサコントローラ31が無条件で受け入れるものとして説明するが、センサコントローラ31は、自身のリソースに応じて機能情報CP内に規定される情報の一部又は全部を受け入れないと決定し、決定の内容をスタイラス100に通知することとしてもよい。この場合、スタイラス100は、センサコントローラ31が受け入れない情報を送信しない。この点についての詳細は、後に図22を参照しながら説明する。
<A2−2.データDの通信>
スタイラス100は、機能情報CP又はハッシュ値CP_Hashの送信が完了した後、データDを含むデータ信号の送信を行う(ステップS10〜S15)。具体的には、まずビーコン信号BSの検出を行う(ステップS10)。
ステップS10でビーコンBSを検出した場合(ステップS10の肯定判定)、スタイラス100は、連続不検出カウンタを0にリセットする(ステップS11)。そして、機能情報CPのデータフォーマットDFmtに規定されるフォーマット(典型的には11〜14ビット)でインタラクティブデータDFを含むデータ信号を、少なくとも1つのフレームFに1回送出する(ステップS12)。
なお、本実施の形態ではデータDの送信に用いる時間スロットをスタイラス100が決めるものとして説明するが、センサコントローラ31がデータDの送信に用いる時間スロットを決定し、決定の内容をスタイラス100に通知することとしてもよい。この点についての詳細も、後に図22を参照しながら説明する。
図18は、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当て例を示す図である。同図の例では、14ビットの典型的なサイズを有するインタラクティブデータDFが、1つのフレームFあたり4つの時間スロットs2,s6,s10,s14で送信されている(データ信号DF1,DF2,DF3,DF4)。これら4つの時間スロットs2,s6,s10,s14においては、1つずつインタラクティブデータDFが送信される。この例による時間スロットの割り当てによれば、図18に示すように、個々のフレームF内は勿論、フレームFを跨る場合にも、インタラクティブデータDFの送信に用いる時間スロット間のインターバルが維持される(フレームFn+1において最後に送信されるデータ信号DF4(時間スロットs14)と、次のフレームFn+2において最初に送信されるデータ信号DF5(時間スロットs2)との間隔が、個々のフレームF内における間隔と同じ3時間スロットとなっている)。したがって、一定の周期T(=4時間スロット)で周期的に、インタラクティブデータDFを送信することが可能になる。このようなシステム1の特徴は、インタラクティブデータDFが等間隔で取得されることを必要とするシステムコントローラ32のアプリケーションに好適である。
なお、図18に示す周期Tの4時間スロットという値は、時間スロットs0,s1(及び後述する時間スロットs15)が予約されている条件の下で(すなわち、時間スロットs0がビーコン信号BSの送信用、時間スロットs1がビーコン信号BSに対する応答信号の送信用、時間スロットs15が非インタラクティブデータDINFの送信用としてそれぞれ予約されている条件の下で)最短である。このように周期Tを最短の値に設定することで、インタラクティブデータDFの送信回数を向上することができる。センサコントローラ31にとっては、スタイラス100の座標データをより詳細に取得することも可能になる。
図19は、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当ての他の例を示す図である。同図の例では、14ビットの典型的なサイズを有するインタラクティブデータDFが、1つのフレームFあたり4つの時間スロットs3,s7,s11,s15で送信されている(データ信号DF1,DF2,DF3,DF4)。このような時間スロットの割り当てによっても、図18の例と同じ最短の周期T(=4時間スロット)で、インタラクティブデータDFを周期的に送信することが可能になる。
図14に戻り、スタイラス100は、複数フレームFに1回(数百フレームFに1回)の割合で、非インタラクティブデータDINFの送信も行う(ステップS13)。なお、上述したように、スタイラス100は、センサコントローラ31からのポーリング(送信要求)に応じて、非インタラクティブデータDINFの送信も行うこととしてもよい。この場合、センサコントローラ31からのポーリングは、ビーコン信号BS内にコマンドのひとつとして配置される。
再度図18を参照すると、この例では、非インタラクティブデータDINFが時間スロットs15で送信されている。図18の例では時間スロットs15は普段は不使用とされているが、そのような時間スロットs15を複数フレームFに一度非インタラクティブデータDINFの送出時間スロットとすることで、インタラクティブデータDFの送信周期Tに影響を及ぼさずに非インタラクティブデータDINFを送信することが可能になる。
一方、図19の例では、非インタラクティブデータDINFが時間スロットs1で送信されている。時間スロットs1は本来、上述したように、ビーコン信号BSに対する応答信号(機能情報CP又はハッシュ値CP_Hash)の送信に用いられるものであるが、時間スロットs1が実際に応答信号の送信のために利用される確率は、他の時間スロットに比して低い。時間スロットs1で非インタラクティブデータDINFを送信し、その結果、応答信号と非インタラクティブデータDINFの衝突が発生するのは、スタイラス100が複数フレームFに1度、非インタラクティブデータDINFを通信したタイミングで、偶然、新たなスタイラス100がセンシング範囲SRに入り、ビーコン信号BSへの応答信号を送信した場合に限られる。したがって、スタイラス100が時間スロットs1で非インタラクティブデータDINFを送信したとしても実用上は問題なく、また、有限の時間スロットを有効に活用することができる。加えて、非インタラクティブデータDINFを時間スロットs15で送信するのをやめ時間スロットs15を解放することで、時間スロットs3,s7,s11,s15を他のデータD(インタラクティブデータDF)の送信に用いることが可能になる。この場合、時間スロットs2,s6,s10,s14と時間スロットs3,s7,s11,s15とを互いに異なるスタイラス100に割り当てることもでき、そうすることにより、複数のスタイラス100がそれぞれ送信周期Tで(すなわち時分割多重で)、インタラクティブデータDFを送信することが可能になる。
図20は、インタラクティブデータDFがカスタムデータCDを含む場合における、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロットの割り当て例を示す図である。図20には、インタラクティブデータDFが、11ビットの筆圧値TiP、2ビットのバレルボタン状態BB、1ビットの反転Inv、及び、8ビットのカスタムデータCDを含む場合を描いている。なお、この場合、図9に示したカスタムデータフラグCDf及びカスタムデータサイズCDSの値はともに1となる。この場合のインタラクティブデータDFのサイズは1つの時間スロットで送信可能な16ビットより大きい22ビットとなるため、スタイラス100は、図20に示すように、連続した2つの時間スロットを使用してインタラクティブデータDFの送信を行う。このような時間スロットの割り当てを用いることで、インタラクティブデータDFのサイズが1つの時間スロットで送信可能なサイズより大きくても、一定の周期Tでの送信が実現される。
図21は、インタラクティブデータDFがオリエンテーションORを含む場合における、インタラクティブデータDF及び非インタラクティブデータDINFに対する時間スロット及び周波数の割り当て例を示す図である。同図の例では、2つの周波数f0,f1が利用され、周波数f0では3つの時間スロット、周波数f1では4つの時間スロットがインタラクティブデータDFの送信のために使用される。そして、オリエンテーションORは、周波数f0で2つの時間スロット、周波数f1で3つの時間スロットの合計5つの時間スロットを使用して送信される。このような時間スロット及び周波数の割り当てを用いることで、インタラクティブデータDFのサイズが7つの時間スロットで送信しなければならないほどに大きいとしても、一定の周期Tでの送信が実現される。ただし、この場合の周期Tは、図21と図18〜図20を比較すると理解されるように、図18〜図20における周期Tよりも長くなる。なお、このように周波数多重を利用できない場合には、合計7つの時間スロットを2以上のフレームFにまたがって送信するとしてもよい。
<A2−3.センシング範囲SR内から出た後のスタイラス100の動作>
図14に戻る。ステップS10でビーコン信号BSが検出されなくなった場合(ステップS10の否定判定)、スタイラス100は、連続不検出カウンタの値が所定の閾値Thより大きいか否かを判定し(ステップS14)、大きくないと判定した場合には、連続不検出カウンタの値を1インクリメントして(ステップS15)、ステップS10に戻る。一方、ステップS14で大きいと判定した場合には、図1に示したペンアップ操作C4,C5が行われ、スタイラス100がセンシング範囲SRの外に移動したということを意味するので、スタイラス100は、ステップS2、すなわちユーザによる芯体121の交換やテイルスイッチ103の操作を受け付ける状態に戻る。
次に、図15は、センサコントローラ31の動作フローを示す図である。センサコントローラ31は、電源がオンされた後、次のB1で説明する動作を開始する。
<B1.機能情報CPの受信>
センサコントローラ31は、時間スロットs0でビーコン信号BSを繰り返し送出し(ステップS20)、その都度、時間スロットs1でスタイラス100からの応答信号Ackを待機する(ステップS21)。
ステップS21で応答信号Ackであるダウンリンク信号DS(すなわち、時間スロットs1で受信されるダウンリンク信号DS)を受信した場合(S21の肯定判定)、センサコントローラ31は、受信した応答信号Ackに含まれていたデータを機能情報CPのハッシュ値CP_Hashとみなして取得する(ステップS22)。そして、後述するステップS33で過去に記憶していたハッシュ値CP_Hashの中に一致するものがあるか否かを判定し(ステップS23)、あると判定した場合には、そのハッシュ値CP_Hashに対応づけて記憶していた機能情報CPにより、現在接近中のスタイラス100の機能情報CP(データフォーマットDFmtを含む)の内容を決定する(ステップS30)。
一方、ステップS23で一致するものがないと判定した場合、センサコントローラ31は、応答信号Ackに含まれていたデータを機能情報CPの一部として蓄積する(ステップS24)。そして、ここまでの処理を繰り返した結果、機能情報CPの全部が蓄積されたか否かを判定し(ステップS25)、全部が蓄積されたと判定した場合には、蓄積された機能情報CPにより、現在接近中のスタイラス100の機能情報CP(データフォーマットDFmtを含む)の内容を決定する(ステップS30)。一方、まだ全部は蓄積されていないと判定した場合には、ステップS20に戻ってビーコン信号BSの送信を繰り返す。
ステップS30で機能情報CPの内容を決定したセンサコントローラ31は、そのハッシュ値を導出し、機能情報CPと対応づけて対応データとして記憶領域に記憶する(ステップS33)。こうして作成される対応データの記憶領域(対応データ記憶領域)は、ハッシュ値をキーとして値を関連付けて保持するいわゆるハッシュテーブルとして実装できる。
続いてセンサコントローラ31は、機能情報CPに含まれる芯体種別IDを取得する。そして、取得した芯体種別IDに基づいて、位置導出パラメータの設定を行う(ステップS34)。位置導出パラメータは、センサ30に受信されるデータ信号からスタイラス100の位置を導出するためにセンサコントローラ31が使用するパラメータであり、電極102の形状によって異なる。つまり、例えば図5(a)に示した芯体121Aの電極102と図5(b)に示した芯体121Aの電極102とでは、タッチ面3aにおけるデータ信号の広がりが異なるため、センサコントローラ31が位置を導出する際に参照すべき範囲が異なる。また、図5(c)に示した芯体121Aについては、位置導出には電極102−1から送出されるデータ信号のみが使用され、電極102−2から送出されるデータ信号はスタイラス100の傾きを検出するために使用される。したがってセンサコントローラ31は、例えばデータ信号の受信強度等から、電極102−1,102−2がそれぞれ送出したデータ信号を区別する必要がある。位置導出パラメータは、このような電極102の形状によって異なる位置導出方法を規定するもので、後述するステップS42に示すように、センサコントローラ31は、スタイラス100から受信したデータ信号を位置導出パラメータに基づいて処理することにより、スタイラス100の位置導出を行うよう構成される。
<B2.データDの受信>
次に、センサコントローラ31は、時間スロットs0においてビーコン信号BSを再度送信する(ステップS40)。そして、時間スロットs0,s1以外で何らかのデータ信号を検出したか否かを判定し(ステップS41)、検出したと判定した場合には、ステップS34で設定した位置導出パラメータに基づいてスタイラス100の位置導出を行う(ステップS42)とともに、連続不受信カウンタの値を0にリセットする(ステップS43)。その後、検出したデータ信号からインタラクティブデータDFを抽出することにより、インタラクティブデータDFを受信する(ステップS44)。また、複数フレームFに一度、検出したデータ信号から非インタラクティブデータDINFを抽出することにより、非インタラクティブデータDINFも受信する(ステップS45)。
他方、ステップS41でデータ信号を検出していないと判定した場合、連続不受信カウンタの値が所定の閾値Thより大きいか否かを判定し(ステップS46)、大きくないと判定した場合には、連続不受信カウンタの値を1インクリメントして(ステップS47)、ステップS40に戻る。一方、ステップS46で大きいと判定した場合には、スタイラス100がセンシング範囲SRの外に退出したということを意味するので、センサコントローラ31は、ステップS20に戻って処理を継続する。
以上説明したように、本実施の形態による、スタイラス100及びセンサコントローラ31を用いた方法、センサコントローラ31、及びスタイラス100によれば、スタイラス100が、ペンダウン操作C1が発生した場合に生ずる所定のトリガ、すなわちビーコン信号BSの受信に基づいて芯体種別IDを含む機能情報CPの送信を行うので、スタイラス100からセンサコントローラ31に対し、ペンダウン操作C1が行われたときのみに芯体種別IDを送信することが可能になる。したがって、スタイラス100からセンサコントローラ31に対し、芯体種別IDを効率よく送ることが可能になる。
また、一度機能情報CPをセンサコントローラ31と共有した後には、機能情報CPの全体ではなくハッシュ値CP_Hashのみを送ることによって機能情報CPをセンサコントローラ31に通知することができるので、スタイラス100がセンシング範囲SRに頻繁に出入りを繰り返す状況でも、センサコントローラ31が機能情報CPを特定するために必要な時間を短くすることが可能となる。
なお、本実施の形態において、図14のステップS8でハッシュ値CP_Hashを送信する際には、送信に先立ち機能情報CPからハッシュ値CP_Hashを導出する処理を行うと説明したが、この導出は、機能情報CPの全体に基づいて行ってもよいし、一部のみに基づいて行ってもよい。以下、機能情報CPの一部のみに基づいてハッシュ値CP_Hashを導出する処理について、詳しく説明する。
初めに、図8に示した機能情報CPには、ユーザ操作又はセンサコントローラ31からの設定によって変更されない第1の機能情報と、ユーザ操作又はセンサコントローラ31からの設定によって変更可能な第2の機能情報とが含まれる。第1の機能情報は、例えばスタイラス100が有する筆圧センサや角度センサなどのセンサの種別を示す情報であり、具体的には、スタイラス100がバレルボタン104を有しているか否かを示す情報(図9に示したバレルボタン数BBNより示される情報。BBN=0はスタイラス100がバレルボタン104を有していないことを示し、BBN≠0はスタイラス100がバレルボタン104を有していることを示す。)、スタイラス100が傾き検出センサ又はツイスト検出センサを有しているか否かを示す情報(図10に示したオリエンテーションコードORCにより示される情報。例えばORC=1はスタイラス100がツイスト検出センサを有していないことを示し、ORC=2はスタイラス100がツイスト検出センサを有していることを示す。)、及び、スタイラス100がその他のセンサを有しているか否かを示す情報(図9に示したカスタムデータフラグCDfにより示される情報)などである。スタイラス100が、当該スタイラス100によって描かれる線の色を特定するか否かを示す情報(図8に示した色Colによって示される情報)も、第1の機能情報に含まれる。図8等には示していないが、機能情報CPには1以上のバレルボタン104それぞれに付与された機能を特定する情報を含むことができ、その場合には、この情報も第1の情報のひとつとなる。この情報には、例えば、2つのバレルボタン104がある場合にプライマリとセカンダリを区別するための情報や、そのバレルボタン104が押されている間、スタイルStylが消しゴムになることを示す情報などが含まれる。
一方、第2の機能情報は、芯体種別IDの他、例えばスタイラス100によって描かれる線の色、幅、及び、鉛筆やボールペンなどブラシのタイプを特定する情報などである。これらは、図8に示した色Col及びスタイルStylによって示される。ユーザ識別子(UID)は、色、幅などインキングの情報を特定することができる情報であるため、ユーザ識別子(UID)についても第2の機能情報に含めるとしてもよい。
スタイラス100がハッシュ値CP_Hashを導出する際には、機能情報CPのうち第2の機能情報にかかる部分のみに基づいて、ハッシュ値CP_Hashを導出することとしてもよい。こうすることで、異なる機能情報CPに対して同じハッシュ値CP_Hashが導出されてしまう可能性(ハッシュ値が衝突する可能性)を減らすことができる。例えば、上記のように第2の機能情報にかかる部分のみに基づいてハッシュ値CP_Hashを導出するようにすることにより、機能情報CPの全体に基づいてハッシュ値CP_Hashを導出する場合に比べ、ハッシュ値の導出のもとになる情報のサイズを小さくすることができる。ハッシュ値の衝突の可能性は、ハッシュ値の導出のもとになる情報のサイズが小さいほど小さくなるので、上記のようにすることにより、ハッシュ値が衝突する可能性を減らすことが可能になる。
また、センサコントローラ31は、図15のステップS23で、受信したハッシュ値CP_Hashと一致するものが対応データ記憶領域内に記憶されていないと判定した場合に、スタイラス100に対して、機能情報CPの全体の送信要求を送信することとしてもよい。なお、この送信は、ビーコン信号BS内にコマンドのひとつとして上記送信要求を配置することによって行うことが好適である。この場合のスタイラス100は、この送信要求を受け取った場合に、図14のステップS6でペアリング済みでないと判定することとすればよい。そうすることで、スタイラス100からセンサコントローラ31に対し、機能情報CPの全体を送信することが可能になる。
また、センサコントローラ31は、上述したように、スタイラス100が送信した機能情報CPを無条件に受け入れるのではなく、自身のリソースに応じて機能情報CP内に規定される情報の一部又は全部を受け入れないと決定してもよく、また、データDの送信に用いる時間スロットを自身で決定することとしてもよい。以下、これらの点について図22を参照しながら説明する。
図22は、図15に示したセンサコントローラ31の動作フローの変形例を示す図である。同図には、図15に示したフローの一部のみを抜き出して描いている。
図22に示すように、本変形例によるセンサコントローラ31は、ステップS25ですべての機能情報CPを受信するか、若しくは、ステップS23で対応データ記憶領域から機能情報CPを取得すると、これらと、利用可能なリソースに関する情報とに基づき、データフォーマットDFmtを仮に決定する(ステップS26)。利用可能なリソースの情報とは、例えば時間スロットの空き状況である。そして、仮決定したデータフォーマットDFmtを指定するコマンドを、ビーコン信号BSの一部としてスタイラス100に通知する(ステップS27)。
その後、センサコントローラ31はスタイラス100が送信する応答信号Ackの検出を試み(ステップS28)、検出しなかった場合には、スタイラス100がセンシング範囲SRの外に退出したか、又は、仮決定したデータフォーマットDFmtを受け入れなかったということであるとして、センサコントローラ31は自身の処理を図15のステップS20に戻す。一方、ステップS28で応答信号Ackを検出した場合には、仮決定した内容により機能情報CP(データフォーマットDFmtを含む)の内容を決定する(ステップS30)。
ステップS30の後、センサコントローラ31は、決定したデータフォーマットDFmtに基づいて、オフセット情報及びインターバル情報を決定する(ステップS31)。オフセット情報は、フレームFを構成する複数の時間スロットのうち少なくとも一部のインタラクティブデータDFの送信に用いるものを示す情報であり、より具体的には、フレームFを構成する複数の時間スロットの中でインタラクティブデータDFが最初に送信される時間スロットの、フレームFの先頭からの時間的な距離を示す情報である。例えば、図18、図20、及び図21の例ではオフセット情報は2となり、図19の例ではオフセット情報は3となる。一方、インターバル情報は、インタラクティブデータDFの送信周期を示す情報である。例えば、図18乃至図20の例ではインターバル情報は4となり、図21の例ではインターバル情報は8となる。オフセット情報及びインターバル情報は、要するに、1以上の個別インタラクティブデータのうちどの個別インタラクティブデータをどのタイミングで送信するかを規定するものであり、上述したデータフォーマットDFmtとともに、データDを含むデータ信号の構成を決めるフォーマットを構成する。インターバル情報は、オフセット情報と異なり送信頻度で表わすことも可能であり、又、送信周期あるいは送信頻度を示す識別子で示すこともできる。
ステップS31でオフセット情報及びインターバル情報を決定したセンサコントローラ31は、次いで、決定したオフセット情報及びインターバル情報を指定するコマンドを、ビーコン信号BSの一部としてスタイラス100に通知する(ステップS32)。これ以降、スタイラス100は、指定されたオフセット情報及びインターバル情報により示される時間スロットを利用して、インタラクティブデータDFを送信することになる。
このように、センサコントローラ31が、スタイラス100の機能情報CPと、スタイラス100がデータDの送信に用いる時間スロットとを決定することとしてもよい。こうすることで、センサコントローラ31がスタイラス100との通信を主導することが可能になる。
次に、本発明の第2の実施の形態によるシステム1について説明する。本実施の形態によるシステム1は、機能情報CPのハッシュ値として2つのハッシュ値を用いる点で、第1の実施の形態によるシステム1と相違する。以下、第1の実施の形態と同一の構成には同一の符号を付し、以下では、第1の実施の形態との相違点に着目して説明する。
図23は、本実施の形態によるスタイラス100及びセンサコントローラ31の動作フローを示す図である。同図には、センサコントローラ31がスタイラス100から機能情報CPを受け取る処理にかかる動作フローを図示している。以下、同図を参照しながら、本実施の形態によるスタイラス100及びセンサコントローラ31の動作について説明する。
まずスタイラス100は、電源がオンされたときや、ハッシュ値に影響を及ぼす変更が機能情報CPに加えられたとき(図14のステップS2における肯定判定に相当)に、自身の機能情報CPに基づいて2つのハッシュ値#1,#2(第1及び第2のハッシュ値)を導出する(ステップS50,S51)。この2つのハッシュ値#1,#2は、例えば13ビットCRCと16ビットFNVのような互いに異なる2種類のハッシュ関数(アルゴリズム)を用いて導出してもよいし、1つのハッシュ関数により導出されたハッシュ値の上位ビット列と下位ビット列をそれぞれハッシュ#1,#2としてもよい。また、上述した第1の機能情報に基づいてハッシュ#1を導出し、第2の機能情報に基づいてハッシュ#2を導出する、といった処理も可能である。
スタイラス100がセンサコントローラ31のセンシング範囲SR(図1参照)に入り、センサコントローラ31によって送信されたビーコン信号BSを検出すると(ステップS60,S52)、スタイラス100はまず、ハッシュ値#1のみを送信する(ステップS53)。この送信は、ビーコン信号BSに対する応答信号の中にハッシュ値#1を配置することによって行う。
センサコントローラ31は、ビーコン信号BSに対する応答信号を検出すると(ステップS61)、その中からハッシュ値#1(と思われる情報)を取り出し、対応データ記憶領域に記憶しているか否かを判定する(ステップS62)。ステップS61で応答信号を検出しなかった場合には、ステップS60に戻り、次のフレームで再度ビーコン信号BSを送信する。
ステップS62で対応データ記憶領域に記憶していないと判定した場合、センサコントローラ31は、スタイラス100から機能情報CPを読み出す(ステップS63)。この読み出しは、具体的には、次のフレームで送信するビーコン信号BSの中に、機能情報CPの送信要求を示すコマンドGet(CP)を配置することによって行う。これに応じてスタイラス100が機能情報CPを送信すると(ステップS54)、センサコントローラ31は、受信した機能情報CPに基づいてハッシュ値#2を導出し、受信したハッシュ値#1及び機能情報CPと対応付けて対応データ記憶領域に記憶する(ステップS64)。なお、このステップS64では、センサコントローラ31がハッシュ値#1も新たに導出することとしてもよい。
一方、ステップS62で対応データ記憶領域に記憶していると判定した場合、センサコントローラ31は、受信したハッシュ値#1と対応付けて記憶しているハッシュ値#2を読み出し、スタイラス100に送信する(ステップS65)。この送信も、次のフレームで送信するビーコン信号BSの中に、読み出したハッシュ値#2を配置することによって行う。こうして送信されたハッシュ値#2を受信したスタイラス100は、それがステップS51で導出したものと一致するか否かを判定し(ステップS56)、一致する場合には応答信号Ackを、一致しない場合には失敗信号Failを送信する。これらの送信は、ビーコン信号BSに対する応答信号の中に応答信号Ack又は失敗信号Failを配置することによって行う。そして、失敗信号Failを送信した場合にはステップS52に戻って処理を継続し、応答信号Ackを送信した場合には、センサコントローラ31の検出処理を終了して上述したデータ信号の送信処理(図14に示したステップS10以降の処理)に移行する。センサコントローラ31は、ステップS65で送信したハッシュ値#2に対して応答信号Ackを検出したかを判定し(ステップS66)、応答信号Ackを検出した場合にはスタイラス100の検出処理を終了してデータ信号の受信処理(図15に示したステップS40以降の処理)に移行し、応答信号Ackを検出しなかった場合(又は失敗信号Failを検出した場合)には、ステップS63に戻って再度機能情報CPの読み出し処理を行う。
以上説明したように、本実施の形態によるシステム1によれば、センサコントローラ31は、受信したハッシュ値#1と対応付けて記憶しているハッシュ値#2により、自身の対応データ記憶領域に記憶している機能情報CPとスタイラス100が有している機能情報CPとの一致を再確認することができる。したがって、正しい機能情報CPによる通信をより確実に行うことが可能になる。
以上、本発明の好ましい実施の形態について説明したが、本発明はこうした実施の形態に何等限定されるものではなく、本発明が、その要旨を逸脱しない範囲において、種々なる態様で実施され得ることは勿論である。
例えば、上記各実施の形態では、同一のダウンリンク信号DSにより、スタイラス100の位置を示す座標データ(X,Y)の導出と、インタラクティブデータDF等の送信とが行われていたが、図24に示すように、これらを別々のダウンリンク信号DSにより実現することとしてもよい。すなわち、図24には、座標データの導出専用の位置信号であるダウンリンク信号DSと、インタラクティブデータDFを送信するためのダウンリンク信号DSとを時分割で送信し、センサコントローラ31は、前者のダウンリンク信号DSのみに基づいてスタイラス100の位置を示す座標データ(X,Y)を導出する例を示している。このようにしても、センサコントローラ31は、スタイラス100の位置を示す座標データ(X,Y)と、スタイラス100が送信したインタラクティブデータDFとを好適に取得することができる。
また、上記各実施の形態では、スタイラス100とセンサコントローラ31とが双方向に通信を行う例を取り上げて説明したが、本発明は、スタイラス100からセンサコントローラ31に対する一方向の通信のみを行う場合にも好適に適用可能である。以下、図面を参照しながら詳しく説明する。
図25は、本発明の変形例によるスタイラス100の動作フローを示す図である。また、図26は、本変形例によるセンサコントローラ31の動作フローを示す図である。
初めに図25を参照してスタイラス100の動作について説明すると、まずステップS1〜S3については、図14を参照して説明した動作と同じである。ステップS3の後、本変形例によるスタイラス100は、図14に示したビーコン信号BSの検出(ステップS4)ではなく、操作状態検出部105(図3参照)により検出される筆圧値が0より大きい値(所定の値)となったか否かの判定を行う(ステップS70)。ビーコン信号BSの検出を行わないのは、本変形例ではセンサコントローラ31がビーコン信号BSの送信を行わないからである。筆圧値が0より大きいということは、通常、ペンタッチ操作C2(図1参照)がなされ、現在ペンムーブ操作C3(図1参照)の最中である、ということを意味する。したがって、ステップS70では、実質的にペンタッチ操作C2の検出が行われることになる。
本変形例によるスタイラス100は、ステップS70の肯定判定(すなわち、ペンタッチ操作C2の検出)をトリガ(ペンダウン操作が発生した場合に生ずる所定のトリガ)として、芯体種別IDを含む機能情報CPに関する情報の送信を行う(ステップS71)。ここで送信する情報は、機能情報CPそのものであってもよいし、機能情報CPに変更がないことを示す情報(変更無情報)であってもよい。また、センサコントローラ31に予め機能情報CPを記憶させておくことができる場合には、上述したハッシュ値CP_Hashやユーザ識別子UIDのような、センサコントローラ31側で機能情報CPを特定できるようにするための情報により、機能情報CPに関する情報を構成することとしてもよい。その他、スタイラス100は、機能情報CPのサイズが大きいために1回で送り切ることができない場合などには、図14のステップS7と同様、複数回に分けて機能情報CPを送信することとしてもよい。
ステップS71で機能情報CPに関する情報を送信した後の処理は、図14で説明したステップS10以降の処理と基本的に同様である。ただし、本変形例では、ステップS10でのビーコン信号BSの検出に代えて、筆圧値が0であるか否かが判定される(ステップS72)。ビーコン信号BSの検出を行わないのは、ステップS70と同じ理由による。筆圧値が0であるということは、通常、ペンアップ操作C4,C5(図1参照)がなされたということを意味する。したがって、ステップS72では、実質的にペンアップ操作C4,C5の検出が行われることになる。
次に、図26を参照しながら、本変形例によるセンサコントローラ31の動作について説明する。本変形例によるセンサコントローラ31は、まずスタイラス100からの信号の検出を行う(ステップS80)。そして、その信号内に機能情報CP(の一部)が含まれているか否かを判定する(ステップS81)。機能情報CP(の一部)が含まれていた場合、信号内に含まれていたデータを機能情報CP(の一部)として蓄積する(ステップS83)。そして、ここまでの処理を繰り返した結果、機能情報CPの全部が蓄積されたか否かを判定し(ステップS84)、全部が蓄積されたと判定した場合には、ステップS83での蓄積された機能情報CPに基づき、現在接近中のスタイラス100の機能情報CP(データフォーマットDFmtを含む)の内容を決定する(ステップS85)。一方、まだ全部は蓄積されていないと判定した場合には、ステップS80に戻って信号の検出を繰り返す。
一方、ステップS81で含まれていないと判定した場合には、以前の蓄積結果に基づき、現在接近中のスタイラス100の機能情報CP(データフォーマットDFmtを含む)の内容を決定する(ステップS86)。具体的に説明すると、まずスタイラス100からの信号に上述した変更無情報が含まれていた場合には、以前に受信して蓄積した最新の機能情報CPに基づき、現在接近中のスタイラス100の機能情報CPの内容を決定する。また、センサコントローラ31がハッシュ値CP_Hashと対応付けて機能情報CPを蓄積可能に構成されている場合には、スタイラス100からの信号に含まれるハッシュ値CP_Hashに対応する機能情報CPを読み出し、読み出した機能情報CPに基づいて、現在接近中のスタイラス100の機能情報CPの内容を決定する。さらに、センサコントローラ31がユーザ識別子UIDと対応付けて機能情報CPを蓄積可能に構成されている場合には、スタイラス100からの信号に含まれるユーザ識別子UIDに対応する機能情報CPを読み出し、読み出した機能情報CPに基づいて、現在接近中のスタイラス100の機能情報CPの内容を決定する。
ステップS85又はステップS86で機能情報CPの内容を決定した後の処理は、図14で説明したステップS34以降の処理と基本的に同様である。ただし、本変形例によるセンサコントローラ31は信号の送信を行わないので、ステップS40でのビーコン信号BSの送信は行わない。また、図14のステップS33の処理、すなわち機能情報CPのハッシュ値を導出し、機能情報CPと対応づけて対応データとして記憶領域に記憶する処理も行わない。詳しく説明すると、本変形例によるセンサコントローラ31は、ハッシュ値と機能情報CPを対応付けて記憶することはあり得るものの、その記憶処理をペンダウン時に行うことはあり得ない。仮にペンダウン時に受信した機能情報CPに基づいてハッシュ値を算出し、機能情報CPと対応付けて記憶したとしても、スタイラス100ではセンサコントローラ31の状況を一切知ることができないため、ハッシュ値のみを送信して正しく機能情報CPを伝達できるか否かを判定することができない。したがって、正しく機能情報CPを伝達できることを保証するためには、結局、機能情報CPそのものを送信する他ないからである。これは、ユーザ識別子UIDと機能情報CPを対応付けて記憶する場合においても同様であり、本変形例によるセンサコントローラ31がハッシュ値又はユーザ識別子UID等と機能情報CPを対応付けて記憶するには、ペンダウン時ではなくユーザの明確な指示による制御の下で記憶処理を行う必要がある。
本変形例では、筆圧値が0より大きい値となったこと(すなわち、ペンタッチ操作C2の検出)をトリガとして機能情報CPの送信を行うようスタイラス100を構成したが、このようなトリガは、上記第1及び第2の実施の形態においても適用することができる。例えば、図14のステップS14や図23のステップS52におけるビーコン信号BSの検出有無の判定に加え、筆圧値が0より大きい値となったことの判定も行うようにスタイラス100を構成することにより、ビーコン信号BSの検出と筆圧値が0より大きい値となることとのいずれか一方が満たされた場合にスタイラス100に機能情報CPを送信させる、という構成を実現することが可能になる。
他に、上記各実施の形態では、センサコントローラ31が芯体種別IDに基づいて位置導出パラメータを設定する例について説明したが、本発明は、センサコントローラ31が位置導出パラメータの設定に加えて他の用途に芯体種別IDを利用する場合にも適用することができる。以下、図面を参照し、その一例について説明する。
図27(a)(b)はそれぞれ、本発明の変形例によるスタイラス100を示す図である。図27(a)は、硬いペン先を有する芯体121Dをスタイラス100に装着した場合を、図27(b)は、筆のような柔らかいペン先を有する芯体121Eをスタイラス100に装着した場合をそれぞれ示している。なお、図27(a)(b)では、電極102の記載は省略している。
図27(a)の例では、ユーザがペン先を通じてタッチ面3aに圧力P(あるいは力P)を与えた場合、その圧力Pがすべてダイレクトに操作状態検出部105に印加される。したがって、スタイラス100からセンサコントローラに送信される筆圧値は、タッチ面3aからペン先に与えられた圧力と同じ値Pとなる。一方、図27(b)の例では、ユーザがペン先を通じてタッチ面3aに圧力Pを与えた場合であっても、操作状態検出部105に印加される圧力は、Pより小さな値(以下、図示する例ではP/3とする)となる。これは、筆の柔軟性や筐体と芯体121Eの間に生ずる圧力(あるいは力)によって、操作状態検出部105に伝達されるべき圧力Pの一部が吸収されるからである。したがって、スタイラス100からセンサコントローラ31に送信される筆圧値は、Pではなくそれより小さい値、例えばP/3や、特殊な非線形関数となる。
このように、芯体121の種類によっては、本来の筆圧値Pよりも小さな筆圧値がセンサコントローラ31に伝達されることになる。本変形例によるセンサコントローラ31は、このように本来の筆圧値より小さな値となって伝達され得る筆圧値を本来の筆圧値(以下、「筆圧レベル」と称する)に変換する目的で、芯体種別IDを利用する。
詳しく説明すると、本変形例によるセンサコントローラ31は、芯体種別IDごとに、スタイラス100から受信される筆圧値を筆圧レベルに変換するための関数(筆圧カーブ。筆圧レベルを導出する方法)を記憶している。そして、スタイラス100から受信した芯体種別IDに基づいて筆圧カーブを選択し、選択した筆圧カーブにより、スタイラス100から受信した筆圧値を筆圧レベルに変換する。
例えば、センサコントローラ31は、図27(a)の芯体121Dについて、筆圧カーブとしてPb=Paを記憶している。ただし、Paはスタイラス100から受信される筆圧値であり、Pbは変換後の筆圧レベルである。また、センサコントローラ31は、図27(b)の芯体121Eについて、筆圧カーブとしてPb=Pa×3を記憶している。これにより、芯体121D,121Eのいずれについても、ユーザがペン先を通じてタッチ面3aに圧力Pを与えた場合の筆圧レベルPbはPとなる。このように、本変形例によれば、センサコントローラ31は、芯体121の種類によらず本来の筆圧値を得ることが可能になる。
また、さらに他の用途として、筆圧のみならずスタイラス100の傾き角などを検出する上で、適切な電極あるいは信号分布の形状を特定するために芯体情報を利用することも可能である。本発明によれば、このような場合にも芯体情報を、繰り返し送信されるデータとは別に効率的にセンサコントローラ31に対して伝えることが可能となる。
1 システム
3 電子機器
3a タッチ面
30 センサ
30X,30Y 線状電極
31 センサコントローラ
32 システムコントローラ
40 選択部
41x,41y 導体選択回路
44x,44y スイッチ
49 検波回路
50 受信部
51 増幅回路
52 検波回路
53 AD変換器
60 送信部
61 制御信号供給部
62 スイッチ
63 直接拡散部
64 拡散符号保持部
65 送信ガード部
70 ロジック部
80 MCU
100 スタイラス
101 バッテリー
102 電極
103 テイルスイッチ
104 バレルボタン
105 操作状態検出部
106 スタイラスコントローラIC
110 通信部
111 機能情報更新部
112 インタラクティブデータ取得部
113 非インタラクティブデータ取得部
120 芯体ホルダー
121,121A〜121C 芯体
123,D1〜D0,T1〜T3 端子
BB バレルボタン状態
BBN バレルボタン数
BL バッテリーレベル
BS ビーコン信号
C1 ペンダウン操作
C2 ペンタッチ操作
C3 ペンムーブ操作
C4,C5 ペンアップ操作
CBS カスタムボタンサイズ
CD カスタムデータ
CDf カスタムデータフラグ
CDS カスタムデータサイズ
COS カスタムオリエンテーションサイズ
CP 機能情報
CP_Hash ハッシュ値
CPS カスタム筆圧サイズ
Col 色
D データ
DF インタラクティブデータ
DFmt データフォーマット
DINF 非インタラクティブデータ
DS ダウンリンク信号
F フレーム
H1〜H3 凹部
L1〜L3 配線
OCT オリエンテーションコードテーブル
OR オリエンテーション
ORC オリエンテーションコード
ORR オリエンテーション分解能
PL 筆圧段階指示数
Rx 受信部
SR センシング範囲
Styl スタイル
TaP 接線方向筆圧値
TaPf 接線方向筆圧フラグ
TiP 筆圧値
Tx 送信部

Claims (16)

  1. アクティブスタイラス及びセンサコントローラを用いた方法であって、
    前記アクティブスタイラスが、所定のトリガに応じて、当該アクティブスタイラスのペン先における電極の個数又は配置を特定する情報を含む芯体情報を送信するステップと、
    前記センサコントローラが、前記芯体情報を受信することによって前記アクティブスタイラスの電極の個数又は配置を特定するステップと、
    前記アクティブスタイラスが、前記電極を用いて信号を繰り返し送信するステップと、
    前記センサコントローラが、前記芯体情報に基づく方法により前記信号に基づいて前記アクティブスタイラスの位置を導出するステップと
    を備える方法。
  2. 前記芯体情報は、前記アクティブスタイラスが前記ペン先を構成する芯体の中心に存在する第1の電極とは異なる第2の電極を含むか否かを特定する情報であり、
    前記センサコントローラは、前記芯体情報により前記アクティブスタイラスが前記第2の電極を含むことが示される場合に、更に、前記第2の電極から送信された信号に基づいて前記アクティブスタイラスの傾きを導出する
    請求項1に記載の方法。
  3. 前記第2の電極は、前記第1の電極に比して前記ペン先から遠い位置に設けられた電極である
    請求項2に記載の方法。
  4. 前記所定のトリガは、前記センサコントローラが送信するアップリンク信号を前記アクティブスタイラスが検出したことである
    請求項1乃至3のいずれか一項に記載の方法。
  5. 前記芯体情報を送信するステップは、前記センサコントローラから供給された信号に対する応答信号により前記芯体情報を送信する
    請求項4に記載の方法。
  6. 前記アクティブスタイラスは、前記芯体情報を含む機能情報を含むデータの短縮情報を送信することにより、前記芯体情報を送信する
    請求項5に記載の方法。
  7. 前記芯体情報は、前記アクティブスタイラスを識別する固有IDの一部であり、前記芯体情報を送信するステップは、前記固有IDを送信するステップである
    請求項6に記載の方法。
  8. 前記芯体情報は、前記アクティブスタイラスが信号送信のために使用する電極が前記芯体の内外いずれにあるかを示す情報を含む
    請求項1乃至7のいずれか一項に記載の方法。
  9. センサコントローラに対して信号を送信可能に構成されたアクティブスタイラスであって、
    複数の電極を有するペン先と、
    前記複数の電極のいずれかから信号を送信する送信部と、
    所定のトリガに応じ、前記センサコントローラに対し前記送信部を利用して、前記ペン先における電極の個数又は配置を特定する情報を含む芯体情報を送信する一方、前記芯体情報を送信した後、前記センサコントローラに対し前記送信部を利用して、信号を繰り返し送信する制御部と
    を含むアクティブスタイラス。
  10. 前記芯体情報は、前記複数の電極に前記ペン先を構成する芯体の中心に存在する第1の電極とは異なる第2の電極が含まれるか否かを特定する情報である
    請求項9に記載のアクティブスタイラス。
  11. 前記第2の電極は、前記第1の電極に比して前記ペン先から遠い位置に設けられた電極である
    請求項10に記載のアクティブスタイラス。
  12. 前記電極を介して前記センサコントローラから信号を受信する受信部を含み、
    前記所定のトリガは、前記受信部を介して前記センサコントローラが送信するアップリンク信号を検出したことである
    請求項9乃至11のいずれか一項に記載のアクティブスタイラス。
  13. ペン先における電極の個数又は配置を特定する情報を含む芯体情報、及び、前記ペン先を構成する芯体に付加される筆圧値を含むデータ信号を送信可能に構成されたアクティブスタイラスとともに用いられるセンサコントローラであって、
    前記アクティブスタイラスにより送信された前記芯体情報を取得することによって前記アクティブスタイラスの電極の個数又は配置を特定し、
    取得した前記芯体情報に基づいて1つの位置導出方法を決定し、決定された位置導出方法により、繰り返し送信される前記データ信号に基づいて繰り返し前記アクティブスタイラスの位置を導出する
    センサコントローラ。
  14. 前記芯体情報は、前記アクティブスタイラスが前記芯体の中心に存在する第1の電極とは異なる第2の電極を含むか否かを特定する情報であり、
    前記芯体情報により前記アクティブスタイラスが前記第2の電極を含むことが示される場合に、更に、前記第2の電極から送信された信号に基づいて前記アクティブスタイラスの傾きを導出する
    請求項13に記載のセンサコントローラ。
  15. 前記第2の電極は、前記第1の電極に比して前記ペン先から遠い位置に設けられた電極である
    請求項14に記載のセンサコントローラ。
  16. 前記アクティブスタイラスに対してアップリンク信号を送信可能に構成され、
    前記アクティブスタイラスは、前記アップリンク信号を検出したことに応じて、前記芯体情報を送信する
    請求項13乃至15のいずれか一項に記載のセンサコントローラ。
JP2017200990A 2015-04-20 2017-10-17 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス Active JP6262397B1 (ja)

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US201562149907P 2015-04-20 2015-04-20
US62/149,907 2015-04-20
US201562162527P 2015-05-15 2015-05-15
US62/162,527 2015-05-15
US201562243427P 2015-10-19 2015-10-19
US62/243,427 2015-10-19
US201562254927P 2015-11-13 2015-11-13
US62/254,927 2015-11-13
PCT/JP2016/058892 WO2016170888A1 (ja) 2015-04-20 2016-03-22 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、アクティブスタイラス、及びシステム
JPPCT/JP2016/058892 2016-03-22

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2017514120A Division JP6230755B2 (ja) 2015-04-20 2016-04-19 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス

Publications (2)

Publication Number Publication Date
JP6262397B1 true JP6262397B1 (ja) 2018-01-17
JP2018026165A JP2018026165A (ja) 2018-02-15

Family

ID=60239686

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2017514120A Active JP6230755B2 (ja) 2015-04-20 2016-04-19 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス
JP2017200990A Active JP6262397B1 (ja) 2015-04-20 2017-10-17 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2017514120A Active JP6230755B2 (ja) 2015-04-20 2016-04-19 アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス

Country Status (5)

Country Link
US (2) US10838518B2 (ja)
EP (2) EP3287876B1 (ja)
JP (2) JP6230755B2 (ja)
KR (1) KR102453136B1 (ja)
CN (1) CN107533384B (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4177718A1 (en) 2014-01-22 2023-05-10 Wacom Co., Ltd. Position indicator, position detecting device, position detecting circuit, and position detecting method
CN107390898B (zh) 2016-03-08 2020-10-30 禾瑞亚科技股份有限公司 提供倾斜角与笔身轴向的触控笔与其控制方法
DE202016103403U1 (de) * 2016-06-28 2017-09-29 Stabilo International Gmbh Federnder Batteriekontakt mit Sensorschutz
WO2018020598A1 (ja) * 2016-07-27 2018-02-01 株式会社ワコム スタイラス及びセンサコントローラ
JP6824992B2 (ja) * 2016-09-01 2021-02-03 株式会社ワコム スタイラス、センサコントローラ、及び電子定規
KR102460472B1 (ko) * 2016-12-30 2022-11-01 엘지디스플레이 주식회사 터치 센싱 시스템, 디스플레이 디바이스, 액티브 펜 및 펜 인식 방법
US10564741B2 (en) * 2017-10-19 2020-02-18 Microsoft Technology Licensing, Llc Active stylus pairing with a digitizer
EP3719620B1 (en) 2017-11-29 2022-09-07 Wacom Co., Ltd. Communication method executed between active pen and sensor controller
US10877578B2 (en) * 2018-07-18 2020-12-29 Wacom Co., Ltd. Sensor controller and active pen
JP7014757B2 (ja) * 2019-09-03 2022-02-01 株式会社ワコム ペンの位置を導出し、導出したペンの位置を示すレポートをホストコンピュータに対して送信するデバイスにより実行される方法及びタッチコントローラ。
KR20220094296A (ko) * 2020-12-28 2022-07-06 삼성디스플레이 주식회사 표시 장치 및 그 구동 방법

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5534893A (en) * 1993-12-15 1996-07-09 Apple Computer, Inc. Method and apparatus for using stylus-tablet input in a computer system
JP2002207565A (ja) * 2000-12-19 2002-07-26 Internatl Business Mach Corp <Ibm> 入力システム、電子入力装置、デジタイザ入力用筆記具、デジタイザ、座標入力方法、座標情報伝送方法、および記憶媒体
US7353393B2 (en) * 2001-09-07 2008-04-01 Anoto Aktiebolag (Anoto Ab) Authentication receipt
US20080169132A1 (en) * 2007-01-03 2008-07-17 Yao Ding Multiple styli annotation system
US8184109B2 (en) * 2007-10-24 2012-05-22 Wacom Co., Ltd. Coordinate input device, position indicator and variable capacitor
US8482545B2 (en) * 2008-10-02 2013-07-09 Wacom Co., Ltd. Combination touch and transducer input system and method
JP5442479B2 (ja) * 2010-02-05 2014-03-12 株式会社ワコム 指示体、位置検出装置及び位置検出方法
EP3410280A1 (en) * 2010-06-11 2018-12-05 Microsoft Technology Licensing, LLC Object orientation detection with a digitizer
US8648837B1 (en) 2010-07-09 2014-02-11 The United States Of America As Represented By The Secretary Of The Navy Active capacitive control stylus
JP2012053526A (ja) * 2010-08-31 2012-03-15 Brother Ind Ltd 入力制御装置、入力制御方法及び入力制御プログラム
US8766954B2 (en) * 2010-12-21 2014-07-01 Motorola Mobility Llc Active stylus for use with touch-sensitive interfaces and corresponding method
EP2689378A2 (en) * 2011-03-21 2014-01-29 N-Trig Ltd. System and method for authentication with a computer stylus
JP5669263B2 (ja) * 2011-04-11 2015-02-12 株式会社ワコム 位置指示器
US8638320B2 (en) * 2011-06-22 2014-01-28 Apple Inc. Stylus orientation detection
US9329703B2 (en) * 2011-06-22 2016-05-03 Apple Inc. Intelligent stylus
KR20140053422A (ko) * 2011-08-29 2014-05-08 가부시키가이샤 세라프토 입력장치 및 이를 이용한 입력펜
US20130082983A1 (en) * 2011-10-04 2013-04-04 Chin-Min Liu Multi-pointer for touchscreen stylus
US9086745B2 (en) * 2011-10-28 2015-07-21 Atmel Corporation Dynamic reconfiguration of electrodes in an active stylus
US10725564B2 (en) * 2011-10-28 2020-07-28 Wacom Co., Ltd. Differential sensing in an active stylus
KR20140017255A (ko) * 2012-07-31 2014-02-11 삼성전자주식회사 C―type tsp을 이용한 전자펜 입력 인식 장치 및 방법
JP6012069B2 (ja) * 2012-09-13 2016-10-25 株式会社ワコム 電磁誘導方式の位置指示器及び電子インクカートリッジ
JP5984259B2 (ja) 2012-09-20 2016-09-06 株式会社ワコム 位置検出装置
US9250721B2 (en) 2012-12-17 2016-02-02 Disney Enterprises, Inc. Wireless stylus device with interchangeable tips and eraser
US9613444B2 (en) * 2013-04-26 2017-04-04 Panasonic Corporation Information input display device and information input display method
TWI521394B (zh) * 2013-08-09 2016-02-11 義隆電子股份有限公司 電容觸控筆的主動式控制方法及主動式電容觸控筆
CN105659196A (zh) * 2013-09-12 2016-06-08 微软技术许可有限责任公司 与数字化仪系统的触控笔同步
US9213424B1 (en) * 2013-09-23 2015-12-15 Amazon Technologies, Inc. Stylus devices with eraser
CN108279807B (zh) * 2013-11-08 2021-11-26 禾瑞亚科技股份有限公司 发送受力值的发信器、发信方法、与触控系统
CN203673444U (zh) * 2013-12-20 2014-06-25 艾攀科技有限公司 主动式电容笔
EP4177718A1 (en) 2014-01-22 2023-05-10 Wacom Co., Ltd. Position indicator, position detecting device, position detecting circuit, and position detecting method
US9703946B2 (en) * 2014-03-31 2017-07-11 Stmicroelectronics Asia Pacific Pte Ltd Secure pairing method, circuit and system for an intelligent input device and an electronic device
JP6304814B2 (ja) * 2014-05-23 2018-04-04 株式会社ワコム 位置検出装置及び位置指示器
US9632597B2 (en) * 2014-06-12 2017-04-25 Amazon Technologies, Inc. Configurable active stylus devices
US9244543B1 (en) * 2014-06-24 2016-01-26 Amazon Technologies, Inc. Method and device for replacing stylus tip
KR20170019473A (ko) * 2014-07-02 2017-02-21 쓰리엠 이노베이티브 프로퍼티즈 컴파니 의도하지 않은 터치 신호의 배제를 포함하는 터치 시스템 및 방법
CN111665957B (zh) * 2014-07-08 2024-04-23 株式会社和冠 位置指示器
EP3241099B1 (en) * 2015-01-04 2020-02-19 Microsoft Technology Licensing, LLC Touch down detection with a stylus
JP6085630B2 (ja) * 2015-03-10 2017-02-22 レノボ・シンガポール・プライベート・リミテッド タッチペンシステム及びタッチペン
US9933867B2 (en) * 2015-12-30 2018-04-03 Synaptics Incorporated Active pen capacitive displacement gauge
TWI597645B (zh) * 2016-10-05 2017-09-01 翰碩電子股份有限公司 電容筆發射與應用訊號的方法及應用此方法之電容筆
US10331235B2 (en) * 2016-11-23 2019-06-25 Wacom Co., Ltd. Stylus tilt detection based on bidirectional communication between stylus and stylus sensor controller

Also Published As

Publication number Publication date
US20180024658A1 (en) 2018-01-25
EP3851941A1 (en) 2021-07-21
JPWO2016171114A1 (ja) 2017-11-02
CN107533384A (zh) 2018-01-02
CN107533384B (zh) 2020-10-20
EP3287876A1 (en) 2018-02-28
US11016586B2 (en) 2021-05-25
US20210081059A1 (en) 2021-03-18
US10838518B2 (en) 2020-11-17
EP3287876A4 (en) 2019-01-02
KR20170137192A (ko) 2017-12-12
JP6230755B2 (ja) 2017-11-15
KR102453136B1 (ko) 2022-10-12
EP3287876B1 (en) 2021-04-14
JP2018026165A (ja) 2018-02-15

Similar Documents

Publication Publication Date Title
JP6262397B1 (ja) アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス
JP6230754B2 (ja) アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、アクティブスタイラス、及びシステム
WO2016171114A1 (ja) アクティブスタイラス及びセンサコントローラを用いた方法、センサコントローラ、並びにアクティブスタイラス
US10488953B2 (en) System and method for bidirectional communication between stylus and stylus sensor controller
US9448646B1 (en) System and method for bidirectional communication between stylus and stylus sensor controller
JP7213923B2 (ja) ペアリング方法及び位置検出システム
CN107533385B (zh) 使用了主动式触控笔及传感器控制器的方法、传感器控制器、主动式触控笔及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171017

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20171017

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20171107

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: 20171114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171213

R150 Certificate of patent or registration of utility model

Ref document number: 6262397

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250