LOCODUINO

Parlons Arduino => Vos projets => Discussion démarrée par: Dominique le mars 01, 2018, 11:05:10 am

Titre: Article 232 - Va et vient
Posté par: Dominique le mars 01, 2018, 11:05:10 am
Bonjour,

J’ouvre ce sujet pour le va et vient de l’article 232.

http://www.locoduino.org/spip.php?article232 (http://www.locoduino.org/spip.php?article232)
Titre: Re : Article 232 - Va et vient
Posté par: msport le mars 01, 2018, 10:53:48 pm
Excellent article très complet et très détaillé.
Dans la mesure où on peut envisager de remplacer les détecteurs de consommation par des détecteurs ponctuels (*), où faudrait-il les placer ? En particulier pour la zone B ?
Merci.
* avec les risques encourus.
Titre: Re : Article 232 - Va et vient
Posté par: Dominique le mars 02, 2018, 01:11:34 pm
Le logiciel détecte les entrées dans les zones (pas les sorties). C’est de la détection ponctuelle.

On peut donc facilement remplacer les détecteurs de consommation par d’autres types de détecteurs.

La mesure de vitesse dans la zone B se fait entre l’entrée dans la zone B et l’entrée dans la zone suivante selon le sens de déplacement.
Titre: Re : Article 232 - Va et vient
Posté par: msport le mars 02, 2018, 01:53:54 pm
D'où la question suivante :
a-t-on intérêt à mettre un détecteur à chaque extrémité de la zone B (avec un OU logique) pour être détecté à chaque fois qu'on entre dans la zone B quelque soit le sens ?
Titre: Re : Article 232 - Va et vient
Posté par: Dominique le mars 02, 2018, 02:08:08 pm
Non : tu as besoin d’un détecteur à chaque transition de zone seulement soit 5 détecteurs.

A chaque détection, comme tu sais dans quel sens circule le train, tu en déduis la zone où il entre.
Titre: Re : Article 232 - Va et vient
Posté par: msport le mars 02, 2018, 09:01:10 pm
mais ça ne pose pas un problème de calcul pour la vitesse ?
Peut-être résolu si on place le détecteur au milieu de la zone B ?
Titre: Re : Article 232 - Va et vient
Posté par: Dominique le mars 02, 2018, 09:16:25 pm
Non bien-sur : du moment que tu as un événement à l’entrée de la zone et un autre à la sortie, que tu as noté le temps à chaque événement et que tu connais la distance, c’est tout bon.

V = d/(t2-t1)
Titre: Re : Article 232 - Va et vient
Posté par: msport le mars 03, 2018, 12:06:04 am
Bon, l'heure est tardive, mais je verrais bien les détecteurs positionnés au bout des flèches vertes sur le schéma joint ...
Titre: Re : Article 232 - Va et vient
Posté par: Dominique le mars 05, 2018, 07:11:18 pm
Dans l’article il y a 5 zones et 5 detecteurs.

Si tu utilises des détecteurs de consommation, chaque détecteur est activé quand le train entre dans la zone et se désactive quand il en sort, quelque soit le sens de la marche. C’est pareil quand le train va de A vers B ou de C vers B. Dans mon exemple, il quitte B quand on détecte A ou C.

Si tu utilises des détecteurs ponctuels (barrière infrarouge à la place des coupures de rail) placés à chaque transition de zone (sauf les tamponnoirs aux extrémités), il en faut toujours 5 (et pas 6) et chaque détecteur indique un passage de train (début du train dans le sens de la marche quand le faisceau est coupé). Il faut alors connaître le sens de la marche pour déterminer dans quelle zone le train entre.

Pour mesurer la vitesse, il faut mesurer le temps entre les 2 détections qui encadrent la zone B.

Dans mon exemple, je n'utilise pas la libération de zone (arrêt de la consommation) mais seulement la détection de consommation à l’entrée de zone: donc le logiciel est le même pour des détecteurs ponctuels (en faisant bien attention au sens de la marche comme dans mon logiciel).
Titre: Re : Article 232 - Va et vient
Posté par: Dominique le mars 07, 2018, 05:20:08 pm
Ca y est c'est corrigé, merci Michel d'avoir trouvé cette coquille; j'explique :

La version du logiciel que j'avais mise en téléchargement était la V200 au lieu de la V300.
Maintenant c'est corrigé et je confirme qu'il n'y a pas de zone D (une petite erreur dans le texte a aussi été corrigée).

