>> Blog Top

TCRT5000でハイハットの制御

Publish 2018.02.21


前回に引き続いてTCRT5000を弄ってます。

値は簡単に取れそうだったので、MIDI信号を送るコードを書いてみました。

ピエゾとTCRT5000のみを繋いだテスト回路を組んで音を鳴らしてみました。

配線以下のように。 

奥のラズパイの箱ですが、センサーに物を近づけすぎると値が飛んじゃうので隙間をあけてます。

実際の動きはこんな感じです。結構簡単にできました。

コードの細かい修正は必要ですが、ハードの設計に入れそうです。

コードですが、こんな感じになってます。

ピエゾのピークキャッチ部分が長くて分かりづらいですが、TCRT5000に関するコードはほんの数行です。


113行目以降がTCRT5000に関する部分です。

基本的には、近づいたらペダルの音を鳴らして、ピエゾが叩かれたらクローズの音を、離れた状態でピエゾが叩かれたらオープンの音を出すようにしてるだけです。

動画から分かるように、ペダルの音はベロシティ100で固定です。可変に出来ると思いますが難しそうです。センサーに物が近づく速度をベロシティに適応させればいいのかな?

136行目の

MIDI.sendControlChange(4, TCRT, 1);

は、MIDIのコントロールチェンジ(CC)ってやつです。電子ドラムではどのメーカーもCCの4番をハイハットペダルに使っています。

CCについて詳しくはこちらを。

簡単に言うと、ハイハットの開き具合もベロシティと同様に127段階で送信することができます。当たり前ですが127段階分の音源をそれぞれ用意すると物凄い容量になります。映像からもわかるようにEZdrummer2では4段階ぐらいです。

今まではオープンクローズのみだったので大進化ですね。

ただこのTCRT5000はRolandやYAMAHAの製品で使われていないので、もちろん互換性はありません。

さて、回路もコードもいい感じなのでハードを作っていこうと思います。


>> Blog Top