(57)【特許請求の範囲】
【請求項１】
打鍵の強さを表すタッチデータを発生する鍵盤装置と、
操作パネルに入力される内容に基づいて設定される期間に前記鍵盤装置で発生されたタッチデータの最大値を算出する最大値算出部と、
前記期間に前記鍵盤装置で発生されたタッチデータの平均値を算出する平均値算出部と、
前記最大値算出部で算出されたタッチデータの最大値を発音に使用されるベロシティの最大値に対応させた点、前記平均値算出部で算出された平均値を前記ベロシティの所定値に対応させた点、及びタッチデータの最小値を前記ベロシティの最小値に対応させた点を結ぶ線から成るタッチカーブを生成する制御部とを備え、
前記タッチカーブは、前記最大値算出部で算出されたタッチデータの最大値を前記ベロシティの最大値に対応させた点と前記平均値算出部で算出された平均値をベロシティの所定値に対応させた点とを結ぶ直線、及び、前記平均値算出部で算出された平均値をベロシティの所定値に対応させた点とタッチデータの最小値をベロシティの最小値に対応させた点とを結ぶ直線から成り、
前記最大値算出部及び平均値算出部は、最弱から最強に至るまでの力で前記鍵盤装置が複数回打鍵されることにより得られたタッチデータに基づいて、タッチデータの最大値及びタッチデータの平均値をそれぞれ算出する
タッチ制御装置。
【請求項２】
打鍵の強さを表すタッチデータを発生する鍵盤装置と、
操作パネルに入力される内容に基づいて設定される期間に前記鍵盤装置で発生されたタッチデータの最大値を算出する最大値算出部と、
前記期間に前記鍵盤装置で発生されたタッチデータの平均値を算出する平均値算出部と、
前記最大値算出部で算出されたタッチデータの最大値を発音に使用されるベロシティの最大値に対応させた点、前記平均値算出部で算出された平均値を前記ベロシティの所定値に対応させた点、及びタッチデータの最小値を前記ベロシティの最小値に対応させた点を結ぶ線から成るタッチカーブを生成する制御部とを備え、
前記タッチカーブは、前記最大値算出部で算出されたタッチデータの最大値を前記ベロシティの最大値に対応させた点と前記平均値算出部で算出された平均値をベロシティの所定値に対応させた点とを結ぶ直線、及び、前記平均値算出部で算出された平均値をベロシティの所定値に対応させた点とタッチデータの最小値をベロシティの最小値に対応させた点とを結ぶ直線から成り、
前記最大値算出部及び平均値算出部は、所定の曲が前記鍵盤装置で弾かれることにより得られたタッチデータに基づいて、タッチデータの最大値及びタッチデータの平均値をそれぞれ算出する
タッチ制御装置。
【請求項３】
操作パネルに入力される内容に基づいて設定される期間に鍵盤装置からの打鍵の強さを表すタッチデータの最大値を算出するステップと、
前記期間に前記鍵盤装置からのタッチデータの平均値を算出するステップと、
前記算出されたタッチデータの最大値を発音に使用されるベロシティの最大値に対応させた点、前記算出された平均値を前記ベロシティの所定値に対応させた点、及びタッチデータの最小値を前記ベロシティの最小値に対応させた点を結ぶ線から成るタッチカーブを生成するステップとを備え、
前記タッチカーブは、前記算出されたタッチデータの最大値を前記ベロシティの最大値に対応させた点と前記算出された平均値をベロシティの所定値に対応させた点とを結ぶ直線、及び、前記算出された平均値をベロシティの所定値に対応させた点とタッチデータの最小値をベロシティの最小値に対応させた点とを結ぶ直線から成り、
前記タッチデータの最大値を算出するステップ及び前記タッチデータの平均値を算出するステップは、最弱から最強に至るまでの力で前記鍵盤装置が複数回打鍵されることにより得られたタッチデータに基づいて、タッチデータの最大値及びタッチデータの平均値をそれぞれ算出する
タッチ制御方法。
【請求項４】
操作パネルに入力される内容に基づいて設定される期間に鍵盤装置からの打鍵の強さを表すタッチデータの最大値を算出するステップと、
前記期間に前記鍵盤装置からのタッチデータの平均値を算出するステップと、
前記算出されたタッチデータの最大値を発音に使用されるベロシティの最大値に対応させた点、前記算出された平均値を前記ベロシティの所定値に対応させた点、及びタッチデータの最小値を前記ベロシティの最小値に対応させた点を結ぶ線から成るタッチカーブを生成するステップとを備え、
前記タッチカーブは、前記算出されたタッチデータの最大値を前記ベロシティの最大値に対応させた点と前記算出された平均値をベロシティの所定値に対応させた点とを結ぶ直線、及び、前記算出された平均値をベロシティの所定値に対応させた点とタッチデータの最小値をベロシティの最小値に対応させた点とを結ぶ直線から成り、
前記タッチデータの最大値を算出するステップ及び前記タッチデータの平均値を算出するステップは、所定の曲が前記鍵盤装置で弾かれることにより得られたタッチデータに基づいて、タッチデータの最大値及びタッチデータの平均値をそれぞれ算出する
タッチ制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電子楽器に適用されるタッチ制御装置及びタッチ制御方法に関し、特にユーザの打鍵力に応じたタッチレスポンスを得るためのタッチカーブを生成する技術に関する。
【０００２】
【従来の技術】
従来、例えば電子ピアノのような電子鍵盤楽器におけるタッチレスポンスの特性は、タッチカーブによって規定されている。タッチレスポンスを制御できる鍵盤装置の各鍵は、第１の押圧深さでオンになる第１キースイッチＳ１及びこの第１の押圧深さより深い第２の押圧深さでオンになる第２キースイッチＳ２を備えている。
【０００３】
これら第１キースイッチＳ１及び第２キースイッチＳ２のオン又はオフを表す信号はタッチセンサに供給される。タッチセンサは、第１キースイッチＳ１のオンを表す信号を受け取ってから第２キースイッチＳ２のオンを表す信号を受け取るまでの時間を計測することにより押鍵速度Δｔ（＝Ｓ２−Ｓ１）を検出する。この押鍵速度Δｔは、例えば図１１に示すように、１２８段階のデジタル値に変換されてタッチデータとして出力される。
【０００４】
このタッチセンサから出力されたタッチデータは、更に図１２に示すようなタッチカーブＴ１〜Ｔ３の何れかに従って、発音に使用される音量及び音色を決定するためのベロシティ値に変換される。ユーザは、何れのタッチカーブＴ１〜Ｔ３を用いるかを選択でき、これを「タッチカーブセレクト機能」という。
【０００５】
図１２におけるタッチカーブＴ１は「ノーマル（Normal）」と呼ばれ、標準的な打鍵力を有する者が演奏した時に最もアコースティックピアノの音に近づくように設定されている。タッチカーブＴ２は「ライト（Light）」と呼ばれ、弱いタッチで大きなベロシティ値を得るために使用される。このタッチカーブＴ２は、例えば低年齢者や高齢者といった標準より弱い打鍵力を有する者に好適である。また、タッチカーブＴ３は「ヘビー（Heavy）」と呼ばれ、強いタッチで小さなベロシティ値を得るために使用される。このタッチカーブＴ３は、標準より強い打鍵力を有する者に好適である。
【０００６】
このようなタッチカーブは、具体的には、図１３に示すような変換テーブルを用いて実現されている。この変換テーブルは、ノーマル、ライト及びヘビーの各々について、００Ｈ〜７ＦＨ（末桁の「Ｈ」は先行する記号が１６進数表記であることを表す。以下においても同じ）といった各タッチデータに対応するベロシティ値を記憶することにより構成されている。そして、タッチデータが与えられると、その時に選択されているノーマル、ライト及びヘビーの何れかから、与えられたタッチデータに対応するベロシティ値が読み出され、発音時の音量及び音色を決定するために使用される。
【０００７】
【発明が解決しようとする課題】
上述したタッチカーブＴ１〜Ｔ３は、通常、メーカーから提供されるのでユーザが任意に変更することはできない。そこで、特開２０００−２１５９６５号公報は、ユーザの好みや押鍵力に合ったタッチレスポンスを得るためのタッチカーブを生成できる「タッチ制御装置及びタッチ制御方法」を開示している。この公報は、ユーザが最大の力で打鍵した時のタッチデータに基づいてタッチカーブを補正する技術、及びユーザがメゾフォルテの力で打鍵した時のタッチデータの平均値から、標準的なメゾフォルテのベロシティ値とベロシティの最大値とを用いてタッチカーブを補正する技術を開示している。
【０００８】
しかしながら、上述した技術では、所望のタッチカーブを作るための処理が複雑であるので、所望のタッチカーブを簡単な処理によって得ることのできる技術が望まれている。
【０００９】
本発明は、このような要請に応えるためになされたもので、ユーザに好適なタッチレスポンスが得られるタッチカーブを簡単に作ることができるタッチ制御装置及びタッチ制御方法を提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明の第１の態様に係るタッチ制御装置は、上記目的を達成するために、打鍵の強さを表すタッチデータを発生する鍵盤装置と、前記鍵盤装置で発生されたタッチデータの最大値を算出する最大値算出部と、前記鍵盤装置で発生されたタッチデータの平均値を算出する平均値算出部と、前記最大値算出部で算出されたタッチデータの最大値を発音に使用されるベロシティの最大値に対応させた点、前記平均値算出部で算出された平均値を前記ベロシティの所定値に対応させた点、及びタッチデータの最小値を前記ベロシティの最小値に対応させた点を結ぶ線から成るタッチカーブを生成する制御部、とを備えている。
【００１１】
本発明の第１の態様に係るタッチ制御装置は、ユーザが鍵盤装置を打鍵することにより得られたタッチデータの最大値及び平均値並びに必然的に定まるタッチデータの最小値をベロシティの最大値、所定値及び最小値にそれぞれ対応させた３点を線で結ぶことによりタッチカーブを生成する。従って、簡単な処理であるにも拘わらず、ユーザに好適なタッチレスポンスを得ることのできるタッチカーブを生成できる。
【００１２】
本発明の第１の態様に係るタッチ制御装置において、前記タッチカーブは、前記最大値算出部で算出されたタッチデータの最大値を前記ベロシティの最大値に対応させた点と前記平均値算出部で算出された平均値をベロシティの所定値に対応させた点とを結ぶ直線、及び、前記平均値算出部で算出された平均値をベロシティの所定値に対応させた点とタッチデータの最小値をベロシティの最小値に対応させた点とを結ぶ直線から構成できる。この構成によれば、簡単な一次方程式でベロシティの各値を算出できるので、タッチカーブを生成するための処理が極めて簡単になる。
【００１３】
また、この本発明の第１の態様に係るタッチ制御装置において、前記ベロシティの所定値は、前記鍵盤装置がメゾフォルテの強さで押された時のベロシティ値とすることができる。メゾフォルテの強さで押された時のベロシティ値は、例えば「８０」程度とすることができる。この構成によれば、所定値を簡単に定めることができるので、タッチカーブを生成するための処理が簡単になる。
【００１４】
また、本発明の第１の態様に係るタッチ制御装置において、前記最大値算出部及び平均値算出部は、最弱から最強に至るまでの力で前記鍵盤装置が複数回打鍵されることにより得られたタッチデータに基づいて、タッチデータの最大値及びタッチデータの平均値をそれぞれ算出するように構成できる。この構成によれば、ユーザの打鍵力をタッチカーブに正確に反映させることができる。
【００１５】
更に、本発明の第１の態様に係るタッチ制御装置において、前記最大値算出部及び平均値算出部は、所定の曲が前記鍵盤装置で弾かれることにより得られたタッチデータに基づいて、タッチデータの最大値及びタッチデータの平均値をそれぞれ算出するように構成できる。この構成によれば、ユーザが弾いた曲に基づいてタッチカーブが生成されるので、ユーザの負担が軽減される。
【００１６】
また、本発明の第２の態様に係るタッチ制御方法は、上記と同様の目的で、鍵盤装置からの打鍵の強さを表すタッチデータの最大値を算出するステップと、前記鍵盤装置からのタッチデータの平均値を算出するステップと、前記算出されたタッチデータの最大値を発音に使用されるベロシティの最大値に対応させた点、前記算出された平均値を前記ベロシティの所定値に対応させた点、及びタッチデータの最小値を前記ベロシティの最小値に対応させた点を結ぶ線から成るタッチカーブを生成するステップ、とを備えている。
【００１７】
本発明の第２の態様に係るタッチ制御方法において、前記タッチカーブは、前記算出されたタッチデータの最大値を前記ベロシティの最大値に対応させた点と前記算出された平均値をベロシティの所定値に対応させた点とを結ぶ直線、及び、前記算出された平均値をベロシティの所定値に対応させた点とタッチデータの最小値をベロシティの最小値に対応させた点とを結ぶ直線から構成できる。
【００１８】
この場合、前記ベロシティの所定値は、前記鍵盤装置がメゾフォルテの強さで押された時のベロシティ値とすることができる。また、前記タッチデータの最大値を算出するステップ及び前記タッチデータの平均値を算出するステップは、最弱から最強に至るまでの力で前記鍵盤装置が複数回打鍵されることにより得られたタッチデータに基づいて、タッチデータの最大値及びタッチデータの平均値をそれぞれ算出するように構成できる。更に、前記タッチデータの最大値を算出するステップ及び前記タッチデータの平均値を算出するステップは、所定の曲が前記鍵盤装置で弾かれることにより得られたタッチデータに基づいて、タッチデータの最大値及びタッチデータの平均値をそれぞれ算出するように構成できる。
【００１９】
【発明の実施の形態】
以下、本発明の実施の形態に係るタッチ制御装置及びタッチ制御方法を図面を参照しながら詳細に説明する。以下では、タッチ制御装置は電子楽器に組み込まれているものとする。従って、本発明の理解を容易にするために、電子楽器の全体の構成及び動作をも含めて説明する。
【００２０】
図１は、本発明の実施の形態に係るタッチ制御装置が適用された電子楽器の構成を示すブロック図である。この電子楽器は、システムバス３０によって相互に接続された、中央処理装置（以下、「ＣＰＵ」という）１０、プログラムメモリ１１、ワークメモリ１２、キースキャン回路１３、パネルスキャン回路１４及び楽音発生部１５から構成されている。システムバス３０は、上述した各構成要素間でアドレス信号、データ信号、制御信号等を送受するために使用される。
【００２１】
ＣＰＵ１０は、プログラムメモリ１１に記憶されている制御プログラムに従って電子楽器の全体を制御する。本発明の最大値算出部、平均値算出部及び制御部は、ＣＰＵ１０の処理によって実現されている。このＣＰＵ１０で実行される処理の内容は、後にフローチャートを参照しながら詳細に説明する。
【００２２】
プログラムメモリ１１は、例えばリードオンリメモリ（ＲＯＭ）から構成されており、上述した制御プログラムの他に、ＣＰＵ１０が使用する種々の固定データを記憶している。また、このプログラムメモリ１１の中には、タッチカーブを構成するベロシティ値を、図１３に示すような変換テーブルの形式で記憶するためのタッチカーブメモリ１１０が設けられている。
【００２３】
この実施の形態では、タッチカーブメモリ１１０には、図２に示した５種類のタッチカーブＴ１、Ｔ２、Ｔ２＋、Ｔ３及びＴ３＋を構成するベロシティ値が格納されているものとする。なお、タッチカーブＴ１、Ｔ２及びＴ３は従来の技術の欄で説明したものと同じである。また、タッチカーブＴ２＋は、「ライトプラス（Light Plus）」と呼ばれ、ライトより更に弱いタッチで大きなベロシティ値を得るために使用される。また、タッチカーブＴ３＋は「ヘビープラス（Heavy Plus）」と呼ばれ、ヘビーより更に強いタッチで小さなベロシティ値を得るために使用される。
【００２４】
ワークメモリ１２は、例えばランダムアクセスメモリ（ＲＡＭ）で構成されて居る。このワークメモリ１２は、この電子楽器で処理が実行される際に、種々のデータを一時記憶するために使用される。このワークメモリ１２には、電子楽器を制御するための各種レジスタ、カウンタ、フラグ等が定義されている。これらの詳細については、以下において出現する都度説明する。
【００２５】
また、このワークメモリ１２の中には、ユーザが作成したタッチカーブを記憶するためのユーザタッチカーブメモリ１２０が設けられている。この実施の形態では、ユーザは、ユーザ１及びユーザ２といった２種類のタッチカーブを作成できるものとする。しかし、本発明では、ユーザが作成できるタッチカーブの種類は２種類に限定されず任意である。
【００２６】
キースキャン回路１３には複数の鍵を備えた鍵盤装置２０が接続されている。この鍵盤装置２０は、押鍵によって発音を指示し、離鍵によって消音を指示するために使用される。この鍵盤装置２０としては、例えば、従来の技術の欄で説明したような、異なる押圧深さでそれぞれオンになる第１キースイッチＳ１及び第２キースイッチＳ２を各鍵に備えた２接点方式の鍵盤装置が用いられている。
【００２７】
このキースキャン回路１３は、ＣＰＵ１０からの指令に応答して鍵盤装置２０のての全キースイッチをスキャンする。そして、このスキャンにより得られた全てのキースイッチの開閉状態を示す信号に基づいてキーデータを作成する。キーデータは、各鍵を１ビットに対応させたビット列から成り、各ビットは、例えば「１」で押鍵中、「０」で離鍵中であることを表す。キースキャン回路１３は、第２キースイッチＳ２がオンになっている場合に押鍵中であることを表すデータ「１」を作成し、第１キースイッチＳ１がオフになっている場合は離鍵中であることを表すデータ「０」を作成する。作成されたキーデータは、システムバス３０を介してＣＰＵ１０に送られる。
【００２８】
また、キースキャン回路１３は、押鍵によって第１キースイッチＳ１がオンになってから第２キースイッチＳ２がオンになるまでの時間を計測して押鍵速度Δｔを生成し、この生成した押鍵速度Δｔに基づいてタッチデータを生成する。即ち、キースキャン回路１３は、図１１に示すように、押鍵速度Δｔを１２８段階のデジタル値に変換してタッチデータとして出力する。このタッチデータは、システムバス３０を介してＣＰＵ１０に送られる。ＣＰＵ１０は、その時点で選択されているタッチカーブＴ１〜Ｔ３の何れかに従って、受け取ったタッチデータに対応するベロシティ値をタッチカーブメモリ１１０から読み出し、音量及び音色を制御する。
【００２９】
パネルスキャン回路１４には操作パネル２１が接続されている。操作パネル２１は、図３に示すように、ＬＣＤ４０、アップスイッチ５０及びダウンスイッチ５１から成るバリュースイッチ、録音スイッチ（ＲＥＣ）５２並びにストップスイッチ（ＳＴＯＰ）５３を搭載している。ＬＣＤ４０は、各種メッセージを表示するために使用される。アップスイッチ５０及びダウンスイッチ５１は、ＬＣＤ４０にメッセージとして表示されるメニューの選択に使用される。録音スイッチ５２は、ユーザ１及びユーザ２のタッチカーブを作成する際に録音を開始させるために使用される。ストップスイッチ５３は、タッチカーブを作成するための録音を停止させると共にユーザ１又はユーザ２のタッチカーブの生成処理を開始させるために使用される。
【００３０】
なお、実際の電子楽器の操作パネルには、上記以外に、種々のパネルスイッチ、これらパネルスイッチの設定状態（ＯＮ／ＯＦＦ）を表示するＬＥＤ表示器等が設けられているが図示を省略してある。
【００３１】
パネルスキャン回路１４は、ＣＰＵ１０からの指令に応答して操作パネル２１の各スイッチをスキャンする。そして、このスキャンにより得られた各スイッチの開閉状態を示す信号に基づいて、各スイッチを１ビットに対応させたパネルデータを作成する。各ビットは、例えば「１」でスイッチのオン、「０」でオフ状態を表す。このパネルデータは、システムバス３０を介してＣＰＵ１０に送られる。ＣＰＵ１０は、このパネルデータに基づいてパネルイベントが発生したかどうかを判断する。また、パネルスキャン回路１４は、ＣＰＵ１０から送られてきた表示データをＬＣＤ４０に送る。これにより、文字や図形から成るメッセージがＬＣＤ４０に表示される。
【００３２】
楽音発生部１５は、ＣＰＵ１０からの指示に応答してデジタル楽音信号を発生する。この楽音発生部で発生されたデジタル楽音信号は、Ｄ／Ａ変換部２２に送られる。Ｄ／Ａ変換部２２は、受け取ったデジタル楽音信号をアナログ楽音信号に変換してアナログ信号処理部２３に送る。アナログ信号処理部２３は、アナログ楽音信号に例えば音響効果信号を付加して増幅器２４に送る。増幅器２４は、アナログ信号処理部２３からの信号を増幅してスピーカ２５に送る。これにより、スピーカ２５から楽音が発生される。
【００３３】
次に、以上のように構成される電子楽器において、現在のタッチレスポンスをユーザの好みのタッチレスポンスに変更するためにタッチカーブを生成する場合の操作を説明する。
【００３４】
ユーザは、先ず、電子楽器に一般的に備えられているモード設定機能を用いて、電子楽器の動作モードをタッチカーブ選択モードに移行させる。タッチカーブ選択モードに入ると、その時点で選択されているタッチカーブがＬＣＤ４０に表示される。図３は、「ＴＯＵＣＨ＝ＵＳＥＲ１」という表示によってユーザ１のタッチカーブが選択されている例を示している。この状態でアップスイッチ５０又はダウンスイッチ５１が操作されると、「ＵＳＥＲ１」の部分の表示が変更されてタッチカーブの選択状態が変更される。
【００３５】
なお、ユーザ１及びユーザ２のタッチカーブは、所期状態ではノーマルのタッチカーブＴ１と同じである。一旦ユーザ１及びユーザ２のタッチカーブが作成されてユーザタッチカーブメモリ１２０に格納されると、以後は、それらのタッチカーブが更に変更されるまで有効である。
【００３６】
以下では、ユーザ１のタッチカーブを生成する場合を例に挙げて説明する。ＬＣＤ４０に「ＵＳＥＲ１」が表示された状態で、録音スイッチ５２が押されると、図４に示すような「ＳＴＡＲＴ  ＰＬＡＹＩＮＧ  ＳＯＦＴ→ＬＯＵＤ」というメッセージがＬＣＤ４０に表示され、録音モードに入る。ユーザは、この状態で、最弱から最強に至るまでの力で鍵盤装置２０を満遍なく打鍵する。
【００３７】
ユーザによる打鍵が開始されると、図５に示すような「ＰＲＥＳＳ  ＳＴＯＰ、ＷＨＥＮ  ＦＩＮＩＳＨＥＤ」というメッセージがＬＣＤ４０に表示される。この際、ＬＣＤ４０の右下角に音符記号が点滅し、録音中であることを表す。
【００３８】
ユーザによる打鍵が完了し、ユーザがストップスイッチ５３を押すと、録音されたデータの解析、具体的には、タッチデータの最大値及び平均値を算出し、これらに基づいてタッチカーブを生成する処理が実行される。そして、タッチカーブが生成が完了してユーザタッチカーブメモリ１２０に格納されると、図６に示すような「ＡＮＡＬＹＳＩＳ  ＣＯＭＰＬＥＴＥＤ」というメッセージがＬＣＤ４０に表示される。その後、図３に示した表示に戻る。以後、ユーザ１のタッチカーブに従ったベロシティ値で発音させることが可能になる。
【００３９】
次に、上記のように構成された本発明に係るタッチ制御装置が適用された電子楽器の動作を図７〜図９に示したフローチャートを参照しながら説明する。
【００４０】
（１−１）メイン処理
図７は本発明の実施の形態に係るタッチ制御装置が適用された電子楽器のメイン処理を示すフローチャートである。このメイン処理ルーチンは電源の投入により起動される。電源が投入されると、先ず、イニシャライズが行われる（ステップＳ１０）。このイニシャライズでは、ＣＰＵ１０の内部のハードウェアが初期状態に設定されると共に、ワークメモリ１２に定義されているレジスタ、カウンタ、フラグ等に初期値が設定される。
【００４１】
イニシャライズが終了すると、次いで、パネルスイッチのイベントが検出されたかどうかが調べられる（ステップＳ１１）。即ち、ＣＰＵ１０は、パネルスキャン回路１４からパネルデータを取り込み、前回にステップＳ１１で取り込まれたパネルデータから変化しているかどうかを調べる。
【００４２】
このステップＳ１１で、パネルスイッチイベントが検出されたことが判断されると、パネルスイッチイベントの原因になったパネルスイッチに割り当てられている機能を実現するためのパネルスイッチイベント処理が実行される（ステップＳ１２）。このパネルスイッチイベント処理の詳細は後述する。一方、上記ステップＳ１１でパネルスイッチイベントが検出されなかったことが判断された時は、ステップＳ１２の処理はスキップされる。
【００４３】
次いで、キーイベントが検出されたかどうかが調べられる（ステップＳ１３）。即ち、ＣＰＵ１０は、キースキャン回路１３からキーデータを取り込み、前回にステップＳ１３で取り込まれたキーデータから変化しているかどうかを調べる。なお、キーイベントが検出された場合は、キーデータ中のビットが「０」から「１」に変化した場合はオンイベントが、「１」から「０」に変化した場合はオフイベントがそれぞれ発生したものと判断される。
【００４４】
このステップＳ１３で、キーイベントが検出されたことが判断されると、キーイベントの原因となった鍵で指定される音の発生又は消去を行うためのキーイベント処理が実行される（ステップＳ１４）。このキーイベント処理では、タッチカーブを生成するための処理も実行される。キーイベント処理の詳細は後述する。一方、上記ステップＳ１３でキーイベントが検出されなかったことが判断された時は、ステップＳ１４の処理はスキップされる。
【００４５】
次いで、「その他の処理」が行われる（ステップＳ１５）。この「その他の処理」では、ＭＩＤＩ処理等が行われる。その後ステップＳ１１に戻り、以下ステップＳ１１〜Ｓ１５の処理が繰り返される。この繰り返し実行の過程で、パネルスイッチイベント若しくはキーイベントが発生し、又はＭＩＤＩインタフェース回路（図示しない）でデータを受信すると、それらに応じた処理が行われる。これにより電子楽器としての各種機能が発揮される。
【００４６】
（１−２）パネルスイッチイベント処理
次に、上記メイン処理ルーチンのステップＳ１２で行われるパネルスイッチイベント処理の詳細を、図８に示したフローチャートを参照しながら説明する。
【００４７】
パネルスイッチイベント処理では、先ず、タッチカーブ選択モードであるかどうかが調べられる（ステップＳ２０）。ここで、タッチカーブ選択モードであることが判断されると、その時点で選択されているタッチカーブの名称を示すメッセージ、例えば、図３に示す「ＴＯＵＣＨ＝ＵＳＥＲ１」というメッセージがＬＣＤ４０に表示される（ステップＳ２１）。
【００４８】
次いで、アップスイッチ５０のオンイベントがあるかどうかが調べられる（ステップＳ２２）。ここで、アップスイッチ５０のオンイベントがあることが判断されると、タッチカーブ名称が上方に更新される（ステップＳ２３）。即ち、タッチカーブの名称が、ライトプラス→ライト→ノーマル→ヘビー→ヘビープラス→ユーザ１→ユーザ２の方向に１つだけ変化する。一方、アップスイッチ５０のオンイベントがないことが判断されると、ステップＳ２３の処理はスキップされる。
【００４９】
次いで、ダウンスイッチ５１のオンイベントがあるかどうかが調べられる（ステップＳ２４）。ここで、ダウンスイッチ５１のオンイベントがあることが判断されると、タッチカーブ名称が下方に更新される（ステップＳ２５）。即ち、タッチカーブの名称が、ライトプラス←ライト←ノーマル←ヘビー←ヘビープラス←ユーザ１←ユーザ２の方向に１つだけ変化する。一方、ダウンスイッチ５１のオンイベントがないことが判断されると、ステップＳ２５の処理はスキップされる。
【００５０】
次いで、録音スイッチ５２のオンイベントがあるかどうかが調べられる（ステップＳ２６）。なお、図示は省略しているが、録音スイッチ５２のオンイベントの有無は、録音スイッチ５２が押された時点でユーザ１又はユーザ２のタッチカーブが選択されている場合にのみ有効になるように制御される。
【００５１】
このステップＳ２６で、録音スイッチ５２のオンイベントがあることが判断されると、ＲＥＣフラグが「１」にセットされる（ステップＳ２７）。このＲＥＣフラグは、ワークメモリ１２に設けられたフラグであり、電子楽器が録音モードであるかどうかを記憶する。このＲＥＣフラグが「１」にセットされることにより、電子楽器は録音モードに入る。
【００５２】
次いで、打鍵カウンタの内容ｎ、累算タッチデータレジスタの内容ＴＤsum及び最大タッチデータレジスタの内容ＴＤmaxがゼロにクリアされる（ステップＳ２８）。打鍵カウンタは、ワークメモリ１２に設けられたカウンタであり、録音モード中になされた打鍵の回数を計数するために使用される。累算タッチデータレジスタは、ワークメモリ１２に設けられたレジスタであり、録音モード中になされた打鍵により発生したタッチデータを累積加算する。最大タッチデータレジスタは、ワークメモリ１２に設けられたレジスタであり、録音モード中になされた打鍵により発生したタッチデータの最大値を記憶する。
【００５３】
次いで、打鍵を促すメッセージ、例えば、図４に示すような「ＳＴＡＲＴ  ＰＬＡＹＩＮＧ  ＳＯＦＴ→ＬＯＵＤ」というメッセージがＬＣＤ４０に表示される（ステップＳ２９）。上記ステップＳ２６で録音スイッチ５２のオンイベントがないことが判断されると、ステップＳ２７〜Ｓ２９の処理はスキップされる。
【００５４】
次いで、ストップスイッチ５３のオンイベントがあるかどうかが調べられる（ステップＳ３０）。ここで、ストップスイッチ５３のオンイベントがあることが判断されると、タッチカーブを生成する処理が行われる（ステップＳ３１）。この処理では、打鍵カウンタの内容ｎ、累積タッチデータレジスタの内容ＴＤsum及び最大タッチデータレジスタの内容ＴＤmaxに基づいてタッチカーブが生成される（詳細は後述する）。
【００５５】
次いで、タッチデータの生成が完了すると、その旨を表す、例えば図６に示すような「ＡＮＡＬＹＳＩＳ  ＣＯＭＰＬＥＴＥＤ」というメッセージがＬＣＤ４０に表示される（ステップＳ３２）。その後、シーケンスはメイン処理ルーチンにリターンする。以後は、ステップＳ３１で生成されたユーザ１のタッチカーブに従ってベロシティ値が生成され、発音に使用される。
【００５６】
上記ステップＳ３０でストップスイッチ５３のオンイベントがないことが判断された場合は、ステップＳ３１及びＳ３２の処理を行うことなく、シーケンスはメイン処理ルーチンにリターンする。
【００５７】
上記ステップＳ２０でタッチカーブ選択モードでないことが判断されると、その他のパネルイベント処理が行われる（ステップＳ３３）。この処理では、図示しないパネルスイッチのイベントに対する処理が実行される。その後、シーケンスはメイン処理ルーチンに戻る。
【００５８】
（１−３）キーイベント処理
次に、上記メイン処理ルーチンのステップＳ１４で行われるキーイベント処理の詳細を、図９に示すフローチャートを参照しながら説明する。キーイベント処理では、先ず、キーナンバ検出処理が行われる（ステップＳ４０）。この処理では、キーイベントの原因となった鍵のキーナンバが生成される。次いで、その鍵のタッチデータＴＤがキースキャン回路１３から取り込まれる（ステップＳ４１）。
【００５９】
次いで、ＲＥＣフラグが「１」であるかどうか、つまり録音モードであるかどうかが調べられる（ステップＳ４２）。ここで、ＲＥＣフラグが「１」、つまり録音モードであることが判断されると、次いで、打鍵カウンタの内容ｎがインクリメント（＋１）される（ステップＳ４３）。
【００６０】
次いで、ステップＳ４１で得られたタッチデータＴＤが、タッチデータレジスタの内容ＴＤsumに累積加算される（ステップＳ４４）。次いで、最大タッチデータレジスタの内容ＴＤmaxがタッチデータＴＤより小さいかどうかが調べられる（ステップＳ４５）。ここで、小さいことが判断されると、タッチデータＴＤが最大のタッチデータＴＤmaxとして最大タッチデータレジスタに格納される（ステップＳ４６）。一方、小さくないことが判断されると、ステップＳ４６の処理はスキップされる。これらステップＳ４５及びＳ４６の処理により、最大タッチデータレジスタには、常に、録音モード中の打鍵により発生したタッチデータの最大値が格納される。
【００６１】
次いで、録音の停止を促すメッセージ、例えば図５に示すような「ＰＲＥＳＳＳＴＯＰ、ＷＨＥＮ  ＦＩＮＩＳＨＥＤ」というメッセージがＬＣＤ４０に表示される（ステップＳ４７）。この際、録音中であることを表す音譜記号もＬＥＤ４０の右下角に点滅表示される。
【００６２】
上記ステップＳ４２で、ＲＥＣフラグが「０」、つまり録音モードでないことが判断されると、ステップＳ４３〜Ｓ４７の処理はスキップされる。この場合、通常の発音又は消音が行われる。
【００６３】
次いで、ベロシティが算出される（ステップＳ４８）。即ち、上記ステップＳ４１で得られたタッチデータが、その時点で選択されているタッチカーブに従ってベロシティ値に変換される。次いで、発音／消音処理が行われる（ステップＳ４９）。即ち、キーイベントがオンイベントであれば発音処理が行われ、オフイベントであれば消音処理が行われる。
【００６４】
発音処理では、上記ステップＳ４０で検出されたキーナンバ及び上記ステップＳ４８で算出されたベロシティ値に基づいて発音パラメータが生成され、楽音発生部１５に送られる。これにより、上記キーナンバで指定された高さの音が上記ベロシティ値で指定された音量及び音色で発音される。
【００６５】
一方、消音処理では、リリーススピードを高速にしたエンベロープデータが楽音発生部１５に送られる。これにより、上記ステップＳ４０で検出されたキーナンバで指定される音が消音される。その後、シーケンスはメイン処理ルーチンに戻る。
【００６６】
次に、上述したパネルスイッチイベント処理ルーチンのステップＳ３１で実行されるタッチカーブ生成処理の詳細を説明する。
【００６７】
図１０は、タッチカーブ生成処理によりタッチカーブが生成される様子を示す。即ち、ＣＰＵ１０は、先ず、最大タッチデータレジスタからタッチデータの最大値ＴＤmaxを読み出し、ベロシティ値の最大値Ｐ２、即ち１２７Ｈに対応付ける。これにより、第１番目の点（ＴＤmax，Ｐ２）が決定される。
【００６８】
次いで、ＣＰＵ１０は、累算タッチデータレジスタからタッチデータの累算値ＴＤsumを読み出し、打鍵カウンタから読み出した回数ｎで除算する。これにより、タッチデータの平均値ＴＤavgが求められる。そして、このタッチデータの平均値ＴＤavgをメゾフォルテの力鍵盤装置２０が打鍵された場合のベロシティ値Ｐ１に対応付ける。これにより、第２番目の点（ＴＤavg，Ｐ１）が決定される。なお、メゾフォルテの力で打鍵した場合のベロシティ値としては、「８０」又はその近傍の値を用いることができる。
【００６９】
また、タッチデータの最小値をベロシティの最小値に対応させた第３番目の点としては、原点（０，０）が用いられる。
【００７０】
以上のようにして３つの点が決定されると、次いで、タッチカーブが生成される。即ち、点（ＴＤmax，Ｐ２）と点（ＴＤavg，Ｐ１）とを結ぶ直線の式を求め、この式に従って、タッチデータＴＤmaxからＴＤavgまでの各々に対応するＰ２からＰ１までのベロシティ値を算出する。また、点（ＴＤavg，Ｐ１）と点（０，０）を結ぶ直線の式を求め、この式に従って、タッチデータＴＤavgから「０」までの各々に対応するＰ２から「０」までのベロシティ値を算出する。このようにして算出されたタッチデータとベロシティ値との関係は、図１３に示すような変換テーブル形式で構成されたユーザタッチデータメモリ１２０に格納される。
【００７１】
以上説明したように、この実施の形態に係るタッチ制御装置によれば、ユーザが鍵盤装置を打鍵することにより得られたタッチデータの最大値及び平均値並びに必然的に定まるタッチデータの最小値をベロシティの最大値、所定値及び最小値にそれぞれ対応させた３点を線で結ぶことによりタッチカーブを生成するので、簡単な処理であるにも拘わらず、ユーザに好適なタッチレスポンスを得ることのできるタッチカーブを生成できる。
【００７２】
なお、以上説明した実施の形態では、最大タッチデータを入力可能な状態では、タッチカーブを、点（ＴＤmax，Ｐ２）と点（ＴＤavg，Ｐ１）とを結ぶ直線、及び点（ＴＤavg，Ｐ１）と点（０，０）とを結ぶ直線から構成したが、例えば最小２乗法を用いて、点（ＴＤmax，Ｐ２）、点（ＴＤavg，Ｐ１）及び点（０，０）を結ぶ曲線から構成することもできる。
【００７３】
また、上述した実施の形態では、メゾフォルテの強さで打鍵した場合のベロシティ値を例えば「８０」に対応させて点（ＴＤavg，Ｐ１）を求めたが、本発明はこれに限定されず、他の強さで打鍵した場合のベロシティ値を、他の値に対応させるように構成することもできる。例えば、メゾピアノの強さで打鍵した場合のベロシティ値を例えば「５０」に対応させて（ＴＤavg，Ｐ１）を求めるように構成してもよい。
【００７４】
【発明の効果】
以上詳述したように、本発明によれば、ユーザに好適なタッチレスポンスが得られるタッチカーブを簡単に作ることができるタッチ制御装置及びタッチ制御方法を提供できる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るタッチ制御装置が適用された電子楽器の構成を示すブロック図である。
【図２】本発明の実施の形態に係るタッチ制御装置が適用された電子楽器で使用されるタッチカーブの種類を示す図である。
【図３】図１に示した操作パネルの一例を示す図である。
【図４】図１に示した操作パネルの表示例（その１）を示す図である。
【図５】図１に示した操作パネルの表示例（その２）を示す図である。
【図６】図１に示した操作パネルの表示例（その３）を示す図である。
【図７】本発明の実施の形態に係るタッチ制御装置が適用された電子楽器のメイン処理を示すフローチャートである。
【図８】図７のパネルスイッチイベント処理の詳細を示すフローチャートである。
【図９】図７のキーイベント処理の詳細を示すフローチャートである。
【図１０】本発明の実施の形態に係るタッチ制御装置が適用された電子楽器におけるタッチカーブ生成処理を説明するための図である。
【図１１】本発明の実施の形態に係るタッチ制御装置が適用された電子楽器及び従来の電子楽器における押鍵速度とタッチデータの関係を説明するための図である。
【図１２】従来の電子楽器におけるタッチカーブを説明するための図である。
【図１３】従来のタッチカーブを記憶する変換テーブルの一例を示す図である。
【符号の説明】
１０  ＣＰＵ
１１  プログラムメモリ
１２  ワークメモリ
１３  キースキャン回路
１４  パネルスキャン回路
１５  楽音発生部
２０  鍵盤装置
２１  操作パネル
２２  Ｄ／Ａ変換部
２３  アナログ信号処理部
２４  増幅器
２５  スピーカ
３０  システムバス
４０  ＬＣＤ
５０  アップスイッチ
５１  ダウンスイッチ
５２  録音スイッチ
５２  ストップスイッチ
１１０  タッチカーブメモリ
１２０  ユーザタッチカーブメモリ
【図１】
0003843800.tif 000002
【図２】
0003843800.tif 000003
【図３】
0003843800.tif 000004
【図４】
0003843800.tif 000005
【図５】
0003843800.tif 000006
【図６】
0003843800.tif 000007
【図７】
0003843800.tif 000008
【図８】
0003843800.tif 000009
【図９】
0003843800.tif 000010
【図１０】
0003843800.tif 000011
【図１１】
0003843800.tif 000012
【図１２】
0003843800.tif 000013
【図１３】
0003843800.tif 000014