Mais si quelqu'un a besoin d'une version avec une zone supplémentaire, je tiens le code à sa disposition.

Amicalement
Dominique
Titre: Re : Article 232 - Va et vient
Posté par: bagou91 le avril 04, 2018, 05:29:16 pm
Bonjour,

Merci pour ce nouvel article qui nous fait encore découvrir comment se monter un petit projet simple :)

J'aurai quelques questions sur le détecteur de conso DCC: je n'arrive pas bien à le comprendre.

Peux tu expliquer son fonctionnement avec le sens de courant entrée (broche 3 ?) -> sortie (broche 2 ?) et le rôle des composants qui sont parcouru par le courant ?
Tu indiques qu'il faut relier les broches 1 et 3 sur la centrale. Mais tu parles de l'arduino ?
Je pensais qu'on utiliserai plutôt les broches au niveau de l'optocoupleur sur K4.

Autre question sur le détecteur de conso PWM:
Je n'arrive pas à trouver dans ton article et dans les fichiers de code, l'explication sur le filtrage logiciel.

Merci pour tes éclaircissements.
Titre: Re : Article 232 - Va et vient
Posté par: Dominique le avril 04, 2018, 11:38:38 pm
Bonsoir Bagou91,

Le principe du détecteur est simple : il fait passer le signal DCC destiné aux rails dans 2 diodes en série pour provoquer une chute de tension de 1V environ qui est convertie en courant par un transistor pour charger un condensateur. Le condensateur se décharge dans la diode émettrice d'un optocoupleur dont le transistor en collecteur ouvert est relié à l'Arduino. Il n'a pas le temps de se décharger avant la période suivante du DCC. Ça retarde un peu la détection (quelques ms) mais ce n'est pas gênant.

