JP3236869B2 - Electronic musical instrument and musical tone control method used for electronic musical instrument - Google Patents

Electronic musical instrument and musical tone control method used for electronic musical instrument

Info

Publication number
JP3236869B2
JP3236869B2 JP18605992A JP18605992A JP3236869B2 JP 3236869 B2 JP3236869 B2 JP 3236869B2 JP 18605992 A JP18605992 A JP 18605992A JP 18605992 A JP18605992 A JP 18605992A JP 3236869 B2 JP3236869 B2 JP 3236869B2
Authority
JP
Japan
Prior art keywords
string
data
fret
membership function
rule
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
JP18605992A
Other languages
Japanese (ja)
Other versions
JPH064075A (en
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP18605992A priority Critical patent/JP3236869B2/en
Publication of JPH064075A publication Critical patent/JPH064075A/en
Application granted granted Critical
Publication of JP3236869B2 publication Critical patent/JP3236869B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、ファジー推論を応用す
ることにより、自然弦楽器(例えば、アコースティック
ギター)と同様の微妙な楽音特性を得ることが可能な電
子楽器に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an electronic musical instrument capable of obtaining a delicate musical tone characteristic similar to that of a natural stringed musical instrument (for example, an acoustic guitar) by applying fuzzy inference.

【0002】[0002]

【従来の技術】近年、電子技術の急速な発展に伴い、電
子技術を用いて弦楽器を電子化することが種々行われて
いる。この種の電子化した従来の弦楽器としては、例え
ば各弦の振動をピックアップし、そのピックアップされ
たピックアップ信号から弦振動周期(ピッチ)を抽出す
るピッチ抽出器、およびこのピッチ抽出器によって抽出
されたピッチから対応する音高を指定する音高指定装置
を使用する電子ギターがある。
2. Description of the Related Art In recent years, with the rapid development of electronic technology, various techniques have been used to digitize stringed musical instruments using electronic technology. As a conventional stringed electronic instrument of this type, for example, a pitch extractor that picks up vibration of each string and extracts a string vibration period (pitch) from the picked-up pickup signal, and a pitch extractor extracted by the pitch extractor There is an electronic guitar that uses a pitch specifying device that specifies a corresponding pitch from a pitch.

【0003】また、他の電子ギターとしては、例えば弦
操作に応答して動作するスイッチと、フィンガーボード
にマトリクス状に埋設された圧力応答型のスイッチを用
いたものがあり、前者のスイッチは音源の楽音の発音開
始を制御するのに利用され、後者のスイッチは楽音の音
高を定めるのに利用されている。さらに他の電子ギター
では、エンベロープを制御することも行われている。
Other electronic guitars include, for example, a switch that operates in response to a string operation and a pressure-responsive switch embedded in a matrix on a finger board. The former switch is a sound source. The latter switch is used to determine the pitch of the musical tone. In other electronic guitars, the envelope is also controlled.

【0004】[0004]

【発明が解決しようとする課題】ところで、電子化した
いずれの従来の弦楽器も、楽音の特性に影響を与える要
素であるフレット操作位置あるいは弾弦操作位置の検出
情報に基づき、楽音の特性を単独で変化させる構成とな
っていたため、これら各要素の組み合せに応じてきめ細
かく自然弦楽器に近い楽音特性を得ることができないと
いう問題点があった。
By the way, any conventional stringed electronic musical instrument has the characteristic of the musical tone alone based on the detection information of the fret operating position or the string operating position which is an element affecting the characteristic of the musical tone. Therefore, there is a problem in that it is not possible to obtain a musical tone characteristic close to a natural stringed musical instrument in detail according to the combination of these elements.

【0005】すなわち、一般に電子ギターに限らず、ア
コースティックギターなどの自然弦楽器の場合、左手で
フィンガーボード上の弦を押えるという操作、つまりフ
レット操作と、右手で1つあるいは複数の弦を弾くとい
う弾弦操作とが行われ、これにより発生楽音の特性(例
えば、音高)が決定される。
That is, in general, not only electronic guitars, but also natural stringed instruments such as acoustic guitars, an operation of pressing a string on a fingerboard with a left hand, that is, a fret operation and a play of playing one or more strings with a right hand. A string operation is performed, whereby the characteristics (for example, pitch) of the generated musical sound are determined.

【0006】この場合、フレット操作位置にはハイポジ
ションか、ロウポジションかがあり、また、弾弦操作位
置にはサドル側か、フレット側かがある。したがって、
これらのフレット操作位置および弾弦操作位置の組み合
せに応じて発生される楽音の特性(音高、音色、音量、
効果、エンベロープなど)が微妙に異なる。
In this case, the fret operation position includes a high position and a low position, and the string operation position includes a saddle side and a fret side. Therefore,
The characteristics of the musical tone (pitch, timbre, volume, volume, etc.) generated according to the combination of the fret operation position and the string operation position
Effects, envelopes, etc.) are slightly different.

【0007】これを具体的に説明すると、楽音の特性は
各要素によって次のように変化する。 (I)フレット操作位置 フレット操作位置がハイポジションのときは、発生楽音
のエンベロープ形状が図27(a)に示すように変化
し、そのレベルが時間(tで示す)経過に伴って早く減
衰する。一方、フレット操作位置がロウポジションのと
きは、発生楽音のエンベロープ形状が図27(b)に示
すように変化し、そのレベルが時間経過に伴ってゆるや
かに減衰する。
More specifically, the characteristic of a musical tone changes as follows depending on each element. (I) Fret operation position When the fret operation position is in the high position, the envelope shape of the generated musical tone changes as shown in FIG. 27 (a), and its level rapidly attenuates as time (indicated by t) elapses. . On the other hand, when the fret operation position is at the low position, the envelope shape of the generated musical tone changes as shown in FIG. 27B, and the level gradually decreases with time.

【0008】(II)弾弦操作位置 弾弦操作位置がサドル側(弦を支持している側)のとき
は、発生楽音のエンベロープ形状が図28(a)に示す
ように鋭く変化し、音色としては硬い音になり、レベル
は時間経過に伴って早く減衰する。一方、弾弦操作位置
がフレット側(弦がブリッジしている側)のときは、発
生楽音のエンベロープ形状が図28(b)に示すように
まるく変化し、音色としてはやわらかい音になり、レベ
ルは時間経過に伴ってゆるやかに減衰する。
(II) String operation position When the string operation position is on the saddle side (the side supporting the string), the envelope shape of the generated musical tone changes sharply as shown in FIG. Sounds harder, and the level decays quickly over time. On the other hand, when the string operation position is on the fret side (the side where the strings are bridged), the envelope shape of the generated musical tone changes completely as shown in FIG. 28 (b), and the tone becomes soft, Decays slowly over time.

【0009】したがって、自然弦楽器に近い楽音特性を
得るためには、フレット操作位置あるいは弾弦操作位置
の検出情報に基づき楽音の特性を単独で変化させるのみ
では不十分であり、上述したようにフレット操作位置お
よび弾弦操作位置という各要素の組み合せで音高などが
微妙に変化するという状況を考慮して、楽音の特性を制
御する必要がある。
Therefore, in order to obtain a tone characteristic close to that of a natural stringed instrument, it is not sufficient to simply change the characteristic of the tone based on the detection information of the fret operation position or the string operation position, as described above. It is necessary to control the characteristics of musical tones in consideration of a situation in which the pitch or the like changes subtly depending on the combination of the operation position and the string operation position.

【0010】このような音高などの微妙な変化は人間の
演奏感覚にもよるが、何れにしてもきめ細かく自然弦楽
器に近い楽音特性を得るという要求に対して、例えばマ
イクロコンピュータを用いて通常の演算処理によって対
処することも考えられるが、通常の演算でこれを行おう
とすると、膨大な処理時間がかかるという欠点がある。
[0010] Such a subtle change in pitch or the like depends on the performance sensation of a human, but in any case, in response to a demand for obtaining a musical tone characteristic that is fine and close to that of a natural stringed instrument, for example, a microcomputer is used to perform a normal operation. Although it is conceivable to cope with this by means of arithmetic processing, there is a drawback in that if this is attempted by ordinary arithmetic processing, an enormous amount of processing time is required.

【0011】例えば、各要素の組合せに関連すると思わ
れる数多くの入力パラメータを用いて複雑で、しかも大
量の演算を行う必要があり、処理数が飛躍的に多くなっ
て現実的な電子楽器を実現することが困難(例えば、コ
スト高を招く)である。
For example, it is necessary to perform a complicated and large amount of calculation using a large number of input parameters which are considered to be related to the combination of each element, and the number of processes is dramatically increased, thereby realizing a realistic electronic musical instrument. It is difficult (for example, the cost is increased).

【0012】そこで本発明は、ファジー推論を応用し、
少なくともフレット操作位置と弾弦操作位置との組み合
せに応じて発生される楽音の特性を微妙に制御すること
のできる電子楽器を提供することを目的としている。
Therefore, the present invention applies fuzzy inference,
It is an object of the present invention to provide an electronic musical instrument capable of finely controlling the characteristics of musical tones generated at least in accordance with a combination of a fret operation position and a string operation position.

【0013】[0013]

【課題を解決するための手段】上記目的達成のため、請
求項1記載の発明による電子楽器は、フィンガーボード
と、フィンガーボードに沿って張設された複数の弦と、
弦が弾弦されたことを検出する弦操作検出手段と、前記
弦操作検出手段により弾弦の検出された弦に対する弾弦
位置を検出する弾弦操作位置検出手段と、前記フィンガ
ーボードに対するフィンガリングの操作位置を検出する
フィンガリング操作位置検出手段と、弦の弾弦位置およ
びフィンガリング操作位置を入力パラメータとして所定
のファジールールに従ってファジー推論演算を行うファ
ジー推論手段と、該ファジー推論手段の演算結果に応じ
リリースレートで減衰するエンベロープを付加した
音の発生を指示する楽音発生指示手段と、を備えたこと
を特徴とする。
According to an aspect of the present invention, there is provided an electronic musical instrument comprising: a fingerboard; a plurality of strings stretched along the fingerboard;
String operation detecting means for detecting that a string has been struck, string operation position detecting means for detecting a string position of a string whose string has been detected by the string operation detecting means, and fingering for the finger board Fingering operation position detection means for detecting the operation position of the finger, fuzzy inference means for performing a fuzzy inference operation in accordance with a predetermined fuzzy rule using the string position of the string and the fingering operation position as input parameters, and a calculation result of the fuzzy inference means And a musical sound generation instructing means for instructing generation of a musical sound to which an envelope that attenuates at a release rate corresponding to the musical tone is added .

【0014】好ましい態様として、前記フィンガリング
操作位置検出手段は、フィンガリング操作位置として前
記フィンガボードのフレット操作位置を検出することを
特徴とする。
In a preferred aspect, the fingering operation position detecting means detects a fret operation position of the finger board as the fingering operation position.

【0015】また、請求項3記載の発明による電子楽器
は、フィンガーボードと、フィンガーボードに沿って張
設された複数の弦と、弦が弾弦されたことを検出する弦
操作検出手段と、前記弦操作検出手段により弾弦の検出
された弦に対する弾弦位置を検出する弾弦操作位置検出
手段と、前記フィンガーボードに対するフィンガリング
の操作位置を検出するフィンガリング操作位置検出手段
と、弾弦された弦のナンバーを検出する操作弦検出手段
と、弦の弾弦位置、フィンガリング操作位置及び弦ナン
バーを入力パラメータとして所定のファジールールに従
ってファジー推論演算を行うファジー推論手段と、該フ
ァジー推論手段の演算結果に応じたリリースレートで減
衰するエンベロープを付加した楽音の発生を指示する楽
音発生指示手段と、を備えたことを特徴とする。
An electronic musical instrument according to a third aspect of the present invention.
Stretched along the fingerboard and the fingerboard
A set of strings and a string that detects when the string is struck
Operation detection means and detection of bullet strings by the string operation detection means
String operation position detection for detecting the string position for the selected string
Means and fingering for said fingerboard
Fingering operation position detecting means for detecting the operation position of a finger
Operating string detecting means for detecting the number of the string that has been struck
And the string position, fingering operation position and string number
Use the bar as an input parameter and follow the predetermined fuzzy rules.
Fuzzy inference means for performing a fuzzy inference operation
Reduced at the release rate according to the calculation result of the fuzzy inference means.
A music instructing the generation of musical sounds with a decaying envelope
Sound generation instructing means.

【0016】好ましい態様として、前記フィンガリング
操作位置検出手段は、フィンガリング操作位置として前
記フィンガーボードのフレット操作位置を検出すること
を特徴とする。
In a preferred embodiment, the fingering
The operation position detecting means is used as the fingering operation position.
Detecting the fingerboard operation position of the fingerboard
It is characterized by.

【0017】請求項1又は3記載の前記電子楽器は、さ
らに前記楽音発生指示手段によって発音が指示された楽
音を発生する楽音発生手段を設けたことを特徴とする。
The electronic musical instrument according to claim 1 or 3 is
Music whose sound is instructed by the musical sound generation instructing means.
A tone generating means for generating a sound is provided.

【0018】そして請求項6記載の発明による電子楽器
の楽音制御方法は、フィンガーボードに沿って張設され
た複数の弦の中のいずれかの弦が弾弦されたことを検出
するステップと、弾弦の検出された弦に対する弾弦位置
を検出するステップと、前記フィンガーボードに対する
フィンガリングの操作位置を検出するステップと、検出
された弦の弾弦位置およびフィンガリング操作位置を入
力パラメータとして所定のファジールールに従ってファ
ジー推論演算を行うステップと、該ファジー推論の演算
結果に応じたリリースレートで減衰するエンベロープを
付加した楽音の発生を指示するステップと、からなる。
An electronic musical instrument according to the present invention.
The tone control method is stretched along the fingerboard
Detected that one of multiple strings was hit
And the string position of the string with respect to the detected string
Detecting, and for the finger board
Detecting a fingering operation position; and detecting the fingering operation position.
The string position and fingering operation position
Force parameters according to the prescribed fuzzy rules.
Performing a fuzzy inference operation, and fuzzy inference operation
The envelope that attenuates at the release rate according to the result
Instructing the generation of the added musical tone.

【0019】さらに請求項6記載の発明による電子楽器
の楽音制御方法は、フィンガーボードに沿って張設され
た複数の弦の中のいずれかの弦が弾弦されたことを検出
するステップと、弾弦の検出された弦に対する弾弦位置
を検出するステップと、前記フィンガーボードに対する
フィンガリングの操作位置を検出するステップと、弾弦
された弦のナンバーを検出するステップと、検出された
弦の弾弦位置、フィンガリング操作位置及び弦ナンバー
を入力パラメータとして所定のファジールールに従って
ファジー推論演算を行うステップと、該ファジー推論の
演算結果に応じたリリースレートで減衰するエンベロー
プを付加した楽音の発生を指示するステップと、からな
る。
An electronic musical instrument according to a sixth aspect of the present invention.
The tone control method is stretched along the fingerboard
Detected that one of multiple strings was hit
And the string position of the string with respect to the detected string
Detecting, and for the finger board
Detecting a fingering operation position;
Detecting the number of the detected string; and
String position, fingering operation position and string number
According to a predetermined fuzzy rule as an input parameter
Performing a fuzzy inference operation;
Envelope that attenuates at the release rate according to the calculation result
Instructing the generation of a musical tone to which a loop has been added.
You.

【0020】[0020]

【作用】請求項1又は6記載の発明では、複数の弦のう
ちの1つが弾弦されると、その弾弦位置(サドル側か、
フレット側か)およびフィンガリング操作位置(ハイポ
ジションか、ロウポジションか)を入力パラメータとす
るファジー推論により、発生する楽音に付加されるエン
ベロープのリリースレートが制御される。したがって、
弾弦時における弾弦位置とフィンガリング操作位置との
微妙な組み合せに従って、発生する楽音の特性が微妙に
変化して極めて自然弦楽器に近い楽音特性が得られる。
According to the first or sixth aspect of the present invention, when one of the plurality of strings is struck, the string position (saddle side,
The release rate of the envelope added to the generated musical tone is controlled by fuzzy inference using the fret side and the fingering operation position (high position or low position) as input parameters. Therefore,
According to the delicate combination of the position of the string and the position of the fingering when the string is struck, the characteristics of the generated musical tone change delicately, and a musical sound characteristic very similar to a natural stringed instrument can be obtained.

【0021】また、請求項3又は7記載の発明では、弦
ナンバーも入力パラメータの1つに加えらてファジー
推論が行われる。したがって、よりきめ細かく楽音特性
を微妙に変化させて自然楽器に近い楽音を発生可能とな
る。さらに、ファジー推論を応用することにより、演算
処理に必要な処理数が酸く無くなって、演算負担が軽減
する。
[0021] In the invention of claim 3 or 7, wherein the string number is also one in addition et been in fuzzy inference of the input parameters is carried out. Therefore, it is possible to generate a musical tone close to a natural musical instrument by finely changing the musical tone characteristic more finely. Further, by applying the fuzzy inference, the number of processes required for the arithmetic processing is reduced, and the arithmetic load is reduced.

【0022】[0022]

【実施例】以下、図面を参照して本発明の実施例につい
て説明する。図1は本発明に係る電子楽器を電子弦楽器
(特に、電気ギター)に適用したときの一実施例の全体
構成を示すブロック図である。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing an overall configuration of an embodiment when an electronic musical instrument according to the present invention is applied to an electronic stringed instrument (especially, an electric guitar).

【0023】図1において、この電気ギター1は大きく
分けて、胴部2と、胴部2から延びるネック3と、ネッ
ク3の先端に取り付けられたヘッド4とからなり、ネッ
ク3の上面にはフレット5を突設して配置したフィンガ
ーボード6が形成されている。
In FIG. 1, the electric guitar 1 is roughly divided into a body 2, a neck 3 extending from the body 2, and a head 4 attached to the tip of the neck 3, and an upper surface of the neck 3 A finger board 6 on which the frets 5 are protruded and arranged is formed.

【0024】フィンガーボード6上には6本の弦7が張
られ、各弦7の一端はヘッド4に設けたベッグ8に調節
可能に支持され、他端は胴部2に設けたブリッジ9に支
持されている。各弦7と対向する胴部2上の位置には磁
気型又は圧電型の2系統のピックアップ10、20が設
けられており、これによってそれぞれの弦の振動が検出
される。また、2系統のピックアップ10、20が設け
られていることにより、後述のように信号処理によって
弦7に対する弾弦位置(サドル側か、フレット側か)が
検出される。
Six strings 7 are stretched on the finger board 6, one end of each string 7 is adjustably supported by a beg 8 provided on the head 4, and the other end is connected to a bridge 9 provided on the body 2. Supported. At the position on the body 2 opposite to each string 7, two types of pickups 10, 20 of a magnetic type or a piezoelectric type are provided, and the vibration of each string is detected. In addition, since the two systems of pickups 10 and 20 are provided, a bullet string position (saddle side or fret side) with respect to the string 7 is detected by signal processing as described later.

【0025】そして、ピックアップされた弦振動信号か
ら弦7の振動周期(音高)と、撥弦の強さを示す弦タッ
チデータが抽出される。また、ブリッジ9にはトレモロ
アーム21が連結されており、トレモロアーム21によ
り弦7の張力が加減されて弦振動、すなわち音高に変化
が付けられる。
Then, the vibration period (pitch) of the string 7 and the string touch data indicating the strength of the plucked string are extracted from the picked-up string vibration signal. Further, a tremolo arm 21 is connected to the bridge 9, and the tension of the string 7 is adjusted by the tremolo arm 21 to change a string vibration, that is, a pitch.

【0026】胴部2上には他のスイッチ等も配置されて
おり、図1にはパワースイッチ22、音色選択スイッチ
23、エフェクトモード選択スイッチ24、楽音パラメ
ータ設定パネル25が示されている。パワースイッチ2
2は電源をオン/オフし、音色選択スイッチ23は音色
の選択に用いられる。
Other switches and the like are also arranged on the body 2, and FIG. 1 shows a power switch 22, a tone selection switch 23, an effect mode selection switch 24, and a tone parameter setting panel 25. Power switch 2
Reference numeral 2 turns on / off the power, and the tone color selection switch 23 is used for selecting a tone color.

【0027】エフェクトモード選択スイッチ24はコー
ラススイッチ、ディレイスイッチ、トレモロスイッチ、
リバーブスイッチからなり、演奏時に楽音のエフェクト
を選択するのに用いられる。楽音パラメータ設定パネル
25はエフェクトパラメータの設定、エンベロープパラ
メータの設定および各演奏操作子(弦7、トレモロアー
ム21など)あるいは演奏センサ(ピックアップ10、
20、トレモロアームセンサ26など)に可変の楽音制
御機能を割り当てるのに使用される。
The effect mode selection switch 24 includes a chorus switch, a delay switch, a tremolo switch,
It consists of a reverb switch, and is used to select musical tone effects during performance. The musical tone parameter setting panel 25 is used to set effect parameters, set envelope parameters, and set each performance operator (string 7, tremolo arm 21, etc.) or a performance sensor (pickup 10,
20, tremolo arm sensor 26, etc.).

【0028】胴部2とヘッド4にはそれぞれ示す2つの
スピーカ27a、27bは電子的に生成された楽音信号
を音響信号に変換して外部に放音する。
Two speakers 27a and 27b shown in the body 2 and the head 4 respectively convert an electronically generated tone signal into an acoustic signal and emit the sound to the outside.

【0029】フィンガーボード6は弾性ゴムでできてお
り、図2に詳細を示すように、隣り合うフレット間の各
弦7に対応するフィンガーボード6の下面の各位置には
フレットスイッチ30が埋設されている。図2では第2
番目のフレット位置にフレットスイッチ30が埋設され
る様子が表されているが、フレットスイッチ30は各フ
レット毎に埋設されており、図2ではその他のフレット
位置に対応するフレットスイッチ30の埋設図示を略し
ている。
The fingerboard 6 is made of an elastic rubber, and as shown in detail in FIG. 2, fret switches 30 are embedded at respective positions on the lower surface of the fingerboard 6 corresponding to the respective strings 7 between adjacent frets. ing. In FIG. 2, the second
The state where the fret switch 30 is buried at the third fret position is shown, but the fret switch 30 is buried for each fret, and FIG. 2 shows the buried state of the fret switch 30 corresponding to the other fret positions. Abbreviated.

【0030】したがって、複数のフレットスイッチ30
によりフィンガボード6に対するフレット位置が検出さ
れるようになっている。なお、フレットスイッチ30は
各フレット毎に埋設してもよいが、例えば、1つおきに
埋設してもよく、要はファジー推論に必要なフレットN
O.情報が確保できればよい。
Therefore, the plurality of fret switches 30
Thereby, the fret position with respect to the finger board 6 is detected. The fret switch 30 may be buried for each fret. For example, every other fret switch may be buried.
O. It is only necessary to be able to secure information.

【0031】図3は、電気ギター1の電子回路の構成を
示すブロック図である。図3において、フィンガーボー
ド6内に配設されたフレットスイッチ30はキーマトリ
クス回路31を形成するように結線されており、このキ
ーマトリクス回路31に接続されたキースキャン回路3
2によってフレットスイッチ30が走査されて各フレッ
トスイッチ30の状態が検出される。キースキャン回路
32の走査結果はマイクロコンピュータ40に取り込ま
れ、このようにして各弦7に関する操作フレット位置が
検出される。
FIG. 3 is a block diagram showing a configuration of an electronic circuit of the electric guitar 1. In FIG. 3, the fret switches 30 provided in the finger board 6 are connected so as to form a key matrix circuit 31, and the key scan circuit 3 connected to the key matrix circuit 31
2, the fret switches 30 are scanned and the state of each fret switch 30 is detected. The scan result of the key scan circuit 32 is taken into the microcomputer 40, and thus the operation fret position for each string 7 is detected.

【0032】フレットスイッチ30、キーマトリクス回
路31およびキースキャン回路32はフィンガリング操
作位置検出手段33を構成している。なお、本実施例は
電気ギターへの適用例であるが、弦楽器として例えば、
バイオリンに適用した場合には、フィンガボードに対す
るフィンガリング操作位置を検出するようにすればよ
い。
The fret switch 30, the key matrix circuit 31, and the key scan circuit 32 constitute fingering operation position detecting means 33. Note that this embodiment is an example of application to an electric guitar.
When applied to a violin, a fingering operation position with respect to a finger board may be detected.

【0033】34は電気ギター1のボディに配置される
スイッチ類(例えば、音色選択スイッチ23、エフェク
トモード選択スイッチ24)を包括的に表したもので、
このスイッチ部34の各スイッチの状態もマイクロコン
ピュータ40によってモニタされる。
Numeral 34 comprehensively represents switches (for example, tone selection switch 23, effect mode selection switch 24) arranged on the body of the electric guitar 1.
The state of each switch of the switch section 34 is also monitored by the microcomputer 40.

【0034】また、楽音パラメータ設定パネル25もマ
イクロコンピュータ40に結合しており、設定された楽
音パラメータがマイクロコンピュータ40のメモリに記
憶される。
The tone parameter setting panel 25 is also connected to the microcomputer 40, and the set tone parameters are stored in the memory of the microcomputer 40.

【0035】弦7の振動を検出しているサドル側に配置
された第1のピックアップ10からの信号はアンプ41
および直流阻止用のコンデンサ42を介してエンベロー
プ検出回路43に入力されている。同様に、弦7の振動
を検出しているフレット側に配置された第2のピックア
ップ20からの信号はアンプ51および直流阻止用のコ
ンデンサ52を介してエンベロープ検出回路53に入力
されている。
A signal from the first pickup 10 disposed on the saddle side for detecting the vibration of the string 7 is supplied to an amplifier 41.
The signal is input to an envelope detection circuit 43 via a DC blocking capacitor 42. Similarly, a signal from the second pickup 20 disposed on the fret side for detecting the vibration of the string 7 is input to an envelope detection circuit 53 via an amplifier 51 and a DC blocking capacitor 52.

【0036】第1のピックアップ10は、第1弦から第
6弦までの6つの弦の振動を検出するために、6つのピ
ックアップを有しており、それぞれ第1弦ピックアップ
〜第6弦ピックアップとして図示されている。同様に、
第2のピックアップ20も、第1弦から第6弦までの6
つの弦の振動を検出するために、6つのピックアップを
有しており、それぞれ第1弦ピックアッップ〜第6弦ピ
ックアップとして図示されている。
The first pickup 10 has six pickups for detecting vibrations of six strings from the first string to the sixth string. The first pickup 10 includes first to sixth string pickups. Is shown. Similarly,
The second pickup 20 also has 6 strings from the first string to the sixth string.
There are six pickups for detecting the vibration of one string, each of which is illustrated as a first string pickup through a sixth string pickup.

【0037】上記ピックアップ10、20、アンプ4
1、51、コンデンサ42、52およびエンベロープ検
出回路43、53は、全体として弦7が弾弦されたこと
を検出する弦操作検出手段60、弦7に対する弾弦位置
を検出する弾弦操作位置検出手段61、および弾弦され
た弦のナンバーを検出する操作弦検出手段62を構成し
ている。
The above pickups 10, 20 and amplifier 4
1, 51, capacitors 42 and 52, and envelope detection circuits 43 and 53, as a whole, string operation detecting means 60 for detecting that the string 7 has been struck, and a string operation position detection for detecting a string position with respect to the string 7. It comprises a means 61 and an operating string detecting means 62 for detecting the number of the string that has been struck.

【0038】弾弦操作位置検出手段61はサドル側の第
1のピックアッップ10の出力と、フレット側の第2の
ピックアップ20の出力から、その大きさ等を判別する
ことにより、どららの側で弦7がピッキングされたかを
判断して弾弦操作位置を検出する。操作弦検出手段62
は6つの弦7のそれぞれに対して配置された第1のピッ
クアッップ10の出力(あるいは第2のピックアップ2
0の出力でもよい)から弾弦された弦ナンバーを検出す
る。
The string operating position detecting means 61 determines the size of the output from the first pickup 10 on the saddle side and the output from the second pickup 20 on the fret side, thereby determining It is determined whether the string 7 has been picked up to detect the string operating position. Operation string detecting means 62
Is the output of the first pickup 10 (or the second pickup 2) arranged for each of the six strings 7
The string number of the struck string is detected from the output of 0.

【0039】アンプ41、51は、例えばピック抽出型
ギターにおけるピックアップ信号処理回路に用いられる
もと同様のものでよい。エンベロープ検出回路43、5
3は抵抗R1を介して接地されたピックアップ信号を非
反転入力端子に受けるオペアンプOPと、オペアンプO
Pの出力端子に接続されたダイオードDと、ダイオード
Dのカソード出力に一端が接続され、他端が接地された
コンデンサCと、抵抗R2とからなる時定数回路によっ
て構成され、時定数回路の一端における電位(エンベロ
ープ)がオペアンプOPの反転入力端子にフィードバッ
クされている。
The amplifiers 41 and 51 may be the same as those used in a pickup signal processing circuit of a pick extraction type guitar, for example. Envelope detection circuits 43, 5
Reference numeral 3 denotes an operational amplifier OP which receives a pickup signal grounded via a resistor R1 at a non-inverting input terminal, and an operational amplifier O
One end of the diode D is connected to the output terminal of the diode P, the other end is connected to the cathode output of the diode D, and the other end is grounded. Is fed back to the inverting input terminal of the operational amplifier OP.

【0040】エンベロープ検出回路43、53は弦振動
のエンベロープを検出する。エンベロープ検出回路43
の出力はマイクロコンピュータ40からのゲート調整信
号G1〜G6により制御される各ゲート44を介して1
つの共通ラインに多重化されてA/D変換器45に入力
される。A/D変換器45はゲート44の1つが開いて
いる状態のもとで、マイクロコンピュータ40から送ら
れてくるA/Dスタート指令信号に応答して、選択ゲー
ト44からのアナログエンベロープ信号をデジタル信号
に変換する。
The envelope detection circuits 43 and 53 detect the envelope of the string vibration. Envelope detection circuit 43
Is output through each gate 44 controlled by gate adjustment signals G1 to G6 from the microcomputer 40.
The signals are multiplexed on one common line and input to the A / D converter 45. The A / D converter 45 converts the analog envelope signal from the selection gate 44 into a digital signal in response to an A / D start command signal sent from the microcomputer 40 while one of the gates 44 is open. Convert to a signal.

【0041】変換が終了したとき、A/D変換器45は
エンド指令信号をマイクロコンピュータ40に送る。こ
れを受けてマイクロコンピュータ40はA/D変換器4
5の出力を読み込んで変換されたエンベロープ信号(振
動レベルデータ)をストアする。その後、マイクロコン
ピュータ40は選択していたゲート44を閉じ、次のゲ
ート44を選択して(開いて)、次の弦についての弦振
動エンベロープデータの読み取りを行う。
When the conversion is completed, the A / D converter 45 sends an end command signal to the microcomputer 40. In response, the microcomputer 40 sets the A / D converter 4
5 is read and the converted envelope signal (vibration level data) is stored. Thereafter, the microcomputer 40 closes the selected gate 44, selects (opens) the next gate 44, and reads the string vibration envelope data for the next string.

【0042】他方のエンベロープ検出回路53の出力に
ついてもマイクロコンピュータ40は同様の処理を行
う。すなわち、エンベロープ検出回路53の出力は待つ
40からのゲート調整信号K1〜K6により制御される
各ゲート54を介して1つの共通ラインに多重化されて
A/D変換器55に入力される。A/D変換器55はゲ
ート54の1つが開いている状態のもとで、マイクロコ
ンピュータ40から送られてくるA/Dスタート指令信
号に応答して、選択ゲート54からのアナログエンベロ
ープ信号をデジタル信号に変換する。
The microcomputer 40 performs the same processing for the output of the other envelope detection circuit 53. That is, the output of the envelope detection circuit 53 is multiplexed on one common line via each gate 54 controlled by the gate adjustment signals K1 to K6 from the wait 40 and input to the A / D converter 55. The A / D converter 55 converts the analog envelope signal from the selection gate 54 into a digital signal in response to an A / D start command signal sent from the microcomputer 40 while one of the gates 54 is open. Convert to a signal.

【0043】変換が終了したとき、A/D変換器55は
エンド指令信号をマイクロコンピュータ40に送る。こ
れを受けてマイクロコンピュータ40はA/D変換器5
5の出力を読み込んで変換されたエンベロープ信号(振
動レベルデータ)をストアする。その後、マイクロコン
ピュータ40は選択していたゲート54を閉じ、次のゲ
ート54を選択して(開いて)、次の弦についての弦振
動エンベロープデータの読み取りを行う。
When the conversion is completed, the A / D converter 55 sends an end command signal to the microcomputer 40. In response, the microcomputer 40 sets the A / D converter 5
5 is read and the converted envelope signal (vibration level data) is stored. Thereafter, the microcomputer 40 closes the selected gate 54, selects (opens) the next gate 54, and reads the string vibration envelope data for the next string.

【0044】上記アンプ41、51、コンデンサ42、
52およびエンベロープ検出回路43、53は弦振動ピ
ックアップ信号のアナログ処理回路63を構成してい
る。
The amplifiers 41 and 51, the capacitor 42,
The reference numeral 52 and the envelope detection circuits 43 and 53 constitute an analog processing circuit 63 for a string vibration pickup signal.

【0045】マイクロコンピュータ40はALU70、
ROM71、ワーキングRAM72、タイマ73を含ん
でおり、これらを用いて各演奏操作子からの演奏入力デ
ータを処理し、処理された入力データと楽音パラメータ
設定パネル25によって設定された情報とに基づいて音
源80、エンベロープ発生回路81を制御する。マイク
ロコンピュータ40にはメンバーシップ関数テーブルR
OM74が外付けされている。
The microcomputer 40 is an ALU 70,
A ROM 71, a working RAM 72, and a timer 73 are used to process performance input data from each of the performance operators, and a sound source is generated based on the processed input data and information set by the tone parameter setting panel 25. 80, controls the envelope generation circuit 81; The microcomputer 40 has a membership function table R
OM74 is externally connected.

【0046】また、本実施例の特徴としてマイクロコン
ピュータ40は各演奏操作子からの演奏入力データを受
け入れ、ROM71に格納されている所定のプログラム
に基づき、弦の弾弦位置、フレット操作位置および弦ナ
ンバーを入力パラメータとして所定のファジールールに
従ってファジー推論を行い、その推論出力に対応して楽
音の特性を制御するために必要な処理を行い、1系統の
PCM音源80に制御データを供給する。なお、マイク
ロコンピュータ40の処理は後述のフローチャートによ
って示される。
Also, as a feature of the present embodiment, the microcomputer 40 receives performance input data from each performance operator, and based on a predetermined program stored in the ROM 71, the string position, the fret operation position, and the string position. Fuzzy inference is performed in accordance with a predetermined fuzzy rule using the number as an input parameter, processing necessary for controlling the characteristics of musical sounds is performed in accordance with the inference output, and control data is supplied to one system of PCM sound source 80. The processing of the microcomputer 40 is shown by a flowchart described later.

【0047】メンバーシップ関数テーブルROM74は
ファジー推論において使用するメンバーシップ関数を表
すテーブルデータを記憶している。また、ワーキングR
AM72はマイクロコンピュータ40が制御を実行する
際にワーキングエリアとして用いられるもので、例えば
音高を示す音高データなどの情報を一時的に記憶する。
The membership function table ROM 74 stores table data representing membership functions used in fuzzy inference. Working R
The AM 72 is used as a working area when the microcomputer 40 executes control, and temporarily stores information such as pitch data indicating a pitch, for example.

【0048】PCM音源(楽音発生手段)80は時分割
動作するポリフォニックのPCM音源であり、内部に波
形ROMを有し、マイクロコンピュータ40から供給さ
れる指定された音色データ、音階データに基づき、読み
出しアドレスを波形ROMに供給して複数の音色の楽音
波形を記憶している波形ROMから選択された波形デー
タを読み出して乗算器82に出力する。乗算器82は、
PCM音源80の出力に対してエンベロープ発生回路8
1から出力されるエンベロープを乗算し、その乗算結果
を発音回路83に出力する。
The PCM tone generator (tone generator) 80 is a polyphonic PCM tone generator that operates in a time-division manner, has a waveform ROM inside, and reads out based on designated tone color data and scale data supplied from the microcomputer 40. The address is supplied to the waveform ROM, and the selected waveform data is read from the waveform ROM storing the musical tone waveforms of a plurality of timbres and output to the multiplier 82. The multiplier 82
Envelope generating circuit 8 for the output of PCM sound source 80
Multiply the envelope output from 1 and output the multiplication result to the sound generator 83.

【0049】発音回路83は乗算器82の出力に応じて
対応する楽音を発生する。その後、発音回路83の出力
は、例えばD/A変換回路に供給されてデジタル信号が
アナログ信号に変換され、ローパスフィルタ、出力アン
プ等からなる出力部を介してアナログの楽音信号が外部
に出力されて放音される。
The tone generator 83 generates a corresponding musical tone according to the output of the multiplier 82. Thereafter, the output of the tone generator 83 is supplied to, for example, a D / A converter circuit, where the digital signal is converted into an analog signal, and an analog tone signal is output to the outside via an output unit including a low-pass filter, an output amplifier, and the like. Is emitted.

【0050】マイクロコンピュータ40は単独で楽音発
生指示手段を構成する。また、マイクロコンピュータ4
0およびメンバーシップ関数テーブルROM74は、全
体としてファジー推論手段100を構成する。
The microcomputer 40 independently constitutes a tone generation instruction means. The microcomputer 4
0 and the membership function table ROM 74 constitute the fuzzy inference means 100 as a whole.

【0051】次に、楽音特性制御のファジールールにつ
いて説明する。図4(a)、(b)、(c)は前件部の
メンバーシップ関数で、そのうち図4(a)はフレット
NO.に関するメンバーシップ関数、図4(b)は弾弦
位置に関するメンバーシップ関数、図4(c)は弦N
O.に関するメンバーシップ関数、である。
Next, the fuzzy rules for controlling the tone characteristics will be described. 4 (a), (b) and (c) are membership functions of the antecedent part, of which FIG. 4 (b) is a membership function relating to the position of the string, and FIG. 4 (c) is a membership function relating to the string N.
O. Membership function.

【0052】また、図4(d)、(e)は後件部におけ
るファジー出力で、そのうち図4(d)はアタックレー
トに関するメンバーシップ関数、図4(e)はリリース
(減衰)レートに関するメンバーシップ関数である。
4D and 4E show the fuzzy output in the consequent part. FIG. 4D shows the membership function related to the attack rate, and FIG. 4E shows the member related to the release (attenuation) rate. It is a ship function.

【0053】なお、各メンバーシップ関数におけるラベ
ルの意味は、次の通りである。 FL:「フレットNO.が大きい」 FS:「フレットNO.が小さい」 PL:「弾弦位置がフレット側である」 PS:「弾弦位置がサドル側である」 SL:「弦NO.が大きい」 SS:「弦NO.が小さい」 AL:「アタックレートを強くする」 ALL:「アタックレートをやや強くする」 ALS:「アタックレートをゆるやかにする」 AS:「アタックレートを極めてゆるやかにする」 RL:「リリースレートを早くする」 RLL:「リリースレートをやや早くする」 RLS:「リリースレートをゆるやかにする」 RS:「リリースレートを極めてゆるやかにする」
The meaning of the label in each membership function is as follows. FL: “The fret number is large” FS: “The fret number is small” PL: “The bullet string position is on the fret side” PS: “The bullet string position is on the saddle side” SL: “The string number is large SS: "String NO. Is small" AL: "Strengthen attack rate" ALL: "Slightly increase attack rate" ALS: "Slow attack rate" AS: "Extremely slow attack rate" RL: "Release release rate" RLL: "Release release rate slightly" RLS: "Release release rate slowly" RS: "Release release rate extremely slowly"

【0054】ファジィルールは、いわゆるIF、THE
N(もし、ならば)の形式で表現される。本実施例で
は、アタックレートに対して以下の4つのルールを採用
し、リリースレートに対して以下の4つのルールを採用
している。アタックレートに関するルールは、次の表1
のように示される。
The fuzzy rule is a so-called IF, THE
N (if any). In the present embodiment, the following four rules are adopted for the attack rate, and the following four rules are adopted for the release rate. The rules for attack rate are shown in Table 1 below.
Is shown as

【0055】[0055]

【表1】 [Table 1]

【0056】また、リリースレートに関するルールは、
次の表2のように示される。
Also, the rules regarding the release rate are as follows:
This is shown in Table 2 below.

【0057】[0057]

【表2】 [Table 2]

【0058】まず、表1を参照してアタックレートのル
ールについて説明する。アタックレートのルール ルールA:IF フレットNO.=FS 弾弦位置=
PS AND 弦NO.=SS THEN ファジー出力=AL(アタックレート強い)
First, an attack rate rule will be described with reference to Table 1. Attack rate rule Rule A: IF fret NO. = FS string position =
PS AND String NO. = SS THEN fuzzy output = AL (strong attack rate)

【0059】ファジィルールAは、「もし、フレットN
O.が小さく(ロウポジション)、弾弦位置がサドル側
であり、かつ弦NO.が小さい場合には、アタックレー
トを強くする。」という意味である。
The fuzzy rule A is described as “if fret N
O. Is small (low position), the string position is on the saddle side, and the string NO. If is small, increase the attack rate. It means.

【0060】ルールB:IF フレットNO.=FS
弾弦位置=PS AND 弦NO.=SL OR フレットNO.=FS 弾弦位置=PL AND 弦NO.=SS OR フレットNO.=FS 弾弦位置=PL AND 弦NO.=SL THEN ファジー出力=ALL(アタックレートやや
強い)
Rule B: IF fret NO. = FS
String position = PS AND String NO. = SL OR fret NO. = FS string position = PL AND string NO. = SS OR fret NO. = FS string position = PL AND string NO. = SL THEN Fuzzy output = ALL (Attack rate somewhat strong)

【0061】ファジィルールBは、「もし、フレットN
O.が小さく(ロウポジション)、弾弦位置がサドル側
であり、かつ弦NO.が大きい場合、あるいはフレット
NO.が小さく(ロウポジション)、弾弦位置がフレッ
ト側であり、かつ弦NO.が小さい場合、あるいはフレ
ットNO.が小さく(ロウポジション)、弾弦位置がフ
レット側であり、かつ弦NO.が大きい場合には、アタ
ックレートをやや強くする。」という意味である。
The fuzzy rule B is described as “if fret N
O. Is small (low position), the string position is on the saddle side, and the string NO. Is large, or the fret NO. Is small (low position), the string position is on the fret side, and the string NO. Is small, or the fret NO. Is small (low position), the string position is on the fret side, and the string NO. Is larger, the attack rate is set to be slightly higher. It means.

【0062】ルールC:IF フレットNO.=FL
弾弦位置=PS AND 弦NO.=SS OR フレットNO.=FL 弾弦位置=PS AND 弦NO.=SL THEN ファジー出力=ALS(アタックレートゆる
やか)
Rule C: IF fret NO. = FL
String position = PS AND String NO. = SS OR fret NO. = FL string position = PS AND string NO. = SL THEN Fuzzy output = ALS (Slow attack rate)

【0063】ファジィルールCは、「もし、フレットN
O.が大きく(ハイポジション)、弾弦位置がサドル側
であり、かつ弦NO.が小さい場合、あるいはフレット
NO.が大きく(ハイポジション)、弾弦位置がサドル
側であり、かつ弦NO.が大きい場合には、アタックレ
ートをゆるやかにする。」という意味である。
The fuzzy rule C is described as “if fret N
O. Is large (high position), the string position is on the saddle side, and the string NO. Is small, or the fret NO. Is large (high position), the string position is on the saddle side, and the string NO. When is large, the attack rate is made slow. It means.

【0064】ルールD:IF フレットNO.=FL
弾弦位置=PL AND 弦NO.=SS OR フレットNO.=FL 弾弦位置=PS AND 弦NO.=SL THEN ファジー出力=AS(アタックレート極めて
ゆるやか)
Rule D: IF fret NO. = FL
Bullet position = PL AND String NO. = SS OR fret NO. = FL string position = PS AND string NO. = SL THEN Fuzzy output = AS (Attack rate is extremely slow)

【0065】ファジィルールDは、「もし、フレットN
O.が大きく(ハイポジション)、弾弦位置がフレット
側であり、かつ弦NO.が小さい場合、あるいはフレッ
トNO.が大きく(ハイポジション)、弾弦位置がサド
ル側であり、かつ弦NO.が大きい場合には、アタック
レートを極めてゆるやかにする。」という意味である。
The fuzzy rule D is "if, fret N
O. Is large (high position), the string position is on the fret side, and the string NO. Is small, or the fret NO. Is large (high position), the string position is on the saddle side, and the string NO. Is large, the attack rate is made extremely slow. It means.

【0066】次に、表2を参照してリリースレートのル
ールについて説明する。リリースレートのルール ルールE:IF フレットNO.=FL 弾弦位置=
PS AND 弦NO.=SL THEN ファジー出力=RL(リリースレート早い)
Next, the rules for the release rate will be described with reference to Table 2. Release rate rule Rule E: IF fret NO. = FL string position =
PS AND String NO. = SL THEN Fuzzy output = RL (Release rate is fast)

【0067】ファジィルールEは、「もし、フレットN
O.が大きく(ハイポジション)、弾弦位置がサドル側
であり、かつ弦NO.が大きい場合には、リリースレー
トを早くする。」という意味である。
The fuzzy rule E is "if, fret N
O. Is large (high position), the string position is on the saddle side, and the string NO. If is large, increase the release rate. It means.

【0068】ルールF:IF フレットNO.=FL
弾弦位置=PS AND 弦NO.=SS OR フレットNO.=FL 弾弦位置=PL AND 弦NO.=SL OR フレットNO.=FS 弾弦位置=PS AND 弦NO.=SS THEN ファジー出力=RLL(リリースレートやや
早い)
Rule F: IF fret NO. = FL
String position = PS AND String NO. = SS OR fret NO. = FL string position = PL AND string NO. = SL OR fret NO. = FS string position = PS AND string NO. = SS THEN Fuzzy output = RLL (Release rate is slightly faster)

【0069】ファジィルールFは、「もし、フレットN
O.が大きく(ハイポジション)、弾弦位置がサドル側
であり、かつ弦NO.が小さい場合、あるいはフレット
NO.が大きく(ハイポジション)、弾弦位置がフレッ
ト側であり、かつ弦NO.が大きい場合、あるいはフレ
ットNO.が小さく(ロウポジション)、弾弦位置がサ
ドル側であり、かつ弦NO.が小さい場合には、リリー
スレートをやや早くする。」という意味である。
The fuzzy rule F is described as “If fret N
O. Is large (high position), the string position is on the saddle side, and the string NO. Is small, or the fret NO. Is large (high position), the string position is on the fret side, and the string NO. Is large, or the fret NO. Is small (low position), the string position is on the saddle side, and the string NO. If is small, increase the release rate slightly. It means.

【0070】ルールG:IF フレットNO.=FL
弾弦位置=PL AND 弦NO.=SS OR フレットNO.=FS 弾弦位置=PL AND 弦NO.=SL OR フレットNO.=FS 弾弦位置=PS AND 弦NO.=SL THEN ファジー出力=RLS(リリースレートゆる
やか)
Rule G: IF fret NO. = FL
Bullet position = PL AND String NO. = SS OR fret NO. = FS string position = PL AND string NO. = SL OR fret NO. = FS string position = PS AND string NO. = SL THEN Fuzzy output = RLS (Release rate is slow)

【0071】ファジィルールGは、「もし、フレットN
O.が大きく(ハイポジション)、弾弦位置がフレット
側であり、かつ弦NO.が小さい場合、あるいはフレッ
トNO.が小さく(ロウポジション)、弾弦位置がフレ
ット側であり、かつ弦NO.が大きい場合、あるいはフ
レットNO.が小さく(ロウポジション)、弾弦位置が
サドル側であり、かつ弦NO.が大きい場合には、リリ
ースレートをゆるやかにする。」という意味である。
The fuzzy rule G is defined as “if fret N
O. Is large (high position), the string position is on the fret side, and the string NO. Is small, or the fret NO. Is small (low position), the string position is on the fret side, and the string NO. Is large, or the fret NO. Is small (low position), the string position is on the saddle side, and the string NO. If is large, the release rate should be slow. It means.

【0072】ルールH:IF フレットNO.=FS
弾弦位置=PL AND 弦NO.=SS THEN ファジー出力=RS(リリースレート極めて
ゆるやか)
Rule H: IF fret NO. = FS
Bullet position = PL AND String NO. = SS THEN Fuzzy output = RS (Release rate is very slow)

【0073】ファジィルールHは、「もし、フレットN
O.が小さく(ロウポジション)、弾弦位置がフレット
側であり、かつ弦NO.が小さい場合には、リリースレ
ートを極めてゆるやかにする。」という意味である。
The fuzzy rule H is defined as “if fret N
O. Is small (low position), the string position is on the fret side, and the string NO. When is small, the release rate is made extremely slow. It means.

【0074】次に、本実施例の電気ギターの動作につい
て説明する。メインプログラム 図5は楽音発生制御の処理を示すメインプログラムであ
る。本電子ギターの電源がオンすると、まずステップS
1でイニシャライズ処理を行う。これにより、例えば、
マイクロコンピュータ40のレジスタのリセット、ワー
キングRAM72のクリア、さらには後述のサブルーチ
ンのイニシャライズなどが行われる。
Next, the operation of the electric guitar of this embodiment will be described. Main Program FIG. 5 is a main program showing processing of musical tone generation control. When the power of the electronic guitar is turned on, first, step S
In step 1, an initialization process is performed. This allows, for example,
The reset of the register of the microcomputer 40, the clearing of the working RAM 72, and the initialization of a subroutine described later are performed.

【0075】次いで、ステップS2で弦NO.に対応す
るポインタ(以下、弦ポインタという)nを[1]にす
る。n=[1]という状態は弦NO.が[1]というこ
とで、第1弦に相当する。これは、第1弦から、順次、
弾弦状況をみていくためである。これにより、後述のよ
うに、弦ポインタnの値から弾弦された弦NO.が検出
される。弦ポインタnの値は、マイクロコンピュータ4
0のnレジスタに記憶される。
Next, at step S2, the string NO. (Hereinafter referred to as a string pointer) n is set to [1]. The state where n = [1] is the string NO. Is [1], which corresponds to the first string. This is, from the first string,
This is to check the situation of the bullet. As a result, as described later, the string NO. Is detected. The value of the string pointer n is
0 is stored in the n register.

【0076】次いで、ステップS3で発音処理のための
弾弦フラグLnが[1]であるか否かを判別する。弾弦
フラグLnは弦7がひかれて、その振動レベルがある一
定以上の場合に、発音継続を指示するためのものであ
る。弾弦フラグLn=[0]のときは弦7がひかれてい
ないと判断してステップS4以降の処理を行う。一方、
弾弦フラグLn=[1]のときは弦7がひかれて、その
振動レベルがある一定以上であると判断して後述のステ
ップS22に進んで発音処理を継続する。
Next, in step S3, it is determined whether or not the string flag Ln for sound generation processing is [1]. The bullet string flag Ln is for instructing continuation of sound generation when the string 7 is pulled and its vibration level is equal to or higher than a certain level. When the string flag Ln = [0], it is determined that the string 7 has not been pulled, and the processing after step S4 is performed. on the other hand,
When the string flag Ln = [1], the string 7 is pulled, and it is determined that the vibration level is equal to or higher than a certain value, and the process proceeds to step S22 described later to continue the sound generation process.

【0077】弾弦フラグLn=[0]でステップS4に
進むと、ゲート調整信号Gnをオン(すなわち、“H”
レベル)にする。例えば、今回のルーチンではn=
[1]であるから、Gn=G1となり、ゲート調整信号
G1が“H”となる。これにより、ゲート44がオンす
る。したがって、サドル側の第1弦の振動検出結果であ
るエンベロープ検出回路43の出力がゲート44を介し
て多重化された1つの共通ラインからA/D変換器45
に入力されてA/D変換された後、マイクロコンピュー
タ40に取り込まれる。
When the routine proceeds to step S4 with the string flag Ln = [0], the gate adjustment signal Gn is turned on (that is, "H").
Level). For example, in this routine, n =
Since [1], Gn = G1, and the gate adjustment signal G1 becomes "H". As a result, the gate 44 turns on. Therefore, the output of the envelope detection circuit 43, which is the detection result of the vibration of the first string on the saddle side, is output from the multiplexed one common line via the gate 44 to the A / D converter 45.
Is input to the microcomputer and is A / D converted.

【0078】次いで、ステップS5で同様に、ゲート調
整信号Knをオン(“H”レベル)にする。今回のルー
チンではn=[1]であるから、Kn=K1となり、ゲ
ート調整信号K1が“H”となる。これにより、ゲート
54がオンする。したがって、フレット側の第1弦の振
動検出結果であるエンベロープ検出回路53の出力がゲ
ート54を介して多重化された1つの共通ラインからA
/D変換器55に入力されてA/D変換された後、マイ
クロコンピュータ40に取り込まれる。
Next, similarly, in step S5, the gate adjustment signal Kn is turned on ("H" level). In this routine, since n = [1], Kn = K1, and the gate adjustment signal K1 becomes “H”. As a result, the gate 54 is turned on. Therefore, the output of the envelope detection circuit 53, which is the detection result of the vibration of the first string on the fret side, is output from one common line multiplexed through the gate 54 to A
After being input to the / D converter 55 and A / D converted, it is taken into the microcomputer 40.

【0079】次いで、ステップS6で第1のA/D変換
器45によってA/D変換された弦振動エンベロープデ
ータをマイクロコンピュータ40内部のAレジスタにス
トアする。このようにして、サドル側の第1弦の振動情
報がマイクロコンピュータ40に取り込まれる。
Next, in step S6, the string vibration envelope data A / D converted by the first A / D converter 45 is stored in the A register inside the microcomputer 40. Thus, the vibration information of the first string on the saddle side is taken into the microcomputer 40.

【0080】また、ステップS7では第2のA/D変換
器45によってA/D変換された弦振動エンベロープデ
ータをマイクロコンピュータ40内部のBレジスタにス
トアする。このようにして、フレット側の第1弦の振動
情報がマイクロコンピュータ40に取り込まれる。
In step S7, the string vibration envelope data A / D converted by the second A / D converter 45 is stored in the B register inside the microcomputer 40. Thus, the vibration information of the first string on the fret side is taken into the microcomputer 40.

【0081】次いで、ステップS8でAレジスタにスト
アしたサドル側の第1弦の振動情報、すなわち第1弦の
弦振動エンベロープデータ(以下、Aで表す)を所定の
しきい値TH1と比較する。しきい値TH1は、弦7の
振動レベルがある一定以上の場合に、弾弦されたと判断
するためのスレショルドレベルである。
Next, in step S8, the vibration information of the first string on the saddle side stored in the A register, that is, the string vibration envelope data of the first string (hereinafter, represented by A) is compared with a predetermined threshold value TH1. The threshold value TH1 is a threshold level for determining that a string has been struck when the vibration level of the string 7 is equal to or greater than a certain value.

【0082】弦振動エンベロープデータAがしきい値T
H1以上のときは、ステップS9に進んで弾弦フラグL
nを[1]にセットする。これにより、弾弦されたと判
断され、後に発音処理されることになる。なお、弾弦さ
れたか否かの判断であるから、フレット側の第1弦の振
動情報については、しきい値TH1との比較を行わな
い。
When the string vibration envelope data A is equal to the threshold T
If it is equal to or greater than H1, the process proceeds to step S9, and the string flag L
Set n to [1]. As a result, it is determined that the string has been struck, and sound generation processing will be performed later. Since it is determined whether or not a string has been struck, the vibration information of the first string on the fret side is not compared with the threshold value TH1.

【0083】一方、弦振動エンベロープデータAがしき
い値TH1未満のときは、ステップS10に進んで弦ポ
インタnを[1]だけインクリメントし、その後、ステ
ップS11でn=[7]になったか否かを判別する。n
=[7]でなければ、ステップS3に戻って同様の処理
を繰り返す。これにより、第2弦についての弾弦判別処
理が行われ、その弦振動エンベロープデータAがしきい
値TH1以上のときは、ステップS9に進んで弾弦フラ
グLnが[1]にセットされ、以後、第2弦についての
発音処理が行われることになる。以下、同様にして第3
弦〜第6弦までの弾弦判別処理が行われる。
On the other hand, if the string vibration envelope data A is less than the threshold value TH1, the process proceeds to step S10, where the string pointer n is incremented by [1]. Then, in step S11, it is determined whether n = [7]. Is determined. n
If not = [7], the process returns to step S3 to repeat the same processing. As a result, the string discrimination processing for the second string is performed. If the string vibration envelope data A is equal to or larger than the threshold value TH1, the process proceeds to step S9, where the string string flag Ln is set to [1]. , The second string is sounded. Hereinafter, in the same manner, the third
A bullet string / string to sixth string discrimination process is performed.

【0084】そして、ステップS11でn=[7]にな
ると、YESに分岐してステップS2に戻り、再びn=
[1]の状態から上記同様の処理が繰り返される。この
ようにしてサドル側の第1弦〜第6弦までの弾弦判別処
理が行われる。このとき、同時に弾かれた弦7の番号、
すなわち弦NO.が検出される。
When n = [7] in step S11, the process branches to YES and returns to step S2, where n = 7 again.
The same processing as described above is repeated from the state of [1]. In this way, the first to sixth strings on the saddle side are subjected to the string determination processing. At this time, the number of the string 7 played at the same time,
That is, the string NO. Is detected.

【0085】さて、ステップS8からYESに分岐して
ステップS9により弾弦フラグLnを[1]にセットし
た後は、ステップS12に進む。ステップS12では弾
弦位置を判別するための位置比率CをC=A/Bなる式
に従って演算する。ここで、Bは、Bレジスタにストア
したフレット側についての弦7の振動情報、すなわち弦
振動エンベロープデータである。
After branching from step S8 to YES and setting the string flag Ln to [1] in step S9, the process proceeds to step S12. In step S12, the position ratio C for determining the string position is calculated in accordance with the equation C = A / B. Here, B is vibration information of the string 7 on the fret side stored in the B register, that is, string vibration envelope data.

【0086】位置比率Cを演算することにより、弦7が
サドル側で弾かれたのか、あるいはフレット側で弾かれ
たのかの判別を行うことができる。例えば、Cの値が大
きい場合は弦振動エンベロープデータAが大きいので、
サドル側で弾かれたと判断でき、Cの値が小さい場合は
弦振動エンベロープデータBが大きいので、フレット側
で弾かれたと判断できる。
By calculating the position ratio C, it is possible to determine whether the string 7 has been hit on the saddle side or on the fret side. For example, when the value of C is large, the string vibration envelope data A is large.
It can be determined that the ball has been hit on the saddle side, and if the value of C is small, the string vibration envelope data B is large, so it can be determined that the ball has been hit on the fret side.

【0087】次いで、ステップS13でn弦のフレット
スイッチ30を走査する。フレットスイッチ30はキー
マトリクス回路31を形成するように結線されているか
ら、キーマトリクス回路31に接続されたキースキャン
回路32によってフレットスイッチ30が走査されて各
フレットスイッチ30の状態が検出される。
Next, in step S13, the n-string fret switch 30 is scanned. Since the fret switches 30 are connected to form a key matrix circuit 31, the fret switches 30 are scanned by a key scan circuit 32 connected to the key matrix circuit 31, and the state of each fret switch 30 is detected.

【0088】次いで、ステップS14でフレットスイッ
チ30がオンしているか否を判別し、オンしていないと
き(オフのとき)はステップS15でmレジスタの値を
[0]にする。mレジスタはフレットNO.をストアす
るものである。したがって、m=[0]という状態は開
放弦で弦7を弾いた場合に相当する。一方、フレットス
イッチ30がオンしているときはステップS16に進
み、そのときのフレットNO.をmレジスタにストアす
る。このようにして弦7に関する操作フレット位置が検
出される。
Next, in step S14, it is determined whether or not the fret switch 30 is turned on. If it is not turned on (if it is off), the value of the m register is set to [0] in step S15. m register is the fret NO. Is to store. Therefore, the state where m = [0] corresponds to the case where the string 7 is played with the open string. On the other hand, when the fret switch 30 is ON, the process proceeds to step S16, and the fret NO. Is stored in the m register. Thus, the operation fret position of the string 7 is detected.

【0089】図6に移り、ステップS17、ステップS
18においてファジー推論処理を行う。具体的には、m
レジスタにストアしたフレットNO.、サドル側で弾か
れたのかあるいはフレット側で弾かれたのかの弾弦位置
および弦NO.を入力パラメータとしてファジー推論を
行い、楽音特性のエンベロープを可変するアタッレート
およびリリースレートをそれぞれ演算する。
Turning to FIG. 6, step S17, step S17
At 18, a fuzzy inference process is performed. Specifically, m
The fret number stored in the register , The string position and the string NO. Of whether it was hit on the saddle side or on the fret side. Is used as an input parameter to perform fuzzy inference, and calculate an attack rate and a release rate that vary the envelope of the musical sound characteristic.

【0090】これにより、その弾弦位置(サドル側か、
フレット側か)、フレット操作位置(ハイポジション
か、ロウポジションか)、弦NO.(大きいか小さい
か)の各微妙な組み合せに従って、発生楽音のエンベロ
ープが微妙に変化することになる。なお、ステップS1
7およびステップS18の詳細な処理内容はサブルーチ
ンで後述する。
As a result, the string position (saddle side,
Fret side), fret operation position (high position or low position), string NO. The envelope of the generated musical tone changes subtly according to each subtle combination of (large or small). Step S1
The detailed processing contents of 7 and step S18 will be described later in a subroutine.

【0091】次いで、ステップS19でmレジスタにス
トアしたフレットNO.およびnレジスタにストアした
弦ポインタnの内容に基づいて音高データを計算する。
これにより、弾かれた弦の種類および押えたフレット番
号によって楽音の音高が決定される。
Next, in step S19, the fret NO. And the pitch data based on the contents of the string pointer n stored in the n register.
As a result, the pitch of the musical tone is determined by the type of string played and the number of the fret pressed.

【0092】次いで、ステップS20でPCM音源部8
0のnチヤンネルに音高データを送り発音処理を行う。
チヤンネルは、例えば弦7の数に合わせて6個あり、弾
かれた弦の番号(すなわち、n)に対応する音高データ
の楽音が発音される。次いで、ステップS21でエンベ
ロープ発生回路81にアタックレートAおよびアタック
レベルのデータを送る。これにより、発生楽音のエンベ
ロープのうちのアタック部がアタックレートAおよびア
タックレベルによって可変され、例えばアタックレート
が強くなったり、やや強くなったり、ゆるやかになった
り、あるいは極めてゆるやかになったり(殆ど変らな
い)する。
Next, at step S20, the PCM tone generator 8
The pitch data is sent to the n-channel of 0, and the sound generation process is performed.
There are six channels, for example, in accordance with the number of strings 7, and a tone of pitch data corresponding to the number of the played string (that is, n) is generated. Next, the data of the attack rate A and the attack level is sent to the envelope generation circuit 81 in step S21. As a result, the attack portion of the envelope of the generated musical tone is varied according to the attack rate A and the attack level. For example, the attack rate becomes strong, slightly strong, gentle, or extremely slow (almost variable). No).

【0093】ステップS22ではPCM音源部80にお
けるnチヤンネル(例えば、第1弦に相当するチヤンネ
ル)のエンベロープレベル(実際に発音している波形の
エンベロープ)を取り込み、ステップS23では取り込
んだエンベロープレベルを所定のしきい値TH2と比較
する。しきい値TH2は、弦7の振動レベルがある一定
以下に低下したことに対応させてそのエンベロープレベ
ルから消音処理を開始するためのスレショルドレベル
(つまり消音スレショルドレベル)である。なお、nチ
ヤンネルとしては、第1弦から第6弦に相当する値があ
る。
In step S22, the envelope level of the n-channel (for example, the channel corresponding to the first string) in the PCM tone generator 80 (the envelope of the waveform actually sounding) is fetched. In step S23, the fetched envelope level is determined. With the threshold value TH2. The threshold value TH2 is a threshold level (ie, a silencing threshold level) for starting silencing processing from the envelope level in response to the vibration level of the string 7 falling below a certain level. Note that the n-channel has a value corresponding to the first to sixth strings.

【0094】nチヤンネルのエンベロープレベルがしき
い値TH2を超えているときは、ステップS24、25
をジャンプしてステップS26に進み、目標フラグAR
Vnが[1]であるか否を判別する。目標フラグARV
nはARV0〜ARV6まであり、nチヤンネルの数に対
応している。この目標フラグARVnは、チヤンネルn
毎にエンベロープが最大値になったか否かを判別するた
めのもので、アタック部でエンベロープが最大値になる
と、ARVn=[1]にセットされる。
If the envelope level of the n-channel exceeds the threshold value TH2, steps S24 and S25 are executed.
Jumps to step S26, where the target flag AR
It is determined whether or not Vn is [1]. Target flag ARV
n is up to ARV 0 ~ARV 6, corresponds to the number of the n-channel. This target flag ARVn is set to the channel n
This is for determining whether or not the envelope has reached the maximum value every time. When the envelope reaches the maximum value in the attack section, ARVn is set to [1].

【0095】ステップS26でARVn=[1]である
と判別すると、アタック部を終了してリリース部にエン
ベロープが移行するため、ステップS27でエンベロー
プ発生回路81のnチヤンネルにリリースレートRおよ
びリリースレベルのデータを送る。これにより、発生楽
音のエンベロープのうちのリリース部がリリースレート
Rおよびリリースレベルによって可変され、例えばリリ
ースレートが早くなったり、やや早くなったり、ゆるや
かになったり、あるいは極めてゆるやかになったりす
る。
If it is determined in step S26 that ARVn = [1], the attack portion is terminated and the envelope shifts to the release portion. Therefore, in step S27, the release rate R and the release level are applied to the n channel of the envelope generation circuit 81. Send data. As a result, the release portion of the envelope of the generated musical tone is varied according to the release rate R and the release level, and for example, the release rate becomes faster, slightly faster, slower, or extremely slower.

【0096】一方、ステップS26でARVnが[1]
に等しくないときは、エンベロープが未だアタック部の
変化途中であると判断してステップS27をジャンプ
し、ステップS10に戻る。
On the other hand, ARVn is set to [1] in step S26.
If not, it is determined that the envelope is still in the process of changing the attack portion, and the process jumps from step S27 and returns to step S10.

【0097】ここで、ステップS27のリリースレート
の処理について具体的に説明する。例えば、リリースレ
ートが早くなると、前述した図28(a)に示すよう
に、弾弦操作位置がサドル側のときと同様に、発生楽音
のエンベロープのリリース部が時間経過に伴って早く減
衰する(エンベロープが鋭く変化する)。リリースレー
トがやや早くなると、前述した図27(a)に示すよう
に、フレット操作位置がハイポジションのときと同様
に、発生楽音のエンベロープのリリース部が時間経過に
伴って早く減衰する。
Here, the processing of the release rate in step S27 will be specifically described. For example, when the release rate is increased, as shown in FIG. 28A, the release portion of the envelope of the generated musical tone attenuates as time elapses, as in the case where the string operation position is on the saddle side ( The envelope changes sharply). When the release rate is slightly increased, as shown in FIG. 27A, the release portion of the envelope of the generated musical tone attenuates as time elapses, similarly to the case where the fret operation position is at the high position.

【0098】リリースレートがゆるやかになると、前述
した図27(b)に示すように、フレット操作位置がロ
ウポジションのときと同様に、発生楽音のエンベロープ
のリリース部が時間経過に伴ってゆるやかに減衰する。
When the release rate becomes gentle, the release portion of the envelope of the generated musical tone gradually attenuates as time elapses, as shown in FIG. 27B, as in the case where the fret operation position is the low position. I do.

【0099】さらに、リリースレートが極めてゆるやか
になると、前述した図28(b)に示すように、弾弦操
作位置がフレット側のときと同様に、発生楽音のエンベ
ロープのリリース部が時間経過に伴って極めてゆるやか
に減衰する(エンベロープがまるくなってほとんど変化
しない)。すなわち、まるく、やわらかい音になる。
Further, when the release rate becomes extremely slow, as shown in FIG. 28B, the release portion of the envelope of the generated musical tone is generated with time, similarly to the case where the string operation position is on the fret side. And decay very slowly (the envelope is rounded and hardly changes). That is, the sound is round and soft.

【0100】また、このようなエンベロープ変化は弦N
O.によっても起こり、例えば図7は弦NO.という要
素によってエンベロープが変化する様子を示すものであ
る。
Further, such an envelope change corresponds to the string N
O. For example, FIG. This shows how the envelope changes depending on the element.

【0101】弦NO.が小さいとき(例えば、第1弦、
第2弦あたり)には、発生楽音のエンベロープ形状が図
7(a)に示すように変化し、そのレベルが時間経過に
伴ってゆるやかに減衰する。なお、これは弦NO.にか
かわらず同じ強さでピッキングした場合のグラフであ
る。このように、エンベロープがゆるやかに減衰するの
は、弦の太さが細くて振動の時間が長いからである。
String NO. Is small (for example, the first string,
At around the second string), the envelope shape of the generated musical tone changes as shown in FIG. 7A, and the level gradually decreases with time. This is the string NO. It is a graph at the time of picking with the same strength regardless of. The reason why the envelope is gradually attenuated is that the string is thin and the vibration time is long.

【0102】一方、弦NO.が大きいとき(例えば、第
6弦、第5弦あたり)には、発生楽音のエンベロープ形
状が図7(b)に示すように変化し、そのレベルが時間
経過に伴って早く減衰する。なお、こときとアタック部
のエンベロープ形状も多少変化する。このように、エン
ベロープが早く減衰するのは、弦が太くて空気抵抗が大
きいから、振動の時間が短いためである。
On the other hand, when the string NO. Is large (for example, around the sixth and fifth strings), the envelope shape of the generated musical tone changes as shown in FIG. 7 (b), and the level attenuates rapidly with time. It should be noted that the envelope shapes of the attack and the attack part also slightly change. The reason why the envelope attenuates quickly is that the vibration time is short because the strings are thick and the air resistance is large.

【0103】ステップS27の処理を終了すると、再び
ステップS10に戻って弦ポインタnのインクリメント
を行う。これにより、次の弦に対して楽音を発生するあ
るいは消音するという上記同様の処理が行われる。
When the processing in step S27 is completed, the flow returns to step S10, and the string pointer n is incremented. As a result, the same processing as described above for generating or silencing a musical tone for the next string is performed.

【0104】一方、ステップS23でnチヤンネルのエ
ンベロープレベルがしきい値TH2以下のときは、ステ
ップS24に進み、弾弦フラグLnを[0]にリセット
し、さらに続くステップS25でPCM音源部80にお
けるnチヤンネル(例えば、第1弦に相当するチヤンネ
ル)に対して消音処理を行う。その後、ステップS26
に進む。
On the other hand, if the envelope level of the n-channel is equal to or smaller than the threshold value TH2 in step S23, the process proceeds to step S24, where the string flag Ln is reset to [0]. A mute process is performed on n channels (for example, a channel corresponding to the first string). Then, step S26
Proceed to.

【0105】これにより、現在発音しているチヤンネル
のエンベロープレベルがある一定レベル以下に低下した
時点で消音され、同時に弾弦フラグLnがリセットされ
て次のチヤンネルの楽音制御処理に移行する。
As a result, when the envelope level of the currently sounding channel falls below a certain level, the sound is muted, and at the same time, the string flag Ln is reset, and the process proceeds to the tone control process of the next channel.

【0106】このようにして、ファジー推論を応用する
ことにより、フレット操作位置、弾弦操作位置および弦
NO.の組み合せに応じて発生される楽音の特性が微妙
に制御される。
By applying the fuzzy inference as described above, the fret operation position, the bullet string operation position, and the string NO. The characteristics of the musical tone generated in accordance with the combination of are controlled delicately.

【0107】アタックレート演算処理 図8はメインプログラムのステップS17におけるアタ
ックレート演算処理のサブルーチンを示すフローチャー
トである。まず、ステップS31でフレット操作位置、
弾弦操作位置および弦NO.に基づいて前述したファジ
ールールAの演算を行う。
Attack Rate Calculation Processing FIG. 8 is a flowchart showing a subroutine of the attack rate calculation processing in step S17 of the main program. First, in step S31, the fret operation position,
String operation position and string NO. The above-described calculation of the fuzzy rule A is performed based on

【0108】同様に、ステップS32、ステップS3
3、ステップS34ではフレット操作位置、弾弦操作位
置および弦NO.に基づいてそれぞれ前述したファジー
ルールB、ファジールールC、ファジールールDの演算
を行う。これらファジールールA、B、C、Dの詳しい
処理内容は後述のサブルーチンで説明する。これによ
り、ファジー推論における前件部の処理が行われ、各メ
ンバーシップ関数に対する適合度が求められる。
Similarly, steps S32 and S3
3. In step S34, the fret operation position, the bullet string operation position, and the string NO. The fuzzy rule B, the fuzzy rule C, and the fuzzy rule D described above are respectively calculated based on. Detailed processing contents of these fuzzy rules A, B, C, and D will be described in a subroutine described later. As a result, the processing of the antecedent part in the fuzzy inference is performed, and the fitness for each membership function is obtained.

【0109】次いで、ステップS35で上記ルール演算
によって得られたデータの最大値をとる最大値A(A:
アタックという意味に対応)処理(すなわち、MAX演
算=OR処理)を行うとともに、ステップS36でこの
データの重心計算Aを行って脱ファジー化する。その
後、メインプログラムにリターンする。これにより、フ
ァジー推論における後件部の処理が行われてアタックレ
ートAレベルが求められる。なお、最大値A演算および
重心計算Aの詳しい処理内容は後述のサブルーチンで説
明する。
Then, in step S35, the maximum value A (A: A) that takes the maximum value of the data obtained by the above rule operation
(Corresponding to the meaning of attack)) processing (that is, MAX operation = OR processing), and the center of gravity calculation A of this data is performed in step S36 to perform defuzzification. Then, the process returns to the main program. Thereby, the processing of the consequent part in the fuzzy inference is performed, and the attack rate A level is obtained. The detailed processing contents of the maximum value A calculation and the center of gravity calculation A will be described in a subroutine described later.

【0110】リリースレート演算処理 図9はメインプログラムのステップS18におけるリリ
ースレート演算処理のサブルーチンを示すフローチャー
トである。まず、ステップS41でフレット操作位置、
弾弦操作位置および弦NO.に基づいて前述したファジ
ールールEの演算を行う。
Release Rate Calculation Processing FIG. 9 is a flowchart showing a subroutine of release rate calculation processing in step S18 of the main program. First, in step S41, the fret operation position,
String operation position and string NO. The above-described calculation of the fuzzy rule E is performed based on.

【0111】同様に、ステップS42、ステップS4
3、ステップS44ではフレット操作位置、弾弦操作位
置および弦NO.に基づいてそれぞれ前述したファジー
ルールF、ファジールールG、ファジールールHの演算
を行う。これらファジールールE、F、G、Hの詳しい
処理内容は後述のサブルーチンで説明する。これによ
り、ファジー推論における前件部の処理が行われ、各メ
ンバーシップ関数に対する適合度が求められる。
Similarly, steps S42 and S4
3. In step S44, the fret operation position, the bullet string operation position, and the string NO. The fuzzy rule F, the fuzzy rule G, and the fuzzy rule H described above are respectively calculated based on. The detailed processing contents of these fuzzy rules E, F, G, H will be described in a subroutine described later. As a result, the processing of the antecedent part in the fuzzy inference is performed, and the fitness for each membership function is obtained.

【0112】次いで、ステップS45で上記ルール演算
によって得られたデータの最大値をとる最大値R(R:
リリースという意味に対応)処理(すなわち、MAX演
算=OR処理)を行うとともに、ステップS46でこの
データの重心計算Rを行って脱ファジー化する。その
後、メインプログラムにリターンする。これにより、フ
ァジー推論における後件部の処理が行われてリリースレ
ートRレベルが求められる。なお、最大値R演算および
重心計算Rの詳しい処理内容は後述のサブルーチンで説
明する。
Next, at step S45, the maximum value R (R: R:
In addition to performing processing (corresponding to the meaning of release) (ie, MAX operation = OR processing), the center of gravity R of this data is calculated in step S46 to defuzzify. Then, the process returns to the main program. As a result, the processing of the consequent part in the fuzzy inference is performed, and the release rate R level is obtained. The detailed processing contents of the maximum value R calculation and the center of gravity calculation R will be described in a subroutine described later.

【0113】ファジールールA演算処理 図10はファジールールA演算処理のサブルーチンを示
すフローチャートである。まず、ステップS51でフレ
ットNO.をアドレスとして、メンバーシップ関数テー
ブルROM74における「フレットNO.が小さい(す
なわち、ロウポジション)」というメンバーシップ関数
が格納されているFSテーブルからデータ(前件部デー
タ)Daを読み出す。この場合のデータは、図4(a)
に示すメンバーシップ関数FSの適合度(グレード)に
相当し、0〜1の範囲の値である。
Fuzzy Rule A Calculation Process FIG. 10 is a flowchart showing a subroutine of the fuzzy rule A calculation process. First, in step S51, the fret NO. (Data of the antecedent part) Da is read from the FS table in the membership function table ROM 74 in which the membership function “the fret number is small (ie, low position)” is stored. The data in this case is shown in FIG.
And is a value in the range of 0 to 1.

【0114】すなわち、データDaはフレットNO.と
いう入力値に対してルールAが示した適合度である。デ
ータDaは、マイクロコンピュータ40内の同名のレジ
スタDaに格納され、これは後述の各データDb、Dc
についても同様である。
That is, the data Da is the fret NO. Is the degree of conformity indicated by the rule A with respect to the input value. The data Da is stored in a register Da of the same name in the microcomputer 40, which stores data Db and Dc to be described later.
The same applies to.

【0115】同様に、ステップS52で弾弦操作位置
(以下、単に弾弦位置という)Cをアドレスとして、メ
ンバーシップ関数テーブルROM74における「弾弦位
置がサドル側である」というメンバーシップ関数が格納
されているPSテーブルからデータ(前件部データ)D
bを読み出す。この場合のデータは、図4(b)に示す
メンバーシップ関数PSの適合度(グレード)に相当
し、0〜1の範囲の値である。すなわち、データDbは
弾弦位置Cという入力値に対してルールAが示した適合
度である。
Similarly, in step S52, a membership function "the string position is on the saddle side" in the membership function table ROM 74 is stored using the string operation position (hereinafter simply referred to as the string position) C as an address. From the existing PS table (antecedent data) D
Read b. The data in this case corresponds to the fitness (grade) of the membership function PS shown in FIG. 4B and is a value in the range of 0 to 1. That is, the data Db is the degree of conformity indicated by the rule A with respect to the input value of the string position C.

【0116】また、ステップS53で弦NO.をアドレ
スとして、メンバーシップ関数テーブルROM74にお
ける「弦NO.が小さい(第1弦、第2弦あたり)」と
いうメンバーシップ関数が格納されているSSテーブル
からデータ(前件部データ)Dcを読み出す。この場合
のデータは、図4(c)に示すメンバーシップ関数SS
の適合度(グレード)に相当し、0〜1の範囲の値であ
る。すなわち、データDcは弦NO.という入力値に対
してルールAが示した適合度である。
In step S53, the string NO. (Data of the antecedent part) Dc is read from the SS table in the membership function table ROM 74 in which the membership function “small string number is small (about the first string and second string)” is stored. The data in this case is the membership function SS shown in FIG.
And is a value in the range of 0 to 1. That is, the data Dc is the string NO. Is the degree of conformity indicated by the rule A with respect to the input value.

【0117】次いで、ステップS54で各データDa、
Db、Dcの最小値を判別し、最小のデータD1を得
る。この処理は、各データの論理積をとるもので、いわ
ゆる「MINをとる」ことに相当するものである。これ
は、「MINをとる」ことにより、3つの入力値に対し
て少なくとも何れも満足する状態を得るためである。
Next, at step S54, each data Da,
The minimum value of Db and Dc is determined, and the minimum data D1 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0118】データDaが最小であるときはステップS
55に進んでD1=Daを採用し、データDbが最小で
あるときはステップS56に進んでD1=Dbを採用
し、さらに、データDcが最小であるときはステップS
57に進んでD1=Dcを採用する。これにより、デー
タDa、Db、Dcのうち、最小のものが今回のルーチ
ンにおいてルールAが示す判断データD1として採用さ
れる。
If the data Da is the minimum, step S
Going to 55, D1 = Da is adopted, and when the data Db is the minimum, proceeding to step S56, D1 = Db is adopted, and when the data Dc is the minimum, step S is adopted.
Proceeding to 57, D1 = Dc is adopted. As a result, the smallest one of the data Da, Db, and Dc is adopted as the determination data D1 indicated by the rule A in this routine.

【0119】このように、ルールAに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールAの前件部に対する適合
度が求められる。
As described above, three input values (fret No., string position C and string No.) at that time are determined for rule A, and the degree of conformity of rule A to the antecedent is obtained. Can be

【0120】次いで、ステップS58でアドレスポイン
タiを[0]にリセットし、ステップS59でアドレス
ポインタiが終了アドレスに等しいか否か判別する。終
了アドレスでなければ、続くステップS60でiをアド
レスとしてメンバーシップ関数テーブルROM74の
「アタックレートを強くする」というメンバーシップ関
数が格納されているALテーブルからデータ(後件部デ
ータ)Eを読み出す。この場合のデータは、図4(d)
に示すメンバーシップ関数ALの適合度に相当する。デ
ータEは同名のレジスタEに格納される。
Next, at step S58, the address pointer i is reset to [0], and at step S59, it is determined whether or not the address pointer i is equal to the end address. If it is not the end address, the data (consequent part data) E is read from the AL table in the membership function table ROM 74 in which the membership function "strengthen the attack rate" is stored, using i as the address in the subsequent step S60. The data in this case is shown in FIG.
In the membership function AL shown in FIG. Data E is stored in register E of the same name.

【0121】次いで、ステップS61でデータD1とデ
ータEを比較し、D1≧EのときはステップS62に進
んでiをアドレスとしてワーキングRAM72に入って
いるP1メモリにデータEを書き込む。一方、D1<E
のときはステップS63に進んで同じくiをアドレスと
してワーキングRAM72に入っているP1メモリにデ
ータD1を書き込む。このように、小さい方の値が採用
されてメンバーシップ関数ALをカットする処理が行わ
れる。
Next, in step S61, data D1 and data E are compared. If D1 ≧ E, the flow advances to step S62 to write data E to the P1 memory in the working RAM 72 using i as an address. On the other hand, D1 <E
In step S63, the process proceeds to step S63 to write the data D1 into the P1 memory in the working RAM 72 using i as the address. As described above, the process of cutting the membership function AL by using the smaller value is performed.

【0122】この処理は、後件部たるメンバーシップ関
数ALを前件部の適合度に応じてカットする「いわゆる
頭切り法」を行うものである。
In this processing, a so-called head truncation method for cutting the membership function AL, which is the consequent part, according to the degree of conformity of the antecedent part is performed.

【0123】次いで、ステップS64でアドレスポイン
タiを[1]だけインクリメントし、その後、ステップ
S59に戻る。そして、ステップS59でアドレスポイ
ンタiが終了アドレスに等しくなるまで、同様の処理を
繰り返し、アドレスポインタiが終了アドレスに等しく
なると、メインプログラムにリターンする。
Next, in step S64, the address pointer i is incremented by [1], and thereafter, the flow returns to step S59. Then, the same processing is repeated until the address pointer i becomes equal to the end address in step S59. When the address pointer i becomes equal to the end address, the process returns to the main program.

【0124】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、メンバーシップ関数AL
をすべてサーチすることになる。これにより、メンバー
シップ関数ALの全てに対して前件部の適合度に応じた
「頭切り法」が実行される。
By incrementing the address pointer i to the end address, the membership function AL
Will be searched. Thus, the “head truncation method” is executed for all the membership functions AL according to the degree of conformity of the antecedent part.

【0125】このようにして、フレットNO.、弾弦位
置Cおよび弦NO.に基づいてファジールールAの演算
が行われ、「フレットNO.が小さく(ロウポジショ
ン)、弾弦位置がサドル側であり、かつ弦NO.が小さ
い場合には、アタックレートを強くする。」という処理
に対してどの程度適合しているかが算出される。すなわ
ち、アタックレートを強くするというファジー操作量
が、頭切りしたメンバーシップ関数ALの大きさとして
求められる。
Thus, the fret NO. , String position C and string NO. The fuzzy rule A is calculated based on the fuzzy rule A. When the fret number is small (low position), the string position is on the saddle side, and the string number is small, the attack rate is increased. The degree of conformity to the processing is calculated. That is, the fuzzy operation amount for increasing the attack rate is obtained as the size of the truncated membership function AL.

【0126】ファジールールB演算処理 図11、12はファジールールB演算処理のサブルーチ
ンを示すフローチャートである。まず、ステップS71
でフレットNO.をアドレスとして、メンバーシップ関
数テーブルROM74における「フレットNO.が小さ
い(すなわち、ロウポジション)」というメンバーシッ
プ関数が格納されているFSテーブルからデータ(前件
部データ)Daを読み出す。この場合のデータは、図4
(a)に示すメンバーシップ関数FSの適合度(グレー
ド)に相当し、0〜1の範囲の値である。
Fuzzy Rule B Calculation Process FIGS. 11 and 12 are flowcharts showing a subroutine of the fuzzy rule B calculation process. First, step S71
Fret NO. (Data of the antecedent part) Da is read from the FS table in the membership function table ROM 74 in which the membership function “the fret number is small (ie, low position)” is stored. The data in this case is shown in FIG.
It corresponds to the degree of conformity (grade) of the membership function FS shown in (a), and is a value in the range of 0 to 1.

【0127】すなわち、データDaはフレットNO.と
いう入力値に対してルールBが示した適合度である。デ
ータDaは、マイクロコンピュータ40内の同名のレジ
スタDaに格納され、これは後述の各データDb、D
c、Dd、Deについても同様である。
That is, the data Da is the fret NO. Is the degree of conformity indicated by the rule B with respect to the input value. The data Da is stored in a register Da of the same name in the microcomputer 40.
The same applies to c, Dd, and De.

【0128】同様に、ステップS72で弾弦位置Cをア
ドレスとして、メンバーシップ関数テーブルROM74
における「弾弦位置がサドル側である」というメンバー
シップ関数が格納されているPSテーブルからデータ
(前件部データ)Dbを読み出す。この場合のデータ
は、図4(b)に示すメンバーシップ関数PSの適合度
(グレード)に相当し、0〜1の範囲の値である。すな
わち、データDbは弾弦位置Cという入力値に対してル
ールBが示した適合度である。
Similarly, in step S72, the membership function table ROM 74 is set using the string position C as an address.
The data (antecedent part data) Db is read from the PS table in which the membership function "the bullet position is on the saddle side" is stored. The data in this case corresponds to the fitness (grade) of the membership function PS shown in FIG. 4B and is a value in the range of 0 to 1. That is, the data Db is the degree of conformity indicated by the rule B with respect to the input value of the string position C.

【0129】また、ステップS73で弦NO.をアドレ
スとして、メンバーシップ関数テーブルROM74にお
ける「弦NO.が大きい(第6弦、第5弦あたり)」と
いうメンバーシップ関数が格納されているSLテーブル
からデータ(前件部データ)Dcを読み出す。この場合
のデータは、図4(c)に示すメンバーシップ関数SL
の適合度(グレード)に相当し、0〜1の範囲の値であ
る。すなわち、データDcは弦NO.という入力値に対
してルールBが示した適合度である。
Also, in step S73, the string NO. (Data of the antecedent part) Dc is read from the SL table in the membership function table ROM 74 in which the membership function “the string number is large (about the sixth and fifth strings)” is stored. The data in this case is a membership function SL shown in FIG.
And is a value in the range of 0 to 1. That is, the data Dc is the string NO. Is the degree of conformity indicated by the rule B with respect to the input value.

【0130】次いで、ステップS74で各データDa、
Db、Dcの最小値を判別し、最小のデータF1を得
る。この処理は、各データの論理積をとるもので、いわ
ゆる「MINをとる」ことに相当するものである。これ
は、「MINをとる」ことにより、3つの入力値に対し
て少なくとも何れも満足する状態を得るためである。
Next, in step S74, each data Da,
The minimum value of Db and Dc is determined, and the minimum data F1 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0131】データDaが最小であるときはステップS
75に進んでF1=Daを採用し、データDbが最小で
あるときはステップS76に進んでF1=Dbを採用
し、さらに、データDcが最小であるときはステップS
77に進んでF1=Dcを採用する。これにより、デー
タDa、Db、Dcのうち、最小のものが今回のルーチ
ンにおいてルールBが示す判断データF1として採用さ
れる。
If the data Da is the minimum, step S
Going to 75, F1 = Da is adopted, and when the data Db is the minimum, proceeding to step S76, F1 = Db is adopted, and when the data Dc is the minimum, step S76 is adopted.
Proceeding to 77, F1 = Dc is adopted. As a result, the smallest one of the data Da, Db, and Dc is adopted as the determination data F1 indicated by the rule B in this routine.

【0132】このように、ルールBに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールBの第1の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が小さく(ロウポジション)、弾弦位置がサドル側であ
り、かつ弦NO.が大きい場合には、アタックレートを
やや強くする。」という第1の前件部に対する適合度が
求められる。
As described above, three input values (fret No., string position C, and string No.) at that point in time are determined for rule B, and the matching of rule B with the first antecedent is performed. Degree is required. Specifically, “Fret NO.
Is small (low position), the string position is on the saddle side, and the string NO. Is larger, the attack rate is set to be slightly higher. Is determined for the first antecedent part.

【0133】次いで、第2の前件部に対する適合度を求
める処理に移る。まず、ステップS78で弾弦位置Cを
アドレスとして、メンバーシップ関数テーブルROM7
4における「弾弦位置がフレット側である」というメン
バーシップ関数が格納されているPLテーブルからデー
タ(前件部データ)Ddを読み出す。この場合のデータ
は、図4(b)に示すメンバーシップ関数PLの適合度
(グレード)に相当し、0〜1の範囲の値である。すな
わち、データDbは弾弦位置Cという入力値に対してル
ールBが示した適合度である。
Next, the process proceeds to a process for obtaining the degree of conformity to the second antecedent part. First, in step S78, the membership function table ROM 7 stores the string position C as an address.
4. Data (antecedent part data) Dd is read from the PL table in which the membership function "the bullet position is on the fret side" is stored. The data in this case corresponds to the fitness (grade) of the membership function PL shown in FIG. 4B, and is a value in the range of 0 to 1. That is, the data Db is the degree of conformity indicated by the rule B with respect to the input value of the string position C.

【0134】また、ステップS79で弦NO.をアドレ
スとして、メンバーシップ関数テーブルROM74にお
ける「弦NO.が小さい(第1弦、第2弦あたり)」と
いうメンバーシップ関数が格納されているSSテーブル
からデータ(前件部データ)Deを読み出す。この場合
のデータは、図4(c)に示すメンバーシップ関数SS
の適合度(グレード)に相当し、0〜1の範囲の値であ
る。すなわち、データDeは弦NO.という入力値に対
してルールBが示した適合度である。
In step S79, the string NO. Is read from the SS table in the membership function table ROM 74 in which the membership function “small string number is small (about the first and second strings)” is stored. The data in this case is the membership function SS shown in FIG.
And is a value in the range of 0 to 1. That is, the data De contains the string NO. Is the degree of conformity indicated by the rule B with respect to the input value.

【0135】次いで、ステップS80で各データDa、
Dd、Deの最小値を判別し、最小のデータF2を得
る。この処理は、各データの論理積をとるもので、いわ
ゆる「MINをとる」ことに相当するものである。これ
は、「MINをとる」ことにより、3つの入力値に対し
て少なくとも何れも満足する状態を得るためである。
Next, in step S80, each data Da,
The minimum value of Dd and De is determined, and the minimum data F2 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0136】データDaが最小であるときはステップS
81に進んでF2=Daを採用し、データDdが最小で
あるときはステップS82に進んでF2=Ddを採用
し、さらに、データDeが最小であるときはステップS
83に進んでF2=Deを採用する。これにより、デー
タDa、Dd、Deのうち、最小のものが今回のルーチ
ンにおいてルールBが示す判断データF2として採用さ
れる。
If the data Da is the minimum, step S
Proceeding to step 81, F2 = Da is adopted, and when the data Dd is the minimum, proceeding to step S82, F2 = Dd is adopted, and when the data De is the minimum, step S82 is adopted.
Proceeding to 83, F2 = De is adopted. As a result, the smallest one of the data Da, Dd, and De is adopted as the determination data F2 indicated by the rule B in this routine.

【0137】このように、ルールBに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールBの第2の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が小さく(ロウポジション)、弾弦位置がフレット側で
あり、かつ弦NO.が小さい場合には、アタックレート
をやや強くする。」という第2の前件部に対する適合度
が求められる。
As described above, three input values (fret NO., Bullet string position C, and string NO.) At that time are determined for rule B, and the matching of rule B with the second antecedent is performed. Degree is required. Specifically, “Fret NO.
Is small (low position), the string position is on the fret side, and the string NO. When is small, the attack rate is made slightly stronger. Is determined for the second antecedent part.

【0138】次いで、第3の前件部に対する適合度を求
める処理に移る。ステップS84で上記各データDa、
Dd、Dcの最小値を判別し、最小のデータF3を得
る。この処理は、各データの論理積をとるもので、いわ
ゆる「MINをとる」ことに相当するものである。これ
は、「MINをとる」ことにより、3つの入力値に対し
て少なくとも何れも満足する状態を得るためである。
Next, the process proceeds to a process of obtaining the degree of conformity to the third antecedent part. In step S84, each of the data Da,
The minimum value of Dd and Dc is determined, and the minimum data F3 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0139】データDaが最小であるときはステップS
85に進んでF3=Daを採用し、データDdが最小で
あるときはステップS86に進んでF3=Ddを採用
し、さらに、データDcが最小であるときはステップS
87に進んでF3=Dcを採用する。これにより、デー
タDa、Dd、Dcのうち、最小のものが今回のルーチ
ンにおいてルールBが示す判断データF3として採用さ
れる。
If the data Da is the minimum, step S
Proceeding to S85, F3 = Da is adopted, and when the data Dd is the minimum, proceeding to step S86 to adopt F3 = Dd, and when the data Dc is the minimum, step S86 is adopted.
Proceeding to 87, adopt F3 = Dc. As a result, the smallest one of the data Da, Dd, and Dc is adopted as the determination data F3 indicated by the rule B in this routine.

【0140】このように、ルールBに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールBの第3の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が小さく(ロウポジション)、弾弦位置がフレット側で
あり、かつ弦NO.が大きい場合には、アタックレート
をやや強くする。」という第3の前件部に対する適合度
が求められる。
As described above, three input values (fret No., bullet string position C, and string No.) at that point in time are determined for rule B, and the matching of rule B with the third antecedent is performed. Degree is required. Specifically, “Fret NO.
Is small (low position), the string position is on the fret side, and the string NO. Is larger, the attack rate is set to be slightly higher. Is determined for the third antecedent part.

【0141】図12に移り、次いで、ステップS88に
進んで上述し前件部への適合度データF1〜F3のうち
の最大値を判別する。そして、データF1〜F3の最大
値判別結果に応じてそれぞれステップS89〜ステップ
S91の何れかへ進む。
Referring to FIG. 12, the flow advances to step S88 to determine the maximum value of the above-mentioned degree-of-fit data F1-F3 for the antecedent part. Then, the process proceeds to any one of steps S89 to S91 according to the maximum value determination result of the data F1 to F3.

【0142】このような最大値判別を行っているのは、
前述した3つの前件部の推論結果を統合するために論理
和(OR論理)をとる必要がかあるからで、いわゆる
「MAXをとる」という処理に相当するものである。
The reason why the maximum value is determined is as follows.
Since it is necessary to take a logical sum (OR logic) in order to integrate the inference results of the three antecedent parts described above, this corresponds to a so-called "MAX" processing.

【0143】データF1が最大であるときはステップS
89で前述した3つの前件部の推論結果を統合した前件
部データD2としてF1を採用し、データF2が最大で
あるときはステップS90で統合前件部データD2とし
てF2を採用し、さらにデータF3が最大であるときは
ステップS91で統合前件部データD2としてF3を採
用する。
If the data F1 is the maximum, step S
At step 89, F1 is adopted as the antecedent part data D2 obtained by integrating the inference results of the three antecedent parts described above. When the data F2 is the maximum, F2 is adopted at step S90 as the integrated antecedent part data D2. When the data F3 is the maximum, F3 is adopted as the integrated antecedent data D2 in step S91.

【0144】このように、統合前件部データD2を得る
ことで、ルールBに対して、その時点での3つの入力値
(フレットNO.、弾弦位置Cおよび弦NO.)が判断
され、ルールBの前件部に対する適合度が求められる。
As described above, by obtaining the integrated antecedent data D2, three input values (fret NO., Bullet string position C, and string NO.) At that time are determined for rule B. The degree of conformity to the antecedent of Rule B is determined.

【0145】ステップS89〜ステップS91の何れか
のステップを経ると、次いでステップS92でアドレス
ポインタiを[0]にリセットし、ステップS93でア
ドレスポインタiが終了アドレスに等しいか否か判別す
る。終了アドレスでなければ、続くステップS94でi
をアドレスとしてメンバーシップ関数テーブルROM7
4の「アタックレートをやや強くする」というメンバー
シップ関数が格納されているALLテーブルからデータ
(後件部データ)Eを読み出す。この場合のデータは、
図4(d)に示すメンバーシップ関数ALLの適合度に
相当する。データEは、例えばマイクロコンピュータ4
0内の同名のレジスタに格納される。
After going through any of the steps S89 to S91, the address pointer i is reset to [0] in a step S92, and it is determined in a step S93 whether or not the address pointer i is equal to the end address. If it is not the end address, i follows in step S94.
Function table ROM7 with address as address
4. Data (consequent part data) E is read from the ALL table in which the membership function "Attack rate is slightly increased" is stored. The data in this case is
This corresponds to the fitness of the membership function ALL shown in FIG. The data E is stored in the microcomputer 4
It is stored in a register of the same name in 0.

【0146】次いで、ステップS95で前述した統合前
件部データD2とデータEを比較し、D2≧Eのときは
ステップS96に進んでiをアドレスとしてワーキング
RAM74入っているP2メモリにデータEを書き込
む。一方、D2<EのときはステップS97に進んで同
じくiをアドレスとしてワーキングRAM74に入って
いるP2メモリにデータD2を書き込む。このように、
小さい方の値が採用されてメンバーシップ関数ALLを
カットする処理が行われる。
Next, in step S95, the integrated antecedent data D2 and data E are compared. If D2 ≧ E, the flow advances to step S96 to write data E to the P2 memory in the working RAM 74 using i as an address. . On the other hand, if D2 <E, the process proceeds to step S97 to write data D2 into the P2 memory in the working RAM 74 using i as an address. in this way,
A process of cutting the membership function ALL by adopting the smaller value is performed.

【0147】この処理は、後件部たるメンバーシップ関
数ALLを前件部の適合度に応じてカットする「いわゆ
る頭切り法」を行うものである。
In this processing, a so-called head truncation method for cutting the membership function ALL, which is the consequent part, according to the fitness of the antecedent part is performed.

【0148】次いで、ステップS98でアドレスポイン
タiを[1]だけインクリメントし、その後、ステップ
S93に戻る。そして、ステップS93でアドレスポイ
ンタiが終了アドレスに等しくなるまで、同様の処理を
繰り返し、アドレスポインタiが終了アドレスに等しく
なると、メインプログラムにリターンする。
Next, in step S98, the address pointer i is incremented by [1], and thereafter, the flow returns to step S93. Then, the same processing is repeated until the address pointer i becomes equal to the end address in step S93. When the address pointer i becomes equal to the end address, the process returns to the main program.

【0149】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、メンバーシップ関数AL
Lをすべてサーチすることになる。これにより、メンバ
ーシップ関数ALLの全てに対して前件部の適合度に応
じた「頭切り法」が実行される。
By incrementing the address pointer i to the end address, the membership function AL
All L will be searched. Thus, the “head truncation method” is executed for all the membership functions ALL according to the degree of conformity of the antecedent part.

【0150】このようにして、フレットNO.、弾弦位
置Cおよび弦NO.に基づいてファジールールBの演算
が行われ、「フレットNO.が小さく(ロウポジショ
ン)、弾弦位置がサドル側であり、かつ弦NO.が大き
い場合、あるいはフレットNO.が小さく(ロウポジシ
ョン)、弾弦位置がフレット側であり、かつ弦NO.が
小さい場合、あるいはフレットNO.が小さく(ロウポ
ジション)、弾弦位置がフレット側であり、かつ弦N
O.が大きい場合には、アタックレートをやや強くす
る。」という処理に対してどの程度適合しているかが算
出される。すなわち、アタックレートややを強くすると
いうファジー操作量が、頭切りしたメンバーシップ関数
ALLの大きさとして求められる。
Thus, the fret NO. , String position C and string NO. The calculation of the fuzzy rule B is performed on the basis of "the fret number is small (low position), the string position is on the saddle side and the string number is large, or the fret number is small (low position). When the string position is on the fret side and the string NO. Is small, or when the fret number is small (low position), the string position is on the fret side and the string N
O. Is larger, the attack rate is set to be slightly higher. Is calculated. That is, a fuzzy operation amount for increasing the attack rate or a little is obtained as the size of the truncated membership function ALL.

【0151】ファジールールC演算処理 図13、14はファジールールC演算処理のサブルーチ
ンを示すフローチャートである。まず、ステップS10
1でフレットNO.をアドレスとして、メンバーシップ
関数テーブルROM74における「フレットNO.が大
きい(すなわち、ハイポジション)」というメンバーシ
ップ関数が格納されているFLテーブルからデータ(前
件部データ)Daを読み出す。この場合のデータは、図
4(a)に示すメンバーシップ関数FLの適合度(グレ
ード)に相当し、0〜1の範囲の値である。
Fuzzy Rule C Calculation Process FIGS. 13 and 14 are flowcharts showing a subroutine of the fuzzy rule C calculation process. First, step S10
1 and fret NO. (Address data) is read from the FL table in the membership function table ROM 74 in which the membership function “the fret number is large (ie, high position)” is stored. The data in this case corresponds to the fitness (grade) of the membership function FL shown in FIG. 4A and is a value in the range of 0 to 1.

【0152】すなわち、データDaはフレットNO.と
いう入力値に対してルールCが示した適合度である。デ
ータDaは、マイクロコンピュータ40内の同名のレジ
スタDaに格納され、これは後述の各データDb、D
c、Ddについても同様である。
That is, the data Da is the fret NO. Is the degree of conformity indicated by the rule C with respect to the input value. The data Da is stored in a register Da of the same name in the microcomputer 40.
The same applies to c and Dd.

【0153】同様に、ステップS102で弾弦位置Cを
アドレスとして、メンバーシップ関数テーブルROM7
4における「弾弦位置がサドル側である」というメンバ
ーシップ関数が格納されているPSテーブルからデータ
(前件部データ)Dbを読み出す。この場合のデータ
は、図4(b)に示すメンバーシップ関数PSの適合度
(グレード)に相当し、0〜1の範囲の値である。すな
わち、データDbは弾弦位置Cという入力値に対してル
ールCが示した適合度である。
Similarly, in step S102, the membership function table ROM 7
4. Data (antecedent part data) Db is read from the PS table in which the membership function "the bullet position is on the saddle side" is stored. The data in this case corresponds to the fitness (grade) of the membership function PS shown in FIG. 4B and is a value in the range of 0 to 1. That is, the data Db is the degree of conformity indicated by the rule C with respect to the input value of the string position C.

【0154】また、ステップS103で弦NO.をアド
レスとして、メンバーシップ関数テーブルROM74に
おける「弦NO.が小さい(第1弦、第2弦あたり)」
というメンバーシップ関数が格納されているSSテーブ
ルからデータ(前件部データ)Dcを読み出す。この場
合のデータは、図4(c)に示すメンバーシップ関数S
Sの適合度(グレード)に相当し、0〜1の範囲の値で
ある。すなわち、データDcは弦NO.という入力値に
対してルールCが示した適合度である。
In step S103, the string NO. "String NO. Is small (about the first string and the second string)" in the membership function table ROM 74 with the address as the address.
Is read from the SS table in which the membership function is stored. The data in this case is the membership function S shown in FIG.
It corresponds to the degree of conformity (grade) of S, and is a value in the range of 0 to 1. That is, the data Dc is the string NO. Is the degree of conformity indicated by the rule C with respect to the input value.

【0155】次いで、ステップS104で各データD
a、Db、Dcの最小値を判別し、最小のデータF1を
得る。この処理は、各データの論理積をとるもので、い
わゆる「MINをとる」ことに相当するものである。こ
れは、「MINをとる」ことにより、3つの入力値に対
して少なくとも何れも満足する状態を得るためである。
Next, at step S104, each data D
The minimum values of a, Db, and Dc are determined, and the minimum data F1 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0156】データDaが最小であるときはステップS
105に進んでF1=Daを採用し、データDbが最小
であるときはステップS106に進んでF1=Dbを採
用し、さらに、データDcが最小であるときはステップ
S107に進んでF1=Dcを採用する。これにより、
データDa、Db、Dcのうち、最小のものが今回のル
ーチンにおいてルールCが示す判断データF1として採
用される。
If the data Da is the minimum, step S
Proceeding to 105, F1 = Da is adopted, and when the data Db is the minimum, the process proceeds to step S106, where F1 = Db is adopted. Further, when the data Dc is the minimum, the process proceeds to step S107 to set F1 = Dc. adopt. This allows
Among the data Da, Db, and Dc, the smallest one is adopted as the determination data F1 indicated by the rule C in this routine.

【0157】このように、ルールCに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールCの第1の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が大きく(ハイポジション)、弾弦位置がサドル側であ
り、かつ弦NO.が小さい場合には、アタックレートを
ゆるやかにする。」という第1の前件部に対する適合度
が求められる。
As described above, three input values (fret No., string position C, and string No.) at that time are determined for rule C, and the matching of rule C with the first antecedent is performed. Degree is required. Specifically, “Fret NO.
Is large (high position), the string position is on the saddle side, and the string NO. When is small, the attack rate is made slow. Is determined for the first antecedent part.

【0158】次いで、第2の前件部に対する適合度を求
める処理に移る。まず、ステップS108で弦NO.を
アドレスとして、メンバーシップ関数テーブルROM7
4における「弦NO.が大きい(第6弦、第5弦あた
り)」というメンバーシップ関数が格納されているSL
テーブルからデータ(前件部データ)Ddを読み出す。
この場合のデータは、図4(c)に示すメンバーシップ
関数SLの適合度(グレード)に相当し、0〜1の範囲
の値である。すなわち、データDdは弦NO.という入
力値に対してルールCが示した適合度である。
Next, the processing shifts to the processing for obtaining the degree of conformity to the second antecedent part. First, in step S108, the string NO. Is used as an address, the membership function table ROM7
SL in which the membership function of “the string number is large (around the sixth and fifth strings)” is stored.
Data (antecedent part data) Dd is read from the table.
The data in this case corresponds to the fitness (grade) of the membership function SL shown in FIG. 4C and is a value in the range of 0 to 1. That is, the data Dd is the string NO. Is the degree of conformity indicated by the rule C with respect to the input value.

【0159】次いで、ステップS109で上記各データ
Da、Db、Ddの最小値を判別し、最小のデータF2
を得る。この処理は、各データの論理積をとるもので、
いわゆる「MINをとる」ことに相当するものである。
これは、「MINをとる」ことにより、3つの入力値に
対して少なくとも何れも満足する状態を得るためであ
る。
Next, in step S109, the minimum value of each of the data Da, Db, Dd is determined, and the minimum data F2
Get. This process takes the logical product of each data.
This is equivalent to the so-called “MIN”.
This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0160】データDaが最小であるときはステップS
110に進んでF2=Daを採用し、データDbが最小
であるときはステップS111に進んでF2=Dbを採
用し、さらに、データDdが最小であるときはステップ
S112に進んでF2=Ddを採用する。これにより、
データDa、Db、Ddのうち、最小のものが今回のル
ーチンにおいてルールCが示す判断データF2として採
用される。
If the data Da is the minimum, step S
Proceeding to 110, F2 = Da is adopted, if the data Db is the minimum, proceed to step S111 to adopt F2 = Db, and if data Dd is the minimum, proceed to step S112 and F2 = Dd. adopt. This allows
Among the data Da, Db, and Dd, the smallest one is adopted as the determination data F2 indicated by the rule C in this routine.

【0161】このように、ルールCに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールBの第2の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が大きく(ハイポジション)、弾弦位置がサドル側であ
り、かつ弦NO.が大きい場合には、アタックレートを
ゆるやかにする。」という第2の前件部に対する適合度
が求められる。
As described above, three input values (fret No., string position C, and string No.) at that time are determined for rule C, and the matching of rule B with the second antecedent is performed. Degree is required. Specifically, “Fret NO.
Is large (high position), the string position is on the saddle side, and the string NO. When is large, the attack rate is made slow. Is determined for the second antecedent part.

【0162】次いで、ステップS113で前述した前件
部への適合度データF1とデータF2とを比較し、F1
<F2のときはステップS114に進んで、値の大きい
方をデータD3として採用する。このケースではD3=
F2となる。
Next, in step S113, the data F1 and the data F2 are compared with each other.
If <F2, the process proceeds to step S114, and the larger value is adopted as data D3. In this case D3 =
F2.

【0163】この処理は、各データの論理和をとるもの
で、いわゆる「MAXをとる」ことに相当するものであ
る。これは、「MAXをとる」ことにより、2つの入力
値に対して影響度の大きい方を採用するという状態を得
るためである。これにより、データF1とF1のうち、
大きいものが今回のルーチンにおいてルールCが示す判
断として採用される。一方、F1≧F2のときはステッ
プS115に進んで、D3=F1を採用する。
This processing is to calculate the logical sum of each data, which is equivalent to the so-called "MAX". This is to obtain a state of adopting the one having a greater influence on two input values by “taking MAX”. Thereby, of the data F1 and F1,
The larger one is adopted as the determination indicated by rule C in this routine. On the other hand, when F1 ≧ F2, the process proceeds to step S115, and D3 = F1 is adopted.

【0164】このように、ルールCに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールCの2つの前件部に対す
る適合度が求められる。
As described above, three input values (fret NO., Bullet string position C, and string NO.) At that time are determined for rule C, and the degree of conformity of rule C to two antecedent parts is determined. Is required.

【0165】ステップS114あるいはステップS11
5の何れかのステップを経ると、次いでステップS11
6でアドレスポインタiを[0]にリセットする。
Step S114 or step S11
After passing through any of the steps of step 5, step S11
At 6, the address pointer i is reset to [0].

【0166】図14に移り、次いで、ステップS117
でアドレスポインタiが終了アドレスに等しいか否か判
別する。終了アドレスでなければ、続くステップS11
8でiをアドレスとしてメンバーシップ関数テーブルR
OM74の「アタックレートをゆるやかにする」という
メンバーシップ関数が格納されているALSテーブルか
らデータ(後件部データ)Eを読み出す。この場合のデ
ータは、図4(d)に示すメンバーシップ関数ALSの
適合度に相当する。データEは、例えばマイクロコンピ
ュータ40内の同名のレジスタに格納される。
Referring to FIG. 14, step S117 follows.
It is determined whether or not the address pointer i is equal to the end address. If it is not the end address, the following step S11
8 with i as the address and membership function table R
The data (consequent part data) E is read from the ALS table in which the membership function “Make the attack rate slow” of the OM 74 is stored. The data in this case corresponds to the degree of fitness of the membership function ALS shown in FIG. The data E is stored in a register of the same name in the microcomputer 40, for example.

【0167】次いで、ステップS119で前述した統合
前件部データD3とデータEを比較し、D3≧Eのとき
はステップS120に進んでiをアドレスとしてワーキ
ングRAM74入っているP3メモリにデータEを書き
込む。一方、D3<EのときはステップS121に進ん
で同じくiをアドレスとしてワーキングRAM74に入
っているP3メモリにデータD3を書き込む。このよう
に、小さい方の値が採用されてメンバーシップ関数AL
Sをカットする処理が行われる。
Next, in step S119, the integrated antecedent part data D3 and data E are compared. If D3 ≧ E, the flow advances to step S120 to write data E to the P3 memory in the working RAM 74 using i as an address. . On the other hand, if D3 <E, the process proceeds to step S121 to write data D3 into the P3 memory in the working RAM 74 using i as an address. Thus, the smaller value is adopted and the membership function AL
A process of cutting S is performed.

【0168】この処理は、後件部たるメンバーシップ関
数ALSを前件部の適合度に応じてカットする「いわゆ
る頭切り法」を行うものである。
In this process, a so-called head truncation method for cutting the membership function ALS, which is the consequent part, according to the fitness of the antecedent part is performed.

【0169】次いで、ステップS122でアドレスポイ
ンタiを[1]だけインクリメントし、その後、ステッ
プS117に戻る。そして、ステップS117でアドレ
スポインタiが終了アドレスに等しくなるまで、同様の
処理を繰り返し、アドレスポインタiが終了アドレスに
等しくなると、メインプログラムにリターンする。
Next, in step S122, the address pointer i is incremented by [1], and thereafter, the flow returns to step S117. Then, the same processing is repeated until the address pointer i becomes equal to the end address in step S117. When the address pointer i becomes equal to the end address, the process returns to the main program.

【0170】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、メンバーシップ関数AL
Sをすべてサーチすることになる。これにより、メンバ
ーシップ関数ALSの全てに対して前件部の適合度に応
じた「頭切り法」が実行される。
The membership function AL is incremented by incrementing the address pointer i to the end address.
All S will be searched. As a result, the “head truncation method” is executed for all of the membership functions ALS according to the degree of conformity of the antecedent part.

【0171】このようにして、フレットNO.、弾弦位
置Cおよび弦NO.に基づいてファジールールCの演算
が行われ、「フレットNO.が大きく(ハイポジショ
ン)、弾弦位置がサドル側であり、かつ弦NO.が小さ
い場合、あるいはフレットNO.が大きく(ハイポジシ
ョン)、弾弦位置がサドル側であり、かつ弦NO.が大
きい場合には、アタックレートをゆるやかにする。」と
いう処理に対してどの程度適合しているかが算出され
る。すなわち、アタックレートをゆるやかにするという
ファジー操作量が、頭切りしたメンバーシップ関数AL
Sの大きさとして求められる。
Thus, the fret NO. , String position C and string NO. The calculation of the fuzzy rule C is performed on the basis of "the fret number is large (high position), the string position is on the saddle side and the string number is small, or the fret number is large (high position). If the string position is on the saddle side and the string number is large, the attack rate is reduced. " In other words, the fuzzy operation amount that makes the attack rate slow is the membership function AL that has been truncated.
It is obtained as the size of S.

【0172】ファジールールD演算処理 図15、16はファジールールD演算処理のサブルーチ
ンを示すフローチャートである。まず、ステップS13
1でフレットNO.をアドレスとして、メンバーシップ
関数テーブルROM74における「フレットNO.が大
きい(すなわち、ハイポジション)」というメンバーシ
ップ関数が格納されているFLテーブルからデータ(前
件部データ)Daを読み出す。この場合のデータは、図
4(a)に示すメンバーシップ関数FLの適合度(グレ
ード)に相当し、0〜1の範囲の値である。
Fuzzy Rule D Calculation Process FIGS. 15 and 16 are flowcharts showing a subroutine of the fuzzy rule D calculation process. First, step S13
1 and fret NO. (Address data) is read from the FL table in the membership function table ROM 74 in which the membership function “the fret number is large (ie, high position)” is stored. The data in this case corresponds to the fitness (grade) of the membership function FL shown in FIG. 4A and is a value in the range of 0 to 1.

【0173】すなわち、データDaはフレットNO.と
いう入力値に対してルールDが示した適合度である。デ
ータDaは、マイクロコンピュータ40内の同名のレジ
スタDaに格納され、これは後述の各データDb、D
c、Dd、Deについても同様である。
That is, the data Da is the fret NO. Is the degree of conformity indicated by the rule D with respect to the input value. The data Da is stored in a register Da of the same name in the microcomputer 40.
The same applies to c, Dd, and De.

【0174】同様に、ステップS132で弾弦位置Cを
アドレスとして、メンバーシップ関数テーブルROM7
4における「弾弦位置がフレット側である」というメン
バーシップ関数が格納されているPLテーブルからデー
タ(前件部データ)Dbを読み出す。この場合のデータ
は、図4(b)に示すメンバーシップ関数PLの適合度
(グレード)に相当し、0〜1の範囲の値である。すな
わち、データDbは弾弦位置Cという入力値に対してル
ールDが示した適合度である。
Similarly, in step S132, the membership function table ROM 7
4. Data (antecedent part data) Db is read from the PL table in which the membership function "the bullet position is on the fret side" is stored. The data in this case corresponds to the fitness (grade) of the membership function PL shown in FIG. 4B, and is a value in the range of 0 to 1. That is, the data Db is the degree of conformity indicated by the rule D with respect to the input value of the string position C.

【0175】また、ステップS133で弦NO.をアド
レスとして、メンバーシップ関数テーブルROM74に
おける「弦NO.が小さい(第1弦、第2弦あたり)」
というメンバーシップ関数が格納されているSSテーブ
ルからデータ(前件部データ)Dcを読み出す。この場
合のデータは、図4(c)に示すメンバーシップ関数S
Sの適合度(グレード)に相当し、0〜1の範囲の値で
ある。すなわち、データDcは弦NO.という入力値に
対してルールDが示した適合度である。
In step S133, the string NO. "String NO. Is small (about the first string and the second string)" in the membership function table ROM 74 with the address as the address.
Is read from the SS table in which the membership function is stored. The data in this case is the membership function S shown in FIG.
It corresponds to the degree of conformity (grade) of S, and is a value in the range of 0 to 1. That is, the data Dc is the string NO. Is the degree of conformity indicated by the rule D with respect to the input value.

【0176】次いで、ステップS134で各データD
a、Db、Dcの最小値を判別し、最小のデータF1を
得る。この処理は、各データの論理積をとるもので、い
わゆる「MINをとる」ことに相当するものである。こ
れは、「MINをとる」ことにより、3つの入力値に対
して少なくとも何れも満足する状態を得るためである。
Next, at step S134, each data D
The minimum values of a, Db, and Dc are determined, and the minimum data F1 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0177】データDaが最小であるときはステップS
135に進んでF1=Daを採用し、データDbが最小
であるときはステップS136に進んでF1=Dbを採
用し、さらに、データDcが最小であるときはステップ
S137に進んでF1=Dcを採用する。これにより、
データDa、Db、Dcのうち、最小のものが今回のル
ーチンにおいてルールDが示す判断データF1として採
用される。
If the data Da is the minimum, step S
The process proceeds to step 135 to adopt F1 = Da, and if the data Db is the minimum, the process proceeds to step S136 to employ F1 = Db. If the data Dc is the minimum, the process proceeds to step S137 to set F1 = Dc. adopt. This allows
The smallest of the data Da, Db, and Dc is adopted as the determination data F1 indicated by the rule D in this routine.

【0178】このように、ルールDに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールDの第1の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が大きく(ハイポジション)、弾弦位置がフレット側で
あり、かつ弦NO.が小さい場合には、アタックレート
を極めてゆるやかにする。」という第1の前件部に対す
る適合度が求められる。
Thus, three input values (fret NO., Bullet string position C, and string NO.) At that time are determined for rule D, and the matching of rule D with the first antecedent part is performed. Degree is required. Specifically, “Fret NO.
Is large (high position), the string position is on the fret side, and the string NO. Is small, the attack rate is made extremely slow. Is determined for the first antecedent part.

【0179】次いで、第2の前件部に対する適合度を求
める処理に移る。まず、ステップS138で弾弦位置C
をアドレスとして、メンバーシップ関数テーブルROM
74における「弾弦位置がフレット側である」というメ
ンバーシップ関数が格納されているPLテーブルからデ
ータ(前件部データ)Ddを読み出す。この場合のデー
タは、図4(b)に示すメンバーシップ関数PLの適合
度(グレード)に相当し、0〜1の範囲の値である。す
なわち、データDbは弾弦位置Dという入力値に対して
ルールBが示した適合度である。
Next, the processing shifts to the processing for obtaining the degree of conformity to the second antecedent part. First, in step S138, the string position C
With membership function table ROM as address
The data (antecedent part data) Dd is read from the PL table in which the membership function “the string position is on the fret side” in 74 is stored. The data in this case corresponds to the fitness (grade) of the membership function PL shown in FIG. 4B, and is a value in the range of 0 to 1. That is, the data Db is the degree of conformity indicated by the rule B with respect to the input value of the string position D.

【0180】また、ステップS139で弦NO.をアド
レスとして、メンバーシップ関数テーブルROM74に
おける「弦NO.が大きい(第6弦、第5弦あたり)」
というメンバーシップ関数が格納されているSLテーブ
ルからデータ(前件部データ)Deを読み出す。この場
合のデータは、図4(c)に示すメンバーシップ関数S
Lの適合度(グレード)に相当し、0〜1の範囲の値で
ある。すなわち、データDeは弦NO.という入力値に
対してルールDが示した適合度である。
In step S139, the string NO. Is used as an address, and “the string number is large (around the sixth and fifth strings)” in the membership function table ROM 74.
Is read from the SL table in which the membership function is stored. The data in this case is the membership function S shown in FIG.
It corresponds to the degree of conformity (grade) of L and is a value in the range of 0 to 1. That is, the data De contains the string NO. Is the degree of conformity indicated by the rule D with respect to the input value.

【0181】次いで、ステップS140で各データD
a、Dd、Deの最小値を判別し、最小のデータF2を
得る。この処理は、各データの論理積をとるもので、い
わゆる「MINをとる」ことに相当するものである。こ
れは、「MINをとる」ことにより、3つの入力値に対
して少なくとも何れも満足する状態を得るためである。
Next, at step S140, each data D
The minimum values of a, Dd, and De are determined, and the minimum data F2 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0182】データDaが最小であるときはステップS
141に進んでF2=Daを採用し、データDdが最小
であるときはステップS142に進んでF2=Ddを採
用し、さらに、データDeが最小であるときはステップ
S143に進んでF2=Deを採用する。これにより、
データDa、Dd、Deのうち、最小のものが今回のル
ーチンにおいてルールDが示す判断データF2として採
用される。
If the data Da is the minimum, step S
In step 141, F2 = Da is adopted. When the data Dd is the minimum, the process proceeds to step S142, and F2 = Dd is employed. When the data De is minimum, the process proceeds to step S143, in which F2 = De is determined. adopt. This allows
Among the data Da, Dd, De, the smallest one is adopted as the determination data F2 indicated by the rule D in this routine.

【0183】このように、ルールDに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールDの第2の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が大きく(ハイポジション)、弾弦位置がサドル側であ
り、かつ弦NO.が大きい場合には、アタックレートを
極めてゆるやかにする。」という第2の前件部に対する
適合度が求められる。
As described above, three input values (fret No., bullet string position C, and string No.) at that time are determined for rule D, and the matching of rule D with the second antecedent part is performed. Degree is required. Specifically, “Fret NO.
Is large (high position), the string position is on the saddle side, and the string NO. Is large, the attack rate is made extremely slow. Is determined for the second antecedent part.

【0184】次いで、ステップS144で前述した前件
部への適合度データF1とデータF2とを比較し、F1
≦F2のときはステップS145に進んで、値の大きい
方をデータD4として採用する。このケースではD4=
F2となる。
Then, in step S144, the data F1 and the data F2 are compared with each other.
If ≤F2, the process proceeds to step S145, and the larger value is adopted as data D4. In this case D4 =
F2.

【0185】この処理は、各データの論理和をとるもの
で、いわゆる「MAXをとる」ことに相当するものであ
る。これは、「MAXをとる」ことにより、2つの入力
値に対して影響度の大きい方を採用するという状態を得
るためである。これにより、データF1とF2のうち、
大きいものが今回のルーチンにおいてルールDが示す判
断として採用される。一方、F1>F2のときはステッ
プS146に進んで、D4=F1を採用する。
This processing is to calculate the logical sum of each data, which is equivalent to the so-called “MAX”. This is to obtain a state of adopting the one having a greater influence on two input values by “taking MAX”. Thereby, of the data F1 and F2,
The larger one is adopted as the determination indicated by rule D in this routine. On the other hand, when F1> F2, the process proceeds to step S146, and D4 = F1 is adopted.

【0186】このように、ルールDに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールDの2つの前件部に対す
る適合度が求められる。
As described above, three input values (fret NO., String position C, and string NO.) At that time are determined for rule D, and the degree of conformity of rule D to two antecedents is determined. Is required.

【0187】ステップS145あるいはステップS14
6の何れかのステップを経ると、次いで図16に移り、
ステップS147でアドレスポインタiを[0]にリセ
ットする。次いで、ステップS148でアドレスポイン
タiが終了アドレスに等しいか否か判別する。終了アド
レスでなければ、続くステップS149でiをアドレス
としてメンバーシップ関数テーブルROM74の「アタ
ックレートを極めてゆるやかにする」というメンバーシ
ップ関数が格納されているASテーブルからデータ(後
件部データ)Eを読み出す。この場合のデータは、図4
(d)に示すメンバーシップ関数ASの適合度に相当す
る。データEは、例えばマイクロコンピュータ40内の
同名のレジスタに格納される。
Step S145 or step S14
After going through any one of the steps of FIG.
In step S147, the address pointer i is reset to [0]. Next, in a step S148, it is determined whether or not the address pointer i is equal to the end address. If it is not the end address, data (consequent part data) E is stored in the membership function table ROM 74 from the AS table in the membership function table ROM 74 in which the membership function "Reduce the attack rate is extremely slow" is stored in step S149. read out. The data in this case is shown in FIG.
This corresponds to the fitness of the membership function AS shown in FIG. The data E is stored in a register of the same name in the microcomputer 40, for example.

【0188】次いで、ステップS150で前述した統合
前件部データD4とデータEを比較し、D4≧Eのとき
はステップS151に進んでiをアドレスとしてワーキ
ングRAM74入っているP4メモリにデータEを書き
込む。一方、D4<EのときはステップS152に進ん
で同じくiをアドレスとしてワーキングRAM74に入
っているP4メモリにデータD4を書き込む。このよう
に、小さい方の値が採用されてメンバーシップ関数AS
をカットする処理が行われる。
Then, in step S150, the integrated antecedent part data D4 described above is compared with data E. If D4 ≧ E, the flow advances to step S151 to write data E into the P4 memory in the working RAM 74 using i as an address. . On the other hand, if D4 <E, the process proceeds to step S152 to write data D4 into the P4 memory in the working RAM 74 using i as an address. Thus, the smaller value is adopted and the membership function AS
Is performed.

【0189】この処理は、後件部たるメンバーシップ関
数ASを前件部の適合度に応じてカットする「いわゆる
頭切り法」を行うものである。
In this processing, a so-called head truncation method is performed in which the membership function AS, which is the consequent part, is cut in accordance with the fitness of the antecedent part.

【0190】次いで、ステップS153でアドレスポイ
ンタiを[1]だけインクリメントし、その後、ステッ
プS148に戻る。そして、ステップS148でアドレ
スポインタiが終了アドレスに等しくなるまで、同様の
処理を繰り返し、アドレスポインタiが終了アドレスに
等しくなると、メインプログラムにリターンする。
Next, in step S153, the address pointer i is incremented by [1], and thereafter, the flow returns to step S148. Then, the same processing is repeated until the address pointer i becomes equal to the end address in step S148. When the address pointer i becomes equal to the end address, the process returns to the main program.

【0191】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、メンバーシップ関数AS
をすべてサーチすることになる。これにより、メンバー
シップ関数ASの全てに対して前件部の適合度に応じた
「頭切り法」が実行される。
The membership function AS is incremented by incrementing the address pointer i to the end address.
Will be searched. As a result, the “head truncation method” is executed for all of the membership functions AS in accordance with the fitness of the antecedent part.

【0192】このようにして、フレットNO.、弾弦位
置Cおよび弦NO.に基づいてファジールールDの演算
が行われ、「フレットNO.が大きく(ハイポジショ
ン)、弾弦位置がフレット側であり、かつ弦NO.が小
さい場合、あるいはフレットNO.が大きく(ハイポジ
ション)、弾弦位置がサドル側であり、かつ弦NO.が
大きい場合には、アタックレートを極めてゆるやかにす
る。」という処理に対してどの程度適合しているかが算
出される。すなわち、アタックレートを極めてゆるやか
にするというファジー操作量が、頭切りしたメンバーシ
ップ関数ASの大きさとして求められる。
Thus, the fret NO. , String position C and string NO. The calculation of the fuzzy rule D is performed based on the following equation: "If the fret number is large (high position), the string position is on the fret side and the string number is small, or the fret number is large (high position). If the string position is on the saddle side and the string number is large, the attack rate is made extremely slow. " That is, a fuzzy operation amount that makes the attack rate extremely slow is obtained as the magnitude of the truncated membership function AS.

【0193】最大値A演算処理 図17は最大値A演算処理のサブルーチンを示すフロー
チャートである。まず、ステップS161でアドレスポ
インタiを[0]にリセットし、ステップS162でア
ドレスポインタiをアドレスとしてワーキングRAM7
2に入っているP1メモリからデータD1を読み出す。
[0193] The maximum value A processing 17 is a flow chart showing a subroutine of a maximum value A calculation process. First, in step S161, the address pointer i is reset to [0], and in step S162, the working RAM 7 is set using the address pointer i as an address.
The data D1 is read from the P1 memory contained in No. 2.

【0194】データD1は、ファジールールAについて
の演算結果であり、具体的には、「フレットNO.が小
さく(ロウポジション)、弾弦位置がサドル側であり、
かつ弦NO.が小さい場合には、アタックレートを強く
する。」という処理に対してどの程度適合しているかを
算出して頭切りしたメンバーシップ関数ALに対応す
る。
The data D1 is the result of the calculation for the fuzzy rule A. Specifically, "the fret number is small (low position), the string position is on the saddle side,
And the string NO. If is small, increase the attack rate. "Corresponds to the membership function AL calculated by calculating the degree of conformity to the processing.

【0195】また、ステップS163でアドレスポイン
タiをアドレスとしてワーキングRAM72に入ってい
るP2メモリからデータD2を読み出す。
In step S163, the data D2 is read from the P2 memory in the working RAM 72 using the address pointer i as an address.

【0196】データD2は、ファジールールBについて
の演算結果であり、具体的には、「フレットNO.が小
さく(ロウポジション)、弾弦位置がサドル側であり、
かつ弦NO.が大きい場合、あるいはフレットNO.が
小さく(ロウポジション)、弾弦位置がフレット側であ
り、かつ弦NO.が小さい場合、あるいはフレットN
O.が小さく(ロウポジション)、弾弦位置がフレット
側であり、かつ弦NO.が大きい場合には、アタックレ
ートをやや強くする。」という処理に対してどの程度適
合しているかを算出して頭切りしたメンバーシップ関数
ALLに対応する。
The data D2 is a calculation result for the fuzzy rule B. Specifically, the data D2 indicates that the fret number is small (low position), the string position is on the saddle side,
And the string NO. Is large, or the fret NO. Is small (low position), the string position is on the fret side, and the string NO. Is small, or fret N
O. Is small (low position), the string position is on the fret side, and the string NO. Is larger, the attack rate is set to be slightly higher. "Corresponds to the membership function ALL truncated by calculating how much the process fits.

【0197】さらに、ステップS164で同様にアドレ
スポインタiをアドレスとしてワーキングRAM72に
入っているP3メモリからデータD3を読み出す。
In step S164, the data D3 is read from the P3 memory in the working RAM 72 using the address pointer i as an address.

【0198】データD3は、ファジールールCについて
の演算結果であり、具体的には、「フレットNO.が大
きく(ハイポジション)、弾弦位置がサドル側であり、
かつ弦NO.が小さい場合、あるいはフレットNO.が
大きく(ハイポジション)、弾弦位置がサドル側であ
り、かつ弦NO.が大きい場合には、アタックレートを
ゆるやかにする。」という処理に対してどの程度適合し
ているか算出して頭切りしたメンバーシップ関数ALS
に対応する。
The data D3 is a calculation result of the fuzzy rule C. Specifically, the data D3 indicates that the fret number is large (high position), the string position is on the saddle side,
And the string NO. Is small, or the fret NO. Is large (high position), the string position is on the saddle side, and the string NO. When is large, the attack rate is made slow. Membership function ALS calculated by calculating the degree of conformity to the process "
Corresponding to

【0199】次いで、ステップS165で同様にアドレ
スポインタiをアドレスとしてワーキングRAM72に
入っているP4メモリからデータD4を読み出す。
Next, in a step S165, similarly, the data D4 is read from the P4 memory in the working RAM 72 using the address pointer i as an address.

【0200】データD4は、ファジールールDについて
の演算結果であり、具体的には、「フレットNO.が大
きく(ハイポジション)、弾弦位置がフレット側であ
り、かつ弦NO.が小さい場合、あるいはフレットN
O.が大きく(ハイポジション)、弾弦位置がサドル側
であり、かつ弦NO.が大きい場合には、アタックレー
トを極めてゆるやかにする。」という処理に対してどの
程度適合しているか算出して頭切りしたメンバーシップ
関数ASに対応する。
The data D4 is the result of the calculation for the fuzzy rule D. Specifically, when the fret number is large (high position), the string position is on the fret side, and the string number is small, Or fret N
O. Is large (high position), the string position is on the saddle side, and the string NO. Is large, the attack rate is made extremely slow. "Corresponds to the membership function AS which is calculated to what extent it is suitable for the processing and truncated.

【0201】次いで、ステップS166で上記各データ
D1〜D4のうちの最大値を判別する。そして、データ
D1〜D4の最大値判別結果に応じてそれぞれステップ
S167、ステップS168、ステップS169、ステ
ップS170に進む。
Next, in step S166, the maximum value among the data D1 to D4 is determined. Then, the process proceeds to step S167, step S168, step S169, and step S170, respectively, according to the maximum value determination result of the data D1 to D4.

【0202】このような最大値判別を行っているのは、
各ファジールールA〜D毎の推論結果を統合するために
論理和(OR論理)をとる必要がかあるからで、いわゆ
る「MAXをとる」という処理に相当するものである。
The reason why the maximum value is determined is as follows.
Since it is necessary to take a logical sum (OR logic) in order to integrate the inference results for each of the fuzzy rules A to D, it corresponds to a so-called "MAX" process.

【0203】具体的には、例えばある瞬間の吹奏演奏状
態がファジールールAからファジールールDまでの、ど
のルールに影響されるのか、少しでも影響されるなら、
それはピッチ変化の判断に反映しておきたいという要求
に答えるもので、これが「OR論理」の関係の基本の考
え方である。そして、この考え方を集合論では「和をと
る」としており、本実施例では、どれかひとつでも影響
がある限り、考察の対象にするとして上記処理が実行さ
れる。
Specifically, for example, if any of the rules from the fuzzy rule A to the fuzzy rule D affects the blowing performance at a certain moment,
It answers the need to reflect it in the determination of pitch change, and this is the basic concept of the "OR logic" relationship. In the set theory, this concept is “sum”, and in the present embodiment, as long as any one of them has an effect, the above processing is executed as an object of consideration.

【0204】さて、ステップS167ではアドレスポイ
ンタiをアドレスとしてワーキングRAM72に入って
いるP9メモリにデータD1を書き込む。これにより、
今回のアドレスポインタi(最初のルーチンではi=
0)の値によって指定されるファジールールAの演算結
果である頭切りしたメンバーシップ関数ALの一部がP
9メモリに書き込まれる。
In step S167, data D1 is written to the P9 memory in the working RAM 72 using the address pointer i as an address. This allows
The current address pointer i (in the first routine, i =
Part of the truncated membership function AL that is the result of the fuzzy rule A specified by the value of 0) is P
9 is written to the memory.

【0205】なお、後述のように、アドレスポインタi
を終了アドレスまでインクリメントすることにより、頭
切りされたメンバーシップ関数ALがすべてサーチされ
てP9メモリに書き込まれることになる。
As will be described later, the address pointer i
Is incremented to the end address, all of the truncated membership functions AL are searched and written to the P9 memory.

【0206】ステップS168ではアドレスポインタi
をアドレスとしてワーキングRAM72に入っているP
9メモリにデータD2を書き込む。これにより、今回の
アドレスポインタiの値によって指定されるファジール
ールBの演算結果である頭切りしたメンバーシップ関数
ALLの一部がP9メモリに書き込まれる。
In step S168, the address pointer i
P in working RAM 72 with
9 Write data D2 to memory. As a result, a part of the truncated membership function ALL that is the result of the calculation of the fuzzy rule B specified by the value of the current address pointer i is written to the P9 memory.

【0207】同様に、ステップS169ではアドレスポ
インタiをアドレスとしてワーキングRAM72に入っ
ているP9メモリにデータD3を書き込む。これによ
り、今回のアドレスポインタiの値によって指定される
ファジールールCの演算結果である頭切りしたメンバー
シップ関数ALSの一部がP9メモリに書き込まれる。
Similarly, in step S169, data D3 is written to the P9 memory in the working RAM 72 using the address pointer i as an address. As a result, a part of the truncated membership function ALS, which is the calculation result of the fuzzy rule C specified by the value of the current address pointer i, is written to the P9 memory.

【0208】また、同様にステップS170ではアドレ
スポインタiをアドレスとしてワーキングRAM72に
入っている95メモリにデータD4を書き込む。これに
より、今回のアドレスポインタiの値によって指定され
るファジールールDの演算結果である頭切りしたメンバ
ーシップ関数ASの一部がP9メモリに書き込まれる。
Similarly, in step S170, data D4 is written to the 95 memory in the working RAM 72 using the address pointer i as an address. As a result, a part of the truncated membership function AS, which is the result of the calculation of the fuzzy rule D specified by the value of the current address pointer i, is written to the P9 memory.

【0209】次いで、ステップS171でアドレスポイ
ンタiが終了アドレスに等しいか否か判別する。終了ア
ドレスでなければ、続くステップS172でアドレスポ
インタiを[1]だけインクリメントし、その後、ステ
ップS162に戻る。そして、ステップS171でアド
レスポインタiが終了アドレスに等しくなるまで、上記
処理を繰り返し、アドレスポインタiが終了アドレスに
等しくなると、メインプログラムにリターンする。
Next, in step S171, it is determined whether or not the address pointer i is equal to the end address. If it is not the end address, the address pointer i is incremented by [1] in the following step S172, and thereafter, the process returns to step S162. The above process is repeated until the address pointer i becomes equal to the end address in step S171. When the address pointer i becomes equal to the end address, the process returns to the main program.

【0210】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、頭切りされた各メンバー
シップ関数AL、ALL、ALS、ASがすべてサーチ
されてP9メモリにデータD1〜D4として書き込まれ
る。
By incrementing the address pointer i to the end address, each of the truncated membership functions AL, ALL, ALS, and AS are all searched and written to the P9 memory as data D1 to D4.

【0211】このようにして、各ファジールールA〜D
毎の推論結果を統合するために論理和をとる(「MAX
をとる」)処理が実行され、頭切りされた各メンバーシ
ップ関数AL、ALL、ALS、ASがOR合成され
る。すなわち、MAX合成処理によって各ファジールー
ルA〜D毎の推論結果が重ね合わせられて合成出力が生
成される。
Thus, each of the fuzzy rules A to D
The logical sum is taken to integrate the inference results for each (“MAX
Is performed), and the membership functions AL, ALL, ALS, and AS that have been truncated are OR-combined. That is, the MAX synthesis process superimposes the inference results for each of the fuzzy rules A to D to generate a synthesized output.

【0212】重心計算A処理 図18は重心計算A処理のサブルーチンを示すフローチ
ャートである。まず、ステップS181でアドレスポイ
ンタiを[0]にリセットするとともに、面積レジスタ
areaおよび重心レジスタhafを同様に[0]にリ
セットする。面積レジスタareaは重心計算に必要な
面積areaのデータを格納するもので、重心レジスタ
hafは重心計算に必要な重心値hafを格納するもの
である。
[0212] centroid calculation A process 18 is a flowchart showing a subroutine of the center of gravity calculation A process. First, in step S181, the address pointer i is reset to [0], and the area register area and the center of gravity register haf are similarly reset to [0]. The area register area stores data of the area required for calculating the center of gravity, and the center of gravity register haf stores a center of gravity value haf required for calculating the center of gravity.

【0213】次いで、ステップS182でアドレスポイ
ンタiをアドレスとしてワーキングRAM72に入って
いるP9メモリからデータD9を読み出す。データD9
は、前述の最大値演算処理によって頭切りされた後件部
の各メンバーシップ関数AL、ALL、ALS、ASを
OR合成したものの一部(iをアドレスとして指定され
た部分)で、言い換えると、MAX合成処理によって各
ファジールールA〜D毎の推論結果が重ね合わせられた
合成出力データ(後に、OR合成関数として表す)の一
部である。
Next, in step S182, the data D9 is read from the P9 memory in the working RAM 72 using the address pointer i as an address. Data D9
Is a part of the OR combination of the membership functions AL, ALL, ALS, and AS of the consequent part of the consequent part truncated by the above-described maximum value calculation processing (a part specified by i as an address). In other words, This is a part of synthesized output data (hereinafter, referred to as an OR synthesis function) in which the inference results for each of the fuzzy rules A to D are superimposed by the MAX synthesis processing.

【0214】今回は、i(最初のルーチンではi=0)
をアドレスとしてP9メモリから合成出力データの一部
を読み出したことになる。なお、後述のように、アドレ
スポインタiを終了アドレスまでインクリメントするこ
とにより、合成出力データがすべてサーチされて読み出
されることになる。
This time, i (i = 0 in the first routine)
Means that a part of the combined output data has been read from the P9 memory by using As will be described later, by incrementing the address pointer i to the end address, all the combined output data is searched and read.

【0215】すなわち、続くステップS183では面積
レジスタareaの値を、今回読み出した合成出力デー
タD9だけ加算して面積areaの積算値を算出する。
That is, in the following step S183, the integrated value of the area area is calculated by adding the value of the area register area by the composite output data D9 read this time.

【0216】次いで、ステップS184でアドレスポイ
ンタiが終了アドレスに等しいか否か判別する。終了ア
ドレスでなければ、続くステップS185でアドレスポ
インタiを[1]だけインクリメントし、その後、ステ
ップS182に戻る。そして、ステップS184でアド
レスポインタiが終了アドレスに等しくなるまで、上記
処理を繰り返し、アドレスポインタiが終了アドレスに
等しくなると、ステップS186に抜ける。
Next, in step S184, it is determined whether or not the address pointer i is equal to the end address. If it is not the end address, the address pointer i is incremented by [1] in the subsequent step S185, and thereafter, the process returns to step S182. The above process is repeated until the address pointer i becomes equal to the end address in step S184. When the address pointer i becomes equal to the end address, the process goes to step S186.

【0217】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、頭切りされた後件部の各
メンバーシップ関数AL、ALL、ALS、ASのOR
合成出力データがすべてサーチされて読み出されること
になる。言い換えれば、最大値演算処理で得られたデー
タの集合を2次元図形に対応させ、このデータ集合部分
の面積を積分演算によってすべてサーチして読み出して
計算したことになる。その後、データ集合部分の面積に
対応する積分値が1/2になる値を重心値として算出す
る。
By incrementing the address pointer i to the end address, the OR of each of the membership functions AL, ALL, ALS, and AS of the consequent part of the truncated part is obtained.
All the combined output data is searched and read. In other words, the data set obtained by the maximum value calculation processing is made to correspond to a two-dimensional figure, and the area of this data set portion is searched, read, and calculated by integral calculation. Thereafter, a value at which the integral value corresponding to the area of the data set portion becomes 1 / is calculated as the center of gravity value.

【0218】このような重心値の算出を行うため、まず
ステップS186に進み、ステップS183で求めた積
算面積areaの1/2の値を重心値hafとして重心
レジスタhafに記憶する。次いで、ステップS187
で各メンバーシップ関数AL、ALL、ALS、ASの
OR合成関数の横軸に対応するjおよび面積積算エリア
balを共に[0]にリセットする。
In order to calculate such a barycenter value, the process first proceeds to step S186, and the value of 1 / of the integrated area area obtained in step S183 is stored as a barycenter value haf in the barycenter register haf. Next, step S187
Resets both j and the area integration area bal corresponding to the horizontal axis of the OR composite function of the membership functions AL, ALL, ALS, and AS to [0].

【0219】OR合成関数は、最大値演算処理で得られ
たデータ集合を2次元図形に対応させた場合の関数であ
り、その横軸がjに相当し、その面積の積算エリアがb
alに相当する。なお、jおよびbalの値は、例えば
同名のレジスタに格納される。
The OR synthesis function is a function when the data set obtained by the maximum value calculation processing is made to correspond to a two-dimensional figure. The horizontal axis corresponds to j, and the integrated area of the area is b.
It corresponds to al. The values of j and bal are stored in, for example, a register having the same name.

【0220】次いで、ステップS188で横軸jをアド
レスとしてワーキングRAM72に入っているP9メモ
リからOR合成関数に対応するデータD9を読み出す。
続くステップS189では面積積算エリアbalの値
を、今回読み出したデータD9だけ加算して面積積算エ
リアbalを積算する。
Then, in step S188, data D9 corresponding to the OR combination function is read from the P9 memory in the working RAM 72 using the horizontal axis j as an address.
In a succeeding step S189, the value of the area integration area bal is added by the data D9 read this time, and the area integration area bal is integrated.

【0221】次いで、ステップS190で積算した面積
積算エリアbalを重心値hafと比較し、面積積算エ
リアbalが重心値hafより小さいときはステップS
192に進んで横軸jをインクリメントした後、ステッ
プS188に戻る。そして、ステップS190で面積積
算エリアbalが重心値haf以上になるまで上記処理
を繰り返し、bal≧hafとなると、そのときの横軸
jの値が重心点であると判断してステップS191に抜
ける。
Next, the area integration area bal integrated in step S190 is compared with the center of gravity value haf, and if the area integration area bal is smaller than the center of gravity value haf, the process proceeds to step S190.
After proceeding to 192 to increment the horizontal axis j, the process returns to step S188. Then, in step S190, the above processing is repeated until the area integration area bal becomes equal to or larger than the barycenter value haf. When bal ≧ haf, the value of the horizontal axis j at that time is determined to be the barycenter point, and the process goes to step S191.

【0222】ステップS191では、OR合成関数の横
軸jのビットを、今回のルーチンにおけるアタックレー
ト(すなわち、前述したアタックレートAレベル)とし
て求める。
In step S191, the bit on the horizontal axis j of the OR combination function is obtained as the attack rate in this routine (that is, the above-mentioned attack rate A level).

【0223】このようにして、2次元図形に対応してい
るOR合成関数の重心をとり、その値を論理和の代表と
する脱ファジー化処理(ディファジファイア処理)が行
われ、推論処理での結論の全体が1つの確定値、すなわ
ち、この場合はアタックレートとして算出される。
In this way, the center of gravity of the OR synthesis function corresponding to the two-dimensional figure is taken, and the defuzzification process (defuzzifier process) whose value is representative of the logical sum is performed. Is calculated as a single definite value, that is, in this case, an attack rate.

【0224】次に、リリースレートを算出するファジー
推論処理について説明する。ファジールールE演算処理 図19はファジールールE演算処理のサブルーチンを示
すフローチャートである。まず、ステップS201でフ
レットNO.をアドレスとして、メンバーシップ関数テ
ーブルROM74における「フレットNO.が大きい
(すなわち、ハイポジション)」というメンバーシップ
関数が格納されているFLテーブルからデータ(前件部
データ)Daを読み出す。この場合のデータは、図4
(a)に示すメンバーシップ関数FLの適合度(グレー
ド)に相当し、0〜1の範囲の値である。
Next, fuzzy inference processing for calculating a release rate will be described. Fuzzy Rule E Calculation Process FIG. 19 is a flowchart showing a subroutine of the fuzzy rule E calculation process. First, in step S201, the fret NO. (Address data) is read from the FL table in the membership function table ROM 74 in which the membership function “the fret number is large (ie, high position)” is stored. The data in this case is shown in FIG.
It corresponds to the degree of conformity (grade) of the membership function FL shown in FIG.

【0225】すなわち、データDaはフレットNO.と
いう入力値に対してルールEが示した適合度である。デ
ータDaは、マイクロコンピュータ40内の同名のレジ
スタDaに格納され、これは後述の各データDb、Dc
についても同様である。
That is, the data Da is the fret NO. Is the degree of conformity indicated by the rule E with respect to the input value. The data Da is stored in a register Da of the same name in the microcomputer 40, which stores data Db and Dc to be described later.
The same applies to.

【0226】同様に、ステップS202で弾弦位置Cを
アドレスとして、メンバーシップ関数テーブルROM7
4における「弾弦位置がサドル側である」というメンバ
ーシップ関数が格納されているPSテーブルからデータ
(前件部データ)Dbを読み出す。この場合のデータ
は、図4(b)に示すメンバーシップ関数PSの適合度
(グレード)に相当し、0〜1の範囲の値である。すな
わち、データDbは弾弦位置Cという入力値に対してル
ールEが示した適合度である。
Similarly, in step S202, the membership function table ROM 7
4. Data (antecedent part data) Db is read from the PS table in which the membership function "the bullet position is on the saddle side" is stored. The data in this case corresponds to the fitness (grade) of the membership function PS shown in FIG. 4B and is a value in the range of 0 to 1. That is, the data Db is the degree of conformity indicated by the rule E with respect to the input value of the string position C.

【0227】また、ステップS203で弦NO.をアド
レスとして、メンバーシップ関数テーブルROM74に
おける「弦NO.が大きい(第6弦、第5弦あたり)」
というメンバーシップ関数が格納されているSLテーブ
ルからデータ(前件部データ)Dcを読み出す。この場
合のデータは、図4(c)に示すメンバーシップ関数S
Lの適合度(グレード)に相当し、0〜1の範囲の値で
ある。すなわち、データDcは弦NO.という入力値に
対してルールEが示した適合度である。
In step S203, the string NO. Is used as an address, and “the string number is large (around the sixth and fifth strings)” in the membership function table ROM 74.
Is read from the SL table in which the membership function is stored. The data in this case is the membership function S shown in FIG.
It corresponds to the degree of conformity (grade) of L and is a value in the range of 0 to 1. That is, the data Dc is the string NO. Is the degree of conformity indicated by the rule E with respect to the input value.

【0228】次いで、ステップS204で各データD
a、Db、Dcの最小値を判別し、最小のデータD5を
得る。この処理は、各データの論理積をとるもので、い
わゆる「MINをとる」ことに相当するものである。こ
れは、「MINをとる」ことにより、3つの入力値に対
して少なくとも何れも満足する状態を得るためである。
Next, at step S204, each data D
The minimum values of a, Db, and Dc are determined, and the minimum data D5 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0229】データDaが最小であるときはステップS
205に進んでD5=Daを採用し、データDbが最小
であるときはステップS206に進んでD5=Dbを採
用し、さらに、データDcが最小であるときはステップ
S207に進んでD5=Dcを採用する。これにより、
データDa、Db、Dcのうち、最小のものが今回のル
ーチンにおいてルールEが示す判断データD5として採
用される。
If the data Da is the minimum, step S
Proceeding to 205, D5 = Da is adopted, and when the data Db is the minimum, the procedure proceeds to step S206, where D5 = Db is adopted. Further, when the data Dc is the minimum, the procedure proceeds to step S207, and D5 = Dc is adopted. adopt. This allows
Among the data Da, Db, and Dc, the smallest one is adopted as the determination data D5 indicated by the rule E in this routine.

【0230】このように、ルールEに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールEの前件部に対する適合
度が求められる。
As described above, three input values (fret No., bullet string position C, and string No.) at that time are determined for rule E, and the degree of conformity of rule E to the antecedent is obtained. Can be

【0231】次いで、ステップS208でアドレスポイ
ンタiを[0]にリセットし、ステップS209でアド
レスポインタiが終了アドレスに等しいか否か判別す
る。終了アドレスでなければ、続くステップS210で
iをアドレスとしてメンバーシップ関数テーブルROM
74の「リリースレートを早くする」というメンバーシ
ップ関数が格納されているRLテーブルからデータ(後
件部データ)Eを読み出す。この場合のデータは、図4
(e)に示すメンバーシップ関数RLの適合度に相当す
る。データEは同名のレジスタEに格納される。
Next, in step S208, the address pointer i is reset to [0], and in step S209, it is determined whether or not the address pointer i is equal to the end address. If it is not the end address, in the following step S210, the membership function table ROM is set with i as the address.
The data (consequent part data) E is read from the RL table in which the membership function of “Raise the release rate” is stored at 74. The data in this case is shown in FIG.
This corresponds to the fitness of the membership function RL shown in FIG. Data E is stored in register E of the same name.

【0232】次いで、ステップS211でデータD5と
データEを比較し、D5≧EのときはステップS212
に進んでiをアドレスとしてワーキングRAM72に入
っているP5メモリにデータEを書き込む。一方、D5
<EのときはステップS213に進んで同じくiをアド
レスとしてワーキングRAM72に入っているP5メモ
リにデータD5を書き込む。このように、小さい方の値
が採用されてメンバーシップ関数RLをカットする処理
が行われる。
Next, data D5 and data E are compared in step S211. If D5 ≧ E, step S212 is performed.
To write data E into the P5 memory in the working RAM 72 using i as an address. On the other hand, D5
If <E, the process proceeds to step S213 to write the data D5 into the P5 memory in the working RAM 72 using i as the address. As described above, the process of cutting the membership function RL by using the smaller value is performed.

【0233】この処理は、後件部たるメンバーシップ関
数RLを前件部の適合度に応じてカットする「いわゆる
頭切り法」を行うものである。
In this processing, a so-called head truncation method for cutting the membership function RL, which is the consequent part, according to the fitness of the antecedent part is performed.

【0234】次いで、ステップS214でアドレスポイ
ンタiを[1]だけインクリメントし、その後、ステッ
プS209に戻る。そして、ステップS209でアドレ
スポインタiが終了アドレスに等しくなるまで、同様の
処理を繰り返し、アドレスポインタiが終了アドレスに
等しくなると、メインプログラムにリターンする。
Next, in step S214, the address pointer i is incremented by [1], and thereafter, the flow returns to step S209. Then, the same processing is repeated until the address pointer i becomes equal to the end address in step S209, and when the address pointer i becomes equal to the end address, the process returns to the main program.

【0235】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、メンバーシップ関数RL
をすべてサーチすることになる。これにより、メンバー
シップ関数RLの全てに対して前件部の適合度に応じた
「頭切り法」が実行される。
By incrementing the address pointer i to the end address, the membership function RL
Will be searched. As a result, the “head truncation method” is executed for all the membership functions RL according to the degree of matching of the antecedent part.

【0236】このようにして、フレットNO.、弾弦位
置Cおよび弦NO.に基づいてファジールールEの演算
が行われ、「フレットNO.が大きく(ハイポジショ
ン)、弾弦位置がサドル側であり、かつ弦NO.が大き
い場合には、リリースレートを早くする。」という処理
に対してどの程度適合しているかが算出される。すなわ
ち、リリースレートを早くするというファジー操作量
が、頭切りしたメンバーシップ関数RLの大きさとして
求められる。
Thus, the fret NO. , String position C and string NO. The fuzzy rule E is calculated on the basis of the following formula: "If the fret number is large (high position), the string position is on the saddle side, and the string number is large, the release rate is increased." The degree of conformity to the processing is calculated. That is, the fuzzy operation amount for increasing the release rate is obtained as the size of the truncated membership function RL.

【0237】ファジールールF演算処理 図20、21はファジールールF演算処理のサブルーチ
ンを示すフローチャートである。まず、ステップS22
1でフレットNO.をアドレスとして、メンバーシップ
関数テーブルROM74における「フレットNO.が大
きい(すなわち、ハイポジション)」というメンバーシ
ップ関数が格納されているFLテーブルからデータ(前
件部データ)Daを読み出す。この場合のデータは、図
4(a)に示すメンバーシップ関数FLの適合度(グレ
ード)に相当し、0〜1の範囲の値である。
Fuzzy Rule F Calculation Process FIGS. 20 and 21 are flowcharts showing a subroutine of the fuzzy rule F calculation process. First, step S22
1 and fret NO. (Address data) is read from the FL table in the membership function table ROM 74 in which the membership function “the fret number is large (ie, high position)” is stored. The data in this case corresponds to the fitness (grade) of the membership function FL shown in FIG. 4A and is a value in the range of 0 to 1.

【0238】すなわち、データDaはフレットNO.と
いう入力値に対してルールFが示した適合度である。デ
ータDaは、マイクロコンピュータ40内の同名のレジ
スタDaに格納され、これは後述の各データDb、D
c、Dd、De、Dfについても同様である。
That is, the data Da is the fret NO. Is the degree of conformity indicated by the rule F with respect to the input value. The data Da is stored in a register Da of the same name in the microcomputer 40.
The same applies to c, Dd, De, and Df.

【0239】同様に、ステップS222で弾弦位置Cを
アドレスとして、メンバーシップ関数テーブルROM7
4における「弾弦位置がサドル側である」というメンバ
ーシップ関数が格納されているPSテーブルからデータ
(前件部データ)Dbを読み出す。この場合のデータ
は、図4(b)に示すメンバーシップ関数PSの適合度
(グレード)に相当し、0〜1の範囲の値である。すな
わち、データDbは弾弦位置Cという入力値に対してル
ールFが示した適合度である。
Similarly, in step S222, the membership function table ROM 7
4. Data (antecedent part data) Db is read from the PS table in which the membership function “the string position is on the saddle side” is stored. The data in this case corresponds to the fitness (grade) of the membership function PS shown in FIG. 4B and is a value in the range of 0 to 1. That is, the data Db is the degree of conformity indicated by the rule F with respect to the input value of the string position C.

【0240】また、ステップS223で弦NO.をアド
レスとして、メンバーシップ関数テーブルROM74に
おける「弦NO.が小さい(第1弦、第2弦あたり)」
というメンバーシップ関数が格納されているSSテーブ
ルからデータ(前件部データ)Dcを読み出す。この場
合のデータは、図4(c)に示すメンバーシップ関数S
Sの適合度(グレード)に相当し、0〜1の範囲の値で
ある。すなわち、データDcは弦NO.という入力値に
対してルールFが示した適合度である。
In step S223, the string NO. "String NO. Is small (about the first string and the second string)" in the membership function table ROM 74 with the address as the address.
Is read from the SS table in which the membership function is stored. The data in this case is the membership function S shown in FIG.
It corresponds to the degree of conformity (grade) of S, and is a value in the range of 0 to 1. That is, the data Dc is the string NO. Is the degree of conformity indicated by the rule F with respect to the input value.

【0241】次いで、ステップS224で各データD
a、Db、Dcの最小値を判別し、最小のデータF1を
得る。この処理は、各データの論理積をとるもので、い
わゆる「MINをとる」ことに相当するものである。こ
れは、「MINをとる」ことにより、3つの入力値に対
して少なくとも何れも満足する状態を得るためである。
Next, at step S224, each data D
The minimum values of a, Db, and Dc are determined, and the minimum data F1 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0242】データDaが最小であるときはステップS
225に進んでF1=Daを採用し、データDbが最小
であるときはステップS226に進んでF1=Dbを採
用し、さらに、データDcが最小であるときはステップ
S227に進んでF1=Dcを採用する。これにより、
データDa、Db、Dcのうち、最小のものが今回のル
ーチンにおいてルールFが示す判断データF1として採
用される。
If the data Da is the minimum, step S
Proceeding to 225, F1 = Da is adopted, and when the data Db is the minimum, the procedure proceeds to step S226, and F1 = Db is employed. When the data Dc is the minimum, the procedure proceeds to step S227, and F1 = Dc is adopted. adopt. This allows
Among the data Da, Db, and Dc, the smallest one is adopted as the determination data F1 indicated by the rule F in this routine.

【0243】このように、ルールFに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールFの第1の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が大きく(ハイポジション)、弾弦位置がサドル側であ
り、かつ弦NO.が小さい場合には、リリースレートを
やや早くする。」という第1の前件部に対する適合度が
求められる。
As described above, three input values (fret No., bullet string position C, and string No.) at that time are determined for rule F, and the rule F is applied to the first antecedent part. Degree is required. Specifically, “Fret NO.
Is large (high position), the string position is on the saddle side, and the string NO. If is small, increase the release rate slightly. Is determined for the first antecedent part.

【0244】次いで、第2の前件部に対する適合度を求
める処理に移る。まず、ステップS228で弾弦位置C
をアドレスとして、メンバーシップ関数テーブルROM
74における「弾弦位置がフレット側である」というメ
ンバーシップ関数が格納されているPLテーブルからデ
ータ(前件部データ)Ddを読み出す。この場合のデー
タは、図4(b)に示すメンバーシップ関数PLの適合
度(グレード)に相当し、0〜1の範囲の値である。す
なわち、データDbは弾弦位置Cという入力値に対して
ルールFが示した適合度である。
Next, the processing shifts to the processing for obtaining the degree of conformity to the second antecedent part. First, in step S228, the string position C
With membership function table ROM as address
The data (antecedent part data) Dd is read from the PL table in which the membership function “the string position is on the fret side” in 74 is stored. The data in this case corresponds to the fitness (grade) of the membership function PL shown in FIG. 4B, and is a value in the range of 0 to 1. That is, the data Db is the degree of conformity indicated by the rule F with respect to the input value of the string position C.

【0245】また、ステップS229で弦NO.をアド
レスとして、メンバーシップ関数テーブルROM74に
おける「弦NO.が大きい(第6弦、第5弦あたり)」
というメンバーシップ関数が格納されているSLテーブ
ルからデータ(前件部データ)Deを読み出す。この場
合のデータは、図4(c)に示すメンバーシップ関数S
Lの適合度(グレード)に相当し、0〜1の範囲の値で
ある。すなわち、データDeは弦NO.という入力値に
対してルールFが示した適合度である。
In step S229, the string NO. Is used as an address, and “the string number is large (around the sixth and fifth strings)” in the membership function table ROM 74.
Is read from the SL table in which the membership function is stored. The data in this case is the membership function S shown in FIG.
It corresponds to the degree of conformity (grade) of L and is a value in the range of 0 to 1. That is, the data De contains the string NO. Is the degree of conformity indicated by the rule F with respect to the input value.

【0246】次いで、ステップS230で各データD
a、Dd、Deの最小値を判別し、最小のデータF2を
得る。この処理は、各データの論理積をとるもので、い
わゆる「MINをとる」ことに相当するものである。こ
れは、「MINをとる」ことにより、3つの入力値に対
して少なくとも何れも満足する状態を得るためである。
Next, at step S230, each data D
The minimum values of a, Dd, and De are determined, and the minimum data F2 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0247】データDaが最小であるときはステップS
231に進んでF2=Daを採用し、データDdが最小
であるときはステップS232に進んでF2=Ddを採
用し、さらに、データDeが最小であるときはステップ
S233に進んでF2=Deを採用する。これにより、
データDa、Dd、Deのうち、最小のものが今回のル
ーチンにおいてルールFが示す判断データF2として採
用される。
If the data Da is the minimum, step S
In step S231, F2 = Da is adopted. When the data Dd is the minimum, the process proceeds to step S232, and F2 = Dd is employed. When the data De is minimum, the process proceeds to step S233 in which F2 = De is determined. adopt. This allows
Among the data Da, Dd, and De, the smallest one is adopted as the determination data F2 indicated by the rule F in this routine.

【0248】このように、ルールFに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールFの第2の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が大きく(ハイポジション)、弾弦位置がフレット側で
あり、かつ弦NO.が大きい場合には、リリースレート
をやや早くする。」という第2の前件部に対する適合度
が求められる。
As described above, three input values (fret No., string position C, and string No.) at that time are determined for rule F, and the rule F is applied to the second antecedent part. Degree is required. Specifically, “Fret NO.
Is large (high position), the string position is on the fret side, and the string NO. If is large, make the release rate a little faster. Is determined for the second antecedent part.

【0249】次いで、第3の前件部に対する適合度を求
める処理に移る。ステップS234でフレットNO.を
アドレスとして、メンバーシップ関数テーブルROM7
4における「フレットNO.が小さい(すなわち、ロウ
ハイポジション)」というメンバーシップ関数が格納さ
れているFSテーブルからデータ(前件部データ)Df
を読み出す。この場合のデータは、図4(a)に示すメ
ンバーシップ関数FSの適合度(グレード)に相当し、
0〜1の範囲の値である。
Next, the processing shifts to the processing for obtaining the degree of conformity to the third antecedent part. In step S234, the fret NO. Is used as an address, the membership function table ROM7
4 from the FS table in which the membership function “Fret No. is small (ie, low-high position)” is stored.
Is read. The data in this case corresponds to the fitness (grade) of the membership function FS shown in FIG.
It is a value in the range of 0 to 1.

【0250】すなわち、データDfはフレットNO.と
いう入力値に対してルールFが示した適合度である。デ
ータDfは、マイクロコンピュータ40内の同名のレジ
スタDaに格納される。
That is, the data Df is the fret NO. Is the degree of conformity indicated by the rule F with respect to the input value. The data Df is stored in a register Da of the same name in the microcomputer 40.

【0251】図21に移り、次いで、ステップS235
で上記各データDf、Db、Dcの最小値を判別し、最
小のデータF3を得る。この処理は、各データの論理積
をとるもので、いわゆる「MINをとる」ことに相当す
るものである。これは、「MINをとる」ことにより、
3つの入力値に対して少なくとも何れも満足する状態を
得るためである。
Moving to FIG. 21, step S235 follows.
To determine the minimum value of each of the data Df, Db, and Dc to obtain the minimum data F3. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is done by "taking MIN"
This is to obtain a state in which at least all three input values are satisfied.

【0252】データDfが最小であるときはステップS
236に進んでF3=Dfを採用し、データDbが最小
であるときはステップS237に進んでF3=Dbを採
用し、さらに、データDcが最小であるときはステップ
S238に進んでF3=Dcを採用する。これにより、
データDf、Db、Dcのうち、最小のものが今回のル
ーチンにおいてルールFが示す判断データF3として採
用される。
If the data Df is the minimum, step S
Proceeding to 236, F3 = Df is adopted, and when the data Db is the minimum, the process proceeds to step S237 to adopt F3 = Db, and when the data Dc is the minimum, the process proceeds to step S238 to set F3 = Dc. adopt. This allows
Among the data Df, Db, Dc, the smallest one is adopted as the determination data F3 indicated by the rule F in this routine.

【0253】このように、ルールFに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールFの第3の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が小さく(ロウポジション)、弾弦位置がサドル側であ
り、かつ弦NO.が小さい場合には、リリースレートを
やや早くする。」という第3の前件部に対する適合度が
求められる。
As described above, three input values (fret No., string position C, and string No.) at that time are determined for rule F, and the rule F is applied to the third antecedent part. Degree is required. Specifically, “Fret NO.
Is small (low position), the string position is on the saddle side, and the string NO. If is small, increase the release rate slightly. Is determined for the third antecedent part.

【0254】次いで、ステップS239に進んで上述し
た前件部への適合度データF1〜F3のうちの最大値を
判別する。そして、データF1〜F3の最大値判別結果
に応じてそれぞれステップS240〜ステップS242
の何れかへ進む。
Then, the flow advances to step S239 to determine the maximum value of the above-mentioned conformity data F1 to F3 for the antecedent part. Then, according to the maximum value discrimination result of the data F1 to F3, steps S240 to S242 are respectively performed.
Go to any of

【0255】このような最大値判別を行っているのは、
前述した3つの前件部の推論結果を統合するために論理
和(OR論理)をとる必要がかあるからで、いわゆる
「MAXをとる」という処理に相当するものである。
The reason why the maximum value is determined is as follows.
Since it is necessary to take a logical sum (OR logic) in order to integrate the inference results of the three antecedent parts described above, this corresponds to a so-called "MAX" processing.

【0256】データF1が最大であるときはステップS
240で前述した3つの前件部の推論結果を統合した前
件部データD6としてF1を採用し、データF2が最大
であるときはステップS241で統合前件部データD6
としてF2を採用し、さらにデータF3が最大であると
きはステップS242で統合前件部データD6としてF
3を採用する。
If the data F1 is the maximum, step S
At step 240, F1 is adopted as the antecedent part data D6 obtained by integrating the inference results of the three antecedent parts described above, and when the data F2 is the maximum, at step S241, the integrated antecedent part data D6
When the data F3 is the maximum, F2 is used as the integrated antecedent part data D6 in step S242.
3 is adopted.

【0257】このように、統合前件部データD6を得る
ことで、ルールFに対して、その時点での3つの入力値
(フレットNO.、弾弦位置Cおよび弦NO.)が判断
され、ルールFの前件部に対する適合度が求められる。
As described above, by obtaining the integrated antecedent part data D6, three input values (fret NO., Bullet string position C, and string NO.) At that time are determined for rule F. The degree of conformity to the antecedent part of rule F is determined.

【0258】ステップS240〜ステップS242の何
れかのステップを経ると、次いでステップS243でア
ドレスポインタiを[0]にリセットし、ステップS2
44でアドレスポインタiが終了アドレスに等しいか否
か判別する。終了アドレスでなければ、続くステップS
245でiをアドレスとしてメンバーシップ関数テーブ
ルROM74の「リリースレートをやや早くする」とい
うメンバーシップ関数が格納されているRLLテーブル
からデータ(後件部データ)Eを読み出す。
After going through any one of steps S240 to S242, the address pointer i is reset to [0] in step S243, and the process proceeds to step S2.
At 44, it is determined whether or not the address pointer i is equal to the end address. If it is not the end address, the following step S
In step 245, data (consequent part data) E is read from the RLL table in the membership function table ROM 74 in which the membership function of "slightly increase the release rate" is stored, using i as an address.

【0259】この場合のデータは、図4(e)に示すメ
ンバーシップ関数RLLの適合度に相当する。データE
は、例えばマイクロコンピュータ40内の同名のレジス
タに格納される。
The data in this case corresponds to the fitness of the membership function RLL shown in FIG. Data E
Is stored in a register of the same name in the microcomputer 40, for example.

【0260】次いで、ステップS246で前述した統合
前件部データD6とデータEを比較し、D6≧Eのとき
はステップS247に進んでiをアドレスとしてワーキ
ングRAM74に入っているP6メモリにデータEを書
き込む。一方、D6<EのときはステップS248に進
んで同じくiをアドレスとしてワーキングRAM74に
入っているP6メモリにデータD6を書き込む。このよ
うに、小さい方の値が採用されてメンバーシップ関数R
LLをカットする処理が行われる。
Next, in step S246, the integrated antecedent part data D6 and data E are compared. If D6 ≧ E, the flow advances to step S247 to store the data E in the P6 memory in the working RAM 74 using i as an address. Write. On the other hand, if D6 <E, the process proceeds to step S248 to write data D6 into the P6 memory in the working RAM 74 using i as an address. Thus, the smaller value is adopted and the membership function R
Processing for cutting LL is performed.

【0261】この処理は、後件部たるメンバーシップ関
数RLLを前件部の適合度に応じてカットする「いわゆ
る頭切り法」を行うものである。
In this processing, a so-called head truncation method for cutting the membership function RLL, which is the consequent part, according to the fitness of the antecedent part is performed.

【0262】次いで、ステップS249でアドレスポイ
ンタiを[1]だけインクリメントし、その後、ステッ
プS244に戻る。そして、ステップS244でアドレ
スポインタiが終了アドレスに等しくなるまで、同様の
処理を繰り返し、アドレスポインタiが終了アドレスに
等しくなると、メインプログラムにリターンする。
Next, in step S249, the address pointer i is incremented by [1], and thereafter, the flow returns to step S244. Then, the same processing is repeated until the address pointer i becomes equal to the end address in step S244. When the address pointer i becomes equal to the end address, the process returns to the main program.

【0263】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、メンバーシップ関数RL
Lをすべてサーチすることになる。これにより、メンバ
ーシップ関数RLLの全てに対して前件部の適合度に応
じた「頭切り法」が実行される。
By incrementing the address pointer i to the end address, the membership function RL
All L will be searched. As a result, a “head truncation method” is executed for all the membership functions RLL according to the degree of matching of the antecedent part.

【0264】このようにして、フレットNO.、弾弦位
置Cおよび弦NO.に基づいてファジールールFの演算
が行われ、「フレットNO.が大きく(ハイポジショ
ン)、弾弦位置がサドル側であり、かつ弦NO.が小さ
い場合、あるいはフレットNO.が大きく(ハイポジシ
ョン)、弾弦位置がフレット側であり、かつ弦NO.が
大きい場合、あるいはフレットNO.が小さく(ロウポ
ジション)、弾弦位置がサドル側であり、かつ弦NO.
が小さい場合には、リリースレートをやや早くする。」
という処理に対してどの程度適合しているかが算出され
る。すなわち、リリースレートをやや早くするというフ
ァジー操作量が、頭切りしたメンバーシップ関数RLL
の大きさとして求められる。
Thus, the fret NO. , String position C and string NO. The calculation of the fuzzy rule F is performed based on the following equation: "The fret number is large (high position), the string position is on the saddle side and the string number is small, or the fret number is large (high position). , The string position is on the fret side and the string NO. Is large, or the fret number is small (low position), the string position is on the saddle side, and the string No.
If is small, increase the release rate slightly. "
Is calculated to what degree the process is suitable. That is, the fuzzy operation amount of slightly increasing the release rate is reduced by the truncated membership function RLL.
It is calculated as the size of

【0265】ファジールールG演算処理 図22、23はファジールールG演算処理のサブルーチ
ンを示すフローチャートである。まず、ステップS25
1でフレットNO.をアドレスとして、メンバーシップ
関数テーブルROM74における「フレットNO.が大
きい(すなわち、ハイポジション)」というメンバーシ
ップ関数が格納されているFLテーブルからデータ(前
件部データ)Daを読み出す。この場合のデータは、図
4(a)に示すメンバーシップ関数FLの適合度(グレ
ード)に相当し、0〜1の範囲の値である。
Fuzzy Rule G Calculation Process FIGS. 22 and 23 are flowcharts showing a subroutine of the fuzzy rule G calculation process. First, step S25
1 and fret NO. (Address data) is read from the FL table in the membership function table ROM 74 in which the membership function “the fret number is large (ie, high position)” is stored. The data in this case corresponds to the fitness (grade) of the membership function FL shown in FIG. 4A and is a value in the range of 0 to 1.

【0266】すなわち、データDaはフレットNO.と
いう入力値に対してルールGが示した適合度である。デ
ータDaは、マイクロコンピュータ40内の同名のレジ
スタDaに格納され、これは後述の各データDb、D
c、Dd、De、Dfについても同様である。
That is, the data Da is the fret NO. Is the degree of conformity indicated by the rule G with respect to the input value. The data Da is stored in a register Da of the same name in the microcomputer 40.
The same applies to c, Dd, De, and Df.

【0267】同様に、ステップS252で弾弦位置Cを
アドレスとして、メンバーシップ関数テーブルROM7
4における「弾弦位置がフレット側である」というメン
バーシップ関数が格納されているPLテーブルからデー
タ(前件部データ)Dbを読み出す。この場合のデータ
は、図4(b)に示すメンバーシップ関数PLの適合度
(グレード)に相当し、0〜1の範囲の値である。すな
わち、データDbは弾弦位置Cという入力値に対してル
ールGが示した適合度である。
Similarly, in step S252, the membership function table ROM 7
4. Data (antecedent part data) Db is read from the PL table in which the membership function "the bullet position is on the fret side" is stored. The data in this case corresponds to the fitness (grade) of the membership function PL shown in FIG. 4B, and is a value in the range of 0 to 1. That is, the data Db is the degree of conformity indicated by the rule G with respect to the input value of the string position C.

【0268】また、ステップS253で弦NO.をアド
レスとして、メンバーシップ関数テーブルROM74に
おける「弦NO.が小さい(第1弦、第2弦あたり)」
というメンバーシップ関数が格納されているSSテーブ
ルからデータ(前件部データ)Dcを読み出す。この場
合のデータは、図4(c)に示すメンバーシップ関数S
Sの適合度(グレード)に相当し、0〜1の範囲の値で
ある。すなわち、データDcは弦NO.という入力値に
対してルールGが示した適合度である。
In step S253, the string NO. "String NO. Is small (about the first string and the second string)" in the membership function table ROM 74 with the address as the address.
Is read from the SS table in which the membership function is stored. The data in this case is the membership function S shown in FIG.
It corresponds to the degree of conformity (grade) of S, and is a value in the range of 0 to 1. That is, the data Dc is the string NO. Is the degree of conformity indicated by the rule G with respect to the input value.

【0269】次いで、ステップS254で各データD
a、Db、Dcの最小値を判別し、最小のデータF1を
得る。この処理は、各データの論理積をとるもので、い
わゆる「MINをとる」ことに相当するものである。こ
れは、「MINをとる」ことにより、3つの入力値に対
して少なくとも何れも満足する状態を得るためである。
Next, at step S254, each data D
The minimum values of a, Db, and Dc are determined, and the minimum data F1 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0270】データDaが最小であるときはステップS
255に進んでF1=Daを採用し、データDbが最小
であるときはステップS256に進んでF1=Dbを採
用し、さらに、データDcが最小であるときはステップ
S257に進んでF1=Dcを採用する。これにより、
データDa、Db、Dcのうち、最小のものが今回のル
ーチンにおいてルールGが示す判断データF1として採
用される。
If data Da is the minimum, step S
In step S256, the process proceeds to step S256 to adopt F1 = Db. When the data Dc is minimum, the process proceeds to step S257 in which F1 = Dc. adopt. This allows
Among the data Da, Db, and Dc, the smallest one is adopted as the determination data F1 indicated by the rule G in this routine.

【0271】このように、ルールFに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールGの第1の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が大きく(ハイポジション)、弾弦位置がフレット側で
あり、かつ弦NO.が小さい場合には、リリースレート
をゆるやかにする。」という第1の前件部に対する適合
度が求められる。
As described above, three input values (fret NO., String position C, and string NO.) At that time are determined for rule F, and the matching of rule G with the first antecedent is performed. Degree is required. Specifically, “Fret NO.
Is large (high position), the string position is on the fret side, and the string NO. If is small, the release rate should be slow. Is determined for the first antecedent part.

【0272】次いで、第2の前件部に対する適合度を求
める処理に移る。まず、ステップS258でフレットN
O.をアドレスとして、メンバーシップ関数テーブルR
OM74における「フレットNO.が小さい(すなわ
ち、ロウポジション)」というメンバーシップ関数が格
納されているFSテーブルからデータ(前件部データ)
Ddを読み出す。この場合のデータは、図4(a)に示
すメンバーシップ関数FSの適合度(グレード)に相当
し、0〜1の範囲の値である。
Next, the processing shifts to the processing for obtaining the degree of conformity to the second antecedent part. First, in step S258, fret N
O. , The membership function table R
Data (antecedent part data) from the FS table in which the membership function “Fret No. is small (ie, low position)” in OM74 is stored.
Read Dd. The data in this case corresponds to the fitness (grade) of the membership function FS shown in FIG.

【0273】すなわち、データDdはフレットNO.と
いう入力値に対してルールGが示した適合度である。デ
ータDdは、マイクロコンピュータ40内の同名のレジ
スタDaに格納される。
That is, the data Dd is the fret NO. Is the degree of conformity indicated by the rule G with respect to the input value. The data Dd is stored in a register Da of the same name in the microcomputer 40.

【0274】次いで、ステップS259で弦NO.をア
ドレスとして、メンバーシップ関数テーブルROM74
における「弦NO.が大きい(第6弦、第5弦あた
り)」というメンバーシップ関数が格納されているSL
テーブルからデータ(前件部データ)Deを読み出す。
この場合のデータは、図4(c)に示すメンバーシップ
関数SLの適合度(グレード)に相当し、0〜1の範囲
の値である。すなわち、データDeは弦NO.という入
力値に対してルールGが示した適合度である。
Next, in step S259, the string NO. Is used as an address, the membership function table ROM 74
, The membership function that “the string number is large (around the sixth and fifth strings)” is stored.
Data (antecedent part data) De is read from the table.
The data in this case corresponds to the fitness (grade) of the membership function SL shown in FIG. 4C and is a value in the range of 0 to 1. That is, the data De contains the string NO. Is the degree of conformity indicated by the rule G with respect to the input value.

【0275】次いで、ステップS260で上記各データ
Db、Dd、Deの最小値を判別し、最小のデータF2
を得る。この処理は、各データの論理積をとるもので、
いわゆる「MINをとる」ことに相当するものである。
これは、「MINをとる」ことにより、3つの入力値に
対して少なくとも何れも満足する状態を得るためであ
る。
Next, in step S260, the minimum value of each of the data Db, Dd, De is determined, and the minimum data F2
Get. This process takes the logical product of each data.
This is equivalent to the so-called “MIN”.
This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0276】データDbが最小であるときはステップS
261に進んでF2=Dbを採用し、データDdが最小
であるときはステップS262に進んでF2=Ddを採
用し、さらに、データDeが最小であるときはステップ
S263に進んでF2=Deを採用する。これにより、
データDb、Dd、Deのうち、最小のものが今回のル
ーチンにおいてルールGが示す判断データF2として採
用される。
If the data Db is at the minimum, step S
The process proceeds to step 261 to adopt F2 = Db. If the data Dd is minimum, the process proceeds to step S262 to employ F2 = Dd. If the data De is minimum, the process proceeds to step S263 to determine F2 = De. adopt. This allows
The smallest one of the data Db, Dd, and De is adopted as the determination data F2 indicated by the rule G in this routine.

【0277】このように、ルールGに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールGの第2の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が小さく(ロウポジション)、弾弦位置がフレット側で
あり、かつ弦NO.が大きい場合には、リリースレート
をゆるやかにする。」という第2の前件部に対する適合
度が求められる。
As described above, three input values (fret NO., Bullet string position C, and string NO.) At that time are determined for rule G, and the matching of rule G with the second antecedent is performed. Degree is required. Specifically, “Fret NO.
Is small (low position), the string position is on the fret side, and the string NO. If is large, the release rate should be slow. Is determined for the second antecedent part.

【0278】次いで、第3の前件部に対する適合度を求
める処理に移る。ステップS264で弾弦位置Cをアド
レスとして、メンバーシップ関数テーブルROM74に
おける「弾弦位置がサドル側である」というメンバーシ
ップ関数が格納されているPSテーブルからデータ(前
件部データ)Dfを読み出す。この場合のデータは、図
4(b)に示すメンバーシップ関数PSの適合度(グレ
ード)に相当し、0〜1の範囲の値である。すなわち、
データDfは弾弦位置Cという入力値に対してルールG
が示した適合度である。
Next, the processing shifts to the processing for obtaining the degree of conformity to the third antecedent part. In step S264, using the string position C as an address, data (antecedent part data) Df is read from the PS table in the membership function table ROM 74 in which the membership function "the string position is on the saddle side" is stored. The data in this case corresponds to the fitness (grade) of the membership function PS shown in FIG. 4B and is a value in the range of 0 to 1. That is,
The data Df corresponds to the rule G for the input value of the string position C.
Is the degree of fit shown.

【0279】図23に移り、ステップS265で上記各
データDf、Dd、Deの最小値を判別し、最小のデー
タF3を得る。この処理は、各データの論理積をとるも
ので、いわゆる「MINをとる」ことに相当するもので
ある。これは、「MINをとる」ことにより、3つの入
力値に対して少なくとも何れも満足する状態を得るため
である。
Referring to FIG. 23, in step S265, the minimum value of each of the data Df, Dd, De is determined, and the minimum data F3 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0280】データDfが最小であるときはステップS
266に進んでF3=Dfを採用し、データDdが最小
であるときはステップS267に進んでF3=Ddを採
用し、さらに、データDeが最小であるときはステップ
S268に進んでF3=Deを採用する。これにより、
データDf、Dd、Deのうち、最小のものが今回のル
ーチンにおいてルールGが示す判断データF3として採
用される。
If the data Df is the minimum, step S
Proceeding to 266, F3 = Df is adopted, and when the data Dd is the minimum, the flow proceeds to step S267, and F3 = Dd is adopted. Further, when the data De is the minimum, the flow proceeds to step S268 to set F3 = De. adopt. This allows
Among the data Df, Dd and De, the smallest one is adopted as the determination data F3 indicated by the rule G in this routine.

【0281】このように、ルールGに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールGの第3の前件部に対す
る適合度が求められる。具体的には、「フレットNO.
が小さく(ロウポジション)、弾弦位置がサドル側であ
り、かつ弦NO.が大きい場合には、リリースレートを
ゆるやかにする。」という第3の前件部に対する適合度
が求められる。
As described above, three input values (fret NO., Bullet string position C, and string NO.) At that point in time are determined for rule G, and the matching of rule G to the third antecedent is performed. Degree is required. Specifically, “Fret NO.
Is small (low position), the string position is on the saddle side, and the string NO. If is large, the release rate should be slow. Is determined for the third antecedent part.

【0282】次いで、ステップS269に進んで上述し
た前件部への適合度データF1〜F3のうちの最大値を
判別する。そして、データF1〜F3の最大値判別結果
に応じてそれぞれステップS270〜ステップS272
の何れかへ進む。
Then, the flow advances to step S269 to determine the maximum value of the above-mentioned antecedence data F1 to F3. Then, according to the maximum value discrimination results of the data F1 to F3, steps S270 to S272 are respectively performed.
Go to any of

【0283】このような最大値判別を行っているのは、
前述した3つの前件部の推論結果を統合するために論理
和(OR論理)をとる必要がかあるからで、いわゆる
「MAXをとる」という処理に相当するものである。
The reason why the maximum value is determined is as follows.
Since it is necessary to take a logical sum (OR logic) in order to integrate the inference results of the three antecedent parts described above, this corresponds to a so-called "MAX" processing.

【0284】データF1が最大であるときはステップS
270で前述した3つの前件部の推論結果を統合した前
件部データD7としてF1を採用し、データF2が最大
であるときはステップS271で統合前件部データD7
としてF2を採用し、さらにデータF3が最大であると
きはステップS272で統合前件部データD7としてF
3を採用する。
If the data F1 is the maximum, step S
In step 270, F1 is adopted as the antecedent part data D7 obtained by integrating the inference results of the three antecedent parts described above. If the data F2 is the maximum, the integrated antecedent part data D7 is obtained in step S271.
When the data F3 is the maximum, F2 is set as the integrated antecedent part data D7 in step S272.
3 is adopted.

【0285】このように、統合前件部データD7を得る
ことで、ルールGに対して、その時点での3つの入力値
(フレットNO.、弾弦位置Cおよび弦NO.)が判断
され、ルールGの前件部に対する適合度が求められる。
As described above, by obtaining the integrated antecedent data D7, three input values (fret NO., Bullet position C, and string NO.) At that time are determined for the rule G, The degree of conformity of the rule G to the antecedent is obtained.

【0286】ステップS270〜ステップS272の何
れかのステップを経ると、次いでステップS273でア
ドレスポインタiを[0]にリセットし、ステップS2
74でアドレスポインタiが終了アドレスに等しいか否
か判別する。終了アドレスでなければ、続くステップS
275でiをアドレスとしてメンバーシップ関数テーブ
ルROM74の「リリースレートをゆるやかにする」と
いうメンバーシップ関数が格納されているRLSテーブ
ルからデータ(後件部データ)Eを読み出す。
After going through any one of steps S270 to S272, the address pointer i is reset to [0] in step S273, and
At 74, it is determined whether or not the address pointer i is equal to the end address. If it is not the end address, the following step S
In step 275, data (consequent part data) E is read from the RLS table in the membership function table ROM 74 in which the membership function "Release the release rate" is stored, using i as the address.

【0287】この場合のデータは、図4(e)に示すメ
ンバーシップ関数RLSの適合度に相当する。データE
は、例えばマイクロコンピュータ40内の同名のレジス
タに格納される。
The data in this case corresponds to the fitness of the membership function RLS shown in FIG. Data E
Is stored in a register of the same name in the microcomputer 40, for example.

【0288】次いで、ステップS276で前述した統合
前件部データD7とデータEを比較し、D7≧Eのとき
はステップS277に進んでiをアドレスとしてワーキ
ングRAM74に入っているP7メモリにデータEを書
き込む。一方、D7<EのときはステップS278に進
んで同じくiをアドレスとしてワーキングRAM74に
入っているP7メモリにデータD7を書き込む。このよ
うに、小さい方の値が採用されてメンバーシップ関数R
LSをカットする処理が行われる。
Then, in step S276, the integrated antecedent part data D7 and data E are compared. If D7 ≧ E, the flow advances to step S277 to store the data E in the P7 memory in the working RAM 74 using i as an address. Write. On the other hand, if D7 <E, the process proceeds to step S278, and data D7 is written to the P7 memory in the working RAM 74 using i as an address. Thus, the smaller value is adopted and the membership function R
A process for cutting the LS is performed.

【0289】この処理は、後件部たるメンバーシップ関
数RLSを前件部の適合度に応じてカットする「いわゆ
る頭切り法」を行うものである。
In this processing, a so-called head truncation method for cutting the membership function RLS, which is the consequent part, according to the fitness of the antecedent part is performed.

【0290】次いで、ステップS279でアドレスポイ
ンタiを[1]だけインクリメントし、その後、ステッ
プS274に戻る。そして、ステップS274でアドレ
スポインタiが終了アドレスに等しくなるまで、同様の
処理を繰り返し、アドレスポインタiが終了アドレスに
等しくなると、メインプログラムにリターンする。
Next, in step S279, the address pointer i is incremented by [1], and thereafter, the flow returns to step S274. Then, the same processing is repeated until the address pointer i becomes equal to the end address in step S274. When the address pointer i becomes equal to the end address, the process returns to the main program.

【0291】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、メンバーシップ関数RL
Sをすべてサーチすることになる。これにより、メンバ
ーシップ関数RLSの全てに対して前件部の適合度に応
じた「頭切り法」が実行される。
By incrementing the address pointer i to the end address, the membership function RL
All S will be searched. As a result, the “head truncation method” is executed for all of the membership functions RLS according to the degree of matching of the antecedent part.

【0292】このようにして、フレットNO.、弾弦位
置Cおよび弦NO.に基づいてファジールールFの演算
が行われ、「フレットNO.が大きく(ハイポジショ
ン)、弾弦位置がフレット側であり、かつ弦NO.が小
さい場合、あるいはフレットNO.が小さく(ロウポジ
ション)、弾弦位置がフレット側であり、かつ弦NO.
が大きい場合、あるいはフレットNO.が小さく(ロウ
ポジション)、弾弦位置がサドル側であり、かつ弦N
O.が大きい場合には、リリースレートをゆるやかにす
る。」という処理に対してどの程度適合しているかが算
出される。すなわち、リリースレートをゆるやかにする
というファジー操作量が、頭切りしたメンバーシップ関
数RLSの大きさとして求められる。
Thus, the fret NO. , String position C and string NO. The fuzzy rule F is calculated on the basis of the following equation: "If the fret number is large (high position) and the string position is on the fret side and the string number is small, or if the fret number is small (low position) , The string position is on the fret side, and the string NO.
Is large, or the fret NO. Is small (low position), the string position is on the saddle side, and the string N
O. If is large, the release rate should be slow. Is calculated. That is, a fuzzy operation amount for making the release rate gentle is obtained as the size of the truncated membership function RLS.

【0293】ファジールールH演算処理 図24はファジールールH演算処理のサブルーチンを示
すフローチャートである。まず、ステップS281でフ
レットNO.をアドレスとして、メンバーシップ関数テ
ーブルROM74における「フレットNO.が小さい
(すなわち、ロウポジション)」というメンバーシップ
関数が格納されているFSテーブルからデータ(前件部
データ)Daを読み出す。この場合のデータは、図4
(a)に示すメンバーシップ関数FSの適合度(グレー
ド)に相当し、0〜1の範囲の値である。
Fuzzy Rule H Calculation Process FIG. 24 is a flowchart showing a subroutine of the fuzzy rule H calculation process. First, in step S281, the fret NO. (Data of the antecedent part) Da is read from the FS table in the membership function table ROM 74 in which the membership function “the fret number is small (ie, low position)” is stored. The data in this case is shown in FIG.
It corresponds to the degree of conformity (grade) of the membership function FS shown in (a), and is a value in the range of 0 to 1.

【0294】すなわち、データDaはフレットNO.と
いう入力値に対してルールHが示した適合度である。デ
ータDaは、マイクロコンピュータ40内の同名のレジ
スタDaに格納され、これは後述の各データDb、Dc
についても同様である。
That is, the data Da is the fret NO. Is the degree of conformity indicated by the rule H with respect to the input value of. The data Da is stored in a register Da of the same name in the microcomputer 40, which stores data Db and Dc to be described later.
The same applies to.

【0295】同様に、ステップS282で弾弦位置Cを
アドレスとして、メンバーシップ関数テーブルROM7
4における「弾弦位置がフレット側である」というメン
バーシップ関数が格納されているPLテーブルからデー
タ(前件部データ)Dbを読み出す。この場合のデータ
は、図4(b)に示すメンバーシップ関数PLの適合度
(グレード)に相当し、0〜1の範囲の値である。すな
わち、データDbは弾弦位置Cという入力値に対してル
ールHが示した適合度である。
Similarly, in step S 282, the membership function table ROM 7
4. Data (antecedent part data) Db is read from the PL table in which the membership function "the bullet position is on the fret side" is stored. The data in this case corresponds to the fitness (grade) of the membership function PL shown in FIG. 4B, and is a value in the range of 0 to 1. That is, the data Db is the degree of conformity indicated by the rule H with respect to the input value of the string position C.

【0296】また、ステップS283で弦NO.をアド
レスとして、メンバーシップ関数テーブルROM74に
おける「弦NO.が小さい(第1弦、第2弦あたり)」
というメンバーシップ関数が格納されているSSテーブ
ルからデータ(前件部データ)Dcを読み出す。この場
合のデータは、図4(c)に示すメンバーシップ関数S
Sの適合度(グレード)に相当し、0〜1の範囲の値で
ある。すなわち、データDcは弦NO.という入力値に
対してルールHが示した適合度である。
In step S283, the string NO. "String NO. Is small (about the first string and the second string)" in the membership function table ROM 74 with the address as the address.
Is read from the SS table in which the membership function is stored. The data in this case is the membership function S shown in FIG.
It corresponds to the degree of conformity (grade) of S, and is a value in the range of 0 to 1. That is, the data Dc is the string NO. Is the degree of conformity indicated by the rule H with respect to the input value of.

【0297】次いで、ステップS284で各データD
a、Db、Dcの最小値を判別し、最小のデータD8を
得る。この処理は、各データの論理積をとるもので、い
わゆる「MINをとる」ことに相当するものである。こ
れは、「MINをとる」ことにより、3つの入力値に対
して少なくとも何れも満足する状態を得るためである。
Next, at step S284, each data D
The minimum values of a, Db, and Dc are determined, and the minimum data D8 is obtained. This process calculates the logical product of the respective data, and corresponds to the so-called “MIN”. This is to obtain a state in which at least all three input values are satisfied by “taking MIN”.

【0298】データDaが最小であるときはステップS
285に進んでD8=Daを採用し、データDbが最小
であるときはステップS286に進んでD8=Dbを採
用し、さらに、データDcが最小であるときはステップ
S287に進んでD8=Dcを採用する。これにより、
データDa、Db、Dcのうち、最小のものが今回のル
ーチンにおいてルールHが示す判断データD8として採
用される。
If the data Da is the minimum, step S
Proceeding to 285, adopt D8 = Da, if the data Db is the minimum, proceed to step S286 and employ D8 = Db, and if the data Dc is the minimum, proceed to step S287 to advance D8 = Dc. adopt. This allows
Among the data Da, Db, and Dc, the smallest one is adopted as the determination data D8 indicated by the rule H in this routine.

【0299】このように、ルールHに対して、その時点
での3つの入力値(フレットNO.、弾弦位置Cおよび
弦NO.)が判断され、ルールHの前件部に対する適合
度が求められる。
As described above, three input values (fret NO., Bullet string position C, and string NO.) At that time are determined for rule H, and the degree of conformity of rule H to the antecedent is obtained. Can be

【0300】次いで、ステップS288でアドレスポイ
ンタiを[0]にリセットし、ステップS289でアド
レスポインタiが終了アドレスに等しいか否か判別す
る。終了アドレスでなければ、続くステップS290で
iをアドレスとしてメンバーシップ関数テーブルROM
74の「リリースレートを極めてゆるやかにする」とい
うメンバーシップ関数が格納されているRSテーブルか
らデータ(後件部データ)Eを読み出す。この場合のデ
ータは、図4(e)に示すメンバーシップ関数RSの適
合度に相当する。データEは同名のレジスタEに格納さ
れる。
Then, in step S288, the address pointer i is reset to [0], and in step S289, it is determined whether or not the address pointer i is equal to the end address. If it is not the end address, in the following step S290, the membership function table ROM is set with i as the address.
The data (consequent part data) E is read from the RS table 74 in which a membership function of “make release rate extremely slow” is stored. The data in this case corresponds to the fitness of the membership function RS shown in FIG. Data E is stored in register E of the same name.

【0301】次いで、ステップS291でデータD8と
データEを比較し、D8≧EのときはステップS292
に進んでiをアドレスとしてワーキングRAM72に入
っているP8メモリにデータEを書き込む。一方、D8
<EのときはステップS293に進んで同じくiをアド
レスとしてワーキングRAM72に入っているP8メモ
リにデータD8を書き込む。このように、小さい方の値
が採用されてメンバーシップ関数RSをカットする処理
が行われる。
Next, data D8 and data E are compared in step S291, and if D8 ≧ E, step S292
And writes the data E into the P8 memory in the working RAM 72 using i as an address. On the other hand, D8
If <E, the process proceeds to step S293 to write data D8 into the P8 memory in the working RAM 72 using i as the address. As described above, the process of cutting the membership function RS by adopting the smaller value is performed.

【0302】この処理は、後件部たるメンバーシップ関
数RSを前件部の適合度に応じてカットする「いわゆる
頭切り法」を行うものである。
In this processing, a so-called head truncation method for cutting the membership function RS, which is the consequent part, according to the fitness of the antecedent part is performed.

【0303】次いで、ステップS294でアドレスポイ
ンタiを[1]だけインクリメントし、その後、ステッ
プS289に戻る。そして、ステップS289でアドレ
スポインタiが終了アドレスに等しくなるまで、同様の
処理を繰り返し、アドレスポインタiが終了アドレスに
等しくなると、メインプログラムにリターンする。
Then, in step S294, the address pointer i is incremented by [1], and thereafter, the flow returns to step S289. Then, the same processing is repeated until the address pointer i becomes equal to the end address in step S289. When the address pointer i becomes equal to the end address, the process returns to the main program.

【0304】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、メンバーシップ関数RS
をすべてサーチすることになる。これにより、メンバー
シップ関数RSの全てに対して前件部の適合度に応じた
「頭切り法」が実行される。
By incrementing the address pointer i to the end address, the membership function RS
Will be searched. Thus, the “head truncation method” is executed for all of the membership functions RS in accordance with the fitness of the antecedent part.

【0305】このようにして、フレットNO.、弾弦位
置Cおよび弦NO.に基づいてファジールールHの演算
が行われ、「フレットNO.が小さく(ロウポジショ
ン)、弾弦位置がフレット側であり、かつ弦NO.が小
さい場合には、リリースレートを極めてゆるやかにす
る。」という処理に対してどの程度適合しているかが算
出される。すなわち、リリースレートを極めてゆるやか
にするというファジー操作量が、頭切りしたメンバーシ
ップ関数RSの大きさとして求められる。
Thus, the fret NO. , String position C and string NO. The fuzzy rule H is calculated based on the following equation: "If the fret number is small (low position), the bullet string position is on the fret side, and the string number is small, the release rate is made extremely slow. Is calculated. That is, the fuzzy operation amount that makes the release rate extremely slow is obtained as the magnitude of the truncated membership function RS.

【0306】最大値R演算処理 図25は最大値R演算処理のサブルーチンを示すフロー
チャートである。まず、ステップS301でアドレスポ
インタiを[0]にリセットし、ステップS302でア
ドレスポインタiをアドレスとしてワーキングRAM7
2に入っているP5メモリからデータD5を読み出す。
Maximum Value R Calculation Processing FIG. 25 is a flowchart showing a subroutine of maximum value R calculation processing. First, in step S301, the address pointer i is reset to [0], and in step S302, the working RAM 7 is set using the address pointer i as an address.
The data D5 is read from the P5 memory contained in P2.

【0307】データD5は、ファジールールEについて
の演算結果であり、具体的には、「フレットNO.が大
きく(ハイポジション)、弾弦位置がサドル側であり、
かつ弦NO.が大きい場合には、リリースレートを早く
する。」という処理に対してどの程度適合しているかを
算出して頭切りしたメンバーシップ関数RLに対応す
る。
The data D5 is a calculation result of the fuzzy rule E. Specifically, the data D5 indicates that the fret number is large (high position), the string position is on the saddle side,
And the string NO. If is large, increase the release rate. "Corresponds to the membership function RL which is calculated to what extent it is suitable for the processing and truncated.

【0308】また、ステップS303でアドレスポイン
タiをアドレスとしてワーキングRAM72に入ってい
るP6メモリからデータD6を読み出す。
In step S303, the data D6 is read from the P6 memory in the working RAM 72 using the address pointer i as an address.

【0309】データD6は、ファジールールFについて
の演算結果であり、具体的には、「フレットNO.が大
きく(ハイポジション)、弾弦位置がサドル側であり、
かつ弦NO.が小さい場合、あるいはフレットNO.が
大きく(ハイポジション)、弾弦位置がフレット側であ
り、かつ弦NO.が大きい場合、あるいはフレットN
O.が小さく(ロウポジション)、弾弦位置がサドル側
であり、かつ弦NO.が小さい場合には、リリースレー
トをやや早くする。」という処理に対してどの程度適合
しているかを算出して頭切りしたメンバーシップ関数R
LLに対応する。
The data D6 is a calculation result for the fuzzy rule F. Specifically, the data D6 indicates that the fret number is large (high position), the string position is on the saddle side,
And the string NO. Is small, or the fret NO. Is large (high position), the string position is on the fret side, and the string NO. Is large, or fret N
O. Is small (low position), the string position is on the saddle side, and the string NO. If is small, increase the release rate slightly. The membership function R is calculated by calculating the degree of conformity to the processing
LL.

【0310】さらに、ステップS304で同様にアドレ
スポインタiをアドレスとしてワーキングRAM72に
入っているP7メモリからデータD7を読み出す。
In step S304, data D7 is read from the P7 memory in the working RAM 72 using the address pointer i as an address.

【0311】データD7は、ファジールールGについて
の演算結果であり、具体的には、「フレットNO.が大
きく(ハイポジション)、弾弦位置がフレット側であ
り、かつ弦NO.が小さい場合、あるいはフレットN
O.が小さく(ロウポジション)、弾弦位置がフレット
側であり、かつ弦NO.が大きい場合、あるいはフレッ
トNO.が小さく(ロウポジション)、弾弦位置がサド
ル側であり、かつ弦NO.が大きい場合には、リリース
レートをゆるやかにする。」という処理に対してどの程
度適合しているか算出して頭切りしたメンバーシップ関
数RLSに対応する。
[0311] Data D7 is the result of calculation for the fuzzy rule G. Specifically, when the fret number is large (high position), the string position is on the fret side, and the string number is small, Or fret N
O. Is small (low position), the string position is on the fret side, and the string NO. Is large, or the fret NO. Is small (low position), the string position is on the saddle side, and the string NO. If is large, the release rate should be slow. "Corresponds to the membership function RLS which is calculated to what extent it is suitable for processing and truncated.

【0312】次いで、ステップS305で同様にアドレ
スポインタiをアドレスとしてワーキングRAM72に
入っているP8メモリからデータD8を読み出す。
Next, in a step S305, similarly, the data D8 is read from the P8 memory in the working RAM 72 using the address pointer i as an address.

【0313】データD8は、ファジールールHについて
の演算結果であり、具体的には、「フレットNO.が小
さく(ロウポジション)、弾弦位置がフレット側であ
り、かつ弦NO.が小さい場合には、リリースレートを
極めてゆるやかにする。」という処理に対してどの程度
適合しているか算出して頭切りしたメンバーシップ関数
RSに対応する。
The data D8 is the result of the calculation for the fuzzy rule H. More specifically, the data D8 is obtained when the fret number is small (low position), the string position is on the fret side, and the string number is small. , Makes the release rate extremely slow. "

【0314】次いで、ステップS306で上記各データ
D5〜D8のうちの最大値を判別する。そして、データ
D5〜D8の最大値判別結果に応じてそれぞれステップ
S307、ステップS308、ステップS309、ステ
ップS310に進む。
Next, in step S306, the maximum value among the data D5 to D8 is determined. Then, the process proceeds to step S307, step S308, step S309, and step S310, respectively, according to the maximum value determination result of the data D5 to D8.

【0315】このような最大値判別を行っているのは、
各ファジールールE〜H毎の推論結果を統合するために
論理和(OR論理)をとる必要がかあるからで、いわゆ
る「MAXをとる」という処理に相当するものである。
The reason why the maximum value is determined is as follows.
Since it is necessary to take a logical sum (OR logic) in order to integrate the inference results for each of the fuzzy rules E to H, it corresponds to a so-called "MAX" process.

【0316】具体的には、例えばある瞬間の吹奏演奏状
態がファジールールEからファジールールHまでの、ど
のルールに影響されるのか、少しでも影響されるなら、
それはピッチ変化の判断に反映しておきたいという要求
に答えるもので、これが「OR論理」の関係の基本の考
え方である。そして、この考え方を集合論では「和をと
る」としており、本実施例では、どれかひとつでも影響
がある限り、考察の対象にするとして上記処理が実行さ
れる。
Specifically, for example, if any of the rules from the fuzzy rule E to the fuzzy rule H affects the blowing performance at a certain moment,
It answers the need to reflect it in the determination of pitch change, and this is the basic concept of the "OR logic" relationship. In the set theory, this concept is “sum”, and in the present embodiment, as long as any one of them has an effect, the above processing is executed as an object of consideration.

【0317】さて、ステップS307ではアドレスポイ
ンタiをアドレスとしてワーキングRAM72に入って
いるP10メモリにデータD5を書き込む。これによ
り、今回のアドレスポインタi(最初のルーチンではi
=0)の値によって指定されるファジールールEの演算
結果である頭切りしたメンバーシップ関数RLの一部が
P10メモリに書き込まれる。
In step S307, data D5 is written to the P10 memory in the working RAM 72 using the address pointer i as an address. As a result, the current address pointer i (in the first routine, i
= 0), a part of the truncated membership function RL, which is the calculation result of the fuzzy rule E, is written to the P10 memory.

【0318】なお、後述のように、アドレスポインタi
を終了アドレスまでインクリメントすることにより、頭
切りされたメンバーシップ関数RLがすべてサーチされ
てP10メモリに書き込まれることになる。
Note that, as described later, the address pointer i
Is incremented to the end address, all the truncated membership functions RL are searched and written to the P10 memory.

【0319】ステップS308ではアドレスポインタi
をアドレスとしてワーキングRAM72に入っているP
10メモリにデータD6を書き込む。これにより、今回
のアドレスポインタiの値によって指定されるファジー
ルールFの演算結果である頭切りしたメンバーシップ関
数RLLの一部がP10メモリに書き込まれる。
In step S308, the address pointer i
P in working RAM 72 with
10 Write data D6 to memory. As a result, a part of the truncated membership function RLL, which is the calculation result of the fuzzy rule F specified by the value of the current address pointer i, is written to the P10 memory.

【0320】同様に、ステップS309ではアドレスポ
インタiをアドレスとしてワーキングRAM72に入っ
ているP10メモリにデータD7を書き込む。これによ
り、今回のアドレスポインタiの値によって指定される
ファジールールGの演算結果である頭切りしたメンバー
シップ関数RLSの一部がP10メモリに書き込まれ
る。
Similarly, in step S309, data D7 is written to the P10 memory in the working RAM 72 using the address pointer i as an address. As a result, a part of the truncated membership function RLS, which is the calculation result of the fuzzy rule G specified by the value of the current address pointer i, is written to the P10 memory.

【0321】また、同様にステップS310ではアドレ
スポインタiをアドレスとしてワーキングRAM72に
入っているP10メモリにデータD8を書き込む。これ
により、今回のアドレスポインタiの値によって指定さ
れるファジールールHの演算結果である頭切りしたメン
バーシップ関数RSの一部がP10メモリに書き込まれ
る。
Similarly, in step S310, the data D8 is written to the P10 memory in the working RAM 72 using the address pointer i as an address. As a result, a part of the truncated membership function RS, which is the calculation result of the fuzzy rule H specified by the value of the current address pointer i, is written to the P10 memory.

【0322】次いで、ステップS311でアドレスポイ
ンタiが終了アドレスに等しいか否か判別する。終了ア
ドレスでなければ、続くステップS312でアドレスポ
インタiを[1]だけインクリメントし、その後、ステ
ップS302に戻る。そして、ステップS311でアド
レスポインタiが終了アドレスに等しくなるまで、上記
処理を繰り返し、アドレスポインタiが終了アドレスに
等しくなると、メインプログラムにリターンする。
Next, in step S311, it is determined whether or not the address pointer i is equal to the end address. If it is not the end address, the address pointer i is incremented by [1] in the following step S312, and thereafter, the process returns to step S302. Then, the above processing is repeated until the address pointer i becomes equal to the end address in step S311, and when the address pointer i becomes equal to the end address, the process returns to the main program.

【0323】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、頭切りされた各メンバー
シップ関数RL、RLL、RLS、RSがすべてサーチ
されてP10メモリにデータD5〜D8として書き込ま
れる。
By incrementing the address pointer i to the end address, the truncated membership functions RL, RLL, RLS, and RS are all searched and written to the P10 memory as data D5 to D8.

【0324】このようにして、各ファジールールE〜H
毎の推論結果を統合するために論理和をとる(「MAX
をとる」)処理が実行され、頭切りされた各メンバーシ
ップ関数RL、RLL、RLS、RSがOR合成され
る。すなわち、MAX合成処理によって各ファジールー
ルE〜H毎の推論結果が重ね合わせられて合成出力が生
成される。
Thus, each of the fuzzy rules E to H
The logical sum is taken to integrate the inference results for each (“MAX
Is performed), and the membership functions RL, RLL, RLS, and RS that have been truncated are OR-combined. That is, the MAX synthesis process superimposes the inference results for each of the fuzzy rules E to H to generate a synthesized output.

【0325】重心計算R処理 図26は重心計算R処理のサブルーチンを示すフローチ
ャートである。まず、ステップS321でアドレスポイ
ンタiを[0]にリセットするとともに、面積レジスタ
areaおよび重心レジスタhafを同様に[0]にリ
セットする。面積レジスタareaは重心計算に必要な
面積areaのデータを格納するもので、重心レジスタ
hafは重心計算に必要な重心値hafを格納するもの
である。
[0325] centroid calculation R Process FIG 26 is a flowchart showing a subroutine of centroid calculation R process. First, in step S321, the address pointer i is reset to [0], and the area register area and the center of gravity register haf are similarly reset to [0]. The area register area stores data of the area required for calculating the center of gravity, and the center of gravity register haf stores a center of gravity value haf required for calculating the center of gravity.

【0326】次いで、ステップS322でアドレスポイ
ンタiをアドレスとしてワーキングRAM72に入って
いるP10メモリからデータD10を読み出す。データ
D10は、前述の最大値演算処理によって頭切りされた
後件部の各メンバーシップ関数RL、RLL、RLS、
RSをOR合成したものの一部(iをアドレスとして指
定された部分)で、言い換えると、MAX合成処理によ
って各ファジールールE〜H毎の推論結果が重ね合わせ
られた合成出力データ(後に、OR合成関数として表
す)の一部である。
Next, in step S322, the data D10 is read from the P10 memory in the working RAM 72 using the address pointer i as an address. The data D10 includes the membership functions RL, RLL, RLS, and RLS of the consequent part truncated by the above-described maximum value calculation processing.
Composed output data obtained by superimposing the inference results for each of the fuzzy rules E to H by the MAX composing process (part of the OR composing output data) (Expressed as a function).

【0327】今回は、i(最初のルーチンではi=0)
をアドレスとしてP10メモリから合成出力データの一
部を読み出したことになる。なお、後述のように、アド
レスポインタiを終了アドレスまでインクリメントする
ことにより、合成出力データがすべてサーチされて読み
出されることになる。
In this case, i (i = 0 in the first routine)
Means that a part of the combined output data is read from the P10 memory using the address as an address. As will be described later, by incrementing the address pointer i to the end address, all the combined output data is searched and read.

【0328】すなわち、続くステップS323では面積
レジスタareaの値を、今回読み出した合成出力デー
タD10だけ加算して面積areaの積算値を算出す
る。
That is, in the following step S323, the integrated value of the area area is calculated by adding the value of the area register area by the composite output data D10 read this time.

【0329】次いで、ステップS324でアドレスポイ
ンタiが終了アドレスに等しいか否か判別する。終了ア
ドレスでなければ、続くステップS325でアドレスポ
インタiを[1]だけインクリメントし、その後、ステ
ップS322に戻る。そして、ステップS324でアド
レスポインタiが終了アドレスに等しくなるまで、上記
処理を繰り返し、アドレスポインタiが終了アドレスに
等しくなると、ステップS326に抜ける。
Next, in a step S324, it is determined whether or not the address pointer i is equal to the end address. If it is not the end address, the address pointer i is incremented by [1] in the following step S325, and thereafter, the process returns to step S322. Then, the above processing is repeated until the address pointer i becomes equal to the end address in step S324. When the address pointer i becomes equal to the end address, the process goes to step S326.

【0330】アドレスポインタiを終了アドレスまでイ
ンクリメントすることにより、頭切りされた後件部の各
メンバーシップ関数RL、RLL、RLS、RSのOR
合成出力データがすべてサーチされて読み出されること
になる。言い換えれば、最大値演算処理で得られたデー
タの集合を2次元図形に対応させ、このデータ集合部分
の面積を積分演算によってすべてサーチして読み出して
計算したことになる。その後、データ集合部分の面積に
対応する積分値が1/2になる値を重心値として算出す
る。
By incrementing the address pointer i to the end address, the OR of each of the membership functions RL, RLL, RLS and RS of the truncated consequent part is obtained.
All the combined output data is searched and read. In other words, the data set obtained by the maximum value calculation processing is made to correspond to a two-dimensional figure, and the area of this data set portion is searched, read, and calculated by integral calculation. Thereafter, a value at which the integral value corresponding to the area of the data set portion becomes 1 / is calculated as the center of gravity value.

【0331】このような重心値の算出を行うため、まず
ステップS326に進み、ステップS323で求めた積
算面積areaの1/2の値を重心値hafとして重心
レジスタhafに記憶する。次いで、ステップS327
で各メンバーシップ関数RL、RLL、RLS、RSの
OR合成関数の横軸に対応するjおよび面積積算エリア
balを共に[0]にリセットする。
In order to calculate such a barycenter value, the process first proceeds to step S326, and the value of 1 / of the integrated area area obtained in step S323 is stored in barycenter register haf as barycenter value haf. Next, step S327
Resets both j and the area integration area bal corresponding to the horizontal axis of the OR function of the membership functions RL, RLL, RLS, and RS to [0].

【0332】OR合成関数は、最大値演算処理で得られ
たデータ集合を2次元図形に対応させた場合の関数であ
り、その横軸がjに相当し、その面積の積算エリアがb
alに相当する。なお、jおよびbalの値は、例えば
同名のレジスタに格納される。
The OR synthesis function is a function when the data set obtained by the maximum value calculation processing is made to correspond to a two-dimensional figure. The horizontal axis corresponds to j, and the integrated area of the area is b.
It corresponds to al. The values of j and bal are stored in, for example, a register having the same name.

【0333】次いで、ステップS328で横軸jをアド
レスとしてワーキングRAM72に入っているP10メ
モリからOR合成関数に対応するデータD10を読み出
す。続くステップS329では面積積算エリアbalの
値を、今回読み出したデータD10だけ加算して面積積
算エリアbalを積算する。
Then, in step S328, data D10 corresponding to the OR combination function is read from the P10 memory in the working RAM 72 using the horizontal axis j as an address. In a succeeding step S329, the value of the area integration area bal is added by the data D10 read this time, and the area integration area bal is integrated.

【0334】次いで、ステップS330で積算した面積
積算エリアbalを重心値hafと比較し、面積積算エ
リアbalが重心値hafより小さいときはステップS
332に進んで横軸jをインクリメントした後、ステッ
プS328に戻る。そして、ステップS330で面積積
算エリアbalが重心値haf以上になるまで上記処理
を繰り返し、bal≧hafとなると、そのときの横軸
jの値が重心点であると判断してステップS331に抜
ける。
Next, the area integrated area bal integrated in step S330 is compared with the center of gravity value haf, and if the area integrated area bal is smaller than the center of gravity value haf, step S330 is performed.
Proceeding to 332, the horizontal axis j is incremented and then returning to step S328. Then, in step S330, the above processing is repeated until the area integration area bal becomes equal to or greater than the barycenter value haf. When bal ≧ haf, the value of the horizontal axis j at that time is determined to be the barycenter point, and the process exits to step S331.

【0335】ステップS331では、OR合成関数の横
軸jのビットを、今回のルーチンにおけるリリースレー
ト(すなわち、前述したリリースレートRレベル)とし
て求める。
In step S331, the bit of the horizontal axis j of the OR combination function is obtained as the release rate in this routine (that is, the release rate R level described above).

【0336】このようにして、2次元図形に対応してい
るOR合成関数の重心をとり、その値を論理和の代表と
する脱ファジー化処理(ディファジファイア処理)が行
われ、推論処理での結論の全体が1つの確定値、すなわ
ち、この場合はリリースレートとして算出される。
In this way, the center of gravity of the OR synthesis function corresponding to the two-dimensional figure is obtained, and the defuzzification process (difuzzifire process) whose value represents OR is performed. Is calculated as one fixed value, that is, a release rate in this case.

【0337】このように、本実施例では複数の弦のうち
の少なくとも1つが弾弦されると、その弾弦位置(サド
ル側か、フレット側か)、フィンガリング操作位置(ハ
イポジションか、ロウポジションか)および弦ナンバー
(第1弦〜第6弦のいずれか)を入力パラメータとする
ファジー推論により、発生される楽音の特性(ここで
は、エンベロープ形状)が制御される。したがって、弾
弦時における弾弦位置、フィンガリング操作位置、弦ナ
ンバーについての微妙な組み合せに従って、発生楽音の
特性が微妙に変化して極めて自然弦楽器に近い楽音特性
を得ることができる。
As described above, in this embodiment, when at least one of the plurality of strings is struck, the string position (saddle side or fret side), fingering operation position (high position, low position) is determined. The characteristics (in this case, the envelope shape) of the musical tone to be generated are controlled by fuzzy inference using the position or the string number (one of the first to sixth strings) as input parameters. Therefore, according to a delicate combination of a string position, a fingering operation position, and a string number at the time of stringing, the characteristics of the generated musical sound change delicately, and a musical sound characteristic very close to a natural stringed instrument can be obtained.

【0338】また、ファジー推論が用いられているの
で、エンベロープ制御の演算処理に対して膨大な処理が
必要でなく、演算負担を軽減することができる。その結
果、既在のCPUにより容易に演算を行うことができ、
高機能の電子楽器を低コストで実現することができる。
Further, since the fuzzy inference is used, a huge amount of processing is not required for the arithmetic processing of the envelope control, and the calculation load can be reduced. As a result, the calculation can be easily performed by the existing CPU,
A high-performance electronic musical instrument can be realized at low cost.

【0339】なお、上記実施例では楽音の特性としてエ
ンベロープ形状を変化させているが、ファジー推論によ
って変化させる楽音特性としては、エンベロープ形状に
限らず、他の要素、例えば音高、音色、音量あるいは効
果(エフェクト)を変化させるようにしてもよい。又
は、これらの要素を組み合せて変化させるようにしても
よい。そのようにすると、より一層きめ細かく自然弦楽
器に近い自然な楽音特性を電子的に得ることができる。
In the above embodiment, the envelope shape is changed as the characteristic of the musical tone. However, the musical tone characteristic changed by the fuzzy inference is not limited to the envelope shape, and other elements such as pitch, tone, volume, or the like. The effect (effect) may be changed. Alternatively, these elements may be changed in combination. By doing so, it is possible to electronically obtain a more natural tone characteristic close to a natural stringed instrument.

【0340】上記実施例では、ファジー推論の入力パラ
メータとして弾弦位置、フィンガリング操作位置および
弦ナンバーを用いているが、これに限らず、例えば弾弦
位置およびフィンガリング操作位置の2つを入力パラメ
ータとして用いて、これらの組み合せに従ってファジー
推論を行うようにしてもよい。あるいは3つのパラメー
タを適当に組み合せてファジー推論を行ってもよい。要
は、対象となる楽器の種類等に応じて推論入力を決定す
るとよい。
In the above embodiment, the string position, the fingering operation position, and the string number are used as input parameters for fuzzy inference. By using them as parameters, fuzzy inference may be performed according to a combination of these. Alternatively, fuzzy inference may be performed by appropriately combining the three parameters. In short, the inference input may be determined according to the type of the musical instrument to be used.

【0341】また、上記実施例ではファジー推論をマイ
クロコンピュータ40およびメンバーシップ関数テーブ
ルROM74を用いてソフトによって実現しているが、
例えばファジーチップを用いてハード的に実現しても
い。
In the above embodiment, the fuzzy inference is realized by software using the microcomputer 40 and the membership function table ROM 74.
For example, it may be realized by hardware using a fuzzy chip.

【0342】また、ファジー推論で用いるメンバーシッ
プ関数の値は、対象となる楽器の種類などに応じて適切
に設定するとよい。このようにすれば、エンベロープの
みならず他の楽音特性に対する制御のいろいろな味付け
が可能になる。さらに、メンバーシップ関数の形状は台
形、三角形に限らず、他の形状(例えば、釣鐘形)でも
よい。
The value of the membership function used in the fuzzy inference may be appropriately set according to the type of the target musical instrument. In this way, various flavors of control for not only the envelope but also other tone characteristics can be achieved. Further, the shape of the membership function is not limited to a trapezoid or a triangle, but may be another shape (for example, a bell shape).

【0343】さらに、上記実施例では、本発明をギター
という自然弦楽器の楽音を発生する電子楽器に適用した
例であるが、このような電気ギターへの適用に限らず、
弦を弾弦(ピッキング)するタイプの楽音を発生する電
子楽器であれば、幅広く適用することができる。
Further, in the above embodiment, the present invention is applied to an electronic musical instrument which generates a musical tone of a natural string instrument called a guitar. However, the present invention is not limited to such an application to an electric guitar.
The present invention can be widely applied to an electronic musical instrument that generates a musical tone of a type in which a string is picked up.

【0344】[0344]

【発明の効果】請求項1又は6記載の発明によれば、弾
弦位置(サドル側か、フレット側か)およびフィンガリ
ング操作位置(ハイポジションか、ロウポジションか)
を入力パラメータとするファジー推論により、発生する
楽音に付加されるエンベロープのリリースレートを制御
しているので、弾弦時における弾弦位置およびフィンガ
リング操作位置についての微妙な組み合せに従って、発
生楽音の特性を微妙に変化させることができ、極めて自
然弦楽器に近い楽音特性を得ることができる。
According to the first or sixth aspect of the present invention, a string position (a saddle side or a fret side) and a fingering operation position (a high position or a low position).
Since the release rate of the envelope added to the generated musical tone is controlled by the fuzzy inference using the input parameter as the input parameter, the characteristic of the generated musical tone is determined according to a delicate combination of the string position and the fingering operation position at the time of stringing. Can be delicately changed, and a tone characteristic very similar to a natural stringed instrument can be obtained.

【0345】また、ファジー推論を用いているので、楽
音特性制御の演算処理に対して膨大な処理が必要でな
く、演算負担を軽減することができる。その結果、既在
のCPUにより容易に演算を行うことができ、高機能の
電子楽器を低コストで実現することができる。
Further, since the fuzzy inference is used, enormous processing is not required for the arithmetic processing of the musical tone characteristic control, and the arithmetic load can be reduced. As a result, calculations can be easily performed by the existing CPU, and a high-performance electronic musical instrument can be realized at low cost.

【0346】また、請求項3又は6記載の発明によれ
ば、弾弦位置、フィンガリング操作位置に加えて弦ナン
バー(例えば、第1弦〜第6弦のいずれか)も入力パラ
メータの1つに加えてファジー推論を行っているので、
よりきめ細かく楽音特性を微妙に変化させて自然弦楽器
に近い楽音を得ることができる。
According to the third or sixth aspect of the present invention, the string number (for example, any of the first to sixth strings) is one of the input parameters in addition to the string position and the fingering operation position. In addition to fuzzy inference,
By finely changing the tone characteristics more finely, it is possible to obtain a tone similar to a natural stringed instrument.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明による電子楽器の一実施例の全体構成を
示す図である。
FIG. 1 is a diagram showing an overall configuration of an embodiment of an electronic musical instrument according to the present invention.

【図2】同実施例のフレットスイッチの埋設の一例を示
す図である。
FIG. 2 is a diagram showing an example of embedding the fret switch of the embodiment.

【図3】同実施例の電気ギターの電子回路の構成を示す
ブロック図である。
FIG. 3 is a block diagram showing a configuration of an electronic circuit of the electric guitar of the embodiment.

【図4】同実施例の楽音特性制御のメンバーシップ関数
を示す図である。
FIG. 4 is a diagram showing a membership function of tone characteristic control according to the embodiment.

【図5】同実施例の楽音発生制御の処理の一部を示すメ
インプログラムである。
FIG. 5 is a main program showing a part of a process of tone generation control of the embodiment.

【図6】同実施例の楽音発生制御の処理の一部を示すメ
インプログラムである。
FIG. 6 is a main program showing a part of processing of tone generation control of the embodiment.

【図7】同実施例のエンベロープ制御の一例を示す波形
図である。
FIG. 7 is a waveform chart showing an example of envelope control of the embodiment.

【図8】同実施例のアタックレート演算処理のサブルー
チンを示すフローチャートである。
FIG. 8 is a flowchart showing a subroutine of an attack rate calculation process of the embodiment.

【図9】同実施例のリリースレート演算処理のサブルー
チンを示すフローチャートである。
FIG. 9 is a flowchart showing a subroutine of a release rate calculation process of the embodiment.

【図10】同実施例のファジールールA演算処理のサブ
ルーチンを示すフローチャートである。
FIG. 10 is a flowchart showing a subroutine of a fuzzy rule A calculation process of the embodiment.

【図11】同実施例のファジールールB演算処理のサブ
ルーチンの一部を示すフローチャートである。
FIG. 11 is a flowchart showing a part of a subroutine of a fuzzy rule B calculation process of the embodiment.

【図12】同実施例のファジールールB演算処理のサブ
ルーチンの一部を示すフローチャートである。
FIG. 12 is a flowchart illustrating a part of a subroutine of a fuzzy rule B calculation process of the embodiment.

【図13】同実施例のファジールールC演算処理のサブ
ルーチンの一部を示すフローチャートである。
FIG. 13 is a flowchart showing a part of a subroutine of a fuzzy rule C calculation process of the embodiment.

【図14】同実施例のファジールールC演算処理のサブ
ルーチンの一部を示すフローチャートである。
FIG. 14 is a flowchart showing a part of a subroutine of a fuzzy rule C calculation process of the embodiment.

【図15】同実施例のファジールールD演算処理のサブ
ルーチンの一部を示すフローチャートである。
FIG. 15 is a flowchart showing a part of a subroutine of a fuzzy rule D calculation process of the embodiment.

【図16】同実施例のファジールールD演算処理のサブ
ルーチンの一部を示すフローチャートである。
FIG. 16 is a flowchart illustrating a part of a subroutine of a fuzzy rule D calculation process of the embodiment.

【図17】同実施例の最大値A演算処理のサブルーチン
を示すフローチャートである。
FIG. 17 is a flowchart showing a subroutine of a maximum value A calculation process of the embodiment.

【図18】同実施例の重心計算A処理のサブルーチンを
示すフローチャートである。
FIG. 18 is a flowchart showing a subroutine of a center-of-gravity calculation A process of the embodiment.

【図19】同実施例のファジールールE演算処理のサブ
ルーチンを示すフローチャートである。
FIG. 19 is a flowchart showing a subroutine of a fuzzy rule E calculation process of the embodiment.

【図20】同実施例のファジールールF演算処理のサブ
ルーチンの一部を示すフローチャートである。
FIG. 20 is a flowchart showing a part of a subroutine of a fuzzy rule F calculation process of the embodiment.

【図21】同実施例のファジールールF演算処理のサブ
ルーチンの一部を示すフローチャートである。
FIG. 21 is a flowchart showing a part of a subroutine of a fuzzy rule F calculation process of the embodiment.

【図22】同実施例のファジールールG演算処理のサブ
ルーチンの一部を示すフローチャートである。
FIG. 22 is a flowchart illustrating a part of a subroutine of a fuzzy rule G calculation process of the embodiment.

【図23】同実施例のファジールールG演算処理のサブ
ルーチンの一部を示すフローチャートである。
FIG. 23 is a flowchart showing a part of a subroutine of a fuzzy rule G calculation process of the embodiment.

【図24】同実施例のファジールールH演算処理のサブ
ルーチンの一部を示すフローチャートである。
FIG. 24 is a flowchart showing a part of a subroutine of a fuzzy rule H calculation process of the embodiment.

【図25】同実施例の最大値R演算処理のサブルーチン
を示すフローチャートである。
FIG. 25 is a flowchart showing a subroutine of a maximum value R calculation process of the embodiment.

【図26】同実施例の重心計算R処理のサブルーチンを
示すフローチャートである。
FIG. 26 is a flowchart showing a subroutine of a center-of-gravity calculation R process of the embodiment.

【図27】同実施例のエンベロープ制御の一例を示す波
形図である。
FIG. 27 is a waveform chart showing an example of the envelope control of the embodiment.

【図28】同実施例のエンベロープ制御の一例を示す波
形図である。
FIG. 28 is a waveform chart showing an example of envelope control of the embodiment.

【符号の説明】[Explanation of symbols]

1 電気ギター 2 胴部 3 ネック 4 ヘッド 5 フレット 6 フィンガーボード 7 弦 10、20 ピックアッップ 30 フレットスイッチ 31 キーマトリクス回路 32 キースキャン回路 33 フィンガリング操作位置検出手段 40 マイクロコンピュータ(楽音発生指示手段) 43、53 エンベロープ検出回路 60 弦操作検出手段 61 弾弦操作位置検出手段 62 操作弦検出手段 63 アナログ処理回路 71 ROM 72 ワーキングRAM 74 メンバーシップ関数テーブルROM 80 PCM音源(楽音発生手段) 81 エンベロープ発生回路 83 発音回路 100 ファジー推論手段 DESCRIPTION OF SYMBOLS 1 Electric guitar 2 Body 3 Neck 4 Head 5 Fret 6 Finger board 7 Strings 10, 20 Pickup 30 Fret switch 31 Key matrix circuit 32 Key scan circuit 33 Fingering operation position detecting means 40 Microcomputer (musical sound generation instruction means) 43 , 53 Envelope detecting circuit 60 String operation detecting means 61 String operating position detecting means 62 Operating string detecting means 63 Analog processing circuit 71 ROM 72 Working RAM 74 Membership function table ROM 80 PCM sound source (musical sound generating means) 81 Envelope generating circuit 83 Sounding circuit 100 Fuzzy inference means

フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G10H 1/053 G10H 1/00 Continuation of the front page (58) Field surveyed (Int.Cl. 7 , DB name) G10H 1/053 G10H 1/00

Claims (7)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 フィンガーボードと、 フィンガーボードに沿って張設された複数の弦と、 弦が弾弦されたことを検出する弦操作検出手段と、 前記弦操作検出手段により弾弦の検出された弦に対する
弾弦位置を検出する弾弦操作位置検出手段と、 前記フィンガーボードに対するフィンガリングの操作位
置を検出するフィンガリング操作位置検出手段と、 弦の弾弦位置およびフィンガリング操作位置を入力パラ
メータとして所定のファジールールに従ってファジー推
論演算を行うファジー推論手段と、 該ファジー推論手段の演算結果に応じたリリースレート
で減衰するエンベロープを付加した楽音の発生を指示す
る楽音発生指示手段と、 を備えたことを特徴とする電子楽器。
1. A finger board, a plurality of strings stretched along the finger board, string operation detecting means for detecting that a string has been struck, and a string detected by the string operation detecting means. String operating position detecting means for detecting the position of the string with respect to the finger string, fingering operating position detecting means for detecting the operating position of the fingering with respect to the finger board, and input parameters for the string position and the fingering operating position of the string. Fuzzy inference means for performing a fuzzy inference operation according to a predetermined fuzzy rule, and a release rate according to the operation result of the fuzzy inference means
An electronic musical instrument comprising: a musical sound generation instructing means for instructing the generation of a musical sound to which an envelope attenuated by the above is added .
【請求項2】 前記フィンガリング操作位置検出手段
は、フィンガリング操作位置として前記フィンガーボー
ドのフレット操作位置を検出することを特徴とする請求
項1記載の電子楽器。
2. The electronic musical instrument according to claim 1, wherein the fingering operation position detecting means detects a fret operation position of the finger board as the fingering operation position.
【請求項3】 フィンガーボードと、 フィンガーボードに沿って張設された複数の弦と、 弦が弾弦されたことを検出する弦操作検出手段と、 前記弦操作検出手段により弾弦の検出された弦に対する
弾弦位置を検出する弾弦操作位置検出手段と、 前記フィンガーボードに対するフィンガリングの操作位
置を検出するフィンガリング操作位置検出手段と、 弾弦された弦のナンバーを検出する操作弦検出手段と、 弦の弾弦位置、フィンガリング操作位置及び弦ナンバー
を入力パラメータとして所定のファジールールに従って
ファジー推論演算を行うファジー推論手段と、 該ファジー推論手段の演算結果に応じたリリースレート
で減衰するエンベロープを付加した楽音の発生を指示す
る楽音発生指示手段と、 を備えたことを特徴とする 電子楽器。
(3)Fingerboard, With multiple strings stretched along the fingerboard, String operation detecting means for detecting that a string has been struck; For the string whose bullet is detected by the string operation detecting means.
A string operating position detecting means for detecting a string position; Operating position of fingering on the fingerboard
Fingering operation position detecting means for detecting the position, Operating string detecting means for detecting the number of the string that has been struck, String position, fingering operation position and string number
According to a predetermined fuzzy rule as an input parameter
A fuzzy inference means for performing a fuzzy inference operation; Release rate according to the operation result of the fuzzy inference means
Indicates the occurrence of a musical tone with an envelope attenuated by
Music sound generation instruction means, Characterized by having Electronic musical instruments.
【請求項4】 前記フィンガリング操作位置検出手段
は、フィンガリング操作位置として前記フィンガーボー
ドのフレット操作位置を検出することを特徴とする請求
項3記載の電子楽器。
4. The fingering operation position detecting means.
Is the fingerboard as the fingering operation position.
Detecting the fret operation position of the door.
Item 3. The electronic musical instrument according to Item 3.
【請求項5】 前記電子楽器は、さらに前記楽音発生指
示手段によって発音指示された楽音を発生する楽音発生
手段を設けたことを特徴とする請求項1又は3記載の電
子楽器。
5. The electronic musical instrument further comprises the musical tone generating finger.
Tone generation for generating a tone that is instructed by the indicating means
4. An electronic device according to claim 1, further comprising:
Child instrument.
【請求項6】 フィンガーボードに沿って張設された複
数の弦の中のいずれかの弦が弾弦されたことを検出する
ステップと、 弾弦の検出された弦に対する弾弦位置を検出するステッ
プと、 前記フィンガーボードに対するフィンガリングの操作位
置を検出するステップと、 検出された弦の弾弦位置およびフィンガリング操作位置
を入力パラメータとして所定のファジールールに従って
ファジー推論演算を行うステップと、 該ファジー推論の演算結果に応じたリリースレートで減
衰するエンベロープを付加した楽音の発生を指示するス
テップと、 からなる電子楽器に用いられる楽音制御方法。
6.Duplexed along the fingerboard
Detect if any of a number of strings is hit
Steps and A step for detecting the position of the string with respect to the detected string
And Operating position of fingering on the fingerboard
Detecting the location; Detected string position and fingering operation position
According to a predetermined fuzzy rule as an input parameter
Performing a fuzzy inference operation; Decrease at the release rate according to the calculation result of the fuzzy inference
A switch that instructs the generation of musical tones with a decaying envelope
Tep, A musical tone control method used for an electronic musical instrument.
【請求項7】 フィンガーボードに沿って張設された複
数の弦の中のいずれかの弦が弾弦されたことを検出する
ステップと、 弾弦の検出された弦に対する弾弦位置を検出するステッ
プと、 前記フィンガーボードに対するフィンガリングの操作位
置を検出するステップと、 弾弦された弦のナンバーを検出するステップと、 検出された弦の弾弦位置、フィンガリング操作位置及び
弦ナンバーを入力パラメータとして所定のファジールー
ルに従ってファジー推論演算を行うステップと、 該ファジー推論の演算結果に応じたリリースレートで減
衰するエンベロープを付加した楽音の発生を指示するス
テップと、 からなる電子楽器に用いられる楽音制御方法。
7.Duplexed along the fingerboard
Detect if any of a number of strings is hit
Steps and A step for detecting the position of the string with respect to the detected string
And Operating position of fingering on the fingerboard
Detecting the location; Detecting the number of the string that was struck; The detected string position of string, fingering operation position and
Using the string number as an input parameter,
Performing a fuzzy inference operation according to Decrease at the release rate according to the calculation result of the fuzzy inference
A switch that instructs the generation of musical tones with a decaying envelope
Tep, A musical tone control method used for an electronic musical instrument.
JP18605992A 1992-06-19 1992-06-19 Electronic musical instrument and musical tone control method used for electronic musical instrument Expired - Fee Related JP3236869B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18605992A JP3236869B2 (en) 1992-06-19 1992-06-19 Electronic musical instrument and musical tone control method used for electronic musical instrument

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18605992A JP3236869B2 (en) 1992-06-19 1992-06-19 Electronic musical instrument and musical tone control method used for electronic musical instrument

Publications (2)

Publication Number Publication Date
JPH064075A JPH064075A (en) 1994-01-14
JP3236869B2 true JP3236869B2 (en) 2001-12-10

Family

ID=16181676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18605992A Expired - Fee Related JP3236869B2 (en) 1992-06-19 1992-06-19 Electronic musical instrument and musical tone control method used for electronic musical instrument

Country Status (1)

Country Link
JP (1) JP3236869B2 (en)

Also Published As

Publication number Publication date
JPH064075A (en) 1994-01-14

Similar Documents

Publication Publication Date Title
EP1298641B1 (en) Simple electronic musical instrument, player&#39;s console and signal processing system incorporated therein
JP3236869B2 (en) Electronic musical instrument and musical tone control method used for electronic musical instrument
JPH01147599A (en) Electronic keyed instrument
JP2722947B2 (en) Musical tone signal generator
JP3316517B2 (en) Keyboard device
JPH0594183A (en) Musical tone controller
JPH0753117Y2 (en) Electronic keyboard instrument
JP2858764B2 (en) Electronic musical instrument
JP2794730B2 (en) Electronic musical instrument
JP3704851B2 (en) Electronic stringed instrument capable of playing tapping harmonics
JPH0635449A (en) Electronic percussion instrument
JP3206040B2 (en) Electronic string instrument
JP3602365B2 (en) Electronic musical instrument
JP3709986B2 (en) Electronic stringed instruments
WO2022202267A1 (en) Information processing method, information processing system, and program
JPH0219469B2 (en)
JPH0738108B2 (en) Musical tone control method for electronic musical instruments
JPH02146597A (en) Musical sound control method for electronic musical instrument
JPH0789277B2 (en) Musical tone control method for electronic musical instruments
JP3567297B2 (en) Sound source assigner device
JPH0789278B2 (en) Musical tone control method for electronic musical instruments
JPH09179487A (en) Musical sound generation directing device
JP2839008B2 (en) Electronic musical instrument
JP2588132Y2 (en) Electronic string instrument
JP2961675B2 (en) Electronic musical instrument

Legal Events

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