Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Caja de botones DAW para racks de batería electrónica Roland

Componentes y suministros

Arduino MicroPro
× 1
pulsadores (normalmente abiertos)
× 1
abrazadera y caja impresas en 3D
× 1

Herramientas y máquinas necesarias

Impresora 3D (genérica)

Aplicaciones y servicios en línea

Arduino IDE

Acerca de este proyecto

Fue un inconveniente para mí operar mi computadora portátil con un DAW (en mi caso Cubase) mientras grababa una pista de batería. Así que quería tener un método sin distracciones para activar algunos comandos esenciales como iniciar / detener / grabar, etc. sin dejar caer mis palos. Las soluciones comerciales disponibles eran demasiado caras o poco prácticas porque, p. Ej. imposible de montar en mi rack. Así que se me ocurrió esta caja de botones de bricolaje basada en el famoso Arduino micro .Se puede montar en tubos estándar de 38 mm que utilizan los bastidores Roland para sujetar la caja.

Si tiene una impresora 3D y le gustaría construir su propia caja remota, siga las instrucciones a continuación.

Instrucciones:

1. Imprima las 2 partes de la abrazadera de la rejilla y el cuerpo de la caja. El PLA funcionará bien, pero si desea más estabilidad, use PETG. Combine la abrazadera con un tornillo M4x40 como eje entre las 2 partes, apriete el tornillo, pero asegúrese de que aún pueda girar fácilmente.Use un tornillo de mariposa M6 y una tuerca como tensor para sujetar firmemente su bastidor.Use 2x tornillos M3x4 (o similar) y tuercas para combinar la parte superior de la abrazadera con la caja.

2. Para el panel frontal tiene varias opciones. Es posible que desee diseñar su propia variante según los botones que elija. Utilice una de las plantillas de panel frontal disponibles en stl (para impresora 3d) o svg (para CNC) para crear su propio panel frontal (decidí hacer el panel en mi máquina CNC de bricolaje porque me gustó el diseño grabado ... . pero un panel impreso en 3D funcionará bien.)

3. Una vez que su panel frontal esté listo, inserte los botones y suelde a los puertos Arduno correctos (vea la asignación a continuación). Decidí usar una PCB separada para tener más espacio, pero eso no es obligatorio. Si hace esto, use los 4 orificios en la esquina para sostener la PCB. Finalmente cierre y asegure el panel frontal con 2 tornillos M3.

4. Programando el Arduino:Cualquier Micro Pro servirá, solo asegúrese de que sea el Adruino Micro PRO (¡no el Arduino micro estándar!) Debido al USB incorporado. Un Arduino Micro Pro conectado a cualquier PC o computadora portátil puede emular de forma nativa un teclado USB y, por lo tanto, puede activar cualquier pulsación de tecla, incluso teclas de función y teclas de bloque numérico, etc. las bibliotecas incluidas. En mi caso, decidí usar los puertos digitales 2-8 que se inicializarán como pull-ups internos primero.Los pulsadores conectados (normalmente abiertos) tirarán de los pines a GND que es detectado por el código y activa la acción programada. (pulsación de tecla emulada).

Para mi DAW (Cubase), decidí usar la siguiente configuración:

Función de Cubase de tecla de botón de puerto

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

Metrónomo de 2 M c activado / desactivado

3 L [Num] 1 Ir al localizador izquierdo

4>> [Num] + Adelante

5 <<[Num] - Hacia atrás

6 P ESPACIO Reproducir / Detener

7 B b Comenzar

8 R [Num] * Grabar

Se puede cambiar fácilmente en el código para que coincida con su configuración. Use mi código adjunto como ejemplo.

Disfruta.

Código

  • Código Arduino Micro Pro para caja de botones de rack
Código Arduino Micro Pro para caja de botones de rack C / C ++
asegúrese de configurar el micro pro en su arduino IDE
 / * CAJA DE BOTONES ROLAND RACK Nota:¡Esto es para Arduino Pro Micro! Emula un teclado para presionar teclas de una PC conectada para un DAW (aquí:Steinberg Cubase). opcional:utiliza un puerto COM UART emulado a través de USB (para depuración) y LED (LED RX y TX) en la placa Micro LLAVES:configuración para Cubase:https://steinberg.help/cubase_elements_le_ai/v9/de/cubase_nuendo/topics/key_commands/ key_commands_default_c.html Asignación:Arduino Micro Port -> Activar el cuadro de botones -> Tecla emulada en el teclado -> Función en el puerto Cubase Tecla de cambio Función Cubase -------------------- ---------------------- 2 M c Metrónomo activado 3 L [Num] 1 Ir al localizador izquierdo 4>> [Num] + Adelante 5 <<[Num] - Atrás 6 P ESPACIO Reproducir / Detener 7 B b Comenzar 8 R [Num] * Grabar mac70 13.01.2021 * / # define DEBUG_OUTPUT 0 // cuando se define como 1, se generará una salida de monitor serial adicional para la depuración # incluir  // Códigos 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 / * // en caso de ser necesario ... otros códigos clave como Shift, Control, etc.: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; // El LED RX tiene una configuración Pinvoid Arduino definida () {// Los botones están conectados a los siguientes pines de entrada digital // (botón normalmente abierto, cuando está activado -> pin se conectará a GND) pinMode (2, INPUT_PULLUP); // El pin 2 se introduce con la resistencia interna pinMode (3, INPUT_PULLUP); // Pin 3 es entrada con resistencia interna pinMode (4, INPUT_PULLUP); // El pin 4 se introduce con la resistencia interna pinMode (5, INPUT_PULLUP); // El pin 5 se introduce con la resistencia interna pinMode (6, INPUT_PULLUP); // El pin 6 es de entrada con la resistencia interna pinMode (7, INPUT_PULLUP); // El pin 7 se introduce con la resistencia interna pinMode (8, INPUT_PULLUP); // El pin 8 es de entrada con la resistencia interna pinMode (RXLED, OUTPUT); // Establecer el LED RX como una salida digitalWrite (RXLED, HIGH); // apagar el LED RX Keyboard.begin (); // iniciar la emulación del teclado Serial.begin (9600); // Esto inicia el monitor serial Serial.println (""); if (DEBUG_OUTPUT ==1) Serial.println ("Button Box Serial Monitor"); } bucle vacío () {Keyboard.releaseAll (); escritura digital (RXLED, ALTA); // establece el retardo de apagado del LED RX (50); // breve retraso // Procesar botones if (digitalRead (2) ==0) // M {if (DEBUG_OUTPUT ==1) Serial.println ("Botón M"); // Imprima en el monitor serial digitalWrite (RXLED, LOW); // LED encendido para señalizar actividad Keyboard.press ('c'); retraso (5); Keyboard.releaseAll (); while (digitalRead (2) ==0); // esperar a que se suelte el botón} if (digitalRead (3) ==0) // L {if (DEBUG_OUTPUT ==1) Serial.println ("Botón L"); // Imprima en el monitor serial digitalWrite (RXLED, LOW); // LED encendido para señalizar actividad Keyboard.press (KEYPAD_1); retraso (5); Keyboard.releaseAll (); while (digitalRead (3) ==0); // esperar a que se suelte el botón} if (digitalRead (4) ==0) //>> {if (DEBUG_OUTPUT ==1) Serial.println ("Button>>"); // Imprima en el monitor serial digitalWrite (RXLED, LOW); // LED encendido para señalizar actividad Keyboard.press (KEYPAD_PLUS); while (digitalRead (4) ==0); // Espere a que se suelte el botón ... ¡la función de repetición desde la PC volverá a activar esta tecla! Keyboard.releaseAll (); } if (digitalRead (5) ==0) // <<{if (DEBUG_OUTPUT ==1) Serial.println ("Botón <<"); // Imprima en el monitor serial digitalWrite (RXLED, LOW); // LED encendido para señalizar actividad Keyboard.press (KEYPAD_MINUS); while (digitalRead (5) ==0); // Espere a que se suelte el botón ... ¡la función de repetición desde la PC volverá a activar esta tecla! Keyboard.releaseAll (); } if (digitalRead (6) ==0) // PLAY STOP {if (DEBUG_OUTPUT ==1) Serial.println ("Botón PLAY / STOP"); // Imprima en el monitor serial digitalWrite (RXLED, LOW); // LED encendido para señalizar actividad Keyboard.press (''); retraso (5); Keyboard.releaseAll (); while (digitalRead (6) ==0); // esperar a que se suelte el botón} if (digitalRead (7) ==0) // VOLVER AL INICIO {if (DEBUG_OUTPUT ==1) Serial.println ("Botón ATRÁS"); // Imprima en el monitor serial digitalWrite (RXLED, LOW); // LED encendido para señalizar actividad Keyboard.press ('b'); retraso (5); Keyboard.releaseAll (); while (digitalRead (7) ==0); // esperar a que se suelte el botón} if (digitalRead (8) ==0) // REC {if (DEBUG_OUTPUT ==1) Serial.println ("Botón REC"); // Imprima en el monitor serial digitalWrite (RXLED, LOW); // LED encendido para señalizar actividad Keyboard.press (KEYPAD_ASTERIX); retraso (5); Keyboard.releaseAll (); while (digitalRead (8) ==0); // esperar a que se suelte el botón}} 

Piezas y carcasas personalizadas

enlace a mis archivos 3D
en el archivo thingiverseCAD en thingiverse.com

Proceso de manufactura

  1. Advantech:Embedded Box PC compacto en carril DIN sin ventilador para fabricación inteligente
  2. EKF:plataforma de caja resistente para montaje en pared para aplicaciones ferroviarias, automotrices e industriales
  3. VISTA:Para ciegos
  4. Botón de AWS IoT controlado por movimiento
  5. Robot de caja de CD Raspberry Pi
  6. Moldeo por inyección:nuevo enfoque de automatización para puntas de pipetas médicas
  7. 5 trucos para empacar una caja y evitar daños durante el envío
  8. Reglas de trazado y trazado para ensamblaje de construcción de caja
  9. Factores importantes a tener en cuenta para subcontratar un proceso de ensamblaje de construcción de cajas
  10. Cosas a considerar para el proceso de ensamblaje de construcción de cajas
  11. Fabricación de contenedores personalizados para fabricantes y proveedores de automóviles