Ce montage fait appel à un microcontrôleur
PIC 18F13K22. L'adresse de base DMX peut être ajustée entre 1 et 128 au
moyen d'un potentiomètre ajustable.
L'interface dispose de 8 sorties qui fonctionnent en mode Gradateur (dimmer). L'état des sorties est conditionné par la valeur véhiculée dans les canaux DMX. L'exemple qui suit montre la valeur PWM selon les valeurs transmises pour les 8 canaux DMX.
Sortie | #1 | #2 | #3 | #4 | #5 | #6 | #7 | #8 |
Canal DMX (1) | A+0 | A+1 | A+2 | A+3 | A+4 | A+5 | A+6 | A+7 |
Valeur DMX | 0 | 15 | 127 | 128 | 250 | 34 | 100 | 64 |
PWM en % | 0 | 6 | 50 | 50 | 98 | 13 | 39 | 25 |
Nota (1) : A = adresse de base DMX, par exemple A=56.
Le rapport cyclique des sorties dépend des valeurs
transmises, selon la formule suivante :
Rapport cyclique (en %) = (N * 100) / 255
N étant la valeur transmise dans la trame DMX (N = 0
-> PWM = 0% ; N = 127 -> PWM = 50% ; N = 255
-> PWM = 100%).
Le choix de l'adresse DMX s'effectue ici par potentiomètre, une façon de faire peu conventionelle... Pour cela, l'entrée RA2/AN2 du PIC et son convertisseur A/N interne sont mis à contribution. C'est en effet la lecture de la tension analogique lue en RA2/AN2 qui détermine la valeur de l'adresse de base. Jusque là, rien de bien sorcier. Mais comment faire confiance à un potentiomètre, même s'il est de type multitours ? L'adresse choisie ne risque-t-elle pas de "déraper" à un moment ou à un autre ? La probabilité que cela arrive n'est pas exclue en effet et pour cette raison, j'ai prévu un système de verrouillage de l'adresse une fois celle-ci sélectionnée, pour rester serein face à ce risque.
Le circuit qui assure l'interface électrique entre le PIC et le bus DMX est un MAX487, aucune isolation galvanique n'a été prévue. Le MAX487 travaille ici toujours dans le même sens, ses entrées de direction RE et DE (broches 2 et 3) sont soumise à un état bas pour passer en mode réception au moment opportun (à un moment bien précis lors de l'initialisation du PIC).
La résistance R2 de 120 ohms est montrée câblée sur le schéma et sur le PCB, mais il est possible de la mettre en/hors service de façon "externe" (en ne l'implantant pas sur le PCB).
Si la trame DMX disparaît en cours de route, l'interface DMX 003ad désactive les 8 sorties (ces dernières passent à l'état logique bas).
La désactivation des sorties persiste jusqu'à ce que 2 nouvelles trames DMX valides (au moins) réapparaissent. Le temps de réaction est de l'ordre de 10 ms pour la disparition de la trame et de l'ordre de 100 ms lors du retour de trames valides.
Les sorties sont de type logique TTL et délivrent donc des signaux électriques qui sont soit 0 V, soit +5 V, sous un courant maximal de 50 mA par sortie. Les sorties sont capables de débiter 50 mA de façon unitaire, mais le PIC ne peut pas fournir un courant total supérieur à 250 mA (jusqu'à 85°C), information donnée dans son datasheet (feuille de caractéristiques techniques). On doit donc limiter le courant individuel de sortie en partant de l'hypothèse que toutes les sorties peuvent être activées en même temps : 250 mA pour 8 sorties, cela donne 30 mA max pour chacune. Une interface de sortie qui réclame idéalement 1 mA à 2 mA par entrée sera la bienvenue.
Les signaux PWM délivrés ont une résolution de 8 bits (256 niveaux) et leur période est de 11 ms (environ 90 Hz). Cette fréquence est suffisament élevée pour que l'oeil ne soit pas géné par un effet de scintillement.
Pro - Logiciel non disponible en libre accès.
Interface DMX 003ad avec PIC 18F13K22 - (11/12/2022)
Réalisé en double face avec des composants majoritairement CMS.
11/12/2022
- Première mise à disposition