(57)【特許請求の範囲】
【請求項１】
発音の音高および発音の大きさを示すデータを順次入力する入力手段と、
入力された発音の音高を示すデータに対応する鍵を、入力された発音の大きさを示すデータに対応した速度で押下操作する鍵操作手段であって、当該鍵の押下によるハンマの打弦によって楽音を発生させる鍵操作手段と、
前記入力手段により入力されたデータにしたがって前記鍵操作手段が同一音高の鍵を操作した場合にハンマが当該データにより示される通りの弦の連打を行なえるか否かを、前記データが示す各発音の時間間隔とハンマの動作に応じた所定の時間との比較結果に基づいて判別する判別手段と、
前記弦の連打を行なえないと前記判別手段が判別した場合に、当該発音の大きさを示すデータを、当該データが示す発音の大きさよりも大きいデータに変換する変換手段と、
この変換したデータを、前記発音の大きさを示すデータに置き換える置換手段と
を具備することを特徴とする自動演奏ピアノ。
【請求項２】
発音の音高および発音の大きさを示すデータを順次入力する入力手段と、
入力された発音の音高を示すデータに対応する鍵を、入力された発音の大きさを示すデータに対応した速度で押下操作する鍵操作手段であって、当該鍵の押下によるハンマの打弦によって楽音を発生させる鍵操作手段と、
前記入力手段により入力されたデータにしたがって前記鍵操作手段が同一音高の鍵を操作した場合にハンマが当該データにより示される通りの弦の連打を行なえるか否かを、前記データが示す各発音の時間間隔とハンマの動作に応じた所定の時間との比較結果に基づいて判別する判別手段と、
前記弦の連打を行なえないと前記判別手段が判別した場合に、当該データに基づいた押下による発音の直後に当該鍵のリリースを行なうように前記鍵操作手段に指令する指令手段と
を具備することを特徴とする自動演奏ピアノ。
【請求項３】
前記判別手段は、各データが入力される時間間隔により同一音高に対応する発音の間隔を求めるとともに、
先の発音の大きさを示すデータに対応して、ハンマが回動開始から打弦までに要する往時間を求め、さらに、後の発音の大きさを示すデータに対応して、ハンマが回動開始から打弦までに要する往時間を求め、双方の往時間の和を求めて、双方の往時間の和が発音の間隔より長いときに、前記ハンマが弦の連打を行なえないと判別することを特徴とする請求項１または２記載の自動演奏ピアノ。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
この発明は、同一鍵において極めて短い間隔の連打が可能な自動演奏ピアノに関する。
【０００２】
【従来の技術】
一般的に、自動演奏ピアノには、電磁作動式のソレノイドが各鍵にそれぞれ設けられており、これらのソレノイドを、自動演奏データにしたがってそれぞれ駆動し、実際に鍵を押下・リリースすることにより自動演奏を行なうようになっている。
【０００３】
（自動ピアノの機械的構成）
まず、かかる自動演奏ピアノの機械的構成の概略について、図３を参照して説明する。図３は、ある１つの鍵についての構成を示す側端面図であり、ここでは、アップライト型ピアノのものを例示している。なお、かかる構成は、ピアノの８８鍵についてそれぞれ同一である。
【０００４】
この図に示すように、押鍵により鍵１００は、ピアノ本体に対し固定された支持部材１０１上の支点１０１ａを中心として反時計回りに回動するようなっており、この回動は、図において実線で示されるレスト位置から２点鎖線で示されるエンド位置まで行なわれる。ここで、レスト位置とは、鍵に対し何の操作も加えられなければ、自然復帰（正確に言えば、後述するウィッペン１１２に加わる荷重により復帰）する鍵の位置をいう。一方、支持部材１０１の右方にあって、鍵１００の上部には、ピアノ本体に対して固定されたソレノイド９０が設けられる。このソレノイド９０へ通電（オン）することによりプランジャ９１が図の下方に作動し、鍵１００をエンド位置まで押鍵する一方、通電を遮断（オフ）することによって、図示しないスプリングによりプランジャ９１が図の上方に復元し、鍵１００のレスト位置への復帰を許可するようになっている。
【０００５】
符号１１０は、押鍵操作により弦Ｓに打弦等の動作を行なうハンマアッセンブリである。このハンマアッセンブリ１１０は、自動演奏ピアノに限らず、普通のアコースティクピアノと同様なものであって、すでに周知なものであるので、ここでは、その構成の詳細については説明を省略し、その動作についてのみ説明する。なお、動作説明のみについて言及するのは、後述する問題点と密接に関係するためである。
【０００６】
はじめに、図３において、演奏者またはソレノイド９０のオンにより鍵が徐々に押下されると、鍵１００は支点１０１ａを中心に時計回りに回動する。これにより、鍵の左方に設けられたキャプスタン１１１はウィッペン１１２を押し上げて、ウィッペン１１２がピアノ本体の固定軸１１３を中心に反時計回りに回動する。このため、ダンパースプーン１１４が左方向に動いて、ダンパーレバー１１５を押すので、ダンパーレバー１１５は、バネ１１６による反時計方向の付勢に逆らって時計回りに、ピアノ本体に対して固定された軸１１７を中心に回動する結果、ダンパーヘッド１１８が弦Ｓから離れる。したがって、押鍵過程において、弦Ｓは無拘束状態となる。
【０００７】
一方、押鍵によるウィッペン１１２の反時計回りの回動によって、ジャック１２１がバット１２２を突き上げる。これにより、ハンマヘッド１２３が図において反時計回りに回動し、ハンマ１２３ａが弦Ｓを打撃する。このウィッペン１１２の反時計回りの回動途中において、ジャック小１２１ａがレギュレーティングボタン１２４に当接する。このため、ジャック１２１は、レギュレーティングボタン１２４を力点とし、軸１２１ｂを支点として時計回りに回動するので、ジャック１２１の上端面が、バット１２２の当接面１２２ａから図中右方向へ逃げ、非当接位置へと移動する。そして、打弦後のハンマアッセンブリ１１０の回復動作は、キャッチャ１２７がバックチェック１２６に当接することにより一時停止される。
【０００８】
次に、演奏者またはソレノイド９０のオフにより押鍵状態が徐々に解かれると、この復帰動作に伴って、ウィッペン１１２が時計回りに回動する。これにより、バックチェック１２６はキャッチャ１２７を開放する一方、ジャック小１２１ａとレギュレーティングボタン１２４と当接が徐々に解除され、これに伴って、ジャック１２１はバネ１２１ｃの付勢により反時計回りに回動し、ジャック１２１の上端部は再びバット１２２の下部に入り込んで、次の打弦操作に備えられる。
【０００９】
一方、この復帰動作におけるウィッペン１１２の時計回りの回動により、ダンパースプーン１１５が右方向に動くので、ダンパーヘッド１１８は、バネ１１６の付勢によって弦Ｓを再び抑える。したがって、離鍵過程において弦Ｓは再び拘束状態となるので、打弦による弦の振動が抑止されて、消音されることとなる。
【００１０】
このように、ハンマアッセンブリ１１０では、押鍵過程において、弦Ｓを無拘束状態とした後に打弦を行なう一方、打弦後の離鍵過程において、次の打弦に備える復帰動作を行ないつつ弦を拘束状態とする。ここで、打弦時における鍵１００からハンマヘッド１２３への力の伝達は、鍵１００→キャプスタン１１１→ウィッペン１１２→ジャック１２１→バット１２２→ハンマヘッド１２３という経路で行なわれるが、打弦後におけるジャック１２１とバット１２２との当接は、離鍵によってはじめて復帰するようになっている。
【００１１】
このため、離鍵が不十分な状態で鍵１００が再度押下された場合、ジャック１２１は、バット１２２との当接が不完全な状態で、あるいは当接しない状態でバット１２２を押し上げることになる。この場合において、当接が不完全状態では、ハンマによる打弦の大きさは、鍵１００の押鍵速度に対応しないものとなり、また、当接しない状態では打弦そのものが行なわれなくなる。このようなハンマアッセンブリ１１０の構成は、欠点というよりむしろピアノ固有の特徴というべきものであり、自動演奏ピアノの前提でもある。なお、弦の拘束、およびその解除は、図示しないダンパペダルによっても一括して行なわれるが、本願とは直接関係ないので説明を省略する。
【００１２】
（従来の自動ピアノの電気的構成）
次に、従来の自動演奏ピアノの電気的構成について説明する。図４は、従来の自動演奏ピアノの電気的構成を示すブロック図である。この図において、符号１０はＣＰＵであり、バス１１を介して、各部を制御するようになっている。符号１２は、自動演奏ピアノとはインターフェイス１３を介して外部接続されたシーケンサであり、自動演奏データを演奏の進行タイミングに一致させて字義通りシーケンシャルに出力する。ここで、シーケンサ１２は、例えば、ＭＩＤＩ規格にしたがった自動演奏データを出力する。
【００１３】
ここで、自動演奏ピアノに供給される自動演奏データについて説明する。一般に、自動演奏データと言えば種々のものがあるが、自動演奏ピアノにおいて重要なのものは、発音開始を指示するノートオンおよび発音終了を指示するノートオフである。ノートオンは、発音すべき楽音の音高を示すキーコードと、発音の大きさを示すオンベロシティとを伴い、これらデータを入力することにより、その入力タイミングにて発生させるべき楽音の音高および大きさが規定されるようになっている。また、ノートオフは、消音すべき楽音の音高を示すキーコードと、消音させる際の消音速度を示すオフベロシティとを伴い、このデータを入力することによって、その入力タイミングにて消音させるべき音高および度合いが規定されるようになっている。したがって、ノートオンおよびノートオフはペアで考えられるべきである。
【００１４】
次に、符号１４はＲＯＭであり、ＣＰＵ１０のための制御プログラムのほか、オンベロシティをそれぞれタッチデータおよびアタックディレイに変換するテーブル（図５（ａ）および（ｂ）参照）を記憶する。ここで、タッチデータとは、ソレノイド９０（図３参照）を駆動する駆動データのうち、ノートオンに伴うオンベロシティに対応してどのくらいの強さで駆動させるのかを規定するデータであり、また、アタックディレイとは、ソレノイド９０への通電を開始してからハンマ１２３ａが打弦するであろう時刻までの期間を規定するデータである。さらに、ＲＯＭ１４は、図示したテーブルのほかに、オフベロシティをそれぞれリリースディレイおよびリリースデータに変換するテーブル（図示省略）も記憶する。ここでリリースディレイとは、ソレノイド９０によるリリースの開始からキーオフまでの時間を規定するデータであり、また、リリースデータとは、ソレノイド９０によるリリース時に、スプリングの復元力に対抗する駆動力の大きさを規定するデータである。
【００１５】
なお、これらの変換テーブルは予め実験的に求められた対応関係により求められている。また、同じ強さで打弦しても、音高（周波数）が変化すると、聴感的な音の強さも変化するので、タッチデータおよびアタックディレイへの変換テーブルは、キーコードに対応してそれぞれ設けられる。したがって、ＲＯＭ１４は、８８組のテーブルを記憶することになる。
【００１６】
符号１５はＲＡＭであり、各種レジスタやデータを一時的に記憶する。符号１６はＤ／Ａ変換部であり、ソレノイドへの駆動データをアナログ信号に変換する。符号１７はソレノイド群であり、８８鍵にそれぞれ設けられたソレノイド９０を総称する。
【００１７】
次に、かかる構成における基本的な発音動作について説明する。まず、自動演奏データのうちノートオンが供給されると、その供給に伴うオンベロシティがキーコードに対応するタッチデータに変換され、このタッチデータはアナログ電圧に変換されて、キーコードに対応するソレノイド９０に供給される。これにより、プランジャ９１が、鍵１００をエンド位置まで徐々に押下し、これによりハンマ１２３ａが回動し弦Ｓを打撃して、楽音が発生する。プランジャ９１の作動速度は、ソレノイドへの駆動電圧に依存するので、この際の押鍵速度は、タッチデータに依存することになる。そして、ハンマの回動速度は押鍵速度に比例し、また、発音の大きさは、ハンマの回動速度により定まるから、結局、打撃による発音の大きさは、オンベロシティに対応するものとなる。
【００１８】
次に、基本的な消音動作について説明する。先ほど述べたように、自動演奏ピアノに限らず、ピアノの一般的な消音動作は、離鍵過程においてダンパーヘッド１１８が弦Ｓを拘束することにより行なわれる。この消音動作を行なうためソレノイド９０には、打弦後、当該鍵１００の押鍵状態を保持するのに必要な分だけの電圧が供給されるとともに、ノートオフが供給されたならば、これに伴うオフベロシティに対応した微弱電圧が供給される。この微弱電圧によって、プランジャ９１の復元力が減殺され、さらに、微弱電圧の高低によって、減殺の度合いが変化するので、結局、離鍵速度は、オフベロシティに対応し、この離鍵速度にしたがってダンパヘッド１１８が弦Ｓを拘束して、消音動作が行なわれることになる。
【００１９】
以上が発音および消音動作の基本的な説明である。「基本的な」としたのは、実際には、このような単純な動作では済まないからである。上述したように、発音動作は、ノートオンが供給されてから、オンベロシティに対応したタッチデータでソレノイドが駆動され、これにより実際に鍵が押鍵され、ハンマが回動して打弦を行なうことによって、楽音が発生するようになっている。ここで、タッチデータはオンベロシティに依存しており、タッチデータは、オンベロシティが大きくなるにつれて、大きくなるように設定されている（図５（ａ）参照）。このため、ソレノイドへの通電が開始された時点から実際に打弦による楽音が発生するまでの時間は、オンベロシティが大きくなるにつれて短くなる。すなわち、ソレノイドの通電開始から楽音発生までの時間は、オンベロシティによって変化するのである。
【００２０】
同様なことは消音動作についても言える。上述したように、消音動作は、オフベロシティに対応した微弱電圧によってソレノイドを復帰速度を減殺させ、これにより離鍵させ、ダンパヘッド１２３ａで弦Ｓを拘束することにより行なわれるようになっており、この際の離鍵速度は、オフベロシティに依存している。また、弦Ｓの拘束開始点は、エンド位置からレスト位置に復帰する過程の途中にある。このため、ソレノイドへの微弱電圧を供給した時点から実際に消音が行なわれるまでの時間は、オフベロシティによって変化するのである。
【００２１】
自動演奏データは、その曲の進行に合わせて単に時系列に供給されるのみであるので、このままでは、ノートオンの供給タイミングに対応する楽音発生、およびノートオフの供給タイミングに対応する消音動作を行なうことができない。そこで、自動演奏ピアノでは、自動演奏データの供給タイミングに対して、一定の時間（例えば「０．５秒」）だけ遅延させた独自の時間系が設定される。すなわち、供給された自動演奏データに従う動作を、一定時間遅延させて行なうようになっている。図４におけるタイマ１８は、この時間系を設定するために用いられる。
【００２２】
そこで、この時間系における動作について図６を参照して説明する。ここでは、ある音高の１つの鍵に着目した場合の動作について説明する。まず、自動演奏データが図６（ａ）に示すようなタイミングにて自動演奏ピアノに供給されたとする。ここで、同図に示す自動演奏データは、その立ち上がりのタイミングＮ１、Ｎ２がノートオンを、その立ち下がりのタイミングＦ１、Ｆ２がノートオフをそれぞれ示すものとする。さらに比較説明のため、タイミングＮ１のノートオンに伴うオンベロシティＮＶ１は、タイミングＮ２のノートオンに伴うオンベロシティＮＶ２よりも小とし、タイミングＦ１のノートオフに伴うオフベロシティＦＶ１も、タイミングＦ２のノートオフ伴うオフベロシティＦＶ２よりも小とする。
【００２３】
かかる自動演奏データの供給を受けると、自動演奏ピアノでは、同図（ｂ）に示されるように、自動演奏データの供給タイミングに対し、「０．５秒」だけ遅延させた時間系が設定され、この時間系に一致して発音・消音動作が行なわれるように、ソレノイド９０が制御される。詳細には、次のように行なわれる。
【００２４】
まず、自動演奏データのうち、タイミングＮ１においてノートオンの供給を受けると、ＣＰＵ１０は、ＲＯＭ１４の変換テーブルにより、オンベロシティＮＶ１に対応するタッチデータＴ１およびアタックディレイＡ１をそれぞれキーコードに対応して求める。次に、ＣＰＵ１０は、ノートオンの供給タイミングＮ１より「０．５秒」遅延させたタイミングＮ１’に対して、アタックディレイＡ１だけ時間的に先行させたタイミングα１を逆算して求め、このタイミングα１に至った時点において、求めたタッチデータＴ１で示される値でソレノイド９０への通電を開始する（同図（ｃ）参照）。
【００２５】
これにより、同図（ｄ）に示すように、鍵１００が、タイミングα１においてレスト位置から徐々に押下され、この押下に伴い、同図（ｅ）に示すように、ハンマ１２３ａが、図３に示した鍵１００のレスト位置に対応するホーム位置から回動し始める。
【００２６】
そして、同図（ｄ）に示すように、タイミングα１からアタックディレイＡ１の期間を経過したタイミングＮ１’において、鍵１００がエンド位置まで押下され、これに伴い、同図（ｅ）に示すように、ハンマが弦Ｓに到達する。すなわち打弦が行なわれ楽音が発生する。厳密に言えば、押鍵過程において、エンド位置に到達する寸前で打弦が行なわれる。以後、ソレノイド９０への駆動データは、押鍵を維持するに十分な値Ｍとなる。このため、鍵１００は、エンド位置で保持される一方、ハンマ１２３ａは、反動により打撃時の回動速度に応じた速度でホーム位置側に戻る。ここで、打撃時の回動速度と戻り時の回動速度とは、略一致する。
【００２７】
次に、このようにして発生した楽音を、消音させる旨を示すノートオフがタイミングＦ１において供給されると、ＣＰＵ１０は、ＲＯＭ１４における変換テーブルにより、当該ノートオフに伴うオフベロシティＦＶ１から、リリースデータＵ１およびリリースディレイＢ１をそれぞれ求める。次に、ＣＰＵ１０は、ノートオフの供給タイミングＦ１より「０．５秒」遅延させたタイミングＦ１’に対して、リリースディレイＢ１だけ時間的に先行させたタイミングβ１を逆算して求め、このタイミングβ１に至った時点において、求めたリリースデータＵ１で示される値でソレノイド９０への通電を開始する（同図（ｃ）参照）。もっとも、このリリースデータＵ１は微弱であるので、押鍵状態を維持することはできず、したがって、プランジャ９１は復元して、離鍵が行なわれる。このため、復元は、ソレノイド９０の復元力からリリースデータＵ１により駆動力を減じた力によって行なわれる。
【００２８】
これにより、同図（ｄ）に示すように、鍵１００が、タイミングβ１においてエンド位置から徐々に上昇し、この上昇過程すなわち離鍵過程において、キーオフ位置を通過することにより、タイミングＦ１’において、オフベロシティＦＶ１の示す離鍵速度でダンパヘッド１１８が弦Ｓを拘束する。
【００２９】
そして、次のノートオンの自動演奏データが供給されたならば、再び同じ動作が繰り返される。この際、ノートオンに伴うオンベロシティＮＶ２が、前述のように、先のオンベロシティＮＶ１よりも大きければ、押鍵速度を高速に行なうべくタッチデータＴ２はＴ１よりも大きく、その分、アタックディレイＡ２はＡ１より短く設定される。また、ノートオフに伴うオフベロシティＦＶ２が、先のオフベロシティＦＶ１よりも大きければ、離鍵速度を高速に行なう必要から、減殺力を小さくするべくリリースデータＵ２はＵ１よりも小さく、その分、リリースディレイＢ２はＢ１より短く設定される。これらの動作は、ノートオンあるいはノートオフに伴うキーコードにしたがって、８８鍵についてそれぞれ行なわれる。
【００３０】
このようにして、自動演奏ピアノでは、自動演奏データの供給タイミングに対して「０．５秒」遅延させたタイミングで正確に発音・消音が行なわれるようになっている。逆に言えば、以上の動作説明でも判るように、あるノートオンに対応した発音を正確に行なうには、実際の発音よりもアタックディレイだけ時間を先行させてソレノイドの駆動を開始させる必要がある。
【００３１】
【発明が解決しようとする課題】
しかしながら、自動演奏データは、他の楽器（ピアノとは限らない）の演奏により採取されたものもあれば、ユーザが独自に手入力したものあり、必ずしも自動演奏ピアノの特性を考慮したものであるとは限らない。このため、図７（ａ）に示されるように、同一鍵に対する発音の間隔ｔ、すなわちノートオンの供給タイミングＮ１０から、次のノートオンの供給タイミングＮ１１までの時間が極端に短かくなる場合がある。この場合、先に説明したように、演奏タイミングは同図（ｂ）に示すようになり、また、駆動データは同図（ｃ）に示すように生成・供給されるので、鍵の動きは同図（ｄ）に示すようになる。これらについては問題はない。ところが、ハンマ１２３ａについては、図（ｅ）に示すようにホーム位置に戻らない内に、次の押鍵動作が行なわれてしまう。
【００３２】
さらに、ノートオンが短い間隔で連続すると、ハンマ１２３ａは、図（ｄ）に示す鍵１００の動作に追従できなくなる。このため、タイミングＮ１１’で発音が行なうことができず、最悪、タイミングＮ１２’で打撃そのものを行なうことができずに、いわゆる「音抜け」の現象が発生する。したがって、従来の自動演奏ピアノにおいて、同一音高での発音指令があった場合には、自動演奏データにしたがった自動演奏を行なうことができないときがある、という欠点があった。
【００３３】
この発明は、上述した問題に鑑みてなされたもので、その目的とするところは、同一鍵において極めて短い間隔の連打が可能な自動演奏ピアノを提供することにある。
【００３４】
【課題を解決するための手段】
上述した課題を解決するために、請求項１に記載の発明にあっては、発音の音高および発音の大きさを示すデータを順次入力する入力手段と、入力された発音の音高を示すデータに対応する鍵を、入力された発音の大きさを示すデータに対応した速度で押下操作する鍵操作手段であって、当該鍵の押下によるハンマの打弦によって楽音を発生させる鍵操作手段と、前記入力手段により入力されたデータにしたがって前記鍵操作手段が同一音高の鍵を操作した場合にハンマが当該データにより示される通りの弦の連打を行なえるか否かを、前記データが示す各発音の時間間隔とハンマの動作に応じた所定の時間との比較結果に基づいて判別する判別手段と、前記弦の連打を行なえないと前記判別手段が判別した場合に、当該発音の大きさを示すデータを、当該データが示す発音の大きさよりも大きいデータに変換する変換手段と、この変換したデータを、前記発音の大きさを示すデータに置き換える置換手段とを具備することを特徴としている。
【００３５】
請求項２に記載の発明にあっては、発音の音高および発音の大きさを示すデータを順次入力する入力手段と、入力された発音の音高を示すデータに対応する鍵を、入力された発音の大きさを示すデータに対応した速度で押下操作する鍵操作手段であって、当該鍵の押下によるハンマの打弦によって楽音を発生させる鍵操作手段と、前記入力手段により入力されたデータにしたがって前記鍵操作手段が同一音高の鍵を操作した場合にハンマが当該データにより示される通りの弦の連打を行なえるか否かを、前記データが示す各発音の時間間隔とハンマの動作に応じた所定の時間との比較結果に基づいて判別する判別手段と、前記弦の連打を行なえないと前記判別手段が判別した場合に、当該データに基づいた押下による発音の直後に当該鍵のリリースを行なうように前記鍵操作手段に指令する指令手段とを具備することを特徴としている。
【００３６】
請求項３に記載の発明にあっては、請求項１または２記載の発明において、前記判別手段は、各データが入力される時間間隔により同一音高に対応する発音の間隔を求めるとともに、先の発音の大きさを示すデータに対応して、ハンマが回動開始から打弦までに要する往時間を求め、さらに、後の発音の大きさを示すデータに対応して、ハンマが回動開始から打弦までに要する往時間を求め、双方の往時間の和を求めて、双方の往時間の和が発音の間隔より長いときに、前記ハンマが弦の連打を行えないと判別することを特徴としている。
【００３７】
【作用】
請求項１に記載の発明によれば、入力手段により入力されたデータにしたがって鍵操作手段が同一音高の鍵を操作した場合にハンマが当該データにより示される通りの弦の連打を行なえないと、判別手段により判別されたときには、変換手段が、発音の大きさを示すデータを当該データが示す発音の大きさよりも大きいデータに変換し、置換手段が入力されたデータと置き換える。この結果、入力された発音の音高を示すデータに対応する鍵は、鍵操作手段によって、入力手段により入力された発音の大きさを示すデータよりも高い速度で押下される。このため、ハンマは、より高い速度で打弦を行なって戻るので、打弦後の復帰に要する時間を短縮することができ、短い間隔の連打への対応が可能となる。
【００３８】
請求項２に記載の発明によれば、入力手段により入力されたデータにしたがって鍵操作手段が同一音高の鍵を操作した場合にハンマが当該データにより示される通りの弦の連打を行なえないと、判別手段により判別されたときには、鍵操作手段が、押下による発音直後に当該鍵をリリースする。このため、当該鍵は、いつまでも押下されることなく直ちに復帰するので、打弦後の復帰に要する時間を短縮することができ、短い間隔の連打への対応が可能となる。
【００３９】
一般に、ハンマの確実な復帰動作が行なわれて、押鍵操作に対応してハンマに打弦を行なわせるには、発音の間隔が、先の発音のためにハンマが打弦から回動前の位置までの復帰に要する復時間と後の発音のためにハンマが回動開始から打弦までに要する往時間との和よりも長いことが必要とされる。
ところで、ハンマは、鍵の押鍵にしたがって打弦を行なう一方、打弦後では、反動により打弦前の略回動速度で元の位置に戻ろうとする。すなわち、発音のためのハンマの復時間は、当該発音のためのハンマの往時間とほぼ同じである。
このため、前記和、すなわち復帰動作に必要な最低時間は、先と後との発音のために要するハンマの往時間の和として間接的に求めることができる。ハンマの往時間は、当該発音の大きさに依存するので、結局、先と後との発音の大きさを示す各データから、復帰動作に必要な時間を求めることができる。請求項３に記載の発明によれば、これを根拠として、先と後との発音の大きさを示す各データから復帰動作に必要な時間を求め、さらに求めた時間と発音の間隔とを比較することによって、ハンマが弦の連打を行なえるか否かを判別している。
【００４０】
【実施例】
以下、図面を参照してこの発明による一実施例について説明する。この実施例は、基本的構成そのものについては、図３および図４とほぼ同様であり、後述するとき以外の通常時では、次のような動作が行なわれる。
【００４１】
すなわち、図４において、ＣＰＵ１００は、シーケンサ１２からインターフェイス１３を介して自動演奏データを順次入力し、この供給される自動演奏データに基づきソレノイド群１７に供給すべき駆動データを生成して、Ｄ／Ａ変換部１６に供給する。
【００４２】
このとき、供給された自動演奏データがノートオンであったならば、ＣＰＵ１００は、そのノートオンに伴うキーコードおよびオンベロシティにしたがい、図５（ａ）および（ｂ）に示される変換テーブルを参照してタッチデータおよびアタックディレイを求め、このアタックディレイに応じたタイミングにおいて、タッチデータに応じたレベルの駆動データを生成する。このようにして求めた駆動データは、Ｄ／Ａ変換部１６によりアナログ信号に変換されて、キーコードに対応するソレノイド９０に供給される。これにより、当該ソレノイド９０はタッチデータにしたがった速度で鍵を押下するので、シーケンサ１２により順次供給される自動演奏データに基づく発音が行なわれる。
【００４３】
一方、供給された自動演奏データがノートオフであったならば、ＣＰＵ１００は、そのノートオフに伴うキーコードおよびオフベロシティにしたがい、変換テーブルを参照してリリースデータおよびリリースディレイを求め、このリリースディレイに応じたタイミングにおいて、リリースデータに応じた微弱レベルの駆動データを生成する。このようにして生成された駆動データは、Ｄ／Ａ変換部１６によりアナログ信号に変換されて、キーコードに対応するソレノイド９０に供給される。これにより、当該ソレノイド９０がリリースデータにしたがった駆動力に反発して復元する結果、リリースデータに依存した速度で離鍵が行なわれるので、シーケンサ１２により順次供給される自動演奏データに基づく消音が行なわれる。
【００４４】
くわえて、この実施例におけるＣＰＵ１００は、従来のＣＰＵ１０と比べてさらに、次のような動作も行なう。すなわち、ＣＰＵ１００は、順次供給された自動演奏データから発音の間隔ｔを求めるとともに、この間隔ｔが所定時間以下となった場合には、自動演奏データにしたがってソレノイド９０を駆動しても、ハンマ１２３ａが戻ってきておらず、正常な打弦が行なわれないと判断して、供給されたデータの発音タイミングだけは尊重しつつも、それ以外のオン・オフベロシティ等を変更・無視するようになっている。
【００４５】
そこで、これらの動作の相違点を中心にして説明する。図１は、この動作を説明するためのフローチャートである。この図に示される判別ルーチンは、先のノートオンの供給から一定の時間（本実施例では、０．５秒）以内に、同一音高における次のノートオンが供給された場合に起動されるものである。詳細には、この判別ルーチンは、あるノートオンの供給を受けた後に、当該ノートオンに対応してソレノイドへの通電を開始する前であって、次のノートオンが供給された場合に起動される。
【００４６】
まず、この判別ルーチンが起動されると、ステップＳａ１において、ノートオンの間隔ｔが求められる。すなわち、ノートオンが供給された時点から次のノートオンが供給された時間までの間隔ｔがタイマ１８により計測される。そして、次のステップＳａ２において、この発音間隔ｔが、先のノートオンのオンベロシティに対応するアタックディレイＡ１と、後のノートオンのオンベロシティに対応するアタックディレイＡ２とを加算した時間よりも短いか否かが判別される。
【００４７】
ここで、ステップＳａ２の判断根拠について説明する。一般に、ハンマ１２３ａにおいて確実な復帰を行なわせ、押鍵操作に対応してハンマ１２３ａを回動させるには、発音の間隔ｔが、先の発音のためにハンマ１２３ａが打弦から回動前の位置までの復帰に要する復時間と後の発音のためにハンマ１２３ａが回動開始から打弦までに要する往時間との和よりも長いことが必要とされる。なお、この際のハンマ１２３ａの往・復時間は、スタッカート演奏、すなわち押鍵後ただちに離鍵する演奏を基準としている。
【００４８】
前述したように、ハンマ１２３ａは、鍵の押鍵にしたがって回動し、この回動により打弦を行なう一方、打弦後では、反動により打弦前の略回動速度で回動前の位置に戻ろうとする。すなわち、発音のためのハンマ１２３ａの復時間は、当該発音のための往時間とほぼ同じである。
【００４９】
このため、前記和、すなわち復帰動作に必要な最低時間は、先と後との発音のために要するハンマ１２３ａの往時間の和として間接的に求めることができる。ハンマ１２３ａの往時間は、これすなわちアタックディレイであり、図５（ｂ）で示されるように、当該発音の大きさを示すオンベロシティが大なるほど短くなる。したがって、先と後とのオンベロシティを変換したアタックディレイ同士を加算することによって、ハンマ１２３ａの復帰に必要な時間を求めることができる。このようにして、ステップＳａ２では、発音間隔ｔが、ハンマ１２３ａの往復時間よりも短いか否かが判別されているのである。
【００５０】
この判別結果が「Ｎｏ」ならば、ＣＰＵ１００は、ハンマ１２３ａの復帰が完全な状態で、次のノートオンに対応する打弦が行なわれる（であろう）と予想する。すなわち、自動演奏データにしたがってソレノイド９０を駆動しても問題ないと判断する。このため、ステップＳａ３において、ＣＰＵ１００は、先と後との各ノートオンに対応するオンベロシティＮＶ1、ＮＶ2にしたがって駆動データを生成し、Ｄ／Ａ変換部１６に供給して、このルーチンを終了する。
【００５１】
一方、ステップＳａ２の判別結果が「Ｙｅｓ」ならば、ＣＰＵ１００は、ハンマ１２３ａの復帰が不完全な状態のまま、次のノートオンに対応する打弦が行なわれる（であろう）と予想する。すなわち、自動演奏データにしたがった自動演奏を行なうことができないと判断し、このためステップＳａ４にスキップする。ステップＳａ４において、ＣＰＵ１００は、先と後との各ノートオンに対応するオンベロシティＮＶ1、ＮＶ2の値にそれぞれ一定値「α」を加算して、供給されたデータが示す発音の大きさよりも大きいデータに変換する。そして、ＣＰＵ１００は、各発音を行なうための駆動データを、変換後のオンベロシティ（ＮＶ1＋α）、（ＮＶ2＋α）にしたがって生成し、Ｄ／Ａ変換部１６に供給する。すなわち、ＣＰＵ１００は、オンベロシティＮＶ1、ＮＶ2をより大きい値に変換するとともに、変換後の値を供給されたデータに置き換えて駆動データを生成するのである。
【００５２】
そして、ＣＰＵ１００は、ステップＳａ５において、変換後のオンベロシティに対応して生成した駆動データを、アタックディレイの期間だけ供給したらゼロとする。この後には、この判別ルーチンは終了する。
【００５３】
次に、ステップＳａ４およびＳａ５の処理による具体的な動作についてそれぞれ図２を参照して説明する。同図（ａ）に示すように、あるノートオンのデータ供給から、０．５秒以内に同一音高において次のノートオンのデータ供給がされた場合であって、このままでは、おそらくノートオンのタイミング通りには打弦ができないであろうと判別された場合（ステップＳａ２の判別結果が「Ｙｅｓ」の場合）について考える。上述したように、この場合には、供給されたノートオンに伴うオンベロシティＮＶ１、ＮＶ２にそれぞれ「α」が加算されて、この加算値が新たなオンベロシティとみなされる。
【００５４】
変換後のオンベロシティを、タッチデータおよびアタックディレイに変換すると、同図（ｃ）に示すような駆動データが得られる。比較のため「α」を加算しない場合の駆動データを破線で示す。オンベロシティが「α」だけ加算されて大きくなるので、この図に示すように、タッチデータがより大きくなる一方、アタックディレイはより短くなる。そして、この駆動データにしたがってソレノイド９０が制御されるので、鍵は、同図（ｄ）に示すように、より高い速度であって、発音タイミングにより近いタイミングで押下される。このため、ハンマ１２３ａも、同図（ｅ）に示すように、より高い速度で打弦を行ない、打弦後は反動によりほぼ同じ速度で回動する。
【００５５】
このように、より高い速度で打弦が行なわれる結果、必然的に打弦に要するハンマ１２３ａの往復時間も短くなる。したがって、ハンマが戻りきらない状態で次の打弦を行なうと予想される間隔ｔであっても、実際には、ハンマが戻りきった状態で次の打弦が行なわれるので、自動演奏データ通りのタイミングで自動演奏を行なうことが可能となる。以上が、ステップＳａ４の処理による効果である。
【００５６】
しかし、ステップＳａ４の処理により、ノートオンに伴うオンベロシティに比べてハンマ１２３ａの復帰時間を短くしても、そのノートオンと対となるノートオフが次のノートオンの直前で発生するならば、ノートオフの動作と、次のノートオンのためのアタックディレイでの動作とが重なってしまう場合があり得る。この場合、離鍵途中で、次の押鍵動作が行なわれてしまうことになる。前述のように、ハンマアッセンブリ１１０の復帰動作、特にジャック１２１とバット１２２との当接は、鍵１００の離鍵によって行なわれるので、離鍵が途中で打ち切られて押鍵された場合、当該押鍵速度は、押鍵速度がオンベロシティに対応しないものとなり、最悪、打撃そのものが行なわれなくなる。すなわち、この場合でも、「音抜け」の現象が発生する可能性がある。この場合の不都合を回避するために行なわれるが、次のステップＳａ５の処理である。
【００５７】
ステップＳａ２の判別結果が「Ｙｅｓ」の場合には、ステップＳａ４の処理の後、ステップＳａ５において、変換後のオンベロシティに対応して生成した駆動データが、アタックディレイの期間だけ供給されたならば、すなわち、打弦のタイミングＮ１０’、Ｎ１１’、Ｎ１２’に至ったならばゼロとされる（図２（ｃ）参照）。これにより、ハンマ１２３ａによる打弦直後には、ノートオフが無視されて、最高速度の離鍵が行なわれる（図２（ｄ）参照）。このように、実際の発音直後に直ちに離鍵が行なわれるので、離鍵途中で、次の押鍵動作が行なわれてしまう不都合が回避される。
【００５８】
このように、本実施例では、同一鍵の発音間隔が短かくなると、ステップＳａ４の処理により発音が一時的に大きくなり、また、ステップＳａ５の処理により、消音が直ちに行なわれる。しかし、同一鍵の連打においては、発音のタイミングが乱れたり、発音されない等というように、自動演奏データのタイミング通りの発音が行なわれるか否かが問題となるのであって、これに比べれば、ステップＳａ４あるいはＳａ５による問題は、たいした問題ではない。
【００５９】
また、このステップＳａ４あるいはＳａ５の処理は、同一鍵の連打を可能にする点に対して、それぞれ独立して寄与する。すなわち、いずれか一方の処理によっても、同一鍵の連打を可能にする。本実施例のように、両方の処理を行なえば、さらに確実性を増す。
【００６０】
なお、本実施例において、後のノートオンとの間隔ｔが求められる前に（特に、オンベロシティが小さい場合を考えると、アタックディレイが長くなるので）、先のノートオンのための駆動データが生成されてしまう印象を受けるかもしれないが、図２は、説明の便宜上こうなっただけである。実際には、小さいオンベロシティであって、連打が行なわれるオンベロシティに対応するアタックディレイは、図５（ｂ）に示されるように、長くても０．１５ｓｅｃである。このため、次のノートオンが供給されたときには、まだ駆動データが生成されず、ソレノイド９０が駆動されていない場合がほとんどである。
【００６１】
また、実際には、打弦に要するハンマの往復時間は、オンベロシティが小さい場合を鑑みても、せいぜい０．３〜０．４ｓｅｃであるので、先のノートオンのデータ供給から次のノートオンのデータ供給まで、限度の０．５秒である場合には、オンベロシティを加算しない構成としても良い。この場合であっても、タイミング通りに打弦を行なうことは可能である。
【００６２】
なお、上述した実施例では、自動演奏データにしたがった自動演奏が行なうことが可能か否かを、先と後との発音のために要するハンマの往時間の和を求め、この和をハンマアッセンブリの復帰に要する時間と推定して、ノートオンの間隔ｔとの長短を比較することにより判別したが、本願は、これに限られない。例えば、直接に、先の発音においてハンマが打弦後からホーム位置まで戻る復時間と、後の発音においてハンマがホーム位置から打弦するまでの往時間との和を求めて、これをノートオンの間隔ｔと比較するようにしても良い。
【００６３】
また、上述した実施例においては、ノートオンの間隔ｔで、自動演奏データにしたがって自動演奏を行なうことが不可能であると判断された場合に、先と後との各ノートオンに伴うオンベロシティＮＶ１，ＮＶ２の双方に一定値「α」を加算する構成としたが、どちらか一方のみに加算する構成としても良い。
【００６４】
また、上述した実施例では、ステップＳａ２での判別結果が「Ｎｏ」の場合には、ベロシティに一律にαを加算する構成としたが、時間間隔ｔが小さくなるほど「α」を大きくするような構成としても良い。この場合、先の発音の復時間（あるいは往時間）と後の発音の往時間との和に着目し、この和と時間間隔ｔとの比に応じて「α」を制御するように構成すると、正確な制御が可能となる。
【００６５】
さらに、上述した実施例においては、ノートオンの間隔ｔで、自動演奏データにしたがって自動演奏を行なうことが不可能であると判断された場合に、ノートオンに伴うオンベロシティに一定値「α」を加算する構成としたが、例えば、一定値「β（β＞１）」を乗算する構成としても良い。この方が、ノートオンに伴って供給された変換前のオンベロシティと変換後のオンベロシティとの比が一定となるので好適である。要は、オンベロシティを大きくさえすれば良いのである。
【００６６】
【発明の効果】
以上説明したようにこの発明によれば、入力されたデータにしたがって同一音高の鍵を操作したならばハンマが弦の連打を行なえないと判別された場合には、打弦後の復帰に要する時間を短縮する操作が行なわれるので、より短い間隔の連打への対応が可能となる。
【図面の簡単な説明】
【図１】この発明の実施例における判別ルーチンを示すフローチャートである。
【図２】同実施例における動作を説明するための図である。
【図３】自動演奏ピアノにおけるハンマアッセンブリの構成を示す側端面図である。
【図４】自動演奏ピアノにおける電気的構成を示すブロック図である。
【図５】従来の自動演奏ピアノの動作を説明するための図である。
【図６】従来の自動演奏ピアノの連打時の動作を説明するための図である。
【図７】（ａ）は、ベロシティからタッチデータへの変換を行なうテーブルの特性を示す図であり、（ｂ）は、ベロシティからアタックディレイへの変換を行なうテーブルの特性を示す図である。
【符号の説明】
１３……インターフェイス（入力手段）、
９０……ソレノイド（鍵操作手段）、
１００……ＣＰＵ（予想手段、変換手段、置換手段、指令手段）
【図１】
0003551507.tif 000002
【図２】
0003551507.tif 000003
【図３】
0003551507.tif 000004
【図４】
0003551507.tif 000005
【図５】
0003551507.tif 000006
【図６】
0003551507.tif 000007
【図７】
0003551507.tif 000008