Auteur Sujet: Une station DCC complète, polyvalente et économique avec JMRI  (Lu 87494 fois)

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2218
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #165 le: avril 03, 2022, 07:41:27 pm »
Bonsoir,

à priori, vous n'êtes pas sur le fil du montage correspondant qui, sauf erreur, est celui-ci :

https://forum.locoduino.org/index.php?topic=1366.msg15227#msg15227

Cordialement

Dralliam

  • Newbie
  • *
  • Messages: 31
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #166 le: mars 17, 2023, 12:02:00 am »
Bonjour,
J'ai construit le montage à la lettre et j'y ai branché la manette "MA première manette DCC" https://www.locoduino.org/spip.php?article315.
Tout se passe à peu près bien avec 1 locomotive (décodeurs Laisdcc un peu capricieux on dirait), mais si j'en mets 2, lorsque je change de numéro de locomotive (la manette peut en gérer nativement 4), la loco précédemment sélectionnée se met en arrêt (moteur et feux) au moment où je valide la prise de controle de la suivante. Idem si j'alterne à nouveau.
Avez-vous rencontré ce problème ?
J'avoue que je ne sais pas exactement comment décomposer le problème : la centrale marche, la télécommande aussi...
Quel signal bizarre peut bien être envoyé au décodeur au moment de l'alternance ?
Auriez-vous une idée d'analyse à mener ?

Je sais que cette combinaison n'est pas tout à fait conforme à l'esprit de ce montage (JMRI...) mais j'ai aussi besoin d'une utilisation sans PC.

Note : les deux décodeurs ont bien des adresses distinctes programmées avec la voie de programmation

Merci par avance pour votre aide !

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2218
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #167 le: mars 17, 2023, 09:36:43 am »
Bonjour,

il me semble que vous utilisez * (en bas à gauche) et non # pour changer de n° de locomotive.

Commencez par programmer les quatre n° de locomotive avec * .

Ensuite vous pourrez les appeler en cycle avec #.

L'appui sur * arrête tout.

Cordialement

Dralliam

  • Newbie
  • *
  • Messages: 31
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #168 le: mars 18, 2023, 10:02:47 am »
Merci pour votre retour,
Après de nombreux tests dans tous les sens, le problème ne venait pas de la télécommande mais je pense d'un problème de répartition du courant entre 2 locomotives sur des rails sales à la qualite de contact douteuse.
Le "partage" du courant sur un réseau DCC entre toute les machines est peut-être un problème classique, je ne pensais pas que ça arriverait avec un montage conçu pour 3A.

J'atteste donc que le montage Ma première télécommande fonctionne avec "Une station complète,..." !

Bon week-end à tous
« Modifié: avril 17, 2023, 12:12:46 am par Dralliam »

Dralliam

  • Newbie
  • *
  • Messages: 31
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #169 le: avril 17, 2023, 12:22:06 am »
Bonjour,

J'ai été retenu longtemps loin de ce projet, et malheureusement je rencontre toujours ce même problème.
Le piège c'est que parfois "l'arrêt de la locomotive" que je viens de "zapper" a lieu après quelques secondes de marche conjointe des 2 locomotives.

J'ai testé aujourd'hui en envoyant les commandes directement à partir du terminal Série de l'Arduino IDE, en ayant débranché la télécommande, et il se produit exactement la même chose.
Le problème ne vient donc pas de la télécommande mais donc
(1) du programme,
(2) de la carte d'alimentation "ne station DCC complète, polyvalente et économique"
ou (3) des décodeurs (LaisDCC de 2 modèles différents).

Ou alors
(4) est-ce que les choses sont prévues pour que chaque nouvelle commande envoyée annule la précédente et qu'il faut renvoyer, avec une nouvelle commande, un paquet de commandes qui rappelle les anciennes commandes "actives" ?

Cette semaine je vais tester pour de vrai avec JMRI (après la station est sensée être faite pour ça), mais je suis bien embêté car je souhaitait qu'un mode d'exploitation 100% manuel et sans ordinateur soit possible.


« Modifié: avril 17, 2023, 10:53:31 am par Dralliam »

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2218
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #170 le: avril 17, 2023, 11:43:24 am »
Bonjour,

