Auteur Sujet: Reconnaissance automatique des trains  (Lu 1871 fois)

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1337
  • 100% Arduino et N
    • Voir le profil
Reconnaissance automatique des trains
« le: novembre 21, 2016, 02:35:23 pm »
Bonjour à tous,

Avec la modélisation du réseau, le gestionnaire des zones, aiguilles, signaux, itinéraires, trains, etc.., l'architecture a besoin d'une brique importante qui est la reconnaissance automatique des trains (son adresse DCC par exemple, mais pas que).

Je pense à ce sujet depuis pas mal de temps et je ne suis pas le seul, notamment en rapprochant les messages de traction des messages d'occupation. J'ai encore essayé un nouveau logiciel hier soir mais ce n'est pas parfait. Donc il vous faudra encore attendre un peu :(

Auparavant j'avais installé un détecteur RFID et des micro capsules dans un wagon. Là ça marche très bien.

Je pense surtout qu'il vaut mieux disposer de plusieurs techniques de reconnaissances et je vous invite à faire part de vos expériences ici, si vous le voulez bien.

Mais, comme le sujet "RailCom" est de plus en plus cité sur Locoduino, cela mériterait quelques articles.

En attendant "impaire" nous invite à consulter cette page fort interessante sur RailComDisplay : http://usuaris.tinet.cat/fmco/railcom_en.html
« Modifié: novembre 21, 2016, 02:48:28 pm par Dominique »

bobyAndCo

  • Full Member
  • ***
  • Messages: 235
  • HO avec DCC++
    • Voir le profil
Re : Reconnaissance automatique des trains
« Réponse #1 le: novembre 21, 2016, 03:09:57 pm »
Ce sujet est celui qui m’intéresse le plus à l’heure actuelle. Comme je le disais sur le fil de DCC++, aujourd’hui, on peut savoir facilement que tel canton ou telle section du réseau est occupée.

Par ailleurs, avec un bon gestionnaire de réseau surtout s'il est fait « maison » il est aussi très facile de savoir l’état des locos (Arrêt, marche, sens, vitesse). Mais ce qui nous manque c’est les deux à la fois ! Telle loco est à tel endroit du circuit avec tels paramètres (vitesse, sens...).

J’ai passé beaucoup de temps avec des résultats assez satisfaisants à tester des lecteurs de code barre (douchettes qui me restaient et que j’avais dû payer de l’ordre de 30 € pièce). J’ai tout démonté et placé la seule mécanique sous la planche.

Avec HardwareSerial j’ai pu connecter 4 lecteurs par MEGA (je ne crois pas pas que l’on puisse autant sur UNO) et le tout relié par Ethernet (vous commencez à me connaître). Et des codes barres collés sous la loco. Ca ce fait, faut chercher un peu le meilleur emplacement mais j’y suis toujours parvenu même avec des contraintes d’espace. On peut aussi envisager en plus sous le dernier wagon pour détecter tout le convoi.

Bon faut pas passer trop vite dessus (jusqu’à mi vitesse disons) ce pourquoi je pensais placer ça dans des gares ou à l’entrée ou à la sortie d’un pont tournant. Ou des zones où l'on peut ralentir sans problème quelques secondes (tunnels). Mais bien sûr, ça a ses limites. Difficile d’en placer autant que de cantons.

J’ai aussi fait l’acquisition de QRE1113 de chez Sparkfun. C’est très discret sous la voie (15 mm sur 7) et je suis à peu près certain que ça pourrait lire un code barre maison. Pour 10 à 20 locos, je pense que c’est jouable, ça revient à un codage sur 24 bits on va dire d’alternance de barres noire et blanches. Pas compliqué et pas cher. 1 ou 2 € le QRE1113.

Tout ça reste un peu bricole quand même je reconnais. Et c’est sans doute RailCom la meilleure solution (si on a le budget et les décodeurs compatibles). RailCom donne en prime d'autres informations si je ne me trompe pas comme la température du moteur. Je suivrai donc avec grand intérêt ce fil.

Christophe


« Modifié: novembre 23, 2016, 08:34:53 am par bobyAndCo »

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1337
  • 100% Arduino et N
    • Voir le profil
Re : Reconnaissance automatique des trains
« Réponse #2 le: mars 19, 2017, 08:07:02 pm »
Quand on ne peut rien faire, comme quand on conduit la voiture pendant plusieurs heures, on a parfois des idées qui surgissent : je viens d'en avoir une pour détecter automatiquement la zone où se trouve mes trains, sans détecteur spécial, Railcom ni code barre ou RFID.

Dans un premier temps je limite cette solution aux trains qui sont à l'arrêt dans ma gare cachée, cas qui devrait toujours se présenter lors je mets le réseau sous tension.

Dans ma gare cachée (comme dans la gare réelle), pour arrêter les trains devant les signaux, j'ai une zone d'arrêt de chaque coté de la zone principale qui est toujours une zone de ralentissement. Chaque zone d'arrêt est matérialisée par un détecteur IR réflectif car je n'ai pas prévu de coupure des rails qui m'aurait obligé à ajouter un détecteur d'occupation.



Un train garé dans une zone de la gare (donc à l'arrêt) se trouve donc avant la zone suivante (en général une zone contenant une ou plusieurs aiguilles), et peut être identifié lors de la mise sous tension suivante, de cette façon :

Le module de traction connait les trains présents sur le réseau par leur adresse DCC. Si j'ai 4 trains dans la gare cachée, le module de traction peut mettre en marche avant le train N°1, en vitesse réduite et seulement celui-là.

La zone A dans laquelle se trouve le train devient occupée immédiatement, du fait du démarrage du moteur. Quelques secondes plus tard, une zone B adjacente devient occupée par le déplacement du train. Le module de traction stoppe le train pour éviter qu'il ne s'engage sur une aiguille et note les zones A et B. Ensuite il recule le train N°1 jusqu'à la détection du capteur IR qui se trouve du coté opposé à la zone B (le détecteur de la zone d'arrêt arrière), ceci pour garantir le retour du train à l'intérieur de la zone A.



Eventuellement, le train peut être remis en place exactement comme au départ, en faisant avancer le train jusqu'à la détection par le détecteur de la zone d'arrêt avant.

De ce scénario, le module de traction en déduit :
  • La position du train N°1 : la zone A
  • La direction du train en marche avant : vers la zone B

Ensuite le module de traction recommence ce même scénario avec les trains N° 2, 3 et 4.

Cette commande peut être réalisée soit par le module de traction qui en informe ensuite le gestionnaire, soit par le gestionnaire qui commande le module de traction.

Dans tous les cas, le module de traction participe à la rétrosignalisation.

Voilà l'idée dont je vous donnerai les résultats bientôt, notamment le temps pris par cette procédure amusante, j'espère  :D
« Modifié: mars 19, 2017, 08:45:27 pm par Dominique »

DDEFF

  • Sr. Member
  • ****
  • Messages: 449
    • Voir le profil
Re : Reconnaissance automatique des trains
« Réponse #3 le: mars 19, 2017, 08:47:41 pm »
Tu es en forme, aujourd'hui... ;D

En fait, je pense qu'on peut faire la même chose partout :
Tu avances les trains un par un jusqu'à ce qu'ils changent de canton et tu recules jusqu'à ce que le train qui recule ne soit plus que sur un seul canton.

Denis

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1337
  • 100% Arduino et N
    • Voir le profil
Re : Reconnaissance automatique des trains
« Réponse #4 le: mars 19, 2017, 09:19:36 pm »
Je le pense aussi.

Cela peut être un peu plus compliqué en cas de train sur une voie de garage si la marche avant l'envoie dans le butoir. Mais avec une machine à états bien faite, on devrait y arriver.

J'ai mentionné la gare cachée parce que ça ne se verra pas. Je ne sais pas si ça ferait bizarre ou pas dans une gare réelle.

Bien évidemment, le Gestionnaire ne doit plus perdre les trains après la détection, mais c'est son boulot normal (la poursuite en cantons).

Il va sans dire aussi que cela n'empêche pas d'utiliser d'autres types de détecteurs et d'avoir un peu de redondance (Railcom par ci, RFID ou code barre par là).

On n'est pas prêt de s'embêter  ???
« Modifié: avril 06, 2017, 10:45:38 pm par Dominique »

DDEFF

  • Sr. Member
  • ****
  • Messages: 449
    • Voir le profil
Re : Reconnaissance automatique des trains
« Réponse #5 le: mars 19, 2017, 09:54:23 pm »
OK, mais on ne passe pas son temps à "recaler" le train. Enfin, j'espère...  ;D
Pour les voies de garage, j'ose croire que le gestionnaire saura dans quel sens aller ou faut qu'il change de métier.

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1337
  • 100% Arduino et N
    • Voir le profil
Re : Re : Reconnaissance automatique des trains
« Réponse #6 le: avril 06, 2017, 10:57:00 pm »
OK, mais on ne passe pas son temps à "recaler" le train. Enfin, j'espère...  ;D
Pour les voies de garage, j'ose croire que le gestionnaire saura dans quel sens aller ou faut qu'il change de métier.

Le temps passe vite !!

Non, on n'a pas besoin de recaler les trains une fois qu'il sont localisés. La retrosignalisation et le Gestionnaire permettent de savoir à tout moment où ils se trouvent.

En principe le Gestionnaire doit enregistrer la position des trains avant l'extinction de l'alimentation pour les retrouver à l'allumage suivant.

Mais si cette sauvegarde n'a pas eu lieu, on peut s'en sortir avec mon système.

J'ai hâte de réaliser un démonstrateur prochainement.