DTMF Status
Le but du projet est de réaliser une application qui permette de générer et de décoder les séquences de caractères DTMF en utilisant la carte son du PC.
Le projet en est à sa première version, n'hésitez pas à signaler les éventuels bugs qui seraient passés au travers des tests.
Télécharger : Télécharger l'éxécutable (version 1.2 du 16/06/2012).
NB: La bibliothèque graphique MS DirectX doit être installée sur le PC (implicite sur Vista et Windows 7).
Le programme a été conçu pour Windows XP et ultérieurs, mais il devrait fonctionner sous Windows 95/98 (à condition que DirectX soit installé).
Log des versions :
16/06/2012 V1.2 : Changements fonctionnels légers
- Amélioration de l'affichage des données reçues (mise en page, formattage des données).
- Ajout d'un libellé associé aux séquences permettant d'avoir des séquences identiques pour des relais différents (interprétation différentes).
10/06/2012 V1.1 : Changements fonctionnels
- Amélioration du décodage avec meilleure prise en compte du bruit de fond (testé avec bruit blanc)
- Passage de la fréquence d'échantillonage à 16000 ech/sec.
08/06/2012 V1.0 : Changements fonctionnels
- Gestion du seuil minimum de détection (l'utilisateur gère un curseur)
- gestion du niveau moyen de bruit pour meilleure détection des fréquences
- Passage de la fréquence d'échantillonage à 11000 ech/sec.
02/09/2006 Changements du système de décodage
- Filtrage numérique butterworth d'ordre 3 pour les huit fréquences
- Ajout de l'interprétation des formules
- Divers changements de présentation.
20/08/2005 : Si la commande est renvoyée par le système distant, l'écho est ignoré et on reste en attente de la réponse.
Fonctionnement du programme DTMF Status
Le programme sait envoyer une séquence DTMF sur la sortie son, et peut, ensuite, passer en attente d'une réponse donnée sous la forme d'une autre séquence DTMF.
Cette séquence reçue est ensuite décodée, en fonction de paramètres situés dans le fichier de configuration DTMFStatus.ini
Exemple : Interrogation du nouveau relais UHF du Petit-Ballon : Demande de status
Lancer le programme, sélectionner la séquence DTMF à envoyer au relais dans la 'combo box' en bas à droite (*DDD3# est la seule qui soit définie pour le moment).
Si la séquence DTMF est envoyée par un autre moyen, le programme va le détecter (s'il l'entend), et va passer automatiquement en attente de la réponse (attention il faut 500ms sans code DTMF pour que DTMF Status puisse déterminer qu'une séquence est finie).
(cliquer sur l'image pour agrandir)
Cliquer sur le bouton Gen.DTMF, le programme envoie la séquence DTMF sur la sortie son, et passe alors en mode attente.
Le relais envoie sa réponse (en principe :) Pour tester, j'ai généré une séquence valide : voit copie d'écran ci-dessous.
(cliquer sur l'image pour agrandir)
Le programme a décodé la séquence et l'a affichée dans la fenêtre texte à droite : Fréquence => 431,675, Shift -1600, etc....
Certaines valeurs sont interprétées par des formules (paramétrées dans le fichier ini).
NB: pour que le décodage se fasse bien, le niveau sonore doit être bien ajusté, règler le niveau de manière que les crêtes arrivent à peu près en haut de l'écran, mais veiller à ne pas saturer.
Définition du fichier de configuration :
Configuration | Commentaires | |
---|---|---|
[SEQ_*DDD3#_Relais VHF]
; Zone 4 ; Zone 5 ; Zone 6 ; Zone 8 |
Entre crochets : SEQ suivi de la séquence d'interrogation DTMF à envoyer vers la carte son et du libellé. LgSeq=14 indique qu'on attend en réponse à *DDD3# une séquence DTMF de 14 caractères
Libellé de la zone : Il sera affiché lors du décodage, suivi de la valeur décodée. Mode de codage : Pour l'instant deux modes sont définis: Définition de libellés pour des valeurs particulières
|