LOCODUINO

Une station DCC complète, polyvalente et économique avec JMRI.

.
Par : bobyAndCo

DIFFICULTÉ :

JPEG - 48.4 kio
GIF - 3.3 kio

Le choix d’une centrale DCC est la préoccupation de bon nombre de modélistes ferroviaires débutants ou non. C’est un sujet récurent sur les forums. Aussi, j’ai pensé qu’il serait utile que Locoduino propose une solution qui pourrait intéresser le plus grand nombre, qui serait (très) complète, (très) performante, économique (entre 40 et 60 €) et DIY (à réaliser soi-même) bien entendu.

Nous avons déjà présenté sur Locoduino bon nombre de centrales DCC. Mais finalement jamais une solution complète sur ordinateur qui rassemble tout ce que je cite plus haut.

Les principaux composants :

Tout d’abord le logiciel ; j’ai choisi JMRI qui est gratuit, très complet et aussi très performant. En fait, nous allons voir qu’il s’agit d’un ensemble d’applications ayant chacune une mission précise et qui communiquent entre elles. On y trouve des manettes pour les locomotives avec la possibilité de commander la vitesse, inverser le sens de roulement et actionner les fonctions des locomotives : éclairage, bruit du moteur, sifflets et autres fonctions sympathiques disponibles dans les décodeurs. On y trouve également un module pour lire et modifier les CV’s. Et on y trouve aussi une solution complète de gestion de réseau. Nous verrons cela un peu plus en détail par la suite. Ce logiciel est disponible sur Mac, sur PC et sous Linux.

Le second élément d’une centrale DCC, c’est la partie commande DCC. Dans une centrale du commerce, ceci n’est pas vraiment « visible » car intégrée à l’ensemble. Dans nos montages en DIY, il s’agit d’une carte Arduino sur laquelle va s’exécuter un nouveau logiciel pour délivrer sur les rails un signal électrique bien spécifique. C’est véritablement cette partie qui constitue le DCC, système numérique de commande de locomotive qui fait l’objet d’une normalisation NMRA pour permettre que n’importe quelle locomotive « DCC » puisse être pilotée par n’importe quelle centrale « DCC ». Dans la solution proposée, il s’agira d’un Arduino UNO ou MEGA selon les options que vous souhaiterez et surtout, s’exécutant sur cet Arduino, l’excellent logiciel DCC++ écrit par le développeur Gregg E. Berman. Ce logiciel est lui aussi gratuit.

Enfin, le troisième élément est constitué par la partie « puissance » appelée souvent « booster ». Il va falloir fournir aux rails un courant d’autant plus puissant que l’on souhaitera faire rouler un nombre conséquent de locomotives. On va utiliser une carte électronique un peu particulière qui va être capable de délivrer la puissance électrique mais aussi « d’injecter » dans ce courant des informations pour la commande des locomotives. Le DCC, est en effet un codage numérique d’informations (suite de 0 et de 1) qui est véhiculé par le courant même de puissance.

PNG - 30.6 kio

Il existe une pléthore de ces cartes dites « moteur » dans le monde de l’électronique car elles ne sont pas spécifiques au modélisme ferroviaire. Elles sont souvent, soit très bon marché (environ 2€) mais peu puissantes, ou, vous l’avez deviné, puissantes mais plus chères. Nous vous avons présenté dans Locoduino toutes les principales cartes qui répondent à ces critères, soit plutôt de prix, soit plutôt de performance. Nous vous avons même fournis les informations sur la manière de les intégrer dans différents environnements, voir à ce propos « Réalisation de centrales DCC avec le logiciel libre DCC++ (3) »

J’ai cependant découvert récemment une carte dont on n’avait pas parlé jusque-là, assez puissante, suffisamment en tous cas pour des réseaux faisant tourner simultanément une vingtaine de locomotives en HO et de l’ordre de 30 en N, polyvalente car elle permet d’alimenter tout à la fois les voies principales et une voie de programmation et à un prix raisonnable de 10 à 12€. Le nom de cette carte est : L9110S Dual Motor Driver.

Voici la centrale telle que je l’ai fabriquée pour mon propre usage et qui rassemble donc tous les ingrédients dont je viens de vous parler. Pour faire tourner le logiciel JMRI, il vous faudra cependant en plus un ordinateur (ou un Raspberry).

PNG - 3.8 Mio

On a, à gauche sur la photo, une alimentation 18V 10A, à sa droite, un convertisseur de tension pour l’alimentation de l’Arduino en 9V, à droite encore, l’Arduino et enfin la carte L9110S Dual Motor Driver.

Le matériel nécessaire :

Alimentation :

On trouve assez facilement sur internet des alimentations à découpage. Pour du HO, on choisira 18V. Pour du N, on choisira une alimentation de 15V. Pour ce qui est du choix de l’ampérage, on se portera sur des valeurs proches de 10A dans le cas où l’on souhaite une certaine puissance sur le réseau.

Pour le calcul de consommation, on prendra tout d’abord en compte le nombre de locomotives, la nature du réseau et l’âge des locomotives. Les locomotives récentes ont des moteurs peu gourmands, les vielles locos digitalisées consomment beaucoup plus. On prendra également en compte certaines fonctions spécifiques comme les fumigènes sur les locos vapeur dont la consommation est de l’ordre de 0,5A.

Mini

Maxi

HO Locomotive récente

0,20 A

0,40 A

Locomotive digitalisée

0,40 A

0,80 A

N Locomotive récente

0,15 A

0,30 A

Locomotive digitalisée

0,20 A

0,40 A

Si vous faites par exemple rouler simultanément 10 locomotives récentes, la consommation totale maximale sera donc de : 10 X 0,4A = 4A. Avec une alimentation de 10A, cela vous laisse une bonne marge de sécurité.

Mais si vous faites maintenant rouler simultanément 10 locomotives anciennes digitalisées, la consommation totale maximale pourrait être de : 10 X 0,8A = 8A. Ceci serait alors un maximum car il est nécessaire que vous gardiez une marge de sécurité d’au moins 2A.

L’alimentation est le matériel le plus cher de cette liste à 25€ environ.

Voici celle que j’ai acheté sur e-bay :

PNG - 1.1 Mio

Pour le N, cette alimentation secteur régulée de 15V 7A conviendra parfaitement.

PNG - 163.6 kio

Convertisseur de tension :

Vous n’aurez pas besoin de ce convertisseur si la carte Arduino est reliée directement à l’ordinateur qui exécute JMRI. Votre carte sera alors en effet reliée à l’ordinateur par le port USB et alimentée par ce même port USB.

Dans mon cas, j’ai choisi de connecter mon Arduino à mon réseau WiFi/Ethernet domestique, le convertisseur est donc nécessaire pour l’alimentation de l’Arduino. Comme vous pouvez le voir, on en trouve pour moins de 4€ sur internet.

PNG - 1.7 Mio

J’ai choisi la liaison Ethernet tout simplement pour avoir plus de liberté. Mon ordinateur pouvant se trouver dans un autre endroit de la pièce, voir dans une autre pièce de ma maison !

Il faut préciser que DCC++ nécessite d’être exécuté sur un Arduino Mega si l’on souhaite une liaison Ethernet.

Carte Arduino :

La carte Arduino sert à exécuter DCC++. Le choix de la carte se fera en fonction du type de liaison que vous souhaitez adopter. En USB vous pourrez choisir un Arduino UNO, en Ethernet, vous devrez obligatoirement utiliser un MEGA (comme sur la photo).

Notez que vous pouvez utiliser un MEGA avec une liaison USB. Cette précision me semble importante pour le cas où vous décideriez de commencer en USB mais que vous envisagez d’évoluer vers de l’Ethernet.

L’autre choix que vous devrez faire portera sur l’origine de votre Arduino ; une carte « officielle » ou un clone provenant en générale de Chine ou de Hong Kong même s’il est écrit dessus « made in Italia » !!!

Pour un UNO, le prix est de 2€ environ pour le clone contre 20€ pour la carte officielle. Pour un MEGA, on est à 8€ environ pour un clone, mais l’on passe à 30€ pour un officiel.

Voici les liens vers le site officiel Arduino pour :

Shield Ethernet :

Si vous retenez la solution d’une liaison Ethernet pour ne pas être obligé d’avoir votre ordinateur à proximité de l’Arduino ou tout simplement pour que votre ordinateur soit en liaison WiFi avec la centrale, vous opterez pour un shield Ethernet (Rappel, Arduino MEGA obligatoire dans ce cas).

Le prix pour la version officielle est de 17 € alors que l’on peut trouver des clones à partir de 5€.

Voici la configuration avec un Arduino MEGA et son shield Ethernet.

JPEG - 3.4 Mio
JPEG - 3.1 Mio

Carte moteur L9110S Dual Motor Driver :

Je le dis d’emblée, cette carte m’a totalement conquis dès que je l’ai essayée. Et pourtant, j’ai réalisé des centrales DCC avec à peu près toutes les cartes existantes : La POLOLU MC33926 ou encore avec le LMD18200 que nous plébiscitons depuis longtemps à Locoduino.

JPEG - 3.2 Mio

C’est tout d’abord la polyvalence de la carte qui me séduit. Comme elle dispose de deux sorties, on peut d’emblée envisager d’avoir sur son réseau une voie de programmation (bien pratique) en plus de l’alimentation du réseau et ce, sans avoir à tout débrancher comme par exemple lorsque l’on a qu’un seul LMD18200.

C’est ensuite sa puissance : celle que j’ai acheté est une 10A (elle existe aussi en 15A) ce qui est largement suffisant même pour des réseaux d’une vingtaine de locomotives, et donc, pour le public que je vise dans cet article.

Pour donner une comparaison, la POLOLU MC33926 qui a des fonctionnalités similaires (2 sorties) mais seulement 3A, est en vente à 29,95$ sur le site de son fabricant.

Ah, oui, je ne vous ai pas encore donné le prix de la L9110S. Eh bien comme vous le voyez, 11,95€ sur ebay port compris.

La carte est magnifique, la gravure parfaite. Les borniers à visser sont solides, on ne craint pas de les péter à chaque fois que l’on sert un câble, (péter les borniers pas les câbles).

JPEG - 48.3 kio

Le seul petit reproche que je lui fais est qu’il n’y a pas de LED témoin pour nous indiquer s’il y a du courant sur les sorties. Comme pour le LMD18200, j’ai donc ajouté une LED sur chaque sortie, une diode pour la tension inverse et une résistance de 870 Ω. On peut aller jusqu’à 1KΩ.

La cathode de la LED devra être reliée à l’anode de la diode et bien sûr, inversement l’anode de la LED devra être reliée à cathode de la diode. Ce petit schéma extrait du (très utile) cours d’électronique de Christian montre comment repérer la cathode et l’anode sur une diode.

PNG - 14.9 kio

Sur une LED, l’anode (+) est plus longue que la cathode(-).

JPEG - 9.5 kio

MAX471 :

Un MAX471 pour la mesure d’intensité et couper l’alimentation en cas de sur tension ou de court-circuit. Là aussi, c’est du classique maintenant sur Locoduino.

JPEG - 3.1 Mio

Le MAX471 ne peut supporter un courant au-delà de 3A. De toutes les façons, DCC++ est paramétré par défaut pour couper l’alimentation avant d’avoir atteint cette limite de 3A. Si vous envisagez de dépasser 3A, vous devrez utiliser par exemple un ACS712 qui supporte lui jusqu’à 20A.

SENSEUR-COURANT-ACS712
SENSEUR-COURANT-ACS712

Pour l’implantation d’un ACHS-7122, voir sur le forum : https://forum.locoduino.org/index.p...

Il faudra également modifier des paramètres dans le logiciel DCC++ ce que nous verrons plus loin.

Comme vous le voyez, j’ai porté la section des câbles d’alimentation à 1,5mm2. Je n’avais que du câble rigide d’électricien mais finalement, je trouve cela plus propre que du câble souple.

Pour la sortie d’alimentation des voies principales, j’ai mis des câbles souples en 2,5mm2 qui sont à connecter au feeder sous le plateau. Pour la voie de programmation, qui par principe ne doit alimenter qu’une seule locomotive, je me suis contenté d’une section de 0,5mm2.

JPEG - 2.9 Mio

Tous les câbles sont solidement attachés au support. Qui ne s’est jamais pris les pieds dedans ?

Voilà donc pour le matériel. Et maintenant, le petit récapitulatif budgétaire :

USB

ETHERNET

Clone

Officiel

Clone

Officiel

Alimentation

 26,00 €

 26,00 €

 26,00 €

 26,00 €

Convertisseur de tension

 

 

 3,50 €

 3,50 €

Carte Arduino UNO

 2,00 €

 20,00 €

 

 

Carte Arduino MEGA

 

 

 8,00 €

 30,00 €

Shield Ethernet

 

 

 5,00 €

  17,00 €

L9110S Dual Motor Driver 

 12,00 €

 12,00 €

 12,00 €

 12,00 €

MAX471 

 1,00 €

 1,00 €

 1,00 €

 1,00 €

Total :

 41,00 €

  59,00 €

 55,50 €

 89,50 €

Moins de 60€ pour une version Ethernet avec des clones Arduino.

Schéma de câblage :

- avec un Arduino UNO.

JPEG - 97.2 kio

UNO

Main

PWM 1

3

 

 

DIR 1

10

 

Prog

PWM 2

11

 

 

DIR 2

5

- avec un Arduino MEGA

PNG - 307.5 kio

MEGA

Main

PWM 1

3

 

 

DIR 1

12

 

Prog

PWM 2

11

 

 

DIR 2

2

 


La particularité dans ce type de montage est que la voie principale et la voie de programmation partagent le même détecteur de consommation. Dès lors, il est préférable qu’il n’y ait pas d’activité sur la voie principale lorsque vous procédez à des opérations sur décodeurs sur la voie de programmation.

Les commandes DCC : DCC++

Est-il encore nécessaire de présenter DCC++ que nous avons découvert il y maintenant un peu plus de 5 ans, qui s’est largement imposé dans toute la communauté du DIY en matière de commandes DCC et que nous même à Locoduino avons utilisé dans de multiples configurations différentes avec toujours le même succès.

Si vous souhaitez avoir une présentation détaillée :

L’installation du logiciel sur la carte (UNO ou MEGA) se fait comme pour n’importe quel sketch Arduino à l’aide de l’environnement de développement Arduino (IDE). Ce n’est pas l’objet de traiter ce point ici ce qui est par ailleurs largement fait sur internet et sur Locoduino :

La version officielle de DCC++ est disponible ici en téléchargement :

en cliquant sur le bouton vert « Clone or download »

JPEG - 79.3 kio

Vous placerez ensuite le dossier téléchargé dans le bon répertoire de votre ordinateur ; de préférence le dossier Arduino du répertoire Documents.

Que vous utilisiez un Arduino UNO ou un MEGA, le fichier à ouvrir est le même : « DCCpp_Uno.ino ».

A l’ouverture du fichier, vous serez peut-être étonné de voir plusieurs onglets en haut de la fenêtre.

PNG - 98.7 kio

C’est une bonne pratique de développement que de séparer le code en fichiers séparés, surtout s’il est long et/ou complexe.

Vous allez cliquer sur l’onglet « Config.h » et vous allez pouvoir ajouter fièrement votre nouvelle carte ligne 16 :

//  2 = L9110S Dual Motor Driver      (MAX 28V/10A PER CHANNEL)

Et vous allez valider cette option en modifiant la ligne 18 comme ci :

#define MOTOR_SHIELD_TYPE   2

/////////////////////////////////////////////////////////////////////////////////////
//
// DEFINE MOTOR_SHIELD_TYPE ACCORDING TO THE FOLLOWING TABLE:
//
//  0 = LMD18200 Motor Driver         (MAX 28V/3A PER CHANNEL)
//  1 = POLOLU MC33926 MOTOR SHIELD   (MAX 28V/3A PER CHANNEL)
//  2 = L9110S Dual Motor Driver      (MAX 28V/10A PER CHANNEL)

#define MOTOR_SHIELD_TYPE   2    

Ensuite, vous allez sélectionner le type de communication selon que vous utilisez une liaison Série/USB ou Ethernet.

Dans mon cas qui suis en Ethernet, mon shield correspond au choix 1.

/////////////////////////////////////////////////////////////////////////////////////
//
// DEFINE COMMUNICATIONS INTERFACE
//
//  0 = Built-in Serial Port
//  1 = Arduino.cc Ethernet/SD-Card Shield
//  2 = Arduino.org Ethernet/SD-Card Shield
//  3 = Seeed Studio Ethernet/SD-Card Shield W5200

#define COMM_INTERFACE   1

/////////////////////////////////////////////////////////////////////////////////////

Si vous utilisez Ethernet, assurez-vous qu’il n’y ait pas « // » devant #define IP_ADDRESS { 192, 168, 1, 200 }

Vous devez obtenir ceci :

// DEFINE STATIC IP ADDRESS *OR* COMMENT OUT TO USE DHCP
//

#define IP_ADDRESS { 192, 168, 1, 200 }

/////////////////////////////////////////////////////////////////////////////////////

Si vous utilisez le port USB, vous n’avez rien à changer.

Vous allez maintenant cliquer sur l’onglet « DCCpp_Uno.h », vous rendre ligne 84, ajouter une ligne et coller ceci :

#elif MOTOR_SHIELD_TYPE == 2

  #define MOTOR_SHIELD_NAME "L9110S Dual Motor Driver"

  #define SIGNAL_ENABLE_PIN_MAIN 3
  #define SIGNAL_ENABLE_PIN_PROG 11

  #define CURRENT_MONITOR_PIN_MAIN A0
  #define CURRENT_MONITOR_PIN_PROG A0

  #define DIRECTION_MOTOR_CHANNEL_PIN_A 12
  #define DIRECTION_MOTOR_CHANNEL_PIN_B 13

Voilà, votre application DCC++ est maintenant configurée pour vos besoins.

Assurez-vous dans le menu Outils que les paramètres correspondants à votre carte sont bien sélectionnés, ici un Arduino MEGA :

PNG - 204.6 kio

Puis pour finir, vous allez charger le sketch sur la carte :

PNG - 67.2 kio

Voilà, c’est fini pour l’application DCC++. Bien sûr, vous n’aurez plus à faire tous ces réglages sauf si vous changez de carte ou de configuration.

Nous allons maintenant nous assurer que tout fonctionne :

A droite de la fenêtre du sketch, vous allez ouvrir le moniteur série en cliquant sur l’icon en forme de loupe :

PNG - 5.9 kio

Vous devriez voir apparaître une nouvelle fenêtre avec ce texte si vous êtes en USB : <iDCC++ BASE STATION FOR ARDUINO MEGA / L9110S Dual Motor Driver: V-1.2.1+ / Jun 25 2019 11:02:57><N0: SERIAL>

PNG - 42.8 kio

Si vous n’avez rien ou des caractères incompréhensibles, assurez-vous que la vitesse 115200 bauds est bien sélectionné en bas de la fenêtre.

Si vous avez une configuration Ethernet, assurez-vous que le shield est connecté à l’un des ports Ethernet de votre box.

Pour ceux qui auraient des difficultés à se connecter sur leur box compte tenu de l’éloignement en particulier, vous pouvez avoir recours à la technologie CPL :
https://fr.wikipedia.org/wiki/Coura...

C’est ce que j’ai adopté pour moi avec succès après avoir testé différentes solutions. Vous mettrez alors un boitier CPL dans la pièce où se trouve votre Arduino et le tour est joué.

Revenons à nos réglages, si vous avez une liaison Ethernet, l’écran du moniteur devrait afficher ceci : <iDCC++ BASE STATION FOR ARDUINO MEGA / L9110S Dual Motor Driver: V-1.2.1+ / Jun 25 2019 11:02:57><N1: 192.168.1.200>

PNG - 42.4 kio

A la fin de la ligne apparaît l’adresse IP choisie pendant les réglages.

Nous allons maintenant tester que DCC++ communique bien avec la carte moteur en lui envoyant l’ordre de se mettre sous tension.

Si vous avez choisi la configuration Ethernet, vous allez devoir revenir au réglages Série/USB en saisissant 0 au lieu de 1 à la suite de COMM_INTERFACE ligne 35.

Chargez le code sur la carte. Assurez-vous que ce sont bien les paramètres de la liaison USB qui s’affichent dans le moniteur.

Si vous êtes déjà en port USB, vous n’avez bien sûr rien à faire.

Assurez-vous que la carte moteur est bien sous tension.

Saisissez : <1> dans la barre de saisie du moniteur puis validez avec la touche return :

PNG - 39.9 kio

Les caractères <p1> devraient s’ajouter à la ligne dans le moniteur de l’IDE, mais surtout, les deux LED’s sur la carte moteur doivent s’allumer.

Cela indique qu’il y a du courant en sortie de la carte sur la voie principale et sur la voie de programmation. BRAVO !

Une dernière précision. Je vous disais plus haut que vous pouviez augmenter sur DCC++ le seuil de l’intensité à se par exemple pour utiliser un ASC712 à la place du MAX471.

Cela se fait en sélectionnant l’onglet "CurrentMonitor.h" à la ligne 16 : #define  CURRENT_SAMPLE_MAX 300

La valeur de 300 doit correspondre à environ 1,5A. Vous pouvez donc jouer sur cette valeur si vous souhaitez augmenter le seuil de déclenchement. L’échelle de correspondance étant linéaire, un réglage de 600 doit correspondre à 3A environ.

PNG - 27.5 kio

Il ne nous reste plus qu’à voir le logiciel JMRI.

What is JMRI ?

PNG - 602.4 kio

Sur la page d’accueil du site www.jmri.org, on y apprend que : JMRI est un projet qui vise à développer des applications pour contrôler par ordinateur des réseaux ferrés miniature.

Je rappelle que JMRI peut fonctionner sur Mac et PC mais aussi sur Raspberry.

Rassurez-vous, un grande partie de la documentation a été traduite en partie en français http://jmri.org/help/fr/webtoc.shtml par une communauté de bénévoles.

Il existe par ailleurs de très nombreux tutos sur Youtube en particulier qui vous permettront une prise en main rapide. C’est que l’utilisation basique de JMRI, ce qu’il faut connaître pour programmer à minima ses locomotives mais surtout les faire rouler, s’amuser avec, cet apprentissage donc est très facile et rapide. Il vous faudra tout au plus entre ½ et une journée !

JMRI permet aussi de piloter ses locomotives à partir d’une tablette ou d’un smartphone ce qui offre des perspectives de jeu intéressantes.

JMI, c’est une communauté très importante de contributeurs, des développeurs qui font évoluer les applications, mais aussi utilisateurs qui échangent et mettent à dispositions des tutos pour aider les autres.

JMRI offre de nombreux outils qui permettent de gérer de façon très automatisée la détection des trains, leur circulation pour éviter par exemple les collisions, qui gèrent la signalisation, les aiguillages etc… Nous n’irons pas jusque-là car nous dépasserions largement le cadre que je me suis fixé. Je ne doute pas que les plus expérimentés d’entre vous prendront le relai dans une suite logique à cet article.

Pour installer JMRI, rendez-vous tout d’abord sur la page de téléchargent, http://jmri.org/download/index.shtml

Choisissez votre configuration, puis laissez-vous guider.

Une fois l’installation terminée, lancez l’application PanelPro. Comme il s’agit d’une première ouverture, PanelPro va vous demander de créer un « profile ». Ici j’entre myJmri et je valide.

PNG - 59 kio

Puis je vais devoir choisir le système, ici DCC++

PNG - 94.4 kio

Ensuite le type de connexion. Soit SerialPort si votre configuration est USB/Série…

PNG - 101.7 kio

…ou DCC++ Ethernet si vous avez choisi la même configuration que moi.

PNG - 124.2 kio

PanelPro vous demande de redémarrer l’application.

PNG - 121.8 kio

Une fenêtre spécifique me demande d’entrer mes paramètres de connexion. Attention, l’adresse IP qui m’était proposée par défaut était 192.168.0.200. J’ai bien sûr du corriger avec la même adresse IP que celle entrée dans les paramètres de DCC++ soit 192.168.1.200.

PNG - 66.2 kio

Pensez à sauver ces réglages en bas à gauche de la fenêtre.

L’étape suivante consiste à lancer l’application DecoderPro. A l’ouverture, nous avons une fenêtre telle que celle-ci.

PNG - 95.4 kio

Vous allez cliquer sur le bouton jaune en haut et au milieu de la fenêtre pour mettre le réseau sous tension jusqu’à ce que le bouton soit vert. Les LED’s de votre carte L9110S doivent alors s’allumer. Si ce n’est pas le cas, il faut reprendre les réglages.

Assurerez-vous que l’option en bas à droite « Programmation sur voie de programmation » est bien activée.

Posez une locomotive sur la voie de programmation.

PNG - 381.5 kio

Et cliquez sur le gros bouton en bas à droite « Programme »

Une nouvelle fenêtre va apparaître,

PNG - 200 kio

Cliquez sur le bouton « Lire le type depuis le décodeur ». Votre locomotive devrait se mettre à bouger sur les rails. Après quelques secondes, le programme va vous proposer de sélectionner un type de décodeur, et quelques fois plusieurs. Si vous connaissez la référence exacte de votre décodeur, vous allez alors le sélectionner parmi les propositions, sinon, choisissez l’une ou l’autre des propositions qui vous sont offertes, il ne s’agit en effet que de variantes de décodeurs pour un même fabricant ce qui ne va pas changer le comportement de vos locomotives.

Ici j’ai le choix entre deux décodeurs Lenz, le LE1035 et le LE1835. J’ai choisi le dernier.

PNG - 222.2 kio

Le programme m’indique que l’adresse du décodeur est 16 et qu’il s’agit d’une adresse DCC courte. Entrez le nom de la locomotive à la place de <nouvelle machine> puis validez en cliquant sur le bouton sauver.

PNG - 194.4 kio

La locomotive apparaît dans une liste qui pour JMRI s’appelle un inventaire. Sélectionnez-la et appuyez sur le bouton « régulateur ».

PNG - 110.9 kio

Une fenêtre de pilotage pour cette locomotive s’ouvre.

Placez-la maintenant sur la voie principale de votre réseau. Ca-y est, vous allez pouvoir faire rouler votre première locomotive et activer les différentes fonctions disponibles sur son décodeur.

PNG - 146 kio

A vous maintenant de poursuivre la découverte vous-même. Comme par exemple donner des titres aux boutons plutôt que des nom F0, F1,F…

Conclusion :

Il n’est pas dans l’objectif de cet article d’aller plus loin dans l’apprentissage de JMRI qui je le répète est très complet et très puissant.

Sans doute chercherez vous à utiliser JMRI pour piloter vos locomotives à partir de smartphones ou de tablettes en WiFI pour augmenter le plaisir du jeu. Sans doute aurez-vous aussi envie de pouvoir piloter vos aiguillages et voir la signalisation s’activer en fonction de l’état du réseau.

Vous découvrirez cela au grès de vos envies et de vos besoins. Il y a sur Locoduino de nombreux articles pour faire évoluer votre centrale et votre réseau, comme l’article Communications entre JMRI et Arduino. Vous avez aussi la documentation de JMRI et de nombreux tutoriels sur le net. Un sujet dédié à JMRI a été spécialement ouvert sur le Forum (http://forum.locoduino.org/index.ph...) pour vous permettre d’échanger vos expériences.

Au travers de cet article, nous avons construit pas à pas, et sans difficultés particulières, une centrale DCC à la fois puissante, polyvalente, évolutive et économique. L’aventure en vaut assurément le coup. Cette centrale sera unique car ce sera la vôtre, celle que vous aurez réalisée.

Prenez du plaisir à jouer !

256 Messages

  • Christophe,

    Quel formidable article !
    Ca c’est du DIY, simple, progressif, bien documenté et accessible pour autant que l’on maîtrise un peu l’environnement Arduino.
    Tu donnes l’envie de construire une centrale et de se lancer avec JMRI...(dommage que je sois déjà équipé, quoique...).

    Petite précision : d’après ce que je peux voir sur la baie, il y a beaucoup d’exemple de cartes à base de L9110S mais très peu permettent des intensités de 10A et au dessus ; selon moi, c’est la présence d’IRF3205 qui permet ce résultat. Il faut donc absolument approvisionner la carte telle que mentionnée par toi pour obtenir ces performances.
    Merci pour ce tuto !

    Répondre

    •  

      Merci Daniel,

       

      Oui tu as raison, si l’on recherche L9110S sur internet, on est souvent conduit sur une autre carte moteur, généralement bleu, mais dont les performances se situent aux alentours de 800mA ce qui est beaucoup trop faible pour le modélisme ferroviaire. Sauf peut être en Z ou en T.

       

      Oui ce sont les 8 gros Mosfet (IRF3205) que l’on distingue nettement sur la carte qui apportent la puissance.

       

      Dans l’absolu, il n’est pas très compliqué de réaliser sa propre carte moteur, 4 Mosfet par moteur (2 NPN et 2 PNP), 4 diodes roues libres, quelques résistance et 1 régulateur pour le courant de commande.

       

      Mais même au prix d’achat le plus bas, il y en a déjà pour plus cher dans les Mosfet que la carte entière !!!

      Répondre

    • Depuis la parution de l’article, l’approvisionnement du module de mesure de courant à base de MAX471 est devenu problématique.
      On peut le remplacer par un module comportant un INA169 que l’on complètera par une résistance shunt (RS) de 0,1 ohm, 3W.
      Le seuil de la détection de court-circuit peut également être modifié avec la résistance "load" (RL)

      Voir en ligne : sur le forum :

      Répondre

  • Félicitations, excellent article, clair et complet.
    Et une question / souhait : une version pour Rocrail ?
    Je vous remercie,
    Juan.

    Répondre

    •  

      Bonjour,

       

      Merci pour vos appreciations. Il n’y a aucun problème pour utiliser Rocrail à la place de JMRI. Le hard est exactement le même (alimentation, Arduino avec DCC++ copié dessus). Il faut configurer Rocrail avec DCC++ et c’est parti !!!

       

      Bien amicalement

       

      Christophe

      Répondre

  • bonsoir.je suis débutant et ne maitrise pas l’ordinateur.car j’ai 55 ans et je suis manuel avant tout..puis je me lancer dans cette aventure sans me planter.Votre article me parai facile a suivre.Beaucoup de lecture m’attend pour comprendre le système.Mais je m’apperçoi que c’est plus puissant que la Z21 noire qui coute un bras.donc quoi faire ...et encore Merci. PS je suis en HO avec une bb66000 analogique...mais après souhaite être en DCC.

    Répondre

  • Bonsoir,

    Je parcours le site depuis plusieurs jours. Il est d’une grande qualité, bravo. Je retrouve cet esprit de partage et d’échange quand j’ai commencé l’informatique et le modélisme dans les années 80. Votre article est particulièrement bien fait et c’est vrai qu’il donne l’envie de fabriquer notre propre système en DIY. J’étudie donc la faisabilité dans mon cas et de franchir ainsi le pas vers de DCC. Je souhaite donc réaliser une boîte (all-in-one) qui intégrerait en plus une Raspberry Pi3 et un écran. J’ai lu sur le site que JMRI communique via une RS323. Il semble que cela ne soit pas aussi simple sur la RPI3. Pouvez-vous m’expliquer comment dans ces conditions je peux connecter les deux cartes (La RPI3 et l’arduino uno) ? Merci d’avance, Cyril PS : Les performances de JMRI sur la RPI sont-elles au rendez-vous ?

    Répondre

  •  

    Bienvenue sur Locoduino.

     

    Merci tout d’abord pour vos appréciations. Comme vous parlez de tout le site, cela vaut pour l’ensemble des rédacteurs donc !

     

    Je suis heureux que cela puisse vous donner envie de faire vous-même. Il y a une vraie satisfaction et de pouvoir se dire : je l’ai fait !

     

    Pour JMRI sur Raspberry, ça fonctionne vraiment bien, pas d’inquiétude. A fortiori et très vraisemblablement, mieux encore avec le 4.

     

    Voyez la vidéo et le post vraiment très intéressants de François où il aborde de nombreux aspects dont la communication avec CMRI.

     

    http://forum.locoduino.org/index.ph...

     

    C’est une solution très complète et aboutie de pilotage et de gestion du réseau.

     

    Et n’hésitez surtout pas si vous avez des questions.

     

    Christophe

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 27 juillet 2019 18:37, par Gérard PERCHET

    merci et merci.... je suis un retraité de 70 ans et à vous lire cela me semble facile... Passionné de train, j’ai attaqué la réalisation de cette station DCC++
    Je vais y arriver, car passer en digital est un vieux rêve...
    mon problème, désirant faire à l’identique de vos photos, je m’aperçois que sur le contrôleur de tension, vous avez rajouter une plaque.... Je ne sais à quoi elle correspond et quelle est sa référence....

    je vous remercie d’avance pour votre réponse et de me rendre une certaine jeunesse en vous lisant...

    Répondre

  •  

    Merci Gérard,

     

    Je savais que Locoduino pouvait avoir de nombreuses vertus... mais je ne savais pas encore qu’il pouvait faire rajeunir ! Bientôt peut-être arrivera t’on à soulager les rhumatismes.

     

    Mais je ne vois pas à quoi vous faites référence. Quand vous parlez du contrôleur de tension, il s’agit du MAX471 ? De toutes les manières, je ne vois pas trop de quelle plaque vous parlez. La seule plaque que j’ai ajoutée est un support en plexi qui me permet de positionner et fixer tous mes composants proprement., en générale avec des vis BTR de 2mm. Le MAX471 n’ayant pas de trous pour le passage de vis, je l’ai tout simplement solidarisé avec un collier d’électricien.

     

    Cela répond t’il à votre question ?

     

    Bien cordialement.

     

    Christophe

    Répondre

    • Christophe,
      bonjour,
      Effectivement un super article qui permet de s’aventurer dans le DIY en s’appuyant aussi sur l’état d’esprit de cette communauté "locoduino" qui transpire dans tous ces échanges.

      je suis à la retraite depuis peu et je me suis lancé dans la remise en route de mon vieux train. j’ai commencé par construire une centrale avec DCC-Free qui fonctionne et je continue maintenant avec ton montage avec une Arduino MEGA.
      je n’ai pas de courant en sortie du max471, j’en ai commandé un autre, mais est il possible de le tester ? merci d’avance pour la réponse
      une bonne fin de journée à tous
      luc

      Répondre

      •  

        Bonjour,

         

        Oui il est possible de tester un MAX471 le plus simplement du monde avec un voltmètre en mesurant la tension entre VT et GND.

         

        Vous trouverez par ailleurs sur internet de nombreux tutos qui expliquent comment mesurer les valeurs tension et courant avec un Arduino.

         

        A titre d’exemple, voici un petit programme que je me suis créé justement pour ces mesures. Ici il s’agit d’un montage avec un moteur 12v DC qui va modifier l’état de la broche 2 si l’une des deux valeurs, 12V (vMax) et/ou 1A (iMax) est dépassée.

         

        float current;
        float voltage;
        float vp = 0.022;
        long tempo = 1000;
        long currentTime;
        float vMax = 12.0; // Volts
        float iMax = 1.0;  // Amp
        
        
        void setup() {
          Serial.begin(115200);
          pinMode(2, OUTPUT);
          digitalWrite(2, LOW);
          currentTime = millis();
        }
        
        void loop() {
          
          voltage = analogRead(A0) * vp;
        
          current = 0;
          for (int i = 0; i < 100; i++) {
            current += analogRead(A1);
          }
          current /= 15000;
        
          if ((voltage > vMax) || (current > iMax)) {
            Serial.print(" stop\n");
            digitalWrite(2, HIGH);
            delay(1000);
            digitalWrite(2, LOW);
          }
        
          if (millis() > currentTime + tempo) {
            currentTime = millis();
        
            Serial.print("Voltage : \t");
            Serial.print(voltage);
            Serial.print(" v\t\t");
        
            Serial.print("Courant : \t");
            Serial.print(current);
            Serial.print(" mA\n");
          }
        }

        Répondre

    • Une station DCC complète, polyvalente et économique avec JMRI. 28 juillet 2019 10:23, par Gérard PERCHET

      Merci pour cette réponse rapide...
      Il ne s’agit pas du MAX471, mais de l’abaisseur situé à côté du transfo 18V sur la vue générale (abaisser ou contrôleur)..
      il apparaît sur cette photo que quelque chose soit posé dessus....

      Pour la jeunesse, vous faites travailler mon cerveau et pour les rhumatismes, commencez à réfléchir...
      Merci pour tout, je ne vous quitte plus !!!!

      Répondre

  •  

    Ah OK, il s’agit d’un convertisseur de tension. Le modèle que je montre sur ebay et celui que j’utilise ne sont pas identiques en effet. Je pense que c’est des plaques (noires) dont vous parlez. Ce sont les dissipateurs thermiques. Selon le principe bien connu U=R x I, la différence de tension entre 18 et 9v est convertie en chaleur qu’il faut dissiper pour éviter de détériorer les composants.

     

    Mais rassurez-vous, les modèle que vous achetez dan le commerce, si vous respectez les spécifications d’entrée et de sortie, sont conçus pour que vous ne rencontriez pas de problème. Qu’ils aient ou non des dissipateurs très apparents comme ici ne change rien à leur efficacité.

     

    Cependant, il y a un petit luxe que l’on peut s’offrir sur tous les montages électroniques que l’on réalise qui est d’ajouter un ventilateur (récupération sur un vieux PC par exemple) sur l’ensemble des composants du montage (dont la carte Arduino).

    Répondre

  • Bonjour
    J’ai réalisé la station complète avec un MEGA, tout fonctionne parfaitement (mise en tension, commande de la loco allumage de feux etc...) sauf lors de la programmation la loco réagit, mais JMRI me dit erreur 301 aucune lecture ???

    Répondre

  •  

    Bonjour,

     

    Peut-être êtes vous dans l’un des (rares) cas où effectivement la lecture et la programmation des CVs n’est pas opérationnelle sur la voie de programmation.

     

    Cela tient à DCC++ ou plus exactement au hard autour de DCC++. C’est un problème que j’avais soulevé très rapidement après que nous ayons découvert DCC++ et nous n’avons malheureusement pas trouvé de solution.

     

    De ce que nous avons pu constater, cela ne se produit qu’avec les décodeurs de certains fabricants. J’ai vu sur des documentations de Jouef qu’il était parfois nécessaire d’ajouter une résistance (de 100Ω de mémoire) mais sans certitude que cela fonctionne.

     

    Essayez si vous le pouvez de tester des décodeurs provenant d’autres fabricants. Personnellement, je n’ai rencontré aucun problème avec la totalité de mes décodeurs ESU et Marklin. Chez Zimo par contre, il y a je crois des difficultés.

     

    Quoiqu’il en soit, avec ces décodeurs récalcitrants, la programmation sur la voie principale fonctionne et doit permettre de régler les principaux CVs comme l’adresse de la machine.

     

    Je vais ouvrir un nouveau fil sur le forum concernant cette question et essayer par là même de trouver des solutions.

    Répondre

  • Bonjour Christophe,

    Excellent article, complet, clair qui permet aussi de découvrir une nouvelle très belle carte pour un booster (et JMRI aussi)

    Par ailleurs lecteur de Model Railroader (revue américaine) depuis de nombreuses années, je constate que les américains n’utilisent jamais un booster 10A seul.
    Il y a à cela deux raisons, l’une pratique et l’autre de sécurité.

    1°) Raison pratique :
    Si tout le réseau est sur un seul booster (quel que soit sont ampérage, d’ailleurs), si on a un court-circuit quelque part, le disjoncteur (électronique, informatique, …) saute et tout le réseau s’arrête.
    Pour éviter cela, ils découpent leur réseau en plusieurs sections électriquement indépendantes.
    Par exemple :
    Le réseau intérieur, le réseau extérieur, la zone de manœuvre.
    De cette façon, les trains continuent à tourner si on a un court-circuit dans la zone de manœuvre.
    Pour l’alimentation, il y a la solution luxueuse de 3 booster 3A (un par section) ou celle, moins chère : un booster 10 A et 3 "sectionneurs DCC".
    Ils vendent ça très cher, mais je suis sûr qu’avec un Arduino et un Max471, on peut faire un sectionneur.

    2°) Raison de sécurité :
    Un court-circuit 10 A, ça peut faire des dégâts sur nos petites locos. En limitant à 3A, c’est moins grave.
    Je suis persuadé que l’informatique réagit extrêmement vite, mais si on peut diminuer le risque…
    Et je pense que Greg, justement parce qu’il est américain, a aussi mis une limite à 3A dans DCC++.

    Encore bravo !

    Denis

    Répondre

    • Bonjour Denis,
      cette idée de sectionneur est intéressante.
      On pourrait avoir le lien commercial pour éventuellement s’inspirer de la description ?
      Merci d’avance.

      Répondre

      • Bonjour à tous et merci pour ce projet que je vais peut être réaliser. Pour répondre à un court-circuit sur le réseau nous pourrions appliquer la méthode en analogique, deux ampoules 21w 12 volts en série. Merci pour vôtre réponse.

        Répondre

        • Pour ne pas démunir votre véhicule, utilisez plutôt des PTC (ou Polyfuse) qui sont faits pour cela (moins de résistance à vide).
          Voir la discussion ci-dessous sur le forum. (entre autres)
          Mais personnellement, je pense qu’une protection électronique garantit de ne pas créer de petits cratères aux points de c/c. Faites l’expérience sur une feuille de cuivre poli et regardez le résultat déjà avec 15V - 3A pour chaque type de protection. Alors avec 18V - 10 A ...

          Voir en ligne : Exemple Voltscooter Electronics

          Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 2 septembre 2019 13:58, par trimarco232

    Bonjour,
    d’accord avec Denis à propos de la nécessité de limiter le courant dans la voie
    .
    rien n’empêche d’ajouter une 2ème carte pour découper le réseau en 3 parties et rester dans des limites de courant raisonnables - il y a 2 boosters par carte -
    .
    j’ajouterais à l’exemple donné par Denis, l’intérêt d’avoir un booster dédié aux accessoires alimentés en dcc (le cas échéant) : en effet, on n’est jamais à l’abri d’un court circuit fugitif sur la voie, ce qui peut provoquer une mauvaise lecture d’un message à destination d’un accessoire. Avec un booster dédié ce risque est nul
    .
    en tous cas, rebravo à Christophe pour cet article, en particulier pour la qualité des explications et des illustrations : c’est beaucoup de travail bien fait !

    Répondre

  • Bonjour,
    J’ai hésité à fournir des références commerciales pour trois raisons :
    1°) Ne pas brider notre imagination
    2°) Les prix du DCC commercial sont très élevés, voire exorbitants.
    3°) On a là des solutions purement électroniques très éloignées de nos Arduinos.
    .
    La référence de magasin dans les revues américaines est Tam Valley Depot
    Sur la première page, le fameux "Frog Juicer", certainement leur article le plus vendu.
    Il sert à inverser la polarité très rapidement en cas de court-circuit "volontaire", c’est à dire celui qui a lieu en sortie de boucle de retournement, de pont roulant quant on a fait plus de 180°, ...
    Un premier schéma de "circuit breakers" dans un réseau mono booster est donné.
    Un petit tour du site est très instructif, mais, je le répète, très éloigné de notre site, fondé sur le DIY et l’Arduino.
    L’autre référence purement électronique est le PSX-4, "power manager" de "DCC Specialities", en ce moment en promo à $161.95 (au lieu de $179.95)... ça calme !!
    .
    Mon propos, en faisant cette réponse à cet excellent article, c’était de réfléchir à un système beaucoup plus simple :
    Un bête relai capable d’encaisser 3A commandé par un Arduino nano et un MAX471 pour détecter les 3A.
    Et on remet en route en appuyant sur un bouton.
    Ou on fait 5 sections à 2A avec des relais 2A.
    On peut sûrement faire mieux, je n’en doute pas.

    PS : je retiens l’idée de Christophe pour le support plexiglas pour l’alim. C’est très élégant, bien clair.

    Répondre

  • Merci Denis, ça manquait à ma culture, et j’avoue que la polarisation des cœurs de pointe ne m’avait pas encore préoccupé sur mes petits réseaux, bien que j’aurais du.
    De base, c’est donc une alternative aux relais commandés par l’inversion de l’aiguille ou par l’aiguille elle même.
    Et donc, en variante sur la même base, Tam Valley Depot propose à 36$ le disjoncteur DCC (circuit breaker) qui coupe les deux rails d’UNE section (district) en cas de court-circuit.
    Traintek propose un modèle protégeant 4 districts à 160$, il y a donc une logique.
    Mais est-ce utile, vu le prix en DIY des boosters et si on limite le courant à 3A ?

    Par contre, ayant déjà grillé des ponts en H, faute de protection, en renvoyant la tension d’un pont sur un autre, y a-t-il des retours d’expérience sur l’alimentation de sections contiguës par des boosters indépendants (dont les signaux n’ont pas été synchronisés)
    Je suppose néanmoins que ce n’est pas réalisable puisqu’au changement de section, il y a un court-circuit, ce qui immobilise le convoi.
    Vos avis ?

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 3 septembre 2019 13:45, par trimarco232

    "Mais est-ce utile, vu le prix en DIY des boosters et si on limite le courant à 3A ?"
    au début on a fait des boosters à 3A, qui se sont révélés insuffisants sur des grands réseaux, puis on a fait des boosters à 10A pour pallier
    et c’est là qu’on a découvert les soucis (voir mon post précédent), résolus en offrant les "power managers" qui permettent en quelque sorte de rescinder le grand booster en plusieurs petits
    drôle d’affaire qui s’explique par l’historique et les considérations commerciales
    .
    "pas réalisable puisqu’au changement de section, il y a un court-circuit, ce qui immobilise le convoi"
    c’est pour cela qu’il faut commander les boosters avec les mêmes signaux venant de la centrale
    ici cela se ferait de la manière suivante :
    gnd de la 2ème carte en // sur gnd de la 1ère carte
    pwm1 et pwm2 de la 2ème carte en // sur le pwm2 de la 1ère carte
    dir1 et dir2 de la 2ème carte en // sur le dir2 de la 1ère carte
    +5v de la 2ème carte en // +5v de la 1ère carte
    ... si les boosters sont éloignés il faut les relier avec une ligne de synchronization
    .
    "c’est donc une alternative aux relais commandés par l’inversion de l’aiguille ou par l’aiguille elle même"
    disons un pis aller. La méthode la plus propre est de couper le cœur avant la translation, inverser pendant celle-ci, puis rétablir le cœur quand la translation est terminée. La méthode du frogjuycer, si elle est simple à mettre en oeuvre, utilise le principe de détection de court-circuit au passage des véhicules, pour prendre la décision d’inverser la polarité du cœur. La même méthode (et les mêmes circuits électroniques par conséquent), est utilisée pour la commutation automatique des boucles de retournement. Je n’aime pas cette méthode, car elle créé volontairement des cc, ce qui n’est jamais bon pour le matériel, et détruit les messages dcc
    .
    "Par contre, ayant déjà grillé des ponts en H"
    on n’est jamais à l’abri. Je pense que le mieux est d’alimenter chaque pont (chaque booster), avec une alim dédiée dont le courant est inférieur à ce que peut supporter le pont, par exemple une alim 3A pour un lmd18200. Privilégier les ponts protégés contre les cc et les surcharges

    Répondre

  • Merci pour cette réponse détaillée à laquelle j’adhère tout à fait.
    j’en conclus :
    les breakers (et frogjuicer) sont des palliatifs (chers) et donc inutile d’en faire en DIY.
    on devrait limiter (et protéger) les boosters à 3A (en HO) et les multiplier en fonction des besoins en les synchronisant. (Plutôt que d’en avoir un plus puissant et de protéger des sections à 3A)
    les pointes de cœur devraient être polarisées suivant la position des aiguilles. (en les isolant pendant la translation)

    Répondre

  • "Plutôt que d’en avoir un plus puissant et de protéger des sections à 3A"
    à priori, sauf si, en dehors de ma connaissance, une solution existe en diy, alliant qualité, prix, sécurité, possibilité dévolution (je pense notamment à l’implémentation du railcom)

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 26 septembre 2019 01:03, par Xavier Bleriot

    Bonjour a tous,

    Probablement « une » question "idiote", mais bon :
    Pourquoi une carte de 10A alors que les MAX471 sont limites a 3A ?

    Et bravo pour ce site et tous les articles SUPER bien ecrits

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 20 octobre 2019 22:58, par laurentresse

    Bonjour,

    Je me suis lancé dans cette construction. J’ai tout assemblé et testé, tout fonctionne parfaitement jusqu’au moment ou je veux programmer une machine. Quand je demande à JMRI de lire le modèle de décodeur, il me renvoi une erreur 308 (pas de décodeur reconnu). J’ai essayé pas mal de chose et rien n’y fait...
    J’ai remarqué une chose mais je ne sais pas si c’est normal : avec une méga et une L9110S les pins où l’on connecte et celles indiquées dans le programme ne sont pas identiques. Pour le pin DIR2 on se connecte sur le pin 2 de la méga mais il est stipulé 13 dans le programme, est-ce que c’est normal ?
    J’espère que vous pourrez m’aiguiller...ce serait cool
    En tout cas, super article avec des indications très précises. Dommage que j’ai ce petit souci, sinon tout était parfait.

    Merci d’avance,
    Laurent

    Répondre

  • Quelle est la marque et le modèle de votre décodeur ? On sait qu’ils ne sont pas tous reconnus.

    Répondre

  • Bonjour à tous,
    Je viens de terminer le montage de la station DCC comme dans l’article décrit sur le site (Une station DCC complète, polyvalente et économique avec JMRI). Quand je branche la centrale sur le secteur la carte Mega et le Shield Ethernet.Les voyants des cartes sont allumés, mais les voyants sur le connecteur réseau ne sont pas allumés, donc pas réseau.
    Merci.
    Cordialement,

    Répondre

  • Bonjour,
    J’ai installé le logiciel JMRI version JMRI.4.17.4+Rbf0d1af, mais le logiciel n’est pas en français.
    Merci.
    Cordialement,

    Répondre

  • Et votre version de Java ?

    Répondre

  • Pour éviter les problèmes, utilisez la version de production :
    JMRI 4.16 Production Release

    Répondre

  • La question est liée à Java :
    JMRI : Internationalisation

    Les bibliothèques JMRI sont destinées à être utilisables dans le monde entier. Pour ce faire, ils font usage des fonctionnalités "internationalisation" intégrées dans le langage Java et les bibliothèques.

    Voir en ligne : internationalisation JMRI

    Répondre

  • Bonjour,
    Un grand merci à msport. J’ai trouvé la langue française, dans affichage, l’onglet langue sélection French et redémarrage de l’application pour valider.
    Cordialement,

    Répondre

  • Bonjour,
    La couleur des fils de branchement entre Arduino Mega et L9110s ne sont pas les mêmes avec les photos. La photo Arduino Mega Shield Ethernet et L9110s les couleurs des fils ne correspondent pas. Doit-on faire comme le schéma.
    Le module ajustable de courant avec entrée et sortie.
    Qu’elle est le voltage à paramétrer en entrée (IN) et en sortie (OUT).
    Merci.
    Cordialement,

    Répondre

  • Bonjour à tous,
    Je viens de lire l’article du L9110S Dual Motor Driver DCC++ sur le forum. La photo me permet de voir les branchements avec le module MAX471, La Arduino Uno et Shield ethernet. Je pensais mettre le seuil à 600 dans le seuil d’intensité maxi dans CurrentMonitor.h.
    Merci de votre aide.
    Cordialement,

    Répondre

    • Quelle est votre question ? un conseil sur la valeur de 600 ?
      Personnellement j’ajoute un Serial.print dans CurrentMonitor.cpp :

      void CurrentMonitor::check(){
        current=analogRead(pin)*CURRENT_SAMPLE_SMOOTHING+current*(1.0-CURRENT_SAMPLE_SMOOTHING);  // compute new exponentially-smoothed current
        // current = analogRead(A0) * 0.01 + current * 0.99    // LISSAGE EXPONENTIEL
        if (current > g_current) {
          g_current = current;
          Serial.println(g_current);  // a remettre en commentaire
        }
        if(current>CURRENT_SAMPLE_MAX){                                                           // current overload 
          digitalWrite(SIGNAL_ENABLE_PIN_MAIN,LOW);                                               // disable Motor Shield Channel
          //Serial.print("COURT-CIRCUIT");  Serial.println(current);                                // print and display corresponding error message
          CCstate= true;
        } 
      } // CurrentMonitor::check 

      et je fais rouler divers matériels, voire poser des résistances entre les rails et je note les valeurs, puis je choisis ce qui convient le mieux. Pas du pifomètre ;)

      Répondre

      • Bonjour,

        j’essaye de mesurer le courant par ce moyen, cela fonctionne la mesure s’affiche bien dans la console série Arduino, cependant je me demande quelle est l’unité ? des mA ?
        mon booster est un LMD1820, avec Max471 sur Mega avec la biblio DCCpp (pas de modification à part pour la mesure de courant, détails plus bas) et JMRI

        “ float Mcurrent = 0 ;” // vers la ligne de CurrentMonitor.cpp
        « if (this->current > Mcurrent)
        Mcurrent = this->current ;
        Serial.print("Le courant consommé augmente : ") ; Serial.println(this->current) ;
         »

        la console "Voltage/current Meter" du menu DCC++ de JMRI me dit 5% pour ’68’ affiché par ce source modifié.
        je ne sais pas à quoi corresponde les 100% ?

        bref je suis dans le flou, n’étant pas encore en retraite (juillet !) je n’ai pas (encore) assez de temps pour investiguer et trouver ou cela est documenté...
        un lien ou une piste serait appréciés

        Olivier

        Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 30 décembre 2019 09:45, par Martinot Alain

    Bonjour,
    félicitation pour la façon d’expliquer ce magnifique projet.
    J’utilise des cartes Arduino depuis quelques mois et je ne sais plus m’arrêter…
    Je possède un vieux train Marklin qui fonctionne encore en alternatif, j’ai envie de me lancer dans le DCC via votre station mais j’aurais voulu savoir quel décodeur DCC je pourrais installer dans mes anciennes locomotives ? j’en ai vu sur le site Aliexpress qui sont très abordables mais seront ils compatibles avec le système que vous présentez ? Je suis vraiment novice en DCC. Merci d’avance et meilleurs Vœux ! Martinot Alain

    Répondre

    • Bonsoir,
      On peut digitaliser les anciennes locos Marklin sous réserve de connaitre le type de moteur utilisé. Il faut ensuite choisir un Kit adapté au moteur d’origine. Ce kit comprend un aimant permanent, un rotor, et un décodeur qui connait les formats marklin et DCC.
      On peut trouver le type de moteur à partir de la référence de la machine et l’année de production.
      Le lien ci dessous est un exemple des discussion sur ce sujet dans le forum 3 rails.

      Voir en ligne : Discussion sur digitalisation ancienne loco

      Répondre

  • Bonjour,
    je pense que le problème de base est que les moteurs sont prévus pour du courant alternatif et que les décodeurs délivrent du courant continu.
    Il faut les convertir ou au moins vérifier qu’ils sont universels.
    Voir sur un forums spécialisé comme :

    Voir en ligne : Forum 3 rails

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 9 janvier 2020 18:22, par Martinot Alain

    Bonjour à tous, pour info, je possédais une locomotive marklin DELTA. J’ai installé un décodeur Marklin 60906 et elle fonctionne sur le système Arduino présenté ci dessus. L’avantage de ce petit décodeur c’est qu’il s’adapte directement sur le moteur toutefois que celui ci ne possède pas d’aimant permanent. Cool !

    Répondre

  • Bonjour,
    Merci pour votre article.
    Je débute avec Arduino et Locoduino. Je suis très intéressé par votre montage pour mon réseau HO en construction.

    Je trouve tous les composants, sauf l’alimentation présentée, à savoir 18V/10A)180Watts.
    Il y en a d’autres sur eBay, mais pas en 18V.

    Que me conseillez-vous ?

    Merci d’avance pour votre réponse.

    Gilles

    Répondre

  • Oui c’est bien cela !
    Cordialement
    Christophe

    Répondre

  • Bonjour
    Comme beaucoup je plonge dans le monde du DCC en créant ma centrale avec un Arduino Uno et un Arduino motor shield (moins de câblage à faire) que je tente de piloter avec JMRI (serial port). J’alimente le tout avec une ancienne alimentation de 20v que je réduit a 18v . Ma question , Quel doit être le voltage sur les rails , j’arrive bien a détecter ma locomotive et à lire les CV, mais le voltage sur les rails ne dépasse pas 1 volt ? Est-ce que j’ai raté quelque chose ?

    Répondre

    • En complément à la réponse de Christophe, il est probable que vous ayez utilisé un calibre tension continue de votre multimètre pour votre mesure. Pour vérifier la présence du DCC, il faut passer en alternatif, mais la valeur lue n’est pas de sens (ni moyenne, ni crête, ni efficace).
      Les LED sur le motor shield vous en disent autant.
      De toute manière, on retrouve sur les rails la tension d’alimentation du pont aux chutes de tension dans les transistors de commutation près.

      Répondre

      • Merci pour la réponse et les précisions, il va falloir que je décode un peu. Je vais faire quelques tests. J’essaye de digitaliser une ancienne BB72000 Diesel avec une station "maison" qui n’a pas encore servie donc ça soulève beaucoup de question. En tout cas merci pour le site qui est une mine d’or d’informations, merci pour les réponses aux questions très rapide , je sais que ça prends beaucoup de temps.

        Répondre

        • J’oubliais d’attirer votre attention sur les 18 V :
          Il est recommandé de ne soumettre un arduino UNO qu’à 12V. Si vous alimentez le shield en 18V vous devez séparer (couper des pistes au dos) son alimentation de celle de l’UNO (donc prévoir deux alimentations, une 18V et une 12V ou moins)
          Cependant tant que vous n’êtes pas sur un grand réseau en exploitation, une alimentation commune des deux cartes en 12V donne satisfaction.
          Par ailleurs, notez que LAISDCC (décodeurs chinois) recommande de ne pas dépasser 16V sur les rails.
          Et ce qui ne change rien, c’est une CC72000 Jouef ou ROCO que vous digitalisez ?

          Répondre

          • Oui j’ai bien coupé la liaison "Vin connect" du motor shield. A l’origine j’avais un transformateur 12v 2Ampères que je pousse à 16v mais ne voyant pas les 16v dans les rails j’ai pris une autre alimentation avec 3 Ampères. Du coup je vais peut être retenter le 12V. Je digitalise une CC72000 Jouef (oups), pas de son , pas beaucoup d’éclairage (du câblage à prévoir pour y installer des leds). J’ai également du nettoyage dans les contacts et dans les roues a faire.

            Répondre

  •  

    Il est peu probable que vous disposiez des moyens techniques pour mesurer le voltage réel dans les rails. En effet, en DCC, le courant n’est pas un courant continu, ni un courant alternatif "classique". C’est un alternance de bits 0 et 1 avec des phases de l’ordre de 50 à 100 µs qui se traduisent par des alternances du courant entre +18 et -18v, si rapides donc qu’on ne peut les mesurer avec des moyens conventionnels.

     

    Voir l’article de Dominique qui explique bien cela : http://www.locoduino.org/spip.php?a....

     

    Soyez rassuré, si vous mesurez 18V (courant continu) à l’entrée du shield moteur, il n’y aura pas de dégats. Ensuite, si vos locomotives, sifflent, chantent, bref, font du bruit et avancent tout va bien.

     

    Bien cordialement

     

    Christophe

    Répondre

  • Bonjour

    Je suis un vrai débutant. J’ai acquis un UNO sur lequel j’ai réalisé les montages du starter kit livré avec.
    J’ai installé JMRI sur mon ordi et j’y modélisé mon "locodrome " en mode "simulator"

    A présent je vais commander ma première loco digitalisée et me lancer dans la fabrication de cette centrale.

    J’ai reçu mon MEGA et dans l’attente des autres composants venant de Chine (…) je voulais commencer à y téléverser DCC++ .

    Et je me rends compte que c’est la version "officielle" qui est utilisée et non la bibliothèque DCCpp ?

    Pourquoi ?

    Répondre

  • Bonjour.

    Je vous souhaite une bonne réussite pour ce projet. J’ai utilisé la bibliothèque officielle tous simplement parce que je n’ai pas fait les tests entre JMRI et DCCpp. Pour tout vous avouer, je ne suis pas utilisateur de JMRI ! Par ailleurs, je ne vois pas vraiment s’il y a un intérêt à utiliser la bibliothèque de Thierry pour JMRI mais là, il sera mieux placé que moi pour vous réponde.

    Bien cordialement

    Christophe

    Répondre

    • Bonjour Je me heurte d’entrée a un problème. J’ai commandé 3 HW-316 V6 pour faire baisser la tension de mon alim 15v 7a vers le 9v pour alimenter mon Arduino .
      Je fais bien afficher 9v sur le digit en sortie … mais la tension en sortie reste du 15V (avec mon voltmetre)

      … j’espère que c’est moi qui n’est pas saisi quelques chose, parce que si c’est le matériel qui est défaillant , ca fait 12€ de foutu. :(

      une idée ?

      Répondre

  • LM2596 step down 2 mars 2020 14:57, par msport

    Sur le forum.

    Voir en ligne : Sur le forum ...

    Répondre

  • Pourriez-vous s’il vous plait me donner la référence du convertisseur 9v ainsi que son raccordement.

    Merci

    Répondre

  • Bonjour,
    Il n’y a pas de référence, juste une référence de composant. Il y a de multiples modèles de modules avec ou sans borniers, afficheur, compact ou non.
    Faites une recherche sur eBay avec "LM2596 module".
    Pour le raccordement il y a une entrée IN et une sortie OUT.
    Ça marche si on respecte les polarités + et -.

    Voir en ligne : Où acheter ?

    Répondre

  • Bonjour

    Je n’ai eu aucun problème pour tout faire fonctionner en USB. C’est un vrai plaisir que de voir pour la première fois deux locos rouler en contresens sur la même voie et d’allumer/éteindre les feux a volonté :).

    Par contre, pour faire fonctionner en Ethernet (chez moi), j’ai du ouvrir un bail DHCP avec l’adresse MAC du Shield Ethernet (trouvé sur une étiquette collée en dessous du Shield) et l’adresse IP 192.168.0.200. La Freebox refuse de le laisser faire pour l’adresse 192.168.1.200.
    J’ai donc été contraint de changer l’adresse IP dans DCC+ (et non dans JMRI, comme semble le dire l’article).

    Honnêtement, je n’ai pas trop compris pourquoi . Mais ca fonctionne et ça me va bien !

    Pour rappel, à Noel, je ne savais même pas que les Arduino existaient !

    Merci encore a toute l’équipe de Locoduino.

    Jerome,
    Tout content ! Et qui, ce coup-ci n’a pas oublié de s’identifier :)
    ET PRENEZ SOINS DE VOUS !

    Répondre

  • Bonjour,

     

    Que votre enthousiasme soit communicatif, ce dont je ne doute pas, et qu’il puisse décider ceux qui seraient encore réticents à franchir le pas du DIY.

     

    Au plaisir d’arriver au résultat s’additionne celui de l’avoir fait soi-même.

     

    Pour ce qui est de l’Ethernet, c’est vrai que cela peut être compliqué quelques fois. Dans votre cas, vous essayiez de vous connecter avec une adresse de type 192.168.1.xxx, ce qui correspond à la majorité des box. Or votre box elle est sur un autre sous réseau, 192.168.0.xxx. L’un et l’autre ne pouvaient donc pas se voir sauf si vous aviez changé le mask de sous réseau de votre box à 255.255.0.0 et non 255.255.255.0 comme ce doit être le cas actuellement.

     

    Profitez bien et prenez soin de vous également.

     

    Christophe

    Répondre

  • Bonjour,

    bravo pour votre réalisation, j’ai essayé de faire une centrale avec le livre "arduino faite le jouer au train" et ça déconne plein pot, avec la centrale D17++ et la aussi j’ai rencontré des problèmes.
    Et là Ô miracle avec vous ça marche.
    A cela deux raisons la difficulté de reconnaître mes décodeurs Chinois. et le problème que j’ai eu de trouver des LMD 18200 fiables.
    Avec votre centrale le seul petit problème que j’ai rencontré, c’est avec le logiciel JMRI qui est vraiment bien mais il à fallu que je bidouille un moment pour qu’il reconnaisse mes décodeur chinois.
    Sinon ,je me posait une petite question en ces temps de confinements, est il possible de gérer en plus des locos, les aiguillages et la signalisation du réseaux avec cette centrale ?

    Répondre

    • Bonjour,
      Ce n’est pas à proprement parler la centrale qui permet de gérer les aiguillage ou la signalisation mais DCC++ (qui est il est vrai implanté dans la centrale) et le logiciel qui pilote vos locomotives et votre réseau. En l’occurence pour vous JMRI.
      Oui JMRI associé à DCC++ permet de le faire. Et bien plus encore. Mais puisque vous utiliserez le bus DCC pour la commande, il faudra que les périphériques que vous voulez commander (aiguillages etc.) soient équipés de décodeurs.
      Bien cordialement.
      Christophe

      Répondre

  • Une suggestion : tapez "décodeur" dans la zone Recherche en haut à droite.

    Répondre

  • Problème, lorsque que je teste avec la petite loupe et en faisant <1> la réponse est :
    p1> p2>
    ce qui me donne un allumage très bref des 2 leds ? pourquoi j’ai p2>
    J’ai supprimé les < car elle efface le texte qui suit

    Répondre

  • Je ne le retrouve pas dans la référence mais je pense que "p2" est le code de détection de court-circuit. Ça a été signalé dans le forum il y a un moment.

    Répondre

  • Bonsoir,

    Bravo pour la réalisation de votre centrale, elle semble très prometteuse.
    Mais je n’ai pas réussi à trouver ni ses caractéristiques ni son mode d’emploi. Peut-être que l’étude des logiciels m’en dirait plus.

    Au niveau de l’alimentation, je ne comprends pas trop le principe. Votre alim donne 10 Ampères, mais vous limitez le débit à 3 avec le Max471. Ce qui fait "seulement" 3 Ampères, pour les 2 circuits. N’est-il pas possible de donner 3 A à chaque circuit.

    Je projette actuellement la construction d’un nouveau réseau que j’envisage de digitaliser. Je possède une centrale Roco z21 (petit z). Elle pourrait sans doute être avantageusement remplacée par votre centrale et deux cartes L910S. Ce qui devrait me faire 4 boosters pour alimenter les 3 secteurs de mon réseau plus une voie de programmation. Est-ce possible ? Une seule carte Arduino serait-elle suffisante ?

    Merci pour votre éclairage.
    Nonojac

    Répondre

  •  

    Bonsoir,

     

    Merci pour vos appréciations. Petite précision préalable, ce n’est pas 3A en tout mais sur chacune des deux sorties. Ceci dit, avant d’arriver à 3A sur la voie de programmation !

     

    Si vous utilisez DCC++ (DCCpp), vous ne pourrez pas faire d’une sortie programmation une sortie main. Si vous voulez 3 secteurs distincts, il vous faudra 3 cartes. Et il vous faudra aussi 3 Arduino.

     

    Mais les 3 secteurs sont t’il vraiment nécessaires avec 10A ou 15A avec le modèle le plus puissant de la L910S ? 15A, ça représente probablement une trentaine de locomotive roulant simultanément sur le réseau.

     

    Il faudra alors remplacer le MAX471 par un ACHS-7122 de chez POLOLU par exemple qui autorise 20A et modifier le code en conséquence dans DCC+. Si vous avez besoin d’aide, je peux voir cela avec vous, j’ai 3 ACHS-7122 mais je n’est pas encore fait la manip.

     

    Enfin, je vous conseille de faire une voie de programmation séparée, avec un autre Arduino, certes, et 1 LMD18200 par exemple. Ou la DRV8838 de chez POLOLU toujours qui est une toute petite carte de 1,7A https://www.pololu.com/product/2990 à moins de 4€.

     

    Puisque vous semblez avoir un projet ambitieux, mettez des moyens en conséquence.

     

    Je reste très volontiers à votre disposition pour avancer plus en détail si vous en avez besoin.

     

    Christophe

    Répondre

  • Bonjour Christophe,

    Merci pour votre attention.

    Décidément, je ne comprends pas le branchement de l’alim. Elle délivre 10A, le MAX471 réduit à 3A (une seule fois), comment la L910S peut-elle se retrouver avec 2x3A ? Une fois 3A sur chaque sortie, ça fait 6A. Il y a un truc qui m’échappe. Oublions la voie de programmation sur laquelle 1A doit être suffisant.

    Dans mon idée, on a une alim de 10A, 3 MAX471 en parallèle qui alimentent chacune des 3 L910S qui donne 3A seulement sur chaque secteur du réseau. Chaque secteur du réseau est donc limité à 3A, ce qui est mieux, je pense pour la sécurité, que tout le réseau alimenté avec 10A.

    Je ne vois plus l’intérêt de la L910S par rapport aux classiques LMD18200.

    Je projette de découper mon réseau en 4 secteurs alimentés chacun par un booster pour limiter l’intensité injectée. Le plus simplement possible avec le plus d’efficacité possible, tout en restant dans le raisonnable. Je pense que 4x3A est mieux que 1X10A.

    Merci encore de vous donnez la peine de répondre à mon propos.
    Bien cordialement,

    Nonojac

    Répondre

  •  

    Pas sûr premièrement que vous ayez bien compris le rôle du MAX471. En relisant vous deux messages, je vois que vous écrivez que le MAX471 réduit le débit ! Il ne réduit rien en tant que tel. Il ne sert qu’à mesurer l’intensité (dans notre cas) et envoyer l’information à l’Arduino. DCC++ interprète cette information et l’algorithme coupe l’alimentation des rails au delà d’une valeur parametrée. Et il est vrai qu’au delà de 3A, le MAX471 ne peut pas faire de lecture correcte. Mais en aucun cas ce n’est un limiteur de tension et encore moins de courant.

     

    3 X 3A, 1 X 10 A ??? Cette discussion a déjà eu lieu à plusieurs reprises. Effectivement, vous pouvez préférer 3 X 3A. Mais ça pose alors d’autres problèmes. Et dans ce cas, vous pouvez légitimement vous poser la question de mettre des L910 plutôt que des LMD18200 bien que leur prix soient assez proches finalement, la L910 apporte une seconde sortie pour la programmation, et ça me plait bien à moi. Et d’avoir 15A potentiellement et n’en utiliser que 4 ou 5 avec un un ACHS-7122 ne me pose aucun problème existentiel.

     

    Je crois surtout qu’il faudrait commencer par évaluer réellement votre besoin en puissance qui est essentiellement lié au nombre de locomotives qui peuvent rouler, je le répète, simultanément. Et ensuite, tout ce qui est raccordé au bus DCC comme les accéssoires, mais vous savez qu’à Locoduino, on n’est pas trop favorables à l’utilisation du bus DCC à autres choses que la traction (saufs cas particuliers).

     

    Et déjà, avant d’atteindre 3A il y a un peu de marge.

    Répondre

  • Et le minimum d’effort pour une voie de programmation est le montage (à minima en 12V) du shield moteur à L298 sur un UNO R3 avec le sketch de la BaseStation. Et la voie principale permet de faire des tests sans faire fondre les rails ...
    Bien utile pour ses premières armes avec le DCC.

    Voir en ligne : Réalisation de centrales DCC avec le logiciel libre DCC++

    Répondre

  • Bonsoir,

    Bien sûr que je n’avais pas compris le fonctionnement du MAX 471. Maintenant que vous me l’avez expliqué, je comprends mieux.

    Je vais tenter d’expliquer mon réseau. J’envisage de le découper en 3 secteurs géographiques plus 1 pour le garage des rames. J’avais prévu un module HSI-88 de LTD suivi de 4 boosters Paco qui alimenteront la rétro signalisation par modules BMD 16N-SD. Maintenant que j’ai découvert Arduino, d’autres possibilités se font jour.

    Selon mon étude, il me faudrait donc 4 cartes L910 qui remplaceraient mes boosters Paco. Feraient-elles bon ménage avec ma z21 ? J’envisage de la garder pour débuter la digitalisation du réseau.

    Je suis également d’accord avec msport pour la voie de programmation.

    Bonne soirée.

    Répondre

  • Bonsoir,
    comme vous avez un projet, il y a une rubrique sur le forum faite pour cela. "Vos projets".
    Si cela concerne la mise en œuvre de cette réalisation et de l’aide correspondante il y a un sujet ouvert. (voir ci-dessous)
    Cela dit, une z21 communique en XpressNet, et c’est une autre architecture.

    Voir en ligne : Une station DCC complète, polyvalente et économique avec JMRI.

    Répondre

  • Bonjour,

    Merci beaucoup pour ce tutoriel qui m’a permis de beaucoup jouer en cette période particulière. Je suis un parfait débutant.
    Par contre, j’appréhende difficilement les possibilités de DCC++ en ce qui concerne les sorties (comment d’aiguillages et rétro-signalisation).
    Ce serait vraiment super si vous pouviez publier un tutoriel concernant cet aspect.

    Répondre

    • Bonjour Jean-Baptiste,

       

      Merci pour vos appréciations. Concernant les possibilités de DCC++ en ce qui concerne les sorties (commandes d’aiguillages et rétro-signalisation), je crains fort que vous n’attendiez longtemps le tutoriel.

       

      Bien que cela soit en effet possible de le faire avec un bus DCC (et donc avec DCC++) cette façon de faire n’est absolument pas celle qui est retenue par Locoduino (coût, complexité, performances limitées...)

       

      Je ne saurais que trop vous inciter à regarder les articles récents publiés par Jean-Luc sur le bus CAN et vous serez à même de concevoir et de mettre en place sur votre réseau des solutions très performantes.

       

      Essayez par exemple d’appliquer à un servo moteur, l’exemple avec les LEDs et vous serez rapidement en mesure de piloter vos propres aiguillages, soit avec des boutons poussoirs, soit, si cela est plus votre sensibilité, via des solutions à base de microcontrôleurs ou d’informatique.

       

      Les cartes satellite que nous avons développé sont un petit concentré de ce dont on a besoin à minima sur le réseau : détection pas consommation, détection ponctuelle, feux de signalisation. Jettez-y un œil également.

       

      Je suis ben conscient que tout ceci en même temps quand on est débutant est difficile à appréhender. Aussi, n’hésitez surtout pas à me solliciter par MP si vous souhaitez que je développe un peu plus et que je vous aide à construire cela.

       

      Bien cordialement

      Christophe

      Répondre

  • Bonjour,
    et d’abord merci pour cet article aussi clair et complet.

    J’ai donc réalisé cet ensemble avec un Mega, convertisseur,l9110S et le max471.

    Tout allait bien sauf que JMRI restait obstinément en OFF.
    En débranchant la borne AT du MAX471, miracle, JMRI passe au vert et les 2 leds en sortie du L9110S s’allument. Je contrôle la tension sur AT : j’ai les 15V de mon alim. (je suis sur un réseau en N), alors que je suppose que j’aurais dû avoir 0 sans loco sur la voie ?

    Du coup, j’ai essayé de programmer un décodeur avec AT débranché : impossible, JMRI indique une erreur car pas de retour du décodeur.
    Ni lecture ni écriture des CVs et impossible de faire fonctionner une loco.
    J’ai essayé sur deux décodeurs : un ancien Arnold et un neuf Lockpilot Micro V4.0 rien n’y fait...
    Je ne sais plus quoi faire à par changer mon MAX471 ?

    Je vous serais vivement reconnaissant si vous pouviez me sortir de cette impasse.
    Cordialement
    Christian

    Répondre

    • A priori, 15V sur AT indique un MAX471 défectueux et 15V sur A0 a toutes les chances de griller cette entrée prévue pour 5V ...
      Mais heureusement, si il n’y a pas eu de fumée, le MEGA a pu en réchapper et les autres entrées analogiques peuvent aussi ne pas avoir eu de mal. On peut alors en changer.

      Pour faire des tests en limitant les risques quand on supprime la mesure de courant (donc sans détection de c/c ni lecture de CV) je suggère d’utiliser une alimentation 12V 2A ou moins.
      Par ailleurs, un test avec le sketch original DCCpp_Uno configuré MEGA permet de valider le montage comme proposé sur le forum.

      Répondre

      • Merci beaucoup pour la rapidité de votre réponse.

        Effectivement, j’aurais dû tester le max471 avant de le brancher sur l’arduino... j’ai eu trop confiance dans ce circuit acheté neuf, mais tout ce qui vient de Chine n’est pas toujours de qualité :(

        Je vais faire un test complet des E/S de l’arduino avec un petit bout de programme et une led pour voir ce qui est abimé en attendant de recevoir mon nouveau max471

        Répondre

      • Bonjour,

        je reviens vers vous après avoir changé mon MAX471 et verifié que mon Mega n’a pas subi de dommages.

        J’ai d’ailleurs par sécurité changé mon Mega.

        Cette fois, tout fonctionne jusqu’au passage à ON de JMRI, le MAX471 fonctionne, mais voilà, impossible de programmer un décodeur :

        j’ai systématiquement l’erreur 308, : pas de réponse de la locomotive...

        Pas le moindre mouvement de la loco.

        J’ ai essayé avec 2 décodeurs, un LockPilot neuf et un ancien arnold. Rien à faire.

        Je sais que le Arnold fonctionne puisque j’ai pu le programmer avec une ancienne station Arnold.
        Si vous avez une idée , une suggestion de test ou de verification, ce sera avec grand plaisir, car là encore je me sent bien impuissant à part suspecter cette fois la carte L9110S.

        Cordialement

        Christian

        Répondre

  •  

    Ohhhh là ! C’est dangereux de débrancher AT de A0. Si en le débranchant les LEDs s’allument, c’est que branché, le MAX471 détecte une sur tension ou un court circuit. Peut-être le MAX471 est défectueux, il y a plusieurs posts sur le forum qui semblent mettre cela en évidence.

     

    Voir aussi ce fil récent qui semble traiter exactement du sujet : https://forum.locoduino.org/index.p...

     

    Mais pour la programmation des décodeurs, cela peut être lié aux décodeurs eux-mêmes. Cela a aussi fait l’objet de nombreux échanges. Il y a quelques marques ou modèles de décodeurs qui refusent obstinément de se laisser programmer ou lire avec DCC++. Pour les CVs qui peuvent se programmer sur la voie principale, en générale ça fonctionne mais pas en voie de programmation.

     

    Ce problème de programmation semble en voie de résolution avec le projet de centrale wifi DCC++ Can : https://forum.locoduino.org/index.p...

    Répondre

  • Bonjour,

    après de nombreux essais, je reste perplexe... impossible de faire fonctionner la station.

    J’arrive à lire et écrire "occasionnellement les CVs de mes décodeurs Arnold et LokPilot depuis la console de l’IDE à condition de placer l’ACK_SAMPLE_THRESHOLD très bas mais différent selon les décodeurs (valeur de 4 ou 5).

    fonctionnement très partiel avec JMRI en mode programmation, mais rien sur voie principale (Si, une fois avec un LokPilot la loco bruissait mais sans bouger.
    Alors qu’avec ma vieille centrale Arnold ; aucun problème de programmation et fonctionnement normal en voie principale même avec le LokPilot.

    Je n’y comprends rien...

    Je ne sais plus quoi faire.

    Répondre

  • Je pense qu’il vaudrait mieux centraliser la question du problème de lecture et programmation de CVs avec DCC++ sur le forum, la question n’étant pas liée à JMRI.

    Voir en ligne : Problème de lecture et programmation de CVs avec DCC++

    Répondre

  • Hello thank you for the amazing article. Im having a problem hopefully simple. when powered , the light turns on but is only putting out .5v. originally I accidently wired for the uno when i have the mega i at least was getting 7v then. I have an 18v pwr supply. why am i not getting any voltage out of the driver ? any ideas would be great thank you so much !

    Voir en ligne : Shaun Ferris

    Répondre

  • I think it would be better to post troubleshooting issues on the forum if the question is not related to JMRI. Post a photo of your assembly and check what is output to the serial link when powered. Please check DCC output in AC.

    Voir en ligne : Dépannage de Une station DCC complète, polyvalente et économique avec JMRI.

    Répondre

  • Bonjour,
    Tout d’abord un grand bravo pour cet article clair, net, précis et efficace . Et Merci, surtout .
    Il a excité ma curiosité , j’en ai donc fait le montage . Après quelques difficultés avec des MAX 471 défectueux ça marche nickel . J’utilise un arduino méga car je prévoyais une liaison Ethernet avec le PC, mais je me suis limité à une liaison USB . Par contre j’utilise comme ordinateur un Raspberry Pi 4 que j’ai découvert pour l’occasion avec Linux . . . Que du bonheur !
    Par contre, quand je dis nickel, . . . Pas tout à fait, mais le problème a déjà été cité : sur la voie de programmation (sortie 1 de la carte ) le régulateur fonctionne mais impossible de lire les CVs . Sur la voie principale, la lecture des CVs de fait sans problème (je n’ai pas essayé l’écriture ) , mais le régulateur ne fonctionne pas . . . Et j’ai essayé plusieurs décodeurs, notamment LENZ et ESU .
    En pratique, ça ne me dérange pas car je n’ai pas l’intention de programmer avec cette centrale . Mais intellectuellement . . . .
    Est-ce que un changement de carte de puissance changerait quelque chose ? ? ?

    Autre chose, Est-ce que cela fonctionnerait avec un arduino nano ? j’ai parcouru le forum, mais n’ai pas tout compris ! ! ! je suis encore assez novice en programmation arduino .

    Répondre

  • Bonsoir
    J’ai compris les grandes lignes de cette réalisation.

    Ma question concerne le décodeur à utiliser pour faire passer les informations DCC aux aiguillages via les rails.

    Mon réseau est composé de rails ROCO GEOLINE. Les aiguillages sont dotés d’un petit boitier sous le ballast, qui se termine par un micro-connecteur à 3 broches.

    Dois-je impérativement utiliser les décodeurs (assez chérots) de ROCO ou bien puis-je installer des décodeurs "maison" ou autres du commerce ?

    Merci pour la réponse et encore bravo pour l’article de Locoduino.

    Bien à vous.

    Gilles

    Répondre

  • Bonsoir,
    Cette question est un peu hors champs concernant cet article. Il y a plusieurs fils sur le forum qui traitent de ces questions en détail.
    Je peux cependant vous répondre que, oui, bien sûr, vous pouvez utiliser d’autres décodeurs "maison" ou du commerce.

    Répondre

  • Bonjour,

    Très belle réalisation.
    Personnellement, je n’utilise pas JMRI mais TrainCOntroller.
    Peux-tu me dire si l’interface ethernet de cette station est compatible avec des logiciels comme TrainController ou Itrain par exemple.

    Bonne continuation

    Alain

    Répondre

  • Bonjour,

    Et avec un seul Arduino Mega, est-il possible de commander à la fois plusieurs trains et plusieurs aiguillages ?

    Sinon, faut-il connecter plusieurs Arduino et dans ce cas, comment faire ?

    Merci pour la réponse.

    Bien à vous.

    Gilles

    Répondre

  • Bonjour,
    possible de commander à la fois plusieurs trains et plusieurs aiguillages ?
    Oui, c’est le principe même du DCC. Lisez les article sur DCC++
    Cordialement

    Répondre

  • Merci pour la réponse.
    Et désolé de vous importuner encore.
    J’ai lu les articles sur DCC++et sur Arduino.
    Le problème est de savoir comment mettre en oeuvre pratiquement la théorie, quand on n’a, comme moi, qu’une faible expérience informatique et une connaissance de base de l’électronique.
    L’article sur la "station DCC complète" parle de la programmation des trains avec JMRI. Après, il faut encore connecter et programmer les aiguillages. C’est là que ça se corse (en tout cas pour moi).
    Merci pour votre patience.
    Gilles

    Répondre

  • Ceci est la Table des Matières de l’aide pour le programme JMRI .

    Dans le programme, vous obtenez en sélectionnant « Aide », l’une des fenêtres des menus d’Aide. Vous trouverez la Table des Matières et l’Index sur le côté gauche de la fenêtre d’aide.

    Voir en ligne : JMRI Aide : Table des Matières

    Répondre

  • ... réalisation d’un décodeur d’ aiguillages à solénoïdes sur une base d’Arduino NANO ...en mode DCC pour huit aiguillages ...

    Voir en ligne : Décodeur pour aiguillage à solénoïdes sur Arduino

    Répondre

  • merci pour votre article ; je mesure pleinement tout le temps que vous y avez consacré.

    C’est clair et pratique ; grace à vous mon vieux Marklin de 50ans va bientôt sortir de ses caisses et retrouver une jeunesse (et moi aussi ).
    Les questions viendront certainement plus tard... :)

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 9 janvier 2021 00:14, par Frédérick Alessandria

    Bonjour et bonne année tout le monde.

    Je suis nouveau et novice dans le domaine ( même si mon métier est électricien !)

    Je viens de créer ma 1 ère centrale DCC grâce à votre excellent article. Merci beaucoup. La 1 ère mise sous tension c’est bien passée mais j’ai un petit problème avec le transfert du programme sur ma carte Arduino UNO. La compilation ne veut pas ce compléter et ce message d’erreur apparaît :

    CreateFile C :\Users\usager\AppData\Local\Temp\arduino_build_254233 : Le fichier spécifié est introuvable.

    Est ce que quelqu’un pourrait m’aider s’il vous plait ?

    Je profite de ce message pour remercier tous les protagonistes de ce site/blog. C’est grâce à vous que j’ai franchis le pas et je réalise un rêve en créant mon 1 er réseau (à l’échelle N). Merci du fond du cœur.
    Bonne soirée et au plaisir de vous lire du Québec !

    Répondre

  • Bonjour et bonne année également.
    Je ne sais pas si c’est le même problème que j’ai sur une de mes configuration PC mais cela a été résolu en demandant "Exécuter en tant qu’administrateur" pour lancer l’IDE bien que l’utilisateur soit déjà administrateur.
    Sinon, il faut peut-être regarder quel est le premier message d’erreur du compilateur.
    Cordialement

    Nota : pour un dépannage (ce n’est pas un complément à l’article) ouvrez un sujet dans le forum, rubrique "Présentez-vous" ou "Débuter". Vous pourrez poster photos et textes.

    Répondre

  • Bonjour,
    Suite à cet article, je me suis lancé à mon tour pour effectuer cette réalisation.
    Arduino Mega avec shield ethernet, alimentation 18V 10A, Max471 et Carte moteur L9110S.
    Malheureusement ça ne fonctionne pas, malgré apparemment avoir tout suivi à la lettre.
    Lors du test sur le moniteur série, l’envoi de <1> me retourne avec un bref clignotement des LEDs.
    Bien sûr, en ethernet avec JMRI, le bouton reste sur STOP. Avez-vous une idée de ce qui peut en être la cause ?
    Peut-être un problème avec le MAX 471 ?

    Répondre

  • partie tronquée : L’envoi de <1> me retourne p1 p2 avec un bref clignotement des LEDs.

    Répondre

  •  

    Oui ça ressemblerait bien à cela si les LEDs s’allument un instant et s’éteignent, c’est le signe que le logiciel détecte une sur-consommation ou un court circuit. C’est sans doute que le MAX471 envoie des informations erronées.

     

    On a souvent signalé des problèmes depuis que les MAX471 "officiels" ne sont lus produits et que des clones "pourris" circulent.

     

    Il faut faire le tour du forum pour voir les propositions alternatives au MAX471.

     

    Il faut voir en particulier ce fil à partir d’ici : https://forum.locoduino.org/index.p...

    Répondre

  • Bonjour,
    de mes différents essais, je retiendrais le petit frère du MAX471, le MAX472 qui a besoin d’une résistance externe, mais qui est fonctionnellement identique.
    Je ne suis pas parvenu à lire les CV avec l’ACS712.

    Voir en ligne : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072

    Répondre

  • Bonjour,
    Merci pour cet excellent article, et pour tous les autres sur ce site.
    Quelques suggestions quant à l’utilisation de boosters permettant de commander de forts courants : il est possible de créer, (afin de protéger le matériel) à la sortie d’un tel booster, des sections limitées en courant par ce genre de composants (PPTC alias Polyswitch alias Polyfuse, etc) :
    https://fr.wikipedia.org/wiki/Fusib...
    Ces composants sont bon marché

    Par ailleurs, les modules à base de BTS7960, peut-être victimes de leur succès très relatif, se trouvent sur Ali au prix de 2,14€ + 1,51€ de port : une aubaine.
    De quoi construire de belles et puissantes "Command Stations" à prix modique !

    Répondre

  • Bonjour,
    l’utilisation des modules à BTS7960 a déjà eu les honneurs des colonnes de Locoduino (en particulier depuis l’article de Dave Bodnar de 2016).
    Le peu de diffusion est probablement du au fait qu’avec 2 ou 3 ampères (L298, L6203, LMD18200) on couvre l’essentiel des besoins avec un pont intégré.
    LaBox utilise un L6203 donné pour 3A mais peut également piloter un module à BTS7960.

    Voir en ligne : projet centrale "LaBox" wifi DCC++ Can

    Répondre

  • Limiter la casse avec le BTS7960 28 janvier 2021 03:19, par Kicadder

    L’utilisation de ce module n’est certes pas une nouveauté, mais face à ce prix, on pourrait souhaiter l’utiliser en HO ou N. Le problème est alors d’éviter les risques liés à la forte puissance susceptible d’être délivrée par ce module. D’où les fusibles réarmables permettant d’éliminer ce risque, par exemple, un polyfuse de 3A pour un petit/moyen réseau, ou plusieurs polyfuse de 3A alimentant plusieurs sections d’un grand réseau.En cas d’anomalie/court-circuit, le polyfuse stoppe le courant, empêchant les dégâts sur le matériel. Une consommation de 3A est le signe manifeste d’un problème, et là, on coupe tout !

    Répondre

    • Les polyfuses et autres CTP ont déjà été évoqués sur le forum.
      Mais il faut bien lire la feuille de spécification : ça ne coupe pas le courant, ça le limite par augmentation de la résistance tant que le court-circuit dure.
      Donc échauffement du Polyfuse (typ. 120°C) et du point de court-circuit (Aïe, mes cœurs de pointe et mes bandages).
      C’est beaucoup plus sain de compter sur une protection électronique. Et de fait le module à BTS7960 dispose d’un Isense qu’on peut exploiter.

      Voir en ligne : Polyfuses

      Répondre

  • Bonjour,

    Je viens de tester avec succès le chargement de la bibliothèque DCC EX (https://dcc-ex.com/) sur JMRI et Rocrail. Il s’agit visiblement d’améliorer DCC++, tout en restant compatible. Il est fournit un installeur qui permet de charger facilement CommandSation dans l’arduino, pour peu qu’un shield moteur officiel soit utilisé.

    Comme cela n’est pas mon cas, il faut faire comme ceci pour intégrer le L9110S Dual Motor Driver :

    • Modification du nom du fichier téléchargé config.example.h en config.h .
    • Édition dans l’IDE Arduino du fichier config.h :
      Remplacement du terme #define MOTOR_SHIELD_TYPE STANDARD_MOTOR_SHIELD par #define MOTOR_SHIELD_TYPE L9110S_DUAL_MOTOR_DRIVER
      Edition des options de configuration, type carte Ethernet, paramètres wifi...
    • Edition du fichier MotorDrivers_h :
      Juste avant le terme final #endif, ajouter le bloc suivant :
      // L9110S Dual Motor Driver
      #define L9110S_DUAL_MOTOR_DRIVER F("L9110S_DUAL_MOTOR_DRIVER"), \
      new MotorDriver(3, 12, UNUSED_PIN, UNUSED_PIN, A0, 4.89, 2000, UNUSED_PIN), \
      new MotorDriver(2, 11, UNUSED_PIN, UNUSED_PIN, A0, 4.89, 2000, UNUSED_PIN)

    Le terme 4.89 correspond facteur de conversion du MAX 471, (1V/A), 2000, le courant maximal de la voie en mA (2A max dans mon cas). C’est indiqué à cette adresse
    Je ne pense pas avoir fait d’erreur dans ma config, mais je n’en suis pas tout à fait certain.

    DCC EX est capable de gérer un serveur WiThrottle indépendant, et visiblement d’autres choses que je n’utilise pas. Le cut-out Railcom est pris en charge en bêta, tout ça semble prometteur.

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 27 mars 2021 00:40, par BOYER Jean-pierre

    Bonjour à tous,
    Je suis nouveau dans le monde du modélisme ferroviaire et intéressé par Arduino.
    J’ai réalisé la centrale DCC complète décrite dans l’article de BobbyAndCo en suivant les instructions, néanmoins le type de carte est bien mentionné (Arduino méga 2560), mais je n’ai pas de port Ethernet.

    Egalement au téléversement de "DCCpp_uno" des messages d’erreurs s’affichent :

    • avrdude : stk500v2_command():unknown status oxo1
    • avrdude : stk500v2_disable():failed to leave programming mode
    • une erreur est parvenue lors du téléversement du croquis.
      Je n’ai également aucune inscription dans l’écran moniteur, malgré une liaison Ethernet.
    • Configuration employé : Windows 10 Pro
    • Type de système : système d’exploitation 64 bit, processeur X64
    • installation de Java Runtime Environnement(Java 8 Update 285 (64bit)
    • installation IDE Arduino 1.8.13 (Window store 1.8.42.0)
    • Matériels utilisés pour la centrale :
    • 1 alimentation AC110-240V(1,5A) DC 19V (3,42A)
    • 1-DC-DC ajustable régulateur de tension 4.0V-38V à 1,25V-36V
    • 1 carte MAX471
    • 1 carte méga 2560 avec microprocesseur ATMEL2560 (clone) et son shield Ethernet avec interface HR911105A (clone)
    • 1 carte moteur L9110S Dual Motor Driver

    Merci de bien vouloir m’apporter une solution à mes problèmes car je n’ose continuer la mise en place de DCC++

    Répondre

  • Bonjour,

     

    Premièrement, je ne vois pas pourquoi on parle d’Ethernet ici. Le téléversement du programme sur le MEGA est à faire de manière tout à fait classique au travers du port dérie avec un câble USB. Pouvez-vous commencer par là ?

     

    Ensuite, si le programme ne veut pas se télécharger, il faut essayer avec un basic, le programme Blink des exemple Arduino. Cela aidera à comprendre si c’est un problème de hard ou de soft.

     

    Essayez cela Jean-Pierre et revenez vers nous avec les résutats.

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 27 mars 2021 18:19, par BOYER Jean-pierre

    Bonjour,
    Je reviens vers vous pour répondre à vos questions.

    • J’ai retiré le shield Ethernet de ma carte méga.
    • Ensuite j’ai téléversé le programme "Blink" par le port série par l’intermédiaire du cable USB.

    Résultat, toujours les deux messages d’erreurs.

    Nota : Est-ce normal que 2 leds s’allument sur la carte méga (clone)

    • la led "on" s’allume feu fixe
    • la led "L" clignote rapidement.

    Répondre


  • Votre problème ne concrene pas ce dont traite cet article. Il faut ouvrir un fil sur le forum avec l’intitulé du type : Problème de téléchargement d’un sketch.

     

    Car c’est bien cela votre problème. Pour moi, la carte n’est pas reconnue. Soit le bon driver n’est pas installé, soit la carte est grillée ça arrive.

     

    Une fois ce fil ouvert, la communauté vous répondra sur cette problèmatique précise.

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 29 mars 2021 00:01, par BOYER Jean-pierre

    Bonsoir,

    Je répond à vos solutions. Après plusieurs manipulations mon IDE fonctionne sans message d’erreur.Il fallait que j’installe le pilote CH340 et tout est rentrer dans l’ordre.
    Cependant,comme j’ai une liaison Ethernet, sur l’écran du moniteur, au bout de la ligne est mentionné à la place de l’adresse IP.
    Mon shield Ethernet serait-il HS ?

    Merci de bien vouloir me donner une explication.
    Cordialement. Jean-pierre.

    Merci de l’expliquer

    Répondre

  • Bonjour et merci pour cet excellent article qui m’a permis de me lancer !

    Mais mes premiers pas sont délicats avec ce montage... Après des premières lecture de CV réussies et les premières utilisations, tout allait bien. Je crois que depuis un court-circuit malencontreux par déraillement, le MAX471 n’a pas trop apprécier on dirait... Je dis ça car je crois que c’est depuis cet événement que la lecture des CV ne fonctionnent plus du tout (je n’ai pas fait le lien tout de suite). Cela dit, il a tout de même dû jouer son rôle (paix à son âme) car les locos fonctionnent toujours très bien et la station aussi. Je peux toujours programmer mes CV, juste que je ne peux plus les lire sur la voie de programmation.

    Comment pourrais-je confirmer que c’est à cause du MAX471 que la lecture de CV ne fonctionne plus ? Un test de ce capteur est envisageable ? De toute façon, je vais m’en fournir un autre mais j’aimerais savoir pour l’avenir car si un petit déraillement crame à chaque fois ce composant, c’est un peu galère...

    Merci pour votre aide ! Et chapeau pour ce travail ;)

    Répondre

    • Bonjour, il y a certainement moyen de griller un MAX471 par exemple en connectant le RS+ ou le RS- sur le Vout, c’est moins probable de griller la résistance de 35 mohms lors d’un court circuit. Surtout si c’est le MAX471 qui a éliminé le court-circuit.
      Pour vérifier, il faut regarder ce qu’il y a sur le Vout qui doit être de 1V par A qui passe entre Rs+ et Rs-.

      Répondre

      • Bon j’ai réussi à constater que l’interrogation du courant (commande ) me donne le même résultat avec une locomotive à l’arrêt et avec la même locomotive à pleine vitesse : entre <a1> et <a3>, rien de plus...

        Je crois que le verdict est sans appel, le max471 a cramé... Qu’en pensez-vous ?
        Alors pour préciser un peu les choses, j’avais mis un max471 sur petit PCB, comme celui sur les photos de ce magnifique tuto. Le branchement est très soigné, avec aucune chance de venir toucher les pins du max471. Donc je ne comprends toujours pas très bien comment les choses ont pu se produire... Mais ce qui m’embête le plus, c’est que mon circuit n’est plus protégé du coup !

        Ca sent un nouvel achat sur le net tout ça :)

        Répondre

        • j’avais mis un max471 sur petit PCB ?
          oui mais il faut aussi une 2 Kohms entre Vout et GND pour avoir 1V par ampère en sortie du MAX471.
          Autrement dit, il faut ensuite mesurer la tension entre Vout et GND et voir si elle bouge quand on fait passer du courant entre Rs+ et Rs-.
          100 mA => 0,1V

          Répondre

  • Bonjour,
    Surement une question idiote mais tant pis...
    je suis connecté par port USB, et windows 7
    j’ai fais un premier montage avec un clone Arduino de chez Velleman et la fameuse LS9110S, connecté avec soin l’ensemble des éléments, j’ai bien les leds qui s’allument lorsque je met <1> sur le moniteur arduino et pareil lorsque je met "on" le courant du coté de JMRI, mais voilà ça s’arrête là impossible de trouver un seul décodeur sur JMRI avec du Lenz ou du ESU standard ou locsound4
    la tension envoyée sur le cicuit est de qq mmV environ 25 à 40 alors qu’il me semble qu’il faudrait avoir 18, bon je ne suis pas programmeur ni électronicien, après de multiples essais puis des test basiques du clone Arduino et de la LS9110S qui m’ont démontré qu’il n’y avait pas de casse j’ai acheté une vrai arduino avec le shield arduino refait les branchements comme définis dans vos autres chapitres et... j’en suis toujours au même point, alors la question que je me pose vient essentiellement de l’alimentation des voies, sachant que pour le moment je n’ai qu’une voie de programmation, et qu’elle n’est pas alimenté sauf par la centrale, si par hasard vous avez un idée... merci de pour votre retour, et pour ce que vous faites car malgré mes échecs (que j’espère temporaire), ce que vous faites est absolument génial !!!
    Cordialement Christian

    Voir en ligne : https://www.locoduino.org/spip.php?...

    Répondre

  • Tout laisse à penser que c’est le MAX471 qui est en cause. Il est abondamment question de ce problème sur le forum depuis que la version officielle de ce composant n’est plus fabriquée et que des composants défectueux toujours nommés MAX471 sont distribués sur les sites comme Ebay, Bangood, Ali etc…

    Nous travaillons à trouver une solution de remplacement qui soient bon marché mais allez voir plus haut sur ce fil et sur le forum :

    https://forum.locoduino.org/index.php?topic=943.msg9783#msg9783

    https://forum.locoduino.org/index.php?topic=983.msg10292#msg10292

    https://forum.locoduino.org/index.php?topic=1038.msg10994#msg10994

    Répondre

  • Bonjour,

    Je viens de recevoir ACS712 j’en ai un 5A et un 20A, mais la question que j’ai après avoir lu les différentes intervention sur blog est celle-ci :
    on alimente la L9110S avec la connexion de 5V de l’arduino, a priori il faut alimenter aussi l’ACS712 avec la même connexion doit-on "démultiplier" cette connexion de 5V de l’arduino ou il y a quelque chose que je ne comprend pas ?

    j’apprends... j’apprends mais je sui loin d’avoir encore tout compris

    merci de votre retour

    Pour info je suis sur la région Lyonnaise alors s’il y en a un qui peut un peu m’aider, je suis en cours de montage sur mon circuit, pour l’instant je me limite la digitalisation de vielles locos et la mise en place de leurs adresses de décodeur.

    Cordialement Christian

    Répondre

  • Il suffit d’alimenter le VCC avec le 5V de l’Arduino aussi, en bouclant les masses (GND)
    Mais le problème est que la sensibilité est 10 fois moindre : 100mV/A au lieu de 1V/A et l’offset de 2,5V au lieu de 0.
    Je n’ai pas vu de conclusion positive à l’utilisation de ce module (en dehors d’un montage électronique complémentaire)
    https://forum.locoduino.org/index.p...
    Mais pour qu’on puisse vous aider, inscrivez-vous et postez sur le forum.

    Voir en ligne : Re : Une station DCC complète, polyvalente et économique avec JMRI

    Répondre

  • Bonjour,
    Ok c’est noté je file sur le forum

    CDT
    Christian

    Répondre

  • Bonjour,
    un grand merci pour ce tuto très détaillé.
    Pour ma part, je réalise des maquettes HO via impression 3D et je me suis lancé récemment sur la construction de tramway imprimé en 3D que je souhaite motoriser et contrôler.
    A ce titre, je me demandais ce que vous conseilleriez comme platine embarquée compatible avec cette centrale pour équiper mes petites créations ?
    J’ai peut-être mal cherché mais j’ai trouvé tout plein de pages concernant le décodage DCC dans des accessoires mais pas dans les locos analogiques...
    Merci par avance

    Répondre

  • En complément, un ZIMO MX600 vous parait-il une bonne base de départ ?

    Répondre

  • Bonjour,

    Désolé, je ne découvre vos deux posts que maintenant et par hasard. Tous les décodeurs conviennent puisque c’est l’intérêt du DCC que d’avoir créé un standard.

    Seule la qualité intrinsèque d’un décodeur (d’une marque) par rapport à un autre peut jouer et son prix.

    Et donc le ZIMO MX600 est un bon choix !

    Répondre

  • Typo ? 22 mai 2021 22:44, par JacquesN

    Bonsoir,
    tout d’abord merci ! Eh oui :-)

    Bon, je me demande s’il n’y a pas une typo.

    Le tableau concernant Mega indique :
    PWM1 -> 3
    DIR1 -> 12
    PWM2 -> 11
    DIR2 -> 2

    et l’extrait à intégrer dans DCCpp_Uno.h indique :

    SIGNAL MAIN -> 3 ... OK (PWM1)
    SIGNAL PROD -> 11 ... OK (PWM2)
    DIR A -> 12 ... OK (DIR1)
    DIR B -> 13 ... AIE j’aurais dit 2 (DIR2)

    Votre avis ?

    Répondre

  • bobyAndCo donnera un avis autorisé sur son programme mais auparavant j’attire votre attention sur le fait que la carte n’a pas d’impact sur les paramètres dépendant du module moteur :

    #if MOTOR_SHIELD_TYPE == 0
    
      #define MOTOR_SHIELD_NAME "ARDUINO MOTOR SHIELD"
    
      #define SIGNAL_ENABLE_PIN_MAIN 3
      #define SIGNAL_ENABLE_PIN_PROG 11
    
      #define CURRENT_MONITOR_PIN_MAIN A0
      #define CURRENT_MONITOR_PIN_PROG A1
    
      #define DIRECTION_MOTOR_CHANNEL_PIN_A 12
      #define DIRECTION_MOTOR_CHANNEL_PIN_B 13

    Répondre

    • Bonsoir,

      je parlais de ce code :

      #elif MOTOR_SHIELD_TYPE == 2

      #define MOTOR_SHIELD_NAME "L9110S Dual Motor Driver"

      #define SIGNAL_ENABLE_PIN_MAIN 3
      #define SIGNAL_ENABLE_PIN_PROG 11

      #define CURRENT_MONITOR_PIN_MAIN A0
      #define CURRENT_MONITOR_PIN_PROG A0

      #define DIRECTION_MOTOR_CHANNEL_PIN_A 12
      #define DIRECTION_MOTOR_CHANNEL_PIN_B 13

      Répondre

  • Ce dont vous parlez ici ne concerne que les shields !!! Branchement direct des pins sur l’Arduino. Or cette carte n’est pas un shield. Cette partie de code qui se trouve dans le fichier DCCpp_Uno.h ne concerne donc pas cette carte. CQFD

    Répondre

    • Bonsoir,
      merci pour la réponse.
      Je vais relire tout cela à tête reposée :-)

      Répondre

      • Re !

        bon, j’avais bien un soucis de broches entre la configuration dans le code et le cablage.

        Ensuite j’ai été confronté au soucis que d’autres ont eu avec le MAX471. J’envoyais <1> et je recevais « P1 P2 » signe d’une pseudo détection de court-circuit
        Le fil http://forum.locoduino.org/index.ph... m’a été d’une grande utilité.

        En regardant de plus prés le repo git, je me suis rendu compte que DCC++ n’est plus maintenu depuis 5 ans. Donc passage sous DCC++ EX

        Et là magique, le MAX471 ne faisait plus le malin, le brochage impec

        Au final, comme j’utilise du laisdcc avec une carte testeur, je me suis rendu compte que j’avais mal dénudé certains fils

        Voilà maintenant je joue avec mon téléphone et c’est fun

        Si mon retour peut aider

        PS : un TRES grand MERCI au site et à l’auteur sans lequel je ne me serai jamais lancé
        PS++ : je suis dans l’informatique, le dév, les IOT, l’électronique et la 3D. Si vous pensez que je puisse aider, ce sera avec plaisir !

        Répondre

        • Bonjour Jacques,
          je suis tombé sur votre message. Pour une carte L9110S, on m’a aussi indiqué que les paramètres du shield moteur dans DCCpp_Uno.h ne servent à rien. Dans votre message, vous indiquez « bon, j’avais bien un soucis de broches entre la configuration dans le code et le cablage. ». Avez-vous modifié le code de ce fichier, ou avez-vous laissé les valeurs 12 et 13 indiquées ?
          Merci pour votre aide.

          Répondre

  • Je me permets de venir vers vous ce jour car je rencontre une problématique de lecture des CV de mes décodeur que ça soit sur la voie de programmation ou sur la voie principal de traction, j’ai construit ma centrale DCC à l’aide de ce tutoriel qui a été relativement intéressant et très bien expliqué j’utilise bien entendu le logiciel JMRI sous Windows

    Tout fonctionne très bien pour ma part sur cette station DCC cependant j’ai une seule petite problématique, c’est la lecture des CV ainsi que l’identification du modèle du décodeur installé dans mes machines, pourtant j’arrive bien à écrire les valeurs dans les CV, je suis donc obligé de sélectionner manuellement mon type et modèle de décodeur et lorsque je lance une lecture de tous les CV la valeur 255 remonte dans chaque champ et la lecture entière de la machine prend entre 15 et 20 minutes

    J’ai malheureusement chercher sur internet d’où pouvais venir cela sans réponse à ce jour je me permets de vous écrire ce message en espérant que quelqu’un ai peut-être une lumière à m’apporter sur ce sujet

    Merci d’avance

    Répondre

  • Bonjour,
    vous avez probablement un problème avec la mesure de courant. (typ. le MAX471) Voyez ce qui a déjà été publié sur le forum à ce sujet. (même titre)

    Répondre

  • Question de néophyte 25 mai 2021 18:23, par JacquesN

    Bonsoir,
    j’ai voulu faire le malin et avoir un cable tout propre. Pour cela j’ai changé les connectiques liées à la carte L9110S pour les avoir toutes en groupe. J’ai utilisé les pins 8, 9, 10, 11 de l’arduino en faisant bien sûr bien gaffe à modifier les définitions et à recharger le programme dans l’arduino

    bien sûr ça ne fonctionne pas :-)

    Est-ce que quelqu’un pourrait m’expliquer le choix des pins sur l’arduino, elles me semblent toutes PWM, j’ai du mal à comprendre

    Merci pour votre éclairage

    Bonne soirée

    Répondre

    • Question de néophyte 25 mai 2021 19:30, par msport

      Bonsoir, le changement des pins des stations DCC se heurte aux timers qui leur sont affectés. Le sujet a été évoqué par ailleurs. Peut être l’article sur ceux-ci vous apportera un peu d’éclairage.

      Répondre

  • Bonjour,

    je me rends compte que ce tuto est même une référence outre-atlantique (ainsi que le site d’ailleurs). Bravo !
    Cependant, en quelques jours de présence sur d’autres pages/forum/discord je me rends compte que tout le monde se plante dans le problème du MAX471 obsolète, moi y compris.
    Que penseriez-vous surtout l’auteur de modifier cette page pour y apporter un petit avertissement pour les néophytes ?
    Au final, je pense que pour un débutant, une carte moteur Arduino pourrait être suffisant
    Merci pour tout !

    Répondre

    • Bonjour,

      effectivement Locoduino est un site très riche, tellement que de faire un choix qui correspond à ses attentes, voire à ses capacités est difficile.
      Tout le monde ne commence pas par "Comment réussir son projet Arduino", dommage. https://www.locoduino.org/spip.php?...
      La suggestion de démarrer par une BaseStation constituée d’un Uno, d’un shield moteur et d’une alimentation 12V sans aucune modification ni soudure à été faite à maintes reprises sur le forum.
      Récemment on a vu le module GY-169 qui pourrait remplacer celui à MAX471 avec le même rapport 1V/A. En attente de validation, à rechercher sur eBay.

      Répondre

      • Merci,
        un petit nouveau ce GY-169 ? Vous êtes sur le test ? Je ne le vois référencé nul part ailleurs sur le site... je vais patienter !

        Vous avez raison concernant les débutants. Moi même je n’en suis pas un et quand je vois la richesse de détails de ce tutos, je me suis dit, tient on va faire ça avec les gosses en mode pas à pas sans non plus chercher à valider les étapes décrites... ça rend le sujet plus intéressant :-)

        Répondre

      • Bonsoir.
        je suis débutant dans ce domaine et après avoir galéré en utilisant 2 max471 qui se sont révélés défectueux, essayé un ACS712 avec la bibliothèque DCCtoolkit et réussi à lire les CV mais pas avec JMRI, j’ai reçu et essayé un INA169 (GY-169) commandé en chine via EBAY.

        Et enfin cela fonctionne à merveille avec JMRI, y compris la lecture des CV. Mes deux décodeurs Lokpilot V5 DCC et LaisDCC sont reconnus du premier coup.

        Je vais pouvoir enfin avancer !

        Merci pour ce super site.

        Répondre

  • Merci pour ce retour d’expérience positif qui laisse espérer d’avoir trouvé la solution pour le remplacement du MAX471.

    Répondre

    • Salut,
      ça c’est cool !

      Et as-tu fait des modifs sur le circuit ou le code ?

      Répondre

    • Dual Motor Driver endommagé 14 août 2021 19:59, par ChrisA

      Bonjour,
      J’ai réalisé la centrale DCC complète avec une alim 10A, un Arduino Mega, Dual Motor Driver L9110 à base de IRF3205 et un Max 471. J’ai voulu tester le court-circuit et c’est ma carte booster L9110 qui a dégagé car plus rien ne s’allume. J’ai pensé que mon Max 471 était défectueux mais comme je voulais utiliser mon booster pour environ 8A max, jai racheté une carte Driver et une carte PSX-2 (deux DCC circuit breakers). Ainsi, j’aurais été protégé sur chacun de mes tronçons en aval de chaque PSX. En testant le court-circuit sur chacune de ces 2 sorties, la première sortie a protégé comme attendu. En testant le court-circuit sur la sortie du 2ème PSX, c’est encore le booster qui a dégagé alors que le réglage des PSX était par défaut à 4,83A. Avez-vous une idée de pourquoi c’est le booster qui saute alors qu’il est censé tenir 10A ? Et quel serait le composant du L9110 qui serait endommagé ?
      Merci d’avance.

      Répondre

  • Une précision : vous avez alimenté le circuit en 5 V par le VCC comme indiqué dans la spécification ?

    Répondre

  • Bonjour,

    il semble que les concepteurs de Traincontroller ne se sont pas intéressés au DIY, mais je me trompe peut-être.
    On lit le texte plus bas dans le UsersGuide.pdf.

    Est-ce que "and others" concerne la BaseStation DCC++ ?
    Si vous disposez du logiciel, consultez le Help comme suggéré.

    Systèmes numériques et de contrôle pris en charge
    Le logiciel prend en charge les principaux systèmes numériques et de contrôle qui fournissent une interface informatique. Entre autres, les systèmes suivants sont pris en charge (la liste n’est pas exhaustive) :
    • Digitrax LocoNet
    • Lenz Digital Plus
    • North Coast Engineering Master Series (NCE)
    • Roco Z21, z21, Multizentrale Pro, Interface 10785
    • Maerklin Central Station 1, 2 and 3
    • Maerklin Digital
    • ESU ECoS and Navigator
    • CTI
    • RCI
    • Trix Selectrix
    • Müt Digirail
    • Rautenhaus Digital
    • Uhlenbrock Intellibox, Intellibox 2, Intellibox Basic and IB-COM
    • Tams Master Control
    • Fleischmann Z1, z21, Twin Center, Multizentrale Pro, Profi-Boss
    • Littfinski HSI-88
    • Zimo
    • Doehler & Haas / MTTM Future Central Control
    • and others
    Pour la liste complète ainsi que des informations détaillées sur la gamme de prise en charge de certains systèmes, reportez-vous au menu Aide de TrainController™.

    On redira ici que la première vocation de Locoduino n’est pas d’assurer le support des produits du commerce. Voyez plutôt JMRI, CDMrail ou autres déjà signalés dans ces colonnes.

    Cordialement

    Répondre

  • Merci même si la réponse est un peu... séche mais si rrtc ne supporte pas dcc++ cela pourrait intéresser plus d’une personne d’avoir un interface fonctionnel et pas seulement avec Jmri par ex de développer un interface xpressnet ou autre déjà reconnu de rrtc

    Répondre

    • Locoduino est un site contributif. Vous êtes le bienvenu pour proposer toute recherche ou développement incluant un Arduino.
      Mais si un fabricant ne souhaite pas documenter ses interfaces qui ont été développées avec d’autres fabricants, on ne va pas loin.
      Vous avez ouvert une question, apportez la réponse puisque vous avez probablement accès au Help d’un Traincontroller.
      Mais sinon, si ce produit vous intéresse, documentez vous via le site du fabricant et du forum qui lui est consacré. Vous craignez des réponses abruptes ?

      Répondre

      • Je crois que je m’explique mal, ma demande ne concerne pas un quelconque support sur rrtc bien sur que Freiwald ne s’intéresse pas au diy. Donc c’est bien l’inverse qu’il faut faire.
        Ma question concerne bien dcc++, quelqu’un a t il déjà développé une interface pc compatible avec les grands logiciels de gestion de réseaux i.e rrtc windigipet ... je trouve dommage de développer un tel système que dcc++ en mettant une interface pc compatible avec presque rien, regardez le site de Paco une simple centrale avec un pic est compatible avec le bus lenz.(dont la spec est dispo)
        Donc si la réponse à ma question est non, je sais ce quil me reste à faire et comme vous dites (si gentiment) j’apporterai ma contribution ...mais je doute que quelqu’un ne soit pas déjà entrain de le faire

        Répondre

        • Vous pouvez voir ce qui a déjà été réalisé en qui concerne XpressNet sur ce site en tapant "xpressnet" dans la fenêtre de recherche en haut à droite à l’accueil. (idem sur le forum)
          Mais le spécialiste du DIY lié à LENZ (et d’autres) est allemand, Philipp Gahtow. Faire une recherche Google avec.
          Et Rudy Boer s’est intéressé à TrainController :

          Voir en ligne : Rudy Boer

          Répondre

  • Je crois mal m’expliquer, ma demande n’est en aucun cas de vous demander du support sur rrtc, bien sur que freiwald ne supporte pas le diy.
    Donc faisons le contraire.
    Ma question concerne bien dcc++, quelqu’un s’est il penché sur la question de rendre dcc++ interfacable avec les grands logiciels de gestion de reseau i.e. rrtc windigpet... sinon j’essaierai d’apporter comme vous le dites si gentiment ma contribution ?
    Sinon les bus de certains fabricants comme par ex Lenz sont parfaitement documentés.

    Répondre

  • Pour la retro, le S88 est couvert par plusieurs articles et s’interface avec RRTC. C’est déjà un bon début.
    Bienvenue pour d’autres contributions notamment pour piloter DCC++ par RRTC.

    Répondre

    • En fait pour qui sait programmer en C, les modifs a faire pour interfacer RRTC sont assez simple.
      Comme vous l’avez suggéré il suffit d’utiliser le protocole texte de la SPROG, RRTC V8 ou V9 envoie les commandes en utilisant uniquement "+" et "-" qui correspondent aux commandes "1" et "0" de DCC++ et avec la commande "O" RRTC envoie directement les packets DCC, cette commande après une légère mise en forme est déjà implémentée dans SerialCommand.cpp de DCC++ c’est la commande "M", donc quelques modifs mineures de SerialCommand.cpp et ca roule.

      Maintenant je me garderai bien de diffuser une telle modification, je ne pense que cela plaise au fabricant de la SPROG. Mais pour qui veut le faire pour ses besoins perso.... On peut également utiliser le protocole de EasyDCC aussi pris en charge par RRTC.

      Répondre

  • Pas de communication avec décodeur machine 17 octobre 2021 11:45, par Jean-Luc

    Bonjour

    Merci pour cet article très précis et clair pour un débutant en digital.
    J’ai donc suivi à la lettre la contruction de cette centrale.
    Tout fonctionne très bien jusqu’à ce que j’appuye sur la mise sous tension du réseau dans JMRI.
    Mes led de sortie sont allumées (voie programmation et voie principale)
    Avec 15 V sortie transfo, j’ai 10 V sur les voies. Avec 18 v, j’ai 12 v. Je suis en N. Quelle est la tension nécessaire ?

    Malheureusement, je n’arrive pas à communiquer avec le décodeur de mes machines.
    J’ai bien coché "Programmation sur voie de programmation" mais le bouton "Programme" reste grisé.

    Lorsque je clique sur "+ Nouvelle Loco", une fenêtre s’ouvre.
    Je clique sur "Lire le type depuis le décodeur". Après un temps long, j’ai le message en bas de la fenêtre "Found mfg 255 version 255 ; no such manufacturer defined".

    Je ne connais pas le décodeur. J’ai acheté la loc déjà digitalisée.

    J’ai lu sur le forum que le programme DCC++ n’est plus à jour. J’ai la version 2016. BaseStation-Master
    Je ne trouve pas le programme DCCpp.
    Auriez-vous un lien de téléchargement ?

    Merci pour votre aide pour finir de faire fonctionner la centrale.

    Répondre

    • Bonjour,
      regardez le fil ci-dessous sur le forum pour voir différentes réponses aux problèmes rencontrés par ceux qui l’ont réalisé. (et donner des détails sur votre réalisation).
      La version de la BaseStation d’origine convient parfaitement pour piloter cette centrale.
      Pour faire la part entre DCC++ et JMRI, utilisez les commandes directement depuis le serial monitor.
      Commands BaseStation

      Voir en ligne : Sur le forum :

      Répondre

  • Bonjour

    Je pense que tu trouveras une avancée dans ce sujet : https://forum.locoduino.org/index.p...

    Si ton problème de lecture des décodeurs persiste, il se pourrait que ce soit le max471 qui est défectueux.

    Pour tes problèmes de tensions, j’ai suivi l’article. Mon matériel en N fonctionne tres correctement avec DCCpp, qui n’est pas un programme, mais une bibliothèque.

    Répondre

  • bonjour
    je viens vers vous car je tourne en rond. j’ai monter la station et utiliser (parfait) depuis il y a eu des mise ajour jmri java windows 10
    et depuis impossible de controler programmer les loco impossible de lancer panelpro et decodeurpro en même temp erreur port c’ est soit l(un ou l’autre
    donc ma question quel version java et quel version jmri faut il installer
    par avance merci

    Répondre

    • bonjour,

      il faut voir sur le forum de JMRI si il y a un problème avec les nouvelles versions, ce qui me semble peu probable.
      Faites le ménage des anciennes versions et regardez si il n’y a pas d’autres applications qui interfèreraient.

      En désespoir de cause, repartez de zéro.

      Cordialement

      Répondre

  • Bonjour à tous. Je suis nouveau sur l’utilisation d’Arduino et de Locoduino. J’essaye de me lancer dans le numérique. Toutes mes félicitations pour la présentation de cette station. Je viens de la réaliser avec un Arduino Mega et cela semble bien fonctionner une fois le sketch DCC++ transféré, les LED fonctionnent bien lorsqu’on envoie la commande . Je travaille avec le port USB en COM6 sur mon PC (windows). Ensuite Panelpro et Décoderpro ont été installés sans problème. Par contre, quand je configure Panelpro en spécifiant le port COM6, j’obtiens un message d’erreur me disant que ce port est déjà utilisé. (Unable to create connection, Serial Port COM6 in use). Et donc, je ne peux pas aller plus loin .... Quelqu’un pourrait-il m’aider ? Je ne vois pas où ça coince. Un grand merci par avance.

    Répondre

  • Un IDE Arduino ouvert en plus ?

    Répondre

  • Bonsoir,

    Par conviction et après plusieurs produits réalisés sur mon réseau HO (Cde d’aiguillages, PN etc...), Je souhaite tester le DCC et réaliser un test grandeur nature. J’ai tenté ce jour d’ingurgiter les points essentiels de cette page. Je la relirai bien sûr plus en détail mais déjà une question se pose.
    J’ai acquis des commandes moteurs à base de L298. J’ai lu dans les lignes qu’il fallait déclarer dans la bibliothèque la carte utilisée (ici vous parlez de la 9110).
    Est-ce alors une obligation ?
    Si oui, quel est sont intérêt ?
    Que cela change-t-il si je ne le fais pas ?
    Y a-t-il une bibliothèque spécifique à ajouter car ces booster fonctionnent très bien avec mes alim actuelles à base d’arduino ?

    PS je n’ai pas encore suivi tous les liens menant au forum !
    Merci de vos réponses.

    Répondre

  • Bonsoir,
    la différence de base entre les modules qui pilotent les moteurs est la nécessité de disposer ou non de deux signaux en opposition de phase :
    pour ceux qui en ont besoin (L298 et L6203), il faut deux signaux IN1 et IN2.
    les autres fonctionnent avec un seul signal (LMD18200 et L9110S, ...)
    Pour utiliser les modules à deux signaux, il faut générer le deuxième signal avec un transistor (ou décortiquer le câblage du shield moteur à L298 pour lequel le UNO génère le deuxième signal)
    En fait la déclaration du type du circuit moteur est esthétique, puisqu’en fin de compte, elle revient à écrire :
    #define MOTOR_SHIELD_TYPE 0
    Voir l’article : https://www.locoduino.org/spip.php?...
    Et je confirme avoir utilisé le module moteur à L9110S avec la BaseStation de cet article 187 avec un UNO et le programme d’origine DCCpp_Uno sans modification et ce, avec le câblage de l’article 187, repris dans cet article.
    En résumé pour commencer,

    soit un shield moteur à L298 enfiché sur un UNO : 2 straps et une alimentation 12V 2A et vous testez en 2mn, y compris avec JMRI. Sans soudures et sans modifications.
    soit un module (ou deux modules) à LMD18200 avec un câblage comme dans l’article.
    Personnellement je me limiterais à 12V pour les tests, ce qui permet d’alimenter UNO en direct ce qui simplifie le câblage.
    Cordialement

    Répondre

    • Bonjour,
      Merci pour ces précisions et la rapidité du retour, J’ai entre temps lu l’excellent article du forum qui traite des modules L298 et le lien qui pointe sur "la gare de lormedy". Il est expliqué comment câbler un L298 avec un petit circuit AM26C31 complémentaire.
      Je vais donc tester les deux solutions, l’achat de LMD18200 pour le gain en intensité (ou L9110) et l’achat du ci supplémentaire du lien ci-dessus. Le câblage n’est pas un problème puisque c’est mon métier, la nouveauté étant la programmation et les arcanes de l’Arduino tous récents pour moi.

      Voir en ligne : La gare de lormedy

      Répondre

      • Bonjour,
        bien prendre en compte l’avertissement Attention : Beaucoup de MAX471 sont défectueux. Avant de les connecter, vérifier avec un multimètre que la résistance lue entre RS+ et RS- soit proche de zéro Ohms.

        Voir en ligne : INA169

        Répondre

        • Bonjour,

          Suite des événements, Le câblage de ma centrale s’est bien passé, juste une différence puisque j’ai rajouté un MAX485 pour utiliser les L298 en ma possession et un ASC712 en lieu et place des MAX471 achetés "HS" et retournés pour remboursement :)
          Lancement du programme avec IDE et miracle, tout s’allume bien, du jus aussi sur les voies...
          Mais voilà !

          • Impossible avec JMRI de trouver mon décodeur "Train O matic" !
          • pas d’équivalent trouvé ni sur voie de prog, ni sur voie normale.
          • Pas de doc chez le fabriquant si ce n’est le câblage et mon RGP Roco est bien câblé.
            Seule chose que je sais, c’est l’adresse par défaut qui est "3"
          • Quand je lance une recherche, les feux et le moteur donnent des signes de vie potentielle mais sans plus.

          Avant de lancer l’achat d’une autre marque de décodeur, avez-vous une lecture simple (pour newbie) à me conseiller ? Après une bonne lecture dans les différents forums, je fini par y perdre la boule... :(

          Merci de votre aide...
          Amicalement

          Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 18 janvier 2022 16:28, par racdavnathewe

    Bonjour à tous et meilleurs vœux ...

    J’ai mis en ouvre, grâce à votre tutos, cette centrale sur un MEGA et une alim de 15V - 10A.
    Je suis en N.
    Deux de mes 4 locos sont numérisées avec une décodeur Kuehn N025.
    Tous fonctionne parfaitement.
    J’ai utilisé un ACS712-20A comme détecteur de courant, pas de soucis particulier.
    Je ne connaissais pas l’arduino, votre site est clair et en y allant calmement, on y arrive.
    Il me tarde de voir vos nouveaux articles ...

    Répondre

  • Bonjour et merci pour votre retour d’expérience positif.
    Juste une question, vous lisez les CV de vos décodeurs ? Avec JMRI ?

    Répondre

  • Bonjour,

    Pouvez-vous me préciser un point sur lequel j’ai des doutes.
    Je suis équipé désormais d’une MEGA, D’une L9110S comme présenter dans le sujet en cours.
    J’ai rajouté les lignes qui vont bien dans les différentes bibliothèques mais le tableau posté mentionne les sorties PWM/DIR en 3, 12, 11, 2 alors que les lignes de programme ajoutées sont "13", 12, 11, 2... Le schéma de câblage est conforme au tableau.
    https://www.locoduino.org/local/cac...

    ==> Est-ce une faute de frappe dans le rajout du programme ?

    Merci de votre retour

    Répondre

  • Bonjour,

    l’article de référence confirme 3, 12, 11, 2 pour un Mega.

    Cordialement

    Voir en ligne : Réalisation de centrales DCC avec le logiciel libre DCC++

    Répondre

  • bonjour

    suite un probleme que je ne comprend pas ( j’arrive a faire fonctionner des loco déja programmer
    mais impossible d’ajouter un new décodeur ok décodeur LAIDCC bref j’ ai pris un lenz 10231 v2 je le monte et la rien même pas un vibration mais autre loco je la métrise ) donc je remet tout aplat autre alimentation autre méga autre carte bref que le mec que j’ai pas changer et je remet le programme et la

    j’ai suivie le tuto et quand je fais vérifie le programme j’ ai erreur >

    This report would have more information with
    "Show verbose output during compilation"
    enabled in File > Preferences.
    Arduino : 1.0.6 (Windows NT (unknown)), Board : "Arduino Mega 2560 or Mega ADK"
    In file included from Accessories.cpp:68 :
    /DCCpp_Uno.h:51:4 : error : #error CANNOT COMPILE - DCC++ ONLY WORKS WITH AN ARDUINO UNO OR AN ARDUINO MEGA 1280/2560
    Accessories.cpp : In member function ’void Turnout::activate(int)’ :
    Accessories.cpp:81 : error : ’EEPROM’ was not declared in this scope
    Accessories.cpp : In static member function ’static void Turnout::load()’ :
    Accessories.cpp:182 : error : ’EEPROM’ was not declared in this scope
    Accessories.cpp : In static member function ’static void Turnout::store()’ :
    Accessories.cpp:200 : error : ’EEPROM’ was not declared in this scope

    si vous avez une idée par avance merci

    Répondre

  • bonjour je vient de tomber sur votre article que je trouve extrêmement intéressant et j’ai bien envie de me lancer dans la fabrication de cette centrale car ce qui m’a toujours arrêté pour le passage au digital c’est le prix , par contre comme je suis nul dans ce domaine je ne suis pas sur d’avoir tout compris ,ma question va vous paraitre idiote mais il faut obligatoirement avoir un ordinateur pour faire fonctionner la centrale ? (je n’ais ni smartphone ni tablette )j’ai plutôt un petit réseau commandé par un tco , n’est il pas possible de commander les locos avec chaqu’une sa manette indépendante un peut comme sur les tables de mixage des studios d’enregistrement merci de votre réponse cordialement
    Michel

    Répondre

  • Bonjour,

    si vous débutez, commencez par vous faire la main avec la série d’articles qui répondra peut-être à votre question :

    Voir en ligne : Ma première centrale DCC

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 4 novembre 2022 11:38, par Michel Moine

    Bonjour
    Merci pour ce document très bien fait et très intéressant.
    Mais, j’ai une question, peut-on utiliser la carte arduino uno Wifi, dans mon cas, ce serait une solution très pratique ?
    Quelles modifications faudrait-il effectuer ?

    Encore bravo pour votre article !
    Michel

    Répondre

  • Bonjour,

    Oui, il est possible de mettre une carte WiFi. C’est assez simple, vous communiquerez en Wifi entre la centrale (JMRI par exemple) et le shield WiFi. Le shield devra être programmé pour renvoyer les commandes reçues vers le port série de l’Arduino. J’ai écrit un billet sur ce sujet ici : https://alkans.fr/locoduino/shield_...

    J’explique aussi pourquoi il est préférable d’utiliser un Mega plutôt qu’un UNO.

    J’avais présenté ce montage à Orléans 2018 : https://forum.locoduino.org/index.p...

    Bonne réussite.

    Christophe

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 27 novembre 2022 00:25, par Michel Moine

    Bonjour
    J’essaie de téléverser le programme, mais voici les messages que j’obtiens en continue :
    Est-ce logique ?
    merci
    Michel Moine

    vrdude : stk500v2_ReceiveMessage() : timeout
    avrdude : stk500v2_ReceiveMessage() : timeout
    avrdude : stk500v2_ReceiveMessage() : timeout
    avrdude : stk500v2_ReceiveMessage() : timeout
    avrdude : stk500v2_ReceiveMessage() : timeout
    avrdude : stk500v2_getsync() : timeout communicating with programmer
    avrdude : stk500v2_command() : failed miserably to execute command 0x13
    avrdude : stk500v2_paged_write : write command failed
    avrdude : stk500v2_ReceiveMessage() : timeout
    avrdude : stk500v2_ReceiveMessage() : timeout
    avrdude : stk500v2_ReceiveMessage() : timeout
    avrdude : stk500v2_ReceiveMessage() : timeout

    Répondre

  • Une station DCC complète, polyvalente et économique avec JMRI. 27 novembre 2022 02:21, par Michel Moine

    J’ai encore une question, à propos du MAX471, L’arrivée 18volt de l’alimentation se branche bien sur les broches VIN. Il semblerait que cela soit inversé par rapport à votre MAX. Sur le mien, les VIN sont à gauche !
    Merci
    Michel Moine

    Répondre

  • Bonjour,
    il faut vous inscrire sur le forum. Voir le lien ci-dessus.
    PS : vous arrivez à téléverser blink ?
    Cordialement

    Répondre

  • Bonjour,
    j’ai monté cette centrale DCC++ en suivant vos instructions. Je l’utilise avec JMRI sous W10. J’utilise Engine Driver avec mon smartphone Android. Tout cela fonctionne parfaitement et se montre robuste. Remerciements renouvelés pour votre article.
    Une question cependant : avec ce montage, je ne parviens pas à modifier des CVs en POM. Est-ce dû à une spécificité du montage matériel, au logiciel DCC++, à JMRI, au décodeur (un Zimo MX600) ou fais-je un erreur quelque part ? Une recherche "POM"sur le forum ne m’a pas fourni d’indication.
    Si vous avez une suggestion.... Cordialement.

    Répondre

  • Une station DCC polyvalente avec JMRI : pb de POM 3 mars 2023 00:03, par lambda95t3

    Merci pour vos réponses. Je note bien celle de bobyAndCo.
    Heureusement, la programmation des CV est sans problème sur la voie de programmation ; mais c’est regrettable de ne pouvoir les programmer en POM, par exemple pour ajuster une intensité lumineuse.
    Pour ma part, je ne trouve pas la programmation en POM dangereuse.
    Merci pour la suggestion SPROG ; je vais regarder.

    Répondre

  • ... j"ai relu mes classiques. Effectivement Bermann a prévu la POM :
    <w CAB CV VALUE>
    Pour test et vérification, on peut lancer ce type de commande via le menu de JMRI :
    DCC++ / Send DCC++ Command

    Répondre

  • Quel sont les types compatibles de décodeur pour la station DCC,
    Et ou sais-t-on trouvé le LE1035 et le LE1835
    Merci

    Répondre

  • Bonjour,
    sauf exception, tous les décodeurs DCC sont compatibles. Ceux de Lenz en particulier.
    Les LE1035 et LE1835 sont un exemple, mais on ne les trouve plus que d’occasion.
    Cordialement

    Répondre

  • Bonjour et merci pour les informations sur cette centrale DCC. Voilà ma centrale fonctionne très bien avec Jmri, j’ai une tention de 19,30 volte sur les voies, je trouve que cela fait beaucoup, vous en pensez quoi ?. Merci encore pour vôtre travail. PS. J’ai pas mis de lampe 21w en série le MAX fonctionne très bien.

    Répondre

  • Bonjour, je mesure avec un voltmètre en position alternative, mais comme c’est une sinusoïde carrée il y à peut-être une différence ?. Merci pour vôtre réponse.

    Répondre

  • Bonjour,
    en position tension alternative, un multimètre redresse et affecte la tension moyenne obtenue d’un facteur d’environ 1,4
    Vous avez une tension alternative carrée d’environ 14V crête sur vos voies, comme tout le monde.
    Cordialement

    Répondre

  • J’ai réalisé cette centrale DCC selon les instructions de votre article avec JMRI. Néanmoins puis-je l’utilisée telle quelle sous CDM-RAIL ?
    Cordialement.

    Répondre

  • Bonjour,

    1. ce n’est pas notre rôle que d’assurer le support du développement d’un autre site (au demeurant très sympathique). D’autant que CDM-Rail a fait l’objet de l’article 312.
    Voir leur site qui propose aide et forum. Faites l’effort de découvrir leur présentation.

    2. pour avoir une aide sur les sujets qui concernent Locoduino, relisez :

    Voir en ligne : Où et comment demander de l’aide ?

    Répondre

  • Bonjour,

    Bravo pour cet article qui est très clair.

    Ma question concerne l’interconnexion de cette centrale avec les décodeurs ou les détecteurs de présence.

    Je lis Locoduino depuis polusiuers année, et grâce à vous j’ai pu créer quelques réalisations qui fonctionnent très bien. Mais jusqu’à présent essentiellement en en analogique pour des va et vient, puis pour un système de cantonnement ou la gestion de parcours.
    Je souhaiterai maintenant monter un réseau digital. La centrale parfait cela fonctionne. Mais ce que je ne comprends pas malgré mes lectures c’est maintenant comment gérer avec cette centrale la rétrosignalisation et le cantonnement. Comment connecter des détecteurs de présence à la centrale et obtenir un arrêt progressif et un redémarrage des locomotives ? Je comprends que JMRI permet de créer des routines mais comment connecter et commander les aiguilles ?
    Sur le Locoduinodrome j’ai bien compris le principe des cartes satellites mais par exemple sont elles connectables à cette centrale ?
    Les deux très bons exemples de va et vient fonctionnent pour une loco ( je l’ai testé) ou deux (mais dans ce cas je comprends qu’il faut rentrer l’adresse des machines dans le programme) pas pour une vingtaine.

    En arduino analogique j’ai pu résoudre ces questions qui sont purement électrique mais en digital je ne comprends pas les interconnections de ses différents éléments.

    J’espère avoir été clair bien qu’un peu long.

    Merci à vous

    Répondre

  • Bonjour Pierre,

    Merci tout d’abord pour vos appréciations. Cela fait toujours plaisir et nous encourage à poursuivre.

    Je me réjouis que vous soyez aussi enthousiaste mais je suis désolé de vous dire que vous mélangez différentes choses. Cela peut se comprendre car il n’y a jamais eu de présentation globales sur Locoduino des architectures globales.

    Je ne pourrai malheureusement dans cette réponse tout préciser mais je vais essayer d’être aussi synthétique que possible.

    Tout d’abord, la central, cette centrale dont il est question dans cette article ne fait rien d’autre que d’envoyer des commandes à des locomotives en « mélangeant » des signaux de commande (le DCC) avec du courant de puissance pour l’alimentation des locomotives. Il y a une voie de programmation mais c’est le même principe.

    Il n’est pas d’ailleurs question de centrale dans le titre de l’article mais de station.

    Une centrale est l’appareil qui va par exemple envoyer les commandes DCC à cette station. Elle va aussi, selon son niveau de sophistication permettre de commander des accessoires, aiguilles, signalisation, et même gérer des itinéraires, démarrer, stopper les locomotives, actionner seule les aiguilles etc…

    Les centrales que l’on trouve par exemple dans le commerce sont des ESU, de Marklin MS2, CS2, CS3 (qui savent piloter en DCC). Il y a aussi des logiciels, certains gratuits comme JMRI ou RocRail, d’autres payants.

    Les satellites que vous évoquez sont encore dans une autre catégorie, celle appelée rétro-signalisation. La rétro-signalisation, c’est le retour vers la centrale (pas la station) des informations du réseau : Capteurs par consommation de courant, capteurs ponctuels (Infra Rouge…) mais aussi des détecteurs Railcom. La station qui contient un logiciel évolué tient compte de toutes les informations qui lui reviennent pour prendre les bonnes décisions comme l’arrêt des trains, commander les bons signaux.

    Pour ne pas faire trop long, je préciserai juste pour finir qu’il existe deux grands types de retro-signalisations, celle qui utilise le même bus que le signal DCC de commande de locomotives. Le protocole de communication est alors le DCC et les « messages » sont spécifiques pour les accessoires qui vont par exemple disposer eux aussi de décodeurs DCC mais particuliers.

    L’autre types de retro-signalisation inclus de (très) nombreuses méthodes, la plus part du temps incompatibles entre elles, qui s’appellent Loconet ou S88 pour les plus connues.

    A Locoduino, nous privilégions le CAN et les satellites sont des nœuds CAN de communication et de retro signalisation.

    Voilà ce que je peux répondre dans le cadre de cet article mais je vous invite vivement à ouvrir un post sur le forum car je suis certain que cela en itéressera bien d’autres et il nous sera possible de répondre mieux à vos question échanger.

    Bien cordialement.

    Christophe

    Répondre

  • Comme le suggère bobyAndCo, j’ouvre un fil pour ce sujet qui concerne autant l’architecture que la station DCC++ qu’il a réalisée.
    Cordialement

    Voir en ligne : Support pour Une station DCC complète, polyvalente et économique avec JMRI.

    Répondre

  • Merci bcp Boby c’est justement cela que je n’arrivais pas à comprendre. En fait c’est une station que nous avons fabriqué et non une centrale car je n’arrivais pas à comprendre comment " physiquement" brancher un BUs de retrosignalisation. Je vais de ce pas lire le nouveau lien : Support pour une station DCC complète.

    Répondre

Réagissez à « Une station DCC complète, polyvalente et économique avec JMRI. »

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Lien hypertexte

(Si votre message se réfère à un article publié sur le Web, ou à une page fournissant plus d’informations, vous pouvez indiquer ci-après le titre de la page et son adresse.)

Rubrique « Matériel »

Les derniers articles

Les articles les plus lus