(http://www.locoduino.org/IMG/png/detecteur_consommation.png)

Les 2 fils venant de la centrale DCC courent tout le long du réseau et une paire de fils prélève ce signal pour chaque zone où il faut détecter un train. Les arrivées DCC sont donc branchées sur 1 et 3 de K3 et les rails sur 2 et 3. La borne 3 est commune et les diodes sont en série entre 1 et 2. Il y a 2 séries de diodes en sens inverse car le DCC est du courant alternatif.

L'Arduino se branche sur K4 : La broche 3 doit être reliée à la masse (GND) et la broche de l'Arduino sur 1 ou 2 (c'est pareil). La broche de l'Arduino doit être configurée en INPUT_PULLUP sinon  ça ne marche pas !

Il n'est pas nécessaire d'avoir 2 optocoupleurs, un seul suffit.

ATTENTION, il faut bien protéger le réseau contre les court-circuits sinon les diodes ne vont pas supporter (ici 2A mais j'ai remplacé les SB260 par des 1N5819 qui ne supportent qu'1A) : la centrale doit couper le courant immédiatement en cas de dépassement de seuil de courant. C'est la raison d'être des capteurs Max471 dans les centrales DCC++.

Pour le PWM, j'ai seulement mentionné qu'une autre version de détecteur est possible pour le PWM avec un lien vers le Forum où il y a un schéma. Mais ce montage n'a pas de filtrage (le condensateur) et délivre un signal haché à l"Arduino qui ne peut pas être utilisé tel quel : il faut un filtrage qui est une simple intégration (filtrage passe bas logiciel) qui peut se faire en additionnant plusieurs mesures et en prenant la moyenne.

J'espère que j'ai bien répondu à tes questions  :D



Titre: Re : Article 232 - Va et vient
Posté par: bagou91 le avril 05, 2018, 07:15:31 am
Merci pour tes explications.
Je comprend mieux son fonctionnement et ses branchements.
Titre: Re : Article 232 - Va et vient
Posté par: Dominique le avril 18, 2018, 09:06:21 am
Comme je l’ai répondu sous l’article :

Oui j’y pense notamment avec une gare intermédiaire comportant une voie d’évitement pour permettre le croisement de 2 trains en sens inverse. Evidemment toutes les distances et les durées seront paramètrables.
Mais un peu de patience SVP !
Méfiez-vous : c’est un projet qui peut être difficile pour un débutant. Une expérience de la mise au point est nécessaire et un environnement PC (ou Mac c’est mieux) stable et maitrisé est indispensable.
Titre: Re : Article 232 - Va et vient
Posté par: Souris verte le mai 26, 2018, 05:47:11 pm
Bonjour,

Je voudrait ajouter la gestion CAN... j'ai l'impression de louper quelque chose...
J'envisage de faire :
Pin 2   <-> ENC1 encodeur pin 1
Pin 3   <-> PWM (enable, HIGH = marche, LOW = stop) pour LMD18200
Pin 4   <-> ENC2 encodeur pin 2
Pin 5   <-> detecteur Gare 1
Pin 6   <-> detecteur zone A
Pin 7   <-> detecteur zone B
Pin 8   <-> detecteur zone C
Pin 9   <-> DIR (DCC = OC1B output) pour LMD18200
Pin 10  <-> CS Module CAN (pas le choix)
Pin 11  <-> SI Module CAN (il n'y aura plus de LED rouge d'erreur)
Pin 12  <-> SO Module CAN
Pin 13  <-> SCK Mdule CAN
Pin A0  <-> Mesure de courant du Max471
Pin A1  <-> bouton OK (encodeur)
Pin A2  <-> INT Module CAN
Pin A3  <-> inter lumière
Pin A4  <-> SDA LCD
Pin A5  <-> SLC LCD
Pin A6  <-> inter marche/arret
Pin A7  <-> detecteur Gare 2

Est-ce correct?
Merci
Yannick
Titre: Re : Article 232 - Va et vient
Posté par: Mafred52 le août 21, 2018, 01:02:18 pm
Question d'un Newbie, excusez moi si j'écris une bétise  :-\
Dominique dans ton programme du va et vient, si j'ai bien lu, tu utilise la résistance de pull up interne de l'arduino mini.
  pinMode(STARTSTOP, INPUT_PULLUP);
idem pour bouton OK de l'encodeur, inter marche/arrêt, lumière et les 5 entrées des détecteurs de conso.
Donc pas besoin de m'embêter à souder des résistances de 10k sur tout ça ?
Oui, non ?
Fred
Titre: Re : Article 232 - Va et vient
Posté par: Dominique le août 21, 2018, 07:31:08 pm
Ben Oui  ;D
Titre: Re : Article 232 - Va et vient
Posté par: Mafred52 le août 26, 2018, 09:09:46 pm
Bonjour Dominique
J’ai assemblé sur un bout de contreplaqué pour essai les différents modules de l’automate du va et vient, aucun détecteur de consommation relié dans l’immediat.
On/Off DCC fonctionne bien, mais j’ai la led rouge erreur qui clignote.
Étant en HO (18v) j’avais commandé une alim d’ordi portable ajustable 18v/21v j’ai reçu une alim fixe de 19v...
1 volt de plus est ce dangereux ?
Concernant les leds de l’inter marche/arrêt et de l’inter lumière elles n’utilisent aucun port de l’arduino mais sont soudées sur les interrupteurs ?
Je souhaiterais pouvoir activer sur la loco du va et vient une fonction déclenchant une annonce de départ ou d’arrivee en gare.
Pas trop compliqué à programmer ?
Fred
Titre: Re : Article 232 - Va et vient
Posté par: msport le août 26, 2018, 09:57:37 pm
Bonsoir,
seuls le LMD18200 et le régulateur 5V sont soumis à la tension d'entrée, aucun problème avec 19V.
Par contre ne pas protéger le montage contre les courts-circuits me semble risqué, le LMD18200 est donné pour 3A en continu, 6A pendant 200 ms. Une alimentation de portable peut délivrer entre 60 et 90W en permanence, soit de 3 à 4,5A. Donc éviter de laisser trainer un tournevis ou une pince sur les rails ...
Par ailleurs, l'alimentation 5V représentée est une alimentation avec un pont de diode en entrée. Pour avoir une continuité de masse correcte, il faut le neutraliser en pontant les diodes : une borne ira directement au plus 15V, une borne ira directement au moins.
Toujours penser à mettre une résistance en série avec les LED.
Titre: Re : Article 232 - Va et vient
Posté par: Dominique le août 27, 2018, 07:43:44 am
Michel,

Oui tu as raison, sur le circuit régulateur 5 V représenté il vaut mieux ne pas monter le pont de diodes et mettre des liaisons directes au +12 et la masse. Le kit est vendu non monté.

Par contre la protection contre les court-circuits est assurée par le Max471 et le logiciel (voir le paragraphe sur la mesure de courant).

Fred,

Citer
Concernant les leds de l’inter marche/arrêt et de l’inter lumière elles n’utilisent aucun port de l’arduino mais sont soudées sur les interrupteurs ?
C’est un alternative aux leds commandées par logiciel. Les 2 sont possibles

Citer
Je souhaiterais pouvoir activer sur la loco du va et vient une fonction déclenchant une annonce de départ ou d’arrivee en gare.
Pas trop compliqué à programmer ?
Cela existe déjà avec la fonction « lumière ». Tu peux dupliquer les fonctions mTrain.allume() et mTrain.eteint() et les affecter à une autre fonction de la loco.

Titre: Re : Article 232 - Va et vient
Posté par: Dominique le août 27, 2018, 07:53:25 am
Citer
j’ai la led rouge erreur qui clignote.

Si les détecteurs ne sont pas branchés et s’il n’y a pas de loco sur les rails, le logiciel va forcément trouver une erreur !

J’ai peut-être oublié d'éteindre la led erreur lorsque la condition d’erreur disparaît. A vérifier quand je ferai le montage pour l’expo d’Orleans.
Titre: Re : Re : Article 232 - Va et vient
Posté par: msport le août 27, 2018, 10:31:57 am
... aucun détecteur de consommation relié dans l’immédiat ...

 ... la protection contre les court-circuits est assurée par le Max471 et le logiciel (voir le paragraphe sur la mesure de courant).

C'est bien l'absence de la mesure de courant qui ne permet pas la protection contre les court-circuits ...
Titre: Re : Article 232 - Va et vient
Posté par: Mafred52 le août 27, 2018, 09:33:51 pm
Bonjour,

Mon alim d'ordi est une 65W qui me sort 19V continu et 3.42A
D'après la notice elle est protégée contre les courts circuits et les surtensions.

Ma petite alim 5V était toute montée, mais comme vous me le conseillez je pontrais les diodes de celle ci pour assurer la continuité du GND.

Je vais continuer l'assemblage des détecteurs de conso et monter tout ça avec un bout de réseau ferroviaire pour être en conditions réelles et voir ce que donne la led rouge d'erreur après tout ça. 


Merci pour vos commentaires et précieux conseils.
Fred

Titre: Re : Article 232 - Va et vient
Posté par: msport le août 27, 2018, 11:56:00 pm
Au pire (qui n'est jamais sur) les 65W seront dissipés dans le LMD18200. Il est théoriquement protégé par un thermal shutoff à 170°. Mais mieux vaut ne pas tester son efficacité trop souvent.
Titre: Re : Article 232 - Va et vient
Posté par: Dominique le août 28, 2018, 09:18:32 am
Je le répète, si le Max471 est bien monté et câblé en série avec le LMD18200, relié sur A0, et si le logiciel que j’ai fourni est actif, vous pouvez court-circuiter les sorties du LMD18200.

Qui n’a jamais de court-circuit sur son réseau ?

J’aimerais voir un oscillogramme du phénomène !
Titre: Re : Article 232 - Va et vient
Posté par: msport le août 28, 2018, 09:41:11 am
Je crois qu'on est tout à fait en phase.

J'ai mal interprété quand Mafred a dit "... aucun détecteur de consommation relié dans l’immédiat ...". J'ai pensé qu'il parlait du Max471.
Mais on ne m'a pas remis sur la bonne voie ...

Je confirme que ce montage à Max471 est parfaitement efficace. (Comme d'ailleurs celui du shield moteur)
Titre: Re : Article 232 - Va et vient
Posté par: Dominique le janvier 09, 2019, 03:01:52 pm
Je viens de produire une nouvelle version du logiciel du Va et Vient qui permet, notamment, de piloter une machine en manuel a l'aide de la molette centrale, en avant comme en arriere.

Toutes les fonctionnalites sont decrites dans la notice qui se trouve ici :
http://www.locoduino.org/IMG/pdf/noticevaetvient304.pdf (http://www.locoduino.org/IMG/pdf/noticevaetvient304.pdf)

Cette version est en telechargement ci-dessous (format zip)

(http://www.locoduino.org/IMG/pdf/noticevaetvient304.pdf)
Titre: Re : Article 232 - Va et vient
Posté par: Steve Cox le juin 29, 2019, 02:57:32 am
Hi everyone

Apologies for writing this in English.

I have attempted to build this project, but I am receiving an error when compiling:
exit status 1
DCCpp.h: No such file or directory

Could someone please explain exactly which libraries I need to install?

Thank you
Steve Cox
Waikanae, New Zealand
Titre: Re : Re : Article 232 - Va et vient
Posté par: Dominique le juin 29, 2019, 06:42:53 am
Hi everyone

Apologies for writing this in English.

I have attempted to build this project, but I am receiving an error when compiling:
exit status 1
DCCpp.h: No such file or directory

Could someone please explain exactly which libraries I need to install?

Thank you
Steve Cox
Waikanae, New Zealand

Yes, the library is here :
https://github.com/Locoduino/DCCpp (https://github.com/Locoduino/DCCpp)

And, also, from the library manager of the Arduino’s IDE.

Thanks to visit and DIY a Locoduino project  ;D

Dominique
Titre: Re : Article 232 - Va et vient
Posté par: Jean-Luc le juillet 01, 2019, 06:43:50 pm
Hello Steve

The project uses the DCCpp library (Thierry is the author). This library is available through the library manager of the IDE. In Tools menu, choose Manage libraries... and type DCCpp in the search box

Best regards

PS: to translate you can use this excellent translator: https://www.deepl.com/translator
Titre: Re : Re : Article 232 - Va et vient
Posté par: Dominique le juillet 01, 2019, 07:00:55 pm
PS: to translate you can use this excellent translator: https://www.deepl.com/translator

Hello Jean-Luc,

Il est excellent ce traducteur !

Ce serait pas mal de citer ce traducteur au plus haut niveau du site éditorial et du forum pour faciliter la vie de nos amis non-francophones  ;D

Amicalement
Dominique
Titre: Re : Article 232 - Va et vient
Posté par: Steve Cox le juillet 08, 2019, 09:21:12 pm
Merci beaucoup pour vos réponses utiles.

Lorsque j'essaie de vérifier le code (Arduino IDE version 1.8.9), je reçois le message d'erreur suivant :

"Documents\Arduino\libraries\DCCpp\src/Sensor.cpp:142 : d'autres références non définies à `eServer' suivent"

J'ai obtenu les bibliothèques actuelles du dépôt Locoduino Github et je les ai extraites dans mon dossier Bibliothèques.

Pouvez-vous me faire des suggestions sur la façon dont je pourrais surmonter cette erreur ?

Santé à vous
Steve
Titre: Re : Article 232 - Va et vient
Posté par: Didier44 le juillet 09, 2019, 10:00:01 am
Hello Steve,

Je suis utilisateur de DCCpp et la compilation se passe bien.
Toutefois j'ai réinstallé comme toi la bibliothèque en l'extrayant directement dans mon dossier bibliothèque et alors la compilation donne la même erreur.

Pour corriger ce problème:
- supprime le répertoire DCCpp du répertoire des bibliothèques
- installe DCCpp dans Arduino IDE avec Tools/Manage libraries
- puis rechercher DCCpp et ensuite Install.

Avis à tous : quelqu'un pourrait il m'expliquer cette différence ? Thierry une idée ?

Have a good day Steve

Didier
Titre: Re : Article 232 - Va et vient
Posté par: Steve Cox le juillet 09, 2019, 03:47:56 pm
Hi Didier

Thank you so much for that fix, it was driving me nuts :-)

I also would like to know what the difference is.

Thanks again
Steve (Waikanae, NZ)
Titre: Re : Article 232 - Va et vient
Posté par: Thierry le juillet 09, 2019, 05:16:54 pm
Sans avoir la structure des répertoires avec le problème sous les yeux, difficile de se prononcer.
Ce qui parait évident, c'est que les fichiers de la bibliothèque ne sont pas au bon endroit. C'est d'ailleurs ce que dit la compilation...
Le résultat doit être 'Documents/Arduino/Libraries/DCCpp/' avec ici un répertoire 'src' qui contient tous les sources de DCCpp.
Utiliser l'installation proposée par l'IDE, c'est juste l'assurance de bien placer les fichiers. Il est quand même possible de dézipper une bibliothèque à la bonne place, mais en respectant le nom du répertoire et de son contenu (pas de Libraries/DCCpp-master par exemple, pas de Libraries/DCCpp/DCCpp/src, etc...)

Its not easy to analyze a bad installation without the full folder structure under the eyes. The compiler says 'A file is not at the good place' , and probably he's right ! Install the libray through the IDE is the best way to avoid mistakes, but it is also possible to uncompress a zip files manually. The only condition is to be sure that the folder structure is conform. No 'Libraries/DCCpp-master' folder, no 'Libraries/DCCpp/DCCpp/src', etc...