(58)【調査した分野】(Int.Cl.,DB名)
前記制御するステップは、前記後の状態では、前記センサコントローラによる信号の送信周期に応じたタイミングで、前記長い期間より短い期間にわたり前記検出動作を実行する、
請求項2に記載の方法。
前記アクティブペンが前記センサコントローラに対して送信する信号は、前記探索信号に対する応答信号、及び、前記センサコントローラが前記アクティブペンの位置を導出するためのペン信号を含む、
請求項4に記載の方法。
【発明を実施するための形態】
【0024】
(第1の実施の形態)
図1は、本発明の第1の実施の形態による通信システム1の利用形態を示す概要図である。通信システム1は、スタイラス100と、電子機器3(デバイス)に設けられたセンサ201に接続されたセンサコントローラ300とにより構成される。スタイラス100とセンサ201とは容量結合されており、センサコントローラ300は、容量結合されたスタイラス100とセンサ201との間の電界(
図1に示す電界e−field)を変化させることで、スタイラス100との通信を行うよう構成される。後述する探索信号DS、応答信号ACK、第1のペン信号P1、第2のペン信号P2などのスタイラス100とセンサコントローラ300の間で送受信される各種の信号は、この電界の変化に対応付けて送受信される。また、センサコントローラ300は、電子機器3を制御するホストプロセッサ350に接続される。電子機器3の例としては、タブレットコンピュータやデジタイザを備えたデバイスが挙げられる。
【0025】
図1の破線矢印で示すユーザ操作U1〜U4は、スタイラス100を利用するユーザの典型的な操作を示している。
【0026】
スタイラス100は、初期状態では、センサコントローラ300とスタイラス100が互いが送信する信号により互いを検出することができる範囲であるセンシング範囲SRの外に置かれている。ユーザがスタイラス100を利用開始すると、スタイラス100は開始位置STで示す位置に移動する。この初期状態では、センサコントローラ300とスタイラス100の状態は、
図2に示すディスカバリ状態SDにある。
【0027】
ペンダウン操作U1によってスタイラス100がセンサコントローラ300のセンシング範囲SRの内部に入ると、センサコントローラ300及びスタイラス100はセンサ201とスタイラス100との容量結合を介して互いの信号を検出可能となる。センサコントローラ300とスタイラス100は互いの送信信号を検出することで、ペアリング処理等を介して通信を開始することができ、結果としてオペレーション状態SOに遷移する(
図2のIN201)。
【0028】
その後、スタイラス100の先端はペンタッチ操作U2によって操作面に接し、摺動操作U3によって電子機器3の操作面上で手書きの内容に応じた軌跡を描くよう摺動する。摺動操作U3が行われている間、スタイラス100は、変化する筆圧を逐次検出し、センサコントローラ300に対して筆圧等のデータを含む信号(後掲する
図5Aに示す第1のペン信号P1、又は、後掲する
図6Aに示す第2のペン信号P2)を送出し続ける。
【0029】
最後に、ペンアップ操作U4により、スタイラス100は再びセンシング範囲SRの外に退出する。一定期間、例えば数秒の間、センサコントローラ300とスタイラス100が互いを検出できない時間が継続すると(
図2のIN203)、センサコントローラ300及びスタイラス100の状態は、それぞれオペレーション状態SOからディスカバリ状態SDに戻る。
【0030】
図2は、ある動作モードにおけるセンサコントローラ300及びスタイラス100の状態遷移図である。動作モードとは、センサコントローラ300とスタイラス100との間のプロトコル、データフォーマット、拡張機能の利用の有無等に応じて定まる動作の1つの形態である。例えば第1の通信方法に準拠した第1のモード(
図5C)、第2の通信方法に準拠した第2のモード(
図6C)などが存在する。
【0031】
センサコントローラ300及びスタイラス100は、ある1の動作モードで動作をする場合、それぞれの状態を現在利用している動作モードにおけるディスカバリ状態SDとオペレーション状態SOとの間で遷移させる。
【0032】
ディスカバリ状態SDは、センサコントローラ300及びスタイラス100のそれぞれが、互いを検出するためのディスカバリを実行する状態である。このディスカバリ状態SDにおいてペンダウン操作U1などが行われると、センサコントローラ300はスタイラス100を、スタイラス100はセンサコントローラ300をそれぞれ検出し、互いの検出を契機にともにオペレーション状態SOに遷移する(IN201)。
【0033】
オペレーション状態SOでは、スタイラス100から信号(後掲する
図5Aに示す第1のペン信号P1、又は、後掲する
図6Aに示す第2のペン信号P2)が送信され、センサコントローラ300では、この信号の検出が行われる。センサコントローラ300(又はスタイラス100)がスタイラス100(又はセンサコントローラ300)を検出しなくなると、センサコントローラ300及びスタイラス100はそれぞれ、再びディスカバリ状態SDに遷移する(IN203)。
【0034】
このように、ある1つのモードあるいは動作モードは、ディスカバリとオペレーション状態(その動作モードに基づく信号の通信処理)を繰り返すものである。ディスカバリ状態からオペレーション状態に遷移するあるいはオペレーション状態からディスカバリ状態に遷移するものであれば、ペアリング状態などを経由してオペレーション状態に遷移する場合も存在しても良く、又、オペレーション状態からディスカバリ状態に遷移する上でサスペンド状態などを経由するとしても良い。
【0035】
図7を用いて後述するが、本発明に係る通信方法、通信システム、センサコントローラおよびスタイラスは、1つの動作モードに専用に用意されているディスカバリとは別に、更に、後述するディスカバリ(デュアルモードディスカバリ、
図7B及び
図10の状態SD_DUAL)処理を行う点に特徴の1つを有する。
【0036】
図3は、センサコントローラ300及びセンサ201の具体的な構成を示す図である。同図に示すように、センサ201は、複数の線状電極201Xと複数の線状電極201Yとが操作面上にマトリクス状に配置された構成を有しており、これら線状電極201X,201Yによってスタイラス100と容量結合する。また、センサコントローラ300は、送信部60、選択部40、受信部50、ロジック部70、及びMCU80を有して構成される。
【0037】
送信部60は、スタイラス100に対して所定の制御信号を送信する回路である。具体的には、探索信号供給部61、スイッチ62、直接拡散部63、拡散符号保持部64、並びに送信ガード部65を含んで構成される。
【0038】
探索信号供給部61は、探索パターンDPを保持しており、ロジック部70から供給される制御信号ctrl_t1の指示に従い、探索信号DSを周期(=後述する
図7C等に示す期間P)で繰返し出力する機能を有する。探索信号DSは、スタイラス100がセンサコントローラ300の存在を検出するために用いられるもので、スタイラス側に既知のビットパターンを含んでいる。
【0039】
スイッチ62は、ロジック部70から供給される制御信号ctrl_t2に基づいて探索信号供給部61及びMCU80のいずれか一方を選択し、選択した一方の出力を直接拡散部63に供給する機能を有する。スイッチ62が探索信号供給部61を選択した場合、直接拡散部63には上記探索パターンDPが供給される。一方、スイッチ62がMCU80を選択した場合、直接拡散部63には制御コマンドCMDが供給される。制御コマンドCMDは、検出されたあるいはこれから検出されるスタイラス100を制御するためのコマンドなどを構成する情報である。
【0040】
拡散符号保持部64は、ロジック部70から供給される制御信号ctrl_t3に基づき、拡散符号PNを生成する機能を有する。拡散符号保持部64によって生成された拡散符号PNは、直接拡散部63に供給される。
【0041】
直接拡散部63は、スイッチ62から供給される信号を構成する複数のビットのそれぞれに対し、拡散符号保持部64から供給される拡散符号PNを乗算(XOR)する機能を有する。スイッチ62から探索パターンDPが供給される場合、直接拡散部63から出力される信号は探索信号DSとなる。一方、スイッチ62から制御コマンドCMDが供給される場合、直接拡散部63から出力される信号は制御コマンドCMDが含まれた探索信号DSである探索信号DS(制御信号C1_U)となる。
【0042】
送信ガード部65は、ロジック部70から供給される制御信号ctrl_t4に基づき、直接拡散部63から出力される第1及び第2の制御信号それぞれの送信期間と、スタイラス100からの信号を受信するための受信期間との間にガード期間を挿入する機能を有する。
【0043】
選択部40は、ロジック部70の制御に基づいて、センサ201から信号を送信する送信期間と、センサ201により信号を受信する受信期間とを切り替えるスイッチである。具体的に説明すると、選択部40は、スイッチ44x,44yと、導体選択回路41x,41yとを含んで構成される。スイッチ44xは、ロジック部70から供給される制御信号sTRxに基づき、送信期間には、送信部60の出力端を導体選択回路41xの入力端に接続し、受信期間には、導体選択回路41xの出力端を受信部50の入力端に接続するよう動作する。スイッチ44yは、ロジック部70から供給される制御信号sTRyに基づき、送信期間には、送信部60の出力端を導体選択回路41yの入力端に接続し、受信期間には、導体選択回路41yの出力端を受信部50の入力端に接続するよう動作する。導体選択回路41xは、ロジック部70から供給される制御信号selXに基づき、複数の線状電極201Xのうちの1つを選択し、選択したものをスイッチ44xに接続するよう動作する。導体選択回路41yは、ロジック部70から供給される制御信号selYに基づき、複数の線状電極201Yのうちの1つを選択し、選択したものをスイッチ44yに接続するよう動作する。
【0044】
受信部50は、ロジック部70の制御信号ctrl_rに基づいて、スタイラス100が送信する信号(後掲する
図7Eに示す位置信号Pos、後掲する
図5A、
図9Aに示す第1のペン信号P1、又は、後掲する
図6A、
図9Bに示す第2のペン信号P2)を検出あるいは受信するための回路である。具体的には、増幅回路51、検波回路52、及びアナログデジタル(AD)変換器53を含んで構成される。
【0045】
増幅回路51は、選択部40から供給される受信信号を増幅して出力する。検波回路52は、増幅回路51の出力信号のレベルに対応した電圧を生成する回路である。AD変換器53は、検波回路49から出力される電圧を所定時間間隔でサンプリングすることによって、デジタル信号を生成する回路である。AD変換器53が出力するデジタルデータはMCU80に供給される。
【0046】
MCU80は、内部に図示しないROM及びRAMを有し、所定のプログラムに基づき動作するマイクロプロセッサである。ロジック部70は、MCU80の制御に基づき、上述した各制御信号を出力する。MCU80はまた、AD変換器53から供給されるデジタルデータに基づいてスタイラス100の位置を示す座標データx,y等を導出し、ホストプロセッサ350に対して出力する役割を担う。
【0047】
上記構成により、センサコントローラ300は、送信部60の機能を利用してセンサ201を介して制御信号(探索信号DS)を送信し、受信部50の機能を利用してスタイラス100から送信された応答信号ACK、第1のペン信号P1、第2のペン信号P2などの信号を検出あるいは受信し、それによって後述の第1の通信部311、第2の通信部321,322の機能を実現する。また、MCU80は、送信部60及び受信部50の機能を利用して信号を送信又は受信することにより、後述する第1のディスカバリ、第2のディスカバリ、デュアルモードディスカバリの各処理を実現する。
【0048】
図4は、スタイラス100及びセンサコントローラ300の種別、並びに、本実施の形態による通信方法により決定されるスタイラス100及びセンサコントローラ300の動作モードを示す図である。
【0049】
図4に示すように、スタイラス100には、第1の通信方法STDのみに対応する第1のスタイラス110と、第2の通信方法PRPのみに対応する第2のスタイラス120と、第1の通信方法STD及び第2の通信方法PRPの両方に対応するデュアルモードスタイラス130との3種類が存在する。同様に、センサコントローラ300には、第1の通信方法STDのみに対応する第1のセンサコントローラ310と、第2の通信方法PRPのみに対応する第2のセンサコントローラ320と、第1の通信方法STD及び第2の通信方法PRPの両方に対応するデュアルモードコントローラ330との3種類が存在する。
【0050】
本実施の形態による通信方法により決定される動作モードは、
図4に示すように、スタイラス100とセンサコントローラ300の組み合わせによって変化する。具体的に説明すると、スタイラス100が第1のスタイラス110であり、センサコントローラ300が第1のセンサコントローラ310及びデュアルモードコントローラ330のいずれかである場合、及び、スタイラス100がデュアルモードスタイラス130であり、センサコントローラ300が第1のセンサコントローラ310である場合に決定される動作モードは、第1の通信方法STDに対応する第1のモードとなる(欄E11,E13,E31)。また、スタイラス100が第2のスタイラス120であり、センサコントローラ300が第2のセンサコントローラ320及びデュアルモードコントローラ330のいずれかである場合、及び、スタイラス100がデュアルモードスタイラス130であり、センサコントローラ300が第2のセンサコントローラ320である場合に決定される動作モードは、第2の通信方法PRPに対応する第2のモードとなる(欄E22,E23,E32)。本実施の形態では、以上の各場合について、以下で詳しく説明する。スタイラス100がデュアルモードスタイラス130であり、センサコントローラ300がデュアルモードコントローラ330である場合については、第2の実施の形態で詳しく説明する。その他、スタイラス100が第1のスタイラス110であり、センサコントローラ300が第2のセンサコントローラ320である場合、及び、スタイラス100が第2のスタイラス120であり、センサコントローラ300が第1のセンサコントローラ310である場合には、スタイラス100とセンサコントローラ300が互いを発見できないため、動作モードの設定がなされないこととなる。
【0051】
<1.第1のモード>
図5Aは、
図4の欄E11に対応する組み合わせ(第1のスタイラス110と第1のセンサコントローラ310)による通信システム1の概要図である。
【0052】
第1のスタイラス110は、電極101を介して探索信号DSを受信し、探索信号DSの受信に応じて探索応答信号ACKを返信し、その後、第1のペン信号P1を送信する第1の通信部111を含み構成される。第1のセンサコントローラ310は、第1の通信方法STDに準拠した第1の通信部311と、以下で説明する第1のディスカバリを実行するディスカバリ部341とを含み構成される。第1のスタイラス110及び第1のセンサコントローラはともに第1の通信方法STDに準拠しており、第1のモードで動作可能に構成される。
【0053】
図5Bは、第1のモードにおける第1のスタイラス110及び第1のセンサコントローラ310の動作を説明する図である。同図上段は、第1のスタイラス110の動作状態、送信信号Tx、及び受信信号Rxを上から順に示している。同図下段は、第1のセンサコントローラ310の送信信号Tx、受信信号Rx、及び動作状態を上から順に示している。図中横軸は時刻(time)を示し、左端に示す最初の状態では、第1のスタイラス110は
図1の開始位置STにある。
【0054】
<1.1 第1のモードにおける第1のセンサコントローラ310の動作>
図5C(a)は、第1のモードにおける第1のセンサコントローラ310の状態遷移図である。
図5Bに示す時刻t0までの間、第1のセンサコントローラ310は、第1のモードにおけるディスカバリ状態SD(
図2参照)である第1のディスカバリ状態SD_STDで動作している(
図5C(a)の「開始」)。
【0055】
第1のセンサコントローラ310は、第1のディスカバリ状態SD_STDにおいて第1のディスカバリを実行する。第1のディスカバリには、第1のスタイラス110を検出するための探索信号DSを定期的に送信する処理と、探索信号DSに対する第1のスタイラス110からの応答である探索応答信号ACKを受信する処理とが含まれる。探索応答信号ACKの受信処理は、探索信号DSを送信した直後の期間である応答受信期間Raの間に行われる。応答受信期間Ra内に探索応答信号ACKが受信されない限り第1のディスカバリ状態SD_STDが続行され、第1のディスカバリが繰り返される。
【0056】
図5Bの時刻t0でペンダウン操作U1が行われ、第1のスタイラス110が第1のセンサコントローラ310のセンシング範囲SR(
図1参照)内に入ると、第1のスタイラス110は探索信号DSを検出することができるようになる。その後最初に受信した探索信号DSへの返信として、第1のスタイラス110は探索応答信号ACKを返信する(時刻t1)。第1のセンサコントローラ310は、時刻t1の後の時刻t2で、応答受信期間Ra内にスタイラス110から送信された探索応答信号ACKを検出する。
【0057】
時刻t2での探索応答信号ACKの検出を契機に、第1のセンサコントローラ310は自己の動作状態を、第1のディスカバリ状態SD_STDから、第1のモードに対応するオペレーション状態SO(
図2参照)である第1のオペレーション状態SO_STDに遷移させる(
図5Bの「動作状態」、
図5C(a)のIN401)。
【0058】
第1のオペレーション状態SO_STDにおいて、第1のセンサコントローラ310は、探索信号DSに対する応答受信期間Raの直後から次の探索信号DSの送出開始までの期間をデータ受信期間R(P1)とし、第1のペン信号P1の受信処理を行う。そして、受信した第1のペン信号P1を用いて第1のスタイラス110の位置導出を行うとともに、第1のペン信号P1に含まれる筆圧等のデータを取得し、座標データ及び筆圧値等の情報をホストプロセッサ350へ出力する。
【0059】
時刻t3でペンアップ操作U4がなされると、第1のセンサコントローラ310は、第1のスタイラス110から送信される信号を受信できなくなる。一定時間、第1のスタイラス110からの信号が受信されない場合(時刻t4)、第1のセンサコントローラ310は、自己の動作状態を第1のオペレーション状態SO_STDから第1のディスカバリ状態SD_STDに遷移させる(
図5C(a)のIN403)。第1のディスカバリ状態SD_STDに遷移した第1のセンサコントローラ310は、上述したようにして、第1のディスカバリを実行する。
【0060】
<1.2 第1のモードにおける第1のスタイラス110の動作>
図5C(b)は、第1のモードにおける第1のスタイラス110の状態遷移図である。
図5Bに示す時刻t0までの間、第1のスタイラス110は第1のディスカバリ状態SD_STDで動作している(
図5C(b)の「開始」)。
【0061】
第1のディスカバリ状態SD_STDにある第1のスタイラス110は、探索信号受信期間Rdの間、第1のセンサコントローラ310が送信する探索信号DSの受信処理を行う。探索信号受信期間Rdは、探索信号DSの送信周期(=期間P)(例えば20msec)よりも長い時間(例えば25msec)にわたって継続するように設定され、かつ、一定のインターバルINTをおいて設けられる。
【0062】
時刻t0でペンダウン操作U1がなされると、第1のスタイラス110は、第1のセンサコントローラ310のセンシング範囲SR(
図1参照)に入る。
図5Bの例では、センシング範囲SRに入った後の時刻t1で、最初の探索信号DSが受信される。
【0063】
第1のスタイラス110は、こうして受信された探索信号DSへの応答として、探索応答信号ACKを返信する。また、探索信号DSの検出を契機として、自己の動作状態を第1のディスカバリ状態SD_STDから第1のオペレーション状態SO_STDに遷移させる(
図5C(b)のIN411)。その後、第1のスタイラス110は、第1のディスカバリ状態SD_STDと同様に探索信号DSを受信期間Rdで受信しつつ、探索信号DSを基準時刻として決定される時間スロットを用いて、第1のペン信号P1の送信を繰り返す。
【0064】
時刻t3でペンアップ操作U4がなされ、受信期間Rdにセンサコントローラ310からの信号の受信がなされなくなると、第1のスタイラス110は、自己の動作状態を第1のオペレーション状態SO_STDから第1のディスカバリ状態SD_STDに戻す(
図5C(b)のIN413)。
【0065】
<2.第2のモード>
図6Aは、
図4の欄E22に対応する組み合わせ(第2のスタイラス120と第2のセンサコントローラ320の組み合わせ)による通信システム1の概要図である。
【0066】
第2のスタイラス120は、第2の通信方法PRPに準拠した第2のペン信号P2を送信する第2の通信部121を含み構成される。第2のペン信号P2の送信形式は、
図5Aに示した第1のペン信号P1の送信形式とは全く異なるものである。例えば、第2のペン信号P2は特許文献1に記載された信号のように一方向に連続して送信されるものである。第2のセンサコントローラ320は、第2の通信方法PRPに基づいた信号を受信する第2の通信部321と、以下で説明する第2のディスカバリを実行するディスカバリ部342を含み構成される。
【0067】
図6Bは、第2のモードにおける第2のスタイラス120及び第2のセンサコントローラ320の動作を説明する図である。同図上段は、第2のスタイラス120の動作状態、送信信号Tx、及び受信信号Rxを上から順に示している。同図下段は、第2のセンサコントローラ320の送信信号Tx、受信信号Rx、及び動作状態を上から順に示している。
【0068】
本実施の形態による第2の通信方法PRPでは、第2のスタイラス120からセンサコントローラ320へ、一方向の第2のペン信号P2の送信が行われる。
図6Bに示すように、第2のペン信号P2は、位置信号Posとデータ信号Dataとを含み構成される。位置信号Posは、第2のセンサコントローラ320が第2のスタイラス120の位置或いは存在を検出するための(無変調の)信号である。一方、データ信号Dataは、筆圧等の情報或いはデータで搬送波信号を変調して得られるデータ信号を示している。
【0069】
<2.1 第2のモードにおける第2のセンサコントローラ320の動作>
図6C(a)は、第2のモードにおける第2のセンサコントローラ320の状態遷移図である。
図6Bに示す時刻t0までの間、第2のセンサコントローラ320は、第2のモードに対応するディスカバリ状態SD(
図2参照)である第2のディスカバリ状態SD_PRPで動作する(
図6C(a)の「開始」)。
【0070】
第2のセンサコントローラ320は、第2のディスカバリ状態SD_PRPにおいて第2のディスカバリを実行する。第2のディスカバリには、規定された第2のペン信号の送信継続時間より長い受信期間の間、第2のペン信号P2の検出を行う処理が含まれる。第2のセンサコントローラ320は、この検出処理を、一定のインターバルをおいて間欠的に繰り返し継続する。
【0071】
図6Bの時刻t0でペンダウン操作U1が行われ、第2のスタイラス120が第2のセンサコントローラ320のセンシング範囲SR(
図1参照)内に入ると、第2のセンサコントローラ320は、第2のスタイラス120から送信された第2のペン信号P2(位置信号Pos)を検出する(時刻t2)。第2のペン信号P2の受信を契機に、第2のセンサコントローラはその動作状態を、第2のディスカバリ状態SD_PRPから、第2のモードに対応するオペレーション状態SO(
図2参照)である第2のオペレーション状態SO_PRPに遷移させる(
図6C(a)のIN501)。第2のオペレーション状態SO_PRPにある第2のセンサコントローラ320は、連続して第2のペン信号P2の受信を行う。具体的には、第2のペン信号P2の位置信号Posにより第2のスタイラス120の位置導出を行うとともに、データ信号Dataに含まれる筆圧等のデータの取得を行い、座標データ及び筆圧値等の情報をホストプロセッサ350へ出力する。
【0072】
時刻t3でペンアップ操作U4が行われると、第2のスタイラス120はセンシング範囲SRから退出する。その結果、第2のセンサコントローラ320は、第2のペン信号P2を検出することができなくなる。第2のペン信号P2が検出されないまま一定時間経過すると、第2のセンサコントローラ320は、自己の動作状態を第2のオペレーション状態SO_PRPから第2のディスカバリ状態SD_PRPに遷移させる(
図6C(a)のIN503)。第2のディスカバリ状態SD_PRPに遷移した第2のセンサコントローラ320は、上述したようにして、第2のディスカバリを実行する。
【0073】
<2.2 第2のモードにおける第2のスタイラス120の動作>
図6C(b)は、第2のモードにおける第2のスタイラス120の状態遷移図である。同図に示すように、第2のスタイラス120は、「開始」の位置から直ちに第2のオペレーション状態SO_PRPで動作する。電源ON等の入力を契機に、第2のスタイラス120は第2のペン信号P2の送信を開始し、第2のペン信号P2を送信し続ける。
【0074】
<3.デュアルモードコントローラ>
図7Aは、
図4に示したデュアルモードコントローラ330を利用する通信システム1の概要図である。この場合、第1のスタイラス110(
図4の欄E13)と第2のスタイラス120(
図4の欄E23)のうちいずれか1つのスタイラス100がユーザによって選択され、
図1に示したペンダウン操作U1からペンアップ操作U4までの操作により利用される。
【0075】
デュアルモードコントローラ330は、
図7Aに示すように、上述した第1の通信部311及び第2の通信部321に加え、ディスカバリ部343を有している。ディスカバリ部343は、第1の通信部311の機能及び第2の通信部321の機能を交互に用いつつ、第1のスタイラス110及び第2のスタイラス120の両方の検出に対応するデュアルモードディスカバリを実行する。デュアルモードコントローラ330は、このデュアルモードディスカバリにより検出されたスタイラスの種類に応じて自己の動作モードを上述した第1及び第2のモードのいずれか一方に決定し、所定の期間、決定された動作モードで、信号受信及びその後のディスカバリ(第1のディスカバリ又は第2のディスカバリ)の動作を行う。
【0076】
デュアルモードディスカバリは、第1の動作モードにおける第1のディスカバリあるいは第2の動作モードにおける第2のディスカバリとは別に、そもそも動作モードを決定するために実行されるものである。
【0077】
図7Bは、デュアルモードコントローラ330の状態遷移図である。同図に示すように、デュアルモードコントローラ330の初期状態は、第1のスタイラス110及び第2のスタイラス120の両方の検出に対応するデュアルモードディスカバリ状態SD_DUALである。このデュアルモードディスカバリ状態SD_DUALにおいてデュアルモードコントローラ330は、第1のディスカバリを実施する第1のディスカバリ状態SD_STDと、第2のディスカバリを実施する第2のディスカバリ状態SD_PRPとに交互に遷移する。これにより、第1のディスカバリと第2のディスカバリとが交互に繰り返される。
【0078】
(デュアルモードディスカバリ)。
図7C(a)は、デュアルモードディスカバリの例を説明する図である。同図は、上から順にデュアルモードコントローラ330が送信する送信信号Tx、受信信号Rx、ディスカバリ、及び動作状態を示している。
【0079】
時刻t0からt2までの間は、第1のディスカバリが実行される。すなわち、デュアルモードコントローラ330は、同図に期間Pで示す周期で繰り返し探索信号DSを送信し、少なくとも探索信号DSを送出する時間と探索応答信号ACKを待機する時間(応答信号受信期間Ra)の合計時間を用いて第1のディスカバリを実行する。デュアルモードコントローラ330は、応答信号受信期間Ra内に探索応答信号ACKの受信処理を行う。探索信号DSの送信継続時間は期間Pより短く、したがって、探索信号DSは、期間Pから探索信号DSの送信継続時間を減じてなる時間に等しいインターバルをおいて送信されることになる。また、上記合計時間は、探索信号DSを送信する時間と応答信号受信期間Raを切り替えるためのガード時間を含むこととしてもよい。
【0080】
時刻t2からt4までの間は、第2のディスカバリが実行される。すなわち、デュアルモードコントローラ330は、第2のスタイラス120がセンシング範囲SRに入っているか否かの検出を行う。時刻t4からは再び第1のディスカバリが実行される。このようにデュアルモードディスカバリでは、第1のディスカバリと第2のディスカバリとが交互に繰り返される。
【0081】
図7C(b)は、デュアルモードディスカバリの他の例を示している。探索信号DSの送信処理とそれに続く探索応答信号ACKの受信処理とを含む第1のディスカバリを期間Pの周期で実行する場合、
図7C(a)からも理解されるように、期間Pのうち探索応答信号ACKの受信期間Raの後から次の探索信号DSの送信時刻までの間、デュアルモードコントローラ330は何もしない状態となる。なお、第1のスタイラス110が検出された後のこの時間は、
図5Bに示したように、第1のペン信号P1の送信用の時間として利用される。
【0082】
そこで、
図7C(b)の例によるデュアルモードコントローラ330は、第1のスタイラス110が検出されるまでの間、この第1のペン信号P1の送信用の時間を利用して第2のディスカバリを実行する。すなわち、探索信号DSの送信周期(=期間P)から上述した合計時間を除いた残余の時間の少なくとも一部の時間を活用して、第2のディスカバリを実行する。これにより
図7C(b)のデュアルモードディスカバリでは、
図7C(a)のデュアルモードディスカバリに比してより短時間で第1のスタイラス110及び第2のスタイラス120のそれぞれを検出することが可能となる。
【0083】
図7Bに戻り、デュアルモードディスカバリ状態SD_DUALにおいて、一旦、第1のスタイラス110又は第2のスタイラス120のいずれかが検出されると、デュアルモードコントローラ330の状態は、検出したスタイラス100に対応する動作モード(
図5Cの第1のモード、
図6Cの第2のモードのいずれか)に遷移する(
図7BのIN701,IN702)。
【0084】
例えば第1のスタイラス110が検出された場合には、デュアルモードコントローラ330は、自己の動作モードを第1のモードに決定し、デュアルモードディスカバリ状態SD_DUALから
図5Cの第1のモード(第1のオペレーション状態SO_STDと第1のディスカバリ状態SD_STDとを繰り返すモード)へと、自己の状態を遷移させる(IN701)。一旦、第1のモードへ動作が遷移した(第1のモードであると決定した)後は、
図5B及び
図5Cに示した第1のオペレーション状態SO_STD及び第1のディスカバリ状態SD_STDにかかる動作が継続される。即ち、デュアルモードディスカバリとは異なり、第1のモード専用の第1のディスカバリ状態SD_STDのみが実行され、第2のディスカバリ状態SD_PRPは実行されない。
【0085】
一方、例えば第2のスタイラスが検出された場合には、デュアルモードコントローラ330は、デュアルモードディスカバリ状態SD_DUALから
図6Cの第2のモード(第2のオペレーション状態SO_PRPと第2のディスカバリ状態SD_PRPとを繰り返すモード)へと、自己の状態を遷移させる。一旦、第2のモードへ動作が遷移した後は、
図6B及び
図6Cに示した第2のオペレーション状態SO_PRP及び第2のディスカバリ状態SD_PRPにかかる動作が継続される。
【0086】
第1のモード又は第2のモードでの動作を一旦開始したデュアルモードコントローラ330は、開始した動作モードで行うディスカバリを一定期間繰り返してもスタイラスが発見されない場合に限り、デュアルモードディスカバリ状態SD_DUALに復帰する(
図7BのIN703,IN704)。
【0087】
<3.1
図4に示した欄E13の組み合わせによる通信システム1の動作例>
図7Dは、
図4に示した欄E13の組み合わせ(デュアルモードコントローラ330と第1のスタイラス110との組み合わせ)による通信システム1の動作例を示している。
【0088】
この動作例では、時刻t0までの間、デュアルモードコントローラ330はデュアルモードディスカバリ状態SD_DUALにあり、第1のディスカバリと第2のディスカバリとを交互に繰り返している(
図7C(b)を参照)。
【0089】
時刻t0でペンダウン操作U1がなされ、第1のスタイラス110がデュアルモードコントローラ330のセンシング範囲SR(
図7A参照)内に入ると、その後最初に送信された探索信号DSに対し、時刻t2で第1のスタイラス110から探索応答信号ACKが返信される。デュアルモードコントローラ330は、この探索応答信号ACKを受信することにより、第1のスタイラス110を検出する。
【0090】
一旦第1のスタイラス110が検出されると、デュアルモードコントローラ330は自己の動作状態を第1のモード(より具体的には第1のオペレーション状態SO_STD)とする。第1のモードでは、デュアルモードコントローラ330は探索信号DSの送信を一定間隔で繰り返すとともに、探索信号DSを基準時刻とした時間スロットを用いて第1のペン信号P1の受信処理を実行する。より具体的には、デュアルモードコントローラ330は、探索信号DSの送信周期(=
図7C(b)に示した期間P)から上述した合計時間(探索信号DSの送信時間、応答信号受信期間Ra、及び、設ける場合にはガード時間の合計時間)を除いた残余の時間の全てを、第1のペン信号P1の受信に用いる。これにより第2のディスカバリが実行されなくなるため、仮に第2のスタイラス120がデュアルモードコントローラ330に近接したとしても、デュアルモードコントローラ330によって検出されることはなくなる。
【0091】
時刻t3においてユーザが手書きを終了し、ペンアップ操作U4によりスタイラス100がセンシング範囲SRの外に退出した後も、デュアルモードコントローラ330は、第1のモードでの動作として一定期間、第1のディスカバリのみを繰り返す。その後、第1のディスカバリをおこなってもいずれの第1のスタイラス110も検出されない場合、デュアルモードコントローラ330はデュアルモードディスカバリ状態SD_DUALに戻り、デュアルモードディスカバリを再開する(
図4の時刻t4)。
【0092】
<3.2
図4に示した欄E23の組み合わせによる通信システム1の動作例>
図7Eは、
図4に示した欄E23の組み合わせ(デュアルモードコントローラ330と第2のスタイラス120との組み合わせ)による通信システム1の動作例を示している。
【0093】
時刻t0でペンダウン操作U1がなされ、第2のスタイラス120がデュアルモードコントローラ330のセンシング範囲SR(
図7A参照)内に入ると、デュアルモードコントローラ330は、その後の時刻t2で第2のスタイラス120から送信された第2のペン信号P2を検出する。そして、デュアルモードコントローラ330は、自己の動作状態を第2のモード(より具体的には第2のオペレーション状態SO_PRP)とする。
【0094】
時刻t3でペンアップ操作U4がなされ、第2のスタイラス120がセンシング範囲SRから離れても、デュアルモードコントローラ330は、第2のモードでの動作として一定期間、第2のディスカバリのみを繰り返す。その後、第2のディスカバリをおこなってもいずれの第2のスタイラス120も検出されない場合、デュアルモードコントローラ330はデュアルモードディスカバリ状態SD_DUALに戻り、デュアルモードディスカバリを再開する(
図4の時刻t4)。
【0095】
このように、デュアルモードコントローラ330は、異なる種類のスタイラス100に対応するため複数の種類のディスカバリを交互に実行するデュアルモードディスカバリを行い、検出された信号に基づいてその後の動作モードを決定する。具体的には、第1のペン信号P1を受信するとともに第1のディスカバリを行う第1のモード、第1のペン信号P1とは少なくともフォーマットの異なる第2のペン信号P2を受信するとともに、第2のディスカバリを行う第2のモードのいずれか一方に決定する。デュアルモードコントローラ330は、自己の動作モードをこうして決定した動作モードに切り替え、その後は、決定した動作モードに基づいて信号受信処理等を行う。
【0096】
これにより、ユーザが第1のスタイラス110及び第2のスタイラス120のいずれを利用する場合であっても、デュアルモードコントローラ330は対応する動作モードに切り替えて動作することが可能となる。
【0097】
また、第1及び第2のモードのいずれかに遷移した後には、デュアルモードコントローラ330は、仮にスタイラス100が検出されなくなった場合でもデュアルモードディスカバリ状態に即座に戻らず、各動作モードでのディスカバリを実行する。一旦ある種類のスタイラス100が検出された後は、次も同一種類のスタイラス100が利用される可能性が高いことから、これによれば、即座にデュアルモードディスカバリに切り替える場合に比してスタイラス100の検出までの時間を短縮することができることになる。
【0098】
<4.デュアルモードスタイラス>
図8Aは、
図4に示したデュアルモードスタイラス130を利用する通信システム1の例を示す図である。この例による通信システム1は、デュアルモードスタイラス130と、第1の通信方法STDのみに対応した第1のセンサコントローラ310(
図4の欄E31)又は第2の通信方法PRPのみに対応した第2のセンサコントローラ320(
図4の欄E32)のいずれか一方とにより構成される。なお、同図において
図1と同一の参照符号を付した部分は
図1において説明した部分と同様であるため、説明を省略する。
【0099】
デュアルモードスタイラス130は、
図8Aに示すペンダウン操作U1によりセンシング範囲SRに入るまでの間、自己が今から通信する相手であるセンサコントローラ300の種別が第1のセンサコントローラ310及び第2のセンサコントローラ320のいずれであるのか、知ることができない。デュアルモードスタイラス130は、当該デュアルモードスタイラス130と組み合わせて利用されるセンサコントローラ300について、スタイラス100に対して探索信号DSを送信することで双方向通信を行う第1のセンサコントローラ310である場合と、スタイラス100から送信される第2のペン信号P2の受信のみを行う第2のセンサコントローラ320である場合とが混在する混在環境において利用されるものである。
【0100】
デュアルモードコントローラ330が第1のスタイラス110のみならず第2のスタイラス120と共に動作することにかかる通信方法は、第1のモード又は第2のモードに対応するデュアルモードスタイラス130に応用することができる。例えば、第1のモードのみに対応する第1のスタイラス110は、
図5Bに示したように、ディスカバリ状態SD_STDにおいて探索信号DSを検出する処理を行った後、インターバルINTの間、第1のディスカバリを休止している。この休止期間を、第2のセンサコントローラ320に自身を検出させるための期間、すなわち、第2のペン信号P2を送信する期間として利用することが考えられる。以下、図面を参照しながら具体的に説明する。
【0101】
図8Aに示すように、デュアルモードスタイラス130は、第1の通信部111、第2の通信部121、スイッチ133、モード制御部140、及び電極101を含み構成される。
【0102】
第1の通信部111は、
図5Aに示したものと同じ機能部であり、双方向通信である第1の通信方法STD(受信動作、送信動作)を実行する。第2の通信部121は、
図6Aに示したものと同じ機能部であり、一方向通信である第2の通信方法PRP(送信動作)を実行する。
【0103】
モード制御部140は、スイッチ133を制御することにより電極101の接続先を第1の通信部111と第2の通信部121の間で切り替え、それによって、デュアルモードスタイラス130の動作モードを第1のモードと第2のモードの間で切り替える制御を行う。
【0104】
具体的に説明すると、モード制御部140はまず初めに、デュアルモードスタイラス130をディスカバリ状態(後述する
図8Bに示す状態S600)とする。この状態においてモード制御部140は、探索信号DSを検出するための受信動作(第1のモードにかかる受信処理。後述する
図8Bに示す状態S610)と、第2のペン信号P2の送信動作(第2のモードにかかる送信処理。後述する
図8Bに示す状態S621)とを交互に繰り返すよう、デュアルモードスタイラス130を制御する。なお、探索信号DSは、もしセンサコントローラ300が第1のセンサコントローラ310であれば、双方向通信である第1の通信方法STDに基づいて第1のセンサコントローラ310からデュアルモードスタイラス130へ送信されるべき信号である。また、第2のペン信号P2は、スタイラス100から第2のセンサコントローラ320に向けての一方向通信である第2の通信方法PRPに基づいて、第2のスタイラス120からセンサコントローラ320へ向けて間欠的に送信される信号である。
【0105】
モード制御部140は、ディスカバリ状態S600において探索信号DSを検出した場合に、第2のペン信号P2の送出を停止し、デュアルモードスタイラス130の動作モードを第1のモードに切り替える(後述する
図8Bに示す状態S612)。
【0106】
また、モード制御部140は、デュアルモードスタイラス130がディスカバリ状態にある間、筆圧を監視する処理を行う。これにより、ユーザのペンタッチ操作U2によってデュアルモードスタイラス130の先端が電子機器3の操作面に接した場合に、モード制御部140は有効な筆圧値(0より大きい値)を検出することになる。詳しくは
図8Bを参照しながら後述するが、モード制御部140は、こうしてデュアルモードスタイラス130が操作面に接したことを検出した場合、第1のモードにかかる受信動作(すなわち、探索信号DSの間欠的な検出)を停止し、第2のモードにかかる第2のペン信号P2の送信を連続して行うように、デュアルモードスタイラス130を制御する(後述する
図8Bに示す状態S620)。
【0107】
モード制御部140は、その後も引き続き筆圧を監視する処理を行い、有効な筆圧値を検出しなくなったことを検知した場合に、ペンアップ操作U4などによりデュアルモードスタイラス130が操作面から離間した(接触されなくなった)ことを検出する(後述する
図8Bに示すIN2200)。そして、デュアルモードスタイラス130をディスカバリ状態(後述する
図8Bに示す状態S600)に復帰させる。
【0108】
図8Bは、デュアルモードスタイラス130の状態遷移図の一つの例である。同図に示すように、デュアルモードスタイラス130の初期状態は、第1のセンサコントローラ310及び第2のセンサコントローラ320の両方の検出に対応するデュアルモードディスカバリ状態S600である。このデュアルモードディスカバリ状態S600においてデュアルモードスタイラス130は、探索信号DSを検出するための第1の通信部111による受信動作(第1のモードにかかる受信処理。状態S610)と、第2のペン信号P2を間欠的に送信するための第2の通信部121による送信動作(第2のモードにかかる送信処理。状態S621)とを、交互に時分割で実行する。デュアルモードディスカバリ状態S600は、探索信号DSを検出するか(IN0012)、或いは、ペンダウン操作U1(又はそれに連続するペンタッチ操作U2)を検出する(IN0010又はIN0020)まで継続される。
【0109】
デュアルモードディスカバリ状態S600においてペンダウン操作U1或いはペンタッチ操作U2を検出した場合、デュアルモードスタイラス130は、探索信号DSを検出するための第1の通信部111による受信動作を再度実施する(状態S610a)。なお、ペンタッチ操作U2の検出は、例えばデュアルモードスタイラス130に設けられた筆圧検出部(図示せず)が有効な筆圧値(0より大きい値)を検出することなどによって行うことができる。
【0110】
状態S610aは、既にペンタッチ操作U2が行われ摺動操作U3が始まっている状態において、デュアルモードスタイラス130が、第1の通信方法STD或いは第2の通信方法PRPのいずれを用いて通信を行うかを強制的に決定するための処理を行う状態である。
【0111】
状態S610aにおいて探索信号DSが検出された場合、デュアルモードスタイラス130は状態S612に遷移し、第1のモードでの動作を開始する。状態S612では、所定の周期で探索信号DSを検出する(IN1212)など、第1のモードでの通信が維持される限り、第1のモードでの動作が続けられる。
【0112】
一方、状態S610aにおいて探索信号DSを検出しない場合、デュアルモードスタイラス130は状態S620に遷移し、第2のモードでの動作を開始する。
【0113】
ここで、状態610aの動作は省略することも可能である(IN0020)。すなわち、デュアルモードディスカバリ状態S600で探索信号DSが検出されないままペンタッチ操作U2が行われた(有効な筆圧値が検出された)ということは、センサコントローラ300が探索信号DSを送信していないということを意味している可能性が高い。つまり、センサコントローラ300は第2のセンサコントローラ320である可能性が高いと言える。したがって、状態S610aに遷移して探索信号DSの有無を確認せず、直接状態S620に遷移するとしても、状態S610aを経由する場合と同じ結果が得られる可能性が高いと言える。しかも、状態S610aを経由しない分、迅速に状態S620に遷移することが可能になる。
【0114】
状態S620の第2のモードにおいて、デュアルモードスタイラス130は、第2の通信方法PRPに基づく第2のペン信号P2の送信を所定回数(例えば、Count値がNを越えない間)繰り返す(状態S621a)。そして、この繰り返しが終了した後、デュアルモードスタイラス130は、操作面にタッチしているか否かを判定する状態S622に遷移する(IN2122)。
【0115】
状態S622において操作面にタッチしていると判定した場合、デュアルモードスタイラス130は状態S621aに戻り(IN2220)、再度第2のペン信号P2の繰り返し送信を行う。一方、状態S622において操作面にタッチしていないと判定した場合(操作面から離れたと判定した場合)、デュアルモードスタイラス130はデュアルモードディスカバリ状態S600に復帰し(IN2200)、再び探索信号DSの検出と第2のペン信号P2の間欠送信動作を行う。
【0116】
図8Cは、
図4に示した欄E31の組み合わせ(第1のセンサコントローラ310とデュアルモードスタイラス130との組み合わせ)による通信システム1の動作例を示している。同図において、
図5B又は
図6Bと同一の参照符号を付した部分は
図5B又は
図6Bにおいて説明した部分と同様であるため、説明を省略する。同図上段は、デュアルモードスタイラス130の動作状態、送信信号Tx、及び受信信号Rxを上から順に示している。同図下段は、第1のセンサコントローラ310の送信信号Tx、受信信号Rx、及び動作状態を上から順に示している。
【0117】
<4.1 第1のセンサコントローラ310の動作>
第1のセンサコントローラ310の動作は、第1のセンサコントローラ310本来の動作である
図4Bを参照して説明した動作と同じであるため、説明を省略する。
【0118】
<4.2 デュアルモードスタイラス130の動作>
時刻t0までの間、デュアルモードスタイラス130は、
図8Bに示したデュアルモードディスカバリ状態S600で動作している。デュアルモードディスカバリ状態S600にあるデュアルモードスタイラス130は、探索信号受信期間Rdの間、第1のセンサコントローラ310からの探索信号DSの受信処理を行う。この探索信号DSの受信期間Rdは、1回のペンタッチ操作U2がされた後最小の時間間隔で探索信号DSを検出できるように、探索信号DSの送信インターバル(例えば16msec)よりも長い連続時間(例えば20msec)で設定され、かつ、一定のインターバルINTをおいて設けられる。デュアルモードスタイラス130は、このインターバルINTの間を利用して、間欠的に第2のペン信号P2を送信する。
【0119】
時刻t0でペンダウン操作U1がなされると、デュアルモードスタイラス130はセンシング範囲SR(
図8A参照)に入る。センシング範囲SRに入った後、デュアルモードスタイラス130は、時刻t1で最初の探索信号DSを受信する。
【0120】
デュアルモードスタイラス130は、探索信号DSの検出を契機として、自己の動作状態をデュアルモードディスカバリ状態S600から第1のモード(
図8Bに示した状態S612)に遷移させる(
図8Bに示したIN0012)。また、デュアルモードスタイラス130は、探索信号DSへの応答信号として探索応答信号ACKを返信する。
【0121】
時刻t2〜t3までの間、デュアルモードスタイラス130は、第1のモードの状態で動作し続ける。すなわち、探索信号DSを受信期間Rdで繰り返し受信しつつ、探索信号DSを基準時刻とした時間スロットを用いて、第1のペン信号P1の送信を繰り返す。
【0122】
時刻t3でユーザによりペンアップ操作U4がなされ、センシング範囲SRからデュアルモードスタイラス130が退出することで、受信期間Rdにセンサコントローラ310からの信号の受信がなされなくなると、デュアルモードスタイラス130は自己の動作状態を、第1のモードから、再びデュアルモードディスカバリ状態S600に戻す(
図8Bに示したIN1200)。
【0123】
図8Dは、
図4に示した欄E32の組み合わせ(第2のセンサコントローラ320とデュアルモードスタイラス130との組み合わせ)による通信システム1の動作例を示している。同図において、
図5B又は
図6Bと同一の参照符号を付した部分は
図5B又は
図6Bにおいて説明した部分と同様であるため、説明を省略する。同図上段は、デュアルモードスタイラス130の動作状態、送信信号Tx、及び受信信号Rxを上から順に示している。同図下段は、第2のセンサコントローラ320の送信信号Tx、受信信号Rx、及び動作状態を上から順に示している。
【0124】
<5.1 第2のセンサコントローラ320の動作>
第2のセンサコントローラ320の動作は、第2のセンサコントローラ320本来の動作である
図6Bを参照して説明した動作と同じであるため、説明を省略する。
【0125】
<5.2 デュアルモードスタイラス130の動作>
時刻t0までの間、デュアルモードスタイラス130は、
図8Bに示したデュアルモードディスカバリ状態S600で動作している。デュアルモードディスカバリ状態S600にあるデュアルモードスタイラス130は、探索信号受信期間Rdの間、第1のセンサコントローラ310からの探索信号DSの受信処理を行う。また、デュアルモードスタイラス130は、受信期間RdのインターバルINTの間を利用して、間欠的に第2のペン信号P2を送信する。
【0126】
時刻t0でペンダウン操作U1がなされると、デュアルモードスタイラス130はセンシング範囲SR(
図8A参照)に入る。さらにペンタッチ操作U2がなされると、デュアルモードスタイラス130は、筆圧値の変化からこれを検出する。ペンタッチ操作U2を検出したデュアルモードスタイラス130は、自己の動作状態を第2のモード(
図8Bに示した状態S620)に切り替え(
図8Bに示したIN0020)、第2のペン信号P2の繰り返し送信(
図8Bに示したIN2020)を開始する。その後、時刻t3までの間、デュアルモードスタイラス130は、第2のペン信号P2を送信し続ける。
【0127】
時刻t3でユーザによりペンアップ操作U4がなされると、デュアルモードスタイラス130は、筆圧値の変化からこれを検出する。そして、ペンアップ操作U4を検出したデュアルモードスタイラス130は自己の動作状態を、第2のモードから、再びデュアルモードディスカバリ状態S600に戻す(
図8Bに示したIN2200)。
【0128】
このように、本実施の形態によるデュアルモードスタイラス130は、第1の通信方法STD(双方向通信)に基づく探索信号DSの受信処理と、第2の通信方法PRP(一方向送信)に基づく第2のペン信号の間欠的な送信処理とを、交互に繰り返すデュアルモードディスカバリを実行する。また、ペンタッチ操作U2を検出した後には、第2のペン信号P2の送信処理を連続して行う。
【0129】
この構成により、デュアルモードスタイラス130は、スタイラス100に対して探索信号DSを送出する第1のセンサコントローラ310と組み合わされた場合には、第1の通信方法STDに対応する第1のモードで動作する。また、探索信号DSの送信を行わず第2のペン信号P2の受信処理のみを行なう第2のセンサコントローラ320と組み合わされて利用される場合には、実際にデュアルモードスタイラス130が操作面上で有効に利用されるタイミングであるユーザのペンタッチ操作U2を検出した後、連続して第2のペン信号P2を送信する通常の第2のモードで動作することが可能となる。
【0130】
このように、本実施の形態によれば、双方向通信を利用する第1のセンサコントローラ310と、一方向受信を利用する第2のセンサコントローラ320とのどちらと組み合わせて利用される場合にも有益なデュアルモードスタイラス130を実現することができる。
【0131】
以上説明したように、本発明の第1の実施の形態によれば、センサコントローラ300とスタイラス100の組み合わせが
図4に示した欄E11,E13,E22,E23,E31,E32のいずれであっても、好適にこれらを使用し、ペン入力を行うことが可能になる。
【0132】
(第2の実施の形態)
次に、本発明の第2の実施の形態について説明する。本実施の形態も、スタイラス100とセンサコントローラ300の通信方法に関する。
【0133】
スタイラス100には、後述する
図11の表の各行に示す種別のスタイラスが存在する。
図11の種別は、
図3の表の各行に示したスタイラス100の種別(第1のスタイラス110、第2のスタイラス120、デュアルモードスタイラス130)について、第2の通信方法を第2−1の通信方法と第2−2の通信方法に区別することにより詳細化したものである。すなわち、第1の通信方法のみに対応する第1の通信部111を含む第1のスタイラス110、第2−1の通信方法のみに対応する第2の通信部121を含む第2のスタイラス120、第2−2の通信方法のみに対応する第2の通信部122を含む第2のスタイラス120、第1の通信部111に加えて拡張機能を実現するための第2の通信部121を含むデュアルモードスタイラス130、並びに、第1の通信部111に加えて拡張機能を実現するための第2の通信部122を含むデュアルモードスタイラス130の5種類のスタイラス100が存在する。
【0134】
同様に、センサコントローラ300には、
図11の表の各列に示す種別のセンサコントローラが存在する。
図11の種別は、
図3の表の各列に示したセンサコントローラ300の種別(第1のセンサコントローラ110、第2のセンサコントローラ120、デュアルモードコントローラ130)について、第2の通信方法を第2−1の通信方法と第2−2の通信方法に区別することにより詳細化したものである。すなわち、第1の通信方法のみに対応する第1の通信部311を含む第1のセンサコントローラ310、第2−1の通信方法のみに対応する第2の通信部321を含む第2のセンサコントローラ320、第2−2の通信方法のみに対応する第2の通信部322を含む第2のセンサコントローラ320、第1の通信部311に加えて拡張機能を実現するための第2の通信部321を含むデュアルモードコントローラ330、並びに、第1の通信部311に加えて拡張機能を実現するための第2の通信部322を含むデュアルモードコントローラ330の5種類のセンサコントローラ300が存在する。
【0135】
スタイラス100とセンサコントローラ300とが構成する通信システム1には、これら5つの種別のスタイラス100のいずれかと、これら5つの種別のセンサコントローラ300のいずれかとにより、少なくとも25通りの組み合わせが考えられる。本実施の形態では、後述するディスカバリに基づいて、第1の通信方法又は第2の通信方法(第2−1の通信方法若しくは第2−2の通信方法)のいずれかの通信方法が決定され実行される。
【0136】
図9Aは、第1の通信方法を実行する通信システム1の例を示す概要図である。同図の通信システム1は、第1のスタイラス110と第1のセンサコントローラ310とを含み構成される。これら第1のスタイラス110と第1のセンサコントローラ310はそれぞれ、
図5Aに示した第1の実施の形態による第1のスタイラス110と第1のセンサコントローラ310に対応するものである。
【0137】
第1のスタイラス110は、アクティブ式の静電スタイラスの一種であり、第1のセンサコントローラ310との間で第1の通信方法に準拠した通信を実行できるが、第2の通信方法に準拠した通信を実行することはできない。第1のスタイラス110は、第1の通信部111及び電極101を含み構成される。
【0138】
第1の通信部111は、第1のセンサコントローラ310との間で、第1の通信方法に準拠した、スタイラスとセンサとの容量結合を利用した双方向通信を実行する。第1の通信部111は図示しない発振回路を含み、電極101を介して、第1の通信方法に準拠した応答信号ACK及び第1のペン信号P1を送信する。
【0139】
本実施の形態の第1のスタイラス110は、第1のスタイラス110が実行可能な機能であってユーザの操作状態によっては変化しない情報(例えば、サイドスイッチの有無、後述する拡張機能の有無)を記述する機能情報FDや、スタイラスの固有番号を示すIDなどの情報を、応答信号ACKに含めて送信する。第1のペン信号P1は、第1のスタイラス110の位置や筆圧等の操作状態等、スタイラスの操作状態によって変化するデータを送信するための信号である。
【0140】
第1の通信部111は、センサコントローラ300から送信された第1の制御信号C1_U(探索信号DS)を受信する。第1の制御信号C1_Uは、第1の実施の形態の探索信号DSに対応する信号である。本実施の形態の探索信号DSは、探索パターンDPに制御コマンドCMDが連結される形で構成されている。制御コマンドCMDは、スタイラス100に対し応答信号ACKに含めて機能情報FDの送信を要求したり、スタイラス100に対して機能に基づく操作状態情報(筆圧情報や後述する拡張情報)を送信するタイミングを指定する制御信号となる。
【0141】
電極101は、第1のスタイラス110が第1のペン信号P1を送信し、また、第1の制御信号C1_U(探索信号DS)を受信するために用いられる電極である。
【0142】
電子機器3は、電子機器制御部351、センサ201、及び、第1のセンサコントローラ310含み構成される。電子機器制御部351は、電子機器3全体を動作させるための制御部であり、I2CやUSB等のバスを介して第1のセンサコントローラ310が生成したペンデータの入力を受け付け、ペンデータに含まれる座標位置や筆圧値等の情報に基づいてスタイラス100の示す位置を画面表示するため等の情報処理を行う。
【0143】
センサ201は、
図3を参照して説明したように、例えば電子機器3の操作面にマトリクス状に形成された電極群である。第1のスタイラス110が送信した信号(応答信号ACKや第1のペン信号P1など)の受信時には、受信信号に応じて電極群に誘導される電荷を用い、電流或いは電圧の形式で、第1のセンサコントローラ310に対して受信信号に対応した信号を供給する。また、第1のセンサコントローラ310から信号(探索信号DS(第1の制御信号C1_U)など)を送信する時には、送信信号に対応した電荷をセンサの電極群に誘導し、電位或いは電界の変化の形式で、第1のスタイラスの第1の通信部111に信号を供給する。
【0144】
第1のセンサコントローラ310は、センサコントローラ300の一種であって、第1のスタイラス110又はデュアルモードスタイラス130など、少なくとも第1の通信方法に対応したスタイラス100とのみ通信を行うことができる。第1のセンサコントローラ310は、
図9Aに示すように、第1の通信部311及びディスカバリ部340を含み構成される。
【0145】
第1の通信部311は、第1の通信方法に対応する双方向通信処理を行う。具体的には、第1のスタイラス110の第1の通信部111から第1のペン信号P1を受信し、受信した電極の位置と受信信号のレベル等の値から第1のスタイラス110の指示位置を導出する処理を行うとともに、センサ201の電極を介して第1の制御信号C1_U(探索信号DS)を送出する処理を行う。第1の通信部311は、こうして第1のスタイラス110の第1の通信部111との間で双方向通信を行う。
【0146】
ディスカバリ部340は、第1の通信部311の通信機能を利用して第1のスタイラス110等を探索するディスカバリと、ディスカバリの結果に基づいたモード決定処理とを実行する。
【0147】
図9Bは、第2の通信方法を実行する通信システム1の例を示す概要図である。同図の通信システム1は、第2のスタイラス120と第2のセンサコントローラ320とを含み構成される。
図9Bで、
図9Aと同一の参照符号を付した部分は、
図9Aを参照して説明した部分と同様である。第2のスタイラス120と第2のセンサコントローラ320はそれぞれ、
図6Aに示した第1の実施の形態による第2のスタイラス120と第2のセンサコントローラ320に対応するものである。
【0148】
第2のスタイラス120は、アクティブ型の静電スタイラスの一種であって、第2のセンサコントローラ320との間で第1の通信方法と異なる第2の通信方法での通信を実行する。第2のスタイラス120は、第1の通信方法に準拠した通信を実行することはできない。第2のスタイラス120は、第2の通信部121若しくは第2の通信部122のいずれか、及び電極101を含み構成される。
図11に示すように、第2のスタイラス120には、第2の通信部121を含むものと第2の通信部122を含むものとが存在するが、本実施の形態では、これらを総称して第2のスタイラス120と称する。
【0149】
第2の通信部121は、第2の通信方法のうちの1つである第2−1の通信方法に準拠した通信を実行する通信部であり、第2の通信部122は、第2の通信方法のうちの他の通信方法である第2−2の通信方法に準拠した通信を実行する通信部である。なお、「第2の通信方法」という用語は、第1の通信方法と異なる通信方法という意味であり、本実施の形態では第2−1の通信方法及び第2−2の通信方法を総称するものとして使用する。
【0150】
第2の通信部121は、第2のスタイラス120の位置を示すための第2のペン信号P2を電極101から送信する機能を有する。第2のペン信号P2の破線矢印の向きは、この送信が第2の通信部121から第2のセンサコントローラ320に向けた1方向の通信であることを示している。なお、
図9Bに示すように、第2の通信部121は、例えばBluetooth(登録商標)や他の既存の無線通信技術を利用して、第2のセンサコントローラ320から第2の制御信号C2_Uの受信を行うことができるとしてもよい。
【0151】
図9Bの電子機器3は、電子機器制御部351、センサ201、第2のセンサコントローラ320、及びアンテナ202を含み構成される。
【0152】
第2のセンサコントローラ320は、センサコントローラ300のうち第2の通信方法に基づいて第2のスタイラス120と信号の送受信を行うことができるセンサコントローラである。第2のセンサコントローラ320は、第2の通信部321又は第2の通信部322のいずれか一方と、ディスカバリ部340とを含み構成される。なお、
図11にも示す通り、第2のセンサコントローラ320には第2の通信部321を含むものと第2の通信部322を含むものとが存在するが、本実施の形態では、これらを総称して第2のセンサコントローラ320と称する。
【0153】
第2の通信部321は、前述した第2−1の通信方法に準拠した通信(信号受信)を行う。具体的には、第2のペン信号P2を受信した電極の位置と受信信号のレベル等の値から、第2のスタイラス120の指示位置を導出する。なお、第2−1の通信方法独自の拡張機能として、第2のペン信号P2には、第2のスタイラス120の固有番号を示すスタイラスIDや筆圧値等の情報に加え、スタイラスの傾きを示すチルト情報や軸芯まわりの回転量を示すツイスト情報拡張情報が重畳されている。第2の通信部321は、それらの拡張情報を、指定されたタイミングで抽出し送信する機能も有している。なお、第2の通信部321は、例えば、Bluetooth(登録商標)や既存の無線通信技術を利用し、アンテナ202を介して、
図9Bに破線矢印で示す方向に制御信号C2_Uを送出することができるとしてもよい。
【0154】
第2の通信部322は、前述した第2−2の通信方法に準拠した通信(信号受信)を行う。
【0155】
ディスカバリ部340は、第2の通信部321又は第2の通信部322の機能を利用して第2のスタイラス120を検出するディスカバリと、ディスカバリの結果に基づいたモード決定処理とを実行する。
【0156】
図9Cは、第1の通信方法又は第2の通信方法のいずれかを選択的に実行する通信システム1の概要図である。同図の通信システム1は、デュアルモードスタイラス130とデュアルモードコントローラ330とを含み構成される。デュアルモードスタイラス130は、
図8Aに示した第1の実施の形態によるデュアルモードスタイラス130に対応し、デュアルモードコントローラ330は、
図7Aに示した第1の実施の形態によるデュアルモードコントローラ330に対応する。
【0157】
デュアルモードスタイラス130は、デュアルモードコントローラ330との間で、第1の通信方法及び第2の通信方法の2つの通信方法で通信を実行することができるスタイラスである。
図11に示すように、デュアルモードスタイラス130には、第2の通信部121を含むものと第2の通信部122を含むものとが存在するが、本実施の形態では、これらを総称してデュアルモードスタイラス130と称する。
【0158】
デュアルモードスタイラス130は、第1の通信部111、第2の通信部121(又は第2の通信部122)、スイッチ133、モード制御部140、及び電極101を含み構成される。なお、
図9Cで、
図9A又は
図9Bと同一の参照符号を付した部分は、これらの図を参照して説明した部分と同様である。
【0159】
モード制御部140は、第1の制御信号C1_U(探索信号DS)に含まれる動作モード変更コマンドMCC(後述)に基づいて、スタイラス130の動作モードを切り替えるスタイラスモード切替信号SMCを発行する機能部である。第1の制御信号C1_U(探索信号DS)は、デュアルモードコントローラ330が、双方向通信を行う第1の通信方法に基づいて行われるディスカバリにおいて生成し送信するもので、スタイラスとセンサとの間の容量結合を利用した第1の通信方法により第1の通信部111によって受信される。
【0160】
スイッチ133は、モード制御部140から供給されるスタイラスモード切替信号SMCに従い、電極101の接続先を第1の通信部111と第2の通信部121(又は第2の通信部122)との間で切り替えるスイッチである。
【0161】
デュアルモードスタイラス130は、第1の通信部111を利用して、デュアルモードコントローラ330との間で第1の通信方法による双方向通信を行う。この双方向通信によりデュアルモードスタイラス130が送信する信号には
図9Aを参照して説明した応答信号ACKが含まれるが、この場合の応答信号ACKに含まれる機能情報FDには、上でも触れたように、第1の通信部111の機能に関する情報のみならず第2の通信部121(又は第2の通信部122)の機能による拡張機能の情報が含まれる。
【0162】
拡張機能は、第1のモードで対応する第1のスタイラスの機能(第1のモードの標準機能)を拡張してなる拡張機能であって、具体的には、スタイラス100が自身に関する各種の情報(拡張情報)を取得し、取得した拡張情報を第1の通信方法または第2の通信方法によりセンサコントローラ300に対して送信する機能を含む。拡張情報の具体例としては、上述したスタイラスIDの他、スタイラス100に施された色を示す色情報、スタイラス100の中心軸周りの回転量を示すツイスト情報、スタイラス100の傾きを示すチルト情報などが挙げられる。拡張情報は、これらの拡張情報のうちのどの拡張機能をスタイラス100がサポートしているか否か(各拡張機能を実行することが可能か否か)を示すフラグを含むフラグ形式にて送信されることとしてもよい。
【0163】
図9Cの電子機器3は、電子機器制御部351、センサ201、及びデュアルモードコントローラ330を含み構成される。デュアルモードコントローラ330は、第1の通信方法及び第2の通信方法の2つの通信方法を利用可能なセンサコントローラであり、第1の通信部311と、第2の通信部321又は第2の通信部322のいずれか一方と、スイッチ333と、ディスカバリ部340とを含み構成される。なお、
図11にも示す通り、デュアルモードコントローラ330には、第2の通信部321を含むものと第2の通信部322を含むものとが存在するが、本実施の形態では、これらを総称してデュアルモードコントローラ330と称する。
【0164】
デュアルモードコントローラ330の第1の通信部311が送信する探索信号DS(第1の制御信号C1_U)には、制御コマンドCMDとして上述した応答要求信号などの他に、制御コマンドCMDとしてデュアルモードスタイラス130に対して拡張情報の送信を指示する動作モード変更コマンドMCCが含まれ得る。動作モード変更コマンドMCCの使用方法については後述する。
【0165】
ディスカバリ部340は、第1の通信部311、及び、第2の通信部321(又は第2の通信部322)の通信機能を利用し、第1のスタイラス110、第2のスタイラス120、又は、デュアルモードスタイラス130を探索するディスカバリと、ディスカバリの結果に基づいたモード決定処理とを実行する。また、ディスカバリ部340は、モード決定処理の結果に応じて、例えばスイッチ333を切り替えるためのセンサコントローラ切替信号TCMCを生成する。
【0166】
スイッチ333は、センサコントローラ切替信号TCMCに従い、センサ201の接続先を第1の通信部311と第2の通信部321(又は第2の通信部322)との間で切り替えるスイッチである。
【0167】
ここで、
図9Cにおいてスイッチ133とスイッチ333とを一点鎖線で結び「同期」と記したのは、スイッチ133とスイッチ333とが同期して切り替えられることを意味している。すなわち、デュアルモードスタイラス130内部の状態と、デュアルモードコントローラ330の内部の状態とは、後述するディスカバリの結果に基づいたモード決定処理により、同期して切り替えられる。例えば、モード決定処理によって第2の通信方法(第1の通信方法を拡張した拡張機能を含む)を用いると決定された場合には、スイッチ133が第2の通信部121(又は第2の通信部122)側に、スイッチ333が第2の通信部321(又は第2の通信部322)側に、同期するタイミングで切り替えられる。これにより、デュアルモードスタイラス130とデュアルモードコントローラ330とは、協調して同じタイミングで第2の通信方法の利用を開始できることになる。第1の通信方法の利用を開始する場合についても同様である。
【0168】
図10は、ディスカバリとモード決定処理を説明するためのデュアルモードコントローラ330の状態遷移図である。
図10は、第1の実施の形態の
図7Bの状態遷移図に対応する。
【0169】
デュアルモードコントローラ330は、初期状態S200からまずディスカバリフェイズに入る。ディスカバリフェイズはスタイラス100を発見するためのフェイズであり、そのフェーズ中では、デュアルモードコントローラ330は、デュアルモードディスカバリ状態SD_DUALで動作し、第1の通信方法に対応したスタイラス100を探す第1のディスカバリ(状態S201)と、第2の通信方法に対応したスタイラス100を探す第2のディスカバリ(状態S202)とを交互に繰り返し実行する。以下、詳しく説明する。
【0170】
<1.ディスカバリフェイズ>
まず、状態S201で、デュアルモードコントローラ330は、第1の通信方法に対応したスタイラス100を探索する第1のディスカバリを実行する。ここでいう「第1の通信方法に対応したスタイラス100」には、第1の通信方法のみに対応した第1のスタイラス110、並びに、第1の通信方法及び第2の通信方法に対応したデュアルモードスタイラス130の2つの種類が含まれる。
【0171】
第1のディスカバリの探索は、双方向通信を実行する第1の通信方法を利用する第1の通信部311を用いて行われる。ディスカバリ部340は、デュアルモードコントローラ330がスタイラス100に向けて送出する第1の制御信号C1_U(探索信号DS)に呼応して、又は自律的に、スタイラス100が送信した応答信号ACK又は第1のペン信号P1を検出することで、第1のスタイラス110又はデュアルモードスタイラス130の存在を検出する。
【0172】
デュアルモードコントローラ330はまた、スタイラス100としてデュアルモードスタイラス130を検出した場合には、そのデュアルモードスタイラス130が送信した応答信号ACKに含まれる機能情報FDから、そのデュアルモードスタイラス130がサポートしている第2の通信方法の種別(第2−1の通信方法又は第2−2の通信方法)及びその拡張機能を取得する。なお、デュアルモードコントローラ330は、受信した応答信号ACKに含まれていた機能情報FDの中に第2の通信方法の種別及びその拡張機能が記述されていた場合に、その機能情報FDを送信したスタイラス100について、第1のスタイラス110ではなくデュアルモードスタイラス130であると判定し、以降の処理においてデュアルモードスタイラス130として取り扱うこととしてもよい。
【0173】
状態S201においてスタイラス100が検出されない場合、デュアルモードコントローラ330の状態は状態S202に遷移する(IN12)。
【0174】
状態S202では、デュアルモードコントローラ330は、第2の通信方法に準拠した第2のスタイラス120、すなわち、第2の通信部321又は第2の通信部322に適合するスタイラス100を探索するために第2のディスカバリを実行する。なお、第2のディスカバリにおけるスタイラス100の探索は、例えば、第2の通信部321(又は第2の通信部322)が第2のペン信号P2を受信するか否かに基づいて行うことが好適である。
【0175】
状態S202において第2のスタイラス120が検出されない場合、デュアルモードコントローラ330の状態は状態S201に戻り(IN21)、再び第1のディスカバリが実行される。
【0176】
このように、ディスカバリフェイズでは、継続的に、それぞれ第1の通信方法に対応する第1のスタイラス110及びデュアルモードスタイラス130を探索する第1のディスカバリと、第2のスタイラス120を探索する第2のディスカバリとが交互に繰り返し実行される。第1のスタイラス110、第2のスタイラス120、又はデュアルモードスタイラス130のいずれも検出されない限り、ディスカバリフェイズが続行される。
【0177】
<2.第2のスタイラス120が検出された場合>
状態S202において第2の通信部321又は第2の通信部322の通信方法に適合する第2のスタイラス120が検出された場合(IN220)、センサコントローラ300の状態は状態S220に遷移する。
【0178】
状態S220は、デュアルモードコントローラ330及びスタイラス100のそれぞれが、第2の通信方法で通信を行うための第2のモードで動作する状態である。デュアルモードコントローラ330は、一旦第2のモードで動作を開始すると、その後一定の期間は、第2の通信方法に準拠した第2のモードでの動作や第2の通信方法に特化した探索処理である第2のスタイラス専用ディスカバリを継続する。
【0179】
第2のモードで動作を行っているデュアルモードコントローラ330(状態S220)が第2のスタイラス120を検出しなくなった場合、デュアルモードコントローラ330の状態は、第2のスタイラス120のみを所定の期間(例えば10秒、例えばN回等)継続して探索する状態S221に遷移する(IN2021)。
【0180】
状態S221は、センサコントローラ300が第2のスタイラス専用ディスカバリを実行する状態である。第2のスタイラス専用ディスカバリは、第2の通信方法に特化した探索処理であり、第1の通信方法に対応したスタイラス100(デュアルモードスタイラス130を含む)は検出対象外となる。一般的なスタイラス100の利用形態として、ユーザはペンダウン操作U1からペンアップ操作U4までを1つのストロークとして、ストロークが終わるたびに次のストロークが開始されるまでの期間、一旦スタイラス100をセンサ201から離間させる。状態S221はこのような場合を想定して設けられているもので、一旦第2のスタイラス120が検出された後に再度検出されるスタイラス100は第2のスタイラス120である可能性が高いという仮定の下、第2のスタイラス120に特化した探索を行う。
【0181】
このように、本実施の形態では、第2のスタイラス専用ディスカバリにおいて、第1の通信方法による探索時間を設けずに、第2のスタイラス120の検出に特化した第2のスタイラス専用ディスカバリを繰り返し行う(IN2121)。その結果、例えばN回の探索によっても第2のスタイラス120が検出されない場合には、センサコントローラ200は第2のモードでの動作状態を解除し、ディスカバリフェイズ内の状態S201に戻る(IN211)。これにより、第2のスタイラス120が短時間の離隔を挟みながら継続して利用される場合において、第2のスタイラス120の検出の速度(応答速度)を多くの場合で向上することが可能になる。
【0182】
状態S221において再び第2のスタイラス120を検出した場合には、デュアルモードコントローラ330は状態S220に復帰し(IN2120)、第2のモードでの動作を維持継続する。
【0183】
<3.第1の通信方法に対応したスタイラス100が検出された場合>
ディスカバリフェイズ内の状態S201において第1のディスカバリを実施した結果、第1のスタイラス110或いはデュアルモードスタイラス130が検出された場合、デュアルモードコントローラ330の状態は状態S203に遷移する(IN13)。
【0184】
状態S203では、デュアルモードコントローラ330が、第1のディスカバリにより検出されたスタイラス100の種別とデュアルモードコントローラ330の種別とに基づいて、動作モードを決定するモード決定ステップを実行する。
【0185】
<3A.第1のスタイラス110が検出された場合>
第1のディスカバリで第1のスタイラス110が検出された場合、状態S203においてデュアルモードコントローラ330は、動作モードを第1のモードと決定し、自己の状態を状態S210に遷移させる(IN310)。
【0186】
状態S210でデュアルモードコントローラ330は、第1の通信方法に基づいた第1のモードで動作を行う。第1のモードでは、デュアルモードコントローラ330は第1のスタイラス110とのペアリング等、第1の通信方法に特化した動作(追加スタイラスサーチ、スタイラスのサーチ等の機能)を維持しようとする。
【0187】
具体的には、デュアルモードコントローラ330が複数本の第1のスタイラス110の同時使用に対応する場合、デュアルモードコントローラ330は、自己の状態を状態S211に遷移させる(IN1011)。
【0188】
状態S211においてデュアルモードコントローラ330は、追加の第1のスタイラス110を探索するために第1のスタイラス専用ディスカバリを実行する。この処理は、検出済の第1のスタイラス110に加えて更に追加の第1のスタイラス110を探索する処理である。状態S211において追加の第1のスタイラス110が検出された場合、デュアルモードコントローラ330の状態は、追加の複数本の第1のスタイラス110を検出可能な状態210に復帰する(IN1110)。
【0189】
状態S210においてデュアルモードコントローラ330が1本の第1のスタイラス110をも検出しなくなった場合、デュアルモードコントローラ330は、第1のスタイラス110の検出を所定の期間(例えば10秒、例えばN回等)継続して実行する処理を行う状態S213に遷移する(IN1013)。
【0190】
状態S213では、現在第1のモードで動作しているデュアルモードコントローラ330が、その第1のモードでの動作を維持し続けるか否かを決定するために、第1のスタイラス専用ディスカバリを実行する。デュアルモードコントローラ330は、第1のスタイラス110が発見されない限り最大N−1回(Nは2以上)まで第1のスタイラス専用ディスカバリを繰り返し実行し(IN1313)、そのいずれかの探索にて第1のスタイラス110が検出された場合、状態S210に示す第1のモードに復帰する(IN1310)。
【0191】
一方、N−1回の第1のスタイラス専用ディスカバリによっても第1のスタイラス110を検出できない場合には、デュアルモードコントローラ330は、第1のモードでの動作を解除し、ディスカバリフェイズ内の状態S201に戻る(IN131)。その後のデュアルモードコントローラ330は、ディスカバリフェイズにおける第1のディスカバリと第2のディスカバリの交互の探索処理を再び開始する。
【0192】
<3B.デュアルモードスタイラス130が検出された場合>
一方、第1のディスカバリでデュアルモードスタイラス130が検出された場合、デュアルモードコントローラ330は、検出されたデュアルモードスタイラス130によって送信された応答信号ACKに含まれていた機能情報FDを参照し、自己がサポートする第2の通信方法(あるいは拡張機能)と、検出されたデュアルモードスタイラス130がサポートする第2の通信方法(拡張機能)とが適合するか否かを判定する。
【0193】
(a)適合しない場合
例えば、ディスカバリで検出されたスタイラス100が第2−1の通信方法に対応するデュアルモードスタイラス130であり、デュアルモードコントローラ330が第2−1の通信方法に対応する第2の通信部321を備えていない場合、デュアルモードコントローラ330は自己の動作モードを第1のモードと決定し、デュアルモードコントローラ330の状態は第1の通信方法に適合する第1のモードを実行する状態S210に遷移する(IN310)。これ以降、検出されたデュアルモードスタイラス130との間で第1の通信方法による通信が行われることになる。
【0194】
(b)適合する場合
例えば、ディスカバリで検出されたスタイラス100が第2−1の通信方法に対応するデュアルモードスタイラス130であり、デュアルモードコントローラ330が第2−1の通信方法(拡張機能)に対応する第2の通信部321を備えている場合、デュアルモードコントローラ330は、(i)デュアルモードスタイラス130とデュアルモードコントローラ330とが共に第1のモードで動作し続けるか、或いは、(ii)デュアルモードスタイラス130とデュアルモードコントローラ330とが協調して第2のモードへ切り替えるかを決定する選択処理を行う。
【0195】
この選択処理において、デュアルモードスタイラス130とデュアルモードコントローラ330との間の通信方法を第1の通信方法とするか第2の通信方法とするかは任意に決定することができるが、いずれの場合であってもデュアルモードスタイラス130の動作モードとデュアルモードコントローラ330の動作モードとが一致している必要がある。従って、デュアルモードスタイラス130とデュアルモードコントローラ330との間で動作モードを一致させるために、以下の処理を行う。
【0197】
デュアルモードコントローラ330は、状態S201で第1のディスカバリを実施したところであるため、現在第1のモードで動作している。したがって、この場合のデュアルモードコントローラ330は、動作モードを第1のモードのまま維持する。また、デュアルモードコントローラ330は、デュアルモードスタイラス130に対して動作モード変更コマンドMCCを発行しない。ここで、デュアルモードスタイラス130は、動作モード変更コマンドMCCを受信しない限り、第1のモードで動作するよう構成されている。したがって、デュアルモードコントローラ330とデュアルモードスタイラス130は、共に、第1の通信方法を実行する第1のモードで動作を維持し続ける。
【0198】
ここで、デュアルモードコントローラ330は、デュアルモードスタイラス130が検出された場合には固定的に第1のモードを使用することとしてもよい。
図12Aは、この場合におけるデュアルモードコントローラ330の状態遷移図を示している。
図12Aでは、
図10に示した状態S203のモード変更における選択処理が省略されている。
【0199】
(ii)第2のモードを使用する場合:
デュアルモードコントローラ330は、自己の動作モードを第2のモードへ切り替えることを決定すると、自己の状態を、第2の通信方法(あるいは拡張機能の受信)に適合する第2のモードを実行する状態S220に遷移させる(IN320)。
【0200】
この時点でデュアルモードスタイラス130側は、第1の通信方法を実行する第1のモードで動作している。したがって、デュアルモードスタイラス130も協調してその通信方法を第1の通信方法から第2の通信方法に切り替える処理を行う必要がある(
図9Cに示す「同期」)。そこでデュアルモードコントローラ330は、動作モード変更コマンドMCCを含む第1の制御信号C1_U(探索信号DS)を発行し、デュアルモードスタイラス130に対して第2のモード(あるいは拡張機能を利用するモード)に切り替えるよう指示する。デュアルモードスタイラス130は、この動作モード変更コマンドMCCに基づき、
図9Cに示した自己の動作モードを第2の通信部121(又は第2の通信部122)を利用した動作モードに変更する。このとき同時に、デュアルモードコントローラ330側でも、スイッチ333が第2の通信部321(又は第2の通信部322)側に切り替えられる。これにより、デュアルモードコントローラ330とデュアルモードスタイラス130はともに第2のモードとなり、これ以降、第2の通信方法に準拠した通信が行われる。
【0201】
このように、(i)(ii)どちらの場合であっても、デュアルモードコントローラ330とデュアルモードスタイラス130とは、協調して同じ動作モードで動作することができる。
【0202】
なお、第1のモードから第2のモードへの変更を行った後であっても、デュアルモードスタイラス130は、所定のタイミングで間欠的に、第1の通信部111による通信を行う第1のモードに復帰するとしてもよい。基本的には、センサコントローラ300からデュアルモードスタイラス130に対し、第2のモードから第1のモードへの切り替えを指示することはないので、一旦第2のモードに入ったデュアルモードスタイラス130は、第1のモードに復帰するきっかけを得ることができない。したがって、第2のモードに入った後、第1のモードでのみ動作する第1のセンサコントローラ310との通信が必要となった場合であっても、第1のモードに復帰できず、第1のセンサコントローラ310との通信を開始することができない。上記のように、所定のタイミングで間欠的に第1のモードに復帰するようにデュアルモードスタイラス130を構成することで、デュアルモードスタイラス130に第1のモードに復帰するきっかけを与えることが可能になる。したがって、上記のような場合に第1のセンサコントローラ310との通信を開始することが可能になる。
【0203】
また、デュアルモードスタイラス130が一旦第2のモードに遷移した後、第1のモードに復帰することができなくなり、第1のモードでの双方向通信できなくなってしまうことを防ぐための他の方法として、第1の通信部111,311の通信自体は第1の通信モードとして継続したまま、拡張機能を利用する拡張モードを利用するとしてもよい。
【0204】
図12Bは、拡張モードを利用する例によるデュアルモードコントローラ330の状態遷移図である。
図10の状態遷移図と異なる点は、
図10の状態S203が
図12Bでは状態S203Bになっている点である。状態S203Bでは、状態S203の2つの遷移先(状態S210,S220)に加えて、双方向通信を利用する第1の通信方法の通信機能を使用したまま第2の通信方法の拡張機能で提供される拡張情報を利用する拡張モード(状態S230)が遷移先として追加されている。デュアルモードコントローラ330は、第1のディスカバリで受信される機能情報FDにより示される拡張機能(スタイラス100が有している拡張機能)が自己の有している拡張機能と適合するか否かを判定し、適合するとの判定結果を得た場合に、第1の通信方法による通信を利用したまま、自己の動作状態を状態S203Bから状態S230へと遷移させることができる(IN330)。適合しないとの判定結果を得た場合のデュアルモードコントローラ330は、通常の第1のモードに対応する状態S210に遷移すればよい(IN310)。なお、適合するとの判定結果を得た場合であっても、通常の第1のモードに対応する状態S210に遷移することとしてもよいのは勿論である。
【0205】
この拡張モードを利用することにより、デュアルモードコントローラ330は、状態S230に遷移した後であっても第1の通信方法に基づいた双方向通信を利用しつづけることができるので、第1のディスカバリで行われる機能情報FDの提供や、デュアルモードコントローラ330からデュアルモードスタイラス130に対して第1のモードへの復帰を指示すること(デュアルモードコントローラ330からデュアルモードスタイラス130に対して、第1のモードへの復帰を指示するためのコマンドを送信すること)などが実行可能となる。なお、この場合においても、デュアルモードコントローラ330からデュアルモードスタイラスに動作モード変更コマンドMCCが発行され、デュアルモードスタイラス130は、この動作モード変更コマンドMCCに応じて、自身のモードを拡張モードに変更する。
【0206】
この場合の動作モード変更コマンドMCCは、デュアルモードスタイラス130に対して拡張情報を送信するように指示するコマンドとなる。なお、動作モード変更コマンドMCCには、デュアルモードスタイラス130が第1のモードで送信する筆圧等を含む第1のペン信号P1の送信タイミングに加え、デュアルモードスタイラス130が拡張情報(デュアルモードスタイラス130の傾きを示すチルト情報、又は、デュアルモードスタイラス130の回転量を示すツイスト情報等)を送信すべきタイミングを含む。
【0207】
そして、デュアルモードコントローラ330は、第1の通信方法を用いつつも、当該タイミングで送信された拡張情報を受信する。なお、デュアルモードスタイラス130が拡張機能を備える場合に、デュアルモードコントローラ330は、動作モード変更コマンドMCCとしてチルト情報等の拡張情報を送信するタイミングを指定するコマンドも発行する。デュアルモードスタイラス130は、指定されたタイミングで拡張情報を送信し、また、デュアルモードコントローラ330は、指定したタイミングで拡張情報を受信する。
【0208】
このようにすることで、デュアルモードスタイラス130とデュアルモードコントローラ330は、チルト情報等の拡張情報を第1の通信方法を利用しつつ送受信することが可能になる。
【0209】
このように、デュアルモードコントローラ330のディスカバリ部340は、第1の通信部311や第2の通信部321等の通信機能を利用して、第1のスタイラス110、第2のスタイラス120、又はデュアルモードスタイラス130を探索するディスカバリを実行するとともに、検出されたスタイラス100の種別とデュアルモードコントローラ330が備える第1の通信部311、第2の通信部321、第2の通信部322の種別とに基づき、デュアルモードコントローラ330とスタイラス100それぞれの動作モードを決定するモード決定処理を実行することができる。
【0210】
特に、第1の通信部311を利用してデュアルモードスタイラス130から受信される機能情報FDには、第1の通信部111の機能に関する情報のみならず第1の通信部131の機能を拡張した、あるいは、第2の通信部121(又は第2の通信部122)の機能による拡張機能(サポートしているセンサの種別情報等)に関する情報が含まれる。したがって、スタイラス100がデュアルモードスタイラス130であるときには、第2の通信方法が機能情報FDのような情報を供給しない通信方法であったとしても、デュアルモードコントローラ330は、第1の通信方法によって実行される第1のディスカバリを実行している間に、デュアルモードスタイラス130が備える第2の通信部の情報(第2の通信方法を利用した拡張機能の情報)を得ることができ、その結果に基づいて、デュアルモードスタイラス130との間の通信に用いる通信方法を第1の通信方法とするか第2の通信方法とするかを選択することが可能になる。
【0211】
また、デュアルモードコントローラ330とデュアルモードスタイラス130との間で第2の通信方法を利用することを選択した場合、デュアルモードコントローラ330は、内部の動作状態を第2の通信部を利用するように切り替えつつ、デュアルモードスタイラス130に対して第1の制御信号C1_U(探索信号DS)に動作モード変更コマンドMCCを含めて発行している。したがって、デュアルモードスタイラス130は、受信した第1の制御信号C1_U(探索信号DS)内の動作モード変更コマンドMCCに基づいて自身の内部の切替え処理を行うことにより、デュアルモードコントローラ330の動作モード変更と同期して動作モードを第1のモードから第2のモード(あるいは拡張モード)への切り替え処理を行うことが可能になる(
図9Cの一点鎖線「同期」参照)。
【0212】
なお、上記の選択処理において、デュアルモードコントローラ330は、第1の通信方法を利用するか拡張機能を利用可能な第2の通信方法を利用するかの選択をユーザにさせるためのユーザインタフェースの起動を要求するモード選択要求信号を電子機器制御部351に対して送出するとしてもよい。こうすることで、ユーザによる通信方法の選択が可能になる。
【0213】
図11は、スタイラス100及びセンサコントローラ300それぞれの種別と、これらの間の通信方法との対応関係を示す表である。同図において、5つの列は、ディスカバリを実行するセンサコントローラ300の種別を示している。また、5つの行はスタイラス100の種別を示している。以下、同図を参照しながら、ここまでで説明したディスカバリ及びモード決定処理を、再度第2の実施の形態の観点からまとめて説明する。
【0214】
<列1:センサコントローラ300が第1のセンサコントローラ310である場合>
欄E11〜欄E51は、センサコントローラ300が第1のセンサコントローラ310である場合の通信方法を示している。
図9Aから理解されるように、第1のセンサコントローラ310は、第1の通信方法に準拠した第1の通信部311を備える一方、第2の通信方法に準拠した第2の通信部321,322を備えていない。したがって、第1のセンサコントローラ310は、第1のスタイラス110とは第1の通信方法を使用して通信することができる(欄E11)一方、第2のスタイラス120とは通信することができない(欄E21,E31)。また、デュアルモードスタイラス130との通信には、デュアルモードスタイラス130が第2の通信部121及び第2の通信部122のいずれかを備えているかによらず、第1の通信方法を用いることになる(欄E41,E51)。
【0215】
<列2:センサコントローラ300が第2の通信部321を有する第2のセンサコントローラ320である場合>
欄E12〜欄E52は、センサコントローラ300が第2のセンサコントローラ320であって、第2−1の通信方法を実行する第2の通信部321を有している場合の通信方法を示している。
図9Bから理解されるように、第2のセンサコントローラ320は、第1の通信方法に準拠した第1の通信部311を備えていない。したがって、第2のセンサコントローラ320は、第1のスタイラス110とは通信することができない(欄E12)。また、ここで説明する第2のセンサコントローラ320は第2の通信部322を備えていないので、第2の通信部122のみを有する第2のスタイラス120、及び、第1の通信部111及び第2の通信部122のみを有するデュアルモードスタイラス130とも通信することができない(欄E32,E52)。一方、第2の通信部121を有する第2のスタイラス120、及び、第1の通信部111及び第2の通信部121を有するデュアルモードスタイラス130とは、第2−1の通信方法を使用して通信することができる(欄E22,E42)。
【0216】
<列3:センサコントローラ300が第2の通信部322を有する第2のセンサコントローラ320である場合>
欄E13〜欄E53は、センサコントローラ300が第2のセンサコントローラ320であって、第2−2の通信方法を実行する第2の通信部322を有している場合の通信方法を示している。この場合も、第2のセンサコントローラ320が第1の通信方法に準拠した第1の通信部311を備えない点では、列2の場合と同様である。したがって、第2のセンサコントローラ320は、第1のスタイラス110とは通信することができない(欄E13)。また、ここで説明する第2のセンサコントローラ320は第2の通信部321を備えていないので、第2の通信部121のみを有する第2のスタイラス120、及び、第1の通信部111及び第2の通信部121のみを有するデュアルモードスタイラス130とも通信することができない(欄E23,E43)。一方、第2の通信部122を有する第2のスタイラス120、及び、第1の通信部111及び第2の通信部122を有するデュアルモードスタイラス130とは、第2−2の通信方法を使用して通信することができる(欄E33,E53)。
【0217】
ここで、欄E42,E53に相当するケースでは、第2のセンサコントローラ320が動作モード変更コマンドMCCの発行機能を有しないことから、デュアルモードスタイラス130を第2のモードに遷移させるために工夫が必要となる。この点については、後に
図14を参照しながら詳しく説明することにする。
【0218】
<列4:センサコントローラ300が第2の通信部321を有するデュアルモードコントローラ330である場合>
欄E14〜欄E54は、センサコントローラ300がデュアルモードコントローラ330であって、第2−1の通信方法を実行する第2の通信部321を有している場合の通信方法を示している。この場合の通信方法は、
図9Cに示したディスカバリ部340が実行するモード決定処理によって決定される。
【0219】
(E14)第1のスタイラス110が利用されているとき
図10に示した状態S201での第1のディスカバリにより第1のスタイラス110が検出され、状態S203において動作モードが第1のモードと決定される(IN310)。したがって、第1のスタイラス110とデュアルモードコントローラ330との通信は、第1の通信方法を用いて実行される。
【0220】
(E24)第2の通信部121を有する第2のスタイラス120が利用されているとき
デュアルモードコントローラ330に設けられる第2の通信部321に適合する第2の通信部121を第2のスタイラス120が有していることから、
図10に示した状態S202での第2のディスカバリにより、第2のスタイラス120が検出される。したがって、センサコントローラ300の動作モードは第2のモードとなり(IN220)、第2のスタイラス120とデュアルモードコントローラ330との通信は、第2の通信部321に対応する第2−1の通信方法を用いて実行される。
【0221】
(E34)第2の通信部122を有する第2のスタイラス120が利用されているとき
デュアルモードコントローラ330に設けられる第2の通信部321に適合する第2の通信部121を第2のスタイラス120が有していないことから、
図10に示した状態S202での第2のディスカバリによっても、第2のスタイラス120は検出されない。したがって、状態S201と状態S202が交互に繰り返されるのみで、第2のスタイラス120とデュアルモードコントローラ330との間での通信は行われない。
【0222】
(E44)第2の通信部121を有するデュアルモードスタイラス130が利用されているとき
デュアルモードコントローラ330は、
図10に示した状態S201で実行する第1のディスカバリにおいて、デュアルモードスタイラス130を検出する。そして、遷移した状態S203において、自己がサポートする第2の通信方法と、検出されたデュアルモードスタイラス130がサポートする第2の通信方法とが適合するか否かを判定する。この場合は、ともに第2−1の通信方法をサポートしていることから適合するとの判定結果が得られるので、さらに上述した選択処理を実行する。これにより、第1及び第2のモードのうちの一方が選択される。
【0223】
選択の結果が第2のモードである場合、デュアルモードコントローラ330は状態S220に遷移し(IN320)、第2のモードでの動作を開始する。また、デュアルモードスタイラス130に対して動作モード変更コマンドMCCを発行し、これを受けたデュアルモードスタイラス130も第2のモードでの動作を開始する。したがってこの場合、デュアルモードスタイラス130とデュアルモードコントローラ330との通信は、第2の通信部321に対応する第2−1の通信方法を用いて実行される。
【0224】
一方、選択の結果が第1のモードである場合、デュアルモードコントローラ330は状態S210に遷移し(IN310)、第1のモードでの動作を開始する。デュアルモードスタイラス130はもともと第1のモードで動作しているので、この場合には動作モード変更コマンドMCCの発行は不要である。したがってこの場合、デュアルモードスタイラス130とデュアルモードコントローラ330との通信は、第1の通信方法を用いて実行される。
【0225】
(E54)第2の通信部122を有するデュアルモードスタイラス130が利用されているとき
デュアルモードコントローラ330は、
図10に示した状態S201で実行する第1のディスカバリにおいて、デュアルモードスタイラス130を検出する。そして、遷移した状態S203において、自己がサポートする第2の通信方法と、検出されたデュアルモードスタイラス130がサポートする第2の通信方法とが適合するか否かを判定する。この場合は、デュアルモードコントローラ330がサポートする第2の通信方法が第2−1の通信方法であり、デュアルモードスタイラス130がサポートする第2の通信方法が第2−2の通信方法であることから、適合しないとの判定結果が得られる。したがって、デュアルモードコントローラ330は状態S210に遷移して(IN310)第1のモードでの動作を開始し、デュアルモードスタイラス130とデュアルモードコントローラ330との通信は、第1の通信方法を用いて実行される。
【0226】
<列5:センサコントローラ300が第2の通信部322を有するデュアルモードコントローラ330である場合>
欄E15〜欄E55は、センサコントローラ300がデュアルモードコントローラ330であって、第2−2の通信方法を実行する第2の通信部322を有している場合の通信方法を示している。この場合の通信方法も、
図9Cに示したディスカバリ部340が実行するモード決定処理によって決定される。
【0227】
(E15)第1のスタイラス110が利用されているとき
図10に示した状態S201での第1のディスカバリにより第1のスタイラス110が検出され、状態S203において動作モードが第1のモードと決定される(IN310)。したがって、第1のスタイラス110とデュアルモードコントローラ330との通信は、第1の通信方法を用いて実行される。
【0228】
(E25)第2の通信部121を有する第2のスタイラス120が利用されているとき
デュアルモードコントローラ330に設けられる第2の通信部322に適合する第2の通信部122を第2のスタイラス120が有していないことから、
図10に示した状態S202での第2のディスカバリによっても、第2のスタイラス120は検出されない。したがって、状態S201と状態S202が交互に繰り返されるのみで、第2のスタイラス120とデュアルモードコントローラ330との間での通信は行われない。
【0229】
(E35)第2の通信部122を有する第2のスタイラス120が利用されているとき
デュアルモードコントローラ330に設けられる第2の通信部322に適合する第2の通信部122を第2のスタイラス120が有していることから、
図10に示した状態S202での第2のディスカバリにより、第2のスタイラス120が検出される。したがって、センサコントローラ300の動作モードは第2のモードとなり(IN220)、第2のスタイラス120とデュアルモードコントローラ330との通信は、第2の通信部322に対応する第2−2の通信方法を用いて実行される。
【0230】
(E45)第2の通信部121を有するデュアルモードスタイラス130が利用されているとき
デュアルモードコントローラ330は、
図10に示した状態S201で実行する第1のディスカバリにおいて、デュアルモードスタイラス130を検出する。そして、遷移した状態S203において、自己がサポートする第2の通信方法と、検出されたデュアルモードスタイラス130がサポートする第2の通信方法とが適合するか否かを判定する。この場合は、デュアルモードコントローラ330がサポートする第2の通信方法が第2−2の通信方法であり、デュアルモードスタイラス130がサポートする第2の通信方法が第2−1の通信方法であることから、適合しないとの判定結果が得られる。したがって、デュアルモードコントローラ330は状態S210に遷移して(IN310)第1のモードでの動作を開始し、デュアルモードスタイラス130とデュアルモードコントローラ330との通信は、第1の通信方法を用いて実行される。
【0231】
(E55)第2の通信部122を有するデュアルモードスタイラス130が利用されているとき
デュアルモードコントローラ330は、
図10に示した状態S201で実行する第1のディスカバリにおいて、デュアルモードスタイラス130を検出する。そして、遷移した状態S203において、自己がサポートする第2の通信方法と、検出されたデュアルモードスタイラス130がサポートする第2の通信方法とが適合するか否かを判定する。この場合は、ともに第2−2の通信方法をサポートしていることから適合するとの判定結果が得られるので、さらに上述した選択処理を実行する。これにより、第1及び第2のモードのうちの一方が選択される。
【0232】
選択の結果が第2のモードである場合、デュアルモードコントローラ330は状態S220に遷移し(IN320)、第2のモードでの動作を開始する。また、デュアルモードスタイラス130に対して動作モード変更コマンドMCCを発行し、これを受けたデュアルモードスタイラス130も第2のモードでの動作を開始する。したがってこの場合、デュアルモードスタイラス130とデュアルモードコントローラ330との通信は、第2の通信部321に対応する第2−2の通信方法を用いて実行される。
【0233】
一方、選択の結果が第1のモードである場合、デュアルモードコントローラ330は状態S210に遷移し(IN310)、第1のモードでの動作を開始する。デュアルモードスタイラス130はもともと第1のモードで動作しているので、この場合には動作モード変更コマンドMCCの発行は不要である。したがってこの場合、デュアルモードスタイラス130とデュアルモードコントローラ330との通信は、第1の通信方法を用いて実行される。
【0234】
なお、
図10には、欄E44,E55に相当する場合において第2の通信方法を利用する例を記述したが、これらの場合、
図12Bを参照したように、第2の通信方法に代えて拡張モードを使用することも可能である。この場合、デュアルモードスタイラス130とデュアルモードコントローラ330とは、ともに第1の通信方法に基づいての動作を維持するか、協調して拡張モードを利用するかを選択可能となる。
【0235】
図13は、
図12Bに示すディスカバリ及びモード決定処理により決定されるスタイラス100とセンサコントローラ300間の通信方法の表である。この表は、欄E44,E55がそれぞれ欄E44B,E55Bとなる点で
図10に示した表と異なっており、欄E44B,E55Bでは、第1の通信方法、又は、第1の通信方法を拡張した拡張モードが利用可能となっている。
【0236】
以上説明したように、本実施の形態によるスタイラス100とセンサコントローラ300との通信方法によれば、スタイラス100の種別を検出するディスカバリと、その結果に基づいたモード決定処理とにより、スタイラス100及びセンサコントローラそれぞれの種別に応じて、利用可能な場合には従前から利用しているスタイラス100の拡張機能をも活用しつつ、複数の通信方法にまたがって通信方法を選択することが可能になる。
【0237】
これにより、例えば、スタイラスが筆圧等の情報を送信する第1のモードではサポートされていないチルト情報などの拡張情報を送信する機能を有する場合に、デュアルモードコントローラは、この拡張情報の受信を準備するとともにデュアルモードスタイラスに拡張情報を送信させるコマンドを発行することなど、デュアルスタイラスと同期をとったモード変更が可能となる。
【0238】
<
図11の欄E42,E53におけるデュアルモードスタイラス130の状態遷移>
センサコントローラ300が、デュアルモードコントローラ330ではなく、第2の通信方法のみに対応した第2のセンサコントローラ320である場合、センサコントローラ300は、デュアルモードスタイラス130に対して第1の通信方法による動作モード変更コマンドMCC(第1の制御信号C1_U(探索信号DS))を送信することができない。したがって、上述したように、
図11の欄E42,E53に相当するケースでは、デュアルモードスタイラス130を第2のモードに遷移させるために動作モード変更コマンドMCC以外の手段を工夫する必要がある。以下、この点について詳しく説明する。
【0239】
図14は、本実施の形態によるデュアルモードスタイラス130の状態遷移図である。この状態遷移は、
図9Cに示したモード制御部140により実行されるものである。
【0240】
デュアルモードスタイラス130の初期状態(電源ONの後や一定時間センサコントローラ300との通信が接続されていた後など)は、
図14の状態S600に示すデフォルトモードである。
【0241】
<デフォルトモード>
デフォルトモードは、
図10、
図12A、
図12Bに示したディスカバリフェイズに対応するモードである。デュアルモードスタイラス130は、センサコントローラ300の送出する第1の制御信号C1_U(探索信号DS)を検出する処理、又は、第2のセンサコントローラ320が第2の制御信号C2_Uをスタイラス100に対して送出できるような場合には第2の制御信号C2_Uを検出する処理を、並行して或いは交互に繰り返す。
【0242】
状態S600において、デュアルモードスタイラス130が第1の制御信号C1_U(探索信号DS)のみを検出した場合には、デュアルモードスタイラス130は第1のモードで動作する状態(S612)に遷移する(IN0012)。
【0243】
他方、状態S600において、デュアルモードスタイラス130が少なくとも第2の制御信号C2_Uを含む信号を検出した場合には、デュアルモードスタイラス130は第2のモードで動作する状態(S620)に遷移する(IN0020)。
【0244】
<ペンダウン後の処理>
状態S600においてペンダウン操作を検出した場合、デュアルモードスタイラス130は状態S610に遷移する(IN0010)。このペンダウン操作の検出は、例えばデュアルモードスタイラス130に設けられた筆圧検出部が筆圧を検出することなどによって行えばよい。
【0245】
状態S610は、既にペンダウン操作が開始されているにも関わらず、デュアルモードスタイラス130の動作モードが決まっていない場合の処理である。早急に動作モードを決める必要があるので、状態S610にあるデュアルモードスタイラス130は、信号の送出を第1の通信方法及び第2の通信方法のいずれにより実施するかを強制的に決定するための処理を行う。
【0246】
具体的には、まず第1の制御信号C1_U(探索信号DS)を検出した場合、デュアルモードスタイラス130は、状態S612の第1のモードでの動作に遷移する(IN1012)。状態S612では、所定の周期で第1の制御信号を検出するなど、第1のモードでの通信が維持される限り、第1のモードでの動作が続行される(IN1212)。なお、第1の制御信号C1_U(探索信号DS)に加えて第2の制御信号C2_Uを検出した場合に、第2のモードでの動作を選択するか第1のモードでの動作を選択するかは任意に選択できる。
【0247】
一方、状態S610において第1の制御信号C1_U(探索信号DS)を検出しない場合、デュアルモードスタイラス130は、第2の制御信号C2_Uの検出の有無にかかわらず状態S620に遷移し(IN1020)、第2のモードでの動作に切り替える。この処理により、デュアルモードスタイラス130は、センサコントローラ300が第2の制御信号C2_U(動作モード変更コマンドMCC)を送出することができない場合にも、自己のモードを双方向通信を行わない第2のモードに自律的に切り替えることが可能になる。
【0248】
<第2のモードの動作>
状態S620の第2のモードにおいてデュアルモードスタイラス130は、第2の通信方法に基づく第2のペン信号P2の送信(状態S621)を所定回数(Count値がNを越えない間)繰り返す(IN2020)。
【0249】
デュアルモードスタイラス130は、所定回数第2のペン信号P2の送信処理を繰り返した後(IN2122)、自身が電子機器3のパネル(センサ面)と接触しているか否かを検出する(状態S622)。状態S622の検出処理は、例えば、センサコントローラ300が第2の制御信号C2_Uを送出できるような場合には、デュアルモードスタイラス130はその第2の制御信号C2_Uを受信したか否かの判定によって行うことができる。また、センサコントローラ300が第2の制御信号C2_Uを送出できない場合であっても、デュアルモードスタイラス130の内部に設けられた筆圧検出部において筆圧検出が一定時間なされなくなったことを検出することで、接触状態から非接触状態(ペンアップ状態)に変更されたと判定することができる。
【0250】
状態S622においてパネルに接触していることを検出した場合、デュアルモードスタイラス130は、状態S621の第2のペン信号P2の送出を続行する(IN2220)。一方、状態S622においてパネルに接触していないことを検出した場合(デュアルモードスタイラス130がパネルから離間したことを検出した場合)、デュアルモードスタイラス130は、状態S600のデフォルトモードに復帰する(IN2200)。
【0251】
このように、本実施の形態によるデュアルモードスタイラス130の状態遷移方法によれば、デュアルモードスタイラス130は、ペンダウン操作の検出後に第1の制御信号を検出しない場合、第2の制御信号C2_Uの受信の有無にかかわらず、即座に第2のモードS620に切り替えることができる。これにより、センサコントローラ300が、センサコントローラ300からスタイラス100への方向の上り通信を実行できない場合であっても、デュアルモードスタイラス130は、デュアルモードディスカバリを行い続けるような動作をせずに、即座に第2のモードでの動作に切り替えることが可能になる。