Kit MOSMusic : MOSFET, Arduino et plus pour éclairage musical
Composants et fournitures
| Infineon CoolMOS C7 Gold SJ MOSFET | × | 1 |
| MOC3021 (Driver Triac Opto-isolé) | × | 4 |
| 2N6073AG | × | 1 |
| Arduino UNO | × | 1 |
| Fil pour wire wrapping SparkFun | × | 1 |
| Fil électrique calibre 18 AWG minimum | × | 1 |
| Condensateur 1 µF | × | 4 |
| Résistance 220 ohm | × | 4 |
| Résistance 100k ohm | × | 4 |
| Résistance 10k ohm | × | 1 |
| Résistance 330 ohm | × | 1 |
| Douille d'ampoule | × | 4 |
| Ampoule | × | 4 |
| Prise polarisée résidentielle | × | 1 |
| Plaque d'essai (générique) | × | 1 |
| Fils de connexion (générique) | × | 1 |
| Source 12 Volts (pour Arduino) | × | 1 |
| Capteur de son | × | 1 |
| Pinces crocodile | × | 4 |
| PCB cuivre | × | 1 |
Outils et machines nécessaires
- Fer à souder (générique)
- Chlorure ferrique
- Marqueur Sharpie
- Alcool isopropylique
- Fil à souder
Applications et services en ligne
- Arduino IDE
- Proteus Design Suite
À propos de ce projet
MOSMusic (MM)
Station d'éclairage portable synchronisée avec la musique.
Utilisez toujours la technologie pour améliorer le monde. Si vous êtes un hacker black hat ou gray hat, veuillez vous abstenir à ce stade... ou au moins laissez vos respects pour me faire sentir moins coupable XP.
Introduction
De nos jours, pour un organisateur ou un musicien indépendant, les événements, réunions et fêtes ne suivent pas nécessairement la façon traditionnelle d'arriver, jouer et partir. Les fans d'aujourd'hui exigent un niveau de divertissement plus élevé, ce qui a conduit les organisateurs à devoir acheter des systèmes de contrôle d'éclairage et de son coûteux pour atteindre le niveau nécessaire pour le spectacle des fans.
Ce type de systèmes d'éclairage possède un système de contrôle complexe et coûteux pour gérer chacune des lumières. La plupart du temps, il est nécessaire de programmer un spectacle de lumière à l'avance pour chaque chanson, augmentant encore plus les coûts.
Voici quelques produits similaires sur le marché, qui sont de très faible qualité :
- MICTUNING 2ème génération RGB LED
- Bandes LED avec synchronisation musicale

Aucun des produits disponibles sur le marché ne se vend à moins de 40 dollars. Ils ne permettent de contrôler que des éléments de faible puissance comme des LEDs, mais si nous voulons vraiment contrôler des éléments de haute puissance, nous avons besoin d'un circuit capable de le faire sans risquer le contrôleur, dans ce cas un Arduino.

Le circuit
Le but du circuit est de commuter d'un signal numérique de 0-5 V DC vers un signal de contrôle de 120 V AC.
Dans la première étape du circuit, nous avons un MOSFET Infineon 600V CoolMOS C7, qui nous permet de contrôler l'opto-coupleur en demandant le minimum de courant à la carte Arduino, car l'opto-coupleur nécessite au moins 5 volts à 36 mA pour pouvoir piloter. C'est très proche de la limite de courant que la carte Arduino peut fournir. Cependant, le 600V CoolMOS ne nécessite qu'un signal de 5 volts à 60 µA, montrant ainsi une amélioration excessive de la consommation qu'il requiert de la carte.
Cette consommation est extrêmement importante car elle nous donne la possibilité d'utiliser littéralement n'importe quel contrôleur pour effectuer cette tâche grâce à sa faible consommation, sans avoir besoin de drivers plus chers qui peuvent fournir cette puissance sur leurs ports.

Le fonctionnement du MOSFET est de mettre à la masse la diode de l'opto-coupleur. Une fois activé, il permet le flux d'énergie à travers le DIAC, qui à son tour permet le passage du courant dans le TRIAC connecté à l'ampoule et l'allume dans le processus.
L'autre grand avantage de l'utilisation du MOSFET est la facilité d'augmenter le nombre de drivers comme dans l'image 1 ou d'utiliser des drivers plus puissants comme dans l'image 2 sans changer la conception du circuit principal.


Différents résultats sur différentes cartes :

Une autre solution à ce projet aurait été d'utiliser des relais, qui ont la fonction d'effectuer cette même tâche mais mécaniquement, en générant un « Clic » à chaque commutation. Le problème avec ce type de composant est que si nous utilisons des lumières dimmables ou si la fréquence de commutation était plus grande, le relais ne pourrait pas effectuer cette tâche, ce que le MOSFET, l'opto-coupleur et le TRIAC peuvent facilement faire.

