(57)【要約】      （修正有）【課題】ユーザーの腕に装着した状態や個人差に左右されず、短時間で手指の動きと電極との対応関係を明確にし、誤動作が極めて少なく、高い精度で目的の手指を駆動できる、電気刺激装置と、これを用いる電気刺激システムを提供する。【解決手段】電極がどの手指の動きに該当するのかを示すベイズ事後確率が要素として記述された電極確率行列をホストで更新する際、電極確率行列の左上に存在する手指の動きが生じた要素の位置を比較して、必要ならば電極確率行列の列を並べ替える。【選択図】図８
2018153648.tif 000002
【特許請求の範囲】
【請求項１】
電気刺激装置と、
前記電気刺激装置に電気刺激を生じる命令を送信するホストと
を有する電気刺激システムであって、
前記電気刺激装置は、
ユーザーの腕に巻き付けられるバンドと、
前記バンドの一方の面に配置されて前記ユーザーの腕の筋肉の変位を検出する複数の筋変位センサーと、
前記複数の筋変位センサーから一の筋変位センサーを選択するセンサー用マルチプレクサと、
前記バンドの、前記複数の筋変位センサーが配置されている面に、前記複数の筋変位センサーに隣接して複数個配置されている電極と、
前記複数の電極から一の電極を選択する電極用マルチプレクサと、
前記ホストから手指を動かす命令を受信する近距離無線受信部と、
前記筋変位センサーから得られる、前記ユーザーの腕の筋肉の変位に係る信号をデジタルデータに変換して前記ホストに送信する近距離無線送信部と、
手指の動きと前記複数の電極との対応関係が確率で記述されている電極確率行列と、
前記手指を動かす命令に基づき、前記電極確率行列から最大の確率を示す電極を特定して、前記電極用マルチプレクサを制御して前記特定した電極を選択する指電極対応変換部と
を具備し、
前記ホストは、
前記電気刺激装置から前記筋変位センサーのデータを受信する近距離無線受信部と、
前記電極確率行列と、
前記筋変位センサーのデータを前記ユーザーの手指の動きに変換した上で、現在の前記ユーザーの腕と前記電気刺激装置の相対的な位置関係のずれを検出して前記電極確率行列の要素を並べ替えた上で、前記電極確率行列の要素を更新する入出力制御部と、
更新した前記電極確率行列を前記電気刺激装置へ送信する近距離無線送信部と
を具備する、電気刺激システム。
【請求項２】
前記ホストは更に、
前記電極確率行列の要素を、学習アルゴリズムに基づく事後確率を計算して更新する確率演算部と
を具備する、請求項１に記載の電気刺激システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電気刺激信号を人の腕の筋肉に与えると共に、腕の筋肉の変位をセンサーで検出する電気刺激装置と情報処理装置とを組み合わせた電気刺激システムに関する。
【背景技術】
【０００２】
従来、人（ユーザー）の前腕に複数の電極を装着し、その電極から前腕の筋肉に電気刺激信号を与えることで、外部からの指令で、ユーザーの指又は手を動かそうとする試みが行われている。たとえば、手指のリハビリテーション、トレーニング、動きの補助などを、外部からの指令で行うことが考えられている。また、ヘッドマウントディスプレイなどを使用して、ユーザーに仮想空間の映像を提示する仮想現実処理（Virtual Reality）や、現実の空間映像に仮想的なオブジェクト画像を重畳する拡張現実処理（Argumented Reality）を実行する際に、外部からの指令で、仮想空間等の映像に合わせて手指を動かすことで、リアリティ性を高めることなども提案されている。
【０００３】
本願の発明者らは、先に特許文献１に記載されるような電気刺激装置を提案した。この特許文献１で提案した電気刺激装置は、ユーザーの前腕に装着されるバンドに複数の電極を取り付けて、前腕の筋肉に電気刺激を与える装置である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１０４２４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１で提案した電気刺激装置を装着したユーザーは、外部からの指令により前腕の筋肉に電気刺激が与えられることで、指又は手が動くようになる。たとえば５本の指は、前腕のどの筋肉を刺激すれば動くかが予め判っており、電気刺激装置に取り付けられた電極によって、特定の筋肉を刺激することで、その筋肉に対応した指が動く。
【０００６】
ここで、ユーザーがバンド形状の電気刺激装置を前腕に装着した状況を想定する。このとき、バンド形状の電気刺激装置は複数の電極を備えるが、それぞれの電極がどの筋肉に対応しているのかを検知する必要がある。この検知を行うために、ユーザーがバンド形状の電気刺激装置を装着した際には、最初に較正作業を行って、電気刺激信号を各電極から出力させ、どの指が動くのかを予め確かめることが必要になる。
つまり、バンド形状の電気刺激装置をユーザーが装着した際に、電気刺激装置に配置された各々の電極がどの筋肉に対向しているのかを、電気刺激装置が予め正確に把握する必要がある。このため、較正作業は極めて重要な意味を持つ。
【０００７】
一方、人の腕の太さは、年齢、性別、体重などの個人差で大きく異なる。このため、一つの電気刺激装置だけで腕の太さにおける個人差を吸収するには、５本の指の数を超える数だけ、電極とセンサーを設ける必要がある。すると、電極の中には指の動きに対応しない電極が生じることとなる。すなわち、電気刺激装置を正しく動作させるためには、実際の指を動かす筋肉と、電極の対応関係を較正作業によって予め明らかにする必要がある。
【０００８】
本発明は係る課題に鑑みてなされたものであり、ユーザーの腕に装着した状態や個人差に左右されず、短時間で手指の動きと電極との対応関係を明確にし、誤動作が極めて少なく、高い精度で目的の手指を駆動できる電気刺激システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明の電気刺激装置は、電気刺激装置と、電気刺激装置に電気刺激を生じる命令を送信するホストとを有する。
電気刺激装置は、ユーザーの腕に巻き付けられるバンドと、バンドの一方の面に配置されてユーザーの腕の筋肉の変位を検出する複数の筋変位センサーと、複数の筋変位センサーから一の筋変位センサーを選択するセンサー用マルチプレクサと、バンドの、複数の筋変位センサーが配置されている面に、複数の筋変位センサーに隣接して複数個配置されている電極とを具備する。更に、複数の電極から一の電極を選択する電極用マルチプレクサと、ホストから手指を動かす命令を受信する近距離無線受信部と、筋変位センサーから得られる、ユーザーの腕の筋肉の変位に係る信号をデジタルデータに変換してホストに送信する近距離無線送信部と、手指の動きと複数の電極との対応関係が確率で記述されている電極確率行列と、手指を動かす命令に基づき、電極確率行列から最大の確率を示す電極を特定して、マルチプレクサを制御して特定した電極を選択する指電極対応変換部とを具備する。
ホストは、電気刺激装置から筋変位センサーのデータを受信する近距離無線受信部と、電極確率行列と、筋変位センサーのデータをユーザーの手指の動きに変換した上で、現在のユーザーの腕と電気刺激装置の相対的な位置関係のずれを検出して電極確率行列の要素を並べ替えた上で、電極確率行列の要素を更新する入出力制御部と、更新した電極確率行列を電気刺激装置へ送信する近距離無線送信部とを具備する。
【発明の効果】
【００１０】
本発明により、ユーザーの腕に装着した状態や個人差に左右されず、短時間で手指の動きと電極との対応関係を明確にし、誤動作が極めて少なく、高い精度で目的の手指を駆動できる電気刺激システムを提供することができる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態の例である電気刺激装置の外観斜視図である。
【図２】電極配置面の平面図である。
【図３】電気刺激装置を前腕に装着する直前の状態と、直後の状態を示す図である。
【図４】電気刺激装置の使用形態の一例である、電気刺激装置を有する電気刺激システムを示す模式図である。
【図５】ホストのハードウェア構成を示すブロック図である。
【図６】電気刺激装置のハードウェア構成を示すブロック図である。
【図７】通常モードにおける電気刺激装置とホストのソフトウェア機能を示すブロック図である。
【図８】較正モードにおける電気刺激装置とホストのソフトウェア機能を示すブロック図である。
【図９】較正モードにおける、電気刺激装置とホストが実行する較正動作の流れを示すタイムチャートである。
【図１０】ユーザーが初めて電気刺激装置を腕に装着した際にホストにて実行される、初回の学習モードの動作の流れを説明するフローチャートである。
【図１１】電気刺激と筋肉の収縮状態と筋変位センサーの動作を説明するタイムチャートである。
【図１２】電気刺激に対する手指の動きを示す手指挙動行列の説明図と、手指挙動行列から有効な電気刺激を選択する手順を示す図と、手指挙動行列から有効な電気刺激を選択した結果を示すフラグ行列の説明図と、フラグ行列から生成した電極確率行列を示す図である。
【図１３】ユーザーが２回目以降に電気刺激装置を装着した際にホストにて実行される、２回目以降の学習モードの動作の流れを説明するフローチャートである。
【図１４】ユーザーが２回目以降に電気刺激装置を装着した際にホストにて実行される、２回目以降の学習モードの動作の流れを説明するフローチャートである。
【図１５】ユーザーが電気刺激装置を初めて腕に装着した際の、腕の筋肉と電極の配置関係を説明するための模式的な概略図と、ユーザーが電気刺激装置を再び腕に装着した際の、腕の筋肉と電極の配置関係を説明するための模式的な概略図である。
【図１６】２回目以降の学習モードによって作成された手指挙動行列の例と、この手指挙動行列に基づいて作成された、仮想的な電極確率行列と、ホストに記憶されている学習モード適用前の電極確率行列と、この電極確率行列を並べ替えた行列を示す図である。
【図１７】一般化した電極確率行列の一例を示す図である。
【発明を実施するための形態】
【００１２】
図１は、本発明の実施形態の例である電気刺激装置１００の外観斜視図である。
電気刺激装置１００はＶ字形状のバンド１０１を備える。このバンド１０１はシリコーンゴム等の柔軟性を有する樹脂シートで構成されている。バンド１０１の両翼部分は、水平線Ｌ１０５から等しい傾斜角度θ１及びθ２だけ傾斜した形状である。傾斜角度θ１及びθ２は例えば３２°である。バンド１０１の表面側の中心部分には長方形形状の回路収納ボックス１０３が設けられている。回路収納ボックス１０３には、後述する演算処理部１５０（図４参照）や二次電池などが内蔵されている。
【００１３】
回路収納ボックス１０３の、一方の短辺側の側面には、第一シリアルインターフェース端子１０４が設けられている。第一シリアルインターフェース端子１０４は例えばｍｉｃｒｏＵＳＢ用の端子である。電気刺激装置１００はこの第一シリアルインターフェース端子１０４を通じて、内蔵する不図示の二次電池を充電する。また、第一シリアルインターフェース端子１０４をパソコン等に接続して、演算処理部の構成要素であるファームウェアをアップデートする等の機能拡張が可能である。
【００１４】
バンド１０１の回路収納ボックス１０３が取り付けられた面とは反対側の裏面（図１の下側の面）は、図２にて後述する電極配置面１００ａである。
電気刺激装置１００は、後述する図３Ａ及び図３Ｂの装着例で説明するように、バンド１０１の裏面である電極配置面１００ａをユーザーの前腕に巻き付けることで、ユーザーに装着される。
【００１５】
図２は、電極配置面１００ａの平面図である。
電極配置面１００ａには、ユーザーの前腕の筋肉に電気刺激信号を与えるための電極２０１〜２０８と、その電極２０１〜２０８とペアで使用される接地電極である電極２１１〜２１３，２１６，２１７とを備える。但し、接地電極については対向する複数の電極について共通で使用するため、電極２０１〜２０８と電極２１１〜２１３，２１６，２１７の数は一致しない。
加えて、電極配置面１００ａは、ユーザーの前腕の筋肉の動きを検出する筋変位センサー２２１〜２２８を備える。
【００１６】
電極配置面１００ａの右側（図中の左側）には、右側電極配置箇所２３１が設けられており、右側電極配置箇所２３１には４個の電極２０１，２０２，２１１，２１２が配置される。４個の電極２０１，２０２，２１１，２１２の内で、電極２０１は第一の電極であり、電極２０２は第二の電極である。また、電極２１１は電極２０１に対向する接地電極であり、電極２１２は電極２０２に対向する接地電極である。
【００１７】
電極２０１と電極２１１は前腕の筋肉に刺激を与える電極であり、装着時に腕の長手方向Ｌに隣接して配置される。
電極２０２と電極２１２も前腕の筋肉に刺激を与える電極であり、周方向Ｈに対して傾斜角度θ２で、傾斜した状態で配置されたほぼ長方形の電極である。電極２０２と電極２１２とは、腕の長手方向Ｌに隣接して配置される。
【００１８】
電極配置面１００ａの中央には、中央電極配置箇所２３２が設けられており、中央電極配置箇所２３２には５個の電極２０３，２０４，２０５，２０８，２１３が配置される。５個の電極２０３，２０４，２０５，２０８，２１３の内で、電極２０３は第三の電極であり、電極２０４は第四の電極であり、電極２０５は第五の電極である。これら３個の電極２０３，２０４，２０５は、腕の長手方向に伸びて、腕の周方向にほぼ平行に並んで配置されている。また、電極２０８は第八の電極である。この電極２０８は、腕の周方向に長く伸びた電極である。電極２１３は、電極２０３，２０４，２０５，２０８に対向して共通に使用される接地電極である。
【００１９】
電極２０３と電極２０４と電極２０５とは、それぞれのチャンネルごとに前腕のそれぞれ別の筋肉に刺激を与える電極であり、接地電極として電極２１３が共通に使用される。３つの電極２０３，２０４，２０５は、腕の周方向Ｈに並んで配置され、この３つの電極２０３，２０４，２０５と長手方向Ｌに隣接して配置される共通の接地電極である電極２１３は、腕の周方向Ｈに長く伸びた長方形の電極である。
電極２０８は、電極２１３に隣接して、腕の周方向Ｈに長く伸びた長方形の電極である。電極２１３は、電極２０８の接地電位としても使用される。なお、電極２０８は予備に使用される電極であり、この電極２０８は腕の周方向Ｈに長く伸びているため、腕の複数の筋肉に同時に刺激を与えることができる。
【００２０】
電極配置面１００ａの左側部１０２（図２中の右側）には、左側電極配置箇所２３３が設けられており、左側電極配置箇所２３３には４個の電極２０６，２０７，２１６，２１７が配置される。４個の電極２０６，２０７，２１６，２１７の内で、電極２０６は第六の電極であり、電極２０７は第七の電極である。また、電極２１６は電極２０６に対向する接地電極であり、電極２１７は電極２０７に対向する接地電極である。
【００２１】
電極２０６と電極２１６は前腕の筋肉に刺激を与える電極であり、周方向Ｈに対して左側部１０２の傾斜角度θ１と同じ角度θ１で、傾斜した状態で配置されたほぼ長方形の電極である。
電極２０７と電極２１７は前腕の筋肉に刺激を与える電極であり、装着時に腕の長手方向Ｌに隣接して配置される。
【００２２】
電極配置面１００ａの右側電極配置箇所２３１の近傍には、２個所に筋変位センサー２２１，２２２が配置されている。電極配置面１００ａの中央電極配置箇所２３２の近傍には、４個所に筋変位センサー２２３，２２４，２２５，２２６が配置されている。電極配置面１００ａの左側電極配置箇所２３３の近傍には、２個所に筋変位センサー２２７，２２８が配置されている。
【００２３】
８個の筋変位センサー２２１〜２２８は周知のフォトリフレクターである。これらの筋変位センサーはそれぞれ赤外線発光素子２２１ａ〜２２８ａと赤外線受光素子２２１ｂ〜２２８ｂ（図６参照）とで構成されており、筋変位センサー配置面から腕の筋肉の表面までの距離の変化を検出する。赤外線発光素子２２１ａ〜２２８ａは例えば近赤外線ＬＥＤであり、赤外線受光素子２２１ｂ〜２２８ｂは例えばフォトトランジスタである。
筋肉が収縮すると、筋肉が存在する皮膚の部分に生じる隆起によって、フォトリフレクターと筋肉の表面部分との距離が変動する。フォトリフレクターはこの距離の変動によって生じる近赤外線反射光の強弱を、フォトトランジスタで検出する。近赤外線は皮膚表面を透過する性質を有するので、筋肉の隆起状態を検出することに適している。
【００２４】
なお、電極配置面１００ａの右側電極配置箇所２３１、中央電極配置箇所２３２、左側電極配置箇所２３３を除く個所には、粘着性を有する樹脂材（不図示）が配置され、その樹脂材の粘着性で、電極配置面１００ａを前腕に巻き付けた状態に装着できるようにしている。
【００２５】
［電気刺激装置１００の装着例］
図３Ａは、電気刺激装置１００を前腕に装着する直前の状態を示す図である。
図３Ｂは、電気刺激装置１００を前腕に装着した直後の状態を示す図である。
図３Ａに示すように、ユーザーの右腕の前腕ＲＡの手首寄りの個所に、バンド１０１の電極配置面１００ａ（図２）の中央部分が触れた状態とする。このときには、図３Ａに示すように手のひらが上側となった位置とする。また、ほぼＶ字形状をしたバンド１０１の中央にある回路収納ボックス１０３が、手のひら側を向くようにする。
【００２６】
そして、ユーザーは、バンド１０１の両翼を、矢印Ｆ１と矢印Ｆ２で示すように手首に巻き付ける作業を行う。
このようにして、図３Ｂに示すように、電気刺激装置１００が前腕ＲＡに巻き付いた状態で装着される。このときには、電極配置面１００ａに配置した粘着性を有する樹脂材の粘着性で、前腕ＲＡに巻き付いた状態が維持される。
なお、樹脂材の粘着性だけで前腕ＲＡに巻き付いた状態とするのは一例であり、例えばバンド１０１の両端に何らかのクリップ機構を設けて、両者が重なった状態で留まるようにしてもよい。
【００２７】
このように電気刺激装置１００は、バンド１０１を前腕ＲＡに巻き付けて装着するため、簡単に装着することができる。そして、バンド１０１がほぼＶ字形状をしているため、ユーザーは装着方向が判りやすく、確実に図３Ｂに示すような決められた方向に装着できるようになる。
なお、図３ではユーザーの右腕に電気刺激装置１００を装着する例を示したが、左腕に電気刺激装置１００を装着してもよい。
【００２８】
ところで、図３Ａ及び図３Ｂに図示されているように、本発明の実施形態に係る電気刺激装置１００は、ユーザーの前腕ＲＡの手首寄りの箇所に巻きつける。しかし、その際、電気刺激装置１００がユーザーの前腕ＲＡの定位置に定まるような指標が、前腕ＲＡには設けられていない。つまり、ユーザーが電気刺激装置１００を前腕ＲＡに装着する度、その装着位置が微妙にずれることが往々にして生じる。すると、ユーザーが電気刺激装置１００を前腕に装着する度に、電気刺激装置１００の電極配置面１００ａに設けられている電極と筋変位センサーと、ユーザーの腕の筋肉との相対的な位置関係がずれることとなる。
本発明はこの「ズレ」に対応して、電気刺激装置１００が電極と手指の動きとの対応関係を正しく把握することを目的として想到されたものである。
【００２９】
［電気刺激装置１００の使用形態］
図４は、電気刺激装置１００の使用形態の一例である、電気刺激装置１００を有する電気刺激システム４００を示す模式図である。
電気刺激装置１００は、後述するＢｌｕｅｔｏｏｔｈ（登録商標）等の近距離無線通信機能を有する。一方、電気刺激装置１００と同等の近距離無線通信機能を内蔵するパソコンか、近距離無線通信機能を提供する周辺機器をパソコンに接続する等で、電気刺激装置１００はパソコンとの近距離無線通信による双方向通信を確立する。これ以降、電気刺激装置１００と近距離無線通信にて双方向通信を確立するパソコンをホスト４０１と呼ぶ。図４中、ホスト４０１には近距離無線通信部４０２が接続されており、電気刺激装置１００との間で双方向通信を確立する。
【００３０】
ホスト４０１には、例えばシューティングゲーム等のアプリケーションプログラムが稼働している。そして、このアプリケーションプログラムに対するユーザーの操作に応じて、ホスト４０１は電気刺激装置１００に対し、ユーザーの所定の筋肉へ電気刺激を与える命令を近距離無線通信にて送信する。電気刺激装置１００は、ホスト４０１から受信した電気刺激の命令に基づき、ユーザーの所望の筋肉へ電気刺激を与える。
また、電気刺激装置１００は前述の筋変位センサーにてユーザーの腕の筋肉の変位情報をデジタルデータとしてホスト４０１に送信する。
【００３１】
ところで、筋変位センサーの駆動には赤外線ＬＥＤの発光駆動を始め、比較的大きな電力消費を伴う。そこで、ホスト４０１のアプリケーションプログラムは必要最小限の電力消費で腕の筋肉の変位情報を電気刺激装置１００から取得するべく、アプリケーションプログラムの状態に応じて、電気刺激装置１００に筋変位センサーの駆動と停止を命じるコマンドを送信する。すなわち、ホスト４０１は、アプリケーションプログラムを実行中に、アプリケーションプログラムがユーザーの腕の筋肉の変位情報を必要とする状況になるまでは、電気刺激装置１００に筋変位センサーを駆動させない。アプリケーションプログラムがユーザーの腕の筋肉の変位情報を必要とする状況に至ったら、その時点でホスト４０１から電気刺激装置１００へ筋変位センサーを駆動するためのコマンドを送信する。このホスト４０１からのコマンドを受けて、電気刺激装置１００は、腕の筋肉の変位情報を取得するべく筋変位センサーを駆動する。
【００３２】
そしてホスト４０１は、アプリケーションプログラムが必要な腕の筋肉の変位情報の取得を終了した時点で、筋変位センサーの駆動を停止するよう、電気刺激装置１００へコマンドを送信する。このホスト４０１からのコマンドを受けて、電気刺激装置１００は、筋変位センサーの駆動を停止する。
すなわち、電気刺激装置１００は、ホスト４０１に対して、ユーザーの腕の筋肉の変位情報を収集する入力装置として、そして腕の筋肉に変位を与える出力装置として、機能する。また、電気刺激装置１００は、ホスト４０１及び／またはアプリケーションプログラムに対する端末であるともいえる。
【００３３】
図２で説明したように、電気刺激装置１００の電極配置面１００ａには、接地電極を除く電極が８個存在する。一方、人間の手には５本の指が存在する。これは、人の腕の太さにおける個人差を一つの電気刺激装置１００だけで吸収するために、５本の指の数を超える数だけ、電極を設けていることによる。つまり、８個の電極の中には指の動きに対応しない電極も含まれることとなる。また、ユーザーの腕に電気刺激装置１００を装着した状態によっては、装着位置のずれに起因して、電極に相対する筋肉の位置がずれることが往々にして生じ得る。このようなずれが生じても筋肉に電極が対応できるようにするためには、５本の指の数を超える数の電極を設けることが好ましい。
【００３４】
また、電気刺激装置１００を正しく動作させるためには、実際の指を動かす筋肉と、電極と、筋変位センサーの対応関係を較正作業によって明らかにする必要がある。
このため、本発明の実施形態に係る電気刺激装置１００の動作モードとしては、アプリケーションプログラムの端末として動作する通常モードと、実際の指を動かす筋肉と電極及び筋変位センサーとの対応関係を明らかにするための較正作業を遂行する較正モードとの、二種類の動作モードが存在する。
なお、後述するソフトウェア機能を説明するブロック図では、通常モードと較正モードに分けて説明する。本発明は、このうち特に較正モードに関する発明である。
【００３５】
［ホスト４０１のハードウェア構成］
図５は、ホスト４０１のハードウェア構成を示すブロック図である。
前述のように一般的なパソコンよりなるホスト４０１は、バス５０７に接続された、ＣＰＵ５０１、ＲＯＭ５０２、ＲＡＭ５０３、不揮発性ストレージ５０４、表示部５０５、操作部５０６及び近距離無線通信部４０２を備える。近距離無線通信部４０２は、電気刺激装置１００と近距離無線通信を行うためのハードウェアである。不揮発性ストレージ５０４にはＯＳと、パソコンを電気刺激装置１００のホスト４０１として動作させるためのアプリケーションプログラムが格納されている。
【００３６】
［電気刺激装置１００のハードウェア構成］
図６は、電気刺激装置１００のハードウェア構成を示すブロック図である。
バス６０１に接続されているＣＰＵ６０２、ＲＯＭ６０３、ＲＡＭ６０４、Ａ／Ｄ変換器６０５、そして第二シリアルインターフェース６０６（図６中「第二シリアルＩ／Ｆ」と略記）は、周知のワンチップマイコン６０７を構成する。
筋変位センサー２２１、２２２…２２８を構成する赤外線ＬＥＤである赤外線発光素子２２１ａ、２２２ａ…２２８ａのアノードは電源電圧ノード＋Ｖｃｃに接続されている。赤外線発光素子２２１ａ、２２２ａ…２２８ａのカソードは第一マルチプレクサ６０８を通じて電流制限抵抗Ｒ６０９の一端に接続されている。電流制限抵抗Ｒ６０９の他端は接地されている。
【００３７】
筋変位センサー２２１、２２２…２２８を構成するフォトトランジスタである赤外線受光素子２２１ｂ、２２２ｂ…２２８ｂのコレクタは電源電圧ノード＋Ｖｃｃに接続されている。赤外線受光素子２２１ｂ、２２２ｂ…２２８ｂのエミッタは第二マルチプレクサ６１０を通じてＡ／Ｄ変換器６０５に接続されていると共に、抵抗Ｒ６１１ａ、Ｒ６１１ｂ、…Ｒ６１１ｈを通じて接地されている。
【００３８】
第一マルチプレクサ６０８及び第二マルチプレクサ６１０が、第二シリアルインターフェース６０６から制御信号を受けて、周期的に切り替え制御されることで、Ａ／Ｄ変換器６０５には時分割で８個の筋変位センサー２２１、２２２…２２８の電圧信号が入力される。この第一マルチプレクサ６０８及び第二マルチプレクサ６１０は、複数の筋変位センサー２２１、２２２…２２８のうちの１個を選択する、センサー用マルチプレクサと総称することができる。
【００３９】
ワンチップマイコン６０７のバス６０１には周知の６軸センサー６１２と近距離無線通信部６１３も接続されており、６軸センサー６１２が出力する姿勢情報及び加速度情報は、Ａ／Ｄ変換器６０５を通じて得られた８個の筋変位センサー２２１、２２２…２２８の情報と共に、近距離無線通信部６１３を通じてホスト４０１へ送信される。
ワンチップマイコン６０７のバス６０１には更に、第一シリアルインターフェース６１４（図６中「第一シリアルＩ／Ｆ」と略記）が接続されている。なお、この第一シリアルインターフェース６１４は、不図示の蓄電池に電力を供給するため、及びＲＯＭ６０３に格納されているファームウェアをアップデートする際に用いられる。
【００４０】
第二シリアルインターフェース６０６には更に、周知のチョークコイルとコンデンサとトランジスタスイッチよりなる昇圧回路６１５が接続されている。そして、第二シリアルインターフェース６０６から昇圧回路６１５に、例えば１００ｋＨｚで、ほぼ電源電圧＋Ｖｃｃに等しい電圧の矩形波パルス信号が供給される。この矩形波パルス信号は、昇圧回路６１５内の不図示のトランジスタスイッチをオン・オフ制御する。
そして、昇圧回路６１５によって矩形波パルス信号の電圧は２倍に昇圧される。昇圧回路６１５が出力する電気刺激電圧は、ＰＷＭスイッチ６１６と第三マルチプレクサ６１７を通じて電極２０１、２０２…２０８に供給される。
【００４１】
ＰＷＭスイッチ６１６は第二シリアルインターフェース６０６によって制御され、昇圧回路６１５によって昇圧された電気刺激電圧にＰＷＭ変調を施す。電気刺激電圧は、ＰＷＭ変調にてデューティ比が変化されるため、筋肉に与える電気刺激電圧が所望の電圧に変更される。第三マルチプレクサ６１７も第二シリアルインターフェース６０６を通じて制御され、ホスト４０１から近距離無線通信部６１３を通じて受信した命令に指定された電極を選択して、その電極にＰＷＭ変調された電気刺激電圧が印加される。
第三マルチプレクサ６１７は、複数の電極２０１、２０２…２０８のうちの１個を選択する、電極用マルチプレクサということもできる。
【００４２】
［通常モードにおける電気刺激装置１００とホスト４０１のソフトウェア機能］
図７は、通常モードにおける電気刺激装置１００とホスト４０１のソフトウェア機能を示すブロック図である。
電気刺激装置１００は、ホスト４０１に対し、ユーザーの腕の筋肉の変動と電気刺激装置１００自体の姿勢と加速度をホスト４０１へ送信する機能と、ホスト４０１から受信した命令に従って、ユーザーの湯での筋肉に電気刺激を与える機能を有する、入出力端末装置である。
すなわち、８個の筋変位センサー２２１〜２２８が出力するアナログ信号はＡ／Ｄ変換器６０５によって筋変位情報に変換され、６軸センサー６１２が出力する姿勢情報及び加速度情報と共に、入出力制御部７０１及び近距離無線送信部７０２を通じてホスト４０１へ送信される。
【００４３】
ホスト４０１は、電気刺激装置１００から近距離無線受信部７１１を通じて筋変位情報と姿勢情報及び加速度情報を受信すると、これらを入出力制御部７１２に供給する。入出力制御部７１２は、電気刺激装置１００から受信した筋変位情報と姿勢情報及び加速度情報を、ゲーム等の所定のアプリケーションプログラムである情報処理部に供給すると共に、情報処理部７１３が出力する描画情報に基づいて表示部５０５に所定の画面描画情報を出力する。また、入出力制御部７１２は、情報処理部７１３が出力する電気刺激情報を、近距離無線送信部７１４を通じて電気刺激装置１００に送信する。
【００４４】
電気刺激装置１００の指電極対応変換部７０３は、近距離無線受信部７０４を通じて、ホスト４０１から出力される電気刺激実行コマンドを受信すると、ＲＡＭ６０４に保持されている電極確率行列７０５を参照する。そして、コマンドに指定されている指番号を電極番号に変換して、ＰＷＭスイッチ６１６と第三マルチプレクサ６１７を制御し、所望の電極２０１〜２０８に電気刺激電圧を印加する。
なお、電極確率行列７０５の詳細については図９以降に後述する。
【００４５】
なお、筋変位センサー２２１〜２２８の切り替え動作を行う第一マルチプレクサ６０８及び第二マルチプレクサ６１０の動作タイミングを制御する入出力制御部７１２と、電極の切り替え動作を行う第三マルチプレクサ６１７の動作タイミングを制御する指電極対応変換部７０３は、完全に非同期である。このため、図７では別々の機能ブロックとして図示されている。
【００４６】
［較正モードにおける電気刺激装置１００とホスト４０１のソフトウェア機能］
図８は、較正モードにおける電気刺激装置１００とホスト４０１のソフトウェア機能を示すブロック図である。
図８に示す電気刺激装置１００とホスト４０１のソフトウェア機能の、図７との相違点は、
＜１＞較正モードにおいて不要である６軸センサー６１２の機能を停止させていること、
＜２＞ホスト４０１の入出力制御部７１２はＲＡＭ５０３または不揮発性ストレージ５０４に設けられるセンサー値記憶部８０１にセンサーの値を記憶して、電極確率行列７０５を作成し、またこれを更新して、電気刺激装置１００へ電極確率行列７０５を送信すること、
＜３＞電気刺激装置１００は、ホスト４０１から送信されるコマンドに基づき、電極に電気刺激を与え、これに同期して筋変位センサーをスキャンすること
である。
【００４７】
特に、上記の＜３＞のため、電気刺激装置１００の入出力制御部７１２はホスト４０１から送信されるコマンドに基づき、電極に電気刺激を与えた後、内蔵するタイマー８０３を起動する。そして所定時間が経過した後、筋変位センサーをスキャンする。
一方、ホスト４０１の入出力制御部７１２は、電気刺激装置１００から受信した筋変位センサー２２１〜２２８の情報に基づき、確率演算部８０２の演算結果を取得して、電極確率行列７０５を作成し、または更新する。そして、作成または更新が完了した電極確率行列７０５を近距離無線送信部７１４を通じて電気刺激装置１００へ送信する。また、入出力制御部７１２は、較正モードの動作中、表示部５０５に較正モードの進捗状況等を所定のメッセージ等にて表示する。
【００４８】
［較正モードにおけるホスト４０１のソフトウェア動作］
電極確率行列７０５とは、ユーザーの指を動かす筋肉に対応する、電極と手指の動きの対応関係を示す行列データである。図１７に、電極確率行列７０５の一般化した一例を示す。電極確率行列７０５の縦（行）は電極を表し、横（列）は手指の動きを表す。各要素にはベイズ推定に依るベイズ事後確率が格納されている。
【００４９】
通常モードにおいて、ホスト４０１から所望の手指を動かす命令を受けると、電気刺激装置１００の指電極対応変換部７０３は、ホスト４０１から指定された手指の情報により、電極確率行列７０５を参照する。つまり、手指の情報に対応する、ホスト４０１に指定された電極確率行列７０５の行を見る。すると、その行を構成する要素には電極毎の確率が格納されている。これら要素のうち、最大の確率を示す要素に該当する電極が、当該手指を動かす可能性が最も高い電極である。このように、指電極対応変換部７０３はホスト４０１から指定された手指を電極の番号に変換し、この情報を以って第三マルチプレクサ６１７を制御する。
【００５０】
ある電極に電気刺激電圧を与えると、所定の筋肉が刺激され、この筋肉に対応する指が動く。そしてその筋肉の変位をある筋変位センサーが検出し、センサー値記憶部８０１に記憶されている対応データを参照して、どの指が曲がったかを判定する。すなわち、手指の動きと電極との関係は、１：１に対応させている。
図２において、電気刺激装置１００の電極配置面１００ａには、接地電極を除く８個の電極と、８個の筋変位センサーが設けられていると説明した。前述の通り、５本の指に対して８個の電極と８個の筋変位センサーが設けられている理由は、人の腕の太さにおける個人差を一つの電気刺激装置１００だけで吸収するためである。すると、電極の中には指の動きに対応しない電極が生じることとなる。すなわち、電気刺激装置１００を正しく動作させるためには、実際の手指の動きと、電極との対応関係を較正作業によって明らかにする必要がある。
【００５１】
図９は、較正モードにおける、電気刺激装置１００とホスト４０１が実行する較正動作の流れを示すタイムチャートである。
電気刺激装置１００がユーザーの腕に装着されると、筋変位センサーはユーザーの皮膚が筋変位センサーの検出領域に近接したことを検出する。電気刺激装置１００の入出力制御部７１２は、電気刺激装置１００がユーザーの腕に装着されたことを検出すると（Ｓ９０１）、近距離無線通信部６１３を通じて、ホスト４０１に対し、通信の確立を要求する（Ｓ９０２）。ホスト４０１は電気刺激装置１００から通信の要求を受けて、通信の確立を示すステータスメッセージを返信する（Ｓ９０３）。電気刺激装置１００はホスト４０１からステータスメッセージを受信して、通信の確立を認識した旨のステータスメッセージをホスト４０１へ返信する（Ｓ９０４）。
【００５２】
ホスト４０１の入出力制御部７１２は、近距離無線受信部７０４を通じて電気刺激装置１００から通信の確立を認識した旨のステータスメッセージを受信すると、筋変位センサーの較正作業に入る。先ず、ホスト４０１の不揮発性ストレージ５０４に格納されている、「静止状態案内ビデオ」という動画データを再生し、表示部５０５に表示する。そして、電気刺激装置１００に筋変位センサーのデータを収集するコマンドを送信する（Ｓ９０５）。「静止状態案内ビデオ」とは、電気刺激装置１００が上腕に装着された、力が入っていない手のイラストと、「手に力を入れない状態でそのままお待ち下さい」というメッセージを表示する動画データである。電気刺激装置１００はホスト４０１からコマンドを受信すると、全ての筋変位センサーのデータをホスト４０１に返信する（Ｓ９０６）。この時点の筋変位センサーの値は、ユーザーが手指に力を入れていない状態における筋変位センサーの値であり、筋肉に力が入っているか否かを検出するための基礎となる値である。
【００５３】
ホスト４０１は、電気刺激装置１００から８個の筋変位センサーのデータを受信すると、これを「静止状態データ」として記憶する（Ｓ９０７）。次に、ホスト４０１の不揮発性ストレージ５０４に格納されている「第一の動作案内ビデオ」という動画データを再生し、表示部５０５に表示する。そして、電気刺激装置１００に筋変位センサーのデータを収集するコマンドを送信する（Ｓ９０８）。「第一の動作案内ビデオ」とは、電気刺激装置１００が上腕に装着された、親指を曲げた状態の手のイラストと、「親指を曲げた状態でそのままお待ち下さい」というメッセージを表示する動画データである。電気刺激装置１００はホスト４０１からコマンドを受信すると、全ての筋変位センサーのデータをホスト４０１に返信する（Ｓ９０９）。この時点の筋変位センサーの値は、ユーザーが親指に力を入れた状態における筋変位センサーの値である。
【００５４】
ホスト４０１は、電気刺激装置１００から８個の筋変位センサーのデータを受信すると、これを「第一の動作状態データ」として記憶する（Ｓ９１０）。次に、ホスト４０１の不揮発性ストレージ５０４に格納されている「第二の動作案内ビデオ」という動画データを再生し、表示部５０５に表示する。そして、電気刺激装置１００に筋変位センサーのデータを収集するコマンドを送信する（Ｓ９１１）。「第二の動作案内ビデオ」とは、電気刺激装置１００が上腕に装着された、人差指を曲げた状態の手のイラストと、「人差指を曲げた状態でそのままお待ち下さい」というメッセージを表示する動画データである。
【００５５】
ステップＳ９１１以降、ステップＳ９０８、Ｓ９０９、Ｓ９１０に相当する動作が、ステップＳ９０８から合計８回行われる。その際、ホスト４０１が再生する動画データと、ホスト４０１が電気刺激装置１００から受信してセンサー値記憶部８０１に記憶するデータは以下の通りである。
「第一の動作案内ビデオ」：親指を曲げた状態の動作案内、第一の動作状態データを記憶する。
「第二の動作案内ビデオ」：人差指を曲げた状態の動作案内、第二の動作状態データを記憶する。
「第三の動作案内ビデオ」：中指を曲げた状態の動作案内、第三の動作状態データを記憶する。
「第四の動作案内ビデオ」：薬指または小指を曲げた状態の動作案内、第四の動作状態データを記憶する。
「第五の動作案内ビデオ」：手をまっすぐに伸ばした状態で手首を掌の方向へ曲げた（掌屈）状態の動作案内、第五の動作状態データを記憶する。
「第六の動作案内ビデオ」：手をまっすぐに伸ばした状態で手首を手の甲の方向へ曲げた（背屈）状態の動作案内、第六の動作状態データを記憶する。
「第七の動作案内ビデオ」：手をまっすぐに伸ばした状態で手首を親指の方向へ曲げた（撓屈）状態の動作案内、第七の動作状態データを記憶する。
「第八の動作案内ビデオ」：手をまっすぐに伸ばした状態で手首を小指の方向へ曲げた（尺屈）状態の動作案内、第八の動作状態データを記憶する。
【００５６】
ホスト４０１は、電気刺激装置１００から８個の筋変位センサーのデータを受信すると、これを「第七の動作状態データ」として記憶する（Ｓ９１２）。次に、ホスト４０１の不揮発性ストレージ５０４に格納されている「第八の動作案内ビデオ」という動画データを再生し、表示部５０５に表示する。そして、電気刺激装置１００に筋変位センサーのデータを収集するコマンドを送信する（Ｓ９１３）。「第八の動作案内ビデオ」とは、電気刺激装置１００が上腕に装着され、手をまっすぐに伸ばした状態で手首を小指の方向へ曲げた（尺屈）状態の手のイラストと、「手をまっすぐに伸ばし、手首を小指の方向へ曲げた状態で、そのままお待ち下さい」というメッセージを表示する動画データである。電気刺激装置１００はホスト４０１からコマンドを受信すると、全ての筋変位センサーのデータをホスト４０１に返信する（Ｓ９１４）。この時点の筋変位センサーの値は、ユーザーが手首を小指の方向へ曲げた尺屈状態における筋変位センサーの値である。
ホスト４０１は、電気刺激装置１００から筋変位センサーのデータを受信すると、これを「第八の動作状態データ」として記憶する（Ｓ９１５）。
以上、ステップＳ９０５からステップＳ９１５にかけて、ホスト４０１は筋変位センサーの値の変動と、手指の動作との対応関係を把握したことになる。
【００５７】
ステップＳ９１５が終了した時点で、ホスト４０１の入出力制御部７１２は、各々の筋変位センサーの相対値を計算する。具体的には、第一の動作状態データから静止状態データを減算して、親指を曲げた状態に係る第一の基準値を得る。第二の動作状態データから静止状態データを減算して、人差指を曲げた状態に係る第二の基準値を得る。以下同様に、中指を曲げた状態に係る第三の基準値、薬指または小指を曲げた状態に係る第四の基準値、掌屈状態に係る第五の基準値、背屈状態に係る第六の基準値、撓屈状態に係る第七の基準値及び尺屈状態に係る第八の基準値を得る。これら第一から第八の基準値は、８個の筋変位センサーの相対値の集合である。ホスト４０１の入出力制御部７１２は、これら第一から第八の基準値をセンサー値記憶部８０１に記憶する。
次に、ホスト４０１の入出力制御部７１２は、これら第一から第八の基準値に対し、所定の比率を乗算して、閾値を得る。ここで第一から第八の基準値に乗算する比率は例えば５０％である。ホスト４０１の入出力制御部７１２は、これら閾値もセンサー値記憶部８０１に記憶する。
【００５８】
筋変位センサーのフォトトランジスタが検出する反射光の強度は、筋変位センサーに相対するユーザーの皮膚及び筋肉の状態や、筋変位センサーとユーザーの皮膚との相対的な位置関係等の要因（不確定要素）によって、大きく異なる。そこで、ホスト４０１の入出力制御部７１２は、ユーザーが手指に殆ど力を入れていない状態と、ユーザーが特定の手指を曲げた状態との、それぞれの筋変位センサーの値をセンサー値記憶部８０１に記憶して、その差分を計算する。得られた基準値は筋変位センサーの相対的な変動値であるので、不確定要素の影響を排除できる。
【００５９】
筋変位センサーが出力するアナログ信号をデジタル化するＡ／Ｄ変換器６０５は、例えば１０ビット符号なし整数（０〜１０２３）である。発明者らが試験的に電気刺激装置１００を作成した際、筋肉の変位を検出した筋変位センサーから得られる相対的な変動値は凡そ３００〜９００前後であることが判った。
後述するステップＳ９１６以降、ホスト４０１が電気刺激装置１００から受信した筋変位センサーのデータは、全て静止状態データを減算して、筋変位センサーの相対値に変換される。そして入出力装置は、筋変位センサーの相対値を閾値と比較して、所定の手指が動いたか否かを判定する。
【００６０】
ステップＳ９０５からステップＳ９１５にかけて、筋変位センサーの値の変動と手指の動作との対応関係を把握したホスト４０１は、次に、電極と、手指の動作との対応関係を把握するための作業に入る。
ホスト４０１の入出力制御部７１２は、電気刺激装置１００へ、第一の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンドを送信する（Ｓ９１６）。
電気刺激装置１００はホスト４０１からコマンドを受信すると、第一の電極に電気刺激電圧を印加して（Ｓ９１７）、所定時間経過後に筋変位センサーのデータを収集し、これをホスト４０１へ返信する（Ｓ９１８）。
ホスト４０１の入出力制御部７１２は、電気刺激装置１００から筋変位センサーのデータを受信すると、これを第一の電極におけるセンサー値データとしてセンサー値記憶部８０１に記憶する（Ｓ９１９）。次に、ホスト４０１の入出力制御部７１２は、電気刺激装置１００へ、第二の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンドを送信する（Ｓ９２０）。
【００６１】
ステップＳ９２０以降、ステップＳ９１６、Ｓ９１７、Ｓ９１８、Ｓ９１９に相当する動作が、ステップＳ９１６から合計８回行われる。その際、ホスト４０１が電気刺激装置１００へ送信するコマンドと、ホスト４０１が電気刺激装置１００から受信してセンサー値記憶部８０１に記憶するデータは以下の通りである。
第一の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンド：第一の電極におけるセンサー値データを記憶する。
第二の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンド：第二の電極におけるセンサー値データを記憶する。
第三の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンド：第三の電極におけるセンサー値データを記憶する。
第四の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンド：第四の電極におけるセンサー値データを記憶する。
第五の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンド：第五の電極におけるセンサー値データを記憶する。
第六の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンド：第六の電極におけるセンサー値データを記憶する。
第七の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンド：第七の電極におけるセンサー値データを記憶する。
第八の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンド：第八の電極におけるセンサー値データを記憶する。
【００６２】
ホスト４０１の入出力制御部７１２は、電気刺激装置１００から筋変位センサーのデータを受信すると、これを第七の電極におけるセンサー値データとしてセンサー値記憶部８０１に記憶する（Ｓ９２１）。次に、ホスト４０１の入出力制御部７１２は、電気刺激装置１００へ、第八の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンドを送信する（Ｓ９２２）。
電気刺激装置１００はホスト４０１からコマンドを受信すると、第八の電極に電気刺激電圧を印加して（Ｓ９２３）、所定時間経過後に筋変位センサーのデータを収集し、これをホスト４０１へ返信する（Ｓ９２４）。
【００６３】
ホスト４０１の入出力制御部７１２は、電気刺激装置１００から筋変位センサーのデータを受信すると、これを第八の電極におけるセンサー値データとしてセンサー値記憶部８０１に記憶する（Ｓ９２５）。次に、ホスト４０１の入出力制御部７１２は、ステップＳ９０５からＳ９１５迄の一連の動作で記憶した、各手指の動きに対応する第一から第八の動作状態データと、ステップＳ９１６からＳ９２５迄の一連の動作で記憶した、各電極におけるセンサー値データの生成または更新を行う。
なお、既に１回目の学習モード（図１０以降で後述）が実行された結果、ホスト４０１に電極確率行列７０５が存在する場合には、確率演算部８０２を通じて電極確率行列７０５についても、その更新を行う。ホスト４０１の入出力制御部７１２は、生成または更新された電極確率行列７０５を電気刺激装置１００に送信する（Ｓ９２６）。そして、電気刺激装置１００は、ホスト４０１から受信した電極確率行列７０５をＲＡＭ５０３に記憶して（Ｓ９２７）、一連の処理を終了する。
【００６４】
図９のステップＳ９０５からステップＳ９１５までは、筋変位センサーと手指の動きとの相関関係を明らかにする、筋変位センサー較正モードである。ホスト４０１の入出力制御部７１２が筋変位センサー較正モードを実行することで、筋変位センサー２２１〜２２８から得られたデータにより、現在どの手指が動いているのかが明らかになる。
そして、図９の破線で囲まれている、ステップＳ９１６からステップＳ９２７までは、電極と手指の動きとの相関関係を、電極確率行列７０５を作成し更新することで明らかにする、学習モードである。ホスト４０１の入出力制御部７１２が学習モードを実行することで、所望の手指を動かすために、電極２０１〜２０８のどの電極に電気刺激電圧を印加すればよいのかが明らかになる。
すなわち、較正モードは筋変位センサー較正モードと学習モードを含む。以下、図１０を参照して学習モードについて説明する。
【００６５】
図１０は、ユーザーが初めて電気刺激装置１００を装着した際にホスト４０１で実行される、初回の学習モードの動作の流れを示すフローチャートである。
処理を開始すると（Ｓ１００１）、ホスト４０１の入出力制御部７１２は、先ずカウンタ変数ｉを１に初期化すると共に、電極確率行列７０５の全ての要素を「０」に初期化する（Ｓ１００２）。
これ以降はループである。入出力制御部７１２は、電気刺激装置１００に対し、ｉ番目の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンドを送信する（Ｓ１００３）。そして、電気刺激装置１００から受信した筋変位センサーのデータから差分値を算出し、閾値と比較して、手指の動きがあったか否かを調べる（Ｓ１００４）。もし、何れかの手指がｉ番目電極による電気刺激によって動いたと判定した場合には（Ｓ１００５のＹＥＳ）、入出力制御部７１２は、電極確率行列７０５の、動きを検出したｘ番目の手指に該当するｘ行の、ｉ番目の電極に該当するｉ列の要素に「１」を記憶する（Ｓ１００６）。
【００６６】
ステップＳ１００６を実行した後、またはステップＳ１００５において何れの手指もｉ番目電極による電気刺激によって動いていないと判定した場合には（Ｓ１００５のＮＯ）、入出力制御部７１２はカウンタ変数ｉがｉの最大値、すなわち電極の合計数に至ったか否かを確認する。カウンタ変数ｉが電極の合計数に至っていない場合には（Ｓ１００７のＮＯ）、入出力制御部７１２はカウンタ変数ｉを１インクリメントして（Ｓ１００８）、再度ステップＳ１００３から処理を繰り返す。
ステップＳ１００７において、カウンタ変数ｉが電極の合計数に達した場合には（Ｓ１００７のＹＥＳ）、入出力制御部７１２は作成した電極確率行列７０５を不揮発性ストレージ５０４に保存するとともに、電気刺激装置１００へ送信して（Ｓ１００９）、一連の処理を終了する（Ｓ１０１０）。
【００６７】
続いて、ステップＳ１００３の動作について、説明を加える。
図１１は、電気刺激と筋肉の収縮状態と筋変位センサーの動作を説明するタイムチャートである。
図１１中、上から（Ａ）電極に印加される電気刺激、（Ｂ）筋肉の収縮状態、（Ｃ）筋変位センサーの動作期間を示す、入出力制御部７１２内のゲート信号、（Ｄ）第一の筋変位センサーの動作期間、（Ｅ）第二の筋変位センサーの動作期間、（Ｆ）第三の筋変位センサーの動作期間、（Ｇ）第七の筋変位センサーの動作期間、（Ｈ）第八の筋変位センサーの動作期間、である。（Ｂ）筋肉の収縮状態のみ縦軸は筋肉収縮の変位量であり、それ以外は全て論理値である。
【００６８】
時点Ｔ１１０１で、電極に電気刺激電圧が印加されると、筋肉は収縮を始める。筋肉の収縮が安定した時点Ｔ１１０２から、ゲート信号が論理の真を示し、これに呼応して筋変位センサーのスキャンが始まる。１個の筋変位センサーのデータ収集に要する時間は凡そ数ｍｓｅｃ〜数十ｍｓｅｃで終了する。全ての筋変位センサーのスキャンが終了した時点Ｔ１１０３で、ゲート信号の論理が偽に反転し、同時に電極に対する電気刺激電圧の印加も終了する。
図１１に示した、電極に電気刺激電圧を印加して筋変位センサーをスキャンする動作は、８個の電極全てに対して実行される。
【００６９】
人間の筋肉は、外部から電極を通じて電気刺激電圧を与えると収縮する。その際、電気刺激電圧を与えてから筋肉が所定の収縮量まで収縮して安定するまでに、凡そ０．１秒程度の時間がかかる。本発明の実施形態に係る電気刺激装置１００では、更にマージンを見越して、０．２秒のマージンタイムを設けている。図１１の電気刺激電圧が印加される時点Ｔ１１０１から筋肉の収縮が安定する時点Ｔ１１０２までが、そのマージンタイムである。
【００７０】
次に、ステップＳ１００３からＳ１００８までの処理で作成される電極確率行列７０５について説明する。
図１２Ａは、電気刺激に対する手指の動きを示す行列の説明図である。これ以降、この行列を手指挙動行列と呼ぶ。
図１２Ｂは、手指挙動行列から、有効な電気刺激を選択する手順を示す図である。
図１２Ｃは、手指挙動行列から、有効な電気刺激を選択した結果を示す行列の説明図である。この行列をフラグ行列と呼ぶ。
図１２Ｄは、フラグ行列から生成した、電極確率行列７０５を示す図である。
【００７１】
ステップＳ１００４において、入出力制御部７１２は、筋変位センサーの差分値を算出する。そして、手指の動きに対応する筋変位センサーの差分値を導き出す。ある手指の動きに対応する筋変位センサーが１個だけの場合は、そのまま当該差分値を採用する。ある手指の動きに対応する筋変位センサーが２個以上の組み合わせの場合は、各々の筋変位センサーの差分値の平均値を採用する。こうして、図１２Ａに示すような数値が、手指挙動行列の要素として記憶される。
【００７２】
図１２Ａ及び図１２Ｂに示す手指挙動行列の行、図１２Ｃに示すフラグ行列の行、図１２Ｄに示す電極確率行列７０５の行は、上から以下の通りである。
１行目：親指を曲げた状態、すなわち親指屈曲状態。
２行目：人差指を曲げた状態、すなわち人差指屈曲状態。
３行目：中指を曲げた状態、すなわち中指屈曲状態。
４行目：薬指または小指を曲げた状態、すなわち薬指または小指屈曲状態。
５行目：手をまっすぐに伸ばした状態で手首を掌の方向へ曲げた（掌屈）状態、すなわち手首掌屈状態。
６行目：手をまっすぐに伸ばした状態で手首を手の甲の方向へ曲げた（背屈）状態、すなわち手首背屈状態。
７行目：手をまっすぐに伸ばした状態で手首を親指の方向へ曲げた（撓屈）状態、すなわち手首撓屈状態。
８行目：手をまっすぐに伸ばした状態で手首を小指の方向へ曲げた（尺屈）状態、すなわち手首尺屈状態。
図１２Ａ及び図１２Ｂに示す手指挙動行列の列、図１２Ｃに示すフラグ行列の列、図１２Ｄに示す電極確率行列７０５の列は、左から右へ、第一の電気刺激から第八の電気刺激である。
【００７３】
次に、図１０のステップＳ１００４における、手指が動いたか否かの判定手順を説明する。
図１２Ｂに示す手指挙動行列の、１行１列から８行１列までの要素に着目すると、上から順に「５９５  １１５  ９２  ０  ０  ０  ０  ０」という要素で構成されている。この行の要素のうち、最大値を示す要素は１行１列の「５９５」である。この値を最大値配列１２０１に格納する。最大値配列１２０１は、各列の最大値を格納する配列である。
要素「５９５」の位置は手指挙動行列の（１，１）であり、その行（１行）は親指屈曲状態に該当する。そこで、この値「５９５」が、親指屈曲状態の閾値を超えているか否かを判定する。判定した結果、閾値を超えていると判ったので、手指挙動行列の１行１列の要素は有効であるとして、フラグ配列１２０２に論理の真を格納する。図１２Ｂでは、「○」で記されている。
このように、手指挙動行列の各行について最大値を選んで、最大値配列１２０１に格納する。そして、それら要素の位置から、その要素が属する手指の動作における閾値と比較する。比較した結果、最大値が閾値以上の値であれば、フラグ配列１２０２に論理の真を格納する。そして、フラグ配列１２０２に論理の真が付された最大値配列１２０１の要素の位置について、フラグ行列の同じ位置に存在する要素を論理の真とする。これが図１２Ｃのフラグ行列である。
フラグ行列の、論理が真の要素について、その要素を１００％（＝１）の確率とする。これが図１２Ｄの電極確率行列７０５である。
【００７４】
電極確率行列７０５は、ある電極に電気刺激電圧を与えると、どの手指がどの程度の確率で動くのかを示す行列である。電極確率行列７０５の要素として格納される確率は、ベイズ推定等の事後確率である。すなわち、図１０のフローチャートにおける電極確率行列７０５の作成は、ベイズ推定の初回の学習である。
図１０のフローチャートを実行した時点では、未だ初回の学習であるため、０または１の何れかしか存在しない。これらの値は、これより説明する２回目以降の学習モードにおいて、変動する。
【００７５】
図１３及び図１４は、ユーザーが２回目以降に電気刺激装置１００を装着した際にホスト４０１にて実行される、２回目以降の学習モードの動作の流れを示すフローチャートである。
処理を開始すると（Ｓ１３０１）、ホスト４０１の入出力制御部７１２は、先ずカウンタ変数ｊを１に初期化すると共に、フラグ変数ＭＦｆｌａｇを論理の偽に初期化する（Ｓ１３０２）。フラグ変数ＭＦｆｌａｇは、電気刺激によって手指が動いた状態が生じたことを記録するためのフラグである。
【００７６】
これ以降はループである。入出力制御部７１２は、電気刺激装置１００に対し、ｊ番目の電極に電気刺激電圧を印加させた後に筋変位センサーのデータを収集するコマンドを送信する（Ｓ１３０３）。そして、電気刺激装置１００から受信した筋変位センサーのデータから差分値を算出し、閾値と比較して、手指の動きがあったか否かを調べる（Ｓ１３０４）。ステップＳ１３０３及びＳ１３０４は、図１０のステップＳ１００３及びＳ１００４と処理内容が同じである。
【００７７】
もし、何れかの手指がｊ番目電極による電気刺激によって動いたと判定した場合には（Ｓ１３０５のＹＥＳ）、入出力制御部７１２は次に、フラグ変数ＭＦｆｌａｇが論理の偽であるか否か、すなわち「この時点で初めて手指が動いたのか否か」を確認する。もし、この時点で初めて手指が動いたと判定した場合には（Ｓ１３０６のＹＥＳ）、ホスト４０１の不揮発性ストレージ５０４に保存してある電極確率行列７０５をＲＡＭ５０３に読み出して、ＲＡＭ５０３上の電極確率行列７０５の要素を行ごと及び／または列ごとに移動する（Ｓ１３０７）。このように、電極確率行列７０５の要素を移動させることで、現在ユーザーの腕に装着されている電気刺激装置１００の、電極と筋肉との相対的な位置関係を、電極確率行列７０５に反映させる。
【００７８】
次に入出力制御部７１２は確率演算部８０２を稼働させて、１番目からｊ−１番目までの電極に対応する、電極確率行列７０５の要素に対し、手指が動かなかった旨のベイズ事後確率「Ｐ（ｘ｜ｊ）」を演算し、電極確率行列７０５の該当する要素を更新する（Ｓ１３０８）。そして、フラグ変数ＭＦｆｌａｇを論理の真に転換し（Ｓ１３０９）、図１４のステップＳ１４１０へ移行する。すなわち、これ以降、ステップＳ１００５で何れかの手指が動いたと判断した後（Ｓ１００５のＹＥＳ）は、ステップＳ１００６でＭＦｆｌａｇが論理の真に転換しているので、ステップＳ１３０７、Ｓ１３０８及びＳ１３０９の処理を行わず、図１４のステップＳ１４１０へ移行する。
【００７９】
次に、ステップＳ１３０７の、電極確率行列７０５の要素を移動することについて、図１５Ａ及び図１５Ｂを参照して詳述する。
図１５Ａは、ユーザーが電気刺激装置１００を初めて腕に装着した際の、腕の筋肉と電極の配置関係を説明するための模式的な概略図である。
図１５Ｂは、ユーザーが電気刺激装置１００を再び腕に装着した際の、腕の筋肉と電極の配置関係を説明するための模式的な概略図である。
図１５Ａにおいて、電極１５０１は、筋肉１５０２から離れている。筋肉１５０２には電極１５０３が近接している。筋肉１５０４には電極１５０５が近接している。なお、電極１５０６は電極１５０１、電極１５０３、電極１５０５が共通して利用する接地電極である。
【００８０】
図１５Ａと図１５Ｂを比べると、図１５Ｂでは、ユーザーの腕と電気刺激装置１００の電極配置面１００ａとの相対的な位置関係がずれている。このため、電極１５０１が筋肉１５０２に近接し、筋肉１５０４には電極１５０３が近接している。そして電極１５０５は筋肉１５０４から離れている。
このように、ユーザーの腕と電気刺激装置１００の電極配置面１００ａとの相対的な位置関係がずれると、筋肉に相対する電極の配置も変わる。そして、この現象は手指挙動行列及びこれを基に作成されたフラグ行列の要素のずれとなって現れる。このため、先に不揮発性ストレージ５０４に記憶していた電極確率行列７０５の要素を、検出した手指挙動行列に合わせ込む必要が生じる。
【００８１】
図１６Ａは、２回目以降の学習モードによって作成された、手指挙動行列の例である。
図１６Ｂは、図１６Ａの手指挙動行列に基づいて作成された、仮想的な電極確率行列７０５である。
図１６Ｃは、図１２Ｄの電極確率行列７０５である。
図１６Ｄは、図１６Ｃの電極確率行列７０５を並べ替えた行列である。
先ず、図１６Ｃの電極確率行列７０５は、図１２Ｄにおいて説明したように、第一回目の学習モードにおいて作成された行列データである。これに対し、図１６Ｂに示す仮想的な電極確率行列７０５は、第二回目の学習モードによって作成された行列データである。
【００８２】
一見すると、行列データを見比べるだけでは、第二回目の学習モードにおけるユーザーの腕と電気刺激装置１００との相対的な位置関係（図１６Ｂ）が、第一回目の学習モードにおけるユーザーの腕と電気刺激装置１００との相対的な位置関係（図１６Ｃ）に対してどれだけずれたのかが判らないようにも思える。しかし、この行列データの左上の、手指が動いた要素（「１」の要素）に注目すると、第一回目の学習モードにおいて、初めて手指が動いた時点の要素の位置（Ｐ１６０３）と、第二回目の学習モードにおいて、初めて手指が動いた時点の要素の位置（Ｐ１６０１）とで、位置にずれが生じていることが明確に判る。すなわち、前回使用時点におけるユーザーの腕と電気刺激装置１００との相対的な位置関係と、現時点のユーザーの腕と電気刺激装置１００との相対的な位置関係とのずれが、要素の位置のずれとして明確に判る。
【００８３】
先に説明したように、電極確率行列７０５は、電極と手指の動きとの相関関係を確率で表す行列データである。確率はベイズ推定によるベイズ事後確率を適用する。しかし、ベイズ推定以前に、前回使用時点におけるユーザーの腕と電気刺激装置１００との相対的な位置関係と、現時点のユーザーの腕と電気刺激装置１００との相対的な位置関係とのずれが、電極確率行列７０５に現れたままでは、学習の精度が著しく落ちてしまう。そこでホスト４０１の入出力制御部７１２は、不揮発性ストレージ５０４から読み出してＲＡＭ５０３に保持した電極確率行列７０５を、現時点のユーザーの腕と電気刺激装置１００との相対的な位置関係に合わせて、行列の要素を入れ替える。図１６Ｃの場合、要素Ｐ１６０３の位置（１，１）が、図１６Ｂの要素Ｐ１６０１の位置（１，２）と同じ位置になるように、図１６Ｃの電極確率行列７０５の列を右方向に１列ずらす。すると、図１６Ｃの要素群Ａ１６０４が、図１６Ｂの要素群Ａ１６０２と同じ位置に配置され、図１６Ｃの要素群Ａ１６０５は要素群Ａ１６０４の移動に伴い弾き出され、空白となった電極確率行列７０５の左端１列に配置される。これが図１６Ｄの電極確率行列７０５である。
なお、ステップＳ１３０８の処理は、図１６Ｄにおける要素群Ａ１６０５を更新する処理である。
【００８４】
図１３のステップＳ１３０７における、電極確率行列７０５の左上に存在する、有効な電気刺激を示す要素を探す、という処理は、わかりやすさのために、電極に対して順番に電気刺激電圧を印加すると、最初に最も小さい番号の手指の動きが生じる前提で、電極確率行列７０５を構成していた。但し、これは便宜的なものであるので、電極に対して順番に電気刺激電圧を印加して、最初に検出した手指の動きに該当する電極確率行列７０５の要素を参照すればよい。
【００８５】
なお、図１３のステップＳ１３０６にて、初めて動いた手指が親指屈曲状態ではない場合、現在のユーザーの腕と電気刺激装置１００との相対的な位置関係において、何れの電極も親指屈曲状態を生じさせてない。すなわち、電極の配置が親指の屈曲に失敗している。このような場合には、初めて動いた手指に対応する、電極確率行列７０５の同じ行の要素を参照する。つまり、電極確率行列７０５の親指屈曲状態を示す１行目を無視する。電極確率行列７０５は列単位でのみ並べ替えを行い、行単位での並べ替えは行わない。
【００８６】
再び、図１３及び図１４に戻って、フローチャートの説明を続ける。
ステップＳ１３０９の後、またはステップＳ１３０６でフラグ変数ＭＦｆｌａｇが論理の真であった場合（Ｓ１３０６のＮＯ）、図１４の処理に移行する。
図１４に示すように、入出力制御部７１２は確率演算部８０２を稼働させて、ｊ番目の電極に対応する電極確率行列７０５の要素に対し、手指が動いた要素については手指が動いた旨のベイズ事後確率「Ｐ（ｘ｜ｊ）」を演算する。また、手指が動かなかった要素素については、手指が動かなかった旨のベイズ事後確率「Ｐ（ｘ｜ｊ）」を演算し、電極確率行列７０５の該当する要素を更新する（Ｓ１４１０）。
【００８７】
そして、入出力制御部７１２はカウンタ変数ｊがｊの最大値、すなわち電極の合計数に至ったか否かを確認する。カウンタ変数ｊが電極の合計数に至っていない場合には（Ｓ１４１１のＮＯ）、入出力制御部７１２はカウンタ変数ｊを１インクリメントして（Ｓ１４１２）、再度ステップＳ１３０３から処理を繰り返す。
ステップＳ１４１１においてカウンタ変数ｊが電極の合計数に至っている場合には（Ｓ１４１１のＹＥＳ）、入出力制御部７１２は作成した電極確率行列７０５を不揮発性ストレージ５０４に保存して、電気刺激装置１００へ送信して（Ｓ１４１３）、一連の処理を終了する（Ｓ１４１４）。
【００８８】
図１３に戻って、ステップＳ１３０５において何れの手指も動いていない場合には（Ｓ１３０５のＮＯ）、次に入出力制御部７１２はフラグ変数ＭＦｆｌａｇが論理の偽であるか否か、すなわちこの時点でまだ手指が動いていないのか否かを確認する（Ｓ１４１５）。まだ手指が動いていない場合には（Ｓ１４１５のＹＥＳ）、そのまま何もせずにステップＳ１４１１の、カウンタ変数ｊの確認を行う。
ステップＳ１４１５において、フラグ変数ＭＦｆｌａｇが論理の真である、すなわちこの時点で既に手指が動いていたのであれば（Ｓ１４１５のＮＯ）、入出力制御部７１２は入出力制御部７１２は確率演算部８０２を稼働させて、ｊ番目の電極に対応する全ての電極確率行列７０５の要素に対し、手指が動かなかった旨のベイズ事後確率「Ｐ（ｘ｜ｊ）」を演算し、電極確率行列７０５の該当する要素を更新する（Ｓ１４１６）。そして、ステップＳ１４１１の、カウンタ変数ｊの確認を行う。
【００８９】
ステップＳ１４１５の判定は、ステップＳ１３０７における電極確率行列７０５の並べ替えが行われたか否かを判定するための処理である。前回使用時点におけるユーザーの腕と電気刺激装置１００との相対的な位置関係を示す電極確率行列７０５を、現時点のユーザーの腕と電気刺激装置１００との相対的な位置関係に合わせなければ、電極確率行列７０５に対し、ベイズ推定による学習を正しく遂行できない。したがって、ステップＳ１３０７の処理が完遂するまでは、ベイズ推定演算を行わない（Ｓ１４１５のＹＥＳ）が、ステップＳ１３０７の処理が完遂した後は、ベイズ推定演算を行う（Ｓ１３０８、Ｓ１４１０、Ｓ１４１５のＮＯからＳ１４１６）。
【００９０】
本発明の実施形態に係る電気刺激装置１００は、８個の筋変位センサーと８個の電極で構成しているが、筋変位センサーと電極の個数は必ずしも８個である必要はない。むしろ、筋変位センサーと電極の数は多ければ多い程、筋肉の収縮状態の検出と、筋肉の収縮制御を、より精緻に遂行できる。
図１７は、一般化した電極確率行列７０５の一例を示す図である。ユーザーが電気刺激装置１００を繰り返し使用すると、その度にユーザーの腕に対する電気刺激装置１００の着脱が繰り返される。すなわち、電気刺激装置１００をユーザーの腕に着脱する都度、学習モードが実行される。そして、その学習モードが繰り返し実行されると、結果として、ある電極と手指の動きとの相関関係が定まることとなる。電極確率行列７０５の各要素は、ｘ行ｊ列についてベイズ事後確率「Ｐ（ｘ｜ｊ）」が格納される。
【００９１】
以上に説明した本発明の実施形態は、以下の様な応用が可能である。
（１）一家に１台、電気刺激装置１００を導入することを仮定する。お父さん、お母さん、子供のそれぞれ、腕の太さは異なる。したがって、１台の電気刺激装置１００を複数のユーザーで共有する場合には、ホスト４０１にユーザー認証の機能を設け、電極確率行列７０５をユーザーＩＤと紐付けることが好ましい。
ユーザー認証は、ユーザーを一意に識別する機能を有する手段であれば何でもよい。例えば、キーボードを用いた一般的なパスワード認証の他、指紋、静脈、虹彩等の生体認証等が利用可能である。指紋や静脈を用いた生体認証のユニットは、電気刺激装置１００の回路収納ボックス１０３に収納すると使い勝手がよい。
また、このユーザー認証機能は、アプリケーションプログラムであるところの情報処理部７１３のユーザー認証機能と統合されていると、電気刺激装置１００のユーザー認証とアプリケーションプログラムのユーザー認証を一元化できるので、更に使い勝手がよくなることが期待できる。この場合、ユーザーＩＤが、情報処理部７１３のユーザーデータと、電気刺激装置１００の電極確率行列７０５と紐付くこととなる。
すなわち、ホスト４０１にインストールされる電気刺激装置１００のデバイスドライバプログラムにユーザー認証機能を含め、アプリケーションプログラムがこのデバイスドライバプログラムのユーザー認証機能を利用することで、電気刺激装置１００の複数ユーザー共有化と、ユーザー認証の一元化が実現できる。
【００９２】
（２）図１０、図１３及び図１４に示したフローチャートでは、電極に電気刺激を与えた後、筋変位センサーのデータを取り込み、手指の動きを調べてから逐次的に判定及び学習処理を進めたが、先ず電極に電気刺激を与え、筋変位センサーのデータを取り込む作業を全ての電極に対して実行し、予め手指挙動行列を作成してから、判定及び学習処理を行ってもよい。勿論、その際にも図１３のステップＳ１３０７は必須である。
【００９３】
（３）本発明の実施形態に係る電気刺激装置１００では、学習アルゴリズムにベイズ推定を採用したが、学習アルゴリズムはこれに限られない。例えば、サポートベクターマシン等、他の学習アルゴリズムを用いてもよい。
【００９４】
本実施形態においては、電気刺激装置１００及び電気刺激システム４００を開示した。
電極による電気刺激と手指の動きとの相関関係を明らかにするため、電極がどの手指の動きに該当するのかを示すベイズ事後確率が要素として記述された電極確率行列７０５をホスト４０１で作成して、電気刺激装置１００へ転送する。２回目以降の学習モードでは、直前の電極確率行列７０５を現在のユーザーの腕における電気刺激装置１００の装着状態に合わせ込むために、電極確率行列７０５の左上に存在する手指の動きが生じた要素の位置を比較して、必要に応じて電極確率行列７０５の列を並べ替える。
このように電気刺激装置１００とホスト４０１を構成することで、ユーザーの腕に装着した状態にかかわらず、短時間で手指の動きと電極との対応関係を明確にし、誤動作が極めて少なく、高い精度で目的の手指を駆動できる、電気刺激装置１００と、電気刺激システム４００が実現できる。
【００９５】
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の変形例、応用例を含む。
例えば、上記した実施形態は本発明をわかりやすく説明するために装置及びシステムの構成を詳細かつ具体的に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることは可能であり、更にはある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることも可能である。
【００９６】
また、上記の各構成、機能、処理部等は、それらの一部又は全部を、例えば集積回路で設計するなどによりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行するためのソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Solid State Drive）等の揮発性あるいは不揮発性のストレージ、または、ＩＣカード、光ディスク等の記録媒体に保持することができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしもすべての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【００９７】
１００…電気刺激装置、１０１…バンド、１０２…左側部、１０３…回路収納ボックス、１０４…第一シリアルインターフェース端子、１５０…演算処理部、２０１、２０２、２０３、２０４、２０５、２０６、２０７、２０８、２１１、２１２、２１３、２１６…電極、２１７…電極、２２１、２２３、２２７…筋変位センサー、２３１…右側電極配置箇所、２３２…中央電極配置箇所、２３３…左側電極配置箇所、４００…電気刺激システム、４０１…ホスト、４０２…近距離無線通信部、５０１…ＣＰＵ、５０２…ＲＯＭ、５０３…ＲＡＭ、５０４…不揮発性ストレージ、５０５…表示部、５０６…操作部、５０７…バス、６０１…バス、６０２…ＣＰＵ、６０３…ＲＯＭ、６０４…ＲＡＭ、６０５…Ａ／Ｄ変換器、６０６…第二シリアルインターフェース、６０７…ワンチップマイコン、６０８…第一マルチプレクサ、６１０…第二マルチプレクサ、６１２…６軸センサー、６１３…近距離無線通信部、６１４…第一シリアルインターフェース、６１５…昇圧回路、６１６…ＰＷＭスイッチ、６１７…第三マルチプレクサ、７０１…入出力制御部、７０２…近距離無線送信部、７０３…指電極対応変換部、７０４…近距離無線受信部、７０５…電極確率行列、７１１…近距離無線受信部、７１２…入出力制御部、７１３…情報処理部、７１４…近距離無線送信部、８０１…センサー値記憶部、８０２…確率演算部、８０３…タイマー、１２０１…最大値配列、１２０２…フラグ配列
【図１】
2018153648.tif 000003
【図２】
2018153648.tif 000004
【図３】
2018153648.tif 000005
【図４】
2018153648.tif 000006
【図５】
2018153648.tif 000007
【図６】
2018153648.tif 000008
【図７】
2018153648.tif 000009
【図８】
2018153648.tif 000010
【図９】
2018153648.tif 000011
【図１０】
2018153648.tif 000012
【図１１】
2018153648.tif 000013
【図１２】
2018153648.tif 000014
【図１３】
2018153648.tif 000015
【図１４】
2018153648.tif 000016
【図１５】
2018153648.tif 000017
【図１６】
2018153648.tif 000018
【図１７】
2018153648.tif 000019