Dernière mise à jour :
24/02/2013
Présentation
Vumètre stéréo 2 x 16 LED avec mémorisation des crêtes, basé
sur un PIC 16F88 dont on n'exploite même pas les pleines
capacités.
Comparé à ses deux prédécesseurs
Vumètre
012a et Vumètre 012b, celui-ci se distingue par les points
suivants :
- mémorisation des crêtes (durée environ 2 secondes)
- affichage en mode barregraphe et non en mode point
(ça pourrait aussi se faire)
- redresseur audio sommaire intégré. Il
est donc possible avec ce montage d'attaquer directement le circuit
avec un signal audio d'amplitude suffisante (entre 0,5
Vcac et 5 Vcac, +6 dBu max, ajustage sensibilité prévu).
L'idée de concevoir et réaliser cette nouvelle version de vumètre ne
m'est pas venue toute seule. Quelqu'un m'a contacté pour me demander si
j'avais en projet de réaliser un vumètre stéréo avec mémorisation des
crêtes, tel celui visible sur la
page vumètre du site
S-O-Web. Peut-être en effet qu'une mise à jour de la version
stéréo 012b à 2 x 12 LED pourrait-elle...
Schéma
Par curiosité je suis allé voir en
détail ce que voulait bien montrer l'auteur du
vumètre en question.
Cet auteur ne met pas à disposition le
code source du logiciel de son vumètre (PIC 16F88 comme pour mon
vumètre 012b) mais le schéma et les quelques explications que
j'ai
pu
comprendre m'ont laissé entendre qu'il ne devait pas être très
compliqué de partir sur une même base de fonctionnement. C'est donc ce
que
j'ai essayé de faire en écrivant un code logiciel à partir de zéro, et
voici le résultat.
Etage d'entrée
Le redressement du signal audio
stéréo appliqué sur les broches 1 et 3 du connecteur d'entrée
J1/Audio-In est effectué de façon assez sommaire. Le boulot principal
est assuré par les
triplets D101/D102/C101 et D201/D202/C201. Les résistances
R102 et R202 déterminent le temps de décharge des condensateurs C101 et
C201 et par là-même le temps de relâchement des "aiguilles"
lumineuses. Les diodes zener D103 et D203 de 5,1 V (j'ai mis
des 4,7 V sur mon proto) limitent la valeur
de la tension qui sera appliquée à l'entrée du CAN du PIC afin de ne
pas le griller en cas de présence d'un signal audio de très forte
amplitude.
Le PIC est partiellement protégé mais les protections internes ont
parfois leur limite. Les résistances R101 et R201 limitent le courant
qui circule dans ces diodes zener si elles se mettent à conduire. Le
potentiomètre
RV1 permet d'appliquer une tension continue de la valeur désirée à la
borne de référence haute du CAN du PIC (Vref+) et de décider en
conséquence de
la "sensibilité" à donner au vumètre. La procédure à appliquer pour son
réglage sera donnée plus loin, mais on peut déjà dire que plus
la tension de référence est élevée et moins le vumètre est sensible
puisqu'il faut une tension d'entrée plus élevée pour allumer les mêmes
LED.
Affichage
Toujours du multiplexage, mais différent toutefois de celui utilisé
pour les deux vumètres précédents 012a et 012b. Ici on attaque les LED
non plus de façon unitaire (une par une) mais par paquets de huit. Deux
paquets de huit LED
pour la voie gauche et autant pour la voie droite. Le PIC travaille de
la façon suivante :
1 - acquisition et mémorisation tension continue sur entrée RA0/AN0
2 - acquisition et mémorisation tension continue sur entrée RA1/AN1
3 - comparaison entre nouvelles valeurs et anciennes valeurs pour
traitement des crêtes
4 - affichage 1ère portion d'échelle de LED voie gauche (LED
D1 à D8)
5 - affichage 2ème portion d'échelle de LED voie gauche (LED D9 à D16)
6 - affichage 1ère portion d'échelle de LED voie droite (LED D17 à D24)
7 - affichage 2ème portion d'échelle de LED voie droite (LED D25 à D32)
Correspondance Amplitude signal d'entrée / LED affichées
Ce qui
est génial avec ce genre de montage, c'est qu'on peut définir
les seuils qu'on veut pour chaque point de l'échelle d'affichage. Ici,
j'ai adopté une échelle comprise entre -30 dBu et +6 dBu. Pourquoi ne
pas descendre en dessous de -30 dBu ? D'une part
parce que -30 dBu correspond déjà à un signal d'amplitude faible
(environ 70 mVcac) et d'autre part parce que le redressement du signal
audio est ici assuré de façon
sommaire et passive avec une diode dont le seuil de conduction n'est
pas annulé par un circuit spécifique. Même si le seuil en question est
faible (environ 0,3 V pour un courant direct de 1 mA), il n'est pas
nul. En théorie donc il ne faudrait même pas compter pouvoir afficher
un niveau inférieur à -18 dBu. Ceci dit il me
semblait intéressant de comparer les valeurs obtenues par
simulation dans Proteus avec celles mesurées en réel, avec de vraies
diodes. Car même si le seuil de conduction de la diode est affiché à
300 mV, je peux vous assurer qu'en fait elle commence à conduire bien
avant... oui, à environ 100 mV.
Dans le tableau qui suit :
- la colonne Amp correspond à l'amplitude crête à crête du
signal sinus appliqué à l'étage d'entrée
- la colonne In (1) correspond aux valeurs
simulées dans Proteus
- la colonne In (2) correspond aux valeurs mesurées en labo
(diodes utilisée BAT85, signal test = sinus 1 kHz).
- la colonne dBu correspond à la valeur notée en colonne Amp
(référence 775 mVeff / 0 dBu)
- la
colonne Num correspond à la valeur numérisée par le CAN 10 bits du PIC,
pour une tension de référence haute de 4,1 V (0 pour 0 V et 1023 pour
4,1 V)
Amp |
In
(1) |
In (2) |
dBu |
Num |
LED |
0,07 Vcac |
9 mVdc |
12,3 mVdc |
-30 |
3 |
1 |
0,12 Vcac |
29 mVdc |
33,5 mVdc |
-25 |
8 |
2 |
0,22 Vcac |
90 mVdc |
94,3 mVdc |
-20 |
24 |
3 |
0,39 Vcac |
0,22 Vdc |
0,20 Vdc |
-15 |
50 |
4 |
0,69 Vcac |
0,48 Vdc |
0,42 Vdc |
-10 |
105 |
5 |
0,97 Vcac |
0,73 Vdc |
0,66 Vdc |
-7 |
165 |
6 |
1,23 Vcac |
0,95 Vdc |
0,90 Vdc |
-5 |
225 |
7 |
1,55 Vcac |
1,25 Vdc |
1,20 Vdc |
-3 |
300 |
8 |
1,95 Vcac |
1,65 Vdc |
1,61 Vdc |
-1 |
402 |
9 |
2,20 Vcac |
1,87 Vdc |
1,84 Vdc |
0 |
460 |
10 |
2,45 Vcac |
2,1 Vdc |
2,04 Vdc |
+1 |
510 |
11 |
2,75 Vcac |
2,40 Vdc |
2,30 Vdc |
+2 |
575 |
12 |
3,09 Vcac |
2,73 Vdc |
2,59 Vdc |
+3 |
647 |
13 |
3,47 Vcac |
3,10 Vdc |
2,90 Vdc |
+4 |
725 |
14 |
3,90 Vcac |
3,49 Vdc |
3,27 Vdc |
+5 |
817 |
15 |
4,37 Vcac |
4,05 Vdc |
3,70 Vdc |
+6 |
925 |
16 |
Il est amusant de constater que l'on a des valeurs réelles légèrement
plus élevées dans les bas niveaux et que la tendance s'inverse quand on
monte dans les niveaux élevés. Hum... même si on dispose d'un réglage
de la référence haute du CAN, il ne sera pas évident d'avoir une haute
précision à tous les niveaux... Je suggère de régler RV1 pour un niveau
de 0 dBu venant d'un générateur de test, qu'en pensez-vous ?
Mémorisation des crêtes
J'avoue avoir passé un peu de temps
pour savoir comment faire. Mémoriser une crête n'est pas compliqué du
tout, mais il fallait aussi prévoir son reset automatique et son
affichage. En fin de compte, l'ensemble des fonctions liées aux crêtes
(détection, mémorisation, affichage et reset auto) ne demande que
quelques lignes de code. C'est souvent comme ça : après avoir fini le
boulot, on se rend compte qu'il suffisait de... Bah oui mais c'est bien
sûr !
Procédure de réglage
L'affichage ne présentera rien de pertinent tant que le
réglage du potentiomètre RV1 ne sera pas effectué. Ceci dit un réglage
précis n'est pas obligatoire et deux modes de travail s'offrent à vous :
- Mode "mesure". Dans ce mode la valeur affichée par les LED
représente quelque chose. Si vous voyez la LED 0 dBu s'afficher au plus
haut, vous savez que le signal BF appliqué à l'entrée du montage est
effectivement de 0 dBu. Pour bénéficier de ce mode il faut régler RV1
de telle sorte que la tension continue présente en son curseur (qui est
aussi pour rappel celle appliquée à l'entrée Ref+ du CAN du PIC) soit
de 4,1 V. Si vous disposez d'un générateur de signaux test, appliquez
une sinus 1 kHz / 0 dBu (775 mVeff ou 2,2 Vcac) sur les deux entrées
gauche et droite du vumètre et ajustez RV1 pour que les LED 0 dBu (D10
et D26) s'allume tout juste.
- Mode "décoratif". Dans ce mode on s'arrange pour que la LED
du haut de l'échelle ne s'allume que lors des fortes crêtes de
modulation, sans se soucier aucunement de l'amplitude réelle du signal
BF. On règle pour que ça fonctionne bien et on profite au mieux de
l'ensemble de l'échelle. Ce n'est pas une tare que de vouloir utiliser
un vumètre pour décorer !
Alimentation
Le PIC 16F88 réclame une tension de +5 V, ici on utilise un régulateur
de type "7805" (LM7805, MC7805, etc) pour l'obtenir. Comme il
s'agit d'un
régulateur
de tension standard et non "faible chute de tension", la
tension requise à son entrée doit être d'au moins 3 V
supérieure, soit 8 V. Pour un fonctionnement optimal et pour ne pas
avoir d'échauffement excessif du régulateur, utiliser une tension
d'entrée comprise entre +8 V et +15 V (par rapport à la masse).
Extensions possibles ?
Toujours possible avec un peu d'imagination ou réels besoins.
- Le
temps de relâchement (release) est normalement fixé par la valeur des
condensateurs C101 et C201 ainsi que des résistances qui y sont placées
en parallèle, R102 et R202. Mais il faut tenir compte aussi de
l'impédance d'entrée des lignes d'E/S du PIC qui est loin d'être très
élevée et qui se positionne en parallèle sur les résistances élevées
R102 et R202. Résultat, le temps de relachement est globalement 10 fois
plus court (plus rapide) que ce à quoi on pourrait s'attendre. En fait,
supprimer les résistances R102 et R202 ne changerait sans doute pas
grand chose au fonctionnement général. Cela fonctionne tout de même
bien comme ça mais si cela vous pose un problème, il faut ajouter un
AOP monté en suiveur de tension entre la sortie de l'étage redresseur
et le PIC. Ce dernier doit être de type "rail-to-rail" et prévu pour
fonctionner en basse tension.
- Mémorisation
des crêtes : actuellement avec reset automatique au bout de 2 secondes,
on peut aussi prévoir une mémorisation permanente avec reset manuel par
bouton poussoir. Moi-même n'ai pas ce besoin et je préfère conserver
l'automatisme.
- Choix du mode d'affichage "barregraphe" ou "point".
- Ajustage précis des seuils : on peut prévoir une
procédure de configuration manuelle pour les seize seuils d'allumage
des élements de l'échelle lumineuse et ainsi tenir globalement compte
des défauts de l'étage redresseur d'entrée. Selon une procédure bien
plus simple que celle adoptée pour mon vumètre 015
(complexité de ce dernier rendue nécessaire pour l'usage prévu qui
n'est pas du tout le même).
Notez
bien le nombre de lignes d'E/S libres sur le schéma actuel, il ne reste
que RA5/MCLR. Si je devais l'utiliser, je choisirais la dernière option
d'extension possible.
Oui, je sais, on dispose aussi des 8 lignes du port B que l'on pourrait
lire au moment de l'initialisation du système, juste avant de placer ce
port en Sortie et que les petites LED s'animent. Mais cela ajoute 8
cavaliers et autant de diodes 1N4148. Pfff...
Prototype
Réalisé sur plaque à pastilles prépercée,
étamée et bien pratique. Réglage (ajustage RV1) effectué avec un signal
test sinus 1 kHz / 0 dBu et tests généraux (vérification absence
défauts visuels flagrants style scintillements) réalisés avec la sortie
casque d'un poste de radio FM - dont on sait tous à quel point la
dynamique des émissions est grande, n'est-ce pas...
Comme
vous pouvez l'imaginer, l'alignement des LED est toujours un vrai
plaisir, surtout quand elles ne sont pas plaquées sur le circuit
imprimé. Pour éviter de faire trop désastreux, j'ai commencé par fixer
une entretoise plastique à chaque coin du circuit imprimé, afin de
délimiter le retrait maximal des LED durant leur soudage. Puis j'ai
essayé de m'appliquer un peu.
Bon,
pas trop mal, j'aurais pu faire pire. Une fois les LED posées,
restaient bien sûr les autres composants... et les fils de câblage !
Comme
vous pouvez le constater, une petite section alimentation
constituée d'un régulateur de tension intégré de type 7805 a été ajouté
au circuit d'affichage. C'est tellement pratique, ces bestioles. Le
potentiomètre ajustable bleu que l'on voit à côté du régulateur 7805
est RV1, on ne peut pas se tromper c'est le seul ajustable ! Ne soyez
pas choqué si j'ai mis un 4,7 kO alors que le schéma montre un 10 kO.
Vous aussi pouvez prétendre à ce petit écart de conduite.
Vidéo de démonstration
Une petite vidéo sans prétention et vite faite pour montrer la bête en
action. Utilisation d'une de
mes
musiques, avec vumètre 012c placé à côté des vumètres de mon
distributeur casques - pour "comparaison".
J'avais auparavant réalisé une autre vidéo avec quatre extraits de
chansons différentes, mais quelques minutes après
l'avoir postée
sur YouTube, j'ai reçu un message m'informant que cette vidéo
contenait une musique éditée par EMI et que je devais faire attention
au
respect des droits d'auteur. La reconnaissance automatique de contenu
audio avait frappé. J'ai contacté EMI pour en savoir plus sur les
conditions d'utilisation desdits extraits, et j'ai eu confirmation
qu'ils pouvaient être utilisés à condition d'avoir l'accord des
artistes et de la maison d'édition, et bien sûr... de payer quelques
droits. Ce qui est tout à fait légitime, je ne conteste nullement ces
conditions d'utilisation. Mais bon, pour une simple démo de
fonctionnement de ce vumètre, j'ai préféré ne pas entamer de procédure
d'accord et refaire la vidéo avec une de mes compositions.
Je dois dire que je suis content car ça a fonctionné du
premier coup !
Non, je blague, bien sûr. Mes erreurs étaient les suivantes :
- Mauvais
placement dans le code logiciel d'un paramètre lié à l'horloge
du
PIC dans le registre OSCCON, qui rendait le démarrage un peu long : il
fallait attendre environ une minute à partir de la mise sous tension,
pour que le vumètre daigne faire bouger ses petites lumières (le PIC
tournait dans un premier temps à 37 kHz puis ensuite à 8 MHz).
- Oubli d'une masse. Oh, presque rien, c'est juste celle qui
menait à la broche VSS du PIC.
- Mauvais
câblage de deux diodes BAT85 sur les quatre que comporte le circuit de
redressement. Je ne comprenais pas pourquoi ce circuit de redressement
que j'avais testé peu de temps avant ne rendait plus rien sur ses
sorties (à peine 18 mVdc pour un signal audio de 2,2 Vcac en entrée).
Bah oui, j'avais fait le câblage de tête, et comme cette dernière me
joue des tours en ce moment...
- Deux paquets de trois LED ne s'allumaient pas. Absence de
soudure en deux points, ça se touchait presque... mais pas assez !
Non,
pas d'autre erreur. Les LED 0 dBu et +1 dBu sont vertes parce que
j'avais envie que ce soit comme ça. On peut bien se permettre un petit
dépassement de temps en temps, tant qu'on reste dans le domaine de
l'analogique, non ? Oups... aurais-je trahi mon manque de rigueur ?
Autres prototypes
Circuit réalisé ou en cours de réalisation, merci pour les retours.
Prototype de Julien
Réalisé comme le mien sur plaque d'expérimentation.
Prototype de Robert
Réalisé sur un beau circuit bien propre, avec des straps
en lieu et place des fils de liaison volants requis avec ma version de CI.
Logiciel du PIC
Le fichier binaire compilé
(*.hex) est disponible dans l'archive dont le lien suit, il a
été
créé par l'éditeur / compilateur MikroPascal dans sa version V5.0.
Vumètre
012c - Version stéréo 2 x 16 LED avec PIC 16F88 -
18/09/2011
Si
vous souhaitez recevoir par la poste un PIC préprogrammé
et prêt à utiliser, merci de consulter la page
PIC - Sources.
Circuit imprimé
Réalisé en simple face avec quelques straps,
mais je dois avouer qu'il ne me plait qu'à moitié. Pour tout dire, je
me suis un peu dépêché et n'en suis pas très fier. A vos risques et
péril.
Important : plusieurs
liaisons doivent
être effectuées en filaire car le circuit est assez dense au
niveau
des LED et je ne voulais pas me plier au double face. Vous pouvez
effectuer ces liaison sous le circuit (côté cuivre, c'est ma
préférence), mais ce n'est pas obligé. Il faut relier entre elles :
- les deux pastilles M1 (cathodes D1/D17 avec
cathodes D9/D25, sur résistance R1)
- les deux pastilles M2 (cathodes D2/D18 avec
cathodes D10/D26, sur résistance R2)
- les deux pastilles M2 (cathodes D3/D19 avec
cathodes D11/D27, sur résistance R3)
- les deux pastilles M2 (cathodes D4/D20 avec
cathodes D12/D28, sur résistance R4)
- les deux pastilles M2 (cathodes D5/D21 avec
cathodes D13/D29, sur résistance R5)
- les deux pastilles M2 (cathodes D6/D22 avec
cathodes D14/D30, sur résistance R6)
- les deux pastilles M2 (cathodes D7/D23 avec
cathodes D15/D31, sur résistance R7)
- les deux pastilles M2 (cathodes D8/D24 avec
cathodes D16/D32, sur résistance R8)
- les deux pastilles nommées ML1 (anodes D1 à D8 avec broche
1 du PIC)
- les deux pastilles nommées ML2 (anodes D9 à D16 avec broche
3 du PIC)
Ce qui fait en tout 10 liaisons filaires d'un point à un autre du
circuit imprimé. Notez que toutes les pastilles entre lesquelles doit
s'effectuer une liaison filaire sont de forme carrée. Les repères MR1
(anodes D17 à D24) et MR2 (anodes D25 à D32) sont notés sur le
circuit imprimé (côté composants) mais les liaisons sont faites par une
strap plus "conventionnel".
Typon
aux formats PDF, EPS et Bitmap 600 dpi
Historique
24/02/2013- Ajout photos prototypes Julien et Robert.
20/01/2013
- Ajout dessin de circuit imprimé (peut mieux faire, j'ai fait vite).
27/05/2012
- Ajout du régulateur de tension 5 V sur le schéma, qui reste optionnel
si vous disposez déjà d'une source de tension de 5 V régulée.
25/09/2011
- Ajout vidéo démo sur YouTube.
18/09/2011
- Première mise à disposition du vumètre 012c stéréo 2 x 16
LED avec mémorisation des crêtes, à
base de 16F88.