Analyseur-visualiseur de spectre audio basé sur Arduino
Que pensez-vous que les filles font lorsqu'elles se réunissent? Faire du shopping, prendre des photos, aller dans des salons de beauté? Oui, c'est vrai, mais tout le monde ne le fait pas. Cet article explique comment deux filles ont décidé d'assembler un appareil électronique de leurs propres mains.Pourquoi exactement un analyseur-visualiseur de spectre?
Après tout, il existe de nombreuses solutions logicielles à ce problème, et il existe également de nombreuses options pour la mise en œuvre matérielle. Premièrement, je voulais vraiment travailler avec un grand nombre de LED (parce que nous avons déjà assemblé le cube led, chacun pour nous, mais en petites tailles), et deuxièmement, mettre en pratique les connaissances acquises dans le traitement numérique du signal et, en troisièmement, une fois de plus pour pratiquer le travail avec un fer à souder.Développement d'appareils
Parce que prendre une solution toute faite et le faire strictement selon les instructions est ennuyeux et sans intérêt, nous avons donc décidé de développer le circuit nous-mêmes, en ne comptant que légèrement sur les appareils déjà créés.Comme écran, nous avons choisi une matrice LED 8x32. Il était possible d'utiliser des matrices LED 8x8 prêtes à l'emploi et de les assembler, mais nous avons décidé de ne pas nous priver du plaisir de s'asseoir le soir avec un fer à souder, et avons donc assemblé nous-mêmes l'écran à partir des LED.Pour contrôler l'affichage, nous n'avons pas inventé un vélo et utilisé un circuit de commande avec indication dynamique. C'est-à-dire nous avons sélectionné une colonne, l'avons allumée, les colonnes restantes à ce moment-là éteintes, puis nous avons sélectionné la suivante, allumées, le reste éteint, etc. Étant donné que l'œil humain n'est pas parfait, nous pouvons observer une image statique sur l'écran.En suivant le chemin de moindre résistance, il a été décidé qu'il serait sage de transférer tous les calculs vers le contrôleur Arduino.L'inclusion d'une ligne dans une colonne s'effectue en ouvrant la clé correspondante. Pour réduire le nombre de broches de sortie du contrôleur, la colonne est sélectionnée via des décodeurs (ainsi, nous pouvons réduire le nombre de lignes de contrôle à 5).
En tant qu'interface de connexion à un ordinateur (ou à un autre appareil capable de transmettre un signal audio), le connecteur TRS (mini-jack 3,5 mm) a été sélectionné.Assemblage de l'appareil
Nous commençons l'assemblage de l'appareil en réalisant une maquette du panneau avant de l'appareil.
Le matériau du panneau avant a été choisi en plastique noir de 5 mm d'épaisseur (puisque le diamètre de la lentille de diode est également de 5 mm). Nous le marquons selon la disposition développée, découpons le panneau avant à la taille requise et forons des trous dans le plastique pour les LED.
Ainsi, nous obtenons un panneau avant fini sur lequel vous pouvez déjà assembler l'écran.
En tant que LED pour la matrice, deux couleurs (rouge-vert) avec la cathode commune GNL-5019UEUGC ont été utilisées. Avant de commencer l'assemblage de la matrice, guidé par la règle «un contrôle supplémentaire n'endommagera pas» toutes les LED, à savoir 270 pcs. (pris avec une marge au cas où), ont été testés pour leur fonctionnement (pour cela, un appareil de test a été assemblé, y compris un connecteur, une résistance de 200 ohms et une alimentation 5V).
Ensuite, nous développons les LED comme suit. Les anodes des diodes rouges et vertes sont courbées d'un côté (à droite), la cathode est courbée de l'autre côté, tout en s'assurant que la cathode est plus basse que les anodes. Et puis à 90 °, nous plions la cathode vers le bas.
Nous commençons l'assemblage de la matrice à partir du coin inférieur droit, l'assemblage s'effectue en colonnes.
En se souvenant de la règle «un contrôle supplémentaire ne fera pas de mal», après une ou deux colonnes jointes, nous vérifions les performances.
La matrice finie est la suivante.
Vue arrière:
Selon le schéma développé, nous soudons le schéma de gestion des lignes et des colonnes, dessoudons les câbles et la place sous l'Arduino.
Il a été décidé de dériver non seulement l'amplitude-fréquence, mais aussi le spectre phase-fréquence, ainsi que de sélectionner le nombre d'échantillons à afficher (32, 16, 8, 4). Pour cela, 4 commutateurs ont été ajoutés: un pour sélectionner le type de spectre, deux pour sélectionner le nombre d'échantillons et un pour allumer et éteindre l'appareil.Écrire un programme
Encore une fois, nous sommes guidés par notre règle et nous assurons que notre affichage est pleinement opérationnel. Pour ce faire, nous écrivons un programme simple qui allume complètement toutes les LED de l'écran. Naturellement, selon la loi de Murphy, plusieurs LED manquaient de courant et devaient être remplacées.
Après nous être assurés que tout fonctionne, nous avons commencé à écrire le code du programme principal. Il se compose de trois parties: initialisation des variables nécessaires et lecture des données, obtention du spectre du signal à l'aide de la transformée de Fourier rapide, sortie du spectre obtenu avec la mise en forme nécessaire à l'écran.Assemblage du dispositif d'extrémité
À la fin, nous avons un panneau avant, et en dessous un tas de fils qui doivent être fermés avec quelque chose, et les commutateurs doivent être fixés sur quelque chose. Avant cela, il y avait des idées pour faire un cas à partir des restes de plastique, mais nous n'imaginions pas vraiment à quoi il ressemblerait spécifiquement et comment le faire. La solution au problème est venue de façon tout à fait inattendue. En nous promenant dans la quincaillerie, nous avons trouvé un pot de fleurs en plastique d'une taille étonnamment parfaite.
L'affaire est restée petite, marquez les trous pour les connecteurs, les câbles et les commutateurs, ainsi que coupez les deux panneaux latéraux en plastique.
En conséquence, après avoir tout rassemblé, en connectant l'appareil à l'ordinateur, nous avons obtenu ce qui suit:Réponse en fréquence (32 échantillons):
Réponse en fréquence (16 échantillons):
Réponse en fréquence (8 échantillons):
Réponse en fréquence (4 échantillons):
Spectre phase-fréquence:
Vue arrière:
Vidéo de fonctionnement de l'appareil
Pour plus de clarté, la vidéo a été tournée dans l'obscurité. L'appareil affiche le spectre amplitude-fréquence sur la vidéo, puis à 7 secondes, nous le commutons en mode spectre phase-fréquence.Liste des éléments requis
- LED GNL-5019UEUGC - 256 pièces. (Pour l'affichage)
- Transistors npn KT863A - 8 pcs. (Pour la gestion des chaînes)
- Transistors pnp 32740 - 32 pcs. (Pour la gestion des colonnes)
- Résistances 1kΩ - 32 pcs. (Pour limiter le courant de base des transistors pnp)
- Décodeurs 3/8 IN74AC138 - 4 pcs. (Pour sélectionner une colonne)
- Décodeurs 2/4 IN74AC139 - 1 pc. (Pour les décodeurs en cascade)
- Plaque de montage 5x10cm - 2 pcs.
- Boucles
- Arduino Pro micro - 1 pc.
- Mini-jack 3,5 mm - 1 pc.
- Interrupteur - 4 pcs.
- Plastique noir 720 * 490 * 5 mm - 1 feuille. (Pour le panneau avant)
- Pot de fleur noir 550 * 200 * 150 mm - 1 pc. (Pour le logement)
Source: https://habr.com/ru/post/fr395289/
All Articles