(57)【特許請求の範囲】
【請求項１】
演奏操作子の移動可能区間のうちの第１の区間と、当該第１の区間に続く第２の区間とにおいて、前記演奏操作子の位置を検出する位置検出手段と、
前記位置検出手段により少なくとも前記第１の区間において検出された位置に基づいて、前記演奏操作子の速度に対応する速度信号を生成する速度信号生成手段と、
前記位置検出手段により前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成する圧力信号生成手段と、
前記演奏操作子が前記第２の区間を移動するときに、当該演奏操作子が前記第１の区間を移動するときよりも高い操作抵抗を付与する抵抗付与手段と、
前記抵抗付与手段による操作抵抗の付与の有無を制御する抵抗制御手段と、
第１の検出モードと第２の検出モードとを選択するモード選択手段とを備え、
前記抵抗制御手段は、
前記モード選択手段により第１の検出モードが選択された場合に、操作抵抗を付与せず、前記モード選択手段により第２の検出モードが選択された場合に、操作抵抗を付与し、
前記圧力信号生成手段は、
前記抵抗付与手段による操作抵抗が付与された場合に、前記位置検出手段により前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成し、前記抵抗付与手段による操作抵抗が付与されない場合に、圧力信号を生成しない
ことを特徴とする演奏操作子の操作状態検出装置。
【請求項２】
請求項１に記載の演奏操作子の操作状態検出装置において、
前記抵抗付与手段は、
前記演奏操作子が前記第２の区間を移動するときに操作抵抗を付与する抵抗部材を備え、
前記抵抗制御手段は、
前記モード選択手段により第２の検出モードが選択される場合に、前記演奏操作子に操作抵抗を付与する位置に前記抵抗部材を移動させ、
前記モード選択手段により第１の検出モードが選択される場合に、前記演奏操作子に操作抵抗を付与しない位置に前記抵抗部材を移動させる
ことを特徴とする演奏操作子の操作状態検出装置。
【請求項３】
請求項１に記載の演奏操作子の操作状態検出装置において、
前記モード選択手段により前記第１の検出モードが選択された場合に、
前記速度信号生成手段は、前記位置検出手段により前記第１の区間および第２の区間において検出された位置に基づいて、前記速度信号を生成し、
前記モード選択手段により前記第２の検出モードが選択された場合に、
前記速度信号生成手段は、前記位置検出手段により前記第１の区間において検出された位置に基づいて、前記速度信号を生成し、
前記圧力信号生成手段は、前記位置検出手段により前記第２の区間において検出された位置に基づいて、前記圧力信号を生成する
ことを特徴とする演奏操作子の操作状態検出装置。
【請求項４】
演奏操作子の移動可能区間のうちの第１の区間と、当該第１の区間に続く第２の区間とにおいて、前記演奏操作子の位置を検出する位置検出段階と、
少なくとも前記第１の区間において検出された位置に基づいて、前記演奏操作子の速度に対応する速度信号を生成する速度信号生成段階と、
前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成する圧力信号生成段階と、
前記演奏操作子が前記第２の区間を移動するときに、当該演奏操作子が前記第１の区間を移動するときよりも高い操作抵抗を付与する抵抗付与段階と、
前記抵抗付与手段による操作抵抗の付与の有無を制御する抵抗制御段階と、
第１の検出モードと第２の検出モードとを選択するモード選択段階とを備え、
前記抵抗制御段階においては、
前記第１の検出モードが選択された場合に、操作抵抗を付与せず、前記第２の検出モードが選択された場合に、操作抵抗を付与し、
前記圧力信号生成段階においては、
前記抵抗付与段階において操作抵抗が付与された場合に、前記位置検出段階において前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成し、前記抵抗付与段階において操作抵抗が付与されない場合に、圧力信号を生成しない
ことを特徴とする演奏操作子の操作状態検出方法。
【請求項５】
演奏操作子と、
前記演奏操作子の移動可能区間のうちの第１の区間と、当該第１の区間に続く第２の区間とにおいて、前記演奏操作子の位置を検出する位置検出手段と、
前記位置検出手段により前記第１の区間において検出された位置に基づいて、前記演奏操作子の速度に対応する速度信号を生成する速度信号生成手段と、
前記位置検出手段により前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成する圧力信号生成手段と、
前記演奏操作子が前記第２の区間を移動するときに、当該演奏操作子が前記第１の区間を移動するときよりも高い操作抵抗を付与する抵抗付与手段と、
前記抵抗付与手段による操作抵抗の付与の有無を制御する抵抗制御手段と、
第１の検出モードと第２の検出モードとを選択するモード選択手段と、
前記速度信号生成手段により生成された速度信号と、前記圧力信号生成手段により生成された圧力信号とに応じた楽音信号を生成して出力する出力手段とを備え、
前記抵抗制御手段は、
前記モード選択手段により第１の検出モードが選択された場合に、操作抵抗を付与せず、前記モード選択手段により第２の検出モードが選択された場合に、操作抵抗を付与し、
前記圧力信号生成手段は、
前記抵抗付与手段による操作抵抗が付与された場合に、前記位置検出手段により前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成し、前記抵抗付与手段による操作抵抗が付与されない場合に、圧力信号を生成しない
ことを特徴とする演奏装置。
【請求項６】
請求項５に記載の演奏装置において、
前記演奏操作子が前記第２の区間を移動するときに、当該演奏操作子が前記第１の区間を移動するときよりも高い操作抵抗を付与する抵抗付与手段を備え、
前記演奏操作子は、複数あり、第１の鍵域に含まれる演奏操作子と第２の鍵域に含まれる演奏操作子とを有し、
前記第１の鍵域の演奏操作子は、前記第１の検出モードで動作し、
前記第２の鍵域の演奏操作子は、前記第２の検出モードで動作する
ことを特徴とする演奏装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、電子楽器等の演奏操作子の複数の操作状態を検出する演奏操作子の操作状態検出装置、演奏操作子の操作状態検出方法、および演奏操作子を有する演奏装置に関する。
【０００２】
【従来の技術】
従来より、電子楽器の演奏操作子の操作状態を検出し、操作状態に対応して楽音の音量や効果などの制御を行うタッチレスポンス技術が提案されている。このようなタッチレスポンスには、イニシャルタッチコントロールとよばれる押鍵速度に応じた楽音制御の他、アフタータッチコントロールと呼ばれる鍵を押した後の操作態様に応じた楽音制御などがある。
従来は、この種の楽音制御機能を備えた電子楽器においては、イニシャルタッチコントロールを行う場合には鍵の移動速度を検出し、アフタータッチコントロールを行うためには押鍵圧力の変化を検出していた。
【０００３】
【発明が解決しようとする課題】
しかしながら、上述のような電子楽器では、イニシャルタッチを検出するための速度センサと、アフタータッチを検出するための圧力センサとをそれぞれ別個に設けていたので、個々のセンサの設置スペースを必要とする上に、コストも高くなるという問題があった。また、従来の電子楽器では、鍵を押し下げる時の抵抗感（タッチ感）は、そのメカ機構により一義的に定まっていた。
【０００４】
本発明は、上述した課題を解決するためになされたものであり、安価な構成で複数の操作状態を検出できる演奏操作子の操作状態検出装置、演奏操作子の操作状態検出方法、およびタッチ感触を可変にした演奏操作子を有する演奏装置を提供することを目的としている。
【０００５】
【課題を解決するための手段】
上述した課題を解決するために、請求項１記載の発明は、演奏操作子の移動可能区間のうちの第１の区間と、当該第１の区間に続く第２の区間とにおいて、前記演奏操作子の位置を検出する位置検出手段と、前記位置検出手段により少なくとも前記第１の区間において検出された位置に基づいて、前記演奏操作子の速度に対応する速度信号を生成する速度信号生成手段と、前記位置検出手段により前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成する圧力信号生成手段と、前記演奏操作子が前記第２の区間を移動するときに、当該演奏操作子が前記第１の区間を移動するときよりも高い操作抵抗を付与する抵抗付与手段と、前記抵抗付与手段による操作抵抗の付与の有無を制御する抵抗制御手段と、第１の検出モードと第２の検出モードとを選択するモード選択手段とを備え、前記抵抗制御手段は、前記モード選択手段により第１の検出モードが選択された場合に、操作抵抗を付与せず、前記モード選択手段により第２の検出モードが選択された場合に、操作抵抗を付与し、前記圧力信号生成手段は、前記抵抗付与手段による操作抵抗が付与された場合に、前記位置検出手段により前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成し、前記抵抗付与手段による操作抵抗が付与されない場合に、圧力信号を生成しないことを特徴とする。
また、請求項２記載の発明は、請求項１に記載の演奏操作子の操作状態検出装置において、前記抵抗付与手段は、前記演奏操作子が前記第２の区間を移動するときに操作抵抗を付与する抵抗部材を備え、前記抵抗制御手段は、前記モード選択手段により第２の検出モードが選択される場合に、前記演奏操作子に操作抵抗を付与する位置に前記抵抗部材を移動させ、前記モード選択手段により第１の検出モードが選択される場合に、前記演奏操作子に操作抵抗を付与しない位置に前記抵抗部材を移動させることを特徴とする。
また、請求項３記載の発明は、請求項１に記載の演奏操作子の操作状態検出装置において、前記モード選択手段により前記第１の検出モードが選択された場合に、前記速度信号生成手段は、前記位置検出手段により前記第１の区間および第２の区間において検出された位置に基づいて、前記速度信号を生成し、前記モード選択手段により前記第２の検出モードが選択された場合に、前記速度信号生成手段は、前記位置検出手段により前記第１の区間において検出された位置に基づいて、前記速度信号を生成し、前記圧力信号生成手段は、前記位置検出手段により前記第２の区間において検出された位置に基づいて、前記圧力信号を生成することを特徴とする。
また、請求項４記載の発明は、演奏操作子の操作状態検出方法において、演奏操作子の移動可能区間のうちの第１の区間と、当該第１の区間に続く第２の区間とにおいて、前記演奏操作子の位置を検出する位置検出段階と、少なくとも前記第１の区間において検出された位置に基づいて、前記演奏操作子の速度に対応する速度信号を生成する速度信号生成段階と、前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成する圧力信号生成段階と、前記演奏操作子が前記第２の区間を移動するときに、当該演奏操作子が前記第１の区間を移動するときよりも高い操作抵抗を付与する抵抗付与段階と、前記抵抗付与段階による操作抵抗の付与の有無を制御する抵抗制御段階と、第１の検出モードと第２の検出モードとを選択するモード選択段階とを備え、前記抵抗制御段階においては、前記第１の検出モードが選択された場合に、操作抵抗を付与せず、前記第２の検出モードが選択された場合に、操作抵抗を付与し、前記圧力信号生成段階においては、前記抵抗付与段階において操作抵抗が付与された場合に、前記位置検出段階において前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成し、前記抵抗付与段階において操作抵抗が付与されない場合に、圧力信号を生成しないことを特徴とする。
また、請求項５記載の発明は、演奏装置において、演奏操作子と、前記演奏操作子の移動可能区間のうちの第１の区間と、当該第１の区間に続く第２の区間とにおいて、前記演奏操作子の位置を検出する位置検出手段と、前記位置検出手段により前記第１の区間において検出された位置に基づいて、前記演奏操作子の速度に対応する速度信号を生成する速度信号生成手段と、前記位置検出手段により前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成する圧力信号生成手段と、前記演奏操作子が前記第２の区間を移動するときに、当該演奏操作子が前記第１の区間を移動するときよりも高い操作抵抗を付与する抵抗付与手段と、前記抵抗付与手段による操作抵抗の付与の有無を制御する抵抗制御手段と、第１の検出モードと第２の検出モードとを選択するモード選択手段と、前記速度信号生成手段により生成された速度信号と、前記圧力信号生成手段により生成された圧力信号とに応じた楽音信号を生成して出力する出力手段とを備え、前記抵抗制御手段は、前記モード選択手段により第１の検出モードが選択された場合に、操作抵抗を付与せず、前記モード選択手段により第２の検出モードが選択された場合に、操作抵抗を付与し、前記圧力信号生成手段は、前記抵抗付与手段による操作抵抗が付与された場合に、前記位置検出手段により前記第２の区間において検出された位置に基づいて、前記演奏操作子に対する操作圧力に対応する圧力信号を生成し、前記抵抗付与手段による操作抵抗が付与されない場合に、圧力信号を生成しないことを特徴とする。
また、請求項６記載の発明は、請求項５に記載の演奏装置において、前記演奏操作子が前記第２の区間を移動するときに、当該演奏操作子が前記第１の区間を移動するときよりも高い操作抵抗を付与する抵抗付与手段を備え、前記演奏操作子は、複数あり、第１の鍵域に含まれる演奏操作子と第２の鍵域に含まれる演奏操作子とを有し、前記第１の鍵域の演奏操作子は、前記第１の鍵域の演奏操作子は、前記第１の検出モードで動作し、前記第２の鍵域の演奏操作子は、前記第２の検出モードで動作することを特徴とする。
【０００６】
【発明の実施の形態】
以下、図面を参照しながら、本発明の実施の形態について説明する。
【０００７】
１．実施形態の構成
図１は、実施形態の構成を示す図である。本実施形態は、本発明にかかる演奏操作子の操作状態検出装置および楽音制御装置を電子ピアノに採用したものである。
【０００８】
１−１．機械的構成
まず、図１を参照しながら、実施形態の機械的構成について説明する。図１に示すように、棚板１０１の上方には枠状の筬１０２が載置されており、筬１０２の上方には鍵１０３が支持されている。鍵１０３は、筬１０２に突設されたバランスピン１０４を介して回動自在になされており、演奏者が図１における右側である前端部を押し下げて演奏するようになっている。このような鍵１０３の複数が図の紙面垂直方向である左右方向に並設され、鍵盤が構成されている。
【０００９】
本実施形態では、鍵１０３の移動可能な範囲には、鍵１０３の初期位置（レスト位置Ｋｒ）、鍵１０３を押し切った位置（エンド位置Ｋｅ）、鍵１０３の操作に抵抗が急激に増加する位置（抵抗位置Ｋｘ）、および、鍵１０３がレスト位置Ｋｒよりも押し上げられた位置（オープン位置Ｋｏ）が規定されている。
エンド位置Ｋｅおよび抵抗位置Ｋｘは、図示せぬ規制部材とクッション材１３０とによって決定されるようになっている。
具体的には、ハンマアクション機構１１０は、筬１０２の上方に鍵１０３毎に併設されており、演奏者が鍵１０３を回動すると、対応するハンマアクション機構１１０に備えられたハンマ１１１が作動する。エンド位置Ｋｅは、図示せぬ規制部材により決められる。
また、クッション材１３０は、ハンマ１１１の軌道外である位置Ｃａから、ストッパ１２０とハンマ１１１との間の位置Ｃｂに移動可能な構成となっており、ハンマ１１１がクッション材１３０に達した位置が抵抗位置Ｋｘとなる。
【００１０】
ところで、本実施形態においては、「ピアノタッチモード」と「２段タッチモード」の２種類のモードが選択可能となっている。
「ピアノタッチモード」は、演奏者が鍵１０３の押鍵速度（ベロシテイ）に基づいて楽音制御（イニシャルタッチコントロール）を行うモードである。ピアノタッチモードが選択された場合は、クッション材１３０が位置Ｃａに移動し、鍵１０３の押鍵に伴ってハンマ１１１はストッパ１２０に到達する。
これに対して「２段タッチモード」は、演奏者が鍵１０３の押鍵速度、および、鍵１０３を押している状態で、さらに鍵１０３を強く（あるいは深く）押すといった押鍵圧力に基づいて楽音制御（アフタータッチコントロール）を行うモードである。２段タッチモードが選択された場合は、クッション材１３０が位置Ｃｂに移動し、鍵１０３の押鍵に伴ってハンマ１１１はクッション材１３０に到達した後で更に押し上げる。クッション材１３０は、鍵１０３の動作に対する抵抗を付与する役割を有しており、これにより、演奏者が鍵１０３を押下する圧力に応じて鍵１０３の位置が変化する。
本実施形態では、ハンマ１１１が弦に到達するまでを１段目（第１の区間）として鍵１０３の押鍵速度を検出し、鍵１０３を更に強くあるいは深く押した状態を検出２段目（第２の区間）として押鍵圧力を検出する。
【００１１】
ハンマアクション機構１１０は、アコースティックグランドピアノと同様の構成を有しており、ハンマ１１１とストッパ１２０との距離は、アコースティックグランドピアノにおけるハンマと弦との距離と同じである。このような構成においては、ハンマアクション機構１１０が鍵１０３に載置されているため、鍵１０３を押し下げる場合に負荷を感じるようになる。すなわち、鍵を押し下げていった場合に、ジャック１１２がローラ１１３の下面から抜ける（脱進する）という現象があり、この脱進がピアノ特有のタッチ感となる。なお、この脱進を規定するパラメータとして、「鍵を非常に低速で押し下げた場合のハンマ１１１と弦（＝ストッパ１２０）との最小距離＝接近＝通常は数ｍｍ」がある。一方、２段タッチモードでは、ハンマ１１１がクッション材１３０に当接するまではハンマアクション機構１１０の負荷のみが鍵１０３にかかるが、ハンマ１１１がクッション材１３０に当接した以降は、クッション材１３０による負荷がこれに加わる。ここで、クッション材１３０の厚さは、少なくとも上記接近よりも大きい。クッション材１３０の厚さが接近よりも小さい場合は、上述のように脱進してしまうので、アフタータッチコントロールができないからである。されに言えば、鍵１０３をレスト位置まで押し下げた場合のクッション材１３０の厚さを上記接近より厚くすれば、脱進する前に鍵１０３がレスト位置に到達するので、アフタータッチコントロールができる。なお、鍵１０３をレスト位置まで押し下げた場合のクッション材１３０の厚さを上記接近よりも多少薄くしてもよい。これにより、鍵１０３がレスト位置に到達する直前に脱進するため、鍵１０３を強い力で押下した場合にハンマアクション機構１１０が破損するということを防止することができる。
【００１２】
本実施形態では、鍵１０３の位置については、鍵１０３の下方に突設されたシャッタ１４１および、シャッタ１４１の位置に応じて出力値が変化するアナログセンサ１４２を用いて検出する。アナログセンサ１４２には、例えば、特開平９−５４５８４号公報に記載されたフォトセンサなどを用いる。
また、後に詳しく説明するように、所定時間毎に鍵１０３の位置をアナログセンサ１４２によって検出することにより、押鍵速度および、押鍵圧力の変化を把握することができるようになっている。
【００１３】
１−２．電気的構成
次に、図１に示すブロック図を参照しながら、本実施形態の電気的構成について説明する。
図１に示すように、上述した機械的構成を制御するために、本実施形態では、ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、パネルスイッチ（ＳＷ）２０４、音源２０５、ＡＤ変換器２０６、およびクッション材駆動部２０７を備えている。
ＣＰＵ２０１は、ＲＯＭ２０２に記憶された制御プログラムに基づいて、バスを介して接続された各部の制御を行う。ＲＯＭ２０２には、後述する各種処理を行う制御プログラムの他、アナログセンサ１４２における検出値と鍵１０３との位置関係を示す情報なども記憶されている。ＲＡＭ２０３は、データを一時的に記憶するものであり、後述する各種変数などが記憶される。
パネルスイッチ２０４は、複数の操作子を備えて構成されており、前述の「ピアノタッチモード」あるいは「２段タッチモード」を選択するためなどに用いられる。
【００１４】
音源２０５は、ＣＰＵ２０１によって生成される楽音制御データに基づいて楽音信号を生成して出力するものであり、楽音制御データには、検出された押鍵速度および押鍵圧力に基づいた制御情報が含まれている。
ＡＤ変換器２０６はアナログセンサ１４２からのアナログ出力信号をデジタル信号に変換するものであり、その出力信号はＣＰＵ２０１に読み取られるようになっている。
クッション材駆動部２０７は、クッション材１３０の動作を駆動するものであり、「ピアノタッチモード」が選択されている場合にはクッション材１３０が図１に示す位置Ｃａに、「２段タッチモード」が選択されている場合には位置Ｃｂに移動するように、クッション材１３０を駆動する。
【００１５】
また、本実施形態では、アナログセンサ１４２の出力値（Ａ／Ｄ値）と鍵の位置との関係を予め計測して得た値を記憶している。これにより、アナログセンサ１４２の出力値に基づいて鍵１０３の位置を検出できるようになっている。図２は、予め記憶している鍵１０３の位置とアナログセンサ１４２の出力値との関係を示すグラフである。
図２に示すグラフにおいて、縦軸はアナログセンサ１４２の出力値を示しており、横軸は出力値に対応する鍵１０３の位置を示しており、図中Ｌｏはオープン位置Ｋｏに、Ｌｒはレスト位置Ｋｒに、Ｌｘは抵抗位置Ｋｘに、そしてＬｅはエンド位置におけるアナログセンサ１４２の出力値を示している。
【００１６】
このように、鍵１０３の位置に対応するアナログセンサ１４２の出力値を予め記憶しているので、ＣＰＵ２０１は、アナログセンサ１４２の出力値に基づいて鍵１０３の位置を検出できるようになる。
そして、ＣＰＵ２０１は、所定時間毎にアナログセンサ１４２の出力値を検出することによって、鍵１０３の位置と時間との関係を把握し、これにより押鍵速度を検出することができる。
また、抵抗位置Ｋｘとエンド位置Ｋｅとの間においては、ハンマ１１１がクッション材１３０を押し上げることによる操作抵抗が生じるので、鍵１０３を押下する圧力に応じて鍵１０３の位置が変化することになる。従って、ＣＰＵ２０１は、鍵１０３が抵抗位置Ｋｘに到達した後における、鍵１０３の位置の変化を押鍵圧力の変化として検出することができる。
【００１７】
２．実施形態の動作
次に、上記構成を有する実施形態の動作について説明する。
【００１８】
２−１．ＣＰＵ２０１による制御
まず、ＲＯＭ２０２に記憶されたプログラムに従ったＣＰＵ２０１による制御について説明する。なお、説明を簡略化するために１の鍵についてのみ説明するが、同様の処理が各鍵について行われているものとする。
【００１９】
（１）メインルーチン
まず図３に示すフローチャートを参照しながら、メインルーチンにかかる処理について説明する。
電源が投入されると、ＣＰＵ２０１は、まず初期化処理を行う（Ｓ１０１）。ここでは、後に詳しく説明するような、鍵１０３の操作状態を検出する際に必要な各種情報（選択されたモードなど）を示す変数の初期化などを行う。
初期化処理が終了すると、ＣＰＵ２０１は次にパネル処理を行う（Ｓ１０２）。ここでは、パネルスイッチ２０４に設けられた操作子の状態に応じた設定をする処理を行う。例えば、「ピアノタッチモード」あるいは「２段タッチモード」のいずれかのモードを選択して設定する処理などが該当する。
パネル処理が終了すると、ＣＰＵ２０１は、次に楽音制御処理を行う（Ｓ１０３）。楽音制御処理は、検出した各値に基づいて、楽音生成を制御するためのデータを出力する処理であり、詳しくは後述する。
そして、その他の処理を行い（Ｓ１０４）、処理をステップＳ１０２に移行させる。この、ステップＳ１０２〜ステップＳ１０４の循環処理は、電源が遮断されるまで繰り返される。
【００２０】
（２）割り込み処理
ところで、鍵１０３の位置を検出する処理は、割り込み処理として所定の周期において実行される。ここで、図４は、割り込み処理を示すフローチャートであり、全ての鍵について行う処理を示している。
割り込み処理が開始すると、ＣＰＵ２０１は、ＡＤ変換器２０６の出力値であるアナログセンサ１４２のＡ／Ｄ値を読み込む処理を行う（Ｓ２０１）。
そして、ステップＳ２０１において読み込んだＡ／Ｄ値が、後述するしきい値以上であるか否かを判別し（Ｓ２０２）、しきい値以上であると判別した場合は（Ｓ２０２；ＹＥＳ）、読み込んだＡ／Ｄ値に基づいて以下に説明する各種変数の値を設定して（Ｓ２０３）、処理をメインルーチンに戻す。
一方、ステップＳ２０２の判別において、Ａ／Ｄ値がしきい値未満であると判別した場合は（Ｓ２０２；ＮＯ）、そのまま処理をメインルーチンに戻す。
【００２１】
（３）各種変数
▲１▼変数の説明
ここで、鍵１０３の操作状態を検出する際に必要な各種情報を示す変数について具体的に説明する。本実施形態において、選択されたモードを示す「Ｍｏｄｅ」、押鍵速度（ベロシテイ）を示す「Ｖｅｌ」、アナログセンサ１４２からの出力Ａ／Ｄ値が第一のしきい値Ｌｉを超えた時刻を示す「Ｔｉ」、第二のしきい値Ｌｊを超えた時刻を示す「Ｔｊ」、抵抗位置Ｋｘに達した時刻を示す「Ｔｘ」、およびレスト位置に戻った時刻を示す「Ｔｒ」が、変数として用いられる。
【００２２】
第一のしきい値Ｌｉおよび第二のしきい値Ｌｊは、鍵１０３の押鍵速度を検出するために設定された値である。第二のしきい値Ｌｊの方が第一のしきい値Ｌｉよりも鍵１０３を深く押し下げた場合であり、これらのしきい値は後に説明するようにレスト位置データＬｒに所定の係数を乗算することによって設定される。第一のしきい値Ｌｉおよび第二のしきい値Ｌｊは、鍵１０３の押鍵速度を算出する際に用いられるしきい値であり、本実施形態では、後述するように、鍵１０３の移動を２点間において計測し、当該２点間の距離および移動時間によって押鍵速度を算出する。
また、第一のしきい値Ｌｉは、図４に示すステップＳ２０２における判別に用いるしきい値でもあり、アナログセンサ１４２からの出力Ａ／Ｄ値が第一のしきい値Ｌｉ以上である場合には、鍵１０３が操作されていると判別され、図４に示すステップＳ２０３に移行する。なお、ステップＳ２０３においては、上述した変数Ｔｊ、Ｔｘ、Ｔｒ等のセットも行われる。
【００２３】
「Ｍｏｄｅ」は、「ピアノタッチモード」が選択されている場合にはＭｏｄｅ＝１と設定され、「２段タッチモード」が選択されている場合にはＭｏｄｅ＝２と設定される。
「Ｖｅｌ」は、後に説明するように算出されたベロシテイの値を示す変数であり、鍵１０３が操作されていない場合は押鍵速度が検出されないので、初期設定ではＶｅｌ＝０と設定される。鍵１０３が所定の位置に達した時刻を示す変数「Ｔｉ」、「Ｔｊ」、「Ｔｘ」、および「Ｔｒ」の初期値は”０”に設定される。本実施形態では、このような変数を用いてベロシテイおよびアフタータッチを検出できるようになっている。
【００２４】
▲２▼ベロシテイの算出
次に、上述の各値を用いたベロシテイの算出方法について説明する。本実施形態では、まず、第一のしきい値Ｌｉを超えたときの鍵１０３の位置をＫｉとし、第二のしきい値を超えたときの鍵１０３の位置をＫｊとする。
第一のしきい値Ｌｉは、レスト位置データＬｒに所定の係数ｒｉを乗算することによって得た値（Ｌｉ＝Ｌｒ×ｒｉ）であり、第二のしきい値Ｌｊは、レスト位置データＬｘに所定の係数ｒｊを乗算することによって得た値（Ｌｊ＝Ｌｒ×ｒｊ）である。各係数ｒｉおよびｒｊは、鍵１０３の状態を識別するのに適した値が実験等によって求められ、例えば、白鍵と黒鍵のそれぞれについて、実験値の平均値が設定される。
【００２５】
そして、アナログセンサ１４２からの出力Ａ／Ｄ値が第一のしきい値Ｌｉを超えた時刻Ｔｉにおける鍵１０３の位置をＫｉとし、第二のしきい値Ｌｊを超えた時刻Ｔｊにおける鍵１０３の位置をＫｊとして、ＣＰＵ２０１は以下の演算を行って、鍵１０３の押鍵速度を算出する。
Ｖｅｌ＝｛（Ｋｉ−Ｋｊ）／Ｋｒ｝／（Ｔｊ−Ｔｉ）
ここで、（Ｋｉ−Ｋｊ）は、鍵１０３の移動距離（変位）を示している。ＫｉからＫｊを減算しているのは、鍵１０３の位置データがレスト位置Ｋｒからエンド位置Ｋｅに向かって小さくなるように出力されるからである。また、レスト位置データＫｒで除しているのは、各鍵のレスト位置Ｋｒのばらつきを正規化するためである。従って、上記式は、押鍵速度＝（正規化された変位）／（移動時間）を意味している。
【００２６】
（３）楽音制御処理
次に、図５に示すフローチャートを参照しながら、楽音制御処理（図３：Ｓ１０３）について説明する。
楽音制御処理を開始すると、ＣＰＵ２０１は、選択されたモードを示す変数Ｍｏｄｅに基づいて、設定されているモードが「ピアノタッチモード」（Ｍｏｄｅ＝１）であるか、「２段タッチモード」（Ｍｏｄｅ＝２）であるかを判別する（Ｓ３０１）。
当該判別において、Ｍｏｄｅ＝１すなわち「ピアノタッチモード」であると判別した場合は、ステップＳ３１０に移行してピアノタッチモード処理を行い、Ｍｏｄｅ＝２すなわち「２段タッチモード」であると判別した場合は、ステップＳ３２０に移行して２段タッチモード処理を行う。そして、いずれかのモード処理を終了した後メインルーチンに戻る。
【００２７】
▲１▼ピアノタッチモード処理
ここで、図６を参照しながら、ピアノタッチモード処理（図５：Ｓ３１０）の詳細について説明する。割り込み処理（図４）と同様に、ピアノタッチモード処理も全ての鍵について行われる。
ピアノタッチモード処理を開始すると、まずＶｅｌ＝０であるか否か、すなわち、すでにベロシテイが算出されているか否かを判別し（Ｓ３１１）、Ｖｅｌ＝０であると判別した場合は（Ｓ３１１；ＹＥＳ）、次に、Ｔｊ＝０、すなわち、アナログセンサ１４２の出力値が第二のしきい値Ｌｊを超えたか否かを判別する（Ｓ３１２）。
ステップＳ３１２の判別において、Ｔｊ＝０であると判別した場合は（Ｓ３１２；ＹＥＳ）、いまだベロシテイを算出するために必要な２点の位置が検出されていないと判別できるので、ベロシテイを算出せずに処理をメインルーチンに戻す。
【００２８】
一方、ステップＳ３１２の判別において、Ｔｊ≠０と判別した場合は（Ｓ３１２；ＮＯ）、ベロシテイを算出するために必要な２点の位置がすでに検出されていると判別できるので、先に説明した演算を実行してベロシテイを算出し（Ｓ３１３）、当該処理の対象となっている鍵番号に対応した音高およびステップＳ３１３において算出したベロシテイに基づく発音を指示する楽音制御データを出力して（Ｓ３１４）、処理をメインルーチンに戻す。
【００２９】
ところで、ステップＳ３１１の判別において、Ｖｅｌ≠０と判別した場合は（Ｓ３１１；ＮＯ）、すでにベロシテイを算出して発音を行っていると判別できるので、Ｔｒ＝０か否か、すなわち次に鍵１０３がレスト位置Ｋｒまで戻ったか否かを判別する（Ｓ３１５）。
当該判別において、Ｔｒ＝０と判別した場合は（Ｓ３１５；ＹＥＳ）、未だ鍵１０３がレスト位置Ｋｒに戻っていないと判別できるので、ステップＳ３１５において出力した楽音制御データに基づく発音を継続すべく、処理をそのままメインルーチンに戻す。
【００３０】
一方、ステップＳ３１５の判別においてＴｒ≠０と判別した場合は（Ｓ３１５；ＮＯ）、鍵１０３がレスト位置Ｋｒに戻ったと判別できるので、処理対象となっている鍵番号に対応した音高についての消音を指示する楽音制御データを生成して出力する（Ｓ３１６）。そして、鍵１０３の操作状態を検出するための各種変数を初期化して（Ｓ３１７）、処理をメインルーチンに戻す。これにより、今回処理対象となった鍵１０３の操作状態に伴う楽音制御は終了したことになる。
【００３１】
▲２▼２段タッチモード処理
次に、図７に示すフローチャートを参照しながら、２段タッチモード処理（図５：Ｓ３２０）の詳細について説明する。割り込み処理（図４）と同様に、２段タッチモード処理も全ての鍵について行われる。
２段タッチモード処理を開始すると、Ｖｅｌ＝０であるか否か、すなわち、すでにベロシテイが算出されているか否かを判別し（Ｓ３２１）、Ｖｅｌ＝０であると判別した場合は（Ｓ３２１；ＹＥＳ）、次に、Ｔｊ＝０、すなわち、アナログセンサ１４２の出力値が第二のしきい値Ｌｊを超えたか否かを判別する（Ｓ３２２）。
ステップＳ３２２の判別において、Ｔｊ＝０であると判別した場合は（Ｓ３２２；ＹＥＳ）、いまだベロシテイを算出するために必要な２点の位置が検出されていないと判別できるので、ベロシテイを算出せずに処理をメインルーチンに戻す。
【００３２】
一方、ステップＳ３２２の判別において、Ｔｊ≠０と判別した場合は（Ｓ３２２；ＮＯ）、ベロシテイを算出するために必要な２点の位置がすでに検出されていると判別できるので、先に説明した演算を実行してベロシテイを算出し（Ｓ３２３）、当該処理の対象となっている鍵番号に対応した音高およびステップＳ３２３において算出したベロシテイに基づいて発音を指示する楽音制御データを生成して出力して（Ｓ３２４）、処理をメインルーチンに戻す。
【００３３】
ところで、ステップＳ３２１の判別において、Ｖｅｌ≠０と判別した場合は（Ｓ３２１；ＮＯ）、すでにベロシテイを算出して発音を行っていると判別できるので、Ｔｘ＝０、すなわち鍵１０３が抵抗位置Ｋｘに達したか否かを判別する（Ｓ３２５）。
当該判別において、Ｔｘ≠０と判別した場合は（Ｓ３２５；ＮＯ）、いまだ鍵１０３が抵抗位置Ｋｘに達していないと判別できるので、アフタータッチを出力する処理は行わず、そのままメインルーチンに処理を戻す。
【００３４】
一方、ステップＳ３２５の判別においてＴｘ＝０であると判別した場合は（Ｓ３２５；ＹＥＳ）、鍵１０３が抵抗位置Ｋｘに達したと判別できるので、Ｔｒ＝０か否か、すなわち鍵１０３がレスト位置Ｋｒまで戻ったか否かを判別する（Ｓ３２６）。
当該判別において、Ｔｒ＝０であると判別した場合は（Ｓ３２６；ＹＥＳ）、未だ鍵１０３がレスト位置Ｋｒまで戻っていないと判別できるので、所定の周期で検出された位置データに基づいて鍵１０３の押鍵圧力の変化に対応する楽音制御データであるアフタータッチを出力し（Ｓ３２７）、処理をメインルーチンに戻す。
【００３５】
一方、ステップＳ３２６の判別において、Ｔｒ≠０と判別した場合は（Ｓ３２６；ＮＯ）、鍵１０３がレスト位置Ｋｒまで戻ったと判別できるので、処理対象となっている鍵番号に対応した音高についての消音を指示する楽音制御データを出力する（Ｓ３２８）。そして、鍵１０３の操作状態を検出するための各種変数を初期化して（Ｓ３２９）、処理をメインルーチンに戻す。これにより、今回処理対象となった鍵１０３の操作状態に伴う楽音制御は終了したことになる。
【００３６】
２−２．具体的動作
上述した処理を循環することによって、本実施形態は具体的には以下のように動作する。
図８は、鍵１０３の位置の軌跡を時系列で示した図である。図８は、「２段タッチモード」が選択されている場合において、鍵１０３を徐々に押下し、抵抗位置Ｋｘに達した後は、鍵１０３を押下する圧力を変化させた場合の軌跡を示している。
まず、押下される前（時刻ｔ０）においては、鍵１０３はレスト位置Ｋｒにある。そして演奏者が鍵１０３の押下を開始すると時刻ｔ１において、第一のしきい値Ｌｉに対応する位置Ｋｉに到達する。さらに演奏者が鍵１０３を押下すると、時刻ｔ６において鍵１０３が第２のしきい値Ｌｊに対応する位置Ｋｊに到達し、変数Ｔｊ＝ｔ６となる。
ここで、Ｔｊ＝ｔ６（≠０）となるので、Ｋｉ、Ｋｊ、ｔ１およびｔ６を用いて鍵１０３のベロシテイが算出され、ベロシテイに基づいた発音を指示する楽音制御データが出力される。
【００３７】
さらに鍵１０３が押下されて、時刻ｔ７において抵抗位置Ｋｘまで達すると、ハンマ１１１がクッション材１３０を押し上げるので押鍵操作に対する抵抗が高くなる。従って、鍵１０３の位置に基づいて押鍵圧力を検出できるようになり、アフタータッチの検出が可能と判別されるので、時刻ｔ７以降は、所定の周期において検出される鍵１０３の位置（（ｔ８、Ｋｘ’）、（ｔ９、Ｋｘ”）、（ｔ１０、Ｋｅ））に応じて求められる押鍵圧力に対応する楽音制御データ（アフタータッチ）が出力される。
【００３８】
このように、鍵１０３の位置および位置間の移動時間に基づいて押鍵速度を検出するとともに、鍵１０３の動作に対する抵抗が高くなる区間を設けて、この区間においては鍵１０３の位置に基づいて押鍵圧力を検出するので、一つのアナログセンサ１４２を用いて押鍵速度および押鍵圧力の２種類の操作状態を検出できるようになる。
また、鍵１０３の操作状態に対する抵抗が低い区間（第１の区間）は、押鍵を開始してからハンマ１１１がクッション材１３０に到達するまでの区間であり、クッション材１３０は、ハンマ１１１が本来打弦する位置に近い位置に配置されているので、鍵１０３を押すときの押鍵速度（イニシャルタッチ）を検出することができる。
一方、鍵１０３の操作状態に対する抵抗が高い区間（第２の区間）は、ハンマ１１１が本来打弦する位置に近い位置に配置されたクッション材１３０を押し上げる区間であるから、鍵１０３を押している状態で、更に鍵１０３を強く押す押鍵圧力（アフタータッチ）を検出することができる。
さらに、鍵１０３の操作状態に対する抵抗が高い区間を設けずに、押鍵速度のみ検出する「ピアノタッチモード」と、押鍵速度を検出する第１の区間と押鍵圧力を検出する第２の区間とを設けた「２段タッチモード」とを選択できるようにしたので、演奏者は同一の鍵１３０を用いて多様な楽音制御を行うことができるようになる。
このとき、「ピアノタッチモード」においては、アコースティックグランドピアノと同等のタッチ感を得ることができ、音源２０５でピアノ音色の楽音を発生する場合に好適である。一方、「２段タッチモード」においては、アフタータッチコントロールができるため、音源２０５で管楽器や弦楽器などの持続音系の音色の楽音を発生する場合に好適である。
【００３９】
３．変形例
なお、本発明は既述した実施形態に限定されるものではなく、以下のような各種の変形が可能である。
【００４０】
上記実施形態においては、演奏操作子はグランドピアノ型の電子ピアノを例として説明しているが、これに限らず、アップライトピアノやオルガンなど、他の鍵盤楽器の鍵であってもよく、ハンマがない構成であっても構わない。また、位置の変化に基づいて楽音制御を行う楽器の演奏操作子であれば、鍵に限らず、ペダルなど他のものであっても構わない。
演奏操作子の位置を検出する手段も、上記実施形態に限定されるものではなく、演奏操作子の操作に伴い、時間および位置の変化が検出できればどのような手段を用いてもよい。
【００４１】
上記実施形態においては、演奏操作子の位置および時間を２点において検出することによって押鍵速度を算出しているが、これに限らず、例えば特開平９−５４５８４号公報に記載されているように４点において検出するようにしても構わない。消音位置も上記実施形態のようにＫｒに限らず、ＫｒとＫｘとの間に位置する他の点（Ｋｉ）などでも良い。
また、楽音の発生を指示する鍵位置、楽音の消音を指示する鍵位置、押鍵速度を検出する区間を、「ピアノタッチモード」と「２段タッチモード」とで異ならせるようにしてもよい。
【００４２】
上記実施形態においては、クッション材１３０をハンマ１１１の軌道上に設けているが、鍵１０３の下方にクッション材１３０を設ける構成でも良く、これに限らず、演奏操作子の操作に対する抵抗が高い区間を設けることができ、演奏操作子の押鍵圧力と位置との関係が認識できるものであればどのような手段でも構わない。
ハンマ１１１とストッパ１２０との距離が各鍵毎に異なる場合には、クッション材１３０の厚さを各鍵毎に異ならせるようにして、ハンマ１１１がクッション材１３０に当接した時点における鍵１０３の押し下げ量を全ての鍵について一致させるようにするとよい。
上記実施形態では、クッション材１３０を電気的に２位置間を移動可能にしたが、機械的に構成して演奏者の手動により２位置間を移動可能にしてもよい。
また、クッション材１３０を電気的に移動可能にする場合には、音源２０５で発生する楽音の音色に応じて、「ピアノタッチモード」における位置と「２段タッチモード」における位置とを自動的に移動するようにしてもよい。
さらに、全ての鍵について一括してクッション材１３０を移動させるのではなく、一部の鍵グループは一方のモードの位置、他方の鍵グループは他方のモードの位置というように、１つの鍵盤で両モードを混在させるようにしてもよい。これにより、例えば、ピアノと弦楽器の合奏曲を演奏する場合に、ピアノパートを演奏する鍵域を「ピアノタッチモード」とし、弦楽器パートを演奏する鍵域を「２段タッチモード」とするといった制御が可能になる。
【００４３】
上記実施形態においては、鍵１０３が抵抗位置Ｋｘに達した後レスト位置Ｋｒに戻るまでにおける鍵１０３の位置に基づいてアフタータッチを検出するようにしているが、これに限らず、鍵１０３が抵抗位置Ｋｘに達した後エンド位置Ｋｅに達するまでにおける鍵１０３の位置に基づいてアフタータッチを検出するようにしてもよい。
【００４４】
また、上記実施形態では、検出した押鍵速度および押鍵圧力に基づく楽音制御については詳しく説明していないが、例えば、ピッチ、ビブラート、ボリューム、エクスプレッション、ブリリアントなど様々な制御を行うことができる。また、複数の鍵にそれぞれ異なる制御を割り当てて、これらの制御を複合的に組み合わせて行うようにしてもよい。
【００４５】
【発明の効果】
以上説明したように、本発明によれば、演奏操作子の複数の操作状態を安価な構成で検出できるようになる。
【図面の簡単な説明】
【図１】  実施形態の構成を示す図である。
【図２】  アナログセンサの出力値と鍵の位置との対応を示す図である。
【図３】  メインルーチンにかかる処理を示すフローチャートである。
【図４】  割り込み処理を示すフローチャートである。
【図５】  楽音制御処理を示すフローチャートである。
【図６】  ピアノタッチモード処理を示すフローチャートである。
【図７】  ２段タッチモード処理を示すフローチャートである。
【図８】  実施形態の具体的動作を説明する図である。
【符号の説明】
１０１……棚板、１０２……筬、１０３……鍵、１０４……バランスピン、１１０……ハンマアクション機構、１１１……ハンマ、１１２……ジャック、１１３……ローラ、１２０……ストッパ、１３０……クッション材、１４１……シャッタ、１４２……アナログセンサ、２０１……ＣＰＵ、２０２……ＲＯＭ、２０３……ＲＡＭ、２０４……パネルスイッチ、２０５……音源、２０６……Ａ／Ｄ変換器、２０７……クッション材駆動部。
【図１】
0004140112.tif 000002
【図２】
0004140112.tif 000003
【図３】
0004140112.tif 000004
【図４】
0004140112.tif 000005
【図５】
0004140112.tif 000006
【図６】
0004140112.tif 000007
【図７】
0004140112.tif 000008
【図８】
0004140112.tif 000009