Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Arpégiateur MIDI Arduino

Composants et fournitures

Arduino Nano R3
× 1
Potentiomètre rotatif (générique)
× 7
Interrupteur à bouton-poussoir SparkFun 12mm
× 7
Port MIDI
× 1
Résistance 221 ohm
× 4
LED (générique)
× 2

À propos de ce projet

Mise à jour 11.03.2019

Salut, j'ai créé un nouveau firmware pour l'arpégiateur, le code source est complètement réécrit. Maintenant, la structure modulaire vous permet d'exécuter les arpèges sur différentes plates-formes, pas seulement Arduino. De nouvelles fonctionnalités intéressantes comme les rimes euclidiennes sont également ajoutées. Je reviendrai avec la description détaillée plus tard !

https://github.com/raszhivin/arpeggio2

La partie hardware reste similaire, les nouvelles sources sont compatibles avec le croquis fritzting d'en bas.

Mise à jour 25.06.2019

Le nouveau matériel est construit par moi, regardez la nouvelle vidéo :

Présentation

La musique électronique est mon hobby et je m'amuse beaucoup avec mes Korg Volca Keys. Il y a quelque temps, j'ai rencontré l'application Web appelée "Chord Progression Arpeggiator" et j'ai été impressionné par la puissance et la simplicité des algorithmes musicaux. Passez quelques minutes sur l'application, et vous comprendrez pourquoi j'ai été si inspiré par l'idée de générer des arpèges sur mon Korg. La vidéo « Korg Volca Keys de belles arpèges ! (et séquence de 128 notes) » montre les notes d'arpège saisies manuellement, mais il est trop compliqué et rigide de saisir toutes les notes à la main.

En tant que développeur de logiciels, j'ai décidé de créer l'appareil basé sur Arduino, qui génère des arpèges sous forme de messages MIDI et envoie les messages via le port DIN (MIDI). L'arpégiateur peut être utilisé avec un autre synthétiseur matériel ou logiciel bien sûr, mais je ne le fais pas en avoir un autre un.

Théorie musicale de base

(Le texte ci-dessous est tiré de reddit, merci beaucoup à l'utilisateur kmmeerts)

Il y a donc tout un spectre de bruits. Il s'avère que chacun de ces bruits a une fréquence fondamentale, la vitesse à laquelle l'air se tortille. Une fréquence plus basse sonne, eh bien, plus basse et une fréquence plus élevée que nous percevons comme une tonalité plus élevée. Deux instruments différents jouant en même temps peuvent sembler très différents, mais ils nous apparaîtront toujours comme la même note. Cette différence s'appelle le timbre, et c'est ainsi que vous pouvez différencier la flûte et les violoncelles jouant la même note. Cela permet à des instruments très différents de jouer harmonieusement ensemble.

Au niveau le plus élevé, ce spectre est divisé en octaves. Une octave est un intervalle entre une note et une autre au double de la fréquence. C'est la subdivision la plus fondamentale de la musique. Les notes qui diffèrent d'un certain nombre d'octaves (c'est-à-dire dont les fréquences sont liées les unes aux autres par une puissance de deux) portent le même nom :un piano et un violon peuvent tous deux jouer un do, mais l'un beaucoup plus bas que l'autre. Pourquoi faisons-nous cela? Eh bien parce qu'ils sonnent harmonieusement ensemble, comme même la personne la plus sourde peut entendre.

L'octave elle-même est subdivisée en 12 notes, que nous avons nommées :

[A, A#, B, C, C#, D, D#, E, F, F#, G, G#]

Ce sont les notes les plus fondamentales de la musique occidentale et elles correspondent aux touches blanches et noires du piano. Vous pouvez voir qu'après toutes les 12 touches, le motif se répète. Pourquoi 12 ? C'est compliqué et a une longue histoire, mais l'essentiel est que cela sonne le mieux. Les intervalles les plus agréables sont bien représentés par le système à 12 touches, d'une manière qu'ils ne feraient pas avec plus ou moins de touches (bien que les gens essaient).

À partir de ces 12 notes, des échelles sont formées. Une gamme est un ensemble de notes qui, eh bien..., sonnent bien ensemble. Mon arpégiateur n'a que des gammes diatoniques heptatoniques, appelées modes. Heptatonique signifie que chaque gamme a 7 notes, et pratiquement toute la musique occidentale est construite sur cela. Le diatonique est lié à l'ordre des intervalles entre les notes. Par exemple, la gamme de Do majeur est uniquement constituée des notes sans dièse commençant par Do :[ C D E F G A B ]. Chaque gamme est engendrée à partir d'une note fondamentale. Il existe également une gamme majeure enracinée dans D :[ D E F# G A B C# ]. Les gammes sont définies par des modèles de notes à sauter. La gamme majeure est [ W W H W W W H ], où W signifie "prendre une note et sauter une" et H signifie "prendre une note". Les autres modes ont d'autres modèles de prise et de saut de notes.

Pour chacune de ces sept notes, il y a un tas d'accords. Les accords utilisés ici sont simples :à partir d'une note, prenez trois notes, en sautant une à chaque fois dans la gamme que nous utilisons. Ainsi, dans notre gamme de do majeur simple (CDEFGAB), l'accord de V (V =cinq, donc sur la cinquième note) serait G (sauter A) B (boucler, sauter C) D, donc GBD. Ce motif peut être répété en remontant d'une octave (6 notes :GBDGBD). Un arpège (italien pour "cassé") joue simplement ces notes une pour une, au lieu de toutes ensemble.

Ce qui définit une chanson, c'est surtout la progression des accords. Le compositeur choisit un mode, choisit une note fondamentale, puis choisit 8 (ou plus ou moins) accords de la clé définie par cette note fondamentale. Il y a bien sûr quelques règles pour choisir les accords, mais cela reste un art. Dans une vraie chanson, sur cet accord le reste est construit, il peut y avoir toutes sortes de déviations par rapport à cette structure bien sûr, toutes sortes d'ornementations, mais souvent vous serez toujours capable de reconnaître les accords dans cet ordre.

Schémas

Le schéma de mon arpégiateur est assez simple, il se compose de 7 potentiomètres, 7 boutons, port MIDI, 2 LEDs et 4 résistances. Il peut être facilement assemblé sur une planche à pain comme indiqué ci-dessous, mais si vous êtes débutant dans le monde arduino, il serait bien mieux de commencer par les tutoriels suivants :

https://www.arduino.cc/en/main/howto

https://www.arduino.cc/en/Tutorial/Blink

https://www.arduino.cc/en/Tutorial/InputPullupSerial

https://www.arduino.cc/en/tutorial/potentiometer

https://www.arduino.cc/en/Tutorial/Midi

Contrôles

Potentiomètres :

  • Octave de la note tonique (0..7)
  • Octave de l'accord (0..7)
  • Délai entre les notes dans la progression (battements par minute)
  • Tonique / fondamentale (Do...B)
  • Pas d'arpège (1...5)
  • Mode musique (ionien, dorien...)
  • Style d'arpège (montant, descendant, montant+descendant, aléatoire)

Boutons :en appuyant sur un bouton, la progression d'accords correspondante est jouée.

Démonstration

Dans la première vidéo, je décris la fonctionnalité de l'appareil et ses commandes :

La deuxième vidéo montre le petit jam avec l'arpégiateur :

Synchronisation

Vous pouvez synchroniser le tempo des arpèges avec le Korg Volca :connectez la prise audio de l'arpégiateur à la "SYNC OUT" du synthétiseur. Assurez-vous de configurer le code source de la bonne manière dans arpeggiator.ino :

// Synchronisation :choisissez l'une des deux options possibles :

#define EXT_SYNC

//#define INT_SYNC

Décommenter EXT_SYNC pour la synchronisation via SYNC IN, ou INT_SYNC pour le contrôle du tempo via potentiomètre.

Je serai heureux pour tous les commentaires et commentaires, si vous avez une idée de la façon d'améliorer l'appareil - s'il vous plaît laissez le commentaire.

Amusez-vous bien et bonne chance !

Code

Code source
https://github.com/raszhivin/arpeggiator

Schémas

pour Fritzing arpégiateur_LICtzK2a2Q.fzz

Processus de fabrication

  1. Dés numériques Arduino
  2. Unopad - Contrôleur MIDI Arduino avec Ableton
  3. Iron Man
  4. Trouvez-moi
  5. Adaptateurs MIDI sans fil USB-BLE
  6. Bras robotique Arduino imprimé en 3D
  7. Contrôle de l'humidificateur Arduino
  8. Portail de surveillance de la température sans contact
  9. NeoMatrix Arduino Pong