Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPH0664467B2 - 電子楽器 - Google Patents
[go: Go Back, main page]

JPH0664467B2 - 電子楽器 - Google Patents

電子楽器

Info

Publication number
JPH0664467B2
JPH0664467B2 JP62332269A JP33226987A JPH0664467B2 JP H0664467 B2 JPH0664467 B2 JP H0664467B2 JP 62332269 A JP62332269 A JP 62332269A JP 33226987 A JP33226987 A JP 33226987A JP H0664467 B2 JPH0664467 B2 JP H0664467B2
Authority
JP
Japan
Prior art keywords
pad
data
time
vibration
peak
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.)
Expired - Fee Related
Application number
JP62332269A
Other languages
English (en)
Other versions
JPH01177086A (ja
Inventor
守 金原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP62332269A priority Critical patent/JPH0664467B2/ja
Priority to US07/287,454 priority patent/US4932303A/en
Publication of JPH01177086A publication Critical patent/JPH01177086A/ja
Publication of JPH0664467B2 publication Critical patent/JPH0664467B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は電子楽器に関し、特に弦、ドラムパツド等の
演奏操作子の操作量すなわち強さ、速度、深さなどを表
す振動量に基づいて演奏操作がされたことを検出するよ
うにした電子打楽器等の電子楽器に適用し得るものであ
る。
〔発明の概要〕
この発明は、演奏操作子の振動に基づいて演奏操作がさ
れたことを検出するようにした電子楽器において、現在
時点において得られた演奏操作検出情報及び自己振動検
出データとの比較結果に基づいて楽音の発生を制御する
ようにしたことにより、異常な自己振動に基づく不自然
な楽音を発生するおそれを有効に防止し得る。
〔従来の技術〕
第23図に示すように、この種の電子打楽器1は、ボード
2上に複数例えば6個の演奏操作子3としてのパツドPA
D1〜PAD6を配設し、演奏者が各パツドPAD1〜PAD6を例え
ばステイツクを用いて叩いたとき、各パツドPAD1〜PAD6
において演奏操作量に応じて生ずる振動に基づいて叩い
た強さ、速度、深さ等の演奏操作情報を発生し、この演
奏操作情報を電気的な演奏操作検出情報に変換して、パ
ツドPAD1〜PAD6に割り当てられた打楽器音を、設定操作
部4の各種の設定操作子によつて設定された発音条件に
応じて発音するようにしたものが提案されている。
例えば打楽器音として、パツドPAD1にバスドラム、パツ
ドPAD2にシンバル、パツドPAD3にタム、パツドPAD4にス
ネアドラム、パツドPAD5にハイハツトオープン、パツド
PAD6にハイハツトクローズの打楽器音を割り当て得る。
〔発明が解決しようとする問題点〕
このように演奏者が演奏操作をする演奏操作子3とし
て、パツドPAD1〜PAD6のように比較的大きい操作面を有
するものを適用する場合には、演奏者がパツドPAD1〜PA
D6のうちの1つ例えばパツドPAD1を強く叩いたとき、当
該パツドPAD1が振動する(これを「自己振動」と呼ぶ)
ことにより、操作強度等の操作情報を入力し得ると同時
に、当該パツドPAD1の振動の影響を受けてボード2上に
配設されている他のパツドPAD2〜PAD6が振動する(これ
を「飛びつき振動」と呼ぶ)。
ところで実際上このような振動に基づいてパツドPAD1〜
PAD6の演奏操作状態を的確に検出するためには、第24図
(A)に示すような振動検出信号J1に基づいて第24図
(B)に示すエンベロープ信号J2を形成し、エンベロー
プ信号J2にピークが生じたとき演奏操作がされたと判断
して第24図(C)に示すように演奏操作情報取込信号J3
を発生させるようにする方法が考えられる。
ところがこのような手法で演奏操作検出情報を得るよう
にした場合、パツドPAD1〜PAD6が異常に強く叩かれたよ
うな場合には、第24図(A)〜(C)に示すように、振
動検出信号J1が1つのピークをもつだけで自然減衰する
ような波形をもたずに、最初のピークに続いて第2、第
3のピークを発生させるような異常な振動検出信号J1X
が生じ得る。
このような場合には、異常な振動検出信号J1Xにピーク
が生ずるごとに演奏操作情報取込信号J3Xが発生するこ
とによりその都度異常な楽音を発生するため、楽音が全
体として不自然になるおそれがある。
この発明は以上の点を考慮してなされたもので、当該異
常な自己振動が発生したときには、これを確実に判別し
て不自然な楽音を発生させないようにし得るようにした
電子楽器を提案しようとするものである。
〔問題点を解決するための手段〕 かかる問題点を解決するためこの発明においては、演奏
操作子(3)を有し、該演奏操作子(3)の操作量に対
応して楽音を発生する電子楽器において、演奏操作子
(3)の操作量に対応する演奏操作検出情報(ADVAL)
を形成する演奏操作検出手段(25、14、31、LP1)と、
現在時点において演奏操作子(3)の演奏操作検出情報
(ADVAL)が得られたとき、演奏操作子(3)と同一の
操作子(3)において前回の演奏操作によつて得られた
前回の演奏操作検出情報(ADVAL)に基づく演奏操作量
(ADATA(PADNO))及び当該前回の演奏操作検出情報
(ADVAL)が得られてから現在時点までの経過時間(LAP
CTR(PADNO))によつて決まる自己振動検出データ(DC
VAL)を形成し、現在時点における演奏操作検出情報(A
DVAL)を自己振動検出データ(DCVAL)と比較し、当該
比較結果に基づいて前回の演奏操作検出情報が発音を許
容されたものであるとき発音情報を形成する発音制御手
段(31、34A、LP4)と、発音情報に応動して楽音の発音
動作をする楽音発生手段(35、36)とを設けるようにす
る。
〔作用〕
現在時点(t)において演奏操作検出情報(PADNO、A
DVAL)が得られたとき、これを自己振動検出データ(DC
VAL)と比較し、現在時点(t)において発音するか
否かを判断するようにしたことにより、前回の演奏操作
によつて異常振動が発生して当該異常振動に基づいて現
在時点(t)における演奏操作検出情報(PADNO、ADV
AL)が得られたときには、自己振動検出データ(DCVA
L)との比較において発音すべきではないことを内容と
する発音情報を形成することができる。
従つて異常振動が発生したとき不自然な打楽器音を発生
させないようにし得る。
〔実施例〕
以下図面について、この発明の一実施例を詳述する。
〔1〕第1の実施例の構成 第2図はこの発明を電子打楽器でなる電子楽器に適用し
た場合の実施例を示すもので、電子楽器11は第23図につ
いて上述した電子打楽器1の演奏操作部と全く同様な構
成の演奏操作部12を有する(第23図との対応部分に同一
符号を付して示す)。
ボード2上に配列された演奏操作子3としてのパツドPA
D1〜PAD6がステイツクによつて演奏操作されたとき、当
該演奏操作情報信号S1がマルチプレクサ13に出力され
る。
マルチプレクサ13は演奏操作情報信号S1のうち演奏操作
されたパツド番号を表すパツドナンバ信号S2をラツチレ
ジスタ14のパツドナンバラツチ部14Aに与えると共に、
パツドPAD1〜PAD6に対する演奏操作の強さ、速度、深さ
等を表す演奏操作量信号S3をアナログ/デジタル変換回
路15を介して演奏操作量データS4としてラツチレジスタ
14のピーク値ラツチ部14Bに与える。
ここでパツドPAD1〜PAD6は、第3図に示すように、パツ
ド振動体21の振動を例えば圧電センサ、導電ゴム等の振
動検出子22によつて振動信号S11(第4図(A))に変
換し、その振動信号S11をダイオード23及びコンデンサ2
4によつて平滑して振動エンベロープ信号S12(第4図
(B))に変換してこれを演奏操作情報S1(第2図)と
して送出するようになされている。
アナログ/デイジタル変換回路15から送出される演奏操
作量データS4は、ピーク検出回路25に与えられ、振動エ
ンベロープ信号S12(第4図(B))がピーク値PEAKに
なったとき、ピークインタラプト信号S13を検出タイミ
ング情報として発生してこれをラツチレジスタ14にラツ
チ信号として与える。このときラツチレジスタ14は演奏
操作量データS4をピーク値ラツチ部14Bにラツチすると
同時に、パツドナンバ信号S2をパツドナンバラツチ部14
Aにラツチする。
このようにしてパツドナンバラツチ部14A及びピーク値
ラツチ部14BにラツチされたパツドナンバラツチデータS
14及びピーク値ラツチデータS15と、ピーク検出回路25
から送出されるピークインタラプト信号S13は、中央処
理ユニツト(CPU)31がROM構成のプログラム/テーブル
データメモリ32のプログラムを実行することにより、バ
ス33を介してRAM構成のデータ/ワーキングメモリ34に
取り込まれると共に、プログラム/テーブルデータメモ
リ32のテーブルデータと共に演算処理される。
CPU31は当該演算処理したデータをバス33を介してリズ
ム音源となる楽音信号発生部(TG)35にリズム音発生情
報S31として供給する。楽音信号発生部(TG)35は、最
大発音打楽器音数(この場合6音)についてのリズム音
発生情報S31を第1〜第6の発音チヤンネルに割り当て
られたタイムスロツトについて順次受けて対応するリズ
ム楽器音を表す楽音信号S32をサウンドシステム36に送
出し、かくして楽音信号S32がサウンドシステム36にお
いて打楽器音に変換される。
CPU31は、演奏者が演奏操作子3としてのパツドPAD1〜P
AD6のうちの1つを現在時刻tで操作したとき、その
演奏操作情報信号S1に基くデータを、データ/ワーキン
グメモリ34のレジスタ34A(第5図)にピークインタラ
プト信号S13が発生するごとに第6図のパツドオンイン
タラプトルーチンRT1を実行することにより、取り込ん
で演算処理する。
また過去の演奏状態の時間的な経過は、CPU31がインタ
ラプトタイマ37からタイマインタラプト信号S34が発生
するごとに第7図のタイマインタラプトルーチンRT2を
実行することにより、判断される。
この実施例の場合CPU31は、パツドPAD1〜PAD6の過去の
演奏状態を3つの状態すなわちステータス「0」、
「1」、「2」に分類し、これを第5図に示すように、
データ/ワーキングメモリ34のレジスタ34Aを構成する
パツドステータスレジスタREG11に各パツドPAD1、PAD
2、……、PAD6に対応するパツドステータスPDKON(i)
(i=1、2、……、6)として保持するようになされ
ている。
ステータス「0」の状態は、第8図(A1)に示すよう
に、現在時点tから第1の基準時間TR1(例えば15〔m
s〕)だけ過去の時点t(-15)までの間に第i番目のパツ
ドが演奏操作されなかつた状態にあり、この状態におい
て現在時点tで初めて符号X1で示すように演奏操作が
された状態を表す。
このステータス「0」の状態においては演奏操作がされ
たときにはいつでも発音動作をして良い状態にある。こ
のときCPU31は経過時間レジスタREG12(第5図)に保持
されている経過時間データLAPCTR(i)(i=1、2、
……、6)として、第8図(A2)に示すように、第1の
基準時間TR1を表す数値15をプリセツトし、その後1〔m
s〕ごとに経過時間データLAPCTR(i)(i=1、2、
……、6)を−1減算して行くことにより、第1の基準
時間TR1を計時するようになされている。
この第1の基準時間TR1は第4図(A)に示すように、
パツドPAD1〜PAD6が演奏操作されて振動が開始した時点
から当該振動が収束するのに十分な時間(例えば15〔m
s〕)に選定されている。
またステータス「1」の状態は、第8図(B1)に示すよ
うに、現在時点tを基準にして第1の基準時間TR1前
の時点t(-15)以外の時点t=t(ST1)において符号X1で
示すように1回目の演奏操作がされた後、現在時点t
において符号X2で示すように2回目の演奏操作がされた
状態を表す。
この状態は時点t=t(ST1)において1回目の演奏操作
がされたことにより振動を生じたパツドが、その振動状
態が収束し終らないで未だ振動しているときに2回目の
演奏操作がされたことを意味しており、例えば演奏者が
両手に持つたステイツクで僅かな時間間隔の間に連打し
たような演奏時に生ずる。
このようなときには、パツドを叩いたステイツクを一旦
パツド表面から離して再度パツドの表面を叩くまでの間
に所定の時間以上の時間が必要であり、当該再演奏時ま
での間にサウンドシステム36から打楽器音を発生するこ
とは誤動作と考えて良い。
そこでこのような状態のときには、第8図(B2)に示す
ように、経過時間データLAPCTR(i)として2回目の演
奏操作がされた現在時点tから第2の基準時間TR2
(この実施例の場合30〔ms〕に選定されている)を計時
するようにし、当該第2の基準時間TR2の間は休止期間
として楽音発生部(TG)35を発音動作させないように制
御する。
さらにステータス「2」は第8図(C1)に示すように、
現在時点tを基準にして第1の基準時間TR1だけ前の
時点t(-15)以外の時点t=t(ST1)及びt=t(ST2)
おいて符号X1及びX2で示すように同一パツドが2回連打
された後、現在時刻tにおいて符号X1で示すように3
回目の演奏操作がされたと同様の振動が生じたときに
は、経過時間レジスタREG12の経過時間LAPCTR(i)が
第2の基準時間TR2の計時動作に入つていることに基づ
いて(第8図(C2))、CPU31は発音動作をさせないよ
うな制御をする。
〔2〕原理的処理手順 第2図の実施例においてCPU31は、第1図に示すような
原理的処理手順に従つて、現在時点tにおいて得られ
る演奏操作検出情報に基づいて発音動作をするか否かの
判断をする。
すなわちCPU31は、演奏操作子3を構成するパツドPAD1
〜PAD6の1つからピークインタラプト信号S13が発生し
たとき、処理ステツプPR1から当該発音確認処理ルーチ
ンに入つて、処理ステツプPR2においてピークが発生し
パツド(すなわち当該パツド)から演奏操作検出情報
(すなわちパツドナンバラツチデータS14、ピーク値ラ
ツチデータS15)を取り込む。
続いてCPU31は、処理ステツプPR3において当該パツドが
所定の基準時間すなわち第1の基準時間TR1以内に発音
されていたか否かを判断し、肯定結果が得られたとき処
理ステツプPR4に移つて前回の発音時点から現在時点t
までの経過時間に応じて自己振動検出データを求め
る。
ここで自己振動検出データは、前回の演奏操作の演奏操
作量及び現在までの経過時間から考えて、現在時点t
の演奏操作量が新たな演奏操作に基づいて生じた自己振
動に基づくものではなく、第24図について上述したよう
に、前回の演奏操作が異常なためにその振動の減衰過程
においてエンベロープが通常の減衰曲線から逸脱したよ
うな変動を生じたためにピークインタラプトが発生した
ものであると判断し得る値に予め選定されている。
ここでパツドの振動は、第24図(A)の振動検出信号J1
によつて示すように、時間の経過に従つて滑らかに減衰
して行くことに基づいて、異常振動が発生したか否かの
判断をするための自己振動検出データは前回の発音時点
から現在時点tまでの経過時間に応じて減少して行く
ような曲線を描くように選定される。
CPU31は続く処理ステツプPR5において、現在時点の演奏
操作量が自己振動検出データより大きいか否かの判断を
する。
ここで肯定結果が得られると、このことは現在検出され
た演奏操作量の値は自己振動検出データより大きく、従
つて正規の演奏操作に基づくものであることを意味して
おり、このときCPU31は処理ステツプPR6に移つて楽音を
発生した後、処理ステツプPR7において当該発音確認処
理ルーチンを終了する。
これに対して処理ステツプPR5において否定結果が得ら
れると、このことは現在の演奏操作量が正規の演奏操作
に基づいて発生したものではないことを意味しており、
このときCPU31はステツプPR6の発音処理をジヤンプして
処理ステツプPR7において当該発音確認処理ルーチンを
終了する。
また上述の処理ステツプPR3において否定結果が得られ
ると、このことは前回の演奏操作から現在時点tまで
の時間が基準時間TR1より長くかかつたために、前回の
演奏操作に基づく異常振動の監視をしないで良いことを
意味している(換言すれば正規の演奏操作に基づくもの
であると判定して良いことを意味している。
従つてCPU31はこのとき処理ステツプPR4、PR5の発音確
認処理をせずに処理ステツプPR6にジヤンプして当該演
奏操作検出情報に基づく発音処理を実行する。
第1図に示す原理的処理手順は、第6図のパツドオンイ
ンタラプトルーチンRT1においてさらに具体的に表現さ
れる。
〔3〕タイマインタラプト処理 第8図(A2)、(B2)、(C2)において上述した経過時
間データLAPCTR(i)の計時動作は、インタラプトタイ
マ37からタイマインタラプト信号S34が発生するごとにC
PU31がタイマインタラプトルーチンRT2(第7図)を実
行することによりなされる。
CPU31はタイマインタラプト信号S34が発生すると、ステ
ツプSP1においてパツドナンバワーキングレジスタREG10
(第5図)にパツドナンバワーキングデータPNとして数
値データ1を書き込む。
このパツドナンバワーキングデータPNは、第1〜第6発
音チヤンネルを1チヤンネルずつ処理するために用いら
れるデータで、CPU31は次のステツプSP2において当該PN
=1の発音チヤンネルの経過時間データLAPCTR(PN)
(PN=1)が0であるか否かの判断をする。ここで否定
結果が得られると、タイマインタラプト信号S34が発生
した時点において第1番目のパツドPAD1について第1又
は第2の基準時間TR1又はTR2の計時動作がされている状
態にあることを意味する。
このときCPU31はステツプSP3に移つて経過時間データLA
PCTR(PN)を「−1」減算した後、ステツプSP4におい
て「−1」減算後の経過時間データLAPCTR(PN)が0に
なつたか否かの判断をする。
ここで否定結果が得られると、このことは引続き計時動
作をする必要があることを意味し、このときCPU31はス
テツプSP5に移つてパツドナンバワーキングデータPNに
「+1」加算をすることにより、第2番目の発音チヤン
ネルを指定し得る状態になる。
これに対して上述のステツプSP2において肯定結果が得
られると、このことは第1又は第2の基準時間TR1又はT
R2についての計時動作がすでに終了していることを意味
しており、このときCPU31はステツプSP3、SP4をジヤン
プしてステツプSP5に移る。
また上述のステツプSP4において肯定結果が得られる
と、このことはタイマインタラプト信号S34が得られた
現在の時点tにおいて第1又は第2の基準時間TR1又
はTR2の計時動作が終了したことを意味し、このときCPU
31はステツプSP6においてパツドステータスデータPDKON
(PN)を0にクリアした後、ステツプSP5に移る。
ステツプSP5においてCPU31はパツドナンバワーキングデ
ータPNに「+1」加算することにより次の発音チヤンネ
ルを指定した後、ステツプSP7において当該「+1」加
算後のパツドナンバワーキングデータPNが最大発音チヤ
ンネル数6を超えたか否かの判断をする。
ここで否定結果が得られると、このことは全ての発音チ
ヤンネルについての処理が未だ終了していないことを意
味し、このときCPU31は上述のステツプSP2に戻つて当該
新たな発音チヤンネルすなわちPN=2について経過時間
データLAPCTR(PN)(PN=2)の処理を実行する。
以下同様にして第3〜第6番目の発音チヤンネルについ
ての経過時間データLAPCTR(PN)の処理を終了すると、
ステツプSP7において肯定結果が得られることにより、C
PU31はステツプSP8からメインルーチンに戻る。
このようにしてCPU31は所定時間すなわち1〔ms〕ごと
に、第1〜第6発音チヤンネルについて必要に応じて第
1又は第2の基準時間TR1又はTR2の計時動作を実行す
る。
〔4〕パツドオンインタラプト処理 CPU31は演奏者が演奏操作部12のパツドPAD1〜PAD6のう
ちの1つを演奏操作したとき、当該演奏操作されたパツ
ドから得られる演奏操作情報信号S1に基づいて、ピーク
検出回路25においてピークインタラプト信号S13が得ら
れるごとに、第6図のパツドオンインタラプトルーチン
RT1の処理を実行する。
すなわちCPU31は先ず演奏操作情報取込処理ループLP1に
入つてステツプSP11においてパツドナンバラツチ部14A
(第2図)からパツドナンバラツチデータS14を取込ん
でこれを操作されたパツド番号データを表すパツドナン
バデータPADNOとしてパツドナンバレジスタREG2(第5
図)に取り込む。
続いてCPU31はステツプSP12においてピーク値ラツチ部1
4B(第2図)からピーク値ラツチデータS15を取り込ん
でピークレベルレジスタREG1にピークレベルデータADVA
Lとして書き込む。
かくしてCPU31は現在時点において操作されたパツドの
番号及びその演奏操作量を表すデータをデータ/ワーキ
ングメモリ34のレジスタ34Aに基本的な演奏操作情報と
して保持させた後続いて直前操作パツド検出処理ループ
LP2に入る。
この処理ループは、第8図の現在時点tにおいて、過
去の演奏状態を認識して現在時点tにおいて操作され
たパツドについての演奏処理情報に基づいて発音するか
否かを判断する処理ループで、CPU31は先ずステツプSP1
3においてパツドナンバレジスタREG2に取り込まれたパ
ツドナンバデータPADNOのパツドが割当てられている発
音チヤンネル以外の発音チヤンネルにおいて、パツドス
テータスデータPDKON(i)がステータス「1」又は
「2」であり、しかも経過時間データLAPCTR(i)の値
が最小の発音チヤンネル(すなわち直前に発音したチヤ
ンネル)を検出した後当該発音チヤンネルの経過時間デ
ータLAPCTR(i)を直前操作パツド時間間隔データレジ
スタREG4に書き込むと共に、当該発音チヤンネルのチヤ
ンネルナンバデータPADNOを直前操作パツドナンバレジ
スタREG5に直前操作パツドナンバデータMINPDとして書
き込む。
このステツプSP13の処理は、第9図に示す直前操作パツ
ド検出サブルーチンを用いて実行し得る。
すなわちCPU31はステツプSP13Aにおいてパツドナンバワ
ーキングデータPNとして値1を設定し、また直前操作パ
ツド時間間隔データMINLAPとして値30を設定し、さらに
直前操作パツドナンバデータMINPDとして値0を設定し
た後、ステツプSP13BにおいてパツドナンバデータPADNO
がPN(=1)ではないことを確認してステツプSP13Cに
おいてパツドステータスデータPDKON(PN)の内容を確
認する。
ここでパツドステータスデータPDKON(PN)がステータ
ス「0」であれば、CPU31は直接ステツプSP13Dに移つて
パツドナンバワーキングデータPNに「+1」加算をす
る。
これに対してステツプSP13Cにおいてパツドステータス
データPDKON(PN)がステータス「1」であることを確
認できると、CPU31はステツプSP13Eにおいて15−LAPCTR
(PN)の演算を実行して当該演算結果を経過時間検出用
ワーキングレジスタREG9に経過時間検出用ワーキングデ
ータLAPとして書き込んだ後、ステツプSP13Fにおいてこ
の経過時間検出用ワーキングデータが直前操作パツド時
間間隔データMINLAPより小さいことを確認してステツプ
SP13Gにおいて当該経過時間検出用ワーキングデータLAP
を直前操作パツド時間間隔データMINLAPとして保持する
と共に、パツドナンバワーキングデータPNを直前操作パ
ツドナンバデータMINPDとして保持する。
これに対してステツプSP13Fにおいて経過時間検出用ワ
ーキングデータLAPが直前操作パツド時間間隔データMIN
LAPより小さいときにはステツプSP13Gをジヤンプしてス
テツプSP13Dに移る。
これに対して上述のステツプSP13Cにおいてパツドステ
ータスデータPDKON(PN)がステータス「2」であるこ
とが確認できると、CPU31はステツプSP13Hにおいて30−
LAPCTR(PN)の演算をしてこれを経過時間検出用ワーキ
ングデータLAPとして保持する。
かくしてCPU31は現在時点tより以前の状態がステー
タス「0」(第8図(A1)及び(A2))、ステータス
「1」(第8図(B1)及び(B2))、又はステータス
「2」(第8図(C1)及び(C2))のいずれかであるか
を確認し、ステータス「1」又は「2」のとき、直前操
作パツドナンバデータMINPD及び直前操作パツド時間間
隔データMINLAPをレジスタ34Aに保持する。
なおステツプSP13Bにおいてパツドナンバワーキングデ
ータPNが当該パツドであるとき、CPU31は他のチヤンネ
ルではないので、直ちにステツプSP13Dにジヤンプす
る。
CPU31はかかる処理をすべての発音チヤンネルについて
実行したことをステツプSP13Iにおいて確認した後ステ
ツプSP13JからパツドオンインタラプトルーチンRT1に戻
る。
このときCPU31はステツプSP14に移つて直前操作パツド
ナンバデータMINPDが0ではないかどうかの判断をす
る。ここで肯定結果が得られると、このことは現在操作
されたパツド以外のパツドのうち前回操作された時点か
らの経過時間が最小のパツドにおいて、第1又は第2の
基準時間TR1又はTR2を経過していないことを意味する。
この状態のときCPU31はステツプSP15に移つて直前操作
パツド時間間隔データMINLAPが第3の基準時間TR3(こ
の実施例の場合5〔ms〕に選定されている)より小さい
か又は等しいことを判断する。
この第3の基準時間TR3は第1又は第2のステータスに
おいて直前に発音したパツドについて、当該パツドが演
奏操作された後第3の基準時間TR3(すなわち5〔m
s〕)以上経過していないために、現在操作したパツド
に飛びつき振動が生ずるおそれがある状態になつている
ことを意味している。
このときCPU31はステツプSP16に移つてパツドナンバデ
ータPADNO及び直前操作パツドナンバデータMINPDに基づ
いてプログラム/テーブルデータメモリ32のテーブルメ
モリ32A(第10図)に格納されている飛びつき振動検出
用係数データテーブルKTABLEから飛びつき振動検出Sデ
ータK 〜K を読み出してレジスタ34A(第5
図)の飛びつき振動検出用係数レジスタREG3に飛びつき
振動検出用係数データKDATAとして書き込む。
飛びつき振動検出用係数データKDATAは、当該パツド
(パツドナンバデータPADNOによつて表される)に対し
て、直前に操作されたパツド(直前操作パツドナンバデ
ータMINPDによつて表される)からの飛びつき振動につ
いての影響度を表すもので、例えば現在時点tにおい
て操作された当該パツドと、直前に操作されたパツドと
の距離によつて係数値が決められる。
このようにして決められる係数値をK(PADNO)(MINPD)
表せば、飛びつき振動検出用係数テーブルKTABLEは第11
図のように表すことができ、例えば第12図に示すよう
に、第1番目のパツドPAD1が現在時点tで操作された
とき、直前に操作されたパツドが順次PAD2、PAD3、PAD
4、PAD5、PAD6のとき、各係数値K(PADNO)(MINPD)は、
、K 、K 、K 、K で表すことが
でき、その値は第1のパツドPAD1に対して第2及び第4
のパツドPAD2及びPAD4がほぼ同じ距離にあることからK
=K =1/8に設定され、第5のパツドPAD5が
僅かに遠い距離にあることから、K =1/10に設定
され、第3及び第6のパツドPAD3及びPAD6は最も遠い距
離にあることからK =K =1/16に設定する。
かくして当該パツド以外の他のパツドPAD2〜PAD6が直前
に操作されることにより振動している状態において、当
該振動が現在時点tにおいて操作された当該パツドPA
D1に及ぼす飛びつき振動の影響度を重付けすることによ
つて適切な条件に適正化し直すことができる。
CPU31は続くステツプSP17において、飛びつき振動検出
用係数データKDATAを用いて、当該パツドの振動が飛び
つき振動検出用係数データKDATAより大きいか否かの判
断をする。
ここで現在の振動状態は、ピークレベルレジスタREG1に
保持されているピークレベルデータADVALと、直前操作
パツドナンバレジスタREG5に保持されている発音時レベ
ルデータDATA(MINPD)との比が用いられる。
因にステータス「1」又は「2」においてピークレベル
レジスタREG1に保持されているピークレベルデータADVA
Lは現在時点tにおいて操作された当該パツドから得
られるピークレベルデータであるのに対して、発音時レ
ベルレジスタREG13に保持されている発音時レベルデー
タADATA(i)(i=1、2、…、6)は、直前に演奏
操作されたパツドについてのピークレベルデータ(これ
をADATA(MINPD)のように表す)になる。従つてその比
ADVAL/ADATA(MINPD)は、現在時点tにおいてピー
クが検出されたパツドが実際には演奏操作されていない
にもかかわらずピークの発生が検出された場合には、直
前に操作されたパツドからの飛びつき振動によつてピー
クが発生したと考えることができ、このときの当該ピー
クが生じたパツドのピークレベルは、直前に操作された
パツドの振動のピークレベル×K(PADNO)(MINPD)の値以
下になると考えられる。ここで飛びつき振動検出用係数
データK(PADNO)(MINPD)は、直前に操作されたパツドか
ら現在ピークが検出されたパツドまでの振動の減衰比率
の基準値を表しているからである。
これに対して比ADVAL/ADATA(MINPD)は、当該ピーク
を検出したパツドが実際に演奏操作された場合には、そ
の振動レベルの大きさ、従つてピークレベルデータADVA
Lの値は、十分に大きな値になるので、飛びつき振動検
出用係数データKDATAの値より大きい値になる。
かくしてステツプSP17において否定結果が得られたとき
このことは当該ピーク値が飛びつき振動によるものであ
る可能性があることを表しており、このときCPU31は飛
びつき振動処理ループLP3に移る。
これに対してステツプSP17において肯定結果が得られる
と、このことは当該ピークの発生がパツドの演奏操作に
よるものであることを表しており、このときCPU31は発
音処理ループLP4に移る。
また上述のステツプSP14において否定結果が得られる
と、このことは、当該ピークが生じたパツド以外の他の
すべてのパツドが、発音を開始してから第1の基準時間
(すなわち15〔ms〕)以上経過していることを意味して
おり、このときには飛びつき振動についての処理を実行
する必要がないので、CPU31はステツプSP15、SP16、SP1
7の処理をせずに直ちに発音処理ループLP4に入る。
また上述のステツプSP15において否定結果が得られる
と、このことは直前に操作されたパツドが発音開始した
時点から第3の基準時間TR3(すなわち5〔ms〕)以上
経過していることを表しており、このときには飛びつき
振動が生ずるおそれがないので、CPU31はステツプSP1
6、SP17の処理をせずに直接発音処理ループLP4に入る。
CPU31は発音処理ループLP4に入ると、ステツプSP21にお
いてピーク検出されたパツドナンバデータPADNOのパツ
ドステータスデータPDKON(PADNO)に基づいて、過去の
操作状態を確認する。
パツドステータスデータPDKON(PADNO)がステータス
「0」であるとき、このことは第8図(A1)及び(A2)
について上述したように、いつでも発音できる状態にあ
ることを意味しており、このときCPU31はステツプSP22
に移つてパツドステータスデータPDKON(PADNO)のデー
タをステータス「0」からステータス「1」に書き換
え、第2に経過時間データLAPCTR(PADNO)に第1の基
準時間TR1(すなわち15〔ms〕)のデータをセツトし、
第3に発音時レベルデータADATA(PADNO)にピークレベ
ルレジスタREG1のピークレベルデータADVALを転送保持
する。
かくしてCPU31は、第8図(B1)及び(B2)について上
述したステータス「1」の制御条件に切り換わつた後、
次のステツプSP23に移る。
このステツプSP23においてCPU31は楽音信号発生部(T
G)35にパツドナンバレジスタREG2のパツドナンバデー
タPADNO及びピークレベルレジスタREG1のピークレベル
データADVALをキーオン信号KONと共にリズムオン発生情
報S31として伝送する。
このとき楽音信号発生部(TG)35はパツドナンバデータ
PADNOによつて指定された打楽器音をピークレベルデー
タADVALによつて指定された音量で発生させるような楽
音信号S32をサウンドシステム36に送出する。
かくして第8図(A1)及び(A2)について上述したよう
に、現在時点tにおいて演奏者が操作した当該パツド
に対応する打楽器音を発生させた後、CPU31はステツプS
P24からメインルーチンに戻る。
これに対してCPU31は、ステツプSP21においてステータ
ス「1」であることを判断すると、このことは第8図
(B1)及び(B2)について上述したように、現在時点t
を基準にして第1の基準時間TR1だけ前の時間の間に
直前に操作されたパツドがある状態において同じパツド
が2回連打されたことを意味する。
このときCPU31はステツプSP25に移つて発音時レベルデ
ータADATA(PADNO)及び経過時間データ15−LAPCTR(PA
DNO)によつてプログラム/テーブルデータメモリ32に
格納されている自己振動検出用係数データテーブルREG2
2(第10図)から自己振動検出用係数データDCTBL(第13
図を読み出して自己振動検出データレジスタREG8に自己
振動検出データDCVALとして書き込む。
ここで15−LAPCTR(PADNO)は、パツドが操作されてか
ら現在の時点までの経過時間を表し、第1の基準時間TR
1(この実施例の場合15〔ms〕)を、所定の時間間隔
(例えば1〔ms〕間隔)ごとの自己振動検出用係数デー
タDV(ADVAL)(15-LAPCTR)とする一群のデータ群DCTBL(3
0)〜DCTBL(10)として記憶している(第14図)。
各データ群のDCTBL(30)〜DCTBL(10)は、パツドに対
する操作強度(すなわち経過時間15−LAPCTR=0におけ
るピークレベルデータADVALの値30、29、…、10)ごと
に用意されており、パツドの振動の減衰曲線に対応する
ような減衰曲線を描くようなデータによつて構成されて
いる。
因にパツドの振動は、演奏操作した後第1の基準時間TR
1の間第4図について上述したように減衰して行くが、
その減衰曲線はパツドに対する操作強度(すなわちステ
イツクによつてパツドを叩いたときの強さ)によつて異
なる減衰曲線を描く。自己振動検出用係数データテーブ
ルDCTBLの各データ群DCTBL(30)〜DCTBL(10)は、か
かる減衰曲線上の各経過時点の値に対して所定量だけ小
さい値に選定されている。
かくしてパツドが演奏操作されることによりいわゆる自
己振動を開始してから第1の基準時間TR1の間自然に減
衰して行くときに、任意の経過時点において自己振動検
出用係数データDV(ADVAL)(15-LAPCTR)の対応する経過時
点のデータと比較すれば、常に自然減衰状態におけるパ
ツドの振動レベルの方が小さくなるようになされてい
る。
かくして自己振動検出用係数データテーブルDCTBLから
ピークレベルデータADVALに基づいて決まるデータ群DCT
BL(ADVAL)の対応する経過時点(15−LAPCTR)のデー
タDV(ADVAL)(15-LAPCTR)を読み出してピークレベルデー
タADVALと比較したとき、ピークレベルデータADVALが大
きければ当該パツドの振動は2度目の演奏操作がされた
ことによる自己振動であると判断することができるよう
になされている。
そこで、ステツプSP26において肯定結果が得られると、
このことは第8図(B1)及び(B2)について上述したよ
うに2回目の演奏操作がされたことを意味する。このと
きCPU31はステツプSP27に移つて第1に当該ピーク検出
パツドに対応するパツドステータスデータPDKON(PADN
O)として書き込まれていたステータス「1」をステー
タス「2」に書き直し、第2に経過時間データLAPCTR
(PADNO)に第2の基準時間TR2を表す値30を書き込み、
第3に発音時レベルデータADATA(PADNO)として現在ピ
ークレベルレジスタREG1に保持されているピークレベル
データADVALを転送格納する。
かくしてCPU31は第8図(B1)及び(B2)について上述
したステータス「1」の制御条件を、第8図(C1)及び
(C2)に示すステータス「2」の制御条件に切換制御
し、その後ステツプSP28に移つてパツドナンバREG2のパ
ツドナンバデータPADNO及びピークレベルレジスタREG1
のピークレベルデータADVALをキーオン信号KONと共にリ
ズムオン発生情報S31として楽音信号発生部(TG)35に
送出する。
このとき楽音信号発生部(TG)35はパツドナンバデータ
PADNOの打楽器音を、ピークレベルデータADVALの音量で
発音させるような楽音信号S32をサウンドシステム36に
供給した後、ステツプSP29からメインルーチンにもど
る。
これに対してステツプSP26において否定結果が得られる
と、このことは検出されたピーク値が正規に演奏操作し
た場合より低い状態、例えば1回目の演奏操作が異常に
強かつたために異常振動が生じたことを意味する。この
ときCPU31はステツプSP27、SP28の処理をせずに直ちに
ステツプSP29に移る。
さらに上述のステツプSP21において、パツドステータス
データをPDKON(PADNO)がステータス「2」であると判
断したとき、このことは第8図(C1)及び(C2)につい
て上述したように、現在時点tから過去第1の基準時
間TR1の間に同一パツドについて続けて2回の演奏操作
がされており、しかも現在時点tは2回目の演奏操作
から第2の基準時間TR2(=30〔ms〕)以内であるの
で、現在時点tにおけるピークの発生は異常であるこ
とを表している。
このときCPU31はステツプSP30からただちにメインルー
チンに戻ることにより、ピークの発生を無視して発音制
御をせずに当該処理プログラムを終了する。
CPU31は飛びつき振動処理ループLP3に入ると、先ずステ
ツプSP35においてパツドステータスデータPDKONが
「0」か否かの判断をする。ここで否定結果が得られる
と、当該パツドはステータス「1」又は「2」にあり、
従つて1回目又は2回目の演奏操作によつて振動してい
る状態にあり、このときCPU31はステツプSP40からメイ
ンルーチンに戻る。
ところがこのような振動状態においては、たとえ他のパ
ツドから飛びつき振動があつたとしてもその振動は微小
であるので、新たに飛びつき振動に基づいて特殊発音を
させると不自然になる。従つてかかるステータス条件の
ときは特殊発音をさせずに当該処理プログラムを終了す
る。
これに対してステツプSP35において肯定結果が得られる
と、CPU31はステツプSP36に移つてパツドナンバデータP
ADNO及び直前操作パツドナンバデータMINPDをアドレス
データとして用いてテーブルメモリ32A(第10図)にお
いて小音量発音用係数データテーブルDMTBLを格納して
いる小音量発音用係数データテーブルのレジスタREG23
から小音量発音用係数データD(PADNO)(MINPD)を読み出
す。
この小音量発音用係数データD(PADNO)(MINPD)は、ピー
クを検出した当該パツドに対して他のパツドから飛びつ
き振動が生じた場合に、どのパツドから飛びつき振動が
与えられたかによつて小音量発音する際の音量を決める
ための係数を表すもので、当該小音量発音用係数データ
テーブルDMTBLから読み出された小音量発音用係数デー
タD(PADNO)(MINPD)を飛びつき発音音量係数データDMRA
TIOとして飛びつき音量係数レジスタREG6(第5図)に
書き込む。
この実施例の場合飛びつき発音音量係数データD
(PADNO)(MINPD)は、例えば1番目のパツドPAD1について
第16図に示すように、隣接する第2のパツドPAD2相互間
の飛びつき音量発音音量係数データD 、D とし
てD =D =1/10を用い、第3のパツドPAD3と
の間の飛びつき発音音量係数データD 、D とし
てD =D =1/20を用い、第4のパツドPAD4と
の間の飛びつき発音音量係数データD 、D とし
てD =D =1/10を用い、第5のパツドPAD5に
対する飛びつき発音音量係数データD 、D とし
てD =D =1/16を用い、第6のパツドPAD6と
の間の飛びつき発音音量係数データD 、D とし
てD =D =1/20を用いる。
このようにすれば、ピークの発生を検出したパツドPAD1
への距離が近いパッドほど飛びつき振動の影響が大きい
と考えられることに基づいて、飛びつき発音音量係数デ
ータD(PADNO)(MINPD)として距離が近いほど大きい係数
データを割当てるようにすることにより、自然楽器にお
いて生ずる飛びつき発音と同様の発音効果をもつような
音量の特殊発音をさせることができる。
かかるステツプSP36の処理が終了すると、CPU31は次の
ステツプSP37においてピークレベルデータADVALに飛び
つき発音音量係数データDMRATIOを乗算し、当該乗算結
果を飛びつき発音レベルデータDMADVLとして飛びつき発
音レベルデータレジスタREG7(第5図)に書き込む。
続いてCPU31はステツプSP38に移つて、パツドナンバレ
ジスタREG2に保持されているパツドナンバデータPADNO
及び飛びつき発音レベルレジスタREG7に保持されている
飛びつき発音レベルデータDMADVLをキーオン信号KONと
共にリズムオン発生情報S31として楽音信号発生部(T
G)35に送出する。このとき楽音信号発生部(TG)35は
パツドナンバデータPADNOに対応する打楽器音を飛びつ
き発音レベルデータDMADVLで決まる小音量で特殊発音さ
せるようにサウンドシステム36に楽音信号S32を送出す
る。
このようにしてCPU31は飛びつき振動処理ループLP3の処
理を終了し、ステツプSP39からメインルーチンに戻る。
〔5〕第1の実施例の動作 以上の構成において、CPU31はパツドPAD1〜PAD6から送
出される演奏操作情報信号S1に基づいて現在時点t
おいてピークが検出されたとき、過去のバツドの操作状
態すなわちステータス「0」、「1」、「2」に応じて
異なる制御モードで打楽器音の発音を制御する。
(1)ステータス「0」の場合 この場合は、第8図(A1)及び(A2)について上述した
ように、現在時点tから第1の基準時間TR1以内にお
いてはピークが検出された当該パツドについて第1の基
準時間TR1以内においては演奏操作がされていなかつた
ことにより、演奏操作されたときにはいつでも発音して
良い状態にある。
このときCPU31は、パツドオンインタラプトルーチンRT1
(第6図)の演奏操作情報取込処理ループLP1を構成す
るステツプSP11及びSP12において、パツドナンバレジス
タREG2及びピークレベルレジスタREG1にそれぞれパツド
ナンバデータPADNO及びピークレベルデータADDVALを書
き込み保持した後ステツプSP13において当該パツド以外
の直前に操作されたパツドについて、当該パツドとの操
作時間間隔を表す直前操作パツド時間間隔データMINLAP
及び直前操作パツドナンバMINPDを検出し、その直前操
作パツド時間間隔データMINLAPが第3の基準時間TR3
(=5〔ms〕)以下であることをステツプSP15において
確認したとき、直前操作パツドからの飛びつき振動が生
ずるおそれがあるので、ステツプSP16において飛びつき
振動検出用係数データKDATAを飛びつき振動検出用係数
レジスタREG3に保持する。
ここで現在時点tにおいてパツドが正規に演奏操作さ
れたときには、当該パツドから得たピークレベルデータ
ADVALの値はかなり大きいから、CPU31はこれをステツプ
SP17において検出して発音処理ループLP4に移る。
このときCPU31はステツプSP21においてステータス
「0」であることを検出した後ステツプSP22において、
経過時間データLAPCTR(PADNO)に第1の基準時間TR1
(すなわち15〔ms〕)の値15をセツトすることにより当
該第1の基準時間TR1の計時動作を開始させると共に、
ステツプSP23において第17図に示すように、パッドナン
バーPADNO及びピークレベルデータADVALに基づいて楽音
信号発生部(TG)35において打楽器音を発生させる。
このようにしてステータス「0」においてCPU31は、パ
ツドが演奏操作されたときには直ちに対応する打楽器音
を発生すると共に、第1の基準時間TR1についての経過
時間の計時動作をするステータス「1」の状態(第8図
(B1)及び(B2)に設定される。
(2)ステータス「1」の場合 ステータス「1」の状態でピークインタラプト信号S13
が発生するとCPU31は、第8図(B1)及び(B2)につい
て上述したように、現在時点tにおいて2回目のピー
ク検出をしたことにより、当該ピーク検出に対応して打
楽器音を発生すると共に第2の基準時間TR2の計時動作
を開始させる。
すなわちCPU31はピーク検出インタラプトS13が発生する
と、演奏操作情報取込処理ループLP1(第6図)におい
てパツドナンバデータPADNO及びピークレベルデータADV
ALをレジスタ34Aに保持した直後前操作パツド検出処理
ループLP2を実行する。
ここで現在時点tにおいて生じたピーク検出が、パツ
ドに対する正規の演奏操作に基づくものである場合に
は、直前操作パツド検出処理ループLP2においてCPU31は
ステータス「0」について上述したと同様の処理を実行
して発音処理ループLP4に入る。
ここでCPU31は、過去の状態がステータス「1」である
ことをステツプSP21において判断すると、ステツプSP25
においてレジスタ34Aに保持されている発音時レベルデ
ータADATA(PADNO)及び経過時間データLAPCTR(PADN
O)を用いて自己振動検出用係数データテーブルDCTBL
(第13図及び第14図)から自己振動検出用係数データDV
(ADVAL)(15-LAPCTR)を読み出してレジスタ34Aに自己振
動検出用係数データDCVALとして保持した後この自己振
動検出データDCVALとピークレベルデータADVALとを比較
する(ステツプSP26)。
ここでピークレベルデータADVALが大きければ、第18図
(A)に示すように、現在時点tにおいて発生したピ
ーク検出状態は、当該パツドが正規に演奏操作されたこ
とにより生じた自己振動に基づくものであると判断し得
ることにより、CPU31はステツプSP27、SP28においてパ
ツドナンバデータPADNOによつて指定された打楽器音を
ピークレベルデータADVALの音量で発音すると共に、パ
ツドステータスデータPDKONをステータス「2」のデー
タに書き換え、かつ経過時間データLAPCTR(PADNO)に
対して第2の基準時間TR2(すなわち30〔ms〕)を設定
する。
かくしてステータス「1」状態にある当該パツドが第1
の基準時間TR1の間に2回目の演奏操作がされたときに
は、当該パツドに対応する打楽器音を発生させる。
これに対してピーク検出が生じた当該パツドについて自
己振動検出データレジスタREG8に保持された自己振動検
出データDCVALと比較してピークレベルデータADVALが小
さい場合には、第18図(B)に示すように、時点t
発生したピークは自己振動ではないので、CPU31はステ
ツプSP27及びSP28の処理をジヤンプすることにより、当
該パツドナンバデータPADNOについての発音をせずにパ
ツドオンインタラプトルーチンを終了する。
(3)ステータス「2」の場合 第8図(C1)及び(C2)について上述したステータス
「2」の状態でピークが検出されたとき、CPU31は演奏
操作情報処理ループLP1及び直前操作パツド検出処理ル
ープLP2の処理を実行した後発音処理ループLP4のステツ
プSP21においてパツドの状態がステータス「2」であつ
たことを判知する。
この場合には第19図に示すように、現在時点tにおい
て検出されたピークは第2の基準時間TR2の間に生じた
ものであり、実際上ステイツクによる正規の演奏操作は
できないので、CPU31は発音処理をせずに当該パツドオ
ンインタラプトルーチンを終了する。
(4)飛びつき振動の場合 過去の操作状態がステータス「0」においてピーク検出
が生じた当該パツドの振動が小さいと判断したとき、CP
U31は小音量の発音をすることにより、自然楽器におけ
る飛びつき発音と同様の効果を生じさせるような特殊発
音制御を実行する。
すなわちCPU31はパツドオンインタラプトルーチンRT1の
演奏操作情報取込処理ループLP1においてパツドナンバ
データPADNO及びピークレベルデータADVALをレジスタ34
Aに取り込んだ後直前操作パツド検出処理ループLP2のス
テツプSP17において、飛びつき振動であると判断する。
因に当該パツドの振動(ピークレベルデータADVAL)は
小さいので、直前操作パツドの間の飛びつき振動検出用
係数データKDATAより比ADVAL/ADATA(MINPD)が小さく
なる。すなわち、当該ピーク検出パツド以外のパツドが
演奏操作されたときには、第12図について上述したよう
に、当該パツドにK(PANDO)(MINPD)の比率で減衰した振
動が到達するが、当該減衰した振動より現在生じた振動
の比が小さければ、飛びつき振動であると判断して良
い。
このときCPU31はステツプSP36、SP37、SP38において小
音量発音用係数データテーブルDMTBL(第15図)から対
応する飛びつき発音音量係数データD(PANDO)(MINPD)
読み出して飛びつき発音音量係数データDMRATIOとして
レジスタ34A(第5図)に保持すると共に、これをピー
クレベルデータADVALに乗算して飛びつき発音レベルデ
ータDMADVLを形成する。
かくして過去の状態がステータス「0」の場合のよう
に、打楽器音が発生していない状態においてピークが検
出されたパツドにおいては、自然楽器において生ずる飛
びつき発音のように、小音量の打楽器音を発生させるこ
とにより、より自然な打楽器音をサウンドシステム36に
おいて発生させることができる。
これに対して、ステータス「1」、「2」の場合に小さ
い振動のピークが発生したとき、CPU31はこれに応動し
ないことにより(ステツプSP35、SP40)、不自然な発音
を生じさせないようにする。
〔6〕第1の実施例の効果 上述の実施例によれば、ステツプSP35〜40でなる飛びつ
き振動処理ループLP3において、比較的小振動のピーク
が検出されたパツドについては、これを飛びつき振動と
判断して小音量の特殊発音をさせるようにしたことによ
り、自然楽器のような自然感の豊かな打楽器音を発生す
ることができる。
また上述の実施例の場合、ステツプSP25、SP26、SP27を
含む発音処理ループLP4において、過去の状態がステー
タス「1」のときに生じたピークのピークレベルデータ
ADVALが、自己振動検出用係数データテーブルDCTBLから
読み出された自己振動検出用係数データDV
(ADVAL)(15-LAPCTR)(すなわち自己振動検出データDCVA
L)より大きい場合に限つて打楽器音を発生させるよう
にしたことにより、同一パツドにおいて自然減衰であれ
ば生ずるはずがないようなピークが同一パツドにおいて
生じたとしても、これに基づいて誤つて打楽器音を発生
させないようにし得、かくして誤発音を確実に防止し得
る。
さらに上述の実施例によれば、ステツプSP25〜SP29及び
SP30のように、ステータス「1」においてすでに1回発
音動作した後に続けて2回目の発音をしたときCPU31
は、第2の基準時間TR2(例えば30〔ms〕)の値を経過
時間データLAPCTR(PADNO)として設定すると共に、パ
ツドステータスデータPDKON(PADNO)としてステータス
「2」のデータを設定するようにしたことにより、当該
パツドを2回連打した後に不自然な打楽器音を発生させ
ないようにしたことにより、誤発音の発生を未然に防止
し得る。
〔7〕他の実施例 (1) 上述の実施例においては本発明をソフトウエア
による制御によつて実現するように構成したが、この発
明はこれに限らず、専用のハードウエアを用いるように
しても良い。
(2) 上述の実施例の場合、パツドオンインタラプト
ルーチンとして第6図に示すようなアルゴリズムを用い
たが、当該発音状態の検出の仕方を表すアルゴリズムや
数値は上述の実施例に限らず、その他種々のものを適用
し得る。
(3) 上述の実施例においては本発明を電子打楽器に
適用した実施例について述べたが、これに限らずオート
リズム装置、電子鍵盤楽器等の電子ないし電気楽器の一
部を構成する電子打楽器に適用するようにしても良い。
(4) 第2図の実施例の場合、パツドナンバラツチデ
ータS14及びピーク値ラツチデータS15をラツチするため
のラツチレジスタ14を複数のパツドPAD1〜PAD6に共通に
設けてこれを時分割的に動作させることにより複数のパ
ツドの演奏操作情報を取り込むようにしたが、これに代
え、例えば複数のパツドPAD1〜PAD6に対してそれぞれラ
ツチレジスタを設け、各ラツチレジスタのラツチデータ
を順次所定の優先順位に従つて処理して行くようにする
等、種々変更し得る。
また同様にしてアナログ/デイジタル変換回路15及びピ
ーク検出回路25を各パツドごとに設けるようにしても良
い。
(5) 上述の実施例においては、第1、第2、第3の
基準時間TR1、TR2、TR3をそれぞれTR1=15〔ms〕、TR2
=30〔ms〕、TR3=5〔ms〕に選定した場合について述
べたが、この時間はこれに限らず、TR1=5〜30〔m
s〕、TR2=10〜50〔ms〕、TR3=2〜10〔ms〕の範囲で
変更するようにしても良い。
(6) 上述の実施例においては自己振動検出用係数デ
ータテーブルDCTBLから自己振動検出用係数データDV
(ADVAL)(15-LAPCTR)を自己振動検出データDCVALとして
自己振動検出データレジスタREG8に格納するように構成
したが、これに代え、自己振動検出データDCVALを次式 DCVAL=ADATA(PADNO)−〔15−LAPCTR(PADNO)〕……
(1) の演算式を用いて発音時のレベルデータADATA(PADNO)
から算出するようにしても良い(第20図)。
(7) 上述の実施例においては電子打楽器1の構成と
して第1図について上述したように、ボード2上に複数
のパツドPAD1〜PAD6を配設した構成について述べたが、
本発明はこれに限らず、要は複数のパツドを演奏操作し
たとき、隣接するパツドに振動による影響が生ずるよう
な構成のものに広く適用し得る。
(8) 第6図のパツドオンインタラプトルーチンRT1
の実施例の場合には、ステツプSP17において飛びつき振
動であるか否かの判断をする際に、この判断データKDAT
Aを、飛びつき振動検出用係数データテーブルKTABLE
(第11図)から各パツドごとに比率データK
(PADNO)(MINPD)を読み出すようにしたが、これに代え、
全てのパツドについて同一の比率データを用いるように
しても良い。
(9) 第6図のパツドオンインタラプトルーチンRT1
において、ステツプSP37において飛びつき発音レベルデ
ータDMADVLを得るにつき、第13図に示すように各パツド
ごとに自己振動検出係数データDV(ADVAL)(15-LAPCTR)
格納してなる自己振動検出用係数データテーブルDCTBL
を設け、この自己振動検出用係数データテーブルDCTBL
からのデータを読み出してピークを検出した当該パツド
からのピークレベルデータADVALに乗算するようにした
が、これに換えピークレベルデータADVALに所定の演算
を実行することによつて小音量発音レベルを決めるよう
にしても良い。
(10) 第6図のパツドオンインタラプトルーチンRT1
の場合には、小音量を発音する際に、その音量を飛びつ
き発音レベルデータDMADVLによつて決まる値に設定する
ようにしたが、これに代え又はこれに加えて、例えば高
音域の信号成分をカツトする(例えばローパスフィルタ
によつて)などにより、発生した小音量の打楽器音を目
立たなくしたり、逆に飛びつき発音特有の音色に変更し
たりすることなどのように、必要に応じて音色を変更す
るようにしても良い。
また飛びつき発音をする際には、例えばアタツクレート
を緩やかにするなどのように、発音レベルを制御するよ
うにしても良い。
(11) 上述の実施例においては第1の基準時間TR1の
間に同時に2音だけ発音させるようにした場合について
述べたが、本発明はこれに限らず、複数音を発音させる
ようにしても良い。
この場合第3の基準時間内に複数音についてピーク検出
が生じたパツドがあつた場合には、その全部について特
殊発音をさせるようにしても良い。
(12) 上述の実施例においては本発明を電子打楽器に
適用した実施例について述べたが、本発明はこれに限ら
ず、例えば電子弦楽器などのように、演奏操作によつて
振動体を振動させるようにした電子楽器に広く適用し得
る。
(13) 上述の実施例においては、第18図について上述
したように、ステータス「1」において自己振動が生じ
たときには、当該自己振動に基づくピークの発生が第1
の基準時間TR1の間でありかつ振動レベルが自己振動検
出用係数データテーブルDCTBLから読み出した自己振動
検出用係数データDV(ADVAL)(15-LAPCTR)でなる自己振動
検出データDCVALに基づいて、当該2回目のピーク検出
について発音動作をするか否かを判断することにより自
己振動による誤発音を防止するようにしたが、これに代
え、第20図に示すように、自己振動検出データDCVAL
を、経過時間データ15−LAPCTR(PADNO)を変数とする
演算式(例えば1次式)を用いて演算により求めるよう
にしてもよい。
(14) また自己振動による誤発音を防止するにつき、
第21図及び第22図に示すように、第4の基準時間TR4以
内にピーク検出が発生したときこれに基づく発音をさせ
ないようにしても良い。
すなわち第21図に示すように、時点t 以前において
ステータス「0」の状態にあるとき、時点t におい
てピークが発生したとき(第21図(A))、ピーク検出
回路25から第21図(B)に示すように、ピークインタラ
プト信号S13が発生したとき、CPU31は第22図に示すパツ
ドオンインタラプトルーチンRT11に入り、演奏操作され
たパツドを表すパツドナンバラツチデータS14をパツド
ナンバデータPADNOとしてレジスタ34Aに取り込むと共
に、ステツプSP42においてピーク値ラツチデータ14Bを
ピークレベルデータADVALとしてレジスタ34Aに書き込
む。
かくしてCPU31は演奏操作情報取込処理ループLP1を終了
して次のステツプSP43に移る。
このステツプSP43はピーク検出が生じたパツドと同一パ
ツドについて現在時点t より第4の基準時間TR4
(例えば15〔ms〕)以内に発音処理が実行されたか否か
を判断するステツプで、否定結果が得られたときこのこ
とは、直前に同一パツドについて発音がされた後、未だ
第4の基準時間TR4が経過しない状態にあることを意味
する。
実際上この第4の基準時間TR4はマスク時間データMSK
(PADNO)としてレジスタ34Aに保持されており、第5図の
経過時間データLAPCTR(i)と同様にタイマインタラプ
トルーチンRT2(第7図)によつてCPU31により計時処理
される。
このときCPU31はステツプSP44に移つてマスク時間デー
タMSK(PADNO)に第4の基準時間TR4を設定した後、ステ
ツプSP45においてパツドナンバデータPADNO及びピーク
レベルデータADVALをキーオン信号KONと一緒に楽音信号
発生部(TG)35に送出することによりサウンドシステム
36において打楽器音を発生させる。
このようにしてCPU31はパツドオンインタラプトルーチ
ンRT11を終了し、ステツプSP46からメインルーチンに戻
る。
これに対して第21図(A)に示すように、時点t
後第4の基準時間TR4が経過する前の時点t におい
てピークが発生して当該パッドについてピークインタラ
プト信号S13が発生すると(第21図(B))、CPU31はス
テツプSP41、SP42の処理を実行した後ステップSP45にお
いて肯定結果を得ることによりステップSP44及びSP45の
処理を実行せずに当該パツドオンインタラプトルーチン
RT11を終了してステツプSP46からメインルーチンに戻
る。
このようにしてCPU31は、同一パツドについて1回発音
処理を実行した後、第4の基準時間TR4(従つてマスク
時間データMSK(PADNO)が経過しない間に再度ピークを検
出すると、当該ピーク検出についての発音処理をしない
ように制御する。これにより例えば1本のステイツクに
よつてパツドを演奏操作するような電子楽器において、
例えばパツドが非常に強く演奏操作されたために、自己
振動に基づいてピークが発生しても、これにより不自然
な打楽器音を発生させないようにし得る。
(15) 上述の実施例においては、演奏操作子3として
複数例えば6個のパツドPAD1〜PAD6を設けるようにした
が、演奏操作子3の数は1つであつても上述の場合と同
様の効果を得ることができる。
〔発明の効果〕
上述のようにこの発明によれば、演奏操作子において異
常振動が生じたことにより演奏操作検出情報が得られた
とき、当該異常振動を自己振動検出データを用いて検出
して発音動作をさせないようにしたことにより、異常振
動に基づいて不自然な楽音を発生させないようにした電
子楽器を容易に実現し得る。
【図面の簡単な説明】
第1図は本発明による電子楽器の実施例における原理的
処理手順を示すフローチヤート、第2図は第1の実施例
の全体構成を示す系統図、第3図は第2図のパツドPAD1
〜PAD6の演奏操作情報の出力回路を示す接続図、第4図
は第3図の各部の信号を示す信号波形図、第5図は第2
図のデータ/ワーキングメモリ34に設けられているレジ
スタの詳細構成を示す略線図、第6図はパツドオンイン
タラプトルーチンを示すフローチヤート、第7図はタイ
マインタラプトルーチンを示すフローチヤート、第8図
は第2図のCPU31の基本的な制御方法の説明に供するタ
イムチヤート、第9図は第6図のステツプSP13の詳細処
理ステツプを示すフローチヤート、第10図は第2図のプ
ログラム/テーブルデータメモリ32のテーブルメモリの
構成を示す略線図、第11図は第10図の飛びつき振動検出
用係数データテーブルを示す図表、第12図は第11図のデ
ータとパツドPAD1〜PAD6との関係を示す略線図、第13図
は第10図の自己振動検出用係数データテーブルを示す図
表、第14図はその各データ群を示す略線図、第15図は第
10図の小音量発音用係数データテーブルを示す図表、第
16図は第15図のデータとパツドPAD1〜PAD6との関係を示
す略線図、第17図、第18図、第19図はステータス
「0」、「1」、「2」の振動状態を示す信号波形図、
第20図は自己振動検出データの他の実施例を示す特性曲
線図、第21図及び第22図は本発明による電気楽器の他の
実施例の説明に供する信号波形図及びフローチヤート、
第23図は電子打楽器の構成を示す略線的平面図、第24図
は異常振動の説明に供する信号波形図である。 2……ボード、3(PAD1〜PAD6)……演奏操作子(パツ
ド)、11……電子楽器、14……ラツチレジスタ、14A…
…パツドナンバラツチ部、14B……ピーク値ラツチ部、2
5……ピーク検出回路、31……CPU、35……楽音信号発生
部(TG)、36……サウンドシステム、37……インタラプ
トタイマ、34……データ/ワーキングメモリ、34A……
レジスタ。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】(a) 演奏操作子を有し、該演奏操作子
    の操作量に対応して楽音を発生する電子楽器において、 (b) 上記演奏操作子の操作量に対応する演奏操作検
    出情報を形成する演奏操作検出手段と、 (c) 現在時点において上記演奏操作子の演奏操作検
    出情報が得られたとき、上記演奏操作子と同一の操作子
    において前回の演奏操作によつて得られた前回の演奏操
    作検出情報に基づく演奏操作量及び当該前回の演奏操作
    検出情報が得られてから現在時点までの経過時間によつ
    て決まる自己振動検出データを形成し、上記現在時点に
    おける上記演奏操作検出情報を上記自己振動検出データ
    と比較し、当該比較結果に基づいて上記前回の演奏操作
    検出情報が発音を許容されたものであるとき発音情報を
    形成する発音制御手段と、 (d)上記発音情報に応動して楽音の発音動作をする楽
    音発生手段と を具えることを特徴とする電子楽器。
JP62332269A 1987-12-29 1987-12-29 電子楽器 Expired - Fee Related JPH0664467B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP62332269A JPH0664467B2 (ja) 1987-12-29 1987-12-29 電子楽器
US07/287,454 US4932303A (en) 1987-12-29 1988-12-19 Percussion type electronic musical instrument having reduced abnormal vibration tone generation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62332269A JPH0664467B2 (ja) 1987-12-29 1987-12-29 電子楽器

Publications (2)

Publication Number Publication Date
JPH01177086A JPH01177086A (ja) 1989-07-13
JPH0664467B2 true JPH0664467B2 (ja) 1994-08-22

Family

ID=18253056

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62332269A Expired - Fee Related JPH0664467B2 (ja) 1987-12-29 1987-12-29 電子楽器

Country Status (1)

Country Link
JP (1) JPH0664467B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5434393B2 (ja) * 2009-09-02 2014-03-05 ヤマハ株式会社 電子打楽器

Also Published As

Publication number Publication date
JPH01177086A (ja) 1989-07-13

Similar Documents

Publication Publication Date Title
JP3398646B2 (ja) 新しい入力装置を伴う仮想楽器
US4932303A (en) Percussion type electronic musical instrument having reduced abnormal vibration tone generation
JP2734521B2 (ja) 楽音制御装置
JPH0721717B2 (ja) 電子楽器
JPH0664463B2 (ja) 電子打楽器
JPH0664467B2 (ja) 電子楽器
JPH027096A (ja) 電子楽器
CN116364041B (zh) 吉他控制方法、吉他及存储介质
JP6677265B2 (ja) 音響処理装置、及び音響処理方法
JP3168637B2 (ja) 楽音発生装置
JPH0648558Y2 (ja) 電子弦楽器
JP2508044B2 (ja) 電子楽器の入力制御装置
JP2679725B2 (ja) 電子弦楽器
JP2958778B2 (ja) 楽音発生装置
JP5318460B2 (ja) 共鳴音発生装置
JP2615946B2 (ja) 楽音制御装置
JP3090589B2 (ja) 自動演奏装置
JPH0738954Y2 (ja) 電子弦楽器
JPH0633515Y2 (ja) 電子弦楽器の周波数制御装置
JPH0648557Y2 (ja) 電子弦楽器
JP2961675B2 (ja) 電子楽器
JP2508566Y2 (ja) 電子弦楽器
JP3223827B2 (ja) 音源波形データ生成方法および装置
JP2759149B2 (ja) 楽音制御装置
JP3344872B2 (ja) 自動演奏装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees