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 PDFInfo
- 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
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)離鍵タイミングなどである。
上記特許文献1に代表される従来の装置構成によると、前記ピアノ演奏に関る種々の情報を生成するに際して、制御系は、ハンマ動作の開始や打弦動作の有無の判定等のハンマ動作の判定処理により、ハンマの動作状態を判断している。そのハンマ動作状態の判断は、ハンマセンサの出力と所定の閾値を比較することによって行われていた。すなわち、センサの出力と所定の閾値を比較することで、センサ出力とハンマの動作位置の対応付けを行い、ハンマの動作位置からハンマ動作状態を判断するのである。しかしながら、従来の技術では、打弦タイミング等を求める際の打弦判定は、専ら、ハンマが弦に接近する際の動き、すなわち、打弦前のハンマの動きのみに基づき判定していたので、打弦/非打弦の区別が不確実となる恐れがあった。従って、該打弦判定に基づく発音指示(キーオン)の発生もまた不確かになることがあった。また、連続量センサとしてよく用いられる光学式センサには、センサの使用中に光量が下がるなど、入出力特性に経時変化が生じる場合がある。しかし、従来の装置では、そのようなセンサの入出力特性の経時変化(例えば、光量の低下など)に対する対応が不十分であった。
According to the conventional apparatus configuration represented by the above-mentioned
この発明は上述の点に鑑みてなされたもので、自動演奏ピアノ等において、演奏操作子の動作に応じて往復変位する変位部材の動作に基づき発音が行われる楽器において、該変位部材の動作に基づく打弦判定や、発音指示情報の発生/非発生をより正確に行えるようにすることを目的とする。 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
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
図1において、符号26は、ハンマ2の変位に応じた検出信号を連続量で検出するセンサである。センサ26は、例えば、ハンマ2の連続的な位置情報を出力可能な光学式の位置センサを適用してよい。ハンマ2の連続位置を検出するのに好適な光学式センサの構成例について簡単に説明すると、光学式センサは、例えば、LEDと光ファイバで繋がる発光側センサヘッドとフォトダイオードと光ファイバで繋がる受光側センサヘッドとを有し、該LEDの光が発光側センサヘッドから照射されて、フォトダイオードと光ファイバで繋がる受光側センサヘッドにおいて受光され、フォトダイオードによって受光量に応じた出力電圧を取り出すことができる。該受光側センサヘッドにおいて受光する光量が、ハンマ2の変位に対応して変化するよう構成することで、該ハンマ2のストローク位置に応じた出力電圧を当該センサの検出信号として得ることができる。
In FIG. 1,
当該センサ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
図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
ここで、図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
The
再生前処理部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
Further, as described above, not only the keying operation of the
上記構成からなる自動演奏ピアノにおける演奏の記録処理(演奏データの生成処理)と再生処理の動作手順の概略について簡単に説明する。操作者は、例えばコントローラに備わる録音指示スイッチの操作等によって演奏の記録処理の開始を指示できる。信号処理部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
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
信号処理部27では、センサ26から出力されたAD値(数値)をハンマの実際の動作位置に対応付けて認識する必要がある。AD値とハンマの動作位置とを対応付ける方法として、例えば特開2000−155579号公報に記載されているような「キャリブレーション比」を利用する方法が知られている。キャリブレーション比は、エンド位置のAD値をレスト位置のAD値に対する比率を表現したものである。ここで「キャリブレーション比」の設定処理について簡単に説明する。キャリブレーション比の設定処理は、例えば工場出荷時等に実行される処理である。図示しないコントローラからの指示等に応じて、キャリブレーション比の設定処理が開始する。該設定処理においては、レスト位置のAD値とエンド位置のAD値を実測する。そして、前記実測したレスト位置のAD値に対するエンド位置のAD値の比率をキャリブレーション比として、ROM21或いはRAM22等適宜のメモリ(例えばフラッシュメモリ等の不揮発性メモリ)内に記録する。なお、キャリブレーション比の算出は88個の各鍵毎に行われるものとする。
The
この実施例に係る自動演奏ピアノにおける通常の動作時(演奏データの録音や、再生など)の各種信号処理について説明する。
当該自動演奏ピアノにおいて通常の動作時(例えば、演奏データの生成処理や、演奏データの再生処理)には、信号処理部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
電源投入時、信号処理部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
When power is turned on in the automatic performance piano in step S1, the current position of the
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
図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
ステップ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
ステップ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
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
信号処理部27は、当該ルーチンの起動機会毎に、テーブルTABLE1を参照して、最新のサンプリング時点からみて過去5点前のサンプリング時点前後でのAD値変動を調べておりハンマ2の動作が反転する時点を探している。そして、そのハンマ2の動作向きが反転した時点が特定されると、該特定された時点をハンマ移動のピーク(つまり打弦点)に相当する基準時点として、該基準時点から前後5点のサンプリング時点でのデータセットを抽出し、図5(b)に示すようなデータテーブルTABLE2を作成するのである。ここで、前記基準時点は、テーブルTABLE1内の或るサンプリング時点(例えば最新のサンプリング時点)からみて過去5点前のサンプリング時点に相当するものであるから、テーブルTABLE2は、該或るサンプリング時点から過去11点のサンプリング時点におけるデータセットから構成される。
The
図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
さて、ステップS14において、ハンマ2の動作向きの反転があれば(ステップS14のyes)、ステップS15において、後述の図6に示すサブルーチン「打弦判定処理」を実行する。一方、ハンマ2の動作向きの反転がなければ(ステップS14のno)、先頭のステップS10に戻り上述した処理を繰り返す。
そして、ステップS16では、前記第1の打弦ステートst1及び後述する「打弦判定処理」において設定する第1の打弦ステートst2に基づき、キーオン/オフ(発音指示)信号の生成処理等、その他処理を行う。キーオン/オフ信号は、キーナンバ及びベロシティデータ(打弦速度)を含む演奏データであって、例えばMIDI形式等のデータフォーマットで構成されてよい。
If the operation direction of the
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
ステップ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
(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
(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
ステップ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 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
上述の補正処理において、自動演奏ピアノでの演奏動作中にリアルタイムでセンサ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
信号処理部27において実行されるハンマ速度を求めるルーチンにおける打弦判定構成や、速度算出構成等は上述の図4に示す例に限定されない。以下に、ハンマ速度を求めるルーチンの上記とは別の実施例について説明する。
The string striking determination configuration and the speed calculation configuration in the routine for obtaining the hammer speed executed in the
図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
このルーチンは、例えば、演奏者による演奏操作時の演奏の記録処理(演奏データの生成処理)等における主要なルーチンの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
ステップ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
ステップ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
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
ステップ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
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
また、上記の実施例では、ハンマ速度を求めるルーチンなどの種々の信号処理(つまり信号処理部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
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物理情報に基づいて該変位部材の動きを示す第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物理情報は前記位置情報に基づいて生成された速度情報及び加速度情報の少なくとも一方であり、
前記判定手段は、前記算出された速度情報について、前記基準時点のデータと、該基準時点前の複数時点におけるデータを参照して、前記変位部材が前記他の部材に当接したかどうかを判定し、前記算出された加速度情報について、少なくとも前記基準時点のデータと該基準時点以後の複数時点におけるデータを参照して、前記変位部材が前記他の部材に当接したかどうかを判定するものであることを特徴とする請求項3に記載の鍵盤楽器。 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.
前記演奏操作子の動作に応じて往復変位することで、発音部による発音を制御する変位部材と、
少なくとも前記変位部材の動きを検出する検出手段と、
前記検出手段の出力に基づき往路変位する変位部材の位置が所定位置に達したかどうかを判断する位置判断手段と、
前記検出手段の出力に基づき往路変位する変位部材の速度情報を出力する速度情報出力手段と、
前記速度情報出力手段が出力した速度情報が所定の速度を越えたかどうかを判別する速度判別手段と、
前記位置判断手段の判断結果並びに前記速度判別手段の判別結果に基づき発音指示情報を生成する発音指示情報生成手段であって、変位部材の位置が所定位置に達し、且つ、速度情報が所定の速度を越えた場合には、少なくとも前記変位部材の往路変位時の速度情報に基づき発音指示情報を生成し、変位部材の位置が所定位置に達していない場合又は速度情報が所定の速度を越えていない場合には、少なくとも往路から復路へ反転する時点の変位部材の動きと復路変位する変位部材の動きに基づき発音有無を判断し、該発音有無判定の結果に応じて発音指示情報を生成する発音指示情報生成手段
を具えた楽器。 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.
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)
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 |
WO2019092775A1 (en) * | 2017-11-07 | 2019-05-16 | ヤマハ株式会社 | Sound source, keyboard instrument, and program |
Citations (2)
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)
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 |
-
2004
- 2004-09-21 JP JP2004273629A patent/JP4626241B2/en not_active Expired - Fee Related
Patent Citations (2)
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 | |
JP5754421B2 (en) | Keyboard instrument | |
JP4687474B2 (en) | Keyboard instrument | |
US5652399A (en) | Automatic player piano and estimator for acceleration of depressed key incorporated in the automatic player piano | |
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 | |
JP3596015B2 (en) | Automatic piano | |
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 |
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 |