Electronique > RéalisationsProduction sonore > Métronome 006

Dernière mise à jour : 14/11/2021

Présentation

Ce métronome est l'un des plus élaborés que j'ai réalisés, il ne fait pas que tac-tac-tac.


metronome_006_pcb_3d_a  metronome_006_proto_rm_001a

Certains pourraient peut-être douter de l'intérêt de certaines fonctions implémentées dans ce métronome, vous seul serez juge. Le circuit est basé sur un microcontrôleur PIC 16F18856, associé à deux potentiomètres, quelques boutons-poussoirs et un afficheur LCD. 


Caractéristiques principales :

L'écran LCD est facultatif, son absence ne gêne en rien ni le fonctionnement général ni la configuration du métronome dont les paramètres adoptés par défaut peuvent très bien vous convenir comme tels. Il va de soi qu'il est plus aisé de modifier la valeur des paramètres en visualisant leur valeur, mais après tout, votre oreille est et restera toujours un moyen de "communiquer" avec vos réglages.


Avertissements

Ce métronome n'est pas terminé. En vert ce qui est fonctionnel, en jaune ce qui est en cours :

Terminé Affichage du tempo et de la signature rythmique sur écran LCD
Terminé Balancier lumineux à 8 LED
En cours Gestion des mesures "asymétriques" (par exemple 3+2/4 ou 4+3+2/4)
Terminé Réglage rapide du tempo par potentiomètre
Terminé Réglage de la signature rythmique par boutons-poussoirs
Terminé Possibilité de spécifier une plage de valeurs min et max du tempo permises par le potentiomètre de réglage
Terminé Possibilité de spécifier la durée des signaux BF marquant les temps forts et faibles
Terminé Possibilité de modifier la tonalité des signaux BF marquant les temps forts et faibles
Terminé Possibilité de spécifier la durée d'allumage de la LED Tempo


Projet protégé par copyright.


Schéma

Bien que ce schéma présente visuellement quelques similitudes avec le séquenceur 004, il n'y a aucun rapport entre les deux, à part la famille de microcontrôleur utilisé (PIC 16F), l'écran LCD et le ULN2803...


metronome_006


Principe général de fonctionnement

Il repose sur les interruptions d'un Timer déclenchées toutes les 100 us - autrement dit à une fréquence de 10 kHz - qui constituent l'horloge de base du métronome. La valeur du tempo spécifié par l'utilisateur et exprimée en BPM (Beat Per Minute ou Battements Par Minute) est convertie en une valeur de période "inter-bip" elle-même exprimée en centaines de us (microsecondes). Une variable est incrémentée à chaque interruption du Timer et sa valeur est constamment comparée avec la valeur de période "inter-bip". Quand les deux correspondent, c'est le moment de délivrer un bip.

Remarque : afin de conserver une bonne précision temporelle entre chaque bip, une astuce a été mise en oeuvre pour ne pas "surcharger" le processeur quand vient le temps de produire les sons "temps fort" et "temps faible". 


Réglage des paramètres

Tous les paramètres peuvent être modifiés par la manoeuvre de potentiomètres et boutons-poussoirs, selon les procédures décrites ci-après.


Réglage tempo

Tourner le potentiomètre RV1/Set complètement à gauche (curseur vers la masse) pour accéder à l'écran "Tempo et signature rythmique". Manoeuvrer le potentiomètre RV2/Speed pour modifier la vitesse à la valeur désirée. Comme il peut être difficile de tomber sur une valeur de tempo très précise, un ajustage fin supplémentaire est prévu avec les quatres boutons-poussoirs SW1 à SW4 :réglage au BPM près avec SW1 (Inc) et SW2 (Dec), réglage au dixième de BPM avec SW3 (Inc) et SW4 (Dec).


metronome_006_disp-tempo-1200 metronome_006_disp-tempo-1201metronome_006_disp-tempo-1398

Remarque : si la valeur du tempo ne peut pas descendre aussi bas que vous le souhaitez, vérifier la valeur du paramètre "Tempo-Min" et la modifier le cas échéant (point vu plus loin). Si la valeur du tempo ne peut monter aussi haut que vous le souhaitez, vérifier la valeur du paramètre "Tempo-Max" et la modifier le cas échéant.

Réglage signature rythmique

Tourner le potentiomètre RV1/Set de façon à accéder à l'écran "Tempo et signature rythmique" avec un affichage du type "04+**+**/**". Cet écran permet de régler la valeur du nombre de temps dans la mesure (numérateur principal A1). Utiliser les boutons-poussoirs SW1 ou SW3 pour incrémenter la valeur, SW2 ou SW4 pour la décrémenter.


metronome_006_disp-sign-a1-04

Pour spécifier une signature "asymétrique", tourner le potentiomètre RV1/Set de façon à accéder à l'écran "Tempo et signature rythmique" avec un affichage du type "**+00+**/**", pour modifier la valeur du premier paramètre numérateur secondaire (A2). Si nécessaire, modifier également le deuxième paramètre numérateur secondaire (A3) en accédant au réglage "**+**+00/**". Remarque : si le premier paramètre numérateur secondaire (A2) est à 0, le deuxième paramètre numérateur secondaire (A3) ne sera pas pris en compte.

metronome_006_disp-sign-a2-00 metronome_006_disp-sign-a3-00    

Pour régler le temps de base (dénominateur B de la signature rythmique, ronde, blanche, noire, croche, etc.), tourner le potentiomètre RV1/Set de façon à accéder à l'écran "Tempo et signature rythmique" avec un affichage du type "**+**+**/04". Utiliser les boutons-poussoirs SW1 ou SW3 pour incrémenter la valeur, SW2 ou SW4 pour la décrémenter.

metronome_006_disp-sign-b1-04 

Exemple avec A1=4, A2=3, A3=0 et B=4 : 

metronome_006_disp-sign-a104-a203-b04

Réglage plage min-max tempo
Tourner le potentiomètre RV1/Set de façon à accéder à l'écran "Tempo Min-Max".

metronome_006_disp-tempo-minmax-0300-2500

Appuyer sur le bouton-poussoir SW1 pour incrémenter la valeur min du tempo ou appuyer sur le bouton-poussoir SW2 pour la décrémenter. Appuyer sur le bouton-poussoir SW3 pour incrémenter la valeur max du tempo ou appuyer sur le bouton-poussoir SW4 pour la décrémenter.

Réglage tonalité signal audio du temps fort

Tourner le potentiomètre RV1/Set pour accéder à l'écran "Beat High Tone".

metronome_006_disp-beat-hi-tone-2500

Appuyer ensuite sur le bouton-poussoir SW1 (ou SW3) pour incrémenter la valeur en cours, ou appuyer sur le bouton-poussoir SW2 (ou SW4) pour la décrémenter. Une valeur plus faible correspond à un son plus grave. Une valeur plus élevée correspond à un son plus aigu.


Réglage tonalité signal audio du temps faible

Tourner le potentiomètre RV1/Set pour accéder à l'écran "Beat Low Tone".

metronome_006_disp-beat-lo-tone-1250

Appuyer ensuite sur le bouton-poussoir SW1 (ou SW3) pour incrémenter la valeur en cours, ou appuyer sur le bouton-poussoir SW2 (ou SW4) pour la décrémenter. Une valeur plus faible correspond à un son plus grave. Une valeur plus élevée correspond à un son plus aigu.


Réglage durée signal audio du temps fort

Tourner le potentiomètre RV1/Set pour accéder à l'écran "Beat High Len".

metronome_006_disp-beat-hi-len-050

Appuyer ensuite sur le bouton-poussoir SW1 (ou SW3) pour incrémenter la valeur en cours, ou appuyer sur le bouton-poussoir SW2 (ou SW4) pour la décrémenter.


Réglage durée signal audio du temps faible
Tourner le potentiomètre RV1/Set pour accéder à l'écran "Beat Low Len".

metronome_006_disp-beat-lo-len-050

Appuyer ensuite sur le bouton-poussoir SW1 (ou SW3) pour incrémenter la valeur en cours, ou appuyer sur le bouton-poussoir SW2 (ou SW4) pour la décrémenter.

Réglage durée allumage LED tempo

Tourner le potentiomètre RV1/Set pour accéder à l'écran "LED Tempo Len".

metronome_006_disp-tempo-led-len-050

Appuyer ensuite sur le bouton-poussoir SW1 (ou SW3) pour incrémenter la valeur en cours, ou appuyer sur le bouton-poussoir SW2 (ou SW4) pour la décrémenter.


Réglage durée signal Trig externe

Tourner le potentiomètre RV1/Set pour accéder à l'écran "Out Ext Len".

metronome_006_disp-out-ext-len-050

Appuyer ensuite sur le bouton-poussoir SW1 (ou SW3) pour incrémenter la valeur en cours, ou appuyer sur le bouton-poussoir SW2 (ou SW4) pour la décrémenter.


Balancier lumineux

Le balancier lumineux est composé de huit LED et donne l'illusion de mouvement du balancier d'un métronome mécanique (comme pour le métronome 004). Les LED sont allumées à tour de rôle en se déplaçant alternativement de gauche à droite et de droite à gauche, avec une vitesse de défilement 7 fois plus rapide que celle du tempo de base. Chaque bip marque un temps fort ou faible et correspond ainsi à l'allumage d'une des deux LED situées aux extrémités du balancier. Le pilotage des LED s'effectue par un registre à décalage de type CD4094 qui dispose de huit sorties "parallèles". Les données émises par le PIC à destination du CD4094 sont transmises sous forme série grâce aux lignes Data, Clock et Strobe respectivement positionnées sur les lignes d'E/S RB5, RB6 et RB7 du PIC. Du fait qu'à chaque instant une seule LED est allumée, on peut se permettre de limiter leur courant à l'aide d'une unique résistance.

Remarque : le balancier lumineux est entièrement facultatif. Si vous n'en avez point besoin, inutile de câble le CD4094 ainsi que les LED et la résistance associée. Il est possible de le rajouter plus tard, puisque les données de mise à jour des LED sont émises en permanence.


Sorties de "puissance"

Les sorties pompeusement appelées "de puissance" permettent de renforcer l'aspect visuel et sonore du métronome. L'usage d'un ULN2803 comme interface de sortie permet de disposer de plusieurs centaines de mA qui seront plus que suffisants pour attaquer une ou plusieurs LED haute luminosité (pour la partie visuelle) ou de bons petits HP (pour la partie sonore).

La durée d'activation de la sortie S1 (Out Ext) peut être ajustée de 1 ms à 100 ms.


Alimentation

Un peu de 12 V pour la partie "puissance" et un soupçon de 5 V pour le PIC, voilà qui justifie l'emploi d'un petit régulateur de tension 78L05.


Prototype

Réalisé selon implantation indiquée plus loin.


metronome_006_proto_rm_001a metronome_006_proto_rm_001bmetronome_006_proto_rm_001c

Remarque : n'ayant pu me procurer le PIC 16F18856 (plus de stock chez mes revendeurs habituels), j'ai utilisé un 16F18857 en remplacement.

Ce prototype m'a permis de mettre en évidence des erreurs et des dysfonctionnements que je me suis empressé de corriger (quelques différences mineures entre ce prototype et le circuit PCB que je propose désormais) :



Circuit imprimé (PCB)

Réalisé en double face.


metronome_006_pcb_components_top


Typon (PCB / circuit imprimé) au format PDF  


Logiciel du PIC

Le code logiciel sera mis à disposition en libre service quand toutes les fonctions seront implémentées et fonctionnelles.
Si toutefois un courageux veut le tester en l'état, il suffit de me le demander ;)


Historique

14/11/2021
- Première mise à disposition (schéma et PCB). Le logiciel viendra un peu plus tard.