JP3588872B2 - 自動ピアノ - Google Patents
自動ピアノ Download PDFInfo
- Publication number
- JP3588872B2 JP3588872B2 JP24032495A JP24032495A JP3588872B2 JP 3588872 B2 JP3588872 B2 JP 3588872B2 JP 24032495 A JP24032495 A JP 24032495A JP 24032495 A JP24032495 A JP 24032495A JP 3588872 B2 JP3588872 B2 JP 3588872B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- trajectory
- release
- time
- slow
- 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
- 230000000994 depressogenic effect Effects 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000000881 depressing effect Effects 0.000 claims description 7
- 238000000034 method Methods 0.000 description 36
- 230000014509 gene expression Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 20
- 230000033001 locomotion Effects 0.000 description 16
- 230000001133 acceleration Effects 0.000 description 12
- 238000007781 pre-processing Methods 0.000 description 9
- 230000008859 change Effects 0.000 description 8
- 238000002474 experimental method Methods 0.000 description 4
- 230000033764 rhythmic process Effects 0.000 description 4
- 238000010079 rubber tapping Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 238000012887 quadratic function Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10F—AUTOMATIC MUSICAL INSTRUMENTS
- G10F1/00—Automatic musical instruments
- G10F1/02—Pianofortes with keyboard
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10C—PIANOS, HARPSICHORDS, SPINETS OR SIMILAR STRINGED MUSICAL INSTRUMENTS WITH ONE OR MORE KEYBOARDS
- G10C1/00—General design of pianos, harpsichords, spinets or similar stringed musical instruments with one or more keyboards
- G10C1/02—General design of pianos, harpsichords, spinets or similar stringed musical instruments with one or more keyboards of upright pianos
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10C—PIANOS, HARPSICHORDS, SPINETS OR SIMILAR STRINGED MUSICAL INSTRUMENTS WITH ONE OR MORE KEYBOARDS
- G10C3/00—Details or accessories
- G10C3/12—Keyboards; Keys
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10C—PIANOS, HARPSICHORDS, SPINETS OR SIMILAR STRINGED MUSICAL INSTRUMENTS WITH ONE OR MORE KEYBOARDS
- G10C3/00—Details or accessories
- G10C3/16—Actions
- G10C3/161—Actions specially adapted for upright pianos
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
Description
【発明が属する技術分野】
この発明は、自動的に鍵盤を駆動して演奏を行う自動ピアノに関する。
【0002】
【従来の技術】
自動ピアノにおいては、ソレノイドを励磁して鍵を駆動すると、これに応じてハンマが回転して打弦がおこなわれる。そして、ハンマによる打弦の強弱は、鍵の駆動速度に対応し、鍵の駆動速度はソレノイドへの供給電流に対応する。したがって、ソレノイドへの給電量を制御することにより、打弦の強弱、すなわち、発生楽音の大きさを制御することができる。
【0003】
また、自動ピアノにおいては、演奏情報を記録する際に、打弦直前のハンマの速度を検出し、これを打弦強度を示すデータ(以下、打弦強度データという)として記録するとともに、ハンマが打弦位置を通過する時刻を打弦時刻データとして記録する。なお、打弦時刻データは、一般的に一つ前の音との間隔を示す時間データ(相対時間データ)として記録されるが、演奏開始時からの絶対時刻が記録されることもある。
そして、記録した演奏情報を再生する際には、演奏情報中の打弦強度データに応じた電流をソレノイドに供給する。また、ソレノイドへの給電量制御は、一般にはパルス幅変調(PWM)によって行われる。
【0004】
この場合、鍵を駆動し始めてからハンマが実際に打弦するまでの時間差を見込んで、打弦時刻データが示す打弦タイミングより少し前にソレノイドへの給電を行う。また、強音と弱音では、押鍵開始から打弦までの時間が異なるので、打弦強度データに応じて、ソレノイドへの給電タイミングを調整するようにした自動ピアノも開発されている。
また、離鍵の場合は、鍵の離鍵タイミングをフォトセンサによって検出して記録し、再生時には離鍵タイミングに応じた時刻にソレノイドを非励磁にするという制御を行っていた。
【0005】
ところで、ピアノの演奏においては、いわゆるハーフストロークと言われる奏法がなされることがあり、この場合には、完全に押鍵される(鍵をエンド位置まで押し切る)前に離鍵が開始されたり、あるいは、離鍵の途中から次の押鍵操作に入る。
【0006】
しかしながら、従来の自動ピアノにおいては、押鍵タイミングの少し前にソレノイドを励磁し、離鍵タイミングの少し前にソレノイドを非励磁にするという単純な制御を行っており、押鍵や離鍵が途中までしか行われないハーフストロークの再現については、何等考慮されていなかった。このため、ハーフストロークで演奏される部分については、押鍵や離鍵にタイミングずれが生じ、特に、ハーフストロークの連打においては、再現が不能になるという問題が生じた。
【0007】
そこで、本出願人は、先に、押離鍵の開始時刻、完了時刻あるいは押離鍵の軌道の交差からハーフストロークか否かを判定し、ハーフストロークと判定した場合は、押鍵の途中から離鍵処理へ移行し、または離鍵の途中から押鍵処理に移行することにより、ハーフストロークを忠実に再現することができる自動ピアノを提案した(特願平5ー344242号)。
【0008】
【発明が解決しようとする課題】
ところが、上記自動ピアノにおいては、ハーフストロークで演奏する場合に押鍵の途中から離鍵処理へ移行し、または離鍵の途中から押鍵処理に移行するため、鍵の動作速度が急激に変化する。このため、特に、連打を行った場合に以下のような挙動を示す心配があった。
▲1▼離鍵から押鍵に移行するときに、鍵が跳ね返されるような状態となることがある。このような場合には、鍵に勢いが生じて音量が打弦強度データが示す値よりも大きくなる。
▲2▼離鍵から押鍵に移行するときに、鍵に生じた慣性のために押鍵が適切になされないことがあり、このような場合には、一部の打弦に抜けが生じたり、打弦のタイミングがずれてリズムが乱れたりする。
▲3▼エンド位置近くで連打を行うことにより、ダンパによる止音を弱くして発音の響きを大きくする演奏手法が用いられることがある。ところが、上記した技術では、離鍵の際に鍵が戻りすぎて止音が意図したよりも強くなる傾向がある。
▲4▼鍵の動作がシャープなため見た目が不自然となる。
以上は、連打による演奏を行った場合に予想される現象であるが、レスト位置からエンド位置の間で押離鍵を行うフルストロークの演奏を行った場合においても、鍵の動作開始が急激に行われるためその動作にゆらぎが生じることがあり、このような場合には打鍵や止音に乱れが生じる。
この発明は、上述した事情に鑑みてなされたもので、ハーフストロークによる演奏を行った場合に鍵に自然な動作を与えることができ、しかも、連打を円滑に行うことができる自動ピアノを提供することを目的としている。また、本発明は、フルストロークによる演奏を行った場合の鍵の動作のゆらぎを抑制することができる自動ピアノを提供することも目的としている。
【0009】
【課題を解決するための手段】
上述した課題を解決するために、請求項1に記載の発明は、発音時刻情報および発音強度情報に基づいて鍵の押鍵軌道を算出するとともに、離鍵時刻情報および離鍵速度情報に基づいて鍵の離鍵軌道を算出する軌道算出手段と、指令値に応じて鍵を駆動する駆動手段と、指令値を前記駆動手段に供給する指令値出力手段と、押鍵軌道が次の離鍵の離鍵軌道に交差するか否か、または離鍵軌道が次の押鍵の押鍵軌道に交差するか否かを判定する交差判定手段と、押鍵軌道と離鍵軌道との交差点に達する前に押鍵軌道から離鍵軌道へ至るか、または離鍵軌道から押鍵軌道へ至る短縮軌道を算出する短縮軌道算出手段とを具備し、前記指令値出力手段は、押鍵軌道と離鍵軌道とが交差すると前記交差判定手段によって判定されたときには、前記短縮軌道算出手段が算出した短縮軌道に対応する指令値を前記駆動手段に供給し、押鍵軌道と離鍵軌道とが交差しないと前記交差判定手段によって判定されたときには、前記軌道算出手段が算出した押鍵軌道および離鍵軌道に対応する指令値を前記駆動手段に供給することを特徴としている。
【0010】
請求項2に記載の発明においては、請求項1において、前記交差判定手段は、押鍵軌道と離鍵軌道とが交差しないと判定したときに、鍵を押し切ったときのエンド位置または鍵を押していないときのレスト位置に短縮軌道が達するか否かを判定し、前記指令値出力手段は、前記交差判定手段により、押鍵軌道と離鍵軌道とが交差すると判定されたときと、短縮軌道がエンド位置またはレスト位置に達しないと判定されたときには、短縮軌道に対応する指令値を前記駆動手段に供給し、そうでないときには前記軌道算出手段が算出した押鍵軌道および離鍵軌道に対応する指令値を前記駆動手段に供給することを特徴としている。
【0011】
請求項1に記載の発明においては、押鍵軌道および離鍵軌道が交差すると判定されたときは、軌道の交差点を通らずに短縮軌道に沿って鍵を駆動し、押鍵軌道から離鍵軌道あるいは離鍵軌道から押鍵軌道へ移行する。このため、鍵の速度が急激に変化することがなく、鍵の動作が滑らかになって違和感のない自然な動作を得ることができる。また、鍵の速度が急激に変化しないため、連打時に押鍵時の音量が大きくなったり、打弦の抜けやリズムの狂いが生じる等の問題は解消され、連打を円滑に行うことができる。
【0012】
請求項2に記載の発明においては、押鍵軌道および離鍵軌道が交差しないと判定された場合であっても、押鍵スローダウン軌道と離鍵スローアップ軌道とが交差すると判定されたとき、または離鍵スローダウン軌道と押鍵スローアップ軌道とが交差すると判定されたときは短縮軌道を算出して鍵を駆動する。よって、押鍵の次に離鍵を行った場合には離鍵開始後に鍵の速度が徐々に変化する。また、離鍵の次に押鍵を行った場合も押鍵開始後に鍵の速度が徐々に変化する。このように、記録時にはフルストロークの演奏による押鍵または離鍵を行った場合であっても、再生時には短縮軌道によって離鍵開始時または押鍵開始時に鍵の速度が徐々に変化するから、鍵の動作のゆらぎの発生を少なくすることができる。
【0013】
【発明の実施の形態】
A:第1の実施の形態
(イ)構成
図1は、この発明の第1の実施の形態の構成を示すブロック図である。図において1は鍵であり、3は鍵1の運動をハンマ2に伝達するアクションである。4は、ハンマ2によって打弦される弦であり、5は鍵1を駆動するソレノイドである。ソレノイド5には、プランジャの位置を検出するセンサが設けられている。そして、ソレノイド5のプランジャが突出すると、鍵1がバランスピンPを中心に回動し、その演奏者側が下がり(以下、この状態を押鍵状態という)、また、これに連動してアクション3が作動し、ダンパー6が弦4から離れるとともに、ハンマ2が回動して打弦する。一方、演奏者が弾く場合は、指で鍵1を押下することにより、上述と同様の作用が生じて打弦が行われる。
【0014】
また、図において、SE1,SE2は、打弦速度を計測するためのセンサであり、演奏記録部30は、ハンマ2がこれらのセンサSE1,SE2の間を通過する時間を計測することにより、ハンマ2の速度、すなわち、打弦速度を計測し、また、ハンマ2がセンサSE1を通過する時刻を打弦時刻として検出する。なお、ハンマ2が実際に打弦する時刻にセンサSE1で検出される打弦時刻をより近づけるために、センサSE1はハンマ2の打弦位置に近接した位置に設けられている。
次に、図に示す26は、鍵1の下面に取り付けられた板状のシャッタである。25は、上下方向に所定距離隔て設けられる2組のフォトセンサによって構成されているキーセンサであり、鍵1が押下され始めると、まず上方のフォトセンサが遮光され、次いで、下方のフォトセンサが遮光される。離鍵の際には、下方のフォトセンサが受光状態になり、ついで、上方のセンサが受光状態になる。
【0015】
キーセンサ25の出力信号は、演奏記録部30に供給され、演奏記録部30は、キーセンサ25内の下方のフォトセンサが受光状態になってから上方のフォトセンサが受光状態になるまでの時間を測定し、ここから、離鍵速度を検出する。また、演奏記録部30は上方のフォトセンサが受光状態になった時刻を離鍵時刻として検出する。
【0016】
すなわち、演奏記録部30は、演奏が開始されると、センサSE1,SE2の出力信号に基づいて、打弦時刻および打弦速度を検出し、かつ、キーセンサ25の出力信号に基づいて離鍵時刻および離鍵速度を検出する。以上のようにして検出された各情報は、記録後処理部31に供給される。
【0017】
記録後処理部31においては、演奏記録部30から供給される各種情報に対し、正規化処理を施した後に、外部の記録媒体に演奏情報として供給する。ここで、正規化処理とは、ピアノの個体差を吸収するための処理である。すなわち、打弦速度、打弦時刻、離鍵速度、離鍵時刻等は、各ピアノにおけるセンサの位置や、構造上の違い、あるいは機械的誤差によって固有の傾向を持つため、標準となるピアノを想定し、そのピアノにおける打弦速度、打弦時刻等に変換するための処理である。
【0018】
10は再生前処理部であり、記録メディアあるいはリアルタイム通信装置から供給される演奏データに基づいて、鍵の軌道データを作成するとともに軌道データを用いて鍵の位置データ(t,X)を作成する回路であり、後述する制御原理に基づいて動作する。
再生前処理部10で作成された位置データ(t,X)は、モーションコントローラ11に供給される。モーションコントローラ11は、供給された位置データ(t,X)に基づいて、各時刻における鍵1の位置に対応した位置制御データ(X)を作成し、サーボコントローラ12に供給する。
サーボコントローラ12は、位置制御データ(X)に応じた励磁電流をソレノイド5に供給するとともに、ソレノイド5から供給されるフィードバック信号と制御データ(X)を比較し、両者が一致するようにサーボ制御を行う。
【0019】
(ロ)軌道作成の原理
次に、本実施形態における再生前処理部10における軌道作成の原理について説明する。
▲1▼リファレンスポイント
鍵1を押し下げる速度に応じてハンマ2の打弦速度が決まるが、鍵1の速度は初め遅くて次第に早くなる場合や、その逆の場合もあり、さらには、ほとんど一定の速さで押される場合もある。この場合、鍵1のレスト位置からエンド位置に至るまでの速度と、ハンマ2の打弦速度とがどのような関係になっているのかが重要である。なぜならば、その関係を考察せず、打弦強度データに応じて鍵速度(初期速度など)を制御しても、記録時の打弦速度を再生することはできないからである。
【0020】
実験によれば、鍵1のある位置における速度とハンマ2の打弦速度とが極めて良い対応を示すことが判った。この位置は、ピアノの個体差にもよるが、概ねレスト位置から9.0mm〜9.5mm程度押し下げた位置であった。したがって、鍵1がこの位置に達するときの速度を、打弦強度データに応じて制御すれば、記録時の打弦速度を忠実に再現することができる。なお、以下においては、上述の所定位置をリファレンスポイントXrという。
【0021】
▲2▼リファレンス速度
次に、上述のようにして求めたリファレンスポイントXrにおいて、どのような鍵速度にすれば、打弦速度を忠実に再現することができるかを設定する必要がある。なお、以下においては、リファレンスポイントXrにおける鍵速度をリファレンス速度Vrという。
【0022】
ここで、図2はリファレンスポイントXrを9.5mmに設定したときの鍵速度と打弦速度の関係を示す図である。図中、白点は鍵をエンド位置まで押し切る単打奏法を行った場合の結果を示し、黒点は鍵をエンド位置まで押し切らずに連打する連打奏法を行った場合の結果を示している。また、C1は1次最小自乗法近似による直線、C2は6次最小自乗法による曲線を示している。
【0023】
図2から明らかなように、リファレンス速度Vrは、直線C1あるいは曲線C2のいずれによっても近似できる。したがって、近似性のよい関数を適宜選択すれば、この関数を用いて任意の打弦強度データ(記録時の打弦速度情報)からリファレンス速度Vrを決定することができる。
この実施形態においては、計算が簡単で誤差の少ない1次関数近似を採用している。したがって、リファレンス速度Vrは、次式によって求められる。
【0024】
【数1】
数1において、VHは打弦速度(打弦強度データ)であり、αおよびβは定数である。定数αおよびβは、ピアノの機種等に応じ実験等によって決定する。なお、αおよびβは、同一ピアノであっても、リファレンスポイントXrをどこにするかによって変動する。
【0025】
▲3▼リファレンス時間差
さて、演奏情報に含まれる打弦時刻データは、前述したように、相対時刻あるいは絶対時刻で記録されているが、いずれにしても再生側自動ピアノにおいて打弦時刻データを読みとって処理することにより、再生時の各音の打弦絶対時刻が求められる。そこで、このようにして求めた打弦絶対時刻において正確に打弦を行わせるには、鍵が何時リファレンスポイントXrを通過すればよいかを求める必要がある。
【0026】
ここで、鍵1がリファレンスポイントXrを通過する時刻(以下、リファレンス時刻trという)と打弦時刻(正確には、ハンマが打弦位置直前にあるセンサSE1を通過した時刻)との時間差をリファレンス時間差Trと定義し、これと打弦速度との関係を実験により求めたものが図3である。図3において、白点は単打奏法による結果、黒点は連打奏法による結果を示している。そして、図3を縮尺2倍にしたものが図4であり、縮尺4倍にしたものが図5である。これらの図から判るように、リファレンス時間差Trと打弦速度との関係は、双曲線により極めて良好に近似される。すなわち、このリファレンス時間差Trは、打弦速度VHを分母にする1変数式で近似することができ、次式によって算出される。
【0027】
【数2】
なお、数2における定数γおよびδは、ピアノの機種等に応じ実験等によって決定する。また、γおよびδは、同一ピアノであっても、リファレンスポイントXrをどこにするかによって変動する。これは、数1におけるα、βの場合と同様である。
【0028】
さて、数2によって、リファレンス時間差Trが求まれば、再生側の打弦絶対時刻からリファレンス時間差Trを減算することによって、リファレンス時刻trが求められ、結局、上述した▲1▼、▲2▼、▲3▼の処理により、リファレンスポイントXr、リファレンス速度Vr、およびリファレンス時刻trが求められる。したがって、リファレンス時刻trにリファレンスポイントXrに達し、かつ、その時の速度がリファレンス速度Vrとなるように鍵1を駆動すれば、記録時の打弦状態を忠実に再現することができる。
なお、鍵1がリファレンスポイントXrに達したときに打弦が行われるのであれば、リファレンス時間差Trを求める処理は不要になる。
【0029】
▲4▼押鍵時の軌道データ作成
図6は、鍵の押鍵軌道を示す図であり、レスト位置X0から等速運動をしてエンド位置Xeに至っている。ここで、鍵の初速度をV0、鍵の位置をX、鍵の駆動開始時点からの時間をtとすれば、鍵の軌道は、
【0030】
【数3】
と表される。
また、鍵がリファレンスポイントXrに達する時刻をtr’とすると、
【0031】
【数4】
なる式が成り立つから、この数4から時刻tr’を求めることができる。したがって、押鍵を開始する絶対時刻(以下、押鍵開始時刻という)t0は、次式によって求めることができる。
【0032】
【数5】
なお、リファレンス時刻trは、前述のように、打弦時刻からリファレンス時間差Trを減算することによって求める。
上記数5によって押鍵開始時刻t0を求め、この時刻から、数3で示される軌道に従って鍵1を駆動すれば、鍵1は、リファレンス時刻trにおいて正確にリファレンスポイントXrに達し、しかも、その時の速度は、打弦強度データに対応したレファレンス速度Vrとなる。
【0033】
なお、鍵の挙動については、直線軌道(等速運動)を想定しているから、リファレンス速度Vrと初速度V0は等しい。そして、リファレンス速度Vrは、前述の数1によって求められるから、結局、数5で求めた押鍵開始時刻t0から一定速度vrで鍵を駆動するように制御(速度制御)することができる。
【0034】
▲5▼離鍵時の軌道データ作成
次に、離鍵時の軌道データ作成について説明する。
まず、鍵の位置をXN、離鍵初速度をV0N(<0)、離鍵開始時点からの時間をtN、エンド位置をXeとすれば、離鍵時の鍵軌道は、次式で表される。
【0035】
【数6】
ここで、図7は数6で示される軌道を示す図である。
さて、前述のように、演奏記録部30(図1参照)は、キーセンサ25内の下方のフォトセンサが受光状態になってから上方のフォトセンサが受光状態になるまでの時間を測定して離鍵速度VkNを検出し、また、上方のフォトセンサが受光状態になった時刻を離鍵時刻tkNとして検出する。この場合、離鍵時刻tkNにおけるダンパ6は、弦4に接して音の減衰を開始する状態なっている(そのような状態になるようフォトセンサの位置が調整されている)。そして、このようにして検出された離鍵速度VkNおよび離鍵時刻tkNは、それぞれ演奏情報を構成するデータとして記録され、再生時に読み出される。
【0036】
ここで、ダンパ6が弦4に接するときの鍵の位置を離鍵リファレンスポイントXrNと定義すれば、鍵1が離鍵リファレンスポイントXrNに達したときに、離鍵状態になったということができる。したがって、鍵1が離鍵リファレンスポイントXrNに達する時刻(以下、離鍵リファレンス時刻trNという)と、演奏情報中の離鍵時刻tkNとが一致するように鍵位置を制御すれば、正確な離鍵タイミング制御を行うことができる。
【0037】
また、ダンパ6が弦4に接する速さは、音の減衰状態に影響を与えるから、これを忠実に再現することが望ましい。この速さは、離鍵速度VkNに対応するから、結局、離鍵リファレンスポイントXrNにおける鍵速度(以下、離鍵リファレンス速度VrNという)を正確に離鍵速度VkNに一致させれば、音の減衰状態が正確に再現される。
ここで、鍵の駆動が開始される時刻を基準(=0)にして、鍵が離鍵リファレンスポイントXrNに達する時刻をtrN’とすると、
【0038】
【数7】
(ただし、直線軌道だからV0N=VrN=VkN)
なる関係が成り立ち、この数7より時刻trN’を求めることができる。したがって、次式によって離鍵開始時刻t0Nを求めることができる。
【0039】
【数8】
この数8によって離鍵開始時刻t0Nを求め、この時刻から、数6で示される軌道に従って鍵を駆動すれば、鍵は離鍵時刻tkNにおいて離鍵リファレンスポイントXrNに達し、記録時の離鍵状態を忠実に再現することができる。
なお、時刻t0から速度V0N(=VkN:離鍵速度)で鍵駆動するように制御(速度制御)しても上記と同様の結果を得ることができる。
【0040】
▲6▼押鍵スローダウン・離鍵スローアップ軌道データ作成
(a)トランジット位置
上述のようにして作成される押鍵軌道および離鍵軌道は直線状をなす等速軌道であり、以下、これらをそれぞれ押鍵等速軌道、離鍵等速軌道と称する。ここで、押鍵から離鍵へ移る演奏がハーフストロークで行われた場合には、押鍵等速軌道と離鍵等速軌道は、図8(A)に示すように、エンド位置Xeに至る手前で交差する。この自動ピアノでは、押鍵の際には、レスト位置X0から所定位置XTまでは押鍵等速軌道に基づいて鍵1を制御し、所定位置XTとエンド位置Xeの間の範囲では、2次曲線の軌道(以下、押鍵スローダウン軌道と称する)に基づいて鍵1を制御する。また、離鍵の際には、所定位置XTからレスト位置X0までは離鍵等速軌道に基づいて鍵1を制御し、所定位置XTとエンド位置Xeの範囲では、2次曲線の軌道(以下、離鍵スローアップ軌道と称する)に基づいて鍵1を制御する。なお、以下の説明においては、「所定位置」をトランジット位置と称する。また、押鍵等速軌道がトランジット位置XTに達する時刻を押鍵中間時刻(tPT)、離鍵等速軌道がトランジット位置XTから開始する時刻を離鍵中間時刻(tNT)と称する。
ここで、トランジット位置XTは、鍵1に自然な動作を与えるべく適宜設定されるが、押鍵等速軌道が短すぎると、打鍵速度の再現性を不安定にする。よって、押鍵から離鍵へ移る演奏の場合には、トランジット位置XTは、レスト位置X0とエンド位置Xeの中間よりもエンド位置Xe寄りにする。
【0041】
(b)等速時交差時刻tcの計算
図8(A)に示すように、押鍵等速軌道および離鍵等速軌道どうしが交差する位置(以下、等速時交差位置と称する)をXcとし、等速時交差位置Xcに達する時刻(以下、等速時交差時刻と称する)をtcとすると、この交差時刻tcは、押鍵等速軌道および離鍵等速軌道の軌道データから計算により求めることができる。そこで、等速時交差時刻tcに鍵の速度が0となるように、押鍵スローダウン軌道および離鍵スローアップ軌道を設定すれば、図8(B)に示すように、押鍵スローダウン軌道においては、押鍵中間時刻tPTから等速時交差時刻tcまでの間に、鍵の速度VがV0から0まで変化するような軌道を設定すればよい。また、離鍵スローアップ軌道においては、等速時交差時刻tcから離鍵中間時刻tNTまでの間に、鍵の速度Vが0からV0N(<0)まで変化するような軌道を設定すればよい。そこで、まず、等速時交差時刻tcを以下のようにして求める。
【0042】
押鍵開始時刻t0から等速時交差時刻tcまでの時間をa、等速時交差時刻tcから離鍵等速軌道が終了する時刻t4までの時間をbとすると、下記式が成立する。
【数9】
【数10】
また、数9および数10により、下記式が成立する。
【数11】
【0043】
次に、等速時交差時刻tcは、押鍵開始時刻t0に時間aを加算すれば良いから下記式によって算出される。
【数12】
ここで、数12におけるt4は、離鍵等速軌道がレスト位置X0に達する時刻であって、数8によって算出したt0Nを用いて次式により算出される。
【数13】
【0044】
(c)押鍵スローダウン軌道データの作成
次に、押鍵スローダウン軌道における押鍵加速度aPを下記式によって求める。
【数14】
ただし、数14におけるtPTは次式により算出される。
【数15】
【0045】
また、押鍵スローダウン軌道における押鍵速度Vは数14で求められるaP(<0)を用いて下記数16によって求めることができ、押鍵スローダウン軌道は、下記数17によって表すことができる。ただし、式中tは、押鍵スローダウン軌道および離鍵スローアップ軌道における絶対時刻である。
【数16】
【数17】
ただし、P1,Q1,R1は定数であり、これらは、数17と数17をtで微分した式に図8(A)に示すtの特定値を代入することにより求めることができる。すなわち、数17は、時刻tPTで傾きがV0、等速時交差時刻tcで傾きが0となる2次関数であり、時刻tPTにおける値がXTであるから、これらの値を上記式に代入すればよい。
【0046】
(d)離鍵スローアップ軌道データの作成
次に、離鍵スローアップ軌道における離鍵加速度aN(<0)を以下のようにして求める。
【数18】
ここで、数18におけるtNTは次式により算出される。
【数19】
また、離鍵スローアップ軌道における離鍵速度Vは下記数20によって求めることができ、離鍵スローアップ軌道は下記数21によって表すことができる。ただし、aN<0である。
【数20】
【数21】
ただし、P2,Q2,R2は定数であり、これらは、数21と数21をtで微分した式に図8(A)に示すtの特定値を代入することにより求めることができる。すなわち、数21は、時刻tNTで傾きがV0N、速度等速時交差時刻tcで傾きが0となる2次関数であり、時刻tNTにおける値がXTであるから、これらの値を上記式に代入すればよい。この場合において、数21の最大値は数17の最大値と等しくなり、よって、これら2つの式で表される2次曲線は等速時交差時刻tcに交差する。なお、以下の説明においては、2つの2次曲線が交差する位置を交差位置(Xc’)と称する。
【0047】
(d)押鍵スローダウン・離鍵スローアップ軌道データの作成判定
ハーフストロークで演奏が行われた場合には、押鍵等速軌道と離鍵等速軌道とが交差し、押鍵スローダウン軌道と離鍵スローアップ軌道は交差位置Xc’で交差する。また、図9(A)に示すように、押鍵等速軌道と離鍵等速軌道は交差しないが、押鍵スローダウン軌道と離鍵スローアップ軌道を作成したときに両者が交差する場合がある。さらに、図9(A)において交差位置Xc’がエンド位置Xeを越えた位置に存する場合には、押鍵スローダウン軌道と離鍵スローアップ軌道は交差しない。
【0048】
このように、離鍵等速軌道と押鍵等速軌道とが交差しない場合には、押鍵スローダウン軌道と離鍵スローアップ軌道が交差する場合と交差しない場合が生じる。この自動ピアノにおいては、前者の場合に押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データを作成し、後者の場合には軌道データを作成しないこととしている。その結果、押鍵スローダウン軌道と離鍵スローアップ軌道とが交差しない場合には、鍵は離鍵等速軌道と押鍵等速軌道の軌道データに基づいて制御される。すなわち、図6および図7に示す軌道によって押鍵と離鍵とが行われる。このように、押鍵スローダウン軌道と離鍵スローアップ軌道が交差するか否かにより、作成すべき軌道データが異なってくるため、交差するか否かを以下の方法により判定する。
【0049】
まず、押鍵等速軌道と離鍵等速軌道とが交差すれば、押鍵スローダウン軌道と離鍵スローアップ軌道は交差する。よって、押鍵等速軌道と離鍵等速軌道が交差するか否かによって上記軌道が交差するか否かを判定することができる。この判定には以下の3種類の方法があり、いずれの方法を採用しても良い。
▲1▼まず、等速時交差位置Xcがエンド位置Xeよりも内側(レスト位置X0側)にあれば、押鍵スローダウン軌道と離鍵スローアップ軌道は交差する。
よって、「等速時交差位置Xc<エンド位置Xe」であれば、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。なお、等速時交差位置Xcは下記式により算出される。
【数22】
ここで、数22の右辺第2項は、レスト位置X0から等速時交差位置Xcまでの距離を示し、この距離は、数9〜数11を用いて算出することができる。
【0050】
▲2▼押鍵等速軌道がエンド位置Xeに達する時刻t3が離鍵開始時刻t0Nよりも遅ければ、これら2つの軌道は交差する。
よって、「離鍵開始時刻t0N<時刻t3」であれば押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。
▲3▼押鍵等速軌道がエンド位置Xeに達する時刻t3よりも等速時交差時刻tcが早ければ、押鍵等速軌道と離鍵等速軌道は交差する。
よって、「等速時交差時刻tc<時刻t3」ならば押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。なお、「離鍵開始時刻t0N<等速時交差時刻tc」の場合にも交差すると判定することができる。
【0051】
次に、上記いずれの条件も満たさない場合には、以下のいずれかの方法により押鍵スローダウン軌道と離鍵スローアップ軌道が交差するか否かを判定する。
▲1▼まず、上述の交差位置Xc’は、等速時交差位置Xcとトランジット位置XTの中央に位置するので、下記式によって求めることができる。
【数23】
そこで、「交差位置Xc’<エンド位置Xe」ならば、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。
【0052】
▲2▼次に、押鍵スローダウン軌道と離鍵スローアップ軌道とが交差するか否かの臨界条件を考えると、それは、図9(A)において交差位置Xc’がエンド位置Xeと一致する状態であり、この場合には、押鍵スローダウン軌道と離鍵スローアップ軌道の押鍵速度Vがともにエンド位置Xeで0になる。ここで、数17で表される押鍵スローダウン軌道と数21で表される離鍵スローアップ軌道は、等速時交差時刻tcで傾きが0となる2次曲線であるが、エンド位置Xeで傾きが0となる2次曲線を押鍵スローダウン軌道と離鍵スローアップ軌道速度についてそれぞれ想定する。すなわち、図10(A)に示すように、エンド位置Xeに時刻tPE’に達して押鍵速度Vが0になる押鍵スローダウン軌道と、時刻tNE’にエンド位置Xeで開始する離鍵スローアップ軌道を想定すると、図10(A)に示す状態は、押鍵スローダウン軌道と離鍵スローアップ軌道とが交差しない場合に含まれる。
【0053】
そこで、「時刻tNE’<時刻tPE’」ならば、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。なお、時刻tPE’およびtNE’は、下記式で求めることができる。
【数24】
【数25】
【0054】
▲3▼「等速時交差時刻tc<時刻tPE’」ならば、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。なお、「時刻tNE’<等速時交差時刻tc」のときに、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定することもできる。
以上が再生前処理部10における軌道データの作成原理である。
【0055】
(ハ)第1の実施の形態の動作
始めに、記録動作について説明する。まず、演奏者によって演奏が行われると、演奏記録部30がセンサSE1,SE2の出力信号に基づいて打弦速度および打弦時刻を検出するとともに、センサ25の出力信号に基づいて離鍵時刻および離鍵速度を検出する。これらの情報は、記録後処理部31において正規化処理された後に、演奏情報としてフロッピーディスク等の記録媒体に記録される。
【0056】
次に、再生動作について図11および図12を参照して説明する。まず、再生前処理部10は、記録媒体から演奏情報を読み出すか、あるいは、外部から供給される演奏情報を受信し、その中に打弦イベントの演奏情報が含まれるか否かを判定する(ステップS1)。そして、打弦イベントの演奏情報が含まれる場合には、ステップS1での判定結果は「YES」となり、ステップS2へ進んで数3に示す押鍵等速軌道の軌道データを作成する。押鍵等速軌道は、レスト位置X0からエンド位置Xeに至る軌道であり、この軌道データは、演奏情報である打弦時刻データおよび打弦速度データに基づいて作成される。なお、ステップS1においては、打弦イベントの演奏情報を受信するまでその有無の判定を繰り返す。
【0057】
次に、ステップS3へ進み、打弦イベントの後に続く離鍵イベントの演奏情報を受信しているか否かを判定する。すなわち、再生前処理部10は、演奏情報を受信してから所定時間(例えば0.5秒)の間に、軌道データを作成するようになっている。よって、打弦イベントの演奏情報の受信と離鍵イベントの演奏情報の受信との時間差によっては、押鍵等速軌道の軌道データを作成した際に、これと対になる離鍵イベントの演奏情報が受信されていない場合が生じる。この場合には、前述の方法によっては押鍵スローダウン軌道や離鍵スローアップ軌道の軌道データを作成することはできない。このため、ステップ3においては、所定時間内に押鍵イベントと対になる離鍵イベントが受信されたか否かを判定するようにしている。そして、該当する離鍵イベントの受信があった場合には、ステップS4へ進んで数6に示す離鍵等速軌道の軌道データを作成する。
【0058】
次に、ステップS5へ進んで押鍵スローダウン軌道と離鍵スローアップ軌道を作成するための交差処理を行う。図12は交差処理を示すサブルーチンであって、まず、ステップS2およびS4において作成した押鍵等速軌道と離鍵等速軌道とが交差するか否かを判定する(ステップS10)。演奏がハーフストロークで行われた場合には、これら2つの軌道は交差し、ステップS10での判定結果は「YES」となる。この場合には、ステップS11へ進んで上記2つの軌道の等速時交差時刻tcを数12を用いて計算する。次いで、ステップS12へ進み、押鍵スローダウン軌道および離鍵スローアップ軌道における加速度aP,aNを数14および数18を用いて計算する。そして、求めた加速度aP,aNを用いて、数17および数21に示す押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データを作成する(ステップS13およびS14)。
【0059】
一方、押鍵と離鍵とがフルストロークで行われた場合には、押鍵等速軌道と離鍵等速軌道とは交差しない。この場合には、ステップS10での判定結果は「NO」となり、ステップS15へ進んで押鍵スローダウン軌道と離鍵スローアップ軌道が交差するか否かを判定する。そして、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定した場合には、上述したステップS11〜S14の処理を行って押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データを作成する。以上の処理により押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データを作成すると、図11に示すルーチンに戻る。そして、ステップS6へ進み、モーションコントローラ11に供給する位置データ(t,X)を作成する。なお、ステップS15において、押鍵スローダウン軌道と離鍵スローアップ軌道が交差しないと判定した場合には、ステップS11〜S14の処理を行わずに図11に示すルーチンに戻る。
【0060】
ステップS6において作成する位置データ(t,X)は、時刻tと、時刻tに対応する鍵の位置Xからなる。ここで、時刻tは、押鍵開始時刻t0から離鍵が終了する時刻t4までを一定のピッチで刻んだ時刻である。あるいは、押鍵スローダウン軌道と離鍵スローアップ軌道における時刻tのピッチを短くし、押鍵等速軌道および離鍵等速軌道における時刻tのピッチを長くすることもできる。このようにして時刻tのピッチを設定することにより、押鍵等速軌道および離鍵等速軌道における位置データ(t,X)の計算を簡略化し、かつ、押鍵スローダウン軌道と離鍵スローアップ軌道における鍵1の動作を正確かつ滑らかにすることができる。
【0061】
また、鍵の位置Xは、前述の方法によって求めた各軌道データに各時刻tを代入して求める。すなわち、押鍵開始時刻t0から押鍵中間時刻tPTまでは、時刻tを数3に代入して押鍵等速軌道における鍵1の位置Xを求め、押鍵中間時刻tPTから等速時交差時刻tcまでは、時刻tを数17に代入して押鍵スローダウン軌道における鍵の位置Xを求める。また、等速時交差時刻tcから離鍵中間時刻tNTまでは、時刻tを数21に代入して離鍵スローアップ軌道における鍵の位置Xを求め、離鍵中間時刻tNTから時刻t4までは、時刻tを数6に代入して離鍵等速軌道における鍵の位置Xを求める。そして、こうして作成した位置データ(t,X)を、再生前処理部10に設けたメモリの所定のアドレスから時刻tの順番に格納する。このように、メモリの所定のアドレスから時刻tの順番に位置データ(t,X)を格納することにより、押鍵開始から離鍵終了までの鍵の位置Xを時刻t毎に求めたシーケンシャルデータ列を作成する。なお、打弦イベントの後に続く離鍵イベントの演奏情報を受信していない場合には、ステップS3での判定結果は「NO」となり、ステップS6へ進んで押鍵等速軌道の位置データ(t,X)のみをメモリに格納する。
【0062】
次に、モーションコントローラ11の処理を図13を参照して説明する。まず、再生前処理部10のメモリに位置データ(t,X)が存在するか否かを判定し(ステップS20)、位置データ(t,X)が存在する場合には、ステップS21へ進んで再生前処理部10のメモリに格納されたシーケンスデータ列のうち、先頭アドレスの位置データ(t,X)を読み出す。モーションコントローラ11は、位置データ(t,X)を読み出すと、ステップS22に進んで現在の時刻が位置データ(t,X)に示す時刻t(この場合、時刻tは押鍵開始時刻t0である)であるか否かを判定する。
【0063】
そして、モーションコントローラ11は、押鍵開始時刻t0に達するまで位置データ(t,X)の読出しを繰り返し(ステップS21,S22)、押鍵開始時刻t0に達すると、ステップS23へ進んで、位置データ(t,X)に示された鍵の位置Xに対応する位置制御データ(X)をサーボコントローラ12に供給する。これにより、鍵の位置Xに対応した励磁電流がソレノイド5に供給される。この場合、サーボコントローラ12は、ソレノイド5のプランジャ(図示略)に設けた位置センサから供給されるフィードバック信号と位置制御データ(X)とを比較し、両者が一致するように励磁電流を制御する。次に、ステップS24へ進み、シーケンスデータ列の次のアドレスにアクセスする。そして、上記ステップ20〜S24を繰り返してソレノイド5のプランジャを突出させてゆく。これにより、ソレノイド5のプランジャの突出量は、数3のXに対応したものとなり、鍵1は押鍵等速軌道に従って制御される。
【0064】
ここで、押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データが作成された場合には、押鍵中間時刻tPT以後にシーケンシャルデータ列から読み出される位置データ(t,X)は、数17で求めたものとなる。このため、サーボコントローラ12は、ソレノイド5のプランジャを数17に示される2次曲線の押鍵スローダウン軌道に従って突出させてゆく。これにより、鍵1は押鍵スローダウン軌道に従って制御される。また、等速時時刻tcに達すると、読み出される位置データ(t,X)は、数21で求めたものとなる。このため、サーボコントローラ12は、ソレノイド5のプランジャを数21に示される2次曲線の離鍵スローアップ軌道に従って縮小させてゆく。これにより、鍵1は離鍵スローアップ軌道に従って制御される。
【0065】
次に、離鍵中間時刻tNTに達すると、読み出される位置データ(t,X)は数6により求めたものとなるため、サーボコントローラ12は、ソレノイド5のプランジャを数6に示される離鍵等速軌道に従って縮小させてゆく。これにより、鍵1は離鍵等速軌道に従って制御される。
こうして離鍵等速軌道が終了する時刻t4に達すると、シーケンシャルデータ列の全ての位置データ(t,X)が読み出され、鍵1はレスト位置X0に達する。そして、この場合には、次にアクセスしたアドレスには位置データ(t,X)が存在しなくなるから、ステップS20における判定結果は「NO」となり、図13に示すタスクを終了する。なお、図13に示すタスクは、所定時間おきに開始されるようになっている。
【0066】
このように、上記構成の自動ピアノにあっては、鍵1の動作が押鍵から離鍵に移行する際には、鍵1の速度を徐々に変化させて鍵1の動作の方向を切り替えるから、鍵1の動作が滑らかになって違和感のない自然な動作となる。また、離鍵の際に鍵に大きな加速度が作用しないため、鍵1の動作が乱れるようなことがない。特に、上記自動ピアノにおいては、押鍵等速軌道および離鍵等速軌道が交差しないと判定された場合であっても、押鍵スローダウン軌道および離鍵スローアップ軌道が交差すると判定した場合には、押鍵スローダウン軌道および離鍵スローアップ軌道に基づいて鍵1を駆動する。このように、記録時には押鍵から離鍵へフルストロークで演奏された場合であっても、再生時には離鍵開始時の鍵1の速度が徐々に変化するから、鍵1の動作の揺らぎの発生を少なくすることができる。
【0067】
ここで、実験結果を図14に示す。同図(イ)は押鍵から離鍵までをハーフストロークで演奏した場合のソレノイドのプランジャの軌道、同図(ロ)は鍵の軌道、同図(ハ)はハンマの軌道をそれぞれ測定したものである。また、図中実線は押鍵スローダウン軌道と離鍵スローアップ軌道に従ってプランジャを駆動した場合の各軌道、一点鎖線は直線の押鍵等速軌道と直線の離鍵等速軌道が交差する交差軌道に従ってプランジャを駆動した場合の各軌道を示す。同図(ロ)から判るように、直線軌道の場合には鍵の離鍵等速軌道に矢印Yで示す乱れが生じている。これは、押鍵から離鍵への移行が急激に行われるため、鍵に弾性変形が生じたことによるものと考えられる。一方、押鍵スローダウン軌道と離鍵スローアップ軌道に従ってプランジャを駆動した場合には、離鍵等速軌道にそのような乱れはなく、鍵はスムーズな動きを示している。また、同図(ハ)に示すように、押鍵の初速度があまり変わらない場合には、直線軌道の場合も押鍵スローアップ・スローダウン軌道の場合もハンマの軌道はあまり変わらないことも確認された。
【0068】
B.第2の実施の形態
図15ないし図17を参照して本発明の第2の実施の形態について説明する。第2の実施の形態は、離鍵から押鍵に移る演奏において本発明を適用した例である。
(a)トランジット位置
離鍵から押鍵へ移る演奏がハーフストロークで行われる場合には、図15(A)に示すように、離鍵等速軌道と押鍵等速軌道はレスト位置X0に至る手前で交差する。この実施の形態では、エンド位置Xeからトランジット位置XTまでは離鍵等速軌道に基づいて鍵1を制御し、トランジット位置XTとレスト位置X0の間の範囲では、2次曲線の軌道(以下、離鍵スローダウン軌道と称する)に基づいて鍵1を制御する。また、押鍵の軌道については、所定位置XTからエンド位置Xeまでは押鍵等速軌道に基づいて鍵1を制御し、所定位置XTとレスト位置X0の間の範囲では、2次曲線の軌道(以下、押鍵スローアップ軌道と称する)に基づいて鍵1を制御する。
【0069】
トランジット位置XTの位置は、押鍵から離鍵に移る演奏の場合よりもレスト位置X0側に設定される。これは、トランジット位置XTがエンド位置Xe側に寄りすぎていると、離鍵スローダウン軌道と押鍵スローアップ軌道の交差位置Xc’もエンド位置Xe側へ寄り過ぎになってしまうため、エンド位置Xe寄りで連打を行うと、鍵1がレスト位置X0側へ戻る距離が短いために押鍵時にアクション3がハンマ2に係合せず、演奏が行えないという事態が生じるからである。さらに、離鍵開始後、鍵1がエンド位置Xeから所定距離離れたときにダンパ6が当該鍵1に対応する弦4を押すように構成されているが、エンド位置Xeに近い箇所から離鍵スローダウン軌道が開始すると、ダンパ6が弦4を押すタイミングが遅くなってしまうからである。よって、以上の点を考慮してトランジット位置XTの位置は設定され、具体的にはレスト位置X0とエンド位置Xeのほぼ中間とされる。
【0070】
(b)交差時刻tcの計算
この自動ピアノにおいても、等速時交差時刻tcに鍵1の速度が0となるように離鍵スローダウン軌道および押鍵スローアップ軌道を設定する。そして、離鍵スローダウン軌道においては、離鍵中間時刻tNTから等速時交差時刻tcまでの間に、鍵1の速度VがV0N(<0)から0まで変化するような軌道を設定する。また、押鍵スローアップ軌道においては、等速時交差時刻tcから押鍵中間時刻tPTまでの間に、鍵1の速度Vが0からV0まで変化するような軌道を設定する。そのために、交差時刻tcを以下のようにして求める。
【数26】
ここで、数26におけるt3は、押鍵等速軌道がエンド位置Xeに達する時刻であって、数5によって算出した押鍵開始時刻t0を用いて次式により算出される。
【数27】
【0071】
(c)離鍵スローダウン軌道データの作成
次に、離鍵スローダウン軌道における離鍵加速度aNを以下のようにして求める。
【数28】
また、離鍵速度Vは下記数29によって求めることができ、離鍵スローダウン軌道は下記数30によって表すことができる。
【数29】
【数30】
ただし、P3,Q3,R3は定数であり、これらは、数30と数30をtで微分した式に図15(A)に示すtの特定値を代入することにより求めることができる。
【0072】
(d)押鍵スローアップ軌道データの作成
次に、押鍵スローアップ軌道における押鍵加速度aPを以下のようにして求める。
【数31】
また、押鍵スローアップ軌道における押鍵速度Vは下記数32によって求めることができ、押鍵スローアップ軌道データは下記数33によって表すことができる。
【数32】
【数33】
ただし、P4,Q4,R4は定数であり、これらは、数33および数33をtで微分した式に、図15(A)に示すtの特定値を代入することにより求めることができる。
【0073】
(d)離鍵スローダウン・押鍵スローアップ軌道データの作成判定
まず、押鍵等速軌道と離鍵等速軌道とが交差するか否かによって離鍵スローダウン軌道と押鍵スローアップ軌道が交差するか否かを判定する。この判定には以下の3種類の方法があり、いずれの方法を採用しても良い。
▲1▼まず、等速時交差位置Xcがレスト位置X0よりも内側(エンド位置Xe側)にあれば、離鍵スローダウン軌道と押鍵スローアップ軌道は交差する。
よって、「レスト位置X0<等速時交差位置Xc」であれば、離鍵スローダウン軌道と押鍵スローアップ軌道が交差すると判定する。なお、等速時交差位置Xcは下記式により算出される。
【数34】
【0074】
(2)離鍵等速軌道がレスト位置X0に達する時刻t4が押鍵開始時刻t0よりも遅ければ、これら2つの軌道は交差する。
よって、「押鍵開始時刻t0<時刻t4」であれば押鍵スローアップ軌道と離鍵スローダウン軌道が交差すると判定する。
(3)離鍵等速軌道がレスト位置X0に達する時刻t4よりも等速時交差時刻tcが早ければ、押鍵等速軌道と離鍵等速軌道は交差する。よって、「等速時交差時刻tc<時刻t4」ならば押鍵スローアップ軌道と離鍵スローダウン軌道が交差すると判定する。なお、「時刻t0<等速時交差時刻tc」の場合にも交差すると判定することができる。
【0075】
次に、上記いずれの条件も満たさない場合には、以下のいずれかの方法により押鍵スローダウン軌道と離鍵スローアップ軌道が交差するか否かを判定する。
▲1▼離鍵スローダウン軌道と押鍵スローアップ軌道の交差位置Xc’は下記式によって求めることができる。
【数35】
そこで、「レスト位置X0<交差位置Xc’」ならば、離鍵スローダウン軌道と押鍵スローアップ軌道が交差すると判定する。
【0076】
▲2▼レスト位置X0で傾きが0となる2次曲線を離鍵スローダウン軌道と押鍵スローアップ軌道速度についてそれぞれ想定する。すなわち、図17(A)に示すように、レスト位置X0に時刻tNR’に達して押鍵速度Vが0になる離鍵スローダウン軌道と、時刻tPR’にレスト位置X0で開始する押鍵スローアップ軌道を想定すると、図17(A)に示す状態は、押鍵スローダウン軌道と離鍵スローアップ軌道とが交差しない場合に含まれる。
そこで、「時刻tNR’>時刻tPR’」ならば、スローアップ軌道とスローダウン軌道は交差すると判定する。なお、時刻tNR’およびtPE’は、近似的に下記式で求めることができる。
【数36】
【数37】
▲3▼「交差時刻tc<時刻tNR’」ならば、スローアップ軌道とスローダウン軌道が交差すると判定することもできる。なお、「時刻tPR’<交差時刻tc」のときに、スローアップ軌道とスローダウン軌道が交差すると判定することもできる。
【0077】
上記構成の自動ピアノは、図11ないし図13に示すものと同様のアルゴリズムに従って動作する。この場合において、図11のステップS1では「離鍵イベントの有無」を判定し、ステップS2では離鍵等速軌道の軌道データを作成する。また、ステップS3では「その後の打弦イベントの有無」を判定し、ステップS4では押鍵等速軌道の軌道データを作成する。したがって、離鍵から押鍵に移る演奏がハーフストロークで行われた場合には、離鍵等速軌道→離鍵スローダウン軌道→押鍵スローアップ軌道→押鍵等速軌道という順番で鍵1が制御され、鍵1に違和感のない自然な動作を与えることができる。
【0078】
特に、この実施の形態においては、離鍵から押鍵に移る演奏に本発明を適用しているから、押鍵の際の鍵に勢いが生じて音量が打弦強度データが示す値よりも大きくなったり、一部の打弦に抜けが生じたり、打弦のタイミングがずれてリズムが乱れたりするといった不都合が生じない。また、鍵の動作が演奏者による演奏に近いから、エンド位置近くで連打を行ったときの発音の響きを忠実に再現することができる。
【0079】
さらに、離鍵等速軌道および押鍵等速軌道が交差しないと判定された場合であっても、離鍵スローダウン軌道および押鍵スローアップ軌道が交差すると判定した場合には、押鍵スローアップ軌道および離鍵スローダウン軌道に基づいて鍵1を駆動するから、記録時にはフルストロークによる離鍵から押鍵に移る演奏を行った場合であっても、再生時には押鍵開始時の鍵1の速度が徐々に変化するから、鍵1の動作の揺らぎを少なくすることができる。
なお、押鍵から離鍵に移る場合の鍵1の制御(第1の実施の形態)と、離鍵から押鍵に移る場合の鍵1の制御(第2の実施の形態)とに分けて説明したが、これら2種類の制御を行う自動ピアノを構成することもできる。
【0080】
C.変形例
(1)第1の実施の形態において、押鍵スローダウン軌道と離鍵スローアップ軌道が交差しないと判定された場合も両軌道データを作成して鍵1を制御することができる。この場合には、図10(B)に示すように、押鍵スローダウン軌道においては、押鍵中間時刻tPTから時刻tPE’の間に鍵1の速度VをV0から0まで変化させる。よって、押鍵スローダウン軌道における押鍵加速度aPは下記式により求めることができる。なお、時刻tPE’は、数24によって求めることができる。
【数38】
【0081】
また、離鍵スローアップ軌道においては、時刻tNE’から離鍵中間時刻tNTまでの間に鍵1の速度Vを0からV0Nまで変化させる。よって、離鍵スローアップ軌道における離鍵加速度aNは下記式により求めることができる。なお、時刻tNE’は、数18〜数21を用いてtを解とする2次方程式を作成することにより求めることができ、また、数25によっても求めることができる。
【数39】
このようにして押鍵加速度および離鍵加速度を求めることにより、前記各実施の形態と同様にして、押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データを作成して鍵1を制御することができる。これによって、鍵1の動作の揺らぎをさらに少なくすることができる。
【0082】
なお、第2の実施の形態において、離鍵スローダウン軌道と押鍵スローアップ軌道が交差しないと判定された場合も、両軌道データを作成して鍵1を制御することができる。この場合には、図17(B)に示すように、離鍵スローダウン軌道においては、離鍵中間時刻tNTから時刻tNR’の間に鍵1の速度VをV0Nから0まで変化させる。また、押鍵スローアップ軌道においては、時刻tPR’から押鍵中間時刻tPTまでの間に鍵1の速度Vを0からV0まで変化させる。
【0083】
(2)前記各実施の形態では押鍵軌道と離鍵軌道を等速軌道としたが、図8(A)および図15(A)に一点鎖線で示すように、2次曲線をなす軌道にすることができる。この場合には、押鍵軌道を以下のように表す。
【数40】
ここで、aは加速度であり、キーオン速度を鍵1の移動方向の2箇所で検出し、得られた速度の差から推定することができる。また、b、cは係数であり、押鍵開始時刻t0および鍵1の初速度V0によって算出することができる。なお、離鍵軌道も同様の方法で求めることができる。
このような押鍵軌道と離鍵軌道に従って鍵1を制御することにより、演奏者の演奏により近い動作を鍵1に与えることができる。
【0084】
(3)前記実施の形態では、短縮軌道として2次曲線の軌道を作成したが、短縮軌道は、押鍵等速軌道と離鍵直線軌道の交差点に達しない軌道であればその種類は任意である。たとえば、円軌道や楕円軌道、あるいは折れ線状に屈曲するような軌道であってもよい。
(4)押鍵を押鍵等速軌道に従って行い、押鍵に続く離鍵を離鍵スローアップ軌道に従って行うことができ、また、押鍵を押鍵スローダウン軌道に従って行い、押鍵に続く離鍵を離鍵等速軌道に従って行うこともできる。さらに、離鍵を離鍵等速軌道に従って行い、離鍵に続く押鍵を押鍵スローアップ軌道に従って行うことができ、また、離鍵を離鍵スローダウン軌道に従って行い、離鍵に続く押鍵を押鍵等速軌道に従って行うこともできる。
(5)サーボ制御の変形
上述した各実施の形態においては、再生前処理部10により位置データ(t,X)を作成し、モーションコントローラ11とサーボコントローラ12によって位置サーボ制御を行っていたが、これに代えて、速度を指示する速度サーボ制御を行っても良い。すなわち、再生前処理部10により速度データ(t,V)のシーケンシャルデータ列を作成し、モーションコントローラ11が押鍵(あるいは離鍵)開示時刻において初速度を指示し、サーボコントローラ12が鍵1が与えられた速度を保つようにサーボ制御を行うようにしてもよい。
【0085】
(6)上述した各実施の形態は、すべてリファレンスポイントにおける運動属性を再生するように鍵を駆動する例であったが、リファレンスポイントやリファレンス速度を考慮せず、単純に押鍵と離鍵の直線軌道を作成し、これによって制御することもできる。例えば、打鍵速度から単純に押鍵の直線軌道を想定し、これに基づいて鍵をサーボ駆動することもできる。
【0086】
【発明の効果】
以上説明したように、この発明によれば、押鍵から離鍵あるいは離鍵から押鍵へ移る演奏を行う場合に、鍵の速度が急激に変化しないから、鍵の動作が滑らかになって違和感のない自然な動作を得ることができる。また、連打時の押鍵の音量が大きくなったり、打弦の抜けやリズムの狂いが生じる等の問題は解消され、連打を円滑に行うことができる。
また、記録時にはフルストロークの演奏による押鍵または離鍵を行った場合であっても、再生時には短縮軌道によって離鍵開始時または押鍵開始時に鍵の速度が徐々に変化するから、鍵の動作のゆらぎの発生を少なくすることができる。
【図面の簡単な説明】
【図1】この発明の第1実施形態の構成を示すブロック図である。
【図2】図2はリファレンスポイントを9.5mmに設定したときの鍵速度と打弦速度の関係を示す図である。
【図3】リファレンス時間差Trと打弦速度との関係を示す図である。
【図4】図3を縮尺2倍にした図である。
【図5】図3を縮尺4倍にした図である。
【図6】鍵の押鍵軌道を示す図である。
【図7】数6で示される軌道を示す図である。
【図8】離鍵軌道および鍵速度を示す図である。
【図9】離鍵軌道および鍵速度を示す図である。
【図10】鍵軌道および鍵速度を示す図である。
【図11】第1の実施の形態における再生前処理部の動作を示すフローチャートである。
【図12】第1の実施の形態における再生前処理部の動作を示すフローチャートである。
【図13】第1の実施の形態におけるモーションコントローラの動作を示すフローチャートである。
【図14】ハーフストロークにおいてプランジャ等の軌道を示す図である。
【図15】鍵軌道および鍵速度を示す図である。
【図16】鍵軌道および鍵速度を示す図である。
【図17】鍵軌道および鍵速度を示す図である。
【符号の説明】
5……ソレノイド(駆動手段)、10……再生前処理部(軌道算出手段:交差判定手段)、11……モーションコントローラ(指令値出力手段)、12……サーボコントローラ(指令値出力手段)。
Claims (2)
- 発音時刻情報および発音強度情報に基づいて鍵の押鍵軌道を算出するとともに、離鍵時刻情報および離鍵速度情報に基づいて鍵の離鍵軌道を算出する軌道算出手段と、
指令値に応じて鍵を駆動する駆動手段と、
指令値を前記駆動手段に供給する指令値出力手段と、
押鍵軌道が次の離鍵の離鍵軌道に交差するか否か、または離鍵軌道が次の押鍵の押鍵軌道に交差するか否かを判定する交差判定手段と、
押鍵軌道と離鍵軌道との交差点に達する前に押鍵軌道から離鍵軌道へ至るか、または離鍵軌道から押鍵軌道へ至る短縮軌道を算出する短縮軌道算出手段と
を具備し、
前記指令値出力手段は、押鍵軌道と離鍵軌道とが交差すると前記交差判定手段によって判定されたときには、前記短縮軌道算出手段が算出した短縮軌道に対応する指令値を前記駆動手段に供給し、押鍵軌道と離鍵軌道とが交差しないと前記交差判定手段によって判定されたときには、前記軌道算出手段が算出した押鍵軌道および離鍵軌道に対応する指令値を前記駆動手段に供給する
ことを特徴とする自動ピアノ。 - 前記交差判定手段は、押鍵軌道と離鍵軌道とが交差しないと判定したときに、鍵を押し切ったときのエンド位置または鍵を押していないときのレスト位置に短縮軌道が達するか否かを判定し、
前記指令値出力手段は、前記交差判定手段により、押鍵軌道と離鍵軌道とが交差すると判定されたときと、短縮軌道がエンド位置またはレスト位置に達しないと判定されたときには、短縮軌道に対応する指令値を前記駆動手段に供給し、そうでないときには前記軌道算出手段が算出した押鍵軌道および離鍵軌道に対応する指令値を前記駆動手段に供給する
ことを特徴とする請求項1に記載の自動ピアノ。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP24032495A JP3588872B2 (ja) | 1995-09-19 | 1995-09-19 | 自動ピアノ |
| US08/712,962 US5691489A (en) | 1995-09-19 | 1996-09-12 | Automatic player piano exactly reproducing half stroke in playback |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP24032495A JP3588872B2 (ja) | 1995-09-19 | 1995-09-19 | 自動ピアノ |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0981125A JPH0981125A (ja) | 1997-03-28 |
| JP3588872B2 true JP3588872B2 (ja) | 2004-11-17 |
Family
ID=17057786
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP24032495A Expired - Fee Related JP3588872B2 (ja) | 1995-09-19 | 1995-09-19 | 自動ピアノ |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5691489A (ja) |
| JP (1) | JP3588872B2 (ja) |
Families Citing this family (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3807030B2 (ja) * | 1997-01-14 | 2006-08-09 | ヤマハ株式会社 | 鍵盤楽器、電子楽器および方法ならびに記録媒体 |
| JP3890649B2 (ja) * | 1997-02-21 | 2007-03-07 | ヤマハ株式会社 | 自動ピアノの演奏データ変換装置 |
| US6271447B1 (en) * | 1998-10-05 | 2001-08-07 | Yamaha Corporation | Velocity calculating system for moving object widely varied in velocity method for correcting velocity and keyboard musical instrument equipped with the velocity calculating system for accurately determining loudness of sounds |
| JP4075771B2 (ja) * | 2003-11-04 | 2008-04-16 | ヤマハ株式会社 | 推定装置、自動楽器およびプログラム |
| JP4218552B2 (ja) * | 2004-03-04 | 2009-02-04 | ヤマハ株式会社 | 鍵盤楽器 |
| EP1575026A2 (en) * | 2004-03-12 | 2005-09-14 | Yamaha Corporation | Automatic player musical instrument, for exactly controlling the keys |
| JP4670395B2 (ja) * | 2004-03-12 | 2011-04-13 | ヤマハ株式会社 | 自動ピアノ及び鍵を自動的に操作するためのプログラム |
| US7235727B2 (en) | 2004-03-12 | 2007-06-26 | Yamaha Corporation | Automatic piano, and method and program for automatically operating a key |
| JP4193752B2 (ja) * | 2004-05-07 | 2008-12-10 | ヤマハ株式会社 | 自動演奏ピアノ |
| JP4548053B2 (ja) | 2004-09-07 | 2010-09-22 | ヤマハ株式会社 | 楽器の演奏駆動装置及び楽器の演奏操作子をフィードバック制御によって駆動するための方法及び該方法をコンピュータにより実行する制御プログラム。 |
| JP4617921B2 (ja) * | 2005-02-24 | 2011-01-26 | ヤマハ株式会社 | 楽器演奏の再生駆動装置、鍵盤楽器及び自動演奏ピアノ |
| JP4687474B2 (ja) * | 2006-01-26 | 2011-05-25 | ヤマハ株式会社 | 鍵盤楽器 |
| JP4967406B2 (ja) * | 2006-03-27 | 2012-07-04 | ヤマハ株式会社 | 鍵盤楽器 |
| JP5119704B2 (ja) * | 2007-03-23 | 2013-01-16 | ヤマハ株式会社 | 楽器の制御装置 |
| JP5754421B2 (ja) * | 2012-07-17 | 2015-07-29 | ヤマハ株式会社 | 鍵盤楽器 |
| JP6485082B2 (ja) | 2015-02-04 | 2019-03-20 | ヤマハ株式会社 | 鍵盤楽器 |
| JP6070735B2 (ja) * | 2015-02-04 | 2017-02-01 | ヤマハ株式会社 | 鍵盤楽器 |
| JP6299621B2 (ja) | 2015-02-04 | 2018-03-28 | ヤマハ株式会社 | 鍵盤楽器 |
| JP6645128B2 (ja) * | 2015-11-04 | 2020-02-12 | ヤマハ株式会社 | 鍵盤楽器及び該鍵盤楽器における補正情報取得方法 |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5254804A (en) * | 1989-03-31 | 1993-10-19 | Yamaha Corporation | Electronic piano system accompanied with automatic performance function |
-
1995
- 1995-09-19 JP JP24032495A patent/JP3588872B2/ja not_active Expired - Fee Related
-
1996
- 1996-09-12 US US08/712,962 patent/US5691489A/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| US5691489A (en) | 1997-11-25 |
| JPH0981125A (ja) | 1997-03-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3588872B2 (ja) | 自動ピアノ | |
| JP3890649B2 (ja) | 自動ピアノの演奏データ変換装置 | |
| JP3620063B2 (ja) | 自動ピアノおよび演奏データ加工装置 | |
| JP5162938B2 (ja) | 楽音発生装置及び鍵盤楽器 | |
| US5652399A (en) | Automatic player piano and estimator for acceleration of depressed key incorporated in the automatic player piano | |
| US5731530A (en) | Automatic player piano exactly reproducing special touches | |
| US6271447B1 (en) | Velocity calculating system for moving object widely varied in velocity method for correcting velocity and keyboard musical instrument equipped with the velocity calculating system for accurately determining loudness of sounds | |
| JPH10161648A (ja) | 打鍵−打弦特性対応装置、駆動信号−打弦特性対応装置、および鍵盤楽器 | |
| JP3364908B2 (ja) | 鍵盤楽器の演奏記録装置およびその演奏再生装置 | |
| JP2005321576A (ja) | 自動演奏ピアノ | |
| JP4967406B2 (ja) | 鍵盤楽器 | |
| US6075196A (en) | Player piano reproducing special performance techniques using information based on musical instrumental digital interface standards | |
| JP3596015B2 (ja) | 自動ピアノ | |
| JP2002006833A (ja) | 鍵駆動装置 | |
| JP3541411B2 (ja) | 自動ピアノ | |
| CN100578608C (zh) | 高保真度自动演奏器乐器、其中使用的自动演奏器和方法 | |
| JP4687474B2 (ja) | 鍵盤楽器 | |
| JP2014112221A (ja) | 発音機構における打撃部材のための駆動制御装置 | |
| US7235727B2 (en) | Automatic piano, and method and program for automatically operating a key | |
| JPH07271354A (ja) | アコースティック楽器の自動演奏システム | |
| JP4222395B2 (ja) | 自動演奏ピアノ | |
| JP3821116B2 (ja) | 自動ピアノ | |
| JPH087575B2 (ja) | 自動ピアノ | |
| JP4135275B2 (ja) | 速度検出装置及び速度検出方法 | |
| JP2005292803A (ja) | 自動ピアノ及び鍵を自動的に操作するためのプログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20031209 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040209 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040406 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040531 |
|
| 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: 20040727 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040809 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070827 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080827 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090827 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100827 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100827 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110827 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120827 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130827 Year of fee payment: 9 |
|
| LAPS | Cancellation because of no payment of annual fees |
