Réalisation de centrales DCC avec le logiciel libre DCC++ (1)
Comment adapter ce très bon logiciel à ses besoins propres
. Par : Dominique
Vous répondez à :
C’est l’étape d’après, avec des réalisations par ici, sur base PIC/Microchip : RailComDisplay
Attention, car il faut des booters ou un signal DCC approprié, avec le "cut out", sinon, les décodeurs des locos vont fumer. C’est précisé sur la page.
Par défaut, l’option Railcom est désactivée dans les décodeurs qui le supportent.
36 Messages
-
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 19 novembre 2016 06:26, par impaire
Bonjour,
Quelques détails utiles. D’abord sur ces motor shields sur base L298, pour ne pas les cramer, et pour ne pas cramer un Arduino.
Avec le L298 et ces shields, il ne faut probablement pas monter à beaucoup plus d’un ampère (voie de programmation et tests, ou voie, mais avec peu de décodeurs et matériel roulant) en surveillant la température du L298. Certains de ces shields dont le modèle que vous présentez ont un bug thermique. Le dissipateur du boitier L298/PowerSO20 est dessous ce composant. Un dissipateur par dessus ce boitier n’est pas la solution pour monter à 2A, le L298 pourrait rapidement surchauffer puis cramer. En théorie, la chaleur est à évacuer via le PCB, qui n’est pas prévu pour, il y manque les plans de cuivre évacuant la chaleur du L298. De surcroit, sur certains lots de ces shields, le L298 n’est même pas plaqué contre le PCB ; on peu alors glisser une feuille de papier entre le composant et le PCB, ce qui n’améliore en rien la dissipation thermique du PowerSO20 via le PCB. C’est discuté sur les forums anglais, s’y référer pour les détails.
Les Arduino ne tolèrent théoriquement pas plus de 12V sur VIN. Or pour du HO, une alim pour le shield et les voies sera à 15V. Il sera donc préférable de couper VIN du motor shield (une piste VIN-CONNECT est à couper) afin d’avoir un VIN du shield (15V) différent du VIN de l’Arduino (12V max, sinon 5V via USB).
Le shield L298 peut être utile aux tests ou avec peu de matériel DCC, sous 12V. Le LMD18200 avec un bon dissipateur serait mieux pour des courants de 2A et plus, à plus de 12V.
Attention aux longueurs des pattes des shields, il y en a de courtes. Qu’il n’y ait pas de court-circuits une fois les shields ethernet/motor empilés sur l’Arduino.
Sur l’utilisation et les débuts avec DCC++
Dans un des fichiers .h on peut définir le type de motor shield qu’on utilise, cela adapte les I/O Arduino au modèle de shield. Dans un de ces fichiers .h on peut également retrouver les I/O Arduino selon le type de shield, et repérer ainsi quelle est la sortie du signal DCC. On peut alors même se passer d’un shield pour de premiers tests avec uniquement le code de DCC++ et un signal DCC niveau TTL/5V.
Car il suffit ensuite d’un Arduino "A" avec DCC++ connecté directement, par fil, sans booster ni optocoupleur, vers un second Arduino, "B". Une dizaines d’Euros, et on peut débuter avec le DCC, étudier les sources de DCC++ sur un UNO avec les sources de décodeurs flashés sur mini ou micro. UNO /DCC++ pinX /DCC out <-> micro INTy /DCCin.
Pour DCC++, un Arduino Mega ne semble être utile que pour plus d’EEPROM (stocker les états d’aiguillages), pour des I/O en plus (détecteurs de présence…), ainsi que pour plus de flash et RAM (ethernet shield et évolutions/personnalisation du code). Pour débuter, via USB, sans ethernet, un simple UNO va suffire pour y flasher DCC++.
Puis enfin… dans les sources de DCC++, il m’avait semblé que le code est aujourd’hui adapté au module ethernet de type W5200 (avec Mega uniquement).
Cordialement
-
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 19 novembre 2016 11:00, par Dominique
Merci pour toutes ces précisions utiles.
Si vous voulez avoir beaucoup d’Ampères, il existe une carte à base de BTS7960B qui peut monter jusqu’à 40A, de quoi alimenter la totalité de MiniWorld Lyon !!
Mais j’avoue que je ne l’ai pas testée, bien que j’en ai acheté une pour voir un de ces jours !Certes, la carte moteurs Arduino (L298) est limitée en puissance, ce qui est très bien expliqué (en américain) dans le Forum américain Trainboard où ce sujet est très bien développé.
Je vous encourage à le lire : il y a plein d’autres renseignements utiles qui pourraient compléter nos articles en français dans l’avenir.
Ayant un réseau en N, je l’ai testé sans problème avec une seule loco. C’est suffisant pour une voie de programmation.
Mais la carte à base de LMD18200 n’est pas qu’une "mode" sur Locoduino, ce circuit ayant des performances bien supérieures aux L298 (et autres similaires), si vous regardez ses caractéristiques.
C’est un composant ESSENTIEL dans le réseau et il ne faut pas chipoter pour quelques Euros de plus (tellement peu en fait !).Pour l’Ethernet, patience, ça va venir ;)
Cordialement
-
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 19 novembre 2016 17:50, par impaire
De rien. Pour des questions de sécurité, je pense qu’il faut préférer des solutions L298 (2A max s’il est bien refroidi, pour un mini réseau) ou avec LMD18200 (3A continu, crête à 5A, protection interne/surge à 10A, selon la doc du LMD18200), puis multiplier les boosters de type LMD18200, de petite dimension.
Car avec un booster susceptible de délivrer un courant très fort, jusqu’à 40A crête (c’est possible, selon l’alim en amont), au moindre court-circuit tel que dans un aiguillage, des contacteurs (micro switch et autres) ainsi que les appareils et les roues pourraient être marqués voire détruits par un arc électrique.
Je compte utiliser DCC++ avec un L298 en faisant suivre plusieurs LMD18200 pour alimenter des voies, des portions de voies. Quelle que soit la solution que je retiendrais, je m’assurerais d’abord qu’une protection électronique et rapide limite efficacement le courant de court-circuit à 8-10A, et même à moins que cela.
Votre booster à 40A, mieux que L298 ou LMD18200, pourrait être associé à un bloc régulateur 15V en amont, qui en limiterait le courant de court-circuit à 5, 8 ou 10A grand maximum.
Cordialement -
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 19 novembre 2016 20:33, par Dominique
« Votre booster à 40A, mieux que L298 ou LMD18200, pourrait être associé à un bloc régulateur 15V en amont, qui en limiterait le courant de court-circuit à 5, 8 ou 10A grand maximum. »
Là je blaguais :))
Ce circuit à base de BTS7960B est plutôt fait pour les trains de jardin et encore, pour des grosses locos qui tirent beaucoup de wagons !
Je ne voudrais pas qu’il serve en intérieur : au moindre court-circuit, le risque d’incendie est probable si la protection n’est pas garantie.
Pour le reste, d’accord.
Mais c’est intéressant de suivre ce que vous allez faire pour asservir des LMD18200 sur des L298.
Pourquoi ne pas mettre un LMD18200 en tête puisqu’il a des fronts de montée/descente plus rapides que le L298 ? -
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 19 novembre 2016 22:57, par impaire
Le BTS7960B pourrait servir à ceux qui voudront réaliser un booter unique à 5, 8 ou 10A (avec les risques que cela comporte pour les appareils, roues et switchs).
> Je ne voudrais pas qu’il serve en intérieur
C’est pourquoi je mettais moi-même en garde sur ces courants potentiellement très forts et en parlant d’une limitation électronique efficace en courant. Les centrales peuvent détecter un court-circuit, a/ si le soft n’est pas planté b/ s’il n’est pas déjà trop tard.Pour le moment, je me familiarise avec les briques, dont ce L298 éco et facile à utiliser. Puis j’ajouterais plus puissant. Je n’envisage pas d’utiliser un LMD18200 et une grosse alim en tête pour éviter des risques tels que de courts circuits (puis d’incendie aussi). J’y viendrais peut-être, pour des fronts plus rapides, si c’est utile ; mais en ce cas, pas sans une protection en amont d’un LMD18200 en tête. Car le LMD18200 ne "disjoncte" qu’à 10A…
opendcc (leur site) propose des architectures avec des bus tel que HS88, HS88-n ou BiDi. Ces archi en bus intègrent le signal DCC et permettent d’y raccorder aussi les "vrai" boosters, ceux qui alimentent les voies. C’est ce genre de modèle que je compte suivre afin de distinguer mes câblages courants faibles pour DCC/contrôle et feedback de câblages pour courants plus forts.
Avec une telle architecture (centrale, bus, puis boosters) et un petit réseau, un L298 sur la centrale pourrait suffire.
Cordialement
-
40 A en 15 ou 18 V, pas besoin de prévoir d’éclairage complémentaire, les étincelles suffiront :-)))))
Je n’entends pas parler du shield Pololu MC33926 qui fait pourtant partie de hypothèses proposées dans DCC++. Personnellement, j’ai commencé en DCC++ avec un LMD18200 (en HO), solution qui m’a donné totale satisfaction pendant tous les tests. Par contre par la suite, j’ai opté pour le Pololu tout simplement parcequ’il inclus deux sorties, une pour la voie principale + une pour la voie de programmation (Il faudrait sinon 2 LMD). La détection de court-circuit est incluse (2 MAX471 sinon). Le Pololu est donné pour 3A. En réalité, sur des pics comme la mise sous tension du circuit avec 4 ou 5 locos bien sûr à l’arrêt, le Pololu se court circuite. Par contre, en utilisation normale, il me donne satisfaction pour 1,5 à 1,8 A en moyenne, mais je n’alimente rien d’autre que la traction en DCC.
Il est cependant assez couteux par rapport à ses "compétiteur", de l’ordre de 30 €.
J’aimerais avoir vos avis sur la solution Pololu.
-
La réponse à cela n’est pas simple ? Une première description de DCC++ par son concepteur semble être ici : www.trainboard.com. Ca commence par : « I’ve developed my own version of an open-source DCC controller. The base station consists of an Arduino Uno (or Arduino Mega) and an Arduino Motor Shield, and that’s the only hardware needed (with the exception of an 18V AC or similar power pack). » Il poursuit en parlant aussi d’une voie de programmation…
Chargez DCC++ sur un UNO, rien que cela, raccordez y un shield L298, et vous avez une centrale, avec une sortie pour les voies. On ne peut pas plus simple, et qui fonctionne. C’est cet aspect qui m’a plu, en premier.
Le Pololu, c’est avec deux ponts, donc un qui pourrait être utile pour une voie de programmation. C’est déjà plus compliqué tandis qu’avec les développements les plus récents (dont par l’équipe opendcc et nmra), il semble exister maintenant aussi la programmation directement sur voie, avec Railcom et un retour tel que via BiDib.
Je suis loin d’avoir fini de tout étudier. Avec toutes ces briques, je compte moi aussi assembler un truc tout simple et fiable, pour oublier ensuite tous les aspects techniques. Probablement sans voie dédiée à la programmation. Ou sinon, avec un Arduino de plus, pour la programmation (occasionnelle). Donc un pont ou une sortie unique sur Arduino devrait me suffire.
-
« avec les développements les plus récents (dont par l’équipe opendcc et nmra), il semble exister maintenant aussi la programmation directement sur voie, avec Railcom et un retour tel que via BiDib. »
Je suis très intéressé par ce que vous pourrez trouver sur cette question du RailCom, c’est à dire un retour du décodeur de loco dans une zone donnée, voire plus.
Merci d’avance.
-
C’est l’étape d’après, avec des réalisations par ici, sur base PIC/Microchip : RailComDisplay
Attention, car il faut des booters ou un signal DCC approprié, avec le "cut out", sinon, les décodeurs des locos vont fumer. C’est précisé sur la page.
Par défaut, l’option Railcom est désactivée dans les décodeurs qui le supportent.-
Merci pour ce lien : c’est très clair et je pense qu’on verra une version Arduino un de ces jours. Faire un cutout n’est pas plus difficile sur AVR que sur PIC.
Si on ajoute une interface CAN…
-
j’ai toujours pensé que RailCom était à ce jour la version la plus aboutie pour la gestion de convois. Aujourd’hui, on peut savoir facilement que tel canton, telle section du réseau est occupée. Par ailleurs, avec un bon gestionnaire, DCC++ puisqu’on est dans son fil, il est aussi très facile de savoir l’état d’une loco (Arrêt, marche, sens, vitesse. Mais ce qui nous manque c’est les deux à la fois ! Je suis très intéressé, j’en ai déjà fait part sur le site et suis prêt à participer à tous travaux sur locoduino qui iraient dans le sens d’un développement sur Arduino et DCC++. Toutes mes locos sont par ailleurs compatibles RailCom !
-
-
-
-
-
-
-
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 20 novembre 2016 18:13, par Daniel
Tout d’abord un grand merci à Dominique pour ce superbe article clair, précis, bien documenté (comme d’habitude) sur le logiciel DCC++. J’ai déjà eu recours à ses services lors d’essais (beaucoup plus laborieux) avec CmdrArduino.
Personnellement, j’ai opté pour une solution avec deux UNO, le premier servant de centrale DCC++ (chargée avec le soft original, c’est à dire non modifié) et le deuxième utilisé comme commande à base d’une télécommande à infrarouge (télécommande d’un ancien lecteur de DVD). On a ainsi en une seule unité un clavier numérique, des flèches directionnelles et une série de boutons supplémentaires (gratuits).
L’idée est de prévoir 4 boutons (1 par loco) sur la télécommande pour sélectionner facilement la machine souhaitée. La réalisation n’en est pas terminée mais j’aimerais partager une petite expérience vécue lors de la programmation de la carte qui héberge le programme "Centrale DCC++". Comme prévu, la pin RX de cette carte est reliée à la TX de la carte "Télecommande IR" pour transmettre les ordres via la liaison série ; or, lors du chargement du soft sur la carte "Centrale", j’obtiens en fin de compilation le message d’erreur suivant : " stk500_getsync() attempt 10 of 10 : not in sync : resp=0x41".
Après recherches sur le net, il semblerait qu’il faille débrancher la connexion RX/TX pendant le chargement du soft. J’ai essayé et je n’ai plus l’erreur ! Je n’ai pas tout compris, mais cela fonctionne ! Si cela peut servir à d’autres…Daniel.
-
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 21 novembre 2016 10:09, par Dominique
Bravo Daniel ;)
Le problème du televersement est tout simple à comprendre :
Le televersement se fait sur le port Tx-Rx (pins 0 et 1) de l’Arduino. Ce port est donc relié à l’interface USB pendant le televersement. Si vous le laissez relié à un autre montage pendant le televersement, il y a un conflit sur la pin Rx et la pin Tx envoie des choses inattendues vers le montage raccordé.
Il faut donc débrancher Tx et surtout Rx lors du televersement.
Ou alors branchez votre montage sur un autre port Série, avec la bibliothèque SoftwareSerial
-
Qu’en est-il de la rétrosignalisation 6 février 2017 11:38, par Pierre
Bonjour à tous,
Tout d’abord merci dominique pour ces explications claires et détaillées.
Je viens vous voir aujourd’hui car mon père étant passionné de trains il nous met à contribution mon meilleur ami et moi pour la partie électronique (oui je sais ca fait beaucoup :p).
Je me suis lancé pour défi de lui prouver que toutes les solutions techniques qui se trouvaient dans le commerce pouvaient être remplacées par une arduino. Je suis donc très heureux d’être tombé sur votre site.
A la lecture de cet article tout ce dont j’ai besoin semble indiqué mais il me reste une question : je ne comprend pas bien comment recevoir des informations venant d’une locomotive (comme le ferai le railcom par exemple) est-ce par détection fine de courant ? Je n’ai pas encore trouvé de sujet parlant du "retour" d’informations des locomotives et je ne comprend pas trop le principe et la prioriété dans l’interruption…
Pouvez-vous m’éclairer ?
Merci beaucoup et bonne journée
Amicalement
Pierre-
Bonjour Pierre et merci pour vos encouragements.
Votre question sur le "retour" d’information" des décodeurs est traitée en grande partie dans le forum, ici.
La plupart des décodeurs savent répondre à une demande de lecture de CV, sur la voie de programmation évidemment (si plusieurs machines répondent en même temps, ce serait inexploitable) en provoquant une consommation de courant ou pas pour chaque bit de la réponse.
C’est pour cela qu’on voit "gigoter" la loco. Parfois le décodeur arrive a répondre sans l’aide du moteur.
Equipé d’un circuit de mesure de courant, DCC++ sait récupérer cette information.
Personnellement je m’en sers pour détecter automatiquement l’adresse DCC (courte ou longue) d’une loco.
Je ne suis pas loin de Railcom, mais c’est une fonction standard de DCC++.
Nous avons constaté aussi que certains décodeurs ne répondent pas à cette demande qui, pourtant est dans la norme NMRA. Nous cherchons un explication.
Evidemment on va chercher à intégrer Railcom aussi dans DCC++ ou dans un montage spécifique mais nous n’avons pas d’objectif daté pour le moment.Voir en ligne : http://forum.locoduino.org/index.ph…
-
Merci Dominique pour cette réponse super rapide.
Je suis très heureux d’être tombé sur vos projets qui aident à une compréhension pas à pas.
Mon unique intérêt pour le railcom, c’est le fait de pouvoir détecter des locos perdues sur le réseau après une panne de courant par exemple. Cela permettrait de remettre en marche des trajets automatiques sans grande difficultés.
Etant actuellement en prépa je n’ai malheureusement pas le temps d’étudier en profondeur tout ces gadgets pourtant primordiaux pour une utilisation fluide au quotidien … Vivement cet été !
Merci encore pour vos travaux et à bientôt !
Pierre -
Pierre,
Nous sommes tous dans le même cas, nous avons besoin de localiser les trains pour assurer la gestion du réseau.
Il y a plusieurs techniques qui peuvent contribuer à cette détection :
Railcom bien-sur
la détection RFID
l’intelligence du gestionnaire
la combinaison des événements d’occupation/libération et de traction.
Le sujet est cité à plusieurs endroits sur le Forum.
Suivez-nous bien car on finira par y arriver :)Voir en ligne : http://forum.locoduino.org/index.ph…
-
-
Bonjour,
Tout d’abord, un énorme Merci pour avoir porté à la connaissance de tous cet excellent projet.
A mon tour, je me suis lancé, utilisant un Mega 260 et un shield moteur à base de L298. Je l’ai complété d’une rétro signalisation S88, que je tiens à la disposition de ceux qui pourraient être intéressés : elle utilise deux commandes, l’une pour indiquer le nombre de modules de rétro signalisation, il faut scanner, la seconde remontant l’état de tous les cantons quand un changement d’occupation est détecté.Utilisant CDM-Rail pour piloter mon réseau, j’espère que Jean-Pierre Pilou, l’auteur de ce logiciel, mettra prochainement un driver compatible Dcc++ à disposition (il est en train de monter sa commande Dcc++)
J’ai aussi écrit un programme de commande en C#, lui aussi disponible à ceux qui le souhaitent.
Amicalement,
Xavier
Voir en ligne : Ma page Dcc++
-
-
-
-
-
Booster multiples 4 mars 2017 16:48, par xavier
Bonjour,
Pour augmenter la puissance de Dcc++, j’envisage d’utiliser de multiples Shield à base de L298.
Avec un shield, on disposerait de deux booster complémentaires de 2A chacun.
Ils recevraient tous les commandes envoyées habituellement à la voie principale.
La détection de court circuit se ferait pour chacun.
Quelqu’un a-t-il déjà exploré cette voie ? Quelles contre indication voyez-vous ?Amicalement,
XavierVoir en ligne : Ma page Dcc++
-
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 5 mars 2017 10:50, par Dominique
Bonjour,
Votre question est très pertinente surtout pour l’échelle HO où les machines consomment plus qu’en N.
Je ne connais pas d’expérience, sur Locoduino, de mise en parallèle de ponts en H de type L298, mais ce doit être possible, en appliquant les même signaux de commande aux différents ponts. Mais il faut toujours se méfier des dispersions de caractéristiques des composants de puissance qui peuvent laisser des micro-court-circuits si les commutations ne sont pas strictement simultanées.
Une autre solution consiste à utiliser des ponts en H plus puissants comme le LMD18200 qui peut facilement tenir 3A (6A en pointe).
En cherchant des ampérages plus importants, vous pouvez vous orienter aussi vers ce produit qui tient 43A :
BTS7960B-DC-43A
J’en ai acheté un mais je ne l’ai pas encore testé.Bien-entendu, vous devrez soigner la détection de court-circuit, cela va de soi :)
Cordialement
Dominique -
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 13 juin 2017 18:53, par Wallart
Bonjour
Peut-on réaliser à partir de Arduino une interface entre CDM Rail et un booster Cobalt Box ?
Cordialement
Jocelyn -
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 13 juin 2017 19:56, par dominique
Bonjour,
Je ne connais pas les interfaces de ces 2 produits. Si vous les décrivez je pourrais peut-être répondre.
Cordialement
-
Bonjour
le logiciel CDM rail est un logiciel gratuit permettant de tracer un réseau et de simuler la circulation de trains.
Le booster Cobalt est celui vendu avec les moteurs d’aiguillage Cobalt avec interface IP. Il possède une entrée track power, une connection Main DCC system,
une entrée DCC system control / Cab bus
une connection pour leur système Alpha (commande des accessoires)
une entrée pour l’alimentation
une sortie Alpha bus / Cab bus extension
une sortie Track Power de 5 ampères
Merci
Jocelyn-
Jocelyn,
Un petit schéma serait bien utile pour expliquer ce que vous voudriez faire avec un Arduino.
Dans votre réponse, il n’y a pas de place pour un Arduino.
Indiquez bien quelles fonctions vous voulez-lui faire faire, quelle interface utilisateur voulez-vous, sur quoi doit il agir, …Là je ne peux pas deviner !
Il vaudrait mieux continuer la discussion sur le Forum car nous sommes totalement hors sujet (ici c’est DCC++) et je vais rapidement effacer cette question.
Merci de votre comprehension.Dominique
-
-
-
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 14 juin 2017 19:40, par Wallart
Etant en retraite, je dispose d’un peu de temps pour redémarrer la réalisation d’un réseau.
Pour des raisons économiques, j’ai commencé par la création du plan sur CDM Rail, qui permet théoriquement de commander les trains et les accessoires.
Je pense éviter la réalisation d’un TCO en utilisant ce logiciel.
Je dispose d’un booster et d’une alimentation Cobalt qui m’a été livrée avec les moteurs d’aiguillages Cobalt IP.
Ce booster dispose d’une entrée Bus Cab.
Est il possible de réaliser une interface sur la base d’un Arduino entre ces deux systèmes me permettant dans un premier temps la commande des aiguillages ?
Merci de votre réponse-
Bon : j’insiste : allez sur le Forum et exposez votre question à nouveau depuis le début : c’est obligatoire pour ne pas polluer cet article sur DCC++ car je ne vois pas le rapport et vous non plus.
J’efface votre question demain (DEMAIN) sur ce sujet mais je pense que votre question a de l’interêt donc allez au bon endroit SVP.
Ce site est sympa et doit le rester.Dominique
-
-
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 15 avril 2020 11:13, par Guy
Bonjour,
Je recherche juste un exemple de programme prenant en compte la rétro-signalisation (une intégration des paramètres décrits par le concepteur) dans l’onglet "Sensor" de ce très bon programme fonctionnant à merveille pour l’ensemble locomotives, accessoires et signaux .
Merci pour vos aides
Cordialement
-
Bornes Arduino 18 juillet 2020 16:01, par Lionel
Bonjour à tous,
D’abord, un grand merci pour ce super projet. En m’appuyant sur la bibliothèque DCCpp j’ai réalisé une carte "mère" qui accueille un Arduino Mega 2560 ainsi que de l’électronique annexe pour des sorties, et également une sortie pour le DCC avec le schéma pour un LMD 18200. En revanche, sur mon PCB, les sorties routées sur le LMD 18200 ne sont pas celles citées en exemple dans le tableau, mais sur les broches 2 et 13, au lieu des 3 et 12.
Dans mon programme, j’appelle bien DCCpp::beginMain(UNDEFINED_PIN, 2, 13, UNDEFINED_PIN) (pour l’instant, je n’ai pas connecté le MAX471 le temps de mettre au point le système). Seulement, voilà, cela ne fonctionne pas, je n’ai pas de courant en sortie du LMD18200 pas plus que de mouvement de machine sur le réseau. En revanche, à titre d’essai, sans passer par mon PCB, en paramétrant les broches 3 et 12, cela fonctionne correctement.
Sauriez-vous m’indiquer ce que j’ai loupé ?
Merci et bonne journée.
Lionel
-
Réalisation de centrales DCC avec le logiciel libre DCC (1) 18 juillet 2020 17:37, par msport
Bonjour, je n’en sais pas assez pour vous donner les détails, mais des broches sont choisies en fonction du timer qui y est attaché.
Impossible d’en changer pour des broches qui ne sont pas attachées à un timer.Pins 5 and 6 : controlled by Timer 0
Pins 9 and 10 : controlled by timer 1
Pins 11 and 3 : controlled by timer 2
Par ailleurs, bien que semblant libres, d’autres sont en fait utilisées par le programme.-
Rebonjour,
Merci pour votre réponse…
Pourtant, dans les explications données (ici : https://www.locoduino.org/spip.php?article187), il est question de la broche 12, et qui fonctionne.
Par rapport aux autres broches libres mais utilisées par le programme, espérons que çà n’interfère pas avec les E/S que je compte utiliser sur la carte !
Bonne soirée…
-
-
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 19 juillet 2020 07:37, par Dominique
Vous ne pouvez pas changer la broche 12 sur un Mega car elle correspond au timer 1 utilisé pour génèrer le signal DCC :
Arduino MEGA :
Timer 0 : pins 4 et 13
Timer 1 : pins 11 et 12
Timer 2 : pins 9 et 10La deuxième broche du timer doit rester libre : on ne peut pas s’en servir pour des E/S (il en reste assez sur un Mega.
-
Comment lire les capteurs ? 16 juillet 2021 15:57, par jean-jacques Goessens
Bonjour,
Novice en DCC, j’ai potassé et pense avoir compris le concept, nouveau pour moi.
Toutefois, il me este une question :
Comment sont gérés les capteurs d’un point de vue matériel ?
je vois que l’on peut gérer les actionneurs à l’aide de modules DCC qui sont connectés sur les rails, mais je trouve peu de littérature pour les capteurs ?
Quelle est la façon la plus "propre" de connecter mes capteurs, une autre carte Arduino sur un autre port USB, des modules déportés ? des modules DCC ?-
Les entrées des Arduino sont toutes faites pour recevoir des capteurs. Décrivez votre projet sur le forum, rubrique "Vos projets" pour avoir des réponses adaptées. (et regardez déjà ce qui est décrit sur le site)
-
-
Réalisation de centrales DCC avec le logiciel libre DCC++ (1) 16 juillet 2021 16:02, par Dominique
Les réponses abondent sur le site : cherchez encore.