亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

为 Roland 电子鼓架定制的 DAW 控制盒

组件与材料

组件数量
Arduino Micro Pro (内置 USB,非普通 Micro)1
轻触开关 (常开)7
3D 打印夹具与盒体 (PLA/PETG)1 套

所需工具

应用与服务

项目动机

录制鼓轨时操作笔记本电脑控制 DAW (Cubase) 很不方便,想要一个不放下鼓棒就能触发 开始/停止/录音/节拍器/定位 等常用功能的按钮盒。商业方案太贵或无法安装在 Roland 鼓架的 38mm 圆管上,于是自制。

制作步骤

  1. 3D 打印:打印两个夹具半件 (用 M4x40 螺丝做枢轴,M6 翼螺丝锁紧),盒体上部 (用 2 个 M3x4 螺丝连接夹具)。材料 PLA 即可,追求强度用 PETG。
  2. 面板制作:提供 STL (3D 打印) 和 SVG (CNC 雕刻) 模板,按钮布局可自定。作者用 DIY CNC 雕刻面板,效果更佳。
  3. 按钮安装与接线:将轻触开关装入面板,按下表焊接到 Arduino 对应引脚。可用小块万用板扩展焊盘,用盒体角落 4 个螺丝孔固定 PCB。最后用 2 个 M3 螺丝锁紧面板。
  4. 编程 Arduino Micro Pro:Micro Pro 原生支持 USB HID 键盘模拟,可发送任意按键 (含功能键、小键盘键)。代码将 D2-D8 配置为内部上拉输入,按钮按下拉低电平触发模拟按键。作者为 Cubase 映射如下:
引脚按钮标识模拟按键Cubase 功能
2Mc节拍器开关
3L小键盘 1跳转左标标记
4>>小键盘 +前进
5<<小键盘 -后退
6P空格播放/停止
7Bb回到开头
8R小键盘 *录音

可在代码中轻松修改映射适配其他 DAW。

Arduino Micro Pro 代码

/* ROLAND RACK BUTTON BOX for Arduino Pro Micro
   Emulates USB keyboard for DAW (Steinberg Cubase) */
#define DEBUG_OUTPUT 0
#include <Keyboard.h>
#define KEYPAD_1 225
#define KEYPAD_PLUS 223
#define KEYPAD_MINUS 222
#define KEYPAD_ASTERIX 221
int RXLED = 17;

void setup() {
  pinMode(2, INPUT_PULLUP); pinMode(3, INPUT_PULLUP);
  pinMode(4, INPUT_PULLUP); pinMode(5, INPUT_PULLUP);
  pinMode(6, INPUT_PULLUP); pinMode(7, INPUT_PULLUP);
  pinMode(8, INPUT_PULLUP);
  pinMode(RXLED, OUTPUT);
  digitalWrite(RXLED, HIGH);
  Keyboard.begin();
  Serial.begin(9600);
  if (DEBUG_OUTPUT) Serial.println("Button Box Serial Monitor");
}

void loop() {
  Keyboard.releaseAll();
  digitalWrite(RXLED, HIGH);
  delay(50);
  if (digitalRead(2) == 0) { if(DEBUG_OUTPUT) Serial.println("Button M"); digitalWrite(RXLED,LOW); Keyboard.press('c'); delay(5); Keyboard.releaseAll(); while(digitalRead(2)==0); }
  if (digitalRead(3) == 0) { if(DEBUG_OUTPUT) Serial.println("Button L"); digitalWrite(RXLED,LOW); Keyboard.press(KEYPAD_1); delay(5); Keyboard.releaseAll(); while(digitalRead(3)==0); }
  if (digitalRead(4) == 0) { if(DEBUG_OUTPUT) Serial.println("Button >>"); digitalWrite(RXLED,LOW); Keyboard.press(KEYPAD_PLUS); while(digitalRead(4)==0); Keyboard.releaseAll(); }
  if (digitalRead(5) == 0) { if(DEBUG_OUTPUT) Serial.println("Button <<"); digitalWrite(RXLED,LOW); Keyboard.press(KEYPAD_MINUS); while(digitalRead(5)==0); Keyboard.releaseAll(); }
  if (digitalRead(6) == 0) { if(DEBUG_OUTPUT) Serial.println("Button PLAY/STOP"); digitalWrite(RXLED,LOW); Keyboard.press(' '); delay(5); Keyboard.releaseAll(); while(digitalRead(6)==0); }
  if (digitalRead(7) == 0) { if(DEBUG_OUTPUT) Serial.println("Button BACK"); digitalWrite(RXLED,LOW); Keyboard.press('b'); delay(5); Keyboard.releaseAll(); while(digitalRead(7)==0); }
  if (digitalRead(8) == 0) { if(DEBUG_OUTPUT) Serial.println("Button REC"); digitalWrite(RXLED,LOW); Keyboard.press(KEYPAD_ASTERIX); delay(5); Keyboard.releaseAll(); while(digitalRead(8)==0); }
}

3D 模型文件

Thingiverse 下载:链接见项目页面

制造工艺

  1. 工业电子设备寄修防摔包装 5 大绝招:双层箱/3 英寸缓冲/防静电/全封胶/拒贴易碎标
  2. 可制造性设计 (DFM) 实战指南:工程师与设计师的必修课
  3. SIGHT:助盲智能眼镜 — 树莓派 + TensorFlow + Android Things
  4. 树莓派 + PIR 传感器 + MQTT 打造 AWS IoT 运动触发按钮
  5. DIY仿Wall-E树莓派CD盒机器人
  6. Hekuma 新一代医疗吸头自动化系统 Hekutip 将亮相 K 2019
  7. 整机装配布局布线优化指南
  8. 外包盒装组装服务的关键考量因素全清单
  9. 盒式组装(Box Build)成功交付的六大核心准则
  10. 定制集装箱:为汽车制造商与供应商量身打造的物流方案
  11. Advantech 发布 ARK-1220:面向智能制造的紧凑无风扇 DIN 导轨工控机
  12. EKF SRS-1201-BLUBRICK:面向铁路、汽车和工业环境的坚固壁挂箱,容纳 CompactPCI Serial CPU