Mon premier décodeur pour les aiguillages DCC

. Par : msport. URL : https://www.locoduino.org/spip.php?article318

Vous avez réalisé Ma première manette pour les aiguillages DCC et vous voulez l’utiliser. Il vous faut donc un décodeur.
Cette manette doit son principe à Dave Bodnar, mais pour le décodeur, c’est un autre illustre contributeur qui nous fournit schéma et programme : Rudy Boer

Sur Locoduino

Différents articles ont été publiés ayant pour sujet les décodeurs :
Un décodeur DCC pour 16 feux tricolores
Décodeur pour aiguillage à solénoïdes sur Arduino qui rappelle les types de commande
Un décodeur d’accessoire DCC versatile basé sur Arduino

Mon premier décodeur
Mon premier décodeur

Cette version de décodeur est spécifique aux aiguillages à solénoïdes. Elle les protège avec une impulsion limitée en durée par programme. Compacte, elle utilise seize ports d’un Arduino Nano pour huit aiguillages. Les adresses sont dans le programme, donc modifiables avant téléversement.

Pour corriger un problème d’ordre de raccordement aux connecteurs, de nouveaux fichiers Gerber ont été mis en ligne le 25/4/2022 (DILc4).

Dans le cahier des charges,

  • l’utilisation d’un programme tout fait, de base sans modification.
  • un coût minimal
  • du matériel que l’on trouve facilement
  • un montage qui ne prend pas trop de temps
  • deux versions :
    1. une expérimentale sur table avec un bread board (sans soudures)
    2. une avec circuit imprimé prêt à se connecter au DCC et à l’alimentation courant continu adaptée à vos aiguillages.

Prérequis :

  • comme pour les articles précédents :
  • connaître les bases de la gestion des fichiers de votre ordinateur
  • savoir télécharger des fichiers et les décompresser
  • et donc savoir les placer au bon endroit
  • savoir utiliser l’IDE Arduino pour charger un programme sur une carte Arduino
  • savoir lire un schéma simple.
  • savoir souder proprement pour la version à circuit imprimé
  • maitriser un minimum DCC et DCC++.

Architecture :

La simplicité voulue pour cette série d’articles conduit à un choix d’architecture pur DCC. Et cela nous amène au synoptique suivant :

JPEG - 51.5 kio

Et au rappel de la commande des solénoïdes par un Arduino via des ULN2803.
Attention à ne pas mélanger les tensions.

JPEG - 32.1 kio

Origine du programme :

Le site de rudysmodelrailway :

Sur la page des programmes de rudysmodelrailway, la page dite Software, Rudy présente différents décodeurs, adaptés au sujet que l’on propose de résoudre :

Le lien vers la page des programmes de rudysmodelrailway est ici.

Tous utilisent le circuit interface connu sous le nom de Mynabay. Il a été optimisé depuis pour accepter les variations sur les opto-isolateurs 6N137 que l’ont peut acheter.

JPEG - 23.9 kio

La page de Geoff Bunza utilise ce schéma optimisé. Mais à vouloir réaliser un décodeur à tout faire, il a rendu la réalisation difficile.
On notera surtout la présence d’un petit condensateur en parallèle sur l’entrée de l’optocoupleur qui permet de faire fonctionner le montage avec tous les 6N137. Bunza en prévoit un de 270 pF, ce qui est peut être beaucoup. De par mon expérience, je proposerais de vous en passer, le montage en photo n’en comporte pas. (et de commencer avec 22 pF en cas de problème) J’ai noté que la capacité parasite d’une LED qui peut remplacer la diode de protection a permis au montage sur table de fonctionner dans tous mes essais.
La première version est plus accessible.

On a donc retenu pour cet article le décodeur pour aiguillages à solénoïdes de Rudy. Il est configurable par modification du programme Arduino, mais cela ne vous pose plus de problèmes depuis longtemps, n’est-ce pas ?
L’avantage de cette option est que le circuit est simplifié et la modification du programme facilement réalisable.

JPEG - 49.8 kio

Ce schéma est la source d’inspiration de cet article, le schéma définitif est celui du circuit imprimé que vous trouverez plus bas.

Le lien est placé en évidence sur la page des programmes, mais comme moi, vous ne le trouverez probablement pas tout de suite :
Arduino DCC, S88, and more Download link

Vous pouvez télécharger le fichier compressé : Arduino_DCC_S88.zip
C’est le bon malgré son nom, il contient tous les décodeurs Rudy.

Vous pouvez les tester, c’est une mine d’inspiration.

