Table des matières:

Structure LED contrôlée par MIDI : 7 étapes
Structure LED contrôlée par MIDI : 7 étapes

Vidéo: Structure LED contrôlée par MIDI : 7 étapes

Vidéo: Structure LED contrôlée par MIDI : 7 étapes
Vidéo: How to make a LED digital counter using 7- Segment Display 2024, Juillet
Anonim
Image
Image

En tant que vrai mélomane et étudiant en électronique et informatique, j'ai toujours voulu construire des appareils MIDI, que je pourrais utiliser pour la création de musique électronique.

Après avoir assisté à de nombreux spectacles et festivals de musique, j'ai commencé à m'intéresser vraiment aux spectacles de lumière lors des représentations.

Après de nombreuses recherches, je n'ai pour la plupart trouvé que des appareils utilisant un microphone et ne pouvant pas permettre de contrôler les LED exactement comme vous le souhaitez.

En me familiarisant de plus en plus avec les signaux DAW et MIDI, j'ai décidé de me lancer dans ce projet !

Il s'agit d'une structure 3D avec des LED incorporées, qui sont en fait contrôlées par des signaux MIDI (NoteOn, NoteOff et CC Messages).

Ainsi, le musicien pouvait contrôler la couleur et l'intensité de chaque LED, uniquement en utilisant des signaux MIDI, générés par n'importe quel DAW.

Avec cette idée, j'ai voulu valoriser la créativité à travers des jeux de lumière et permettre à chacun de construire le sien, pour rendre chaque performance visuelle unique.

Étape 1: Matériaux

Fondamentalement, ce projet se compose de deux parties: un circuit de réception MIDI et la structure LED; et un microcontrôleur pour relier ces parties et "traduire" les signaux MIDI provenant de la DAW vers les bandes LED. Voici une liste des matériaux nécessaires pour chaque pièce.

Circuit de réception MIDI:

  • 1x6N138 Optocoupleur
  • 1x1N914 Diode
  • 1 x prise Din 5 broches (prise MIDI)
  • 2 résistances 220 Ohm
  • 1 x 4.7K Ohm Résistance
  • 1 prise USB/MIDI

Structure LED:

J'ai utilisé des bandes de LED RVB basées sur des LED WS2812B qui peuvent être contrôlées avec un seul port numérique. Si vous prévoyez d'utiliser un grand nombre de LED, vous devrez peut-être vous soucier du courant maximal nécessaire (1 LED peut consommer au maximum 60 mA). Si le microcontrôleur ne peut pas gérer cette valeur maximale, vous aurez besoin d'une autre alimentation 5V pouvant fournir suffisamment de courant. J'ai utilisé un adaptateur AC/DC 5V - 8A avec l'adaptateur de sortie dédié et un interrupteur.

Remarque: il semble que vous puissiez utiliser un bloc d'alimentation d'ordinateur, car ils sont connus pour pouvoir fournir un courant très élevé, mais vous devrez vous assurer qu'il délivre une tension continue de 5 V stable, peut-être en utilisant un Résistance de puissance de 36 Ohm 5 Watt entre la masse (noir) et la sortie 5V (rouge) pour qu'il y ait suffisamment de courant traversant la résistance et ainsi fournir un 5V stable.

Enfin, j'ai utilisé un simple Arduino Uno avec un shield à vis pour faire le lien entre les signaux MIDI et les bandes LED.

Étape 2: Construire le circuit d'entrée MIDI

Construction du circuit d'entrée MIDI
Construction du circuit d'entrée MIDI
Construction du circuit d'entrée MIDI
Construction du circuit d'entrée MIDI

Si vous êtes intéressé par ce qu'est exactement le protocole MIDI et comment il fonctionne, je vous recommande vivement de consulter la chaîne YouTube Notes and Volts où il y a beaucoup de tutoriels intéressants et innovants et de projets MIDI Arduino.

Dans cette partie, je me concentrerai uniquement sur le circuit d'entrée MIDI. Cela peut être une bonne idée de construire un prototype sur une protoboard et de vérifier si les signaux MIDI provenant de la DAW sont bien reçus par le microcontrôleur avant de se lancer dans la soudure des composants.

Les deux vidéos suivantes décrivent comment construire et tester le circuit:

  • Construire le circuit
  • Tester le circuit

Enfin, cela peut aussi être une bonne idée de regarder cette vidéo pour comprendre les messages CC et comment les clips d'automatisation peuvent être interprétés par votre microcontrôleur pour contrôler la luminosité des LED par exemple.

Étape 3: Configuration de FL Studio (facultatif)

Configuration de FL Studio (optionnel)
Configuration de FL Studio (optionnel)
Configuration de FL Studio (optionnel)
Configuration de FL Studio (optionnel)
Configuration de FL Studio (optionnel)
Configuration de FL Studio (optionnel)

Comme je me sens à l'aise avec FL Studio, je vais expliquer comment configurer correctement son interface MIDI, mais je suis presque sûr que cette procédure ne devrait pas être radicalement différente si vous utilisez une autre station de travail audio numérique.

Tout d'abord, vous n'aurez qu'à brancher la prise USB/MIDI sur votre ordinateur. Habituellement, ces appareils sont livrés avec un micrologiciel intégré et sont reconnus comme des appareils MIDI même s'ils ne sont pas branchés. Ouvrez ensuite la fenêtre "Paramètres" (en appuyant sur F10). Si tout fonctionne correctement, vous remarquerez des périphériques de sortie MIDI dans la section de sortie. Sélectionnez votre appareil et assurez-vous qu'il est allumé.

