JPH08339181A - Playing dynamics controller - Google Patents

Playing dynamics controller

Info

Publication number
JPH08339181A
JPH08339181A JP7169174A JP16917495A JPH08339181A JP H08339181 A JPH08339181 A JP H08339181A JP 7169174 A JP7169174 A JP 7169174A JP 16917495 A JP16917495 A JP 16917495A JP H08339181 A JPH08339181 A JP H08339181A
Authority
JP
Japan
Prior art keywords
motion
value
dynamics
peak
register
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.)
Granted
Application number
JP7169174A
Other languages
Japanese (ja)
Other versions
JP3149736B2 (en
Inventor
Satoshi Usa
聡史 宇佐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP16917495A priority Critical patent/JP3149736B2/en
Priority to US08/643,121 priority patent/US5663514A/en
Publication of JPH08339181A publication Critical patent/JPH08339181A/en
Application granted granted Critical
Publication of JP3149736B2 publication Critical patent/JP3149736B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

PURPOSE: To make it possible to control playing with dynamics intended by an operator by eliminating the variations in the playing dynamics accompanying the habit of the gesture and motion of the operator. CONSTITUTION: A motion detecting means detects the kind and quantity of the motion in accordance with the gesture and motion (hand waving motion, oscillation motion, etc.) of the operator. For example, this motion detecting means detects the directions where a baton 20 is swung as the motion kinds and the max. values of sensor outputs as the motion quantity in accordance with the sensor outputs meeting the operator's vertical or triangular hand waving motions in the case where the baton 20 is internally provided with the motion detecting means consisting of two orthogonally crossing angular speed sensors 2A, 2B. A correcting means does not make correction in the case of a swinging down motion and corrects the sensor outputs so as to increase the outputs in the case of a waving up motion or a cross waving motion. Thereby, the variations in the motion quantity accompanying the habits of the operator's gestures and motions are made uniform. A control means 21 controls the dynamics of playing in accordance with the corrected operation quantity by the correcting means and, therefore, the operator is allowed to make the playing meeting his desired dynamics without the variations accompanying the habit of the operator's gestures and motions.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明は電子楽器などの楽音演
奏におけるダイナミクスを演奏者の身振り動作に応じて
制御することのできる演奏ダイナミクス制御装置に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a performance dynamics control device capable of controlling the dynamics of a musical tone performance of an electronic musical instrument or the like according to a gesture of a player.

【0002】[0002]

【従来の技術】従来、自動演奏装置はメロディ演奏や伴
奏演奏の各音符に関する演奏情報(音符データ)をメモ
リ等に記憶しておき、その記憶された演奏情報を所定の
テンポで自動的に読み出し、読み出された演奏情報に従
ってメロディ音や伴奏音を発音する。この場合、演奏の
テンポはタイマ等から出力されるテンポクロックの周波
数によって決定される。このテンポクロックの周波数は
テンポ設定スイッチ等を操作することによって自由に可
変することができる。ところが、テンポ設定スイッチな
どを操作して演奏中の演奏テンポを変化させた場合、そ
の変化の仕方がスイッチの操作状態(操作量や操作速度
など)に依存するため、実際の演奏時における指揮棒な
どの手振り動作に対応したような微妙なテンポ変化を与
えることは非常に困難であった。
2. Description of the Related Art Conventionally, an automatic performance device stores performance information (note data) about each note of a melody performance or an accompaniment performance in a memory or the like, and automatically reads the stored performance information at a predetermined tempo. , Produces a melody sound or an accompaniment sound according to the read performance information. In this case, the performance tempo is determined by the frequency of the tempo clock output from a timer or the like. The frequency of the tempo clock can be freely changed by operating the tempo setting switch or the like. However, when the tempo setting switch etc. is operated to change the performance tempo during the performance, the way of the change depends on the operation state (operation amount, operation speed, etc.) of the switch. It was very difficult to give a subtle change in tempo that corresponds to hand gestures such as.

【0003】そこで、最近では、操作者の指揮棒などに
加速度センサを内蔵し、その手振り動作に応じた加速度
センサの出力の最大値を検出し、その検出タイミングで
自動演奏のテンポを制御するようにしたものが現れてい
る。このものは加速度センサの出力最大値を検出した時
点で発音したり、シーケンスデータを進めたりすること
によって、演奏のテンポを任意に制御することができる
と共に、この加速度センサの出力値に応じて演奏のダイ
ナミクス(演奏時におけるサウンドに強弱をつけて演奏
全体に躍動感を与えること)をも任意に制御できるよう
になっている。すなわち、操作者の手振り動作が大きい
場合には、加速度センサの出力が大きくなり、それに応
じて演奏ダイナミクスも大きくなり、サウンドの変化の
割合も大きくなり、演奏が全体的に力強くなる。逆に、
操作者の手振り動作が小さい場合には、加速度センサの
出力が小さくなり、それに応じて演奏ダイナミクスも小
さくなり、サウンドの変化の割合も小さくなり、演奏が
全体的に弱々しくなる。
Therefore, recently, an accelerometer is built into the baton of an operator, the maximum value of the output of the accelerometer is detected according to the waving motion, and the tempo of automatic performance is controlled at the detection timing. The one that you made is appearing. This sound can be played at the time when the maximum output value of the acceleration sensor is detected, or the sequence data can be advanced to control the tempo of the performance arbitrarily. The dynamics of (making the sound at the time of playing dynamics to give a feeling of dynamism to the whole performance) can be controlled arbitrarily. That is, when the operator's waving motion is large, the output of the acceleration sensor is large, the performance dynamics is correspondingly large, the rate of change in the sound is large, and the overall performance is strong. vice versa,
When the operator's waving motion is small, the output of the acceleration sensor becomes small, the performance dynamics becomes small accordingly, the rate of change in sound becomes small, and the performance becomes weak overall.

【0004】[0004]

【発明が解決しようとする課題】実際の指揮法による演
奏においては、指揮者の打点動作、加速減速動作、クリ
ッキング動作、打点を結ぶ指揮棒の先端の描く線の形な
どの種々の要因に応じて、演奏ダイナミクスは制御され
ている。しかしながら、従来は操作者の手振り動作すな
わち加速度センサの出力に応じて演奏ダイナミクスを制
御していたため、操作者が指揮法にどれだけ習熟してい
るか、操作者のその時の気分や音楽の内容(曲ジャン
ル)などによっても、手振り動作の強さ、速さなどにバ
ラツキが生じ、そのバラツキがそのまま加速度センサの
出力値のバラツキとして現れ、操作者自身の意図するダ
イナミクスで演奏を行うことが非常に困難であるという
問題があった。例えば、2拍子や4拍子における上下手
振り運動や3拍子における三角形手振り運動において、
特に意識せずに手を振った場合、操作者自身は同じ強
さ、同じ速さで振っているつもりでも、大抵の場合振り
降ろし動作(ダウンビート)の方が、振り上げ動作(ア
ップビート)や3拍子の2拍目の横振り動作に比べて強
く、速く振り動作を行っている。従って、操作者自身は
均等な強さ、速さで振っているつもりでも、加速度セン
サの出力値もこの振り動作の相違に応じて変化してしま
い、振り降ろし動作(ダウンビート)による加速度セン
サ出力の方が自然と大きくなり、結果として演奏ダイナ
ミクスも振り降ろし動作(ダウンビート)時のものがこ
れ以外の振り動作のものよりも大きくなり、演奏ダイナ
ミクスが操作者の手振り動作の癖に依存したような変化
をするようになる。
In the performance by the actual conducting method, depending on various factors such as the conductor's hitting motion, acceleration / deceleration motion, clicking motion, and the shape of the line drawn by the tip of the baton connecting the hitting points. And the playing dynamics are controlled. However, in the past, the performance dynamics were controlled according to the operator's hand movements, that is, the output of the acceleration sensor. Therefore, the operator's proficiency in conducting method, the mood of the operator at that time, and the content of music (music Depending on the genre), variations in the strength and speed of hand movements will occur, and the variations will appear as variations in the output value of the acceleration sensor, making it extremely difficult to perform with the dynamics intended by the operator. There was a problem that was. For example, in the up-and-down hand gesture motion in 2 and 4 beats and the triangular hand movement in 3 and
If you shake your hand without being particularly aware, even if you think that the operator himself is shaking at the same strength and speed, in most cases, the swing-down motion (down beat) is the swing-up motion (up beat). The swinging motion is stronger and faster than the lateral swinging motion of the second beat of the three beats. Therefore, even if the operator intends to shake with uniform strength and speed, the output value of the acceleration sensor also changes according to the difference in this swinging motion, and the acceleration sensor output due to the swinging down motion (downbeat). , The performance naturally becomes larger, and as a result, the performance dynamics when swinging down (down beat) become larger than those of other swinging motions, and it seems that the performance dynamics depend on the habit of the operator's hand gesture. Will make a big change.

【0005】この発明は上述の点に鑑みてなされたもの
であり、操作者の身振り動作の癖などに伴う演奏ダイナ
ミクスのバラツキを無くし、操作者の意図した演奏ダイ
ナミクスを与えることのできる演奏ダイナミクス制御装
置を提供することを目的とする。
The present invention has been made in view of the above points, and is a performance dynamics control capable of eliminating the variation of the performance dynamics due to the habit of the operator's gestures and giving the performance dynamics intended by the operator. The purpose is to provide a device.

【0006】[0006]

【課題を解決するための手段】この発明に係る演奏ダイ
ナミクス制御装置は、操作者の身振り動作に基づいてそ
の動作種類及び動作量を検出する動作検出手段と、この
動作検出手段によって検出された前記動作種類に応じて
前記動作量を補正する補正する補正手段と、この補正手
段によって補正された前記動作量に基づいて演奏のダイ
ナミクスを制御する制御手段とから構成されるものであ
る。
A performance dynamics control device according to the present invention includes a motion detecting means for detecting a motion type and a motion amount based on a gesture motion of an operator, and the motion detecting means for detecting the motion type and motion amount. It comprises a correction means for correcting the movement amount in accordance with the movement type, and a control means for controlling the dynamics of the performance based on the movement amount corrected by the correction means.

【0007】[0007]

【作用】動作検出手段は操作者の身振り動作すなわち指
揮者の手振り動作や揺動動作などに基づいて動作の種類
及び動作量を検出する。例えば、直交する2つの角速度
センサからなる動作検出手段を指揮棒内に設けた場合、
操作者が指揮棒を上下手振り運動又は三角手振り運動さ
せることによって、動作検出手段は2つのセンサ出力に
基づいて指揮棒の振られた方向を動作種類として検出
し、このときのセンサ出力の極大値を動作量として検出
する。補正手段は、指揮棒の振られた方向が振り降ろし
動作(ダウンビート)の場合には補正せず、振り上げ動
作(アップビート)や三角手振り運動の横振り動作の場
合にはそのセンサ出力が増加するように補正する。これ
によって、操作者の身振り動作の癖などに伴う動作量の
バラツキが均一化される。制御手段はこの補正手段によ
って補正された動作量に基づいて演奏のダイナミクスを
制御するので、操作者の身振り動作の癖などに伴うバラ
ツキのない、操作者の意図したダイナミクスに従った演
奏を行わせることができるようになる。なお、制御手段
は演奏ダイナミクス制御の他に請求項2に記載のように
動作検出手段によって検出された動作種類及び動作量に
基づいて演奏のテンポを制御してもよい。
The motion detecting means detects the type and amount of motion based on the gesture motion of the operator, that is, the gesture motion or swing motion of the conductor. For example, in the case where the motion detecting means including two orthogonal angular velocity sensors is provided in the baton,
When the operator moves the baton in a vertical waving motion or a triangular hand waving motion, the motion detecting means detects the swaying direction of the baton as the motion type based on the two sensor outputs, and the maximum value of the sensor output at this time is detected. Is detected as an operation amount. The correction means does not correct when the direction in which the baton is swung is a swinging down motion (down beat), and the sensor output increases when swinging up (up beat) or a sideways motion of a triangular hand swing motion. Correct so that As a result, the variation in the movement amount due to the habit of the gesture movement of the operator is equalized. Since the control means controls the dynamics of the performance based on the movement amount corrected by the correction means, it is possible to perform the performance in accordance with the dynamics intended by the operator without variation due to the habit of the operator's gestures. Will be able to. In addition to the performance dynamics control, the control means may control the tempo of the performance based on the type of motion and the amount of motion detected by the motion detection means as described in claim 2.

【0008】[0008]

【実施例】以下、この発明の実施例を添付図面に従って
詳細に説明する。図1は鍵盤、音源回路及び自動演奏装
置を内蔵した電子楽器1Hと、この電子楽器1Hに操作
者の手振り動作に応じたテンポ制御信号を出力する指揮
棒20との詳細構成及び両者間の接続関係を示すハード
ブロック図である。まず、電子楽器1Hの構成について
説明する。マイクロプロセッサユニット(CPU)11
はこの電子楽器1Hの全体動作を制御するものである。
このCPU11に対して、バス1Gを介してROM1
2、RAM13、押鍵検出回路14、スイッチ検出回路
15、表示回路16、音源回路17、効果付与回路1
8、タイマ19、フロッピーディスクドライブ(FD
D)1A及びMIDIインターフェイス(I/F)1B
がそれぞれ接続されている。
Embodiments of the present invention will now be described in detail with reference to the accompanying drawings. FIG. 1 shows a detailed configuration of an electronic musical instrument 1H including a keyboard, a tone generator circuit and an automatic performance device, and a baton 20 which outputs a tempo control signal to the electronic musical instrument 1H according to an operator's hand gesture, and the connection between the two. It is a hardware block diagram which shows a relationship. First, the configuration of the electronic musical instrument 1H will be described. Microprocessor unit (CPU) 11
Controls the overall operation of the electronic musical instrument 1H.
ROM1 to the CPU11 via the bus 1G
2, RAM 13, key depression detection circuit 14, switch detection circuit 15, display circuit 16, tone generator circuit 17, effect imparting circuit 1
8, timer 19, floppy disk drive (FD
D) 1A and MIDI interface (I / F) 1B
Are connected respectively.

【0009】この実施例ではCPU11によって押鍵検
出処理やテンポ制御データの送受信処理及び発音処理等
を行う電子楽器について説明するが、押鍵検出回路14
からなるモジュールや音源回路17からなるモジュール
とがそれぞれ別々に構成され、各モジュール間のデータ
の授受をMIDIインターフェイスで行うように構成さ
れたものにも同様に適用できることは言うまでもない。
ROM12はCPU11の各種プログラムや各種データ
を格納するものであり、リードオンリーメモリ(RO
M)で構成されている。RAM13は演奏情報やCPU
11がプログラムを実行する際に発生する各種データを
一時的に記憶するものであり、ランダムアクセスメモリ
(RAM)の所定のアドレス領域がそれぞれ割り当てら
れ、レジスタやフラグとして利用される。
In this embodiment, an electronic musical instrument in which the CPU 11 performs key depression detection processing, tempo control data transmission / reception processing, sound generation processing, etc. will be described.
It is needless to say that the present invention can be similarly applied to a module that is configured separately from each other and a module that includes the tone generator circuit 17 and that is configured to exchange data between the modules using a MIDI interface.
The ROM 12 stores various programs of the CPU 11 and various data, and is a read-only memory (RO
M). RAM13 is performance information and CPU
Reference numeral 11 temporarily stores various data generated when the program is executed, and predetermined address areas of a random access memory (RAM) are allocated to each and used as registers and flags.

【0010】鍵盤1Cは発音すべき楽音の音高を選択す
るための複数の鍵を備えており、各鍵に対応してキース
イッチを有しており、また必要に応じて押鍵速度検出装
置や押圧力検出装置等のタッチ検出手段を有している。
鍵盤1Cは音楽演奏のための基本的な操作子であり、こ
れ以外の演奏操作子、例えばドラムパッド等でもよいこ
とはいうまでもない。押鍵検出回路14は発生すべき楽
音の音高を指定する鍵盤1Cのそれぞれの鍵に対応して
設けられた複数のキースイッチからなる回路を含んで構
成されており、新たな鍵が押圧されたときはキーオンイ
ベント情報を出力し、鍵が新たに離鍵されたときはキー
オフイベント情報を出力する。また、鍵押し下げ時の押
鍵操作速度又は押圧力等を判別してタッチデータを生成
する処理を行い、生成したタッチデータをベロシティデ
ータとして出力する。このようにキーオン、キーオフイ
ベント情報及びベロシティ情報はMIDI規格で表現さ
れておりキーコードと割当てチャンネルを示すデータを
も含んでいる。
The keyboard 1C is provided with a plurality of keys for selecting the pitch of a musical tone to be produced, has a key switch corresponding to each key, and if necessary, a key depression speed detecting device. And a touch detection unit such as a pressing force detection device.
It is needless to say that the keyboard 1C is a basic operator for playing music, and may be a performance operator other than this, such as a drum pad. The key-depression detection circuit 14 is configured to include a circuit composed of a plurality of key switches provided corresponding to each key of the keyboard 1C that specifies the pitch of a musical tone to be generated, and a new key is pressed. When the key is newly released, the key-on event information is output, and when the key is newly released, the key-off event information is output. In addition, a process of generating touch data is performed by determining a key pressing operation speed or a pressing force when a key is pressed, and the generated touch data is output as velocity data. As described above, the key-on / key-off event information and the velocity information are expressed by the MIDI standard and include the data indicating the key code and the assigned channel.

【0011】パネルスイッチ1Dは自動演奏スタート/
ストップスイッチ、一時停止(ポーズ)スイッチ、音
色、音量、効果等を選択・設定・制御するための各種ス
イッチを含むものである。パネルスイッチ1Dにはこの
他にも色々なスイッチを有するが、その詳細については
公知なので説明を省略する。スイッチ検出回路15はパ
ネルスイッチ1D上の各操作子の操作状態を検出し、そ
の操作状態に応じたスイッチイベントをバス1Gを介し
てCPU11に出力する。表示回路16はCPU11の
制御状態、設定データの内容等の各種の情報を表示部1
Eに表示するものである。表示部1Eは液晶表示パネル
(LCD)等から構成され、表示回路16によってその
表示動作を制御される。
The panel switch 1D starts / starts automatic performance.
It includes a stop switch, a pause (pause) switch, and various switches for selecting, setting, and controlling tones, volume, effects, and the like. The panel switch 1D has various other switches, but the details thereof are publicly known, and thus the description thereof will be omitted. The switch detection circuit 15 detects the operation state of each operator on the panel switch 1D and outputs a switch event corresponding to the operation state to the CPU 11 via the bus 1G. The display circuit 16 displays various information such as the control status of the CPU 11 and the contents of setting data on the display unit 1.
It is displayed on E. The display unit 1E is composed of a liquid crystal display panel (LCD) or the like, and its display operation is controlled by the display circuit 16.

【0012】音源回路17は複数のチャンネルで楽音信
号の同時発生が可能であり、バス1Gを経由して与えら
れた演奏情報(MIDI規格に準拠したデータ)を入力
し、このデータに基づき楽音信号を発生する。音源回路
17における楽音信号発生方式はいかなるものを用いて
もよい。例えば、発生すべき楽音の音高に対応して変化
するアドレスデータに応じて波形メモリに記憶した楽音
波形サンプル値データを順次読み出すメモリ読み出し方
式、又は上記アドレスデータを位相角パラメータデータ
として所定の周波数変調演算を実行して楽音波形サンプ
ル値データを求めるFM方式、あるいは上記アドレスデ
ータを位相角パラメータデータとして所定の振幅変調演
算を実行して楽音波形サンプル値データを求めるAM方
式等の公知の方式を適宜採用してもよい。
The tone generator circuit 17 is capable of simultaneously generating tone signals on a plurality of channels, inputs performance information (data conforming to the MIDI standard) given via the bus 1G, and based on this data, tone signals are generated. To occur. Any tone signal generation method in the tone generator circuit 17 may be used. For example, a memory reading method for sequentially reading tone waveform sample value data stored in a waveform memory according to address data that changes corresponding to the pitch of a tone to be generated, or a predetermined frequency using the above address data as phase angle parameter data. A well-known method such as an FM method for performing a modulation operation to obtain musical tone waveform sample value data or an AM method for performing a predetermined amplitude modulation operation using the address data as phase angle parameter data to obtain a tone waveform sample value data. You may employ suitably.

【0013】効果付与回路18は音源回路17からの楽
音信号に種々の効果を付与し、効果の付与された楽音信
号をサウンドシステム1Fに出力する。効果付与回路1
8によって効果の付与された楽音信号は、図示しないア
ンプ及びスピーカからなるサウンドシステム1Fを介し
て発音される。タイマ19は時間間隔を計数したり、自
動演奏のテンポを決定するためのクロックパルスを発生
するものであり、このクロックパルスはCPU11に対
してインタラプト命令として与えられるので、CPU1
1はインタラプト処理により各種の処理を実行する。フ
ロッピーディスクドライブ(FDD)1Aは外部記憶媒
体すなわちフロッピーディスクから自動演奏データを電
子楽器1H内に取り込んだり、電子楽器1H内で処理さ
れた自動演奏データをフロッピーディスクに書き込んだ
りするインターフェイスである。
The effect imparting circuit 18 imparts various effects to the musical tone signal from the tone generator circuit 17, and outputs the musical tone signal to which the effect has been imparted to the sound system 1F. Effect application circuit 1
The tone signal to which the effect is added by 8 is sounded through a sound system 1F including an amplifier and a speaker (not shown). The timer 19 counts time intervals and generates a clock pulse for determining the tempo of automatic performance. Since this clock pulse is given to the CPU 11 as an interrupt instruction, the CPU 1
1 executes various processes by interrupt processing. The floppy disk drive (FDD) 1A is an interface for loading automatic performance data from an external storage medium, that is, a floppy disk into the electronic musical instrument 1H, and writing automatic performance data processed in the electronic musical instrument 1H to a floppy disk.

【0014】MIDIインターフェイス(I/F)1B
は電子楽器1Hのバス1Gと指揮棒20のMIDIイン
ターフェイス(I/F)27との間を接続し、MIDI
インターフェイス27は指揮棒20のバス2EとMID
Iインターフェイス1Bとの間を接続している。従っ
て、電子楽器1Hのバス1Gと指揮棒20のバス2Eと
の間は、MIDIインターフェイス1B及び27を介し
て接続され、両者の間では、MIDI規格に準拠したデ
ータのやり取りが双方向で行えるようになっている。
MIDI interface (I / F) 1B
Connects between the bus 1G of the electronic musical instrument 1H and the MIDI interface (I / F) 27 of the baton 20,
Interface 27 is bus 2E of baton 20 and MID
It is connected to the I interface 1B. Therefore, the bus 1G of the electronic musical instrument 1H and the bus 2E of the baton 20 are connected to each other via the MIDI interfaces 1B and 27, so that data can be exchanged bidirectionally according to the MIDI standard. It has become.

【0015】次に、指揮棒20の構成について説明す
る。マイクロプロセッサユニット(CPU)21はこの
指揮棒20の動作を制御するものである。このCPU2
1に対しては、バス2Eを介してROM22、RAM2
3、スイッチ検出回路24、A/D変換器25,26、
MIDIインターフェイス27及びタイマ28がそれぞ
れ接続されている。ROM22はCPU21の各種プロ
グラムや各種データを格納するものであり、リードオン
リーメモリ(ROM)で構成されている。RAM23は
CPU21がプログラムを実行する際に発生する各種デ
ータを一時的に記憶するものであり、ランダムアクセス
メモリ(RAM)の所定のアドレス領域がそれぞれ割り
当てられ、レジスタやフラグとして利用される。スイッ
チ群29は指揮棒20のオン/オフスイッチやテンポ制
御信号の出力タイミングを調整するためのディレイタイ
ムスイッチ等で構成される。スイッチ検出回路24はス
イッチ群29の操作状態を検出し、その操作状態に応じ
たデータをバス2Eを介してCPU21に出力する。
Next, the structure of the baton 20 will be described. The microprocessor unit (CPU) 21 controls the operation of the baton 20. This CPU2
1 to the ROM 22 and the RAM 2 via the bus 2E.
3, switch detection circuit 24, A / D converters 25, 26,
The MIDI interface 27 and the timer 28 are connected to each other. The ROM 22 stores various programs of the CPU 21 and various data, and is composed of a read only memory (ROM). The RAM 23 is for temporarily storing various data generated when the CPU 21 executes the program, and is assigned with a predetermined address area of a random access memory (RAM) and used as a register or a flag. The switch group 29 is composed of an on / off switch of the baton 20, a delay time switch for adjusting the output timing of the tempo control signal, and the like. The switch detection circuit 24 detects the operating state of the switch group 29, and outputs data according to the operating state to the CPU 21 via the bus 2E.

【0016】X方向圧電振動ジャイロセンサ2A及びY
方向圧電振動ジャイロセンサ2Bは、センサが1つの回
転軸を中心として回転した場合にその回転の角速度に比
例するコリオリの力に比例した電圧を発生する圧電振動
ジャイロセンサを直交する2軸(X軸及びY軸)に設け
たものである。従って、X方向圧電ジャイロセンサ2A
から出力される電圧に基づいてX軸方向の角速度ωXを
検出することができ、Y方向圧電ジャイロセンサ2Bか
ら出力される電圧に基づいてY軸方向の角速度ωYを検
出することができる。
X-direction piezoelectric vibration gyro sensor 2A and Y
The directional piezoelectric vibration gyro sensor 2B is a two-axis (X-axis) orthogonal to the piezoelectric vibration gyro sensor that generates a voltage proportional to the Coriolis force proportional to the angular velocity of the rotation when the sensor rotates about one rotation axis. And Y axis). Therefore, the X-direction piezoelectric gyro sensor 2A
The angular velocity ωX in the X-axis direction can be detected based on the voltage output from the Y-axis piezoelectric gyro sensor 2B, and the angular velocity ωY in the Y-axis direction can be detected based on the voltage output from the Y-direction piezoelectric gyro sensor 2B.

【0017】ノイズ除去回路2C及び2DはX方向圧電
振動ジャイロセンサ2A及びY方向圧電ジャイロセンサ
2Bからの各センサ出力信号に含まれるセンサ内部のノ
イズ成分を除去するものであり、応答周波数以上の高周
波成分を除去するローパスフィルタで構成される。A/
D変換器25及び26はノイズ除去回路2C及び2Dに
よって高周波成分の除去されたセンサ出力信号をディジ
タル信号に変換するものである。このA/D変換器25
及び26によって変換されたディジタル信号は所定周期
でCPU21によって読み取られ、所定のデータ処理に
よって指揮棒20全体の動作判定処理に利用される。
The noise removing circuits 2C and 2D remove noise components inside the sensors contained in the sensor output signals from the X-direction piezoelectric vibration gyro sensor 2A and the Y-direction piezoelectric gyro sensor 2B, and have a high frequency higher than the response frequency. It is composed of a low-pass filter that removes components. A /
The D converters 25 and 26 convert the sensor output signal from which the high frequency components have been removed by the noise removing circuits 2C and 2D into a digital signal. This A / D converter 25
The digital signals converted by 26 and 26 are read by the CPU 21 at a predetermined cycle, and are used for the motion determination process of the entire baton 20 by a predetermined data process.

【0018】タイマ28は指揮棒20の動作クロックを
発生するものであり、この動作クロックがCPU21に
対してインタラプト命令として与えられ、CPU21は
インタラプト処理により指揮棒20の動作状態を検出
し、動作状態に応じて自動演奏のテンポを決定するため
のテンポ制御信号をMIDIインターフェイス27及び
1Bを介して電子楽器1H側に出力する。
The timer 28 generates an operating clock for the baton 20, and this operating clock is given to the CPU 21 as an interrupt command. The CPU 21 detects the operating state of the baton 20 by an interrupt process and operates. A tempo control signal for determining the tempo of the automatic performance is output to the electronic musical instrument 1H side via the MIDI interfaces 27 and 1B.

【0019】次に、指揮棒20内のマイクロコンピュー
タ(CPU21)によって実行される処理の一例を図2
から図10のフローチャートに基づいて説明する。図2
は指揮棒20内のマイクロコンピュータ(CPU21)
が処理するセンサ出力処理の一例を示す図である。この
センサ出力処理はタイマ28からの動作クロック(周期
約10ms)に同期して実行されるタイマ割り込み処理
である。このセンサ出力処理はプログラムROM22に
格納されている制御プログラムに応じた一連の処理であ
り、次のようなステップで順番に実行される。
Next, an example of processing executed by the microcomputer (CPU 21) in the baton 20 is shown in FIG.
From now on, it will be explained based on the flowchart of FIG. Figure 2
Is a microcomputer (CPU 21) in the baton 20
It is a figure which shows an example of the sensor output process which is processed. This sensor output process is a timer interrupt process that is executed in synchronization with the operation clock from the timer 28 (cycle of about 10 ms). The sensor output process is a series of processes according to the control program stored in the program ROM 22, and is sequentially executed in the following steps.

【0020】ステップ1:X方向圧電振動ジャイロセン
サ2A及びY方向圧電振動ジャイロセンサ2Bの出力、
すなわちA/D変換器25及び26から出力されるディ
ジタル信号をバス2Eを介して取り込む。 ステップ2:直流成分を除去する。すなわち、指揮棒2
0を操作する操作者が手振り動作以外の旋回動作などの
低速回転動作を行うと、それに応じた直流成分すなわち
ドリフト成分が発生するので、ステップ1で取り込んだ
ディジタル信号を低周波の遮断周波数を持つハイパスフ
ィルタを通過させることによって、それを除去する。
Step 1: Outputs of the X-direction piezoelectric vibration gyro sensor 2A and the Y-direction piezoelectric vibration gyro sensor 2B,
That is, the digital signals output from the A / D converters 25 and 26 are taken in via the bus 2E. Step 2: Remove the DC component. That is, baton 2
When the operator who operates 0 performs a low-speed rotation operation such as a turning operation other than a hand-shake operation, a DC component, that is, a drift component, is generated accordingly, so that the digital signal captured in step 1 has a low-frequency cutoff frequency. It is removed by passing it through a high pass filter.

【0021】ステップ3:直流成分の除去されたX方向
圧電振動ジャイロセンサ2A及びY方向圧電振動ジャイ
ロセンサ2Bの出力X及びYに基づいて絶対角速度を算
出し、それを絶対角速度レジスタA_SPEEDに格納
する。絶対角速度は図2のステップ3に示すような演算
式、出力X及びYの二乗の和のルートを取ることによっ
て算出される。なお、このステップによって算出された
絶対角速度の値を、時間を横軸としてプロットすると図
12(A)に示すようなものになる。 ステップ4:今回のタイマ割り込み時点からm回前のタ
イマ割り込み時点までの各タイミングのステップ3で算
出された絶対角速度の平均値を算出し、それを移動平均
値として移動平均レジスタM_AVERAGEに格納す
る。例えば、mが『8』の場合には各タイミングで算出
された8個の絶対角速度の和を8で除することによって
移動平均値が得られる。 ステップ5:今回のタイマ割り込み時点からn回前のタ
イマ割り込み時点までの各タイミングのステップ4で算
出され、移動平均レジスタM_AVERAGEに格納さ
れている移動平均値の平均値を算出し、それをダイナミ
ックしきい値としてダイナミックしきい値レジスタDY
NA_THREに格納する。
Step 3: An absolute angular velocity is calculated based on the outputs X and Y of the X-direction piezoelectric vibration gyro sensor 2A and the Y-direction piezoelectric vibration gyro sensor 2B from which the DC component has been removed, and stored in the absolute angular velocity register A_SPEED. . The absolute angular velocity is calculated by taking the route of the sum of squares of the outputs X and Y and the arithmetic expression as shown in step 3 of FIG. The value of the absolute angular velocity calculated in this step is plotted on the time axis of abscissa, as shown in FIG. 12 (A). Step 4: The average value of the absolute angular velocities calculated in step 3 at each timing from the current timer interrupt time point to the timer interrupt time point m times before is calculated, and stored in the moving average register M_AVERAGE as a moving average value. For example, when m is “8”, the moving average value is obtained by dividing the sum of the eight absolute angular velocities calculated at each timing by 8. Step 5: Calculate the average value of the moving average values stored in the moving average register M_AVERAGE calculated in step 4 at each timing from the current timer interrupt time to the timer interrupt time n times before, and make it dynamic. Dynamic threshold register DY as threshold value
Store in NA_THRE.

