JP4626241B2 - A method for generating a musical instrument and pronunciation instruction information and a program for executing the method on a computer. - Google Patents

A method for generating a musical instrument and pronunciation instruction information and a program for executing the method on a computer. Download PDF

Info

Publication number
JP4626241B2
JP4626241B2 JP2004273629A JP2004273629A JP4626241B2 JP 4626241 B2 JP4626241 B2 JP 4626241B2 JP 2004273629 A JP2004273629 A JP 2004273629A JP 2004273629 A JP2004273629 A JP 2004273629A JP 4626241 B2 JP4626241 B2 JP 4626241B2
Authority
JP
Japan
Prior art keywords
displacement member
information
speed
determination
value
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
JP2004273629A
Other languages
Japanese (ja)
Other versions
JP2005208569A (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.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP2004273629A priority Critical patent/JP4626241B2/en
Priority to US11/019,985 priority patent/US7285718B2/en
Priority to EP04030531A priority patent/EP1555651A1/en
Publication of JP2005208569A publication Critical patent/JP2005208569A/en
Application granted granted Critical
Publication of JP4626241B2 publication Critical patent/JP4626241B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

この発明は、例えばピアノ等のように、演奏操作子の動作に応じて往復変位する変位部材の動作に基づき発音が行われる楽器において、該変位部材の動作に基づき打弦タイミングの判定や、発音指示情報を生成するための技術に関する。   The present invention relates to, for example, a piano or the like that performs sound generation based on the movement of a displacement member that reciprocally moves according to the operation of a performance operator. The present invention relates to a technique for generating instruction information.

従来より、自動演奏ピアノ等の鍵盤楽器においては、鍵やハンマ等の動きをセンサで検知し、検出結果を演奏データとして記録したり、電子音源に供給して楽音を電子的に発生することが行われている。この種の鍵盤楽器において、ハンマの動作を連続量で検出するハンマセンサを設けて、より正確な打弦タイミングおよび打弦速度を取得できるようにしたものが知られている。下記特許文献1には、ハンマセンサを有する鍵盤楽器の一例として、ハンマシャンクの変位を連続量で検出するハンマセンサを設け、鍵操作時に該ハンマセンサからハンマ運動に関する物理量(位置、速度或いは加速度)を連続量で検出し、その検出結果を用いて、ピアノ演奏に関る種々の情報を取得する装置が開示されている。該情報は、例えば下記(1)〜(9)等である。すなわち:(1)ハンマの動作開始タイミング、(2)打弦タイミング、(3)打弦直前のハンマ速度、(4)押鍵タイミング、(5)バックチェックタイミング、(6)バックチェックが外れたタイミング、(7)バックチェックが外れた後のハンマ速度、(8)ダンパ復帰タイミング、(9)ハンマ動作終了タイミング、(10)離鍵タイミングなどである。
特開2001−175262号公報
Conventionally, in a keyboard instrument such as an auto-playing piano, movements of keys and hammers are detected by a sensor, and the detection results are recorded as performance data or supplied to an electronic sound source to generate musical sounds electronically. Has been done. In this kind of keyboard musical instrument, a hammer sensor that detects a hammer operation in a continuous amount is provided so that a more accurate stringing timing and stringing speed can be obtained. In Patent Document 1 below, as an example of a keyboard instrument having a hammer sensor, a hammer sensor that detects a displacement of a hammer shank with a continuous amount is provided, and a physical quantity (position, velocity, or acceleration) related to the hammer motion from the hammer sensor during key operation. Is disclosed in a continuous amount, and various information relating to piano performance is acquired using the detection result. The information includes, for example, the following (1) to (9). That is: (1) Hammer operation start timing, (2) Tapping timing, (3) Hammer speed immediately before tapping, (4) Key pressing timing, (5) Back check timing, (6) Back check is off Timing, (7) hammer speed after the back check is removed, (8) damper return timing, (9) hammer operation end timing, and (10) key release timing.
JP 2001-175262 A

上記特許文献1に代表される従来の装置構成によると、前記ピアノ演奏に関る種々の情報を生成するに際して、制御系は、ハンマ動作の開始や打弦動作の有無の判定等のハンマ動作の判定処理により、ハンマの動作状態を判断している。そのハンマ動作状態の判断は、ハンマセンサの出力と所定の閾値を比較することによって行われていた。すなわち、センサの出力と所定の閾値を比較することで、センサ出力とハンマの動作位置の対応付けを行い、ハンマの動作位置からハンマ動作状態を判断するのである。しかしながら、従来の技術では、打弦タイミング等を求める際の打弦判定は、専ら、ハンマが弦に接近する際の動き、すなわち、打弦前のハンマの動きのみに基づき判定していたので、打弦/非打弦の区別が不確実となる恐れがあった。従って、該打弦判定に基づく発音指示(キーオン)の発生もまた不確かになることがあった。また、連続量センサとしてよく用いられる光学式センサには、センサの使用中に光量が下がるなど、入出力特性に経時変化が生じる場合がある。しかし、従来の装置では、そのようなセンサの入出力特性の経時変化(例えば、光量の低下など)に対する対応が不十分であった。   According to the conventional apparatus configuration represented by the above-mentioned Patent Document 1, when generating various information related to the piano performance, the control system performs the hammer operation such as the start of the hammer operation and the determination of the presence or absence of the stringing operation. The operation state of the hammer is determined by the determination process. The determination of the hammer operating state is made by comparing the output of the hammer sensor with a predetermined threshold value. That is, by comparing the sensor output with a predetermined threshold value, the sensor output and the hammer operating position are associated with each other, and the hammer operating state is determined from the hammer operating position. However, in the prior art, the string striking determination when obtaining the string striking timing and the like is determined solely based on the movement of the hammer approaching the string, that is, based on the movement of the hammer before striking. There was a risk that the distinction between striking and non-striking was uncertain. Therefore, the generation of a sound generation instruction (key-on) based on the string hit determination may also be uncertain. In addition, in an optical sensor often used as a continuous quantity sensor, the input / output characteristics may change over time, for example, the amount of light decreases during use of the sensor. However, in the conventional apparatus, the response to the change with time in the input / output characteristics of the sensor (for example, a decrease in the amount of light) is insufficient.

この発明は上述の点に鑑みてなされたもので、自動演奏ピアノ等において、演奏操作子の動作に応じて往復変位する変位部材の動作に基づき発音が行われる楽器において、該変位部材の動作に基づく打弦判定や、発音指示情報の発生/非発生をより正確に行えるようにすることを目的とする。   The present invention has been made in view of the above points, and in an automatic performance piano or the like, in an instrument in which sound is generated based on the movement of a displacement member that reciprocally moves according to the operation of a performance operator, the movement of the displacement member is reduced. It is an object of the present invention to make it possible to more accurately perform string hitting determination and generation / non-generation of pronunciation instruction information.

この発明に係る鍵盤楽器は、演奏操作子と、前記演奏操作子の動作に応じて往復変位し、該変位に応じて他の部材と当接する変位部材と、前記変位部材の動作を連続量で検出する検出手段と、前記検出手段から出力された複数時点のデータに基づき、前記変位部材が前記他の部材に最接近した基準時点を特定し、且つ、前記基準時点における変位部材の動作、該基準時点前における変位部材が他の部材に近接する変位部材の動作、及び、該基準時点後における変位部材が他の部材から離間する変位部材の動作に基づいて前記変位部材が前記他の部材当接したかどうかを判定する判定手段とを備える。 A keyboard instrument according to the present invention includes a performance operator, a displacement member that reciprocally moves according to the operation of the performance operator, and abuts against other members according to the displacement, and the movement of the displacement member in a continuous amount. A detection means for detecting, and a reference time point at which the displacement member is closest to the other member based on data at a plurality of time points outputted from the detection means , and an operation of the displacement member at the reference time point, operation of the displacement member which displacement member before the reference time point is close to the other member, and, on the other member is the displacement member on the basis of the operation of the displacement member which displacement member after the reference time is separated from the other member and a determination means for determining whether the contact.

また、この発明は、演奏操作子と、前記演奏操作子の動作に応じて往復変位することで、発音部による発音を制御する変位部材と、少なくとも前記変位部材の動きを検出する検出手段と、前記検出手段の出力に基づき往路変位する変位部材の位置が所定位置に達したかどうかを判断する位置判断手段と前記検出手段の出力に基づき往路変位する変位部材の速度情報を出力する速度情報出力手段と、前記速度情報出力手段が出力した速度情報が所定の速度を越えたかどうかを判別する速度判別手段と、前記位置判断手段の判断結果並びに前記速度判別手段の判別結果に基づき発音指示情報を生成する発音指示情報生成手段であって、変位部材の位置が所定位置に達し、且つ、速度情報が所定の速度を越えた場合には、少なくとも前記変位部材の往路変位時の速度情報に基づき発音指示情報を生成し、変位部材の位置が所定位置に達していない場合又は速度情報が所定の速度を越えていない場合には、少なくとも往路から復路へ反転する時点の変位部材の動きと復路変位する変位部材の動きに基づき発音有無を判断し、該発音有無判定の結果に応じて発音指示情報を生成する発音指示情報生成手段を具えた楽器である。 Further, the present invention provides a performance operator, a displacement member that controls the sound generation by the sound generation unit by reciprocating displacement according to the operation of the performance operator, and a detection unit that detects at least the movement of the displacement member, A position determination unit that determines whether or not the position of the displacement member that is displaced in the forward direction reaches a predetermined position based on the output of the detection unit, and a speed information output that outputs speed information of the displacement member that is displaced in the forward direction based on the output of the detection unit. Means for determining whether or not the speed information output from the speed information output means exceeds a predetermined speed, sound generation instruction information based on the determination result of the position determination means and the determination result of the speed determination means. a sounding instruction information generating means for generating for the position of the displacement member reaches a predetermined position, and, when the speed information exceeds a predetermined speed, at least the displacement member Point generates sounding instruction information on the basis of the speed information at the time of road displacement, if or when the speed information does not reach the predetermined position position of the displacement member does not exceed the predetermined speed, to reverse the homeward at least forward This is a musical instrument comprising sound generation instruction information generating means for determining the presence or absence of sound generation based on the movement of the displacement member and the movement of the displacement member moving backward, and generating sound generation instruction information according to the result of the sound presence / absence determination .

また、この発明は、演奏操作子の動作に応じて往復変位する変位部材の動作に基づき発音指示情報を生成するための方法であって、少なくとも前記変位部材の動きを検出する検出ステップと、前記検出ステップにおける検出結果に基づき往路変位する変位部材の位置が所定位置に達しかどうかを判断する位置判断ステップと、前記検出ステップにおける検出結果に基づき往路変位する変位部材の速度情報を出力する速度出力ステップと、前記速度出力ステップにおいて出力された速度情報が所定の速度を越えているかどうかを判別する速度判別ステップと、前記位置判断ステップの判断結果並びに前記速度判別ステップの判別結果に基づき発音指示情報を生成するステップであって、変位部材の位置が所定位置に達し、且つ、速度情報が所定の速度を越えた場合には、少なくとも前記変位部材の往路変位時の速度情報に基づき発音指示情報を生成し、変位部材の位置が所定位置に達していない場合又は速度情報が所定の速度を越えていない場合には、少なくとも往路から復路へ反転する時点の変位部材の動きと復路変位する変位部材の動きに基づき発音有無を判断し、該発音有無判定の結果に応じて発音指示情報を生成する発音指示情報生成ステップを含む方法、或いは、該方法に対応する処理コンピュータに実行させるためのプログラムとして構成することも可能である。 Further, the present invention is a method for generating sound generation instruction information based on the movement of a displacement member that reciprocally moves according to the movement of a performance operator, wherein the detection step detects at least the movement of the displacement member; speed position of the displacement member for forward displacement on the basis of the detection result in the detection step of outputting a position determining step of determining whether it has reached a predetermined position, the speed information of the displacement member for forward displacement on the basis of the detection result in the detecting step an output step, and the rate determining step speed information outputted at said velocity output step to determine whether it exceeds a predetermined speed, the position determination step of determining results and determination results on the basis of sound generation instruction of the speed determination step and generating information, position of the displacement member reaches a predetermined position, and the speed information Tokoro When exceeding the speed generates a sounding instruction information on the basis of the speed information at the time of forward displacement of at least the displacement member, exceeds a predetermined speed or when the speed information position of the displacement member has not reached the predetermined position If not, the presence / absence of sound generation is determined based on at least the movement of the displacement member at the time of reversing from the forward path to the return path and the movement of the displacement member that is displaced in the backward path, and sound generation instruction information is generated according to the result of the sound generation presence / absence determination method comprising sound generation instruction information generating step, or can be configured as because of a program to execute the process corresponding to the method in the computer.

この発明に係る鍵盤楽器によれば判定手段は、検出手段から出力された複数時点のデータに基づき、変位部材が他の部材に最接近した基準時点を特定し、且つ、基準時点における変位部材の動作、該基準時点前における変位部材が他の部材に近接する変位部材の動作、及び、該基準時点後における変位部材が他の部材から離間する変位部材の動作に基づいて変位部材が他の部材当接したかどうかを判定するよう構成されるしたがって、変位部材が他の部材に近接する変位部材の動作のみならず、変位部材が他の部材から離間する変位部材の動作も考慮して変位部材が前記他の部材に当接したかどうかを判定することができるようになる。これにより、変位部材が他の部材に当接したかどうかをより正確に判定できるようになるという優れた効果を奏する。演奏操作子と変位部材の一例として、鍵とハンマがある。その場合、ハンマによる打弦前のみならず、打弦後のハンマの動作を考慮した打弦判定を行うことができるので、打弦/非打弦の区別をより正確に行えるようになるという優れた効果を奏する。 According to the keyboard instrument of the present invention , the determination unit specifies the reference time point at which the displacement member is closest to the other member based on the data at the plurality of time points output from the detection unit , and the displacement member at the reference time point operation, the operation of the displacement member which displacement member before the reference time point is close to the other member, and the other is displacement of member based on the operation of the displacement member which displacement member after the reference time is separated from the other member determining so constituted whether the contact on the member. Therefore, whether or not the displacement member abuts against the other member in consideration of not only the movement of the displacement member close to the other member but also the movement of the displacement member separated from the other member. It becomes possible to judge. Thereby, there is an excellent effect that it is possible to more accurately determine whether or not the displacement member is in contact with another member. As an example of the performance operator and the displacement member, there are a key and a hammer. In this case, it is possible to perform a string hit determination in consideration of not only the hammer hitting but also the hammer action after hitting, so that it is possible to more accurately distinguish between hitting / non-striking. Has an effect.

また、この発明に係る楽器によれば、検出手段は、少なくとも変位部材の動きを検出し、位置判断手段は検出手段の出力に基づき往路変位する変位部材の位置が所定位置に達したかどうかを判断する。また、速度情報出力手段は該検出手段の出力に基づき往路変位する変位部材の速度情報を出力し、速度判別手段該速度情報出力手段が出力した速度情報が所定の速度を越えているかどうかを判別する。そして、発音指示情報生成手段は、変位部材の位置が所定位置に達し、且つ、速度情報が所定の速度を越えた場合には、少なくとも変位部材の往路変位時の速度情報に基づき発音指示情報を生成し、変位部材の位置が所定位置に達していない場合又は速度情報が所定の速度を越えていない場合には、少なくとも往路から復路へ反転する時点の変位部材の動きと復路変位する変位部材の動きに基づき発音有無を判断し、該発音有無判定の結果に応じて発音指示情報を生成するよう構成されるしたがって、往路変位する変位部材の位置情報又は速度情報に基づく判断で発音指示情報が生成されない場合であっても、少なくとも往路から復路へ反転する時点の変位部材の動きと復路変位する変位部材の動きに基づいて発音有無を判断し、発音有無判定の結果に応じて発音指示情報を生成することができる。すなわち、往路変位する変位部材の位置情報及び速度情報の両方を考慮し、且つ、復路変位する変位部材の動きを考慮して、より正確な発音指示情報の生成が行えるようになるという優れた効果を奏する。演奏操作子と変位部材の一例として、鍵と該鍵の動きに応じて打弦動作するハンマある。この場合、ハンマのストローク位置とハンマの動作速度との両方を考慮し、且つ、打弦前のみならず、打弦後のハンマの動作を考慮して、より正確な発音指示情報の生成を行うことができるという優れた効果を奏する。 According to the musical instrument of the present invention, the detection means detects at least the movement of the displacement member, and the position determination means determines whether or not the position of the displacement member that is displaced forward based on the output of the detection means has reached a predetermined position. Judging. The speed information output means, whether to output the velocity information of the displacement member for forward displacement on the basis of the output of the detection means, the speed information is the speed determining means the velocity information output means outputs exceeds a predetermined speed Determine. Then, the calling sound instruction information generating means, the position of the displacement member reaches a predetermined position, and, when the speed information exceeds a predetermined speed, also the least on the basis of the speed information at the time of forward displacement of the displacement of member When the pronunciation instruction information is generated and the position of the displacement member does not reach the predetermined position or the speed information does not exceed the predetermined speed, at least the movement of the displacement member and the return path displacement at the time of reversal from the forward path to the return path determining pronunciation existence based on the motion of the displacement member configured to generate a sounding instruction information in response to emitting sound existence determination result. Accordingly, even when the sound generation instruction information is not generated based on the position information or speed information of the displacement member that is displaced in the forward path, at least the movement of the displacement member at the time of reversal from the forward path to the return path and the movement of the displacement member that is displaced in the backward path The sound generation instruction information can be generated according to the result of the sound generation presence / absence determination. In other words, it is possible to generate more accurate pronunciation instruction information in consideration of both the positional information and velocity information of the displacement member moving in the forward path and in consideration of the movement of the displacement member moving in the backward path. Play. As an example of the performance operator and the displacement member, there is a key and a hammer that performs a stringing operation according to the movement of the key. In this case, taking into account both the stroke position and the hammer operating speed of the hammer, and includes not string striking front only, taking into account the operation of the hammer after the string striking, and generates a more accurate sounding instruction information There is an excellent effect of being able to.

以下添付図面を参照して、この発明の一実施例について説明する。
図1は、この発明の一実施例に係る自動演奏ピアノの構成例を説明するための図であって、機械的な発音機構の要部を抽出して示すと共に、電気的制御系の機能ブロックを示している。図1に示すように、自動演奏ピアノは、機械的な発音機構として、鍵1と、該鍵1に連動して回動ストロークするハンマ2と、該鍵1の運動をハンマ2に伝達するためのアクション機構3と、該ハンマ2によって打撃される弦4と、電気的制御に基づき鍵1を駆動する電磁ソレノイド5と、弦4の振動を止めるためのダンパ6とを含む。これらの構成は、一般的な自動演奏ピアノと同様である。なお、後述するように、この実施例においては、電磁ソレノイド5の駆動をサーボ制御する構成が適用されており、ソレノイド5にはプランジャ動作を検出するフィードバックセンサが具備されるものとする。
また、この自動演奏ピアノには、通常のアコースティックピアノと同様にバックチェック7が設けられており、このバックチェック7は打弦時の反動によるハンマ2の暴れを防止するための部材である。この自動演奏ピアノは、上記のほかにも、通常のアコースティックピアノと同様な各種構成要素を具備するが、それらの説明及び図示は省略する。ハンマ2は、アクション機構3に対して、ハンマシャンク2aを介して動作支点2bを中心にして回動自在に連結されており、対応する鍵1が非押鍵(外力を加えない状態)の時には、図1に示すようなレスト位置(ストローク量0mmの位置)にある。そして、対応する鍵1の変位(上下揺動)に連動して、基本的には該レスト位置から所定のエンド位置の間で回動ストロークする。この実施例において、ハンマ2のエンド位置は、ハンマ2が該レスト位置から48mmストローク変位した位置とする。図1において、エンド位置に位置するハンマ2を点線で示している。
An embodiment of the present invention will be described below with reference to the accompanying drawings.
FIG. 1 is a diagram for explaining a configuration example of an automatic performance piano according to one embodiment of the present invention, in which a main part of a mechanical sounding mechanism is extracted and shown, and a functional block of an electric control system Is shown. As shown in FIG. 1, the automatic performance piano has a mechanical sound generation mechanism for transmitting a key 1, a hammer 2 that rotates in conjunction with the key 1, and a movement of the key 1 to the hammer 2. An action mechanism 3, a string 4 struck by the hammer 2, an electromagnetic solenoid 5 that drives the key 1 based on electrical control, and a damper 6 that stops vibration of the string 4. These configurations are the same as those of a general automatic performance piano. As will be described later, in this embodiment, a configuration for servo-controlling the drive of the electromagnetic solenoid 5 is applied, and the solenoid 5 is provided with a feedback sensor for detecting a plunger operation.
Further, the automatic performance piano is provided with a back check 7 as in the case of a normal acoustic piano. The back check 7 is a member for preventing the hammer 2 from being ramped up due to a reaction during stringing. In addition to the above, the automatic performance piano includes various components similar to those of a normal acoustic piano, but description and illustration thereof are omitted. The hammer 2 is connected to the action mechanism 3 through the hammer shank 2a so as to be rotatable about the operation fulcrum 2b. When the corresponding key 1 is non-pressed (a state in which no external force is applied), In the rest position (position of stroke amount 0 mm) as shown in FIG. Then, in conjunction with the displacement (vertical swing) of the corresponding key 1, basically a rotation stroke is made between the rest position and a predetermined end position. In this embodiment, the end position of the hammer 2 is a position where the hammer 2 is displaced by 48 mm from the rest position. In FIG. 1, the hammer 2 positioned at the end position is indicated by a dotted line.

図1において、符号26は、ハンマ2の変位に応じた検出信号を連続量で検出するセンサである。センサ26は、例えば、ハンマ2の連続的な位置情報を出力可能な光学式の位置センサを適用してよい。ハンマ2の連続位置を検出するのに好適な光学式センサの構成例について簡単に説明すると、光学式センサは、例えば、LEDと光ファイバで繋がる発光側センサヘッドとフォトダイオードと光ファイバで繋がる受光側センサヘッドとを有し、該LEDの光が発光側センサヘッドから照射されて、フォトダイオードと光ファイバで繋がる受光側センサヘッドにおいて受光され、フォトダイオードによって受光量に応じた出力電圧を取り出すことができる。該受光側センサヘッドにおいて受光する光量が、ハンマ2の変位に対応して変化するよう構成することで、該ハンマ2のストローク位置に応じた出力電圧を当該センサの検出信号として得ることができる。   In FIG. 1, reference numeral 26 denotes a sensor that detects a detection signal according to the displacement of the hammer 2 in a continuous amount. As the sensor 26, for example, an optical position sensor capable of outputting continuous position information of the hammer 2 may be applied. A configuration example of an optical sensor suitable for detecting the continuous position of the hammer 2 will be briefly described. The optical sensor is, for example, a light receiving side sensor head connected by an LED and an optical fiber, a light receiving side connected by a photodiode and an optical fiber. A light-receiving side sensor head connected to the photodiode by an optical fiber, and taking out an output voltage corresponding to the amount of light received by the photodiode. Can do. By configuring so that the amount of light received by the light-receiving side sensor head changes corresponding to the displacement of the hammer 2, an output voltage corresponding to the stroke position of the hammer 2 can be obtained as a detection signal of the sensor.

当該センサ26から出力される電圧値(アナログ信号)は、図示を省略したOPアンプ、AD変換器を介して、後述する信号処理部27に、ディジタル信号として出力される。以下、この明細書中では、ディジタル信号に変換されたセンサ出力信号を「AD値(アナログ/ディジタル変換値)」と略称する。AD値は、センサ26の出力(すなわちハンマ位置の測定値)を、例えば「0〜1023」の範囲の数値によって表現するデータである。なお、当該自動演奏ピアノに備わる全てのハンマ(88個)に対して、夫々独立したセンサ26(LEDとフォトダイオード)を配設するとコストが高くなってしまう。この点について、12個のLEDと8個のフォトダイオードとを用いて、88個のハンマの夫々の動きを個別にセンシング可能なセンサマトリクスを構成する技術が本出願人により提案されており(特開平9−54584号公報を参照)、この実施例に係るセンサ26は該センサマトリックスにより構成されるものとする。なお、センサの配設構成はセンサマトリックスによる構成に限らず、LEDとフォトダイオードからなるセンサ26を当該自動演奏ピアノに備わる全てのハンマに個別に配設する構成であってもよい。   The voltage value (analog signal) output from the sensor 26 is output as a digital signal to a signal processing unit 27 described later via an OP amplifier and an AD converter (not shown). Hereinafter, in this specification, a sensor output signal converted into a digital signal is abbreviated as “AD value (analog / digital conversion value)”. The AD value is data representing the output of the sensor 26 (that is, the measurement value of the hammer position) by a numerical value in the range of “0 to 1023”, for example. In addition, if the independent sensors 26 (LED and photodiode) are provided for all the hammers (88) provided in the automatic performance piano, the cost becomes high. In this regard, the present applicant has proposed a technique for constructing a sensor matrix that can individually sense the movements of 88 hammers using 12 LEDs and 8 photodiodes. (See Kaihei 9-54584), the sensor 26 according to this embodiment is constituted by the sensor matrix. Note that the sensor arrangement is not limited to the sensor matrix, and may be a structure in which the sensors 26 formed of LEDs and photodiodes are individually arranged in all the hammers provided in the automatic performance piano.

図2は図1に示す自動演奏ピアノの電気的ハードウェア構成を示すブロック図である。図2に示すように当該自動演奏ピアノは、CPU20、ROM21、RAM22及び記憶装置23を含み、各装置間がデータ及びアドレスバス20Bを介して接続される。センサ26の出力はAD変換器を含むインターフェース(I/O)24を介して所定のサンプリング周期で制御系に取り込まれる。CPU20は、当該自動演奏ピアノの全体的な動作を制御するとともに、演奏データの再生処理や、演奏の録音処理等の各種信号処理を実行する。CPU20が実行する各種処理の制御プログラムは、例えばROM21内に記憶されていてよい。また、ROM21或いはRAM22等の適宜のメモリには、各種信号処理の実行中に発生した各種データや各種パラメータや、該各種信号処理において参照する各種テーブル等が記憶される。また、記憶装置23は、ハードディスク、フレキシブルディスク又はフロッピー(登録商標)ディスク、コンパクトディスク(CD‐ROM)、光磁気ディスク(MO)、ZIPディスク、DVD(Digital Versatile Disk)、半導体メモリ等、適宜の記録媒体で構成されてよい。   FIG. 2 is a block diagram showing an electrical hardware configuration of the automatic performance piano shown in FIG. As shown in FIG. 2, the automatic performance piano includes a CPU 20, a ROM 21, a RAM 22, and a storage device 23, and the devices are connected through a data and address bus 20 </ b> B. The output of the sensor 26 is taken into the control system at a predetermined sampling period via an interface (I / O) 24 including an AD converter. The CPU 20 controls the overall operation of the automatic performance piano and executes various signal processing such as performance data reproduction processing and performance recording processing. Control programs for various processes executed by the CPU 20 may be stored in the ROM 21, for example. In addition, various data and various parameters generated during execution of various signal processing, various tables referred to in the various signal processing, and the like are stored in an appropriate memory such as the ROM 21 or the RAM 22. In addition, the storage device 23 is a hard disk, a flexible disk or a floppy (registered trademark) disk, a compact disk (CD-ROM), a magneto-optical disk (MO), a ZIP disk, a DVD (Digital Versatile Disk), a semiconductor memory, or the like. It may be composed of a recording medium.

ここで、図1に示す電気的制御系の機能ブロックについて説明する。信号処理部27は、センサ26の出力に基づき演奏データを生成する処理(演奏の録音処理)を担うモジュールである。また、再生前処理部10、モーションコントローラ11及びサーボコントローラ12は演奏データの再生処理を担うモジュールに相当する。この実施例において、これら各モジュールにおいて実施される信号処理は、CPU20が実行するソフトウェアプログラムによって実現されるものとする。
信号処理部27内に示す算出部28及び処理部30は、信号処理部27にて実行する信号処理の機能を概念的に抽出して表すものである。算出部28は、センサ26から出力されたAD値(ハンマ2の動作位置を表すデータ)に基づき、打弦タイミングや打弦速度等、演奏に関る種々の情報を生成するモジュールである。処理部30は、前記算出部28で生成した種々の情報に基づき、MIDI形式等の適宜のデータフォーマットの演奏データを生成するモジュールである。前記演奏データは、基本的には、キーナンバーとベロシティデータ(打弦速度)を含んで構成されるキーオン/キーオフデータである。生成された演奏データは、記憶装置23に記録しうる。また、生成された演奏データを、図示しない入出力インターフェースを介して図示しない外部機器に供給したり、或いは、図示しない通信ネットワークを介して該ネットワーク上の他の装置にリアルタイムで供給したりしてもよい。
Here, functional blocks of the electrical control system shown in FIG. 1 will be described. The signal processing unit 27 is a module that performs processing (performance recording processing) for generating performance data based on the output of the sensor 26. The pre-reproduction processing unit 10, the motion controller 11 and the servo controller 12 correspond to modules responsible for performance data reproduction processing. In this embodiment, the signal processing performed in each of these modules is realized by a software program executed by the CPU 20.
The calculation unit 28 and the processing unit 30 shown in the signal processing unit 27 conceptually extract and represent the function of signal processing executed by the signal processing unit 27. The calculation unit 28 is a module that generates various pieces of information related to performance such as a stringing timing and a stringing speed based on an AD value (data representing the operation position of the hammer 2) output from the sensor 26. The processing unit 30 is a module that generates performance data in an appropriate data format such as a MIDI format based on various information generated by the calculation unit 28. The performance data is basically key-on / key-off data including a key number and velocity data (stringing speed). The generated performance data can be recorded in the storage device 23. Further, the generated performance data is supplied to an external device (not shown) via an input / output interface (not shown), or is supplied to other devices on the network in real time via a communication network (not shown). Also good.

再生前処理部10は、図示しない適宜の記録媒体や、リアルタイム通信装置等から供給される演奏データに基づいて、鍵1の動作の軌道を指示する軌道データを生成するとともに、該軌道データを用いて鍵の原速度指示値(t,Vr)を生成する。なお、原速度指示値(t,Vr)において、「t」は時間データであり、Vrが時間データtに対応する原速度指示値である。モーションコントローラ11は該原速度指示値(t,Vr)に基づいて、前記起動データを実現するためにソレノイド5に対して与えるべき速度目標値Vrを生成してサーボコントローラ12に出力する。サーボコントローラ12は、前記速度指示値Vrとソレノイド5から帰還入力されるフィードバック速度信号Vyに基づく励磁電流例えば図2のPWM発生器25によって発生されるPWM形式の電流信号)によってソレノイド5を駆動させることで、該ソレノイド5の駆動をサーボ制御する。
また、上記のようにソレノイド5の駆動により鍵1の打鍵動作を制御して、機械的に楽音を発生させることのみならず、音源装置やスピーカ等から構成される電子楽音発生部13を利用して電子的に楽音を発生させることもできる。すなわち、再生前処理部10は、記録媒体やリアルタイム通信装置等から供給される演奏データを電子楽音発生部13に供給し、電子楽音発生部13では該供給された演奏データに基づき電子的に楽音を発生することで、該演奏データに応じた演奏音を電子的に発音させることができる。なお、電子楽音発生部13によって電子的に自動演奏を行う際の演奏データのデータ形式や、音源方式等は従来から知られるどのようなものを適用してもよい。
Based on performance data supplied from an appropriate recording medium (not shown), a real-time communication device, or the like, the pre-reproduction processing unit 10 generates trajectory data indicating the trajectory of the operation of the key 1, and uses the trajectory data The key original speed instruction value (t, Vr) is generated. In the original speed instruction value (t, Vr), “t” is time data, and Vr is an original speed instruction value corresponding to the time data t. Based on the original speed instruction value (t, Vr), the motion controller 11 generates a speed target value Vr to be given to the solenoid 5 in order to realize the activation data, and outputs it to the servo controller 12. The servo controller 12 drives the solenoid 5 by an excitation current based on the speed instruction value Vr and a feedback speed signal Vy fed back from the solenoid 5, for example, a PWM-type current signal generated by the PWM generator 25 in FIG. Thus, the drive of the solenoid 5 is servo-controlled.
Further, as described above, not only the keying operation of the key 1 is controlled by driving the solenoid 5 to mechanically generate a musical tone, but also an electronic musical tone generator 13 including a sound source device, a speaker, and the like is used. Music can be generated electronically. That is, the pre-reproduction processing unit 10 supplies performance data supplied from a recording medium, a real-time communication device, or the like to the electronic musical sound generation unit 13, and the electronic musical sound generation unit 13 electronically generates musical sounds based on the supplied performance data. By generating the performance sound, the performance sound corresponding to the performance data can be generated electronically. It should be noted that any conventionally known data format, sound source method, and the like for performing electronic performance automatically by the electronic musical tone generator 13 may be applied.

上記構成からなる自動演奏ピアノにおける演奏の記録処理(演奏データの生成処理)と再生処理の動作手順の概略について簡単に説明する。操作者は、例えばコントローラに備わる録音指示スイッチの操作等によって演奏の記録処理の開始を指示できる。信号処理部27では、センサ26の検出結果に基づいて、打弦速度や打弦時刻等、に関する各種情報を求め、前記各種情報に基づきピアノ演奏の演奏内容を表す演奏データを生成する。生成した演奏データは記憶装置23(図2参照)に記録したり、図示しない外部機器に出力してよい。
また、操作者は例えばコントローラに備わる再生スイッチの操作等により演奏データの再生処理の開始を指示できる。再生前処理部10は、時々刻々供給される演奏データに基づき鍵1の動作の軌道を指示する軌道データを生成するとともに、該軌道データを用いて鍵の原速度指示値(t,Vr)を生成する。モーションコントローラ11では、該原速度指示値(t,Vr)に基づき、ソレノイド5に対して与えるべき速度目標値Vrが生成される。サーボコントローラ12では、速度指示値Vrとソレノイド5から帰還入力されるフィードバック速度信号Vyに基づきソレノイド5を駆動するための励磁電流を発生し、該ソレノイド5は該励磁電流によって駆動される。これにより、前記演奏データに応じた軌道(ストローク動作)に従い鍵1が打鍵駆動されて、ハンマ2が打弦運動することで、演奏データに応じたピアノ演奏が行われる。また、再生前処理部10は再生すべき演奏データに基づき電子楽音発生部13を制御して、電子楽音発生部13において演奏データに応じた楽音を電子的に発生することも可能である。
An outline of operation procedures of performance recording processing (performance data generation processing) and playback processing in the automatic performance piano having the above configuration will be briefly described. The operator can instruct the start of the performance recording process, for example, by operating a recording instruction switch provided in the controller. Based on the detection result of the sensor 26, the signal processing unit 27 obtains various information related to the stringing speed and the stringing time, and generates performance data representing the performance contents of the piano performance based on the various information. The generated performance data may be recorded in the storage device 23 (see FIG. 2) or output to an external device (not shown).
Also, the operator can instruct the start of the performance data playback process, for example, by operating a playback switch provided in the controller. The pre-reproduction processing unit 10 generates trajectory data for instructing the trajectory of the operation of the key 1 based on the performance data supplied every moment, and uses the trajectory data to obtain the original velocity instruction value (t, Vr) of the key. Generate. In the motion controller 11, a speed target value Vr to be given to the solenoid 5 is generated based on the original speed instruction value (t, Vr). The servo controller 12 generates an excitation current for driving the solenoid 5 based on the speed instruction value Vr and the feedback speed signal Vy fed back from the solenoid 5, and the solenoid 5 is driven by the excitation current. As a result, the key 1 is driven by striking according to the trajectory (stroke operation) corresponding to the performance data, and the hammer 2 performs a stringing motion, whereby a piano performance corresponding to the performance data is performed. Further, the pre-reproduction processing unit 10 can also control the electronic musical sound generating unit 13 based on the performance data to be reproduced, and the electronic musical sound generating unit 13 can electronically generate musical sounds according to the performance data.

信号処理部27では、センサ26から出力されたAD値(数値)をハンマの実際の動作位置に対応付けて認識する必要がある。AD値とハンマの動作位置とを対応付ける方法として、例えば特開2000−155579号公報に記載されているような「キャリブレーション比」を利用する方法が知られている。キャリブレーション比は、エンド位置のAD値をレスト位置のAD値に対する比率を表現したものである。ここで「キャリブレーション比」の設定処理について簡単に説明する。キャリブレーション比の設定処理は、例えば工場出荷時等に実行される処理である。図示しないコントローラからの指示等に応じて、キャリブレーション比の設定処理が開始する。該設定処理においては、レスト位置のAD値とエンド位置のAD値を実測する。そして、前記実測したレスト位置のAD値に対するエンド位置のAD値の比率をキャリブレーション比として、ROM21或いはRAM22等適宜のメモリ(例えばフラッシュメモリ等の不揮発性メモリ)内に記録する。なお、キャリブレーション比の算出は88個の各鍵毎に行われるものとする。   The signal processing unit 27 needs to recognize the AD value (numerical value) output from the sensor 26 in association with the actual movement position of the hammer. As a method for associating the AD value with the operation position of the hammer, a method using a “calibration ratio” as described in, for example, Japanese Patent Laid-Open No. 2000-155579 is known. The calibration ratio expresses the ratio of the AD value at the end position to the AD value at the rest position. Here, the “calibration ratio” setting process will be briefly described. The calibration ratio setting process is a process executed at the time of factory shipment, for example. A calibration ratio setting process starts in response to an instruction from a controller (not shown). In the setting process, the AD value at the rest position and the AD value at the end position are actually measured. The ratio of the AD value at the end position to the actually measured AD value at the rest position is recorded as a calibration ratio in an appropriate memory such as the ROM 21 or RAM 22 (for example, a non-volatile memory such as a flash memory). It is assumed that the calibration ratio is calculated for each of the 88 keys.

この実施例に係る自動演奏ピアノにおける通常の動作時(演奏データの録音や、再生など)の各種信号処理について説明する。
当該自動演奏ピアノにおいて通常の動作時(例えば、演奏データの生成処理や、演奏データの再生処理)には、信号処理部27では、レスト位置や、エンド位置など、或る所定のハンマ動作位置を、ハンマ2の動作状態を把握するための参照位置として定め、各参照位置におけるAD値の値を、演奏データの生成等の信号処理における各種判断に参照する閾値として利用する。すなわち、信号処理部27は、前記閾値とリアルタイムに供給されるセンサ26の出力に基づき、ハンマ2の動作状態(ストローク変位し始めたであるとか、打弦をしたであるとか等)を認識、把握するのである。この実施例において、前記参照位置としては、例えば、ハンマ2のレスト位置(ストローク量0mmの位置)、エンド位置(レスト位置からのストローク量48mm)、第1参照位置M1(前記エンド位置から8mm下がった位置)及び第2参照位置M2(前記エンド位置から0.5mm下がった位置)の4点が設定される。なお、第1参照位置M1と第2参照位置M2は、エンド位置に対する相対的な位置として規定されるものである。信号処理部27は、前記閾値として利用するエンド位置等の或る所定のハンマ動作位置に相当するAD値を、センサ26で測定したレスト位置のAD値とキャリブレーション比に基づく計算で求めている。
Various signal processing during normal operation (such as recording and reproduction of performance data) in the automatic performance piano according to this embodiment will be described.
During normal operation (for example, performance data generation processing or performance data reproduction processing) in the automatic performance piano, the signal processing unit 27 sets a predetermined hammer operation position such as a rest position or an end position. The reference position for grasping the operation state of the hammer 2 is determined, and the AD value at each reference position is used as a threshold value to be referred to for various determinations in signal processing such as generation of performance data. That is, the signal processing unit 27 recognizes the operation state of the hammer 2 (whether the stroke has started to be displaced or a string has been struck) based on the threshold value and the output of the sensor 26 supplied in real time. To figure it out. In this embodiment, as the reference position, for example, the rest position of the hammer 2 (position of stroke amount 0 mm), the end position (stroke amount 48 mm from the rest position), the first reference position M1 (down 8 mm from the end position). 4 points of a second reference position M2 (a position that is lowered by 0.5 mm from the end position). The first reference position M1 and the second reference position M2 are defined as positions relative to the end position. The signal processing unit 27 obtains an AD value corresponding to a certain predetermined hammer operation position such as an end position used as the threshold by calculation based on the AD value of the rest position measured by the sensor 26 and the calibration ratio. .

電源投入時、信号処理部27は、センサ26から供給されるAD値とハンマ2の実際の動作位置とを対応付けるための「参照位置のパラメータ(参照値)」を設定する処理を行う。すなわち、所定の複数地点のハンマ動作位置が参照位置として予め設定されており、該参照位置を表すAD値の値(数値)を参照値として記憶する。図3は、当該自動演奏ピアノにおいて、上記4点の参照位置に対応する各参照値を設定する処理の手順の一例を示す。なお、この処理は、88個の各ハンマについて行うものであるが、ここでは或る1つのハンマ2についての処理により他を代表するものとする。
ステップS1において、自動演奏ピアノにおいて電源が投入されると、センサ26によってハンマ2の現在位置をセンシングして、該センサ26から出力されるAD値を信号処理部27に取り込む。電源投入直後には、鍵1は非押鍵状態にある、つまりハンマ2はレスト位置に位置しているものと想定できるので、ここで取り込んだAD値は、当該ハンマ2のレスト位置に相当するデータとして参照される「レスト値R」としてRAM等適宜のメモリ内に記憶される。ステップS2では、前記ステップS1で取り込んだレスト値Rと前記キャリブレーション比を用いて、ハンマ2のエンド位置の参照値「エンド値E」を算出し、該算出したエンド値Eを前記RAM等適宜のメモリ内に記憶する。
また、ステップS3では、キャリブレーション比を用いてハンマ2の第1参照位置M1及び第2参照位置M2に相当するデータとして参照される参照値「第1参照値m1」及び「第2参照値m2」を算出し、該算出した第1参照値m1及び第2参照値m2を該RAM等適宜のメモリ内に書き込む。前記第1参照値m1及び第2参照値m2は、後述する当該ハンマの速度の算出処理や、打弦有無判定処理等に際して参照される。なお、鍵1をはじめとしてその他の可動部材についても同様に、電源投入時に、センサ出力から参照位置パラメータを設定しうる(ステップS4)。
When the power is turned on, the signal processing unit 27 performs a process of setting a “reference position parameter (reference value)” for associating the AD value supplied from the sensor 26 with the actual operation position of the hammer 2. That is, the hammer operation positions at a plurality of predetermined points are set in advance as reference positions, and AD value values (numerical values) representing the reference positions are stored as reference values. FIG. 3 shows an example of a processing procedure for setting each reference value corresponding to the four reference positions in the automatic performance piano. This process is performed for each of the 88 hammers, but here, the other is represented by the process for one hammer 2.
When power is turned on in the automatic performance piano in step S1, the current position of the hammer 2 is sensed by the sensor 26, and the AD value output from the sensor 26 is taken into the signal processing unit 27. Immediately after the power is turned on, it can be assumed that the key 1 is in a non-key-pressed state, that is, the hammer 2 is located at the rest position, so the AD value taken here corresponds to the rest position of the hammer 2. The “rest value R” referred to as data is stored in an appropriate memory such as a RAM. In step S2, a reference value “end value E” of the end position of the hammer 2 is calculated using the rest value R acquired in step S1 and the calibration ratio, and the calculated end value E is appropriately stored in the RAM or the like. Store in the memory.
In step S3, the reference values “first reference value m1” and “second reference value m2” that are referred to as data corresponding to the first reference position M1 and the second reference position M2 of the hammer 2 using the calibration ratio. And the calculated first reference value m1 and second reference value m2 are written in an appropriate memory such as the RAM. The first reference value m1 and the second reference value m2 are referred to in the hammer speed calculation process, the string striking presence determination process, and the like, which will be described later. Similarly, for the other movable members including the key 1, the reference position parameter can be set from the sensor output when the power is turned on (step S4).

図4は、信号処理部27において実行されるハンマ速度を求めるルーチンの一例を示すフローチャートである。このルーチンは、例えば、演奏者による演奏操作時の演奏の記録処理(演奏データの生成処理)等において、当該自動演奏ピアノの通常の動作中の主要なルーチンの1つとして実行される。この処理は、88個の各ハンマについて行うものであるが、ここでは或る1つのハンマ2についての処理のみ説明し、他を代表するものとする。図示の通り、このルーチンはステップS10〜S16の処理を所定の起動周期に従ってループするようになっている。   FIG. 4 is a flowchart showing an example of a routine for obtaining the hammer speed executed in the signal processing unit 27. This routine is executed as one of main routines during normal operation of the automatic performance piano, for example, in performance recording processing (performance data generation processing) during performance operations by the performer. This process is performed for each of the 88 hammers. Here, only the process for one hammer 2 will be described and the others will be representative. As shown in the figure, this routine loops the processes of steps S10 to S16 according to a predetermined activation cycle.

ステップS10において、信号処理部27では、センサ26から時々刻々出力されるAD値を当該ルーチンの1回の起動機会毎に取り込み、前記取り込んだAD値をその時刻情報TIMEと共にRAM等適宜のメモリ内に格納する。ここで、信号処理部27は、ある時点から過去20回分のサンプリング時点で取り込んだAD値及びその時刻情報TIMEからなるデータセットを格納しておき、これら20個のデータセットから図5(a)に示すようなデータテーブルTABLE1を作成する。テーブルTABLE1には、図示の通り、過去20回分のサンプリング点で取り込んだAD値とその時刻情報のデータセットが順次記述されており、信号処理部27では、テーブルTABLE1により、所定時間内における時間的推移に応じたハンマの連続的な動作位置の情報を得る。   In step S10, the signal processing unit 27 captures the AD value output from the sensor 26 every moment at every activation opportunity of the routine, and stores the captured AD value together with its time information TIME in a suitable memory such as a RAM. To store. Here, the signal processing unit 27 stores a data set composed of AD values and its time information TIME acquired at a sampling time for the past 20 times from a certain time, and from these 20 data sets, FIG. A data table TABLE1 as shown in FIG. As shown in the table, the table TABLE1 sequentially describes a data set of AD values taken at the last 20 sampling points and the time information thereof. The signal processing unit 27 uses the table TABLE1 to set temporal data within a predetermined time. Information on the continuous operation position of the hammer according to the transition is obtained.

ステップS11では、取り込んだAD値からハンマ動作(つまり鍵操作)の有無の判定を行う。ハンマ動作の有無判定は、例えば、前述のレスト値Rを参照して、取り込まれたAD値が非押鍵状態(レスト位置)から変位しているか否かによって判定できる。ハンマ動作(鍵操作)がなければ(ステップS11のno)、処理は当該ルーチンの先頭に戻る。   In step S11, the presence / absence of a hammer operation (that is, key operation) is determined from the acquired AD value. The presence / absence determination of the hammer operation can be determined by referring to the above-described rest value R, for example, based on whether or not the captured AD value is displaced from the non-key-pressed state (rest position). If there is no hammer operation (key operation) (no in step S11), the process returns to the top of the routine.

一方、ハンマ動作(鍵操作)があれば(ステップS11のyes)、ステップS12において、現時点で取り込まれたAD値が第2参照値m2を越えたかどうか、つまり、ハンマ2のストローク位置が第2の参照位置M2よりも上方に変位したかどうかを判定する。第2参照位置M2は、前述の通りエンド位置から0.5mm下がった位置である。これは、ハンマ2が打弦する位置(エンド位置)の直前の位置であり、この参照位置M2をハンマ2が超えれば、打弦が行われる(エンド位置に達する)だろうと推断しうる推定打弦位置として規定されている。よって、信号処理部27では、AD値が該第2参照値m2を越えた時点(つまり、ハンマ2が推定打弦位置を越えた時点)で「当該ハンマ2による打弦が有った」と推定することができる。このようにセンサ26から出力されるAD値と閾値に基づき打弦有無の推定を行うことは、ハンマ動作判断の、ハンマ実動作に対するリアルタイム性、すなわち、迅速な動作判断という点で有利である。この実施例においては、詳しくは後述するような判断構成によってキャリブレーション比の補正を行うことで、ステップ12の打弦有無推定をより正確に行うことができるようになることが後段から明らかになる。
そして、ステップS13では、前記ステップS12での判断(現時点で取り込んだAD値が参照値m2を越えたかどうか?)に応じて、第1の打弦ステートst1の設定を行う。第1の打弦ステートst1は、AD値と参照値m2による打弦有無推定の結果に応じて、「推定打弦」の有無の状態を識別する2状態のステートである。AD値が参照値m2を越えていれば、第1の打弦ステートst1が「推定打弦有り」状態に設定される。なお、通常(すなわち、ステップS12での参照値m2越えが否の状態)では、第1の打弦ステートst1は非打弦(推定打弦無し)に設定されている。
On the other hand, if there is a hammer operation (key operation) (yes in step S11), whether or not the AD value fetched at the present time exceeds the second reference value m2 in step S12, that is, the stroke position of the hammer 2 is the second. It is determined whether the reference position M2 has been displaced upward. As described above, the second reference position M2 is a position that is lowered by 0.5 mm from the end position. This is a position immediately before the position where the hammer 2 hits the string (end position), and if the hammer 2 exceeds the reference position M2, it is estimated that the string will be hit (the end position is reached). It is defined as the chord position. Therefore, in the signal processing unit 27, when the AD value exceeds the second reference value m2 (that is, when the hammer 2 exceeds the estimated stringing position), “there is a stringing by the hammer 2”. Can be estimated. Estimating the presence or absence of string striking based on the AD value output from the sensor 26 and the threshold value in this way is advantageous in terms of real-time performance of the hammer operation determination, that is, quick operation determination. In this embodiment, it will be apparent from the later stage that the tapping presence / absence estimation in step 12 can be more accurately performed by correcting the calibration ratio by a determination configuration as will be described in detail later. .
In step S13, the first string-striking state st1 is set according to the determination in step S12 (whether the currently acquired AD value exceeds the reference value m2). The first string striking state st1 is a two-state state that identifies the presence / absence of “estimated string striking” according to the result of string striking / non-predicting based on the AD value and the reference value m2. If the AD value exceeds the reference value m2, the first stringing state st1 is set to the “estimated stringing presence” state. Note that, normally (that is, in a state where the reference value m2 is not exceeded in step S12), the first string-striking state st1 is set to non-stringent (no estimated string-striking).

ステップS14では、図5(a)のテーブルTABLE1を参照して、20点のサンプリング時点のうちから、現時点からみて過去5点前のサンプリング時点においてハンマ2の動作向きが反転したかどうかを調べる。ハンマ2の動作が反転した時点は、テーブルTABLE1に基づきAD値の増減変化の状態から特定できる。ここで、説明の便宜上、当該ハンマ2がレスト値にあるときのAD値の数値を最大値AD(MAX)で表し、エンド位置にあるときのAD値を最小値AD(MIN)で表すものとすると、ハンマ2の一回の往復変位(つまりレスト位置からエンド位置に至り、そこから再びレスト位置に戻る変位)におけるAD値の増減特性は、基本的には次の通りである。すなわち、ハンマ2の往路行程(レストからエンドに向かう動き)では、センサ26から出力されるAD値は、最大値AD(MAX)から漸減変化し、ハンマ軌道の頂点(エンド位置相当)にて最小値AD(MIN)になり、ハンマの復路行程(エンドからレストに戻る動き)では、該最小値AD(MIN)から漸増変化してレスト位置にて最大値AD(MAX)に戻る。すなわち、AD値の変動が減少から増加に転じた時点において、ハンマ2の動作向きが反転した時点と特定できる。   In step S14, with reference to the table TABLE1 in FIG. 5A, it is checked whether or not the operation direction of the hammer 2 has been reversed from the sampling time point of 20 points to the sampling time point five points before the current time point. The point in time when the operation of the hammer 2 is reversed can be identified from the state of increase / decrease in the AD value based on the table TABLE1. Here, for convenience of explanation, the numerical value of the AD value when the hammer 2 is at the rest value is represented by the maximum value AD (MAX), and the AD value when the hammer 2 is at the end position is represented by the minimum value AD (MIN). Then, the increase / decrease characteristic of the AD value in one reciprocal displacement of the hammer 2 (that is, a displacement from the rest position to the end position and then back to the rest position) is basically as follows. That is, in the forward stroke of the hammer 2 (movement from the rest to the end), the AD value output from the sensor 26 changes gradually from the maximum value AD (MAX) and is minimum at the apex of the hammer trajectory (corresponding to the end position). It becomes the value AD (MIN), and in the return trip of the hammer (movement to return from the end to the rest), it gradually changes from the minimum value AD (MIN) and returns to the maximum value AD (MAX) at the rest position. That is, it can be identified as the time when the operation direction of the hammer 2 is reversed at the time when the fluctuation of the AD value starts from decreasing to increasing.

信号処理部27は、当該ルーチンの起動機会毎に、テーブルTABLE1を参照して、最新のサンプリング時点からみて過去5点前のサンプリング時点前後でのAD値変動を調べておりハンマ2の動作が反転する時点を探している。そして、そのハンマ2の動作向きが反転した時点が特定されると、該特定された時点をハンマ移動のピーク(つまり打弦点)に相当する基準時点として、該基準時点から前後5点のサンプリング時点でのデータセットを抽出し、図5(b)に示すようなデータテーブルTABLE2を作成するのである。ここで、前記基準時点は、テーブルTABLE1内の或るサンプリング時点(例えば最新のサンプリング時点)からみて過去5点前のサンプリング時点に相当するものであるから、テーブルTABLE2は、該或るサンプリング時点から過去11点のサンプリング時点におけるデータセットから構成される。   The signal processing unit 27 refers to the table TABLE1 at every activation opportunity of the routine, examines the AD value fluctuation before and after the last five sampling points from the latest sampling point, and the operation of the hammer 2 is reversed. Looking for a time to do. Then, when the time point when the operation direction of the hammer 2 is reversed is specified, the specified time point is set as a reference time point corresponding to the peak of hammer movement (that is, the stringing point), and sampling is performed at five points before and after the reference time point. A data set at the time is extracted, and a data table TABLE2 as shown in FIG. 5B is created. Here, the reference time point corresponds to a sampling time point five previous points from a certain sampling time point (for example, the latest sampling time point) in the table TABLE1, and therefore the table TABLE2 is determined from the certain sampling time point. It consists of data sets at the last 11 sampling points.

図5(b)に示すように、テーブルTABLE2には、前記11点のサンプリング時点でのデータセット(「AD(−5)、t(−5)」〜「AD(5)、t(5)」)と、各時点での速度情報(「v(−4)」〜「v(5)」)及び加速度情報(「a(−4)」〜「a(4)」)が記述される。すなわち、ハンマ2の移動のピーク(打弦点)に相当する基準時点(AD(0),t(0))と、この基準時点に対して時間的に前後5回分のサンプリング時点でにおける各データセットについて、夫々速度情報と加速度情報を求めている。各時点での速度情報は、例えば直線近似により、任意の2点間のデータ(例えば、あるサンプリング時点でのデータセットとその1つ前のサンプリング時点でのデータセット)の差分に基づき算出することができる。また、算出した速度情報を微分演算することで、加速度情報を求めることができる。なお、速度情報及び加速度情報の算出の具体的な方法については、上述の例に限らず、従来から知られるいかなる方法を適用しても差し支えない。なお、速度情報の算出は、任意の2点間のデータの差分に基づき比較的簡単に求めることができるので、テーブルTABLE2の作成に先立って、例えば前述のステップS20において当該テーブルTABLE1を作成する際に算出しておいてもよい。テーブルTABLE1を作成する際に各時点での速度情報を算出しておけば、ステップS25でのハンマ2の動作反転の判別に速度情報を利用することも可能である。   As shown in FIG. 5B, the table TABLE2 includes data sets (“AD (−5), t (−5)” to “AD (5), t (5)” at the 11 sampling points. ”), Speed information (“ v (−4) ”to“ v (5) ”) and acceleration information (“ a (−4) ”to“ a (4) ”) at each time point are described. That is, the reference time (AD (0), t (0)) corresponding to the movement peak (stringing point) of the hammer 2 and the respective data at the sampling time for five times before and after this reference time. Speed information and acceleration information are obtained for each set. The speed information at each time point is calculated based on the difference between data between any two points (for example, a data set at a certain sampling time point and a data set at the previous sampling time point) by linear approximation, for example. Can do. Further, acceleration information can be obtained by performing a differential operation on the calculated speed information. The specific method for calculating the speed information and the acceleration information is not limited to the above example, and any conventionally known method may be applied. Note that the speed information can be calculated relatively easily based on the difference in data between two arbitrary points. Therefore, prior to the creation of the table TABLE2, for example, when the table TABLE1 is created in step S20 described above. It may be calculated in advance. If the speed information at each time point is calculated when the table TABLE1 is created, the speed information can also be used for determining the operation reversal of the hammer 2 in step S25.

さて、ステップS14において、ハンマ2の動作向きの反転があれば(ステップS14のyes)、ステップS15において、後述の図6に示すサブルーチン「打弦判定処理」を実行する。一方、ハンマ2の動作向きの反転がなければ(ステップS14のno)、先頭のステップS10に戻り上述した処理を繰り返す。
そして、ステップS16では、前記第1の打弦ステートst1及び後述する「打弦判定処理」において設定する第1の打弦ステートst2に基づき、キーオン/オフ(発音指示)信号の生成処理等、その他処理を行う。キーオン/オフ信号は、キーナンバ及びベロシティデータ(打弦速度)を含む演奏データであって、例えばMIDI形式等のデータフォーマットで構成されてよい。
If the operation direction of the hammer 2 is reversed in step S14 (yes in step S14), a subroutine “string striking determination process” shown in FIG. 6 described later is executed in step S15. On the other hand, if the operation direction of the hammer 2 is not reversed (no in step S14), the process returns to the first step S10 and the above-described processing is repeated.
In step S16, based on the first stringing state st1 and the first stringing state st2 set in the “stringing determination process” to be described later, a key-on / off (sound generation instruction) signal generation process, etc. Process. The key on / off signal is performance data including a key number and velocity data (stringing speed), and may be configured in a data format such as a MIDI format.

次に、上記図4のステップS15における「打弦判定処理」の手順の一例を図6に示すフローチャートを参照して説明する。先ず、ステップS20において、前記図5(b)に示すテーブルTABLE2を参照して、ハンマ2によって実際に打弦が行われたかどうかの判定を行う。この打弦判定においては、該テーブルTABLE2における基準時点(AD(0),t(0))から、ハンマ2が弦に近接動作する際(打弦前)の速度情報及び加速度情報と、ハンマ2が弦から離間動作する際(打弦後)の速度情報及び加速度情報と、次に述べる判定条件に照合して、ハンマ2によって実際に打弦がなされたかどうかを事後的に判定する。   Next, an example of the “string striking determination process” in step S15 of FIG. 4 will be described with reference to the flowchart shown in FIG. First, in step S20, with reference to the table TABLE2 shown in FIG. 5B, it is determined whether or not the hammer 2 actually hits the string. In this string striking determination, speed information and acceleration information when the hammer 2 moves close to the string (before string striking) from the reference time point (AD (0), t (0)) in the table TABLE2, and the hammer 2 It is determined afterwards whether or not the hammer 2 is actually hit by checking the speed information and acceleration information when the keyboard is moved away from the string (after hitting the string) and the determination conditions described below.

ステップS20における打弦判定の条件は以下の通りである。
(1)確実に打弦したと判定する条件:基準時点(AD(0),t(0))での速度情報v(0)、及び、基準時点の直前の時点(AD(−1),t(−1))での速度情報v(−1)、及び、基準時点よりも2サンプリング時点前先行した時点(AD(−2),t(−2))での速度情報v(−2)を調べ、速度情報v(0)、v(−1)及びv(−2)の中に、所定速度(例えばv=0.3m/s)以上のものがあるかどうかを調べる。これにより、弦4に対して近接するハンマ2の打弦直前の運動状態の時間的推移を調べ、ハンマ2が打弦を行うのに十分な所定速度(例えばv=0.3m/s以上)で運動していたのであれば、確実に打弦有りと判断することができる。
(2)打弦した可能性が高いと判定する条件:基準時点(AD(0),t(0))での加速度情報の絶対値a(0)、並びに、該基準時点の前後3回分のサンプリング時点(「AD(−3),t(−3)」〜「AD(3),t(3)」)での各加速度情報の絶対値a(−3)〜絶対値a(3)を調べることで、打弦直前に弦4に対して接近するハンマ2の運動状態と、打弦後に弦4に対して離間するハンマ2の運動状態とを調べる。ここで、基準時点での加速度情報の絶対値a(0)が各加速度情報の絶対値a(−3)〜絶対値a(3)の中で最大であれば、当該ハンマ2の運動によって打弦が行われた可能性が高いと判断できる。
(3)非打弦の可能性が高いと判定する条件:前記(2)の判定条件に適合しないこと、つまり、各加速度情報の絶対値a(−3)〜絶対値a(3)の中に基準時点での加速度情報の絶対値a(0)よりも大きい値があること、及び/又は、複数の速度情報から得られる2次曲線に適合させる2次曲線適合法によって求めた基準時点における速度情報v(0)が「0」に近い値である場合は、当該ハンマ2の運動によっては、打弦が行われなかった可能性が高いと判断できる。
The conditions for the string hit determination in step S20 are as follows.
(1) Conditions for determining that a string has been struck reliably: velocity information v (0) at a reference time point (AD (0), t (0)) and a time point immediately before the reference time point (AD (−1), Speed information v (−1) at t (−1)) and speed information v (−2) at a time (AD (−2), t (−2)) that precedes the sampling time by two sampling times before the reference time ) And whether or not the speed information v (0), v (−1) and v (−2) is equal to or higher than a predetermined speed (for example, v = 0.3 m / s) is checked. Thereby, the temporal transition of the motion state immediately before the hammering of the hammer 2 adjacent to the string 4 is examined, and a predetermined speed sufficient for the hammer 2 to perform the stringing (for example, v = 0.3 m / s or more). If you were exercising in, you can be sure that there is a string.
(2) Conditions for determining that there is a high possibility that a string has been struck: absolute value a (0) of acceleration information at the reference time point (AD (0), t (0)), and three times before and after the reference time point The absolute value a (-3) to absolute value a (3) of each acceleration information at the sampling time ("AD (-3), t (-3)" to "AD (3), t (3)") By examining, the movement state of the hammer 2 approaching the string 4 immediately before striking and the movement state of the hammer 2 separating from the string 4 after striking are examined. Here, if the absolute value a (0) of the acceleration information at the reference time is the maximum among the absolute values a (−3) to the absolute value a (3) of each acceleration information, the hammer 2 is hit by the movement of the hammer 2. It can be determined that there is a high possibility that a string was performed.
(3) Conditions for determining that the possibility of non-stringing is high: not meeting the determination condition of (2), that is, among absolute values a (−3) to absolute values a (3) of each acceleration information Has a value larger than the absolute value a (0) of acceleration information at the reference time point and / or at the reference time point obtained by the quadratic curve fitting method for fitting to a quadratic curve obtained from a plurality of velocity information. When the speed information v (0) is a value close to “0”, it can be determined that there is a high possibility that the string has not been hit depending on the movement of the hammer 2.

ステップS21では、前記ステップS20での判定結果に応じて、当該ハンマ2の動作状態(打弦有無)を表す第2の打弦ステートst2を設定する。第2の打弦ステートst2は、単純に打弦有り(前記条件(1)又は(2)に適う場合)か、打弦無し(前期条件(3)の場合)かを表現するものであってよい。勿論前記条件(1)〜(3)の夫々に応じて、(1)確実に打弦、(2)打弦の可能性大及び(3)非打弦の可能性大、の3状態を表現してもよい。   In step S21, a second string-striking state st2 representing the operation state of the hammer 2 (string presence / absence) is set according to the determination result in step S20. The second string striking state st2 simply represents whether there is a string striking (when the condition (1) or (2) is satisfied) or without a string striking (in the case of the previous period condition (3)). Good. Of course, according to each of the above conditions (1) to (3), the three states of (1) surely stringing, (2) high possibility of stringing, and (3) high possibility of non-stringing are expressed. May be.

ステップS22では、前記図4のステップS13で設定した第1の打弦ステートst1と、前記第2の打弦ステートst2とを比較して、双方が示す状態(打弦有無)が一致するかどうかを調べる。不一致であった場合(ステップS22のyes)、処理をステップS23に進めて、図7を参照して説明するサブルーチン「補正処理」を行う。一方、第1のステートst1と第2のステートst2が一致していれば(ステップS22のno)、打弦判定ルーチンを抜けて、前記図4のハンマ速度を求めるルーチンに戻る。   In step S22, the first stringing state st1 set in step S13 of FIG. 4 is compared with the second stringing state st2, and the state (both string presence / absence) indicated by both matches. Check out. If they do not match (yes in step S22), the process proceeds to step S23, and a subroutine “correction process” described with reference to FIG. 7 is performed. On the other hand, if the first state st1 and the second state st2 match (no in step S22), the process returns to the routine for obtaining the hammer speed shown in FIG.

図7を参照して補正処理の手順の一例について説明する。
ステップS30において、両打弦ステートst1、st2の不一致が、以下に述べるいずれのケースに相当するかを判別し、各ケースに応じた補正処理を行う。
(ケース1)打弦ステートst1では非打弦と推定しながらも、打弦ステートst2では打弦有りの判定がなされた場合:打弦ステートst1では非打弦と推定しながらも、実際には打弦動作が行われているので、打弦ステートst1の根拠となる参照位置パラメータとして設定されたエンド値Eが実際のエンド位置よりも高く想定されてしまっていると考えられる。この場合、発音が有ってもキーオン信号が出ない、所謂「音抜け」の問題が生じる。ケース1の場合は、ステップS31において、テーブルTABLE2にて基準時点として設定された時点でのAD値「AD(0)」を新規エンド値Eとして設定して、この新規エンド値Eと現在のレスト値Rとの比を求めることで、当該ハンマ2のキャリブレーション比αを更新する。キャリブレーション比αを更新したら、新規キャリブレーション比から推定打弦位置の閾値(参照値m2)等の各種パラメータ各種パラメータ(各参照値など)を再算出する。
(ケース2)打弦ステートst1では打弦と推定しながらも、打弦ステートst2では打弦無しの判定がなされた場合:打弦ステートst1では打弦と推定しているものの、実際には打弦動作は行われていないので、参照位置パラメータとして設定されたエンド値Eが実際のエンド位置よりも低く想定されてしまっていると考えられる。この場合、発音しないにも関わらずキーオン信号を出してしまうというった、所謂「音鳴り」の問題が生じる。このケース2の場合は、ステップS32において、テーブルTABLE2にて基準時点として設定された時点でのAD値「AD(0)」に対して、所定数値加算した値を新規エンド値Eとして設定して、この新規エンド値Eと現在のレスト値Rとの比を求めることで、当該ハンマ2のキャリブレーション比を更新する。キャリブレーション比を更新したら、新規キャリブレーション比から推定打弦位置の閾値(参照値m2)等の各種パラメータ(各参照値等)を再算出する。そして、当該補正処理のルーチンを抜けて、前記図4に示すルーチンに戻る。
An example of the procedure of the correction process will be described with reference to FIG.
In step S30, it is determined which of the cases described below corresponds to the mismatch between the two stringing states st1 and st2, and correction processing corresponding to each case is performed.
(Case 1) When it is determined that there is no string striking in the string striking state st1, but it is determined that there is a string striking in the string striking state st2: Since the string-striking operation is performed, it is considered that the end value E set as the reference position parameter that is the basis of the string-striking state st1 is assumed to be higher than the actual end position. In this case, there is a problem of so-called “sound omission” in which a key-on signal is not output even if there is a sound. In the case 1, in step S31, the AD value “AD (0)” at the time set as the reference time in the table TABLE2 is set as the new end value E, and this new end value E and the current rest value are set. By obtaining the ratio with the value R, the calibration ratio α of the hammer 2 is updated. When the calibration ratio α is updated, various parameters (such as reference values) such as a threshold value (reference value m2) of the estimated stringing position are recalculated from the new calibration ratio.
(Case 2) When it is estimated that there is no stringing in the stringing state st2 while the stringing state st1 is estimated to be a stringed sound: Although it is estimated that the stringing state is in the stringing state st1, it is actually hitting Since the string operation is not performed, it is considered that the end value E set as the reference position parameter is assumed to be lower than the actual end position. In this case, there is a so-called “sounding” problem that a key-on signal is output even though the sound is not generated. In this case 2, in step S32, a value obtained by adding a predetermined numerical value to the AD value “AD (0)” set as the reference time in the table TABLE2 is set as the new end value E. The calibration ratio of the hammer 2 is updated by obtaining the ratio between the new end value E and the current rest value R. When the calibration ratio is updated, various parameters (each reference value and the like) such as the threshold value (reference value m2) of the estimated stringing position are recalculated from the new calibration ratio. Then, the process exits the correction process routine and returns to the routine shown in FIG.

上述の補正処理において、自動演奏ピアノでの演奏動作中にリアルタイムでセンサ26から出力されたAD値を基にキャリブレーション比を適切な値に補正することで、新規キャリブレーション比に基づき、打弦推定位置に相当する閾値(第2の参照値M2)をより適切な値に設定しなおすことができる。従って、例えば経時変化によりアクションメカニズムの相対位置が変動し、キャリブレーション比が変わってしまった場合にも、キャリブレーション比をリアルタイムで補正することができ、連続量センサ26からの出力値(位置情報)と推定打弦位置とに基づく打弦有無推定をより正確に行えるようになる。   In the correction process described above, the string is struck based on the new calibration ratio by correcting the calibration ratio to an appropriate value based on the AD value output from the sensor 26 in real time during the performance operation on the automatic piano. The threshold (second reference value M2) corresponding to the estimated position can be reset to a more appropriate value. Therefore, for example, even when the relative position of the action mechanism fluctuates due to changes over time and the calibration ratio changes, the calibration ratio can be corrected in real time, and the output value (position information) from the continuous quantity sensor 26 can be corrected. ) And the estimated string-striking position.

信号処理部27において実行されるハンマ速度を求めるルーチンにおける打弦判定構成や、速度算出構成等は上述の図4に示す例に限定されない。以下に、ハンマ速度を求めるルーチンの上記とは別の実施例について説明する。   The string striking determination configuration and the speed calculation configuration in the routine for obtaining the hammer speed executed in the signal processing unit 27 are not limited to the example shown in FIG. In the following, a different embodiment of the routine for determining the hammer speed will be described.

図8は、信号処理部27において実行するキーオン検出処理(ハンマの速度を求めるルーチン(図4)の別の実施例)の手順の一例を示すフローチャートである。なお、この処理は、88個の各鍵(各ハンマ)について個別に行うものであるが、ここでは或る1つの鍵(ハンマ2)についての処理のみ説明し、これをもって他を代表するものとする。   FIG. 8 is a flowchart showing an example of the procedure of the key-on detection process (another embodiment of the routine for determining the hammer speed (FIG. 4)) executed in the signal processing unit 27. This processing is performed individually for each of the 88 keys (each hammer), but here, only the processing for one key (hammer 2) will be described, and this represents the others. To do.

このルーチンは、例えば、演奏者による演奏操作時の演奏の記録処理(演奏データの生成処理)等における主要なルーチンの1つとして実行されるもので、所定の起動周期(例えば0.36ms毎:2.78kHz)で起動する。すなわち、ステップS50において、該所定の起動周期(例えば0.36ms)毎に、センサ26の出力(AD値)を取り込む。ステップS51では、前記取り込んだAD値に「オフセット値」を加算する処理を行う。前記オフセット値は、センサ26の出力特性におけるオフセット(ここで、オフセットは、出力(AD値)=0の時にフォトダイオードによって取り出される電圧に相当する)であり、センサ26の出力に該オフセット値を加算することでセンサ26の出力特性を修正する。オフセット値は、各センサ毎に固有の値を予め求めたものを、ROM21、RAM22など適宜の記憶装置に記憶させておいてよい。オフセット値によってセンサ26の出力特性を修正することで、ハンマ2の変位に応じた物理量をより確実に検出できる。   This routine is executed as one of main routines in a performance recording process (performance data generation process) at the time of a performance operation by the performer, for example, and is a predetermined start cycle (for example, every 0.36 ms: 2.78 kHz). That is, in step S50, the output (AD value) of the sensor 26 is captured every predetermined activation period (for example, 0.36 ms). In step S51, a process of adding an “offset value” to the acquired AD value is performed. The offset value is an offset in the output characteristics of the sensor 26 (here, the offset corresponds to a voltage taken out by a photodiode when the output (AD value) = 0), and the offset value is added to the output of the sensor 26. The output characteristic of the sensor 26 is corrected by adding. As the offset value, a value that is obtained in advance for each sensor may be stored in an appropriate storage device such as the ROM 21 or the RAM 22. By correcting the output characteristics of the sensor 26 with the offset value, the physical quantity corresponding to the displacement of the hammer 2 can be detected more reliably.

ステップS52では、前述図4のステップS11と同様に、取り込んだAD値と参照値として記憶されたレスト値Rを比較して、ハンマ動作(つまり鍵操作)の有無の判定を行う。ハンマ動作(鍵操作)がなければ(ステップS52のno)、処理は当該ルーチンの先頭に戻る。ステップS53では、現在のタイミングで取り込んだAD値と第1の参照位置M1を表す閾値(参照値m1)を比較し、該AD値が参照値m1より大きい(すなわち、ハンマ2の動作位置が参照位置M1に達していない)場合(ステップS53のno)は、処理をリターンする。一方、現在のタイミングで取り込んだAD値が参照値m1より小さい(すなわち、ハンマ2の動作位置が参照位置M1を越えた)場合(ステップS53のyes)、ステップS54において、該現在タイミングのAD値が前回取り込んだAD値から変化したかどうかを調べて、AD値が前回の値から変化していれば(ステップS54のyes)、ステップS55において、該現在タイミングで取り込んだAD値と、その時の時刻情報を、図5(a)に示すデータテーブルTABLE1にバッファする。上述の図4に示す「ハンマ速度を求めるルーチン」では、テーブルTABLE1は、ある時点で取り込んだAD値から過去20回のサンプリング時点のAD値及びそれらの時刻情報TIMEからなる20個のデータセットを取り込んで構成されるものとしたが、当該別の実施例では、テーブルTABLE1は、AD値が参照値m1以下(ハンマの動作位置が参照位置M1に到達)であり、且つ、前回の値から変化した値についてデータのバッファを行うことで作成される。なお、現在のタイミングで取り込んだAD値が前回のサンプリングタイミングで取り込んだAD値から変化していない場合(ステップS54のno)は、ステップS55におけるテーブルTABLE1へのAD値の取り込み処理は行わない。   In step S52, as in step S11 of FIG. 4 described above, the acquired AD value is compared with the rest value R stored as the reference value, and the presence / absence of a hammer operation (that is, key operation) is determined. If there is no hammer operation (key operation) (no in step S52), the process returns to the top of the routine. In step S53, the AD value captured at the current timing is compared with a threshold value (reference value m1) representing the first reference position M1, and the AD value is larger than the reference value m1 (that is, the operation position of the hammer 2 is referred to). If it has not reached the position M1 (no in step S53), the process returns. On the other hand, when the AD value taken in at the current timing is smaller than the reference value m1 (that is, the operation position of the hammer 2 has exceeded the reference position M1) (yes in step S53), the AD value at the current timing in step S54. If the AD value has changed from the previous value (yes in step S54), in step S55, the AD value acquired at the current timing and the current value The time information is buffered in the data table TABLE1 shown in FIG. In the “hammer speed calculation routine” shown in FIG. 4 described above, the table TABLE1 includes 20 data sets including AD values at the past 20 sampling times and their time information TIME from AD values taken at a certain time point. In this embodiment, the table TABLE1 has an AD value equal to or less than the reference value m1 (the hammer operating position reaches the reference position M1), and changes from the previous value. It is created by buffering the data for the specified value. If the AD value taken in at the current timing has not changed from the AD value taken in at the previous sampling timing (no in step S54), the AD value is not taken into the table TABLE1 in step S55.

ステップS56、S57では、現在のタイミングで取り込んだAD値が参照値m1を超えた時点からタイマカウンタCNTのカウントを開始させる処理を行う。すなわち、AD値が参照値m1より小さく(ハンマの動作位置が参照位置M1を越え)、且つ、タイマカウンタCNTがカウント中ではない場合(ステップS56のno)、ステップS57においてタイマカウンタCNTのカウントを開始する。タイマタウンタCNTは、後述する速度算出のための判断条件として参照するパラメータの一つである。   In steps S56 and S57, processing for starting the count of the timer counter CNT is performed from the time when the AD value taken in at the current timing exceeds the reference value m1. That is, if the AD value is smaller than the reference value m1 (the hammer operating position exceeds the reference position M1) and the timer counter CNT is not counting (no in step S56), the timer counter CNT is counted in step S57. Start. The timer town CNT is one of parameters that are referred to as a determination condition for speed calculation described later.

ステップS58では、現在のタイミングで取り込んだAD値と第2の参照位置M2(エンド位置から0・5mm下の打弦直前位置)を表す閾値(参照値m2)を比較して、ハンマのストローク位置が第2の参照位置M2に達したかどうかを判断する。現在のタイミングで取り込んだAD値が参照値m2を超えていれば(ステップS58のyes)、ステップS59において、推定打弦有無を表す前記打弦ステートst1を推定打弦有りに設定する。なお、前述のように打弦ステートst1は通常は打弦無しの状態にセットされているものである。ステップS60では、キーオン信号出力有無を表示するフラグ「キーオンフラグFKON」を調べて、キーオン信号の出力が既に出ているかどうかを調べる。キーオンフラグFKONは、FKON=1でキーオン信号の出力有り、FKON=0でキーオン信号の出力指示なし、を示す2状態フラグである。キーオン信号が未だ出ていなければ(ステップS60のyes:FKON≠1)、ステップS61以下のハンマ速度を求める処理を行う。   In step S58, the AD value fetched at the current timing is compared with a threshold value (reference value m2) representing the second reference position M2 (position just before stringing 0.5 mm below the end position), and the stroke position of the hammer is compared. Determines whether the second reference position M2 has been reached. If the AD value captured at the current timing exceeds the reference value m2 (yes in step S58), in step S59, the string-striking state st1 indicating the presence or absence of the estimated string-striking is set to the presence of the estimated string-striking. As described above, the string-striking state st1 is normally set to a state without string-striking. In step S60, a flag “key-on flag FKON” indicating whether or not a key-on signal is output is checked to check whether or not a key-on signal has already been output. The key-on flag FKON is a two-state flag indicating that a key-on signal is output when FKON = 1, and that no key-on signal is output when FKON = 0. If the key-on signal has not been issued yet (yes in step S60: FKON ≠ 1), the processing for obtaining the hammer speed in step S61 and thereafter is performed.

ステップS61〜S66では、第1の参照位置M1から第2の参照位置M2の区間を移動するハンマ2の動きに基づきハンマ2の速度情報(ベロシティデータ:V値)を算出する処理を行う。
ステップS61では、タイマカウンタCNTのカウント値が10ms以上か以下を調べる。前述の通りタイマカウンタCNTは、現在AD値が参照値m1を超えた時点からカウント開始するものであるから、ステップS61でタイマカウンタCNTのカウント値が10ms以上か以下を調べることで、ハンマ2の位置が第1の参照位置M1から第2の参照位置M2の区間を移動するのにかかった時間が10ms以上か以下が分かる。カウンタCNTが10ms以下の場合はステップS62に進み、カウンタCNTが10ms以上の場合はステップS63に進む。
In steps S61 to S66, processing for calculating speed information (velocity data: V value) of the hammer 2 is performed based on the movement of the hammer 2 moving in the section from the first reference position M1 to the second reference position M2.
In step S61, it is checked whether the count value of the timer counter CNT is 10 ms or more. As described above, the timer counter CNT starts counting from the time when the current AD value exceeds the reference value m1, and therefore, by checking whether the count value of the timer counter CNT is 10 ms or more in step S61, It can be seen that the time taken for the position to move from the first reference position M1 to the second reference position M2 is 10 ms or more. If the counter CNT is 10 ms or less, the process proceeds to step S62, and if the counter CNT is 10 ms or more, the process proceeds to step S63.

カウンタCNTが10ms以下の場合はステップS62において、参照位置M1から第2の参照位置M2の区間に含まれるAD値及び時刻情報を、当該区間のハンマ軌道を得るためのサンプリングポイントとして抽出する。また、カウンタCNTが10ms以上の場合はステップS63において、第2の参照位置M2を越えた時点から過去10msの時間区間に含まれるAD値及び時刻情報を、当該時間区間のハンマ軌道を得るためのサンプリングポイントとして抽出する。そして、ステップS64では、上記ステップS62又は63において抽出した複数個のサンプリングポイントを、例えば多項式適合法等により補間し、これを時間間隔Δtで等サンプリング化することで、A0〜A4の5点の等サンプリングポイントを抽出する。前記A0〜A4の5点の等サンプリングポイントが、速度計算に使用するサンプリングポイントである。このように、この実施例では、所定のハンマストローク区間(M1〜M2)のデータ或いは所定の時間区間(M2から過去10ms)のデータを利用してハンマ2の速度情報(ベロシティデータ:V値)を求めている。
図9(a)、(b)は、ステップS62〜S64において行われるハンマ2の速度の算出用の等サンプリングポイントの抽出の概念図である。図において、横軸に時間tを取り、ハンマ軌道を得るためのサンプリングポイントとして抽出されたAD値を黒丸で示し、等サンプリングポイントを星印で示す。(a)はステップS62に相当し、(b)はステップS63に相当する。(a)に示すように、ステップS62においては、参照位置M1から第2の参照位置M2の区間に含まれるAD値及び時刻情報によって表現されたハンマ2の軌道を、時間間隔Δtで4区間に区切り、A0〜A4の5点の等サンプリング点を、速度計算に使用するポイントとして抽出する。一方、(b)に示すように、ステップS63においては、第2の参照位置M2を越えた時点から過去10msの区間に含まれるAD値及び時刻情報によって表現されたハンマ2の軌道を、等時間間隔Δtで4区間に区切り、A0〜A4の5点の等サンプリング点が、速度計算に使用するポイントとして抽出される。
When the counter CNT is 10 ms or less, in step S62, the AD value and time information included in the section from the reference position M1 to the second reference position M2 are extracted as sampling points for obtaining the hammer trajectory in the section. If the counter CNT is 10 ms or more, in step S63, the AD value and time information included in the time interval of the past 10 ms from the time when the second reference position M2 is exceeded are obtained to obtain the hammer trajectory of the time interval. Extract as sampling points. In step S64, the plurality of sampling points extracted in step S62 or 63 are interpolated by, for example, a polynomial fitting method and the like, and are equally sampled at a time interval Δt, thereby obtaining five points A0 to A4. Extract equal sampling points. The five equal sampling points A0 to A4 are sampling points used for speed calculation. As described above, in this embodiment, the speed information of the hammer 2 (velocity data: V value) using data of a predetermined hammer stroke section (M1 to M2) or data of a predetermined time section (M2 from the past 10 ms). Seeking.
FIGS. 9A and 9B are conceptual diagrams of extraction of equal sampling points for calculating the speed of the hammer 2 performed in steps S62 to S64. In the figure, time t is plotted on the horizontal axis, AD values extracted as sampling points for obtaining hammer trajectories are indicated by black circles, and equal sampling points are indicated by asterisks. (A) corresponds to step S62, and (b) corresponds to step S63. As shown in (a), in step S62, the trajectory of the hammer 2 expressed by the AD value and time information included in the section from the reference position M1 to the second reference position M2 is divided into four sections at the time interval Δt. The five equal sampling points A0 to A4 are extracted as points used for speed calculation. On the other hand, as shown in (b), in step S63, the trajectory of the hammer 2 expressed by the AD value and time information included in the section of the past 10 ms from the time when the second reference position M2 is exceeded Dividing into four sections at intervals Δt, five equal sampling points A0 to A4 are extracted as points used for speed calculation.

ステップS65では、前記抽出した5点の等サンプリング点A0〜A4と、時間間隔データΔtにより図9(c)に示すテーブルTABLE1−2を作成する。(c)に示すようにテーブルTABLE1−2は、等サンプリング化された5つのAD値AD[0]〜AD[4]とその時間間隔データΔtによって構成される。ステップS66では、前記テーブルTABLE1−2に基づきハンマ2の速度情報(ベロシティデータ:V値)を算出する。テーブルTABLE1−2に基づきハンマ2の速度を算出する方法は、例えば、下記関数式(1)を用いる方法がある。
式(1)(2*AD[0]+AD[1]−AD[3]−2*AD[4])/10*1/Δt*α
なお、上記式においてαはAD値を物理量に換算するため(単位合わせ)の重み付け係数である。
In step S65, a table TABLE1-2 shown in FIG. 9C is created from the extracted five equal sampling points A0 to A4 and the time interval data Δt. As shown in (c), the table TABLE1-2 is composed of five equally sampled AD values AD [0] to AD [4] and their time interval data Δt. In step S66, the speed information (velocity data: V value) of the hammer 2 is calculated based on the table TABLE1-2. As a method for calculating the speed of the hammer 2 based on the table TABLE1-2, for example, there is a method using the following function formula (1).
Formula (1) (2 * AD [0] + AD [1] −AD [3] −2 * AD [4]) / 10 * 1 / Δt * α
In the above formula, α is a weighting coefficient for converting the AD value into a physical quantity (unit alignment).

ステップS67では、前記ステップS66において算出したV値を所定の速度閾値Vthと比較することで、速度条件に基づく打弦判定(キーオン判定)を行う。前記速度閾値Vthは、例えばVth=0.4m/s等である。所定の速度閾値Vthとの比較で非打弦の判定がされれば(ステップS67のno)、ここではキーオンの出力を行わずに、ステップS70以下の処理に進む。
該所定の速度閾値Vthとの比較により打弦有りと判定されれば(ステップS67のyes)、ステップS68において、キーオン信号KON及び前記算出したV値を出力し、ステップS69において、キーオンフラグFKONをFKON=1にセットする。
In step S67, the string value determination (key-on determination) based on the speed condition is performed by comparing the V value calculated in step S66 with a predetermined speed threshold value Vth . The speed threshold V th is, for example, V th = 0.4 m / s. If it is determined that the string is not hit by comparison with the predetermined speed threshold value Vth (step S67: no), the process proceeds to step S70 and subsequent steps without outputting key-on.
If it is determined that a string is hit by comparison with the predetermined speed threshold value V th (yes in step S67), the key-on signal KON and the calculated V value are output in step S68. In step S69, the key-on flag FKON is output. Is set to FKON = 1.

