Dernière mise à jour :
31/01/2016
Présentation
Cette interface
DMX
dispose d'une entrée DMX (sur XLR) et de 5 sorties qui fonctionnent en mode Gradateur
(dimmer) sous une tension de 12 V. Elle inclue un étage de sortie en puissance pour l'attaque
directe de lampes à LED basse tension (jusqu'à 20 W par
sortie).
Une fois n'est pas coutume, le montage fait appel à un
microcontrôleurs
PIC 24FJ32GA002. Par rapport aux gradateurs précédents, celui-ci
délivre des signaux PWM de fréquence plus élevée, 1000 Hz sur
toutes les sorties
(qui sont synchronisées entre elles). Cette fréquence peut être
diminuée ou augmentée
le cas échéant (à comparer aux 100 Hz ou moins de mes autres
gradateurs). Et ici, pas de CI exotique comme le PCA9685 que j'ai
utilisé dans mon
interface DMX 009. L'adresse de base
DMX peut être ajustée entre 1 et 512.
Schéma
Pour un soucis de clarté, la section de puissance est détachée de la
section de commande.
Réception/commande DMX
Interface de puissance 5 sorties
Fonctionnement général
L'interface dispose de 5 sorties qui fonctionnent en mode Gradateur.
Chaque sortie délivre un signal périodique dont le rapport cyclique
dépend des valeurs véhiculées dans les canaux de la trame DMX reçue. Le
tableau qui suit donne quelques exemples de correspondance entre les
valeurs DMX et les rapports cycliques obtenus.
Sortie |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
Valeur DMX |
0 |
15 |
127 |
128 |
250 |
34 |
100 |
64 |
255 |
200 |
15 |
250 |
PWM en % |
0 |
6 |
50 |
50 |
98 |
13 |
39 |
25 |
100 |
78 |
6 |
98 |
La valeur de rapport cyclique répond à la formule suivante :
Rapport cyclique (en %) = 100 / 255 * N
où N est la valeur transmise dans la trame DMX (valeur 0
-> PWM = 0%; valeur 255 -> PWM = 100%).
Choix de l'adresse de base DMX
Le
choix de l'adresse de base (1 à 512) se fait par le biais des
interrupteurs
câblés sur les lignes DmxAddr (bits #0 à #7 sur groupe
d'interrupteurs DSW1 et bit #8 sur interrupteur isolé SW2) et de l'interrupteur câblé sur la ligne RA2 du PIC (bit #8). Si
vous ne connaissez pas encore le mode binaire
c'est
le moment de s'y mettre.
Les pullup internes du PIC ne sont pas activés, c'est un choix
délibéré. Configuré
comme indiqué sur le schéma (DmxAddr0 à 1 et les autres lignes DmxAddr
à 0) le montage réagit aux données véhiculées dans les canaux
DMX #1 à #5. Si l'adresse spécifiée avec les interrupteurs DSW1 est
14, alors le montage réagit aux données véhiculées dans les canaux DMX
#14 à #18.
Interface électrique DMX
Le circuit
d'interface électrique MAX3072 permet de travailler sous une tension d'alimentation de +3,3 V. Il travaille ici
toujours
dans le
même sens,
ses entrées de direction RE et DE (broches 2 et 3) sont soumises à un
état bas pour passer en mode réception.
La commande des deux lignes RE et DE n'est pas établie "en
dur"
(directement câblées à la masse) mais de façon logicielle - au bon
moment
lors de l'initialisation du PIC, pour que d'éventuelles données DMX qui
arrivent au PIC lors de sa mise sous tension ne pose pas de problème.
La résistance R3 de 120 ohms est
montrée câblée sur le schéma mais en pratique il
convient de la mettre
en série avec un cavalier pour pouvoir la mettre hors service si
besoin. On peut aussi ne pas la prévoir du tout et installer une
seconde prise XLR reliée en parallèle
sur J1 et
sur
laquelle
on pourra enficher une terminaison
(bouchon 120 ohms) ou un câble allant vers un autre appareil
(récepteur) DMX.
Utilisation des sorties
Les
sorties du PIC attaquent directement des transistors MOSFET
compatibles "logique", ce sont eux qui permettent de commuter
des
courants de valeur élevée (ici plusieurs ampères par sortie, mais il
faut dans ce cas que l'alim générale 12 V arrive à suivre). En mode
gradateur, les signaux PWM
délivrés ont une période
voisine de 10 ms, ce qui correspond à une fréquence voisine
de 100 Hz. Cette fréquence, suffisament élevée
pour ne pas produire un scintillement visible, est liée à
l'utilisation d'un timer qui "découpe" chaque période en 256
tranches, pour bénéficier de la pleine résolution (256 pas et non pas
100). Le timer en question (Timer1 16 bits) opère lui-même à une
période d'environ 38 us. L'utilisation d'une courbe (table) de
correction de luminosité (pour adapter la plage linéaire des valeurs
DMX à la sensibilité de l'oeil qui est logarithmique) demande quelques
ressources processeur supplémentaires et ralentit un peu l'ensemble,
mais on s'en sort bien.
Alimentation
L'alimentation requise pour le circuit de commande (PIC et MAX487) est
de +5 V, un simple régulateur de tension 5 V (LM7805 ou 78L05)
convient. La ligne +12 V est réservée pour les sorties de puissance.
Chaque transistor de sortie peut commuter un courant de plusieurs
ampères, mais imaginez la puissance requise pour le bloc secteur 12 V,
si on veut débiter 5 A sur les 8 sorties en même temps (40 A
au
total, tout de même).
Un bouton de reset ?
Le PIC doit travailler très vite pour en même
temps lire la trame DMX et élaborer les signaux PWM, et je ne
jugeais pas utile d'inclure dans la boucle principale, la routine de
lecture de l'adresse DMX spécifiée par l'utilisateur. On
limite donc au maximum le
travail "temps réel" et on déporte ce qu'on peut dans la partie
d'initialisation générale. Le bouton de reset SW1 devra être
pressé si vous modifiez l'adresse DMX pendant que le montage
est
sous tension.
Mode de fonctionnement en absence de données DMX
Si
pour une raison quelconque les données DMX n'arrivent plus (coupure en
plein milieu d'une trame), le logiciel désactive toutes les sorties.
Ces dernières sont réactivées dès réception d'au moins deux trames DMX
valides successives.
Prototype
Mise au point (simulation) avec Proteus, puis tests dans le monde réel avec une
platine sans soudure relié à un PICkit3 et mon
interface
électrique DMX
simplifiée. Pour les commandes DMX, j'ai utilisé mes
contrôleurs
Stairville DDC-6 et Botex SDC-16.
Tests réalisés en même temps que ceux de mon
interface DMX 003d.
Logiciel du PIC
Montage réalisé pour usage pro, logiciel non disponible.
Interface DMX 003c - 24FJ32GA002 - (31/01/2016)
Circuit imprimé
Non réalisé.
Historique
31/01/2016
- Première mise à disposition