Passage à niveau géré par Arduino (5)
Amélioration et résolution des problèmes
. Par : Christian
Vous répondez à :
Bonsoir.
Cela fonctionne.
Merci de votre aide.
Salutations. P
41 Messages
-
Passage à niveau géré par Arduino (5) 18 janvier 2021 15:46, par Gamulf
Bonjour,
J’ai réalisé le montage et l’ai essayé. Un servo ne tourne pas dans le bon sens ; ne devrait-il pas être anti-horaire pour que les deux 1/2 barrières bloquent le passage ?
-
Avez-vous monté les deux demi-barrières du même côté de la voie ? (cas de la moitié d’un PN SAL4)
Si oui, effectivement un des deux servos ne tourne pas dans le bon sens, mais ce montage ne propose pas un SAL4 mais un SAL2, auquel cas, par symétrie, chaque barrière joue un rôle identique. Revoyez la figure 1 de l’article 3 et imaginez-vous prendre la barrière la plus près de vous et l’installer de l’autre côté de la voie, ce qui oblige à la tourner de 180°.
-
-
Passage à niveau géré par Arduino (5) 18 janvier 2021 17:21, par JPB
Bonjour,
Concernant ce sujet très complet, voici ma config :- 2 barrières gérées par servos très proches de l’arduino
- 2 feux clignotants
- détection par IR (TCRT5000L)distants de 70/80 cm du PN et donc de l’arduino
- Arduino nano sur alim bien séparée du feeder du réseau
En fait tout fonctionne correctement, la détection se fait bien sauf que, dès que je pose une loco sur les rails quel que soit l’endroit ou elle se trouve sur le réseau, les barrières se ferment au moindre bougé de la loco.
J’ai posé des condos de filtrage 4700 µF, des 100nF un peu partout et à proximité de chaque équipement, rien y fait.
Mon réseau est en analogique et une alim distincte alimente les voies à partir d’une régulation à transistor 2N3055
Avez-vous un ou plusieurs conseils concernant ce soucis ? Câbles blindés peut-être !
-
Alimentation des voies par 2N3055 : de fabrication personnelle ou achetée dans le commerce ?
Que tout fonctionne correctement hors locomotive est déjà une bonne chose. Le problème vient donc du courant traction ou de la locomotive. Que se passe-t-il si on change de locomotive ? Avez-vous essayé d’éloigner le Nano en allongeant les fils des servomoteurs ? Les servomoteurs sont alimentés comment ?-
- Oui alim perso mais plan pris sur des sites de trains miniatures.
- Quelle que soit la loco, le phénomène se produit. Comme si des parasites perturbaient le système. Certaines sont même équipées du "roulnet"
- J’ai câblé le nano juste au-dessous du plateau à proximité du PN. Les fils des servos sont donc câblés au plus court et je n’ai pas essayé d’éloigner la carte...
- Les servos sont alimentés par une alim stabilisée indépendante à deux sorties. 8V pour l’arduino et 5V pour les servos, masses reliées.
Je pense que les micro coupures entre les rails et la locos perturbent le système mais je pêche pour m’en dépêtrer. Je vais essayer d’éloigner la nano pour voir...
-
Pour vérifier si le problème vient de l’environnement ou des alimentations (via les masses p.e.) je propose de substituer pour test les alimentations des servos et du nano par deux braves piles plates 4,5V. Le nano via le +5V.
-
Bonjour,
Merci pour ce conseil. Avant de déplacer et rallonger des fils, je vais passer par cette étape (piles).
Dans tous les cas, je me souviens à l’ére de la tv en analogique, perturber allègrement la télévision du salon :) Je viens rendre compte dès que possible de l’avancée.J’ai oublié au passage : Excellents site et forum très riches en faveur de notre passion du train miniature. Merci entre autre pour ce superbe sujet très complet...
-
Compte rendu de l’opération piles...
Test fonctionnel non concluant, toujours autant de perturbations.
Je vais tester cette maquette de PN sur ma ligne de test de 1m et voir pour remplacer mes alims. Le fait d’avoir seulement du redressé double alternance fait une superbe antenne avec mon feeder. Je pense que ça vient de là et que je vais aussi avoir des soucis quand j’aurai branché mes 8 aiguilles (plan modelleisenbahn...)
Je viendrai donner des nouvelles si ça peut aider un membre...
-
Au vu de tout ce qui a été dit, je pense que le problème est l’alimentation en courant traction : avec les rails, ça rayonne bien. Et la double alternance redressée n’est pas la panacée même si les plans ont été trouvés sur un site de modélisme ferroviaire !
Dans un premier temps, essayez d’éloigner le Nano des rails ou bien se procurer une autre alimentation pour le courant traction. Hélas, dans notre hobby, les parasites sont très nombreux et perturbent beaucoup les microcontrôleurs. Un montage fonctionnel au banc d’essai peut se mettre à dérailler (sans jeu de mot) en condition réelles ; nous l’avons tous subi.
Pour ma part, le PN a été testé avec un coffret TIB : locomotive PIKO et alimentation de base PIKO et comme je l’ai dit, plus de 100 tours de circuit consécutifs sans problème.-
J’ai des alims qui vont bien(en théorie) et je vais tâcher de régler un à un chaque problème... Mes voies sont dans un gernier isolé et hors poussières mais je n’y monte pas tous les jours ! un nettoyage est nécessaire à chaque démarrage :)
Merci pour ta contribution et tes réponses rapides.
-
De rien.
Bonne chance pour la recherche d’une solution à ce problème.-
OUF !
problème résolu... Comme quoi une simple idée venue d’ailleurs ! J’ai déporté l’arduino du plateau vers le TCO et je n’ai plus de "parasitage". Ce qui me semblait complètement farfelu au départ du fait des tensions de traction diverses y transitant. Le fait de câbler court me semblait tellement évident !Merci à toi et à tous ceux qui animent ce forum/site
Amicalement,
-
-
-
-
-
-
-
-
Passage à niveau géré par Arduino (5) 18 janvier 2021 17:33, par Gamulf
Merci pour ces précisions. J’ai fait la modification et ça marche. Par contre, mes servos sont atteint de ’parkinson’, que puis-je faire ?
Merci pour votre tutoriel qui est très clair.
Cordialement
-
J’avais ce pb au départ aussi et j’ai mis des condos 100nF sur l’alim des servos.
-
Mettre un condo sur l’alimentation des servomoteurs est une bonne chose.
Si le Parkinson persiste, il peut aussi venir des servomoteurs : origine asiatique bon marché ? Ou marque réputée ? Une solution serait de changer un servomoteur pour une marque plus prestigieuse et voir ce que cela donne. Et auparavant, vérifier le fonctionnement du servomoteur défectueux en dehors de tout montage (carte Arduino + Servomoteur seul).
Après, on peut aussi vérifier que le signal transmis au servomoteur respecte bien la norme, mais pour cela, il faut un oscilloscope.
-
-
-
Passage à niveau géré par Arduino (5) 4 février 2021 17:14, par Chrisang
J’ai voulu réinventer la roue alors que cela existait sur LOCODUINO grand merci pour ce code qui fonctionne impeccable j’ai juste remplacé les ILS par des capteurs Jeu de diodes IR (émettrice-réceptrice) et un petit ISD1820 pour le son , tout est nickel, merci beaucoup.
-
Passage à niveau géré par Arduino (5) 5 février 2021 09:47, par Christian
Avoir remplacé certains éléments par ceux en votre possession est une très bonne idée.
En général, les schémas et programmes que nous publions ne sont là que pour donner un principe de fonctionnement et ils sont parfaitement modifiables. Et surtout améliorables pour que le montage réalisé s’adapte au mieux avec les aspirations des lecteurs et à leur réseau. -
Passage à niveau géré par Arduino (5) 25 janvier 2022 10:33, par mulroy55
bonjour
quel serait le programme avec des detecteurs d’occupatonVoir en ligne : muller roger
-
Relisez le paragraphe qui est situé juste après la figure 1 et surtout la fin du paragraphe noté en avertissement. Vous n’avez plus besoin de faire appel aux interruptions, puisque vos détecteurs d’occupation vont donner un signal qui dure dans le temps. Donc, en début de boucle de programme, vous lisez l’état de vos détecteurs pour savoir si une voie est occupée, et dans ce cas vous en déduisez l’occupation de la zone PN (constituée de plusieurs voies). La scrutation se fait à chaque itération de la boucle principale (loop), donc à une fréquence suffisamment élevée pour ne pas louper les événements.
La zone PN est occupée si une voie au moins est occupée, et elle est libre si toutes les voies sont libres. Une fois que vous connaissez le statut d’occupation de la zone PN, le traitement est identique à ce qui est fait dans cette série d’articles.
Je pense qu’avec ces quelques indications, vous devez être capable de rédiger un programme et de le tester. Pour ma part, je ne vais pas publier une solution pour deux raisons :- il faudrait que je puisse la tester et je n’ai plus le matériel pour le faire
- et je ne suis pas là pour faire le travail de ceux qui veulent une solution différente.
Ayez confiance en vous, vous y arriverez car c’est vraiment beaucoup plus simple en logiciel (même si cela demande de bricoler le réseau pour créer des zones, raison pour laquelle j’ai choisi les ILS comme je l’explique dans les articles publiés sur Loco-Revue).
Si vous y arrivez, pensez à publier votre programme sur notre forum afin de partager. Si vous rencontrez des problèmes de mise au point, alors je vous aiderai à les résoudre via le forum. D’ailleurs, ce serait une bonne solution d’ouvrir un fil sur ce problème que vous pourrez ainsi résoudre à plusieurs ; je suis persuadé que vous n’êtes pas le seul à vouloir utiliser des détecteurs d’occupation !
-
-
Passage à niveau géré par Arduino (5) 28 juillet 2022 12:04, par Barriuso JP
Bonjour ;
le programme indique un bug à l avant dernière ligne :juste avant "compteur =compteur+1"
j ai beau vérifier , la syntaxe a été revue et revue et me parait correcte ...Merci de votre aide.
Salutations-
Avez-vous utilisé le bouton télécharger pour faire un copier-coller du texte du programme ?
Parfois, un copier-coller fait à l’arrache peut introduire des caractères qui ne se voient pas mais qui sont bien là et perturbent le programme.
Quel message d’erreur obtenez-vous ?-
Merci de votre réponse.
J ai avancé à la dernière ligne (il y avait un espace entre 2 lettres ) mais nouveau bug à la dernière ligne :
expected’}’at end of input
Merci pour vos éclaircissements.
Salutations
-
-
-
Passage à niveau géré par Arduino (5) 14 décembre 2022 15:57, par hinano80
es ce qu il serait possible de remplacer les capteur ils pas des capteur infrarouge type fc-51 si oui qu’ elle serait le programme pour que cela fonctionne
-
C’est tout à fait possible. Si vos capteurs délivrent un signal LOW lorsqu’ils sont activés, alors ils fonctionnent comme les ILS utilisés ici. En conséquence, le programme reste le même. Si vos capteurs délivrent un signal HIGH, alors il faut légèrement modifier le programme pour en tenir compte. Mais je suis sûr que vous avez 90% de chances d’être dans le cas N°1.
-
merci je vais teste
-
bonjour j ai fait comme conseille par Christian les modification pour mettre des capteur fc-51 le résultat est que les feu fonctionnent la sonnerie aussi mais les barrière sont fixe et enfin apparemment pas section de fin donc une fois le scenario lance les feu reste clignotant et pas de fin même en passant devant les secteurs une ide comment mettre le programme pour qu il soi visible pour être éventuellement corrige merci de votre aide
-
Une fois de plus, ce lieu n’est pas fait pour résoudre un problème technique : ouvrez un fil sur notre forum !
Pour inclure du code, il y a une balise code afin qu’il soit bien présenté et récupérable. Tout cela est expliqué sur notre site, catégorie débutants.
A ce que je comprends, vous avez monté vos capteurs : comme je l’ai dit, si vos capteurs donnent un signal LOW lorsqu’ils déclenchent, il n’y a pas à modifier le programme. Donc, est-ce le cas ?
La suite, j’y répondrai sur le forum et j’ai supprimé le programme que vous avez fourni car c’est difficilement lisible quand c’est du texte.
Cordialement. -
Avant de continuer cette discussion sur le forum, je dois préciser, comme je l’ai écrit dans le texte de l’article, que les capteurs infrarouges nécessitent un traitement particulier afin de passer d’une détection qui est relancée à chaque wagon, à une détection ponctuelle comme c’est le cas des ILS. Ceci peut expliquer que votre montage ne fonctionne pas.
Je reconnais avoir répondu un peu rapidement à votre première question, mais cet article a plus de deux ans et depuis, nous sommes passés à autre chose. Il faut donc nous y remettre nous aussi.
Utiliser des capteurs IR est possible mais demande un peu de travail : reste à savoir si vous vous en sentez capable. Suivant la configuration de votre réseau, vous pourriez partir sur deux types de capteurs IR : ceux en entrée de zone et ceux en sortie et utiliser deux interruptions au lieu d’une seule.
Seul le forum peut permettre de discuter de cela en détail.-
j ai déjà jette une bouteille a la mer mais je n ai pas de bon retour, puis j ai trouve votre publication que j ai tente de modifier pour passer en IR fc_51 cela m as permis de résoudre quelle soucis mais je disait dans mon post j ai bientôt 60 ans et je débute dans l Arduino (une vrai torture pour mon cerveau) je sais que je n est pas toujours les bonne façon de présenter les choses mais bon j essais de progresser comme je peux j espère que mon projet pourra aboutir avec votre aide et vos connaissance
-
Je suis allé voir votre "bouteille à la mer" : si vous n’avez pas eu plus de réponses, c’est que vous l’avez postée dans la rubrique "Présentez-vous" qui permet aux nouveaux venus de se présenter mais qui n’est pas très fréquentée par les membres assidus.
Donc, le conseil que je vous donne : ouvrez un nouveau fil dans la catégorie "Vos projets" (voir en page d’accueil du forum) en lui donnant un titre évocateur (comme "Passage à niveau avec détecteurs fc51" par exemple). Là, décrivez votre problème, mais n’attendez pas que quelqu’un écrive le programme à votre place. Bien évidemment, pour décrire un problème, il faut un minimum de connaissances sur le sujet, mais celles-ci peuvent s’acquérir sur le site éditorial, en lisant nos articles. C’est sans doute la raison qui fait qu’un membre du forum vous a conseillé de réaliser un montage qui a le mérite de fonctionner, à partir d’un article, afin déjà de comprendre les principes de base. Le montage peut ensuite être modifié selon vos besoins (par exemple, les détecteurs fc51).
De plus, si j’ai bien compris, par rapport au PN que j’ai décrit dans cette série d’articles, vous voulez non seulement changer les ILS pour des fc51 (qui n’ont pas le même comportement, voir ce que je vous ai dit plus haut), mais aussi que le PN ait deux voies au lieu d’une seule (après tout, j’ai décrit comment faire), mais aussi que votre PN ait quatre barrières au lieu de deux. N’est-ce pas un peu ambitieux pour quelqu’un qui débute ?
Je ne veux pas vous décourager mais les connaissances et l’expérience doivent s’acquérir avec le temps, en commençant par A, dans l’espoir d’arriver à Z et c’est tout à fait possible quelque soit l’âge. Prenez votre temps, et inutile de revenir à la charge dans cet espace consacré aux articles. Une fois que vous aurez ouvert votre fil dans notre forum, je me ferai un plaisir de vous aider, ainsi que d’autres également.
Cordialement.
-
-
-
-
-
-
Passage à niveau géré par Arduino (5) 1er avril 2023 17:08, par Francois Constant
Bonjour, auriez vous le code pour l’utilisation en double voie avec des detecteurs IR
-
Bonjour,
le programme proposé fonctionne pour deux voies.
Et comme déjà expliqué sur le forum, les ILS peuvent être remplacés par des modules IR FC-51 qui sont à collecteur ouvert et dont les sorties peuvent être mises en parallèle.
CordialementVoir en ligne : Passage à niveau avec capteurs IR
-
Ce passage à niveau a été conçu pour équiper le coffret Train’ In Box vendu par LR-Modélisme. Ce coffret s’adressant à des débutants, il fallait que le montage à base d’Arduino soit simple et c’est la raison pour laquelle nous avons utilisé des I.L.S qui peuvent être ajoutés facilement sur un réseau déjà terminé. Néanmoins, dans le dernier article de la série, j’ai donné quelques voies d’amélioration qui peuvent aussi être un véritable challenge pour ceux qui veulent progresser dans la programmation d’Arduino.
Si vous voulez relever ce challenge, vous avez déjà une base qui fonctionne avec ce que nous avons publié et nous espérons qu’une fois votre programme au point, vous le publierez dans notre forum ; c’est tout l’intérêt d’appartenir à une communauté.
La programmation avec Arduino, c’est comme une grille de sudoku ; il n’y a aucun intérêt à aller voir la solution, il faut la résoudre soi-même.
-
-
Passage à niveau géré par Arduino (5) 13 octobre 2023 19:01, par supermoun62
Bonsoir à tous,
D’abord merci pour cette étude et félicitation.
J’ai simulé le programme avec deux capteurs ILS sur la borne 2, pas de problème.
J’ai un circuit avec deux voies, donc j’ai installé deux autres ILS sur l’entrée 3, comme indiqué au début du sujet, mais la gestion de cette entrée ne se fait pas.
Si quelqu’un peut donner une solution.
Merci d’avance à tous.
supermoun62Voir en ligne : Passage à niveau géré par Arduino (5)
-
Le montage du passage à niveau est prévu pour Train’ In Box qui dispose également de deux voies, mais ne fait tourner qu’un seul train à la fois car c’est un petit réseau. En conséquence, en disposant les ILS comme indiqué dans cette série d’articles, on arrive bien à détecter le train quelle que soit la voie sur laquelle il évolue : dans ce cas, tous les ILS sont montés sur l’entrée 2.
Pour le cas d’un réseau avec deux voies indépendantes (un double ovale par exemple) pouvant faire circuler deux trains en même temps, il faut un système de détection sur chaque voie mais il faut aussi réaliser un petit traitement logique (dans le programme) permettant de déterminer si un train est en approche du PN ou non.
C’est certainement ce traitement qui n’a pas été bien réalisé dans votre cas. Comme il serait trop long d’en débattre ici, je vous propose d’ouvrir un fil sur notre forum en expliquant bien ce que vous avez fait et en donnant le programme tel que vous l’avez modifié : ainsi on pourra comprendre la raison du dysfonctionnement.
-
-
Passage à niveau géré par Arduino (5) 15 octobre 2023 19:47, par supermoun62
Merci pour la réponse.
Peut-être qu’une personne modifiera le programme 5 en programme 6 afin de gérer deux voies séparées.
On peut partir du principe qu’aucun train ne fait de marche arrière au niveau du passage à niveau.
Cordialement supermoun62.-
Ce que vous voulez réaliser est décrit dans le premier article de la série, au paragraphe "Cas de deux voies parcourues dans un seul sens". Il faut faire une détection sur chaque voie (en utilisant les entrées 2 et 3 qui sont les seules à permettre l’interruption externe). Ensuite un traitement logique : si voie 1 OU voie 2 occupée, alors zone PN occupée. Ou si vous préférez, zone PN libre si voie 1 ET voie 2 libres.
Lorsque vous aurez ouvert un fil sur le forum dans la catégorie projets, mettez son titre ici, ce qui me permettra de mettre des éléments de réponses.
-
-
Passage à niveau géré par Arduino 23 novembre 2024 19:08, par TOURNOIS Michel
Bonsoir .
J’ai bien reçu votre réponse du 22 novembre , je vous en remercie , le problème est que je ne trouve pas comment raccorder les effets hall sur la carte Arduino vu qu’il y a 3 fils a raccorder et que sur les croquis je vois que le raccordement avec des ILS qui eux ont que 2 fils , peut être que je ne cherche pas ou il faut ??.
En attente de votre réponse.
Bien Cordialement.
Michel Tournois.-
Il faut choisir des capteurs dont la tension d’alimentation est de 5 V parce que cette alimentation sera prise sur la carte Arduino. Ensuite, il faut savoir repérer la broche masse (GND) de la broche V+ : pour cela, il faut consulter la notice du composant. On relie donc la broche GND à une sortie GND d’Arduino, la broche V+ au +5V d’Arduino. La troisième broche est celle qui délivre le signal à Arduino à relier à une entrée d’Arduino (analogique ou numérique selon le type de signal délivré par le capteur).
-