JPH0625895U - タッチレスポンス装置 - Google Patents
タッチレスポンス装置Info
- Publication number
- JPH0625895U JPH0625895U JP6758992U JP6758992U JPH0625895U JP H0625895 U JPH0625895 U JP H0625895U JP 6758992 U JP6758992 U JP 6758992U JP 6758992 U JP6758992 U JP 6758992U JP H0625895 U JPH0625895 U JP H0625895U
- Authority
- JP
- Japan
- Prior art keywords
- velocity
- contact
- stroke difference
- key
- difference
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
(57)【要約】
【目的】 演奏操作子の操作速度や操作強度の検出のバ
ラツキによるベロシティ値を補正して、操作速度等に適
切に対応したタッチレスポンスを得られるようにするこ
とを目的としている。 【構成】 設定モードにおいて、鍵操作の操作速度や操
作強度を検出する第1接点と第2接点のストローク差に
基づいて、各鍵毎にそのストローク差のずれによる検出
ベロシティ値を補正するためのベロシティ変換テーブル
1、2及びそのベロシティ変換テーブルを指定する指示
情報を記憶する。通常モードにおいて、押鍵によりイベ
ントコードが入力されると、キーNo. から指示情報を読
み取り、その指示情報に従ってベロシティ変換テーブル
1、2を使用するか、またベロシティ変換テーブル1、
2のいずれを使用するかを決定する(ステップS21〜
ステップS23)。ベロシティ変換テーブル1、2を使
用するときには、検出したベロシティ値をそのテーブル
により補正する(ステップS25、S26)。
ラツキによるベロシティ値を補正して、操作速度等に適
切に対応したタッチレスポンスを得られるようにするこ
とを目的としている。 【構成】 設定モードにおいて、鍵操作の操作速度や操
作強度を検出する第1接点と第2接点のストローク差に
基づいて、各鍵毎にそのストローク差のずれによる検出
ベロシティ値を補正するためのベロシティ変換テーブル
1、2及びそのベロシティ変換テーブルを指定する指示
情報を記憶する。通常モードにおいて、押鍵によりイベ
ントコードが入力されると、キーNo. から指示情報を読
み取り、その指示情報に従ってベロシティ変換テーブル
1、2を使用するか、またベロシティ変換テーブル1、
2のいずれを使用するかを決定する(ステップS21〜
ステップS23)。ベロシティ変換テーブル1、2を使
用するときには、検出したベロシティ値をそのテーブル
により補正する(ステップS25、S26)。
Description
【0001】
本考案は、タッチレスポンス装置に関し、詳細には、演奏操作子の操作速度や 操作強度の検出のバラツキを補正して、演奏操作子の操作速度や操作強度に適切 に対応したタッチレスポンスを得ることのできるタッチレスポンス装置に関する 。
【0002】
電子楽器等においては、鍵(演奏操作子)の押鍵速度(操作速度)や押鍵強度 (操作強度)を発音される楽音に音量や音色として反映させるために、タッチレ スポンス装置を備えており、このような従来のタッチレスポンス装置としては、 例えば、鍵盤により押圧されてオンする第1接点と第2接点を所定のストローク 差を持たせて各鍵に設け、押鍵によりオンする第1接点と第2接点とのオン時間 間隔を検出して、そのときのベロシティ値によりタッチレスポンスを得ている。 この場合、従来のタッチレスポンス装置は、第1接点及び第2接点として、カー ボンゴム接点を使用しており、このカーボンゴム接点を鍵が押圧してオンする間 隔からタッチレスポンスを得ている。
【0003】
しかしながら、このような従来のタッチレスポンス装置にあっては、カーボン ゴム接点を利用した第1接点と第2接点のオン時間間隔により検出したベロシテ ィ値からタッチレスポンスを得るようになっていたため、カーボンゴム接点の第 1接点と第2接点のストローク誤差、カーボンゴム接点の取付位置や接点部の表 面状態及び抵抗値のばらつき等により、鍵により同じ押鍵速度や押鍵強度で押鍵 した場合でも、各鍵に設けられたカーボンゴム接点の第1接点と第2接点のオン 時間間隔が異なり、異なるベロシティ値を検出して、タッチレスポンスにばらつ きが発生するという問題があった。
【0004】 例えば、カーボンゴム接点の第1接点と第2接点のストローク差(ストローク は、鍵先より20mmのところで測定)を2.5mmで設計し、上述のようにカーボ ンゴム接点のストローク誤差や取付位置誤差等により、カーボンゴム接点の第1 接点と第2接点のストローク差(実測値)が2.0から3.0ミリの間でばらつ きがあった場合に、図13に示すように、第1接点と第2接点のオン時間差に対 するベロシティ値のテーブルを利用して、このカーボンゴム接点の第1接点と第 2接点のオン時間差からベロシティ値を得ると、第1接点と第2接点とのオン時 間差が設計値である10msの速度(250mm/S)で押鍵したとき、上記ばらつ きのために、第1接点と第2接点とのオン時間差に8msから12msまでばらつく 。その結果、このオン時間差のばらつきのために、図13に示すように、ベロシ ティ値で、81を中心として、74から88までの14の範囲(ダイナミックレ ンジの10%)でばらつき、タッチレスポンスを正確に検出することができない 。したがって、このようなばらつきのあるタッチレスポンスに基づいて発音する と、発音強度がかなりばらついたものとなり、演奏者は、鍵盤が不揃いなものと 感じてしまう。
【0005】 そこで、本考案は、第1接点と第2接点のオン時間差のばらつきにかかわらず 、演奏操作子の操作速度や操作強度に対応した正確なタッチレスポンスを得るこ とのできるタッチレスポンス装置を提供することを目的としている。
【0006】
上記目的は、本考案によれば、 複数の演奏操作子と、 前記各演奏操作子毎に互いに所望のストローク差を持って設けられ、該演奏操 作子のオン操作の操作速度または操作強度に対応した時間間隔を持って順次オン する第1接点及び第2接点からなるスイッチ手段と、 前記スイッチ手段の第1接点及び第2接点のオン時間間隔をカウントするカウ ント手段と、 前記カウント手段のカウント出力をベロシティ情報に変換して出力するベロシ ティ変換手段と、 前記第1及び第2接点のストローク差に対応する参照ベロシティ情報を前記各 演奏操作子毎に記憶する参照ベロシティ情報記憶手段と、 操作された演奏操作子に対応する参照ベロシティ情報を前記参照ベロシティ情 報記憶手段から読み出す読出手段と、 前記読出手段により読み出された参照ベロシティ情報に基づいて前記ベロシテ ィ変換手段から出力されるベロシティ情報を補正して出力する補正手段と、 を備えることにより、達成される。
【0007】 この場合、前記補正手段は、例えば、請求項2に記載するように、操作された 前記演奏操作子のストローク差をL、全演奏操作子の平均ストローク差をX、そ の標準偏差をσとしたとき、L<X−σ、またはL>X+σなる条件を満たすと きにのみ前記ベロシティ変換手段から出力されるベロシティ情報を補正してもよ く、また、前記補正手段は、請求項3に記載するように、第1変換手段及び第2 変換手段を有し、前記操作された演奏操作子のストローク差L、全演奏操作子の 平均ストローク差X及び標準偏差σが、L>X+σのとき、該第1変換手段に基 づいて前記ベロシティ情報を補正し、L<X−σのとき、該第2変換手段に基づ いて前記ベロシティ情報を補正してもよい。
【0008】 また、この場合、前記第1変換手段は、例えば、請求項4に記載するように、 平均ストローク差Xの第1接点及び第2接点を有する演奏操作子が操作されたと きに前記ベロシティ変換手段の出力するベロシティ情報を、ストローク差X+σ の第1接点及び第2接点を有する演奏操作子が操作されたときに出力させるため のベロシティ変換テーブルを仮定し、このベロシティ変換テーブルによる出力と 前記ベロシティ変換手段の出力のずれを0とする変換データを記憶していてもよ く、また、前記第2の変換手段は、例えば、請求項5に記載するように、平均ス トローク差Xの第1及び第2の接点を有する演奏操作子が操作されたときに前記 ベロシティ変換手段の出力するベロシティ情報を、ストローク差X−σの第1及 び第2の接点を有する演奏操作子が操作されたときに出力させるためのベロシテ ィ変換テーブルを仮定し、このベロシティ変換テーブルによる出力と前記ベロシ ティ変換手段の出力のずれを0とする変換データを記憶していてもよい。
【0009】
上記構成によれば、 演奏操作子のオン操作が行なわれると、各演奏操作子毎に互いに所望のストロ ーク差を持って設けられた第1接点及び第2接点からなるスイッチ手段が、該演 奏操作子のオン操作の操作速度または操作強度に対応した時間間隔をもって順次 オンし、このスイッチ手段の第1接点及び第2接点のオン時間間隔を、カウント 手段が、カウントする。そして、このカウント手段のカウント出力を、ベロシテ ィ変換手段が、ベロシティ情報に変換して出力する。
【0010】 一方、前記第1及び第2接点のストローク差に対応する参照ベロシティ情報を 、参照ベロシティ情報記憶手段が、前記各演奏操作子毎に記憶し、読出手段が、 操作された演奏操作子に対応する参照ベロシティ情報をこの参照ベロシティ情報 記憶手段から読み出す。
【0011】 そして、この読出手段により読み出された参照ベロシティ情報に基づいて前記 ベロシティ変換手段から出力されるベロシティ情報を、補正手段が、補正して出 力する。
【0012】 したがって、演奏操作子を同じ操作速度や操作強度で操作した場合に、スイッ チ手段の第1接点と第2接点のストローク誤差、スイッチ手段の取付位置や接点 部の表面状態及び抵抗値のばらつき等により、演奏操作子によって第1接点と第 2接点のオン時間間隔が異なり、カウント手段が、異なるカウント出力を出力し ても、操作された演奏操作子の第1接点と第2接点のストローク差に応じて、そ のベロシティ情報を補正することができる。その結果、タッチレスポンスにばら つきが発生することを防止することができ、演奏操作子の操作速度や操作強度に 適切に対応したタッチレスポンスを得ることができる。
【0013】
以下、実施例に基づいて具体的に説明する。
【0014】 図1〜図12は本考案のタッチレスポンス装置の一実施例を示す図である。
【0015】 図1は、タッチレスポンス装置1のブロック図であり、タッチレスポンス装置 1は、マイクロコンピュータ2、プログラムROM(Read Only Memory)3、ワ ークRAM(Random Access Memory)4、EEPROM(Electrically Erasabl e Read Only Memory)5、その他のデバイス6、タッチ検出用LSI(Large Sc ale Integrated circuit)7及びスイッチマトリックス8等を備えている。
【0016】 このタッチレスポンス装置1は、電子ピアノや電子キーボード等に適用され、 電子ピアノや電子キーボード等には、複数の鍵、例えば、88鍵設けられている 。鍵は、図2に白鍵9について示すように、その回動中心9aを中心として鍵盤 シャーシ等に回動可能に固定されており、全ての白鍵9の下部には、第1接点1 0と第2接点11が設けられている。これら第1接点10及び第2接点11は、 従来と同様に、カーボンゴム接点等が用いられており、白鍵9が押鍵されると、 まず第1接点10がオンし、その後、第2接点11がオンする。この第1接点1 0と第2接点11とは、所定のストローク差、例えば、2.5mmがその平均スト ローク差Xとなるように設けられている。なお、図2において、12は、黒鍵を 示しており、黒鍵12にも、白鍵9と同様に、第1接点10及び第2接点11が 設けられている。
【0017】 上記スイッチマトリックス8は、上記第1接点10及び第2接点11に接続さ れ、タッチ検出用LSI7からのキーコモン信号KCとキーイン信号KIにより 第1接点10及び第2接点11のオン/オフ状態を検出する。
【0018】 タッチ検出用LSI7は、上記スイッチマトリックス8にキーコモン信号KC とキーイン信号KIを出力することにより、スイッチマトリックス8をスキャン し、全ての白鍵9や黒鍵12に設けられた第1接点10と第2接点11のオン/ オフ状態を検出する。このタッチ検出用LSI7は、第1接点10と第2接点1 1のオン時間差(時間間隔)とベロシティ値とのベロシティカーブデータを内部 メモリに記憶しており、通常動作時には、スイッチマトリックス8をスキャンす ることにより検出した同一の鍵の第1接点10と第2接点11のオン時間差から 押鍵された鍵のベロシティ値をマイクロコンピュータ2に出力する。また、タッ チ検出用LSI7は、図3に示すように、各鍵、すなわち白鍵9及び黒鍵12毎 に、その鍵に設けられた第1接点10と第2接点12のそれぞれについて割り当 てられたイベントコードをその内部メモリに記憶しており、後述する設定モード 時、スイッチマトリックス8をスキャンすることにより第1接点10及び第2接 点11のオンを検出すると、その鍵の第1接点10及び第2接点11に割り当て られたイベントコードをマイクロコンピュータ2に出力する。
【0019】 プログラムROM3は、タッチレスポンス装置1の制御プログラムや後述する 設定モード処理プログラム及び通常モード処理プログラム等を格納するとともに 、上記タッチ検出用LSI7のメモリに格納されているベロシティカーブデータ と同じベロシティカーブデータを格納している。
【0020】 ワークRAM4は、マイクロコンピュータ2のワークメモリであり、特に、後 述する設定モード処理において行なう統計計算時や新たなベロシティカーブデー タ及びベロシティ変換テーブルの作成時にその作業領域として使用される。
【0021】 EEPROM5は、書き換え可能であるが電気的バックアップを必要としてお らず、後述するように、設定モード処理において作成したベロシティ変換テーブ ル及びどのベロシティ変換テーブルを使用するかを指示する指示情報を記憶する 。
【0022】 その他デバイス6は、その他のデバイス類を総称したものであり、電子ピアノ や電子キーボード等に適用されたときには、音源やパネルスイッチ及び表示装置 等が該当する。
【0023】 次に、作用を説明する。
【0024】 このタッチレスポンス装置1は、各鍵に設けられた第1接点10と第2接点1 1のストローク差にばらつきがあっても鍵の押鍵速度や押鍵強度に適切に対応し たタッチレスポンスを得ることができる。そのため、まず、各鍵の第1接点10 と第2接点11のストローク差を検出し、ストローク差をその平均ストローク差 の標準偏差に基づいて分類して、そのストローク差による分類毎に、通常の押鍵 操作時に参照すべきベロシティ変換テーブルを作成するとともにその参照すべき ベロシティ変換テーブルを指示する指示情報を作成記憶する設定モード処理を行 なう。そして、通常モード処理時には、第1接点10と第2接点11とのオン時 間差から求めたベロシティ値を、この設定モード処理で作成したベロシティ変換 テーブルをその指示情報に基づいて参照して補正し、鍵の押鍵速度や押鍵強度に 適切に対応したタッチレスポンスを得る。
【0025】 まず、設定モード処理について説明する。この設定モード処理は、タッチレス ポンス装置1の製造段階で行なわれる。
【0026】 設定モード処理は、図2に示すように、押鍵装置20を使用して行なう。この 押鍵装置20は、白鍵9や黒鍵12を、その自由端部(鍵先端)から一定距離( 例えば、白鍵9では、鍵先端から20ミリ)の点において一定の押鍵速度、例え ば、2.0mm/Sで押鍵し、この押鍵動作を各白鍵9及び黒鍵12の全てについ て行なう。
【0027】 タッチレスポンス装置1は、図示しない操作部等の操作により設定モードが選 択されると、マイクロコンピュータ2が、設定モードが選択されたことを検出し 、設定モード処理を行なう。
【0028】 すなわち、マイクロコンピュータ2は、タッチレスポンス装置1の電源が投入 されると、図4に示すように、まず、各種レジスタ等のクリア処理等のイニシャ ライズ処理を行ない(ステップS1)、通常モードかどうかチェックする(ステ ップS2)。いま、設定モードに設定されているので、図5に示すステップS3 に移行し、第1接点イベントコードがタッチ検出用LSIから入力されたかチェ ックする。
【0029】 すなわち、タッチ検出用LSI7は、上述のように、設定モードのときには、 スイッチマトリックス8をスキャンすることにより第1接点10や第2接点11 のオンを検出すると、図3に示したその第1接点10や第2接点11に割り当て られたイベントコードをマイクロコンピュータ2に出力する。例えば、図6に示 すように、タッチ検出用LSI7は、C2鍵の第1接点10のオンを検出すると 、内部メモリからC2の第1接点10に割り当てられたイベントコード(12H )をマイクロコンピュータ2に出力する。
【0030】 再び、図5において、マイクロコンピュータ2は、第1接点10のイベントコ ードが入力されると、内蔵タイマーをスタートさせ(ステップS4)、第2接点 11イベントコードが入力されたかどうかチェックする(ステップS5)。
【0031】 すなわち、図6に示すように、タッチ検出用LSI7は、C2鍵の第2接点の オンを検出すると、内部メモリからC2の第2接点10に割り当てられたイベン トコード(13H)をマイクロコンピュータ2に出力する。
【0032】 マイクロコンピュータ2は、この第2接点イベントコードが入力されると、そ のときのタイマー時間Sを読み出し、そのタイマー時間Sに押鍵速度を乗算して 、ストローク差Lを算出する(ステップS6)。この押鍵速度は、上記押鍵装置 20が押鍵する速度であり、本実施例では、2.0mm/Sに設定されている。こ のようにして算出したストローク差Lを鍵に対応づけてワークRAM4に記憶す る。
【0033】 次に、全鍵分について上記処理が終了したかどうかチェックし(ステップS7 )、全鍵について処理が終了していないときには、ステップS3に戻って同様に 、処理を行なう。全鍵について処理が終了したときには、上記ステップS6で求 めてワークRAM4に記憶した全鍵のストローク差Lを統計処理し、その平均ス トローク差X及びその標準偏差σを算出する(ステップS8)。なお、この統計 処理の計算方法は、任意のアルゴリズムを用いることができ、なんら限定される ものではない。このようにして算出した平均ストローク差X及びその標準偏差σ はワークRAM4に記憶する。
【0034】 次に、この平均ストローク差Xと標準偏差σ及びプログラムROM3に格納さ れているベロシティカーブデータに基づいて、+σ側ベロシティカーブデータ及 び−σ側ベロシティカーブデータを作成し(ステップS9、S10)、さらに、 この+σ側ベロシティカーブデータと−σ側ベロシティカーブデータ及びプログ ラムROM3内のベロシティカーブデータに基づいて、ベロシティ変換テーブル 1及びベロシティ変換テーブル2を作成する(ステップS11、S12)。
【0035】 そして、上記ステップS6で算出してワークRAM4に書き込んだストローク 差Lを、各鍵について順次取り出し(ステップS13)、そのストローク差Lの 大きさをチェックする(ステップS14)。ストローク差Lが平均ストローク差 Xを中心として標準偏差σの範囲内(X−σ≦L≦X+σ)であれば、指示情報 を00Hとし(ステップS15)、ストローク差Lが平均ストローク差Xを中心 として標準偏差σよりも小さい(L<X−σ)ときには、指示情報を10Hとし (ステップS16)、また、ストローク差Lが平均ストローク差Xを中心として 標準偏差σよりも大きい(L>X+σ)ときには、指示情報を01Hとする(ス テップS17)。この指示情報は、各鍵のストローク差Lに基づいて、通常モー ドのときに、タッチ検出用LSI7からマイクロコンピュータ2に入力されるベ ロシティ値を上記ステップS11で作成したベロシティ変換テーブル1及びステ ップS12で作成したベロシティ変換テーブル2のいずれを使用して補正するか 、あるいはベロシティ変換テーブル1及びベロシティ変換テーブル2のいずれを も使用しないで入力されたベロシティ値をそのまま採用するかを指示するための 情報である。
【0036】 次に、全鍵について指示情報の設定が終了したかをチェックし(ステップS1 8)、全鍵について指示情報の設定が終了していないときには、ステップS13 に戻って次の鍵のストローク差Lを取り出し、同様に指示情報の設定を行なう( ステップS14〜ステップS17)。全鍵について指示情報の設定が完了すると 、ワークRAM4には、図7に示すように、各鍵毎にその指示情報がコードデー タ「00H」、「01H」、「10H」として書き込まれる。
【0037】 全鍵について指示情報の設定が終了すると、上記処理で得たベロシティ変換テ ーブル1、ベロシティ変換テーブル2及び指示情報をEEPROM5に書き込み (ステップS19)、設定モードでの処理を完了して、図4のステップS2に戻 る。
【0038】 次に、上記ステップS9における+σ側のベロシティカーブデータ作成処理に ついて説明する。
【0039】 +σ側のベロシティカーブデータ作成処理は、プログラムROM3に記憶され ているベロシティカーブデータを第1接点10と第2接点11のストローク差L が平均ストローク差Xであるような鍵に使用される最適なベロシティカーブデー タであるとし、このベロシティカーブデータに対してそのストローク差Lが標準 偏差σ分だけ+側にずれていることにより生じる時間軸上のずれを考慮した新た なベロシティカーブデータ、すなわち+側ベロシティカーブデータを作成する処 理であり、図8に示すように行なわれる。
【0040】 すなわち、まず、ベロシティ値を示す変数Vを「1」にセットし(ステップT 1)、プログラムROM3のベロシティカーブデータからそのベロシティカーブ データにおいてベロシティ値がVのときのオン時間差Tを求める(ステップT2 )。次に、このオン時間差Tを使用して、次式からオン時間差Tsを算出し(ス テップT3)、算出したオン時間差Tsをアドレスとして、上記セットしたVの 値をワークRAM4に書き込む(ステップT4)。
【0041】 Ts=T(X+σ)/X 上記式は、第1接点10と第2接点11とのストローク差Lが平均ストローク 差XであるとしたプログラムROM3のベロシティカーブデータにおいてベロシ ティ値Vであるオン時間差がTであるとき、ストローク差Lがストローク差X+ σのときに、同じベロシティ値Vを得られるような第1接点10と第2接点11 とのオン時間差Tsを算出するものである。
【0042】 ワークRAM4への書き込みが完了すると、変数Vを「1」だけインクリメン トし(ステップT5)、変数Vが128になったかどうかチェックする(ステッ プT6)。すなわち、本実施例では、ベロシティ値として0〜127までの値を 設定しており、取り得る全てのベロシティ値について処理が完了したかどうかチ ェックしている。
【0043】 V=128でないときには、ステップT2に戻ってインクリメントした変数V について同様に処理する。上記処理をV=128まで行なうと、図9に破線で示 すような+σ側ベロシティカーブデータを得ることができ、この+σ側ベロシテ ィカーブデータがワークRAM4にオン時間差Tsをアドレスとして書き込まれ る。
【0044】 次に、上記ステップS10における−σ側のベロシティカーブデータ作成処理 について説明する。
【0045】 −σ側のベロシティカーブデータ作成処理は、上記+σ側のベロシティカーブ データ作成処理と同様の処理であり、プログラムROM3に記憶されているベロ シティカーブデータを第1接点10と第2接点11のストローク差Lが平均スト ローク差Xであるような鍵に使用される最適なベロシティカーブデータであると し、このベロシティカーブデータに対してそのストローク差Lが標準偏差σだけ −側にずれていることにより生じる時間軸上のずれを考慮した新たなベロシティ カーブデータ、すなわち−σ側ベロシティカーブデータを作成する処理である。 この−σ側ベロシティカーブデータ作成処理は、図10に示すように行なわれる 。
【0046】 すなわち、ベロシティ値を示す変数Vを「1」にセットして、プログラムRO M3のベロシティカーブデータからそのベロシティカーブデータにおいてベロシ ティ値がVのときのオン時間差Tを求め(ステップT11、T12)、このオン 時間差Tを使用して、次式からオン時間差Tsを算出して、このオン時間差Ts をアドレスとして、上記セットしたVの値をワークRAM4に書き込む(ステッ プT13、T14)。
【0047】 Ts=T(X−σ)/X 上記式は、第1接点10と第2接点11とのストローク差Lが平均ストローク 差XであるとしたプログラムROM3のベロシティカーブデータにおいてベロシ ティ値Vであるオン時間差がTであるとき、そのストローク差Lがストローク差 X−σのときに、同じベロシティ値Vを得られるような第1接点10と第2接点 11とのオン時間差Tsを算出するものである。
【0048】 ワークRAM4への書き込みが完了すると、変数Vを「1」だけインクリメン トし(ステップT5)、変数Vが128になったかどうかチェックする(ステッ プT6)。
【0049】 V=128でないときには、ステップT2に戻ってインクリメントした変数V について同様に処理する。上記処理をV=128まで行なうと、図9に破線で示 すような−σ側ベロシティカーブデータを得ることができ、この−σ側ベロシテ ィカーブデータがワークRAM4にオン時間差Tsをアドレスとして書き込まれ る。
【0050】 次に、上記ステップS11におけるベロシティ変換テーブル1作成処理につい て説明する。
【0051】 このベロシティ変換テーブル1作成処理は、第1接点10と第2接点11との ストローク差がX+σであるときに、そのストローク差Lが平均ストローク差X であるとしてプログラムROM3のベロシティカーブデータから読み出したベロ シティ値をストローク差Lがストローク差X+σに対応したベロシティ値に変換 するベロシティ変換テーブル1を、上記+σ側ベロシティカーブデータ作成処理 で作成した+σ側ベロシティカーブデータ及びプログラムROM3内のベロシテ ィカーブデータに基づいて作成するものであり、図11に示すように行なわれる 。
【0052】 すなわち、まず、ベロシティ値を示す変数Vに「1」をセットし(ステップQ 1)、ワークRAM4の+σ側ベロシティカーブデータからVの値のときのオン 時間差Tsを求める(ステップQ2)。このオン時間差Tsに基づいて、プログ ラムROM3内のベロシティカーブデータからオン時間差Tsのときのベロシテ ィ値Vsを求め(ステップQ3)、このベロシティ値Vsをアドレスとしてベロ シティ値VをワークRAM4に書き込む(ステップQ4)。ワークRAM4への 書き込みが完了すると、Vを「1」だけインクリメントし(ステップQ5)、イ ンクリメントしたVの値が128かどうか、すなわち取り得る全てのベロシティ 値について処理が終了したかどうかチェックする(ステップQ6)。全てのベロ シティ値について処理が終了していないときには、ステップQ2に戻ってインク リメントしたVについて同様に処理する。そして、全てのベロシティ値について 処理が終了すると、ベロシティ変換テーブル1作成処理を終了する。
【0053】 このベロシティ変換テーブル1作成処理により、ワークRAM4には、取り得 る128個のベロシティ値について、そのストローク差Lがストローク差X+σ のとき、ベロシティ値Vsをアドレスとしてベロシティ値Vsをベロシティ値V に変換するベロシティ変換テーブル1が形成される。すなわち、このベロシティ 変換テーブル1により、第1接点10と第2接点のストローク差がストローク差 X+σであるときに、第1接点10と第2接点11のストローク差がストローク 差XであるものとしたプログラムROM3内のベロシティカーブデータによるベ ロシティ値Vsを、ベロシティ値Vに変換補正することができる。換言すれば、 ベロシティ変換テーブル1は、ストローク差Xのときに、プログラムROM3の ベロシティカーブデータにより与えられるベロシティ値Vを、ストローク差X+ σのときに得られるためのベロシティ変換テーブルを仮定し、この仮定したベロ シティ変換テーブルにより得られるベロシティ値とプログラムROM3のベロシ ティカーブデータから得られるベロシティ値とのずれを0とする変換データで構 成されていることになる。
【0054】 次に、上記ステップS12におけるベロシティ変換テーブル2作成処理につい て説明する。
【0055】 このベロシティ変換テーブル2作成処理は、第1接点10と第2接点11との ストローク差Lがストローク差X−σであるときに、そのストローク差Lが平均 ストローク差XであるとしてプログラムROM3のベロシティカーブデータから 読み出したベロシティ値を、ストローク差Lがストローク差X−σに対応したベ ロシティ値に変換するベロシティ変換テーブル2を、上記−σ側ベロシティカー ブデータ作成処理で作成した−σ側ベロシティカーブデータ及びプログラムRO M3内のベロシティカーブデータに基づいて作成するものであり、図12に示す ように行なわれる。
【0056】 すなわち、上記ベロシティ変換テーブル1作成処理と同様に、ベロシティ値を 示す変数Vに「1」をセットして、ワークRAM4の−σ側ベロシティカーブデ ータからVの値のときのオン時間差Tsを求め(ステップQ11、Q12)、こ のオン時間差Tsに基づいて、プログラムROM3内のベロシティカーブデータ からオン時間差Tsのときのベロシティ値Vsを求めて、このベロシティ値Vs をアドレスとしてベロシティ値VをワークRAM4に書き込む(ステップQ13 、Q14)。ワークRAM4への書き込みが完了すると、Vを「1」だけインク リメントし(ステップQ15)、インクリメントしたVの値が128かどうかチ ェックする(ステップQ16)。全てのベロシティ値について処理が終了してい ないときには、ステップQ12に戻ってインクリメントしたVについて同様に処 理し、全てのベロシティ値について処理が終了すると、ベロシティ変換テーブル 2作成処理を終了する。
【0057】 このベロシティ変換テーブル2作成処理により、ワークRAM4には、取り得 る128個のベロシティ値について、ストローク差Lがストローク差X+σのと き、そのベロシティ値Vsをアドレスとしてベロシティ値Vsをベロシティ値V に変換するベロシティ変換テーブル2が形成される。すなわち、このベロシティ 変換テーブル2により、第1接点10と第2接点11のストローク差がストロー ク差X−σであるときに、第1接点10と第2接点11のストローク差がストロ ーク差XであるものとしたプログラムROM3内のベロシティカーブデータによ るベロシティ値Vsを、ベロシティ値Vに変換補正することができる。換言すれ ば、ベロシティ変換テーブル1は、ストローク差Xのときに、プログラムROM 3のベロシティカーブデータにより与えられるベロシティ値Vを、ストローク差 X−σのときに得られるためのベロシティ変換テーブルを仮定し、この仮定した ベロシティ変換テーブルにより得られるベロシティ値とプログラムROM3のベ ロシティカーブデータから得られるベロシティ値とのずれを0とする変換データ で構成されていることになる。
【0058】 このようにして作成されたベロシティ変換テーブル1とベロシティ変換テーブ ル2及びどのベロシティ変換テーブル1、2を使用するかあるいはベロシティ変 換テーブル1、2を使用しないかを示す指示情報をEEPROM5に書き込んで 、設定処理を終了し、この状態でタッチレスポンス装置1あるいはこのタッチレ スポンス装置1を組み込んだ電子ピアノ等を商品として出荷する。
【0059】 通常、タッチレスポンス装置1が通常使用されるときには、通常モードに設定 されており、通常モード処理により上記EEPROM5に書き込まれたベロシテ ィ変換テーブル1、ベロシティ変換テーブル2及び指示情報を使用してベロシテ ィ補正処理を行なう。
【0060】 次に、通常モード処理について説明する。
【0061】 この通常モード処理では、図4に示したように、マイクロコンピュータ2は、 タッチレスポンス装置1の電源が投入され、イニシャライズ処理が行なわれた後 、通常モードに設定されているかどうかチェックし(ステップS1、S2)、通 常モードに設定されていることにより行なわれる。そして、いま、通常モードに 設定されているので、ステップS20に移行して、タッチ検出用LSI7から鍵 の操作を示すイベントコード(図3参照)が入力されるのを待ち、イベントコー ドが入力されると、タッチ検出用LSI7から入力されるキーNo. 及びベロシテ ィ値Vを受け取る(ステップS21)。
【0062】 すなわち、タッチ検出用LSI7は、通常モードに設定されると、スイッチマ トリックス8をスキャンして、全ての白鍵9や黒鍵12に設けられた第1接点1 0と第2接点11のオン/オフ状態を検出し、内部メモリに記憶している第1接 点10と第2接点11のオン時間差(時間間隔)とベロシティ値とのベロシティ カーブデータから検出した同一の鍵の第1接点10と第2接点11のオン時間差 に基づいて押鍵された鍵のベロシティ値Vを読み出して、マイクロコンピュータ 2に出力するとともに、その検出した鍵のキーNo. をマイクロコンピュータ2に 出力する。なお、このタッチ検出用LSI7の記憶しているベロシティカーブデ ータは、上述のように、上記設定モードで使用したプログラムROM3に記憶さ れているベロシティカーブデータと同じものである。
【0063】 次に、タッチ検出用LSI7から入力されたキーNo. によりEEPROM5か ら上記指示情報を読み取り(ステップS22)、読み取った指示情報をチェック する(ステップS23)。この指示情報は、図7に示したように、各鍵毎にその キーNo. をアドレスとしてEEPROM5に書き込まれており、マイクロコンピ ュータ2は、この指示情報をEEPROM5から読み出す。
【0064】 マイクロコンピュータ2は、読み出した指示情報が「00H」であるときには 、押鍵された鍵の第1接点10と第2接点11とのストローク差Lが平均ストロ ーク差Xから標準偏差σの範囲内にあると判断し、ベロシティ変換テーブル1、 2を使用せずに、タッチ検出用LSI7から入力されたベロシティ値Vをそのま ま出力用ベロシティ値Voとして採用する(ステップS24)。また、ステップ S23で、指示情報が「01H」のときには、押鍵された鍵の第1接点10と第 2接点11とのストローク差Lが平均ストローク差Xから標準偏差σ以上に+側 にずれており、ベロシティ変換テーブル1が指定されていると判断し、タッチ検 出用LSI7から入力されたベロシティ値Vをベロシティ値Vsとして、ベロシ ティ変換テーブル1からVsなるアドレスに書き込まれているベロシティ値Vを 読み出す(ステップS25)。このベロシティ変換テーブル1から読み出したベ ロシティ値Vを出力用ベロシティ値Voとして採用する(ステップS24)。さ らに、ステップS23で、指示情報が「10H」のときには、押鍵された鍵の第 1接点10と第2接点11とのストローク差Lが平均ストローク差Xから標準偏 差σ以上に−側にずれており、ベロシティ変換テーブル2が指定されていると判 断し、タッチ検出用LSI7から入力されたベロシティ値Vをベロシティ値Vs として、ベロシティ変換テーブル2からVsなるアドレスに書き込まれているベ ロシティ値Vを読み出す(ステップS26)。このベロシティ変換テーブル2か ら読み出したベロシティ値Vを出力用ベロシティ値Voとして採用する(ステッ プS24)。そして、このようにして採用した出力用ベロシティ値Vo及びキー No. を出力する(ステップS27)。このタッチレスポンス装置1が、例えば、 電子キーボードに適用されているときには、その電子キーボードは、タッチレス ポンス装置1が出力する出力用ベロシティ値Vo及びキーNo. により、発音処理 を行なう。
【0065】 この出力処理を完了すると、ステップS2に戻り、次の鍵操作に対して同様に 処理を行なう。
【0066】 以上説明したように、設定モードにおいて、各鍵毎に、その鍵の押鍵速度や押 鍵強度を検出するために設けられた第1接点10と第2接点11のストローク差 Lを検出し、そのストローク差Lから生じるベロシティ値Vの誤差を補正するた めのベロシティ変換テーブル1及びベロシティ変換テーブル2を作成するととも に、各鍵毎に、そのストローク差Lに応じてベロシティ変換テーブル1とベロシ ティ変換テーブル2のいずれを使用するか、あるいはいずれのベロシティ変換テ ーブル1及びベロシティ変換テーブル2をも使用しないかを指示する指示情報を EEPROM5に記憶する。
【0067】 そして、通常モードにおいて、押鍵を検出すると、押鍵された鍵のキーNo. に より指定された指示情報によりベロシティ変換テーブル1及びベロシティ変換テ ーブル2を使用しないか、あるいはベロシティ変換テーブル1とベロシティ変換 テーブル2のいずれを使用するかを決定し、ベロシティ変換テーブル1及びベロ シティ変換テーブル2を使用しないときには、タッチ検出用LSI7が、第1接 点10と第2接点11のストローク差Lが平均ストローク差Xであるとして設定 したベロシティカーブデータから第1接点10と第2接点11のオン時間差によ り読み出したベロシティ値Vをそのまま出力用ベロシティ値Voとして出力する 。また、押鍵された鍵のキーNo. により指定された指示情報がベロシティ変換テ ーブル1を指定しているときには、タッチ検出用LSI7の出力するベロシティ 値Vをベロシティ変換テーブル1を使用して、押鍵された鍵の第1接点10と第 2接点11のストローク差Lに応じたベロシティ値Vに変換補正し、補正後のベ ロシティ値Vを出力用ベロシティ値Voとして出力する。さらに、押鍵された鍵 のキーNo. により指定された指示情報がベロシティ変換テーブル2を指定してい るときには、タッチ検出用LSI7の出力するベロシティ値Vをベロシティ変換 テーブル2を使用して、押鍵された鍵の第1接点10と第2接点11のストロー ク差Lに応じたベロシティ値Vに変換補正し、補正後のベロシティ値Vを出力用 ベロシティ値Voとして出力する。
【0068】 したがって、鍵の押鍵速度や押鍵強度を検出するための第1接点10と第2接 点11のストローク差Lやその取り付け位置に誤差等があり、鍵毎にその第1接 点10と第2接点11のオン時間差に誤差があっても、このオン時間差に基づく ベロシティ値の誤差を適切に補正することができ、鍵の押鍵速度や押鍵強度に適 切に対応したベロシティ値Vを出力することができる。その結果、タッチレスポ ンスにばらつきが発生することを防止することができ、鍵の押鍵速度や押鍵強度 に適切に対応したタッチレスポンスを得ることができる。したがって、このタッ チレスポンス装置1を電子キーボードや電子ピアノ等に適用した場合に、どの鍵 を同じような押鍵速度や押鍵強度で押鍵しても、発音強度がばらつくことがなく 、適切な演奏操作を行なうことができる。
【0069】 また、上記実施例においては、各鍵の平均ストローク差Xからその標準偏差σ 以上にそのストローク差Lがずれている場合について、ベロシティ値Vを補正す るベロシティ変換テーブル1及びベロシティ変換テーブル2を設定しているので 、ベロシティ変換テーブル1及びベロシティ変換テーブル2を記憶するEEPR OM5のメモリ容量を小さくすることができるとともに、適切なベロシティ値を 出力することができる。
【0070】 なお、上記実施例にあっては、各鍵の平均ストローク差Xからその標準偏差σ 以上にそのストローク差Lがずれている場合について、ベロシティ値Vを補正す るベロシティ変換テーブル1及びベロシティ変換テーブル2を設定しているが、 これに限るものではなく、同じ押鍵速度や押鍵強度で押鍵した場合に、その第1 接点10と第2接点11のオン時間差から生じるベロシティ値の誤差を適切に補 正することができるものであればよい。
【0071】
本考案によれば、 演奏操作子を同じ操作速度や操作強度で操作した場合に、第1接点と第2接点 のストローク誤差、その取付位置や接点部の表面状態及び抵抗値のばらつき等に より、第1接点と第2接点のオン時間間隔が異なることによるベロシティ値のば らつきを、第1接点と第2接点のストローク差に応じて補正することができる。 その結果、タッチレスポンスにばらつきが発生することを防止することができ、 演奏操作子の操作速度や操作強度に適切に対応したタッチレスポンスを得ること ができる。
【図1】本考案によるタッチレスポンス装置の一実施例
のブロック構成図。
のブロック構成図。
【図2】図1のタッチレスポンス装置の適用される電子
キーボード等に設けられる鍵盤部分の側面図。
キーボード等に設けられる鍵盤部分の側面図。
【図3】図1のタッチ検出用LSIの記憶している各鍵
のイベントコードを示す図。
のイベントコードを示す図。
【図4】メイン処理、特に通常モードでの処理を示すフ
ローチャート。
ローチャート。
【図5】図4の続きの処理、特に設定モードでの処理を
示すフローチャート。
示すフローチャート。
【図6】タッチ検出用LSIからマイクロコンピュータ
にイベントコードを出力する動作を説明する説明図。
にイベントコードを出力する動作を説明する説明図。
【図7】各鍵毎に設定される指示情報を示す図。
【図8】図5の+σ側ベロシティカーブデータ作成処理
の詳細な処理を示すフローチャート。
の詳細な処理を示すフローチャート。
【図9】基本のベロシティカーブデータと+σ側及び−
σ側のベロシティカーブデータを示す図。
σ側のベロシティカーブデータを示す図。
【図10】図5の−σ側ベロシティカーブデータ作成処
理の詳細な処理を示すフローチャート。
理の詳細な処理を示すフローチャート。
【図11】図5のベロシティ変換テーブル1作成処理の
詳細な処理を示すフローチャート。
詳細な処理を示すフローチャート。
【図12】図5のベロシティ変換テーブル2作成処理の
詳細な処理を示すフローチャート。
詳細な処理を示すフローチャート。
【図13】従来のタッチレスポンス装置に使用されてい
るタッチカーブデータを示す図。
るタッチカーブデータを示す図。
1 タッチレスポンス装置 2 マイクロコンピュータ 3 プログラムROM 4 ワークRAM 5 EEPROM 6 その他のデバイス 7 タッチ検出用LSI 8 スイッチマトリックス 9 白鍵 10 第1接点 11 第2接点 12 黒鍵 20 押鍵装置
Claims (5)
- 【請求項1】 複数の演奏操作子と、 前記各演奏操作子毎に互いに所望のストローク差を持っ
て設けられ、該演奏操作子のオン操作の操作速度または
操作強度に対応した時間間隔を持って順次オンする第1
接点及び第2接点からなるスイッチ手段と、 前記スイッチ手段の第1接点及び第2接点のオン時間間
隔をカウントするカウント手段と、 前記カウント手段のカウント出力をベロシティ情報に変
換して出力するベロシティ変換手段と、 前記第1及び第2接点のストローク差に対応する参照ベ
ロシティ情報を前記各演奏操作子毎に記憶する参照ベロ
シティ情報記憶手段と、 操作された演奏操作子に対応する参照ベロシティ情報を
前記参照ベロシティ情報記憶手段から読み出す読出手段
と、 前記読出手段により読み出された参照ベロシティ情報に
基づいて前記ベロシティ変換手段から出力されるベロシ
ティ情報を補正して出力する補正手段と、 を備えたことを特徴とするタッチレスポンス装置。 - 【請求項2】 前記補正手段が、操作された前記演奏操
作子のストローク差をL、全演奏操作子の平均ストロー
ク差をX、その標準偏差をσとしたとき、L<X−σ、
またはL>X+σなる条件を満たすときにのみ前記ベロ
シティ変換手段から出力されるベロシティ情報を補正す
ることを特徴とする請求項1記載のタッチレスポンス装
置。 - 【請求項3】 前記補正手段が、第1変換手段及び第2
変換手段を有し、前記操作された演奏操作子のストロー
ク差L、全演奏操作子の平均ストローク差X及び標準偏
差σが、L>X+σのとき、該第1変換手段に基づいて
前記ベロシティ情報を補正し、L<X−σのとき、該第
2変換手段に基づいて前記ベロシティ情報を補正するこ
とを特徴とする請求項2記載のタッチレスポンス装置。 - 【請求項4】 前記第1変換手段が、平均ストローク差
Xの第1接点及び第2接点を有する演奏操作子が操作さ
れたときに前記ベロシティ変換手段の出力するベロシテ
ィ情報を、ストローク差X+σの第1接点及び第2接点
を有する演奏操作子が操作されたときに出力させるため
のベロシティ変換テーブルを仮定し、このベロシティ変
換テーブルによる出力と前記ベロシティ変換手段の出力
のずれを0とする変換データを記憶していることを特徴
とする請求項3記載のタッチレスポンス装置。 - 【請求項5】 前記第2の変換手段が、平均ストローク
差Xの第1及び第2の接点を有する演奏操作子が操作さ
れたときにベロシティ変換手段の出力するベロシティ情
報を、ストローク差X−σの第1及び第2の接点を有す
る演奏操作子が操作されたときに出力させるためのベロ
シティ変換テーブルを仮定し、このベロシティ変換テー
ブルによる出力と前記ベロシティ変換手段の出力のずれ
を0とする変換データを記憶していることを特徴とする
請求項3記載のタッチレスポンス装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6758992U JPH0625895U (ja) | 1992-09-01 | 1992-09-01 | タッチレスポンス装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6758992U JPH0625895U (ja) | 1992-09-01 | 1992-09-01 | タッチレスポンス装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0625895U true JPH0625895U (ja) | 1994-04-08 |
Family
ID=13349260
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP6758992U Pending JPH0625895U (ja) | 1992-09-01 | 1992-09-01 | タッチレスポンス装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0625895U (ja) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005017992A (ja) * | 2003-06-30 | 2005-01-20 | Yamaha Corp | 演奏データ送信装置及び演奏システム並びに演奏方法 |
| JP2007188030A (ja) * | 2005-12-14 | 2007-07-26 | Yamaha Corp | 電子楽器の鍵盤装置 |
| EP1983510A2 (en) | 2007-04-17 | 2008-10-22 | Kabushiki Kaisha Kawai Gakki Seisakusho | Electronic keyboard instrument and processing method of the same |
| JP2010204369A (ja) * | 2009-03-03 | 2010-09-16 | Casio Computer Co Ltd | 鍵盤検査装置、鍵盤検査方法およびプログラム |
| JP2010210720A (ja) * | 2009-03-09 | 2010-09-24 | Casio Computer Co Ltd | 鍵盤検査装置、鍵盤検査方法およびプログラム |
-
1992
- 1992-09-01 JP JP6758992U patent/JPH0625895U/ja active Pending
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005017992A (ja) * | 2003-06-30 | 2005-01-20 | Yamaha Corp | 演奏データ送信装置及び演奏システム並びに演奏方法 |
| JP2007188030A (ja) * | 2005-12-14 | 2007-07-26 | Yamaha Corp | 電子楽器の鍵盤装置 |
| EP1983510A2 (en) | 2007-04-17 | 2008-10-22 | Kabushiki Kaisha Kawai Gakki Seisakusho | Electronic keyboard instrument and processing method of the same |
| US7619157B2 (en) | 2007-04-17 | 2009-11-17 | Kabushiki Kaisha Kawai Gakki Seisakusho | Electronic keyboard instrument and processing method of the same |
| JP2010204369A (ja) * | 2009-03-03 | 2010-09-16 | Casio Computer Co Ltd | 鍵盤検査装置、鍵盤検査方法およびプログラム |
| JP2010210720A (ja) * | 2009-03-09 | 2010-09-24 | Casio Computer Co Ltd | 鍵盤検査装置、鍵盤検査方法およびプログラム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4875400A (en) | Electronic musical instrument with touch response function | |
| US6459390B1 (en) | Method of inputting characters in a wireless portable terminal | |
| CN110931005A (zh) | 电器设备的语音自定义方法、装置、存储介质及电器设备 | |
| JPH0625895U (ja) | タッチレスポンス装置 | |
| US20090078477A1 (en) | Electronic device with sound prompt function | |
| JP3034465B2 (ja) | 数字キーを用いた文字入力方法 | |
| JPH10304473A (ja) | リモートコントロール装置 | |
| US5702625A (en) | Encoder key input device for a microwave oven and interrupt processing method using the same | |
| US4294154A (en) | Music tone generating system | |
| WO1984002594A1 (fr) | Systeme empechant l'actionnement errone d'une touche | |
| JPH01176113A (ja) | ディジタル信号処理装置 | |
| JP3367183B2 (ja) | 電子楽器 | |
| JP2968911B2 (ja) | 電子楽器のパラメータ設定装置 | |
| JP3082278B2 (ja) | 電子楽器 | |
| JPS603738A (ja) | 入力装置 | |
| KR970008442B1 (ko) | 전자악기의 데몬스트레이션 방법 | |
| JPH05273972A (ja) | 電子楽器 | |
| JPH0128396B2 (ja) | ||
| JP2968912B2 (ja) | 電子楽器のパラメータ設定装置 | |
| KR940008532A (ko) | 적외선 원격 제어장치의 제어방법 | |
| JP2653363B2 (ja) | 電子楽器 | |
| JP2594656Y2 (ja) | 電子鍵盤楽器のタッチデータ処理装置 | |
| JPS6142182Y2 (ja) | ||
| JP3375215B2 (ja) | 電子楽器 | |
| JPH02257199A (ja) | イニシャルタッチ制御装置 |