Ma première centrale DCC
. Par : msport
Vous répondez à :
Bonjour,
Locoduino est un site de bénévoles, je ne sais pas si votre demande d’aide rémunérée trouvera un écho.
D’une manière générale, les montages de Luca Dentella s’inspirent des mêmes montages que ceux de Locoduino :
DCC++, Bodnar, etc.
Mais les détails diffèrent et comme on le sait, le diable se cache dans les détails.
Vos problèmes semblent plutôt venir de la mise en œuvre que des principes.
1. Les fonctions qui commandent les lumières sont à identifier dans les notices des décodeurs et elles peuvent être réaffectées.
2. L’extinction des lumières peut être due à un encrassement des pistes. Comme la commande de vitesse est répétée, la locomotive peut redémarrer.
3. Je ne suis pas capable d’analyser le code de DCC++ si c’est de lui qu’il s’agit. De plus, ce qu’il faut analyser c’est l’interaction avec le dispositif qui émet les ordres. Pour cela, un sniffer est très utile ("sniffer" à rechercher sur le forum).
Si vous utilisez JMRI, affichez les échanges avec DCC++.
Je vous suggère de réaliser un ou des montages de Locoduino pour substituer à ceux de Luca Dentella et de poster sur le forum le détails des difficultés rencontrées comme expliqué ici :
Cordialement
Voir en ligne : Où et comment demander de l’aide ?
19 Messages
-
Ma première centrale DCC 28 janvier 2022 22:28, par msport
Bonjour,
si vous avez des problème pour réaliser le montage de cet article, préférez poster sur le forum, où vous pour joindre des photos de votre montage ou des captures d’écrans. Ce sera peut être plus simple que de longues explications.
Et profitez en pour lire l’article 298 "Ou et comment demander de l’aide"
Voir en ligne : Aide pour Ma première centrale DCC
-
Ma première centrale DCC 29 janvier 2022 11:26, par Fantasio
De nouveau un sujet très intéressant et adapté aux débutants.
Juste une remarque :
Peut être mes yeux me jouent des tours, mais j’ai l’impression que les cables ne sont pas branchés correctement :- le cable vert semble branché entre 13 et 10 (théoriquement entre 13 et 5)
- le cable bleu entre 12 et 5 (théoriquement entre 12 et 10).
Erreur de câblage dans les photos ou problème de vision ?
-
Excellente remarque : c’était pour voir ceux qui suivent. C’est le tableau qui fait foi. L’ophtalmo pourra attendre.
-
Ma première centrale DCC 29 janvier 2022 11:42, par Fantasio
Merci Michel pour ta réponse rapide.
C’est un montage que je vais essayer dès que possible (il me manque juste le shield). Très bon article au demeurant !!
-
-
Ma première centrale DCC 10 février 2022 12:26, par guy
Bonjour, j’utilise " des décodeur DCC pour les signaux à deux ou trois feux sur Arduino NANO/UNO " et serait il possible de les brancher sur cette centrale et ne commander que les signaux .... et utiliser la dr5000 pour la circulation des trains , retro, etc ...... pourquoi, eh bien , quand plusieurs trains circulent , beaucoup de données arrivent à la DR, et les feux ne changent pas à chaque fois,
-
Bonjour,
oui, à condition de garder les deux bus DCC séparés et de gérer ce qui permet à DCC++ de piloter la signalisation.
-
oui bien sur , c’est ce que j’ai fait , les 4 leds s’allument quand je mets ’ <1> ’ dans le moniteur ...et donc apres il faut configurer les adresses de tous les signaux ?
-
-
-
Ma première centrale DCC 10 février 2022 16:27, par msport
Oui, vous trouverez ce qu’il faut dans le document Commandes pour DCC++, fourni ici comme référence, mais ce n’est pas le sujet de cet article.
Voir le paragraphe ####DECODEURS ACCESSOIRES STATIONNAIRES ET AIGUILLAGES####
D’ailleurs, pour un dépannage, c’est sur le forum que ça se passe.-
Notez que vous pouvez utiliser un MEGA à la place du UNO, seuls les ponts ne sont pas les mêmes.
Ce qu’il faut changer :
Supprimer le pont 10 - 12 et déplacer l’autre pont pour faire 2 - 13.
Il faut aussi sélectionner "Arduino Mega or Mega 2560" dans l’IDE. L’IDE gère les différences à la compilation.
Je recommande néanmoins de commencer ce montage avec un UNO. Un accident est vite arrivé et son remplacement vous coutera moins cher.
De plus, ce montage est à conserver tel quel pour vérifier par comparaison ce que vous monterez ensuite.
Il vous permettra de programmer les CV de la grande majorité des décodeurs et ce, en toute indépendance d’une centrale alimentant votre réseau.
-
-
Ma première centrale DCC 22 février 2022 10:35, par Daniel PIQUET
Félicitation pour votre article simple et efficace. Alors que j’avais de nombreuses interrogations concernant les MAX471 défectueux, le choix du logiciel et du booster qui me laissaient dans l’expectative, j’ai pu monter votre station qui a fonctionné du premier coup.
Avec une telle base, je serai plus serein pour l’améliorer, si nécessaire.
Encore merci pour ce "back to basics" (ou retour aux fondamentaux en bon français). -
Ma première centrale DCC 30 septembre 2022 17:27, par luigi bassi
Bonjour,
Permettez-moi de me présenter : je m’appelle luigi, je suis ingénieur en mécanique et je travaille depuis des années dans le domaine des logiciels. Je suis maintenant à la retraite et pour passer le temps, je me suis lancé dans l’arduino, avec lequel je voulais contrôler mon modèle.PROBLÈME :
Il y a 10 trains qui circulent sur le modèle, mais au maximum, ils en font circuler deux à la fois ; la plupart du temps, seul un volt circule et ceux-ci fonctionnent sur 4 circuits complètement indépendants et isolés électriquement.
Tout le matériel roulant est constitué de vieux trains analogiques que j’ai numérisés avec des décodeurs ESU.
Les aiguillages sont contrôlés par arduino avec des relais et sont actionnés par des capteurs maghet qui exploitent l’effet HALL.
Toutes les pistes sont des séries K 22...
La station centrale est auto-personnalisée avec des diagrammes de Luca Dentella (voir youtube).
https://www.youtube.com/watch?v=kWd...
Le boster est également auto-construit voir luca dentella
https://www.lucadentella.it/2020/11...
Cela fait longtemps que Luca Dentella n’est plus disponible, et j’ai un problème, qui je crois est (logiciel), et j’ai cherché à différents endroits sans obtenir de réponse.
Mes problèmes sont les suivants :
1. Les fonctions qui commandent les lumières des trains fonctionnent parfaitement dans certains trains et pas dans d’autres. L’activation et la désactivation ne fonctionnent pas dans certains trains, même si les instructions sont exactement les mêmes.
Je joins les parties du code avec ceci.
2. Il arrive parfois qu’en l’absence de court-circuit détecté par le poste de commande, un train s’arrête de manière aléatoire avec même les lumières allumées ; à ce moment-là, je dois débrancher l’alimentation électrique et la remettre sous tension ; le train redémarre mais toutes les lumières restent éteintes, comme elles restent éteintes lorsqu’il y a un court-circuit, le poste de commande s’éteint et lorsque j’appuie à nouveau sur la touche, les lumières sont toutes éteintes jusqu’au prochain redémarrage à partir de la commande logicielle.
3. le comportement des trains est très aléatoire. Par exemple, j’ai remarqué que faire varier le max_events du Timer.h de la bibliothèque Timer provoque un comportement très différent. Pourquoi ?
Très souvent, par exemple, la désactivation ne fonctionne pas et seulement sur certaines locomotives.DEMANDE :
Est-il possible d’obtenir de votre part une assistance (payante, bien sûr) pour résoudre ces problèmes ?
Pour moi, il serait important, s’il était possible de conserver tout le matériel installé, mais si vous pensez qu’il serait préférable de passer à quelque chose de standard et commercial, n’hésitez pas à me le dire (encore mieux si vous le vendez).
Je vous remercie d’avance de votre attention et vous salue cordialement.
Code
#include <Timer.h>
#include <ButtonV2.h>
#include <Centipede.h>
#include <Event.h>
#include <Nextion.h>
#include <Wire.h>
#include "DCCpp.h"#define LOCO_ADDRESS_1 3 // adresse du décodeur du train 1
#define LOCO_ADDRESS_2 13 // adresse du décodeur du train 2
#define LOCO_ADDRESS_3 5 // adresse du décodeur du train 3
#define LOCO_ADDRESS_4 9 // adresse du décodeur de train 4
#define LOCO_ADDRESS_5 7 // adresse du décodeur de train 5
#define LOCO_ADDRESS_6 11 // adresse du décodeur de train 6
#define LOCO_ADDRESS_7 15 // adresse du décodeur de train 7
#define LOCO_ADDRESS_8 17 // adresse du décodeur de train 8
#define LOCO_ADDRESS_9 19 // adresse du décodeur de train 9
#define LOCO_ADDRESS_10 21 // adresse du décodeur de train 10#define LOCO_LIGHTS_FUNCTION 0 // c’est l’équivalent de la fonction F0 habituellement utilisée pour les phares.
#define WAGONS_LIGHTS_FUNCTION 1 // Feux du wagon F1
#define LOCO_SMOKE_FUNCTION 2 // Fumée F2
// attention pour les deux locomotives à vapeur F2 est fumée n’ont pas de feux de wagon#define LOCO_REGISTER_1 1
#define LOCO_REGISTER_2 2
#define LOCO_REGISTER_3 3
#LOCO_REGISTER_4 définit 4
#define LOCO_REGISTER_5 5
#define LOCO_REGISTER_6 6
#define LOCO_REGISTER_7 7
#define LOCO_REGISTER_8 8
#define LOCO_REGISTER_9 9
#define LOCO_REGISTER_10 10#define CV_SHORT_ADDRESS 1
État des fonctions locoFunctions_1 ;
FonctionsEtat locoFunctions_2 ;
FonctionsEtat locoFunctions_3 ;
FonctionsEtat locoFunctions_4 ;
FonctionsÉtat locoFunctions_5 ;
FonctionsEtat locoFunctions_6 ;
FonctionsÉtat locoFunctions_7 ;
FonctionsÉtat locoFunctions_8 ;
FonctionsEtat locoFunctions_9 ;
FonctionsEtat locoFunctions_10 ;
// partie de DCCpp pour l’installationDCCpp::begin() ;
DCCpp::beginMainMotorShield() ;
// activer les sorties
DCCpp::powerOn(true, false ) ;
DCCpp::loop() ;
retour = t.after(2000, abc_brk_1_off) ;
retour = t.after(2100, stop_TR8) ;
retour = t.after(2350, right_exchange_22) ;
—
void stop_TR3()if(locoFunctions_3.isActivated(LOCO_LIGHTS_FUNCTION)) locoFunctions_3.inactivate(LOCO_LIGHTS_FUNCTION) ;
else locoFunctions_3.activate(LOCO_LIGHTS_FUNCTION) ; // allume ou éteint les lumières
DCCpp::setFunctionsMain(LOCO_REGISTER_3, LOCO_ADDRESS_3, locoFunctions_3) ;DCCpp::setSpeedMain(LOCO_REGISTER_3,LOCO_ADDRESS_3,128,0, true) ;
-
Ma première centrale DCC 30 septembre 2022 17:29, par luigi bassi
....Continue
My phone number +393356634681
My address Luigi Bassi
via Tomaso nani 40
23100 sondrio
Italia -
Ma première centrale DCC 1er octobre 2022 18:43, par msport
Bonjour,
Locoduino est un site de bénévoles, je ne sais pas si votre demande d’aide rémunérée trouvera un écho.
D’une manière générale, les montages de Luca Dentella s’inspirent des mêmes montages que ceux de Locoduino :
DCC++, Bodnar, etc.Mais les détails diffèrent et comme on le sait, le diable se cache dans les détails.
Vos problèmes semblent plutôt venir de la mise en œuvre que des principes.
1. Les fonctions qui commandent les lumières sont à identifier dans les notices des décodeurs et elles peuvent être réaffectées.
2. L’extinction des lumières peut être due à un encrassement des pistes. Comme la commande de vitesse est répétée, la locomotive peut redémarrer.
3. Je ne suis pas capable d’analyser le code de DCC++ si c’est de lui qu’il s’agit. De plus, ce qu’il faut analyser c’est l’interaction avec le dispositif qui émet les ordres. Pour cela, un sniffer est très utile ("sniffer" à rechercher sur le forum).
Si vous utilisez JMRI, affichez les échanges avec DCC++.Je vous suggère de réaliser un ou des montages de Locoduino pour substituer à ceux de Luca Dentella et de poster sur le forum le détails des difficultés rencontrées comme expliqué ici :
Cordialement
Voir en ligne : Où et comment demander de l’aide ?
-
Ma première centrale DCC 22 mai 2023 10:13, par loulout
Bonjour,
J’utilise une carte Uno Wifi Rev2 (je sais, c’est apparemment pas courant). Les timers sont différents, et sans doute plein d’autres choses. Je voudrais seulement m’assurer que le courant arrive bien sur les voies avant de tenter d’envoyer des commandes. Et ce n’est pas le cas.
J’utilise le Motor Shield V3 Arduino que j’ai posé sur la carte. Je me pose une question sur l’alimentation du Motor Shield. Vous dites qu’elle est commune avec la carte Uno. Est-ce que ça signifie qu’il suffit de brancher une alim 12V sur le port Jack de la carte ?
J’ai lu sur d’autres sites que l’alimentation n’est pas commune. Et les schémas dans cet article montrent une alimentation via le bornier du Motor Shield.
Donc ma question est : y a-t-il d’autre chose à faire qu’alimenter la carte Uno via le port Jack ? Je précise que j’ai fait des essais en connectant les différents pins comme indiqué dans l’article, en config Uno, Mega ou sans utiliser les pins. Je ne sais pas si cela a un rapport avec l’alimentation.
Cordialement
-
Ma première centrale DCC 22 mai 2023 11:07
Regardez les schémas des cartes UNO et motor shield (facile à trouver sur internet).
L’alimentation pour les Rails (12V ou plus en général) doit être branchée sur la carte moteur (car c’est elle qui contient les circuits de puissance.
Si l’alimentation est commune avec la carte Arduino (voir schéma), alors le 12V ou plus est dangereux pour l’Arduino : il faut couper la liaison et insérer un régulateur (entre 7,5 et 9V idéalement) pour alimenter l’Arduino.Tout ceci est expliqué abondamment à plein d’endroits sur Locoduino et ailleurs (je n’ai pas d’adresse à donner)
C’est simple, mais si cela vous semble compliqué alors revenez aux cartes standard comme tout le monde : cela ne va pas vous ruiner.
-
Ma première centrale DCC 2 décembre 2023 19:06, par christian
Bonjour
Je cherche a compiler DCCpp_Uno.ino.
J ai récupéré plusieurs librairies manquantes sur le net.
Malheureusement certaines doivent être trop recentes.
(message d erreur de template manquant sur ShiftRegister74HC595).puis message d erreur sur des déclaration manquante etc
Vous est il possible de fournir dans un zip les librairies nécessaires pour la compilation ?
Par avance merci.
-
Ma première centrale DCC 2 décembre 2023 20:34, par msport
Bonsoir,
vous êtes sur de compiler le projet DCCpp_Uno.ino ?
On n’utilise pas ici de 74HC595.
Par ailleurs, il est dit dans le texte :
il faut et il suffit de décompresser le zip disponible sur le GitHub de DCC++ et on obtient le répertoire DCCpp_Uno complet. (18 fichiers) qu’on place dans le répertoire des sketches (les programmes) :
Donc, il n’y a pas de bibliothèque dans ce cas là.
Cordialement-
Ma première centrale DCC 3 décembre 2023 10:57, par christian
je suis reparti d une installation propre de l IDE arduino version 1.18.19 pour windows
re telechargé dccp_unoj ai toujours des erreurs de compilation
C :\Users\sebme\Desktop\arduino\dccpp_uno\DCCpp_Uno\DCCpp_Uno.ino:427:152 : warning : backslash and newline separated by space
celles ci se corrigent en enlevant les espaces en trop a la fin de la ligne
mais celle ci me paraissent plus compliqué a resoudre ...
:\Users\sebme\Desktop\arduino\dccpp_uno\DCCpp_Uno\DCCpp_Uno.ino:196:59 : warning : ISO C++ forbids converting a string constant to ’char*’ [-Wwrite-strings]
CurrentMonitor mainMonitor(CURRENT_MONITOR_PIN_MAIN,"") ; // create monitor for current on Main Trackquel version de l ide utilisez vous pour compiler DCCpp_Uno.ino disponible sur le site
dans les commentaires il est indiqué "Arduino IDE 1.6.6."
-
-
Ma première centrale DCC 3 décembre 2023 12:21, par msport
Bonjour,
je viens de télécharger le programme depuis l’icône de cet article.
J"ai double cliqué sur dccpp_uno.zip, le zip dans les téléchargements
J’y ai trouvé puis j’ai glissé copié le répertoire DCCpp_Uno sur le bureau
Dans ce répertoire DCCpp_Uno, j’ai fait un clic droit sur DCCpp_Uno.ino pour l’ouvrir avec Arduino IDE.
L’Arduino IDE 1.8.19 précédemment installé en W10 s’est ouvert.
J’ai lancé la compilation avec l’icône Vérifier.
Sans problème, j’ai obtenu :
Le croquis utilise 18188 octets (56%) de l’espace de stockage de programmes. Le maximum est de 32256 octets.
Les variables globales utilisent 888 octets (43%) de mémoire dynamique, ce qui laisse 1160 octets pour les variables locales. Le maximum est de 2048 octets.
Vérifiez votre installation et vos manipulations. Vous avez du faire des copier coller non prévus.