3Dプリントで作るコンパクトMIDIドラムキット
概要
Arduino UNO と 3D プリントパーツ、圧電センサー(ピエゾ)、フォースセンシティブ抵抗(FSR)を組み合わせ、スネア・キック・ハイハット(ペダル付き)を備えたコンパクトな電子ドラムキットを自作します。USB-MIDI 化により PC・スマホに直接接続し、GarageBand 等の DAW で即演奏可能です。
主な特徴
- 3D プリントフレーム+厚紙シェルで軽量・低コスト
- スネア:ヘッド/リム 2 チャンネル(デュアルピエゾ)
- キック:8 インチパッド、オフセット配置ピエゾ
- ハイハット:12 インチ厚紙シンバル+FSR ペダルコントローラー
- Arduino UNO の USB チップ(ATmega16U2)を MocoLUFA ファームウェアで書き換え、ネイティブ USB-MIDI デバイス化
- LCD とボタンで感度・閾値・ノート番号等をリアルタイム調整
必要な部品
| 部品 | 数量 | 備考 |
|---|---|---|
| Arduino UNO | 1 | ATmega16U2 搭載版 | Adafruit 16x2 LCD(白/青) | 1 | I2C 版でも可(コード修正要) |
| 圧電センサー(ピエゾ) | 3 | スネア×2、キック/ハイハット×1 |
| FSR(フォースセンシティブ抵抗) | 1 | ハイハットペダル用 |
| 抵抗:10 kΩ、1 MΩ | 各1 | ピエゾ・FSR プルダウン用 |
| 5.1 V ツェナーダイオード | 1 | 入力保護用 |
| タクトスイッチ 12 mm、スライドスイッチ | 各1 | 設定操作用 |
| TRS ソケット(3.5 mm 3極) | 3 | パッド接続用 |
| USB-A - B ケーブル | 1 | PC 接続用 |
| Lightning - USB カメラアダプタ | 1 | iOS 接続時 |
| メッシュヘッド 10"/8"、スネアスタンド、ハイハットスタンド、キックペダル | 各1 | 既存ドラムハードウェア流用可 |
| PLA フィラメント、1 mm 厚紙、5/10 mm スポンジシート、M3/M6 ボルトナット、φ13 ステンレスパイプ | 適量 | フレーム・シェル・スタンド自作用 |
必要な工具
- 3D プリンター(0.3 mm レイヤー、インフィル 20% 推奨)
- レーザーカッター(厚紙・MDF カット用、任意)
- はんだごて、ニッパー、ドライバー、ドリル(9/10 mm)、パイプカッター、サークルカッター
製作手順
Step 1: 3D プリント
Thingiverse / GitHub (RyoKosaka/drums) から STL をダウンロードし、リムパーツは Ver.2 を使用。インフィル 20%、レイヤー高 0.3 mm で出力。
Step 2: フレーム組み立て
M3-10 mm ボルトで外周パーツを連結、センター部は M3-15/25 mm で固定。
Step 3: 厚紙シェル製作
高さ 55 mm、外周に合わせた長さの帯を 3 枚重ねて接着し円筒に。乾燥後、メッシュヘッド固定用に φ9 mm 穴を開け(TRS ソケット取り付け用)、再度ヘッドを外してピエゾを仕込む。
Step 4: ピエゾ取り付け
- スネア: ヘッド用ピエゾ(Tip)を 10 mm スポンジでサンドイッチ(下1枚・上3枚、上はコーン状に成形)、リム用ピエゾ(Ring)はセンサープレートに直接固定。両方の黒線(Sleeve)は共通。
- キック: 単一ピエゾ(Tip のみ)、センターからずらして配置(ビーター直撃でベロシティ判定不能になるため)。下にスポンジ 2 枚。
- ハイハット: キックと同様、スポンジ 1 枚(10 mm)の上にピエゾ。
ピエゾは折れやすいので取り扱い注意。
Step 5: 10 インチスネアパッド完成
リムセンサー→センサープレート固定→コーン先端が側面から 2-3 mm 見える位置調整→メッシュヘッド張り→チューニングキー(自作可)でテンション調整。
Step 6: 8 インチキックパッド
φ13 ステンレスパイプを 200 mm ×2、365 mm ×2 にカット、3D プリントジョイントでフレーム組み立て。M3 ナット埋め込みでパイプ固定。
Step 7: 12 インチハイハットシンバル
- φ300 mm 厚紙円盤を 3 枚カット
- 中心から放射状に切り込み、10 mm 隔てて 2 本目の切り込み → パックマン形状 ×3
- 各々をテープで円錐化、接着剤で 3 枚重ねて乾燥
- 消音用 5 mm スポンジ貼り付け、センターにセンサーマウント・ケーブルガイド取り付け
Step 8: ハイハットペダルコントローラー
FSR を底部に配置、上から 10 mm スポンジで覆い、カバーで固定。FSR なら将来的に開度に応じた段階的制御(EZdrummer 等対応)へ拡張可能。
Step 9: Arduino UNO を USB-MIDI 化(MocoLUFA)
- MocoLUFA から
dualMoco.hexを入手 - Arduino UNO を DFU モードにし(リセットピンショート)、
dfu-programmerで書き込み:sudo dfu-programmer atmega16u2 flash dualMoco.hex - 書き込み後、UNO が MIDI デバイスとして認識される(スケッチ書き込み時は再度リセットピンショートで通常モードに戻す)
Step 10: トリガー→MIDI 変換シールド製作
Fritzing 回路図を参照し、ピエゾ入力保護用ダイオード(任意)、ボタン・LCD 接続を実装。3D プリントケースまたはレーザーカットカバーで収納。
Step 11: GarageBand 等で演奏
USB 接続するだけで認識。Windows なら Hydrogen(フリー)等も使用可能。
Step 12: LCD メニューでパラメータ調整
INC/DEC で楽器選択、NEXT/BACK で項目選択、EDIT で値変更・確定。主なパラメータ:
- THRESHOLD:発音最小値
- SENSITIVITY:感度(小さいほど弱打で高ベロシティ)
- NOTE:MIDI ノート番号(楽器割り当て変更可)
- FLAG:打撃終了判定閾値(1-10 推奨)
- SCAN TIME:ピーク検出ウィンドウ(ms)
- HEAD/RIM:リム発音しやすさ調整
- PEDAL VELO:キックペダル固定ベロシティ(初期値 100)
- MASK TIME:連打防止マスク時間
Step 13: Fusion 360 データでカスタマイズ
GitHub に .f3d ファイルを公開。寸法変更・派生設計に活用可能。
ソースコード(Hello Drum v2)
全文は GitHub または本記事の Code セクション参照。主な構成:
MIDI.h/LiquidCrystal.h使用- 6 楽器(スネアヘッド/リム、ハイハット開/閉、ハイハットペダル、キック)× 6 パラメータ配列で管理
- ピーク検出→2乗カーブ→0-127 正規化→NoteOn/NoteOff 送信
- ハイハットペダルは FSR 閾値で開/閉判定、ペダル踏み込みで Note 44 送信
- 設定モード時は LCD に項目・現在値表示、ボタン操作で即時反映
回路図・3D データ
- Fritzing ファイル:
circuit_nZotR7rJMM.fzz - STL / Fusion 360:GitHub リポジトリ
詳細な追加ステップ・トラブルシュートは Instructables を参照。
製造プロセス
- ドラム:歴史・構造・職人技の総合ガイド
- NeoPixelリングとArduinoで作るインタラクティブジャイロスコープLEDディスプレイ
- DIYクラウドコスチューム: LEDストリップ、Arduino Nano & SparkFunパーツで光る雲に
- Unopad: Ableton Live連携シームレスなArduino MIDIコントローラー
- Arduinoでシンプルな障害物センサーを自作 – IR LEDとフォトダイオード入門
- Arduino Dueでマスターする音声認識と音声合成
- Icom無線機用 外部Sメーター(CI-V + Arduino)
- 上海の外科医、がん患者にカスタムチタン骨インプラントを3Dプリントで提供
- GrabCAD PrintとStratasys 3Dプリンターの接続 - ステップバイステップガイド
- プロトタイプを超えて:3Dプリンティングが実現する実世界のイノベーション
- MAXREFDES220# - 光学センサーによるカフレス血圧モニタリング