Le PCB (ou plaque d'essai)
Pour ce projet, il est possible de faire des modules individuels pour pouvoir étendre le nombre d'ampoules ou de dispositifs haute tension connectés à l'Arduino ou à toute autre carte.

Vous pouvez également faire un module complet pour 4 sorties AC afin d'intégrer tout le système sur un seul PCB. Les deux fichiers sont dans le dossier « PCB Files » sur le GitHub ou en bas du projet.

Développement
Pour développer ce circuit, nous avons d'abord testé chacune des étapes pour démontrer son efficacité. Le premier circuit testé était le contrôle des ampoules au moyen d'un bouton et de gants de sécurité en raison de la haute tension. (Veuillez, si vous répliquez l'expérience, utiliser toutes les mesures de sécurité possibles, manipuler du courant secteur n'est pas prudent).
Pour le deuxième circuit, puisque le contrôle des lampes fonctionne bien, une plateforme avec des LEDs a été réalisée pour voir comment l'Arduino contrôlait les lumières au rythme de la musique. Le code se trouve dans le dossier « Arduino Code », le code est abondamment commenté.
Une fois que nous avons vu que le contrôle des lumières fonctionnait, nous avons connecté tous les composants du circuit complet sur une plaque d'essai, pour contrôler les 4 lumières et l'avons connecté à l'Arduino.
Comme vous pouvez le voir, cela a été fait par étapes pour gérer la sécurité. Je répète qu'il est dangereux de manipuler du 120V AC sous tension, alors prenez toutes les précautions en considération.
Le produit final
Avec le circuit fonctionnel, nous avons décidé de faire des modules de contrôle comme celui montré sur l'image pour ne pas dépendre d'un éventuel câble défaillant sur la plaque d'essai.

La carte a été réalisée basée sur celle qui se trouve dans le dossier « PCB Files ». Cependant, comme nous n'avions pas de papier de transfert, nous avons dû faire les vias avec un Sharpie. C'est un marqueur permanent qui survit quand on trempe la plaque dans le chlorure ferrique. C'est le processus classique pour faire des PCBs maison. Vous pouvez en savoir plus sur ce processus ici :
https://www.hackster.io/Junezriyaz/how-to-make-pcb-using-marker-531087
Après avoir fait trois PCB supplémentaires, nous avons décidé de mettre tout le circuit dans une boîte, en le couvrant et avec 4 lampes identiques pour que ce soit un produit plus esthétique et facile à transporter.

Et c'est fini ! Avec cela, nous avons terminé le système de synchronisation d'éclairage pour éléments électriques (120 ou 220 volts).
Commentaires
Ce projet a été réalisé afin de démontrer que le contrôle de lumières par microcontrôleurs peut être efficace et bon marché, puisque les systèmes actuels d'une qualité bien inférieure sont vendus à des prix excessifs et donc pas accessibles à tous.
Et pour montrer une approche créative et rarement vue pour utiliser les MOSFETs CoolMOS C7 fournis par Infineon.
Références
Toutes les informations sur la technologie utilisée et les références directes sont dans notre wiki :
Wiki : https://github.com/altaga/MOSMusic-MM-/wiki
Code
Code Arduino (Arduino)
Lecture du capteur et séquence de sortie des ampoules
int analog1 = 0;
int analogm = 0;
double basemean = 0;
int base = 0;
int gain = -5;
unsigned int sensibility = 5;
int counter = 0;
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
Serial.begin(115200);
for (int i = 0; i < 100; i++) {
basemean += analogRead(A0);
}
base = (basemean / 100) + gain;
analogm = analogRead(A0);
digitalWrite(LED_BUILTIN, LOW);
}
void loop() {
analog1 = analogRead(A0);
if (abs(analog1 - analogm) < sensibility && counter >= 10) {
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
} else if (abs(analog1 - analogm) < sensibility && counter < 10) {
counter += 1;
} else {
counter = 0;
if (analog1 >= (base - 30) && analog1 < (base - 10)) {
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
} else if (analog1 >= (base - 10) && analog1 < (base)) {
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
} else if (analog1 >= (base) && analog1 < (base + 10)) {
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
} else if (analog1 >= (base + 10) && analog1 < (base + 20)) {
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
} else if (analog1 >= (base + 20) && analog1 < (base + 50)) {
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
}
}
analogm = analog1;
delay(50);
}
MOSMusic
https://github.com/altaga/MOSMusic-MM-
Pièces personnalisées et boîtiers
- 4-module_kFm59jYssL.DXF
- single-module_nJVqMTooAQ.DXF
Schémas

Processus de fabrication
- Histoire du fil de tungstène : des filaments de carbone d'Edison aux alliages AKS modernes
- Maîtriser la syntaxe des netlists SPICE : nommage, composants passifs/actifs, sources
- L'art et l'artisanat des tiares : histoire, matériaux et design moderne
- Le fil barbelé expliqué : histoire, construction et usages modernes
- Circuits intégrés (CI) : puces compactes et puissantes alimentant l'électronique moderne
- Maîtriser la découpe fil : guide complet de l'électroérosion fil
- Comprendre l'usinage par électroérosion (EDM) : précision et puissance dans l'enlèvement de matière
- Composants Essentiels d'une Perceuse : Vue d'Ensemble Complète
- Composants clés d'un moteur à combustion interne