Nous avons adapté RB_DCC_Decoder_Solenoid dont nous vous proposons une version configurée pour huit aiguillages, donc seize bobines avec les adresses de 1 à 8. La durée d’impulsion est de 250 ms. Comme indiqué, ces paramètres sont modifiables.

Programmation :

Vous avez déjà installé l’IDE Arduino avec l’article Ma première centrale DCC
Vous placez le répertoire du programme décompressé (ci-dessous) dans votre répertoire de sketches et vous double-cliquez sur RB_DCC_Decoder_solenoid_article_1.ino.
Téléversez le dans votre Nano. Vous serez peut-être obligé de choisir dans processeur "ATmega328P (Old Bootloader)" pour permettre le téléversement.

RB_DCC_Decoder_solenoid _article

Tel qu’il est configuré, le programme permet de commander l’aiguillage sur le connecteur K1 à l’adresse 1, K2 à l’adresse 2 et ainsi de suite jusqu’à K8 à l’adresse 8. Vous pouvez commander les aiguillages aux adresses de votre choix en décalant par pas de 8 les adresses 1 à 8 dans le programme fourni. (ex : 9 à 17)

JPEG - 86.7 kio

Principe de fonctionnement

Le montage de Mynabay isole le montage du DCC de la voie et envoie le signal codé sur l’entrée D2 du Nano. Le programme du Nano se charge d’identifier les adresses et sous adresses DCC et de commander les sorties correspondantes pour la durée retenue (250 ms). Les ULN2803 mettent les sorties actives au GND, le point commun est donc le positif de l’alimentation des aiguillages. On obtient un fonctionnement optimum avec une tension de 15 V continus. Pour éviter une détection de court-circuit par l’alimentation, on la prendra au minimum de 2A. Et bien sur, on s’arrangera pour éviter la commande simultanée de plusieurs bobines.
Les ULN2803 sont spécifiés pour un courant de 500 mA (et limités à cette valeur : clamp current). Dans la pratique on constate qu’ils peuvent commander les anciens aiguillages Fleischmann dont la bobine a une résistance de 18 ohms, donc c’est sans problème pour des modèles plus récents, surtout avec une durée d’impulsion de 250 ms à 500 ms.

Connexions à l' ULN2803
Connexions à l’ ULN2803

Matériel nécessaire :

Commun aux trois versions :

  • 1 Arduino Nano
  • 3 condensateurs 100 nF entraxe 5mm.
  • 1 condensateur 1000µF ou 2200µF 25V entraxe 5mm.
  • 1 condensateur 100µF ou 220µF 16V entraxe 3,5mm, hauteur < 10mm
  • 1 condensateur 10µF ou 22µF 16V entraxe 3,5mm, hauteur < 10mm
  • 1 opto isolateur 1N637
  • 1 LED 3 mm ou un condensateur 22 pF
  • 5 diodes 1N4148
  • 1 régulateur 78L08
  • 2 ULN2803

Version breadboard :

  • 1 breadboard 700 points, des ponts pour celle-ci
  • 2 headers à longues pattes (+ 3 x 8 x le nombre d’aiguillages)
  • 3 résistances 10 K ohms 1/4 W
  • 2 résistances 1 K ohms 1/4 W

Version circuit imprimé :

  • 1 circuit imprimé
  • 1 prise jack 5,5 mm pour C.I. (alimentation aiguillages)
  • 8 connecteurs 3 pôles pour C.I. M+F (connexion aiguillages)
  • 1 connecteur 2 pôles pour C.I. M+F (connexion DCC)
  • 2 supports CI 18 pins (ULN2803)
  • 1 supports CI 8 pins (1N637)
  • 2 supports 15 pins femelles pour le Nano (headers 2.54 mm)
  • 2 supports 4 pins femelles pour l’oled et le HC12 (headers 2.54 mm)
  • 1 LED 3 mm indicateur pour la tension aiguillage
  • 4 résistances 10 K ohms 1/8 W
  • 2 résistances 1 K ohms 1/8 W
JPEG - 66.3 kio

Le montage sur table

Ici, une LED protège le 6N137 en tension inverse et indique la présence du DCC.
Une 1N4148 est plus appropriée dans le montage sur circuit imprimé.
On voit l’entrée DCC à gauche, le DCC est redressé par les diodes 1N4148.
Et est filtré par un 100 µF 25V puis régulé par un 75L08 pour le Vin de l’Arduino.
Le 5V de l’Arduino alimente le montage de Mynabay utilisant l’opto 6N137.
Huit des sorties de l’Arduino sont connectées à un seul ULN2803.
Une seule paire de sorties de l’ULN2803 est connectée sur le câble des solénoïdes d’un d’aiguillage pour cette configuration de test.

