Electronique > Réalisations > Détecteurs > Décodeur tonalité 003

Dernière mise à jour : 18/06/2023

Présentation

Ce décodeur de tonalité est de type "numérique", contrairement aux deux précédents décodeur tonalité 001 et décodeur tonalité 002 qui sont entièrement analogiques. Très simple, celui décrit ici fait appel à un PIC 12F675 pour détecter la présence d'un signal audio de fréquence préalablement déterminée, en l'occurence de valeur comprise entre 740 Hz et 750 Hz.

decodeur_tonalite_003_pcb_3d_front

Ce montage qui a été conçu pour finaliser la mise au point de ma télécommande 012 s'avère bien plus stable que mon décodeur de tonalité 001 basé sur un LM567 (ce dernier dérive davantage en fonction de la température ambiante).
Une version plus évoluée et travaillant sur le même principe a ensuite vu le jour, détails en page Décodeur tonalité 003b.

   

Avertissement

Le procédé de détection utilisé impose au signal à détecter une durée d'au moins 60 ms. La présence d'un signal conforme est validée après 50 ms de présence du signal utile à la bonne fréquence. L'amplitude du signal d'entrée doit être comprise entre 0,5 V et 4,0 V crête à crête.

   

Schéma

Plus de la moitié des composants de ce schéma pourraient être supprimés... mais ce serait moins bien.
   
decodeur_tonalite_003
Connecteur ICSP non représenté sur le schéma

   

Fonctionnement général

Le signal audio arrive sur l'entrée d'un comparateur de tension intégré au PIC et son amplitude instantanée est en permanence comparée à une tension de référence interne. Les changements d'état du comparateur (demi-périodes) sont comptabilisés dans des fenêtres de 100 ms. Si leur nombre est égal au double de 74 ou 75, on considère que la fréquence du signal d'entrée correspond au critère attendu (740-750 Hz) et la sortie principale Out passe au niveau logique haut. Le filtrage opéré de cette sorte n'est pas très rigoureux, mais des signaux de 710 Hz ou 780 Hz (+/-5% de la valeur centrale) sortent de la plage de capture et n'activent pas par erreur la sortie Out, ce qui est très correct. 

   
decodeur_tonalite_003_graphe_001a decodeur_tonalite_003_graphe_001b
   

Si aucun signal n'est détecté pendant au moins 10 ms, la sortie Out passe (ou reste) à l'état logique 0. Et si aucun signal n'est détecté pendant au moins 1,5 secondes, alors la sortie Err passe à l'état logique 1. Cette sortie Err se désactive dès réception d'un signal valide.

   
decodeur_tonalite_003_graphe_002a
   

Pour garantir une bonne précision du comptage, la fenêtre de mesure est automatiquement resynchronisée sur l'apparition du premier "front" après une absence d'au moins 100 ms du signal à détecter. Et bien entendu, la fréquence d'horloge du PIC est stabilisée par un quartz.

   
Descriptif du schéma

Comme on peut s'en douter, le microcontrôleur PIC fait le plus gros du travail.

Pour commencer, le signal audio est appliqué à un filtre passe-bas (coupe-haut) constitué de R1 et C1 qui atténue les fréquences supérieures à 1 kHz. Tout de suite après, le condensateur C2 et les deux résistances R2 et R3 forment un filtre passe-haut (coupe-bas) destiné à atténuer les basses fréquences. Notez qu'en même temps, R2 et R3 forment un pont diviseur qui permet de centrer le signal audio sur une valeur grosso-modo égale à la moitié de la tension d'alimentation, soit environ 2,5 V.

Les diodes D1 et D2 écrêtent les éventuelles "envolées" du signal audio qui pourraient endommager le PIC.

   

Alimentation

L'alimentation du circuit est de +5 V et provient d'un régulateur de tension LM7805 dont l'entrée reçoit une tension de 12 V.

   

Logiciel du PIC

Fichier compilé (*.hex) en libre service.
Décodeur tonalité 003 - PIC 12F675 - 17/06/2023

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 double face.
 
decodeur_tonalite_003_pcb_components_top

   

Historique

18/06/2023
- Première mise à disposition.