(57)【特許請求の範囲】
【請求項１】
ユーザが把持することが可能で、所定の機器に対して情報を入力するための入力装置であって、
ユーザの操作による変位が可能とされた操作部と、
前記操作部の変位量を検出するセンサと、
ユーザに対して伝達する振動を生成するための振動手段と、
前記センサで検出された前記操作部の変位量を示す情報に基づいて前記振動手段に振動を発生させる制御手段と、を有し、
前記制御手段は、前記変位量をｘ、第１の閾値をＴ１、０≦ｖ１＜Ｔ１＜ｖ２として、前記変位量が、ｖ１≦ｘ≦ｖ２で定められる前記第１の閾値Ｔ１の近傍範囲にあり、かつ、前記変位量が前記第１の閾値よりも小さい範囲（ｖ１≦ｘ＜Ｔ１）にあるときは前記変位量が大きくなるにつれて振動が強くなり、
前記変位量が前記第１の閾値よりも大きい範囲にあるとき（Ｔ１＜ｘ≦ｖ２）には前記変位量が大きくなるにつれて振動が弱くなるように前記振動手段に振動を発生させ、
更に、前記制御手段は、
前記変位量が前記閾値Ｔ１よりも小さい値から増加して前記閾値Ｔ１を超えて大きくなったときに、このことを示す信号（正クロス信号）を、前記所定の機器に対して入力するために発生させるか、
又は、
前記変位量が前記閾値Ｔ１よりも大きい値から減少して前記閾値Ｔ１より小さくなったときに、このことを示す信号（逆クロス信号）を、前記所定の機器に対して入力するために発生させる、入力装置。
【請求項２】
前記正クロス信号及び逆クロス信号は、所定のボタンを備えた入力装置における前記所定のボタンのオン、オフのいずれかに相当する信号に対応づけられて発生される、請求項１記載の入力装置。
【請求項３】
前記制御手段は、前記正クロス又は逆クロスが発生したときに、これら正クロス又は逆クロスが生じたことを示す振動が生成されるように、前記振動手段を制御する、請求項１記載の入力装置。
【請求項４】
前記制御手段は、複数の閾値Ｔ１，Ｔ２…Ｔｋ…Ｔｎ（２≦ｎ、Ｔ１＜Ｔ２…＜Ｔｋ…＜Ｔｎ）のいずれに対しても、各閾値の近傍範囲では、前記変位量が閾値よりも小さい場合には前記変位量が大きくなるにつれて振動が強くなり、かつ、前記変位量が閾値よりも大きい場合には前記変位量が大きくなるにつれて振動が弱くなるように前記振動手段に振動を発生させる、請求項３記載の入力装置。
【請求項５】
前記操作部は、弾性を有し、ユーザの指で把持できる位置に複数設けられており、ユーザの指でこれらの操作部を把持することで、前記操作部の弾性により、自装置を落下させずに保持することが可能とされている請求項１又は２又は３項載の入力装置。
【請求項６】
前記制御手段は、前記各閾値Ｔ１〜Ｔｎの近傍で発生される各振動が互いに異なるものとなるように、前記振動手段に振動を発生させる、請求項４記載の入力装置。
【請求項７】
前記制御手段は、前記変位量が前記閾値よりも大きい値から前記閾値に戻ったときに、前記振動手段に、当該閾値の近傍で発生される振動とは異なる第１の振動を発生させる、請求項３記載の入力装置。
【請求項８】
前記制御手段は、前記変位量が前記閾値よりも小さい値から前記閾値に達したときに、前記振動手段に、当該閾値の近傍で発生される振動とは異なる第２の振動を発生させる、請求項３記載の入力装置。
【請求項９】
前記制御手段は、前記曲げ量が第１の閾値Ｔ１より小さい値から第１の閾値Ｔ１を超えた後に変位量が当該閾値Ｔ１に戻るまで変化する間にこの変位量が到達した最も大きい閾値を検出し、曲げ量が当該閾値Ｔ１に戻ったときに、前記所定の機器に対して、前記最も大きい閾値を表す情報を入力する、請求項３記載の入力装置。
【請求項１０】
ユーザの操作により自装置が動かされたときに動かされる前後での自装置の変位量を検出する手段と、
前記制御手段で実行可能なコマンドが一つ以上記録されたメモリと、を有し、
前記制御手段は、前記自装置の変位量を検出する手段で検出された変位量に基づいて、前記メモリに記録された前記コマンドを一つ以上選択して実行する、請求項１〜９のいずれかに記載の入力装置。
【請求項１１】
前記操作部は、弾性を有してユーザの操作により曲げることが可能とされており、ユーザの指でこれらの操作部を把持することで、自装置を落下させずに保持することが可能とされている、請求項１記載の入力装置。
【請求項１２】
所定の機器に対して入力装置を通じて情報を入力する方法であって、
前記入力装置は、センサを有し、このセンサが、前記入力装置の可動部の変位量を検出し、更に、
前記入力装置は、前記検出された変位量に応じてユーザに対して振動伝達を行うとともに、この振動伝達は、前記変位量をｘ、第１の閾値をＴ１、０≦ｖ１＜Ｔ１＜ｖ２として、前記変位量が、ｖ１≦ｘ≦ｖ２で定められる前記第１の閾値Ｔ１の近傍範囲にあり、かつ、前記変位量が前記第１の閾値よりも小さい範囲（ｖ１≦ｘ＜Ｔ１）にあるときは前記変位量が大きくなるにつれて振動が強くなり、前記変位量が前記第１の閾値よりも大きい範囲にあるとき（Ｔ１＜ｘ≦ｖ２）には前記変位量が大きくなるにつれて振動が弱くなるように行われ、
更に、前記入力装置は、
前記変位量が前記閾値Ｔ１よりも小さい値から増加して前記閾値Ｔ１を超えて大きくなったときに、このことを示す信号（正クロス信号）を、前記所定の機器に対して入力するために発生させるか、
又は、
前記変位量が前記閾値Ｔ１よりも大きい値から減少して前記閾値Ｔ１より小さくなったときに、このことを示す信号（逆クロス信号）を、前記所定の機器に対して入力するために発生させる、入力方法。
【請求項１３】
ディスプレイに表示される所定の文字入力領域への文字入力方法であって、
ユーザが把持することが可能な文字入力装置に備えられた可動部を変位させることでなされるユーザからの前記文字入力領域への入力を文字入力制御部で検出し、
前記文字入力制御部が、検出された入力に応じた文字を前記文字入力領域に表示し、
前記文字入力制御部が、前記可動部の変位量が所定の閾値を超えていないときには、入力対象となる文字候補を前記ディスプレイを通じてユーザに提示し、前記変位量が所定の閾値を超えたときに、前記文字候補を入力された文字として確定し、
前記文字入力装置は、
ユーザの操作による変位が可能とされた操作部と、
前記操作部の変位量を検出するセンサと、
ユーザに対して伝達する振動を生成するための振動手段と、を有し、
更に、前記文字入力装置は、前記センサで検出された前記操作部の変位量を示す情報に基づいて前記振動手段に振動を発生させ、
前記変位量をｘ、第１の閾値をＴ１、０≦ｖ１＜Ｔ１＜ｖ２として、前記変位量が、ｖ１≦ｘ≦ｖ２で定められる前記第１の閾値Ｔ１の近傍範囲にあり、かつ、前記変位量が前記第１の閾値よりも小さい範囲（ｖ１≦ｘ＜Ｔ１）にあるときは前記変位量が大きくなるにつれて振動が強くなり、
前記変位量が前記第１の閾値よりも大きい範囲にあるとき（Ｔ１＜ｘ≦ｖ２）には前記変位量が大きくなるにつれて振動が弱くなるように前記振動手段に振動を発生させ、
更に、前記文字入力装置は、
前記変位量が前記閾値Ｔ１よりも小さい値から増加して前記閾値Ｔ１を超えて大きくなったときに、このことを示す信号（正クロス信号）を、前記所定の機器に対して入力するために発生させるか、
又は、
前記変位量が前記閾値Ｔ１よりも大きい値から減少して前記閾値Ｔ１より小さくなったときに、このことを示す信号（逆クロス信号）を、前記所定の機器に対して入力するために発生させ、
前記文字入力制御部は、前記正クロス信号又は逆クロス信号が発生したときに、前記文字候補を入力された文字として確定する、文字入力方法。
【発明の詳細な説明】
【技術分野】  本発明は、入力装置に関し、例えばユーザの操作により曲げることが可能な操作部の曲げ量に基づいて所定の機器に対して入力を行う機器に関する。
【背景技術】  従来、入力装置としては、ジョイスティック、ジョイパッド等、種々のタイプのものがある。このような入力装置の一つとして、データグローブが知られている。
データグローブは、その袋状の本体部にユーザの手を挿入してグローブのように使用する。例えば、コンピュータへの入力装置としてデータグローブを用いた場合には、ディスプレイに表示されるバーチャル空間内にユーザの手を模した画像を表示する。データグローブを装着した状態でユーザが手を動かすと、その動きに応じてデータグローブから情報がコンピュータに入力され、上述の手を模した画像がその動きに追随して動くようになっている。
また、文字入力を行う場合、通常はキーボードを用いて入力を行う。携帯電話等では、キーボードに代えてテンキーを用いて入力することも行われている。
ゲーム機等においてジョイパッドやジョイスティックを用いて、ディスプレイに表示される文字入力領域に対して文字入力を行う場合、通常は、画面上にキーボードの絵及びカーソルを表示してユーザからのキー入力を受け付けるようにする。ユーザは、ジョイパッドの十字キーあるいはジョイスティックのスティックを操作して、画面に表示されたキーボードにおける所望のキー上にカーソルをあわせ、ジョイパッドやジョイスティックに設けられたボタンを押すことで、当該キーが文字入力領域に対して入力されるキーとして決定され、文字入力領域に対して当該キーの入力が行われる。
データグローブでは、例えばボタンを押すという動作に対応して指の曲げ量に閾値を設け、指の曲げ量がこの閾値を超えたときにデジタルデータを出力するという場合、ユーザは、指をどれくらい曲げた時点でボタンを押したという判定がなされるかを認識することが難しい。
従って、上述の例でユーザが「ボタンを押す」という動作に対応した動きを行ったつもりでも、指の曲げ量が不足して、ボタンを押したという判定がなされないおそれがある。勿論、指を大きく折り曲げたり伸ばしたりすれば、ボタンを押したという判定が確実に行われやすくなるものの、この場合、指の移動量が大きく、ユーザへの負担が大きくなり、またユーザに疲労が蓄積しやすくなる。また、素早い入力が必要な場合は、指の移動量を極力抑えることが望ましい。
また、例えば、ユーザの５本の指のそれぞれから同時にデジタルデータを入力することが要求される場合、従来の入力装置では、このような要求を満たすことは困難である。例えばユーザの５本の指それぞれにボタンが割り当てられ、これらのボタンを一斉にオン状態にすることが望まれる場合、各指について、ボタンがオン状態になったと判定される指の折り曲げ量を把握し、なおかつ５本の指を、ボタンがオン状態になったと判定されるそれぞれの折り曲げ量にまで同時に折り曲げることは非常に困難である。加えて、例えば５本の指のうち特定の３本の指のみを折り曲げるといった操作を正確に行うことは難しい。また、頻繁に繰り返される一連の動作を単純な操作で実現することも、データグローブ等では困難であった。
更に、通常のデータグローブは、ユーザの手を挿入して使用するための袋状の本体部が設けられており、このような本体部を設るために装置全体が大きくなりやすい。また、ユーザの手を挿入して使用するため、ユーザがデータグローブを取り上げて手を挿入するのに、少なからず時間がかかる。特に両手にデータグローブを装着する場合、片手にデータグローブを装着した状態でもう片方の手にデータグローブを装着することは困難であり、手を挿入するための時間が少なからずかかる。また、例えばテレビのリモコンの操作や、ディスプレイに表示されるゲーム進行に重要な情報のメモをとる等の動作を行う場合、データグローブを装着した状態では、これらの動作を行いにくくなる。特に、データグローブを一旦はずしてこれらの動作を行った後に再度データグローブを装着する場合、データグローブの着脱が非常に煩雑となってしまう。
一方、ジョイスティックやジョイパッド等で文字入力を行う場合、画面に表示されたキーボードから所望のキーを探し出し、この所望のキーにカーソルを正確にあわせたうえで決定ボタンを押すという煩雑で時間のかかる操作が必要となる。
従って、本発明は、ユーザが容易に使用することができる入力装置及び入力方法を提供することを目的とする。
また、本発明は、ユーザの手の動きを検出することが可能で、なおかつデジタルデータの入力にも適した入力装置及び入力方法を提供することを目的とする。
更に、本発明は、ユーザが把持して使用可能で、かつデジタルデータの入力に適した入力装置を提供することを目的とする。
更に、本発明は、ユーザの手を袋状の本体部に挿入するというような煩わしい動作が不要で、素早く使用可能状態とすることができる入力装置を提供することを目的とする。
更に、本発明は、従来の袋状の本体部を有するデータグローブよりもコンパクトでかつユーザの手の動作検出を行うことが可能な入力装置を提供することを目的とする。
また、本発明は、キーボードやテンキーを用いずに容易に文字入力を行うことのできる文字入力方法及び入力装置を提供することを目的とする。
【発明の開示】
本発明によれば、ユーザが把持することが可能で、所定の機器に対して情報を入力するための入力装置であって、ユーザの操作により変位可能、例えば曲げやスライド移動が可能とされた操作部と、前記操作部の変位量を検出するセンサと、ユーザに対して伝達する振動を生成するための振動手段と、前記センサで検出された前記操作部の変位量を示す情報に基づいて前記振動手段に振動を発生させる制御手段と、を有し、前記制御手段は、第１の閾値をＴ１、０≦ｖ１＜Ｔ１として、ｖ１≦ｘ≦Ｔ１であるときは、前記変位量が大きくなるにつれて振動が強くなるように前記振動手段に振動を発生させる、入力装置が提供される。
なお、前記制御手段は、前記変位量をｘ、０＜Ｔ１＜ｖ２として、Ｔ１≦ｘ＜ｖ２であるときは、前記変位量が大きくなるにつれて振動が弱くなるように前記振動手段に振動を発生させるものとしてもよい。
また、ユーザが把持することが可能で、所定の機器に対して情報を入力するための入力装置であって、ユーザの操作により曲げることが可能とされた操作部と、前記操作部の変位量を検出するセンサと、ユーザに対して伝達する振動を生成するための振動手段と、前記センサで検出された前記操作部の変位量を示す情報に基づいて前記振動手段に振動を発生させる制御手段と、を有し、前記制御手段は、前記変位量をｘ、第１の閾値をＴ１、０≦ｖ１＜Ｔ１＜ｖ２として、前記変位量が、ｖ１≦ｘ≦ｖ２で定められる、前記第１の閾値Ｔ１の近傍範囲にあり、かつ、前記変位量が前記第１の閾値Ｔ１よりも小さい範囲（ｖ１≦ｘ＜Ｔ１）にあるときは前記変位量が大きくなるにつれて振動が強くなり、かつ、前記変位量が前記第１の閾値Ｔ１よりも大きい範囲にあるとき（Ｔ１＜ｘ≦ｖ２）には前記変位量が大きくなるにつれて振動が弱くなるように前記振動手段に振動を発生させる、入力装置も提供される。
好適には、前記制御手段は、複数の閾値Ｔ１，Ｔ２…Ｔｋ…Ｔｎ（２≦ｎ、Ｔ１＜Ｔ２…＜Ｔｋ…＜Ｔｎ）のいずれに対しても、各閾値の近傍範囲では、前記変形量が閾値よりも小さい場合には前記変位量が大きくなるにつれて振動が強くなり、かつ、前記変位量が閾値よりも大きい場合には前記変位量が大きくなるにつれて振動が弱くなるように前記振動手段に振動を発生させる。
好適には、前記操作部は、弾性を有し、ユーザの指で把持できる位置に複数設けられており、ユーザの指でこれらの操作部を把持することで、当該操作部の弾性によって自装置を落下させずに保持することが可能とされている。
なお、この弾性は、ゴム等の材質自身に弾性を有するものを用いることで得るようができる。また、入力装置にヒンジ部等の開閉可能な可動部を設けるとともに、このヒンジ部が開いた状態（掌が開いた状態）となるよう付勢させるようバネを設けること等により、材質自体に弾性がなくても、「ユーザの指でこれらの操作部を把持することで、当該操作部の弾性によって自装置を落下させずに保持することを可能とすることもできる。
また、前記制御手段は、前記各閾値Ｔ１〜Ｔｎの近傍で発生される各振動が互いに異なるものとなるように、前記振動手段に振動を発生させるようにしてもよく、あるいは、前記変形量が前記閾値よりも大きい値から前記閾値に戻ったときに、前記振動手段に、当該閾値の近傍で発生される振動とは異なる第１の振動を発生させるようにしてもよい。
また、前記制御手段は、前記変形量が前記閾値よりも小さい値から前記閾値に達したときに、前記振動手段に、当該閾値の近傍で発生される振動とは異なる第２の振動を発生させるものとすることもできる。前記制御手段は、前記変位量が第１の閾値Ｔ１より小さい値から第１の閾値Ｔ１を超えた後に変位量が当該閾値Ｔ１に戻るまで変化する間にこの変位量が到達した最も大きい閾値を検出し、変位量が当該閾値Ｔ１に戻ったときに、前記所定の機器に対して、前記最も大きい閾値を表す情報を入力するものであってもよい。
本発明の入力装置においては、ユーザの操作により自装置が動かされたときに動かされる前後での自装置の変位量を検出する手段と、前記制御手段で実行可能なコマンドが一つ以上記録されたメモリと、を有して、前記制御手段が、前記自装置の変位量を検出する手段で検出された変位量に基づいて、前記メモリに記録された前記コマンドを一つ以上選択して実行するように構成することもできる。
更に、ユーザが手で把持することが可能で、所定の機器に対して情報を入力するための入力装置であって、ユーザの指で把持できる位置に複数設けられ、弾性を有してユーザの操作により曲げることが可能とされた操作部を有し、ユーザの指でこれらの操作部を把持することで、自装置を落下させずに保持することが可能とされ、ユーザの手の動きを検出するための動作検出センサを有し、前記動作検出センサで検出された前記ユーザの手の動作情報を前記所定の機器に入力する入力装置も提供される。また、本発明によれば、ユーザの手の動作情報を前記所定の機器に入力する入力方法も提供される。
例えば、所定の機器に対して入力装置を通じて情報を入力する方法であって、前記入力装置の可動部の変位量を検出し、前記検出された変位量に応じてユーザに対して振動伝達を行うとともに、前記振動伝達は、前記変位量をｘ、第１の閾値をＴ１、０≦ｖ１＜Ｔ１として、ｖ１≦ｘ≦Ｔ１であるときは、前記変位量が大きくなるにつれて振動が強くなるように行われる、方法が提供される。
また、所定の機器に対して入力装置を通じて情報を入力する方法であって、前記入力装置の可動部の変位量を検出し、前記検出された変位量に応じてユーザに対して振動伝達を行うとともに、振動伝達は、前記変位量をｘ、第１の閾値をＴ１、０≦ｖ１＜Ｔ１＜ｖ２として、前記変位量が、ｖ１≦ｘ≦ｖ２で定められる前記第１の閾値Ｔ１の近傍範囲にあり、かつ、前記変位量が前記第１の閾値よりも小さい範囲（ｖ１≦ｘ＜Ｔ１）にあるときは前記変位量が大きくなるにつれて振動が強くなり、前記変位量が前記第１の閾値よりも大きい範囲にあるとき（Ｔ１＜ｘ≦ｖ２）には前記変位量が大きくなるにつれて振動が弱くなるように行われる方法も提供される。
更に、ディスプレイに表示される所定の文字入力領域への文字入力方法であって、文字入力装置に備えられた可動部を変位させることでなされるユーザからの前記文字入力領域への入力を文字入力制御部で検出し、前記文字入力制御部が、検出された入力に応じた文字を前記文字入力領域に表示し、前記文字入力制御部が、前記可動部の変位量が所定の閾値を超えていないときには、入力対象となる文字候補を前記ディスプレイを通じてユーザに提示し、前記変位量が所定の閾値を超えたときに、前記文字候補を入力された文字として確定する方法も提供される。
【図面の簡単な説明】  図１は、本発明に係る入力装置の使用状態の説明図である。
図２は、ディスプレイが接続されたゲーム機の入力端子に受信機を装着した状態の説明図である。
図３は、入力装置におけるセンサ等の配置の説明図である。
図４は、入力装置の外観の説明図である。
図５は、ユーザが入力装置を軽く把持した状態の説明図であり、（ａ）は入力装置の初期状態、（ｂ）は、入力装置を曲げ量最大になるまで曲げた状態の説明図である。
図６（ａ）は操作部における曲げ量のグラフであり、図６（ｂ）は、曲げ量に対する振動強度を示すグラフである。
図７は、入力装置における操作部の曲げ量とバイブレータの振動との関係を説明するフローチャートである。
図８は、入力装置における操作部の曲げ量とバイブレータの振動との関係を説明するフローチャートである。
図９は、プロセッサで実行される処理の詳細を示すフローチャートである。
図１０は、ディスプレイにキーボードを表示した入力例の説明図である。
【発明を実施するための最良の形態】  本発明に係る入力装置は、コンピュータへのキー入力装置、アーケードマシーン等のゲーム機やシミュレータのコントローラ、画像処理装置の入力装置、テレビやビデオなどの電化製品用のリモコン等として幅広く適用することができ、その適用対象には特に制限はない。本実施形態では、本発明に係る入力装置を家庭用のゲーム機に適用した形態を例にとって説明する。
このゲーム機は、例えばＣＤ−ＲＯＭ＋ＤＶＤ−ＲＯＭ等のディスクに記録されたゲームプログラムによって、ディスプレイ装置にプレイヤキャラクタ及びプレイヤキャラクタの周辺のオブジェクト等の画像を表現するための処理を実行する。
本実施形態に係る入力装置は、ユーザの手、より詳しくは、指の曲げ伸ばし等の動きや、腕を動かすことによる手全体の平行移動や回転移動、旋回移動等を検出するものである。検出されたデータは、この入力装置からの入力を受ける装置やデバイスに送信されるものである。
図１に本実施形態に係る入力装置１００の使用状態を示す。この図に示されるように、入力装置１００は、参照符号１０２で示されるユーザ（図中ではユーザの手のみを示す）により把持され、入力装置１００によって、手全体の動きと各指の曲げ動作とを検出する。
入力装置１００では、このように検出された動きを、ゲーム機１０８で認識可能なデータに変換し、受信機１０６を通じてゲーム機１０８に入力する。なお、この実施形態では、入力装置１００から無線によって受信機１０６にデータを送信する構成としたが、これらをケーブル等で接続して有線でデータ送信を行うようにしてもよい。入力装置１００から受信機１０６への無線、有線による入力方式には、何ら制限はない。任意の制御対象となる装置は、この実施形態ではゲーム機であり、図１中ではゲーム機１０８として示される。
入力装置１００には、当該入力装置１００の位置及び方向を検出するためのデバイスが組み込まれており、この実施形態では、加速度センサによりその位置及び方向を検出する構成となっている。キャリブレーションの実行等により初期状態における入力装置１００の位置あわせを行った後に、加速度センサで加速度を検出することで、ｘ軸、ｙ軸、ｚ軸に対しての入力装置の傾斜角を求めて入力装置１００の姿勢を検出することが可能となる。従って、求めた傾斜角が所定の条件を満たしている場合に、入力装置１００が例えば縦、横、あるいは裏返しの姿勢になっていると判定することができる。また、検出した姿勢に応じて入力装置から入力を行うようにしてもよい。
後述するように、この入力装置１００には、各指毎に曲げることが可能な突出部として設けられた操作部及びこの操作部の変位量、この例では曲げ量を検出するセンサ、例えば曲げセンサが設けられ、入力を行うことができる。
本実施形態では、既存のゲーム機等で使用することができるように、受信機１０６をゲーム機１０８に装着するものとし、入力装置１００から入力される情報、例えば入力信号やコマンド等を受信機１０６で受信するようにした。しかしながら、予め受信装置をゲーム機側に組み込むことも勿論可能である。本実施形態では、入力装置１００から送信されるデータを受信機１０６で受信し、受信機１０６からは、ゲーム機１０８で認識できる信号がゲーム機１０８に送信される。例えば、十字キー、ボタン等のデジタル入力や、アナログスティック等によるアナログ入力を認識可能なゲーム機に対しては、受信機１０６は、入力装置１００から送信される情報を受けて、ゲーム機１０８に対してデジタル入力やアナログ入力を入力する。以下の実施形態では、受信機１０６は、入力装置１００からの入力情報を受けて、ゲーム機１０８に対して十字キーやボタン等のデジタル入力を入力する。
図２に、ディスプレイ１１０が接続されたゲーム機１０８の入力端子に受信機１０６を装着した状態の説明図を示す。この受信機１０６では、右手用、左手用の各入力装置１００からユーザ１０２の手の動作に応じて生成される入力を、ゲーム機１０８で認識できるデジタル信号としてゲーム機１０８に入力する。ゲーム機１０８では、ゲーム等のプログラムが実行され、受信機１０６から入力されるデジタル入力に応じてディスプレイ１１０に画面表示を行う。ディスプレイ１１０には、テキスト１１０ａ、メニューウィンドウ１１０ｂ、及び／又はグラフィック１１０ｃが表示される。
図３に、本実施形態に係る入力装置１００におけるセンサ等の配置の説明図を示す。この入力装置１００は、本体部１１６と、この本体部１１６からユーザの親指、人差し指、中指、薬指及び小指のそれぞれに対応して本体部１１６に設けられてそれぞれ弾性を有する操作部１１２ａ、１１２ｂ、１１２ｃ、１１２ｄ及び１１２ｅとを有している。本体部１１６は、ユーザが入力装置１００を容易に把持し、かつ不意に落下することがないように、ほぼ掌に収まる形状とされている。これらの操作部１１２ａ〜ｅには、それぞれ、曲げセンサ１１４ａ〜ｅが設けられている。
なお、本実施形態では、操作部１１２ａ〜ｅが弾性を有するものとし、曲げセンサ１１４ａ〜ｅによってユーザの各指の動作を検出するようにした。しかし、例えば操作部１１２ａ〜ｅの少なくとも一つを、入力装置に固定された固定部材と、この固定部材に対してスライド式に設けられた可動部材とにより構成し、ユーザの指で可動部材を固定部材に対してスライドさせることで変位させ、この変位量（可動部材の固定部に対する移動量）を検出するようにしてもよい。また、この可動部材を、ユーザの指によって操作部の表面上で全方位にわたって自由に摺動させることが可能で、かつ、ユーザがこの可動部から指を離した平常状態においては、可動部が初期位置に戻るように構成してもよい。この場合、この可動部の初期位置からの変位量及び変位方向を出力するように構成することで、アナログスティックと同等の機能を持たせることもできる。また、操作部１１２自体を、この操作部１１２の本体部１１６側の端部が本体部に軸止されたアナログジョイスティックとして構成し、その初期状態からの変位量によってユーザの各指の動作を検出するようにしてもよい。
曲げセンサ１１４ａ〜ｅは、プロセッサ１１８に結合されており、これらの曲げセンサ１１４ａ〜ｅからの信号がプロセッサ１１８で処理されるようになっている。また、本体部１１６には、ｘ軸、ｙ軸、ｚ軸の各方向の加速度を検出する加速度センサ１２２が設けられ、この加速度センサ１２２からの信号もプロセッサ１１８で処理される。本体部１１６には、更に送信部１２４が設けられ、プロセッサ１１８から入力される信号を受信機１０６に送信する構成となっている。
本実施形態では、プロセッサ１１８で、各操作部１１２ａ〜ｅの曲げ量に閾値を設け、曲げ量が閾値より小さい値から大きい値になったこと、及び曲げ量が閾値より大きい値から小さい値になったことをそれぞれ判定し、その判定結果を受信機１０６を通じてゲーム機１０８に入力した。ゲーム機１０８では、各仮想的なボタンの状態に応じてゲームを進行させる。
以下、入力装置１００の詳細を説明する。
入力装置１００において、操作部１１２ａ〜ｅは、弾性を有してユーザの指で屈曲可能な形状及び材質となっている。この実施形態では、操作部１１２ａ〜ｅはゴム製で、かつ本体部１１６から突設された略直方体の形状とされている。操作部１１２ａ〜ｅにおける、ユーザに把持される側の面（以下、この面を外面と記載する）には、各操作部１１２ａ〜ｅに対応するユーザの各指にフィットする、つまり指に適合するように溝部が形成されている。これにより、操作部１１２ａ〜ｅの外面が単なる平面である場合に比較して、入力装置１００をユーザが把持したときに、ユーザの各指が各操作部１１２ａ〜ｅの溝部にそれぞれ収まり、操作部１１２ａ〜ｅが指に一層フィットし、安定した操作を行うことができる。
各操作部１１２ａ〜ｅは、ユーザの指から圧力が加えられていない平常状態では、伸びた状態であり、指から圧力が加えられると、その弾性によりユーザの指に対して平常状態に戻る方向に反発力を与える。操作者の指と操作部１１２ａ〜ｅとの摩擦により、入力装置１００を安定して保持できる。
本実施形態では、操作部１１２ａ〜ｅは、図示されるように平常状態において、上記外面を外側、上記外面の裏面を内側として、図示されるようにある程度内側に丸まった状態となるようにした。操作部１１２ａ〜ｅが平常状態で平坦な状態となっていると、入力装置１００を把持しにくくなるおそれや、落としやすくなるおそれがある。しかし、本実施形態では、ユーザは指を内側に曲げた状態で入力装置１００を把持できるので、入力装置１００を安定して把持することができ、入力装置１００を不意に落とすようなことは生じにくくなっている。
各操作部１１２ａ〜ｅには、操作部１１２ａ〜ｅの屈曲の度合いを検出するための曲げセンサ１１４ａ〜ｅがそれぞれ埋め込まれている。なお、この曲げセンサは、適宜上記外面の裏面にあたる面（以下、この面を内面と記載することがある）に設けても良く、また、ユーザによる入力装置１００の把持の邪魔にならないのであれば、外面側に設けてもよい。
本実施形態では、曲げセンサ１１４ａ〜ｅとして、圧力によってその抵抗値が変化する線状の感圧センサを用いた。この感圧センサは、操作部１１２ａ〜ｅが平常状態から指により曲げられると、指からの圧力によって抵抗値が高くなる。感圧センサに所定の電圧をかけて電流を流した場合、操作部１１２ａ〜ｅが屈曲した状態において感圧センサに流れる電流は、その屈曲度合いに応じて、平常状態において流れる電流よりも小さくなる。従って、このような電流量によって、操作部１１２ａ〜ｅの屈曲の度合いを検出することができる。
図３に示されるように、本実施形態では、バイブレータ１２０ａ〜１２０ｅが、それぞれ操作部１１２ａ〜１１２ｅに設けられる。加えて、バイブレータ１２０ｆが本体部１１６の小指側に設けられ、バイブレータ１２０ｇが、親指側に設けられる。これらのバイブレータを設けることで、操作部がどの程度曲げられているか等の状態をユーザが容易に把握できるようになる。しかし、このバイブレータがなくても入力装置１００を用いた入力を行うことは可能であり、例えば後述する文字入力等を行うことができる。従って、本実施形態では、バイブレータ１２０ａ〜ｇを設けることとしたが、これらを省略することもできる。
好ましくは、バイブレータ１２０ａ〜ｅは各操作部１１２ａ〜ｅの先端部近傍に設け、更に好ましくは、ユーザの指先付近となる位置に設ける。
プロセッサ１１８には、曲げセンサ１１４ａ〜ｅ及び加速度センサ１２２からの出力が入力され、プロセッサ１１８によってこれらが処理される。プロセッサ１１８からの出力信号は、送信部１２４へと入力される。送信部１２４は、プロセッサ１１８から入力された信号を受信機１０６へと送信し、ゲーム機１０８へと入力する。これにより、ゲーム機１０８では、入力装置１００の移動を検出することができ、例えばディスプレイ１１０に、入力装置１００で検出されたユーザの実際の手の動きに追随するように、ゲームのキャラクタや、ユーザの手を模した画像を表示することができる。
本実施形態では、曲げセンサ１１４ａ〜ｅ、プロセッサ１１８、バイブレータ１２０ａ〜ｇ、加速度センサ１２２、及び送信部１２４等の構成要素を、操作部１１２ａ〜ｅあるいは本体部１１６に埋設するものとした。従って、図４の入力装置１００の外観の説明図に示されるように、入力装置１００の外観上は、これらの構成要素はユーザの目にふれないようになっている。勿論、これらの構成要素を入力装置１００の任意の箇所の表面に設けるか、その一部のみを埋設するようにしてもよい。
図５（ａ）に、ユーザ１０２が入力装置１００を軽く把持した状態を示す。この状態は、本実施形態における入力装置１００の初期状態、即ち曲げ量０の状態であり、ボタンの入力状態に関しては何ら処理は行われない。この状態では、本体部１１６がユーザ１０２の掌に収められており、各操作部１１２ａ〜ｅがそれぞれ親指、人差し指、中指、薬指、小指にフィットした状態となっている。
図５（ｂ）は、ユーザ１０２が入力装置を曲げ量最大になるまで曲げた状態を表す。この状態は、本体部１１６はユーザ１０２の掌に保持されたままで、その位置は図５（ａ）の位置と変わらないが、各操作部１１２ａ〜ｅは、その曲げ量が１００（最大）の状態となっている。なお、入力装置１００に適宜係止機構を設け、各操作部１１２ａ〜ｅをその曲げ量が最大の状態に保持可能としてもよい。この場合、入力装置１００は、その操作部１１２ａ〜ｅが屈曲されて略円筒形状となり、図５（ａ）のように操作部１１２ａ〜ｅが伸びた平常状態にあるときよりも、コンパクトで持ち運びやすい形状となる。
次に、入力装置１００における処理の詳細を示す。
この入力装置１００の使用時には、入力装置１００に設けられた図示を省略した電源から各曲げセンサ１１４ａ〜ｅに電流が流される。本実施形態では、この電源は、入力装置１００の携帯性を向上させるために入力装置１００に内蔵するようにした。勿論、入力装置１００の外部から電源を供給する構成としてもよい。プロセッサ１１８では、各曲げセンサ１１４ａ〜ｅに流れる電流をそれぞれ検出し、その電流値から、操作部１１２ａ〜ｅの曲げ量を検出する。
各曲げセンサ１１４ａ〜ｅは、ユーザ１０２が入力装置１００を把持していない平常状態において抵抗値が最も低く、ユーザ１０２によって曲げセンサが曲げられるに従って抵抗値が高くなる。
本実施形態では、曲げセンサの平常状態を曲げ量０（曲げ量最小）、曲げセンサを可能な限り深く曲げた状態を曲げ量１００（曲げ量最大）、平常状態における電流値（最大電流値）をＩ１、曲げセンサを可能な限り深く曲げた状態での電流値（最小電流値）をＩ２、測定された電流値をｉとして、曲げ量を以下のように定義している。
曲げ量＝１００（Ｉ１−ｉ）／（Ｉ１−Ｉ２）
このように定義することで、曲げセンサに流れる電流値から、入力装置１００の操作部１１２ａ〜ｅがどの程度曲げられたかを検出することができる。なお、この実施形態では、説明の簡略化のために曲げ量と電流とを線形的に対応させたが、曲げ量と電流とを非線形に対応させる等、その他の任意の手法で適宜対応させることが可能であり、曲げ量の定義は任意に行うことができる。また曲げ量に代えて、平常状態を曲げ率０％、曲げ量最大の状態を曲げ率１００％というように曲げ率を定義しても良い。
本実施形態では、プロセッサ１１８では、各曲げセンサ１１２ａ〜ｅのそれぞれで検出される曲げ量に閾値を設け、曲げ量がこの閾値より小さな値からこの閾値に達したこと、及び曲げ量がこの閾値より大きな値から小さな値に戻ったことを検出するようにした。
より詳細には、各操作部１１２ａ〜ｅごとに、曲げ量に対して複数の閾値を設けている。プロセッサ１１８では、曲げ量が閾値をクロスする、つまり、曲げ量が閾値よりも小さい値から増加して閾値を超えて大きくなること（以下、正クロスと記載する）と、曲げ量が閾値よりも大きい値から減少して閾値より小さくなること（以下、逆クロスと記載する）と、をそれぞれ検出した。
以下、操作部１１２ａを例にとって、曲げセンサ１１４ａに流れる電流値から求められた曲げ量と、曲げ量に応じたプロセッサ１１８における処理との説明を行う。なお、他の操作部１１２ｂ〜ｅに対しても同様の処理が行われる。
図６（ａ）に、操作部１１２ａにおける曲げ量のグラフを示す。この図において、横軸は操作部１１２ａの曲げ量を表し、曲げ量の範囲に応じてプロセッサ１１８において、ゲーム機１０８への情報送信やバイブレータ１２０ａ〜ｇの駆動等、所定の処理が行われる。
この図では、操作部１１２ａの曲げ量に応じて、バッファ領域（図中のＡ１、Ａ２で示される）、トリガーポイント（図中のＴ１，Ｔ２で示される）、振動フィードバック領域（図中のＢ１〜Ｂ４で示される）、振動停止領域（図中のＣで示される）を定め、これら各領域毎にプロセッサ１１８の動作を説明する。
領域Ａ１は、曲げ量をｘとして０≦ｘ＜５の領域であり、上述のバッファ領域に対応する。プロセッサ１１８ではバイブレータ１２０ａ〜ｇの駆動等の処理は行わない。この領域は、ユーザ１０２が入力装置１００を軽く把持した状態に対応し、プロセッサ１１８では、ゲーム機１０８への入力や、操作部１１２ａに設けられているバイブレータ１２０ａの駆動等は何ら行わない。
領域Ｂ１、Ｂ２は、それぞれ曲げ量ｘが５≦ｘ≦２５、２５＜ｘ≦４５である領域であり、上述の振動フィードバック領域に対応する。この領域では、曲げ量が５以上になると、バイブレータ１２０ａにおいて、曲げ量ｘが大きくなるに従って振動が強くなって曲げ量２５で振動が最強となり、曲げ量が２５を超えると、曲げ量が大きくなるにつれて振動が弱くなり、曲げ量４５でバイブレータ１２０ａの振動が停止する。
従って、本実施形態では、ｖ１＝５、ｖ２＝２５として、ｖ１≦ｘ≦ｖ２で定められる、閾値Ｔ１の近傍範囲において、曲げ量ｘが閾値Ｔ１以下の範囲（ｖ１≦ｘ≦Ｔ１）である領域Ｂ１にあるときは曲げ量が大きくなるにつれて振動が強くなり、かつ、曲げ量が閾値Ｔ１よりも大きい範囲にあるとき（Ｔ１＜ｘ≦ｖ２）には、曲げ量が大きくなるにつれて振動が弱くなる。
本実施形態では、プロセッサ１１８によって、バイブレータ１２０ａが上述のように振動するように、曲げ量に応じてバイブレータ１２０ａを制御した。なお、本実施形態では、振動の強さを操作部１１２ａの振幅の大きさとして表した。しかし、他の形態、例えば振幅を一定として振動間隔を短くするか、あるいは振動間隔（振動の周波数）と振幅とを組み合わせる形態で、振動の強さを表現してもよい。
図６（ａ）のＴ１に示される曲げ量ｘ＝２５の点は、上述の正クロス、逆クロスを判定するための閾値となっている。
好適には、プロセッサ１１８は、閾値Ｔ１の正クロスが生じたと判定した場合、この閾値Ｔ１の正クロスが生じたことを示す振動（以下、Ｔ１正クロス振動と記載する）が生成されるようにバイブレータ１２０ａを制御する。本実施形態では、Ｔ１正クロス振動は、図６（ａ）のＢ１，Ｂ２の領域における曲げ量に応じた振動とは別個に発生させ、Ｂ１，Ｂ２の領域における曲げ量に応じた振動に重畳させた。なお、Ｔ１正クロス振動を発生させている間は、この曲げ量に応じた振動を停止させるようにしてもよい。この場合、例えば、Ｔ１正クロスが生じてから上記所定時間が経過した後に、Ｔ１正クロス振動を停止して曲げ量に応じた振動に戻すようにする。
好適には、Ｔ１正クロス振動は、領域Ｂ１，Ｂ２における振動とは識別可能なものとする。例えば、その振幅、大きさ、振動方向、振動の周波数等のうち少なくとも一つを領域Ｂ１，Ｂ２における振動とは異なるものとする。本実施形態では、Ｔ１正クロス振動において、領域Ｂ１，Ｂ２における振動よりも振動間隔を短く（周波数を高く）し、ユーザ１０２が双方の振動を識別可能となるようにした。
一方、曲げ量ｘが２５より大きい値から減少してＴ１よりも小さくなると、プロセッサ１１８では、閾値Ｔ１の逆クロスが生じたと判定する。
更に、好適には、プロセッサ１１８は、上述のように閾値Ｔ１の逆クロスが生じたと判定した場合、この閾値Ｔ１の逆クロスが生じたことを示す振動（以下、Ｔ１逆クロス振動と記載する）が生成されるようにバイブレータ１２０ａを制御する。本実施形態では、Ｔ１逆クロス振動は、図６（ａ）のＢ１，Ｂ２の領域における曲げ量に応じた振動とは別個に発生させ、Ｂ１，Ｂ２の領域における曲げ量に応じた振動に重畳させた。なお、Ｔ１逆クロス振動を発生させている間は、この曲げ量に応じた振動を停止させるようにしてもよい。この場合、例えば、Ｔ１逆クロスが生じてから上記所定時間が経過した後に、Ｔ１逆クロス振動を停止して曲げ量に応じた振動に戻すようにする。
好適には、Ｔ１逆クロス振動は、領域Ｂ１，Ｂ２における振動とは識別可能なものとする。例えば、その振幅、大きさ、振動方向、振動の周波数等のうち少なくとも一つを領域Ｂ１，Ｂ２における振動とは異なるものとする。また、Ｔ１逆クロス振動は、Ｔ１正クロス振動と同じものとしても良いが、Ｔ１正クロス振動と識別可能なものとしてもよい。本実施形態では、Ｔ１の逆クロスが発生したときに、プロセッサ１１８において、Ｔ１正クロス振動よりも更に振動間隔の短い（周波数が高い）振動をＴ１逆クロス振動として発生させるようにバイブレータ１２０ａを制御することで、Ｔ１逆クロス振動を、領域Ｂ１，Ｂ２における振動やＴ１正クロス振動のいずれからも識別可能とした。
領域Ｃは、曲げ量ｘが４５＜ｘ＜５５である領域であり、上述の振動停止領域に対応する。領域Ｃでは、バッファ領域である領域Ａ１、Ａ２と同様、曲げ量に拘わらず振動は発生されない。
領域Ｂ３、Ｂ４は、それぞれ曲げ量ｘが５５≦ｘ≦７５、７５＜ｘ≦９５の領域であり、上述の振動フィードバック領域に対応する。曲げ量が５５以上になると、プロセッサ１１８はバイブレータ１２０ａに駆動信号を入力して操作部１１２ａを振動させる。
この場合、プロセッサ１１８は、曲げ量が大きくなるに従って振動の振幅が大きくなり、曲げ量７５で振動が最大となるよう制御する。曲げ量が７５を超えると、曲げ量が大きくなるにつれて振動が弱くなり、曲げ量９５で振動が停止するようにバイブレータ１２０ａを制御する。
従って、本実施形態では、ｖ３＝５５、ｖ４＝９５として、ｖ３≦ｘ≦ｖ４で定められる、閾値Ｔ２の近傍範囲において、曲げ量ｘが閾値Ｔ２よりも小さい範囲（ｖ３≦ｘ＜Ｔ２）である領域Ｂ１にあるときは曲げ量が大きくなるにつれて振動が強くなり、かつ、曲げ量が閾値Ｔ１よりも大きい範囲にあるとき（Ｔ２＜ｘ≦ｖ４）には、曲げ量が大きくなるにつれて振動が弱くなる。
領域Ｂ３、Ｂ４における振動は、領域Ｂ１，Ｂ２における振動と同じものとしても違うものとしてもよい。本実施形態では、現在の曲げ量が領域Ｂ１，Ｂ２にあるのか、Ｂ３，Ｂ４にあるのかをユーザ１０２が容易に認識することができるように、領域Ｂ１，Ｂ２の振動とは異なるものとした。
図６（ａ）のＴ２に示される曲げ量ｘ＝７５の点は、上述の正クロス、逆クロスを判定するための閾値となっている。
好適には、プロセッサ１１８は、閾値Ｔ２の正クロスが生じたと判定した場合、この閾値Ｔ２の正クロスが生じたことを示す振動（以下、Ｔ２正クロス振動と記載する）が生成されるようにバイブレータ１２０ａを制御する。本実施形態では、Ｔ２正クロス振動は、図６（ａ）のＢ３，Ｂ４の領域における曲げ量に応じた振動とは別個に発生させ、Ｂ３，Ｂ４の領域における曲げ量に応じた振動に重畳させた。なお、Ｔ２正クロス振動を発生させている間は、この曲げ量に応じた振動を停止させるようにしてもよい。この場合、例えば、Ｔ２正クロスが発生してから上記所定時間が経過した後に、Ｔ２正クロス振動を停止して曲げ量に応じた振動に戻すようにする。
好適には、Ｔ２正クロス振動は、領域Ｂ３，Ｂ４における振動、及びＴ１正クロス振動とは識別可能なものとする。例えば、その振幅、大きさ、振動方向、振動の周波数等のうち少なくとも一つを領域Ｂ３，Ｂ４における振動及びＴ１正クロス振動とは異なるものとする。本実施形態では、Ｔ２正クロス振動において、領域Ｂ３，Ｂ４における振動及びＴ１正クロス振動、Ｔ１逆クロス振動よりも振動間隔を短く（周波数を高く）し、ユーザ１０２が双方の振動を識別可能となるようにした。
一方、曲げ量ｘが７５より大きい値から減少してＴ２よりも小さくなると、プロセッサでは、閾値Ｔ２の逆クロスが生じたと判定する。
更に、好適には、プロセッサ１１８は、上述のように閾値Ｔ２の逆クロスが生じたと判定した場合、この閾値Ｔ２の逆クロスが生じたことを示す振動（以下、Ｔ２逆クロス振動と記載する）が生成されるようにバイブレータ１２０ａを制御する。本実施形態では、Ｔ２逆クロス振動は、図６（ａ）のＢ３，Ｂ４の領域における曲げ量に応じた振動とは別個に発生させ、Ｂ３，Ｂ４の領域における曲げ量に応じた振動に重畳させた。なお、Ｔ２逆クロス振動を発生させている間は、この曲げ量に応じた振動を停止させるようにしてもよい。この場合、例えば、閾値Ｔ２の逆クロスが発生してから上記所定時間が経過した後に、Ｔ２逆クロス振動を停止して曲げ量に応じた振動に戻すようにする。
好適には、Ｔ２逆クロス振動は、領域Ｂ３，Ｂ４における振動及びＴ１正クロス振動、及びＴ１逆クロス振動とは識別可能なものとする。例えば、その振幅、大きさ、振動方向、振動の周波数等のうち少なくとも一つを領域Ｂ３，Ｂ４における振動及びＴ１正クロス振動、Ｔ１逆クロス振動とは異なるものとする。また、Ｔ２逆クロス振動は、Ｔ２正クロス振動と同じ振動としても良いが、Ｔ２正クロス振動と識別可能となるように、異なる振動としてもよい。
本実施形態では、Ｔ２逆クロスが発生したと判定したときに、プロセッサ１１８において、Ｔ２正クロス振動よりも更に振動間隔の短い（周波数が高い）振動をＴ２逆クロス振動として発生させるようにバイブレータ１２０ａを制御した。これにより、Ｔ２逆クロス振動を、領域Ｂ１、Ｂ２における振動、Ｔ１正クロス振動、Ｔ１逆クロス振動、及びＴ２正クロス振動のいずれからも識別可能とした。
このように、本実施形態では、Ｔ１正クロス振動、Ｔ１逆クロス振動、Ｔ２正クロス振動、Ｔ２逆クロス振動のそれぞれが互いに異なる周波数となるようにし、操作部１１２ａの振動の周波数から現在の曲げ量を識別することが可能となるようにした。
領域Ａ２は、曲げ量をｘとして９５＜ｘ＜１００の領域であり、上述のバッファ領域に対応する。プロセッサ１１８ではバイブレータ１２０ａ〜ｇの駆動等の処理は行わない。この領域は、ユーザ１０２が入力装置１００を強く把持した状態に対応し、プロセッサ１１８では、ゲーム機１０８への入力や、操作部１１２ａに設けられているバイブレータ１２０ａの駆動等は何ら行わない。
以下、図７及び図８のフローチャートを参照して、上記構成の入力装置１００における操作部１１２ａの曲げ量とバイブレータ１２０ａの振動との関係を説明する。なお、ステップをＳと略記する。また、別途記載のない限り、曲げ量ｘの検出やバイブレータ１２０ａの振動制御等は、プロセッサ１１８により行われる。
図７のフローチャートに示されるように、ユーザ１０２が入力装置１００を軽く把持して操作部１１２ａが曲げられると、プロセッサ１１８では、その曲げ量ｘを検出し、５≦ｘであるかどうかを判定する（Ｓ１０１）。５≦ｘでない場合（Ｓ１０１Ｎ）、再度Ｓ１０１を繰り返す。５≦ｘの場合（Ｓ１０１Ｙ）、バイブレータ１２０ａの駆動を開始する（Ｓ１０２）。上述のように、バイブレータ１２０ａの振動は、ｘ＝２５になるまではｘが大きくなるにつれて振動も強くなり、ｘが２５を超えるとｘが大きくなるにつれて振動が弱くなり、ｘ＝４５で振動が停止するように制御される。
５≦ｘとなって振動が開始した後に、曲げ量ｘが２５より大きくなったか否かを判定する（Ｓ１０３）。判定結果が「否」の場合（Ｓ１０３Ｎ）、５≦ｘ≦２５であるか否かを判定する（Ｓ１０４）。５≦ｘ≦２５である場合（Ｓ１０４Ｙ）、再度Ｓ１０３を実行する。Ｓ１０４の判定結果が「否」である場合（Ｓ１０４Ｎ）、ｘは５≦ｘ≦２５の範囲になく、かつ、ｘは２５より大きくもない。即ち、ｘは５以上の値はとりえないことになる。従って、ｘ＜５になったと判定され、プロセッサ１１８はバイブレータ１２０ａを停止させるよう制御を行い（Ｓ１０５）、Ｓ１０１に戻る。
Ｓ１０３でｘが２５より大きいと判定された場合（Ｓ１０３Ｙ）、プロセッサ１１８の制御によりバイブレータ１２０ａがＴ１正クロス振動を行う（Ｓ１０６）。次に、２５≦ｘであるかを判定し（Ｓ１０７）、判定結果がＮであれば（Ｓ１０７Ｎ）、プロセッサ１１８の制御によりバイブレータ１２０ａにＴ１逆クロス振動を生じさせ（Ｓ１０８）、ステップＳ１０３に戻る。
Ｓ１０７で２５≦ｘであると判定された場合（Ｓ１０７Ｙ）、ｘが４５に達したかを判定し（Ｓ１０９）、達していない場合（Ｓ１０９Ｎ）はＳ１０７に戻る。達している場合（Ｓ１０９Ｙ）、バイブレータ１２０ａを振動停止させる（Ｓ１１０）。
次に、４５≦ｘであるかを判定し（Ｓ１１１）、４５≦ｘでない場合（Ｓ１１１Ｎ）、振動を再開させて（Ｓ１１２）Ｓ１０７に戻る。Ｓ１１１で４５≦ｘであると判定された場合（Ｓ１１１Ｙ）、図８のフローチャートにおけるＳ１１３に進み、５５≦ｘであるかどうかを判定する。５５≦ｘではない場合（Ｓ１１３Ｎ）、Ｓ１１１に戻る。
５５≦ｘである場合（Ｓ１１３Ｙ）、バイブレータ１２０ａの駆動を開始する（Ｓ１１４）。上述のように、バイブレータ１２０ａの振動は、ｘ＝７５になるまではｘが大きくなるにつれて振動も強くなり、ｘが７５を超えるとｘが大きくなるにつれて振動が弱くなり、ｘ＝９５で振動が停止するように制御される。その後、曲げ量ｘが７５に達したかを判定する（Ｓ１１５）。達していない場合（Ｓ１１５Ｎ）、５５≦ｘ＜７５であるか否かを判定する（Ｓ１１６）。５５≦ｘ＜７５である場合（Ｓ１１６Ｙ）、再度Ｓ１１５を実行する。そうでない場合（Ｓ１１６Ｎ）、ｘは７５に達しておらず、かつ５５≦ｘ＜７５でもないことから、ｘ＜５５であると判定され、バイブレータ１２０ａを停止して（Ｓ１１７）、Ｓ１１３に戻る。
Ｓ１１５でｘが７５に達したと判定された場合（Ｓ１１５Ｙ）、バイブレータ１２０ａでＴ２正クロス振動を生成させる（Ｓ１１８）。次に、７５≦ｘであるかを判定し（Ｓ１１９）、判定結果がＮであれば（Ｓ１１９Ｎ）、バイブレータ１２０ａでＴ２逆クロス振動を生成させ（Ｓ１２０）、ステップＳ１１５に戻る。
Ｓ１１９で７５≦ｘであると判定された場合（Ｓ１１９Ｙ）、ｘが９５に達したかを判定し（Ｓ１２１）、達していない場合（Ｓ１２１Ｎ）はＳ１１９に戻る。達している場合（Ｓ１２１Ｙ）、バイブレータ１２０ａを振動停止させる（Ｓ１２２）。次に、９５≦ｘであるかを判定し（Ｓ１２３）、９５≦ｘでない場合（Ｓ１２３Ｎ）、振動を再開させて（Ｓ１２４）Ｓ１１９に戻る。Ｓ１２３で９５≦ｘであると判定された場合（Ｓ１２３Ｙ）、再度Ｓ１２３を実行する。
以上のように、プロセッサ１１８で曲げ量ｘを検出してその値に応じてバイブレータ１２０ａを制御することで、ユーザ１０２に対して、操作部１１２ａの曲げ量に応じて曲げ量ｘが閾値Ｔ１、Ｔ２に達したか否かを的確に伝えることができる。
特に、図６ｂの曲げ量に対する振動強度を示すグラフに示されるように、操作部１１２ａの曲げ量が閾値Ｔ１に近づくにつれて振動が強くなるようにしているので、ユーザ１０２は、振動の強さから、現在の曲げ量が閾値Ｔ１にどれくらい近いかを定量的に認識することができる。かつ、閾値Ｔ１でバイブレータ１２０ａにＴ１正クロス振動を生成させることで、Ｔ１正クロスが行われたことをユーザ１０２が認識できるようになっている。閾値Ｔ２及びＴ２正クロス振動に関しても同様である。
また、本実施形態では、各領域Ｂ１，Ｂ２，Ｂ３，Ｂ４のそれぞれにおける振動と、Ｔ１正クロス振動、Ｔ１逆クロス振動、Ｔ２正クロス振動、Ｔ２逆クロス振動のそれぞれを互いに異なるものとした。これにより、ユーザ１０２は、これらの振動から、現在の操作部１１２ａの曲げ量が、領域Ｂ１，Ｂ２，Ｂ３，Ｂ４のいずれの領域にあるのか、また、閾値Ｔ１、Ｔ２のそれぞれに対して正クロス、逆クロスが生じたか否かを知ることができる。なお、領域Ａ１，Ｃ、Ａ２では振動は生じないが、これらの領域は、操作部１１２ａを殆ど曲げていない領域、操作部１１２ａの曲げ量が半分の領域、操作部１１２ａをほぼ完全に曲げた領域にそれぞれ対応しており、これらの領域Ａ１、Ｃ、Ａ２の識別は容易に行うことができる。従って、ユーザ１０２は、指の曲げ具合や振動の有無、振動の種類から、操作部１１２ａの曲げ量が領域Ａ１、Ｃ、Ａ２のいずれの領域にあるのかを容易に把握することができる。
次に、この入力装置１００のプロセッサ１１８におけるデータ処理のアルゴリズムを説明する。
アルゴリズム１
このアルゴリズムでは、プロセッサ１１８において、閾値Ｔ１、Ｔ２のそれぞれについて、正クロス、逆クロスが発生したときに、これら正クロス、逆クロスを示す信号を生成し、生成された信号をそのまま受信機１０６を通じてゲーム機１０８に対して入力する。
具体的には、検出された曲げ量ｘが２５より小さい値から増加してＴ１（即ち曲げ量＝２５）を超えると、プロセッサ１１８では、Ｔ１正クロスが生じたことを示す信号を生成する。曲げ量ｘが２５より大きい値から減少してＴ１よりも小さくなると、プロセッサでは、Ｔ１逆クロスが生じたことを示す信号を生成する。これら正クロス、逆クロス信号は、受信機１０６を通じてゲーム機１０８に対して入力される。
曲げ量ｘが７５より小さい値から増加してＴ２（即ち曲げ量＝７５）を超えると、プロセッサ１１８では、Ｔ２正クロス信号を生成する。プロセッサ１１８は、この信号を受信機１０６を通じてゲーム機１０８に対して入力する。
曲げ量ｘが７５より大きい値から減少してＴ２よりも小さくなると、プロセッサでは、Ｔ２逆クロス信号を生成し、この信号を受信機１０６を通じてゲーム機１０８に対して入力する。
ゲーム機１０８側では、閾値Ｔ１の正クロス信号及び逆クロス信号、閾値Ｔ２の正クロス信号及び逆クロス信号を検出し、これらの入力信号に応答して、以下の動作例１のように動作する。
動作例１
この例では、アルゴリズム１を用いて、入力装置１００をボタン１、ボタン２の２ボタンを有するエンタテインメント装置用コントローラとして動作させた。
詳細には、入力装置１００の操作部１１２ａにおける閾値Ｔ１の正クロス信号及び逆クロス信号を、コントローラのボタン１のオン（ボタンを押し込む動作）、オフ（ボタンの押し込みを解除する動作）にそれぞれ対応付けた。更に、入力装置１００の操作部１１２ａにおける閾値Ｔ２の正クロス信号及び逆クロス信号を、コントローラのボタン１に加えてボタン２も押し込む動作と、コントローラのボタン２の押し込み状態を解除してボタン１のみが押された状態に戻す動作と、にそれぞれ対応付けた。
一方、入力装置１００の操作部１１２ｂにおける閾値Ｔ１の正クロス信号及び逆クロス信号を、コントローラのボタン２のオン（ボタンを押し込む動作）、オフ（ボタンの押し込みを解除する動作）にそれぞれ対応付けた。
このように構成することで、入力装置１００を２ボタンを有するエンタテインメント装置用コントローラとして用いてボタン入力を行うことができた。
また、入力装置１００の加速度センサ１２２によって入力装置１００の初期状態からの水平面に対する前後左右の各方向への傾きを検出し、前後左右の各方向を方向キーの上下左右の各方向入力に対応付けることもできる。これにより、方向入力とボタン入力とを行うための、エンタテインメント装置で一般に用いられるコントローラとして入力装置１００を用いることもできる。この場合、入力装置１００の任意の操作部１１２のＴ１又はＴ２における正クロス信号、逆クロス信号を、適宜コントローラのボタンに割り当てることで、任意の数のボタンを有するコントローラとして用いることができる。
なお、正クロス信号、逆クロス信号とボタンのオン、オフの対応付けは任意に行うことができる。例えば、一つのボタンにオフ、弱、強の３つの値を割り当て、曲げ量が第１の閾値を超えた場合に弱入力がなされたと判定し、この第１の閾値よりも大きい第２の閾値を超えた場合に、強入力がなされたと判定してもよい。
アルゴリズム２
アルゴリズム１においては、例えばユーザ１０２がボタン１をオン状態にしてすぐオフ状態に戻すことを意図しても、Ｔ１付近で入力にぶれが生じた場合、オン、オフ状態を数回繰り返してからオフ状態になるという、ユーザ１０２の意図とは異なる結果となってしまう場合も生じ得る。
特に、本実施形態における入力装置１００では、バイブレータ１２０ａによって操作部１１２ａが振動するので、Ｔ１やＴ２付近で、ユーザ１０２の意図に反して、バイブレータ１２０ａの振動によって、曲げ量が細かく増減する場合もあり得る。この場合、上述のようなユーザ１０２の意図とは異なる結果となるおそれがある。
以下の動作例２，３に示すように、アルゴリズム２では、ユーザ１０２の意図を忠実に反映するために、逆クロス信号が検出されたことで入力の有無を判定するものとした。
動作例２
この動作例では、アルゴリズム１における動作例１を応用し、入力装置１００からゲーム機１０８に送信されるＴ１逆クロス信号、Ｔ２逆クロス信号を検出して入力の判定を行った。
ゲーム機１０８に対しては、動作例１と同様に、入力装置１００から、Ｔ１逆クロス信号、Ｔ１正クロス信号、Ｔ２正クロス信号、及びＴ２逆クロス信号がそれぞれ入力される。ゲーム機１０８側では、Ｔ１正クロス信号、Ｔ２正クロス信号が入力された時点では入力が行われたとは判定せず、Ｔ１逆クロス信号、Ｔ２逆クロス信号が入力されたことで入力がなされたと判定する。ゲーム機側では、入力されたＴ１逆クロス信号、Ｔ２逆クロス信号に応じてゲームの処理を行う。例えば入力装置１００によってゲーム内のキャラクタの操作を行うとともに、入力装置１００からＴ１逆クロス信号が入力された場合には、当該キャラクタを小ジャンプさせ、Ｔ２逆クロス信号が入力された場合には、当該キャラクタを大ジャンプさせる。
なお、この例では、Ｔ２逆クロス信号を入力した後に操作部１１２をそのまま初期状態、即ち操作部１１２を曲げ量０の状態に戻す場合、操作部１１２を初期状態に戻す過程において、曲げ量２５の状態を通過することになる。従って、この過程において、Ｔ１逆クロス信号が必ず入力されることになり、ユーザ１０２の意図に反してＴ１逆クロス信号が入力される場合がでてくる。このような不都合を解消するため、この動作例では、Ｔ２逆クロス信号に連続してＴ１逆クロス信号が入力された場合には、このＴ１逆クロス信号を無効な信号として扱うようにした。
他の形態では、このような不都合を解消するために、Ｔ２逆クロス信号が入力された時点では、「Ｔ２逆クロス信号に応じた処理」を行わないようにし、Ｔ２逆クロス信号の後にＴ１逆クロス信号が入力された時点で、「Ｔ２逆クロス信号に応じた処理」を行うようにした。従って、この形態では、Ｔ１逆クロス信号が入力された場合、当該Ｔ１逆クロス信号がＴ２逆クロス信号に続いて入力されたものであるか否かを判定し、判定結果が「否」である場合には「Ｔ１逆クロス信号に応じた処理」を行い、その他の場合には「Ｔ２逆クロス信号に応じた処理」を行うようにする。
動作例３
上記動作例２では、入力装置１００からＴ１，Ｔ２の正クロス信号、逆クロス信号をすべて送信するようにしている。動作例３では、入力装置１００からゲーム機に対して、Ｔ１，Ｔ２の逆クロス信号の発生に応じて第１信号、第２信号を入力する例を示す。
以下、図９のフローチャートを参照して、このアルゴリズムを説明する。
この例では、入力装置１００に、プロセッサ１１８がアクセス可能なメモリを設ける。プロセッサ１１８では、曲げ量ｘが閾値Ｔ１＝２５より大きいか否かを判定する（Ｓ２０１）。大きくない場合（Ｓ２０１Ｎ）には、再度Ｓ２０１に戻る。曲げ量ｘが２５より大きい場合には（Ｓ２０１Ｙ）、上記第１信号に対応する所定の値、この例では値「１」を入力装置１００に設けられたメモリに記録する（Ｓ２０２）。その後、曲げ量ｘが閾値Ｔ１＝７５より大きいか否かを判定（Ｓ２０３）し、７５より大きくない場合（Ｓ２０３Ｎ）には、曲げ量ｘが２５以下であるかを判定する（Ｓ２０４）。曲げ量ｘが２５以下ではない場合（Ｓ２０４Ｎ）には、Ｓ２０３に戻る。他の場合（Ｓ２０４Ｙ）には、プロセッサ１１８は、出力値としてメモリに記録された最大の値、この場合には値「１」を読み出し（Ｓ２０５）、受信機１０６を通じて、ゲーム機１０８に対して第１信号を出力する。
一方、Ｓ２０３でｘが７５に達したと判定された場合（Ｓ２０３Ｙ）、上記第２信号に対応した信号値、この例では値「２」、をメモリに記録し（Ｓ２０６）、ｘが２５に戻ったかを判定する（Ｓ２０７）。ｘが２５に戻っていない場合（Ｓ２０７Ｎ）には再度Ｓ２０７を実行する。ｘが２５に戻った場合（Ｓ２０７Ｙ）には、Ｓ２０５に進み、プロセッサ１１８は、メモリに記録された最大の値、この場合には値「２」を読み出し、受信機１０６を通じてゲーム機１０８に第２信号を出力する。
以上のアルゴリズムにおいては、曲げ量ｘが閾値Ｔ１より大きな値からＴ１に戻った時点でプロセッサ１１８から出力値「１」又は「２」が読み出され、それぞれ第１情報、第２情報がゲーム機１０８へと出力される。
この動作例では、第１情報、第２情報ともに、操作部１１２ａを曲げた状態から初期状態に戻す動作を行うことでなされる。この動作は、操作部１１２ａの復元力により行われる。従って、ユーザ１０２は、操作部１１２ａを把持する力を調整するという、正確性が要求される操作を行う必要はなく、単に指の力をぬいて操作部１１２ａの弾性による復元力のみによって第１情報、第２情報の出力を行うことができる。従って、プロセッサ１１８からは、ユーザ１０２の意図したタイミングで、第１情報、第２情報が出力される。
この動作例では、上述の値「１」、「２」をそれぞれメモリに記録するようにしたが、メモリに記録された値を更新するようにしてもよい。この場合、記録されている値に対応するボタンよりも曲げ量の大きいボタンが押し込まれたときにのみ、メモリに記録された値を更新する。
また、ユーザ１０２が操作部１１２の曲げ量ｘを７５以下とすることを意図していても、誤操作等によって操作部１１２の曲げ量ｘが７５より大きくなってしまう場合も起こりうる。この場合、図６に示されるＡ２の領域、即ち曲げ量ｘが９５以上になった場合に、その後に曲げ量ｘが７５以下となってもＴ２逆クロス信号を生成しないものとしてもよい。このような構成とすることで、誤って曲げ量ｘが７５を超えてしまった場合でも、操作部１１２を曲げ量ｘが９５を超えるまでに深く曲げることで、Ｔ２逆クロス信号をキャンセルして、曲げ量ｘを７５より大きくしたという誤操作を取り消すようにすることもできる。この場合、領域Ａ２は、誤操作のキャンセル領域となる。
なお、このようなキャンセル領域を設けることによる誤操作の取消は、、この動作例３のように逆クロス信号に応じて入力を行う場合に適用することができる。例えば、上記動作例２及び以下に示す動作例４では、逆クロス信号に応じて入力を行っているので、このようにキャンセル領域を設けることで誤操作の取消を行うことができる。
動作例４
アルゴリズム２を応用して、入力装置１００をキーボードとして使用することもできる。動作例４では、図１０に示すように、ゲーム機１０８にキーボードを表示し、所定の文字入力欄に文字入力を行うものとし、入力装置１００を右手と左手のそれぞれで用いて、これら２台の入力装置１００をキーボードとして用いるようにした。
右手側の入力装置１００においては、操作部１１２ａのＴ１逆クロス信号に「ａ」、操作部１１２ｂのＴ１逆クロス信号に「ｉ」、操作部１１２ｃのＴ１逆クロス信号に「ｕ」、操作部１１２ｄのＴ１逆クロス信号に「ｅ」、操作部１１２ｅのＴ１逆クロス信号に「ｏ」を割り当てた。
また、左手側の入力装置１００においては、操作部１１２ａのＴ１逆クロス信号に「ｋ」、同Ｔ２逆クロス信号に「ｓ」、操作部１１２ｂのＴ１逆クロス信号に「ｔ」、同Ｔ２逆クロス信号に「ｎ」、操作部１１２ｃのＴ１逆クロス信号に「ｈ」、同Ｔ２逆クロス信号に「ｍ」、操作部１１２ｄのＴ１逆クロス信号に「ｙ」、同Ｔ２逆クロス信号に「ｒ」、操作部１１２ｅのＴ１逆クロス信号に「ｗ」をそれぞれ割り当てた。
このような構成とすることで、母音と子音との組み合わせにより、ローマ字入力による日本語入力を行うことができる。更に、表示されたキーボードにおいて、入力装置１００から入力されたキーを強調表示することで、入力されたキーを確認しながら入力を行うことができる。
図１０のキーボード表示の上方に示された名前入力欄に「サトウ」と入力する場合を例にとると、ユーザ１０２は、左手側の入力装置１００の操作部１１２ａからＴ２逆クロス信号を入力することで「ｓ」を入力する。この際、逆クロス信号が入力されると図１０に示されたキーボードの「ｓ」のキーが反転表示される。従って、ユーザは、入力装置１００のバイブレータ１２０ａ〜ｇの振動に加えて、画面に表示されるキーが反転表示されることによっても、「ｓ」のキー入力が行われたことを確認することができる。なお、キーを反転表示したままだと、再度同じキー入力を行う場合に、最初からキーが反転表示された状態となってしまうのことから、この例では、キーを反転表示してから所定時間（例えば）０．５秒程度）経過後に反転表示を解除して通常の表示に戻す。従って、ユーザ１０２は、入力装置１００から正しく「ｓ」が入力されたことを確認することができる。
その後、ユーザ１０２は、右手の入力装置の操作部１１２ａからＴ１逆クロス信号、左手側の操作部１１２ｂからＴ１逆クロス信号、右手側の操作部１１２ｅからＴ１逆クロス信号、右手側の入力装置１００の操作部１１２ｃからＴ１逆クロス信号をこの順に入力することで、「ａ」、「ｔ」、「ｏ」、「ｕ」が入力装置１００からこの順に入力される。この際、図１０のディスプレイに表示されたキーボードの「ａ」、「ｔ」、「ｏ」、「ｕ」のキーがこの順に反転表示される。
また、入力装置１００を、ゲーム機に限らず、パソコンやサーバ等のコンピュータ用のキーボードとして用いることもできる。キーボードで使用されているアルファベット、数字、シフトキー等のキーを、入力装置１００のＴ１逆クロス信号のいずれか、あるいは入力装置１００のＴ１逆クロス信号の組み合わせに割り当てる（例えば、キーボードの「Ｆ１」キーを、「入力装置１００における操作部１１２ａのＴ１逆クロス信号と操作部１１２ｂのＴ１逆クロス信号との同時入力」に割り当てる）ことで、入力装置１００をキーボードとして用いることができる。
以下に、入力装置１００を１０６キーボード等のコンピュータ用キーボードとして用いる例を示す。
この例では、手の甲をほぼ水平として入力装置１００を把持した状態を初期状態として、この初期状態からのユーザ１０２の操作による入力装置１００の変位量を加速度センサ１２２で検出し、プロセッサ１１８においてその検出結果から入力装置１００の傾斜角を求め、この傾斜角と上述のＴ１逆クロス信号とによって、入力装置１００によってキーボードにおけるどのキーが入力されたかを判定するようにした。
また、鉛直方向をｚ軸、ユーザ１０２からみて前後方向をｙ軸、左右方向をｘ軸とし、初期状態からの入力装置１００のｘ軸の周りの傾斜角によって、１０６キーボードのどの行に対しての入力であるかを決定するようにした。一般に、１０６キーボードは、１段目にはファンクションキーが配置され、２段目には「半角／全角」キーと数字キー（１，２，３…）、３段目には「タブ」キーとアルファベットの一列目（ｑ，ｗ，ｅ，ｒ，ｔ，ｙ…）、４段目には「英数」キーとアルファベットの２列目（ａ，ｓ，ｄ，ｆ，ｇ…）、５段目には「シフトキーとアルファベットの３列目（ｚ，ｘ，ｃ，ｖ，ｂ…）、６段目には「コントロール」キー、「ウィンドウズキー」、「ａｌｔ」キー、「無変換」キー、「スペース」キー…が配置されている。
このように、１０６キーボードは通常６段で構成されるので、入力装置１００の前傾角度に適宜閾値を設定し、入力装置１００がｘ軸を中心としてどれだけ傾いているかによって、キーボードのどの段への入力を行うかを決定する。
この例では、入力装置１００が水平面に対して２０°よりも下向きの状態（最も前傾した状態）を１０６キーボードへの１段目の入力、水平面に対して２０°〜１０°下向きの状態を１０６キーボードへの２段目の入力、水平面から１０°下向き〜水平の状態を１０６キーボードへの３段目の入力、水平面〜１０°上向きの状態を１０６キーボードへの４段目の入力、水平面に対して１０°〜２０°上向きの状態を１０６キーボードへの５段目の入力、水平面に対して２０°より上向きにの状態を１０６キーボードの６段目の入力とした。
また、１０６キーボードの各行について、入力装置１００の左右への傾き具合、即ちｙ軸を中心とした入力装置１００の左右への傾斜角と入力されるキーとを対応付けた。キー入力において右手で把持した入力装置１００のみを用いるものとすると、入力装置１００を所定の角度以上の角度、この形態では入力装置１００を１０°以上左に傾斜させた場合には、キーボードの各行において、最も左のキーを、右手の親指に対応する操作部１１２ａからのＴ１逆クロス信号、左から２番目のキーを右手の人差し指に対応する操作部１１２ｂからのＴ１逆クロス信号…、５番目のキーを右手の小指に対応する操作部１１２ｅからのＴ１逆クロス信号に対応付ける。
入力装置１００の傾斜角が左右１０°未満であるときは、キーボードの各行において、左から６番目のキーを操作部１１２ａからのＴ１逆クロス信号に、左から７番目のキーを操作部１１２ｂからのＴ１逆クロス信号に、…左から１０番目のキーを操作部１１２ｅからのＴ１…逆クロス信号にそれぞれ対応付ける。
入力装置１００の傾斜角が右に１０°以上となっている場合、キーボードの各行において、左から１１番目のキーを操作部１１２ａからのＴ１逆クロス信号に、左から１２番目のキーを操作部１１２ｂからのＴ１逆クロス信号に、…左から１５番目のキーを操作部１１２ｅからのＴ１逆クロス信号にそれぞれ対応付ける。
入力装置１００を以上のように設定することで、一台の入力装置１００によって、キーボードと同様にキー入力を行うことができる。例えば、入力装置１００で「ｙ」を入力する場合、「ｙ」は１０６キーボードにおいて３段目（タブ、ｑ、ｗ、ｅ、ｒ、ｔが配置された段）の左から７番目に配置されることから、入力装置１００を水平面からｘ軸を中心として１０°下向き〜水平の状態とし、かつ、ｙ軸を中心とした傾斜角を左右１０°未満とした状態で操作部１１２ｂからＴ１逆クロス信号を入力することで、「ｙ」の入力を行うことができる。
なお、入力装置１００からの入力、この例では曲げセンサ１１４ａ〜ｅ及び加速度センサ１２２からの入力を受け付けて画面にキーボードを表示する文字入力制御部をコンピュータやゲーム機、（又は、入力装置１００がゲーム機や当該コンピュータに専用のものである場合には、入力装置１００）に設け、受け付けた入力に応じてキーボードの表示を変化させるようにすることで、ユーザからのキー入力を補助するようにしてもよい。この文字入力制御部（図示せず）は、入力装置１００のドライバ等の形態で、ソフトウェア的に構築することが可能である。
この動作例４では、入力装置１００の状態、例えば上記水平面からの傾斜角等、に応じて、入力するキーを特定している。文字入力制御部では、画面表示を変化させるようにしてもよい。好適には、入力装置１００の現在の状態において入力可能なキーを強調表示、例えば反転表示することで、入力装置１００の状態に応じて入力可能なキーをユーザに知らせることができる。
この例では、上述のように入力装置１００のｘ軸を中心とした傾斜角及びｙ軸を中心とした傾斜角によってキーボードのどの段に対して入力を行うか決定している。文字入力制御部では、加速度センサ１２２の入力から、これらの傾斜角を算出し、キーボードにおいて入力可能なキーを強調表示する。
例えば、上述のように、入力装置１００のｘ軸を中心とした傾斜角が水平面に対して１０°〜２０°上向きでかつ入力装置１００のｙ軸を中心とした傾斜角が左右１０°未満であるときは、キーボードの５段目でなおかつキーボードの左から６番目〜１０番目のキーへの入力が可能である。従って、この状態では、キーボードの５段目でなおかつ左から６番目〜１０番目のキーが強調表示される。従って、通常の１０６キーボードにおいては、「ｂ」、「ｎ」、「ｍ」「，」、「．」の各キーが強調表示される。
また、画面にキーボードを表示しなくとも、実際に文字入力を行う位置に、入力可能な文字を表示するようにする、いわゆるインライン入力によってキー入力の補助を行うこともできる。
この場合、上述のような、ｘ軸を中心とした傾斜角が水平面に対して１０°〜２０°上向きでかつ入力装置１００のｙ軸を中心とした傾斜角が左右１０°未満であるときは、文字入力を行う箇所に、「ｂ」、「ｎ」、「ｍ」、「，」、「．」の各文字が入力候補として表示される。更に、この状態で、右手の人差し指に対応する操作部１１２ｂからの入力を受け付けた場合は、左から７番目のキーである「ｎ」が入力候補として表示される。
この入力候補を正クロス信号が発生する前に表示することで、ユーザは、自分が入力しようとしているキーを確認することができ、そのキー、ここでは「ｎ」が所望のキーであるならばそのまま操作部１１２ｂを更に屈曲させてＴ１正クロス信号が発生した後に操作部１１２ｂを伸長状態に戻してＴ１逆クロス信号を発生させることにより、「ｎ」という入力を確定させることができる。なお、Ｔ１正クロス信号が発生した後であっても、上述のように誤操作のキャンセル領域である、曲げ量ｘが９５以上の領域Ａ２にまで操作部１１２ｂを屈曲させることで、「ｎ」という入力を取り消すこともできる。
また、上述の動作例及び後述する動作例において、入力装置１００に、入力装置１００の姿勢や操作部１１２ａ〜ｅからの入力に対してキーボードのどのキーが対応するかを記録した記録部（例えばＲＯＭ）やメモリ（例えばＲＡＭ）を適宜設け、入力装置１００においてアルゴリズム２、３等のアルゴリズムを実行することもできる。この場合、アルゴリズムを実行するためのソフトやドライバをゲーム機やコンピュータ側で実行する必要がない。例えば動作例４において、右手用、左手用の操作部１１２ａ〜ｅそれぞれにおけるＴ１逆クロス信号及びＴ２逆クロス信号が、入力装置１００の傾斜角によってどのキーに対応するかを予めＲＯＭに記録し、プロセッサ１１８で、入力装置１００の傾斜角と、操作部１１２ａ〜ｅからの入力と、の組み合わせに対応するキーに表す信号を出力するようにしてもよい。これにより、専用のソフトやドライバを用いることなく、入力装置１００を汎用のキーボードとして用いることができる。
アルゴリズム３
アルゴリズム３では、操作部１１２ａの曲げ量によるＴ１正クロス信号、Ｔ１逆クロス信号をボタン１のオン、オフにそれぞれ対応付けた。同様に、操作部１１２ｂ〜１１２ｅのＴ１正クロス信号、Ｔ１逆クロス信号をボタン２〜４のオン、オフにそれぞれ対応付けた。なおかつ、加速度センサ１２２を通じて入力装置１００の動きをプロセッサ１１８で検出し、特定のコマンドを実行するものとした。以下にその動作例を示す。
動作例５
この例では、ユーザ１０２の操作により自装置に移動、傾斜、旋回等が行われた場合に、その変位量を加速度センサ１２２で検出し、その変位量をプロセッサ１１８で処理した。なお、アルゴリズム２の例と同、入力装置１００には、プロセッサ１１８がアクセス可能なメモリが設けられており、このメモリに、プロセッサ１１８で実行可能なコマンドを複数記録した。
また、プロセッサ１１８では、入力装置１００の変位量として、入力装置１００がユーザ１０２に把持された状態を初期状態として、この初期状態からの当該入力装置１００の傾き量を検出した。入力装置１００が一定値以上傾いた場合に、上述の記録されたコマンドのうちの少なくとも一つを実行するものとした。
より詳細には、鉛直方向をｚ軸、ユーザ１０２からみて前後方向をｙ軸、左右方向をｘ軸として、ユーザ１０２が最初に入力装置１００を把持した状態から入力装置１００が左に傾いて（入力装置１００がｙ軸の周りにユーザ１０２からみて左方向に回転して）その傾斜角が一定値以上になったとプロセッサ１１８で判定された場合に、上記コマンドを実行するものとした。
コマンドとしては、例えば、操作部１１２ａ〜ｅに対してボタン１〜ボタン５をそれぞれ割り当て、特定の複数のボタンを一括処理の対象として選択状態にすることが挙げられる。
この例では、入力装置１００が、ユーザ１０２が最初に把持した状態から４０°以上左に傾斜した場合に、各操作部１１２ａ〜ｅのボタン１〜５を一括処理の対象として選択状態にした。このように選択状態とした後に、各操作部１１２ａ〜ｅのうちいずれかひとつの操作部のボタンで状態が変化すると、その変化が他のすべての操作部１１２ａ〜ｅのボタンに反映されるようにした。
より具体的には、各操作部において、Ｔ１正クロス信号が発生したことをボタンをオンにする操作に、また、Ｔ１逆クロス信号が発生したことをボタンをオフにする操作に対応付けるものとすると、上述の選択状態となった後に、操作部１１２ａ〜ｅのうちのいずれかに対応するボタンでＴ１正クロス信号が発生して、当該ボタンがオンになる場合、すべての操作部１１２において、ボタンが同時にオンになる（つまり、すべての操作部１１２ａ〜ｅにおいて同時にＴ１正クロス信号が発生したものとして扱う）。また、上述の選択状態となった後に、操作部１１２ａ〜ｅのうちのいずれか一つのボタンでＴ１逆クロス状態が発生してボタンがオフになったる場合、すべて操作部１１２において、ボタンが同時にオフになる（つまり、すべての操作部１１２ａ〜ｅにおいて同時にＴ１逆クロス信号が発生したものとして扱う）。
なお、各操作部１１２ａ〜ｅに割り当てたボタン１〜５を一括処理の対象として選択状態にしたことをユーザ１０２に知らせるために、選択状態になったときに特定のバイブレータを振動させるようにしてもよい。この例では、バイブレータ１２０ｆ、１２０ｇのユーザ１０２からみて左側にあるほう（例えば図３に示される右手用の入力装置１００であれば、バイブレータ１２０ｇ）を振動させることで、上記一括処理の選択状態になったことをユーザ１０２に確実に知らせるようにした。
また、例えば中指と小指だけを曲げる操作等のような、ユーザ１０２が入力し難い操作をコマンドとしてメモリに記録しておき、ユーザ１０２が入力しやすい操作、例えば上述のような入力装置１００を傾斜させるといった操作を行うことで、このコマンドをプロセッサ１１８で実行させることもできる。これにより、困難な入力操作を簡単な操作で実行することができる。
一方、他の形態として、入力装置１００の姿勢を検出して、その姿勢毎に入力を切り替えることもできる。例えば、図１に示されるように入力装置１００が、ユーザ１０２が手の甲を上にして水平面と略平行な状態で把持される状態を「横位置」、ユーザ１０２が手の甲を水平面に対して垂直な状態にして入力装置１００が把持される状態を「縱位置」、ユーザ１０２が手の甲を下にして入力装置１００を把持した状態を「裏返し位置」として、これら横位置、縦位置、裏返し位置のそれぞれにおいて、操作部１１２ａ〜ｅに対するボタンの割り当てが変更されるようにしてもよい。
アルゴリズム４
この例では、加速度センサ１２２によって入力装置１００の動きを検出し、入力装置１００が特定の動きをしたとプロセッサ１１８で判定された場合に、特定のボタンの状態を変化させる。以下にその例を示す。
動作例６
この例では、加速度センサ１２２で検出された入力装置１００の動きから、入力装置１００が左に振られたとプロセッサ１１８で判定した場合に、操作部１１２ａのボタン１をオン状態とし、受信機１０６を通じてゲーム機１０８に操作部１１２ａに割り当てられたボタン１がオンになったことを示す信号を入力する。同様に、入力装置１００が右に振られたと判定した場合には操作部１１２ｂに割り当てられたボタン２を、入力装置１００が左に旋回されたと判定した場合には操作部１１２ｃに割り当てられたボタン３を、入力装置１００が右に旋回されたと判定した場合には操作部１１２ｄに割り当てられたボタン４をそれぞれオン状態として、対応する信号を受信機１０６を通じてゲーム機１０８に入力する。
以上のように、本実施形態によれば、ユーザ１０２が容易に使用することができる入力装置が提供される。本実施形態に示される入力装置は、ユーザ１０２の手の動きを検出することが可能で、なおかつデジタルデータの入力にも適している。
なお、上述の各動作例は、例示的なものであり、各操作部からの正クロス信号、逆クロス信号は、入力装置１００からの入力を受ける装置側のキーやボタン、ファンクションキー等に自由に対応させることができ、このようなキーやボタン、ファンクションキーの数や動作は任意に設定可能である。
また、入力装置は、上述のようなゲーム機のコントローラ、コンピュータのキーボードとしてのみならず、任意の装置に対する入力装置とすることができる。例えば、テレビやビデオ等の家電製品のリモコンとして用いることも可能である。
本実施形態における入力装置は、ハンドヘルドタイプであって、ユーザ１０２の手で把持されるものであり、データグローブのような、ユーザ１０２の手にはめて使用するタイプのものではない。しかし、装置自体が大きくなるものの、入力装置をグローブ状とすることも勿論可能である。また、本実施形態では、ユーザ１０２の手で入力装置１００の操作部を把持し、操作部の弾性（及び指や掌と操作部と摩擦等）によって、落下することなく入力装置１００を保持できるものとした。しかし、上述のように入力装置１００をグローブ状としてユーザ１０２の手にはめて使用したり、あるいはユーザ１０２の指に操作部を固定する手段等を設けることで、ユーザ１０２により曲げられた後に復元力によりもとの形状に戻らない材質、例えば鉛の板等の材質で形成されているものを用いることもできる。
なお、プロセッサ１１８でゲーム機１０８を制御して、領域Ｂ１〜Ｂ４の各振動や、操作部１１２ａ〜ｅに割り当てられたボタンがオンになるとき（又はオフになるとき）に生じる振動等の個々の振動に対して、それぞれ固有の音をスピーカから出力したり、ディスプレイを通じて各振動固有の画面表示を行うようにしてもよい。この場合、上述の各種振動の仕方を仮にすべて共通としても、音あるいは画面表示によって、現在生じている振動が、どの領域やボタンのオン、オフに対応する振動であるかをユーザ１０２が認識することが可能となる。
【図１】
0004171046.tif 000002
【図２】
0004171046.tif 000003
【図３】
0004171046.tif 000004
【図４】
0004171046.tif 000005
【図５】
0004171046.tif 000006
【図６】
0004171046.tif 000007
【図７】
0004171046.tif 000008
【図８】
0004171046.tif 000009
【図９】
0004171046.tif 000010
【図１０】
0004171046.tif 000011