(57)【特許請求の範囲】
【請求項１】
発音時刻情報および発音強度情報に基づいて鍵の押鍵軌道を算出するとともに、離鍵時刻情報および離鍵速度情報に基づいて鍵の離鍵軌道を算出する軌道算出手段と、
指令値に応じて鍵を駆動する駆動手段と、
指令値を前記駆動手段に供給する指令値出力手段と、
押鍵軌道が次の離鍵の離鍵軌道に交差するか否か、または離鍵軌道が次の押鍵の押鍵軌道に交差するか否かを判定する交差判定手段と、
押鍵軌道と離鍵軌道との交差点に達する前に押鍵軌道から離鍵軌道へ至るか、または離鍵軌道から押鍵軌道へ至る短縮軌道を算出する短縮軌道算出手段と
を具備し、
前記指令値出力手段は、押鍵軌道と離鍵軌道とが交差すると前記交差判定手段によって判定されたときには、前記短縮軌道算出手段が算出した短縮軌道に対応する指令値を前記駆動手段に供給し、押鍵軌道と離鍵軌道とが交差しないと前記交差判定手段によって判定されたときには、前記軌道算出手段が算出した押鍵軌道および離鍵軌道に対応する指令値を前記駆動手段に供給する
ことを特徴とする自動ピアノ。
【請求項２】
前記交差判定手段は、押鍵軌道と離鍵軌道とが交差しないと判定したときに、鍵を押し切ったときのエンド位置または鍵を押していないときのレスト位置に短縮軌道が達するか否かを判定し、
前記指令値出力手段は、前記交差判定手段により、押鍵軌道と離鍵軌道とが交差すると判定されたときと、短縮軌道がエンド位置またはレスト位置に達しないと判定されたときには、短縮軌道に対応する指令値を前記駆動手段に供給し、そうでないときには前記軌道算出手段が算出した押鍵軌道および離鍵軌道に対応する指令値を前記駆動手段に供給する
ことを特徴とする請求項１に記載の自動ピアノ。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
この発明は、自動的に鍵盤を駆動して演奏を行う自動ピアノに関する。
【０００２】
【従来の技術】
自動ピアノにおいては、ソレノイドを励磁して鍵を駆動すると、これに応じてハンマが回転して打弦がおこなわれる。そして、ハンマによる打弦の強弱は、鍵の駆動速度に対応し、鍵の駆動速度はソレノイドへの供給電流に対応する。したがって、ソレノイドへの給電量を制御することにより、打弦の強弱、すなわち、発生楽音の大きさを制御することができる。
【０００３】
また、自動ピアノにおいては、演奏情報を記録する際に、打弦直前のハンマの速度を検出し、これを打弦強度を示すデータ（以下、打弦強度データという）として記録するとともに、ハンマが打弦位置を通過する時刻を打弦時刻データとして記録する。なお、打弦時刻データは、一般的に一つ前の音との間隔を示す時間データ（相対時間データ）として記録されるが、演奏開始時からの絶対時刻が記録されることもある。
そして、記録した演奏情報を再生する際には、演奏情報中の打弦強度データに応じた電流をソレノイドに供給する。また、ソレノイドへの給電量制御は、一般にはパルス幅変調（ＰＷＭ）によって行われる。
【０００４】
この場合、鍵を駆動し始めてからハンマが実際に打弦するまでの時間差を見込んで、打弦時刻データが示す打弦タイミングより少し前にソレノイドへの給電を行う。また、強音と弱音では、押鍵開始から打弦までの時間が異なるので、打弦強度データに応じて、ソレノイドへの給電タイミングを調整するようにした自動ピアノも開発されている。
また、離鍵の場合は、鍵の離鍵タイミングをフォトセンサによって検出して記録し、再生時には離鍵タイミングに応じた時刻にソレノイドを非励磁にするという制御を行っていた。
【０００５】
ところで、ピアノの演奏においては、いわゆるハーフストロークと言われる奏法がなされることがあり、この場合には、完全に押鍵される（鍵をエンド位置まで押し切る）前に離鍵が開始されたり、あるいは、離鍵の途中から次の押鍵操作に入る。
【０００６】
しかしながら、従来の自動ピアノにおいては、押鍵タイミングの少し前にソレノイドを励磁し、離鍵タイミングの少し前にソレノイドを非励磁にするという単純な制御を行っており、押鍵や離鍵が途中までしか行われないハーフストロークの再現については、何等考慮されていなかった。このため、ハーフストロークで演奏される部分については、押鍵や離鍵にタイミングずれが生じ、特に、ハーフストロークの連打においては、再現が不能になるという問題が生じた。
【０００７】
そこで、本出願人は、先に、押離鍵の開始時刻、完了時刻あるいは押離鍵の軌道の交差からハーフストロークか否かを判定し、ハーフストロークと判定した場合は、押鍵の途中から離鍵処理へ移行し、または離鍵の途中から押鍵処理に移行することにより、ハーフストロークを忠実に再現することができる自動ピアノを提案した（特願平５ー３４４２４２号）。
【０００８】
【発明が解決しようとする課題】
ところが、上記自動ピアノにおいては、ハーフストロークで演奏する場合に押鍵の途中から離鍵処理へ移行し、または離鍵の途中から押鍵処理に移行するため、鍵の動作速度が急激に変化する。このため、特に、連打を行った場合に以下のような挙動を示す心配があった。
▲１▼離鍵から押鍵に移行するときに、鍵が跳ね返されるような状態となることがある。このような場合には、鍵に勢いが生じて音量が打弦強度データが示す値よりも大きくなる。
▲２▼離鍵から押鍵に移行するときに、鍵に生じた慣性のために押鍵が適切になされないことがあり、このような場合には、一部の打弦に抜けが生じたり、打弦のタイミングがずれてリズムが乱れたりする。
▲３▼エンド位置近くで連打を行うことにより、ダンパによる止音を弱くして発音の響きを大きくする演奏手法が用いられることがある。ところが、上記した技術では、離鍵の際に鍵が戻りすぎて止音が意図したよりも強くなる傾向がある。
▲４▼鍵の動作がシャープなため見た目が不自然となる。
以上は、連打による演奏を行った場合に予想される現象であるが、レスト位置からエンド位置の間で押離鍵を行うフルストロークの演奏を行った場合においても、鍵の動作開始が急激に行われるためその動作にゆらぎが生じることがあり、このような場合には打鍵や止音に乱れが生じる。
この発明は、上述した事情に鑑みてなされたもので、ハーフストロークによる演奏を行った場合に鍵に自然な動作を与えることができ、しかも、連打を円滑に行うことができる自動ピアノを提供することを目的としている。また、本発明は、フルストロークによる演奏を行った場合の鍵の動作のゆらぎを抑制することができる自動ピアノを提供することも目的としている。
【０００９】
【課題を解決するための手段】
上述した課題を解決するために、請求項１に記載の発明は、発音時刻情報および発音強度情報に基づいて鍵の押鍵軌道を算出するとともに、離鍵時刻情報および離鍵速度情報に基づいて鍵の離鍵軌道を算出する軌道算出手段と、指令値に応じて鍵を駆動する駆動手段と、指令値を前記駆動手段に供給する指令値出力手段と、押鍵軌道が次の離鍵の離鍵軌道に交差するか否か、または離鍵軌道が次の押鍵の押鍵軌道に交差するか否かを判定する交差判定手段と、押鍵軌道と離鍵軌道との交差点に達する前に押鍵軌道から離鍵軌道へ至るか、または離鍵軌道から押鍵軌道へ至る短縮軌道を算出する短縮軌道算出手段とを具備し、前記指令値出力手段は、押鍵軌道と離鍵軌道とが交差すると前記交差判定手段によって判定されたときには、前記短縮軌道算出手段が算出した短縮軌道に対応する指令値を前記駆動手段に供給し、押鍵軌道と離鍵軌道とが交差しないと前記交差判定手段によって判定されたときには、前記軌道算出手段が算出した押鍵軌道および離鍵軌道に対応する指令値を前記駆動手段に供給することを特徴としている。
【００１０】
請求項２に記載の発明においては、請求項１において、前記交差判定手段は、押鍵軌道と離鍵軌道とが交差しないと判定したときに、鍵を押し切ったときのエンド位置または鍵を押していないときのレスト位置に短縮軌道が達するか否かを判定し、前記指令値出力手段は、前記交差判定手段により、押鍵軌道と離鍵軌道とが交差すると判定されたときと、短縮軌道がエンド位置またはレスト位置に達しないと判定されたときには、短縮軌道に対応する指令値を前記駆動手段に供給し、そうでないときには前記軌道算出手段が算出した押鍵軌道および離鍵軌道に対応する指令値を前記駆動手段に供給することを特徴としている。
【００１１】
請求項１に記載の発明においては、押鍵軌道および離鍵軌道が交差すると判定されたときは、軌道の交差点を通らずに短縮軌道に沿って鍵を駆動し、押鍵軌道から離鍵軌道あるいは離鍵軌道から押鍵軌道へ移行する。このため、鍵の速度が急激に変化することがなく、鍵の動作が滑らかになって違和感のない自然な動作を得ることができる。また、鍵の速度が急激に変化しないため、連打時に押鍵時の音量が大きくなったり、打弦の抜けやリズムの狂いが生じる等の問題は解消され、連打を円滑に行うことができる。
【００１２】
請求項２に記載の発明においては、押鍵軌道および離鍵軌道が交差しないと判定された場合であっても、押鍵スローダウン軌道と離鍵スローアップ軌道とが交差すると判定されたとき、または離鍵スローダウン軌道と押鍵スローアップ軌道とが交差すると判定されたときは短縮軌道を算出して鍵を駆動する。よって、押鍵の次に離鍵を行った場合には離鍵開始後に鍵の速度が徐々に変化する。また、離鍵の次に押鍵を行った場合も押鍵開始後に鍵の速度が徐々に変化する。このように、記録時にはフルストロークの演奏による押鍵または離鍵を行った場合であっても、再生時には短縮軌道によって離鍵開始時または押鍵開始時に鍵の速度が徐々に変化するから、鍵の動作のゆらぎの発生を少なくすることができる。
【００１３】
【発明の実施の形態】
Ａ：第１の実施の形態
（イ）構成
図１は、この発明の第１の実施の形態の構成を示すブロック図である。図において１は鍵であり、３は鍵１の運動をハンマ２に伝達するアクションである。４は、ハンマ２によって打弦される弦であり、５は鍵１を駆動するソレノイドである。ソレノイド５には、プランジャの位置を検出するセンサが設けられている。そして、ソレノイド５のプランジャが突出すると、鍵１がバランスピンＰを中心に回動し、その演奏者側が下がり（以下、この状態を押鍵状態という）、また、これに連動してアクション３が作動し、ダンパー６が弦４から離れるとともに、ハンマ２が回動して打弦する。一方、演奏者が弾く場合は、指で鍵１を押下することにより、上述と同様の作用が生じて打弦が行われる。
【００１４】
また、図において、ＳＥ１，ＳＥ２は、打弦速度を計測するためのセンサであり、演奏記録部３０は、ハンマ２がこれらのセンサＳＥ１，ＳＥ２の間を通過する時間を計測することにより、ハンマ２の速度、すなわち、打弦速度を計測し、また、ハンマ２がセンサＳＥ１を通過する時刻を打弦時刻として検出する。なお、ハンマ２が実際に打弦する時刻にセンサＳＥ１で検出される打弦時刻をより近づけるために、センサＳＥ１はハンマ２の打弦位置に近接した位置に設けられている。
次に、図に示す２６は、鍵１の下面に取り付けられた板状のシャッタである。２５は、上下方向に所定距離隔て設けられる２組のフォトセンサによって構成されているキーセンサであり、鍵１が押下され始めると、まず上方のフォトセンサが遮光され、次いで、下方のフォトセンサが遮光される。離鍵の際には、下方のフォトセンサが受光状態になり、ついで、上方のセンサが受光状態になる。
【００１５】
キーセンサ２５の出力信号は、演奏記録部３０に供給され、演奏記録部３０は、キーセンサ２５内の下方のフォトセンサが受光状態になってから上方のフォトセンサが受光状態になるまでの時間を測定し、ここから、離鍵速度を検出する。また、演奏記録部３０は上方のフォトセンサが受光状態になった時刻を離鍵時刻として検出する。
【００１６】
すなわち、演奏記録部３０は、演奏が開始されると、センサＳＥ１，ＳＥ２の出力信号に基づいて、打弦時刻および打弦速度を検出し、かつ、キーセンサ２５の出力信号に基づいて離鍵時刻および離鍵速度を検出する。以上のようにして検出された各情報は、記録後処理部３１に供給される。
【００１７】
記録後処理部３１においては、演奏記録部３０から供給される各種情報に対し、正規化処理を施した後に、外部の記録媒体に演奏情報として供給する。ここで、正規化処理とは、ピアノの個体差を吸収するための処理である。すなわち、打弦速度、打弦時刻、離鍵速度、離鍵時刻等は、各ピアノにおけるセンサの位置や、構造上の違い、あるいは機械的誤差によって固有の傾向を持つため、標準となるピアノを想定し、そのピアノにおける打弦速度、打弦時刻等に変換するための処理である。
【００１８】
１０は再生前処理部であり、記録メディアあるいはリアルタイム通信装置から供給される演奏データに基づいて、鍵の軌道データを作成するとともに軌道データを用いて鍵の位置データ（ｔ，Ｘ）を作成する回路であり、後述する制御原理に基づいて動作する。
再生前処理部１０で作成された位置データ（ｔ，Ｘ）は、モーションコントローラ１１に供給される。モーションコントローラ１１は、供給された位置データ（ｔ，Ｘ）に基づいて、各時刻における鍵１の位置に対応した位置制御データ（Ｘ）を作成し、サーボコントローラ１２に供給する。
サーボコントローラ１２は、位置制御データ（Ｘ）に応じた励磁電流をソレノイド５に供給するとともに、ソレノイド５から供給されるフィードバック信号と制御データ（Ｘ）を比較し、両者が一致するようにサーボ制御を行う。
【００１９】
（ロ）軌道作成の原理
次に、本実施形態における再生前処理部１０における軌道作成の原理について説明する。
▲１▼リファレンスポイント
鍵１を押し下げる速度に応じてハンマ２の打弦速度が決まるが、鍵１の速度は初め遅くて次第に早くなる場合や、その逆の場合もあり、さらには、ほとんど一定の速さで押される場合もある。この場合、鍵１のレスト位置からエンド位置に至るまでの速度と、ハンマ２の打弦速度とがどのような関係になっているのかが重要である。なぜならば、その関係を考察せず、打弦強度データに応じて鍵速度（初期速度など）を制御しても、記録時の打弦速度を再生することはできないからである。
【００２０】
実験によれば、鍵１のある位置における速度とハンマ２の打弦速度とが極めて良い対応を示すことが判った。この位置は、ピアノの個体差にもよるが、概ねレスト位置から９．０ｍｍ〜９．５ｍｍ程度押し下げた位置であった。したがって、鍵１がこの位置に達するときの速度を、打弦強度データに応じて制御すれば、記録時の打弦速度を忠実に再現することができる。なお、以下においては、上述の所定位置をリファレンスポイントＸｒという。
【００２１】
▲２▼リファレンス速度
次に、上述のようにして求めたリファレンスポイントＸｒにおいて、どのような鍵速度にすれば、打弦速度を忠実に再現することができるかを設定する必要がある。なお、以下においては、リファレンスポイントＸｒにおける鍵速度をリファレンス速度Ｖｒという。
【００２２】
ここで、図２はリファレンスポイントＸｒを９．５ｍｍに設定したときの鍵速度と打弦速度の関係を示す図である。図中、白点は鍵をエンド位置まで押し切る単打奏法を行った場合の結果を示し、黒点は鍵をエンド位置まで押し切らずに連打する連打奏法を行った場合の結果を示している。また、Ｃ１は１次最小自乗法近似による直線、Ｃ２は６次最小自乗法による曲線を示している。
【００２３】
図２から明らかなように、リファレンス速度Ｖｒは、直線Ｃ１あるいは曲線Ｃ２のいずれによっても近似できる。したがって、近似性のよい関数を適宜選択すれば、この関数を用いて任意の打弦強度データ（記録時の打弦速度情報）からリファレンス速度Ｖｒを決定することができる。
この実施形態においては、計算が簡単で誤差の少ない１次関数近似を採用している。したがって、リファレンス速度Ｖｒは、次式によって求められる。
【００２４】
【数１】
0003588872.tif 000002
数１において、ＶＨは打弦速度（打弦強度データ）であり、αおよびβは定数である。定数αおよびβは、ピアノの機種等に応じ実験等によって決定する。なお、αおよびβは、同一ピアノであっても、リファレンスポイントＸｒをどこにするかによって変動する。
【００２５】
▲３▼リファレンス時間差
さて、演奏情報に含まれる打弦時刻データは、前述したように、相対時刻あるいは絶対時刻で記録されているが、いずれにしても再生側自動ピアノにおいて打弦時刻データを読みとって処理することにより、再生時の各音の打弦絶対時刻が求められる。そこで、このようにして求めた打弦絶対時刻において正確に打弦を行わせるには、鍵が何時リファレンスポイントＸｒを通過すればよいかを求める必要がある。
【００２６】
ここで、鍵１がリファレンスポイントＸｒを通過する時刻（以下、リファレンス時刻ｔｒという）と打弦時刻（正確には、ハンマが打弦位置直前にあるセンサＳＥ１を通過した時刻）との時間差をリファレンス時間差Ｔｒと定義し、これと打弦速度との関係を実験により求めたものが図３である。図３において、白点は単打奏法による結果、黒点は連打奏法による結果を示している。そして、図３を縮尺２倍にしたものが図４であり、縮尺４倍にしたものが図５である。これらの図から判るように、リファレンス時間差Ｔｒと打弦速度との関係は、双曲線により極めて良好に近似される。すなわち、このリファレンス時間差Ｔｒは、打弦速度ＶＨを分母にする１変数式で近似することができ、次式によって算出される。
【００２７】
【数２】
0003588872.tif 000003
なお、数２における定数γおよびδは、ピアノの機種等に応じ実験等によって決定する。また、γおよびδは、同一ピアノであっても、リファレンスポイントＸｒをどこにするかによって変動する。これは、数１におけるα、βの場合と同様である。
【００２８】
さて、数２によって、リファレンス時間差Ｔｒが求まれば、再生側の打弦絶対時刻からリファレンス時間差Ｔｒを減算することによって、リファレンス時刻ｔｒが求められ、結局、上述した▲１▼、▲２▼、▲３▼の処理により、リファレンスポイントＸｒ、リファレンス速度Ｖｒ、およびリファレンス時刻ｔｒが求められる。したがって、リファレンス時刻ｔｒにリファレンスポイントＸｒに達し、かつ、その時の速度がリファレンス速度Ｖｒとなるように鍵１を駆動すれば、記録時の打弦状態を忠実に再現することができる。
なお、鍵１がリファレンスポイントＸｒに達したときに打弦が行われるのであれば、リファレンス時間差Ｔｒを求める処理は不要になる。
【００２９】
▲４▼押鍵時の軌道データ作成
図６は、鍵の押鍵軌道を示す図であり、レスト位置Ｘ０から等速運動をしてエンド位置Ｘｅに至っている。ここで、鍵の初速度をＶ０、鍵の位置をＸ、鍵の駆動開始時点からの時間をｔとすれば、鍵の軌道は、
【００３０】
【数３】
0003588872.tif 000004
と表される。
また、鍵がリファレンスポイントＸｒに達する時刻をｔｒ’とすると、
【００３１】
【数４】
0003588872.tif 000005
なる式が成り立つから、この数４から時刻ｔｒ’を求めることができる。したがって、押鍵を開始する絶対時刻（以下、押鍵開始時刻という）ｔ０は、次式によって求めることができる。
【００３２】
【数５】
0003588872.tif 000006
なお、リファレンス時刻ｔｒは、前述のように、打弦時刻からリファレンス時間差Ｔｒを減算することによって求める。
上記数５によって押鍵開始時刻ｔ０を求め、この時刻から、数３で示される軌道に従って鍵１を駆動すれば、鍵１は、リファレンス時刻ｔｒにおいて正確にリファレンスポイントＸｒに達し、しかも、その時の速度は、打弦強度データに対応したレファレンス速度Ｖｒとなる。
【００３３】
なお、鍵の挙動については、直線軌道（等速運動）を想定しているから、リファレンス速度Ｖｒと初速度Ｖ０は等しい。そして、リファレンス速度Ｖｒは、前述の数１によって求められるから、結局、数５で求めた押鍵開始時刻ｔ０から一定速度ｖｒで鍵を駆動するように制御（速度制御）することができる。
【００３４】
▲５▼離鍵時の軌道データ作成
次に、離鍵時の軌道データ作成について説明する。
まず、鍵の位置をＸＮ、離鍵初速度をＶ０Ｎ（＜０）、離鍵開始時点からの時間をｔＮ、エンド位置をＸｅとすれば、離鍵時の鍵軌道は、次式で表される。
【００３５】
【数６】
0003588872.tif 000007
ここで、図７は数６で示される軌道を示す図である。
さて、前述のように、演奏記録部３０（図１参照）は、キーセンサ２５内の下方のフォトセンサが受光状態になってから上方のフォトセンサが受光状態になるまでの時間を測定して離鍵速度ＶｋＮを検出し、また、上方のフォトセンサが受光状態になった時刻を離鍵時刻ｔｋＮとして検出する。この場合、離鍵時刻ｔｋＮにおけるダンパ６は、弦４に接して音の減衰を開始する状態なっている（そのような状態になるようフォトセンサの位置が調整されている）。そして、このようにして検出された離鍵速度ＶｋＮおよび離鍵時刻ｔｋＮは、それぞれ演奏情報を構成するデータとして記録され、再生時に読み出される。
【００３６】
ここで、ダンパ６が弦４に接するときの鍵の位置を離鍵リファレンスポイントＸｒＮと定義すれば、鍵１が離鍵リファレンスポイントＸｒＮに達したときに、離鍵状態になったということができる。したがって、鍵１が離鍵リファレンスポイントＸｒＮに達する時刻（以下、離鍵リファレンス時刻ｔｒＮという）と、演奏情報中の離鍵時刻ｔｋＮとが一致するように鍵位置を制御すれば、正確な離鍵タイミング制御を行うことができる。
【００３７】
また、ダンパ６が弦４に接する速さは、音の減衰状態に影響を与えるから、これを忠実に再現することが望ましい。この速さは、離鍵速度ＶｋＮに対応するから、結局、離鍵リファレンスポイントＸｒＮにおける鍵速度（以下、離鍵リファレンス速度ＶｒＮという）を正確に離鍵速度ＶｋＮに一致させれば、音の減衰状態が正確に再現される。
ここで、鍵の駆動が開始される時刻を基準（＝０）にして、鍵が離鍵リファレンスポイントＸｒＮに達する時刻をｔｒＮ’とすると、
【００３８】
【数７】
0003588872.tif 000008
（ただし、直線軌道だからＶ０Ｎ＝ＶｒＮ＝ＶｋＮ）
なる関係が成り立ち、この数７より時刻ｔｒＮ’を求めることができる。したがって、次式によって離鍵開始時刻ｔ０Ｎを求めることができる。
【００３９】
【数８】
0003588872.tif 000009
この数８によって離鍵開始時刻ｔ０Ｎを求め、この時刻から、数６で示される軌道に従って鍵を駆動すれば、鍵は離鍵時刻ｔｋＮにおいて離鍵リファレンスポイントＸｒＮに達し、記録時の離鍵状態を忠実に再現することができる。
なお、時刻ｔ０から速度Ｖ０Ｎ（＝ＶｋＮ：離鍵速度）で鍵駆動するように制御（速度制御）しても上記と同様の結果を得ることができる。
【００４０】
▲６▼押鍵スローダウン・離鍵スローアップ軌道データ作成
（ａ）トランジット位置
上述のようにして作成される押鍵軌道および離鍵軌道は直線状をなす等速軌道であり、以下、これらをそれぞれ押鍵等速軌道、離鍵等速軌道と称する。ここで、押鍵から離鍵へ移る演奏がハーフストロークで行われた場合には、押鍵等速軌道と離鍵等速軌道は、図８（Ａ）に示すように、エンド位置Ｘｅに至る手前で交差する。この自動ピアノでは、押鍵の際には、レスト位置Ｘ０から所定位置ＸＴまでは押鍵等速軌道に基づいて鍵１を制御し、所定位置ＸＴとエンド位置Ｘｅの間の範囲では、２次曲線の軌道（以下、押鍵スローダウン軌道と称する）に基づいて鍵１を制御する。また、離鍵の際には、所定位置ＸＴからレスト位置Ｘ０までは離鍵等速軌道に基づいて鍵１を制御し、所定位置ＸＴとエンド位置Ｘｅの範囲では、２次曲線の軌道（以下、離鍵スローアップ軌道と称する）に基づいて鍵１を制御する。なお、以下の説明においては、「所定位置」をトランジット位置と称する。また、押鍵等速軌道がトランジット位置ＸＴに達する時刻を押鍵中間時刻（ｔＰＴ）、離鍵等速軌道がトランジット位置ＸＴから開始する時刻を離鍵中間時刻（ｔＮＴ）と称する。
ここで、トランジット位置ＸＴは、鍵１に自然な動作を与えるべく適宜設定されるが、押鍵等速軌道が短すぎると、打鍵速度の再現性を不安定にする。よって、押鍵から離鍵へ移る演奏の場合には、トランジット位置ＸＴは、レスト位置Ｘ０とエンド位置Ｘｅの中間よりもエンド位置Ｘｅ寄りにする。
【００４１】
（ｂ）等速時交差時刻ｔｃの計算
図８（Ａ）に示すように、押鍵等速軌道および離鍵等速軌道どうしが交差する位置（以下、等速時交差位置と称する）をＸｃとし、等速時交差位置Ｘｃに達する時刻（以下、等速時交差時刻と称する）をｔｃとすると、この交差時刻ｔｃは、押鍵等速軌道および離鍵等速軌道の軌道データから計算により求めることができる。そこで、等速時交差時刻ｔｃに鍵の速度が０となるように、押鍵スローダウン軌道および離鍵スローアップ軌道を設定すれば、図８（Ｂ）に示すように、押鍵スローダウン軌道においては、押鍵中間時刻ｔＰＴから等速時交差時刻ｔｃまでの間に、鍵の速度ＶがＶ０から０まで変化するような軌道を設定すればよい。また、離鍵スローアップ軌道においては、等速時交差時刻ｔｃから離鍵中間時刻ｔＮＴまでの間に、鍵の速度Ｖが０からＶ０Ｎ（＜０）まで変化するような軌道を設定すればよい。そこで、まず、等速時交差時刻ｔｃを以下のようにして求める。
【００４２】
押鍵開始時刻ｔ０から等速時交差時刻ｔｃまでの時間をａ、等速時交差時刻ｔｃから離鍵等速軌道が終了する時刻ｔ４までの時間をｂとすると、下記式が成立する。
【数９】
0003588872.tif 000010
【数１０】
0003588872.tif 000011
また、数９および数１０により、下記式が成立する。
【数１１】
0003588872.tif 000012
【００４３】
次に、等速時交差時刻ｔｃは、押鍵開始時刻ｔ０に時間ａを加算すれば良いから下記式によって算出される。
【数１２】
0003588872.tif 000013
ここで、数１２におけるｔ４は、離鍵等速軌道がレスト位置Ｘ０に達する時刻であって、数８によって算出したｔ０Ｎを用いて次式により算出される。
【数１３】
0003588872.tif 000014
【００４４】
（ｃ）押鍵スローダウン軌道データの作成
次に、押鍵スローダウン軌道における押鍵加速度ａＰを下記式によって求める。
【数１４】
0003588872.tif 000015
ただし、数１４におけるｔＰＴは次式により算出される。
【数１５】
0003588872.tif 000016
【００４５】
また、押鍵スローダウン軌道における押鍵速度Ｖは数１４で求められるａＰ（＜０）を用いて下記数１６によって求めることができ、押鍵スローダウン軌道は、下記数１７によって表すことができる。ただし、式中ｔは、押鍵スローダウン軌道および離鍵スローアップ軌道における絶対時刻である。
【数１６】
0003588872.tif 000017
【数１７】
0003588872.tif 000018
ただし、Ｐ１，Ｑ１，Ｒ１は定数であり、これらは、数１７と数１７をｔで微分した式に図８（Ａ）に示すｔの特定値を代入することにより求めることができる。すなわち、数１７は、時刻ｔＰＴで傾きがＶ０、等速時交差時刻ｔｃで傾きが０となる２次関数であり、時刻ｔＰＴにおける値がＸＴであるから、これらの値を上記式に代入すればよい。
【００４６】
（ｄ）離鍵スローアップ軌道データの作成
次に、離鍵スローアップ軌道における離鍵加速度ａＮ（＜０）を以下のようにして求める。
【数１８】
0003588872.tif 000019
ここで、数１８におけるｔＮＴは次式により算出される。
【数１９】
0003588872.tif 000020
また、離鍵スローアップ軌道における離鍵速度Ｖは下記数２０によって求めることができ、離鍵スローアップ軌道は下記数２１によって表すことができる。ただし、ａＮ＜０である。
【数２０】
0003588872.tif 000021
【数２１】
0003588872.tif 000022
ただし、Ｐ２，Ｑ２，Ｒ２は定数であり、これらは、数２１と数２１をｔで微分した式に図８（Ａ）に示すｔの特定値を代入することにより求めることができる。すなわち、数２１は、時刻ｔＮＴで傾きがＶ０Ｎ、速度等速時交差時刻ｔｃで傾きが０となる２次関数であり、時刻ｔＮＴにおける値がＸＴであるから、これらの値を上記式に代入すればよい。この場合において、数２１の最大値は数１７の最大値と等しくなり、よって、これら２つの式で表される２次曲線は等速時交差時刻ｔｃに交差する。なお、以下の説明においては、２つの２次曲線が交差する位置を交差位置（Ｘｃ’）と称する。
【００４７】
（ｄ）押鍵スローダウン・離鍵スローアップ軌道データの作成判定
ハーフストロークで演奏が行われた場合には、押鍵等速軌道と離鍵等速軌道とが交差し、押鍵スローダウン軌道と離鍵スローアップ軌道は交差位置Ｘｃ’で交差する。また、図９（Ａ）に示すように、押鍵等速軌道と離鍵等速軌道は交差しないが、押鍵スローダウン軌道と離鍵スローアップ軌道を作成したときに両者が交差する場合がある。さらに、図９（Ａ）において交差位置Ｘｃ’がエンド位置Ｘｅを越えた位置に存する場合には、押鍵スローダウン軌道と離鍵スローアップ軌道は交差しない。
【００４８】
このように、離鍵等速軌道と押鍵等速軌道とが交差しない場合には、押鍵スローダウン軌道と離鍵スローアップ軌道が交差する場合と交差しない場合が生じる。この自動ピアノにおいては、前者の場合に押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データを作成し、後者の場合には軌道データを作成しないこととしている。その結果、押鍵スローダウン軌道と離鍵スローアップ軌道とが交差しない場合には、鍵は離鍵等速軌道と押鍵等速軌道の軌道データに基づいて制御される。すなわち、図６および図７に示す軌道によって押鍵と離鍵とが行われる。このように、押鍵スローダウン軌道と離鍵スローアップ軌道が交差するか否かにより、作成すべき軌道データが異なってくるため、交差するか否かを以下の方法により判定する。
【００４９】
まず、押鍵等速軌道と離鍵等速軌道とが交差すれば、押鍵スローダウン軌道と離鍵スローアップ軌道は交差する。よって、押鍵等速軌道と離鍵等速軌道が交差するか否かによって上記軌道が交差するか否かを判定することができる。この判定には以下の３種類の方法があり、いずれの方法を採用しても良い。
▲１▼まず、等速時交差位置Ｘｃがエンド位置Ｘｅよりも内側（レスト位置Ｘ０側）にあれば、押鍵スローダウン軌道と離鍵スローアップ軌道は交差する。
よって、「等速時交差位置Ｘｃ＜エンド位置Ｘｅ」であれば、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。なお、等速時交差位置Ｘｃは下記式により算出される。
【数２２】
0003588872.tif 000023
ここで、数２２の右辺第２項は、レスト位置Ｘ０から等速時交差位置Ｘｃまでの距離を示し、この距離は、数９〜数１１を用いて算出することができる。
【００５０】
▲２▼押鍵等速軌道がエンド位置Ｘｅに達する時刻ｔ３が離鍵開始時刻ｔ０Ｎよりも遅ければ、これら２つの軌道は交差する。
よって、「離鍵開始時刻ｔ０Ｎ＜時刻ｔ３」であれば押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。
▲３▼押鍵等速軌道がエンド位置Ｘｅに達する時刻ｔ３よりも等速時交差時刻ｔｃが早ければ、押鍵等速軌道と離鍵等速軌道は交差する。
よって、「等速時交差時刻ｔｃ＜時刻ｔ３」ならば押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。なお、「離鍵開始時刻ｔ０Ｎ＜等速時交差時刻ｔｃ」の場合にも交差すると判定することができる。
【００５１】
次に、上記いずれの条件も満たさない場合には、以下のいずれかの方法により押鍵スローダウン軌道と離鍵スローアップ軌道が交差するか否かを判定する。
▲１▼まず、上述の交差位置Ｘｃ’は、等速時交差位置Ｘｃとトランジット位置ＸＴの中央に位置するので、下記式によって求めることができる。
【数２３】
0003588872.tif 000024
そこで、「交差位置Ｘｃ’＜エンド位置Ｘｅ」ならば、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。
【００５２】
▲２▼次に、押鍵スローダウン軌道と離鍵スローアップ軌道とが交差するか否かの臨界条件を考えると、それは、図９（Ａ）において交差位置Ｘｃ’がエンド位置Ｘｅと一致する状態であり、この場合には、押鍵スローダウン軌道と離鍵スローアップ軌道の押鍵速度Ｖがともにエンド位置Ｘｅで０になる。ここで、数１７で表される押鍵スローダウン軌道と数２１で表される離鍵スローアップ軌道は、等速時交差時刻ｔｃで傾きが０となる２次曲線であるが、エンド位置Ｘｅで傾きが０となる２次曲線を押鍵スローダウン軌道と離鍵スローアップ軌道速度についてそれぞれ想定する。すなわち、図１０（Ａ）に示すように、エンド位置Ｘｅに時刻ｔＰＥ’に達して押鍵速度Ｖが０になる押鍵スローダウン軌道と、時刻ｔＮＥ’にエンド位置Ｘｅで開始する離鍵スローアップ軌道を想定すると、図１０（Ａ）に示す状態は、押鍵スローダウン軌道と離鍵スローアップ軌道とが交差しない場合に含まれる。
【００５３】
そこで、「時刻ｔＮＥ’＜時刻ｔＰＥ’」ならば、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。なお、時刻ｔＰＥ’およびｔＮＥ’は、下記式で求めることができる。
【数２４】
0003588872.tif 000025
【数２５】
0003588872.tif 000026
【００５４】
▲３▼「等速時交差時刻ｔｃ＜時刻ｔＰＥ’」ならば、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定する。なお、「時刻ｔＮＥ’＜等速時交差時刻ｔｃ」のときに、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定することもできる。
以上が再生前処理部１０における軌道データの作成原理である。
【００５５】
（ハ）第１の実施の形態の動作
始めに、記録動作について説明する。まず、演奏者によって演奏が行われると、演奏記録部３０がセンサＳＥ１，ＳＥ２の出力信号に基づいて打弦速度および打弦時刻を検出するとともに、センサ２５の出力信号に基づいて離鍵時刻および離鍵速度を検出する。これらの情報は、記録後処理部３１において正規化処理された後に、演奏情報としてフロッピーディスク等の記録媒体に記録される。
【００５６】
次に、再生動作について図１１および図１２を参照して説明する。まず、再生前処理部１０は、記録媒体から演奏情報を読み出すか、あるいは、外部から供給される演奏情報を受信し、その中に打弦イベントの演奏情報が含まれるか否かを判定する（ステップＳ１）。そして、打弦イベントの演奏情報が含まれる場合には、ステップＳ１での判定結果は「ＹＥＳ」となり、ステップＳ２へ進んで数３に示す押鍵等速軌道の軌道データを作成する。押鍵等速軌道は、レスト位置Ｘ０からエンド位置Ｘｅに至る軌道であり、この軌道データは、演奏情報である打弦時刻データおよび打弦速度データに基づいて作成される。なお、ステップＳ１においては、打弦イベントの演奏情報を受信するまでその有無の判定を繰り返す。
【００５７】
次に、ステップＳ３へ進み、打弦イベントの後に続く離鍵イベントの演奏情報を受信しているか否かを判定する。すなわち、再生前処理部１０は、演奏情報を受信してから所定時間（例えば０．５秒）の間に、軌道データを作成するようになっている。よって、打弦イベントの演奏情報の受信と離鍵イベントの演奏情報の受信との時間差によっては、押鍵等速軌道の軌道データを作成した際に、これと対になる離鍵イベントの演奏情報が受信されていない場合が生じる。この場合には、前述の方法によっては押鍵スローダウン軌道や離鍵スローアップ軌道の軌道データを作成することはできない。このため、ステップ３においては、所定時間内に押鍵イベントと対になる離鍵イベントが受信されたか否かを判定するようにしている。そして、該当する離鍵イベントの受信があった場合には、ステップＳ４へ進んで数６に示す離鍵等速軌道の軌道データを作成する。
【００５８】
次に、ステップＳ５へ進んで押鍵スローダウン軌道と離鍵スローアップ軌道を作成するための交差処理を行う。図１２は交差処理を示すサブルーチンであって、まず、ステップＳ２およびＳ４において作成した押鍵等速軌道と離鍵等速軌道とが交差するか否かを判定する（ステップＳ１０）。演奏がハーフストロークで行われた場合には、これら２つの軌道は交差し、ステップＳ１０での判定結果は「ＹＥＳ」となる。この場合には、ステップＳ１１へ進んで上記２つの軌道の等速時交差時刻ｔｃを数１２を用いて計算する。次いで、ステップＳ１２へ進み、押鍵スローダウン軌道および離鍵スローアップ軌道における加速度ａＰ，ａＮを数１４および数１８を用いて計算する。そして、求めた加速度ａＰ，ａＮを用いて、数１７および数２１に示す押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データを作成する（ステップＳ１３およびＳ１４）。
【００５９】
一方、押鍵と離鍵とがフルストロークで行われた場合には、押鍵等速軌道と離鍵等速軌道とは交差しない。この場合には、ステップＳ１０での判定結果は「ＮＯ」となり、ステップＳ１５へ進んで押鍵スローダウン軌道と離鍵スローアップ軌道が交差するか否かを判定する。そして、押鍵スローダウン軌道と離鍵スローアップ軌道が交差すると判定した場合には、上述したステップＳ１１〜Ｓ１４の処理を行って押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データを作成する。以上の処理により押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データを作成すると、図１１に示すルーチンに戻る。そして、ステップＳ６へ進み、モーションコントローラ１１に供給する位置データ（ｔ，Ｘ）を作成する。なお、ステップＳ１５において、押鍵スローダウン軌道と離鍵スローアップ軌道が交差しないと判定した場合には、ステップＳ１１〜Ｓ１４の処理を行わずに図１１に示すルーチンに戻る。
【００６０】
ステップＳ６において作成する位置データ（ｔ，Ｘ）は、時刻ｔと、時刻ｔに対応する鍵の位置Ｘからなる。ここで、時刻ｔは、押鍵開始時刻ｔ０から離鍵が終了する時刻ｔ４までを一定のピッチで刻んだ時刻である。あるいは、押鍵スローダウン軌道と離鍵スローアップ軌道における時刻ｔのピッチを短くし、押鍵等速軌道および離鍵等速軌道における時刻ｔのピッチを長くすることもできる。このようにして時刻ｔのピッチを設定することにより、押鍵等速軌道および離鍵等速軌道における位置データ（ｔ，Ｘ）の計算を簡略化し、かつ、押鍵スローダウン軌道と離鍵スローアップ軌道における鍵１の動作を正確かつ滑らかにすることができる。
【００６１】
また、鍵の位置Ｘは、前述の方法によって求めた各軌道データに各時刻ｔを代入して求める。すなわち、押鍵開始時刻ｔ０から押鍵中間時刻ｔＰＴまでは、時刻ｔを数３に代入して押鍵等速軌道における鍵１の位置Ｘを求め、押鍵中間時刻ｔＰＴから等速時交差時刻ｔｃまでは、時刻ｔを数１７に代入して押鍵スローダウン軌道における鍵の位置Ｘを求める。また、等速時交差時刻ｔｃから離鍵中間時刻ｔＮＴまでは、時刻ｔを数２１に代入して離鍵スローアップ軌道における鍵の位置Ｘを求め、離鍵中間時刻ｔＮＴから時刻ｔ４までは、時刻ｔを数６に代入して離鍵等速軌道における鍵の位置Ｘを求める。そして、こうして作成した位置データ（ｔ，Ｘ）を、再生前処理部１０に設けたメモリの所定のアドレスから時刻ｔの順番に格納する。このように、メモリの所定のアドレスから時刻ｔの順番に位置データ（ｔ，Ｘ）を格納することにより、押鍵開始から離鍵終了までの鍵の位置Ｘを時刻ｔ毎に求めたシーケンシャルデータ列を作成する。なお、打弦イベントの後に続く離鍵イベントの演奏情報を受信していない場合には、ステップＳ３での判定結果は「ＮＯ」となり、ステップＳ６へ進んで押鍵等速軌道の位置データ（ｔ，Ｘ）のみをメモリに格納する。
【００６２】
次に、モーションコントローラ１１の処理を図１３を参照して説明する。まず、再生前処理部１０のメモリに位置データ（ｔ，Ｘ）が存在するか否かを判定し（ステップＳ２０）、位置データ（ｔ，Ｘ）が存在する場合には、ステップＳ２１へ進んで再生前処理部１０のメモリに格納されたシーケンスデータ列のうち、先頭アドレスの位置データ（ｔ，Ｘ）を読み出す。モーションコントローラ１１は、位置データ（ｔ，Ｘ）を読み出すと、ステップＳ２２に進んで現在の時刻が位置データ（ｔ，Ｘ）に示す時刻ｔ（この場合、時刻ｔは押鍵開始時刻ｔ０である）であるか否かを判定する。
【００６３】
そして、モーションコントローラ１１は、押鍵開始時刻ｔ０に達するまで位置データ（ｔ，Ｘ）の読出しを繰り返し（ステップＳ２１，Ｓ２２）、押鍵開始時刻ｔ０に達すると、ステップＳ２３へ進んで、位置データ（ｔ，Ｘ）に示された鍵の位置Ｘに対応する位置制御データ（Ｘ）をサーボコントローラ１２に供給する。これにより、鍵の位置Ｘに対応した励磁電流がソレノイド５に供給される。この場合、サーボコントローラ１２は、ソレノイド５のプランジャ（図示略）に設けた位置センサから供給されるフィードバック信号と位置制御データ（Ｘ）とを比較し、両者が一致するように励磁電流を制御する。次に、ステップＳ２４へ進み、シーケンスデータ列の次のアドレスにアクセスする。そして、上記ステップ２０〜Ｓ２４を繰り返してソレノイド５のプランジャを突出させてゆく。これにより、ソレノイド５のプランジャの突出量は、数３のＸに対応したものとなり、鍵１は押鍵等速軌道に従って制御される。
【００６４】
ここで、押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データが作成された場合には、押鍵中間時刻ｔＰＴ以後にシーケンシャルデータ列から読み出される位置データ（ｔ，Ｘ）は、数１７で求めたものとなる。このため、サーボコントローラ１２は、ソレノイド５のプランジャを数１７に示される２次曲線の押鍵スローダウン軌道に従って突出させてゆく。これにより、鍵１は押鍵スローダウン軌道に従って制御される。また、等速時時刻ｔｃに達すると、読み出される位置データ（ｔ，Ｘ）は、数２１で求めたものとなる。このため、サーボコントローラ１２は、ソレノイド５のプランジャを数２１に示される２次曲線の離鍵スローアップ軌道に従って縮小させてゆく。これにより、鍵１は離鍵スローアップ軌道に従って制御される。
【００６５】
次に、離鍵中間時刻ｔＮＴに達すると、読み出される位置データ（ｔ，Ｘ）は数６により求めたものとなるため、サーボコントローラ１２は、ソレノイド５のプランジャを数６に示される離鍵等速軌道に従って縮小させてゆく。これにより、鍵１は離鍵等速軌道に従って制御される。
こうして離鍵等速軌道が終了する時刻ｔ４に達すると、シーケンシャルデータ列の全ての位置データ（ｔ，Ｘ）が読み出され、鍵１はレスト位置Ｘ０に達する。そして、この場合には、次にアクセスしたアドレスには位置データ（ｔ，Ｘ）が存在しなくなるから、ステップＳ２０における判定結果は「ＮＯ」となり、図１３に示すタスクを終了する。なお、図１３に示すタスクは、所定時間おきに開始されるようになっている。
【００６６】
このように、上記構成の自動ピアノにあっては、鍵１の動作が押鍵から離鍵に移行する際には、鍵１の速度を徐々に変化させて鍵１の動作の方向を切り替えるから、鍵１の動作が滑らかになって違和感のない自然な動作となる。また、離鍵の際に鍵に大きな加速度が作用しないため、鍵１の動作が乱れるようなことがない。特に、上記自動ピアノにおいては、押鍵等速軌道および離鍵等速軌道が交差しないと判定された場合であっても、押鍵スローダウン軌道および離鍵スローアップ軌道が交差すると判定した場合には、押鍵スローダウン軌道および離鍵スローアップ軌道に基づいて鍵１を駆動する。このように、記録時には押鍵から離鍵へフルストロークで演奏された場合であっても、再生時には離鍵開始時の鍵１の速度が徐々に変化するから、鍵１の動作の揺らぎの発生を少なくすることができる。
【００６７】
ここで、実験結果を図１４に示す。同図（イ）は押鍵から離鍵までをハーフストロークで演奏した場合のソレノイドのプランジャの軌道、同図（ロ）は鍵の軌道、同図（ハ）はハンマの軌道をそれぞれ測定したものである。また、図中実線は押鍵スローダウン軌道と離鍵スローアップ軌道に従ってプランジャを駆動した場合の各軌道、一点鎖線は直線の押鍵等速軌道と直線の離鍵等速軌道が交差する交差軌道に従ってプランジャを駆動した場合の各軌道を示す。同図（ロ）から判るように、直線軌道の場合には鍵の離鍵等速軌道に矢印Ｙで示す乱れが生じている。これは、押鍵から離鍵への移行が急激に行われるため、鍵に弾性変形が生じたことによるものと考えられる。一方、押鍵スローダウン軌道と離鍵スローアップ軌道に従ってプランジャを駆動した場合には、離鍵等速軌道にそのような乱れはなく、鍵はスムーズな動きを示している。また、同図（ハ）に示すように、押鍵の初速度があまり変わらない場合には、直線軌道の場合も押鍵スローアップ・スローダウン軌道の場合もハンマの軌道はあまり変わらないことも確認された。
【００６８】
Ｂ．第２の実施の形態
図１５ないし図１７を参照して本発明の第２の実施の形態について説明する。第２の実施の形態は、離鍵から押鍵に移る演奏において本発明を適用した例である。
（ａ）トランジット位置
離鍵から押鍵へ移る演奏がハーフストロークで行われる場合には、図１５（Ａ）に示すように、離鍵等速軌道と押鍵等速軌道はレスト位置Ｘ０に至る手前で交差する。この実施の形態では、エンド位置Ｘｅからトランジット位置ＸＴまでは離鍵等速軌道に基づいて鍵１を制御し、トランジット位置ＸＴとレスト位置Ｘ０の間の範囲では、２次曲線の軌道（以下、離鍵スローダウン軌道と称する）に基づいて鍵１を制御する。また、押鍵の軌道については、所定位置ＸＴからエンド位置Ｘｅまでは押鍵等速軌道に基づいて鍵１を制御し、所定位置ＸＴとレスト位置Ｘ０の間の範囲では、２次曲線の軌道（以下、押鍵スローアップ軌道と称する）に基づいて鍵１を制御する。
【００６９】
トランジット位置ＸＴの位置は、押鍵から離鍵に移る演奏の場合よりもレスト位置Ｘ０側に設定される。これは、トランジット位置ＸＴがエンド位置Ｘｅ側に寄りすぎていると、離鍵スローダウン軌道と押鍵スローアップ軌道の交差位置Ｘｃ’もエンド位置Ｘｅ側へ寄り過ぎになってしまうため、エンド位置Ｘｅ寄りで連打を行うと、鍵１がレスト位置Ｘ０側へ戻る距離が短いために押鍵時にアクション３がハンマ２に係合せず、演奏が行えないという事態が生じるからである。さらに、離鍵開始後、鍵１がエンド位置Ｘｅから所定距離離れたときにダンパ６が当該鍵１に対応する弦４を押すように構成されているが、エンド位置Ｘｅに近い箇所から離鍵スローダウン軌道が開始すると、ダンパ６が弦４を押すタイミングが遅くなってしまうからである。よって、以上の点を考慮してトランジット位置ＸＴの位置は設定され、具体的にはレスト位置Ｘ０とエンド位置Ｘｅのほぼ中間とされる。
【００７０】
(ｂ)交差時刻ｔcの計算
この自動ピアノにおいても、等速時交差時刻ｔcに鍵１の速度が０となるように離鍵スローダウン軌道および押鍵スローアップ軌道を設定する。そして、離鍵スローダウン軌道においては、離鍵中間時刻ｔＮＴから等速時交差時刻ｔcまでの間に、鍵１の速度ＶがＶ0Ｎ（＜０）から０まで変化するような軌道を設定する。また、押鍵スローアップ軌道においては、等速時交差時刻ｔcから押鍵中間時刻ｔＰＴまでの間に、鍵１の速度Ｖが０からＶ0まで変化するような軌道を設定する。そのために、交差時刻ｔcを以下のようにして求める。
【数２６】
0003588872.tif 000027
ここで、数２６におけるｔ3は、押鍵等速軌道がエンド位置Ｘeに達する時刻であって、数５によって算出した押鍵開始時刻ｔ0を用いて次式により算出される。
【数２７】
0003588872.tif 000028
【００７１】
（ｃ）離鍵スローダウン軌道データの作成
次に、離鍵スローダウン軌道における離鍵加速度ａＮを以下のようにして求める。
【数２８】
0003588872.tif 000029
また、離鍵速度Ｖは下記数２９によって求めることができ、離鍵スローダウン軌道は下記数３０によって表すことができる。
【数２９】
0003588872.tif 000030
【数３０】
0003588872.tif 000031
ただし、Ｐ３，Ｑ３，Ｒ３は定数であり、これらは、数３０と数３０をｔで微分した式に図１５（Ａ）に示すｔの特定値を代入することにより求めることができる。
【００７２】
（ｄ）押鍵スローアップ軌道データの作成
次に、押鍵スローアップ軌道における押鍵加速度ａＰを以下のようにして求める。
【数３１】
0003588872.tif 000032
また、押鍵スローアップ軌道における押鍵速度Ｖは下記数３２によって求めることができ、押鍵スローアップ軌道データは下記数３３によって表すことができる。
【数３２】
0003588872.tif 000033
【数３３】
0003588872.tif 000034
ただし、Ｐ４，Ｑ４，Ｒ４は定数であり、これらは、数３３および数３３をｔで微分した式に、図１５（Ａ）に示すｔの特定値を代入することにより求めることができる。
【００７３】
（ｄ）離鍵スローダウン・押鍵スローアップ軌道データの作成判定
まず、押鍵等速軌道と離鍵等速軌道とが交差するか否かによって離鍵スローダウン軌道と押鍵スローアップ軌道が交差するか否かを判定する。この判定には以下の３種類の方法があり、いずれの方法を採用しても良い。
▲１▼まず、等速時交差位置Ｘｃがレスト位置Ｘ０よりも内側（エンド位置Ｘｅ側）にあれば、離鍵スローダウン軌道と押鍵スローアップ軌道は交差する。
よって、「レスト位置Ｘ０＜等速時交差位置Ｘｃ」であれば、離鍵スローダウン軌道と押鍵スローアップ軌道が交差すると判定する。なお、等速時交差位置Ｘｃは下記式により算出される。
【数３４】
0003588872.tif 000035
【００７４】
(2)離鍵等速軌道がレスト位置Ｘ0に達する時刻ｔ4が押鍵開始時刻ｔ0よりも遅ければ、これら２つの軌道は交差する。
よって、「押鍵開始時刻ｔ0＜時刻ｔ4」であれば押鍵スローアップ軌道と離鍵スローダウン軌道が交差すると判定する。
(3)離鍵等速軌道がレスト位置Ｘ0に達する時刻ｔ4よりも等速時交差時刻ｔcが早ければ、押鍵等速軌道と離鍵等速軌道は交差する。よって、「等速時交差時刻ｔc＜時刻ｔ4」ならば押鍵スローアップ軌道と離鍵スローダウン軌道が交差すると判定する。なお、「時刻ｔ0＜等速時交差時刻ｔc」の場合にも交差すると判定することができる。
【００７５】
次に、上記いずれの条件も満たさない場合には、以下のいずれかの方法により押鍵スローダウン軌道と離鍵スローアップ軌道が交差するか否かを判定する。
▲１▼離鍵スローダウン軌道と押鍵スローアップ軌道の交差位置Ｘｃ’は下記式によって求めることができる。
【数３５】
0003588872.tif 000036
そこで、「レスト位置Ｘ０＜交差位置Ｘｃ’」ならば、離鍵スローダウン軌道と押鍵スローアップ軌道が交差すると判定する。
【００７６】
▲２▼レスト位置Ｘ０で傾きが０となる２次曲線を離鍵スローダウン軌道と押鍵スローアップ軌道速度についてそれぞれ想定する。すなわち、図１７（Ａ）に示すように、レスト位置Ｘ０に時刻ｔＮＲ’に達して押鍵速度Ｖが０になる離鍵スローダウン軌道と、時刻ｔＰＲ’にレスト位置Ｘ０で開始する押鍵スローアップ軌道を想定すると、図１７（Ａ）に示す状態は、押鍵スローダウン軌道と離鍵スローアップ軌道とが交差しない場合に含まれる。
そこで、「時刻ｔＮＲ’＞時刻ｔＰＲ’」ならば、スローアップ軌道とスローダウン軌道は交差すると判定する。なお、時刻ｔＮＲ’およびｔＰＥ’は、近似的に下記式で求めることができる。
【数３６】
0003588872.tif 000037
【数３７】
0003588872.tif 000038
▲３▼「交差時刻ｔｃ＜時刻ｔＮＲ’」ならば、スローアップ軌道とスローダウン軌道が交差すると判定することもできる。なお、「時刻ｔＰＲ’＜交差時刻ｔｃ」のときに、スローアップ軌道とスローダウン軌道が交差すると判定することもできる。
【００７７】
上記構成の自動ピアノは、図１１ないし図１３に示すものと同様のアルゴリズムに従って動作する。この場合において、図１１のステップＳ１では「離鍵イベントの有無」を判定し、ステップＳ２では離鍵等速軌道の軌道データを作成する。また、ステップＳ３では「その後の打弦イベントの有無」を判定し、ステップＳ４では押鍵等速軌道の軌道データを作成する。したがって、離鍵から押鍵に移る演奏がハーフストロークで行われた場合には、離鍵等速軌道→離鍵スローダウン軌道→押鍵スローアップ軌道→押鍵等速軌道という順番で鍵１が制御され、鍵１に違和感のない自然な動作を与えることができる。
【００７８】
特に、この実施の形態においては、離鍵から押鍵に移る演奏に本発明を適用しているから、押鍵の際の鍵に勢いが生じて音量が打弦強度データが示す値よりも大きくなったり、一部の打弦に抜けが生じたり、打弦のタイミングがずれてリズムが乱れたりするといった不都合が生じない。また、鍵の動作が演奏者による演奏に近いから、エンド位置近くで連打を行ったときの発音の響きを忠実に再現することができる。
【００７９】
さらに、離鍵等速軌道および押鍵等速軌道が交差しないと判定された場合であっても、離鍵スローダウン軌道および押鍵スローアップ軌道が交差すると判定した場合には、押鍵スローアップ軌道および離鍵スローダウン軌道に基づいて鍵１を駆動するから、記録時にはフルストロークによる離鍵から押鍵に移る演奏を行った場合であっても、再生時には押鍵開始時の鍵１の速度が徐々に変化するから、鍵１の動作の揺らぎを少なくすることができる。
なお、押鍵から離鍵に移る場合の鍵１の制御（第１の実施の形態）と、離鍵から押鍵に移る場合の鍵１の制御（第２の実施の形態）とに分けて説明したが、これら２種類の制御を行う自動ピアノを構成することもできる。
【００８０】
Ｃ．変形例
（１）第１の実施の形態において、押鍵スローダウン軌道と離鍵スローアップ軌道が交差しないと判定された場合も両軌道データを作成して鍵１を制御することができる。この場合には、図１０（Ｂ）に示すように、押鍵スローダウン軌道においては、押鍵中間時刻ｔＰＴから時刻ｔＰＥ’の間に鍵１の速度ＶをＶ０から０まで変化させる。よって、押鍵スローダウン軌道における押鍵加速度ａＰは下記式により求めることができる。なお、時刻ｔＰＥ’は、数２４によって求めることができる。
【数３８】
0003588872.tif 000039
【００８１】
また、離鍵スローアップ軌道においては、時刻ｔＮＥ’から離鍵中間時刻ｔＮＴまでの間に鍵１の速度Ｖを０からＶ０Ｎまで変化させる。よって、離鍵スローアップ軌道における離鍵加速度ａＮは下記式により求めることができる。なお、時刻ｔＮＥ’は、数１８〜数２１を用いてｔを解とする２次方程式を作成することにより求めることができ、また、数２５によっても求めることができる。
【数３９】
0003588872.tif 000040
このようにして押鍵加速度および離鍵加速度を求めることにより、前記各実施の形態と同様にして、押鍵スローダウン軌道と離鍵スローアップ軌道の軌道データを作成して鍵１を制御することができる。これによって、鍵１の動作の揺らぎをさらに少なくすることができる。
【００８２】
なお、第２の実施の形態において、離鍵スローダウン軌道と押鍵スローアップ軌道が交差しないと判定された場合も、両軌道データを作成して鍵１を制御することができる。この場合には、図１７（Ｂ）に示すように、離鍵スローダウン軌道においては、離鍵中間時刻ｔＮＴから時刻ｔＮＲ’の間に鍵１の速度ＶをＶ０Ｎから０まで変化させる。また、押鍵スローアップ軌道においては、時刻ｔＰＲ’から押鍵中間時刻ｔＰＴまでの間に鍵１の速度Ｖを０からＶ０まで変化させる。
【００８３】
（２）前記各実施の形態では押鍵軌道と離鍵軌道を等速軌道としたが、図８（Ａ）および図１５（Ａ）に一点鎖線で示すように、２次曲線をなす軌道にすることができる。この場合には、押鍵軌道を以下のように表す。
【数４０】
0003588872.tif 000041
ここで、ａは加速度であり、キーオン速度を鍵１の移動方向の２箇所で検出し、得られた速度の差から推定することができる。また、ｂ、ｃは係数であり、押鍵開始時刻ｔ０および鍵１の初速度Ｖ０によって算出することができる。なお、離鍵軌道も同様の方法で求めることができる。
このような押鍵軌道と離鍵軌道に従って鍵１を制御することにより、演奏者の演奏により近い動作を鍵１に与えることができる。
【００８４】
（３）前記実施の形態では、短縮軌道として２次曲線の軌道を作成したが、短縮軌道は、押鍵等速軌道と離鍵直線軌道の交差点に達しない軌道であればその種類は任意である。たとえば、円軌道や楕円軌道、あるいは折れ線状に屈曲するような軌道であってもよい。
（４）押鍵を押鍵等速軌道に従って行い、押鍵に続く離鍵を離鍵スローアップ軌道に従って行うことができ、また、押鍵を押鍵スローダウン軌道に従って行い、押鍵に続く離鍵を離鍵等速軌道に従って行うこともできる。さらに、離鍵を離鍵等速軌道に従って行い、離鍵に続く押鍵を押鍵スローアップ軌道に従って行うことができ、また、離鍵を離鍵スローダウン軌道に従って行い、離鍵に続く押鍵を押鍵等速軌道に従って行うこともできる。
（５）サーボ制御の変形
上述した各実施の形態においては、再生前処理部１０により位置データ（ｔ，Ｘ）を作成し、モーションコントローラ１１とサーボコントローラ１２によって位置サーボ制御を行っていたが、これに代えて、速度を指示する速度サーボ制御を行っても良い。すなわち、再生前処理部１０により速度データ（ｔ，Ｖ）のシーケンシャルデータ列を作成し、モーションコントローラ１１が押鍵（あるいは離鍵）開示時刻において初速度を指示し、サーボコントローラ１２が鍵１が与えられた速度を保つようにサーボ制御を行うようにしてもよい。
【００８５】
（６）上述した各実施の形態は、すべてリファレンスポイントにおける運動属性を再生するように鍵を駆動する例であったが、リファレンスポイントやリファレンス速度を考慮せず、単純に押鍵と離鍵の直線軌道を作成し、これによって制御することもできる。例えば、打鍵速度から単純に押鍵の直線軌道を想定し、これに基づいて鍵をサーボ駆動することもできる。
【００８６】
【発明の効果】
以上説明したように、この発明によれば、押鍵から離鍵あるいは離鍵から押鍵へ移る演奏を行う場合に、鍵の速度が急激に変化しないから、鍵の動作が滑らかになって違和感のない自然な動作を得ることができる。また、連打時の押鍵の音量が大きくなったり、打弦の抜けやリズムの狂いが生じる等の問題は解消され、連打を円滑に行うことができる。
また、記録時にはフルストロークの演奏による押鍵または離鍵を行った場合であっても、再生時には短縮軌道によって離鍵開始時または押鍵開始時に鍵の速度が徐々に変化するから、鍵の動作のゆらぎの発生を少なくすることができる。
【図面の簡単な説明】
【図１】この発明の第１実施形態の構成を示すブロック図である。
【図２】図２はリファレンスポイントを９．５ｍｍに設定したときの鍵速度と打弦速度の関係を示す図である。
【図３】リファレンス時間差Ｔｒと打弦速度との関係を示す図である。
【図４】図３を縮尺２倍にした図である。
【図５】図３を縮尺４倍にした図である。
【図６】鍵の押鍵軌道を示す図である。
【図７】数６で示される軌道を示す図である。
【図８】離鍵軌道および鍵速度を示す図である。
【図９】離鍵軌道および鍵速度を示す図である。
【図１０】鍵軌道および鍵速度を示す図である。
【図１１】第１の実施の形態における再生前処理部の動作を示すフローチャートである。
【図１２】第１の実施の形態における再生前処理部の動作を示すフローチャートである。
【図１３】第１の実施の形態におけるモーションコントローラの動作を示すフローチャートである。
【図１４】ハーフストロークにおいてプランジャ等の軌道を示す図である。
【図１５】鍵軌道および鍵速度を示す図である。
【図１６】鍵軌道および鍵速度を示す図である。
【図１７】鍵軌道および鍵速度を示す図である。
【符号の説明】
５……ソレノイド（駆動手段）、１０……再生前処理部（軌道算出手段：交差判定手段）、１１……モーションコントローラ（指令値出力手段）、１２……サーボコントローラ（指令値出力手段）。
【図１】
0003588872.tif 000042
【図２】
0003588872.tif 000043
【図３】
0003588872.tif 000044
【図４】
0003588872.tif 000045
【図５】
0003588872.tif 000046
【図６】
0003588872.tif 000047
【図７】
0003588872.tif 000048
【図８】
0003588872.tif 000049
【図９】
0003588872.tif 000050
【図１０】
0003588872.tif 000051
【図１１】
0003588872.tif 000052
【図１２】
0003588872.tif 000053
【図１３】
0003588872.tif 000054
【図１４】
0003588872.tif 000055
【図１５】
0003588872.tif 000056
【図１６】
0003588872.tif 000057
【図１７】
0003588872.tif 000058