4.3 KiB
Click here for English documentation
太鼓ドラムコントローラ - Arduino/ESP32
オープンソースのハードウェアプログラムで、自分の「太鼓の達人」PCコントローラーを作りましょう。
このプロジェクトについて
このプロジェクトは、自宅で自分のハードウェア太鼓を開発するのを助けることを目的としています。
このプログラムは個人的かつ非商用のみで使用してください。
必要なもの
-
Arduino MicroまたはLeonardoマイクロコントローラ(他の互換ボードも動作する可能性がありますが、キーボードエミュレーションをサポートしているか確認する必要があります);
チェックアウトしてください "ESP32" ブランチを使う場合はESP32ボードを使用します。ESP32はATMEGA64よりも大幅に高速で、Bluetoothキーボードとしてコンピュータに接続することができます。
-
4つの圧電センサー;
-
必要な電子部品(ブレッドボード、抵抗器、LED、ジャンパーワイヤーなど);
-
太鼓を一から作る場合は木材と切削ツール。市販の太鼓やビッグパワーLv.5ドラムを持っている場合は、それらを直接使用できます。
コントローラーを作る手順
-
太鼓を作り、4つの圧電センサーを太鼓にしっかりと接着してください。センサーの好ましい位置については、画像を参照してください。
-
圧電センサーと他の部品を次のようにコントローラーに接続します(圧電センサーの極性は関係ありません);
-
ファームウェアをボードにフラッシュします。
SAMPLE_CACHE_LENGTH
、HIT_THRES
、RESET_THRES
、sensitivity
などのパラメータを微調整する必要があるかもしれません。詳細は次のセクションを参照してください。 -
楽しんでください!
パラメータの調整
-
ヒットとリセットの閾値
DEBUG 1
を設定してください(これによりキーボード出力が無効になり、シリアルポートからの信号値が送信されます)、ファームウェアをフラッシュし、太鼓の4つのエリアの1つでロールし、シリアルモニターからの出力グラフを視覚化します。ヒット閾値は太鼓での最も重いヒットより小さくなければならず、リセット閾値はロールヒットの間の波底より大きくなければなりません。リセット値もヒット値より下である必要があります。残りの3つのエリアについてもプロセスを繰り返し、すべてに適合する最適な値を見つけてください。
-
サンプリング長
最大のランタイム速度のために、
cache.h
ライブラリは2のべき乗のSAMPLE_CACHE_LENGTH
ウィンドウサイズで動作するように最適化されています。つまり、2、8、16、32などです。実際にはArduinoにとって16が最適な値ですが、少なくとも4000Hz以上の速度で入力をサンプリングする強力なマイクロコントローラを持っている場合は、よりスムーズ(つまり、ノイズが少ない)曲線のために値を32に変更できます。 -
感度
すべての圧電センサーが同じではなく、設置エラーのために4つのセンサーから捉えられる信号は大きく異なる可能性があります。感度値は違いを正規化するための乗数です。次の例では、右ドンエリアが他の3つよりもはるかに高い値を生成しているため、
sensitivity
を{1.0, 1.0, 0.5, 1.0}
に調整して問題を解消できます。センサーの設置が非常に重要です。センサーが木材にしっかりと取り付けられ、適切な位置にあることを確認してください。