JP2011242718A - 教習装置およびプログラム - Google Patents

教習装置およびプログラム Download PDF

Info

Publication number
JP2011242718A
JP2011242718A JP2010117085A JP2010117085A JP2011242718A JP 2011242718 A JP2011242718 A JP 2011242718A JP 2010117085 A JP2010117085 A JP 2010117085A JP 2010117085 A JP2010117085 A JP 2010117085A JP 2011242718 A JP2011242718 A JP 2011242718A
Authority
JP
Japan
Prior art keywords
key
velocity
data
read
detected
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
JP2010117085A
Other languages
English (en)
Other versions
JP5445856B2 (ja
JP2011242718A5 (ja
Inventor
Tatsuya Dejima
達也 出嶌
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2010117085A priority Critical patent/JP5445856B2/ja
Publication of JP2011242718A publication Critical patent/JP2011242718A/ja
Publication of JP2011242718A5 publication Critical patent/JP2011242718A5/ja
Application granted granted Critical
Publication of JP5445856B2 publication Critical patent/JP5445856B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

【課題】鍵タッチを教習させる教習装置を実現する。
【解決手段】曲を構成する各音の音高およびベロシティVel(音量)を表す曲データを再生すると共に、発音タイミングとなって再生された曲データから抽出したベロシティVelと、その再生音に対応したユーザの押鍵で生じるベロシティVELとの差分であるタッチ誤差ΔVelに応じて出力変化する低周波信号を生成し、この低周波信号をユーザが押鍵中の鍵に配設される電極DKに印加する。これにより、教習者(ユーザ)はタッチ誤差ΔVelの大小で異なる電気ショックを押鍵した指の指腹部によって体感する。例えばベロシティVelに対して押鍵時のベロシティVELが強過ぎれば、電気ショックの度合いが押鍵時点から低減して行く減速感を押鍵した指の指腹部で感じ、一方、弱過ぎれば、電気ショックの度合いが押鍵時点から増加して行く加速感を押鍵した指の指腹部で感じる為、鍵タッチを教習できる。
【選択図】図6

Description

本発明は、電子楽器に用いて好適な教習装置およびプログラムに関する。
一般的な音楽教室では、例えば講師が生徒に対して注意や叱責したり、実際に生徒の手を取って演奏操作を介助したりすることで演奏操作を覚え込ませることが多い。つまり、視覚や聴覚の他に身体的な刺激を与えることで教習効果を高めている。身体的な刺激を与える教習装置としては、例えば特許文献1に開示されているように、練習すべき楽器の演奏を聴くと共に、その演奏に対応して音階を発生させる為に使用する指に刺激を与え、この刺激で楽器の発生する音階と指との関係を覚え込ませる技術が開示されている。
特開平6−161434号公報
ところで、上記特許文献1に開示の技術では、演奏に対応して音階を発生させる為に使用する指に刺激を与えるだけであるから、演奏操作の内、弾くべき鍵については教習可能であるが、その弾くべき鍵をどのような強さで押鍵するか、つまり鍵タッチを教習させることが出来ない、という問題がある。
本発明は、このような事情に鑑みてなされたもので、鍵タッチを教習させることができる教習装置およびプログラムを提供することを目的としている。
上記目的を達成するため、請求項1に記載の発明では、複数の鍵からなる鍵盤と、当該各鍵に配設された電極と、当該電極毎に設けられ、所定の周波数及びレベルを有する電気信号を生成して対応する前記電極に出力する出力回路と、発生すべき楽音の音高、ベロシティ及び当該楽音の発音タイミングを有する楽音データを複数有して成る曲データを記憶する曲データ記憶手段と、前記曲データ記憶手段に記憶される曲データに含まれる楽音データを当該楽音データ内の発音タイミングに基づいて順次読み出す読み出し手段と、前記複数の鍵のいずれかに対する押鍵及び当該押鍵に対する押鍵速度を検出する押鍵検出手段と、該押鍵検出手段により検出された押鍵速度に対応するベロシティを検出するベロシティ検出手段と、前記押鍵検出手段により押鍵が検出されたタイミングで前記読み出し手段により読み出された楽音データに含まれるベロシティと前記ベロシティ検出手段によって検出されるベロシティとの差分値を求める差分生成手段と、当該差分生成手段により求められた差分値に基づき、前記鍵盤のいずれかの鍵に対応する前記出力回路にて生成される電気信号の周波数及びレベルの少なくとも一方を制御する制御手段とを具備することを特徴とする。
上記請求項1に従属する請求項2に記載の発明では、前記制御手段は、前記差分生成手段により求められた差分値に基づき、前記押鍵検出手段により押鍵の検出された鍵に対応する前記出力回路にて生成される電気信号の周波数及びレベルの少なくとも一方を制御することを特徴とする。
上記請求項1に従属する請求項3に記載の発明では、前記読み出し手段により読み出されたベロシティより前記ベロシティ検出手段によって検出されたベロシティが大きい場合は、前記出力回路にて生成される電気信号の周波数及びレベルの少なくとも一方を低減させるとともに、前記読み出し手段により読み出されたベロシティより前記ベロシティ検出手段によって検出されたベロシティが小さい場合は、前記出力回路にて生成される電気信号の周波数及びレベルの少なくとも一方を増加させることを特徴とする。
上記請求項1に従属する請求項4に記載の発明では、前記制御手段は、前記差分値に対応する速度で前記電気信号の周波数及びレベルの少なくとも一方を変化させることを特徴とする。
請求項5に記載の発明では、複数の鍵からなる鍵盤と、当該各鍵に配設された電極と、当該電極毎に設けられ、所定の周波数及びレベルを有する電気信号を生成して対応する前記電極に出力する出力回路と、発生すべき楽音の音高、ベロシティ及び当該楽音の発音タイミングを有する楽音データを複数有して成る曲データを記憶する曲データ記憶手段と、を有する教習装置として用いられるコンピュータに、前記曲データ記憶手段に記憶される曲データに含まれる楽音データを当該楽音データ内の発音タイミングに基づいて順次読み出す読み出しステップと、前記複数の鍵のいずれかに対する押鍵及び当該押鍵に対する押鍵速度を検出する押鍵検出ステップと、当該検出された押鍵速度に対応するベロシティを検出するベロシティ検出ステップと、前記押鍵が検出されたタイミングで読み出された楽音データに含まれるベロシティと前記検出されたベロシティとの差分値を求める差分生成ステップと、当該求められた差分値に基づき、前記鍵盤のいずれかの鍵に対応する前記出力回路にて生成される電気信号の周波数及びレベルの少なくとも一方を制御する制御ステップとを実行させることを特徴とする。
本発明では、鍵タッチを教習させることができる。
実施の一形態による教習装置100の全体構成を示すブロック図である。 鍵盤10の各鍵に配設される電極DKを示す図である。 ROM13に格納されるスタート値Sv,Sf特性テーブルおよびEND値Ev,Ef特性テーブルの内容を説明する為の図である。 曲データメモリ14に格納される曲データの構成を示すメモリマップである。 ショック印加部17の構成を示すブロック図である。 加速感発生用VCO出力レートおよび減速感発生用VCO出力レートを示す図である。 加速感発生用VCA出力レートおよび減速感発生用VCA出力レートを示す図である。 メインルーチンの動作を示すフローチャートである。 スイッチ処理の動作を示すフローチャートである。 スタート/ストップスイッチ処理の動作を示すフローチャートである。 タイマインタラプト処理の動作を示すフローチャートである。 鍵盤処理の動作を示すフローチャートである。 印加設定処理の動作を示すフローチャートである。 曲再生処理の動作を示すフローチャートである。
以下、図面を参照して本発明の実施形態について説明する。
A.構成
図1は、本発明の実施の一形態による教習装置100の全体構成を示すブロック図である。この図に示す教習装置100は、練習曲をほぼ適正に弾ける程度のユーザが更なる演奏表現力の向上、すなわち鍵タッチの練習に資する目的で使用される。図1において、鍵盤10は、演奏操作(押離鍵操作)に応じたキーオン/キーオフ信号、鍵番号およびベロシティ等の演奏情報を発生する。鍵盤10の各鍵には、押離鍵操作される部分に、図2に図示するように電極DKが配設される。この電極DKには、後述のショック印加部17から出力される低周波信号が供給される。
操作部11は、装置パネルに配設される各種スイッチから構成され、各スイッチ操作に応じたスイッチイベントを発生する。操作部11が発生するスイッチイベントは、後述するCPU12に取り込まれる。操作部11に設けられる主要なスイッチとしては、演奏教習の手本となる曲データを選択する曲選択スイッチや、演奏教習の開始/停止を指示するスタート/ストップスイッチがある。これらスイッチ操作に対応した動作については追って述べる。
CPU12は、ROM13に記憶される各種プログラムを実行し、操作部11が発生するスイッチイベントに応じて装置各部を制御したり、鍵盤10が発生する演奏情報に応じたノートオン/ノートオフイベントを生成して音源18を制御する。また、CPU12は、鍵盤10の鍵を弾く教習者(ユーザ)の指の指腹部と接触する上述の電極DKに低周波信号を供給するようショック印加部17を制御する。
ROM13は、プログラムエリアおよびデータエリアを備える。ROM13のプログラムエリアには、CPU12にロードされる各種プログラムデータが記憶される。ここで言う各種プログラムとは、後述するメインルーチン、スイッチ処理、スタート/ストップスイッチ処理、タイマインタラプト処理、鍵盤処理、印加設定処理および曲再生処理を含む。
ROM13のデータエリアには、スタート値Sv,Sf特性テーブルおよびEND値Ev,Ef特性テーブルが記憶される。ここで、図3を参照してスタート値Sv,Sf特性テーブルおよびEND値Ev,Ef特性テーブルの内容について説明する。スタート値Sv,Sf特性テーブルは、図3中の実線で図示される特性を有し、曲データに含まれるノートオンイベント中のベロシティVelと実際の押鍵操作で生じるベロシティVELとの差分であるタッチ誤差ΔVelを読み出しアドレスとしてスタート値Sv(又はスタート値Sf)を読み出すデータテーブルである。
END値Ev,Ef特性テーブルは、図3中の破線で図示される特性を有し、曲データに含まれるノートオンイベント中のベロシティVelと実際の押鍵操作で生じるベロシティVELとの差分であるタッチ誤差ΔVelを読み出しアドレスとしてEND値Ev(又はEND値Ef)を読み出すデータテーブルである。
タッチ誤差ΔVelに応じてスタート値Sv,Sf特性テーブルから読み出されるスタート値Svと、END値Ev,Ef特性テーブルから読み出されるEND値Evとは、後述のショック印加部17を構成するエンベロープ発生器(EG)173(図5参照)に供給される。一方、タッチ誤差ΔVelに応じて、スタート値Sv,Sf特性テーブルから読み出されるスタート値Sfと、END値Ev,Ef特性テーブルから読み出されるEND値Efとは、後述のショック印加部17を構成するエンベロープ発生器(EG)171(図5参照)に供給される。
具体的には、例えばタッチ誤差ΔVelが「−10」の場合には、スタート値Sv,Sf特性テーブルからスタート値(Sv1,Sf1)が、END値Ev,Ef特性テーブルからEND値(Ev1,Ef1)がそれぞれ読み出される。読み出されたスタート値Sv1およびEND値Ev1は、EG173に供給され、一方、読み出されたスタート値Sf1およびEND値Ef1は、EG171に供給される。
同様に、例えばタッチ誤差ΔVelが「+10」の場合には、スタート値Sv,Sf特性テーブルからスタート値(Sv2,Sf2)が、END値Ev,Ef特性テーブルからEND値(Ev2,Ef2)がそれぞれ読み出される。読み出されたスタート値Sv2およびEND値Ev2は、EG173に供給され、一方、読み出されたスタート値Sf2およびEND値Ef2は、EG171に供給される。
タッチ誤差ΔVelが「0」の場合、つまり曲データに含まれるノートオンイベント中のベロシティVelと実際の押鍵操作で生じるベロシティVELとが一致した場合には、スタート値SvとEND値Evとが一定値(40[V])となり、かつスタート値SfとEND値Efとが一定値(10[Hz])となる。タッチ誤差ΔVelが「0」より大きい領域、すなわちノートオンイベント中のベロシティVelより強いタッチで押鍵操作が為されると、減速感発生領域となり、一方、タッチ誤差ΔVelが「0」より小さい領域、すなわちノートオンイベント中のベロシティVelより弱いタッチで押鍵操作が為されると、加速感発生領域となる。この減速感発生領域および加速感発生領域が意図するところについては追って述べる。
曲データメモリ14には、図4に図示するように、演奏教習に供する複数曲の曲データ(1)〜(N)が記憶される。これら曲データ(1)〜(N)の何れかが曲選択スイッチの操作に応じて選択され、演奏教習に供せられる。曲データは、曲を構成する各音を表す。一つの音は、次イベントタイミングを表すタイムTとイベントEVとが対になって曲進行に対応した時系列のアドレス順に記憶される、いわゆる相対時間方式と呼ばれるデータ形式で表現され、その終端には曲の終わりを表すデータENDが設けられる。イベントEVは、発音を表すノートオンイベント又は消音を表すノートオフイベントの何れかで形成される。ノートオンイベントは、発音音高を表すノートナンバおよび発音音量を表すベロシティvelを含む。ノートオフイベントは消音音高を表すノートナンバを含む。
RAM15は、CPU12のワークエリアとして用いられ、各種レジスタ・フラグデータが一時記憶される。表示部16は、例えばカラー液晶パネル等から構成され、CPU12から供給される表示制御信号に応じて装置各部の設定状態や動作状態などを画面表示する。ショック印加部17は、CPU12の制御の下に、押鍵された鍵の電極DK(図2参照)に低周波信号を印加し、これにより押鍵した教習者(ユーザ)の指の指腹部に軽度の電気ショックを与える。
ここで、図5を参照してショック印加部17の構成について説明する。ショック印加部17は、EG(エンベロープ発生器)171、VCO(電圧制御発振器)172、EG(エンベロープ発生器)173、VCA(電圧制御増幅器)174およびセレクタ175から構成される。EG(エンベロープ発生器)171は、CPU12がタッチ誤差ΔVelに応じて、ROM13のスタート値Sv,Sf特性テーブルから読み出すスタート値Sfと、END値Ev,Ef特性テーブルから読み出すEND値Efとに基づきVCO出力レートを発生する。VCO172は、EG171から供給されるVCO出力レートに従って信号周波数が変化するVCO出力(低周波信号)を発生する。なお、VCO172は、正弦波、方形波および三角波の内からユーザにより選択される波形の信号を発生する。
EG171が発生するVCO出力レートとは、スタート値Sv,Sf特性テーブルから読み出されるスタート値Sfと、END値Ev,Ef特性テーブルから読み出されるEND値Efとで定まる出力変化率(傾き)を指す。具体的には、図6に図示するように、タッチ誤差ΔVelが負の場合に設定される加速感発生用VCO出力レートと、タッチ誤差ΔVelが正の場合に設定される減速感発生用VCO出力レートとに大別される。
図6に図示する加速感発生用VCO出力レートにおいて、例えばタッチ誤差ΔVelが「−30」以下であると、印加開始時点のVCO出力(低周波信号)は、スタート値Sf(5[Hz])から0.5sec経過後のEND値Ef(15[Hz])まで変化する。したがって、この場合のVCO出力レートは+20[Hz/sec]となる。加速感発生用VCO出力レートは、タッチ誤差ΔVelが大きいほど、つまりノートオンイベント中のベロシティVelに対して実際の押鍵時のベロシティVELが弱いほど高い増加レートとなる。
同様に、図6に図示する減速感発生用VCO出力レートにおいて、例えばタッチ誤差ΔVelが「+30」以上であると、印加開始時点のVCO出力(低周波信号)は、スタート値Sf(15[Hz])から0.5sec経過後のEND値Ef(5[Hz])まで変化する。したがって、この場合のVCO出力レートは−20[Hz/sec]となる。減速感発生用VCO出力レートは、タッチ誤差ΔVelが大きいほど、つまりノートオンイベント中のベロシティVelに対して実際の押鍵時のベロシティVELが強いほど高い減少レートとなる。
図5に図示するEG(エンベロープ発生器)173は、CPU12がタッチ誤差ΔVelに応じて、ROM13のスタート値Sv,Sf特性テーブルから読み出すスタート値Svと、END値Ev,Ef特性テーブルから読み出すEND値Evとに基づきVCA出力レートを発生する。VCA174は、前段のVCO172が発生するVCO出力(低周波信号)を、EG173から供給されるVCA出力レートに従って出力レベルを制御したVCA出力(低周波信号)を発生する。図5に図示するセレクタ175は、CPU12から供給される押鍵番号KEYで指定される鍵、つまり押鍵された鍵に配設された電極DKにVCA出力(低周波信号)を印加するよう経路選択する。
EG173が発生するVCA出力レートとは、スタート値Sv,Sf特性テーブルから読み出されるスタート値Svと、END値Ev,Ef特性テーブルから読み出されるEND値Evとで定まる出力変化率(傾き)を指す。具体的には、図7に図示するように、タッチ誤差ΔVelが負の場合に設定される加速感発生用VCA出力レートと、タッチ誤差ΔVelが正の場合に設定される減速感発生用VCA出力レートとに大別される。
図7に図示する加速感発生用VCA出力レートにおいて、例えばタッチ誤差ΔVelが「−30」以下であると、印加開始時点のVCA出力(低周波信号)は、スタート値Sv(30[V])から0.5sec経過後のEND値Ev(50[V])まで変化する。したがって、この場合のVCA出力レートは+40[V/sec]となる。加速感発生用VCA出力レートは、タッチ誤差ΔVelが大きいほど、つまりノートオンイベント中のベロシティVelに対して実際の押鍵時のベロシティVELが弱いほど高い増加レートとなる。
同様に、図7に図示する減速感発生用VCA出力レートにおいて、例えばタッチ誤差ΔVelが「+30」以上であると、印加開始時点のVCO出力(低周波信号)は、スタート値Sv(50[V])から0.5sec経過後のEND値Ev(30[V])まで変化する。したがって、この場合のVCA出力レートは−40[V/sec]となる。減速感発生用VCA出力レートは、タッチ誤差ΔVelが大きいほど、つまりノートオンイベント中のベロシティVelに対して実際の押鍵時のベロシティVELが強いほど高い減少レートとなる。
上記構成によるショック印加部17では、CPU21から押鍵番号KEYおよび出力指示が供給されると、先ずEG171とEG173とがそれぞれVCOレートとVCAレートとを発生する。すると、VCO172ではEG171が発生するVCOレートに対応したVCO出力を出力し、一方、VCA174ではEG173が発生するVCAレートに従ってVCO出力をレベルを制御したVCA出力を発生する。そして、セレクタ175が押鍵番号KEYに基づき押鍵された鍵に配設される電極DKにVCA出力(低周波信号)を印加する。
したがって、ノートオンイベント中のベロシティVelに対して実際の押鍵時のベロシティVELが強すぎると、教習者(ユーザ)は押鍵した指の指腹部で電気ショックの度合いが押鍵時点から低減して行く“減速感”を感じ、一方、ノートオンイベント中のベロシティVelに対して実際の押鍵時のベロシティVELが弱すぎると、教習者(ユーザ)は押鍵した指の指腹部で電気ショックの度合いが押鍵時点から増加して行く“加速感”を感じる結果、曲データに基づく鍵タッチの適否を体感できるようになる。なお、ノートオンイベント中のベロシティVelと実際の押鍵時のベロシティVELとが一致してタッチ誤差ΔVelが「0」になると、教習者(ユーザ)は押鍵した指の指腹部で一定の電気ショックを感じる。
音源18は、周知の波形メモリ読み出し方式にて構成され、演奏操作(押離鍵操作)に従って鍵盤10から供給される演奏情報に応じてCPU12が生成するノートオン/ノートオフイベントに従って楽音形成する。また、音源18はCPU12から教習開始の指示を受けた場合には、選択された曲データを指定テンポで再生する。サウンドシステム19は、音源18から出力される楽音波形をアナログ信号形式に変換した後、不要ノイズ除去やレベル増幅を施してからスピーカから発音させる。
B.動作
次に、図8〜図14を参照して、上記構成による実施形態の動作について説明する。以下では、CPU12が実行するメインルーチン、スイッチ処理、スタート/ストップスイッチ処理、タイマインタラプト処理、鍵盤処理、印加設定処理および曲再生処理の各動作について述べる。
(1)メインルーチンの動作
装置電源がパワーオンされると、CPU12は図8に図示するメインルーチンを実行し、ステップSA1に進み、RAM15に設けられる各種レジスタ・フラグデータをゼロリセットもしくは初期値セットすると共に、音源18に初期化を指示するイニシャライズを実行する。そして、イニシャライズが完了すると、ステップSA2に進み、曲選択スイッチ操作に応じて演奏教習に供する曲データを選択したり、スタート/ストップスイッチ操作に応じて演奏教習の開始や停止を指示する等のスイッチ処理を実行する。
続いて、ステップSA3では、押鍵操作に応じて押鍵番号およびベロシティを含むノートオンイベントを音源18に送付して発音指示したり、離鍵操作に応じて離鍵番号を含むノートオフイベントを音源18に送付して消音指示したりする鍵盤処理を実行する。
そして、ステップSA4では、印加設定処理を実行する。印加設定処理では、後述するように、キーオン(押鍵)の有無を判断し、押鍵が有った場合には、その押鍵で生じたベロシティVELと曲データ(ノートオンイベント)から抽出したベロシティVelとの差分から算出されるタッチ誤差ΔVelに応じたスタート値SfおよびEND値Efをショック印加部17のEG171に、スタート値SvおよびEND値Evをショック印加部17のEG173にそれぞれセットし、押鍵番号KEYをショック印加部17のセレクタ175にセットした後、ショック印加部17に出力指示を与える。これにより、ショック印加部17は、EG171がVCOレートを発生し、EG173がVCAレートを発生すると、VCO172がVCOレートに対応したVCO出力を発生し、一方、VCA174がVCAレートに従ってVCO出力をレベルを制御してなるVCA出力(低周波信号)を発生する。そして、セレクタ175が押鍵番号KEYに基づき押鍵された鍵に配設される電極DKにVCA出力(低周波信号)を印加する。
次いで、ステップSA5では、曲再生処理を実行する。曲再生処理では、後述するように、スタートフラグSTFが「1」となって演奏教習が開始されていると、イベントタイミングに達したかどうかを判断し、イベントタイミングに達していると、読み出しアドレスADを歩進させ、歩進された読み出しアドレスADに応じて曲データから読み出されるデータ(AD)が「イベント」、「タイム」および「END」の何れであるかを判別する。
曲データから「イベント」が読み出された場合には、それがノートオンイベントならば、当該ノートオンイベントからベロシティを抽出してレジスタVelにストアした後、読み出された「イベント」を音源18に供給して曲再生を進める。曲データから「タイム」が読み出された場合には、その「タイム」を次イベントタイミングとしてレジスタTにストアする。曲データから曲の終わりを表す「END」が読み出された場合には、スタートフラグSTFをゼロリセットして演奏教習の停止を指示する。そして、こうした曲再生処理を終えると、ステップSA6に進み、例えば装置の動作状態を表示部15に表示させる等の、その他の処理を実行する。この後、上述のステップSA2に処理を戻し、以後、電源がオフされる迄の間、上述したステップSA2〜SA6の各処理を繰り返し実行する。
(2)スイッチ処理の動作
次に、図9を参照してスイッチ処理の動作を説明する。上述したメインルーチンのステップSA2(図8参照)を介して本処理が実行されると、CPU12は図10に図示するステップSB1に進み、曲データメモリ14(図4参照)に記憶される複数曲の曲データ(1)〜(N)の何れかを曲選択スイッチの操作に応じて選択する曲選択処理を実行する。
続いて、ステップSB2では、スタート/ストップスイッチ処理を実行する。スタート/ストップスイッチ処理では、後述するように、スタート/ストップスイッチのオン操作に応じて反転されたスタートフラグSTFが「1」となって演奏教習の開始を表す場合には、曲選択スイッチ操作により選択された曲データの先頭データであるタイムTを読み出してレジスタTにストアした後、曲再生テンポに応じたインタラプト周期を設定してタイマインタラプト禁止を解除し、一方、オン操作に応じて反転されたスタートフラグSTFが「0」となって演奏教習の停止を表す場合には、音源18に対して発音中の全ての音の消音を指示してタイマインタラプト禁止に設定する。この後、ステップSB3に進み、その他のスイッチ処理を実行して本処理を終える。
(3)スタート/ストップスイッチ処理の動作
次に、図10を参照してスタート/ストップスイッチ処理の動作を説明する。前述したスイッチ処理のステップSB2(図9参照)を介して本処理が実行されると、CPU12は図10に図示するステップSC1に進み、スタート/ストップスイッチのオン操作の有無を判断する。オン操作されなければ、判断結果は「NO」となり、本処理を終えるが、オン操作されると、上記ステップSC1の判断結果は「YES」になり、ステップSC2に進み、スタートフラグSTFを反転させる。スタートフラグSTFは、フラグ値が「1」の場合に演奏教習の開始(もしくは演奏教習中)を表し、一方、「0」の場合に演奏教習の停止を表す。
次いで、ステップSC3では、オン操作に応じて反転されたスタートフラグSTFが「1」、つまり演奏教習の開始であるかどうかを判断する。演奏教習の開始であると、判断結果は「YES」となり、ステップSC4に進み、曲選択スイッチ操作により選択された曲データの先頭アドレスを、レジスタADにストアする。以下、レジスタADの内容を読み出しアドレスADと称する。
そして、ステップSC5では、読み出しアドレスADに従い、曲データから最初のデータであるタイムTを読み出してレジスタTにストアする。次いで、ステップSC6では、曲再生テンポに基づきインタラプト周期を設定し、続くステップSC7では、タイマインタラプト禁止を解除して本処理を終える。なお、上記ステップSC7にてタイマインタラプト禁止が解除されると、後述するタイマインタラプト処理(図11参照)が、上記ステップSC6で設定した周期毎に割り込み実行される。
さて一方、オン操作に応じて反転されたスタートフラグSTFが「0」、つまり演奏教習停止になると、上記ステップSC3の判断結果は「NO」になり、ステップSC8に進み、音源18に対して発音中の全ての音の消音を指示するオールノートオフ処理を行った後、ステップSC9に進み、タイマインタラプト禁止に設定して本処理を終える。
このように、スタート/ストップスイッチ処理では、スタート/ストップスイッチのオン操作に応じて反転されたスタートフラグSTFが「1」となって演奏教習の開始を表す場合には、曲選択スイッチ操作により選択された曲データの先頭アドレスを読み出しアドレスADとして当該曲データから最初のデータであるタイムTを読み出してレジスタTにストアした後、曲再生テンポに基づきインタラプト周期を設定してタイマインタラプト禁止を解除する。一方、オン操作に応じて反転されたスタートフラグSTFが「0」となって自動伴奏の停止を表す場合には、音源16に対して発音中の全ての伴奏音の消音を指示してタイマインタラプト禁止に設定する。
(4)タイマインタラプト処理の動作
次に、図11を参照してタイマインタラプト処理の動作を説明する。タイマインタラプト処理は、演奏教習に供する曲の再生テンポに基づき設定されるインタラプト周期毎に割り込み実行される。割り込み実行タイミングになると、図11に図示するステップSD1に進み、レジスタTの値をデクリメントして本処理を終える。なお、レジスタTには、後述するように、曲データのイベントタイミングを表すタイムTがストアされるようになっている。
(5)鍵盤処理の動作
次に、図12を参照して鍵盤処理の動作を説明する。前述したメインルーチンのステップSA3(図8参照)を介して本処理が実行されると、CPU12は図12に図示するステップSE1に進み、鍵盤10の各鍵について鍵走査を行い、続くステップSE2では、上記ステップSE1の鍵走査で得られる鍵変化に基づき押離鍵操作された鍵を判別する。押離鍵操作が行われず、鍵変化無しならば、本処理を終えるが、押鍵操作に応じたキーオンイベントが発生した場合には、ステップSE3に進み、押鍵番号(押鍵された鍵の鍵番号)をレジスタKEYにストアすると共に、ベロシティをレジスタVELにストアする。
次いで、ステップSE4では、レジスタKEYにストアされた押鍵番号およびレジスタVELにストアされたベロシティを含むノートオンイベントを作成し、続くステップSE5では、作成したノートオンイベントを音源18に供給して本処理を終える。これにより、音源18は、押鍵された鍵の音高の楽音を、ベロシティに対応した音量で発音する。
これに対し、離鍵操作に応じたキーオフイベントが発生した場合には、ステップSE6に進み、離鍵番号(離鍵された鍵の鍵番号)をレジスタKEYにストアし、続くステップSE7では、当該レジスタKEYにストアされた離鍵番号を含むノートオフイベントを作成する。そして、ステップSE5に進み、作成したノートオフイベントを音源18に供給して本処理を終える。これにより、音源18は、離鍵された鍵の音高の楽音を消音する。このように、鍵盤処理では、押鍵された場合には、押鍵番号およびベロシティを含むノートオンイベントを音源18に送付して発音指示し、離鍵された場合には、離鍵番号を含むノートオフイベントを音源18に送付して消音指示する。
(6)印加設定処理の動作
次に、図13を参照して印加設定処理の動作を説明する。前述したメインルーチンのステップSA4(図8参照)を介して本処理が実行されると、CPU12は図13に図示するステップSF1に進み、キーオン(押鍵)の有無を判断する。押鍵されなければ、判断結果は「NO」となり、本処理を終えるが、押鍵されると、上記ステップSF1の判断結果は「YES」になり、ステップSF2に進む。ステップSF2では、押鍵に応じて発生したベロシティVEL(レジスタVEL)と、曲データ(ノートオンイベント)から抽出したベロシティVel(レジスタVel)との差分からタッチ誤差を算出してレジスタΔVelにストアする。レジスタΔVelの内容をタッチ誤差ΔVelと称す。
次いで、ステップSF3では、タッチ誤差ΔVelに応じて、ROM13のスタート値Sv,Sf特性テーブルから読み出すスタート値Sfと、END値Ev,Ef特性テーブルから読み出すEND値Efとをショック印加部17のEG(エンベロープ発生器)171にセットし、続くステップSF4では、タッチ誤差ΔVelに応じて、ROM13のスタート値Sv,Sf特性テーブルから読み出すスタート値Svと、END値Ev,Ef特性テーブルから読み出すEND値EvとをEG(エンベロープ発生器)173にセットする。そして、ステップSF5では、押鍵番号KEYをショック印加部17のセレクタ175にセットする。この後、ステップSF6に進み、ショック印加部17に出力指示を与えて本処理を終える。
ショック印加部17では、上記ステップSF6にて出力指示を受けると、EG171とEG173とがそれぞれVCOレートとVCAレートとを発生し、これに応じてVCO172がVCOレートに対応したVCO出力を発生し、一方、VCA174がVCAレートに従ってVCO出力をレベルを制御してなるVCA出力(低周波信号)を発生する。そして、セレクタ175が押鍵番号KEYに基づき押鍵された鍵に配設される電極DKにVCA出力(低周波信号)を印加する。
このように、印加設定処理では、キーオン(押鍵)の有無を判断し、押鍵が有った場合には、その押鍵で生じたベロシティVELと曲データ(ノートオンイベント)から抽出したベロシティVelとの差分から算出されるタッチ誤差ΔVelに応じたスタート値SfおよびEND値Efをショック印加部17のEG171に、スタート値SvおよびEND値Evをショック印加部17のEG173にそれぞれセットし、押鍵番号KEYをショック印加部17のセレクタ175にセットした後、ショック印加部17に出力指示を与える。これにより、ショック印加部17は、EG171がVCOレートを発生し、EG173がVCAレートを発生すると、VCO172がVCOレートに対応したVCO出力を発生し、一方、VCA174がVCAレートに従ってVCO出力をレベルを制御してなるVCA出力(低周波信号)を発生する。そして、セレクタ175が押鍵番号KEYに基づき押鍵された鍵に配設される電極DKにVCA出力(低周波信号)を印加する。
(7)曲再生処理の動作
次に、図14を参照して曲再生処理の動作を説明する。前述したメインルーチンのステップSA4(図8参照)を介して本処理が実行されると、CPU12は図13に図示するステップSG1に進み、スタートフラグSTFが「1」であるか否か、つまり演奏教習が開始されているかどうかを判断する。演奏教習の停止(スタートフラグSTFが「0」)ならば、判断結果は「NO」になり、本処理を終える。
一方、演奏教習が開始されていれば、上記ステップSG1の判断結果は「YES」となり、ステップSG2に進む。ステップSG2では、前述したタイマインタラプト1処理(図9参照)によりデクリメントされるレジスタTの値が「0」以下であるか否か、つまりイベントタイミングに達したかどうかを判断する。イベントタイミングに達していなければ、判断結果は「NO」となり、本処理を終えるが、イベントタイミングに達していると、上記ステップSG2の判断結果は「YES」になり、ステップSG3に進む。
そして、ステップSG3では、曲データの読み出しを進める為に読み出しアドレスADをインクリメントして歩進させ、続くステップSG4では、歩進された読み出しアドレスADに応じて読み出されるデータ(AD)が「イベント」、「タイム」および「END」の何れであるかを判別する。曲データから読み出されるデータ(AD)が「イベント」ならば、ステップSG5に進む。ステップSG5では、「イベント」がノートオンイベントであるか否かを判断する。
「イベント」がノートオンイベントであると、判断結果は「YES」となり、ステップSG6に進み、当該ノートオンイベントから抽出したベロシティをレジスタVelにストアした後、ステップSG7に進む。これに対し、「イベント」がノートオフイベントであったならば、上記ステップSG5の判断結果は「NO」となり、ステップSG7に進み、曲データから読み出された「イベント」を音源18に供給した後、上述のステップSG3に処理を戻す。
そして、上記ステップSG3において歩進された読み出しアドレスADに応じて、曲データから「タイム」が読み出されると、ステップSG8に進み、その読み出されたタイムを次イベントタイミングとしてレジスタTにストアして本処理を終える。曲データから読み出されるデータ(AD)が曲の終わりを表す「END」になると、ステップSG9に進み、スタートフラグSTFをゼロリセットし、これにより演奏教習を停止させて本処理を終える。
このように、曲再生処理では、スタートフラグSTFが「1」となって演奏教習が開始されていると、イベントタイミングに達したかどうかを判断し、イベントタイミングに達していると、読み出しアドレスADを歩進させ、歩進された読み出しアドレスADに応じて曲データから読み出されるデータ(AD)が「イベント」、「タイム」および「END」の何れであるかを判別する。曲データから「イベント」が読み出された場合には、それがノートオンイベントならば、当該ノートオンイベントからベロシティを抽出してレジスタVelにストアした後、読み出された「イベント」を音源18に供給して曲再生を進める。曲データから「タイム」が読み出された場合には、その「タイム」を次イベントタイミングとしてレジスタTにストアする。曲データから曲の終わりを表す「END」が読み出された場合には、スタートフラグSTFをゼロリセットして演奏教習の停止を指示する。
以上のように、本実施形態では、曲を構成する各音の音高およびベロシティVel(音量)を表す曲データを再生すると共に、発音タイミングとなって再生された曲データから抽出したベロシティVelと、その再生音に対応したユーザの押鍵で生じるベロシティVELとの差分であるタッチ誤差ΔVelに応じて出力変化(信号周波数変化および信号レベル変化)する低周波信号を生成し、生成された低周波信号をユーザが押鍵中の鍵に配設される電極DKに印加する。これにより、教習者(ユーザ)はタッチ誤差ΔVelの大小で異なる電気ショックを押鍵した指の指腹部によって体感する結果、鍵タッチを教習させることができる。
具体的には、例えば曲データ(ノートオンイベント)から抽出したベロシティVelに対して押鍵時のベロシティVELが強過ぎた場合には、電気ショックの度合いが押鍵時点から低減して行く減速感を押鍵した指の指腹部で感じ、一方、曲データ(ノートオンイベント)から抽出したベロシティVelに対して押鍵時のベロシティVELが弱過ぎた場合には、電気ショックの度合いが押鍵時点から増加して行く加速感を押鍵した指の指腹部で感じる為、鍵タッチを教習させることができる。
なお、上述した実施形態では、タッチ誤差ΔVelの大小で異なる電気ショックを押鍵した指の指腹部によって体感させて鍵タッチを教習させるようにしたが、これに限らず、再生される音と異なる音高の音を押鍵した場合に押鍵ミスである旨を知らせるべく電気ショックを与えたり、弾くべきタイミングを間違えた場合に電気ショックを与える態様とすることも出来る。そのような態様では、演奏ミスに応じて印加する電気ショックのパターンを各種変化させることで教習者(ユーザ)にどのような演奏ミスを犯したのかを体感させることが出来る。
また、上述した実施形態では、鍵盤10の各鍵に電極DKを敷設するようにしたが、これに限らず、鍵自体を導電性材料で成型し、隣り合う鍵盤同士を絶縁する構造として構成することも可能である。
さらに、上述した実施形態では、タッチ誤差ΔVelに応じたVCO出力レート(又はVCA出力レート)に基づきスタート値SfからEND値Ef(又はスタート値SvからEND値Ev)まで線形変化するVCO出力(又はVCA出力)を発生させるが、これに替えて、タッチ誤差ΔVelで定まるスタート値SfからEND値Ef(又はスタート値SvからEND値Ev)までを、例えば指数関数などを用いて非線形に変化させて加速感(又は減速感)を強調させる態様としても構わない。
また、上述した実施形態では、タッチ誤差ΔVelに応じて出力変化(信号周波数変化および信号レベル変化)する低周波信号を生成する一例について言及したが、これに限らず、押鍵された鍵の電極DKに印加される低周波信号の周波数をタッチ誤差ΔVelに応じて変化させるだけの態様でも良いし、又は押鍵された鍵の電極DKに印加される低周波信号の信号レベルをタッチ誤差ΔVelに応じて変化させるだけの態様でも構わない。
10 鍵盤
11 操作部
12 CPU
13 ROM
14 曲データメモリ
15 RAM
16 表示部
17 ショック印加部
18 音源
19 サウンドシステム
100 教習装置

Claims (5)

  1. 複数の鍵からなる鍵盤と、
    当該各鍵に配設された電極と、
    当該電極毎に設けられ、所定の周波数及びレベルを有する電気信号を生成して対応する前記電極に出力する出力回路と、
    発生すべき楽音の音高、ベロシティ及び当該楽音の発音タイミングを有する楽音データを複数有して成る曲データを記憶する曲データ記憶手段と、
    前記曲データ記憶手段に記憶される曲データに含まれる楽音データを当該楽音データ内の発音タイミングに基づいて順次読み出す読み出し手段と、
    前記複数の鍵のいずれかに対する押鍵及び当該押鍵に対する押鍵速度を検出する押鍵検出手段と、
    該押鍵検出手段により検出された押鍵速度に対応するベロシティを検出するベロシティ検出手段と、
    前記押鍵検出手段により押鍵が検出されたタイミングで前記読み出し手段により読み出された楽音データに含まれるベロシティと前記ベロシティ検出手段によって検出されるベロシティとの差分値を求める差分生成手段と、
    当該差分生成手段により求められた差分値に基づき、前記鍵盤のいずれかの鍵に対応する前記出力回路にて生成される電気信号の周波数及びレベルの少なくとも一方を制御する制御手段と
    を具備することを特徴とする教習装置。
  2. 前記制御手段は、前記差分生成手段により求められた差分値に基づき、前記押鍵検出手段により押鍵の検出された鍵に対応する前記出力回路にて生成される電気信号の周波数及びレベルの少なくとも一方を制御することを特徴とする請求項1記載の教習装置。
  3. 前記制御手段は、前記読み出し手段により読み出されたベロシティより前記ベロシティ検出手段によって検出されたベロシティが大きい場合は、前記出力回路にて生成される電気信号の周波数及びレベルの少なくとも一方を低減させるとともに、前記読み出し手段により読み出されたベロシティより前記ベロシティ検出手段によって検出されたベロシティが小さい場合は、前記出力回路にて生成される電気信号の周波数及びレベルの少なくとも一方を増加させることを特徴とする請求項1記載の教習装置。
  4. 前記制御手段は、前記差分値に対応する速度で前記電気信号の周波数及びレベルの少なくとも一方を変化させることを特徴とする請求項1記載の教習装置。
  5. 複数の鍵からなる鍵盤と、当該各鍵に配設された電極と、当該電極毎に設けられ、所定の周波数及びレベルを有する電気信号を生成して対応する前記電極に出力する出力回路と、発生すべき楽音の音高、ベロシティ及び当該楽音の発音タイミングを有する楽音データを複数有して成る曲データを記憶する曲データ記憶手段と、を有する教習装置として用いられるコンピュータに、
    前記曲データ記憶手段に記憶される曲データに含まれる楽音データを当該楽音データ内の発音タイミングに基づいて順次読み出す読み出しステップと、
    前記複数の鍵のいずれかに対する押鍵及び当該押鍵に対する押鍵速度を検出する押鍵検出ステップと
    当該検出された押鍵速度に対応するベロシティを検出するベロシティ検出ステップと、
    前記押鍵が検出されたタイミングで読み出された楽音データに含まれるベロシティと前記検出されたベロシティとの差分値を求める差分生成ステップと、
    当該求められた差分値に基づき、前記鍵盤のいずれかの鍵に対応する前記出力回路にて生成される電気信号の周波数及びレベルの少なくとも一方を制御する制御ステップと、
    を実行させることを特徴とするプログラム。
JP2010117085A 2010-05-21 2010-05-21 教習装置およびプログラム Active JP5445856B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010117085A JP5445856B2 (ja) 2010-05-21 2010-05-21 教習装置およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010117085A JP5445856B2 (ja) 2010-05-21 2010-05-21 教習装置およびプログラム

Publications (3)

Publication Number Publication Date
JP2011242718A true JP2011242718A (ja) 2011-12-01
JP2011242718A5 JP2011242718A5 (ja) 2013-07-04
JP5445856B2 JP5445856B2 (ja) 2014-03-19

Family

ID=45409395

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010117085A Active JP5445856B2 (ja) 2010-05-21 2010-05-21 教習装置およびプログラム

Country Status (1)

Country Link
JP (1) JP5445856B2 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0371377U (ja) * 1989-11-17 1991-07-18
JPH10105171A (ja) * 1996-09-25 1998-04-24 Kawai Musical Instr Mfg Co Ltd 電子楽器
JP2000089655A (ja) * 1998-09-09 2000-03-31 Casio Comput Co Ltd 操作案内装置および操作案内方法
JP2001034267A (ja) * 1999-07-19 2001-02-09 Casio Comput Co Ltd 演奏教習装置及び演奏教習処理プログラムを記録した記録媒体
JP2002189466A (ja) * 2000-12-21 2002-07-05 Casio Comput Co Ltd 演奏教習装置および演奏教習方法
JP2008233801A (ja) * 2007-03-23 2008-10-02 Yamaha Corp 演奏支援装置、コントローラ及びプログラム
JP2009025430A (ja) * 2007-07-18 2009-02-05 Kawai Musical Instr Mfg Co Ltd 鍵盤楽器の演奏技術支援装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0371377U (ja) * 1989-11-17 1991-07-18
JPH10105171A (ja) * 1996-09-25 1998-04-24 Kawai Musical Instr Mfg Co Ltd 電子楽器
JP2000089655A (ja) * 1998-09-09 2000-03-31 Casio Comput Co Ltd 操作案内装置および操作案内方法
JP2001034267A (ja) * 1999-07-19 2001-02-09 Casio Comput Co Ltd 演奏教習装置及び演奏教習処理プログラムを記録した記録媒体
JP2002189466A (ja) * 2000-12-21 2002-07-05 Casio Comput Co Ltd 演奏教習装置および演奏教習方法
JP2008233801A (ja) * 2007-03-23 2008-10-02 Yamaha Corp 演奏支援装置、コントローラ及びプログラム
JP2009025430A (ja) * 2007-07-18 2009-02-05 Kawai Musical Instr Mfg Co Ltd 鍵盤楽器の演奏技術支援装置

Also Published As

Publication number Publication date
JP5445856B2 (ja) 2014-03-19

Similar Documents

Publication Publication Date Title
JP5169328B2 (ja) 演奏処理装置及び演奏処理プログラム
JP6720798B2 (ja) 演奏教習装置、演奏教習プログラム、および演奏教習方法
JP6402878B2 (ja) 演奏装置、演奏方法およびプログラム
WO2017125006A1 (zh) 一种电声乐器节奏可控的方法及其对卡拉ok的改进
JP4048630B2 (ja) 演奏支援装置、演奏支援方法、および演奏支援プログラムを記録した記録媒体
JPH11102187A (ja) 電子楽器及び記憶媒体
JP6728702B2 (ja) 電子音響装置
JP5445856B2 (ja) 教習装置およびプログラム
JP2018054767A (ja) 電子楽器、その発音制御方法、及びプログラム
JP4745681B2 (ja) メトロノーム及び電子楽器
JP5557087B2 (ja) 自動伴奏装置およびプログラム
JP6720797B2 (ja) 演奏教習装置、演奏教習プログラム、および演奏教習方法
JP4221567B2 (ja) 演奏練習装置、演奏練習方法および演奏練習プログラム
JP2009198657A (ja) 演奏教習装置および演奏教習プログラム
JP5827484B2 (ja) 楽音制御装置
JP7107720B2 (ja) 運指表示プログラム
JP5338101B2 (ja) 電子音楽装置及び演奏処理プログラム
JP4743615B2 (ja) 練習機能付き電子楽器
JP3554770B2 (ja) 楽音発生装置
JP3672178B2 (ja) 音楽的アミューズメントシステム
JP4069889B2 (ja) 音楽的アミューズメントシステム
JPH06130889A (ja) 学習機能付電子楽器
JP4069774B2 (ja) 演奏教習装置
JP3682691B2 (ja) 楽音情報割当操作子を有する電子音楽装置
JP4482855B2 (ja) 音楽教習装置および音楽教習プログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130516

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130516

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131128

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131129

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131211

R150 Certificate of patent or registration of utility model

Ref document number: 5445856

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150