Ensuite, vous devrez définir votre numéro de port et le garder en tête (0 par exemple). Fermez simplement cette fenêtre (les paramètres sont automatiquement sauvegardés) puis ajoutez un nouveau canal: MIDI Out.

Ensuite, la dernière chose que vous aurez à faire est de définir le port de ce nouveau canal: assurez-vous de choisir le même numéro de port que vous avez défini dans la section "Paramètres": en faisant cela, les messages MIDI provenant de votre canal sont maintenant relié à la sortie MIDI.

Désormais, lorsqu'une note est jouée par le canal MIDI Out, un message "NoteOn" sera envoyé via l'interface MIDI. De la même manière, un message "NoteOff" sera envoyé lorsque la note sera relâchée.

Une autre caractéristique intéressante, fournie avec le canal de sortie MIDI, est la possibilité de contrôler différents paramètres avec des potentiomètres. En faisant un clic droit sur l'un d'eux et en sélectionnant "Configurer…", vous pouvez leur faire envoyer des CCMessages (une valeur allant de 0 à 127) qui serviront à contrôler la luminosité des LED: choisissez CC puis Accepter.

Normalement, FL Studio est maintenant prêt à envoyer des données à votre interface MIDI ! La prochaine consiste à écrire le code à flasher dans l'Arduino et à l'adapter à votre structure LED.

Étape 4: Connexion des LED

Connexion des LED
Connexion des LED

La connexion des bandes LED est assez simple, car elles nécessitent simplement +5V, GND et Data. Cependant, comme je prévoyais d'en connecter plus de 20, j'ai décidé d'utiliser plusieurs broches Arduino PWM et de déclarer plusieurs instances d'Adafruit_NeoPixel (dans le centre) pour éviter tout type de retard involontaire.

L'image ci-jointe vise également à expliquer le fonctionnement de l'électronique:

  • Les bandes de LED sont directement alimentées par l'alimentation.
  • Un interrupteur d'alimentation est utilisé pour alimenter l'Arduino
  • le circuit d'entrée MIDI est alimenté par l'Arduino lors de l'allumage de l'interrupteur

Étape 5: Conception de la structure 3D

Conception de la structure 3D
Conception de la structure 3D
Conception de la structure 3D
Conception de la structure 3D
Conception de la structure 3D
Conception de la structure 3D
Conception de la structure 3D
Conception de la structure 3D

Jusqu'à présent, cette partie était la plus longue car j'étais totalement nouveau avec l'impression 3D (et la modélisation). Je voulais concevoir une structure qui ressemblait à un icosaèdre tronqué à moitié éclaté (oui, il m'a fallu un certain temps pour trouver le nom exact de la forme).

Vous êtes bien entendu libre de concevoir votre propre modèle avec la forme que vous souhaitez ! Je ne détaillerai pas le processus de modélisation mais vous trouverez les fichiers STL si vous souhaitez concevoir cette structure.

L'assemblage des différentes pièces a pris du temps, car j'ai dû mettre une LED dans chaque face et les connecter toutes en soudant un grand nombre de fils à l'intérieur du noyau qui est actuellement assez désordonné !

Remarque: si vous souhaitez concevoir une telle structure, vous aurez besoin de 10 pièces hexagonales (environ 3 heures chacune en utilisant une mini imprimante PP3DP UP) et 6 pièces pentagonales (2 heures).

Une fois qu'il y a une LED dans chaque partie, vous devrez connecter toutes les bornes 5V et GND ensemble et câbler les différentes bornes d'entrée et de sortie de chaque LED de la manière dont vous les connectez.

Enfin, j'ai utilisé de l'acrylique diffusant à LED pour couvrir chaque visage et les éclairer de manière cohérente.

Il ne reste plus que le code, qui se révèle pas si compliqué que ça !

Étape 6: le code

Le code
Le code

Comme je l'ai mentionné dans la partie précédente, le code se révèle assez simple !

En fait, il ne s'agit que d'une instance MIDI et de plusieurs instances Adafruit_NeoPixel (autant qu'il y a de tranches différentes).

En gros, une fois déclarée, la classe MIDI fonctionne avec des sortes d'"interruptions": NoteOn, NoteOff et CCMessage. Lorsque le circuit d'entrée MIDI transmet un de ces signaux spécifiques à l'Arduino, le sous-programme associé est appelé. Ensuite, tout ce que le code fait est d'allumer une LED spécifique sur le signal NoteOn, de la baisser sur le signal NoteOff associé et de mettre à jour la luminosité d'une bande sur CCMessage.

Aussi, j'ai défini une fonction simple qui donne la possibilité de choisir la couleur des LED en lisant la vélocité venant avec le signal NoteOn et chaque LED peut alors être soit rouge, violet, bleu, turquoise, vert, jaune, orange ou blanc, en fonction de la valeur de vélocité allant de 0 à 127.

Une chose importante à noter est que vous devrez déconnecter la broche RX (provenant du circuit d'entrée MIDI) lors du téléchargement de votre croquis car le port série (utilisé pendant ce processus) est connecté à cette broche !

Étape 7: Et maintenant ?

Je travaille actuellement sur un boîtier sur mesure pour intégrer toute l'électronique et je réfléchis également à un nom pour la structure ! S'il vous plaît laissez-moi savoir si vous avez apprécié ce projet, et je travaille sur différents spectacles car je prévois de mettre à jour cette instructable avec plus de vidéos !

Conseillé: