JP6232850B2 - タッチ検出装置、タッチ検出方法、電子楽器及びプログラム - Google Patents

タッチ検出装置、タッチ検出方法、電子楽器及びプログラム Download PDF

Info

Publication number
JP6232850B2
JP6232850B2 JP2013178347A JP2013178347A JP6232850B2 JP 6232850 B2 JP6232850 B2 JP 6232850B2 JP 2013178347 A JP2013178347 A JP 2013178347A JP 2013178347 A JP2013178347 A JP 2013178347A JP 6232850 B2 JP6232850 B2 JP 6232850B2
Authority
JP
Japan
Prior art keywords
key
contact
note
turned
event
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.)
Active
Application number
JP2013178347A
Other languages
English (en)
Other versions
JP2015045829A (ja
JP2015045829A5 (ja
Inventor
吾朗 坂田
吾朗 坂田
晃 池田
晃 池田
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 JP2013178347A priority Critical patent/JP6232850B2/ja
Priority to US14/467,286 priority patent/US9029679B2/en
Priority to CN201410437329.4A priority patent/CN104424933B/zh
Publication of JP2015045829A publication Critical patent/JP2015045829A/ja
Publication of JP2015045829A5 publication Critical patent/JP2015045829A5/ja
Application granted granted Critical
Publication of JP6232850B2 publication Critical patent/JP6232850B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/32Constructional details
    • G10H1/34Switch arrangements, e.g. keyboards or mechanical switches specially adapted for electrophonic musical instruments
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2220/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/155User input interfaces for electrophonic musical instruments
    • G10H2220/265Key design details; Special characteristics of individual keys of a keyboard; Key-like musical input devices, e.g. finger sensors, pedals, potentiometers, selectors
    • G10H2220/275Switching mechanism or sensor details of individual keys, e.g. details of key contacts, hall effect or piezoelectric sensors used for key position or movement sensing purposes; Mounting thereof
    • G10H2220/285Switching mechanism or sensor details of individual keys, e.g. details of key contacts, hall effect or piezoelectric sensors used for key position or movement sensing purposes; Mounting thereof with three contacts, switches or sensor triggering levels along the key kinematic path
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2220/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/155User input interfaces for electrophonic musical instruments
    • G10H2220/265Key design details; Special characteristics of individual keys of a keyboard; Key-like musical input devices, e.g. finger sensors, pedals, potentiometers, selectors
    • G10H2220/275Switching mechanism or sensor details of individual keys, e.g. details of key contacts, hall effect or piezoelectric sensors used for key position or movement sensing purposes; Mounting thereof
    • G10H2220/295Switch matrix, e.g. contact array common to several keys, the actuated keys being identified by the rows and columns in contact

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

本発明は、タッチ検出装置、タッチ検出方法、電子楽器及びプログラムに関する。
従来、電子ピアノ等の電子楽器において発音される音の強弱を示すベロシティ情報は、次のように検出されていた。
即ち、電子ピアノの各鍵下には、鍵の押下量(ストローク)が相互に異なる位置でオンする第1接点と第2接点とが設けられ、この第1接点と第2接点との各オンタイミングの時間差を計測し、この時間差に基づいてベロシティ情報を検出し、このベロシティ情報に基づいた強さの楽音を、接続された音源から発音する。
最近では、例えば、特許文献1に示されるような、各鍵下に3つの接点を有する電子ピアノが上市されている。これは従来からある2つの接点の中間の押下量の位置(中間ストローク位置)にもう1つの接点を追加し、3つの接点によりピアノのダンパー動作を模した音源制御を行うことができるようにしたものである。説明の便宜上、これら3つの接点を鍵の押下量が1番浅い位置から第1接点、第2接点、第3接点と呼ぶ。
このような3つの接点を有する電子ピアノにおいては、第2接点と第3接点との2つの接点が夫々オンされるタイミングの時間差に基づいてベロシティ情報を検出する点においては、2つの接点を有する電子ピアノの構造と大きく変わらない。
しかしながら、3つの接点を有する電子ピアノは、2つの接点を有する従来の電子ピアノと比較して深いストローク位置に第2接点を設置するようにすれば、アコースティックピアノと同様に、深いストローク位置における小さいストローク振幅の連打操作を検出することが可能となる。
また、3つの接点を有する電子ピアノにおける消音のタイミングの検出は、2つの接点を有する従来の電子ピアノのストローク位置と同様に、第1接点のオフのタイミングに基づいて行われる。3つの接点を有する電子ピアノにおいては、第1接点により消音(ダンパーのオン)制御を行うとともに、第2接点及び第3接点により発音制御(タッチ強度と発音開始タイミングの制御)を行うことができる。
このため、3つの接点を有する電子ピアノは、ダンパーをオフ(解放)にした状態のまま第2接点及び第3接点の繰り返し連打が行われた場合には、早いタイミングで同一音高の楽音を複数連続して発音させることが可能になり、これによって、アコースティックピアノの連打演奏を表現することできる。
特許第3922225号公報
しかしながら、こうした連打性能の実現のためには、1鍵あたり接点を従来の2つから3つへと追加して設置しなければならず、接点(スイッチ)、配線、接点マトリクス(スイッチマトリクス)用のダイオード等、多くの追加部品を必要となる。これは必然的に複雑化・高コスト化を招くものであり、このため、従来の2つの接点のみの構成で、3つの接点を有する電子ピアノと同様な連打性能を実現することが望まれていた。
本発明は、このような状況に鑑みてなされたものであり、電子楽器において、従来の2つの接点のみの構成で、3つの接点を有する電子ピアノと同様な連打性能を実現することを目的とする。
上記目的を達成するため、本発明の一態様のタッチ検出装置は、
発音すべき楽音の音高を指定する鍵毎に設けられ、当該鍵に対する押鍵操作によオンになるとともに、離鍵操作によりオフになる第1接点と、
前記押鍵操作より深いストロークの押鍵操作によりオンになるとともに、離鍵操作によりオフになる第2接点と、
前記押鍵操作により、前記第1接点がオンになってから、前記第2接点がオンになるまでの時間をカウントする押鍵カウンタと、
前記第2接点がオンになると、前記押鍵カウンタにてカウントされた時間に対応する音量でかつ前記押鍵された鍵に対応する音高の楽音の発音を指示するノートオンイベントを生成するノートオンイベント生成手段と、
前記離鍵操作により、前記第2接点がオフになってから、前記第1接点がオフになる時点までの時間をカウントする離鍵カウンタと、
前記第1接点がオフになった時点で、前記離鍵された鍵に対応する音高の楽音の消音を指示する第1ノートオフイベントを生成させるとともに、前記第1接点がオフになってから前記離鍵カウンタのカウント値に対応する時間経過後、前記離鍵された鍵に対応する音高の楽音の消音を指示する第2ノートオフイベントを生成するノートオフイベント生成手段と、
を有することを特徴とする。
本発明によれば、良好なタイミングで、複数ある楽器の音を消音することができる。
本発明の実施形態に係るタッチ検出装置が適用された電子楽器のハードウェアの構成を示すブロック図である。 本発明の実施形態に係るタッチ検出装置のハードウェアの構成を示すブロック図である。 図2のタッチ検出装置のカウンタメモリのフォーマットを説明する図である。 本実施形態に係るタッチ検出装置を構成するハードウェアにおけるステータスフラグ(ST)の推移を説明する図である。 本発明の一実施形態に係るタッチ検出装置との比較としての、3接点を有する従来のタッチ検出装置によるタッチ検出動作処理が実行された場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。 本発明の一実施形態に係るタッチ検出装置との比較としての、2接点を有するタッチ検出装置によるタッチ検出動作処理が実行された場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。 本発明の一実施形態に係るタッチ検出装置によるタッチ検出動作処理が実行された場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。 本発明の一実施形態に係るタッチ検出装置によるタッチ検出動作処理が実行された場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。 本発明の一実施形態に係るタッチ検出装置によるタッチ検出動作処理が実行された場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。 本発明の一実施形態に係るタッチ検出装置によるタッチ検出動作処理が実行された場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。 図2のタッチ検出装置が実行するタッチ検出動作処理の流れを説明するフローチャートである。 図2のタッチ検出装置が実行するタッチ検出動作処理の流れを説明するフローチャートである。 図2のタッチ検出装置が実行するタッチ検出動作処理の流れを説明するフローチャートである。 図2のタッチ検出装置が実行するタッチ検出動作処理の流れを説明するフローチャートである。 図2のタッチ検出装置が実行するタッチ検出動作処理の流れを説明するフローチャートである。 図2のタッチ検出装置が実行するタッチ検出動作処理の流れを説明するフローチャートである。 図2のタッチ検出装置が実行するタッチ検出動作処理の流れを説明するフローチャートである。 図2のタッチ検出装置が実行するタッチ検出動作処理の流れを説明するフローチャートである。 図2のタッチ検出装置が実行するタッチ検出動作処理の流れを説明するフローチャートである。
以下、図面に基づいて、本発明の実施形態に係るタッチ検出装置を説明する。
図1は、本発明の実施形態に係るタッチ検出装置50が適用された電子楽器1のハードウェアの構成を示すブロック図である。
図1において、電子楽器1は、CPU11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、バス14と、入出力インターフェース15と、入力部16と、出力部17と、記憶部18と、MIDI(Musical Instrument Digital Interface)インターフェース部19と、ドライブ20と、タッチ検出装置50と、を備えている。
CPU11は、ROM12に記録されているプログラム、又は、記憶部18からRAM13にロードされたプログラムに従って各種の処理を実行する。例えばCPU11は、タッチ検出装置50から送信された各種イベント(詳細については後述する)に基づいて発音や消音するための制御、即ち発音制御や消音制御を実行する。
RAM13には、CPU11が各種の処理を実行する上において必要なデータ等が適宜記憶される。
CPU11、ROM12、RAM13、及び後述のタッチ検出装置50は、バス14を介して相互に接続されている。このバス14にはまた、入出力インターフェース15も接続されている。入出力インターフェース15には、入力部16、出力部17、記憶部18、MIDIインターフェース部19、及びドライブ20が接続されている。
入力部16は、複数種類の音が夫々対応付けられた複数の鍵(例えば、88個の鍵)を有するMIDIキーボードを含む。電子楽器1において、複数の鍵に対応づけられた複数種類の音は、ノートナンバにより識別される。この鍵の押鍵操作及び離鍵操作は、後述するタッチ検出装置50により検出される。
具体的には、入力部16は、複数の鍵毎に設けられ、押鍵操作に応じて、順次オンされる第1接点160a及び第2接点160bが、マトリクス状に接続された鍵スイッチマトリクス160を備える。
鍵スイッチマトリクス160は、タッチ検出装置50から送信されたコモン側スイッチ入力信号(KC)に応じて、オンされた第1接点160a又は第2接点160bを検出する。そして、鍵スイッチマトリクス160は、オンされた第1接点160aを示す第1接点オン信号又はオンされた第2接点160bを示す第2接点オン信号をタッチ検出装置50に送信する。
一方、鍵スイッチマトリクス160は、鍵が押切られた状態からの離鍵操作に応じて、第2接点160b、第1接点160aの順にオフされたことを検出する。そして、鍵スイッチマトリクス160は、オフされた第1接点160aを示す第1接点オフ信号又はオフされた第2接点160bを示す第2接点オフ信号をタッチ検出装置50に送信する。
また、入力部16は、各種情報を入力するためのスイッチを備えている。そして、入力部16は、ユーザによって入力された各種情報をCPU11に出力する。
出力部17は、ディスプレイや、スピーカ及びD/A変換回路等を有しており、画像や音声を出力する。
記憶部18は、ハードディスクあるいはDRAM(Dynamic Random Access Memory)等で構成され、電子楽器1の制御のための各種プログラムを記憶する。
MIDIインターフェース部19は、楽音を生成する音源41と発音制御部としてのCPU11とを接続するインターフェースである。音源41は、予め複数種類の楽音の音色に対応する楽音波形データが記憶され、入力部16の複数の鍵のいずれかの押鍵により指定された音高に対応する速度で繰り返し読み出すことにより、楽音波形が生成、出力される。
ドライブ20には、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリ等よりなる、リムーバブルメディア31が適宜装着される。ドライブ20によってリムーバブルメディア31から読み出されたプログラムは、必要に応じて記憶部18にインストールされる。また、リムーバブルメディア31は、記憶部18に記憶されている各種データも、記憶部18と同様に記憶することができる。
次に、図2を参照して、本実施形態に係るタッチ検出装置50のハードウェアの構成について説明する。
図2は、本発明の一実施形態に係るタッチ検出装置50のハードウェア構成を示すブロック図である。
タッチ検出装置50は、制御回路としてのコントローラ51と、イベントフラグセット回路52(以下、「EVフラグセット回路52」とも呼ぶ)と、ステータス増加回路53と、第1カウンタ54と、第2カウンタ55と、カウンタメモリ56と、到達時間メモリ57と、比較回路58と、反転回路59と、ベロシティレジスタ61と、ノートナンバレジスタ62と、を備える。
コントローラ51は、鍵スイッチマトリクス160の第1接点160a及び第2接点160bと接続され、第1接点オン信号、第2接点オン信号、第1接点オフ信号、及び第2接点オフ信号を受信する。
また、コントローラ51は、タッチ検出装置50におけるその他のハードウェアを制御し、CPU11に対して、ノートオンイベントあるいはノートオフイベントを生成してバス14を介して送信する。
本実施形態において、「ノートオンイベント」は、入力部16の鍵が押鍵された場合におけるその鍵のノートナンバ、及び鍵の押下の強さを示すイニシャルタッチ情報としてのベロシティ値を含む。
なお、CPU11は、ノートオンイベントを受信したときには、音源41と協働して、当該イベントに含まれるノートナンバに対応する楽音を、ベロシティに応じた強さで発音する制御を実行する。
本実施形態において、「ノートオンイベント」は、入力部16の鍵が離鍵された場合におけるその鍵のノートナンバを少なくとも含む。
また、コントローラ51は、鍵スイッチマトリクス160にコモン側スイッチ入力信号(KC)を送信し、鍵スイッチマトリクス160から、第1接点オン信号、第2接点オン信号、第1接点オフ信号、又は第2接点オフ信号を受信する。
また、コントローラ51は、イベントフラグ(以下、「EV」とも呼ぶ)及びステータスフラグ(以下、「ST」とも呼ぶ)に応じて、タッチ検出装置50を構成する上記回路や加算器を制御する。
本実施形態において、EVの値として、“0”又は“1”を取り得る。
EVの値“0”は、何れの鍵も押鍵又は離鍵されていない状態であることを示す。
EVの値“1”は、何れかの鍵が押鍵又は離鍵されている状態であることを示す。即ち、EVの値が“1”である場合には、ノートオンイベント、又はノートオフイベントが発生したことを示す。
また、本実施形態において、STの値として、“0”、“1”、“2”、“3”、“4”、“5”、“6”又は“7”を取り得る。STは、鍵盤を測定する状態遷移を示す。
STの値“0”は、押鍵待ち状態であることを示す。
STの値“1”は、後述する押鍵バイアス時間をカウント中であることを示す。
STの値“2”は、後述する押鍵ベロシティ測定値をカウント中であることを示す。
STの値“3”は、後述する押鍵補正時間用カウンタ値をカウント中であることを示す。
STの値“4”は、離鍵待ちの状態であることを示す。
STの値“5”は、後述する離鍵バイアス時間をカウント中であることを示す。
STの値“6”は、後述する離鍵ベロシティ測定値をカウント中であることを示す。
STの値“7”は、後述する離鍵補正時間用カウンタ値をカウント中であることを示す。
コントローラ51は、これらEV及びSTの値を、カウンタメモリ56に記憶し、適宜参照するとともに、EVフラグセット回路52及びステータス増加回路53を制御して更新させる。
図3は、本実施形態に係るカウンタメモリ56のフォーマットを説明する図である。
カウンタメモリ56は、複数の鍵の夫々対応した複数のアドレス、具体的には本実施形態では88個の鍵の夫々に対応した88個のアドレス(同図中左方に記載の0〜87のアドレス)を有する。各アドレスには、対応付けられた鍵におけるEVの値、STの値、ベロシティカウンタ値、押鍵補正時間用カウンタ値、及び離鍵補正時間用カウンタ値が記憶される。詳しくは後述するが、ベロシティカウンタ値(以下、「VC」とも呼ぶ)、押鍵バイアス時間及び離鍵バイアス時間は第1カウンタ54により加算され、押鍵補正時間用カウンタ値及び離鍵補正時間用カウンタ値(以下、「TC」とも呼ぶ)は第2カウンタ55により加算される。
また、各アドレスには、鍵に対応付けられたノートナンバ(図示せず)が記憶されている。
図2に戻り、EVフラグセット回路52は、コントローラ51の制御により、カウンタメモリ56に記憶されたEVの値を更新する。
ステータス増加回路53は、コントローラ51の制御により、カウンタメモリ56に記憶されたSTの値を更新する。
第1カウンタ54は、コントローラ51の制御により、第1接点160aがオンされてから第2接点160bがオンされるまでの時間を、カウンタメモリ56のVCにおいて加算する。また、第1カウンタ54は、コントローラ51の制御により、カウンタメモリ56のVCをリセットする。
ここで、カウンタメモリ56のVCは、STの値“1”のときは押鍵バイアス時間を示し、STの値“2”のときは押鍵ベロシティ測定値を示す。即ち、押鍵ベロシティ測定値は、第1接点160aがオンされてから第2接点160bがオンされるまでの時間から、予め設定された押鍵バイアス時間が除外された時間を示す値である。
一方、カウンタメモリ56のVCは、STの値“3”のときは離鍵バイアス時間を示し、STの値“4”のときは離鍵ベロシティ測定値を示す。即ち、離鍵ベロシティ測定値は、第2接点160bがオフされてから第1接点160aがオフされるまでの時間から、予め設定された離鍵バイアス時間が除外された時間を示す値である。
第2カウンタ55は、コントローラ51の制御により、第1カウンタ54による加算が完了してからの時間を、カウンタメモリ56のTCにおいて加算する。また、第2カウンタ55は、コントローラ51の制御により、カウンタメモリ56のTCをリセットする。
到達時間メモリ57は、第1到達時間メモリ57aと第2到達時間メモリ57bとを含んで構成される。
第1到達時間メモリ57aは、VCの押鍵ベロシティ測定値に応じて、予め設定された第2カウンタ55による加算(カウント)終了時間を示す押鍵到達時間を記憶する。
第2到達時間メモリ57bは、VCの離鍵ベロシティ測定値に応じて、予め設定された第2カウンタ55による加算(カウント)終了時間を示す離鍵到達時間を記憶する。
コントローラ51は、第1カウンタ54により第1接点160aがオンされてから第2接点160bがオンされるまでカウントされた時間に応じて、押鍵タイミングを示す押鍵到達時間を予測する。また、コントローラ51は、第1カウンタ54により第2接点160bがオフされてから第1接点160aがオフされるまでカウントされた時間に応じて、後述のダンパーオン到達時間を予測する。
コントローラ51は、第2到達時間メモリ57bに記憶されている離鍵到達時間を一定時間として設定することができる。
比較回路58は、第1到達時間メモリ57aに記憶された押鍵到達時間とTCとを比較し、押鍵到達時間とTCとが一致したときに、押鍵一致信号をコントローラ51に送信する。
また、比較回路58は、第2到達時間メモリ57bに記憶された離鍵到達時間とTCとを比較し、離鍵到達時間とTCとが一致したときに、離鍵一致信号をコントローラ51に送信する。
反転回路59は、カウンタメモリ56に記憶されたVC(押鍵ベロシティ測定値、又は離鍵ベロシティ測定値)を読み込み、反転処理によりベロシティ値を算出し、算出したベロシティ値をベロシティレジスタ61にセット(格納)する。
次に、本実施形態に係るタッチ検出装置50を構成するハードウェアにおけるステータスフラグ(ST)の推移について説明するが、先ず、その前提として、本実施形態の電子楽器1のモードについて説明する。
本実施形態では、電子ピアノを例としている関係から従来のノートオフイベントを、ダンパーオンイベントとしている。ダンパーオンとは、アコースティックピアノのダンパーの機能に模して、ダンパーがピアノの弦の振動を止めて消音させるためにダンパーペダルを踏んだのと等価なことをいう。即ち、ダンパーオンイベントは、後述のダンパーオン到達時に発生するノートオフイベント(消音イベント)である。
これらのイベントの関係を規定する本実施形態の電子楽器1のモードとしては、「mode0(multi assign mode)」、「mode1(single assign mode)」、「note off enable」、「note on 2 enable」を少なくとも含む複数のモードが設けられている。コントローラ51は、複数のモードのうち何れかのモードに切り替える制御を実行する。
「mode0」は、ピアノ等のように、同時に複数のノートオンを発生させることが可能なモードである。モードが「mode0」である場合には、途中でノートオフを挟まず、複数連続してノートオンを発生させることができ、ノートオフイベント発生により発生した同一ノートの発音をすべて消音させることができる。これにより、アコースティックピアノの様に、ダンパーペダルがオンされるまで複数の押鍵(打鍵)が可能となる。
「mode1」は、オルガン等、同一の音高で、ノートオン及びノートオフを交互に発生させるモードである。モードが「mode1」である場合には、アコースティックピアノ以外のオルガン等、複数の音源ジェネレータを同一音高に対しアサインしない場合、ノートオン及びノートオフを必ず交互に発生することができる。
「note off enable」は、ノートオンイベント及びノートオフイベントが交互に発生しないが、情報として、ノートオフを発生させることもできるモードである。即ち、モードが「mode0」である場合には、ノートオンイベント及びノートオフイベントは交互に発生しないが、モードが「note off enable」である場合には、ノートオフを発生させることもできる。例えば、モードが「note off enable」である場合には、ハープシコードの2種類のフィートや、ハモンドオルガンの別フィート音を異なるタイミングで発生させることができる。この異なるタイミング差は、ベロシティにより変化するので、実物を模したタイミングでの消音が可能となる。
「note on 2 enable」は、ストローク位置が下限ストローク到達前の第2接点160bの通過時にノートオンを発生させるモードである。例えば、モードが「note on 2 enable」である場合には、ハープシコードの2種類のフィートや、ハモンドオルガンの別フィート音を異なるタイミングで発生させることができる。
これら複数のモードの変更は、後述で示すように、コントローラ51の制御に基づき、ステータスの移動先の変更、またイベントフラグに基づき実現される。
次に、図4を参照して、ステータスフラグ(ST)の推移について説明する。
図4は、本実施形態に係るタッチ検出装置50を構成するハードウェアにおけるステータスフラグ(ST)の推移を説明する図である。
まず、「押鍵待ち」の状態(図4の「状態」の項目参照)においては、コントローラ51は、ステータス増加回路53にSTの値“0”をセットさせる(図4の「ST」の項目参照)。そして、演奏者による鍵の押鍵操作が開始される。このとき、カウンタメモリ56に記憶されたEVの値は、“0”である。
さらに押鍵され、第1接点160aがオンされると、鍵スイッチマトリクス160は、第1接点オン信号をコントローラ51に送信する。
ここで、コントローラ51は、第1接点オン信号を受信すると、当該第1接点オン信号が送信された鍵を特定し、カウンタメモリ56(図3参照)において、特定した鍵のアドレスに記憶された各種値を更新させる制御を実行する。また、コントローラ51は、特定した鍵のノートナンバをノートナンバレジスタ62にセット(格納)する。
ここで、図4の「ステータス進行条件」の項目は、現在のステータスフラグ(ST)を進行させる条件を示し、「進行動作」の項目は、次に進行させるステータスフラグ(ST)を示している。
例えば、現在のSTの値“0”における「ステータス進行条件」は、第1接点160aがオンされることであり、「進行動作」は「to ST1」、つまり、STの値“0”を“1”に進めることである。
そこで、コントローラ51は、第1接点オン信号を受信すると、ステータス増加回路53にSTの値“1”をセットさせ、第1カウンタ54にVCをリセットさせてからカウントを開始させVCを加算させる。
これにより、「押鍵待ち」から「押鍵バイアス時間カウント中」の状態に移行する。つまり、この状態におけるカウンタメモリ56のVCは、押鍵バイアス時間を示す。
ここで、図4の「中止動作進行 条件喪失の場合」の項目は、「ステータス進行条件」が満たされなくなった(喪失した)場合に進行させるステータスフラグ(ST)を示している。例えば、「押鍵バイアス時間カウント中」の状態において、何らかのエラーにより「押鍵バイアス時間に到達」しない場合、STの値は“1”から“0”に変更される。即ち、「押鍵待ち」の状態に戻ることになる。
一方で、コントローラ51は、カウンタメモリ56におけるVCの値が、予め所定値に設定された押鍵バイアス時間と一致したとき、即ち、VCが押鍵バイアス時間に到達した場合には、「押鍵バイアス時間カウント中」の状態における「ステータス進行条件」を満たしたことになるので、ステータス増加回路53にSTの値“2”をセットさせ、第1カウンタ54にVCをリセットさせてからカウントを開始させVCを加算させる。
これにより、「押鍵バイアス時間カウント中」から「押鍵ベロシティ測定値カウント中」の状態に移行する。つまり、この状態におけるVCは、押鍵ベロシティ測定値を示す。
また、例えば、「押鍵ベロシティ測定値カウント中」の状態において、何らかのエラーにより「押鍵ベロシティ測定値に到達」しない場合、STの値は“2”から“0”に変更される。即ち、「押鍵待ち」の状態に戻ることになる。
さらに押鍵され、第2接点160bがオンされると、鍵スイッチマトリクス160は、第2接点オン信号をコントローラ51に送信する。
そして、コントローラ51は、第2接点オン信号を受信すると、「押鍵ベロシティ測定値カウント中」の状態における「ステータス進行条件」を満たしたことになるので、ステータス増加回路53にSTの値“3”をセットさせ、第1カウンタ54にVCのカウントを終了させ、第2カウンタ55にTCをリセットさせてからカウントを開始させTCを加算させる。
ここで、図4の「条件入力があった場合の状態」の項目は、所定の条件の入力を契機として発生する状態を示している。したがって、「押鍵ベロシティ測定値カウント中」の状態において、モードが「note on 2 enable」である場合には、コントローラ51は、第2接点オン信号を受信すると、押鍵を完了し、ノートオンイベントを発生させる。これにより、「押鍵ベロシティ測定値カウント中」から「押鍵補正時間カウント中」の状態に移行する。つまり、この状態におけるTCは、押鍵補正時間を示す。
また、例えば、「押鍵補正時間カウント中」の状態において、何らかのエラーにより「押鍵補正時間に到達」しない場合、STの値は“3”から“0”に変更される。即ち、「押鍵待ち」の状態に戻ることになる。
また、この間において、反転回路59は、カウンタメモリ56に記憶されたVC(押鍵ベロシティ測定値)を読み込み、反転処理によりベロシティ値を算出し、算出したベロシティ値をベロシティレジスタ61にセット(格納)する。そして、コントローラ51は、割り込み信号、ノートナンバレジスタ62にセット(格納)されたノートナンバ及びベロシティレジスタ61にセット(格納)されたベロシティ値を含む発音情報を生成する。
次に、比較回路58は、第1到達時間メモリ57aに予め目標すべき値として所定値に設定された押鍵到達時間とTCとを比較し、押鍵到達時間とTCとが一致したとき、即ち、TC(押鍵補正時間)が押鍵到達時間に到達した場合には、「押鍵補正時間カウント中」の状態における「ステータス進行条件」を満たしたことになるので、EVフラグセット回路52にEVの値“1”をセットさせ、ステータス増加回路53にSTの値“4”をセットさせ、押鍵一致信号をコントローラ51に送信する。コントローラ51は、押鍵一致信号を受信すると、発音制御部としてのCPU11に、ベロシティ値を含む発音情報を送信する。即ち、「押鍵補正時間カウント中」の状態において、コントローラ51は、押鍵到達時間に到達すると、押鍵を完了し、ノートオンイベントを発生させる。これにより、「押鍵補正時間カウント中」から「離鍵待ち」の状態に移行する。そして、CPU11は、コントローラ51から送信された発音情報に基づく音を発音する発音処理を実行する。
続いて、演奏者による鍵の離鍵操作が開始される。このとき、カウンタメモリ56に記憶されたEVの値は、“1”である。
さらに離鍵され、第2接点160bがオフされると、鍵スイッチマトリクス160は、第2接点オフ信号をコントローラ51に送信する。
ここで、コントローラ51は、第2接点オフ信号を受信すると、当該第2接点オフ信号が送信された鍵を特定し、カウンタメモリ56(図3参照)において、特定した鍵のアドレスに記憶された各種値を更新させる制御を実行する。また、コントローラ51は、特定した鍵のノートナンバをノートナンバレジスタ62にセット(格納)する。
そして、コントローラ51は、第2接点オフ信号を受信すると、「離鍵待ち」の状態における「ステータス進行条件」を満たしたことになるので、EVフラグセット回路52にEVの値“5”をセットさせ、ステータス増加回路53にSTの値“5”をセットさせ、第1カウンタ54にVCをリセットさせてからカウントを開始させVCを加算させる。これにより、「離鍵待ち」から「離鍵バイアス時間カウント中」の状態に移行する。つまり、この状態におけるカウンタメモリ56のVCは、離鍵バイアス時間を示す。ここで、例えば、「離鍵バイアス時間カウント中」の状態において、何らかのエラーにより「離鍵バイアス時間に到達」しない場合、STの値は“5”から“4”に変更される。即ち、「離鍵待ち」の状態に戻ることになる。
一方で、コントローラ51は、カウンタメモリ56におけるVCの値が、予め所定値に設定された離鍵バイアス時間と一致したとき、即ち、VCの値が離鍵バイアス時間に到達した場合には、「離鍵バイアス時間カウント中」の状態における「ステータス進行条件」を満たしたことになるので、ステータス増加回路53にSTの値“6”をセットさせ、第1カウンタ54にVCをリセットさせてからカウントを開始させVCを加算させる。即ち、「離鍵バイアス時間カウント中」の状態において、モードが「note off enable」である場合には、コントローラ51は、離鍵バイアス時間に到達すると、離鍵を完了し、ノートオフイベントを発生させる。これにより、「離鍵バイアス時間カウント中」から「離鍵ベロシティ測定値カウント中」の状態に移行する。つまり、この状態におけるVCは、離鍵ベロシティ測定値を示す。
ここで、例えば、「離鍵ベロシティ測定値カウント中」の状態において、何らかのエラーにより「離鍵ベロシティ測定値に到達」しない場合において、モードが「mode0」である場合には、STの値は“6”から“1”に変更される。即ち、「押鍵バイアス時間カウント中」の状態に戻り、再びノートオン計測状態となる。一方で、モードが「mode1」である場合には、STの値は“6”から“4”に変更される。即ち、再びノートオン計測状態に移行させることで、ノートオンの発生は行わず、離鍵中止扱いとして離鍵待ち状態となる。
さらに離鍵され、第1接点160aがオフされると、鍵スイッチマトリクス160は、第1接点オフ信号をコントローラ51に送信する。このとき、コントローラ51は、モードが「note off enable」の場合には、ノートオフイベントを発生させる。
そして、コントローラ51は、第1接点オフ信号を受信すると、「離鍵ベロシティ測定値カウント中」の状態における「ステータス進行条件」を満たしたことになるので、EVフラグセット回路52にEVの値“1”をセットさせ、ステータス増加回路53にSTの値“7”をセットさせ、第1カウンタ54にVCのカウントを終了させ、第2カウンタ55にTCをリセットさせてからカウントを開始させTCを加算させる。これにより、「離鍵ベロシティ測定値カウント中」から「離鍵補正時間カウント中」の状態に移行する。つまり、この状態におけるTCは、離鍵補正時間を示す。
また、「離鍵補正時間カウント中」の状態において、何らかのエラーにより「離鍵補正時間に到達」しない場合において、モードが「mode0」である場合には、STの値は“7”から“1”に変更される。即ち、「押鍵バイアス時間カウント中」の状態に戻り、再びノートオン計測状態となる。一方で、モードが「mode1」である場合には、STの値は“7”から“4”に変更される。即ち、再びノートオン計測状態に移行させることで、ノートオンの発生は行わず、離鍵中止扱いとして離鍵待ち状態となる。
また、この間において、反転回路59は、カウンタメモリ56に記憶されたVC(離鍵ベロシティ測定値)を読み込み、反転処理によりベロシティ値を算出し、算出したベロシティ値をベロシティレジスタ61にセット(格納)する。そして、コントローラ51は、割り込み信号、ノートナンバレジスタ62にセット(格納)されたノートナンバ及びベロシティレジスタ61にセット(格納)されたベロシティ値を含むノートオフイベントを生成する。
次に、比較回路58は、第1到達時間メモリ57aに予め目標すべき値として所定値に設定された離鍵到達時間とTCとを比較し、離鍵到達時間とTCとが一致したとき、即ち、TC(離鍵補正時間)が離鍵到達時間に到達した場合には、「離鍵補正時間カウント中」の状態における「ステータス進行条件」を満たしたことになるので、EVフラグセット回路52にEVの値“1”をセットさせ、ステータス増加回路53にSTの値“0”をセットさせ、離鍵一致信号をコントローラ51に送信する。コントローラ51は、離鍵一致信号を受信すると、消音制御部としてのCPU11に、ベロシティ値を含むノートオフイベントを送信する。即ち、「離鍵補正時間カウント中」の状態において、コントローラ51は、離鍵到達時間に到達すると、離鍵を完了し、ノートオフイベントであるダンパーオンイベントを発生させる。これにより、「離鍵補正時間カウント中」から「押鍵待ち」の状態に移行する。そして、CPU11は、コントローラ51から送信されたノートオフイベントに基づく音を消音する消音処理を実行する。
次に、比較回路58は、第2到達時間メモリ57bに予め目標すべき値として設定された離鍵到達時間とTCとを比較し、離鍵到達時間とTCとが一致したとき、即ち、TC(離鍵補正時間)が離鍵到達時間に到達した場合に、離鍵一致信号をコントローラ51に送信する。コントローラ51は、離鍵一致信号を受信すると、消音制御部としてのCPU11に、ベロシティ値を含むノートオフイベントを送信する。
そして、CPU11は、コントローラ51から送信されたノートオフイベントに基づく音を消音する消音処理を実行する。
なお、以上のタッチ検出装置50が実行する一連の処理を、以下、「タッチ検出動作処理」と呼ぶ。
以下、図5乃至図10を参照して、タッチ検出装置50によるタッチ検出動作処理が実行された場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングについて説明する。
より具体的には、先ず本実施形態の理解を容易なものとすべく、図5を参照して、3接点の従来のタッチ検出装置(図示せず)によるタッチ検出動作処理が実行された場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する。
次に、本発明人により発明された、本実施形態の基礎となるタッチ検出装置(図示せず)によるタッチ検出動作処理が実行された場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する。
その後、図7乃至図10を参照して、本実施形態のタッチ検出装置50によるタッチ検出動作処理が実行された場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する。
図5は、ストローク位置の異なる3つの接点によりベロシティ情報の検出を行う従来の電子ピアノに設けられたタッチ検出装置(図示せず)を用いた場合の、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。
説明の便宜上、これら3つの接点をストローク位置の1番浅い位置から第1接点、第2接点、第3接点と呼ぶ。
図5の従来のタッチ検出装置は、押鍵時には、第2接点と第3接点の2つの接点がオンされる時間の差(ta2−a1)を計測する。そして、図5の従来のタッチ検出装置は、計測した時間の差(ta2−a1)に基づいて、下限ストローク位置に到達する時間(押鍵到達時間)ta3を予測し、予測時間ta3においてノートオンイベントを発生する。
そして、離鍵時には、図5の従来のタッチ検出装置は、第1接点がオフされるタイミングの時間ta4でノートオフ(本実施形態のダンパーオンと等価)イベントを発生する。
このような図5の従来のタッチ検出装置では、3つの接点によりベロシティ情報が検出されるので、1鍵盤あたり接点を2つから3つへと追加して設置しなければならず、接点、配線、接点マトリクス用のダイオード等、多くの追加部品が必要となる。
そこで、本発明人は、接点としては2つのみを用い、連打性を実現するためのタッチ検出装置を発明した。ここで、説明の便宜上、これら2つの接点は、ストローク位置の1番浅い位置から第1接点、第2接点と呼ぶ。
先ず、本発明人は、本実施形態のタッチ検出装置50の基礎となるものとして、図6に示すように、従来の2接点方式よりも深いストローク位置に第1接点を設置するようにした、タッチ検出装置(図示せず)を発明した。
図6は、本発明人により発明された、ストローク位置の異なる2つの接点によりベロシティ情報の検出を行うタッチ検出装置(図示せず)を用いた場合の、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。
図6に示されるように、押鍵時には、第1接点及び2接点の順でオンされた時間の差(tb2−tb1)を計測する。そして、計測した時間の差(tb2−b1)に基づいて、下限ストローク位置に到達する時間(押鍵到達時間)tb3を予測し、予測時間tb3においてノートオンイベントを発生する。
また、例えばモードが「note off enable」の場合、図6のタッチ検出装置は、離鍵時において、第2接点及び第1接点の順でオフされた時間の差(tb5−tb4)に基づきオフベロシティ値を計測するとともに、ノートオフイベントを発生している。
この図6のような場合では、ノートオフイベントが発生される際のストローク位置が深くなる。その結果、離鍵タイミングが早すぎたり、また、予期しないような浅い位置で離鍵が発生したりするおそれが生ずる。
そこで、本発明人は、このようなおそれを防止すべく、本実施形態のタッチ検出装置50を発明した。即ち、本実施形態のタッチ検出装置50は、図4に示すタイミングで、タッチ検出装置50の各ハードウェアを動作させることで、図7乃至10に示すようなタイミングで発音又は消音させるようにした。
図7乃至10は、本発明の実施形態に係るタッチ検出装置50を用いた場合の、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。本実施形態に係るタッチ検出装置50は、図5の実施形態に係る3つの接点を用いた場合と同様なイベント発生を、2つの接点であって、第1接点を従来と同様の位置で実現することを目的としている。
図7乃至10の本実施形態においては、押鍵により第1接点160aがオンされると、押鍵バイアス時間が加算され、次に押鍵ベロシティ測定値が加算される。そして、さらに押鍵され第2接点160bがオンされると、押鍵ベロシティ測定値に応じた押鍵補正時間が加算され、この押鍵補正時間経過後に発音制御部において発音処理が実行される。これにより、鍵が押し切られたタイミングで発音される。さらに、離鍵により第2接点160bがオフされると、離鍵バイアス時間が加算され、次に離鍵ベロシティ測定値が加算される。そして、さらに離鍵され第1接点160aがオフされると、離鍵ベロシティ測定値に応じた離鍵補正時間が加算され、この離鍵補正時間経過後に消音制御部において消音処理が実行される。
図7の例では、タッチ検出装置50は、ノートオンの際の押鍵ベロシティ値から、押鍵到達時間(下限ストロークの位置に到達する時間)を推測する方法と同様に、ノートオフの際の離鍵ベロシティ値から、ダンパーオンに到達する時間(以下、「ダンパーオン到達時間」と呼ぶ)を予測(推定)する。
詳細には、タッチ検出装置50は、離鍵時には、第2接点160b及び第1接点160aの順でオフされた時間の差(tc1−tc2)から、ダンパーオン到達時間tc3を推定(計測)する。その後、ダンパーオン時間td3の経過後にダンパーオンイベント、つまりノートオフイベントを発生する制御を行うことができる。
この際の、ダンパーオン到達時間は、従来のタッチ検出装置における第1接点の位置にストロークが到達する時間と同一と捉えられる。
このようにして、2つの接点のみで、3つの接点によりベロシティ情報を検出する電子ピアノと同様な連打性能と音の重なりを実現することができる。
なお、図7の例の押鍵時については、タッチ検出装置50は、第1接点160a及び第2接点160bの順でオンされた時間の差(tc5−tc4)から、下限ストローク位置に到達する時間(押鍵到達時間)tc6を推定(計測)し、推定(計測)した時間tc6においてノートオンイベントを発生する。
図8は、本実施形態のタッチ検出装置50において、「note on 2 enable」又は「note off enable」の2つのモードを双方アサートした場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。
詳細には、図8の例では、タッチ検出装置50は、離鍵時には、第2接点160b及び第1接点160aの順でオフされた時間の差(td2−td1)から、ダンパーオン時間td3を推定(計測)する。この際、図8の例では図7の例と同様に、タッチ検出装置50は、第1接点160aのオフの時間td2に基づいてすぐにノートオフイベント1を発生し、その後、ダンパーオン時間td3の経過後にダンパーオンイベント、つまりノートオフイベント2を発生する制御を行うことができる。
一方、図8の例の押鍵時については、タッチ検出装置50は、第1接点160a及び第2接点160bの順でオフされた時間の差(td5−td4)から、押鍵タイミングを示すダンパー位置に到達する時間(押鍵到達時間)td6を推定(計測)する。
この際、タッチ検出装置50は、第2接点160bのオンの時間td5に基づいてすぐにノートオンイベントを発生し、さらに、押鍵到達時間td6の経過後にノートオンイベントを発生する制御を行うことができる。
これにより、本実施形態に係るタッチ検出装置50は、夫々異なる音源(例えば、第1ジェネレータ及び第2ジェネレータ)によりハープシコードの2種類のフィートや、ハモンドオルガン等の別フィート音を別タイミングに発生させることができる。この異なるタイミング差は、ベロシティにより変化するので、実物を模したタイミングでの消音が可能となる。このようにして、ハープシコードやハモンドオルガン等、音の発生タイミングが複数ある楽器の音を再現することができる。
図9は、本実施形態のタッチ検出装置50において、モードが「mode0」である場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。
図9の例では、連打の様子と、ピアノ音を制御する場合の音源(第1ジェネレータ、第2ジェネレータ、第3ジェネレータ)のアサイン状況が示されている。
図9の例では、タッチ検出装置50において、第1接点がストロークの深い位置に設置されており、これにより、深い位置でのストローク振幅の少ない連打、トリルに対応可能となっている。
詳細には、タッチ検出装置50は、離鍵時には、第2接点160b及び第1接点160aの順でオフされた時間の差(te2−te1)から、ダンパーオン到達時間td4を推定(計測)する。
この際、第1接点160aが再びオンされた時間te3が、ダンパーオン到達時間td4よりも早い場合には、タッチ検出装置50は、ダンパーオンイベント(ノートオフイベント)を発生せずに、第1接点160aのオンの時間te3に基づいてすぐにノートオンイベントを発生する制御を行うことにより、別の音源(例えば、第2ジェネレータ)により、異なる音を発生させることができる。
このように、図9の例では、タッチ検出装置50は、ダンパーオン到達時間td4内に鍵盤が再び第1接点160aをオンするといった連打がなされた場合、即ち、第1接点160aが再びオンされた時間te3が、ダンパーオン到達時間td4よりも早い場合には、ピアノにおいて弦のダンパーが解放されたまま打弦を繰り返されるのと同様に、音源ジェネレータを複数アサインすることができる。
これに対し、ダンパーオン到達時間td8内に、第1接点160aが再びオンされなかった場合(図9中一番右方の場合)には、タッチ検出装置50は、ダンパーオン到達時間td8においてダンパーオンイベント(ノートオフイベント)を発生する制御を行う。これにより、3つのジェネレータがオフになる。
図10は、本実施形態のタッチ検出装置50において、モードが「mode1」である場合における、押鍵により発音されてから離鍵により消音されるまでのタイミングを説明する図である。
図10では、電子楽器1を、ピアノ以外の楽器(単一鍵盤に複数のジェネレータをアサインしない場合)に模した例が示されている。
詳細には、タッチ検出装置50は、離鍵時には、第2接点160b及び第1接点160aの順でオフされた時間の差(tf2−tf1)から、仮想第1接点に到達する時間(以下、「仮想ダンパーオン時間」と呼ぶ)tf4を推定(計測)する。
この際、第1接点160aが再びオンされた時間tf3が、仮想ダンパーオン時間tf4よりも早い場合には、タッチ検出装置50は、継続して音源(第1ジェネレータ)により、同一の音を発生させることができる。
これに対し、第1接点160aが再びオンされた時間tf8が、仮想ダンパーオン時間tf7よりも遅い場合には、タッチ検出装置50は、仮想ダンパーオン時間tf7においてダンパーオフイベント(ノートオフイベント)を発生する制御を行う。
このようにすることで、本実施形態の検出装置50は、連打を優先して第1接点を深くすると離鍵タイミングが早過ぎる、あるいは予期しない浅い位置での離鍵が発生するという弊害を防ぐことができる。
次に、図11から図19を参照して、本実施形態に係るタッチ検出装置50を構成するハードウェアのタッチ検出動作処理について説明する。
図11乃至図19は、本実施形態に係るタッチ検出装置50のタッチ検出動作処理の流れを説明するフローチャートである。
図11に示すように、ステップS1において、コントローラ51は、カウンタメモリ56のEVの値が“1”であるか否かを判定する。EVの値が“1”である場合にはステップS1においてYESであると判定され、処理はステップS2に移る。これに対し、EVの値が“1”でない場合には、ステップS1においてNOであると判定され、処理はステップS5に移る。ステップS5以降の処理については、後述する。
ステップS2において、反転回路59は、カウンタメモリ56に記憶されたVC(押鍵ベロシティ測定値)を読み込み、反転処理によりベロシティ値を算出し、算出したベロシティ値をベロシティレジスタ61にセット(格納)する。
ステップS3において、コントローラ51は、第1接点オン信号又は第2接点オン信号を受信した鍵のノートナンバをノートナンバレジスタ62にセット(格納)する。
ステップS4において、EVフラグセット回路52は、EVに“0”をセットすることにより、カウンタメモリ56に記憶されたEVの値を“0”に更新する。この処理が終了すると、タッチ検出動作処理は終了となる。
ステップS5において、コントローラ51は、カウンタメモリ56のSTの値が“0”であるか否かを判定する。STの値が“0”である場合には、ステップS5においてYESであると判定され、処理はステップS6に移る。これに対し、STの値が“0”でない場合には、ステップS5においてNOであると判定され、処理はステップS10に移る。ステップS10以降の処理については、後述する。
ステップS6において、コントローラ51は、第1接点オン信号を受信したか否かを判定する。第1接点オン信号を受信した場合には、ステップS6においてYESであると判定され、処理はステップS7に移る。これに対し、第1接点オン信号を受信していない場合には、ステップS6においてNOであると判定され、タッチ検出動作処理は終了となる。
ステップS7において、ステータス増加回路53は、STに“1”をセットすることにより、カウンタメモリ56に記憶されたSTの値を“1”に更新する。
ステップS8において、第1カウンタ54は、カウンタメモリ56のVCをリセットする。
ステップS9において、第1カウンタ54は、カウンタメモリ56のVC(押鍵バイアス時間)のカウントを開始し、カウンタメモリ56のVCにおいて加算する。この処理が終了するとタッチ検出動作処理は終了となる。
図12に示すように、ステップS10において、コントローラ51は、カウンタメモリ56のSTの値が“1”であるか否かを判定する。STの値が“1”である場合、ステップS10においてYESであると判定されて、処理はステップS11に移る。これに対し、STの値が“1”でない場合、ステップS10においてNOであると判定されて、処理はステップS21に移る。ステップS21以降の処理については、後述する。
ステップS11において、コントローラ51は、第1接点オン信号を受信したか否かを判定する。第1接点オン信号を受信した場合には、ステップS11においてYESであると判定され、処理はステップS12に移る。これに対し、第1接点オン信号を受信していない場合には、ステップS11においてNOであると判定され、処理はステップS25に進む。ステップS25以降の処理については、後述する。
図13に示すように、ステップS12において、コントローラ51は、第2接点オン信号を受信したか否かを判定する。第2接点オン信号を受信した場合には、ステップS12においてYESであると判定され、処理はステップS13に移る。これに対し、第2接点オン信号を受信していない場合には、ステップS12においてNOであると判定され、処理はステップS17に移る。ステップS17以降の処理については、後述する。
図14に示すように、ステップS13において、ステータス増加回路53は、STに“3”をセットすることにより、カウンタメモリ56に記憶されたSTの値を“3”に更新する。
ステップS14において、第2カウンタ55は、カウンタメモリ56のTCをリセットする。
ステップS15において、第2カウンタ55は、TCのカウントを開始し、カウンタメモリ56のTCを加算する。
ステップS16において、EVフラグセット回路52は、モードが「note on 2 enable」である場合には、EVに“1”をセットすることにより、カウンタメモリ56に記憶されたEVの値を“1”に更新する。この処理が終了すると、タッチ検出動作処理は終了となる。
図13に戻って、ステップS17において、コントローラ51は、カウンタメモリ56のVCが予め設定された押鍵バイアス時間と一致するか否か、即ち、VCが予め定めた所定値と一致することにより押鍵バイアス時間に到達したか否かを判定する。VCが押鍵バイアス時間と一致する場合には、ステップS17においてYESであると判定されて、処理はステップS18に移る。これに対し、VCが押鍵バイアス時間と一致しない場合には、ステップS17においてNOであると判定されて、処理はステップS21に移る。ステップS21以降の処理については、後述する。
ステップS18において、ステータス増加回路53は、STに“2”をセットすることにより、カウンタメモリ56に記憶されたSTの値を“2”に更新する。
ステップS19において、第1カウンタ54は、カウンタメモリ56のVCをリセットする。
ステップS20において、第1カウンタ54は、カウンタメモリ56のVC(押鍵ベロシティ測定値)のカウントを開始し、カウンタメモリ56のVCを加算する。この処理が終了するとタッチ検出動作処理は終了となる。
ステップS21において、第1カウンタ54は、VCカウントアップを行い、カウンタメモリ56のVCの加算を継続する。
図12に戻って、ステップS22において、コントローラ51は、カウンタメモリ56のSTの値が“2”であるか否かを判定する。STの値が“2”である場合には、ステップS22においてYESであると判定されて、処理はステップS23に移る。これに対し、STの値が“2”でない場合には、ステップS22においてNOであると判定されて、処理はステップS26に処理を移す。ステップS26以降の処理については、後述する。
ステップS23において、コントローラ51は、第1接点オン信号を受信したか否かを判定する。第1接点オン信号を受信した場合には、ステップS23においてYESであると判定されて、処理はステップS24に移る。これに対し、第1接点オン信号を受信していない場合には、ステップS23においてNOであると判定されて、処理はステップS25に動作を移す。ステップS25以降の処理については、後述する。
図13に示すように、ステップS24において、コントローラ51は、第2接点オン信号を受信したか否かを判定する。第2接点オン信号を受信した場合には、ステップS24においてYESであると判定されて、処理はステップS13に移る。これに対し、第2接点オン信号を受信していない場合には、ステップS24においてNOであると判定されて、処理はステップS21に移る。
図12に示すように、ステップS25において、ステータス増加回路53は、STに“0”をセットすることにより、カウンタメモリ56に記憶されたSTの値を“0”に更新する。この処理が終了するとタッチ検出動作処理は終了となる。
図15に示すように、ステップS26において、コントローラ51は、カウンタメモリ56のSTの値が“3”であるか否かを判定する。STの値が“3”である場合にはステップS26においてYESであると判定されて、処理はステップS26に移る。これに対し、STの値が“3”でない場合には、ステップS26においてNOであると判定されて、処理はステップS30に移る。ステップS30以降の処理については、後述する。
ステップS27において、比較回路58は、第1到達時間メモリ57aに記憶された押鍵到達時間と、カウンタメモリ56のTCと、を比較し、押鍵到達時間とTCとが一致するか否かを判定する。押鍵到達時間とTCとが一致すると判定した場合には、ステップS27においてYESであると判定され、処理はステップS28に移る。これに対し、押鍵到達時間とTCとが一致しないと判定した場合はステップS27においてNOであると判定されて、処理はステップS29に移る。ステップS29以降の処理については、後述する。
ステップS28において、ステータス増加回路53は、STに“4”をセットすることにより、カウンタメモリ56に記憶されたSTの値を“4”に更新する。この処理が終了すると、タッチ検出動作処理は終了となる。
ステップS29において、第2カウンタ55は、TCカウントアップを行い、カウンタメモリ56のTCの加算を継続する。この処理が終了すると、タッチ検出動作処理は終了となる。
ステップS30において、コントローラ51は、カウンタメモリ56のSTの値が“4”であるか否かを判定する。STの値が“4”である場合にはステップS30においてYESであると判定されて、処理はステップS31に移る。これに対し、STの値が“4”でない場合には、ステップS30においてNOであると判定されて、処理はステップS35に移る。ステップS35以降の処理については、後述する。
ステップS31において、コントローラ51は、第2接点オン信号を受信したか否かを判定する。第2接点オン信号を受信した場合には、ステップS31においてYESであると判定されて、処理はステップS32に移る。これに対し、第2接点オン信号を受信していない場合には、ステップS31においてNOであると判定されて、タッチ検出動作処理は終了となる。
ステップS32において、ステータス増加回路53は、STに“5”をセットすることにより、カウンタメモリ56に記憶されたSTの値を“5”に更新する。
ステップS33において、第1カウンタ54は、カウンタメモリ56のVCをリセットする。
ステップS34において、第1カウンタ54は、カウンタメモリ56のVC(離鍵バイアス時間)のカウントを開始し、カウンタメモリ56のVCにおいて加算する。この処理が終了するとタッチ検出動作処理は終了となる。
図16に示すように、ステップS35において、コントローラ51は、カウンタメモリ56のSTの値が“5”であるか否かを判定する。STの値が“5”である場合、ステップS35においてYESであると判定されて、処理はステップS36に移る。これに対し、STの値が“5”でない場合、ステップS36においてNOであると判定されて、処理はステップS47に移る。ステップS47以降の処理については、後述する。
ステップS36において、コントローラ51は、第1接点オフ信号を受信したか否かを判定する。第1接点オフ信号を受信した場合には、ステップS36においてYESであると判定され、処理はステップS37に移る。これに対し、第1接点オフ信号を受信していない場合には、ステップS36においてNOであると判定され、処理はステップS50に進む。ステップS50以降の処理については、後述する。
図17に示すように、ステップS37において、コントローラ51は、第1接点オフ信号を受信したか否かを判定する。第1接点オフ信号を受信した場合には、ステップS37においてYESであると判定され、処理はステップS38に移る。これに対し、第1接点オフ信号を受信していない場合には、ステップS37においてNOであると判定され、処理はステップS42に移る。ステップS42以降の処理については、後述する。
図18に示すように、ステップS38において、ステータス増加回路53は、STに“7”をセットすることにより、カウンタメモリ56に記憶されたSTの値を“7”に更新する。
ステップS39において、第2カウンタ55は、カウンタメモリ56のTCをリセットする。
ステップS40において、第2カウンタ55は、TCのカウントを開始し、カウンタメモリ56のTCを加算する。
ステップS41において、EVフラグセット回路52は、モードが「note off enable」である場合には、EVに“1”をセットすることにより、カウンタメモリ56に記憶されたEVの値を“1”に更新する。この処理が終了すると、タッチ検出動作処理は終了となる。
図17に戻って、ステップS42において、コントローラ51は、カウンタメモリ56のVCが予め設定された離鍵バイアス時間と一致するか否か、即ち、VCが予め定めた所定値と一致することにより離鍵バイアス時間に到達したか否かを判定する。VCが離鍵バイアス時間と一致する場合には、ステップS42においてYESであると判定されて、処理はステップS43に移る。これに対し、VCが離鍵バイアス時間と一致しない場合には、ステップS42においてNOであると判定されて、処理はステップS46に移る。ステップS46以降の処理については、後述する。
ステップS43において、ステータス増加回路53は、STに“6”をセットすることにより、カウンタメモリ56に記憶されたSTの値を“6”に更新する。
ステップS44において、第1カウンタ54は、カウンタメモリ56のVCをリセットする。
ステップS45において、第1カウンタ54は、カウンタメモリ56のVC(離鍵ベロシティ測定値)のカウントを開始し、カウンタメモリ56のVCを加算する。この処理が終了するとタッチ検出動作処理は終了となる。
ステップS46において、第1カウンタ54は、VCカウントアップを行い、カウンタメモリ56のVCの加算を継続する。
図16に戻って、ステップS47において、コントローラ51は、カウンタメモリ56のSTの値が“6”であるか否かを判定する。STの値が“6”である場合には、ステップS47においてYESであると判定されて、処理はステップS48に移る。これに対し、STの値が“6”でない場合には、ステップS47においてNOであると判定されて、処理はステップS51に処理を移す。ステップS51以降の処理については、後述する。
ステップS48において、コントローラ51は、第1接点オフ信号を受信したか否かを判定する。第1接点オフ信号を受信した場合には、ステップS48においてYESであると判定されて、処理はステップS49に移る。これに対し、第1接点オフ信号を受信していない場合には、ステップS48においてNOであると判定されて、処理はステップS50に動作を移す。ステップS50以降の処理については、後述する。
図17に示すように、ステップS49において、コントローラ51は、第1接点オフ信号を受信したか否かを判定する。第1接点オフ信号を受信した場合には、ステップS49においてYESであると判定されて、処理はステップS38に移る。これに対し、第1接点オフ信号を受信していない場合には、ステップS49においてNOであると判定されて、処理はステップS46に移る。
図16に示すように、ステップS50において、ステータス増加回路53は、STに“5”をセットすることにより、カウンタメモリ56に記憶されたSTの値を“5”に更新する。
図19に示すように、ステップS51において、コントローラ51は、カウンタメモリ56のSTの値が“7”であるか否かを判定する。STの値が“7”である場合にはステップS51においてYESであると判定されて、処理はステップS52に移る。これに対し、STの値が“7”でない場合には、ステップS51においてNOであると判定されて、タッチ検出動作処理は終了となる。
ステップS52において、コントローラ51は、第2接点オフ信号を受信したか否かを判定する。第2接点オフ信号を受信した場合には、ステップS52においてYESであると判定されて、処理はステップS53に移る。これに対し、第2接点オフ信号を受信していない場合には、ステップS52においてNOであると判定されて、処理はステップS57に動作を移す。ステップS57以降の処理については、後述する。
ステップS53において、コントローラ51は、第1接点オフ信号を受信したか否かを判定する。第1接点オフ信号を受信した場合には、ステップS53においてYESであると判定されて、処理はステップS54に移る。これに対し、第1接点オフ信号を受信していない場合には、ステップS53においてNOであると判定されて、処理はステップS57に動作を移す。ステップS57以降の処理については、後述する。
ステップS54において、比較回路58は、第2到達時間メモリ57bに記憶されたダンパーオン時間と、カウンタメモリ56のTCと、を比較し、ダンパーオン時間とTCとが一致するか否かを判定する。ダンパーオン時間とTCとが一致すると判定した場合には、ステップS54においてYESであると判定され、処理はステップS55に移る。これに対し、一致しないと判定した場合はステップS54においてNOであると判定されて、処理はステップS56に移る。ステップS56以降の処理については、後述する。
ステップS55において、EVフラグセット回路52は、EVに“1”をセットすることにより、カウンタメモリ56に記憶されたEVの値を“1”に更新する。この処理が終了すると、タッチ検出動作処理は終了となる。
ステップS56において、第2カウンタ55は、TCカウントアップを行い、カウンタメモリ56のTCの加算を継続する。この処理が終了すると、タッチ検出動作処理は終了となる。
ステップS57において、ステータス増加回路53は、モードが「mode0」である場合、STに“1”をセットすることにより、カウンタメモリ56に記憶されたSTの値を“1”に更新する。また、ステータス増加回路53は、モードが「mode1」である場合、STに“4”をセットすることにより、カウンタメモリ56に記憶されたSTの値を“4”に更新する。この処理が終了すると、タッチ検出動作処理は終了となる。
以上説明したように、本実施形態のタッチ検出装置50は、第1接点160aと、第2接点160bと、押鍵カウンタ(第1カウンタ54)と、ノートオンイベント生成部としてのコントローラ51と、離鍵カウンタ(第2カウンタ55)と、ノートオフイベント生成部としてのコントローラ51と、を有する。
第1接点160aは、発音すべき楽音の音高を指定する鍵毎に設けられ、当該鍵に対する押鍵操作による押下量が第1の値になったときにオンになるとともに、離鍵操作により押下量が第1の値に戻ったときにオフになる。
第2接点160bは、押鍵操作により鍵の押下量が第1の値より大きい第2の値になったときにオンになるとともに、離鍵操作により押下量が第2の値に戻ったときにオフになる。
押鍵カウンタ(第1カウンタ54)は、押鍵操作により、第1接点がオンになってから、第2接点がオンになるまでの時間をカウントする。
ノートオンイベント生成部としてのコントローラ51は、第2接点160bがオンになると、押鍵カウンタ(第1カウンタ54)にてカウントされた時間に対応する音量でかつ押鍵された鍵に対応する音高の楽音の発音を指示するノートオンイベントを生成する。
離鍵カウンタ(第2カウンタ55)は、離鍵操作により、第2接点160bがオフになってから、第1接点160aがオフになる時点までの時間をカウントする。
ノートオフイベント生成部としてのコントローラ51は、第1接点160aがオフになってから離鍵カウンタのカウント値に対応する時間経過後、離鍵された鍵に対応する音高の楽音の消音を指示するノートオフイベントを生成する。
これにより、第1接点160aと第2接点160bとの2つの接点(スイッチ)でダンパーオン到達時間を予測することにより、任意に設定できるノートオフイベントが発生する位置を2つの接点のオフの時間差から発生させることができる。これにより、2つの接点のみで、3つの接点を有する電子ピアノと同様な同音連打やトリルを実現することができ、多様な音の重なりを制御することができる。さらに、2つの接点(スイッチ)のみで離鍵到達時間を予測するので、離鍵タイミングを検知するため専用の接点(スイッチ)や回路を不要にし、コストの低減を図ることができる。
また、本実施形態のタッチ検出装置50は、さらに、判別部としてのコントローラ51と、制御部としてのコントローラ51と、を有する。
判別部としてのコントローラ51は、ノートオンイベント生成部としてのコントローラ51によるノートオフイベント生成前に、第1接点160aが再度オンになったか否かを判別する。
制御部としてのコントローラ51は、判別部としてのコントローラ51により再度オンになったと判別された場合は、ノートオフイベント生成部としてのコントローラ51でノートオフイベントの生成をさせずに、第2接点160bがオンになった時点でノートオンイベント生成部としてのコントローラ51に対して押鍵されている鍵に対応する音高の楽音の発音を指示する新たなノートオンイベントを生成させるように制御する。
これにより、第1接点160aをストロークの深い位置に設置することで、2つの接点のみで、3つの接点を有する電子ピアノと同様に、深い位置でのストローク振幅の少ない連打、トリルを実現することができ、3つの接点を有する電子ピアノと同様な連打性能を実現することができる。
また、本実施形態のタッチ検出装置50は、離鍵操作により、第1接点160aがオフになった時点で、ノートオフイベント生成部としてのコントローラ51に対して、離鍵された鍵に対応する音高の楽音の消音を指示する新たなノートオフイベントを生成させる。これにより、ユーザの所望に応じて第1接点160aのオフに基づき即座に音を消音させることができる。
また、本実施形態のタッチ検出装置50のノートオンイベント生成部としてのコントローラ51は、押鍵カウンタ(第1カウンタ54)のカウント値に対応する時間経過後に、ノートオンイベントを生成する。これにより、ユーザの所望のタイミングで音を発音することができる。
また、本実施形態のタッチ検出装置50は、複数種の音高が夫々対応付けられた複数の鍵と、複数の鍵毎に設けられ、押鍵操作に応じて、各鍵の押下量が相互に異なる位置で順次オン又はオフされる第1接点160a及び第2接点160bと、ノートオンイベントにより所定種類の音を発音させる発音制御部としてのCPU11と、ノートオフイベント又はダンパーオンイベント(ノートオフイベント)により所定種類の音を消音させる消音制御部としてのCPU11と、を備えた電子楽器のタッチ検出装置100であって、第1カウンタ54と、コントローラ51と、第2カウンタ55と、比較回路58と、を備える。
第1カウンタ54は、第1接点160a及び第2接点160bの夫々のオフ検出信号に基づいて、第2接点160bがオフされてから第1接点160aがオフされるまでの時間をカウントする。
コントローラ51は、第1カウンタ54により第2接点160bがオフされてから第1接点160aがオフされるまでカウントされた時間に基づいて、ダンパーオンイベント(ノートオフイベント)の発生に到達する時間であるダンパーオン到達時間を予測する。
第2カウンタ55は、ダンパーオン到達時間と比較する時間をカウントする。
比較回路58は、第2カウンタ55によりカウントされた時間とダンパーオン到達時間とを比較し、一致したとき、ダンパーオンイベント(ノートオフイベント)を発生させるための離鍵一致信号をコントローラ51に送信する。
そして、コントローラ51は、比較回路58から離鍵一致信号が送信されてきた場合、ダンパーオンイベント(ノートオフイベント)を発生させる制御を実行する。
これにより、第1接点160aと第2接点160bとの2つの接点(スイッチ)でダンパーオン到達時間を予測することにより、任意に設定できるノートオフイベントが発生する位置を2つの接点のオフの時間差から発生させることができる。これにより、2つの接点のみで、3つの接点を有する電子ピアノと同様な同音連打やトリルを実現することができ、多様な音の重なりを制御することができる。さらに、2つの接点(スイッチ)のみで離鍵到達時間を予測するので、離鍵タイミングを検知するため専用の接点(スイッチ)や回路を不要にし、コストの低減を図ることができる。
また、本実施形態のタッチ検出装置50のコントローラ51は、比較回路58から離鍵一致信号が送信されてくる前に、第1接点160a及び第2接点160bの夫々のオン検出信号が供給された場合、ダンパーオンイベント(ノートオフイベント)の発生を禁止して、ノートオンイベントを発生させる制御を実行する。
これにより、第1接点160aをストロークの深い位置に設置することで、2つの接点のみで、3つの接点を有する電子ピアノと同様に、深い位置でのストローク振幅の少ない連打、トリルを実現することができ、3つの接点を有する電子ピアノと同様な連打性能を実現することができる。
また、本実施形態のタッチ検出装置50は、ノートオンイベントの発生の有無を選択可能な複数のモードが少なくとも設けられている。そして、コントローラ51は、複数のモードのうち選択されているモードに基づいて、ノートオンイベントの発生の有無を制御する。
これにより、様々な連打性能をユーザの所望に応じて選択されたモードに基づいて実現することができる。
また、本実施形態のタッチ検出装置50は、第1接点160aがオフされたときにノートオフイベントを発生させるモードが少なくとも設けられている。そして、コントローラ51は、当該モードが選択されている場合、第1接点160aのオフ検出信号が供給されたとき、ノートオフイベントの発生を制御する。
これにより、ユーザの所望に応じて選択されたモードに基づいて第1接点160aのオフに基づき即座に音を消音させることができる。
また、本実施形態のタッチ検出装置50の第1カウンタ54は、第1接点160a及び第2接点160bの夫々のオン検出信号に基づいて、第1接点160aがオンされてから第2接点160bがオンされるまでの時間をカウントする。また、第2カウンタ55は、ノートオンイベントの発生に到達する時間である押鍵到達時間と比較する時間をカウントする。
そして、比較回路58は、さらに、第2カウンタ55によりカウントされた時間と押鍵到達時間とを比較し、一致したとき、ノートオンイベントを発生させるための押鍵一致信号をコントローラ51に送信し、コントローラ51は、さらに、比較回路58から押鍵一致信号が送信されてきた場合、ノートオンイベントを発生させる制御を実行する。
これにより、任意に設定できるノートオンイベントが発生する位置を2つの接点のオンの時間差から発生させることができる。
これにより、2つの接点のみで、3つの接点を有する電子ピアノと同様な同音連打やトリルを実現することができる。
また、本実施形態のタッチ検出装置50の第2接点160bがオフされてから第1接点160aがオフされるまでの時間をカウントするカウンタと、第1接点160aがオンされてから第2接点160bがオンされるまでの時間をカウントするカウンタは同一の第1カウンタ54により構成される。
これにより、1つのカウンタ(第1カウンタ54)のみで、離鍵ベロシティ測定値と押鍵ベロシティ測定値の両方をカウントすることができるので、部品点数を減らし、コストの削減を図ることができる。
また、本実施形態のタッチ検出装置50は、第2接点160bがオンされたときにノートオンイベントを発生させるモードが少なくとも設けられている。そして、コントローラ51は、当該モードが選択されている場合、第2接点160bのオン検出信号が供給されたとき、ノートオンイベントの発生を制御する。
これにより、ユーザの所望に応じて選択されたモードに基づいて第2接点160bのオンに基づき即座に音を発生させることができ、音色毎に最適なタイミングで発音することができる。
また、本実施形態のタッチ検出装置50の比較回路49は、所定条件を満たした場合、ダンパーオン到達時間として、コントローラ51の予測結果の代わりに、一定時間を用いる。
これにより、2接点160bがオフされてから第1接点160aがオフされるまでの時間に関わらずダンパーオン到達時間を一定にすることができ、時間のばらつきによる音のばらつきを抑えることができる。
なお、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
例えば、上述の実施形態では、鍵の数を88個とし、カウンタメモリに88個の特定のアドレスを設けたが、これに限らず、例えば、カウンタメモリの特定のアドレスは、鍵の数以上であれば任意の数としてもよい。
また、上述の実施形態では、カウンタメモリ56と到達時間メモリ57とを夫々設けたが、これに限らず、例えば、カウンタメモリ56と到達時間メモリ57とを含む1つのメモリを設けてもよい。
また、上述の実施形態では、カウンタメモリ56の記録内容は、測定されたものが用いられたが、これに限らず、例えば、後から変更されたものが用いられてもよい。制御回路に各カウンタによるカウント値(計測値)がカウンタメモリ56に格納され、オフベロシティで参照される場合、カウンタメモリ56の値を書き換えることにより、ダンパーオン到達時間の変更、即ち、ストローク位置を変更することも可能である。
また、音色やユーザの好みで鍵盤設定を変える仕様にも対応できる。即ち、複数の音色パラメータの夫々に対応する複数のカウンタメモリ56が存在し、制御回路は、複数の音色パラメータのうち、指定された音色パラメータに対応するカウンタメモリの記録内容に基づいて、ダンパーオン到達時間を予測する、ことも可能である。これにより、様々な音色に対応して離鍵到達時間を予測することができるので、音色に特有の音を表現することができる。
また、上述の実施形態では、本発明に係るタッチ検出装置が適用される電子楽器は、電子ピアノを例として説明したが、特にこれに限定されない。
例えば、本発明は、タッチ検出機能を有する電子機器一般に適用することができる。具体的には、例えば、本発明は、ノート型のパーソナルコンピュータ、プリンタ、テレビジョン受像機、ビデオカメラ、携帯型ナビゲーション装置、携帯電話機、ポータブルゲーム機等に適用可能である。
換言すると、図1のハードウェア構成は例示に過ぎず、特に限定されない。
以上、本発明のいくつかの実施形態について説明したが、これらの実施形態は、例示に過ぎず、本発明の技術的範囲を限定するものではない。本発明はその他の様々な実施形態を取ることが可能であり、さらに、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができる。これら実施形態やその変形は、本明細書等に記載された発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
以下に、本願の出願当初の特許請求の範囲に記載された発明を付記する。
[付記1]
発音すべき楽音の音高を指定する鍵毎に設けられ、当該鍵に対する押鍵操作による押下量が第1の値になったときにオンになるとともに、離鍵操作により押下量が前記第1の値に戻ったときにオフになる第1接点と、
前記押鍵操作により前記鍵の押下量が前記第1の値より大きい第2の値になったときにオンになるとともに、前記離鍵操作により押下量が前記第2の値に戻ったときにオフになる第2接点と、
前記押鍵操作により、前記第1接点がオンになってから、前記第2接点がオンになるまでの時間をカウントする押鍵カウンタと、
前記第2接点がオンになると、前記押鍵カウンタにてカウントされた時間に対応する音量でかつ前記押鍵された鍵に対応する音高の楽音の発音を指示するノートオンイベントを生成するノートオンイベント生成手段と、
前記離鍵操作により、前記第2接点がオフになってから、前記第1接点がオフになる時点までの時間をカウントする離鍵カウンタと、
前記第1接点がオフになってから前記離鍵カウンタのカウント値に対応する時間経過後、前記離鍵された鍵に対応する音高の楽音の消音を指示するノートオフイベントを生成するノートオフイベント生成手段と、
を有するタッチ検出装置。
[付記2]
前記タッチ検出装置はさらに、
前記ノートオフイベント生成手段によるノートオフイベント生成前に、前記第1接点が再度オンになったか否かを判別する判別手段と、
前記判別手段により再度オンになったと判別された場合は、前記ノートオフイベント生成手段で前記ノートオフイベントの生成をさせずに、前記第2接点がオンになった時点で前記ノートオンイベント生成手段に対して前記押鍵されている鍵に対応する音高の楽音の発音を指示する新たなノートオンイベントを生成させるように制御する制御手段と、
を有する付記1記載のタッチ検出装置。
[付記3]
前記タッチ検出装置はさらに、
前記離鍵操作により、前記第1接点がオフになった時点で、前記ノートオフイベント生成手段に対して、前記離鍵された鍵に対応する音高の楽音の消音を指示する新たなノートオフイベントを生成させる付記1又は2に記載のタッチ検出装置。
[付記4]
前記ノートオンイベント生成手段は、前記押鍵カウンタのカウント値に対応する時間経過後に、前記ノートオンイベントを生成する付記1乃至3のいずれかに記載のタッチ検出装置。
[付記5]
前記ノートオンイベント生成手段は、前記第2接点がオンになった時点で、前記ノートオンイベントを生成する付記4に記載タッチ検出装置。
[付記6]
発音すべき楽音の音高を指定する鍵毎に設けられ、当該鍵に対する押鍵操作による押下量が第1の値になったときにオンになるとともに、離鍵操作により押下量が前記第1の値に戻ったときにオフになる第1接点と、前記押鍵操作により前記鍵の押下量が前記第1の値より大きい第2の値になったときにオンになるとともに、前記離鍵操作により押下量が前記第2の値に戻ったときにオフになる第2接点と、を有するタッチ検出装置が実行するタッチ検出方法であって、
前記押鍵操作により、前記第1接点がオンになってから、前記第2接点がオンになるまでの押鍵時間をカウントし、
前記第2接点がオンになると、前記カウントされた押鍵時間に対応する音量でかつ前記押鍵された鍵に対応する音高の楽音の発音を指示するノートオンイベントを生成し、
前記離鍵操作により、前記第2接点がオフになってから、前記第1接点がオンからオフになるまでの離鍵時間をカウントし、
前記第1接点がオフになってから前記カウントされた離鍵時間に対応する時間経過後、前記離鍵された鍵に対応する音高の楽音の消音を指示するノートオフイベントを生成する、タッチ検出方法。
[付記7]
発音すべき楽音の音高を指定する鍵毎に設けられ、当該鍵に対する押鍵操作による押下量が第1の値になったときにオンになるとともに、離鍵操作により押下量が前記第1の値に戻ったときにオフになる第1接点と、前記押鍵操作により前記鍵の押下量が前記第1の値より大きい第2の値になったときにオンになるとともに、前記離鍵操作により押下量が前記第2の値に戻ったときにオフになる第2接点と、を有するタッチ検出装置として用いられるコンピュータに、
前記押鍵操作により、前記第1接点がオンになってから、前記第2接点がオンになるまでの押鍵時間をカウントするステップと、
前記第2接点がオンになると、前記カウントされた押鍵時間に対応する音量でかつ前記押鍵された鍵に対応する音高の楽音の発音を指示するノートオンイベントを生成するステップと、
前記離鍵操作により、前記第2接点がオフになってから、前記第1接点がオフになるまでの離鍵時間をカウントするステップと、
前記第1接点がオフになってから前記カウントされた離鍵時間に対応する時間経過後、前記離鍵された鍵に対応する音高の楽音の消音を指示するノートオフイベントを生成するするステップと、
を実行させるプログラム。
1,1A,1B,1C・・・電子楽器、11・・・CPU、12・・・ROM、13・・・RAM、14・・・バス、15・・・入出力インターフェース、16・・・入力部、17・・・出力部、18・・・記憶部、19・・・MIDIインターフェース部、20・・・ドライブ、31・・・リムーバブルメディア、41・・・音源、50・・・タッチ検出装置、51・・・コントローラ、52・・・EVフラグセット回路、53・・・ステータス増加回路、54・・・第1カウンタ、55・・・第2カウンタ、56・・・カウンタメモリ、57・・・到達時間メモリ、57a・・・第1到達時間メモリ、57b・・・第2到達時間メモリ、58・・・比較回路、59・・・反転回路、61・・・ベロシティレジスタ、62・・・ノートナンバレジスタ、160・・・鍵スイッチマトリクス、160a・・・第1接点、160b・・・第2接点

Claims (7)

  1. 発音すべき楽音の音高を指定する鍵毎に設けられ、当該鍵に対する押鍵操作によオンになるとともに、離鍵操作によりオフになる第1接点と、
    前記押鍵操作より深いストロークの押鍵操作によりオンになるとともに、離鍵操作によりオフになる第2接点と、
    前記押鍵操作により、前記第1接点がオンになってから、前記第2接点がオンになるまでの時間をカウントする押鍵カウンタと、
    前記第2接点がオンになると、前記押鍵カウンタにてカウントされた時間に対応する音量でかつ前記押鍵された鍵に対応する音高の楽音の発音を指示するノートオンイベントを生成するノートオンイベント生成手段と、
    前記離鍵操作により、前記第2接点がオフになってから、前記第1接点がオフになる時点までの時間をカウントする離鍵カウンタと、
    前記第1接点がオフになった時点で、前記離鍵された鍵に対応する音高の楽音の消音を指示する第1ノートオフイベントを生成させるとともに、前記第1接点がオフになってから前記離鍵カウンタのカウント値に対応する時間経過後、前記離鍵された鍵に対応する音高の楽音の消音を指示する第2ノートオフイベントを生成するノートオフイベント生成手段と、
    を有するタッチ検出装置。
  2. 前記タッチ検出装置はさらに、
    前記ノートオフイベント生成手段によるノートオフイベント生成前に、前記第1接点が再度オンになったか否かを判別する判別手段と、
    前記判別手段により再度オンになったと判別された場合は、前記ノートオフイベント生成手段で前記ノートオフイベントの生成をさせずに、前記第2接点がオンになった時点で前記ノートオンイベント生成手段に対して前記押鍵されている鍵に対応する音高の楽音の発音を指示する新たなノートオンイベントを生成させるように制御する制御手段と、
    を有する請求項1記載のタッチ検出装置。
  3. 前記ノートオンイベント生成手段は、前記押鍵カウンタのカウント値に対応する時間経過後に、前記ノートオンイベントを生成する請求項1又は2に記載のタッチ検出装置。
  4. 前記ノートオンイベント生成手段は、前記第2接点がオンになった時点で、前記ノートオンイベントを生成する請求項に記載タッチ検出装置。
  5. 発音すべき楽音の音高を指定する鍵毎に設けられ、当該鍵に対する押鍵操作によオンになるとともに、離鍵操作によりオフになる第1接点と、前記押鍵操作より深いストロークの押鍵操作によりオンになるとともに、離鍵操作によりオフになる第2接点と、を有するタッチ検出装置が実行するタッチ検出方法であって、
    前記押鍵操作により、前記第1接点がオンになってから、前記第2接点がオンになるまでの押鍵時間をカウントし、
    前記第2接点がオンになると、前記カウントされた押鍵時間に対応する音量でかつ前記押鍵された鍵に対応する音高の楽音の発音を指示するノートオンイベントを生成し、
    前記離鍵操作により、前記第2接点がオフになってから、前記第1接点がオンからオフになるまでの離鍵時間をカウントし、
    前記第1接点がオフになった時点で、前記離鍵された鍵に対応する音高の楽音の消音を指示する第1ノートオフイベントを生成させるとともに、前記第1接点がオフになってから前記カウントされた離鍵時間に対応する時間経過後、前記離鍵された鍵に対応する音高の楽音の消音を指示する第2ノートオフイベントを生成する、
    タッチ検出方法。
  6. 請求項1から4のいずれかに記載のタッチ検出装置と、
    鍵盤と、
    を備える電子楽器。
  7. 発音すべき楽音の音高を指定する鍵毎に設けられ、当該鍵に対する押鍵操作によオンになるとともに、離鍵操作によりオフになる第1接点と、前記押鍵操作より深いストロークの押鍵操作によりオンになるとともに、離鍵操作によりオフになる第2接点と、を有するタッチ検出装置として用いられるコンピュータに、
    前記押鍵操作により、前記第1接点がオンになってから、前記第2接点がオンになるまでの押鍵時間をカウントするステップと、
    前記第2接点がオンになると、前記カウントされた押鍵時間に対応する音量でかつ前記押鍵された鍵に対応する音高の楽音の発音を指示するノートオンイベントを生成するステップと、
    前記離鍵操作により、前記第2接点がオフになってから、前記第1接点がオフになるまでの離鍵時間をカウントするステップと、
    前記第1接点がオフになった時点で、前記離鍵された鍵に対応する音高の楽音の消音を指示する第1ノートオフイベントを生成させるとともに、前記第1接点がオフになってから前記カウントされた離鍵時間に対応する時間経過後、前記離鍵された鍵に対応する音高の楽音の消音を指示する第2ノートオフイベントを生成するステップと、
    を実行させるプログラム。
JP2013178347A 2013-08-29 2013-08-29 タッチ検出装置、タッチ検出方法、電子楽器及びプログラム Active JP6232850B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013178347A JP6232850B2 (ja) 2013-08-29 2013-08-29 タッチ検出装置、タッチ検出方法、電子楽器及びプログラム
US14/467,286 US9029679B2 (en) 2013-08-29 2014-08-25 Electronic musical instrument, touch detection apparatus, touch detecting method, and storage medium
CN201410437329.4A CN104424933B (zh) 2013-08-29 2014-08-29 电子乐器、接触检测装置以及接触检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013178347A JP6232850B2 (ja) 2013-08-29 2013-08-29 タッチ検出装置、タッチ検出方法、電子楽器及びプログラム

Publications (3)

Publication Number Publication Date
JP2015045829A JP2015045829A (ja) 2015-03-12
JP2015045829A5 JP2015045829A5 (ja) 2016-10-13
JP6232850B2 true JP6232850B2 (ja) 2017-11-22

Family

ID=52581329

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013178347A Active JP6232850B2 (ja) 2013-08-29 2013-08-29 タッチ検出装置、タッチ検出方法、電子楽器及びプログラム

Country Status (3)

Country Link
US (1) US9029679B2 (ja)
JP (1) JP6232850B2 (ja)
CN (1) CN104424933B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9236039B2 (en) 2013-03-04 2016-01-12 Empire Technology Development Llc Virtual instrument playing scheme
JP6402502B2 (ja) * 2014-06-20 2018-10-10 ヤマハ株式会社 演奏情報出力制御装置、鍵盤楽器及び制御方法
JP6507519B2 (ja) * 2014-08-11 2019-05-08 カシオ計算機株式会社 タッチ検出装置、方法、およびプログラム、電子楽器
JP6573100B2 (ja) * 2015-03-19 2019-09-11 カシオ計算機株式会社 楽音制御装置、楽音制御方法、プログラム、および電子楽器
CN106997769B (zh) * 2017-03-25 2020-04-24 腾讯音乐娱乐(深圳)有限公司 颤音识别方法及装置
JP6806120B2 (ja) * 2018-10-04 2021-01-06 カシオ計算機株式会社 電子楽器、楽音発生方法及びプログラム
JP7230413B2 (ja) 2018-10-05 2023-03-01 ヤマハ株式会社 音信号発生装置、音信号発生方法および音信号発生プログラム
CN109830220B (zh) * 2018-12-29 2023-09-08 深圳市蔚科电子科技开发有限公司 音效模式的切换方法、电子设备以及存储介质
GB2601113A (en) * 2020-11-11 2022-05-25 Sonuus Ltd Latency compensation system
WO2023079482A1 (en) * 2021-11-08 2023-05-11 Viscount International S.P.A. Electronic music keyboard

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4510836A (en) * 1983-12-01 1985-04-16 Allen Organ Company Touch sensitivity in an electronic musical instrument having non-positive attack
US5629490A (en) * 1993-09-27 1997-05-13 Kabushiki Kaisha Kawai Gakki Seisakusho Piano
JP3684610B2 (ja) * 1994-08-01 2005-08-17 ヤマハ株式会社 鍵盤情報出力装置
JP3039311B2 (ja) * 1995-02-28 2000-05-08 ヤマハ株式会社 電子楽器
JP4499941B2 (ja) * 2001-03-05 2010-07-14 ローランド株式会社 電子楽器
JP2003248482A (ja) * 2002-02-25 2003-09-05 Kawai Musical Instr Mfg Co Ltd 操作検出スイッチ、楽器およびパラメータ決定用プログラム
JP3922225B2 (ja) * 2003-07-25 2007-05-30 ヤマハ株式会社 発音制御プログラム及びそれを用いた電子鍵盤楽器
JP4628247B2 (ja) * 2005-10-28 2011-02-09 ローランド株式会社 鍵操作検出装置
JP2008268362A (ja) * 2007-04-17 2008-11-06 Kawai Musical Instr Mfg Co Ltd 電子鍵盤楽器及びその処理方法
JP2011064728A (ja) * 2009-09-15 2011-03-31 Yamaha Corp 電子鍵盤楽器
JP2011123191A (ja) * 2009-12-09 2011-06-23 Roland Corp 電子楽器の鍵操作速度検出装置
JP5652415B2 (ja) * 2012-03-19 2015-01-14 カシオ計算機株式会社 タッチ検出装置、タッチ検出方法及び電子楽器

Also Published As

Publication number Publication date
JP2015045829A (ja) 2015-03-12
US20150059557A1 (en) 2015-03-05
US9029679B2 (en) 2015-05-12
CN104424933A (zh) 2015-03-18
CN104424933B (zh) 2017-10-13

Similar Documents

Publication Publication Date Title
JP6232850B2 (ja) タッチ検出装置、タッチ検出方法、電子楽器及びプログラム
JP7306402B2 (ja) 音信号生成装置、鍵盤楽器およびプログラム
JP5652415B2 (ja) タッチ検出装置、タッチ検出方法及び電子楽器
JP6260191B2 (ja) 電子楽器、プログラム及び発音音高選択方法
JP6554850B2 (ja) 電子鍵盤楽器、共鳴音発生装置、方法、プログラムおよび電子楽器
JP5732982B2 (ja) 楽音生成装置および楽音生成プログラム
JP6856081B2 (ja) 電子楽器、電子楽器の制御方法、及びプログラム
US9905209B2 (en) Electronic keyboard musical instrument
JP5949879B2 (ja) タッチ検出装置、タッチ検出方法及び電子楽器
JP2010117419A (ja) 電子楽器
JP6149890B2 (ja) 楽音生成装置および楽音生成プログラム
JP5821170B2 (ja) 電子音楽装置及びプログラム
JP5742592B2 (ja) 楽音生成装置、楽音生成プログラム及び電子楽器
JP5412766B2 (ja) 電子楽器及びプログラム
JP6357772B2 (ja) 電子楽器、プログラム及び発音音高選択方法
JP2019191604A (ja) 電子鍵盤楽器、電子楽器、方法、プログラム
JP6507519B2 (ja) タッチ検出装置、方法、およびプログラム、電子楽器
JP5692275B2 (ja) 電子楽器
JP5600968B2 (ja) 自動演奏装置および自動演奏プログラム
JP6102975B2 (ja) 楽音生成装置、楽音生成プログラム及び電子楽器
JP5318460B2 (ja) 共鳴音発生装置
JP5564921B2 (ja) 電子楽器
JP5453966B2 (ja) 楽音発生装置および楽音発生プログラム
JP4520521B2 (ja) 電子楽器の調律補正装置、電子楽器の調律補正方法、コンピュータプログラム及び記録媒体
JP5827484B2 (ja) 楽音制御装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160829

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160829

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170228

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170427

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: 20170926

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171009

R150 Certificate of patent or registration of utility model

Ref document number: 6232850

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150