Dernière mise à jour :
08/10/2014
Présentation
Ce commutateur audio est destiné à être raccordé entre un microphone et
l'entrée d'une console de mélange, et est doté d'un détecteur à
infrarouge qui permet une mise en/hors fonction automatique du
microphone. Quand personne ne se trouve devant le microphone, le commutateur
est en position OFF (Mute activé), et il s'active (position ON, Mute désactivé) dès que quelqu'un
s'approche. La détection de présence du chanteur (ou orateur ou
musicien) est assurée par la réflexion (ou non réflexion) d'un faisceau
infrarouge. Le circuit est basé sur un microcontrôleur PIC 16F88.
Avertissement
Pro - Ce
système a été conçu pour un usage pro et fait suite à une demande pro.
Je ne peux donc pas le décrire ici dans le détail. Pour la même raison, le logiciel du PIC n'est pas mis en libre service.
Principe général de fonctionnement
Le système possède une
entrée micro et une sortie micro, et doit être installé sur le
microphone ou juste à côté de lui. Un émetteur IR (infrarouge) envoie
des
impulsions en direction de la personne ou de l'instrument à diffuser
et/ou enregistrer, et un récepteur IR analyse ce qui revient. Si une
personne ou un objet est détecté à proximité,
le système laisse passer le son qui provient du microphone. Si le
système ne détecte rien, le son qui provient du microphone n'est pas
transmis à la console (il est coupé ou atténué). L'analyse (détection de présence) s'effectue à
un rythme de 10 fois par seconde. La commutation audio est assurée par
des composants électroniques et le bruit de commutation est réduit au
maximum. Le taux d'atténuation peut être ajusté entre 6 dB et 40
dB environ.
Fonctions principales
- Distance de détection : entre 20 cm et 1 mètre (Nota 1).
- Très bonne réjection des rayonnements IR indésirables (lampes à incandescence ou fluocompactes, lumière naturelle).
- Alimentation
: autonome, via la tension 48 V Phantom délivrée par la console
(désactivation automatique du système en absence d'alim Phantom).
- Atténuation du niveau micro : ajustable entre -6 dB et -40 dB, sans bruit de commutation.
- Sortie de commande pour forçage d'autres systèmes placés en parallèle (pour ouverture d'un couple stéréo par exemple).
- Temps de réaction : 300 ms (0,3 sec) en mode normal, 100 ms (0,1 s) en mode "Turbo".
- Temps de relâchement (avant réactivation du Mute) ajustable entre 300 ms et 10 sec.
- 15
codes IR différents programmables (1 à 15) pour limiter le risque de
mauvais déclenchement quand plusieurs systèmes identiques sont placés
côte à côte.
- Reprogrammation possible du PIC sur site (connecteur ICSP)
Nota 1
: la distance réelle de détection dépend de l'environnement et de la
nature des vêtements que porte la personne dont on souhaite détecter la
présence. Des habits sombres absorbent plus les IR et la distance de
détection s'en trouve réduite. La distance annoncée de 1 mètre a été
observée avec des habits foncés et sans éclairage à incandescence à proximité.
Schéma
Le circuit est structuré autour d'un PIC 16F88.
(image volontairement floutée)
C'est le
microcontrôleur qui assure l'ensemble des opérations. Il fournit à la
LED IR (infrarouge) les impulsions à une fréquence bien précise, avec un rapport
cyclique parfaitement défini. Le système est conçu pour délivrer des
impulsions IR puissantes, tout en tenant compte du fait que
l'alimentation Phantom
n'est pas en mesure de délivrer une intensité de courant élevée.
Réglage de sensibilité (distance de détection)
Plusieurs
solutions existent, mais deux viennent tout de suite à l'esprit
: réglage de la puissance d'émission ou réglage de la sensibilité
du récepteur. J'ai choisi la première solution pour deux raisons :
premièrement il vaut mieux éviter de prélever du courant sur le 48 V
Phantom quand ce n'est pas nécessaire, et deuxièmement
le photorécepteur choisi n'offre pas trop de lattitude de ce
côté-là... Le réglage de sensibilité s'opère par le potentiomètre RV1,
qui permet d'ajuster la puissance d'émission du flux infrarouge.
Analyse des données infrarouge reçues
Pour
limiter le risque de mauvais déclenchements, et notament quand
plusieurs systèmes identiques se trouvent côte à côte, un code spécial
module la porteuse IR. Ce code dépend de
l'état logique des 4 lignes RB4 à RB7 du PIC, configurées en entrées grâce aux cavaliers JP1 à JP4.
- Code 0 -> JP4=0, JP3=0, JP2=0, JP1=0 - équivalent au code 1 (code 0 interdit)
- Code 1 -> JP4=0, JP3=0, JP2=0, JP1=1
- Code 2 -> JP4=0, JP3=0, JP2=1, JP1=0
- Code 3 -> JP4=0, JP3=0, JP2=1, JP1=1
- Code 4 -> JP4=0, JP3=1, JP2=0, JP1=0
- Code 5 -> JP4=0, JP3=1, JP2=0, JP1=1
- Code 6 -> JP4=0, JP3=1, JP2=1, JP1=0
- Code 7 -> JP4=0, JP3=1, JP2=1, JP1=1
- Code 8 -> JP4=1, JP3=0, JP2=0, JP1=0
- Code 9 -> JP4=1, JP3=0, JP2=0, JP1=1
- Code 10 -> JP4=1, JP3=0, JP2=1, JP1=0
- Code 11 -> JP4=1, JP3=0, JP2=1, JP1=1
- Code 12 -> JP4=1, JP3=1, JP2=0, JP1=0
- Code 13 -> JP4=1, JP3=1, JP2=0, JP1=1
- Code 14 -> JP4=1, JP3=1, JP2=1, JP1=0
- Code 15 -> JP4=1, JP3=1, JP2=1, JP1=1
Durant l'émission des IR, le système se
met à l'écoute de ce qui revient sur le photo-détecteur. Si le signal
reçu est de même fréquence et de même code que le signal émis, alors le
système conclut
qu'une personne ou un objet se trouve à proximité et désactive le
circuit d'atténuation BF (Mute). Si le signal reçu est de même
fréquence mais que le code reçu est différent de celui émis, cela
signifie qu'un autre système est situé à proximité et qu'il a émis un
code IR en même temps (ce qui déjà en pratique n'est possible que
pendant 2% du temps). Un code reçu différent peut aussi signifier que
la personne à détecter est en mouvement et à la limite de la zone de
détection.
Temps de réaction et temps de relâchement
Le
temps de réaction "de base" est de 100 ms (0,1 sec), mais une
intégration (un moyennage) est mis en oeuvre pour que les commutations
n'aient lieu qu'au terme de trois analyses consécutives, ce qui porte
le temps de réaction effectif à 300 ms environ.
- Détection présence : le Mute se désactive dès que 4 codes IR valides sont reçus à la suite (100 ms entre chaque).
- Détection
absence : le Mute s'active sur deux conditions : la première condition
est que le récepteur IR ne reçoit plus de code valide pendant au moins
trois analyses consécutives, la seconde condition est que le temps de
relâchement est atteint.
Le temps de relâchement est déterminé
par le potentiomètre RV2, il est de 0,3 s en position min et de 10
secondes en position max.
Remarque
: le temps de réaction peut être diminué à 100 ms (0,1 s) en limitant à
deux le nombre de codes reçus valides consécutifs. Pour cela il suffit
de placer la broche RB0 du PIC (Speed) à la ligne d'alim positive (+3,3
V). Il pourrait être immédiat (désactivation vute à chaque code reçu
bon), mais on a beaucoup plus de risques d'observer des coupures
et rétablissements (Mute et Activation) parasites.
(Re)Programmation du système
Le
circuit est doté d'un connecteur ICSP qui permet la reprogrammation sur
site (sans retirer le PIC de son support). N'importe quel programmateur
de PIC doté d'un port ICSP convient, il faut juste amener les fils
(VPP, PGC, PGD, masse et éventuellement VDD) au bon endroit. Ici,
compatibilité (point de vue ordre des fils) avec la majorité des
programmateurs du marché et en particulier le PICkit3 de Microchip.
Partie optique
La
partie électronique est une chose, la partie optique (LED d'émission IR
et photodétecteur IR) en est une autre. Il est difficile d'obtenir des
distances de détection "élevées" avec un système simplifié à l'extrême.
Pour obtenir une distance de détection de plusieurs dizaines de
centimètres avec une bonne fiabilité, la partie optique doit être
composée avec soin, en tenant compte des aspects purement lumineux :
angle de rayonnement de la LED d'émission, diagramme de sensibilité du
récépteur IR, fréquence d'émission (longueur d'onde de l'émetteur IR)
et sensibilité du récepteur à cette longueur d'onde, distance entre
émetteur IR et récepteur IR, indice de réfraction de la plaque de verre
ou plastique posée devant les deux composants, etc. Dans la plupart des
systèmes de mesure de distance basés sur les infrarouges, on constate
des distances assez faibles entre l'émetteur et le récepteur (dans
certains, il n'y a que 4 mm ou 5 mm, pensez à la taille des
composants eux-mêmes). Pour ma part, je n'avais pas besoin de mesurer
une distance avec précision puisque mon système fonctionne en tout ou
rien. J'ai essayé
différentes valeurs d'écartements, et ai conclu qu'une distance plus
élevée (3 cm à 4 cm) pouvait être adoptée. Ceci dit aucun intérêt pour
mon
application qui nécessitait un boîtier compact. Bien sûr, il ne saurait
être question de se contenter d'envoyer un flux lumineux fixe et de
mesurer une tension en sortie d'un photodétecteur. Cela fonctionne mais
uniquement pour des distances très courtes (quelques cm max) et dans un
environnement non pollué par des rayonnements IR indésirables.
Raison pour laquelle la LED IR délivre ici un flux lumineux modulé avec
des données bien précises. Pour des mesures de distance précises, il
faudrait faire appel à des systèmes plus perfectionnés, à base de
modules IR pré-assemblés (Sharp GP2Y0A21YK par exemple), ou même encore
par des circuits programmables à base de capteurs CMOS (avec
filtres optiques et algorithme de "décodage" appropriés).
Prototype
Réalisé dans un premier temps avec ma platine
EasyPIC7 et une alimentation externe, puis ensuite sur une plaque sans
soudure, énergie prélevée sur alimentation Phantom 48 V.
Notez l'élégante méthode utilisée pour me repiquer sur le câble XLR... je n'avais plus de XLR femelle !
Avec
ce prototype et en prenant soin d'isoler correctement la source IR
du photo-récepteur IR, la distance de détection a pu être ajustée
entre 20 cm et 1 mètre. Le système a été testé avec succès sur deux interfaces
audio externes, une Focusrite Scarlett 2i2 et une RME FireFace 800.
Circuit imprimé
Aucun circuit imprimé proposé.
Logiciel du PIC
Pro - Non mis à disposition sur ce site (projet pro).
Historique
14/07/2014
- Ajout infos utilisation générale.
06/07/2014
- Première mise à disposition.