【0022】ステップ6:前回値レジスタNOWの格納
値を前々回値レジスタOLDに格納し、今回値レジスタ
NEWの格納値を前回値レジスタNOWに格納し、今回
算出された移動平均値(移動平均レジスタM_AVER
AGEの格納値)を今回値レジスタNEWに格納する。
すなわち、前々回値レジスタOLD、前回値レジスタN
OW及び今回値レジスタNEWの格納値をそれぞれ新し
い値にシフトする。 ステップ7:前々回値レジスタOLD、前回値レジスタ
NOW及び今回値レジスタNEWのそれぞれの格納値に
基づいたピーク検出処理を行う。図3はこのピーク検出
処理の詳細を示す図である。このピーク検出処理は次の
ようなステップで順番に実行される。
Step 6: The value stored in the previous value register NOW is stored in the value register OLD two times before, the value stored in the current value register NEW is stored in the previous value register NOW, and the moving average value calculated this time (moving average register M_AVER) is stored.
The stored value of AGE) is stored in the current value register NEW.
That is, the two-previous value register OLD and the previous value register N
The values stored in the OW and the current value register NEW are shifted to new values. Step 7: Perform peak detection processing based on the stored values of the two-preceding value register OLD, the previous value register NOW and the current value register NEW. FIG. 3 is a diagram showing details of this peak detection processing. This peak detection process is sequentially executed in the following steps.

【0023】ステップ70:前回値レジスタNOWの格
納値が、前々回値レジスタOLDの格納値以上及び今回
値レジスタNEWの格納値以上であるかどうか、すなわ
ち前回のタイマ割り込みの時点で検出された移動平均値
が極大値(ピーク)かどうかの判定を行い、YESの場
合は次のステップ71に進み、NOの場合は図2のステ
ップ8に進む。 ステップ71:前回のタイマ割り込みの時点が移動平均
値の極大値(ピーク)だと前記ステップ70で判定され
たので、ここでは今回のピーク判定時点が前回のピーク
判定時点から起算して所定時間経過したかどうかの判定
を行い、所定時間経過している場合(YES)には次の
ステップ72に進み、所定時間経過していない(NO)
場合には直ちに図2のステップ8に進む。すなわち、前
回のピーク判定時点から所定時間経過していない時点で
再びステップ70でYESと判定されたピークは、操作
者の手振り動作の乱れによって生じた疑似のピーク値だ
ということを意味するからである。
Step 70: Whether the value stored in the previous value register NOW is greater than or equal to the value stored in the two-previous value register OLD and the value stored in the current value register NEW, that is, the moving average detected at the time of the previous timer interrupt. It is determined whether or not the value is the maximum value (peak). If YES, the process proceeds to the next step 71, and if NO, the process proceeds to step 8 in FIG. Step 71: Since it was determined in step 70 that the time point of the previous timer interrupt was the maximum value (peak) of the moving average value, the time point of the present peak judgment is calculated from the time point of the previous peak and a predetermined time has elapsed. If the predetermined time has elapsed (YES), the process proceeds to the next step 72, and the predetermined time has not elapsed (NO).
In that case, the process immediately proceeds to step 8 in FIG. That is, the peak determined to be YES again in step 70 when the predetermined time has not elapsed from the previous peak determination time means that it is a pseudo peak value generated by the disturbance of the hand movement of the operator. is there.

【0024】ステップ72:前回値レジスタNOWの格
納値が一定しきい値よりも大きいかどうかを判定し、大
きい(YES)場合は次のステップ73に進み、小さい
(NO)場合は直ちに図2のステップ8に進む。すなわ
ち、前回値レジスタNOWの格納値が一定しきい値より
も小さいということは、ステップ70及びステップ71
でYESと判定されたピークは、操作者の手振り動作の
乱れによって生じた疑似のピーク値だということを意味
するからである。 ステップ73:前回値レジスタNOWの格納値が図2の
ステップ5で算出されダイナミックしきい値レジスタD
YNA_THREに格納されているダイナミックしきい
値よりも大きいかどうかを判定し、大きい(YES)場
合は次のステップ74に進み、小さい(NO)場合は直
ちに図2のステップ8に進む。すなわち、ピーク値はダ
イナミックしきい値よりも必ず大きいからである。
Step 72: It is judged whether or not the value stored in the previous value register NOW is larger than a certain threshold value. If it is larger (YES), the process proceeds to the next step 73, and if it is smaller (NO), it is immediately shown in FIG. Go to step 8. That is, the fact that the value stored in the previous value register NOW is smaller than the fixed threshold value means that the values are stored in steps 70 and 71.
This is because the peak determined to be YES means that the peak value is a pseudo peak value caused by the disturbance in the hand movement of the operator. Step 73: The value stored in the previous value register NOW is calculated in step 5 of FIG.
It is determined whether it is larger than the dynamic threshold value stored in YNA_THRE. If it is larger (YES), the process proceeds to the next step 74, and if it is smaller (NO), the process immediately proceeds to step 8 in FIG. That is, the peak value is always larger than the dynamic threshold value.

【0025】ステップ74:前回値レジスタNOWの格
納値が、前回ピーク値レジスタLAST_PEAKの格
納値に1以下の所定係数Aを乗じたものよりも大きいか
どうかを判定し、大きい(YES)場合は次のステップ
75に進み、小さい場合は直ちに図2のステップ8に進
む。すなわち、ピーク値は前回のピーク値にだいたい近
似した値となると考えられるからである。 ステップ75:今回のタイマ割り込みの時点以前にピー
ク検出処理又は谷検出処理によって検出されたのが谷か
どうかの判定を行い、前回検出されたのが谷(YES)
の場合は今回検出されたピークは正しいと考えられるの
で次のステップ76に進み、前回検出されたのがピーク
(NO)の場合はピークが連続することはあり得ないの
で、今回検出されたピークが誤りであると考えられるの
で直ちに図2のステップ8に進む。
Step 74: It is judged whether or not the stored value of the previous value register NOW is larger than the previous stored value of the peak value register LAST_PEAK multiplied by a predetermined coefficient A of 1 or less. Step 75, and if it is smaller, immediately go to Step 8 in FIG. That is, it is considered that the peak value will be a value approximately approximate to the previous peak value. Step 75: It is judged whether or not the valley is detected by the peak detection processing or the valley detection processing before the time of the current timer interruption, and the valley is previously detected (YES).
In this case, the peak detected this time is considered to be correct, so the process proceeds to the next step 76, and if the previous detection was a peak (NO), the peaks cannot be continuous, so the peak detected this time. Is considered to be erroneous, the process immediately proceeds to step 8 in FIG.

【0026】ステップ76:前回ピーク値レジスタLA
ST_PEAKに前回値レジスタNOWの格納値を格納
する。 ステップ77:今回検出されたピークがどのような動作
種類におけるピークであるのかピーク種類判定処理を行
う。すなわち、ステップ70〜ステップ75の処理によ
って判定されたピークが指揮棒20のどの方向に振られ
たことによって発生したものなのかを判定する処理であ
る。
Step 76: Previous peak value register LA
The value stored in the previous value register NOW is stored in ST_PEAK. Step 77: A peak type determination process is performed to determine what kind of operation the peak detected this time is. That is, it is a process of determining in which direction of the baton 20 the peak determined by the processes of steps 70 to 75 is caused.

【0027】図4はこのピーク種類判定処理の詳細を示
す図である。このピーク種類判定処理は次のようなステ
ップで順番に実行される。 ステップ770:直流成分の除去されたX方向圧電振動
ジャイロセンサ2Aの出力X及びY方向圧電振動ジャイ
ロセンサ2Bの出力Yに基づいて角度を算出し、それを
角度レジスタθに格納する。角度は図4のステップ77
0に示す演算式、すなわち出力Yを出力Xで除した値の
アークタンジェントによって算出される。
FIG. 4 is a diagram showing the details of the peak type determination process. This peak type determination process is sequentially executed in the following steps. Step 770: Calculate an angle based on the output X of the X-direction piezoelectric vibration gyro sensor 2A from which the DC component is removed and the output Y of the Y-direction piezoelectric vibration gyro sensor 2B, and store it in the angle register θ. The angle is step 77 in FIG.
It is calculated by an arithmetic expression shown in 0, that is, an arc tangent of a value obtained by dividing the output Y by the output X.

【0028】ステップ771:角度レジスタθの格納値
が180°より大きくて300°以下であるかどうかの
判定を行い、YESの場合は次のステップ772に進
み、NOの場合はステップ773に進む。 ステップ772:今回のピークが動作種類『1』の手振
り動作によって生じたものなので、ここでは今回のピー
クを動作『1』のピークとする。 ステップ773:角度レジスタθの格納値が60°以下
であって300°よりも大きいかどうかの判定を行い、
YESの場合は次のステップ774に進み、NOの場合
はステップ775に進む。 ステップ774:今回のピークが動作種類『2』の手振
り動作によって生じたものなので、ここでは今回のピー
クを動作『2』のピークとする。 ステップ775:ステップ771及びステップ773で
NOと判定されたということは、角度レジスタθの格納
値が180°以下であって60°よりも大きいというこ
と、すなわち、今回のピークが動作種類『3』の手振り
動作によって生じたものであることを意味するので、こ
こでは今回のピークを動作『3』のピークとする。
Step 771: It is judged whether the stored value of the angle register θ is more than 180 ° and not more than 300 °. If YES, the process proceeds to the next step 772, and if NO, the process proceeds to step 773. Step 772: Since the current peak is caused by the hand gesture of the motion type “1”, the current peak is set as the peak of the motion “1” here. Step 773: It is judged whether the stored value of the angle register θ is 60 ° or less and is larger than 300 °,
If YES, the process proceeds to the next step 774, and if NO, the process proceeds to step 775. Step 774: Since the current peak is caused by the hand gesture of the motion type “2”, the current peak is set as the peak of the motion “2” here. Step 775: The determination of NO in Step 771 and Step 773 means that the stored value of the angle register θ is 180 ° or less and larger than 60 °, that is, the current peak is the operation type “3”. This means that the current peak is the peak of the motion “3”, since it means that the current motion is caused by the hand gesture motion.

【0029】図11は、ステップ770の演算式によっ
て求められた角度θと、その動作種類『1』、『2』及
び『3』との関係を示す図である。すなわち、角度θが
180°より大きくて300°以下である(ステップ7
71でYES)と判定されたということは、図示のよう
な動作『1』の方向に、角度θが60°以下であって3
00°よりも大きい(ステップ773でYES)と判定
されたということは、図示のような動作『2』の方向
に、角度θが180°以下であって60°よりも大きい
(ステップ773でNO)と判定されたということは、
図示のような動作『3』の方向に指揮棒20が振られた
ことをそれぞれ意味する。なお、ピーク種類の判定の方
法は上述した方法に限らず、例えば前回ピークの種類や
前回ピークとの角度差などを考慮してもよい。
FIG. 11 is a diagram showing the relationship between the angle θ obtained by the arithmetic expression of step 770 and its operation types “1”, “2” and “3”. That is, the angle θ is larger than 180 ° and not larger than 300 ° (step 7).
It is determined YES in step 71, which means that the angle θ is 60 ° or less in the direction of the operation “1” as shown in the figure and 3
It is determined that the angle θ is larger than 00 ° (YES in step 773), which means that the angle θ is 180 ° or less and larger than 60 ° in the direction of the operation “2” as illustrated (NO in step 773). ), It means that
This means that the baton 20 is swung in the direction of the operation "3" as shown in the figure. Note that the method of determining the peak type is not limited to the above-described method, and for example, the type of the previous peak, the angular difference from the previous peak, or the like may be considered.

【0030】ステップ78:今回検出されたピーク値に
基づいてダイナミクス算出処理1〜5の中のいずれか一
つを実行し、ダイナミクスを算出し、図2のステップ8
に進む。このダイナミクス算出処理1〜5の詳細につい
ては後述する。 ステップ8:前々回値レジスタOLD、前回値レジスタ
NOW及び今回値レジスタNEWのそれぞれの格納値に
基づいた谷検出処理を行う。図5はこの谷検出処理の詳
細を示す図である。この谷検出処理は次のようなステッ
プで順番に実行される。
Step 78: Based on the peak value detected this time, one of the dynamics calculation processes 1 to 5 is executed to calculate the dynamics, and step 8 in FIG.
Proceed to. Details of the dynamics calculation processes 1 to 5 will be described later. Step 8: Perform valley detection processing based on the respective stored values of the two-preceding value register OLD, the previous value register NOW and the current value register NEW. FIG. 5 is a diagram showing details of the valley detection process. This valley detection process is sequentially executed in the following steps.

【0031】ステップ80:前回値レジスタNOWの格
納値が、前々回値レジスタOLDの格納値以下であり、
かつ、今回値レジスタNEWの格納値以下であるかどう
か、すなわち前回のタイマ割り込みの時点で検出された
移動平均値が極小値(谷)かどうかの判定を行い、YE
Sの場合は次のステップ81に進み、NOの場合はリタ
ーンして次のタイマ割り込みタイミングまで待機する。 ステップ81:前回のタイマ割り込みの時点が移動平均
値の極小値(谷)となった時点であると前記ステップ8
0で判定されたので、ここでは今回の谷判定時点が前回
の谷判定時点から起算して所定時間経過したかどうかの
判定を行い、所定時間経過している場合(YES)には
次のステップ82に進み、所定時間経過していない(N
O)場合には、今回の谷判定は誤りであると考えられる
のでリターンして次のタイマ割り込みタイミングまで待
機する。
Step 80: The value stored in the previous value register NOW is less than or equal to the value stored in the value register OLD two times before,
At the same time, it is determined whether the value is less than or equal to the value stored in the current value register NEW, that is, the moving average value detected at the time of the previous timer interrupt is the minimum value (valley).
If S, the process proceeds to the next step 81. If NO, the process returns and waits until the next timer interrupt timing. Step 81: The previous timer interruption time point is the time point when the minimum value (valley) of the moving average value is reached.
Since it is determined as 0, it is determined here whether or not the current valley determination time has counted from the previous valley determination time and a predetermined time has passed. If the predetermined time has passed (YES), the next step 82, the predetermined time has not elapsed (N
In the case of O), the current valley judgment is considered to be incorrect, and therefore the routine returns and waits until the next timer interrupt timing.

