Electronique > Réalisations > Interfaces > DMX > Contrôleur DMX 005 - Pro

Dernière mise à jour : 04/12/2022

Présentation

Ce contrôleur DMX est plus un outil de test qu'un système de gestion lumière. Il a été conçu pour vérifier le fonctionnement de mes dernières interfaces DMX, notamment mon interface DMX 003-ext et mon interface DMX 003a

 

controleur_dmx_005b_pcb_3d_front

   

Deux versions ont été développées :

- schéma 005a : version très simplifiée avec PIC 16F88
- schéma 005b : version plus élaborée avec PIC 18F25K22

La version 005b permet de spécifier l'adresse de départ des données utiles, ce que ne permet pas la version 005a. Les paramètres pouvant être ajustés le sont grâce à des potentiomètres et interrupteurs.

   
Réglages possibles

Le nombres de paramètres ajustables dépend de la version (005a ou 005b). Dans les deux versions, un canal DMX parmi les 512 permis par la norme peut être "utile" ou "vide". Un canal "utile" transmet une valeur comprise entre 1 et 255, la valeur 0 n'est pas autorisée (c'est moi qui l'ai décidé pour cette application). Un canal "vide" quant à lui contient toujours la valeur 0.
 

Paramètre Contrôleur 005a Contrôleur 005b Nota
Valeurs inter-canaux fixes check_ok check_ok (1)
Valeurs inter-canaux progressives check_ok check_ok (2)
Nombre de canaux utiles fixe check_ok 4, 8, 12 ou 16 check_ok 4, 8, 12 ou 16 (3)
Nombre de canaux utiles variable check_nok check_ok Ajustable (de 1 à 128) (4)
Adresse de départ check_nok fixe (=1) check_ok Ajustable (de 1 à 512) (5)
StartCode check_nok Toujours présent check_ok Peut être supprimé (6)
 
Nota 1
-Tous les canaux DMX "utiles" possèdent la même valeur (entre 1 et 255), qui est déterminée par la position d'un potentiomètre. Un canal utile ne peut pas avoir la valeur 0.
Nota 2 - Le premier canal utile possède la valeur 1. Les canaux utiles suivants ont une valeur qui augmente ou diminue de manière progressive, avec un taux de progression qui est déterminé par la position d'un potentiomètre.et qui peut aller de 1 à 64.
Nota 3 - La longueur d'une "sous-trame" de canaux utiles est toujours de 16 canaux. Si le nombre de canaux utiles est inférieur à 16, les canaux suivants possèdent une valeur de remplissage égale à 0. Par exemple pour une sous-trame de 8 canaux utiles, 8 canaux consécutifs ont une valeur comprise entre 1 et 255, les 8 canaux suivant ont une valeur de 0.
Nota 4 - La longueur d'une sous-trame peut être fixe (4, 8, 12 ou 16 canaux) ou ajustable (entre 4 et 128 canaux).
Nota 5 - Si le numéro de canal de départ de la première sous-trame de 16 canaux est supérieur à 1, alors les canaux précédents le canal de départ sont transmis avec la valeur de 0.
Nota 6 - Le StartCode est un octet de valeur 0 normalement émis avant la valeur du premier canal DMX (dans d'autres contextes d'utilisation, cet octet peut avoir une valeur différente de 0). Le supprimer permet d'effectuer des tests non standard.

  

Schémas 005a (avec PIC 16F88) et 005b (avec PIC 18F25K22)

Les deux schémas ont le même objectif, les différences sont données dans le texte.
   
controleur_dmx_005a
Schéma 005a - avec PIC 16F88
   
controleur_dmx_005b
Schéma 005b - avec PIC 18F25K22
     
Principe général
Ce générateur de trames DMX délivre des trames contenant un certain nombre d'octets "utiles" ou "vides". Les octets "utiles" constituent une sous-trame DMX dont la longueur peut être ajustée entre 4 et 128.
   
Nombre de canaux utiles dans la sous-trame
La configuration du nombre de canaux utiles qui constituent une sous-trame diffère selon l'interface (005a ou 005b).
   
Contrôleur 005a

Le nombre de canaux utiles qui constituent une sous-trame dépend de l'état logique des lignes D2 et D3 (RC2 et et RC3).

. si D3=0 et D2=0 : longueur sous-trame = 16 et nombre de canaux utiles = 4
. si D3=0 et D2=1 : longueur sous-trame = 16 et nombre de canaux utiles = 8
. si D3=1 et D2=0 : longueur sous-trame = 16 et nombre de canaux utiles = 12
. si D3=1 et D2=1 : longueur sous-trame = 16 et nombre de canaux utiles = 16
   
controleur_dmx_005_graph_4-12_001a
   
Contrôleur 005b

Le nombre de canaux utiles qui constituent une sous-trame dépend de l'état logique des lignes D1 à D3 (RC1, RC2 et RC3) et de la position du potentiomètre RV3 (tension sur la ligne An2).

 
Valeurs inter-canaux (fixes ou progressives)
La valeur des octets "utiles" qui constituent la sous-trame DMX peuvent prendre une valeur comprise entre 1 et 255. La valeur peut évoluer entre deux canaux consécutifs ou rester la même.

Exemple 1 - Si RV1 est en position minimale (An0 = 0 V) et que RV2 est en position centrale (An1 = 2,5 V), alors tous les canaux utiles de la sous-trame ont une valeur de 128 (255*1/2).

Exemple 2 - Si RV1 est en position 1/4 (An0 = 1,25 V) et que RV2 est en position 3/4 (An1 = 3,75 V), alors tous les canaux utiles de la sous-trame ont une valeur qui évoluent progresivement entre 64 (255*1/4) et 192 (255*3/4).

   
Adresse de départ
Sur le contrôleur 005a, l'adresse de départ est égale à 1 et ne peut pas être modifiée.
Sur le contrôleur 005b, l'adresse de départ peut être configurée entre 1 et 512. Si le numéro de canal de départ de la première sous-trame de 16 canaux est supérieur à 1, alors les canaux précédents le canal de départ sont transmis avec la valeur de 0.
   
StartCode
Sur le contrôleur 005a, le StartCode est toujours présent en début de trame.
Sur le contrôleur 005b, le StartCode peut être supprimé pour effectuer des tests non standard.
   
Sortie DMX
La sortie DMX répond à la norme RS485, comme pour mes autres appareils DMX. J'ai là encore utilisé un driver de ligne MAX485 (que l'on peut remplacer par un MAX481, MAX483, MAX487 ou SN75176BP, ces circuits ont le même brochage que le MAX485).

Alimentation

Une alimentation régulée qui délivre une tension de 5 V sous au moins 100 mA est requise. Un régulateur de tension de type LM7805 convient pour la stabilisation de tension (exemple).

   

Prototype

Actuellement aucun prototype physique de ce contrôleur n'a été réalisé. Ce générateur de trame ne m'a servi que sous sa forme logicielle (simulation dans Proteus) pour la mise au point de mes interfaces DMX 003-ext et 003a.

   

Logiciels du PIC

Pro - Logiciels non disponibles en libre accès.
Contrôleur DMX 005a avec 16F88 - (04/12/2022)
Contrôleur DMX 005b avec 18F25K22 - (04/12/2022)
   

Circuit imprimé

Non réalisé.
   

Historique

04/12/2022
- Première mise à disposition.