ステップS70では、前述した図4のステップS14と同様に、図5(a)のテーブルTABLE1を参照して現時点からみて過去5点前のサンプリング時点においてハンマ2の動作向きが往路(打弦)行程から復路(離弦)行程に反転したかどうかを調べる。ハンマ2の動作向きの反転があれば(ステップS69のyes)、ステップS71において、サブルーチン「打弦判定処理」を実行する。打弦判定処理の手順の一例を図10に示す。   In step S70, as in step S14 in FIG. 4 described above, the table 2 in FIG. Investigate whether it has reversed to the return path (breaking string). If there is a reversal of the operation direction of the hammer 2 (yes in step S69), a subroutine “string striking determination process” is executed in step S71. An example of the procedure of the string hit determination process is shown in FIG.

図10において、ステップS80では、図5(b)に示すテーブルTABLE2に基づき打弦判定を行う。テーブルTABLE2の作成及び該テーブルTABLE2に基づく打弦判定の詳細は前述図6に説明したものと同様であってよく、ここではその説明を省略する。ステップS81において、前記ステップS80での打弦判定結果に基づき打弦ステートst2を1又は0に設定する。なお、打弦ステートst2は前述と同様にst2=1で打弦。st2=0で非打弦を表すものとする。   In FIG. 10, in step S80, string hitting determination is performed based on the table TABLE2 shown in FIG. Details of the creation of the table TABLE2 and the string striking determination based on the table TABLE2 may be the same as those described with reference to FIG. 6, and the description thereof is omitted here. In step S81, the string striking state st2 is set to 1 or 0 based on the string striking determination result in step S80. Note that the string striking state st2 is stringed with st2 = 1 as described above. It is assumed that st2 = 0 represents a non-struck string.

ステップS82において、打弦ステートst2、V値(図8のステップS66で算出したもの)及びキーオンフラグFKONを調べ、夫々st2=1(打弦有り)でありながら、V<Vth(V値が速度閾値Vthを越えていない)及びキーオンフラグFKON=0(キーオン出力せず)であるかどうかを調べる。これにより、上記ステップS67の速度閾値の条件では非打弦と判定された場合であっても、テーブルTABLE2に基づく打弦有りの判定が出た場合(ステップS82のyes)は、以下の処理によりキーオンKONを出力するのである。すなわち、ステップS83において、前記のテーブルTABLE1−2を作成して5点の等サンプリング点A0〜A4のAD値(AD[0]〜AD[4])を抽出し、ステップS84において、前記ステップS66と同様に、該抽出したAD[0]〜AD[4]に基づきハンマ速度(V値)を算出する。そして、ステップS85において、キーオン信号KON及び前記算出したV値を出力し、キーオンフラグFKONをFKON=1にセットする。 In step S82, the string-striking state st2, the V value (calculated in step S66 in FIG. 8), and the key-on flag FKON are checked, and V <V th (V value is set while st2 = 1 is present). It is checked whether the speed threshold value Vth is not exceeded and the key-on flag FKON = 0 (no key-on output). As a result, even if it is determined that the string is not struck under the condition of the speed threshold value in step S67, if it is determined that the string is struck based on the table TABLE2 (yes in step S82), the following processing is performed. Key-on KON is output. That is, in step S83, the table TABLE1-2 is created and AD values (AD [0] to AD [4]) of five equal sampling points A0 to A4 are extracted. In step S84, the step S66 is extracted. Similarly, the hammer speed (V value) is calculated based on the extracted AD [0] to AD [4]. In step S85, the key-on signal KON and the calculated V value are output, and the key-on flag FKON is set to FKON = 1.

ステップS86では、前記図8のステップS59で設定した第1の打弦ステートst1と、前記ステップS81において設定した第2の打弦ステートst2とを比較して、双方が示す状態(打弦有無)が一致するかどうかを調べる。不一致であった場合(ステップS86のyes)、ステップS87において「補正処理」を行う。補正処理は前述の図7を参照して説明した処理と同様である。第1のステートst1と第2のステートst2が一致していれば(ステップS86のno)、打弦判定ルーチンを抜けて、前記図8のキーオン検出処理に戻る。   In step S86, the first string striking state st1 set in step S59 of FIG. 8 is compared with the second string striking state st2 set in step S81. Find out if they match. If they do not match (yes in step S86), “correction processing” is performed in step S87. The correction process is the same as the process described with reference to FIG. If the first state st1 and the second state st2 match (no in step S86), the process exits the string striking determination routine and returns to the key-on detection process of FIG.

さて、図8に戻ると、ステップS72において、前記ステップS59で設定した第1の打弦ステートst1と、前記ステップS81において設定した第2の打弦ステートst2とを調べて、第1の打弦ステートst1が非打弦(st1=0)且つ第2の打弦ステートst2が打弦(st1=0)であれば(ステップS72のyes)、キーオンKONの出力処理を行う。すなわち、ステップS73において、上記ステップS61〜S66と同様な処理によりハンマ速度(V値)を求め、ステップS74においてキーオン信号KON及び前記算出したV値を出力し、ステップS75においてキーオンフラグFKONをFKON=1にセットする。
なお、当該キーオン検出処理は、上記の処理の後、その他処理(ステップS76)を適宜実行し、リターンする。
Returning to FIG. 8, in step S72, the first string-striking state st1 set in step S59 and the second string-striking state st2 set in step S81 are checked, and the first string-striated string is checked. If the state st1 is not struck (st1 = 0) and the second stringing state st2 is struck (st1 = 0) (yes in step S72), the key-on KON output process is performed. That is, in step S73, the hammer speed (V value) is obtained by the same processing as in steps S61 to S66, the key-on signal KON and the calculated V value are output in step S74, and the key-on flag FKON is set to FKON = in step S75. Set to 1.
In the key-on detection process, after the above process, other processes (step S76) are appropriately executed, and the process returns.

以上の手順により、当該キーオン検出処理(ハンマ速度を求めるルーチン)では、打弦前のハンマの近接動作と、打弦後のハンマの離間動作とを考慮して、より正確なキーオンの検出(=MIDIデータの出力)が可能となる。   According to the above procedure, in the key-on detection process (a routine for obtaining the hammer speed), more accurate key-on detection (=) in consideration of the approaching action of the hammer before hitting and the separating action of the hammer after hitting the string. MIDI data can be output).

以上説明した通り、図8〜図10に示す実施例によれば、打弦前の往路行程でのハンマの速度(V値)を利用したキーオンの出力と、打弦後の復路行程でのハンマ速度(V値)を利用したキーオンの出力とを行うことで、可及的リアルタイム性を確保した判断で、且つ、より信頼性の高い発音指示(キーオン)信号の出力が行えるようになるという優れた効果を奏する。   As described above, according to the embodiment shown in FIGS. 8 to 10, the output of the key-on using the hammer speed (V value) in the forward stroke before stringing and the hammer in the return stroke after stringing. By performing the key-on output using the speed (V value), it is possible to output a more reliable sound generation instruction (key-on) signal with a determination that ensures real-time performance as much as possible. Has an effect.

なお、上述の実施例では、所定の動作位置(第1の参照位置M1、第2の参照位置M2)に基づく演奏状態の判別は、ハンマ2の動作位置について行う例を示したが、これに限らず、鍵1その他演奏操作にリンクする部材に、動作検出用のセンサを設け、それらの部材において、適宜の動作位置を閾値として定め、それにより演奏状態の判別を行ってもよい。鍵1その他演奏操作にリンクする部材の動作位置に基づく演奏状態の判別の場合であっても、演奏状態の判別は、結果としてハンマが所定の位置に達したかどうかに関わる。 また、上記実施例では、センサ26を、ハンマのストローク位置を検出する位置センサとして構成したが、これに限らず、センサ26を速度センサ或るは加速度センサとしてもよい。また、位置情報、速度情報及び加速度情報の各情報を夫々独立したセンサによって別々に検出するように構成してもよい。   In the above-described embodiment, the performance state determination based on the predetermined operation position (the first reference position M1 and the second reference position M2) has been described with respect to the operation position of the hammer 2. Not only the key 1 and other members linked to the performance operation may be provided with motion detection sensors, and appropriate motion positions may be set as threshold values in these members to determine the performance state. Even in the case of determining the performance state based on the operation position of the key 1 or other member linked to the performance operation, the determination of the performance state is related to whether or not the hammer has reached a predetermined position as a result. Moreover, in the said Example, although the sensor 26 was comprised as a position sensor which detects the stroke position of a hammer, it is not restricted to this, The sensor 26 is good also as a speed sensor or an acceleration sensor. Further, the position information, the speed information, and the acceleration information may be separately detected by independent sensors.

また、上記の実施例では、ハンマ速度を求めるルーチンなどの種々の信号処理(つまり信号処理部27の動作)は、コンピュータが実行するソフトウェアプログラムによって構成及び実施されるものとしたが、これに限らず、信号処理部27を構成する各モジュールが担う各種演算処理を実行する専用のハードウェア的信号処理装置を具備し、該各モジュールの各種機能をハードウェア装置として構成及び実現することも可能である。また、上記実施例では、自動演奏ピアノとして、自動演奏機能及び演奏操作記録機能を有するアコースティックピアノについて説明したが、ここでアコースティックピアノは、グランドピアノ或いはアップライトピアノの何れであっても差し支えない。また、この発明は、自動演奏ピアノに限らず、消音ピアノに適用することもできる。また、アコースティックピアノに限らず、電子ピアノ等のその他各種鍵盤楽器にも適用可能である。   In the above embodiment, various signal processing such as a routine for obtaining the hammer speed (that is, the operation of the signal processing unit 27) is configured and implemented by a software program executed by a computer. It is also possible to provide a dedicated hardware signal processing device that executes various arithmetic processing performed by each module constituting the signal processing unit 27, and to configure and implement various functions of each module as a hardware device. is there. In the above embodiment, an acoustic piano having an automatic performance function and a performance operation recording function has been described as the automatic performance piano. However, the acoustic piano may be either a grand piano or an upright piano. Moreover, this invention can be applied not only to an automatic performance piano but also to a mute piano. Further, the present invention is not limited to an acoustic piano, and can be applied to other various keyboard instruments such as an electronic piano.

この発明の一実施例に係る自動演奏ピアノの全体構成を示す図。The figure which shows the whole structure of the automatic performance piano which concerns on one Example of this invention. 同実施例に係る自動演奏ピアノの電気的ハードウェア構成を示すブロック図。The block diagram which shows the electric hardware constitutions of the automatic performance piano which concerns on the Example. 同実施例に係る自動演奏ピアノにおいて電源投入時に実行される処理例を示すフロー。The flow which shows the process example performed at the time of power activation in the automatic performance piano which concerns on the same Example. 同実施例に係る自動演奏ピアノにおける主な動作として実行されるハンマ速度を求めるルーチンの一例を示すフロー。The flow which shows an example of the routine which calculates | requires the hammer speed performed as main operation | movement in the automatic performance piano which concerns on the Example. (a)はハンマ動作の時間的推移を表すデータテーブルTABLE1の一例を示す図であり、(b)は前記テーブルTABLE1に基づき作成される打弦直前のハンマの運動状態の時間的推移を表すデータテーブルTABLE2の一例を示す図。(A) is a figure which shows an example of the data table TABLE1 showing the time transition of hammer operation | movement, (b) is the data showing the time transition of the exercise | movement state of the hammer just before the stringing produced based on the said table TABLE1. The figure which shows an example of table TABLE2. 同実施例に係る打弦判定処理の一例を示すフローチャート。The flowchart which shows an example of the string striking determination process which concerns on the same Example. 同実施例に係る打弦判定のための補正処理例を示すフローチャート。The flowchart which shows the example of a correction process for the string hit | judging determination which concerns on the Example. この発明の上記とは別の実施例に係るハンマ速度を求めるルーチンであって、キーオンの出力判定の別構成例を示すフローチャート。FIG. 7 is a flowchart showing another example of the configuration of key-on output determination, which is a routine for obtaining a hammer speed according to another embodiment of the present invention. (a)、(b)は、同別の実施例に係るハンマ速度の算出用の等サンプリングポイントの抽出の概念図であり、(c)は別の実施例に係るテーブルTABLE1−2の構成例を示す図。(A), (b) is a conceptual diagram of extraction of equal sampling points for calculation of hammer speed according to another embodiment, and (c) is a configuration example of a table TABLE1-2 according to another embodiment. FIG. 同別の実施例に係る打弦判定処理の一例を示すフローチャート。The flowchart which shows an example of the string striking determination process which concerns on another Example.

符号の説明Explanation of symbols

1 鍵、2 ハンマ、3 アクションメカニズム、4 弦、5 電磁ソレノイド、6 ダンパ、7 バックチェック、10 再生前処理部、11 モーションコントローラ、12 サーボコントローラ、13 電子楽音発生部、20 CPU、21 ROM、22 RAM、23 記憶装置、24 I/O、25 PWM発生器、26 センサ、27 信号処理部、28 算出部、30 処理部 1 key, 2 hammer, 3 action mechanism, 4 strings, 5 electromagnetic solenoid, 6 damper, 7 back check, 10 playback pre-processing unit, 11 motion controller, 12 servo controller, 13 electronic musical sound generating unit, 20 CPU, 21 ROM, 22 RAM, 23 storage device, 24 I / O, 25 PWM generator, 26 sensor, 27 signal processing unit, 28 calculation unit, 30 processing unit

Claims (8)