【0032】ステップ82:前回値レジスタNOWの格
納値が一定しきい値よりも小さいかどうかを判定し、小
さい(YES)場合は次のステップ83に進み、大きい
(NO)場合は今回の谷判定が誤りであると考えられる
のでリターンして次のタイマ割り込みタイミングまで待
機する。 ステップ83:前回値レジスタNOWの格納値がダイナ
ミックしきい値レジスタDYNA_THREに格納され
ているダイナミックしきい値よりも小さいかどうかを判
定し、小さい(YES)場合は次のステップ84に進
み、大きい(NO)場合は今回の谷判定が誤りであると
考えられるのでリターンして次のタイマ割り込みタイミ
ングまで待機する。
Step 82: It is judged whether or not the value stored in the previous value register NOW is smaller than a certain threshold value. If smaller (YES), the process proceeds to the next step 83, and if larger (NO), the current valley judgment is made. Is suspected to be incorrect, so return and wait until the next timer interrupt timing. Step 83: It is judged whether or not the value stored in the previous value register NOW is smaller than the dynamic threshold value stored in the dynamic threshold value register DYNA_THRE, and if it is smaller (YES), the process proceeds to the next step 84 and is larger ( In the case of NO), it is considered that the current valley determination is incorrect, and therefore the routine returns and waits until the next timer interrupt timing.

【0033】ステップ84:今回のタイマ割り込みの時
点以前にピーク検出処理又は谷検出処理によって検出さ
れたのがピークかどうかの判定を行い、前回検出された
のがピーク(YES)の場合は今回検出された谷は正し
いと考えられるので次のステップ85に進み、前回検出
されたのが谷(NO)の場合は今回検出された谷は誤り
であると考えられるのでリターンして次のタイマ割り込
みタイミングまで待機する。 ステップ85:今回検出された極小値が正式な谷である
と判定する。以上のようにして、谷が検出されると、今
度は図3のピーク検出処理によってピークの検出が行わ
れるようになる。すなわち、図3のピーク検出処理と図
5の谷検出処理とが交互に行われることによってピーク
と谷の検出が確実に行われる。
Step 84: It is judged whether or not the peak is detected by the peak detection processing or the valley detection processing before the time of the current timer interruption, and if the peak was previously detected (YES), it is detected this time. Since the detected valley is considered to be correct, the process proceeds to the next step 85. If the previously detected valley is NO (NO), the valley detected this time is considered to be incorrect, so return and return to the next timer interrupt timing. Wait until. Step 85: It is determined that the minimum value detected this time is an official valley. When the valley is detected as described above, the peak is detected by the peak detection process of FIG. That is, the peak detection processing shown in FIG. 3 and the valley detection processing shown in FIG. 5 are alternately performed to reliably detect the peak and the valley.

【0034】次に図3のステップ78のダイナミクス算
出処理1〜5の詳細について説明する。図6〜図10は
ダイナミクス算出処理1〜5の詳細をそれぞれ示す図で
ある。図6のダイナミクス算出処理1では、図4のピー
ク種類判定処理によって判定されたピークの種類(すな
わち動作種類)『1』、『2』、『3』毎に、異なるテ
ーブルを参照し、そのピーク値をテーブル変換した値を
ダイナミクスとして出力する。
Next, details of the dynamics calculation processes 1 to 5 in step 78 of FIG. 3 will be described. 6 to 10 are diagrams showing details of the dynamics calculation processes 1 to 5, respectively. In the dynamics calculation process 1 of FIG. 6, a different table is referred to for each of the peak types (that is, operation types) “1”, “2”, and “3” determined by the peak type determination process of FIG. Output the table-converted values as dynamics.

【0035】図7のダイナミクス算出処理2では、図4
のピーク種類判定処理によって判定されたピークの種類
(すなわち動作種類)『1』、『2』、『3』毎に、異
なる係数をピーク値に乗じることによってダイナミクス
を算出している。このダイナミクス算出処理2は次のよ
うなステップで順番に実行される。 ステップ780:ピークの種類すなわち動作種類は
『1』であるかどうかを判定し、『1』(YES)の場
合はステップ782に進み、『2』又は『3』(NO)
の場合はステップ781に進む。 ステップ781:ピークの種類すなわち動作種類は
『2』であるかどうかを判定し、『2』(YES)の場
合はステップ784に進み、『3』(NO)の場合はス
テップ786に進む。
In the dynamics calculation processing 2 of FIG.
The dynamics are calculated by multiplying the peak value by a different coefficient for each of the peak types (that is, the operation types) "1", "2", and "3" determined by the peak type determination process of. The dynamics calculation process 2 is sequentially executed in the following steps. Step 780: It is judged whether or not the peak type, that is, the operation type is "1". If "1" (YES), the process proceeds to step 782, and "2" or "3" (NO).
In the case of, the process proceeds to step 781. Step 781: It is judged whether or not the peak type, that is, the operation type is "2". If "2" (YES), the process proceeds to step 784, and if "3" (NO), the process proceeds to step 786.

【0036】ステップ782:前記ステップ780で動
作種類『1』のピークである(YES)と判定されたの
で、ここでは、そのピーク値をそのままダイナミクスと
する。すなわち、前回値レジスタNOWに格納されてい
るピーク値をダイナミクスとしてダイナミクスレジスタ
DYNAMICSに格納する。このステップでは係数は
1.0である。 ステップ783:動作『1』に対応したキーコード『C
3』のキーオンと、前記ステップ782によって得られ
たダイナミクスを出力する。 ステップ784:前記ステップ781で動作種類『2』
のピークである(YES)と判定されたので、ここで
は、そのピーク値に係数αを乗じ、その値をダイナミク
スとする。すなわち、前回値レジスタNOWに格納され
ているピーク値に係数αを乗じ、その乗算結果(α×N
OW)をダイナミクスとしてダイナミクスレジスタDY
NAMICSに格納する。 ステップ785:動作『2』に対応したキーコード『C
♯3』のキーオンと、前記ステップ784によって得ら
れたダイナミクスを出力する。 ステップ786:前記ステップ781で動作種類『3』
のピークである(NO)と判定されたので、ここでは、
そのピーク値に係数βを乗じ、その値をダイナミクスと
する。すなわち、前回値レジスタNOWに格納されてい
るピーク値に係数βを乗じ、その乗算結果(β×NO
W)をダイナミクスとしてダイナミクスレジスタDYN
AMICSに格納する。 ステップ787:動作『3』に対応したキーコード『D
3』のキーオンと、前記ステップ786によって算出さ
れたダイナミクスを出力する。
Step 782: Since it is determined in step 780 that the peak is the motion type "1" (YES), the peak value is used as it is as dynamics. That is, the peak value stored in the previous value register NOW is stored in the dynamics register DYNAMICS as dynamics. In this step, the coefficient is 1.0. Step 783: Key code "C" corresponding to the operation "1"
And the dynamics obtained in step 782 are output. Step 784: Operation type “2” in step 781
Since it is determined that the peak value is (YES), here, the peak value is multiplied by the coefficient α, and the value is taken as the dynamics. That is, the peak value stored in the previous value register NOW is multiplied by the coefficient α, and the multiplication result (α × N
OW) as a dynamics dynamics register DY
Store in NAMICS. Step 785: The key code "C" corresponding to the operation "2"
The key-on of "# 3" and the dynamics obtained in step 784 are output. Step 786: Operation type “3” in step 781
Since it was determined to be the peak of (NO), here,
The peak value is multiplied by the coefficient β, and the value is taken as the dynamics. That is, the peak value stored in the previous value register NOW is multiplied by the coefficient β, and the multiplication result (β × NO
W) as dynamics register DYN
Store in AMICS. Step 787: Key code "D" corresponding to operation "3"
3 ”and the dynamics calculated in step 786 are output.

【0037】図8のダイナミクス算出処理3では、図7
のダイナミクス算出処理2と同様に動作種類『1』、
『2』、『3』毎に、移動平均を取り、その移動平均値
に異なる係数を乗じることによってダイナミクスを算出
している。なお、図8において図7と同じステップには
同一の符号が付してあるので、その説明は省略する。
In the dynamics calculation processing 3 shown in FIG.
As in the dynamics calculation process 2 of, the operation type “1”,
The dynamics are calculated by taking a moving average for each of "2" and "3" and multiplying the moving average value by a different coefficient. Note that, in FIG. 8, the same steps as those in FIG. 7 are denoted by the same reference numerals, and a description thereof will be omitted.

【0038】ステップ788:ステップ780で動作種
類『1』のピークである(YES)と判定されたので、
ここでは、動作種類『1』のピーク値の移動平均を取
り、それをダイナミクスとする。すなわち、前回値レジ
スタNOWよりも前に検出された動作種類『1』のピー
ク値を格納している前3回値レジスタLAST13、前
2回値レジスタLAST12、前々回値レジスタLAS
T11及び前回値レジスタNOWの各格納値を加算し、
それを4で除して得られた移動平均値((NOW+LA
ST11+LAST12+LAST13)/4)をダイ
ナミクスとしてダイナミクスレジスタDYNAMICS
に格納する。 ステップ789:次のダイナミクス算出処理3に備えて
動作種類『1』の各レジスタLAST13、LAST1
2及びLAST11の値をそれぞれ更新する。すなわ
ち、前3回値レジスタLAST13に前2回値レジスタ
LAST12の値を格納し、前2回値レジスタLAST
12に前々回値レジスタLAST11の値を格納し、前
々回値レジスタLAST11に前回値レジスタNOWの
値を格納する。
Step 788: Since it is determined in step 780 that the peak is the motion type "1" (YES),
Here, the moving average of the peak value of the operation type “1” is calculated and used as the dynamics. That is, the previous three-time value register LAST13, the previous two-time value register LAST12, and the two-previous-time value register LAS that store the peak value of the operation type “1” detected before the previous value register NOW.
Add each stored value of T11 and the previous value register NOW,
Moving average value ((NOW + LA
Dynamics register DYNAMICS with ST11 + LAST12 + LAST13) / 4) as dynamics
To be stored. Step 789: In preparation for the next dynamics calculation processing 3, the registers LAST13 and LAST1 of the operation type "1"
2 and the value of LAST11 are updated, respectively. That is, the value of the previous twice value register LAST12 is stored in the previous three times value register LAST13, and the previous two times value register LAST is stored.
The value of the previous-previous-time value register LAST11 is stored in 12, and the value of the previous-time value register NOW is stored in the previous-previous-time value register LAST11.

【0039】ステップ78A:前記ステップ781で動
作種類『2』のピークである(YES)と判定されたの
で、ここでは、動作種類『2』のピーク値の移動平均を
取り、その移動平均値に係数αを乗じ、それをダイナミ
クスとする。すなわち、前回値レジスタNOWよりも前
に検出された動作種類『2』のピーク値を格納している
前3回値レジスタLAST23、前2回値レジスタLA
ST22、前々回値レジスタLAST21及び前回値レ
ジスタNOWの各格納値を加算し、それを4で除した値
に係数αを乗じ、その乗算結果(α×(NOW+LAS
T21+LAST22+LAST23)/4)をダイナ
ミクスとしてダイナミクスレジスタDYNAMICSに
格納する。 ステップ78B:次のダイナミクス算出処理3に備え
て、ステップ789と同様に動作種類『2』の各レジス
タLAST23、LAST22及びLAST21の値を
それぞれ更新する。
Step 78A: Since it is determined in step 781 that it is the peak of the motion type "2" (YES), the moving average of the peak values of the motion type "2" is taken as the moving average value. Multiply the coefficient α to obtain the dynamics. That is, the previous three-time value register LAST23 and the previous two-time value register LA that store the peak value of the operation type "2" detected before the previous value register NOW are stored.
ST22, the two-previous value register LAST21 and the previous value register NOW are added together, and the value divided by 4 is multiplied by a coefficient α, and the multiplication result (α × (NOW + LAS
T21 + LAST22 + LAST23) / 4) is stored as dynamics in the dynamics register DYNAMICS. Step 78B: In preparation for the next dynamics calculation process 3, the values of the registers LAST23, LAST22, and LAST21 of the operation type “2” are updated, as in step 789.

【0040】ステップ78C:前記ステップ781で動
作種類『3』のピークである(NO)と判定されたの
で、ここでは、動作種類『3』のピーク値の移動平均を
取り、その移動平均値に係数βを乗じ、それをダイナミ
クスとする。すなわち、前回値レジスタNOWよりも前
に検出された動作種類『3』のピーク値を格納している
前3回値レジスタLAST33、前2回値レジスタLA
ST32、前々回値レジスタLAST31及び前回値レ
ジスタNOWの各格納値を加算し、それを4で除した値
(移動平均値)に係数βを乗じ、その乗算結果(β×
(NOW+LAST31+LAST32+LAST3
3)/4)をダイナミクスとしてダイナミクスレジスタ
DYNAMICSに格納する。 ステップ78D:次のダイナミクス算出処理3に備え
て、ステップ789と同様に動作種類『3』の各レジス
タLAST33、LAST32及びLAST31の値を
それぞれ更新する。
Step 78C: Since it is determined in step 781 that the peak of the motion type "3" is (NO), here, the moving average of the peak values of the motion type "3" is taken and the moving average value is obtained. Multiply the coefficient β to obtain the dynamics. That is, the previous three-time value register LAST33 and the previous two-time value register LA that store the peak value of the operation type "3" detected before the previous value register NOW.
The stored values of ST32, the two-previous value register LAST31 and the previous value register NOW are added, and the value (moving average value) obtained by dividing it by 4 is multiplied by a coefficient β, and the multiplication result (β ×
(NOW + LAST31 + LAST32 + LAST3
Store 3) / 4) as dynamics in the dynamics register DYNAMICS. Step 78D: In preparation for the next dynamics calculation process 3, the values of the registers LAST33, LAST32, and LAST31 of the operation type “3” are updated respectively, as in step 789.

【0041】図9のダイナミクス算出処理4では、図7
のダイナミクス算出処理2と同様に動作種類『1』、
『2』、『3』毎に、異なる係数をそのピーク値に乗
じ、さらに、動作種類『2』及び『3』に関しては乗算
結果と動作種類『1』のピーク値との間の平均を取るこ
とによってダイナミクスを算出している。なお、図9に
おいて図7と同じステップには同一の符号が付してある
ので、その説明は省略する。
In the dynamics calculation processing 4 shown in FIG.
As in the dynamics calculation process 2 of, the operation type “1”,
The peak value is multiplied by a different coefficient for each of "2" and "3", and for the operation types "2" and "3", the average between the multiplication result and the peak value of the operation type "1" is taken. By doing so, the dynamics are calculated. Note that, in FIG. 9, the same steps as those in FIG. 7 are denoted by the same reference numerals, and a description thereof will be omitted.

【0042】ステップ78E:動作種類『1』に関して
は図7のダイナミクス算出処理2と同じだが、動作種類
『2』及び『3』に関しては動作種類『1』のピーク値
との間で平均を取るという処理を行っている関係上、こ
こでは、前回値レジスタNOWのピーク値すなわち動作
種類『1』のピーク値を前々回値レジスタLASTに格
納する。 ステップ78F:前記ステップ781で動作種類『2』
のピークである(YES)と判定されたので、ここで
は、動作種類『2』のピーク値に係数αを乗じ、その乗
算値と動作種類『1』の前回のピーク値との平均を取
り、それをダイナミクスとする。すなわち、前回値レジ
スタNOWに格納されているピーク値に係数αを乗じ、
その乗算値と前々回値レジスタLASTの格納値を加算
し、それを2で除した平均値((α×NOW+LAS
T)/2)をダイナミクスとしてダイナミクスレジスタ
DYNAMICSに格納する。 ステップ78G:前記ステップ781で動作種類『3』
のピークである(NO)と判定されたので、ここでは、
動作種類『3』のピーク値に係数βを乗じ、その乗算値
と動作種類『1』の前回のピーク値との平均を取り、そ
れをダイナミクスとする。すなわち、前回値レジスタN
OWに格納されているピーク値に係数βを乗じ、その乗
算値と前々回値レジスタLASTの格納値を加算し、そ
れを2で除した平均値((β×NOW+LAST)/
2)をダイナミクスとしてダイナミクスレジスタDYN
AMICSに格納する。
Step 78E: The motion type "1" is the same as the dynamics calculation process 2 of FIG. 7, but the motion types "2" and "3" are averaged with the peak value of the motion type "1". Therefore, the peak value of the previous value register NOW, that is, the peak value of the operation type "1" is stored in the value register LAST two times before. Step 78F: Operation type “2” in step 781
Since it has been determined that the peak value is (YES), here, the peak value of the operation type “2” is multiplied by the coefficient α, and the average of the product value and the previous peak value of the operation type “1” is calculated. Let's call it dynamics. That is, the peak value stored in the previous value register NOW is multiplied by the coefficient α,
The multiplication value and the value stored in the two-preceding value register LAST are added, and the result is divided by 2 to obtain an average value ((α × NOW + LAS
T) / 2) is stored as dynamics in the dynamics register DYNAMICS. Step 78G: Operation type “3” in step 781
Since it was determined to be the peak of (NO), here,
The peak value of the motion type “3” is multiplied by the coefficient β, and the product of the multiplied value and the previous peak value of the motion type “1” is averaged to obtain the dynamics. That is, the previous value register N
The peak value stored in the OW is multiplied by the coefficient β, the product value is added to the value stored in the last-preceding value register LAST, and the result is divided by 2 to obtain an average value ((β × NOW + LAST) /
Dynamics register DYN with 2) as dynamics
Store in AMICS.

【0043】図10のダイナミクス算出処理5では、図
9のダイナミクス算出処理4と同様に動作種類『1』、
『2』、『3』毎に、異なる係数をそのピーク値に乗
じ、さらに、動作種類『2』及び『3』に関しては乗算
結果と動作種類『1』のピーク値との間の平均を取るこ
とによってダイナミクスを算出する。そして、動作種類
『3』に関しては前回のピークの種類(動作種類)が
『1』なのか『2』なのかに応じて係数の値を異ならせ
るようにしている。すなわち、2拍子や4拍子における
上下手振り運動では動作『1』のピークと動作『2』ピ
ークが交互に現れ、3拍子における三角形手振り運動で
は動作『1』のピーク、動作『2』のピーク、動作
『3』のピークが順番に現れる。従って、動作『1』か
ら動作『3』に移行する場合と、動作『2』から動作
『3』に移行する場合とでは角速度センサの出力値も異
なる。そこで、ここでは上下手振り運動の場合と三角形
手振り運動の場合とで動作『3』に対する係数値をそれ
ぞれ異ならせることにした。なお、図10において図9
と同じステップには同一の符号が付してあるので、その
説明は省略する。
In the dynamics calculation processing 5 of FIG. 10, the operation type "1", as in the dynamics calculation processing 4 of FIG.
The peak value is multiplied by a different coefficient for each of "2" and "3", and for the operation types "2" and "3", the average between the multiplication result and the peak value of the operation type "1" is taken. To calculate the dynamics. Then, regarding the operation type “3”, the coefficient value is made different depending on whether the previous peak type (operation type) is “1” or “2”. That is, the peak of the motion "1" and the peak of the motion "2" alternately appear in the vertical hand gesture motion in the two-beat and four-beat beats, and the peak of the motion "1" and the peak of the motion "2" in the triangular hand-movement motion in the three-beat, The peaks of motion "3" appear in order. Therefore, the output value of the angular velocity sensor is different between the case where the operation "1" is changed to the operation "3" and the case where the operation "2" is changed to the operation "3". Therefore, here, the coefficient value for the motion "3" is made different between the case of the vertical hand gesture motion and the case of the triangular hand gesture motion. In addition, in FIG.
The same reference numerals are given to the same steps as, and the description thereof will be omitted.

【0044】ステップ78H:前記ステップ781で動
作種類『3』のピークである(NO)と判定されたの
で、ここでは、前回の動作種類が『1』であるかどうか
を判定し、『1』(YES)の場合にはステップ78J
に進み、『2』の場合にはステップ78Gに進む。 ステップ78J:前記ステップ78Hで前回の動作種類
が『1』だと判定されたので、ここでは、動作種類
『3』のピーク値に係数γを乗じ、その乗算値と動作種
類『1』の前回のピーク値との平均を取り、それをダイ
ナミクスとする。すなわち、前回値レジスタNOWに格
納されているピーク値に係数γを乗じ、その乗算値と前
々回値レジスタLASTの格納値を加算し、それを2で
除した平均値((γ×NOW+LAST)/2)をダイ
ナミクスとしてダイナミクスレジスタDYNAMICS
に格納する。
Step 78H: Since it is determined in step 781 that the motion type "3" is the peak (NO), here it is determined whether or not the previous motion type is "1" and "1". If yes, step 78J
If it is "2", the process proceeds to step 78G. Step 78J: Since it was determined in step 78H that the previous motion type was “1”, here, the peak value of the motion type “3” is multiplied by the coefficient γ, and the product value and the previous motion type “1” are multiplied. Take the average with the peak value of and use it as the dynamics. That is, the peak value stored in the previous value register NOW is multiplied by the coefficient γ, the product value and the value stored in the two-previous value register LAST are added, and the result is divided by 2 to obtain an average value ((γ × NOW + LAST) / 2. ) As a dynamics dynamics register DYNAMICS
To be stored.

【0045】例えば、振り降ろし動作時のピーク値が最
も大きく、振り上げ動作時のピーク値が最も小さいの
で、三角手振り運動における動作種類『3』の振り上げ
動作の場合の係数αを1.75とし、動作種類『2』の
横振り動作の場合の係数βを1.5とし、上下手振り振
動における動作種類『3』の振り上げ動作の場合の係数
γを1.875とすることによって、全体的にダイナミ
クスの均一化を図ることができる。なお、これら係数値
は一例であり、操作者個々が任意に所望の値を設定して
もよいことはいうまでもない。
For example, since the peak value during the swing-down motion is the largest and the peak value during the swing-up motion is the smallest, the coefficient α for the swing-up motion of motion type "3" in the triangular hand swing motion is 1.75, The dynamics as a whole is set by setting the coefficient β in the lateral swing motion of the motion type “2” to 1.5 and the coefficient γ in the swing motion of the motion type “3” in the vertical hand shaking vibration to 1.875. Can be made uniform. Needless to say, these coefficient values are examples, and each operator may arbitrarily set a desired value.

【0046】次に、指揮棒20が操作者の身振り動作に
応じて動かされることによって、どのようにしてセンサ
出力処理を行うのか、その動作例を図12を用いて説明
する。図12は、指揮棒20が三角形の軌跡を描くよう
にして3拍子の身振り動作に応じた三角手振り運動にお
けるセンサ出力処理の概念を示す模式図である。図12
(A)は指揮棒20が3拍子の三角手振り運動で動かさ
れる場合における絶対角速度の出力波形のようすを示す
図であり、図12(B)は三角手振り運動における絶対
角速度のピーク検出時点を示す図である。
Next, an example of the operation will be described with reference to FIG. 12 as to how the sensor output processing is performed by moving the baton 20 according to the gesture motion of the operator. FIG. 12 is a schematic diagram showing a concept of sensor output processing in a triangular hand waving motion corresponding to a gesture of three beats so that the baton 20 draws a triangular locus. 12
FIG. 12 (A) is a diagram showing an output waveform of the absolute angular velocity when the baton 20 is moved by a triangular hand waving motion of 3 beats, and FIG. 12 (B) shows a peak detection time point of the absolute angular velocity in the triangular hand waving motion. It is a figure.

【0047】指揮棒20が図12(B)のような三角手
振り運動で動かされると、ステップ3で算出される絶対
角速度の値は図12(A)のような形状となる。第1ピ
ーク、谷、第2ピーク、谷、第3ピーク、谷の順番でそ
れぞれピークと谷が交互に現れる。まず、指揮棒20が
図11において240°の方向(左斜め下方向)に振ら
れると、ステップ70〜ステップ75の処理によって第
1ピークが検出される。そして、前回ピーク値レジスタ
LAST_PEAKに前回値レジスタNOWの格納値が
格納される。図4のステップ771の処理によって第1
ピークは動作『1』のピークだと判定され。図12
(B)では第1ピークの検出時点が円で示されている。
そして、ステップ78のダイナミクス算出処理1〜5の
いずれかによって第1ピークのピーク値に対応したダイ
ナミクスが算出され、動作種類『1』に対応したキーコ
ード『C3』のキーオンと共に出力されるようになる。
When the baton 20 is moved by the triangular waving motion as shown in FIG. 12 (B), the absolute angular velocity value calculated in step 3 has a shape as shown in FIG. 12 (A). Peaks and valleys appear alternately in the order of the first peak, the valley, the second peak, the valley, the third peak, and the valley. First, when the baton 20 is swung in the direction of 240 ° (obliquely leftward downward) in FIG. 11, the first peak is detected by the processing of steps 70 to 75. Then, the value stored in the previous value register NOW is stored in the previous peak value register LAST_PEAK. First by the processing of step 771 in FIG.
The peak is determined to be the peak of operation "1". 12
In (B), the detection time of the first peak is indicated by a circle.
Then, the dynamics corresponding to the peak value of the first peak is calculated by any of the dynamics calculation processes 1 to 5 in step 78 and is output together with the key-on of the key code "C3" corresponding to the operation type "1". Become.

【0048】その後、指揮棒20が図11において24
0°の方向(左斜め下方向)から0°の方向(右側水平
方向)に振られると、その手振り動作の変化点で図5の
ステップ80〜ステップ85の処理によって今度は谷が
検出される。そして、指揮棒20が図11において0°
の方向(右側水平方向)に振られると、それに応じて今
度は第2ピークが動作『2』のピークとして検出され、
この第2ピークのピーク値に対応したダイナミクスが算
出され、キーコード『C♯3』のテンポキーオン信号と
共に出力されるようになる。
Thereafter, the baton 20 is moved to 24 in FIG.
When it is shaken in the direction of 0 ° (obliquely leftward downward) to the direction of 0 ° (horizontal rightward direction), a valley is detected this time by the processing of steps 80 to 85 in FIG. . And the baton 20 is 0 ° in FIG.
When it is shaken in the direction of (the right horizontal direction), the second peak is detected accordingly as the peak of the motion “2”,
The dynamics corresponding to the peak value of this second peak are calculated and output together with the tempo key-on signal of the key code "C # 3".

【0049】指揮棒20が図11において0°の方向
(右側水平方向)から120°の方向(左斜め上方向)
に振られると、その手振り動作の変化点で谷が検出され
る。その後、今度は第3ピークが動作『3』のピークと
して検出される。この第3ピークのピーク値に対応した
ダイナミクスが算出され、キーコード『D3』のテンポ
キーオン信号と共に出力されるようになる。そして、再
び指揮棒20が図11において120°の方向(左斜め
上方向)から240°の方向(左斜め下方向)に振られ
ると、その手振り動作の変化点で谷が検出され、前述の
処理が繰り返し実行される。
In FIG. 11, the baton 20 is in a direction of 0 ° (horizontal right side) to 120 ° (obliquely upward left direction).
When the hand is shaken, a valley is detected at the change point of the hand movement. After that, the third peak is detected this time as the peak of the operation “3”. The dynamics corresponding to the peak value of the third peak is calculated and output together with the tempo key-on signal of the key code "D3". Then, when the baton 20 is swung again from the direction of 120 ° (obliquely leftward upward) to the direction of 240 ° (obliquely downward leftward) in FIG. 11, a valley is detected at the change point of the hand gesture, and The process is repeatedly executed.

【0050】なお、図12(B)の右側には、指揮棒2
0が上下方向に2拍子又は4拍子で手振り動作(又は揺
動動作)された場合のピーク検出時点が示してある。こ
の場合、指揮棒20が図11において270°の方向
(下方向)に振られると、第1ピークが動作『1』のピ
ークとして検出され、この第1ピークのピーク値に対応
したダイナミクスが算出され、キーコード『C3』のテ
ンポキーオン信号と共に出力される。その後、指揮棒2
0が図11において270°の方向(下方向)から90
°の方向(上方向)に振られると、その手振り動作の変
化点で谷が検出され、今度は第2ピークが動作『3』の
ピークとして検出され、この第2ピークのピーク値に対
応したダイナミクスが算出され、キーコード『D3』の
テンポキーオン信号と共に出力されるようになる。そし
て、再度指揮棒20が図11において90°の方向(上
方向)から270°の方向(下方向)に振られると、そ
の手振り動作の変化点で谷が検出され、前述の処理が繰
り返し実行される。
On the right side of FIG. 12B, the baton 2
The peak detection time is shown when 0 is waving (or rocking) in the up-down direction with two or four beats. In this case, when the baton 20 is swung in the direction of 270 ° (downward) in FIG. 11, the first peak is detected as the peak of the motion “1”, and the dynamics corresponding to the peak value of this first peak is calculated. And is output together with the tempo key-on signal of the key code "C3". After that, baton 2
0 is 90 from the direction of 270 ° (downward) in FIG.
When it is shaken in the direction of ° (upward), a valley is detected at the change point of the hand movement, and this time the second peak is detected as the peak of the movement “3”, which corresponds to the peak value of this second peak. The dynamics are calculated and output together with the tempo key-on signal of the key code "D3". Then, when the baton 20 is swung again from the direction of 90 ° (upward) to the direction of 270 ° (downward) in FIG. 11, a valley is detected at the change point of the hand gesture, and the above-described processing is repeatedly executed. To be done.

【0051】このようにして、操作者が指揮棒20を動
かすことによって、指揮棒20は操作者の手振り動作に
応じて操作者の意図したインターバルでテンポキーオン
信号を出力すると共に意図したダイナミクスを出力する
ことができるようになるため、このテンポキーオン信号
及びダイナミクスに応じて電子楽器1Hがシーケンスデ
ータの再生を行うことによりテンポや演奏ダイナミクス
を任意に制御することができるようになる。なお、後述
するようにテンポキーオン信号の出力タイミングと自動
演奏の拍タイミングとがほぼ一致するように、電子楽器
1Hにおいて自動演奏のテンポを制御するようになって
いるので、操作者が意図する拍タイミングと自動演奏の
拍タイミングとは一致することとなる。
In this way, when the operator moves the baton 20, the baton 20 outputs the tempo key-on signal and the intended dynamics at the operator's intended interval according to the operator's waving motion. Since the electronic musical instrument 1H reproduces the sequence data according to the tempo key-on signal and the dynamics, the tempo and performance dynamics can be controlled arbitrarily. As will be described later, the tempo of the automatic performance is controlled in the electronic musical instrument 1H so that the output timing of the tempo key-on signal and the beat timing of the automatic performance substantially coincide with each other. The timing and the beat timing of the automatic performance will match.

【0052】次に、このテンポキーオン信号を入力する
ことによって、電子楽器1H内のマイクロコンピュータ
(CPU11)がどのようにして楽音の再生処理を行う
のかその一例を図13〜図15のフローチャートに基づ
いて説明する。図13は電子楽器1H内のマイクロコン
ピュータ(CPU11)が処理する楽音の再生処理の一
例を示す図である。この再生処理はタイマ19からの動
作クロック(周期約1ms)に同期して実行されるタイ
マ割り込み処理である。この再生処理はプログラムRO
M12に格納されている制御プログラムに応じた一連の
処理であり、次のようなステップで順番に実行される。
Next, by inputting this tempo key-on signal, how the microcomputer (CPU 11) in the electronic musical instrument 1H performs the reproduction processing of the musical tone will be described with reference to the flowcharts of FIGS. Explain. FIG. 13 is a diagram showing an example of a musical sound reproduction process performed by the microcomputer (CPU 11) in the electronic musical instrument 1H. This reproduction process is a timer interrupt process executed in synchronization with the operation clock from the timer 19 (cycle of about 1 ms). This reproduction process is a program RO
It is a series of processes according to the control program stored in M12, and is sequentially executed by the following steps.

