Technologie des décodeurs DCC
Comme son nom l'indique, cet atelier était destiné à démythifier autant que possible les aspects du DCC pour ce qui nous concerne en priorité, à savoir le couple centrale/décodeurs.
Il n'était pas question d'entrer dans des détails techniques qui auraient pu avoir l'effet contraire, c'est à dire décourager les adhérents intéressés en les noyant d'informations pas toujours utiles, mais plutôt de se consacrer à l'essentiel.
L'idée, était donc d'avoir une démarche pragmatique par rapport à ces aspects qui, sans explication, pouvaient rester obscurs, et à l'aide d'exemples que j'ai essayé de rendre les plus simples et les plus concrets possibles.
La visualisation des différents signaux sur oscilloscope a permis à tous de se familiariser avec ce que contient une trame DCC, à quoi ressemble un courant alternatif ou un PWM, etc.
Pour autant, le DCC n'est pas simple en lui même au niveau de sa conception, mais il faut qu'il le reste en utilisation.
La date de l'atelier a été fixée en essayant, autant que faire se peut, de tenir compte des absences légitimes de certains, de façon à réunir le maximum des adhérents intéressés.
L'atelier était animé par Jean-Marie GILLES.
A suivre donc avec les informations ci-dessous, en lecture directe ou à télécharger.
Les décodeurs DCC
Généralités
Conçus pour piloter des locos, activer des fonctions ou des accessoires, le principe de la commande numérique (ou digital en anglais) repose sur le couple constitué d'une part par la centrale qui alimente la voie en jouant aussi le rôle de codeur et les décodeurs d'autre part. Les décodeurs, embarqués ou pas, reposent sur un même concept, à savoir la possibilité de commander individuellement et simultanément nos modèles numériques en fonction des ordres spécifiques qui leurs sont envoyés par la centrale. C’est le principe utilisé dans le protocole DCC.
A noter qu'il existe d'autres protocoles mais, pour des raisons de simplification, nous nous limiterons au DCC.
Comme son nom l’indique, un décodeur est conçu pour décoder des ordres numériques individuels qui lui sont envoyés depuis la centrale de commande par l’intermédiaire de la voie. Pour ce faire, il exécute un programme informatique dédié introduit par le fabricant dans la mémoire flash de son microprocesseur pour lui faire activer des fonctions ou des actions bien précises.
La centrale quant à elle, fournit à la fois l’énergie électrique à destination des moteurs, fumigènes, éclairages etc, mais aussi les codes informatiques à destination des microprocesseurs intégrés dans les décodeurs qui vont permettre de commander ces différentes opérations. La centrale joue donc à la fois le rôle de codeur numérique et de générateur d’énergie.
La centrale est raccordée électriquement aux deux files de rails (BUS), sans devoir respecter une quelconque polarité puisque nous sommes en présence d’un courant alternatif.
Pour mémoire, un courant alternatif est un courant dont la polarité change de polarité plusieurs dizaines ou centaines de fois par seconde, comme le courant alternatif distribué par EDF par exemple.
Ce qui caractérise également la classification des courants alternatifs, c’est le passage de la polarité par la valeur zéro entre deux alternances.
Sans parler de la tension, la différence principale avec le courant EDF, c’est la forme du signal fourni, sinusoïdal pour EDF et rectangulaire pour le DCC comme d'ailleurs, pour tous les signaux informatiques.
Rappelons que DCC est l’acronyme de Digital Command Control, « digital » (en anglais) étant l’équivalent de « numérique » en bon français.
Inutile de développer d’avantage, il suffit simplement d’en admettre le principe.
Un peu de technologie
Il est difficile d’aborder les décodeurs DCC sans parler du codeur, à savoir la centrale.
Ils communiquent entre eux principalement par l’intermédiaire de la voie qui joue alors le rôle de BUS informatique (bus qui vient du latin et qui signifie "pour tout le monde", comme omnibus par exemple), c’est à dire un canal de transmission de données codées comme dans n’importe quel système informatique, un ordinateur et ses périphériques par exemple.
Intéressons-nous d’abord à la centrale (peu importe la marque) qui est en fait le maître du jeu, les décodeurs étant les périphériques esclaves.
En règle générale, les centrales disposent d’au moins deux modes de fonctionnement :
- le mode exploitation pour commander les locos et accessoires,
- le mode programmation qui permet d’écrire des valeurs dans les CV’s des décodeurs (voir ci-dessous).
Sur certaines centrales (trop peu nombreuses), s’y ajoute le mode lecture des CV’s.
Il faut aussi mentionner tous les autres modes annexes, POM, gestion des rétrosignalistions, gestion des bus de données, etc.
Quand un décodeur est raccordé à la centrale et alimenté en DCC par l’intermédiaire de la voie (BUS de données), la première opération qu’il effectue, c’est de redresser le courant alternatif qui lui arrive, pour le transformer en courant continu (redressé et filtré en réalité), le seul type de courant qui soit capable d’alimenter ses circuits électroniques internes.
Le redressement est assuré par un pont composé classiquement de quatre diodes redresseuses.
Parallèlement, les alternances positives sont récupérées au moyen d’une cinquième diode connectée à une des entrées du pont redresseur. A la sortie de cette diode, on se trouve en présence d’un signal positif porteur des codes informatiques destinés au microprocesseur du décodeur.
Dès lors, le microprocesseur exécute en boucle le programme qui est contenu dans sa mémoire flash devenant ainsi capable de traiter les codes informatiques qui lui arrivent et d’activer les circuits de commande, physiques ou logiques correspondants.
Les programmes de tous les décodeurs comportent des éléments communs définis par la norme NMRA (National Model Railway Association) qui a été fixée de façon précise en imposant à chaque fabricant l’exploitation de certaines variables spécifiques.
C’est le rôle des CV’s (Configuration Variable).
Une CV est une sorte de case mémoire contenant un octet (un nombre de 0 à 255 codé en binaire), dont le microprocesseur viendra régulièrement lire la valeur au cours de l’exécution du programme. Selon les informations lues, il en déduira la nature des commandes à effectuer. Dans un décodeur classique, les CV’s sont théoriquement au nombre de 255, mais toutes ne sont pas accessibles.
A noter que certains fabricants de décodeurs introduisent désormais des CV’s indexées dans leurs programmes. Ces CV’s sont contenues dans des registres accessibles seulement après « basculement » d’interrupteurs électroniques par une programmation spécifique.
Le nombre des CV’s théoriquement utilisables et alors de 1024.
Comme leurs noms l’indiquent, les CV’s peuvent contenir des valeurs variables particulières qui vont directement influencer le comportement du décodeur.
La modification de ces variables (ou programmation) est laissée à la disposition de l’utilisateur qui a la possibilité de réaliser un paramétrage personnel et individuel sur chaque décodeur.
La première de ces CV’s est la CV 1 qui contient l’adresse du décodeur. A l’origine, tous les décodeurs sont programmés en usine à l’adresse 3 qui doit donc, en toute logique, être modifiée sans quoi toutes les locos portant cette même adresse sur la même voie répondront simultanément, ce qui n’est évidemment pas le but recherché.
A noter que la CV 1 peut théoriquement contenir une valeur comprise entre 1 et 255, limite variable fixée à 128 ou même 99 selon les fabricants. On parlera alors d’adresse courte qui ne pourra contenir qu’un seul octet, soit trois (ou deux) chiffres décimaux significatifs.
Nota : Si le recours à une adresse longue est nécessaire (plusieurs locos du même modèle ou pour une plus grande précision dans l’identification par exemple), il est prévu d’utiliser alors les CV 17 et 18, (voir ci-dessous) pour y stocker des nombres pouvant en théorie atteindre la valeur 255 x 255.
Les centrales proposent d’ailleurs pratiquement toutes cette possibilité de programmation. La CV 29 se chargera d’effectuer la commutation entre adresse courte et adresse longue selon son paramétrage.
Comme indiqué ci-dessus, le rôle de certaines CV’s a été défini précisément et tous les fabricants doivent respecter ce cahier des charges. Selon les marques, elles ne sont pas toutes accessibles.
Nous nous contenterons de décrire ici les plus importantes (base Lenz par exemple).
Un certain nombre de CV’s (quand elles sont accessibles) est laissé au choix de chaque fabricant, ce qui est parfois problématique pour s’y retrouver. Par exemple, certaines CV’s contrôlent l’intensité lumineuse des feux ou le niveau sonore chez un fabricant mais ce ne sont pas les mêmes CV’s chez un autre fabricant, etc.
C’est de ce point de vue une des grandes failles de la norme NMRA qui a laissé trop de liberté aux fabricants dans le choix et la gestion des CV’s de leurs décodeurs.
Inutile donc d’énumérer ici le nombre des CV’s, il faut simplement se référer au manuel du fabricant et par conséquent bien conserver la notice qui accompagne le décodeur.
La principale difficulté est liée à l’impossibilité de certaines centrales de lire les valeurs des CV’s, d’où la nécessité de bien noter ce qui a été programmé par l’utilisateur.
Le paramétrage basique du comportement moteur
De base, les CV’s 2, 3, 4, 5, 6 et 9 sont prévues pour contrôler le fonctionnement du moteur (valeurs variables selon fabricant) et donc la marche de la loco.
- la CV 2 détermine la vitesse minimale de démarrage (généralement 1 ou 2),
- la CV 3 détermine la temporisation d’accélération (simulation d’inertie),
- la CV 4 détermine la temporisation de freinage (simulation d’inertie),
- la CV 5 détermine la vitesse maximale,
- la CV 6 détermine la vitesse intermédiaire entre mini et maxi
- la CV 9 définit la MLI (ou PWM) Modulation de Largeur d’Impulsions qui agit sur la durée des impulsions fournies au moteur selon son type, et donc son comportement, surtout dans les régimes intermédiaires.
Les CV’s 2, 5 et 6 déterminent une rampe de vitesse qui suffit dans la plupart des cas mais il existe un autre mode de contrôle de moteur qui permet de définir individuellement la valeur de chacun des 28 crans de vitesse et d’en tracer la courbe très précisément. Il est possible de basculer d’un mode à l’autre grâce au bit 5 de la CV 29.
Les autres CV’s ….
- la CV 7 (en lecture seule) elle contient un code indiquant la version du décodeur,
- la CV 8 (en lecture) contient le code constructeur attribué à chaque fabricant. Cette CV a aussi la particularité de pouvoir recevoir une valeur spécifique qui opère alors un Reset du décodeur, c’est à dire un retour des paramètres à leur valeur d’usine (sauf courbe de vitesse définie par l’utilisateur).
- les CV’s 17 et 18 contiennent la valeur de l’adresse longue. Par combinaison de ces deux CV’s, la valeur n’est plus limitée à 255 mais 10240.
- la CV 19 contient l’adresse de multitraction pour faire des UM par exemple.
- la CV 29 est très importante, elle contient le registre de configuration dont le rôle conditionne une grande partie du fonctionnement correct du décodeur.
S’aventurer dans la modification de cette CV sans précaution peut conduire à un blocage complet du décodeur (heureusement re-initialisable).
Comme toutes les CV, elle peut contenir une valeur numérique comprise entre 0 (les 8 bits à 0) et 255 (les 8 bits à 1). Il est possible d’y entrer des valeurs numériques directement, mais dans le détail, nous allons voir que chaque bit concerné à une action particulière sur le fonctionnement du décodeur.
Le paramétrage précis de cette CV est donc à respecter à la lettre, selon le tableau ci-dessous
| Bit | Valeur | Octet | Action | Usine |
|---|---|---|---|---|
| 0 | 0 | 0 | Sens de marche normal | 0 |
| 1 | 1 | Sens de marche inversé | ||
| 1 | 0 | 0 | 14-27 crans de vitesse | |
| 1 | 2 | 28-128 crans de vitesse | 1 | |
| 2 | 1 | 4 | DCC / analogique auto | 1 |
| 0 | 0 | DCC seulement | ||
| 3 | 0 | 0 | RailCom désactivé | 0 |
| 1 | 8 | RailCom activé | ||
| 4 | 0 | 0 | Courbe de vitesse CV 2, 5, 6 | 0 |
| 0 | 16 | Courbe de vitesse CV 63 à 94 | ||
| 5 | 0 | 0 | Adresse en CV1 | 0 |
| 0 | 32 | Adresse en CV 17 et 18 | ||
| 6 / 7 | 0 | 0 | Non utilisés |
Comme c’est la règle en informatique, les valeurs de chaque bit significatifs s’ajoutent et le résultat de cette addition donne la valeur de l’octet. Ici par exemple, les bits 1 et 2 étant à la valeur 1, ils contiennent donc les nombres 2 + 4 = 6 puisque tous les autres bits sont à zéro.
En règle générale, il suffit de réintroduire la valeur 6 dans la CV 29 pour que tous les bits se remettent à 0 et que les bits 1 et 2 se remettent à 1.
A noter que si la centrale est paramétrée sur 14 ou 28 crans de vitesse, il est impératif que les décodeurs le soient également (bit 1 à 1 ou à 0). Dans le cas contraire le comportement du moteur serait perturbé et surtout les feux fonctionneraient 1 crans sur 2.
A ne pas confondre avec un clignotement des feux qui peut indiquer selon la marque, un court-circuit sur les sorties du décodeur, voir CV 30 ci-dessous.
- la CV 30 (normalement à 0), contient une valeur qui indique un défaut (éventuel rencontré par le décodeur). Il peut s’agir d’un court-circuit moteur, lumière ou surchauffe.
- les CV’s 33 à 47 concernent le mapping, c’est à dire quelle touche de fonction commande quelle fonction (voir ci-dessous).
- la CV 50 définit la configuration du moteur.
- la CV 51 définit la configuration du freinage (et la possibilité de navette)
- la CV 52 définit la longueur du freinage si freinage constant activé.
- la CV 53 définit le vitesse au ralenti en mode ABC activé,
- la CV 54 définit la durée de l’arrêt en cas de navette activée.
- les CV 55 et 56 définissent l’intensité lumineuse des feux avant et arrière (F0L et F0R).
Dans tous les cas, en cas d’erreur de programmation dans les valeurs de CV’s, il est toujours possible de faire un reset usine du décodeur pour le remettre dans son paramétrage d’origine fabricant.
Le mapping
Mot anglais pouvant être traduit en français « carte de positionnement ». Représenté sous forme de tableau, c’est le plan d’attribution des touches de fonctions (F0 à F32) aux sorties de fonctions logiques et physiques disponibles sur le décodeur.
A chaque touche de fonction correspond une CV et c’est donc la valeur qui sera écrite dans cette CV qui définira quelle fonction sera activée. Cette configuration est modifiable par l’utilisateur.
En clair, cela signifie que pour connaître ou modifier l’attribution d’une touche de fonction à une sortie de fonction, on repère dans le tableau expliqué dans la notice du décodeur, l’intersection de la ligne désignant la touche de fonction souhaitée avec la colonne désignant la fonction souhaitée. La valeur trouvée dans le tableau est écrite dans la CV correspondante.
Par exemple (chez Lenz), c’est la CV 36 qui contrôle F2,
Si dans la colonne gauche on voit qu’en face de F2 se trouve la valeur 8 pour Aux1, cela signifie que la touche F2 commande la sortie Aux1. En principe toutes les touches de fonctions peuvent commander n’importe quelle sortie.(avec néanmoins quelques restrictions spécifiques).
Le gros problème du mapping, c’est que chaque fabricant, là encore, utilise sa propre table d’affectation.
Autrement dit, chez Lenz, c’est différent de chez ESU et de chez Uhlenbrock ou de Zimo ou LAIS pour ne citer que les principaux. Là encore, là notice du décodeur est indispensable.
Chez ESU, entre autres, avec l’utilisation du LokProgramer, il est inutile de se soucier des valeurs à écrire dans les CV’s, le logiciel s’en charge lui-même, il suffit de lui indiquer en clair la fonction souhaitée commandée à partir de quelle touche.
Connectique
Il existe actuellement au moins 5 grandes familles de connecteurs différents, (la plupart incompatibles entre eux), pour raccorder un décodeur à une loco. Il est donc indispensable de vérifier sur la notice ou sur la loco elle-même à quel type de connecteur on a affaire. Certains connecteurs sont reliés au décodeur par des fils de couleur, d’autres font partie intégrante du décodeur grâce à leur connecteur.
Les décodeurs à connecteur 8 broches (NEM642)
Ce sont les plus anciens, ils se rencontrent de moins en moins chez les constructeur de locos. Ceci étant, ce sont les plus économiques mais aussi les plus limités pour le nombre de fonctions physiques généralement limitées à 1 ou 2, (2 x 4 broches + un fil) ce qui, dans la grande majorité des cas, peut suffire amplement.
Contrairement à une idée reçue, ce n’est pas parce que le nombre de broches est réduit à 8 que les nombre de fonctions logiques l’est aussi. Parmi les fonctions logiques, on peut citer la suppression de l’inertie, la vitesse de manœuvres ou les fonctions sonores par exemple. On le comprend aisément, à la différence des fonctions physiques, les fonctions logiques ne « sortent » pas physiquement du décodeur mais agissent sur son fonctionnement. Un décodeur sonore 8 broches peut parfaitement activer plus d’une vingtaine de fonctions sonores différentes car les effets ne « passent » pas par le câblage et ne se font sentir que sur le haut-parleur via l’amplificateur.
Néanmoins, les constructeurs et les fabricants de décodeurs se sont rendus compte que le nombre de sorties physiques était parfois insuffisant avec 8 broches et ont par conséquent conçu des décodeurs plus sophistiqués quant à leurs possibilités de sorties.
Les décodeurs 21MTC (NEM660)
Ces décodeurs disposent d’au moins 6 sorties physiques et nécessitent donc une connectique adaptée. En effet, si avec un décodeur 8 broches, on considère la sortie moteur (1 et 5), les prises de courant (4 et 8), les sorties feux blancs et rouges 2 et 6), une sortie de fonction (3) et le potentiel commun (7), on est déjà à 8 contacts. Si on ajoute 6 sorties, c’est alors 14 broches qu’il nous faut (auxquelles s’ajoutent les 2 sorties haut-parleur.) De plus, il est aussi possible de faire entrer de nouvelles informations vers le décodeur, ce qui représente encore 2 ou 3 broches supplémentaires, soit 19 broches. Par anticipation le standard 21MTC a été fixé à 21 broches sur un connecteur 22 broches femelles dont une broche borgne (détrompeur), mais cette fois au pas de 1,27 mm et non 2,54 mm comme sur les 8 broches.
De plus, ces décodeurs offrent la possibilité de commander les feux avant/arrière blancs/rouges séparément sous réserve que les circuits des locos soient prévus à cet effet.
Ces décodeurs sont toujours en vogue sur certaines locos, mais…..
Les décodeurs PluX 12/16/22 (NEM658)
Ces décodeurs un peu plus récents disposent des mêmes possibilités que les 21MTC avec lesquels ils sont en revanche incompatibles au niveau de l’affectation des broches. Leur principal intérêt est de permettre à partir d’une organisation de connecteur mâle unique, de pouvoir y connecter des décodeurs équipés de connecteurs femelles 22, 16 ou 12 broches qui se positionnent autour de la broche centrale de détrompage.
Cette configuration est en effet plus universelle et devrait satisfaire tout le monde, mais….
Les décodeurs NEXT 18 / NEXT 18S (NEM662)
De plus en plus petits pour des performances presque identiques (moteur 0,5 à 0,75A seulement), cette nouvelle famille de décodeurs se raccorde à un connecteur 18 broches ultra mini au pas de 0,5mm, réversible et donc sans détrompeur. Compte tenu de leurs caractéristiques et leur encombrement, ces décodeurs sont tout à fait indiqués pour l’échelle N. Il peuvent néanmoins être utilisés dans des modèles HO dont la consommation du moteur reste en-dessous de 500mA. Ces décodeurs sont généralement reliés à la prise Next 18 à 2 x 9 broches par un câble « en nappe » extra plat, solide mais difficilement réparable en cas de rupture.
Les décodeurs 6 broches (NEM651)
Conçus à l’origine pour l’échelle N, car leur courant de sortie à destination du moteur sont plus limitées, ces décodeurs disposent de 6 broches en ligne au pas de 2,54 mm, et présentent la particularité de ne pas avoir de sortie pour le potentiel commun (+) qui est théoriquement nécessaire au fonctionnement des feux.
Une astuce de câblage permet de contourner l’obstacle en limitant toutefois l’intensité lumineuse des feux à 50 % environ. Sans entrer dans les détails, le potentiel commun est « récupéré » sur celui d’une des deux files de rails, ce qui peut être pratique pour des locos disposant d’un potentiel d’alimentation relié à la masse du châssis. Sur les fils de sorties, on y retrouve les deux files de rails, le moteur + et -, les feux blancs et rouges, ce qui totalise 6 broches, pas une de plus. Inutile dans ce cas d’espérer pour commander des fonctions supplémentaires, ce n’est tout simplement pas possible.
Ces décodeurs sont peu à peu remplacés chez les constructeurs pas des modèles NEXT18.
A noter qu’il existe dans le commerce spécialisé des adaptateurs NEM 642 vers NEM 660 ou NEM 642 vers NEXT18.
Reste le problème des locos qui ne disposent d’aucun connecteur car trop anciennes pour la plupart. Dans ce cas, il faudra intervenir sur le circuit électrique de la loco, séparer les circuits moteur, feux et rails et y raccorder un décodeur directement par les fils de liaison sur des points de contact à créer (moteur/feux/rails). Autant dire, à moins de remplacer complètement le circuit imprimé de la locos, qu’il ne sera pas facile de revenir au câblage d’origine.
Les fils des décodeurs sont organisés selon le code de couleurs suivant :
- orange = moteur côté positif
- gris = moteur côté négatif
- rouge = prise de courant côté droit sens de marche
- noir = prise de courant côté gauche sens de marche
- bleu = potentiel commun positif
- blanc = éclairage avant
- jaune = éclairage arrière
- vert = sortie fonction Aux1 (modifiable)
- fil violet seul = sortie fonction Aux 2 (modifiable)
JMG