説明

集団反応検知システム、通信システム、入力装置及び通信制御装置

【課題】 複数のノード間における検知情報の変化の順番を精細に検出できる集団反応検出システムを提供することである。
【解決手段】 複数の操作者に割り当てられ、各々が対応する操作者の入力操作を検知して検知情報を無線送信する複数のノード2−nと、各ノード2−nが無線送信した検知情報を受信するホスト27と、を備える。ホスト27は、複数のノード2−nに対して、予め定められた周期CYでビーコン信号BSを送信する。ノード2−nの各々は、1周期内で入力操作の検知処理を、時間を変えて、つまり、時刻ST0〜ST3において実行し、ビーコン信号BSに応答して検知情報をホスト27に送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ホストと複数ノードとを無線接続して、各ノードの検知情報をホストに送信する集団反応検出システム、通信システム及びその関連技術に関する。
【背景技術】
【0002】
特許文献1の回答集計システムは、複数の回答器(ノード)と1つの受信器(ホスト)とから構成される。回答器と受信器とは無線接続される。各回答器は、○マークのボタンが押された場合に電波を受信器に送信する。そして、受信器は、送信された電波の到来回数を計数し表示する。
【0003】
【特許文献1】実開昭61−50986号
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、上記システムでは、受信器は、各回答器のボタンの押下の順番、つまり、入力情報の変化の順番は検出しない。また、順番を競う場合、各回答器のボタンの押下の順番は極力精細に検出できることが好ましい。
【0005】
そこで、本発明の目的は、複数のノード間における検知情報の変化の順番を精細に検出できる集団反応検出システム及びその関連技術を提供することである。
【0006】
本発明の他の目的は、通信エラーが発生した場合であっても、複数のノード間における検知情報の変化の順番を正確に検出できる集団反応検出システム及びその関連技術を提供することである。
【0007】
本発明のさらに他の目的は、ノードがホストからの所定信号に応答して送信を実行する場合において、通信エラーによって、ノードが所定信号を受信できなかった場合でも、ノードが検知情報をホストへ送信できる通信システム及びその関連技術を提供することである。
【0008】
本発明のさらに他の目的は、混信することなく、一対多の通信を簡易に実現できる通信システム及びその関連技術を提供することである。
【課題を解決するための手段】
【0009】
本発明の第1の観点によれば、集団反応検知システムは、複数の操作者に割り当てられ、各々が対応する前記操作者の入力を検知して検知情報を無線送信する複数のノードと、前記各ノードが無線送信した前記検知情報を受信するホストと、を備え、前記ホストは、前記複数のノードに対して、予め定められた周期で所定信号を送信し、前記ノードの各々は、前記1周期内で入力の検知処理を時間を変えて複数回実行する検知手段と、前記所定信号に応答して前記検知情報を前記ホストに送信する送信手段と、を含む。
【0010】
この構成によれば、各ノードは予め定められた周期で送信される所定信号に応答して検知情報を送信するところ、1周期内で時間を変えて複数回の検知処理が実行されるので、1周期内のどの時点の検知処理で検知情報の変化(例えば、スイッチのオフからオンへの遷移)を検知したかを認識できる。ちなみに、1周期内で1回(例えば、所定信号の受信時)だけ検知処理を実行する場合は、どの周期で検知情報の変化を検知したかが認識可能なだけであり、周期単位での認識しかできない。
【0011】
本発明によれば、どの周期で検知情報の変化を検知したかが認識可能なだけでなく、1周期内のどの時点での検知処理で検知情報の変化を検知したかが、ノードごとに認識できるので、ホスト側では、複数のノード間における検知情報の変化の順番(例えば、スイッチが押された順番)を精細に検出できる。ちなみに、1周期内で1回だけ検知処理を実行する場合は、周期単位で変化の順番が認識可能なだけである。
【0012】
この集団反応検知システムにおいて、前記送信手段は、前記検知情報が前記1周期内のどの時点の検出処理で検出されたかを示す情報(以下、「時点情報」と呼ぶ。)を、当該検知情報と共に、前記所定信号に応答して前記ホストに送信する。
【0013】
この構成によれば、時点情報によって、1周期内のどの時点での検知処理で検知情報の変化を検知したかが、ノードごとに認識できる。
【0014】
上記集団反応検知システムにおいて、前記送信手段は、前記検知情報の変化が検出された前記周期を示す情報を、当該検知情報と共に、前記所定信号に応答して前記ホストに送信する。
【0015】
この構成によれば、検知情報の変化が検出された周期を示す情報によって、どの周期で検知情報の変化を検知したかが、ノードごとに認識できる。
【0016】
上記集団反応検知システムにおいて、前記所定信号は、その所定信号を識別する情報(以下、「信号識別情報」と呼ぶ。)を含み、前記ノードの各々は、前記検知情報を前記信号識別情報及び前記時点情報と関連付けて格納する格納手段をさらに含み、前記格納手段は、前記検知手段により前記検知情報の変化が検知された場合に、格納した前記検知情報、前記信号識別情報及び前記時点情報を、変化した前記検知情報、変化を検知した前記周期の前記所定信号に含まれる前記信号識別情報及び前記時点情報で更新し、前記送信手段は、前記所定信号に応答して、前記格納手段に格納した前記検知情報、前記信号識別情報及び前記時点情報を前記ホストに送信する。
【0017】
この構成によれば、下記の第2の観点による集団反応検知システムと同様の効果を奏する。
【0018】
ここで、信号識別情報は、所定信号を識別する情報であり、しかも、所定信号は、予め定められた周期で送信される。従って、信号識別情報は、周期を識別する情報としても利用できる。
【0019】
この集団反応検知システムにおいて、前記ノードの各々は、前記所定信号を受信しなかった場合、前回受信した前記所定信号に含まれた前記信号識別情報に基づいて、新たな前記信号識別情報を生成する識別情報生成手段をさらに含み、前記格納手段は、前記所定信号を受信しなかった前記周期において、前記検知手段により前記検知情報の変化が検知された場合に、格納した前記検知情報、前記信号識別情報及び前記時点情報を、変化した前記検知情報、前記識別情報生成手段が生成した前記信号識別情報及び前記時点情報で更新する。
【0020】
この構成によれば、下記の第2の観点による集団反応検知システムと同様の効果を奏する。
【0021】
本発明の第2の観点によれば、集団反応検知システムは、複数の操作者に割り当てられ、各々が対応する前記操作者の入力を検知して検知情報を無線送信する複数のノードと、前記各ノードが無線送信した前記検知情報を受信するホストと、を備え、前記ホストは、前記複数のノードに対して、予め定められた周期で所定信号を送信し、前記所定信号は、その所定信号を識別する情報(以下、「信号識別情報」と呼ぶ。)を含み、前記ノードの各々は、前記1周期内で入力の検知処理を実行する検知手段と、前記検知情報を前記信号識別情報と関連付けて格納する格納手段と、前記所定信号に応答して、前記格納手段に格納した前記検知情報及び前記信号識別情報を前記ホストに送信する送信手段と、を含み、前記格納手段は、前記検知手段により前記検知情報の変化が検知された場合に、格納した前記検知情報及び前記信号識別情報を、変化した前記検知情報及び変化を検知した前記周期の前記所定信号に含まれる前記信号識別情報で更新する。
【0022】
この構成によれば、検知情報の変化が検知された場合に、検知情報及び信号識別情報の更新が行われるので、ノードが送信する検知情報及び信号識別情報は、過去の変化であろうが、現在の変化であろうが、常に検知情報の変化時のものである。従って、通信エラーによって、ホストがノードからの検知情報及び信号識別情報を正しく受信できなかった場合でも、ノードから次に送信される信号識別情報によって、検知情報がどの周期で変化したかを認識できる。その結果、通信エラーが発生した場合であっても、ホスト側では、複数のノード間における検知情報の変化の順番(例えば、スイッチが押された順番)を正確に検出できる。
【0023】
例えば、第1周期の検知情報が、その次の第2周期で変化し、第2周期で検知情報及び信号識別情報が更新されたとする。また、第2周期の検知情報が、その次の第3周期で変化がなく、第2周期の検知情報及び信号識別情報が維持されたとする。そして、通信エラーによって、ホストが第2周期で受信すべき検知情報及び信号識別情報を正しく受信できなかったとする。しかし、ホスト側では、第3周期で送信された信号識別情報によって、検知情報が変化した時期が、第2周期であることを認識できる。
【0024】
また、通信エラーによって、ホストがノードからの検知情報及び信号識別情報を正しく受信できなかった場合でも、ノードから次に送信される信号識別情報によって、同じ検知情報がどの周期から継続しているかを認識できる。
【0025】
ここで、信号識別情報は、所定信号を識別する情報であり、しかも、所定信号は、予め定められた周期で送信される。従って、信号識別情報は、周期を識別する情報としても利用できる。
【0026】
この集団反応検知システムにおいて、前記ノードの各々は、前記所定信号を受信しなかった場合、前回受信した前記所定信号に含まれた前記信号識別情報に基づいて、新たな前記信号識別情報を生成する識別情報生成手段をさらに含み、前記格納手段は、前記所定信号を受信しなかった前記周期において、前記検知手段により前記検知情報の変化が検知された場合に、格納した前記検知情報及び前記信号識別情報を、変化した前記検知情報及び前記識別情報生成手段が生成した前記信号識別情報で更新する。
【0027】
この構成によれば、通信エラーによって、ノードが所定信号を受信できなかった場合でも、ノード内部で信号識別情報を生成するので、当該周期において、検知情報が変化した場合であっても、生成された信号識別情報が検知情報と共にホストへ送信される。その結果、通信エラーが発生した場合であっても、ホスト側では、複数のノード間における検知情報の変化の順番(例えば、スイッチが押された順番)を正確に検出できる。
【0028】
また、通信エラーによって、ノードがホストからの所定信号を受信できなかった場合でも、ホスト側では、ノードが生成した信号識別情報によって、同じ検知情報がどの周期から継続しているかを認識できる。
【0029】
この集団反応検知システムにおいて、前記識別情報生成手段は、前記所定信号を連続して受信しなかった場合、前回生成した前記信号識別情報に基づいて、新たな前記信号識別情報を生成する。
【0030】
この構成によれば、ノードが所定信号を連続して受信できなかった場合でも、ホスト側では、複数のノード間における検知情報の変化の順番を正確に検出できるし、また、同じ検知情報がどの周期から継続しているかを認識できる。
【0031】
上記集団反応検知システムにおいて、前記ノードの各々は、前記所定信号を受信しなかった場合、前記予め定められた周期を実質的に維持する維持手段をさらに含み、前記送信手段は、前記所定信号を受信しなかった場合、前記維持手段によって維持された前記周期に基づいて、送信処理を実行する。
【0032】
この構成によれば、下記の第3の観点による通信システムと同様の効果を奏する。
【0033】
上記集団反応検知システムにおいて、前記各ノードの前記送信手段は、前記所定信号を受信してから、各々に割り当てられた異なる期間の経過後に、送信処理を実行する。
【0034】
この構成によれば、下記の第4の観点による通信システムと同様の効果を奏する。
【0035】
本発明の第3の観点によれば、通信システムは、複数の操作者に割り当てられ、各々が対応する前記操作者の入力を検知して検知情報を無線送信する複数のノードと、前記各ノードが無線送信した前記検知情報を受信するホストと、を備え、前記ホストは、前記複数のノードに対して、予め定められた周期で所定信号を送信し、前記ノードの各々は、前記1周期内で入力の検知処理を実行する検知手段と、前記所定信号に応答して、前記検知情報を前記ホストに送信する送信手段と、前記所定信号を受信しなかった場合、前記予め定められた周期を実質的に維持する維持手段と、を含み、前記送信手段は、前記所定信号を受信しなかった場合、前記維持手段によって維持された前記周期に基づいて、前記検知情報を前記ホストに送信する。
【0036】
この構成によれば、通信エラーによって、ノードが所定信号を受信できなかった場合でも、ノード内部で周期が維持されるので、検知情報のホストへの送信が可能になる。
【0037】
この通信システムにおいて、前記各ノードの前記送信手段は、前記所定信号を受信してから、又は、前記周期の先頭から、各々に割り当てられた異なる期間の経過後に、送信処理を実行する。
【0038】
この構成によれば、下記の第4の観点による通信システムと同様の効果を奏する。
【0039】
本発明の第4の観点によれば、通信システムは、複数の操作者に割り当てられ、各々が対応する前記操作者の入力を検知して検知情報を無線送信する複数のノードと、前記各ノードが無線送信した前記検知情報を受信するホストと、を備え、前記ホストは、前記複数のノードに対して、予め定められた周期で所定信号を送信し、前記ノードの各々は、前記1周期内で入力の検知処理を実行する検知手段と、前記所定信号に応答して、割り当てられた待機時間の経過後に、前記検知情報を前記ホストに送信する送信手段と、を含み、前記ノードごとに異なる前記待機時間が割り当てられる。
【0040】
この構成によれば、ノードごとに異なる待機時間が割り当てられるので、混信することなく、一対多の通信を簡易に実現できる。
【0041】
本発明の第5の観点によれば、入力装置は、第1の観点による集団反応検知システム、第2の観点による集団反応検知システム、第3の観点による通信システム、又は第4の観点による通信システムのいずれか一に記載のノードを含む入力装置である。
【0042】
本発明の第6の観点によれば、通信制御装置は、第1の観点による集団反応検知システム、第2の観点による集団反応検知システム、第3の観点による通信システム、又は第4の観点による通信システムのいずれか一に記載のホストを含む通信制御装置である。
【発明を実施するための最良の形態】
【0043】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、図中、同一または相当部分については同一の参照符号を付してその説明を援用する。
【0044】
実施の形態は、脳の前頭前野をトレーニングする課題(以下、「トレーニング課題」と呼ぶ。)を画面に表示し複数の操作者がそれに対して回答するものである。各操作者は、できるだけ速く正答を導出することを競う。
【0045】
図1は、本発明の実施の形態による集団反応検知システム(「通信システム」と呼ぶこともある。)の全体構成を示す図である。図1を参照して、この集団反応検知システムは、各々4個のスイッチsw1〜sw4を有する手入力型入力装置1−0〜1−N(Nは1以上の整数)、アダプタ3、カートリッジ5、及びテレビジョンモニタ11を含む。入力装置1−0〜1−Nを包括して入力装置1−n(nは0〜N)と表記する場合もある。以下、Nが49の例を挙げる。また、スイッチsw1〜sw4を包括してスイッチswと表記する場合もある。なお、アダプタ3、カートリッジ5、及び入力装置1−nは、集団反応検知装置(「通信装置」と呼ぶことある。)を構成する。
【0046】
アダプタ3には、カートリッジ5が装着され、また、カートリッジ5に電源を供給する電源回路を備える。また、アダプタ3は、AVケーブル9により、テレビジョンモニタ11に接続される。従って、アダプタ3及びAVケーブル9を介してカートリッジ5が生成したビデオ信号VD及びオーディオ信号AUをテレビジョンモニタ11に与えることができる。これにより、テレビジョンモニタ11に、各種画面を表示し、そのスピーカ(図示せず)から音声を出力することができる。
【0047】
各操作者に入力装置1−nが与えられる。テレビジョンモニタ11には、トレーニング課題が表示されるので、複数の操作者は、トレーニング課題を見て、それぞれ自分の入力装置1−nを操作して回答する。この場合、早く正答した者の順位が上になるので、各操作者は、回答が分かった時、できるだけ早くスイッチswを押下する。
【0048】
図2は、図1の集団反応検知システムの電気的構成を示す図である。図2を参照して、カートリッジ5は、プロセッサ23、RF(Radio Frequency)モジュール27、及び外部メモリ25(例えば、RAM、ROM、及び/又はフラッシュメモリ等)を含む。入力装置1−nは、4個のスイッチsw1〜sw4、及びRFモジュール2−nを含む。RFモジュール2−nは、内部メモリ4(例えば、RAM、ROM、及び/又はフラッシュメモリ等)を含む。
【0049】
ここで、カートリッジ5のRFモジュール27をホスト(通信制御装置)27と呼ぶこともある。また、入力装置1−nをノード(端末)1−n、あるいは、入力装置1−nのRFモジュール2−nをノード2−nと呼ぶこともある。
【0050】
入力装置1−nのRFモジュール2−nは、スイッチsw1〜sw4をスキャンして、操作者の操作に基づくスイッチsw1〜sw4のオン/オフ情報(以下、「ステータス情報」と呼ぶ。)を取得し、無線通信により、スイッチsw1〜sw4のステータス情報をカートリッジ5のRFモジュール27へ送信する。そして、RFモジュール27は、受信したスイッチsw1〜sw4のステータス情報をプロセッサ23に与える。
【0051】
プロセッサ23には、外部メモリ25が接続される。外部メモリ25は、プログラム領域、画像データ領域、および音声データ領域を含む。プログラム領域には、制御プログラム(トレーニング課題の提示及び評価を実行するアプリケーションプログラムを含む。)が格納される。画像データ領域には、テレビジョンモニタ11に表示される各種画面を構成するすべての画像データや、他の必要な画像データが格納されている。音声データ領域には、音声データが格納されている。プロセッサ23は、プログラム領域の制御プログラムを実行して、画像データ領域の画像データ及び音声データ領域の音声データを読み出し、必要な処理を施して、ビデオ信号VD及びオーディオ信号AUを生成する。ビデオ信号VD及びオーディオ信号AUは、アダプタ3からAVケーブル9を通して、テレビジョンモニタ11に与えられる。これにより、テレビジョンモニタ11に各種画面が表示されると共に音声が出力され、操作者は、その画面及び音声が提示した課題を実行する。また、プロセッサ23は、受け取ったスイッチsw1〜sw4のステータス情報に基づいて、提示した課題に対する評価を実行し、結果を示す画面及び音声を表すビデオ信号VD及びオーディオ信号AUを生成してテレビジョンモニタ11に出力する。
【0052】
プロセッサ23は、図示しないが、CPU(Central Processing Unit)、グラフィックスプロセサ、サウンドプロセサおよびDMAコントローラ等の各種機能ブロックを含むとともに、アナログ信号を取り込むときに用いられるA/Dコンバータ、赤外線信号やキー操作信号(本実施の形態では、スイッチsw1〜sw4のステータス情報)のような入力デジタル信号を受けかつ出力デジタル信号を外部機器に与える入出力制御回路、及び内部メモリ等を含む。
【0053】
CPUは、外部メモリ25に格納された制御プログラムを実行する。A/Dコンバータからのデジタル信号および入出力制御回路からのデジタル信号はCPUに与えられ、CPUは、制御プログラムに従って、それらの信号に応じて必要な演算を実行する。グラフィックスプロセサは、外部メモリ25に格納された画像データに対して、CPUの演算結果によって必要になったグラフィック処理を実行して、テレビジョンモニタ11に表示する画像を表すビデオ信号VDを生成する。サウンドプロセサは、外部メモリ25に格納された音声データに対して、CPUの演算結果によって必要になったサウンド処理を実行して、必要な音声を表すオーディオ信号AUを生成する。内部メモリは、例えば、RAMにより構成され、ワーキング領域、カウンタ領域、レジスタ領域、テンポラリデータ領域、及び/又はフラグ領域等として利用される。
【0054】
図3(a)〜図3(c)は、図1のカートリッジ5と入力装置1−nとの間の通信方法の説明図である。図3(a)を参照して、ホスト27(RFモジュール27)は、全てのノード2−0〜2−49(RFモジュール2−0〜2−49)に向けて、ビーコン信号BS()を発信する。ビーコン信号BS()は、ビーコン信号BS()の識別情報であるビーコンIDを含む。なお、符号BSの括弧内は、ビーコンIDを示す。
【0055】
図3(b)に示すように、ノード2−0〜2−49には、それぞれ、待機時間T0〜T49が割り当てられる。一般的に表すと、待機時間T(n)=T(n−1)+T+T、となる。ただし、T(0)=T0、である。Tは、ノード2−nが送信するステータス信号NSnの送信期間、Tは、マージンとしての期間である。ノード2−nは、割り当てられた待機時間T(n)をその内部メモリ4に格納している。ステータス信号NSnは、入力装置1−nのスイッチsw1〜sw4のステータス情報、ビーコンID及び後述のスキャン番号(「時点情報」に相当)を含む。
【0056】
ノード2−0は、ビーコン信号BSの受信完了時から、割り当てられた待機時間T0を経過した時に、ステータス信号NS0のホスト27への送信を開始し、期間Tの間に送信を完了する。次に、ノード2−1は、ビーコン信号BSの受信完了時から、割り当てられた待機時間T1を経過した時に、ステータス信号NS1のホスト27への送信を開始し、期間Tの間に送信を完了する。以降、同様に、それぞれのノード2−2〜2−49は、割り当てられた待機時間T(n)の経過を待って、順次ステータス信号NS2〜NS49をホスト27へ送信する。
【0057】
そして、図3(c)に示すように、ホスト27は、ノード2−49からのステータス信号NS49の受信完了後所定時間経過後に、全入力装置1−0〜1−49からのステータス信号NS0〜NS49を含むデータDをプロセッサ23に出力する。
【0058】
以上のような、ホスト27とノード2−nとの間の通信が、周期CY()単位で繰り返される。なお、符合CYの括弧内は、説明の便宜のために各周期に付した番号である。
【0059】
図4(a)及び図4(b)は、ノード2−nがステータス信号NSnに含めるステータス情報(「検知情報」に相当)、ビーコンID(「信号識別情報」に相当)及びスキャン番号(「時点情報」に相当)の説明図である。図4(a)を参照して、1周期(CY(5))は、あるビーコン信号(BS(5))の受信時から次のビーコン信号(BS(6))を受信するまでの期間とする。図4(b)に示すように、ノード2−nは、1周期(CY(5))の期間に、スイッチsw1〜sw4のスキャンを4回実行する。具体的には、ノード2−nは、ビーコン信号(BS(5))の受信時ST0、受信時ST0から時間tsが経過した時刻ST1、時刻ST1から時間tsが経過した時刻ST2、及び時刻ST2から時間tsが経過した時刻ST3において、スイッチsw1〜sw4のスキャンを実行する。時刻ST0〜ST3をスキャン時刻ST0〜ST3と呼ぶこともある。なお、例えば、時間tsは、ビーコン信号(BS(5))の受信時からデータDの出力開始直前までの時間SP(図3(a)〜図3(c)参照)を4で除した値である。
【0060】
ノード2−nは、スイッチsw1〜sw4のステータス情報、ビーコンID及びスキャン番号を内部メモリ4のテンポラリバッファ(図示せず)に格納する。この場合、ノード2−nは、現在のスキャン時刻(例えば、ST1)におけるステータス情報と、一つ前のスキャン時刻(例えば、ST0)におけるステータス情報と、を比較する。その比較の結果、ノード2−nは、ステータス情報が変化している場合に、テンポラリバッファに格納したステータス情報を、現在のスキャン時刻のステータス情報に更新する。なお、周期(CY(5))の最初のスキャン時刻ST0のステータス情報は、1つ前の周期(CY(4))の最後のスキャン時刻ST3のステータス情報と比較される。
【0061】
ノード2−nは、テンポラリバッファのステータス情報を更新する時は、テンポラリバッファに格納したビーコンIDを、更新時の周期(CY(5))で受信したビーコン信号(BS(5))のビーコンIDに更新すると共に、テンポラリバッファに格納したスキャン番号を、現在(更新時)のスキャン時刻を表すスキャン番号に更新する。なお、例えば、スキャン時刻ST0〜ST3は、それぞれ、スキャン番号0〜3で表される。
【0062】
ノード2−nは、現在の周期(CY(5))でのテンポラリバッファに格納した最終的なデータ(ステータス情報、ビーコンID及びスキャン番号)を、内部メモリ4の送信バッファ(図示せず)にコピーして、送信バッファに格納した当該データを含むステータス信号NSnを次の周期(CY(6))でホスト27に送信する。
【0063】
図5は、図2のプロセッサ23とホスト27とノード2−nとの間の通信手順図である。図5を参照して、ホスト27は、ビーコン信号BSをノード2−nに送信する。ビーコン信号BSは、上述したビーコンIDの他、グループIDを含む。グループIDは、このシステム(ホスト27及びこれに付随するノード2−n)を他のシステム(他のホスト及びこれに付随するノード)と区別するための識別情報である。
【0064】
各ノード2−nは、ビーコン信号BSを受けて、それぞれに割り当てられた待機時間T(n)の経過後に、ステータス信号NSnをホスト27に送信する。ステータス信号NSnは、上述したステータス情報、ビーコンID及びスキャン番号の他、ノードIDを含む。ノードID()は、ノード2−0〜2−49を互いに区別するための識別情報である。符号IDの括弧内は、ノードIDの値を示す。
【0065】
ホスト27は、全ノード2−nからのステータス信号NSnの受信を完了すると、これをプロセッサ23に送信する。また、ホスト27は、周期CY毎にビーコン信号BSをノード2−nに送信する。なお、待機時間T(0)〜T(49)はそれぞれ待機時間T0〜T49のことである。
【0066】
図6は、図2のホスト27による処理の流れを示すフローチャートである。図6を参照して、ステップS1にて、ホスト27は、各種変数やレジスタの初期化処理を実行する。ステップS2にて、ホスト27は、1周期CYを計時するタイマをスタートする。ステップS3にて、ホスト27は、タイマ値が1周期CYに到達したか否かを判断して、到達していない場合ステップS3に戻り、到達した場合はステップS4に進む。
【0067】
そして、ステップS4にて、ホスト27は、タイマをリセットしスタートする。ステップS5にて、ホスト27は、ビーコンID及びグループIDを含むビーコン信号BSをノード2−nに送信する。ステップS7では、ホスト27は、ビーコンIDを1つインクリメントする。なお、ビーコンIDは、連番の整数である。例えば、ビーコンIDは、0〜255までの整数であり、255の次は0にリセットされる。ステップS9にて、ホスト27は、変数nに0を代入する。
【0068】
ステップS11にて、ホスト27は、タイマ値が待機時間T(n)に到達したか否かを判断して、到達していない場合ステップS11に戻り、到達した場合はステップS13に進む。そして、ステップS13にて、ホスト27は、ノード2−nが送信したステータス信号NSnを受信する。ステップS15では、ホスト27は、受信したステータス信号NSnをノード2−nのステータス信号NSnとして格納する。ステップS17にて、ホスト27は、変数nを1つインクリメントする。
【0069】
ステップS19にて、ホスト27は、変数nが50に到達したか否かを判断して、到達していない場合はステップS11に戻り、到達した場合はステップS21に進む。そして、ステップS21にて、ホスト27は、格納した全ノード2−nのステータス信号NSnをプロセッサ23へ送信する。そして、ステップS3に進む。
【0070】
図7は、図2のノード2−nによる処理の流れを示すフローチャートである。図7を参照して、ステップS31にて、ノード2−nは、各種変数及びレジスタを初期化する。ステップS33にて、ノード2−nは、ホスト27からビーコン信号BSを受信したか否かを判断し、受信していない場合ステップS33に進み、受信した場合ステップS35に進む。そして、ステップS35では、ノード2−nは、変数BIに、受信したビーコン信号BSに含まれるビーコンIDを格納する。
【0071】
ノード2−nは、ステップS37にて、1周期CYを計時するタイマをリセットし、ステップS39にて、タイマをスタートする。
【0072】
ステップS40にて、ノード2−nは、内部メモリ4のテンポラリバッファに格納されたステータス情報、ノードID、変数BIの値及びスキャン番号を送信バッファにコピーする。なお、このように、周期CYの先頭で、テンポラリバッファのデータを送信バッファにコピーするので、送信バッファには、1つ前の周期CYでテンポラリバッファに格納された最終的なデータがコピーされる。また、ビーコンIDは、対応する周期CYを識別する情報でもあるので、ステップS35又はS71でビーコンIDを格納する変数BIは、現在の周期CYを識別する情報である。
【0073】
ステップS41にて、ノード2−nは、スイッチsw1〜sw4に対してキースキャンを実行する。そして、ステップS42にて、ノード2−nは、テンポラリバッファに格納されているステータス情報と、今回のキースキャンの結果得られたステータス情報と、を比較する。比較の結果、ノード2−nは、ステータス情報が変化した場合、テンポラリバッファのデータを更新すべくステップS43に進み、ステータス情報が変化していない場合、テンポラリバッファのデータを維持するためステップS43をスキップしてステップS45に進む。
【0074】
ステップS43では、ノード2−nは、テンポラリバッファに格納されたステース情報、ノードID、変数BIの値及びスキャン番号を、ステップS41のキースキャンの結果である最新のステータス情報、ノードID、ステップS35又はS71で更新された現在の周期CYを表す変数BIの値及びステップS41のキースキャン時刻ST0を表すスキャン番号0で更新する。
【0075】
ステップS42で「NO」が判断された後、又は、ステップS43の後、ステップS45にて、ノード2−nは、タイマ値が待機時間T(n)に到達したか否かを判断する。ノード2−nは、到達した場合は、ステータス信号NSnを送信すべくステップS47に進み、到達していない場合は、キースキャンを実行すべくステップS51に進む。
【0076】
ステップS45で「YES」が判断された後、ステップS47では、ノード2−nは、ステップS40で送信バッファにコピーされたステータス情報、ノードID、変数BIの値及びスキャン番号をホスト27に送信して、ステップS65に進む。
【0077】
一方、ステップS45で「NO」が判断された後、ステップS51では、ノード2−nは、内部メモリ4の時刻テーブルを参照して、時刻リードポインタ(ステップS63参照)が指し示すスキャン時刻を取得する。時刻テーブルには、スキャン時刻ST0〜ST1の時間ts、スキャン時刻ST0〜ST2の時間2ts、及びスキャン時刻ST0〜ST3の時間3tsが順番に格納されており、時刻リードポインタは、これらのいずれかを指し示す。なお、時刻リードポインタは、時間3tsの次は、時間tsを指し示す。
【0078】
ステップS53にて、ノード2−nは、タイマ値と、取得したスキャン時刻と、を比較する。そして、ステップS55にて、ノード2−nは、タイマ値がスキャン時刻に到達した場合はキースキャンを実行すべくステップS57に進み、それ以外はステップS65に進む。
【0079】
ステップS57にて、ノード2−nは、スイッチsw1〜sw4に対してキースキャンを実行する。そして、ステップS59にて、ノード2−nは、テンポラリバッファに格納されているステータス情報と、今回のキースキャンの結果得られたステータス情報と、を比較する。比較の結果、ノード2−nは、ステータス情報が変化した場合、テンポラリバッファのデータを更新すべくステップS61に進み、ステータス情報が変化していない場合、テンポラリバッファのデータを維持するためステップS61をスキップしてステップS63に進む。
【0080】
ステップS61では、ノード2−nは、テンポラリバッファに格納されたステース情報、ノードID、変数BIの値及びスキャン番号を、ステップS57のキースキャンの結果である最新のステータス情報、ノードID、ステップS35又はS71で更新された現在の周期CYを表す変数BIの値及びステップS57のキースキャン時刻(ST1〜ST3のいずれか)を表すスキャン番号(1〜3のいずれか)で更新する。
【0081】
ステップS59で「NO」が判断された後、又は、ステップS61の後、ステップS63では、ノード2−nは、時刻リードポインタをインクリメントする。
【0082】
ステップS47の後、ステップS55で「NO」が判断された後、又は、ステップS63の後、ステップS65では、ノード2−nは、タイマ値が時間(CY−X)に到達したか否かを判断する。時間CYは1周期の時間であり、例えば、45msである。時間Xは定数であり、例えば、0.3msである。このように、定数Xは、時間CYと比較して微小な時間である。ノード2−nは、時間(CY−X)に到達した場合は、次のビーコン信号BSが送信されてくる時間、つまり、現在の周期CYが終了間近であると判断してステップS67に進み、時間(CY−X)に到達していない場合は、ステータス信号NSnの送信のため(ステップS47)又はキースキャンのため(ステップS51〜S63)、ステップS45に進む。
【0083】
ステップS65で「YES」が判断された後、ステップS67では、ノード2−nは、次のビーコン信号BSを受信したか否かを判断し、受信した場合はステップS35に進み、変数BIを更新し、受信していない場合はステップS69に進む。ステップS69では、ノード2−nは、ステップS65で「YES」を判断した時点から時間Yが経過したか否かを判断する。時間Yは定数であり、例えば、1msである。ノード2−nは、時間Yが経過した場合はビーコン信号BSの受信に失敗したと判断してステップS71に進み、時間Yが経過していない場合はビーコン信号BSを待つべくステップS67に戻る。
【0084】
ステップS71では、ノード2−nは、変数BIを1つインクリメントして、ステップS37に進む。なぜなら、ステップS69でビーコン信号BSの受信に失敗したと判断したので、ビーコン信号BSからビーコンIDを取得することができず、ノード2−nが自らビーコンIDを生成するためである。つまり、ステップS71の処理は、ビーコン信号BSが受信できなかった場合の新たなビーコン信号BSの生成処理に相当する。ちなみに、上述のように、ビーコンIDは、連番であるので、本来受信すべきビーコン信号BSに含まれるビーコンIDを予測して生成できるのである。
【0085】
図8は、図2のプロセッサ23による処理の流れを示すフローチャートである。図8を参照して、プロセッサ23は、ステップS71にて、システムの初期化を実行する。ステップS81にて、プロセッサ23は、ホスト27がノード2−0〜2−49から受信して出力したデータ(ステータス信号NSn)の取得処理を割り込み処理として実行する。
【0086】
ステップS73では、プロセッサ23は、外部メモリ25に格納されたアプリケーションプログラムに従った情報処理を実行する。この情報処理は、トレーニング課題を各操作者に実行させるための映像及び音声の制御、各操作者の入力操作の検知、並びに、正誤判定等の各種演算処理を含む。この場合、プロセッサ23は、各操作者の入力操作の検知処理において、ステップS81で取得したデータを利用する。
【0087】
ステップS75にて、プロセッサ23は、ビデオ同期信号による割り込み待ちか否かを判断し、割り込み待ちの状態であればステップS75に戻り、割り込み待ちの状態でない場合は、つまり、ビデオ同期信号による割り込みがあれば、ステップ77にて、テレビジョンモニタ11に表示する画像を更新すると共に、ステップS79にて、ガイド音や効果音等の音声処理を実行して、ステップS73に進む。
【0088】
さて、以上のように、本実施の形態では、各ノード2−nは周期CYで送信されるビーコン信号BSに応答してスイッチsw1〜sw4のステータス情報を送信するところ、1周期内で時間を変えて複数回(上記例では4回)の検知処理が実行されるので、ホスト27及びプロセッサ23において、1周期内のどの時点の検知処理でステータス情報の変化を検知したかを認識できる。ちなみに、1周期CY内で1回(例えば、ビーコン信号BSの受信時)だけ検知処理を実行する場合は、どの周期でステータス情報の変化を検知したかが認識できるだけであり、周期単位での認識しかできない。
【0089】
本実施の形態によれば、どの周期の、どの時点での検知処理でステータス情報の変化を検知したかが、ノード2−nごとに認識できるので、ホスト27及びプロセッサ23では、複数のノード2−n間におけるステータス情報の変化の順番(例えば、スイッチswが押された順番)を精細に検出できる。ちなみに、1周期内で1回だけ検知処理を実行する場合は、周期単位で変化の順番が認識できるだけである。
【0090】
上記例では、ホスト27及びプロセッサ23は、スキャン番号により、ノード2−nが1周期内のどの時点でステータス情報の変化を検知したかを認識できる。また、ビーコンIDは、ビーコン信号BSを識別する情報であり、しかも、ビーコン信号BSは、周期CYで送信される。従って、ビーコンIDによって、周期を識別することができる。このため、ホスト27及びプロセッサ23は、ビーコンIDにより、ノード2−nがどの周期でステータス情報の変化を検知したかを認識できる。上記例では、ビーコン信号BSを受信できなかった場合を考慮して、変数BIにより、周期の識別を行っている。
【0091】
また、本実施の形態では、スイッチsw1〜sw4のステータス情報の変化が検知された場合に、テンポラリバッファに格納されたステータス情報、変数BI(ビーコンID)及びスキャン番号の更新が行われるので、ノード2−nが送信するステータス情報、変数BIの値及びスキャン番号は、過去の変化であろうが、現在の変化であろうが、常にステータス情報の変化時のものである。従って、通信エラーによって、ホスト27がノード2−nからのステータス情報、変数BI及びスキャン番号を正しく受信できなかった場合でも、ホスト27及びプロセッサ23は、ノード2−nから次に送信される変数BIの値及びスキャン番号によって、ステータス情報がどの周期のどの時刻で変化したかを認識できる。その結果、通信エラーが発生した場合であっても、ホスト27及びプロセッサ23は、複数のノード2−n間におけるステータス情報の変化の順番(例えば、スイッチswが押された順番)を正確に検出できる。
【0092】
例えば、第1周期のステータス情報が、その次の第2周期で変化し、第2周期において、テンポラリバッファに格納されたステータス情報、変数BI及びスキャン番号が更新されたとする。また、第2周期のステータス情報が、その次の第3周期で変化がなく、第2周期で格納されたステータス情報、変数BI及びスキャン番号が維持されたとする。そして、通信エラーによって、ホスト27が第2周期で受信すべきステータス情報、変数BI及びスキャン番号を正しく受信できなかったとする。しかし、ホスト27及びプロセッサ23は、第3周期で送信された変数BIによって、ステータス情報が変化した時期が、第2周期であることを認識できるし、また、第3周期で送信されたスキャン番号によって、ステータス情報が変化した時期が、第2周期内のどの時刻であるかを認識できる。
【0093】
また、通信エラーによって、ホスト27がノード2−nからのステータス情報、変数BI及びスキャン番号を正しく受信できなかった場合でも、ノード2−nから次に送信される変数BI及びスキャン番号によって、同じステータス情報がどの周期のどの時期から継続しているかを認識できる。
【0094】
さらに、通信エラーによって、ノード2−nがビーコン信号BSを受信できなかった場合でも、ノード2−n内部で変数BIをインクリメントし(ステップS71)、実質上ビーコンIDを生成するので、当該周期において、ステータス情報が変化した場合であっても、生成されたビーコンID、つまり、インクリメントされた変数BIの値がステータス情報と共にホスト27へ送信される。その結果、通信エラーが発生した場合であっても、ホスト27及びプロセッサ23は、複数のノード2−n間におけるステータス情報の変化の順番(例えば、スイッチが押された順番)を正確に検出できる。
【0095】
また、通信エラーによって、ノード2−nがホスト27からのビーコン信号BSを受信できなかった場合でも、ホスト27及びプロセッサ23は、ノード2−nが生成したビーコンID、つまり、インクリメントされた変数BIによって(ステップS71)、同じステータス情報がどの周期から継続しているかを認識できる。
【0096】
さらに、本実施の形態では、通信エラーによって、ノード2がビーコン信号BSを受信できなかった場合でも、ノード2−n内部で周期が維持されるので(ステップS69,S71,S37,S39)、ステータス信号NSnのホスト27への送信が可能になる。
【0097】
さらに、本実施の形態では、各ノード2−nは、ビーコン信号BSを受信してから、各々に割り当てられた異なる待機時間T(n)の経過後に、送信処理を実行する。その結果、ホスト27は、混信することなく、各ノード2−nからステータス信号NSnを受信できる。
【0098】
なお、本発明は、上記の実施の形態に限られるものではなく、その要旨を逸脱しない範囲で種々の態様において実施することが可能であり、例えば、以下のような変形も可能である。
【0099】
(1)上記では、カートリッジ5に、プロセッサ23とRFモジュール27とを搭載した。ただし、これらは、別体で設けられてもよい。例えば、RFモジュール27をカートリッジ5と別体で設けて、これをカートリッジ5に接続して用いることもできる。
【0100】
(2)上記では、1周期内で4回のキースキャンを実行したが、スキャン回数は複数回(2回以上)であればこれに限定されず任意に設定できる。
【0101】
(3)上記では、ステータス情報は、スイッチswのオン/オフ情報であったが、アナログスティック(ジョイスティック)の操作情報等、他の検知情報でもよい。つまり、入力装置1−nは、上記の通信機能を有する限り、その種類は問わない。例えば、上記の通信機能を有するゲームコントローラ、マイク、カメラ、ポインティングデバイス、ジャイロスコープ付き入力装置、加速度センサ付き入力装置、体重計、体脂肪計、血圧計、歩数計等を入力装置1−nとして使用できる。また、上記では、入力装置1−nの操作情報を送信したが、このように、入力装置1−nの種類は限定されないので、その種類に応じた検知情報(例えば、音声信号、画像信号、画像解析結果、座標情報、計測信号(角速度、加速度、体重、体脂肪、血圧、歩数等)、それらの処理結果等)を送信することができる。
【0102】
(4)上記では、トレーニング課題をテレビジョンモニタ11に表示したが、表示する内容はこれに限定されない。また、各入力装置1−nのスイッチswの数は、1でもよいし、4以外の複数でもよい。
【0103】
(5)上記では、操作者が手で操作する入力装置1−nを利用したが、足で操作する(踏む)入力装置(例えば、単数又は複数のフットスイッチを有するもの)を使用することもできる。また、その双方を使用することもできる。
【図面の簡単な説明】
【0104】
【図1】本発明の実施の形態による集団反応検知システムの全体構成を示す図である。
【図2】図1の集団反応検知システムの電気的構成を示す図である。
【図3】図1のカートリッジ5と入力装置1−nとの間の通信方法の説明図である。
【図4】図1の入力装置1−nがステータス信号NSnに含めるステータス情報、ビーコンID及びスキャン番号の説明図である。
【図5】図2のプロセッサ23とホスト27とノード2−nとの間の通信手順図である。
【図6】図2のホスト27による処理の流れを示すフローチャートである。
【図7】図2のノード2−nによる処理の流れを示すフローチャートである。
【図8】図2のプロセッサ23による処理の流れを示すフローチャートである。
【符号の説明】
【0105】
1−n…手入力型入力装置、2−n…RFモジュール(ノード)、3…アダプタ、4…内部メモリ、5…カートリッジ、11…テレビジョンモニタ、23…プロセッサ、25…外部メモリ、27…RFモジュール(ホスト)、sw1〜sw4…スイッチ。

【特許請求の範囲】
【請求項1】
複数の操作者に割り当てられ、各々が対応する前記操作者の入力を検知して検知情報を無線送信する複数のノードと、
前記各ノードが無線送信した前記検知情報を受信するホストと、を備え、
前記ホストは、前記複数のノードに対して、予め定められた周期で所定信号を送信し、
前記ノードの各々は、
前記1周期内で入力の検知処理を時間を変えて複数回実行する検知手段と、
前記所定信号に応答して前記検知情報を前記ホストに送信する送信手段と、を含む、集団反応検知システム。
【請求項2】
前記送信手段は、前記検知情報が前記1周期内のどの時点の検出処理で検出されたかを示す情報(以下、「時点情報」と呼ぶ。)を、当該検知情報と共に、前記所定信号に応答して前記ホストに送信する、請求項1記載の集団反応検知システム。
【請求項3】
前記送信手段は、前記検知情報の変化が検出された前記周期を示す情報を、当該検知情報と共に、前記所定信号に応答して前記ホストに送信する、請求項1又は2記載の集団反応検知システム。
【請求項4】
前記所定信号は、その所定信号を識別する情報(以下、「信号識別情報」と呼ぶ。)を含み、
前記ノードの各々は、前記検知情報を前記信号識別情報及び前記時点情報と関連付けて格納する格納手段をさらに含み、
前記格納手段は、前記検知手段により前記検知情報の変化が検知された場合に、格納した前記検知情報、前記信号識別情報及び前記時点情報を、変化した前記検知情報、変化を検知した前記周期の前記所定信号に含まれる前記信号識別情報及び前記時点情報で更新し、
前記送信手段は、前記所定信号に応答して、前記格納手段に格納した前記検知情報、前記信号識別情報及び前記時点情報を前記ホストに送信する、請求項2記載の集団反応検知システム。
【請求項5】
前記ノードの各々は、前記所定信号を受信しなかった場合、前回受信した前記所定信号に含まれた前記信号識別情報に基づいて、新たな前記信号識別情報を生成する識別情報生成手段をさらに含み、
前記格納手段は、前記所定信号を受信しなかった前記周期において、前記検知手段により前記検知情報の変化が検知された場合に、格納した前記検知情報、前記信号識別情報及び前記時点情報を、変化した前記検知情報、前記識別情報生成手段が生成した前記信号識別情報及び前記時点情報で更新する、請求項4記載の集団反応検知システム。
【請求項6】
複数の操作者に割り当てられ、各々が対応する前記操作者の入力を検知して検知情報を無線送信する複数のノードと、
前記各ノードが無線送信した前記検知情報を受信するホストと、を備え、
前記ホストは、前記複数のノードに対して、予め定められた周期で所定信号を送信し、
前記所定信号は、その所定信号を識別する情報(以下、「信号識別情報」と呼ぶ。)を含み、
前記ノードの各々は、
前記1周期内で入力の検知処理を実行する検知手段と、
前記検知情報を前記信号識別情報と関連付けて格納する格納手段と、
前記所定信号に応答して、前記格納手段に格納した前記検知情報及び前記信号識別情報を前記ホストに送信する送信手段と、を含み、
前記格納手段は、前記検知手段により前記検知情報の変化が検知された場合に、格納した前記検知情報及び前記信号識別情報を、変化した前記検知情報及び変化を検知した前記周期の前記所定信号に含まれる前記信号識別情報で更新する、集団反応検知システム。
【請求項7】
前記ノードの各々は、前記所定信号を受信しなかった場合、前回受信した前記所定信号に含まれた前記信号識別情報に基づいて、新たな前記信号識別情報を生成する識別情報生成手段をさらに含み、
前記格納手段は、前記所定信号を受信しなかった前記周期において、前記検知手段により前記検知情報の変化が検知された場合に、格納した前記検知情報及び前記信号識別情報を、変化した前記検知情報及び前記識別情報生成手段が生成した前記信号識別情報で更新する、請求項6記載の集団反応検知システム。
【請求項8】
前記識別情報生成手段は、前記所定信号を連続して受信しなかった場合、前回生成した前記信号識別情報に基づいて、新たな前記信号識別情報を生成する、請求項7記載の集団反応検知システム。
【請求項9】
前記ノードの各々は、前記所定信号を受信しなかった場合、前記予め定められた周期を実質的に維持する維持手段をさらに含み、
前記送信手段は、前記所定信号を受信しなかった場合、前記維持手段によって維持された前記周期に基づいて、送信処理を実行する、請求項1から8のいずれかに記載の集団反応検知システム。
【請求項10】
前記各ノードの前記送信手段は、前記所定信号を受信してから、各々に割り当てられた異なる期間の経過後に、送信処理を実行する、請求項1から9のいずれかに記載の集団反応検知システム。
【請求項11】
複数の操作者に割り当てられ、各々が対応する前記操作者の入力を検知して検知情報を無線送信する複数のノードと、
前記各ノードが無線送信した前記検知情報を受信するホストと、を備え、
前記ホストは、前記複数のノードに対して、予め定められた周期で所定信号を送信し、
前記ノードの各々は、
前記1周期内で入力の検知処理を実行する検知手段と、
前記所定信号に応答して、前記検知情報を前記ホストに送信する送信手段と、
前記所定信号を受信しなかった場合、前記予め定められた周期を実質的に維持する維持手段と、を含み、
前記送信手段は、前記所定信号を受信しなかった場合、前記維持手段によって維持された前記周期に基づいて、前記検知情報を前記ホストに送信する、通信システム。
【請求項12】
前記各ノードの前記送信手段は、前記所定信号を受信してから、又は、前記周期の先頭から、各々に割り当てられた異なる期間の経過後に、送信処理を実行する、請求項11記載の通信システム。
【請求項13】
複数の操作者に割り当てられ、各々が対応する前記操作者の入力を検知して検知情報を無線送信する複数のノードと、
前記各ノードが無線送信した前記検知情報を受信するホストと、を備え、
前記ホストは、前記複数のノードに対して、予め定められた周期で所定信号を送信し、
前記ノードの各々は、
前記1周期内で入力の検知処理を実行する検知手段と、
前記所定信号に応答して、割り当てられた待機時間の経過後に、前記検知情報を前記ホストに送信する送信手段と、を含み、
前記ノードごとに異なる前記待機時間が割り当てられる、通信システム。
【請求項14】
請求項1から13のいずれか一に記載のノードを含む入力装置。
【請求項15】
請求項1から13のいずれか一に記載のホストを含む通信制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2009−182907(P2009−182907A)
【公開日】平成21年8月13日(2009.8.13)
【国際特許分類】
【出願番号】特願2008−22202(P2008−22202)
【出願日】平成20年2月1日(2008.2.1)
【出願人】(396025861)新世代株式会社 (138)
【Fターム(参考)】