Auteur Sujet: Problème de retour d'info des decodeurs  (Lu 1518 fois)

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1709
  • 100% Arduino et N
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #15 le: août 09, 2019, 02:32:24 pm »
Voilà ce que j'ai observé lors d'une réponse d'un décodeur sur interrogation d'un CV. On a de l'ordre de 0,3V pendant 5 à 6 ms pour chaque impulsion : faut pas le rater !!!

Fabien73

  • Newbie
  • *
  • Messages: 27
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #16 le: août 09, 2019, 08:49:53 pm »
ben lorsque j'ai pris une ptite loco Arnold, sur la notice il y a un ptit schéma avec une résistance de 47ohm en série
Fabien

bobyAndCo

  • Global Moderator
  • Sr. Member
  • *****
  • Messages: 362
  • HO avec DCC++
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #17 le: août 09, 2019, 10:00:46 pm »
Tu peux être plus précis ? Joindre copie de cette notice ?

msport

  • Hero Member
  • *****
  • Messages: 655
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Re : Problème de retour d'info des decodeurs
« Réponse #18 le: août 10, 2019, 10:20:04 am »
ben lorsque j'ai pris une ptite loco Arnold, sur la notice il y a un ptit schéma avec une résistance de 47ohm en série
Si c'est une résistance montée d'origine, on peut supposer qu'il s'agit d'un moteur 5V avec une résistance d'adaptation pour 12V -??? Mais avec le schéma ce serait plus facile que de deviner.
Cordialement

Fabien73

  • Newbie
  • *
  • Messages: 27
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #19 le: août 10, 2019, 08:12:59 pm »
je vous mets en PJ la notice du décodeur.
Fabien

bobyAndCo

  • Global Moderator
  • Sr. Member
  • *****
  • Messages: 362
  • HO avec DCC++
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #20 le: août 10, 2019, 08:20:18 pm »
Merci pour la doc. Il faut maintenant tester. J'ai cependant à priori un petit doute car la doc concerne un LokPilot (v4.0) et personnellement je n'ai jamais rencontré de problème avec ces décodeurs.

Mais au point ou nous en sommes, c'est à dire sans le moindre début de solution, tout est bon à prendre.

Fabien73

  • Newbie
  • *
  • Messages: 27
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #21 le: août 10, 2019, 09:17:32 pm »
Du coup je suis passé avec des ACS712 pour le contrôle des courants.
Mais j'ai bien un retour maintenant mais farfelu je trouve.
JMRI me donne une adresse de loco de 127 alors que la central intellibox me donne 1.
Fabien

msport

  • Hero Member
  • *****
  • Messages: 655
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Re : Problème de retour d'info des decodeurs
« Réponse #22 le: août 11, 2019, 03:21:52 pm »
Voilà ce que j'ai observé lors d'une réponse d'un décodeur sur interrogation d'un CV. On a de l'ordre de 0,3V pendant 5 à 6 ms pour chaque impulsion : faut pas le rater !!!
Le module MAX471 que j'utilise a une résistance de 2000 ohms standard qui donne 1V/A en sortie.
0,3V correspond donc à 300 mA, classique pour le N.
Une résistance de 47 ohms ne changera pratiquement rien ici puisqu'elle va entrainer une chute de tension de 1,5V donc de l'ordre de 10%.
J'imagine que le but est de protéger le décodeur contre des manipulations hasardeuses.
A essayer aussi le condensateur de 22 pf à 270 pF qui fait merveille pour le circuit décodeur de Mynabay.
Cordialement

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1709
  • 100% Arduino et N
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #23 le: août 11, 2019, 06:24:27 pm »
Je suis en "train" de tester un booster très économique et puissant (6 à 8A), le TLE9201SG avec une mesure de courant toute simple : une résistance de 40mΩ et un ampli de mesure de courant ZXCT1086, selon ce schéma suggéré par Jean-Luc.



Le montage est piloté par un Nano qui contrôle le TLE9201 par les pin :
  • 3 : PWM
  • 10 : DIR
  • 7 : DIS (à LOW)

Pour tester , j'utilise une version très expurgée de DCC++ à l'aquelle j'ai ajouté l'interrogation de l'adresse (courte et longue) du décodeur.
J'ai ajouté une sortie print() du courant mesuré dans la fonction CurrentMonitor::check()

J'ai fait quelques mesures de courant avec ce montage, en affichant la valeur de la variable current obtenue par lissage exponentiel de la lecture sur la pin A0 reliées à la sortie "current sense du montage :
current = analogRead(A0) * 0.01 + current * 0.99
Cela donne ces valeurs (lues toutes les secondes) : 5.28 5.14 5.16 4.79 4.83 4.89 5.06 4.82 5.49 5.39
Ensuite, le lance une demande de lecture de l'adresse DCC d'une petite loco (autorail Ganter en N) : <rm123|123|1 24> : succès ! j'obtient l'adresse 24 (qui est la bonne réponse).

Ensuite je fait rouler la machine : <T1 50 1> 3.40 22.53 26.85 36.03 43.54 46.84 45.02 41.78 42.24 42.34 39.94  Toujours le courant lissé lu toutes les secondes.

Le courant traversant la résistance de 40mΩ est I. Le gain de l'ampli est 50.
La tension sur A0 est I*0,040*50 = 2*I
Les valeurs lues sur A0 correspondent à peu près à 5mV par unité (1023 pour une tension de 5V) (voir article http://www.locoduino.org/spip.php?article57)

En roulant ma loco indique 45 sur A0 donc 45*5 = 225 mV, soit un courant mesuré I = 225/2 = 112,5 mA.
A l'arrêt (avant la lecture de l'adresse) on lit 5*5=25mV soit I =12,5mA (c'est la consommation du décodeur dans la loco)

Je pense que tout ceci est cohérent et ce montage ouvre des perspectives  :D
Le montage en CMS (voir photo) occupe 5cm par 2cm et est l'équivalent d'un LMD18200 (double intensité) et d'un Max471 (non limité à 3A mais à 6A).

Amicalement
Dominique
« Modifié: août 11, 2019, 06:38:57 pm par Dominique »

Fabien73

  • Newbie
  • *
  • Messages: 27
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #24 le: août 12, 2019, 06:08:07 pm »
Bonjour tout le monde.
Je reviens sur mon capteur de courant qui est un ACS712 20A avec une tension de 2.5v sans conso de courant et un ratio de 100mV/A.
Y a t'il des changements à faire dans le programme DCC++?.
Par avance merci a tous.
Fabien

msport

  • Hero Member
  • *****
  • Messages: 655
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #25 le: août 12, 2019, 09:25:06 pm »
Deux changements : la sensibilité est 10 fois moindre : 100mV/A au lieu de 1V/A et l'offset de 2,5V au lieu de 0.
Le code donné en exemple est ci dessous.
Bonne chance.
Cordialement

Fabien73

  • Newbie
  • *
  • Messages: 27
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #26 le: août 12, 2019, 09:36:20 pm »
merci bien je vais essayer de voir ce que je peux faire
mega cool
Fabien

Fabien73

  • Newbie
  • *
  • Messages: 27
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #27 le: août 19, 2019, 07:10:05 pm »
Bonjour tout le monde.
Je reviens vers vous car j'ai besoin d'aide pour la programmation de DCCpp pour fonctionner avec un ACS712 20A.
C'est surtout sur la voie de programmation des CV que ça va me poser problème car je n'ais plus la même sensibilité ni le même offset.
En parcourant le forum j'ai vu que des personnes l'utilisaient aussi, mais à aucun moment ils ne parlent des modifications apportées à DCCpp.
Par avance je vous remercie des infos que vous pourrez me fournir.

Fabien

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1709
  • 100% Arduino et N
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #28 le: août 19, 2019, 09:50:27 pm »
Dans un premier temps, tu essayes : probable que ça va marcher car DCCpp s’adapte automatiquement au niveau de base.

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 500
    • Voir le profil
Re : Problème de retour d'info des decodeurs
« Réponse #29 le: août 20, 2019, 10:41:35 am »
Plus j'avance, plus je pense que c'est un problème de timing plutôt que de niveau. la norme (https://www.nmra.org/sites/default/files/s-9.2.3_2012_07.pdf  ligne 46) définit une fenêtre assez étroite de 6ms de retour de communication, après l'envoi de la fin du dernier paquet,

Citer
General Acknowledgment timing
For either type of Acknowledgment, if a Service Mode Write is being performed, Acknowledgment pulse(s) should
not occur from the decoder until internal updating of all affected non-volatile data storage is complete in the
55 decoder. During Service Mode the Programmer should scan for any Acknowledgment current pulse(s) in the
Acknowledgment time window starting at the Packet End bit of the second service mode instruction packet and
extending through the required number of instruction packets and in the case of write operations through the
specified decoder-recovery-time A Command Station/Programmer may not stop sending packets to the
programming track (which turns off power to the decoder) until the end of the Decoder-Recovery-Time.

et je ne suis pas sûr :

1 que DCCpp respecte ce timing
2 que tous les décodeurs respectent le timing !