JPEG - 144.5 kio
JPEG - 176.4 kio
JPEG - 165.7 kio
JPEG - 126.9 kio
JPEG - 117.9 kio
JPEG - 181.2 kio

Pour ce montage expérimental, on a câblé que les sorties D5 à D12 vers un ULN2803. Et via celui-ci, ce sont les sorties D11 et D12 qui sont renvoyées vers les headers (x3) à pattes longues sur lesquelles le câble de l’aiguillage est embroché. L’aiguillage répondra à l’adresse 5 en direct / dévié.

Le schéma du circuit imprimé

Schéma
Schéma

Les fichiers gerber

Ces fichiers vous permettent de commander le circuit imprimé chez jlcpcb.com (par exemple). Vous aurez cinq exemplaires en une quinzaine de jours pour environ 6€ en faisant le choix de PostLink Registered Mail.

Gerbers du décodeur : DILc4

Le circuit imprimé

Top
Top
Bottom
Bottom

Montage du circuit imprimé

On a retenu que des composants traversants pour ne pas avoir de problème avec des CMS.
On commence par les composants les plus bas pour terminer par les plus hauts. Et donc terminer par les supports du Nano, pour faciliter la soudure des composants qui sont placés en dessous. Les condensateurs en dessous doivent faire moins de 10 mm de haut.
Il faut mettre une goutte de soudure sur le PAD. Ce PAD a été rendu nécessaire pour avoir deux largeurs de piste pour la masse dans le dessin du circuit imprimé.
Avant d’installer le Nano, vérifiez que vous avez environ 8 V entre les broches Vin et GND du support du Nano. Et avant d’installer le 6N137, vérifiez que vous avez 5 V entre les pins 5 (GND) et 8 (GND) du support de celui-ci.
Comme test, une fois le Nano programmé et en présence du DCC, vous mesurerez environ 2,5 V sur la broche 2 du Nano. Une résistance non montée nommée TEST fournit deux points de contact sur le circuit imprimé.

Les connecteurs sur le circuit imprimé comportent trois points : le premier (repère 3) pour le commun relié au + alimentation et les deux autres pour les deux bobines (repères 1 et 2).

Connecteur
Connecteur
JPEG - 79.6 kio

Quelles commandes pour ce décodeur ?

Bien sur, ce décodeur est prévu pour fonctionner avec Ma première manette pour les aiguillages DCC et Ma première centrale DCC mais également avec toutes les centrales respectant les standards NMRA. Attention certaines d’entre elles décalent les adresses des aiguillages par rapport à ce qu’elles affichent.

Les réalisations de cette série d’articles

Elles fonctionnent ensemble.
Ma première centrale DCC
Ma première manette DCC (1) ou
Une manette simple et autonome pour LaBox
Ma première manette pour les aiguillages DCC

Photo de famille
Photo de famille

et les absentes de la photo :

JPEG - 497 kio
JPEG - 129 kio

Où acheter :

Où acheter ? une liste de fournisseurs, et ci-dessous des liens directs :
https://fr.aliexpress.com/item/1005... connecteurs 3.51
choisir Right angle Set 2.59€ 3p / 2,17€ 2p les 10, Set = male + femelle
https://fr.aliexpress.com/item/4000... idem par 50
https://www.ebay.fr/itm/223486841987 header Nano 15 pins 5€ les deux.
https://www.ebay.fr/itm/194936668889 100nF 4€ les 10
https://www.ebay.fr/itm/234296433320 2200µF 25V 2€ les 5
https://fr.aliexpress.com/item/3291... 100µF 35V les 50, conviennent pour les deux condensateurs du schéma.
https://www.ebay.fr/itm/123381148410 6N137 4€ les 10
https://www.ebay.fr/itm/123803952916 header long pins 4€
https://www.ebay.fr/itm/132408779692 22pF 2€ les 10
https://www.ebay.fr/itm/393066615010 résistances 2€
https://www.ebay.fr/itm/122685033709 1N4148 2€ les 10
https://www.ebay.fr/itm/153675529143 ULN2803 3€ les 5
https://www.ebay.fr/itm/130872233107 Bread board 5,45€
https://www.ebay.fr/itm/171907417345 Bread board + 65pcs Jumper 8€
https://www.ebay.fr/itm/353763328308 connecteur pour circuit imprimé 3.5 / 1.3 7€ /10

Ces liens sont éphémères et ne correspondent peut-être pas aux quantités que vous souhaitez pour amortir le port. Mais vous pouvez en réutiliser le texte pour une nouvelle recherche, et éventuellement retenir un vendeur en France.