ce montage a été réalisé un grand nombre de fois et pas que par les intervenants de Locoduino.

Si ils avaient rencontré des problèmes, ils auraient été signalés.

Revenez aux basiques : utilisez vous un Uno ?
Testez avec le programme original de Gregg Berman
Vérifiez votre alimentation : quelle type, quelles caractéristiques ?
Quelles adresses utilisez vous ? Réinitialisez vos décodeurs et reprogrammez leur adresse.
Fonctionnent-elles correctement en analogique ?

Avec DCC++, une commande sur une locomotive n’influe pas sur les autres.

Postez nous une photo de votre montage.
Cordialement

Dralliam

  • Newbie
  • *
  • Messages: 31
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #171 le: avril 17, 2023, 02:10:12 pm »
ce montage a été réalisé un grand nombre de fois et pas que par les intervenants de Locoduino.
Si ils avaient rencontré des problèmes, ils auraient été signalés.
Revenez aux basiques...

Merci pour votre patience, je me doute bien que le problème est chez moi >:(

Testé par mon fils ce midi cette fois avec JMRI (pour la première fois) branché sur USB --> ça marche remarquablement bien !

La carte d'alimentation, le programme chargé (prévu pour cette station) et les 2 décodeurs n'ont donc aucun problème.
Ce qui est rassurant

En passant il a constaté que la diode RX (ou TX ?) du Arduino Uno s'allumait de façon régulière à une fréquence assez rapide, signe que JMRI a une communication assez intense avec l'Arduino, même sans qu'aucune consigne ne soit modifiée, ce qui n'était pas le cas avec "Ma première manette DCC".

Le problème vient donc
(1) du montage de (ma)la manette,
(2) du programme (que j'ai chargé) dans la manette
ou (3) de l'adéquation entre le programme de la manette et celui de la station.

En l'occurrence, pour l'instant nous avons tenté d'utiliser le programme prévu pour "station DCC complète, polyvalente et économique avec JMRI" dans la station, sans JMRI,
avec le montage prévu pour "Ma première manette DCC" et son programme standard (ceci faisant écho au point (4) de mon message précédent)

Peut-on / faut-il charger le programme dans "Une station DCC complète, polyvalente et économique avec JMRI" si on veut utiliser avec "Ma première manette DCC" ?

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2218
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #172 le: avril 17, 2023, 02:53:08 pm »

avec JMRI branché sur USB --> aucun problème.

En passant il a constaté que la diode RX (ou TX ?) du Arduino Uno s'allumait de façon régulière à une fréquence assez rapide, signe que JMRI a une communication assez intense avec l'Arduino, même sans qu'aucune consigne ne soit modifiée, ce qui n'était pas le cas avec "Ma première manette DCC".

Normal, la manette n'envoie des ordres que lorsqu'on modifie quelque chose. JMRI interroge en permanence la station ( p.e. le courant consommé ...)


Le problème vient donc
(1) du montage de (ma)la manette,
(2) du programme (que j'ai chargé) dans la manette
ou (3) de l'adéquation entre le programme de la manette et celui de la station.

En l'occurrence, pour l'instant nous avons tenté d'utiliser le programme prévu pour "station DCC complète, polyvalente et économique avec JMRI" dans la station, sans JMRI,
avec le montage prévu pour "Ma première manette DCC" et son programme standard (ceci faisant écho au point (4) de mon message précédent)

Peut-on / faut-il charger le programme dans "Une station DCC complète, polyvalente et économique avec JMRI" si on veut utiliser avec "Ma première manette DCC" ?

Le programme modifié dans l'article "station DCC complète..." est fonctionnellement identique à celui de Greg B. Il n'y a normalement rien à changer.
Vous utilisez un Uno ou un Mega ?
Vous pourriez poster une photo de la manette ?
Postez en retour le programme de "Ma première manette DCC" que vous avez utilisé.

Au fait, vous utilisez des modules HC12 pour communiquer avec la station ?
Vous avez configuré (je pense) la connexion en serial dans le programme "Une station DCC ..." ?

Regardez ce que la manette envoie à JMRI dans le menu / DCC++ / DCC++ Traffic Monitor
Ce que vous pouvez aussi voir aussi sur le serial monitor en la connectant en usb.
Cordialement

Dralliam

  • Newbie
  • *
  • Messages: 31
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #173 le: avril 21, 2023, 09:03:05 pm »
Nous utilisons un Uno R3 (Elegoo) pour la station

Ce qui m'inquiète c'est que le problème est le même
avec manette / sans ordinateur
et directement par lignes de commande via Arduino IDE, en ayant débranché la manette.

(c'est au moins base station qui a un problème, mais pas tant que ça vu que ça a l'air de très bien marcher avec JMRI...)

La manette, quand elle est branchée, est en filaire
Oui c'est bien la "connexion serial" qui est configurée dans le programme

Voici les modifications dans le config.h de la base station :

/**********************************************************************

Config.h
COPYRIGHT (c) 2013-2016 Gregg E. Berman

Part of DCC++ BASE STATION for the Arduino

**********************************************************************/

/////////////////////////////////////////////////////////////////////////////////////
//
// DEFINE MOTOR_SHIELD_TYPE ACCORDING TO THE FOLLOWING TABLE:
//
//  0 = ARDUINO MOTOR SHIELD          (MAX 18V/2A 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

/////////////////////////////////////////////////////////////////////////////////////
//
// DEFINE NUMBER OF MAIN TRACK REGISTER

#define MAX_MAIN_REGISTERS 12

/////////////////////////////////////////////////////////////////////////////////////
//
// 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

[b]#define COMM_INTERFACE   0[/b]

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

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

/////////////////////////////////////////////////////////////////////////////////////
//
// DEFINE PORT TO USE FOR ETHERNET COMMUNICATIONS INTERFACE
//

#define ETHERNET_PORT 2560

/////////////////////////////////////////////////////////////////////////////////////
//
// DEFINE MAC ADDRESS ARRAY FOR ETHERNET COMMUNICATIONS INTERFACE
//

#define MAC_ADDRESS {  0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xEF }

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

_________________________

Voici les modifications dans le DCCpp_Uno.h de la base station :

Ajout en ligne 84 dans la section "// SELECT MOTOR SHIELD"

#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
___________________

Question bête pour utiliser la manette avec JMRI :  :-[
La base station est normalement raccordée en USB
Mais à quoi dois-je brancher la manette ? avec quel port ?

1. Manette branchée "as usual" avec la base station
2. Manette branchée par l'USB de l'Arduino nano à l'USB à l'ordinateur qui fait tourner JMRI
3. Manette branchée par le Tx du Nano à l'ordinateur via un convertisseur série en USB
4. Autre ?

Dralliam

  • Newbie
  • *
  • Messages: 31
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #174 le: avril 21, 2023, 09:05:03 pm »
Je vais aussi de ce pas essayer avec le Mega que j'ai sous la main

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2218
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #175 le: avril 21, 2023, 09:56:48 pm »
Bonsoir,
la manette se branche sur RX/TX du UNO . C'est plus pratique en radio : https://www.locoduino.org/spip.php?article316
Le UNO se branche en USB sur l’ordinateur avec JMRI.
Je vous ai proposé des pistes et posé des questions. Relisez les messages précédents.
Et postez des photos de votre réalisation.

Et je ne peux que vous suggérer de réaliser Ma première centrale DCC pour avoir un montage de référence.
Voir la série : https://www.locoduino.org/spip.php?article304
« Modifié: avril 21, 2023, 10:32:23 pm par msport »
Cordialement

Dralliam

  • Newbie
  • *
  • Messages: 31
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #176 le: avril 23, 2023, 03:21:01 pm »
Bonjour,

Voici des photos de l'installation, encore un peu à l'état brouillon, mais c'est parce qu'on passe pas mal de temps à débrancher / rebrancher pour bien tout tester consciencieusement.

Note : L'Arduino UNO de la station est sous un shield qui nous a permis de proprement centraliser les "prises" de raccordement avec la télécommande, le MAX471 (raccordé en Jaune et Blanc) et la carte de puissance

A suivre : les détails de la suite des tests
« Modifié: avril 23, 2023, 03:23:08 pm par Dralliam »

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2218
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #177 le: avril 23, 2023, 03:40:13 pm »
Quid de votre alimentation ?
Que lit on sur DCC traffic monitor de JMRI  lors des coupures ?
Cordialement

Dralliam

  • Newbie
  • *
  • Messages: 31
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #178 le: avril 23, 2023, 03:50:13 pm »
Audit des informations qui transitent
Les photos sont numérotées

1. Nano de la manette directement branchée à l'Arduino IDE en USB, sans la station
On peut voir les informations qui défilent à chaque pression sur "#" sur le clavier, pour les adresses 3, 4, 5 et 6 de décodeurs.
Exemple dernière ligne : Décodeur adresse 6, vitesse 21, sens 1

2. Manette branchée à la station, sans JMRI - Station connectée par USB à l'Arduino IDE
C'est le cas de figure réalisé à l'origine qui m'a fait constater le problème.
Je note (cf. photo) qu'en cas de changement de consigne, l'adresse du décodeur n'est pas rappelé (dans ce que l'Arduino UNO communique à l'Arduino IDDE)
En lecture directe de ces informations du moniteur série, on ne peut pas savoir à quel décodeur la consigne s'adresse
On voit une séquence de <T1 0 1> qui s'enchaînent, ceci correspond à la pression de la touche "#" sur le clavier de la manette.

Nouvelle description du problème (non pas que ça empire, mais que nous comprenons mieux ce qui se passe) :
En cas de coupure de courant d'alimentation sur la locomotive qui est l'avant dernière à avoir reçu une consigne, elle s'arrête.
Illustration :
1- la locomotive adresse 5 reçoit une consigne --> OK
2- la locomotive adresse 6 reçoit une consigne --> OK
    la locomotive 5 poursuit sa route (OK)
3- micro coupure dans l'alimentation de la locomotive adresse 5 --> la locomotive adresse 5 s'arrête, ne reprend pas sa marche après le rétablissement de l'alimentation

Note : cette micro coupure survenait accidentellement sur des rails "sales" ou en passant sur un aiguillage sans coeur alimenté. Pour les besoins de l'expérience cette situation était reproduite en levant les essieux de prise de courant

A suivre
3. Manette branchée à la station, avec Moniteur DCC JMRI
4. Station branchée à JMRI, commande par JMRI


Dralliam

  • Newbie
  • *
  • Messages: 31
    • Voir le profil
Re : Une station DCC complète, polyvalente et économique avec JMRI
« Réponse #179 le: avril 23, 2023, 04:11:43 pm »
3. Manette branchée à la station, avec Moniteur DCC JMRI
Dans ce cas de figure, la manette empêche la commande des locomotives par les fenêtres "Régulateur" de JMRI. Cf. photo 3bis. : le statut passe à "Inconnu" lorsque la manette est branchée, mais revient à "On" à la première variation de consigne de la manette, sans pour autant que JMRI puisse contrôler les locomotives. Il n'y a pas de "rétro affichage" des consignes Manette dans les fenêtres "Régulateur" de JMRI (ex. JMRI ne reprend pas les valeurs de vitesse)

Il n'y a que la télécommande qui agit, je suppose que le contexte d'utilisation est donc le même qu'au 2.

Et d'ailleurs le problème constaté est le même : lorsque l'avant-dernière loco ayant reçu une consigne perd momentanément son alimentation, elle ne redémarre pas

On voit sur l'image du moniteur DCC de JMRI (resté fonctionnel néanmoins) que, comme avec l'Arduino IDE, on ne lit pas de mention d'adresse (je ne sais pas si c'est normal)

4. Station branchée à JMRI sans manette, commande par JMRI
Ca a l'air de marcher tout à fait normalement
En cas de "coupure d'alimentation" l'avant-dernière locomotive reprend sa marche normale

Sur le moniteur je note une activité TX et RX, l'adresse du décodeur de la locomotive étant rappelée en TX, c'est le seul cas de figure où cette adresse apparaît

Note : si sur la configuration 3. je débranche "à la barbarre" la manette, JMRI peut alors prendre le contrôle des locomotives à la volée