【0053】ステップ40:走行状態フラグRUNが
『1』かどうかを判定し、『1』(YES)の場合は自
動演奏データの再生処理を行うことを意味するので次の
ステップ41以降に進み、『0』(NO)の場合は再生
処理を行わないことを意味するので直ちにリターンし、
次の割り込みタイミングまで待機する。 ステップ41:一時停止フラグPAUSEが『0』かど
うかを判定し、『0』(YES)の場合は一時停止中な
ので次のステップ42に進み、『1』(NO)の場合は
ステップ4Bにジャンプする。一時停止については後述
する。 ステップ42:タイミングカウンタTIMEが『0』か
どうかを判定し、『0』(YES)の場合は次のステッ
プ43に進み、『0』以外の値(NO)の場合は次のス
テップ49にジャンプする。
Step 40: It is determined whether or not the running state flag RUN is "1". If "1" (YES), it means that the reproduction processing of the automatic performance data is performed. If it is "0" (NO), it means that the reproduction process is not performed, and therefore the process immediately returns.
Wait until the next interrupt timing. Step 41: It is judged whether or not the pause flag PAUSE is "0". If "0" (YES), it means that the vehicle is temporarily stopped, so the procedure advances to the next step 42, and if "1" (NO), jump to step 4B. To do. The suspension will be described later. Step 42: It is determined whether or not the timing counter TIME is "0". If "0" (YES), the process proceeds to the next step 43, and if it is a value other than "0" (NO), the process jumps to the next step 49. To do.

【0054】ステップ43:ステップ42又はステップ
47でタイミングカウンタTIMEが『0』だと判定さ
れたので、ここでは、RAM12のアドレスを進め、そ
のアドレス位置から自動演奏データを読み出す。自動演
奏データはイベントデータ(チャンネルナンバを含む)
とデルタタイムデータとの組み合わせ複数で構成され
る。 ステップ44:前記ステップ43で読み出されたデータ
はデルタタイムデータかどうかを判定し、デルタタイム
データ(YES)の場合はステップ45に進み、そうで
ない他のイベントデータ(NO)の場合はステップ46
に進む。 ステップ45:タイミングカウンタTIMEにステップ
43で読み出されたデルタタイムデータを格納する。
Step 43: Since it is determined in step 42 or step 47 that the timing counter TIME is "0", the address of the RAM 12 is advanced and the automatic performance data is read from that address position. Automatic performance data is event data (including channel number)
And a combination of delta time data. Step 44: It is judged whether or not the data read out in the step 43 is delta time data, and if it is delta time data (YES), the process proceeds to step 45, and if it is other event data (NO), step 46.
Proceed to. Step 45: The delta time data read in step 43 is stored in the timing counter TIME.

【0055】ステップ46:ステップ43で読み出され
たイベントデータに対応した処理(イベント対応処理)
を実行する。図14はこのイベント対応処理の詳細を示
す図である。このイベント対応処理は次のようなステッ
プで順番に実行される。 ステップ460:この実施例では自動演奏データが1〜
16チャンネルのデータを含み、そのうちのチャンネル
ナンバCH1をテンポ制御用のチャンネルとし、キーオ
ンイベントをテンポ制御用マークとして使用しているの
で、ここでは、前記ステップ43で読み出されたイベン
トデータがチャンネルナンバCH1のイベントかどうか
を判定し、YESの場合はステップ461に進み、NO
の場合はこれ以外のチャンネルナンバのイベントなので
ステップ465に進む。なお、チャンネルナンバCH1
のキーオンイベントは、各拍タイミングの位置に記憶さ
れており、各イベントのキーコードは、3拍子の曲の場
合はC3,C♯3,D3,C3,C♯3,D3・・・の
順に、2,4拍子の場合はC3,D3,C3,D3の順
に並んでいる。
Step 46: Processing corresponding to the event data read in step 43 (event corresponding processing)
To execute. FIG. 14 is a diagram showing details of this event handling process. This event handling process is sequentially executed in the following steps. Step 460: In this embodiment, the automatic performance data is 1 to
Since 16 channels of data are included, of which the channel number CH1 is used as the tempo control channel and the key-on event is used as the tempo control mark, the event data read in step 43 is the channel number. It is determined whether the event is CH1. If YES, the process proceeds to step 461 and NO.
In the case of, since it is an event of a channel number other than this, the process proceeds to step 465. The channel number CH1
The key-on event of is stored in each beat timing position, and the key code of each event is C3, C # 3, D3, C3, C # 3, D3, ... , 2 and 4 beats, they are arranged in the order of C3, D3, C3, D3.

【0056】ステップ461:前記ステップ460でチ
ャンネルナンバCH1のイベントだと判定されたので、
ここでは、キーオンレシーブフラグKON_RCVが
『1』かどうかを判定し、『1』(YES)の場合はス
テップ462に進み、『0』(NO)の場合はステップ
463に進む。 ステップ462:前記ステップ461でキーオンレシー
ブフラグKON_RCVが『1』であるということは、
チャンネルナンバCH1のイベントが読み出される前に
指揮棒20からMIDIインターフェイス27及び1B
を介して既にテンポキーオン信号が入力したことを意味
するので、ここでは、そのキーオンレシーブフラグKO
N_RCVに『0』をセットし、ステップ47に進む。
Step 461: Since it is determined in step 460 that the event is the channel number CH1,
Here, it is determined whether the key-on receive flag KON_RCV is "1". If "1" (YES), the process proceeds to step 462, and if "0" (NO), the process proceeds to step 463. Step 462: The fact that the key-on receive flag KON_RCV is “1” in step 461 means that
Before the event of the channel number CH1 is read from the baton 20 to the MIDI interfaces 27 and 1B.
Since it means that the tempo key-on signal has already been input via, the key-on receive flag KO will be described here.
"0" is set in N_RCV, and the process proceeds to step 47.

【0057】ステップ463:前記ステップ461でキ
ーオンレシーブフラグKON_RCVが『0』であると
いうことは、前記ステップ43で読み出されたチャンネ
ルナンバCH1のイベントに対応したテンポキーオン信
号が未だ入力していないことを意味するので、ここで
は、そのキーコードレジスタKEYCODEに読み出さ
れたイベントのキーコードを格納する。 ステップ464:テンポキーオン信号が未だ入力してい
ないので、一時停止フラグPAUSEに『1』をセット
し、次のステップ47に進む。一時停止フラグPAUS
Eに『1』がセットされることによって、これ以降はス
テップ41の判定がNOとなり、ステップ42〜4Aは
実行されなくなる。 ステップ465:前記ステップ460でチャンネルナン
バCH1以外のイベントだと判定されたので、ここで
は、そのイベントを音源回路17に出力する。このと
き、イベントがノートイベントの場合には図3のステッ
プ78によって算出されたダイナミクスに応じてベロシ
ティを修正する。このベロシティの修正によって指揮棒
20の振りの速さなどの動作に応じて楽音の音量を任意
に制御することができる。なお、ベロシティ以外の要
素、例えば音色、ピッチ、効果などを任意に制御するよ
うにしてもよい。
Step 463: The key-on receive flag KON_RCV being "0" in the step 461 means that the tempo key-on signal corresponding to the event of the channel number CH1 read in the step 43 has not been input yet. Therefore, here, the key code of the read event is stored in the key code register KEYCODE. Step 464: Since the tempo key-on signal has not been input yet, the pause flag PAUSE is set to "1" and the routine proceeds to the next step 47. Pause flag PAUS
By setting "1" to E, the determination at step 41 becomes NO thereafter, and steps 42 to 4A are not executed. Step 465: Since the event is determined to be an event other than the channel number CH1 in the step 460, the event is output to the tone generator circuit 17 here. At this time, when the event is a note event, the velocity is corrected according to the dynamics calculated in step 78 of FIG. By correcting the velocity, it is possible to arbitrarily control the volume of the musical sound according to the action such as the swing speed of the baton 20. Elements other than velocity, such as tone color, pitch, and effects, may be controlled arbitrarily.

【0058】ステップ47:前記ステップ45で読み出
されたデルタタイムデータが『0』の場合があるので、
ここでは再びタイミングカウンタTIMEが『0』がど
うかを判定し、『0』(YES)の場合は次のステップ
43に進み、『0』以外の値(NO)の場合は次のステ
ップ49にジャンプする。デルタタイムデータが『0』
ということは、同じタイミングに複数イベントが存在す
ることを意味する。 ステップ48:タイミングレジスタTIMEの格納値に
テンポ係数レジスタT_COEFの格納値(テンポ係
数)を乗じる。ここで、テンポ係数は『1』を基準とし
た値で、この値に応じてテンポが制御される。例えば、
『0.5』であったときはテンポは2倍となり、『2』
であったときはテンポは半分となる。
Step 47: Since the delta time data read in step 45 may be "0",
Here, it is again determined whether the timing counter TIME is "0". If "0" (YES), the process proceeds to the next step 43, and if it is a value other than "0" (NO), the process jumps to the next step 49. To do. Delta time data is "0"
This means that multiple events exist at the same timing. Step 48: The stored value of the timing register TIME is multiplied by the stored value (tempo coefficient) of the tempo coefficient register T_COEF. Here, the tempo coefficient is a value based on "1", and the tempo is controlled according to this value. For example,
When it was "0.5", the tempo doubled, and "2"
Then the tempo is halved.

【0059】ステップ49:タイミングレジスタTIM
Eの値を『1』だけデクリメント処理する。 ステップ4A:デルタアキュムレートレジスタDELT
A_ACMの値を『1』だけインクリメント処理する。
デルタアキュムレートレジスタDELTA_ACMはチ
ャンネルナンバCH1から読み出されるイベント間の時
間を計時するものである。 ステップ4B:インターバルレジスタINTERVAL
の値を『1』だけインクリメント処理する。インターバ
ルレジスタINTERVALは指揮棒20から送信され
てくるテンポキーオン信号の時間間隔を計時するもので
ある。
Step 49: Timing register TIM
The value of E is decremented by "1". Step 4A: Delta Accumulate Register DELT
The value of A_ACM is incremented by "1".
The delta accumulation register DELTA_ACM counts the time between events read from the channel number CH1. Step 4B: Interval register INTERVAL
The value of is incremented by "1". The interval register INTERVAL measures the time interval of the tempo key-on signal transmitted from the baton 20.

【0060】ステップ4C:テンポキーオン受信処理を
行う。このテンポキーオン受信処理は指揮棒20からテ
ンポキーオン信号を受信する毎に行われる処理である。
従って、テンポキーオン信号が受信されない場合には実
質的な処理は行われない。図15はこのテンポキーオン
受信処理の詳細を示す図である。このテンポキーオン受
信処理は次のようなステップで順番に実行される。 ステップ4C0:指揮棒20からMIDIインターフェ
イス27及び1Bを介してテンポキーオン信号の受信有
りかどうかを判定し、受信有り(YES)の場合はステ
ップ4C1に進み、受信無し(NO)の場合は図13の
再生処理にリターンし、次の割り込みタイミングまで待
機する。
Step 4C: Perform tempo key-on reception processing. This tempo key-on reception process is a process performed each time a tempo key-on signal is received from the baton 20.
Therefore, when the tempo key-on signal is not received, no substantial process is performed. FIG. 15 is a diagram showing details of the tempo key-on reception processing. This tempo key-on reception process is sequentially executed in the following steps. Step 4C0: It is judged whether or not the tempo key-on signal is received from the baton 20 via the MIDI interfaces 27 and 1B. If it is received (YES), the process proceeds to step 4C1, and if it is not received (NO), the process shown in FIG. Then, the process returns to the playback process of and waits until the next interrupt timing.

【0061】ステップ4C1:一時停止フラグPAUS
Eが『1』かどうかを判定し、『1』(YES)の場合
はステップ4C2に進み、『0』(NO)の場合はステ
ップ4C9に進む。 ステップ4C2:前記ステップ4C1で一時停止フラグ
PAUSEが『1』であると判定されたということは、
テンポキーオン信号の受信よりも先にチャンネルナンバ
CH1のイベントデータが読み出され、そのキーコード
がステップ463で既にキーコードレジスタKEYCO
DEに格納されたことを意味するので、ここでは、その
受信テンポキーオン信号のキーコードとキーコードレジ
スタKEYCODEに格納されているキーコードとが一
致するかどうかを判定し、一致する(YES)場合はス
テップ4C3に進み、一致しない(NO)場合は図13
の再生処理にリターンし、次の割り込みタイミングまで
待機する。
Step 4C1: Pause flag PAUS
It is determined whether E is "1". If "1" (YES), the process proceeds to step 4C2, and if "0" (NO), the process proceeds to step 4C9. Step 4C2: The fact that the pause flag PAUSE is determined to be "1" in the step 4C1 means that
Event data of the channel number CH1 is read prior to the reception of the tempo key-on signal, and the key code thereof is already read in step 463 in the key code register KEYCO.
Since it means that the key code of the received tempo key-on signal matches the key code stored in the key code register KEYCODE, it means that the key code is stored in the DE, and if they match (YES). Proceeds to step 4C3, and if they do not match (NO), the process shown in FIG.
Then, the process returns to the playback process of and waits until the next interrupt timing.

【0062】ステップ4C3:インターバルレジスタI
NTERVALの値とデルタアキュムレートレジスタD
ELTA_ACMの値との比をレートレジスタRATE
に格納する。すなわち、指揮棒20から送信されてくる
テンポキーオン信号の時間間隔と、実際にチャンネルナ
ンバCH1のイベントが読み出される時間間隔との比が
レートレジスタRATEに格納される。 ステップ4C4:レートレジスタRATEの値にテンポ
係数レジスタT_COEFのテンポ係数を乗じる。 ステップ4C5:前記ステップ4C4の処理の結果、テ
ンポ係数レジスタT_COEFの値が所定値よりも大き
く、あるいは小さくならないようにリミット処理を行
う。 ステップ4C6:デルタアキュムレートレジスタDEL
TA_ACMに『0』をセットする。 ステップ4C7:インターバルレジスタINTERVA
Lに『0』をセットする。 ステップ4C8:一時停止フラグPUASEに『0』を
セットする。これによって図13の再生処理が再び開始
するようになる。
Step 4C3: Interval register I
NTERVAL value and Delta accumulated register D
The ratio with the value of ELTA_ACM is set to the rate register RATE
To be stored. That is, the ratio between the time interval of the tempo key-on signal transmitted from the baton 20 and the time interval at which the event of the channel number CH1 is actually read is stored in the rate register RATE. Step 4C4: Multiply the value of the rate register RATE by the tempo coefficient of the tempo coefficient register T_COEF. Step 4C5: As a result of the processing of step 4C4, limit processing is performed so that the value of the tempo coefficient register T_COEF does not become larger or smaller than a predetermined value. Step 4C6: Delta accumulated register DEL
Set "0" to TA_ACM. Step 4C7: Interval register INTERVA
Set “0” to L. Step 4C8: "0" is set to the pause flag PUASE. As a result, the reproduction process of FIG. 13 is started again.

