(57)【要約】【課題】  ユーザに操作子を操作させ、この操作子の運動を示す信号波形に基づいて演奏制御のタイミングを決定する際、演算量を増加させず、ユーザからの指示タイミングの誤認識を防止する。【解決手段】  演奏制御装置１００のＣＰＵ１１０が実行する演奏制御プログラムは、加速度取得部１１１とトリガ信号発生部１１２と演奏制御部１１３を含む。トリガ信号発生部１１２は、加速度取得部１１１により操作子２００の加速度が取得される毎に、取得された加速度の大きさを示す加速度データを算出し、加速度データの変化の傾向が上昇から下降に変化した旨の第１の条件と、加速度データが上昇し始めた以降の加速度データの積分値が第１の閾値を越えている旨の第２の条件とを少なくとも含むトリガ信号発生条件の全てを満たしたときに、演奏制御のためのトリガ信号を発生して、演奏制御部１１３に引き渡す。【選択図】図１
2010015068.tif 000002
【特許請求の範囲】
【請求項１】
操作子の運動を示す動作検出信号を取得する動作検出信号取得手段と、
前記動作検出信号取得手段により取得された動作検出信号から前記操作子の運動の大きさを示す運動データを算出し、運動データの変化の傾向が上昇傾向から下降傾向に変化した旨の第１の条件と、運動データが上昇し始めた以降の運動データの積分値が第１の閾値を越えている旨の第２の条件とを少なくとも含むトリガ信号発生条件の全てを満たしたときに、演奏制御のためのトリガ信号を発生するトリガ信号発生手段と
を具備することを特徴とする演奏制御装置。
【請求項２】
前記トリガ信号発生手段は、運動データが第２の閾値以上になったとき、運動データが上昇し始めたとみなし、前記第２の条件に関する判定を行うことを特徴とする請求項１に記載の演奏制御装置。
【請求項３】
前記トリガ信号発生条件は、運動データの変化の傾向が上昇傾向から下降傾向に変化する直前の運動データが第３の閾値より大きい旨の第３の条件をさらに含むことを特徴とする請求項１または２に記載の演奏制御装置。
【請求項４】
前記トリガ信号発生条件は、前回、トリガ信号を発生してから、少なくとも１回、運動データが第４の閾値未満になった旨の第４の条件をさらに含むことを特徴とする請求項１〜３のいずれか１の請求項に記載の演奏制御装置。
【請求項５】
前記トリガ信号発生条件は、前回、トリガ信号を発生してからの経過時間が第５の閾値を越えている旨の第５の条件をさらに含むことを特徴とする請求項１〜４のいずれか１の請求項に記載の演奏制御装置。
【請求項６】
コンピュータを、
操作子の運動を示す動作検出信号を取得する動作検出信号取得手段と、
前記動作検出信号取得手段により取得された動作検出信号から前記操作子の運動の大きさを示す運動データを算出し、運動データの変化の傾向が上昇傾向から下降傾向に変化した旨の第１の条件と、
運動データが上昇し始めた以降の運動データの積分値が第１の閾値を越えている旨の第２の条件とを少なくとも含むトリガ信号発生条件の全てを満たしたときに、演奏制御のためのトリガ信号を発生するトリガ信号発生手段と
して機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、操作子の操作に応じて、演奏制御のためのトリガ信号を発生する演奏制御装置およびプログラムに関する。
【背景技術】
【０００２】
加速度センサが固定された操作子を有し、加速度センサによって検出される操作子の加速度の波形に基づいて、音源に対するノートオンイベントの供給タイミングの制御や自動演奏のテンポの制御等の演奏のタイミング制御を行う演奏システムが各種提案されている。この種の演奏システムによれば、ユーザは、特別な訓練を受けなくても、例えば操作子を振る、といった簡単な操作により、好みのタイミングにおいて楽音を鳴らして演奏を行うことができる。なお、この種の演奏システムは例えば特許文献１、２に開示されている。
【０００３】
この種の演奏システムにおいて、円滑な演奏を実現するためには、楽音の発音タイミング等を、ユーザが操作子の操作により意のままに制御することができるようにする必要がある。例えば、ユーザに、操作子を振らせて楽音の発音タイミングを指示させるような演奏システムの場合、ユーザは、楽音の発音タイミングとしたいタイミングを意識して操作子の振るが、この意識したタイミングにおいて楽音が発音されないと、演奏はぎこちないものになる。そこで、特許文献１、２に開示の技術を含む多くの従来技術では、加速度センサによって検出される操作子の加速度の波形にピークが生じるのを検出し、このピークの検出タイミングにおいて楽音の発音等の演奏制御を行うようにしている。
【０００４】
ここで、ユーザが手で操作子を振るとき、操作子にはユーザの手からの力が与えられ、これが操作子に加速度を生じさせる。ユーザが、ある意識したタイミングにおいて操作子の振りを強めると、このタイミングにおいて、操作子に与えられる加速度も大きくなる。この意味において、操作子の加速度の波形がピークとなるタイミングをユーザの意識したタイミングと解釈することは理に適っている。
【０００５】
しかし、ユーザが手で操作子を振るとき、ユーザの手と操作子とからなる力学系では、手から操作子に一方的に力が与えられるのではなく、操作子からの手への反動も発生する。このため、操作子に発生する加速度に反動成分が生じ、ユーザが意識したタイミングの他、それよりも前のタイミングにおいて、操作子の加速度の波形にピークが発生する。従って、何ら策を講じないとすると、指示タイミングの誤認識の問題、すなわち、ユーザが意識したタイミングよりも前に発生する加速度のピークが検出され、このピークの発生タイミングがユーザによって指示された楽音の発音タイミングと誤認識される事態が生じる。
【特許文献１】特開２００１−１９５０５９号公報
【特許文献２】特開平８−３０５３５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記のような指示タイミングの誤認識を減らすために、特許文献２に開示されているように、加速度センサから得られる操作子の加速度（特許文献２では角加速度）の移動平均を求め、さらにこの移動平均の移動平均を求めてダイナミック閾値とし、ダイナミック閾値を越えるピークであることを条件として、加速度のピークの発生タイミングを演奏制御のタイミング（特許文献２では拍のタイミング）として採用することが考えられる。
【０００７】
特許文献２に開示の技術によれば、加速度波形に生じるピークのうち瞬時的であり、かつ、小さなピークはダイナミック閾値に埋もれ、そのようなピークの発生タイミングは、演奏制御のタイミングとして採用されない。従って、指示タイミングの誤認識をある程度は改善することが可能である。
【０００８】
しかし、反動成分として発生するピークが大きく、ダイナミック閾値を越えるような場合には、依然として指示タイミングの誤認識が発生する。また、特許文献２に開示の技術では、ダイナミック閾値を得るために、加速度の移動平均を演算し、さらにこの移動平均の移動平均を演算する必要がある。このため、加速度センサから加速度のサンプルを取り込む時間間隔である１サンプリング周期内に実行すべき演算の量が多く、リアルタイムな演奏制御に支障が生じないようにするためには、演算のための装置規模を大きくせざるを得ないという問題があった。
【０００９】
この発明は、以上説明した事情に鑑みてなされたものであり、ユーザに操作子を操作させ、この操作子の運動を示す信号の波形に基づいて演奏制御のタイミングを決定する演奏システムにおいて、演算量を増加させることなく、ユーザからの指示タイミングの誤認識を防止する技術的手段を提供することを目的とする。
【課題を解決するための手段】
【００１０】
この発明は、操作子の運動を示す動作検出信号を取得する動作検出信号取得手段と、前記動作検出信号取得手段により取得された動作検出信号から前記操作子の運動の大きさを示す運動データを算出し、運動データの変化の傾向が上昇傾向から下降傾向に変化した旨の第１の条件と、運動データが上昇し始めた以降の運動データの積分値が第１の閾値を越えている旨の第２の条件とを少なくとも含むトリガ信号発生条件の全てを満たしたときに、演奏制御のためのトリガ信号を発生するトリガ信号発生手段とを具備することを特徴とする演奏制御装置およびコンピュータを前記各手段として機能させるプログラムを提供する。
【００１１】
かかる発明によれば、第１の条件の他に第２の条件がトリガ信号発生条件に加わっているため、操作子を操作するユーザが意識したタイミングよりも前に発生する反動成分による運動データのピークを無視し、ユーザが意識したタイミングのピークを捉えてトリガ信号を発生し、演奏制御を行わせることができる。また、運動データの移動平均などの演算は不要であり、少ない演算量でトリガ信号を発生することができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照し、この発明の実施の形態を説明する。
図１は、この発明の一実施形態である演奏制御装置１００を含む演奏システムの構成を示すブロック図である。この演奏システムは、演奏制御装置１００と、複数のバトン型の操作子２００と、音源、電子楽器等、演奏のためのハードウェア資源（図示略）とにより構成されている。
【００１３】
操作子２００は、ユーザが手に持って振る操作子であり、例えば何らかの楽音を発音させるタイミングや、拍としたいタイミング等、演奏制御のタイミングを指示するのに用いられる。操作子２００は、加速度センサ２０１と無線通信部２０２を内蔵している。ここで、加速度センサ２０１は、操作子２００の運動を示す動作検出信号として、操作子２００に働く加速度ベクトルを互いに直交した３軸方向の各成分ａｘ、ａｙ、ａｚに分解して検出し、これらの各成分を示す各アナログ信号を各々出力する。無線通信部２０２は、一定時間長（例えば５ｍｓ）のサンプリング周期毎に、加速度センサ２０１から出力される３種類のアナログ信号をサンプリングしてデジタル化することにより、加速度の３軸方向成分ａｘ、ａｙ、ａｚを示すデータを生成し、このデータと操作子２００を特定するＩＤとを含むパケットを、無線区間を介して演奏制御装置１００に送信する。
【００１４】
演奏制御装置１００は、演奏システム全体の制御中枢として働くＣＰＵ１１０と、ＣＰＵ１１０により実行される各種のプログラムを記憶したＲＯＭ１２０と、ＣＰＵ１１０によってワークエリアとして使用されるＲＡＭ１３０と、ユーザから各種の指示を受け取るとともにユーザに各種の情報を提供する操作表示部１４０と、操作子２００から無線区間を介してパケットを受信する無線通信部１５０と、上述した演奏のためのハードウェア資源とＣＰＵ１１０との間の情報交換を中継するＩ／Ｆ（インタフェース）群１６０とを有する。
【００１５】
ＲＡＭ１３０には、複数の操作子２００に各々対応付けて加速度記憶エリアが設けられている。無線通信部１５０は、一定時間長のサンプリング周期（例えば５ｍｓ）毎に、全ての操作子２００から１個ずつパケットを受信し、各パケットから操作子２００のＩＤと加速度の３軸方向成分ａｘ、ａｙ、ａｚを示すデータを取り出す。そして、各操作子２００の加速度の３軸方向成分ａｘ、ａｙ、ａｚを示すデータを各操作子２００に対応付けられた各加速度記憶エリアに各々書き込む。すなわち、本実施形態では、１サンプリング周期毎に、全ての操作子２００から加速度の３軸方向成分ａｘ、ａｙ、ａｚを示すデータが取得され、これらのデータによりＲＡＭ１３０内の各操作子２００に対応した加速度記憶エリアが書き換えられる。
【００１６】
本実施形態において、ＲＯＭ１２０には各種の演奏制御プログラムが記憶されている。ＣＰＵ１１０は、これらの演奏制御プログラムのうち操作表示部１４０の操作により指示されたものをＲＯＭ１２０からＲＡＭ１３０にロードして実行する。また、本実施形態において、ＣＰＵ１１０は、操作表示部１４０の操作に従い、複数種類の演奏制御プログラムをＲＯＭ１２０からＲＡＭ１３０にロードし、これらを並列に実行し、複数チャネルの演奏制御を行うことが可能である。図１には、ＣＰＵ１１０がｎチャネル分の演奏制御プログラムを実行している様子が示されている。ＣＰＵ１１０が実行する演奏制御プログラムと、それらの演奏制御プログラムに従って行われる演奏制御のチャネルとの対応付けは、操作表示部１４０の操作により指定される。
【００１７】
各チャネルの演奏制御では、ＲＡＭ１３０の各加速度記憶エリアのうち予め指定された１つの操作子２００に対応した加速度記憶エリア内の加速度の３軸方向成分ａｘ、ａｙ、ａｚのデータが用いられる。さらに詳述すると、本実施形態では、操作表示部１４０の操作により、演奏制御のチャネルと操作子２００のＩＤとの対応付けが指定され、各チャネルの演奏制御では、この対応付けに従って、該当するＩＤの操作子２００の加速度成分のデータが処理されるようになっている。
【００１８】
本実施形態において、演奏制御プログラムは、加速度取得部１１１、トリガ信号発生部１１２および演奏制御部１１３の各ルーチンにより構成されており、サンプリング周期毎に１回起動される。加速度取得部１１１は、操作子２００の運動を示す動作検出信号を取得する動作検出信号取得手段としての役割を担っており、演奏制御のチャネルに対応した操作子２００の加速度の３軸方向成分ａｘ、ａｙ、ａｚをＲＡＭ１３０内の該当する加速度記憶エリアから読み出すルーチンである。また、トリガ信号発生部１１２は、動作検出信号、すなわち、加速度取得部１１１により読み出される加速度の３軸方向成分ａｘ、ａｙ、ａｚを処理し、演奏制御のタイミングを指示するトリガ信号を発生し、演奏制御部１１３に引き渡すルーチンである。そして、演奏制御部１１３は、トリガ信号発生部１１２からトリガ信号が引き渡されたとき、予め定められた演奏制御を行うルーチンである。例えば、ある演奏制御プログラムにおける演奏制御部１１３は、トリガ信号が与えられることにより、所定の音色のリズム音の楽音信号を形成し、Ｉ／Ｆ群１６０の中の適切なＩ／Ｆを介してサウンドシステム（図示略）にその楽音信号を送り、リズム音を放音させる。また、他の演奏制御プログラムにおける演奏制御部１１３は、例えばＭＩＤＩシーケンサであり、トリガ信号が与えられる毎に、序列化されたＭＩＤＩメッセージを例えばＲＡＭ１３０から順次読み出し、Ｉ／Ｆ群１６０の中の適切なＩ／Ｆを介してＭＩＤＩ音源（図示略）に送り、楽音を放音させる。
【００１９】
本実施形態の特徴は、演奏制御プログラムにおけるトリガ信号発生部１１２の処理内容にある。このトリガ信号発生部１１２は、加速度取得部１１１により加速度の３軸方向成分ａｘ、ａｙ、ａｚのデータが取得される毎に、操作子２００の運動の大きさを示す運動データとして、取得された加速度の大きさを示す加速度データを算出する。具体的には、本実施形態では、次式に示す加速度の２乗値ＡＳを加速度データとして算出する。
ＡＳ＝ａｘ２＋ａｙ２＋ａｚ２                  ……（１）
【００２０】
そして、この加速度データＡＳを処理し、以下の各条件からなるトリガ信号発生条件の全てが満たされたとき、トリガ信号を発生して演奏制御部１１３に引き渡す。
第１の条件：加速度データＡＳの変化の傾向が上昇傾向から下降傾向に変化したこと。すなわち、加速度データＡＳの波形にピークが発生したこと。
第２の条件：加速度データＡＳが上昇し始めた以降の加速度データＡＳの積分値が閾値ｔｈ１（第１の閾値）を越えていること。より具体的には、加速度データＡＳが閾値ｔｈ２（第２の閾値）以上になった時点以降の加速度データＡＳの積分値が閾値ｔｈ１を越えていること。
第３の条件：加速度データＡＳの変化の傾向が上昇傾向から下降傾向に変化した場合において（すなわち、加速度データＡＳの波形にピークが発生した場合において）、直前の加速度データＡＳが閾値ｔｈ３（第３の閾値）より大きいピーク判定領域内の値であること。
第４の条件：前回、トリガ信号を発生してから、少なくとも１回、加速度データＡＳが閾値ｔｈ２（第４の閾値。本実施形態では第４の閾値は第２の閾値と同じにしてある。）未満になったこと。
第５の条件：前回、トリガ信号を発生してからの経過時間が閾値ｔｈ５（第５の閾値）を越えていること。
以上が本実施形態による演奏制御装置１００の構成の詳細である。
【００２１】
次に、本実施形態の動作を説明する。上述した通り、本実施形態では、１サンプリング周期毎に、全ての操作子２００から加速度の３軸方向成分ａｘ、ａｙ、ａｚを示すデータが取得され、これらのデータによりＲＡＭ１３０内の各操作子２００に対応した加速度記憶エリアが書き換えられる。そして、１サンプリング周期毎に、各チャネルの演奏制御プログラムが実行される。各チャネルの演奏制御プログラムの加速度取得部１１１は、演奏制御のチャネルに対応した操作子２００の加速度の３軸方向成分ａｘ、ａｙ、ａｚをＲＡＭ１３０内の該当する加速度記憶エリアから読み出し、トリガ信号発生部１１２に引き渡す。図２および図３は、このトリガ信号発生部１１２の１サンプリング周期分の処理内容を示すフローチャートである。
【００２２】
このトリガ信号発生部１１２では、次のデータを取り扱う。
加速度データＡＳ：現在のサンプリング周期において取得された加速度の３軸方向成分ａｘ、ａｙ、ａｚから算出された加速度データである。
前加速度データＡＳｏｌｄ：現在のサンプリング周期の直前のサンプリング周期において算出された加速度データＡＳである。
上昇フラグＵＰ：加速度データＡＳの変化の傾向が上昇傾向である場合は“１”、下降傾向である場合は“０”とされるフラグである。
経過時間データＴ１：トリガ信号を発生してからの経過時間（サンプリング周期数）を示すデータである。
停止時間データＴ２：加速度データＡＳが閾値ｔｈ２未満になってからの経過時間（サンプリング周期数）を示すデータである。
積分値ＩＡＳ：加速度データＡＳが閾値ｔｈ２以上になってからの加速度データＡＳの積分値（より厳密には累算値）である。
以上を踏まえて、トリガ信号発生部１１２の処理内容を説明する。
【００２３】
トリガ信号発生部１１２では、まず、ステップＳ１に進み、加速度取得部１１１から引き渡された加速度の３軸方向成分ａｘ、ａｙ、ａｚを用いて前掲式（１）の演算を行い、加速度データＡＳを算出する。
【００２４】
次にステップＳ２に進み、上昇フラグＵＰが“１”か否かを判断する。この判断結果が「ＹＥＳ」である場合、ステップＳ３に進み、加速度データＡＳと前加速度データＡＳｏｌｄとを比較し、ＡＳ＜ＡＳｏｌｄか否かを判断する。この判断結果が「ＹＥＳ」の場合、加速度データＡＳの変化の傾向が上昇傾向から下降傾向に変わったということであるから、上昇フラグＵＰを“０”とし（ステップＳ４）、ステップＳ５へ進む。これに対し、ステップＳ３の判断結果が「ＮＯ」の場合は、ステップＳ３からステップＳ１０へ進む。
【００２５】
ステップＳ５に進むと、トリガ信号発生条件の全てを満たしているか否かを判断する。ここで、ステップＳ５に進むためには、ステップＳ３の判断結果が「ＹＥＳ」であること、すなわち、加速度データＡＳの変化の傾向が上昇傾向から下降傾向に変化したことが必要であるため、ステップＳ５に進んだときには、トリガ信号発生条件のうち第１の条件は既に満たされている。従って、ステップＳ５では、残りの第２〜第５の条件が満たされているか否かを判断することとなる。このステップＳ５の判断結果が「ＹＥＳ」の場合は、ステップＳ６に進んで、トリガ信号を発生して演奏制御部１１３に引き渡す。次にステップＳ７に進んで、経過時間データＴ１および停止時間データＴ２の両方を「０」にする。そして、ステップＳ１０へ進む。これに対し、ステップＳ５の判断結果が「ＮＯ」の場合は、ステップＳ５からステップＳ１０へ進む。
【００２６】
一方、上昇フラグＵＰが“０”である場合はステップＳ２からステップＳ８に進む。このステップＳ８では、加速度データＡＳを前加速度データＡＳｏｌｄと比較し、ＡＳ＞ＡＳｏｌｄか否かを判断する。この判断結果が「ＹＥＳ」の場合、加速度データＡＳの変化の傾向が下降傾向から上昇傾向に変わったということであるから、上昇フラグＵＰを“１”とし（ステップＳ９）、ステップＳ１０へ進む。これに対し、ステップＳ８の判断結果が「ＮＯ」の場合は、ステップＳ８からステップＳ１０へ進む。
【００２７】
ステップＳ１０では、加速度データＡＳが閾値ｔｈ２未満か否か、すなわち、操作子２００が停止しているとみなせる停止判定領域内にあるか否かを判断する。この判断結果が「ＹＥＳ」の場合はステップＳ１１に進み、上昇フラグＵＰを“０”とする。次にステップＳ１２に進み、停止時間データＴ２が所定の閾値ｔｈ５未満か否かを判断する。この判断結果が「ＹＥＳ」の場合はステップＳ１３に進み、停止時間データＴ２を「１」だけ増加させ、ステップＳ１４に進む。これに対し、ステップＳ１２の判断結果が「ＮＯ」の場合はステップＳ１７に進み、積分値ＩＡＳを「０」に初期化し、ステップＳ１４に進む。従って、本実施形態では、トリガ信号が発生して停止時間データＴ２が「０」に初期化された後（ステップＳ６、Ｓ７）、加速度データＡＳが１回でも閾値ｔｈ２未満になると、停止時間データＴ２は「０」より大きくなる（ステップＳ１０、Ｓ１２、Ｓ１３）。また、加速度データＡＳが閾値ｔｈ２未満である状態の継続時間を示す停止時間データＴ２が閾値ｔｈ５に達すると、積分値ＡＳが「０」に初期化されることとなる（ステップＳ１０、Ｓ１２、Ｓ１７）。
【００２８】
一方、加速度データＡＳが閾値ｔｈ２以上である場合はステップＳ１６に進み、積分値ＩＡＳに加速度データＡＳを加算し、その加算結果を積分値ＩＡＳとし、ステップＳ１４に進む。ここで、積分値ＩＡＳは、閾値ｔｈ５に相当する期間に亙って継続して加速度データＡＳが閾値ｔｈ２未満になると、「０」に初期化される（ステップＳ１０、Ｓ１２、Ｓ１７）。従って、積分値ＩＡＳは、加速度データＡＳがこのような継続的に閾値ｔｈ２未満の値を維持していた状態を脱し、閾値ｔｈ２以上になった後の期間における加速度データＡＳの積分値となる。
【００２９】
ステップＳ１４およびＳ１５は、トリガ信号発生部１１２が起動されるとき、毎回実行される処理である。まず、ステップＳ１４では、経過時間データＴ１を「１」だけ増加させる。ここで、経過時間データＴ１は、トリガ信号が発生する毎に「０」に初期化される（ステップＳ６、Ｓ７）。従って、経過時間データＴ１は、トリガ信号の発生以後の経過時間（サンプリング周期数）を示すデータとなる。
【００３０】
次にステップＳ１５では、次回のサンプリング周期において演奏制御プログラムが起動されたときのために加速度データＡＳを前加速度データＡＳｏｌｄに退避させる。このステップＳ１５が終了することにより、トリガ信号発生部１１２の全処理が終了する。
以上がトリガ信号発生部１１２の処理内容である。
【００３１】
次に具体例を挙げ、トリガ信号発生部１１２の処理内容をさらに詳しく説明する。図４はトリガ信号発生部１１２において発生される加速度データＡＳおよびその積分値ＩＡＳの時間的変化を例示する図である。図４に示す例において、加速度データＡＳは、閾値ｔｈ２未満の停止判定領域内の値から上昇し、１つ目のピークに到達してから下降し、その後、停止判定領域に入ることなく、再び上昇し、２つ目のピークに到達してから下降している。そして、この例において、２つ目のピークのタイミングが、例えば楽音の発音をさせるべく操作子２００を振るユーザが意識したタイミング（音を出したいタイミング）である。
【００３２】
加速度データＡＳが閾値ｔｈ２未満の停止判定領域内にある期間、トリガ信号発生部１１２では、ステップＳ１０に進んだとき、ＡＳ＜ｔｈ２であることから、このステップＳ１０の判断結果が「ＹＥＳ」となり、ステップＳ１１に進む。従って、この間、ステップＳ１６は実行されず、その代わりにステップＳ１２を介して最初にステップＳ１３が実行され、その後、停止時間データＴ２が閾値ｔｈ５に達すると、ステップＳ１２を介してステップＳ１７が実行されるようになる。従って、加速度データＡＳが閾値ｔｈ２未満の停止判定領域内にある期間内に積分値ＩＡＳは「０」に初期化される（ステップＳ１７）。
【００３３】
加速度データＡＳが上昇し始め、閾値ｔｈ２以上になると、トリガ信号発生部１１２では、ステップＳ１０に進んだとき、その判断結果が「ＮＯ」となるため、ステップＳ１６、Ｓ１４およびＳ１５が実行される。従って、加速度データＡＳが閾値ｔｈ２以上になった以降の期間では、加速度データＡＳを積分値ＩＡＳに累積的に加える積分処理が繰り返される（ステップＳ１６）。このため、図４に示すように、積分値ＩＡＳは次第に上昇してゆく。
【００３４】
また、加速度データＡＳが閾値ｔｈ２以上になると、トリガ信号発生部１１２では、ステップＳ１０の判断結果が「ＮＯ」となって、ステップＳ１１が実行されなくなる。従って、ステップＳ１からステップＳ２に進み、その判断結果が「ＮＯ」となってステップＳ８に進んだとき、加速度データＡＳが前加速度データＡＳｏｌｄより大きいと、上昇フラグＵＰが“１”とされる（ステップＳ９）。以降、加速度データＡＳの変化の傾向が上昇傾向である期間は、トリガ信号発生部１１２では、ステップＳ１が実行された後、ステップＳ２の判断結果が「ＹＥＳ」、ステップＳ３の判断結果が「ＮＯ」となってステップＳ１０以降の処理が実行されるため、上昇フラグＵＰは“１”を維持する。
【００３５】
そして、加速度データＡＳが最初のピークに到達し、その直後のサンプリング周期において加速度データＡＳとして図４に示すデータＤｋが得られると、トリガ信号発生部１１２では、次のような処理が行われる。まず、ステップＳ１およびＳ２を介してステップＳ３に進んだとき、その判断結果は「ＹＥＳ」となる。何故ならば、この時点において、前加速度データＡＳｏｌｄは、最初のピークとなるデータＤｋ−１であるのに対し、加速度データＡＳは、これより低いデータＤｋだからである（図４参照）。
【００３６】
ステップＳ３の判断結果が「ＹＥＳ」になると、トリガ信号発生部１１２では、上昇フラグＵＰが“０”とされ（ステップＳ４）、トリガ信号発生条件の全てを満たすか否か、より具体的には上記第２〜第４の条件を満たすか否かの判断が行われる（ステップＳ５）。この例では、ステップＳ５の判断結果は次のようになる。
第２の条件：この例では、積分値ＩＡＳが閾値ｔｈ１よりも小さい。従って、第２の条件を満たさない。
第３の条件：この例では、加速度データＡＳの変化の傾向が上昇傾向から下降傾向に変化した直前の加速度データＡＳ＝Ｄｋ−１が閾値ｔｈ３より大きい。従って、第３の条件を満たす。
第４の条件：この例では、停止時間データＴ２が「０」より大きな値となっており、前回、トリガ信号を発生してから、少なくとも１回、加速度データＡＳが閾値ｔｈ２未満になったといえる。従って、第４の条件を満たす。
第５の条件：この例では、前回、トリガ信号を発生してからの経過時間を示す経過時間データＴ１が閾値ｔｈ５を越えている（図示略）。従って、第５の条件を満たす。
結局、この例において、最初のピークの直後の時点では、第２の条件を満たさないため、トリガ信号は発生されない。
【００３７】
そして、この例において、加速度データＡＳは、最初のピークを過ぎた後、下降するが、停止判定領域に入ることなく、再び上昇する。この過程では、加速度データＡＳが停止判定領域に入らないため、ステップＳ１０の判断結果が「ＮＯ」となり、ステップＳ１６、Ｓ１４、Ｓ１５が実行される。従って、この間も、加速度データＡＳの積分処理（ステップＳ１６）は継続され、積分値ＩＡＳは上昇し続ける。また、加速度データＡＳが下降から上昇に転じると、その後のサンプリング周期において、トリガ信号発生部１１２では、ステップＳ１からステップＳ２に進み、その判断結果が「ＮＯ」となってステップＳ８に進んだとき、加速度データＡＳが前加速度データＡＳｏｌｄより大きくなることから、上昇フラグＵＰが“１”とされる（ステップＳ９）。以降、上昇フラグＵＰは“１”を維持する。
【００３８】
そして、加速度データＡＳが２番目のピークに到達し、その直後のサンプリング周期において加速度データＡＳとして図４に示すデータＤｍが得られる。すると、トリガ信号発生部１１２では、最初のピークの場合と同様、ステップＳ１、Ｓ２を介してステップＳ３に進んだとき、ステップＳ３の判断結果が「ＹＥＳ」になり、上昇フラグＵＰが“０”とされ（ステップＳ４）、上記第２〜第４の条件を満たすか否かの判断が行われる（ステップＳ５）。この場合、積分値ＩＡＳが閾値ｔｈ１よりも大きいため、第２の条件を満たし、それ以外の第３〜第５の条件も満たす。すなわち、トリガ信号発生条件のすべてを満たす。この結果、ステップＳ５の判断結果が「ＹＥＳ」となり、操作子２００を振るユーザが意識したタイミングにおいてトリガ信号が発生される（ステップＳ６）。また、経過時間データＴ１および停止時間データＴ２が「０」とされる（ステップＳ７）。
【００３９】
その後、加速度データＡＳが下降し、停止判定領域に入ると、トリガ信号発生部１１２では、ステップＳ１０の判断結果が「ＹＥＳ」となり、ステップＳ１１以降の処理が実行されるようになる。このため、上述したように積分値ＩＡＳが「０」に初期化される（ステップＳ１７）。
以上が本実施形態の動作である。
【００４０】
以上説明したように、本実施形態によれば、積分値ＩＡＳが閾値ｔｈ１以上である旨の第２の条件がトリガ信号発生条件に加わっているため、操作子２００を振るユーザが意識したタイミングよりも前に発生する反動成分による加速度データＡＳのピーク（図４の例における最初のピーク）を無視し、ユーザが意識したタイミングのピークを捉えてトリガ信号を発生することができる。しかも、本実施形態では、上述した特許文献２の技術のように、ダイナミック閾値を発生する移動平均処理を実行せず、演算量が少ないため、装置規模を増大させることなく、トリガ信号を発生することができる。また、本実施形態では、加速度データＡＳの変化の傾向が上昇傾向から下降傾向に変化した場合において、その直前の加速度データＡＳが閾値ｔｈ３より大きい旨の第３の条件がトリガ信号発生条件に加わっているため、操作子２００を十分に強く振らないとトリガ信号が発生せず、トリガ信号の発生が不安定になるのを防止することができる。また、本実施形態では、前回、トリガ信号を発生してから、少なくとも１回、加速度データＡＳが閾値ｔｈ２未満になった旨の第４の条件と、前回、トリガ信号を発生してからの経過時間が閾値ｔｈ５を越えている旨の第５の条件がトリガ信号発生条件に加わっている。この第４および第５の条件がトリガ信号発生条件に加わっていないと、例えば加速度データＡＳがピークとなり、トリガ信号発生条件が満たされてトリガ信号が発生した後、加速度データＡＳが十分に減衰することなく短時間のうちに上昇して再びピークとなった場合に、このピークのタイミングにおいてトリガ信号が発生される現象、すなわち、チャタリングが発生する可能性がある。本実施形態では、第４および第５の条件がトリガ信号発生条件に加わっているため、このようなチャタリングを防止することができる。また、本実施形態によれば、操作子２００からユーザの手への反動やチャタリングによって誤ってトリガ信号が発生されるのを防止するだけでなく、操作子２００の電気的あるいは機械的な特性に起因し、あるいはユーザの癖や誤操作によって意図しないトリガ信号が発生されるのを防止することができる。
【００４１】
以上、この発明の一実施形態を説明したが、この発明には、他にも各種の実施形態が考えられる。例えば次の通りである。
【００４２】
（１）上記実施形態では、第１〜第５の条件からなるトリガ信号発生条件を用いたが、第１および第２の条件のみからなるトリガ信号発生条件を用いてもよい。あるいは、第１および第２の条件に対して、第３〜第５の条件の中の任意の１つまたは複数の条件を加えたものをトリガ信号発生条件として採用してもよい。以下、図５を参照し、その一態様を説明する。この図５は、トリガ信号発生部１１２において発生される加速度データＡＳの時間的変化を例示する図である。
【００４３】
この態様おいて、トリガ信号発生条件は、次の各条件により構成されている。
第１の条件：加速度データＡＳの変化の傾向が上昇傾向から下降傾向に変化したこと。すなわち、加速度データＡＳの波形にピークが発生したこと。
第２の条件：加速度データＡＳが上昇し始めた以降の加速度データＡＳの積分値が閾値ｔｈ１（第１の閾値）を越えていること。より具体的には、加速度データＡＳの変化の傾向が下降傾向から上昇傾向に転じた後における加速度データＡＳの積分値が閾値ｔｈ１を越えていること。
第３の条件：加速度データＡＳの変化の傾向が上昇傾向から下降傾向に変化した場合において（すなわち、加速度データＡＳの波形にピークが発生した場合において）、直前の加速度データＡＳが閾値ｔｈ３（第３の閾値）より大きいピーク判定領域内の値であること。
第５の条件：前回、トリガ信号を発生してからの経過時間が閾値ｔｈ５（第５の閾値）を越えていること。
【００４４】
この態様では、上記実施形態における第４の条件はトリガ信号発生条件に含まれていない。また、第４の条件をトリガ信号発生条件から除外したことに伴い、第２の条件のうち加速度データＡＳの積分を行う期間の始期に関する条件が上記第１実施形態のものから変更されている。
【００４５】
この態様においても上記実施形態と同様、操作子２００を振るユーザが意図していないタイミングにおいてトリガ信号が発生されるのを防止することができる。図５に示す例では、加速度データＡＳの波形において、大きなピークの間に符号※によって示す小さなピークが発生している。これらの小さなピークのタイミングは操作子２００を振るユーザが意図していないタイミングである。これらのタイミングでは、加速度データＡＳが下降傾向から上昇傾向に転じた後における加速度データＡＳの積分値ＩＡＳが閾値ｔｈ１以上にならない。従って、トリガ信号が誤って発生されることはない。また、この態様では、第４の条件がトリガ信号発生要件に加わっていないため、例えばユーザが操作子２００を途中で停止させることなく連続して複数回振るような場合においても、操作子２００を振る毎にトリガ信号を発生させることができる。例えば図５では、左から２番目の大きなピークと３番目の大きなピークとの間は加速度データＡＳが十分に減衰していない。しかし、この態様では、第４の条件がトリガ信号発生条件に加わっていないため、２番目の大きなピークのタイミングにおいてトリガ信号を発生させた後、３番目の大きなピークのタイミングにおいてもトリガ信号を発生させることができる。
【００４６】
（２）上記実施形態では、演算量を減らすため、操作子２００の加速度の２乗値を加速度データＡＳとして用いたが、演算量の制約が厳しくない場合には、前掲式の演算結果の平方根である加速度の絶対値を求め、加速度データＡＳとして用いてもよい。
【００４７】
（３）上記実施形態では、操作子２００の加速度の大きさのみを利用したが、加速度の３軸方向の成分のバランスに基づいて、操作子２００の運動方向を推定し、この推定結果に基づいて、例えば発音する音色の変更等の多彩な演奏制御を行うようにしてもよい。
【００４８】
（４）ユーザの操作に基づく操作子２００の運動を検出するセンサとして、加速度センサ以外のセンサ、例えば操作子２００の角速度、変位、速度、圧力、傾き等を検出するセンサを操作子２００に設け、このセンサから操作子２００の運動を示す動作検出信号を取得してトリガ信号を発生するように演奏制御装置１００を構成してもよい。
【図面の簡単な説明】
【００４９】
【図１】この発明の一実施形態である演奏制御装置１００を含む演奏システムの構成を示すブロック図である。
【図２】同実施形態におけるトリガ信号発生部１１２の処理内容を示すフローチャートである。
【図３】同実施形態におけるトリガ信号発生部１１２の処理内容を示すフローチャートである。
【図４】同トリガ信号発生部１１２において発生される加速度データＡＳおよびその積分値の時間的変化を例示する図である。
【図５】同トリガ信号発生部１１２において発生される加速度データＡＳの時間的変化を例示する図である。
【符号の説明】
【００５０】
２００……操作子、２０１……加速度センサ、２０２……無線通信部、１００……演奏制御装置、１１０……ＣＰＵ、１２０……ＲＯＭ、１３０……ＲＡＭ、１４０……操作表示部、１５０……無線通信装置、１６０……Ｉ／Ｆ群、１１１……加速度取得部、１１２……トリガ信号発生部、１１３……演奏制御部。
【図１】
2010015068.tif 000003
【図２】
2010015068.tif 000004
【図３】
2010015068.tif 000005
【図４】
2010015068.tif 000006
【図５】
2010015068.tif 000007