산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

Roland E-Drum Racks용 DAW 버튼 상자

구성품 및 소모품

Arduino MicroPro
× 1
푸시 버튼(일반적으로 열림)
× 1
3D 인쇄 클램프 및 상자
× 1

필요한 도구 및 기계

3D 프린터(일반)

앱 및 온라인 서비스

Arduino IDE

이 프로젝트 정보

드럼 트랙을 녹음하면서 DAW(내 경우 Cubase)를 실행하는 랩톱을 작동하는 것이 불편했습니다. 그래서 저는 스틱을 떨어뜨리지 않고 시작/중지/녹음 등과 같은 몇 가지 필수 명령을 실행할 수 있는 산만함이 없는 방법을 원했습니다. 너무 비싸거나 실용적이지 않은 사용 가능한 상용 솔루션. 내 랙에 장착할 수 없습니다. 그래서 유명한 Arduino 마이크로 기반의 이 DIY 버튼 박스를 생각해 냈습니다. .상자를 고정하기 위해 Roland 랙에서 사용하는 표준 38mm 튜브에 장착할 수 있습니다.

3D 프린터가 있고 자신만의 원격 상자를 만들고 싶다면 아래 지침을 따르세요.

지침:

1. 2개의 랙 클램프 부품과 박스 본체를 출력합니다. PLA는 잘 작동하지만 더 많은 안정성을 원하면 PETG를 사용하십시오. M4x40 나사로 클램프를 두 부품 사이의 축으로 결합하고 나사를 조이되 쉽게 회전할 수 있는지 확인합니다. M6 날개 나사와 너트를 조임 장치로 사용하여 랙을 단단히 고정합니다. 2x M3x4 나사(또는 이와 유사한 것)를 사용합니다. 및 상부 클램프 부분을 상자에 결합하기 위한 너트.

2. 전면 패널에는 몇 가지 선택 사항이 있습니다. 선택한 버튼에 따라 고유한 변형을 디자인할 수 있습니다. stl(3d 프린터용) 또는 svg(CNC용)에서 사용 가능한 전면 패널 템플릿 중 하나를 사용하여 자신만의 전면 패널을 만듭니다.(저는 새겨진 디자인이 마음에 들어서 DIY CNC 기계에서 패널을 만들기로 결정했습니다. .그러나 3D 인쇄 패널은 잘 작동합니다.)

3. 전면 패널이 준비되면 버튼을 삽입하고 올바른 Arduno 포트에 납땜합니다(아래 할당 참조). 더 많은 공간을 확보하기 위해 별도의 PCB를 사용하기로 결정했지만 필수는 아닙니다. 이렇게 하면 모서리에 있는 4개의 구멍을 사용하여 PCB를 고정합니다. 마지막으로 전면 패널을 닫고 2개의 M3 나사로 고정합니다.

4. Arduino 프로그래밍:모든 Micro Pro가 할 수 있습니다. 내장 USB로 인해 Adruino Micro PRO(표준 Arduino 마이크로가 아님!)인지 확인하십시오. 모든 PC 또는 노트북에 연결된 Arduino Micro Pro는 기본적으로 USB 키보드를 에뮬레이트할 수 있으므로 모든 키 입력, 심지어 기능 키 및 숫자 블록 키 등을 트리거할 수 있습니다. Micro Pro는 다양한 소스에서 사용할 수 있으므로 다음에 따라 코드를 수정해야 할 수도 있습니다. 포함된 라이브러리. 제 경우에는 먼저 내부 풀업으로 초기화될 디지털 포트 2-8을 사용하기로 결정했습니다. 연결된 푸시 버튼(일반적으로 열림)은 핀을 GND로 당겨 코드에서 감지하고 프로그래밍된 작업을 트리거합니다. (에뮬레이트된 키 누름).

내 DAW(Cubase)의 경우 다음 설정을 사용하기로 결정했습니다.

포트 버튼 키 Cubase 기능

------------------------------------------

2 M c 메트로놈 켜기/끄기

3 L [Num] 1 왼쪽 로케이터로 이동

4>> [숫자] + 앞으로

5 <<[Num] - 뒤로

6 P SPACE 재생/중지

7 B b 시작

8 R [Num] * 기록

구성과 일치하도록 코드에서 쉽게 변경할 수 있습니다. 동봉된 코드를 예시로 사용하세요.

즐기세요.

<섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">

코드

<울>
  • 랙 버튼 박스용 Arduino Micro Pro 코드
  • 랙 버튼 박스용 Arduino Micro Pro CodeC/C++
    arduino IDE
    /* ROLAND RACK BUTTON BOX에서 micro pro를 설정해야 합니다. 참고:이것은 Arduino Pro Micro용입니다! DAW(여기:Steinberg Cubase)에 대해 연결된 PC의 키를 누르도록 키보드를 에뮬레이트합니다. 옵션:USB(디버깅용) 및 마이크로 보드의 LED(RX 및 TX LED)를 통해 에뮬레이트된 UART COM 포트 사용 키:Cubase용 구성:https://steinberg.help/cubase_elements_le_ai/v9/de/cubase_nuendo/topics/key_commands/ key_commands_default_c.html 지정 :Arduino Micro Port -> Switch on Button Box -> emulated Key on Keyboard -> Cubase Port의 기능 Switch Key Cubase 기능 -------------------- ---------------------- 2 M c Metronome On 3 L [Num] 1 Goto Left Locator 4>> [Num] + 앞으로 5 <<[Num] - Backward 6 P SPACE Play/Stop 7 B b Begin 8 R [Num] * Record mac70 13.01.2021*/#define DEBUG_OUTPUT 0 // 1로 정의하면 디버깅을 위한 추가 직렬 모니터 출력 생성#include // NUM-KEY 코드 :https://forum.arduino.cc/index.php?topic=659117.0#define KEYPAD_1 225 #define KEYPAD_PLUS 223 #define KEYPAD_MINUS 222 #define KEYPAD_ASTERIX 221 /*// 필요한 경우 ... Shift, Control 등과 같은 기타 키 코드 :https://www.arduino.cc/reference/en/language/fu nctions/usb/keyboard/keyboardmodifiers/char ShiftKey =KEY_LEFT_SHIFT;char LeftKey =KEY_LEFT_ARROW;char RightKey =KEY_RIGHT_ARROW;*/int RXLED =17; // RX LED에는 Arduino pinvoid setup(){ // 버튼이 다음 디지털 입력 핀에 연결되어 있습니다. // (버튼이 정상적으로 열리면 활성화됨 -> 핀이 GND에 연결됨) pinMode(2, INPUT_PULLUP); // 핀 2는 내부 저항으로 입력 pinMode(3, INPUT_PULLUP); // 3번 핀은 내부 저항으로 입력 pinMode(4, INPUT_PULLUP); // 4번 핀은 내부 저항으로 입력 pinMode(5, INPUT_PULLUP); // 핀 5는 내부 저항으로 입력됩니다. pinMode(6, INPUT_PULLUP); // 6번 핀은 내부 저항으로 입력 pinMode(7, INPUT_PULLUP); // 핀 7은 내부 저항으로 입력됩니다. pinMode(8, INPUT_PULLUP); // 핀 8은 내부 저항으로 입력됩니다. pinMode(RXLED, OUTPUT); // RX LED를 출력으로 설정 digitalWrite(RXLED, HIGH); // RX LED 끄기 설정 Keyboard.begin(); // 키보드 에뮬레이션 시작 Serial.begin(9600); //시리얼 모니터를 시작합니다. Serial.println("");if (DEBUG_OUTPUT ==1) Serial.println("Button Box Serial Monitor"); } 무효 루프(){ Keyboard.releaseAll(); 디지털 쓰기(RXLED, 높음); // RX LED OFF 지연 설정(50); // 짧은 지연 // 프로세스 버튼 if (digitalRead(2) ==0) // M { if (DEBUG_OUTPUT ==1) Serial.println("Button M"); // 시리얼 모니터로 출력 digitalWrite(RXLED, LOW); // 신호 활동에 대한 LED 켜짐 Keyboard.press('c'); 지연(5); Keyboard.releaseAll(); 동안(디지털 읽기(2) ==0); // 버튼이 놓을 때까지 기다림 } if (digitalRead(3) ==0) // L { if (DEBUG_OUTPUT ==1) Serial.println("Button L"); // 시리얼 모니터로 출력 digitalWrite(RXLED, LOW); // 신호 활동에 대한 LED 켜짐 Keyboard.press(KEYPAD_1); 지연(5); Keyboard.releaseAll(); 동안(디지털 읽기(3) ==0); // 버튼이 놓을 때까지 기다림 } if (digitalRead(4) ==0) //>> { if (DEBUG_OUTPUT ==1) Serial.println("Button>>"); // 시리얼 모니터로 출력 digitalWrite(RXLED, LOW); // 신호 활동에 대한 LED 켜짐 Keyboard.press(KEYPAD_PLUS); 동안(디지털 읽기(4) ==0); // 버튼을 놓을 때까지 기다립니다 ... PC의 반복 기능은 이 키를 다시 트리거합니다! Keyboard.releaseAll(); } if (digitalRead(5) ==0) // <<{ if (DEBUG_OUTPUT ==1) Serial.println("버튼 <<"); // 시리얼 모니터로 출력 digitalWrite(RXLED, LOW); // 신호 활동에 대한 LED 켜짐 Keyboard.press(KEYPAD_MINUS); 동안(디지털 읽기(5) ==0); // 버튼을 놓을 때까지 기다립니다 ... PC의 반복 기능은 이 키를 다시 트리거합니다! Keyboard.releaseAll(); } if (digitalRead(6) ==0) // 재생 중지 { if (DEBUG_OUTPUT ==1) Serial.println("버튼 재생/정지"); // 시리얼 모니터로 출력 digitalWrite(RXLED, LOW); // 신호 활동에 대한 LED 켜짐 Keyboard.press(' '); 지연(5); Keyboard.releaseAll(); 동안(디지털 읽기(6) ==0); // 버튼이 놓을 때까지 기다림 } if (digitalRead(7) ==0) // BACK TO START { if (DEBUG_OUTPUT ==1) Serial.println("Button BACK"); // 시리얼 모니터로 출력 digitalWrite(RXLED, LOW); // 신호 활동에 대한 LED 켜짐 Keyboard.press('b'); 지연(5); Keyboard.releaseAll(); 동안(디지털 읽기(7) ==0); // 버튼이 놓을 때까지 기다림 } if (digitalRead(8) ==0) // REC { if (DEBUG_OUTPUT ==1) Serial.println("Button REC"); // 시리얼 모니터로 출력 digitalWrite(RXLED, LOW); // 신호 활동에 대한 LED 켜짐 Keyboard.press(KEYPAD_ASTERIX); 지연(5); Keyboard.releaseAll(); 동안(디지털 읽기(8) ==0); // 버튼이 해제될 때까지 기다림 } }

    맞춤형 부품 및 인클로저

    내 3D 파일에 대한 링크
    thingiverse.com 의 thingiverseCAD 파일에서

    제조공정

    1. 어드밴텍:지능형 제조를 위한 소형 DIN 레일 팬리스 임베디드 박스 PC
    2. EKF:철도, 자동차, 산업용 애플리케이션을 위한 견고한 벽걸이형 박스 플랫폼
    3. 시력:시각 장애인용
    4. 동작 제어 AWS IoT 버튼
    5. 라즈베리 파이 CD 상자 로봇
    6. 사출 성형:의료용 피펫 팁을 위한 새로운 자동화 접근 방식
    7. 배송 손상을 방지하기 위해 상자를 포장하는 5가지 방법
    8. 박스 빌드 어셈블리에 대한 레이아웃 및 추적 규칙
    9. Box Build 조립 프로세스를 아웃소싱할 때 고려해야 할 중요한 요소
    10. Box Build 조립 프로세스에 대해 고려해야 할 사항