【0063】ステップ4C9:前記ステップ4C1で一
時停止フラグPAUSEが『0』であると判定されたと
いうことは、チャンネルナンバCH1のイベントデータ
がまだ読み出されていないことを意味するので、この時
点以降に最初に現れる次のチャンネルナンバCH1のイ
ベントをサーチして読み出す。 ステップ4CA:受信テンポキーオン信号のキーコード
とサーチしたチャンネルナンバCH1のキーコードとが
一致するかどうかを判定し、一致する(YES)場合は
ステップ4CAに進み、一致しない(NO)場合は図1
3の再生処理にリターンし、次の割り込みタイミングま
で待機する。
Step 4C9: The fact that the pause flag PAUSE is determined to be "0" in the above step 4C1 means that the event data of the channel number CH1 has not been read yet. The event of the next channel number CH1 that first appears at is searched for and read. Step 4CA: It is determined whether or not the key code of the received tempo key-on signal matches the key code of the searched channel number CH1. If they match (YES), the process proceeds to step 4CA, and if they do not match (NO), the process shown in FIG.
The process returns to the reproduction process of No. 3 and waits until the next interrupt timing.

【0064】ステップ4CB:前記ステップ4C8でサ
ーチしたチャンネルナンバCH1のイベントがサーチさ
れるまでに読み出された各イベントのデルタタイムデー
タの累算値にテンポ係数レジスタT_COEFのテンポ
係数を乗じたものと、その時点におけるタイミングレジ
スタTIMEの値とをデルタアキュムレートレジスタD
ELTA_ACMに加算する。 ステップ4CC:前記ステップ4C8でサーチしたイベ
ントまでのデルタタイム及びタイミングレジスタTIM
Eの値に1/Bを乗じる。ここでBは1以上の値とす
る。すなわち、指揮棒20からのテンポキーオン信号を
受信した時点以降の再生速度を上げて、テンポキーオン
信号受信タイミングと拍タイミングとを近づけるため
に、各イベントのデルタタイム及びタイミングレジスタ
TIMEの値を小さくする。 ステップ4CD:キーオンレシーブフラグKON_RC
Vに『1』をセットし、ステップ4CEに進む。ステッ
プ4CEからステップ4CJまでは前記ステップ4C3
から前記ステップ4C7までと同じなので、その説明は
省略する。
Step 4CB: The accumulated value of the delta time data of each event read until the event of the channel number CH1 searched in step 4C8 is searched for is multiplied by the tempo coefficient of the tempo coefficient register T_COEF. , The value of the timing register TIME at that time, and the delta accumulation register D
Add to ELTA_ACM. Step 4CC: Delta time and timing register TIM until the event searched in Step 4C8
Multiply the value of E by 1 / B. Here, B is a value of 1 or more. That is, the delta time of each event and the value of the timing register TIME are reduced in order to increase the reproduction speed after the time when the tempo key-on signal is received from the baton 20 and bring the tempo key-on signal reception timing close to the beat timing. . Step 4 CD: Key-on receive flag KON_RC
Set "1" to V and proceed to step 4CE. From step 4CE to step 4CJ, the above-mentioned step 4C3
To Step 4C7, the description thereof will be omitted.

【0065】次に、このテンポキーオン信号を入力する
ことによって、電子楽器1H内のマイクロコンピュータ
(CPU11)がどのようにして再生処理を行うのか、
その動作例を図16を用いて説明する。図16は、指揮
棒20から電子楽器1Hに取り込まれるテンポキーオン
信号の入力タイミングと、自動演奏データの読み出しタ
イミンイグとの関係を示す図である。タイミングt0で
は図13のステップ40〜ステップ42を経て、ステッ
プ43でチャンネルナンバCH3のイベントが読み出さ
れ、図14のステップ465でそのイベントが音源回路
に出力される。次のステップ43でデルタタイムD0が
読み出され、ステップ45でタイミングレジスタTIM
EにそのデルタタイムD0が書き込まれる。
Next, by inputting the tempo key-on signal, how the microcomputer (CPU 11) in the electronic musical instrument 1H performs the reproduction process,
An example of the operation will be described with reference to FIG. FIG. 16 is a diagram showing the relationship between the input timing of the tempo key-on signal fetched from the baton 20 into the electronic musical instrument 1H and the reading timing of the automatic performance data. At timing t0, the event of the channel number CH3 is read at step 43 through steps 40 to 42 in FIG. 13, and the event is output to the tone generator circuit at step 465 in FIG. In the next step 43, the delta time D0 is read out, and in step 45, the timing register TIM
The delta time D0 is written in E.

【0066】その後、デルタタイムD0に対応する時間
が経過することよって、タイミングレジスタTIMEの
値も0となり、タイミングt1ではステップ40〜ステ
ップ42を経て、ステップ43によってチャンネルナン
バCH1のイベントが読み出される。このタイミングt
1ではまだテンポキーオン信号は受信されていないの
で、図14のステップ461ではNOと判定され、ステ
ップ463でイベントのキーコード『C3』がキーコー
ドレジスタKEYCODEに格納され、一時停止フラグ
PAUSEに『1』がセットされる。次のステップ43
でデルタタイムD1が読み出され、ステップ45でタイ
ミングレジスタTIMEにそのデルタタイムD1が書き
込まれる。タイミングt1よりも少し遅れたタイミング
t2で今度は指揮棒20から電子楽器1Hに対してキー
コード『C3』のテンポキーオン信号とダイナミクスが
受信される。これによって、図15のテンポキーオン受
信処理のステップ4C0〜ステップ4C2を経て、ステ
ップ4C3〜ステップ4C8の処理が行われ、インター
バルレジスタINTERVALの値とデルタアキュムレ
ートレジスタDELTA_ACMの値との比であって、
例えばほぼ1に近い値がレートレジスタRATEに新た
に格納され、テンポ係数レジスタT_COEFには前回
とほとんど同じテンポ係数が格納され、インターバルレ
ジスタINTERVAL、デルタアキュムレートレジス
タDELTA_ACM及び一時停止フラグPAUSEに
『0』がセットされる。
After that, since the time corresponding to the delta time D0 has elapsed, the value of the timing register TIME also becomes 0, and at timing t1, the event of the channel number CH1 is read by step 43 through steps 40 to 42. This timing t
Since the tempo key-on signal has not been received in No. 1 in step 1, NO is determined in step 461 of FIG. 14, the key code "C3" of the event is stored in the key code register KEYCODE in step 463, and "1" is set in the pause flag PAUSE. ] Is set. Next step 43
In step 45, the delta time D1 is read out, and in step 45, the delta time D1 is written in the timing register TIME. At timing t2, which is a little later than timing t1, the baton 20 receives the tempo key-on signal of the key code "C3" and the dynamics from the baton 20 to the electronic musical instrument 1H. As a result, the processing of steps 4C3 to 4C8 is performed through steps 4C0 to 4C2 of the tempo key-on reception processing of FIG. 15, and the ratio of the value of the interval register INTERVAL and the value of the delta accumulation register DELTA_ACM is
For example, a value close to 1 is newly stored in the rate register RATE, almost the same tempo coefficient as the previous time is stored in the tempo coefficient register T_COEF, and "0" is stored in the interval register INTERVAL, the delta accumulation rate register DELTA_ACM and the pause flag PAUSE. Is set.

【0067】その後、デルタタイムD1に対応する時間
が経過することよって、タイミングレジスタTIMEの
値も0となり、タイミングt3ではチャンネルナンバC
H2のイベントが読み出され、図14のステップ465
でそのイベントが音源回路に出力される。このとき、ノ
ートイベントのベロシティは受信されたダイナミクスに
応じて修正される。次のステップ43でデルタタイムD
2が読み出され、ステップ45でタイミングレジスタT
IMEにそのデルタタイムD2が書き込まれる。以下、
同様にして各タイミングt3〜t7でチャンネルナンバ
CH3〜CH6のイベント及びデルタタイムD3〜D6
が順次読み出され、それぞれのイベントが音源回路に出
力される。その後、デルタタイムD6に対応する時間を
計時中(タイミングレジスタTIMEのデクリメント処
理中)のタイミングt8で今度は指揮棒20から電子楽
器1Hに対してキーコード『C♯3』のテンポキーオン
信号とダイナミクスが受信される。これによって、図1
5のテンポキーオン受信処理のステップ4C0及びステ
ップ4C1を経て、ステップ4C9〜4CJの処理が行
われる。ステップ4C9ではチャンネルナンバCH1の
キーコード『C♯3』のイベントが直ぐにサーチされる
ので、ステップ4CAを経て、ステップ4CBの処理が
行われる。ステップ4CBでは、チャンネルナンバCH
1のイベントがサーチされるまでの間にデルタタイムは
存在しなかったので、ここではデルタタイムの累算値は
『0』であり、タイミングレジスタTIMEの値だけが
デルタアキュムレートレジスタDELTA_ACMに加
算される。これによって、デルタアキュムレートレジス
タDELTA_ACMの値とインターバルレジスタIN
TERVALの値との関係は:デルタアキュムレートD
ELTA_ACMの方がインターバルレジスタINTE
RVALよりも大きくなる。
After that, since the time corresponding to the delta time D1 has elapsed, the value of the timing register TIME also becomes 0, and the channel number C at the timing t3.
The event of H2 is read, and step 465 of FIG. 14 is performed.
Then the event is output to the tone generator circuit. At this time, the velocity of the note event is modified according to the received dynamics. Delta time D in the next step 43
2 is read out, and the timing register T is read in step 45.
The delta time D2 is written in the IME. Less than,
Similarly, at timings t3 to t7, events of channel numbers CH3 to CH6 and delta times D3 to D6.
Are sequentially read and each event is output to the tone generator circuit. After that, at a timing t8 when the time corresponding to the delta time D6 is being measured (during decrement processing of the timing register TIME), this time the baton 20 sends to the electronic musical instrument 1H the tempo key-on signal of the key code "C # 3" and the dynamics. Is received. As a result, FIG.
After the step 4C0 and the step 4C1 of the tempo key-on reception process of 5, the processes of steps 4C9 to 4CJ are performed. In step 4C9, the event of the key code "C # 3" of the channel number CH1 is immediately searched, so the processing of step 4CB is performed after step 4CA. In step 4CB, the channel number CH
Since the delta time did not exist until the 1 event was searched, the accumulated value of the delta time is "0", and only the value of the timing register TIME is added to the delta accumulation register DELTA_ACM. It As a result, the value of the delta accumulation register DELTA_ACM and the value of the interval register IN
The relationship with the TERVAL value is: Delta accumulation D
ELTA_ACM is the interval register INTE
Greater than RVAL.

【0068】ステップ4CCではテンポキーオン信号を
受信したタイミングt8以降の再生速度を上げるため
に、各イベントのデルタタイム及びタイミングレジスタ
TIMEの値にB分の1を乗じる。ステップ4CDでは
キーオンレシーブフラグKON_RCVに『1』がセッ
トされ、ステップ4CE〜ステップ4CJではインター
バルレジスタINTERVALの値とデルタアキュムレ
ートレジスタDELTA_ACMの値との比(1より小
さい値)がレートレジスタRATEに新たに格納され、
テンポ係数レジスタT_COEFには前回よりも小さな
テンポ係数が格納され、デルタアキュムレートレジスタ
DELTA_ACM及びインターバルレジスタINTE
RVALに『0』がセットされるようになる。その後、
タイミングレジスタTIMEの値が0となり、タイミン
グt9でチャンネルナンバCH1のイベントが読み出さ
れることによって、図14のステップ462でキーオン
レシーブフラグKON_RCVに『0』がセットされ
る。以下、同様にして各タイミングでチャンネルナンバ
のイベント及びデルタタイムがテンポ係数レジスタT_
COEFに格納されている1よりも小さなテンポ係数に
よって修正を加えられながら順次読み出され、それぞれ
のイベントが音源回路に出力されるようになる。すなわ
ち、指揮棒20からのテンポキーオン信号の受信タイミ
ングの方が自動演奏データの読み出しタイミングよりも
早い場合には自動演奏データの再生処理のテンポがアッ
プし、逆の場合には自動演奏データの再生処理のテンポ
がダウンする。
In step 4CC, the delta time of each event and the value of the timing register TIME are multiplied by 1 / B in order to increase the reproduction speed after the timing t8 when the tempo key-on signal is received. In step 4CD, the key-on receive flag KON_RCV is set to "1", and in steps 4CE to 4CJ, the ratio (value smaller than 1) between the value of the interval register INTERVAL and the value of the delta accumulation rate register DELTA_ACM is newly added to the rate register RATE. Stored,
The tempo coefficient register T_COEF stores a smaller tempo coefficient than the previous time, and the delta accumulation register DELTA_ACM and the interval register INTE are stored.
"0" will be set in RVAL. afterwards,
The value of the timing register TIME becomes 0, and the event of the channel number CH1 is read at the timing t9, so that the key-on receive flag KON_RCV is set to "0" in step 462 of FIG. Similarly, at each timing, the channel number event and the delta time are calculated in the tempo coefficient register T_.
The events are sequentially read out while being corrected by the tempo coefficient smaller than 1 stored in the COEF, and the respective events are output to the tone generator circuit. That is, if the reception timing of the tempo key-on signal from the baton 20 is earlier than the read timing of the automatic performance data, the tempo of the reproduction processing of the automatic performance data is increased, and in the opposite case, the reproduction of the automatic performance data is performed. Processing tempo goes down.

【0069】なお、上述の実施例では、身振り動作を検
出するためのセンサとして、圧電ジャイロセンサに限ら
ず、加速度センサや、磁気や光を用いたものであっても
よい。例えば、身振り動作を撮像し、画像処理によって
身振り動作を検出するようなものでもよい。また、これ
らのセンサを複数個組み合わせてもよい。また、上述の
実施例では、身振り動作の特徴点として圧電ジャイロセ
ンサからの出力のピーク及び谷を抽出する場合について
説明したが、これに限らず、センサの種類を変えるなど
して、他の条件を用いてその特徴点を抽出するようにし
てもよい。さらに、上述の実施例では、MIDIインタ
ーフェイスを介して接続された指揮棒20と電子楽器1
Hを例に説明したが、両者を一体で構成してもよいこと
はいうまでもない。また、電子楽器1Hの発生するテン
ポクロックを外部装置に供給して、外部装置の演奏テン
ポを制御するように構成してもよい。
In the above-described embodiment, the sensor for detecting the gesture motion is not limited to the piezoelectric gyro sensor, but may be an acceleration sensor, or a magnet or light sensor. For example, the gesture motion may be captured and the gesture motion may be detected by image processing. Also, a plurality of these sensors may be combined. Further, in the above-described embodiment, the case where the peak and the valley of the output from the piezoelectric gyro sensor are extracted as the characteristic point of the gesture motion is described, but the present invention is not limited to this, and the type of the sensor is changed, and other conditions You may make it extract the feature point using. Further, in the above-described embodiment, the baton 20 and the electronic musical instrument 1 connected via the MIDI interface are used.
Although H has been described as an example, it goes without saying that both may be integrally formed. Alternatively, the tempo clock generated by the electronic musical instrument 1H may be supplied to an external device to control the performance tempo of the external device.

【0070】上述の実施例では、指揮棒20がピーク及
び谷を検出し、さらにその動作種類を検出する場合につ
いて説明したが、指揮棒20は単に身振り動作に応じた
センサ値を出力し、電子楽器1H側でこの出力に応じた
検出(ピーク及び谷検出、動作種類検出)処理などを行
うようにしてもよいことはいうまでもない。また、上述
の実施例では、圧電ジャイロセンサを2つを用いて身振
り動作を検出する場合について説明したが、3つ以上用
いてもよいことはいうまでもない。この場合、3拍子用
と、2/4拍子用とで異なる位置に設けられたセンサを
それぞれ用いてもよいし、3つ以上のセンサ出力を総合
判断して身振り動作を検出するようにしてもよい。
In the above-mentioned embodiment, the case where the baton 20 detects the peak and the valley and further detects the operation type thereof is explained. However, the baton 20 simply outputs the sensor value according to the gesture motion, and It goes without saying that the musical instrument 1H side may perform detection processing (peak and valley detection, operation type detection) according to this output. Further, in the above embodiment, the case where the gesture motion is detected by using two piezoelectric gyro sensors has been described, but it goes without saying that three or more may be used. In this case, sensors provided at different positions for three beats and two quarter beats may be used respectively, or a gesture motion may be detected by comprehensively judging outputs of three or more sensors. Good.

【0071】また、上述の実施例では、センサを指揮棒
に内蔵する場合について説明したが、操作者の身体(例
えば手など)に装着したり、マイクやその他の機器(例
えばカラオケ装置のリモコンなど)に内蔵したりしても
よい。この場合、センサ出力の送出は有線又は無線で行
えばよい。例えば、マイクに内蔵した場合、カラオケの
イントロ部分でのみテンポ制御を有効とし、マイクの身
振り動作に応じてカラオケの演奏テンポが決定されるよ
うにすればよい。実施例では演奏中常にテンポを制御す
る場合について説明したが、演奏に先立ってテンポを決
定する場合に用いてもよい。実施例では、演奏データが
イベントとデルタタイムから構成される場合について説
明したが、これ以外の記憶方式であってもよいことはい
うまでもない。例えば、演奏データをイベントと絶対時
間との組で構成する。また、デルタタイムの単位にはm
sなどの時間の単位を用いても、音符の長さ(例えば4
分音符の1/24など)を用いてもよい。
In the above embodiment, the case where the sensor is built into the baton has been described. However, the sensor is attached to the operator's body (for example, hand), a microphone or other device (for example, remote controller of a karaoke device, etc.). ) May be built in. In this case, the sensor output may be sent by wire or wirelessly. For example, when the microphone is built in, the tempo control may be enabled only in the intro portion of karaoke, and the performance tempo of karaoke may be determined according to the gesture motion of the microphone. In the embodiment, the case where the tempo is always controlled during the performance has been described, but it may be used when the tempo is decided prior to the performance. In the embodiment, the case where the performance data is composed of the event and the delta time has been described, but it goes without saying that a storage method other than this may be used. For example, performance data is composed of a set of event and absolute time. The unit of delta time is m
Even if a time unit such as s is used, the length of the note (for example, 4
(Eg, 1 / 24th of a quarter note) may be used.

【0072】実施例では、テンポの制御は、デルタタイ
ムの値にテンポ係数を乗じ、デルタタイムの値を増減さ
せることによって行う場合について説明したが、処理の
周期(割り込みタイミング)を変化させることによって
テンポを変化させるようにしてもよい。実施例では、テ
ンポ制御用のデータと自動演奏用のデータを混在させ、
チャンネルナンバで区別する場合について説明したが、
両者を予め別々に設けてもよい。例えば、テンポを制御
する音符位置に対応するメモリのアドレスを記憶したも
のを、テンポ制御用データとしてもよい。テンポが滑ら
かに変化するように、テンポが変化したとき、テンポ係
数レジスタT_COEFの値を前の値と補間するように
してもよい。ダイナミクスの制御も同様に滑らかに変化
させてもよい。
In the embodiment, the tempo control is performed by multiplying the delta time value by the tempo coefficient and increasing or decreasing the delta time value, but by changing the processing cycle (interrupt timing). The tempo may be changed. In the embodiment, the tempo control data and the automatic performance data are mixed,
I explained the case of distinguishing by channel number,
Both may be provided separately in advance. For example, the memory for storing the address of the memory corresponding to the note position for controlling the tempo may be used as the tempo control data. When the tempo changes, the value of the tempo coefficient register T_COEF may be interpolated with the previous value so that the tempo changes smoothly. The dynamics control may be changed smoothly as well.

【0073】実施例では、ピーク値に所定値を乗算して
ダイナミクスを算出する場合について説明したが、所定
値を加算してダイナミクスを算出してもよい。また、ピ
ークの大きさの変化に基づいて、乗算又は加算する値を
変化させてもよいし、複数の所定値の中から選択できる
ようにしてもよい。図6のダイナミクス算出処理1のよ
うにテーブル参照によってダイナミクスを求めるものに
ついては、複数のテーブルを備えておき、ピークの大き
さに応じていずれかのテーブルを適宜選択するようにし
てもよい。上述の実施例ではダイナミクスに応じてベロ
シティを変化させる場合について説明したが、ダイナミ
クスに応じて音色、音高、効果などを変化させるように
してもよい。また、これに限らず、演奏パート数などを
増減するようにしてもよいし、これらの少なくとも1つ
を制御することで演奏のダイナミクスを制御するように
してもよい。
In the embodiment, the case where the peak value is multiplied by a predetermined value to calculate the dynamics has been described, but the predetermined value may be added to calculate the dynamics. Further, the value to be multiplied or added may be changed based on the change in the peak size, or may be selected from a plurality of predetermined values. As for the dynamics calculation processing 1 shown in FIG. 6 in which the dynamics are obtained by referring to the tables, a plurality of tables may be provided and any one of the tables may be appropriately selected according to the peak size. In the above embodiment, the case where the velocity is changed according to the dynamics has been described, but the tone color, pitch, effect, etc. may be changed according to the dynamics. The number of performance parts may be increased or decreased without being limited to this, and the dynamics of the performance may be controlled by controlling at least one of them.

【0074】図8のダイナミクス算出処理3では、4つ
のピーク値の移動平均を取り、それをダイナミクスとす
る場合について説明したが、これ以外の個数のピーク値
の移動平均を取り、それをダイナミクスとしてもよいこ
とはいうまでもない。また、図9及び図10のダイナミ
クス算出処理では動作種類『1』の前回ピーク値との平
均を取り、それをダイナミクスとする場合について説明
したが、図7のステップ782、ステップ784及びス
テップ786によって算出された各動作種類『1』、
『2』、『3』のダイナミクスとの平均を取り、それを
その動作種類におけるダイナミクスとして出力してもよ
い。
In the dynamics calculation process 3 of FIG. 8, a case has been described in which the moving average of four peak values is taken and used as the dynamics, but the moving average of the peak values of other numbers is taken and used as the dynamics. It goes without saying that it is good. Further, in the dynamics calculation processing of FIGS. 9 and 10, a case has been described in which the average of the previous peak value of the operation type “1” is taken and the average is taken as the dynamics, but the steps 782, 784 and 786 of FIG. Each calculated motion type “1”,
You may take the average with the dynamics of "2" and "3", and output it as the dynamics in the operation type.

【0075】[0075]

【発明の効果】この発明のダイナミクス制御装置によれ
ば、操作者の手振り動作の癖などに伴うダイナミクスの
バラツキを無くし、操作者の意図したダイナミクスを与
えることができる。
According to the dynamics control device of the present invention, it is possible to eliminate the variation in dynamics due to the habit of the operator's hand movements and to provide the dynamics intended by the operator.

【図面の簡単な説明】[Brief description of drawings]

【図1】 電子楽器と、この電子楽器に操作者の手振り
動作に応じたテンポ制御信号を出力する指揮棒との詳細
構成及び両者間の接続関係を示すハードブロック図であ
る。
FIG. 1 is a hardware block diagram showing a detailed configuration of an electronic musical instrument and a baton that outputs a tempo control signal to the electronic musical instrument in response to a hand gesture of an operator, and a connection relationship between the two.

【図2】 図1の指揮棒内のマイクロコンピュータが処
理するセンサ出力処理の一例を示す図である。
FIG. 2 is a diagram showing an example of a sensor output process performed by a microcomputer in the baton of FIG.

【図3】 図2のピーク検出処理の詳細を示す図であ
る。
FIG. 3 is a diagram showing details of the peak detection process of FIG.

【図4】 図3のピーク種類判定処理の詳細を示す図で
ある。
FIG. 4 is a diagram showing details of peak type determination processing of FIG.

【図5】 図2の谷検出処理の詳細を示す図である。FIG. 5 is a diagram showing details of the valley detection process of FIG.

【図6】 図3のダイナミクス算出処理の一例であるダ
イナミクス算出処理1の詳細を示す図である。
6 is a diagram showing details of a dynamics calculation process 1 which is an example of the dynamics calculation process of FIG.

【図7】 図3のダイナミクス算出処理の一例であるダ
イナミクス算出処理2の詳細を示す図である。
7 is a diagram showing details of a dynamics calculation process 2 which is an example of the dynamics calculation process of FIG.

【図8】 図3のダイナミクス算出処理の一例であるダ
イナミクス算出処理3の詳細を示す図である。
FIG. 8 is a diagram showing details of a dynamics calculation process 3 which is an example of the dynamics calculation process of FIG.

【図9】 図3のダイナミクス算出処理の一例であるダ
イナミクス算出処理4の詳細を示す図である。
9 is a diagram showing details of a dynamics calculation process 4 which is an example of the dynamics calculation process of FIG.

【図10】 図3のダイナミクス算出処理の一例である
ダイナミクス算出処理5の詳細を示す図である。
10 is a diagram showing details of a dynamics calculation process 5 which is an example of the dynamics calculation process of FIG.

【図11】 演算式によって求められた角度θと動作種
類との関係を示す図である。
FIG. 11 is a diagram showing a relationship between an angle θ obtained by an arithmetic expression and a motion type.

【図12】 指揮棒が三角形の軌跡を描くようにして3
拍子で手振り動作される場合のセンサ出力処理の概念を
示す模式図である。
[Fig. 12] The baton draws a triangular locus and 3
It is a schematic diagram which shows the concept of a sensor output process at the time of a hand gesture motion.

【図13】 電子楽器内のマイクロコンピュータが処理
する楽音の再生処理の一例を示す図である。
FIG. 13 is a diagram showing an example of a reproduction process of a musical sound processed by a microcomputer in the electronic musical instrument.

【図14】 図13のイベント対応処理の詳細を示す図
である。
14 is a diagram showing details of the event handling process of FIG.

【図15】 図13のテンポキーオン受信処理の詳細を
示す図である。
FIG. 15 is a diagram showing details of the tempo key-on reception process of FIG. 13.

【図16】 指揮棒から電子楽器に取り込まれるテンポ
キーオン信号の入力タイミングと、自動演奏データの読
み出しタイミンイグとの関係を示す図である。
FIG. 16 is a diagram showing a relationship between an input timing of a tempo key-on signal fetched from a baton into an electronic musical instrument and a reading timing of automatic performance data.

【符号の説明】[Explanation of symbols]

11,21…CPU、12,22…ROM、13,23
…RAM、14…押鍵検出回路、15,24…スイッチ
検出回路、16…表示回路、17…音源回路、18…効
果付与回路、19,28…タイマ、1A…フロッピーデ
ィスクドライブ(FDD)、1B,27…MIDIイン
ターフェイス(I/F)、1C…鍵盤、1D,29…パ
ネルスイッチ、1E…表示部、1F…サウンドシステ
ム、1G,2E…バス、1H…電子楽器、20…指揮
棒、25,26…A/D、2A…X方向圧電振動ジャイ
ロセンサ、2B…Y方向圧電振動ジャイロセンサ、2
C,2D…ノイズ除去回路
11, 21 ... CPU, 12, 22 ... ROM, 13, 23
... RAM, 14 ... Key pressing detection circuit, 15, 24 ... Switch detection circuit, 16 ... Display circuit, 17 ... Sound source circuit, 18 ... Effect applying circuit, 19, 28 ... Timer, 1A ... Floppy disk drive (FDD), 1B , 27 ... MIDI interface (I / F), 1C ... keyboard, 1D, 29 ... panel switch, 1E ... display section, 1F ... sound system, 1G, 2E ... bass, 1H ... electronic musical instrument, 20 ... baton, 25, 26 ... A / D, 2A ... X-direction piezoelectric vibration gyro sensor, 2B ... Y-direction piezoelectric vibration gyro sensor, 2
C, 2D ... Noise removal circuit

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 操作者の身振り動作に基づいてその動作
種類及び動作量を検出する動作検出手段と、 この動作検出手段によって検出された前記動作種類に応
じて前記動作量を補正する補正する補正手段と、 この補正手段によって補正された前記動作量に基づいて
演奏のダイナミクスを制御する制御手段とから構成され
ることを特徴とする演奏ダイナミクス制御装置。
1. A motion detection unit that detects a motion type and a motion amount based on a gesture motion of an operator, and a correction that corrects the motion amount according to the motion type detected by the motion detection unit. A performance dynamics control device comprising: means and control means for controlling performance dynamics based on the amount of movement corrected by the correction means.
【請求項2】 前記制御手段は前記動作検出手段によっ
て検出された動作種類及び動作量に基づいて演奏のテン
ポを制御することを特徴とする請求項1に記載の演奏ダ
イナミクス制御装置。
2. The performance dynamics control device according to claim 1, wherein the control means controls the tempo of the performance based on the type of motion and the amount of motion detected by the motion detecting means.
JP16917495A 1995-05-02 1995-06-12 Performance dynamics control device Expired - Fee Related JP3149736B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP16917495A JP3149736B2 (en) 1995-06-12 1995-06-12 Performance dynamics control device
US08/643,121 US5663514A (en) 1995-05-02 1996-04-30 Apparatus and method for controlling performance dynamics and tempo in response to player's gesture

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16917495A JP3149736B2 (en) 1995-06-12 1995-06-12 Performance dynamics control device

Publications (2)

Publication Number Publication Date
JPH08339181A true JPH08339181A (en) 1996-12-24
JP3149736B2 JP3149736B2 (en) 2001-03-26

Family

ID=15881625

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16917495A Expired - Fee Related JP3149736B2 (en) 1995-05-02 1995-06-12 Performance dynamics control device

Country Status (1)

Country Link
JP (1) JP3149736B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011008284A (en) * 2010-08-19 2011-01-13 Nintendo Co Ltd Music performance program and music performance device
JP2012518192A (en) * 2009-02-13 2012-08-09 モベア エス.アー Apparatus and method for controlling file reproduction of signal to be reproduced

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU655677B2 (en) 1991-10-08 1995-01-05 Canon Kabushiki Kaisha Electron-emitting device, and electron beam-generating apparatus and image-forming apparatus employing the device
JP3083076B2 (en) 1995-04-21 2000-09-04 キヤノン株式会社 Image forming device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012518192A (en) * 2009-02-13 2012-08-09 モベア エス.アー Apparatus and method for controlling file reproduction of signal to be reproduced
JP2011008284A (en) * 2010-08-19 2011-01-13 Nintendo Co Ltd Music performance program and music performance device

Also Published As

Publication number Publication date
JP3149736B2 (en) 2001-03-26

Similar Documents

Publication Publication Date Title
US5663514A (en) Apparatus and method for controlling performance dynamics and tempo in response to player's gesture
JP3317686B2 (en) Singing accompaniment system
JP3307152B2 (en) Automatic performance control device
JP2001215963A (en) Music playing device, music playing game device, and recording medium
JPH04274498A (en) Automatic player
JP3149736B2 (en) Performance dynamics control device
JP3750699B2 (en) Music playback device
JP3449045B2 (en) Performance control device
JP3152104B2 (en) Tempo control device
JP2969138B2 (en) Pitch detection device
JP3259602B2 (en) Automatic performance device
JP3080261B2 (en) Automatic performance device
JP2003091280A (en) Music controller
JP3427569B2 (en) Music control device
JP3627321B2 (en) Performance control device
JPS62187393A (en) Touch response unit for electronic musical apparatus
JP2555603B2 (en) Music signal generator
JPH0272394A (en) Automatic rhythm play device
JP3279122B2 (en) Tempo control device
JPH08314455A (en) Musical tone controller
JP4040193B2 (en) Electronic musical instruments
JP2007279490A (en) Electronic musical instrument
US20120172099A1 (en) Music game system, computer program of same, and method of generating sound effect data
JP2653232B2 (en) Tempo controller
JP3471480B2 (en) Tempo control device

Legal Events

Date Code Title Description
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 (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090119

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100119

Year of fee payment: 9

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110119

Year of fee payment: 10

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120119

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees