Table des matières:
- Étape 1: POTENTIOMÈTRES ET BOUTONS
- Étape 2: ANNEAUX NEOPIXEL AVEC ARDUINO
- Étape 3: COMMUNICATION MIDI avec l'Arduino
- Étape 4: Câblage
- Étape 5: Le programme
- Étape 6: Pièce d'impression 3D
- Étape 7: plaque d'aluminium
- Étape 8: Boîte en plexiglas 8 mm
- Étape 9: Assemblage
- Étape 10: FINAL (TEST vidéo)
- Étape 11: Panier
Vidéo: DIY MIDI CONTROLLER USB Plug & Play (MISE À NIVEAU NEOPIXEL RING) : 12 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
Passionné de MAO et de Musique Electronique mais voyant aussi qu'il était possible de créer une Interface Midi personnalisée j'ai fait le mien6 Potentiomètres et 12 boutons (on/off) mais pour rendre le spot plus difficile qu'il l'était déjà je souhaite ajouter une indication visuelle autour de chaque bouton rotatif
Étape 1: POTENTIOMÈTRES ET BOUTONS
Pour pouvoir envoyer une commande midi avec potentiomètre il m'a fallu comprendre que les potentiomètres sont à composante analogique (0 à 1023) et les données que reçoit Arduino sur son entrée analogique ont une petite variation cette petite variation a perturbé la communication avec l'Ordinateur
Je vous conseille de tester chacun des potentiomètres pour éviter une erreur et si la variation de valeur est très importante un potentiomètre est peut-être HS
La valeur sera examinée par arduino et doit être envoyée à l'ordinateur en Midi doit être propre (ses données numériques)
La petite variation peut être exclue des données qui seront incluses dans le programme Les boutons agissent comme un interrupteur marche / arrêt
Étape 2: ANNEAUX NEOPIXEL AVEC ARDUINO
Pour utiliser le neopixel RING avec arduino, vous devez installer la bibliothèque NEOPIXELhttps://learn.adafruit.com/adafruit-neopixel-uberg…
#include // Bibliothèque Neopixel
#define PINX X // DATA IN; Quelle broche de la carte du microcontrôleur est connectée aux NeoPixels ?
#define NUMPIXELS XX // Combien de NeoPixels sont attachés au tableau ?
Pixels Adafruit_NeoPixel = Adafruit_NeoPixel (NUMPIXELSX, PINX, NEO_GRB + NEO_KHZ800); //Bibliothèque NeoPixel
pixels.setPixelColor(i, 0, 0, 0); // CODE COULEUR RVB en décimal
pixels.setBrightness (luminosité) // Réglage de la luminosité
pixels.show() // Ceci envoie la couleur de pixel mise à jour au matériel.
Pour information le neopixel avec 16 pixels tournant dans le sens inverse des aiguilles d'une montre
À propos de la consommation d'énergie, nous sommes
(2x12 + 2x 16 + 2x24) x 3 (chaque composant a 3 leds RGB) = 312 leds.
Chaque Led consomme 20ma, Total 6, 4A mais nous n'utilisons jamais tous les pixels allumés et d'autre part jamais avec une luminosité maximale.
Pour consommer moins d'énergie je découvre une astuce de persistance rétinienne
Quoi qu'il en soit, la sortie 5V donnée par arduino ne suffit pas pour que cela fonctionne correctement
Étape 3: COMMUNICATION MIDI avec l'Arduino
Copiez d'abord la bibliothèque midi Midi.h dans C:\Program Files (x86)\Arduino\libraries"
sourceforge.net/projects/arduinomidilib/
Afin d'utiliser l'arduino de la même manière qu'une interface Plug And Plug et peut transmettre des informations midi en USB, vous devez flasher l'arduino avec un firmware personnalisé
Voir là pour cette manipulation:
Le seul problème est; pour modifier le code s'il y a une erreur vous devez mettre le custom firmware dans arduino pour réactiver la communication série
Étape 4: Câblage
Les rotatifs sont connectés sur l'entrée analogique
Le commutateur GND, Led GND et Neopixel DATA IN sur l'entrée numérique
www.sparkfun.com/products/9277
Les leds utilisées sont mono couleur choisissez la même couleur de broche pour led sur pcb
Étape 5: Le programme
Microcontrôleur signifie programmation
C'était pour moi l'étape la plus difficile mais c'est l'opportunité de m'y remettre
Le programme se divise en plusieurs parties en une seule boucle
chaque partie devenant un sous-programme
Réglez la broche DATA du commutateur avec la broche de données LED correspondant sur la carte PCB
affiche (); // Lire la valeur du potentiomètre et envoyer les données Midi;
// Contrôlez NeoPixel avec la lecture de la valeur du potentiomètre et définissez la couleur et la luminosité ring1 (); ring2(); ring3(); ring4(); ring5(); ring6(); bouton(); // Vérifier l'état du bouton, envoyer les données midi et contrôler la Led
je suis très heureux d'avoir un avis d'expert pour améliorer mon programme
Étape 6: Pièce d'impression 3D
pour recevoir la bague 6 neo pixel avec impossibilité de toucher les potentiomètres un support est créer
Les Neopixel sont collés dessus avec un pistolet à colle
Ce support est au deuxième niveau car le rotatif ne peut pas mettre en bague Neopixel 12
Étape 7: plaque d'aluminium
Étape 8: Boîte en plexiglas 8 mm
Pour percer et taper au milieu de la tranche j'ai utilisé un plexiglas de 8mm d'épaisseur
Couper 5 morceaux de plexiglas j'ai utilisé une scie circulaire;
1x210mm/270mm
2x210mm / 60mm
2 x 254 mm / 60 mm
Pour faire l'assemblage de la boite On perce et on tape au milieu de la tranche de chaque pièce
On fait la même chose pour mettre l'entretoise
Perçage 2, 5mm
Taraudage 3 mm
Étape 9: Assemblage
À l'aide d'une entretoise et d'une vis de 3 mm, nous assemblons le tout
Entretoise 35mm pour support NEOPIXEL, entretoise 50mm pour PCB Sparkfun et 5mm pour Arduino
Étape 10: FINAL (TEST vidéo)
www.youtube.com/embed/c_BEfl-kEec
Étape 11: Panier
6 x potentiomètres linéaires 10KOhm 0.25w
12 x Résistance 220Ohm 0.25w
12 x Résistance 10Kohm 0.25W
12 x DIODE STANDARD SUR SEMICONDUCTEUR 1N4148TA 100V 200MA
6 x Résistance 470Ohm
1 x condensateur 1000uF
1 x ARDUINO 2650 R3
3 x PANNE DE BOUTON BREAKOUT PCB 2X2
3 x BUTTON PAD YOP LUNETTE 2X2
2 x ADAFRUIT NEOPIXEL RVB 12 LED ANNEAU
2 x ADAFRUIT NEOPIXEL RVB 16 LED ANNEAU
2 x ANNEAUX LED ADAFRUIT NEOPIXEL RGB 24
12 x Entretoise HEXAGONALE M3 X 50MM
3 x E Entretoise HEXAGONALE M3 X 35MM
1 x adaptateur secteur 5V 4A
1 x USB A MALE à B MALE 20CM
1 x Adaptateur USB 2.0 TYPE B FEMELLE vers USB 2.0 TYPE A
1 x INTERRUPTEUR A BASCULE TRU COMPOSANTS
1 X Connexion Basse Tension Verticale Femelle 5MM 2.2MM
1 x Plaque de PLEXIGALS épaisseur 8MM
Conseillé:
Mise à niveau de perceuse sans fil bon marché ! : 4 étapes
Mise à niveau de perceuse sans fil bon marché ! : Cette fois, je vais vous expliquer comment mettre à niveau la batterie de perceuse sans fil bon marché. La seule chose que nous allons mettre à niveau est la batterie elle-même, car la perceuse bon marché a une petite capacité de batterie. Nous allons ajouter une fonction sur la batterie ! Fonctionnalités ajoutées : Chargez le b
Mise à niveau de l'USB-C vers une imprimante 3D : 10 étapes
Mise à niveau de l'USB-C vers une imprimante 3D : cela vaut toujours la peine de rester dans l'air du temps avec un investissement minimum. J'ai acheté mon imprimante 3D pour la première fois il y a trois ans et malheureusement, après une longue attente, l'imprimante a été livrée avec un port SD cassé. Il ne me restait plus qu'à le rendre
DIY Logitech Pure Fi Anywhere 2 Rebuild & Mini Conversion de mise à niveau de haut-parleur Bluetooth : 14 étapes (avec photos)
Bricolage Logitech Pure Fi Anywhere 2 Rebuild & Mini Conversion de mise à niveau de haut-parleur Bluetooth: L'un de mes préférés à faire est de prendre quelque chose que je trouve bon marché dans un magasin Goodwill, Yardsale ou même Craigslist et d'en faire quelque chose de mieux. Ici, j'ai trouvé une ancienne station d'accueil Ipod Logitech Pure-Fi Anywhere 2 et j'ai décidé de lui donner une nouvelle
Mise à niveau du multimètre sur batterie Li-ion avec chargement via USB : 4 étapes (avec photos)
Mise à niveau d'un multimètre sur batterie Li-ion avec chargement via USB : comment mettre à niveau un multimètre
Feuilles de mise en page de planche à pain sans soudure (électronique plug and play): 3 étapes (avec photos)
Feuilles de mise en page de planche à pain sans soudure (électronique plug and play): Voici un système amusant conçu pour prendre en charge certains des maux de tête impliqués dans la maquette d'un circuit. Il s'agit d'un simple ensemble de fichiers modèles dessinés à l'échelle avec des composants électroniques du monde réel. En utilisant un programme de dessin vectoriel, vous déplacez simplement le c