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

Arpegiador MIDI Arduino Personalizado – Firmware Modular y Ritmos Euclidianos

Componentes y Suministros

Arduino Nano R31
Potenciómetro Rotatorio (genérico)7
Interruptor Pulsador SparkFun 12mm7
Puerto MIDI1
Resistencia 221 ohm4
LED (genérico)2

Sobre el Proyecto

Actualización 11.03.2019

Hola, creé un nuevo firmware para el arpegiador, el código fuente está completamente reescrito. Ahora la estructura modular permite ejecutar los arpegios en diferentes plataformas, no solo Arduino. También se añadieron nuevas características interesantes como ritmos euclidianos. Volveré con la descripción detallada más adelante.

https://github.com/raszhivin/arpeggio2

La parte de hardware permanece similar, las nuevas fuentes son compatibles con el sketch de Fritzing de abajo.

Actualización 25.06.2019

Nuevo hardware construido por mí, mira el nuevo video.

Introducción

La música electrónica es mi hobby y me divierto mucho con mi Korg Volca Keys. Hace tiempo descubrí la aplicación web "Chord Progression Arpeggiator" y me impresionó la potencia y simplicidad de los algoritmos musicales. Dedica unos minutos a la app y entenderás por qué me inspiré tanto en la idea de generar arpegios en mi Korg. El video "Korg Volca Keys beautiful arps! (and 128-note sequence)" muestra arpegios introducidos manualmente, pero es demasiado complicado e inflexible introducir todas las notas a mano.

Como soy desarrollador de software, decidí crear un dispositivo basado en Arduino que genere arpegios en forma de mensajes MIDI y los envíe a través de puerto DIN (MIDI). El arpegiador puede usarse con otros sintetizadores hardware o software, por supuesto, pero yo no tengo otro.

Arpegiador MIDI Arduino Personalizado – Firmware Modular y Ritmos Euclidianos

Teoría Musical Básica

(Texto tomado de reddit, gracias al usuario kmmeerts)

Existe todo un espectro de ruidos. Cada uno tiene una frecuencia fundamental: qué tan rápido vibra el aire. Frecuencia baja suena grave, alta suena agudo. Dos instrumentos tocando la misma nota suenan diferentes (timbre), pero la percibimos como la misma nota. Esto permite que instrumentos muy diferentes toquen armoniosamente.

Al nivel más alto, el espectro se divide en octavas. Una octava es el intervalo entre una nota y otra al doble de frecuencia. Es la subdivisión más básica en música. Notas que difieren en un número de octavas (frecuencias relacionadas por potencias de dos) reciben el mismo nombre: un piano y un violín pueden tocar un Do, pero uno mucho más grave. ¿Por qué? Porque suenan armoniosamente juntos.

La octava se subdivide en 12 notas:

[La, La#, Si, Do, Do#, Re, Re#, Mi, Fa, Fa#, Sol, Sol#]

Estas son las notas básicas en la música occidental, corresponden a teclas blancas y negras del piano. Cada 12 teclas, el patrón se repite. ¿Por qué 12? Es complicado, pero en esencia suena mejor. Los intervalos más placenteros están bien representados en el sistema de 12 teclas.

De estas 12 notas se forman escalas. Una escala es una colección de notas que suenan bien juntas. Mi arpegiador solo tiene escalas heptatónicas diatónicas, llamadas modos. Heptatónico = 7 notas, base de casi toda la música occidental. Diatónico se refiere al orden de intervalos. Por ejemplo, la escala de Do mayor son las notas sin sostenidos empezando en Do: [Do Re Mi Fa Sol La Si]. Cada escala nace de una nota tónica. También hay escala mayor en Re: [Re Mi Fa# Sol La Si Do#]. Las escalas se definen por patrones de qué notas saltar. La mayor es [T T S T T T S], donde T = tono (salta una) y S = semitono (toma la siguiente). Los otros modos tienen otros patrones.

Para cada una de esas siete notas hay un montón de acordes. Los acordes usados aquí son simples: desde una nota, toma tres notas saltando una cada vez en la escala. En Do mayor (Do Re Mi Fa Sol La Si), el acorde V (quinta nota) sería Sol (salta La) Si (vuelve, salta Do) Re, así Sol Si Re. Este patrón puede repetirse subiendo una octava (6 notas: Sol Si Re Sol Si Re). Un arpegio (italiano para 'roto') es simplemente tocar esas notas una a una, en lugar de todas juntas.

Lo que define una canción es mayormente la progresión de acordes. El compositor elige un modo, una tónica, y luego 8 (o más/menos) acordes de la tonalidad definida. Hay reglas, pero sigue siendo un arte. En una canción real, sobre esta progresión se construye el resto.

Esquemáticos

El esquemático es bastante simple: 7 potenciómetros, 7 botones, puerto MIDI, 2 LEDs y 4 resistencias. Se puede montar fácilmente en protoboard como se muestra, pero si eres novato en Arduino mejor empieza con estos tutoriales:

Arpegiador MIDI Arduino Personalizado – Firmware Modular y Ritmos Euclidianos

Controles

Potenciómetros:

Botones: al pulsar un botón se reproduce la progresión de acordes correspondiente.

Demostración

En el primer video describo la funcionalidad del dispositivo y sus controles. El segundo video muestra una pequeña jam con el arpegiador.

Sincronización

Puedes sincronizar el tempo de los arpegios con Korg Volca: conecta el jack de audio del arpegiador al "SYNC OUT" del sintetizador. Configura el código fuente correctamente en arpeggiator.ino:

// Sincronización: elige una de dos opciones:
#define EXT_SYNC
//#define INT_SYNC

Descomenta EXT_SYNC para sincronización por SYNC IN, o INT_SYNC para control de tempo por potenciómetro.

Estaré encantado de recibir comentarios y sugerencias, si tenéis ideas para mejorar el dispositivo, ¡dejad un comentario!

¡Diversión y buena suerte!

Código

Código Fuente

https://github.com/raszhivin/arpeggiator

Esquemáticos

Para Fritzing: arpeggiator_LICtzK2a2Q.fzz

Proceso de manufactura

  1. Proyecto Dados Digitales Arduino: Construye tu Propio Generador de Números Aleatorios con LCD
  2. Unopad: Controlador MIDI Arduino para Ableton Live sin complicaciones
  3. Construye un Iron Man animado con Arduino: componentes, sensores y guía paso a paso
  4. Find Me: Localizador Inteligente de Objetos con Arduino y Bluetooth
  5. Adaptadores USB-BLE MIDI Inalámbricos: Conectividad Sin Cables para Músicos
  6. Construye un Brazo Robótico Impreso en 3D Controlado por Arduino – Guía Paso a Paso
  7. Controlador de Humidificador DIY con Arduino y Relé: Configuración Segura de Alto Voltaje
  8. Puerta de control de temperatura sin contacto para detección rápida y precisa
  9. Pong Neón en Matriz NeoPixel con Arduino Nano
  10. Construye un volante joystick personalizado con Arduino para gaming
  11. Construye un Receptor FM Potente con Arduino y Módulo TEA5767