(57)【要約】【課題】  アコースティック楽器に対し、コンサートマジック演奏が、自然な感覚で行える自動演奏装置を提供する。【解決手段】  ２点間の検出信号と次以降の２点間の検出信号に基づき、任意の２点間の時間Ｔｖと、２点間２点間同士の時間間隔から求められるテンポＴmpとが算出され、ソレノイド駆動回路２０が操作信号を受信してからアコースティックピアノが該回路２０により演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）及びベロシティ値ｆv（Ｔｖ，Ｔmp）が、関数によって求められる。基準となった２点間検出の後の検出時点Ｓ2から、レバー１９が反転するまでの時間Ｔａが、関数によってｆａ（Ｔｖ）として求められる。該後の検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎが、該検出時点よりｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、ソレノイド駆動回路２０に送出され、ベロシティ値が上記ｆv（Ｔｖ，Ｔmp）に設定される。【選択図】        図３
2005234155.tif 000002
【特許請求の範囲】
【請求項１】
アコースティック演奏が可能な楽器と、
外部からの操作信号で、該楽器を演奏駆動する演奏駆動手段と、
複数の音符データが発音順に並べられてなる自動演奏データを記憶した記憶手段と、
自動演奏の進行を指示する指示手段と、
上記楽器に備えられ、演奏者が操作可能な指揮体と、
該指揮体の少なくとも２点間でその操作動作を検出する検出手段と、
関数乃至データ対応テーブルが記憶されており、上記検出結果を上記関数乃至データ対応テーブルでの対応関係に基づいて演算がなされ、上記指示手段によって指示がなされる毎に、上記記憶手段から自動演奏データを構成する音符データを順番に読み出して、読み出された音符データと上記演算値を基に、上記演奏駆動手段に操作信号を出力する演奏制御手段とを有しており、
上記演奏制御手段により、その検出手段の検出に基づき、該２点間の時間Ｔｖが算出されて、上記演奏駆動手段が操作信号を受信してから楽器が該演奏駆動手段によって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）が、関数乃至データ対応テーブルでの対応関係によって求められ、２点間検出の後の検出時点から、指揮体の操作動作が停止するまでの時間Ｔａが、関数乃至データ対応テーブルでの対応関係によってｆａ（Ｔｖ）として求められ、後の検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎが、該検出時点よりｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記演奏駆動手段に送出されることを特徴とする自動演奏装置。
【請求項２】
上記指揮体が通常の鍵盤よりストロークの長い鍵盤状態であり、検出手段が上記ストローク中距離を置いて２点で操作が検出され、検出手段により２点において検出される検出信号に基づき、上記演奏制御手段により、夫々の検出信号の時間間隔が検出値Ｔｖとして算出され、上記演奏駆動手段が操作信号を受信してから楽器が該演奏駆動手段によって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）が、関数乃至データ対応テーブルから求められ、上記検出での後の方で検出される検出時点から、指揮体の操作動作が停止されるまでの時間Ｔａが、関数乃至データ対応テーブルからｆａ（Ｔｖ）として求められて、上記後の方の検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎが、該検出時点よりｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記演奏駆動手段に送出されることを特徴とする請求項１記載の自動演奏装置。
【請求項３】
アコースティック演奏が可能な楽器と、
外部からの操作信号で、該楽器を演奏駆動する演奏駆動手段と、
複数の音符データが発音順に並べられてなる自動演奏データを記憶した記憶手段と、
自動演奏の進行を指示する指示手段と、
上記楽器の演奏操作箇所の上方上下２点において横方向に光の走査がなされる、上下に２つずつ設置された夫々発光素子と受光素子で構成され、その光の走査が２点の受光素子で受光が遮られることで、演奏者の操作動作が感知される検出手段と、
関数乃至データ対応テーブルが記憶されており、上記検出結果を上記関数乃至データ対応テーブルでの対応関係に基づいて演算がなされ、上記指示手段によって指示がなされる毎に、上記記憶手段から自動演奏データを構成する音符データを順番に読み出して、読み出された音符データと上記演算値を基に、上記演奏駆動手段に操作信号を出力する演奏制御手段とを有しており、
上記検出手段の夫々の検出信号から、上記演奏制御手段により、夫々の検出信号の時間間隔が検出値Ｔｖとして算出され、上記演奏駆動手段が操作信号を受信してから鍵盤楽器が該演奏駆動手段によって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）が、関数乃至データ対応テーブルから求められ、下方の受光素子で受光が遮られた検出時点から演奏者の操作動作の反転により再び下方の受光素子で受光が遮られる検出時点までの時間の１／２の時間Ｔａが、関数乃至データ対応テーブルからｆａ（Ｔｖ）として求められて、下方の受光素子で受光が遮られた検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎが、該検出時点よりｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記演奏駆動手段に送出されることを特徴とする自動演奏装置。
【請求項４】
アコースティック演奏が可能な楽器と、
外部からの操作信号で、該楽器を演奏駆動する演奏駆動手段と、
複数の音符データが発音順に並べられてなる自動演奏データを記憶した記憶手段と、
自動演奏の進行を指示する指示手段と、
上記楽器に備えられ、演奏者が操作可能な指揮体と、
該指揮体の少なくとも２点間でその操作動作を検出する検出手段と、
関数乃至データ対応テーブルが記憶されており、上記検出結果を上記関数乃至データ対応テーブルでの対応関係に基づいて演算がなされ、上記指示手段によって指示がなされる毎に、上記記憶手段から自動演奏データを構成する音符データを順番に読み出して、読み出された音符データと上記演算値を基に、上記演奏駆動手段に操作信号を出力する演奏制御手段とを有しており、
上記演奏制御手段により、それら２点間の検出信号と次以降の２点間の検出信号に基づき、任意の２点間の時間Ｔｖと、２点間２点間同士の時間間隔乃至これらの時間間隔の平均から求められるテンポＴmpとが算出されて、上記演奏駆動手段が操作信号を受信してから楽器が該演奏駆動手段によって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）及びベロシティ値ｆv（Ｔｖ，Ｔmp）が、関数乃至データ対応テーブルでの対応関係によって求められ、基準となった２点間検出の後の検出時点から、指揮体の操作動作が停止するまでの時間Ｔａが、関数乃至データ対応テーブルでの対応関係によってｆａ（Ｔｖ）として求められ、該後の検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎが、該検出時点より、ｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記演奏駆動手段に送出されると共に、ベロシティ値が上記ｆv（Ｔｖ，Ｔmp）に設定されることを特徴とする自動演奏装置。
【請求項５】
上記請求項４記載の自動演奏装置において、演奏制御手段により求められる送信タイミングＴｏｎの値が負になる場合、一拍Ｔ2分遅れるように、該送信タイミングＴｏｎが、基準となった２点間検出の後の検出時点より、ｆａ（Ｔｖ）＋Ｔ2−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記演奏駆動手段に送出されることを特徴とする請求項４記載の自動演奏装置。
【請求項６】
上記請求項５記載の自動演奏装置において、検出手段がＯＮになった時に夫々の点で信号が検出されると共に、それらが全てＯＦＦになったことが感知されて、上記操作信号が上述のようにタイミング制御されて、上記演奏駆動手段に送出されることを特徴とする請求項５記載の自動演奏装置。
【請求項７】
上記請求項４〜請求項６いずれか１つに記載の自動演奏装置において、上記指揮体が通常の鍵盤よりストロークの長い鍵盤状態であり、検出手段は上記ストローク中距離を置いて２点で操作が検出され、検出手段により２点において検出される検出信号に基づき、上記演奏制御手段により、夫々の検出信号の時間間隔が検出値Ｔｖとして算出されることを特徴とする請求項４〜請求項６いずれか１つに記載の自動演奏装置。
【請求項８】
上記請求項４〜請求項６いずれか１つに記載の自動演奏装置において、上記検出手段が、楽器の演奏操作箇所の上方上下２点において横方向に光の走査がなされる、上下に２つずつ設置された夫々発光素子と受光素子で構成され、その光の走査が２点の受光素子で受光が遮られることで、演奏者の操作動作が感知され、夫々の検出信号に基づき、上記演奏制御手段により、夫々の検出信号の時間間隔が検出値Ｔｖとして算出されることを特徴とする上記請求項４〜請求項６いずれか１つに記載の自動演奏装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一定間隔で指揮体を操作することで自動演奏曲の曲進行が自動的に行われる自動演奏装置に関する。
【背景技術】
【０００２】
従来は、本出願人の提案により、電子ピアノ等の電子鍵盤楽器において、演奏者の演奏操作が関与し、一定間隔で指揮体が操作されることで、自動演奏曲の曲進行が自動的に行われるコンサートマジック機能が実現されている。
【０００３】
一方アコースティックピアノでは、一旦演奏が開始されれば、演奏者の演奏操作が関与せずとも、演奏が行われる自動演奏機能を備えるものがあるだけである。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記コンサートマジック機能を、電子ピアノではなく、アコースティックピアノで実現することを考えた場合、弾いてしまった鍵盤の音が自動演奏曲の音とは別個に鳴ってしまうこと、電子ピアノのように弾いた直後（ほぼ同時）に、コンサートマジックの演奏音が発音せず、必ずある程度（１００ｍｓｅｃ前後）の遅れが生じてしまう（ピアノの各鍵盤に自動演奏用のソレノイドが装着してあり、信号受信後ソレノイドが稼働して音が鳴るまでにタイムラグが発生するため）ことといった問題があった。
【０００５】
前者の音が鳴ってしまう問題については、特開２００３−２７１１４０で、一乃至複数鍵をミュートする（ハンマーストッパーを効かせる）と共に、鍵盤にタッチセンサを装着して、上記コンサートマジック機能を実現するという提案がある。
【０００６】
しかし、後者の発音タイミングの遅れは、上記提案でも解決することができなかった。
【０００７】
このような発音タイミングの遅れが解消されないと、演奏者が自然な感覚で演奏操作を行いながら、コンサートマジック機能による自動演奏を楽しむことができないことになる。
【０００８】
本発明は、以上のような問題に鑑み創案されたもので、アコースティック楽器に対し、コンサートマジック機能を用いた演奏が、自然な感覚で行える自動演奏装置を提供せんとするものである。
【課題を解決するための手段】
【０００９】
そのため本発明に係る自動演奏装置は、
アコースティック演奏が可能な楽器と、
外部からの操作信号で、該楽器を演奏駆動する演奏駆動手段と、
複数の音符データが発音順に並べられてなる自動演奏データを記憶した記憶手段と、
自動演奏の進行を指示する指示手段と、
上記楽器に備えられ、演奏者が操作可能な指揮体と、
該指揮体の少なくとも２点間でその操作動作を検出する検出手段と、
関数乃至データ対応テーブルが記憶されており、上記検出結果を上記関数乃至データ対応テーブルでの対応関係に基づいて演算がなされ、上記指示手段によって指示がなされる毎に、上記記憶手段から自動演奏データを構成する音符データを順番に読み出して、読み出された音符データと上記演算値を基に、上記演奏駆動手段に操作信号を出力する演奏制御手段とを有しており、
上記演奏制御手段により、その検出手段の検出に基づき、該２点間の時間Ｔｖが算出されて、上記演奏駆動手段が操作信号を受信してから楽器が該演奏駆動手段によって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）が、関数乃至データ対応テーブルでの対応関係によって求められ、２点間検出の後の検出時点から、指揮体の操作動作が停止するまでの時間Ｔａが、関数乃至データ対応テーブルでの対応関係によってｆａ（Ｔｖ）として求められ、後の検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎが、該検出時点よりｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記演奏駆動手段に送出される
ことを基本的特徴としている。
【００１０】
上記構成によれば、検出手段により検出された少なくとも２点における検出信号の夫々を元に、演奏制御手段により、該２点間（その間の距離は少なくとも予め分かっている）の時間Ｔｖが算出される。そして、上記演奏駆動手段が操作信号を受信してから楽器が該演奏駆動手段によって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）が、演奏制御手段に備えられた関数乃至データ対応テーブルでの対応関係から、該演奏制御手段によって求められる。２点目の検出時点から指揮体の操作動作が停止するまで（その間の距離は少なくとも予め分かっている）の時間Ｔａが、同じく演奏制御手段に備えられた関数乃至データ対応テーブルでの対応関係から、該演奏制御手段によってｆａ（Ｔｖ）として求められる。さらに２点目の検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎが、該検出時点からｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、演奏制御手段により、上記演奏駆動手段に送出される。
【００１１】
すなわち、検出信号に基づき、該２点間の時間Ｔｖが算出されると、２点間の距離及び２点目の検出時点から指揮体の操作動作が停止するまでの間の距離は予め分かっているため、指揮体の操作速度及び２点目の検出時点から指揮体の操作動作が停止する点に至るまでの時間Ｔａ［＝ｆａ（Ｔｖ）］が分かる。さらに、上記演奏駆動手段が操作信号を受信してから楽器が該演奏駆動手段によって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）も求めることが可能となる。従って、２点目の検出時点からｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、演奏制御手段により、上記演奏駆動手段に操作信号が送出されることで、上記遅延時間ｆＤ（Ｔｖ）後にアコースティック楽器の演奏が始まり、ちょうどその時が、指揮体の操作動作が停止する点（例えば指揮体が鍵盤状態のものであれば、鍵盤状態のものが一番下まで押された状態）であるので、その分、操作信号受信後ソレノイドが稼働して音が鳴るまでのタイムラグが相殺され、演奏者が自然な感覚で演奏操作を行いながら、コンサートマジック機能（指示手段によって指示がなされる毎に、演奏制御手段が、上記記憶手段から自動演奏データを構成する音符データを順番に読み出して、読み出された音符データを基に、上記演奏駆動手段に操作信号を出力して実現される上記自動演奏機能）による自動演奏を楽しむことができるようになる。
【００１２】
上記指揮体は、通常の鍵盤よりストロークの長い鍵盤状態のものを用いることができる（請求項２）。その場合、検出手段は、上記ストローク中距離を置いて２点で操作が検出され（上記ストローク中距離を置いて２点で夫々検出される２点スイッチが用いられ）、検出手段により２点において検出される検出信号に基づき、上記演奏制御手段により、夫々の検出信号の時間間隔が検出値Ｔｖとして算出される。そして、上記演奏駆動手段が操作信号を受信してから楽器が該演奏駆動手段によって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）が、関数乃至データ対応テーブルから求められ、上記検出で後の方で検出される検出時点から、指揮体の離鍵操作が開始されるまでの時間Ｔａが、関数乃至データ対応テーブルからｆａ（Ｔｖ）として求められる。さらに、上記後の方の検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎが、該検出時点よりｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記演奏駆動手段に送出されることになる。
【００１３】
また、検出手段は、上記楽器の演奏操作箇所の上方上下２点において横方向に光の走査がなされる、上下に２つずつ設置された夫々発光素子と受光素子で構成されたものを用いることができる（請求項３）。その場合、その光の走査が２点の受光素子で受光が遮られることで、演奏者の操作動作が感知されることになる。そして上記演奏制御手段により、夫々の検出信号の時間間隔が検出値Ｔｖとして算出され、上記演奏駆動手段が操作信号を受信してから鍵盤楽器が該演奏駆動手段によって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）が、関数乃至データ対応テーブルから求められる。そして、下方の受光素子で受光が遮られた検出時点から、離鍵操作が開始されるまでの時間Ｔａが、関数乃至データ対応テーブルからｆａ（Ｔｖ）として求められて、下方の受光素子で受光が遮られた検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎが、該検出時点よりｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記演奏駆動手段に送出されることになる。
【００１４】
他方、一般に曲のテンポが速くなると、上記のような検出手段により検出される少なくとも２点間の時間間隔の検出値Ｔｖは短くなる（指揮体の操作速度であれば、その速度が速くなる）。この値をそのまま使うと、速いテンポの時に、ベロシティが大きくなってしまうこともある。
【００１５】
そこで、その場合は、指揮体の操作のテンポ（実際には検出手段による２点間検出と次の２点間検出との２点間同士の時間間隔乃至これらの時間間隔の平均から求められるテンポＴmp）を求めて、実際のベロシティ値が、該テンポ（テンポを考慮する）と上記検出値Ｔｖとから、関数乃至データ対応テーブルでの対応関係によって求められ、ｆv（Ｔｖ，Ｔmp）という値として求められることになる。その場合上記遅延時間も、関数乃至データ対応テーブルでの対応関係から、ｆＤ（Ｔｖ）として求められることになる。そして２点目の検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎは、該検出時点より、ｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記演奏駆動手段に送出される。
【００１６】
請求項４の構成は、そのようなベロシティ値が不自然にならないようにするための構成を提供せんとするものであって、より具体的には、
アコースティック演奏が可能な楽器と、
外部からの操作信号で、該楽器を演奏駆動する演奏駆動手段と、
複数の音符データが発音順に並べられてなる自動演奏データを記憶した記憶手段と、
自動演奏の進行を指示する指示手段と、
上記楽器に備えられ、演奏者が操作可能な指揮体と、
該指揮体の少なくとも２点間でその操作動作を検出する検出手段と、
関数乃至データ対応テーブルが記憶されており、上記検出結果を上記関数乃至データ対応テーブルでの対応関係に基づいて演算がなされ、上記指示手段によって指示がなされる毎に、上記記憶手段から自動演奏データを構成する音符データを順番に読み出して、読み出された音符データと上記演算値を基に、上記演奏駆動手段に操作信号を出力する演奏制御手段とを有しており、
上記演奏制御手段により、それら２点間の検出信号と次以降の２点間の検出信号に基づき、任意の２点間の時間Ｔｖと、２点間２点間同士の時間間隔乃至これらの時間間隔の平均から求められるテンポＴmpとが算出されて、上記演奏駆動手段が操作信号を受信してから楽器が該演奏駆動手段によって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）及びベロシティ値ｆv（Ｔｖ，Ｔmp）が、関数乃至データ対応テーブルでの対応関係によって求められ、基準となった２点間検出の後の検出時点から、指揮体の操作動作が停止するまでの時間Ｔａが、関数乃至データ対応テーブルでの対応関係によってｆａ（Ｔｖ）として求められ、該後の検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎが、該検出時点より、ｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記演奏駆動手段に送出されると共に、ベロシティ値が上記ｆv（Ｔｖ，Ｔmp）に設定される
ことを特徴としている。
【００１７】
尚、上記テンポＴmpは、上記構成で規定されるように、１回目の２点検出（２点の中の最初の検出時点又は後の検出時点）と２回目の２点検出（２点の中の最初の検出時点又は後の検出時点）の時間差でも良いし、数拍前からの拍間時間差の平均値でも良い。
【００１８】
さらに、上記構成で、上記送信タイミングＴｏｎの値＝ｆａ（Ｔｖ）−ｆＤ（Ｔｖ）の値が負になる速いテンポの場合があり得る。このような場合は、一拍Ｔ2分遅らせて次の拍タイミングで、操作信号を送信することによりタイミングのずれを解消すると良い。
【００１９】
請求項５は、以上のような構成を提供するものであって、より具体的には、演奏制御手段により求められる送信タイミングＴｏｎの値が負になる場合、一拍Ｔ2分遅れるように、該送信タイミングＴｏｎが、基準となった２点間検出の後の検出時点より、ｆａ（Ｔｖ）＋Ｔ2−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記演奏駆動手段に送出されることを特徴としている。
【００２０】
尚、一拍Ｔ2は、上記テンポＴmpと同様に、１回目の２点検出（２点の中の最初の検出時点又は後の検出時点）と２回目の２点検出（２点の中の最初の検出時点又は後の検出時点）の時間差でも良いし、数拍前からの拍間時間差の平均値でも良い。
【００２１】
以上のような構成とすることにより、現在の指揮体の操作動作は、一拍後の演奏に反映される。
【００２２】
しかし、このような構成を採用した場合でも、突然指揮体の操作動作を止めた場合、一拍分の演奏は止まらずになされてしまうという不具合が生ずることがある。これを軽減するため、指揮体の操作動作が一旦停止した後反転してから引き上げられたことを検知した上で次の操作信号を送るようにすることが考えられる。すなわち、検出手段による２点間検出の最初の検出時点をスイッチＳ1に、また後の検出時点をスイッチＳ2にたとえると、Ｓ1がＯＮ→Ｓ2がＯＮ→次の拍での操作信号の送信準備完了→Ｓ2がＯＦＦ→Ｓ1がＯＦＦ→操作信号の送信として、Ｓ1のＯＦＦを検出しない限り、操作信号を送信しないようにすれば、指揮体が突然反転しないまま止まった時には（鍵盤にたとえれば鍵盤が突然押されたまま止まった時には）、次の拍の演奏がされずに止まることになる。
【００２３】
請求項６は、以上のような構成を提供するものであって、より具体的には、検出手段がＯＮになった時に夫々の点で信号が検出されると共に、それらが全てＯＦＦになったことが感知されて、上記操作信号が上述のようにタイミング制御されて、上記演奏駆動手段に送出されることを特徴としている。
【００２４】
請求項７は、以上の請求項４〜請求項６いずれか１つの自動演奏装置において、上記指揮体が通常の鍵盤よりストロークの長い鍵盤状態であり、検出手段は上記ストローク中距離を置いて２点で操作が検出され、検出手段により２点において検出される検出信号に基づき、上記演奏制御手段により、夫々の検出信号の時間間隔が検出値Ｔｖとして算出されることを規定している。
【００２５】
また請求項８は、以上の請求項４〜請求項６いずれか１つの自動演奏装置において、上記検出手段が、楽器の演奏操作箇所の上方上下２点において横方向に光の走査がなされる、上下に２つずつ設置された夫々発光素子と受光素子で構成され、その光の走査が２点の受光素子で受光が遮られることで、演奏者の操作動作が感知され、夫々の検出信号に基づき、上記演奏制御手段により、夫々の検出信号の時間間隔が検出値Ｔｖとして算出されることを規定している。
【発明の効果】
【００２６】
本発明の請求項１〜請求項８記載の自動演奏装置によれば、演奏者が自然な感覚で演奏操作を行いながら、上記コンサートマジック機能による自動演奏を楽しむことができるようになるという優れた効果を奏し得る。
【００２７】
また請求項４の構成によれば、曲のテンポが速くなった場合でも、ベロシティ値が不自然にならないようにすることができ、演奏者が自然な感覚で演奏操作を行いながら、上記コンサートマジック機能による自動演奏をすることが可能となる。
【００２８】
さらに請求項５の構成では、上記送信タイミングＴｏｎの値＝ｆａ（Ｔｖ）−ｆＤ（Ｔｖ）の値が負になる速いテンポの場合に、一拍Ｔ2分遅らせて次の拍タイミングで、操作信号を送信するようにしているため、現在の指揮体の操作動作は、一拍後の演奏に反映されることになる。
【００２９】
加えて請求項６の構成では、請求項５のような構成が採用された際に、突然指揮体の操作を止めた場合でも、指揮体の操作動作が一旦停止した後反転してから引き上げられたことを検知した上で次の操作信号を送るようにしているため、一拍分の演奏は止まらずになされてしまうということがなくなり、演奏の不自然さを解消することが可能となる。
【発明を実施するための最良の形態】
【００３０】
以下、本発明を実施するための最良の形態に係る自動演奏装置を、図面を参照しながら詳細に説明する。
【００３１】
［実施例１］
実施例１では、本発明の自動演奏装置のアコースティック楽器としてアコースティックピアノが使用される場合について説明するが、本発明のアコースティック楽器はアコースティックピアノに限らず、アコースティックオルガン、アコースティックチェンバロなどといった、アコースティック演奏が可能な鍵盤楽器なら、他にも適用できる。
【００３２】
図１は、本発明の実施の形態に係る自動演奏装置の電気的な構成を示すブロック図である。この自動演奏装置は、中央処理装置（以下、「ＣＰＵ」という）１０、プログラムメモリ１２、ワークメモリ１３、パネルインタフェース回路１４、本発明の自動演奏データを記憶する記憶手段となる自動演奏データメモリ１６、押鍵検出回路１７及び本発明の演奏駆動手段を構成するソレノイド駆動回路２０がシステムバス３０で相互に接続されて構成されている。システムバス３０は、アドレス信号、データ信号又は制御信号等を送受するために使用される。
【００３３】
ＣＰＵ１１は、プログラムメモリ１２に記憶されている制御プログラムに従って動作することにより自動演奏装置の全体を制御する。また上記プログラムメモリ１２に記憶されている自動演奏プログラムが読み出され、実行されることによって、該ＣＰＵ１１は、本発明の指示手段と演奏制御手段とが構成されることになる。このＣＰＵ１１で実行される処理の詳細は後にフローチャートを参照しながら詳細に説明する。
【００３４】
ＣＰＵ１１には、本発明の検出手段である２点スイッチ１８ａ及び１８ｂの機能を構成する受光素子が接続されている。この２点スイッチ１８ａ及び１８ｂは、図４に示すように、アコースティックピアノの鍵盤とは別体に設けられた、本発明の指揮体としてのレバー１９の操作状態を検出する。すなわち、本アコースティックピアノの鍵盤右脇には、一端が回動可能に枢支されスプリング１９０により一定位置に保持された状態であって、しかも他端側近傍に下方に突出した突出部１９１のあるレバー１９が設けられている。該突出部１９１には、回動方向に後述する信号Ｓ1及びＳ2用の２つの穴１９２及び１９３が設けられている。この２つの穴Ｓ1及びＳ2と、上記レバー１９が押鍵された際に、夫々の穴１９２及び１９３に横方向から光が通過してそれを受けて信号として検出できる、一定位置に固定された光スイッチ（一対の発光素子と受光素子）とにより、本発明の検出手段である２点スイッチ１８ａ及び１８ｂが構成されることになる。このレバー１９の突出部１９１下方には、該突出部１９１がすっぽり収まる中空部１９４が穿設されており、丁度レバー１９を一番下方に押し下げた状態の時に（図面では破線で示されている）、上記突出部１９１の下端も該中空部１９４の底に当たる状態になっている。尚、本実施例では上述のように、光スイッチで検出手段が構成されているが、ゴムスイッチでも、リーフスイッチでも、２点が検出できるスイッチであれば、特に限定はない。
【００３５】
プログラムメモリ１２は、例えばリードオンリメモリ（以下、「ＲＯＭ」という）から構成されている。このプログラムメモリ１２は、上述した制御プログラムや自動演奏プログラムの他に、ＣＰＵ１１が参照する種々のデータを記憶する。
【００３６】
ワークメモリ１３は、例えばランダムアクセスメモリ（以下、「ＲＡＭ」という）から構成されており、ＣＰＵ１１が各種処理を実行する際に、種々のデータを一時記憶するために使用される。このワークメモリ１３には、レジスタ、カウンタ、フラグ等が定義されている。これらのうちの主なものについて説明する。なお、下記以外については、必要の都度説明する。
【００３７】
（ａ）自動演奏フラグ：通常自動演奏中であるかどうかを記憶する。
（ｂ）コンサートマジックフラグ（以下、「ＣＭフラグ」という）：コンサートマジック演奏中（以下、「ＣＭモード」という）であるかどうかを記憶する。
（ｃ）演奏リクエストフラグ：レバー１９が押されたことを記憶する。
（ｄ）第１音符データポインタ：現在実行中の通常自動演奏用の音符データが置かれている自動演奏データメモリ１６上のアドレスを保持する。
（ｅ）第２音符データポインタ：現在実行中のコンサートマジック演奏用の音符データが置かれている自動演奏データメモリ１６上のアドレスを保持する。
（ｆ）第１ソング番号レジスタ：選択された通常自動演奏用の自動演奏曲のソング番号を記憶する。
（ｇ）第２ソング番号レジスタ：選択されたコンサートマジック演奏用の自動演奏曲のソング番号を記憶する。
【００３８】
パネルインタフェース回路１４には、操作パネル１５が接続されている。操作パネル１５には、例えば自動演奏スイッチ１５１、コンサートマジックスイッチ（以下、「ＣＭスイッチ」という）１５２、選曲スイッチ１５３等が設けられている。また、図示は省略するが、各スイッチの設定状態を表示するＬＥＤ表示器、種々のメッセージを表示するＬＣＤ等が設けられている。
【００３９】
自動演奏スイッチ１５１は、例えば押釦スイッチから構成されており、通常自動演奏を開始又は停止させるために使用される。この自動演奏スイッチ１５１のオン／オフ状態は、自動演奏フラグによって記憶される。自動演奏フラグは、自動演奏スイッチ１５１が押される度に反転する。即ち、通常自動演奏が停止中（自動演奏フラグがオフ）に自動演奏スイッチが押されると自動演奏フラグがオンにされて通常自動演奏が開始される。一方、通常自動演奏中（自動演奏フラグがオン）に自動演奏スイッチ１５１が押されると自動演奏フラグがオフにされて通常自動演奏は停止される。
【００４０】
ＣＭスイッチは１５２、例えば押釦スイッチから構成されており、コンサートマジック演奏を行うかどうかを指定するために使用される。このＣＭスイッチ１５２の設定状態は、ＣＭフラグによって記憶される。ＣＭフラグは、ＣＭスイッチ１５２が押される度に反転する。即ち、ＣＭモードでない時（ＣＭフラグがオフにされている時）にＣＭスイッチ１５２が押されるとＣＭフラグがオンにされてＣＭモードに移る。一方、ＣＭモードの時（ＣＭフラグがオンにされている時）にＣＭスイッチ１５２が押されるとＣＭフラグがオフにされてＣＭモードが解除される。
【００４１】
選曲スイッチ１５３は、例えばテンキー、ダイヤル、アップダウンスイッチといった数値を入力できるスイッチから構成されている。この選曲スイッチ１５３は、複数の自動演奏曲の中から通常自動演奏及びコンサートマジック演奏を行う曲を選択するために使用される。
【００４２】
上記パネルインタフェース回路１４は、ＣＰＵ１１からの指令に応答して操作パネル１５上の各スイッチをスキャンし、このスキャンにより得られた各スイッチの開閉状態を示す信号に基づいて、各スイッチを１ビットに対応させたパネルデータを作成する。各ビットは、例えば「１」でスイッチオン状態、「０」でスイッチオフ状態を表す。このパネルデータは、システムバス３０を介してＣＰＵ１１に送られる。このパネルデータは、操作パネル１５上のスイッチのオンイベント又はオフイベントが発生したかどうかを判断するために使用される（詳細は後述する）。
【００４３】
また、パネルインタフェース回路１４は、ＣＰＵ１１から送られてきた表示データを操作パネル１５上のＬＥＤ表示器及びＬＣＤに送る。これにより、ＣＰＵ１１から送られてきたデータに従って、ＬＥＤ表示器が点灯／消灯され、またＬＣＤにメッセージが表示される。
【００４４】
自動演奏データメモリ１６は、例えばＲＯＭから構成されており、本発明の記憶手段に対応する。この自動演奏データメモリ１６は、複数の曲に対応する複数の自動演奏データを記憶する。各自動演奏データは、発音順に並べられた複数の音符データから構成されている。各音符データは１音を発生するために用いられ、例えば図２に示すように、４バイトのデータから構成されている。
【００４５】
各バイトには、キーナンバ、ステップタイム、ゲートタイム及びベロシティが割り当てられている。「キーナンバ」の最上位ビットは、ノートオン又はノートオフを指示するために使用される。下位７ビットは、鍵盤装置の各鍵に付された番号に対応し、音高を指定するために使用される。「ステップタイム」は発音開始の時刻（以下、「発音タイミング」という）を指定するために使用される。「ゲートタイム」は音の長さ（音長）を指定するために使用される。「ベロシティ」は、音の強さを指定するために使用される。１つの自動演奏データは、このような音符データが、ステップタイム値の順番に並べられることによって構成されている。
【００４６】
これらの自動演奏データは、通常自動演奏とコンサートマジック演奏とで共通に使用されるが、「ステップタイム」はコンサートマジック演奏では使用されない。また「ベロシティ」もコンサートマジック演奏で使用されず、後述するように、上記２点スイッチ１８ａ及び１８ｂの２点間の検出信号に基づく２点間の時間間隔Ｔｖを基に、さらに検出されたテンポTmpデータで修正されたベロシティ値が用いられる。各自動演奏データには、「ソング番号」と呼ばれる識別子が付されている。通常自動演奏用の曲のソング番号は、例えば１〜５００、コンサートマジック演奏用の曲のソング番号は、例えば５０１〜９９９と決められている。ユーザは操作パネル１５上の選曲スイッチ１５３でソング番号を指定することにより任意の曲を選択できる。選択された曲のソング番号は、通常自動演奏用であれば第１ソング番号レジスタに、コンサートマジック演奏用であれば第２ソング番号レジスタにそれぞれセットされる。
【００４７】
なお、この自動演奏データメモリ１６は、ＲＯＭに限らず、ＲＡＭ、ＲＯＭカード、ＲＡＭカード、フレキシブルディスク、ＣＤ−ＲＯＭといった記憶媒体から構成できる。自動演奏データメモリ１６として、比較的アクセス速度の遅いフレキシブルディスク、ＣＤ−ＲＯＭが用いられる場合は、これらに記憶された自動演奏データを一旦ＲＡＭにロードして使用するように構成するのが好ましい。
【００４８】
押鍵検出回路１７には、鍵盤１７０の各鍵に備えられたタッチセンサ１７１が接続されている。該タッチセンサ１７１は、図３に示すように、各鍵の下部に設けられており、該タッチセンサ１７１は、どのキーナンバの鍵が押鍵され、さらにその押鍵スピードがどのくらいかを検出し、押鍵信号を生成し、押鍵検出回路１７に送る。タッチセンサ１７１としては、鍵が押し下げられたことを検出できる光センサ、圧力センサ、その他のセンサを使用できる。押鍵検出回路１７は、タッチセンサ１７１からの押鍵信号を受け取ると、鍵盤データとしてＣＰＵ１１に送る。
【００４９】
ソレノイド駆動回路２０は、鍵盤１７０の各鍵に備えられたソレノイド２１1〜２１nを駆動する。本発明の演奏駆動手段は、ソレノイド駆動回路２０及びソレノイド２１1〜２１nから構成されている。ソレノイド２１1〜２１nは、図３に示すように、各鍵の後端部分に設けられており、ソレノイド駆動回路２０からの駆動信号が供給されることにより鍵を押し上げる。これにより、鍵が演奏者によって打鍵された時と同じ状態が作り出される。
【００５０】
ソレノイド駆動回路２０からの駆動信号が供給されることによって鍵が押し上げられると、その鍵の運動が図３中に矢印で示すように伝わり、ジャック４１、ウィペン４２及びハンマー４３等から成る押鍵機構４０が作動して、押下された鍵に対応する弦４４が弾かれる。これにより、アコースティックピアノの音が発生される。
【００５１】
他方上記ソレノイド駆動回路２０へは、次のようにして、操作信号が受信され、各鍵に備えられたソレノイド２１1〜２１nが駆動されることになる。すなわち、図４に示すように、アコースティックピアノの鍵盤右脇に、スプリング１９０を介して枢支されたレバー１９が設けられており、該レバー１９の下部に突出した突出部１９１が、該レバー１９の押し下げと共に、その下方の中空部１９４に向けて移動し、最後に該中空部１９４の底面にレバー１９の下端が当たる。その後演奏者がそのレバー１９の押し下げを止め離すと、上記スプリング１９０により元の位置に戻る。
【００５２】
この間、突出部１９１に設けられた２つの穴１９２及び１９３に、レバー１９の押し下げ時には、順次光スイッチの発光素子から出力された光が通過し、受光素子で受光され、図５に示すように、信号Ｓ1及びＳ2の順で、検出される。他方レバー１９の突出部１９１下端が着床し、押し下げを止めて離した時には、上記とは逆順に光スイッチの発光素子から出力された光が通過して、受光素子で受光され、信号Ｓ2及びＳ1と、前記とは逆順で、検出される。次のレバー１９の押し下げで、以上の信号検出処理が繰り返し行われる。尚、図４で、突出部１９１の反対側に遮蔽体１９５が設けられているが、これは、レバー１９が押し下げられ、たとえば最下点に達した時に、発光素子から出力された光が受光素子で受光されてしまうのを防ぐためである（これがないと、受光素子が穴１９２及び１９３の部分以外でも受光してしまうことになる）。
【００５３】
上記図４及び図５を使用して、本発明の実施形態構成で行われる処理につき説明する。
【００５４】
アコースティックピアノが演奏情報を受信後、実際に発音に至るまでの時間的遅れは、１００ｍｓ前後というデータがある。仮にストロークが１００ｍｍの上記レバー１９で操作すると、１往復に要する時間は、テンポ６０の時１０００ｍｓｅｃ、片道だと５００ｍｓｅｃ、テンポ１２０の時、１往復に要する時間は５００ｍｓｅｃ、片道だと２５０ｍｓｅｃ、テンポ２００の時、１往復に要する時間は３００ｍｓｅｃ、片道だと１５０ｍｓｅｃとなる。
【００５５】
コンサートマジック演奏では、レバー１９を使って、指揮棒のようにテンポと強さを上下操作で表現する。そのような場合、テンポが速いほど信号Ｓ2が入ってから、レバー１９の突出部１９１下端が底に着くまでの時間は短くなる。また音を大きく鳴らしたい時は、信号Ｓ1から信号Ｓ2の時間が短くなり、同時に信号Ｓ2が入ってからレバー１９の突出部１９１下端が底に着くまでの時間は短くなる。演奏者の感覚としては、レバー１９が底に着くタイミングが、自分が弾く演奏曲の拍のタイミング（拍に乗った音符の発音タイミング）と一致しているのが自然な演奏感覚になる。
【００５６】
図４に示すようなレバー１９を操作して、指揮者のタクトのように、演奏操作をすると、該レバー１９の動きは、図５に示すようになる。その途中、２点スイッチ１８ａ及び１８ｂにより、信号Ｓ1及びＳ2が検出される。また連続したタクトのような動きで、次の信号Ｓ1及びＳ2が検出される。
【００５７】
これらの信号が、ＣＰＵ１１で構成される演奏制御手段に入力されると、該ＣＰＵ１１は、レバー１９突出部１９１の２つの穴１９２及び１９３の２点における通過光の受光時間間隔Ｔｖ（Ｓ1とＳ2の時間間隔；１回目Ｔｖ1、２回目Ｔｖ2）を求める。これはレバー１９の打鍵強さに対応している。
【００５８】
また、１回目の信号Ｓ1又はＳ2と、２回目の信号Ｓ1又はＳ2との時間間隔Ｔ'2又はＴ2（Ｓ1又はＳ2がＯＮになる間隔）も、ＣＰＵ１１によって測定される。この時間間隔Ｔ'2又はＴ2は、２回目の信号Ｓ1又はＳ2を受信した段階で、後述するように、６０／Ｔ'2又は６０／Ｔ2として、コンサートマジック演奏で演奏される曲のテンポＴmpにしても良い。また数回の信号の受信によりその時々で演算して求められるこれらの６０／Ｔ'2又は６０／Ｔ2の平均を曲のテンポＴmpにしても良い。
【００５９】
さらに図５に示されるＴａ1、Ｔａ2は、信号Ｓ2が受信されてからレバー１９の突出部１９１下端が底に着くまでの時間である。２点スイッチ１８ａ及び１８ｂを構成する受光素子の位置と、前記中空部１９４の底の位置は、図４に示すように固定位置であり、その距離は予め分かっている。従って該距離を元に、予め用意され、プログラムメモリ１２に記憶されている関数が参照（データ対応テーブルを参照しても良い）されて、Ｔａ1又はＴａ2は、算出される。尚、前記中空部１９４の底の位置は操作者によってバラツキがあるのでユーザが好みに応じて変更可能なパラメータとすることも可能である。
【００６０】
上述のテンポＴmpの算出は、通常、６０／Ｔ2、又は６０／Ｔ'2秒として算出される。上述のように、６０／Ｔ2、６０／Ｔ'2を、何回か平均した値でも良い。この値は、演奏開始後のコンサートマジック演奏曲の演奏テンポＴmpとして使用する。
【００６１】
上述した打鍵強さは、上記受光時間間隔Ｔｖを基に、プログラムメモリ１２に記憶されている関数がＣＰＵ１１に参照（データ対応テーブルを参照しても良い）されて、ｆｖ（Ｔｖ）として求められる（強さの例；１〜１２８…MIDIのvelociytyに対応）。
【００６２】
他方、操作信号が上記ソレノイド駆動回路２０に届いてからソレノイド２１1乃至２１nが駆動して発音するまでの遅延時間は、上記受光時間間隔Ｔｖを基に、プログラムメモリ１２に記憶されている関数がＣＰＵ１１に参照（データ対応テーブルを参照しても良い）されて、ｆＤ（Ｔｖ）として求められる。一般に１００ｍｓｅｃ前後であるが、上記打鍵強さに対応して増減する。
【００６３】
上述のように、信号Ｓ2が受信されてからレバー１９の突出部１９１下端が底に着くまでの時間Ｔａ1又はＴａ2は、受光素子と前記中空部１９４の底までの距離は予め分かっており、従ってＣＰＵ１１によりプログラムメモリ１２に記憶されている関数が参照（データ対応テーブルを参照しても良い）されて、ｆａ（Ｔｖ）として算出される。
【００６４】
従って、信号Ｓ2が受信されて（ＯＮになって）から、操作信号を上記ソレノイド駆動回路２０に対して送る送信タイミングＴｏｎは、信号Ｓ2の検出時点よりＴａ−ｆＤ（Ｔｖ）秒後、すなわちｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記ソレノイド駆動回路２０（演奏駆動手段）に送出されるように、ＣＰＵ１１が演奏制御手段としてその制御を行う。
【００６５】
上記信号Ｓ1及びＳ2に基づき、該２点間の時間Ｔｖが算出されると、レバー１９の２つの穴の位置（距離）及び信号Ｓ2の検出時点からレバー１９の突出部１９１下端が中空部１９４の底に達するまでの間の距離は予め分かっているため、指揮体の操作速度及び上記Ｔａ［＝ｆａ（Ｔｖ）］が分かる。さらに、上記ソレノイド駆動回路２０が操作信号を受信してからアコースティックピアノがソレノイド２１1〜２１nによって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）も求めることが可能となる。従って、信号Ｓ2の検出時点からｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、ＣＰＵ１１の演奏制御手段により、上記ソレノイド駆動回路２０に操作信号が送出されることで、上記遅延時間ｆＤ（Ｔｖ）後にアコースティックピアノの演奏が始まり、ちょうどその時が、レバー１９が一番下まで押された状態であるので、その分、操作信号受信後ソレノイド２１1〜２１nが駆動されて音が鳴るまでのタイムラグが相殺され、演奏者が自然な感覚で演奏操作を行いながら、コンサートマジック機能による自動演奏を楽しむことができるようになる。
【００６６】
一般に曲のテンポが速くなると、上記のような検出される信号Ｓ1及びＳ2の時間間隔の検出値Ｔｖは短くなる（レバー１９の操作速度としては、その速度が速くなる）。この値をそのまま使うと、速いテンポの時に、ベロシティが大きくなってしまうこともある。
【００６７】
そこで、その場合は、レバー１９の操作による上記テンポＴmpを求めて、実際のベロシティ値が、該テンポ（テンポを考慮する）と上記検出値Ｔｖとから、プログラムメモリ１２に記憶された関数（乃至データ対応テーブルでの対応関係）によって求められ、ｆv（Ｔｖ，Ｔmp）という値として求められることになる。
【００６８】
その場合上記ソレノイド２１1〜２１nの遅延時間Ｔｏｎも、同じく関数（乃至データ対応テーブルでの対応関係）から、ｆＤ（Ｔｖ）として求められることになる。そして信号Ｓ2の検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎは、該検出時点より、ｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記ソレノイド駆動回路２０に送出される。
【００６９】
以上のような処理が行われることで、曲のテンポが速い場合でも、ベロシティが異常に大きくなってしまうことがなく、且つ自然な感覚で演奏操作を行いながら、コンサートマジック機能による自動演奏を楽しむことができるようになる。
【００７０】
次に、上記のように構成される本発明の実施の形態に係る自動演奏装置の動作を、図６〜図８に示したフローチャートを参照しながら説明する。
【００７１】
（１−１）メイン処理
図６は、自動演奏装置のメイン処理を示すフローチャートである。このメイン処理は、電源の投入又は図示しないリセットスイッチの投入により開始される。メイン処理では、先ず、初期化処理が行われる（ステップＳ１０）。この初期化処理では、ＣＰＵ１１の内部のハードウェアが初期化されると共に、ワークメモリ１３に設けられているレジスタ、カウンタ、フラグ等に初期値が設定される。
【００７２】
初期化処理が終了すると、次いで、スイッチイベント処理が行われる（ステップＳ１１）。このスイッチイベント処理では、自動演奏スイッチ１５１、ＣＭスイッチ１５２、選曲スイッチ１５３、その他のスイッチのイベントの有無を判断し、イベントがある場合に、そのイベントに対応する処理が行われる。このスイッチイベント処理の詳細は後述する。
【００７３】
メイン処理では、次いで、自動演奏処理中であるか否かがチェックされる（ステップＳ１２）。自動演奏中でなければ、演奏者による生演奏がなされるものとして、押鍵検出処理（ステップＳ１３）に移行し、それが終了するとその他の処理（ステップＳ１６）に移る。
【００７４】
他方自動演奏中であれば、レバー検出処理が行われる（ステップＳ１４）。このレバー検出処理では、レバー１９が押されたかどうかが検出され、押されたことが検出された時点でＣＭモードであれば、自動演奏を進める処理が行われる。このレバー検出処理の詳細は後述する。
【００７５】
次いで、自動演奏処理が行われる（ステップＳ１５）。この自動演奏処理では、通常自動演奏及びコンサートマジック演奏を行うための処理が実行される。即ち、自動演奏フラグがオンになっていれば通常自動演奏を行うための処理が実行され、更にＣＭフラグがオンになっていればコンサートマジック演奏を行うための処理が実行される。従って、この自動演奏装置では、通常自動演奏とコンサートマジック演奏とを並行して行わせることができる。
【００７６】
次いで、「その他の処理」が行われる（ステップＳ１６）。この「その他の処理」では、上述した以外の処理、例えばスイッチを押し続けた場合の特殊な動作を実現するための処理等といった、メイン処理で定期的なチェックが必要な処理等が行われる。その後、ステップＳ１１に戻り、以下、ステップＳ１１〜Ｓ１６の処理が繰り返される。この繰り返しの過程でイベントが発生すると、該イベントに対応する処理がなされることにより自動演奏装置としての各種機能が実現されている。
【００７７】
（１−２）スイッチイベント処理
次に、メイン処理ルーチンのステップＳ１１で行われるスイッチイベント処理の詳細を、図７に示すフローチャートを参照しながら説明する。
【００７８】
このスイッチイベント処理では、ＣＰＵ１１は、先ずパネルインタフェース回路１４からパネルデータを取り込む（ステップＳ２０）。この取り込まれたパネルデータは、新パネルデータとしてワークメモリ１３に設けられた新パネルデータレジスタに格納される。次いで、スイッチのオンイベントの有無が調べられる（ステップＳ２１）。具体的には、新パネルデータと、前回のスイッチイベント処理で取り込まれてワークメモリ１３に設けられた旧パネルデータレジスタに記憶されている旧パネルデータとが比較され、旧パネルデータでは「０」であるが新パネルデータで「１」に変化したビットが存在するかどうかが調べられる。ここでスイッチのオンイベントがないことが判断されると、シーケンスはメイン処理ルーチンに戻る。
【００７９】
一方、ステップＳ２１でスイッチのオンイベントがあることが判断されると、次いで、自動演奏スイッチ１５１のオンイベントがあるかどうかが調べられる（ステップＳ２２）。ここで、自動演奏スイッチ１５１のオンイベントであることが判断されると、自動演奏フラグが反転される（ステップＳ２３）。これにより、自動演奏スイッチ１５１を押す度に通常自動演奏の開始と停止が交互に繰り返される機能が実現されている。
【００８０】
次いで、自動演奏フラグが反転された結果、自動演奏フラグがオンになったかどうかが調べられる（ステップＳ２４）。ここで、自動演奏フラグがオンになったことが判断されると、通常自動演奏の開始が指示されたものと認識され、第１音符データポインタに初期値が設定される（ステップＳ２５）。具体的には、第１ソング番号レジスタの内容で指定される通常自動演奏用の自動演奏データが置かれている自動演奏データメモリ１６の先頭アドレスが第１音符データポインタに格納される。ステップＳ２４で、自動演奏フラグがオフになったことが判断されると、ステップＳ２５の処理はスキップされる。また、ステップＳ２２で、自動演奏スイッチ１５１のオンイベントでないことが判断されると、ステップＳ２３〜Ｓ２５の処理はスキップされる。
【００８１】
次いで、ＣＭスイッチ１５２のオンイベントがあるかどうかが調べられる（ステップＳ２６）。ここで、ＣＭスイッチ１５２のオンイベントであることが判断されると、ＣＭフラグが反転される（ステップＳ２７）。これにより、ＣＭスイッチ１５２を押す度にコンサートマジック演奏の開始と停止が交互に繰り返される機能が実現されている。
【００８２】
次いで、ＣＭフラグが反転された結果、ＣＭフラグがオンになったかどうかが調べられる（ステップＳ２８）。ここで、ＣＭフラグがオンになったことが判断されると、コンサートマジック演奏の開始が指示されたものと認識され、第２音符データポインタに初期値が設定される（ステップＳ２９）。具体的には、第２ソング番号レジスタの内容で指定されるコンサートマジック演奏用の自動演奏データが置かれている自動演奏データメモリ１６の先頭アドレスが第２音符データポインタに格納される。ステップＳ２８で、ＣＭフラグがオフになったことが判断されると、ステップＳ２９の処理はスキップされる。また、ステップＳ２６で、ＣＭスイッチ１５２のオンイベントでないことが判断されると、ステップＳ２７〜Ｓ２９の処理はスキップされる。
【００８３】
次いで、選曲スイッチ１５３のイベントがあるかどうかが調べられる（ステップＳ３０）。これは、直前に選曲スイッチ１５３で設定された値が変化したかどうかを調べることにより行われる。ここで、選曲スイッチ１５３のイベントがあることが判断されると、ソング番号がソング番号レジスタにセットされる（ステップＳ３１）。具体的には、選曲スイッチ１５３で設定された値が１〜５００であれば第１ソング番号レジスタに、５０１〜９９９であれば第２ソング番号レジスタに、それぞれセットされる。ステップＳ３０で、選曲スイッチ１５３のイベントがないことが判断されると、ステップＳ３１の処理はスキップされる。
【００８４】
次いで、その他のスイッチ処理が行われる（ステップＳ３２）。この処理では、上述した以外のスイッチのオンイベントに対する処理が行われる。その他の処理の最後で新パネルデータが旧パネルデータレジスタに書き込まれ、スイッチイベント処理は終了する。
【００８５】
（１−３）押鍵検出処理
次に、メイン処理のステップＳ１３で行われる押鍵検出処理の詳細を、図８に示すフローチャートを参照しながら説明する。なお、この処理は演奏した曲を記録し、後に再生する場合やＭＩＤＩ出力等する場合に使用され、押鍵に応じて通常のピアノの演奏がなされる。
【００８６】
この押鍵検出処理では、ＣＰＵ１１は、先ず押鍵検出回路１７から鍵盤データを取り込む（ステップＳ４０）。この取り込まれた鍵盤データは、新鍵盤データとしてワークメモリ１３に設けられた新鍵盤データレジスタに格納される。次いで、押鍵イベントの有無が調べられる（ステップＳ４１）。具体的には、新鍵盤データと、前回の鍵盤イベント処理で取り込まれてワークメモリ１３に設けられた旧鍵盤データレジスタに記憶されている旧鍵盤データとが比較され、旧鍵盤データでは「０」であるが新鍵盤データで「１」に変化したかどうかが調べられる。ここで、押鍵イベントがないことが判断されると、シーケンスはメイン処理ルーチンに戻る。
【００８７】
一方、ステップＳ４１で、押鍵イベントがあることが判断されると、鍵盤データに従って、そのデータが記憶又は出力される（ステップＳ４２）。
【００８８】
（１−４）レバー検出処理
次にメイン処理のステップＳ１４で行われる押鍵検出処理の詳細を、図９に示すフローチャートを参照しながら説明する。
【００８９】
このレバー検出処理では、ＣＰＵ１１は、先ず２点スイッチ１８ａ及び１８ｂから検出信号を取り込む（ステップＳ５０）。この取り込まれた検出信号は、新検出信号としてワークメモリ１３に設けられた新検出信号レジスタに格納される。次いで、指揮体操作イベントの有無が調べられる（ステップＳ５１）。具体的には、新検出信号と、前回の指揮体操作イベント処理で取り込まれてワークメモリ１３に設けられた旧検出信号レジスタに記憶されている旧検出信号とが比較され、旧検出信号では「０」であるが新検出信号で「１」に変化したかどうかが調べられる。ここで、指揮体操作イベントがないことが判断されると、シーケンスはメイン処理ルーチンに戻る。
【００９０】
一方、ステップＳ５１で、指揮体操作イベントがあることが判断されると、次いで、ＣＭモードであるかどうかが調べられる（ステップＳ５２）。これは、ＣＭフラグを参照することにより行われる。ここで、ＣＭモードでないことが判断されると、ＣＭモードでない状態でレバー１９が押されたものと認識され、シーケンスはメイン処理ルーチンに戻る。
【００９１】
一方、ステップＳ５２で、ＣＭモードであることが判断されると、ＣＭモードの状態でレバー１９が押されたものと認識され、演奏リクエストフラグがセットされる（ステップＳ５３）。その後、シーケンスはメイン処理ルーチンにリターンする。以上の処理により、ＣＭモードでレバー１９が押された場合に演奏リクエストフラグがセットされる。
【００９２】
なお、図９に示したフローチャートでは、レバー１９が離された場合の処理を省略しているが、この場合は、旧検出信号レジスタの内容がゼロにクリアされる。
【００９３】
（１−５）自動演奏処理
次に、メイン処理のステップＳ１５で行われる自動演奏処理の詳細を、図１０に示すフローチャートを参照しながら説明する。
【００９４】
この自動演奏処理は、通常自動演奏処理（ステップＳ６０及びＳ６１）とコンサートマジック演奏処理（ステップＳ６２〜Ｓ６５）とから構成されている。
【００９５】
通常自動演奏処理では、先ず、自動演奏フラグがオンにされているかどうかが調べられる（ステップＳ６０）。ここで、自動演奏フラグがオンにされていることが判断されると、通常自動演奏処理が実行される（ステップＳ６１）。この通常自動演奏処理は、ＣＰＵ１１は、第１音符データポインタで示される自動演奏データメモリ１６の位置から音符データを読み出し、その音符データに含まれるステップタイムで指定される時刻、つまり発音タイミングが到来しているかどうかを調べる。
【００９６】
そして、発音タイミングが到来していることが判断されると、発音処理が行われる。この発音処理では、その音符データに含まれる「キーナンバ」で指定される鍵を、その音符データに含まれる「ベロシティ」で指定される強さで作動させるための信号を生成し、ソレノイド駆動回路２０に送る。ソレノイド駆動回路２０は、上記ベロシティに応じた大きさの電流を有する駆動信号を生成し、上記キーナンバで指定される鍵に対応するソレノイドに送る。これにより、音符データのキーナンバで指定された鍵に対応する押鍵機構４０が作動して音符データのベロシティで指定される強さで打弦し、音符データに対応する音が発生される。その後、第１音符データポインタの内容は、次の音符データを指すように更新される。なお、発音タイミングが到来していない場合は、ステップＳ６１において発音処理は行われない。
【００９７】
上記ステップＳ６０で、自動演奏フラグがオンでないことが判断されると、ステップＳ６１の処理はスキップされる。以上により、通常自動演奏処理が終了する。この自動演奏処理ルーチンは、メイン処理ルーチンから所定周期でコールされる。従って、自動演奏データを構成する音符データの先頭から順次読み出され、この読み出された音符データの発音タイミングが到来すると発音が行われるという処理が繰り返して行われる。これにより、アコースティックピアノによる通常自動演奏が行われる。
【００９８】
上記通常自動演奏処理が終了すると、次いで、コンサートマジック演奏用の処理が実行される。このコンサートマジック演奏用の処理では、先ず、ＣＭフラグがオンにされているかどうかが調べられる（ステップＳ６２）。ここで、ＣＭフラグがオンでないことが判断されると、ＣＭモードでないことが認識され、発音処理を行うことなくシーケンスはメイン処理ルーチンに戻る。
【００９９】
ステップＳ６２で、ＣＭモードであることが判断されると、次いで、演奏リクエストフラグがオンにされているかどうか、つまりレバー１９が押されたかどうかが調べられる（ステップＳ６３）。ここで、演奏リクエストフラグがオンでないことが判断されると、発音処理を行うことなくシーケンスはメイン処理ルーチンに戻る。
【０１００】
ステップＳ６３で演奏リクエストフラグがオンにされていることが判断されると、次いで、発音処理が行われる（ステップＳ６４）。この発音処理では、ＣＰＵ１１は、第２音符データポインタで示される自動演奏データメモリ１６の位置から音符データを読み出す。そして、その読み出した音符データに含まれる「キーナンバ」で指定される鍵を、上述のようにして算出されたベロシティ値ｆv（Ｔｖ，Ｔmp）の強さで作動させるための信号を生成する。そして上述のようにして算出された、信号Ｓ2の検出時点より、ｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後の送信タイミングＴｏｎにタイミング制御されて、上記ソレノイド駆動回路２０に送出される。
【０１０１】
ソレノイド駆動回路２０は、上記ベロシティに応じた大きさの電流を有する駆動信号を生成し、上記キーナンバで指定される鍵に対応するソレノイドに送る。これにより、音符データのキーナンバで指定された鍵に対応する押鍵機構４０が作動して上記ベロシティ値の強さで打弦し、音符データに対応する音が発生される。その後、第２音符データポインタの内容は、次の音符データを指すように更新される。
【０１０２】
次いで、演奏リクエストフラグがオフにされる（ステップＳ６５）。これにより、次にレバー１９が押されて演奏リクエストフラグがオンにセットされるまで、ステップＳ６４の発音処理が行われることはない。その後、シーケンスはメイン処理ルーチンに戻る。
【０１０３】
以上の処理により、レバー１９が押される毎に、自動演奏データメモリ１６から音符データを読み出して発音するというコンサートマジック演奏が実現されている。
【０１０４】
以上説明したように、本発明の実施の形態に係る自動演奏装置によれば、レバー１９を押下する毎に、演奏を進めるコンサートマジック演奏を、アコースティックピアノを用いて行わせることができるので、迫力のある自動演奏が可能になっている。もちろん、その際、信号Ｓ2の検出時点からｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、ＣＰＵ１１の演奏制御手段により、上記ソレノイド駆動回路２０に操作信号が送出されることで、上記遅延時間ｆＤ（Ｔｖ）後にアコースティックピアノの演奏が始まり、ちょうどその時が、レバー１９が一番下まで押された状態であるので、その分、操作信号受信後ソレノイド２１1〜２１nが稼働して音が鳴るまでのタイムラグが相殺され、演奏者が自然な感覚で演奏操作を行いながら、コンサートマジック機能による自動演奏を楽しむことができるようになる。
【０１０５】
またそのベロシティ値は、演算されたテンポＴmpによりｆv（Ｔｖ，Ｔmp）という値に補正されるため、曲のテンポが速い場合でも、ベロシティが異常に大きくなってしまうことがなく、且つ自然な感覚で演奏操作を行いながら、コンサートマジック機能による自動演奏を楽しむことができるようになる。
【０１０６】
［実施例２］
実施例２の構成では、検出手段として、実施例１の２点スイッチ１８ａ及び１８ｂが用いられるのではなく、図１１に示すように、該鍵盤１７０の直上上下２点において横方向に光の走査がなされる、上下に２つずつ設置された夫々発光素子１８０ａ、１８０ｂと、受光素子１８１ａ、１８１ｂで構成されたものが用いられる。その場合、その鍵盤１７０の上方で、指や手等を、鍵盤に触れないところで振ることにより、２点の受光素子１８１ａ及び１８１ｂでの受光が遮られ、それにより、演奏者の操作が感知される。
【０１０７】
該検出手段の夫々の検出信号から、上記演奏制御手段を構成するＣＰＵ１１により、図１２及び図１３に示すように、夫々の検出信号の時間間隔が検出値Ｔｖとして算出される。そしてＣＰＵ１１により、テンポＴmpが算出される。
【０１０８】
また上記時間間隔Ｔｖ及びテンポＴmpが求められると、実施例１と同様な処理が行われる。すなわち、実施例１と同様にして、そして上記演奏駆動手段たるソレノイド駆動回路２０が操作信号を受信してからアコースティックピアノが、それぞれのソレノイドによって実際に演奏し始めるまでの遅延時間ｆＤ（Ｔｖ）が、関数乃至データ対応テーブルから上記ＣＰＵ１１により求められる。そして、下方の受光素子１８１ｂで受光が遮られた検出時点から、操作が下端に達し停止するまでの時間Ｔａが、関数乃至データ対応テーブルからｆａ（Ｔｖ）として、ＣＰＵ１１により求められる。その後下方の受光素子１８１ｂで受光が遮られた検出時点から上記操作信号が送出されるまでの送信タイミングＴｏｎが、該検出時点よりｆａ（Ｔｖ）−ｆＤ（Ｔｖ）秒後にタイミング制御されて、ＣＰＵ１１により上記ソレノイド駆動回路２０に送出されることになる。
【０１０９】
以上の構成によれば、実施例１のようなレバー１９及び２点スイッチ１８ａ・１８ｂのような構成を用いなくても、鍵盤１７０の直上上下２点に、発光素子１８０ａ、１８０ｂと、受光素子１８１ａ、１８１ｂとを設置するだけで、検出手段が構成できるようになる。
【０１１０】
［実施例３］
上記実施例１や２の構成では、上記送信タイミングＴｏｎの値＝ｆａ（Ｔｖ）−ｆＤ（Ｔｖ）の値が、負になる速いテンポの場合がある。本実施例３の構成では、このような場合に、一拍Ｔ2分遅らせて次の拍タイミングで、操作信号を送信する構成とするものである。
【０１１１】
すなわち本実施例構成では、上記演奏制御手段のＣＰＵ１１により求められる送信タイミングＴｏｎの値が負になる場合に、図１４に示すように、一拍Ｔ2分遅れるように、該送信タイミングＴｏｎが、基準となった２点間検出の後の検出時点より、ｆａ（Ｔｖ）＋Ｔ2−ｆＤ（Ｔｖ）秒後にタイミング制御されて、上記ソレノイド駆動回路２０に送出される。それにより現在の指揮体操作は、一拍後の演奏に反映され、上記のようなタイミングのずれを解消するが可能となる。
【０１１２】
尚、一拍Ｔ2は、上記テンポＴmpと同様に、１回目の２点検出（２点の中の最初の検出時点又は後の検出時点）と２回目の２点検出（２点の中の最初の検出時点又は後の検出時点）の時間差でも良いし、数拍前からの拍間時間差の平均値でも良い。
【０１１３】
他方、実施例３のような構成が採用されても、突然レバー１９の戻り操作や鍵盤１７０の離鍵を止めた場合、一拍分の演奏は止まらずになされてしまうという不具合が生ずることがある。
【０１１４】
これを軽減するため、本実施例構成では、さらにレバー１９の戻り操作や鍵盤１７０の離鍵が検知された上で、次の操作信号を送るようにするものとする。すなわち、検出手段による２点間検出の最初の検出時点をスイッチＳ1に、また後の検出点をスイッチＳ2とすると、Ｓ1がＯＮ→Ｓ2がＯＮ→次の拍での操作信号の送信準備完了→Ｓ2がＯＦＦ→Ｓ1がＯＦＦ→操作信号の送信として、Ｓ1のＯＦＦを検出しない限り、ＣＰＵ１１は、操作信号を送信しないようにする。すなわち、ＣＰＵ１１により、スイッチＳ1がＯＦＦになったことが感知されて、上記操作信号が上述のようにタイミング制御されて、上記ソレノイド駆動回路２０に送出される。このような構成によれば、レバー１９や鍵盤１７０が突然押されたまま止まった時には、次の拍の演奏がされずに止まることになる。
【０１１５】
尚、本発明の自動演奏装置は、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【図面の簡単な説明】
【０１１６】
【図１】本実施例装置のアコースティック楽器としてアコースティックピアノが使用される場合について説明する回路概要図である。
【図２】音符データの構成を示す説明図である。
【図３】本実施例構成におけるアコースティックピアノの押鍵機構の説明図である。
【図４】実施例１のレバー１９の構成説明図である。
【図５】実施例１のレバー１９の場合のスイッチストロークを示すタイミングチャートである。
【図６】実施例１の装置のメイン処理を示すフローチャートである。
【図７】スイッチイベント処理を示すフローチャートである。
【図８】押鍵検出処理を示すフローチャートである。
【図９】レバー検出処理を示すフローチャートである。
【図１０】自動演奏処理を示すフローチャートである。
【図１１】アコースティックピアノに設置された実施例２の検出手段構成を示す説明図である。
【図１２】実施例２における演奏者の演奏操作時に信号の検出がなされる状態を示す説明図である。
【図１３】実施例２におけるスイッチタイミングを示すタイミングチャートである。
【図１４】実施例３における操作信号の送信タイミングの状態を示すタイミングチャートである。
【符号の説明】
【０１１７】
１１                  ＣＰＵ
１２                  プログラムメモリ
１３                  ワークメモリ
１４                  パネルインターフェース回路
１５                  操作パネル
１６                  自動演奏データメモリ
１７                  押鍵検出回路
１８ａ、１８ｂ        ２点スイッチ
１９                  レバー
２０                  ソレノイド駆動回路
２１1〜２１n          ソレノイド
４０                  押鍵機構
４１                  ジャック
４２                  ウィペン
４３                  ハンマー
４４                  弦
１５１                  自動演奏スイッチ
１５２                  ＣＭスイッチ
１５３                  選曲スイッチ
１７０                  鍵盤
１７１                  タッチセンサ
１８０ａ、１８０ｂ      発光素子
１８１ａ、１８１ｂ      受光素子
１９１                  レバー突出部
１９２、１９３          穴
１９４                  中空部
１９５                  遮蔽体
【図１】
2005234155.tif 000003
【図２】
2005234155.tif 000004
【図３】
2005234155.tif 000005
【図４】
2005234155.tif 000006
【図５】
2005234155.tif 000007
【図６】
2005234155.tif 000008
【図７】
2005234155.tif 000009
【図８】
2005234155.tif 000010
【図９】
2005234155.tif 000011
【図１０】
2005234155.tif 000012
【図１１】
2005234155.tif 000013
【図１２】
2005234155.tif 000014
【図１３】
2005234155.tif 000015
【図１４】
2005234155.tif 000016