Auteur Sujet: DCC & CVs  (Lu 7229 fois)

Thierry

  • Global Moderator
  • Sr. Member
  • *****
  • Messages: 409
    • Voir le profil
DCC & CVs
« le: janvier 27, 2015, 03:56:51 pm »
Il y a un aspect du DCC qui me laisse perplexe. Lorsqu'une loco est sur sa voie de programmation, une centrale DCC peut l'interroger pour lui demander les valeurs courantes de ses CVs. Comment l'information de la valeur remonte t-elle ? D'ailleurs, est-ce qu'elle remonte ? Je voudrais ajouter la configuration de UAD par des CVs, mais je ne vois pas comment faire cela...

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1204
    • Voir le profil
Re : DCC & CVs
« Réponse #1 le: janvier 27, 2015, 04:08:07 pm »

Thierry

  • Global Moderator
  • Sr. Member
  • *****
  • Messages: 409
    • Voir le profil
Re : DCC & CVs
« Réponse #2 le: janvier 29, 2015, 03:56:55 pm »
C'est effectivement ça. Le décodeur consomme du courant en pointillé pendant un temps mort entre deux paquets DCC pour envoyer des bits, façon morse...
Du coup, je comprend mieux pourquoi mes locos sursautent quand je modifie les CVs de leur décodeur...

Pour arriver à communiquer, il va falloir un petit circuit électronique dit 'Railcom' ...

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1204
    • Voir le profil
Re : DCC & CVs
« Réponse #3 le: janvier 29, 2015, 05:07:39 pm »
Oui, il faut mesurer la consommation du décodeur. On fait ça en mettant une résistance dans le circuit, par exemple 1Ω. Quand le décodeur ne surconsomme pas de 60mA, disons qu'il consomme 100mA, la chute de tension dans la résistance va être de 100mV. Quand il surconsomme, 160mA, elle va être de 160mV. Le problème est que ce différentiel de tension n'a pas de référence de masse. En mettant un ampli op aux bornes de la résistance, on transforme ce différentiel en une tension par rapport à la masse que tu peux ensuite entrer sur une entrée analogique. Je suis pas un expert là dessus mais j'ai un collègue qui peut m'aiguiller.

Il y a un montage sur mes cartes alimentation qui permet de mesurer un courant via un ampli op, il faut sans doute adapter mais il s'agit du même type de montage.

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1204
    • Voir le profil
Re : DCC & CVs
« Réponse #4 le: janvier 31, 2015, 11:30:22 am »
Thierry,

Voici le montage de mesure de chute de tension. Il est extrait des cartes faites par Pierre Molinaro (un collègue) que j'utilise sur mon réseau.



À gauche, on a la tension de base du DCC avant le booster que j'ai arbitrairement fixée à 15V. L'alimentation du booster traverse R3 et entre sur le booster. Quasiment tout le courant passe par R3, R1 et R2 faisant 1MΩ, le courant qui les traverse est négligeable. Le courant io qui traverse R8 est donné par l'équation suivante :

io = (1+u)(V+-V-) / (u R0)

u est le rapport de R5 sur R4. On a forcément R1 = R2 = R6 = R4 et R5 = R7

Donc ici, le courant qui traverse R8 est égal à (1+1x10-3)(V+-V-)/(1x10-3 x 1x106)

donc (1+1x10-3)(V+-V-)/1000

Donc par exemple si 100mA traverse R3, V+-V- = 1 x 0,1 = 0,1

io = 1,001 x 0,1 / 1000 ~ 1mA. Et donc la tension en entrée de l'Arduino est de 2000 x 0,001 = 2V

Si ça monte à 160mA, ça fait 3,2V

D1 empêche que la tension ne monte au dessus de 5V et casse l'entrée analogique de l'Arduino.

Ensuite, il faut changer les valeurs de R5 et R7 selon ce qui est consommé au repos sur la voie de programmation. Une petite campagne de mesure s'impose.
« Modifié: janvier 31, 2015, 03:22:27 pm par Jean-Luc »

Thierry

  • Global Moderator
  • Sr. Member
  • *****
  • Messages: 409
    • Voir le profil
Re : DCC & CVs
« Réponse #5 le: février 02, 2015, 10:26:21 am »
Super, au moins la solution technique existe, il faudra un jour tenter de l'adapter. Mais je me sens bien incapable de le faire tout seul, étant une -presque- bille en électronique...
C'est un projet à garder sous le coude, pour de futurs développement...

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1204
    • Voir le profil
Re : DCC & CVs
« Réponse #6 le: janvier 30, 2016, 11:17:52 am »
Bonjour Thierry

J'ai trouvé un schéma de surconsommation (coté décodeur donc) simple : http://www.franksworkshop.com.au/ModelRail/DCCServoDecoder/DCCServoSchematic.pdf

C'est en bas à gauche. Via un optocoupleur 4N25, le micro pilote un transistor qui consomme sur la connexion DCC. Il faut également un pont de diodes et une résistance. Je vais voir si j'arrive à greffer tout ça sur la carte servo quitte à virer les diodes TX et RX qu'on puisse expérimenter la programmation des CV.

DDEFF

  • Sr. Member
  • ****
  • Messages: 449
    • Voir le profil
Re : DCC & CVs
« Réponse #7 le: janvier 30, 2016, 07:40:13 pm »
Deux-trois remarques :

Citer
io = (1+u)(V+-V-) / (u R0)
u est le rapport de R5 sur R4
Tu es vraiment sûr que u c'est  R5/R4  ???

Dans le pont dont tu parles, il va passer un fort courant (1A) puisque c'est celui qui est dans les rails.
Mais le circuit n'a besoin que d'un tout petit courant et donc de tout petits fils.
Je mettrais bien le pont "en volant" côté bus DCC et de petits fils vers ta carte.
En plus un pont (ou 4 x 1N400x) ça prend de la place et ça chauffe.  8)
C'est aussi bien loin d'une carte.
« Modifié: janvier 31, 2016, 05:39:33 am par DDEFF »

Thierry

  • Global Moderator
  • Sr. Member
  • *****
  • Messages: 409
    • Voir le profil
Re : DCC & CVs
« Réponse #8 le: janvier 30, 2016, 08:20:12 pm »
De mon côté, j'ai trouvé un schéma (http://usuaris.tinet.cat/fmco/dccgen_en.html) qui pourrait faire le même boulot, même si je trouve le tien plus simple et compréhensible...

DDEFF

  • Sr. Member
  • ****
  • Messages: 449
    • Voir le profil
Re : DCC & CVs
« Réponse #9 le: janvier 30, 2016, 08:44:44 pm »
Le célèbre site de Paco !

Pas mal de bonne idées pour le DCC, basées sur des PIC. D'autres choses sont à adapter, d'ailleurs.
Concernant ce schéma, c'est un détecteur de présence.

Au passage, de plus en plus souvent, les nouvelles centrales permettent de programmer la loco en roulant, sans voie de programmation spécifique.

Le schéma s'explique facilement :

On mesure la tension aux bornes de la 12 Ω.
En parallèle de cette 12 ohms, 4,7 kΩ + un potar de 10 kΩ pour régler la sensibilité.
Ces résistances sont nettement >> 12 Ω, donc la résistance réelle approche les 12 Ω, un tout petit peu moins, d'ailleurs.

Le transistor BC547 déclenche quand cette tension dépasse 0,6 V.
Une 1N4004 de protection, une LED pour voir l'occupation et 2 condos pour lisser les tensions.

Et voilà la grosse différence : il déclenche : on ne peut pas mesurer une tension.

Le schéma de Pierre Molinaro, lui, te fournit une valeur de l'intensité qui passe dans la résistance de 1 Ω.
C'est nettement mieux.  ;)
« Modifié: janvier 31, 2016, 05:40:12 am par DDEFF »

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1204
    • Voir le profil
Re : Re : DCC & CVs
« Réponse #10 le: janvier 31, 2016, 09:36:48 am »
Deux-trois remarques :

Citer
io = (1+u)(V+-V-) / (u R0)
u est le rapport de R5 sur R4
Tu es vraiment sûr que u c'est  R5/R4  ???

Je vais vérifier mais me semble bien que oui

Citer
Dans le pont dont tu parles, il va passer un fort courant (1A) puisque c'est celui qui est dans les rails.
Mais le circuit n'a besoin que d'un tout petit courant et donc de tout petits fils.
Je mettrais bien le pont "en volant" côté bus DCC et de petits fils vers ta carte.
En plus un pont (ou 4 x 1N400x) ça prend de la place et ça chauffe.  8)
C'est aussi bien loin d'une carte.

Il n'y  a pas de pont de diode. Le courant est mesuré sur l'alimentation du LM18200 pas sur les rails. C'est donc du continu, pas un signal périodique.

Le courant de traction traverse effectivement la résistance, et seulement la résistance. Comme c'est destiné à la voie de programmation, je ne pense pas que l'on atteigne 1A.  Avec 1A la chute de tension est de 1V et la résistance doit donc dissiper 1W : http://www.tme.eu/fr/details/smd2512-1r-1%25/resistances-cms-2512/royal-ohm/25121wf010jt4e/

Relier les bornes de la résistance à l'ampli op par deux fils risque de donner de moins bons résultats. Le courant qui circule est de l'ordre du μA et donc facilement perturbable par l'environnement. Il faut que l'ampli op soit le plus près possible de la résistance de 1Ω.
« Modifié: janvier 31, 2016, 10:01:08 am par Jean-Luc »

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1204
    • Voir le profil
Re : DCC & CVs
« Réponse #11 le: janvier 31, 2016, 09:58:18 am »
Dans le schéma de surconsommation que j'ai pointé au dessus le gars a mis une résistance de 47Ω ce qui donne environ 250 mA sous 12V. Ça fait beaucoup non ? Si mon calcul est bon ça fait également 3W de dissipation. Certes ça ne dure pas longtemps mais si le logiciel plante, la résistance part en fumées.

DDEFF

  • Sr. Member
  • ****
  • Messages: 449
    • Voir le profil
Re : DCC & CVs
« Réponse #12 le: janvier 31, 2016, 10:18:32 am »
On est OK.
47Ω -> 250mA et 3W. Il faut une grosse résistance !

Question de béotien : pourquoi voulez-vous mesurer une surconsommation ?

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1204
    • Voir le profil
Re : DCC & CVs
« Réponse #13 le: janvier 31, 2016, 11:00:04 am »
C'est la manière dont un décodeur envoie des infos à la centrale. Au mini il fait un ack.

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1204
    • Voir le profil
Re : DCC & CVs
« Réponse #14 le: février 03, 2016, 09:14:05 am »
J'ai contacté le gars qui admet que la surconsommation est inutilement importante.

Entre l'optocoupleur et Q1 on a un montage darlington. J'ai trouvé des optocoupleurs à sortie darlington qui permettent de tirer 100 mA (il faut tirer 60mA mini pour être dans la norme). Ça économise Q1.

Si on veux intégrer ce montage sur la carte servos, il va falloir que je mette le régulateur vertical plutôt que couché. Ça libérera de la place.