演奏操作子と、
前記演奏操作子の動作に応じて往復変位し、該変位に応じて他の部材と当接する変位部材と、
前記変位部材の動作を連続量で検出する検出手段と、
前記検出手段から出力された複数時点のデータに基づき、前記変位部材が前記他の部材に最接近した基準時点を特定し、且つ、前記基準時点における変位部材の動作、該基準時点前における変位部材が他の部材に近接する変位部材の動作、及び、該基準時点後における変位部材が他の部材から離間する変位部材の動作に基づいて前記変位部材が前記他の部材当接したかどうかを判定する判定手段と
を備える鍵盤楽器。
A performance controller,
A displacement member that reciprocates in accordance with the operation of the performance operator and abuts against other members in accordance with the displacement;
Detecting means for detecting the movement of the displacement member in a continuous amount;
Based on the data at a plurality of time points output from the detection means, the reference time point at which the displacement member is closest to the other member is specified, and the operation of the displacement member at the reference time point, the displacement member before the reference time point There operation of the displacement member in proximity to the other member, and, whether the displacement member on the basis of the operation of the displacement member which displacement member after the reference time is separated from the other member is the contact to the other member A keyboard instrument comprising a determination means for determining.
前記検出手段から出力されたデータが所定の基準値を超えたときに、前記変位部材が前記他の部材に当接したものと推定する推定手段と、
前記判定手段による判定結果と前記推定手段による推定結果が一致しないときに、前記所定の基準値を補正する補正手段
更に備えることを特徴とする請求項1に記載の鍵盤楽器。
And estimating means for outputting data from said detecting means when it exceeds a predetermined reference value, it shall be presumed that the displacement member is in contact with the other member,
The keyboard instrument according to claim 1, further comprising a correction unit that corrects the predetermined reference value when a determination result by the determination unit and an estimation result by the estimation unit do not match .
前記検出手段の検出出力は、前記変位部材の動きを示す第1種の物理量を示す第1物理情報であり、
前記判定手段は、前記検出手段から出力された複数時点の第1物理情報に基づいて該変位部材の動きを示す第2種の物理量を示す第2物理情報を生成し、該生成した第2物理情報に基づいて変位部材が他の部材当接したかどうかの判定を行うものである請求項1に記載の鍵盤楽器。
The detection output of the detection means is first physical information indicating a first type physical quantity indicating the movement of the displacement member,
The determination means generates second physical information indicating a second type of physical quantity indicating the movement of the displacement member based on the first physical information at a plurality of time points output from the detection means, and generates the generated second physical information keyboard instrument according to claim 1 displacement member in which it is determined whether the contact with another member on the basis of the information.
前記検出手段は前記変位部材の位置情報を連続的に検出する連続量センサであって、
前記第1物理情報は該センサから出力される位置情報であり、
前記第2物理情報は前記位置情報に基づいて生成された速度情報及び加速度情報の少なくとも一方であり、
前記判定手段は、前記算出された速度情報について、前記基準時点のデータと、該基準時点前の複数時点におけるデータを参照して、前記変位部材が前記他の部材に当接したかどうかを判定し、前記算出された加速度情報について、少なくとも前記基準時点のデータと該基準時点以後の複数時点におけるデータを参照して、前記変位部材が前記他の部材当接したかどうかを判定するものであることを特徴とする請求項に記載の鍵盤楽器。
The detection means is a continuous quantity sensor that continuously detects position information of the displacement member,
The first physical information is position information output from the sensor,
The second physical information is at least one of speed information and acceleration information generated based on the position information,
The determination means determines whether the displacement member is in contact with the other member by referring to the data at the reference time point and the data at a plurality of time points before the reference time point with respect to the calculated speed information. and, the acceleration information the calculated, intended to determine whether referring data at multiple time points of at least the reference time points of the data and the reference point after the displacement member has contact to the other member The keyboard instrument according to claim 3 , wherein the keyboard instrument is provided.
前記判定手段は、前記検出手段から出力された複数時点の第1物理情報を用いた近似式に基づき第2種の物理量を示す第2物理情報を算出し、該算出した第2物理情報に基づき変位部材が他の部材に当接したかどうかの判定を行うもの請求項3又は4に記載の鍵盤楽器。 The determination unit calculates second physical information indicating a second type of physical quantity based on an approximate expression using the first physical information at a plurality of points in time output from the detection unit, and based on the calculated second physical information , keyboard instrument according to claim 3 or 4 as a determination displacement member is whether contact with another member. 演奏操作子と、
前記演奏操作子の動作に応じて往復変位することで、発音部による発音を制御する変位部材と、
少なくとも前記変位部材の動きを検出する検出手段と、
前記検出手段の出力に基づき往路変位する変位部材の位置が所定位置に達したかどうかを判断する位置判断手段と、
前記検出手段の出力に基づき往路変位する変位部材の速度情報を出力する速度情報出力手段と、
前記速度情報出力手段が出力した速度情報が所定の速度を越えたかどうかを判別する速度判別手段と、
前記位置判断手段の判断結果並びに前記速度判別手段の判別結果に基づき発音指示情報を生成する発音指示情報生成手段であって、変位部材の位置が所定位置に達し、且つ、速度情報が所定の速度を越えた場合には、少なくとも前記変位部材の往路変位時の速度情報に基づき発音指示情報を生成し、変位部材の位置が所定位置に達していない場合又は速度情報が所定の速度を越えていない場合には、少なくとも往路から復路へ反転する時点の変位部材の動きと復路変位する変位部材の動きに基づき発音有無を判断し、該発音有無判定の結果に応じて発音指示情報を生成する発音指示情報生成手段
を具えた楽器。
A performance controller,
A displacement member that controls the sound generation by the sound generation unit by reciprocating displacement according to the operation of the performance operator,
Detection means for detecting at least the movement of the displacement member;
Position determining means for determining whether or not the position of the displacement member that is displaced forward based on the output of the detecting means has reached a predetermined position;
Speed information output means for outputting speed information of a displacement member that is displaced forward based on the output of the detection means;
Speed determining means for determining whether or not the speed information output by the speed information output means exceeds a predetermined speed;
A sound generation instruction information generating unit that generates sound generation instruction information based on the determination result of the position determination unit and the determination result of the speed determination unit, wherein the position of the displacement member reaches a predetermined position, and the speed information is a predetermined speed. Is generated based on at least the speed information when the displacement member is displaced forward, and the direction of the displacement member does not reach the predetermined position or the speed information does not exceed the predetermined speed. In this case, at least a sound generation instruction is determined based on the result of the sounding presence / absence determination, based on the result of the sounding presence / absence determination Musical instrument with information generation means.
演奏操作子の動作に応じて往復変位する変位部材の動作に基づき発音指示情報を生成するための方法であって、
少なくとも前記変位部材の動きを検出する検出ステップと、
前記検出ステップにおける検出結果に基づき往路変位する変位部材の位置が所定位置に達しかどうかを判断する位置判断ステップと、
前記検出ステップにおける検出結果に基づき往路変位する変位部材の速度情報を出力する速度出力ステップと、
前記速度出力ステップにおいて出力された速度情報が所定の速度を越えているかどうかを判別する速度判別ステップと、
前記位置判断ステップの判断結果並びに前記速度判別ステップの判別結果に基づき発音指示情報を生成するステップであって、変位部材の位置が所定位置に達し、且つ、速度情報が所定の速度を越えた場合には、少なくとも前記変位部材の往路変位時の速度情報に基づき発音指示情報を生成し、変位部材の位置が所定位置に達していない場合又は速度情報が所定の速度を越えていない場合には、少なくとも往路から復路へ反転する時点の変位部材の動きと復路変位する変位部材の動きに基づき発音有無を判断し、該発音有無判定の結果に応じて発音指示情報を生成する発音指示情報生成ステップ
を含む方法。
A method for generating pronunciation instruction information based on the movement of a displacement member that reciprocally moves according to the movement of a performance operator,
A detection step of detecting at least the movement of the displacement member;
A position determination step that the position of the displacement member for forward displacement on the basis of the detection result of the detecting step to determine if it has reached the predetermined position,
A speed output step for outputting speed information of a displacement member that is displaced forward based on a detection result in the detection step;
A speed determination step of the speed information outputted at said velocity output step to determine whether it exceeds a predetermined speed,
A step of generating sound generation instruction information based on the determination result of the position determination step and the determination result of the speed determination step, when the position of the displacement member reaches a predetermined position and the speed information exceeds a predetermined speed The sound generation instruction information is generated based on at least the speed information at the time of forward displacement of the displacement member, and when the position of the displacement member has not reached the predetermined position or when the speed information does not exceed the predetermined speed, A sound generation instruction information generation step of determining the presence or absence of sound generation based on at least the movement of the displacement member at the time of reversing from the forward path to the return path and the movement of the displacement member moving in the backward path and generating sound generation instruction information according to the result of the sound generation presence / absence determination Including methods.
演奏操作子の動作に応じて往復変位する変位部材の動作に基づき発音指示情報を生成する処理をコンピュータに実行させるプログラムであって、
少なくとも前記変位部材の動きを検出する検出ステップと、
前記検出ステップにおける検出結果に基づき往路変位する変位部材の位置が所定位置に達しかどうかを判断する位置判断ステップと、
前記検出ステップにおける検出結果に基づき往路変位する変位部材の速度情報を出力する速度出力ステップと、
前記速度出力ステップにおいて出力された速度情報が所定の速度を越えているかどうかを判別する速度判別ステップと、
前記位置判断ステップの判断結果並びに前記速度判別ステップの判別結果に基づき発音指示情報を生成するステップであって、変位部材の位置が所定位置に達し、且つ、速度情報が所定の速度を越えた場合には、少なくとも前記変位部材の往路変位時の速度情報に基づき発音指示情報を生成し、変位部材の位置が所定位置に達していない場合又は速度情報が所定の速度を越えていない場合には、少なくとも往路から復路へ反転する時点の変位部材の動きと復路変位する変位部材の動きに基づき発音有無を判断し、該発音有無判定の結果に応じて発音指示情報を生成する発音指示情報生成ステップ
をコンピュータに実行させるプログラム。
A program for causing a computer to execute a process of generating sound generation instruction information based on an operation of a displacement member that reciprocally displaces according to the operation of a performance operator,
A detection step of detecting at least the movement of the displacement member;
A position determination step that the position of the displacement member for forward displacement on the basis of the detection result of the detecting step to determine if it has reached the predetermined position,
A speed output step for outputting speed information of a displacement member that is displaced forward based on a detection result in the detection step;
A speed determination step of the speed information outputted at said velocity output step to determine whether it exceeds a predetermined speed,
A step of generating sound generation instruction information based on the determination result of the position determination step and the determination result of the speed determination step, when the position of the displacement member reaches a predetermined position and the speed information exceeds a predetermined speed The sound generation instruction information is generated based on at least the speed information at the time of forward displacement of the displacement member, and when the position of the displacement member has not reached the predetermined position or when the speed information does not exceed the predetermined speed, A sound generation instruction information generation step of determining the presence or absence of sound generation based on at least the movement of the displacement member at the time of reversing from the forward path to the return path and the movement of the displacement member moving in the backward path and generating sound generation instruction information according to the result of the sound generation presence / absence determination A program to be executed by a computer.
JP2004273629A 2003-12-22 2004-09-21 A method for generating a musical instrument and pronunciation instruction information and a program for executing the method on a computer. Expired - Fee Related JP4626241B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004273629A JP4626241B2 (en) 2003-12-24 2004-09-21 A method for generating a musical instrument and pronunciation instruction information and a program for executing the method on a computer.
US11/019,985 US7285718B2 (en) 2003-12-22 2004-12-21 Keyboard musical instrument and other-type musical instrument, and method for generating tone-generation instructing information
EP04030531A EP1555651A1 (en) 2003-12-22 2004-12-22 Musical instrument and method for generating tone-generation instructing information

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003428461 2003-12-24
JP2004273629A JP4626241B2 (en) 2003-12-24 2004-09-21 A method for generating a musical instrument and pronunciation instruction information and a program for executing the method on a computer.

Publications (2)

Publication Number Publication Date
JP2005208569A JP2005208569A (en) 2005-08-04
JP4626241B2 true JP4626241B2 (en) 2011-02-02

Family

ID=34914048

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004273629A Expired - Fee Related JP4626241B2 (en) 2003-12-22 2004-09-21 A method for generating a musical instrument and pronunciation instruction information and a program for executing the method on a computer.

Country Status (1)

Country Link
JP (1) JP4626241B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4711179B2 (en) * 2005-08-19 2011-06-29 ヤマハ株式会社 Electronic keyboard instruments and programs
JP5053684B2 (en) * 2007-04-04 2012-10-17 ローランド株式会社 Keyboard device
DE112017008063B4 (en) * 2017-11-07 2024-05-08 Yamaha Corporation SOUND SOURCE, MUSICAL KEYBOARD INSTRUMENT AND PROGRAM

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002156967A (en) * 2000-11-17 2002-05-31 Yamaha Corp Hammer detecting device
JP2002351469A (en) * 2001-05-24 2002-12-06 Kawai Musical Instr Mfg Co Ltd Key operation detector

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2536708B2 (en) * 1992-07-17 1996-09-18 ヤマハ株式会社 Electronic musical instrument
JP3541411B2 (en) * 1993-12-17 2004-07-14 ヤマハ株式会社 Automatic piano
JP3551507B2 (en) * 1994-12-01 2004-08-11 ヤマハ株式会社 Automatic playing piano
JP2699966B2 (en) * 1996-05-24 1998-01-19 ヤマハ株式会社 Key press information output device
JP3890649B2 (en) * 1997-02-21 2007-03-07 ヤマハ株式会社 Automatic piano performance data converter

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002156967A (en) * 2000-11-17 2002-05-31 Yamaha Corp Hammer detecting device
JP2002351469A (en) * 2001-05-24 2002-12-06 Kawai Musical Instr Mfg Co Ltd Key operation detector

Also Published As

Publication number Publication date
JP2005208569A (en) 2005-08-04

Similar Documents

Publication Publication Date Title
JP4222280B2 (en) A performance information output device, a musical instrument, a method for outputting performance information, and a program for executing the method on a computer.
JP4483636B2 (en) Keyboard instrument
JP4479554B2 (en) Keyboard instrument
JP3900712B2 (en) Keyboard instrument sensor calibration apparatus and sensor calibration method
KR100716099B1 (en) Transducer free from aged deterioration, musical instrument using the same and method used therein
JP5028849B2 (en) Method and apparatus for identifying half point of pedal of keyboard instrument
JP4967406B2 (en) Keyboard instrument
US6407326B1 (en) Electronic musical instrument using trailing tone different from leading tone
JP5162938B2 (en) Musical sound generator and keyboard instrument
EP1555651A1 (en) Musical instrument and method for generating tone-generation instructing information
JP4193752B2 (en) Automatic piano
JP4687474B2 (en) Keyboard instrument
US5652399A (en) Automatic player piano and estimator for acceleration of depressed key incorporated in the automatic player piano
JP5754421B2 (en) Keyboard instrument
JPH05313655A (en) Musical performance recording device of keyboard musical instrument and musical performance reproducing device therefor
JP2014112221A (en) Drive control device for percussion member in sound production mechanism
JP4626241B2 (en) A method for generating a musical instrument and pronunciation instruction information and a program for executing the method on a computer.
US8859878B2 (en) Method and device for identifying half point of pedal on keyboard musical instrument
JP2006003444A (en) Piano for automatic performance
JP3586882B2 (en) Automatic performance system for keyboard instruments
JP4218620B2 (en) Keyboard instrument
JP4228913B2 (en) Musical instrument
JP5657868B2 (en) Musical sound control method and musical sound control device
JP3821116B2 (en) Automatic piano
JP4110691B2 (en) Keyboard instrument sensor data conversion apparatus and sensor data conversion method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070720

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091016

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101012

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101025

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131119

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4626241

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees