Canalblog
Suivre ce blog Administration + Créer mon blog

Mon petit train train

Mon petit train train
Publicité
Archives
Newsletter
31 août 2023

Détecteur de passage

Y'avait longtemps les amis mais comme je suis content de ma découverte, je partage ...

Comme moi vous avez sans doute cherché une solution économique pour détecter le passage des convois, surtout si vous avez un nombre de cantons élevé !

Alors en tapant "détecteur passage train HO" sur Google, vous trouverez forcément des circuits assez chers (environ 10€) et lourds en cablage de puissance.

Par exemple :

https://www.ebay.fr/itm/173161725425?var=471894553109&mkevt=1&mkcid=1&mkrid=709-53476-19255-0&campid=5338624522&toolid=20006&customid=7f5b6df127c9854b0b005d753e3362f0

 

s-l1600Ce dispositif coute environ 10€ selon les fournisseurs, il mesure le courant alimentant le canton, pas de courant pas de train, débit de courant, présence d'un train.

Cela nécessite une coupure de rail entre chaque canton et un câblage de puissance pour chaque canton (la puissance d'une machine) et autant de raccords à la voie, raccords qui sont toujours délicats.

De plus, il ya forcément une petite perte de tension due au circuit de détection, sans doute la tension de pôlarisation de la diode d'un photocoupleur, peut être de l'ordre de 0,5v, c'est peu mais c'est trop !

Dans tous les cas il était hors de question pour moi de dépenser 10€ par canton. J'ai donc cherché une solution issue de mon passé électronique.

J'avais exploré la détection par photocouplage infra rouge, une diode émettrice d'un côté de la voie et un phototransistor de l'autre. Cela nécessite un peu d'électronique d'amplification, donc un petit circuit imprimé, et mes essais n'étaient pas probants, ça m'a gavé. Pourquoi faire compliqué quand on peut faire simple !

La solution que j'adopte est liée aux "ampoules REED", ces composants sont très utilisés dans les systèmes d'alarme car ils sont petit, tout petits donc discrèts dans les habitations, ils sont fiables et très rapides (de l'ordre de la ms).

Je ne vous apprends peut être rien mais, tant pis, je continue.

Les ampoules REED sont des petites ampoules de verre contenant un contact sensible aux champs magnétiques. Elle sont donc capables de détecter la présence ou l'absence d'un aimant.

Elles existent en contact "normalement ouvert" (fermé lorsqu'excité) ou "normalement fermé" (ouvert lorsqu'excité). Elles peuvent être enrobées de plastique, c'est la présentation que j'ai retenue.

61w12b746KLDans ce sachet à 8€49 on trouve 10 ampoules et 10 aimants.

On trouve aussi des sachets sans aimants, de 10, 20 unités et plus ...

L'objectif de mon essai est de placer une ampoule sous la voie et un aimant sous la machine pour voir comment cela se comporte.

Il est IMPERATIF de bien respecter les données constructeur car ces contacts sont assez fragiles.

J'ai fait la bêtise d'un premier essai avec une ampoule de vélo (6v) or, les ampoules ont des courant d'appel 10 fois supérieurs au courant de service, donc une ampoule qui consomme 100 ou 150mA va appeler 1A à 1,5A lorsqu'elle est froide !

J'ai soudé mon premier contact comme ça ...

J'ai repris le montage en utilisant une LED sous 20mA et là, ça fonctionne parfaitement.

Comme on peut le voir sur l'image, par chance le capteur s'insère pile-poil entre les deux rails, il faut bien sûr l'isoler de la tension de la voie. Alimenté en 6v j'ai mis 220 ohms en série avec la LED et roulez jeunesse !

P8310500

 

Première série d'essais (bien lire les conclusions de la seconde et de la troisième série d'essais).

Un premier essai avec un aimant pour vérifier la pôlarité de la diode par rapport à mon alimentation puis essai avec une machine.

Bonne surprise, 4 de mes 8 motrices ne nécessite pas d'aimant, le circuit magnétique du moteur est suffisamment balaise pour déclencher le capteur d'une façon fiable. Je m'en doutais un peu mais étais loin d'en être sûr.

Pour le 4 autres il faut installer un petit aimant. Ce dernier doit être installé de préférence vertical et pas horizontal. C'est un constat, je ne sais pas pourquoi.

Par contre l'orientation du capteur est indifférente. Quelle que soit la face présentée sur le dessus cela fonctionner je l'ai vérifié. Ce faisant j'ai tourné une patte par rapport au boitier et abimé le contact ! Il faut donc considérer que l'ensemble est mécaniquement fragile.

P8310497

Voila le résultat, la machine avance, au niveau du moteur elle déclenche le contact puis le contact se relâche lorsqu'elle est passée.

Des liens pour les ampoules REED :

Sachet de 10 avec aimants.

https://www.amazon.fr/Gebildet-interrupteurs-Plastique-Contact-Aimant/dp/B07Z4RR4QV/ref=sr_1_6?__mk_fr_FR=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=RAVKH8VXA5PN&keywords=reed&qid=1693467336&sprefix=%2Caps%2C621&sr=8-6&th=1

Sachet de 20 sans aimant.

https://www.amazon.fr/Interrupteur-Normalement-Magn%C3%A9tique-Anti-interf%C3%A9rence-Disjoncteur/dp/B098364N19/ref=sr_1_14?__mk_fr_FR=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=RAVKH8VXA5PN&keywords=reed&qid=1693467336&sprefix=%2Caps%2C621&sr=8-14

J'ai fait un dernier essai en plaçant le capteur dans le sens longitudinal de la voie et pas en travers. Et bien cela ne fonctionne pas !?

Seconde série d'essais

J'ai cette fois monté une manip avec trois capteurs pour faire des essais "intensifs". Bien m'en a pris.

Il s'avère qu'un capteur sur trois s'est montré un peu fainéant, mes machines qui déclenchent les capteurs sans ajouter d'aimant n'en déclenchent que deux sur trois !

J'ai alors testé tous les capteurs que j'avais en stock sur table et effectivement, les distances de déclenchement sont un peu variables.

En conséquence il peut être prudent de prévoir d'équiper les machines d'un aimant quoi qu'il arrive. Celui ci doit être placé dans le sens longitudinal de la voie (et pas en travers), bien centré sur la voie et le plus près possible des traverses de la voie. Cependant il n'est pas nécessaire de faire mieux que dans le dessin ci dessous.

 aimant

Troisième série d'essais (et dernières conclusions)

Compte tenu des résultats un peu inconstants de ma seconde série d'essai j'ai décidé d'inversé le schéma mécanique c'est à dire de mettre le capteur dans le sens longitudinal de la voie et l'aimant dans le travers de la machine.

Comme indiqué dans la première série d'essais, la détection de la machine sans aimant ne fonctionne pas. Tant pis.

Par contre la fixation de l'aimant dans le tarvers de la machine est plus simple, par exemple c'est très discret sur la face intérieure d'un bogie, mais on peut trouver mieux dans certains cas.

Dans cette configuration, si l'aimant est bien positionné, c'est à dire au niveau bas du chassis de la bogie, la détection devient très fiable.

De plus les détecteurs peuvent être ajoutés sur une voie existante puisqu'on les pose par dessus et ils restent assez discrets.

C'est donc ce principe que je vais adopter.

20230918_164013

20230918_164032

20230918_164047

N'hésitez pas à utiliser de la PATAFIX pour réaliser vos essais !

 

PhB 2023 09 18

 

 

Publicité
Publicité
10 avril 2014

Numériser vos diapos et négatifs.

Pour une fois je sors un peu du thème de ce blog pour vous parler d'une astuce dont je suis assez satisfait.

Comment numériser nos vieilles diapos avant qu'elles ne perdent toutes leurs couleurs ? En effet, certaines diapos se conservent parfaitement, d'autres pas, les couleurs virent au rose, au bleu, des taches se manifestent. Ceci tient à la qualité du développement, la qualité des bains à l'époque où elles ont été développées.

Pour numériser ces diapos, voire des négatifs couleur, comment faire simplement et surtout rapidement ?

Un scanner à plat avec dos lumineux peut le faire, mais souvent cela nécessite un kit d'installation des photos dans le scanner et l'opération en définition maximum peut s'avérer longue et fastidieuse. J'ai testé cela avec un scanner HP4890, je me suis vite lassé.

Un scanner spécifique pour diapos peut faire l'affaire mais je ne me suis pas résolu à investir uniquement pour ce type d'opération. J'aurais peut être du le faire ...

J'ai opté pour un système perso inspiré de ce que j'avais vu chez PEARL Diffusion, ici : http://www.pearl.fr/photo/accessoires/adaptateurs/adaptateur-pour-numerisation-de-diapos-et-negatifs_NC1749.html

Je n'ai pas acheté ce dispositif car il ne fait que les 24x36 (ou 4x4) or j'ai de nombreuses diapos et négatifs en moyen format 6x6. J'ai donc décidé de le réaliser.

 

P1000837

 

Préalablement il faut évaluer la distance minimale de focus de votre appareil. Ceci peut se faire en fixant une diapo sur une surface lumineuse, par exemple un abat-jour de lampe, puis en faisant quelques photos les plus rapprochées possible et en vérifiant la parfaite netteté.

Dans mon cas, la distance est d'environ 6 cm au boîtier (l'objectif va ensuite sortir du boîtier ce qui réduit cette distance par rapport à la pellicule).

 

Image1

 

Ensuite il faut fabriquer un cylindre qui pourra se placer autour de la base de l'objectif, dans le cas du PANASONIC TZ30 que j'utilise, le diamètre intérieur du cylindre est de 5,2 cm.

Toutes les pièces intérieures doivent être peintes en noir mat pour éviter les reflets parasites, j'ai utilisé les petites bouteilles de peinture acrylique en vente chez Carrefour.

Alors il faut fabriquer la platine qui va recevoir la photo, toujours en carton, j'ai réalisé des glissières ajustées à la cote des diapos en prévoyant en plus de fentes sur les côtés permettant de glisser des négatifs non découpés.

 

P1000839    P1000840

 

P1000841

Enfin j'ai ajouté deux petites pattes permettant de passer un élastique autour de l'appareil.

Et voila le travail :

 

20140410_092027

 

Alors, plus compliqué, j'ai fait la même chose pour mes photos 6x6, là il faut réaliser un cône qui demande un peu de réflexion à la conception, mais j'ai confiance, vous y arriverez ...

 

P1000843

 

Maintenant il faut trouver la bonne source de lumière, en fait il faut une source assez puissance pour éviter la pixélisation liée au sous expositions. J'ai essayé pas mal de solutions avec des lampes électriques, difficile de ne pas avoir de problème de courleur ou d'uniformité, le plus simple consiste consiste à attendre un jour de beau soleil et à viser une feuille de papier blanc placée au soleil. Ca fonctionne bien mais il faut du soleil et quand il fait beau j'ai autre chose à faire que de numériser mes photos.

Aussi pour pratiquer cette activité par temps maussade, j'attends un ciel uniformément gris sans nuages trop formés et je pointe le ciel tout simplement au travers du Velux de mon bureau. Vous pouvez aussi pointer un beau ciel bleu sans nuage mais vous aurez une dominante bleue à corriger après numérisation.

Les résultats sont satisfaisants et la numérisation est très rapide, environ 5 à 7 photos par minute.

En voici une à peine retouchée que j'ai pu sortir en 3900x3900px à partir d'un négatif 6x6.

1976 Yeu Judex 04_

Yeu 1976

PhB

4 mars 2014

Le coeur village.

Ouf ! Je me suis fait plaisir !

Lassé des problèmes technique de voies et de logiciel j'ai repris un peu les maquettes. Le décor de mon réseau est conçu en modules sur lesquels je peux travailler indépendamment. L'un des derniers modules est le village !

Il s'agit comme souvent dans les petites villes, de la partie ancienne, un peu éloignée de la gare mais pas trop, cette dernière étant souvent entourée d'immeubles plus récents.

P1000599_

Voici la chose vue de dessus. Les rues sont pavées, la surface est réalisée avec un produit FALLER assez facile à poser. En haut à droite, la rue qui arrive de la gare, en haut à gauche, sans doute le poste de Police mais je ne peux pas encore le placer car il sera à cheval sur deux modules. Je devrais donc le placer in situ lorsque le plateau sera un peu avancé.

En haut au centre, trois maisons d'habitation, en bas, de gauche à droite, la Poste, un agent d'assurances, un boucher, un épicier et le restaurant de l'église.

A gauche la Mairie et à droite le boulanger et le pharmacien. Enfin au centre l'église.

P1000597_

L'église est éclairée à l'intérieur ce qui permet d'admirer les vitraux, cet éclairage est permanent, allumé même le jour. Il y a aussi trois projecteurs qui mettent en valeur le clocher et l'arrière du bâtiment. Cette église était d'un brun moche et marbré, j'ai passé un rapide coup d'aérosol ivoire ce qui donne un ton de pierre qui me plaît bien sans pour autant sacrifier le relief.

Le panneau représente un authentique Saint Julien.

La pharmacie m'avait demandé beaucoup de temps car je voulais un intérieur aménagé et éclairé. Le résultat me convient.

Par contre l'éclairage de la boulangerie est tombé en panne au moment du collage de la maquette sur le module. Pas question de réparer, on va dire que c'est son jour de fermeture !

P1000600_

P1000601_

Dans cette partie les éclairages publics ne sont pas modernes comme dans le quartier de la gare, ils ont un petit air rétro qui convient bien au caractère "village". Nous faisons le tour vers le haut pour trouver la partie où les voitures sont autorisées.

P1000602_

P1000598_

Face à l'église se trouve la mairie, le Maire vient de célébrer un mariage et quitte la Mairie, l'écharpe a été réalisée avec trois fils à coudre (bleu, blanc et rouge bien sûr) assemblé cote à cote avec des petits points de colle. Je suis assez content du résultat visuel. En fait j'avais essayé de colorier des fines bandes de papier ou de tissus mais ce n'est jamais régulier, ça bave ... et autres vicissitudes. Au passage je vous signale que les Maires portent l'écharpe avec la couleur bleu près du cou et les parlementaires (députés et sénateurs) la couleur rouge près du cou. C'est ainsi qu'on les reconnaît. Et lorsqu'il sont députés-maires !? Et bien ils portent l'écharpe en fonction de ce qu'ils sont censés représenter dans la manifestation considérée.

P1000607_

P1000612_

L'arrière de la Mairie.

Clin d'oeil à la politique, nous sommes en période de campagne électorale, je figure au second tour face à Mélanchon !!!

Sur la vue de gauche, on voit la différence entre le personnage du Maire bien détaillé, qui coûte environ 2€ l'unité et les autres personnages plus grossiers, à la peinture brillante mais qui ne coûtent que 10 cents ! Heureusement les photos accentuent le défauts et dans la vision réelle de la maquette tout cela s'harmonise assez bien.

Voyons maintenant la partie mariage ! Je me suis fait plaisir en achetant environ 15€ de personnages un peu détaillés. L'abbé, le photographe, les mariés et quelques uns des invités.

 

P1000596_

 

Au premier plan, les badauds qui admirent les mariés. De dos en blanc, le photographe, sur la droite le curé puis les mariés eux-mêmes suivis du cortège. Tout au fond on aperçoit le Maire et son écharpe. Nous sommes dans une partie piétonne, la R4 de la Poste n'a rien à faire là mais, service oblige, le postier s'accorde quelque privilège ...

Terminons par le restaurant de l'église qui profite de cette partie sans circulation pour tenir buvette dans la rue.

 

P1000594_

Je vais ajouter des jardinières pour isoler la partie piétonne ainsi qu'un panneau d'interdiction à tout véhicule.

P1000609_

P1000611_

 

P1000611détail

J'ai longuement réfléchi pour réaliser les éclairages sur les tables. Je ne voulais pas de lampe sur pied et je voulais quelque chose d'un peu intime. J'ai choisi de coller une LED CMS à plat sur la table. Les fils vont verticalement sous la table, comme un pied de parasol et sont cachés par les personnages assis. Sur la LED j'ai collé un petit bout (2 mm) de tige de coton tige, cela fait un excellent diffuseur. Au pied j'ai enroulé du fil à coudre bleu pour cacher la LED et les fuites de lumière non tamisée. Enfin j'alimente faiblement, 4 LED en série avec 10 kohms soit moins d'un mA.

Le rendu me plaît beaucoup, sur la photo on voit aussi le serveur, un des personnages "chers" que j'ai eu le courage d'acheter !

Voila, cette partie est terminée, elle sera un peu complétée lors du montage du plateau mais en attendant elle correspond tout à fait à ce que je voulais. Beaucoup de maisons viennent de mes réalisation de gamin, il s'agit de Jouef de qualité que j'ai restauré. J'ai complété avec du MKD bien sûr.

PhB

Modules déjà réalisés :

Le quartier de la gare, http://monpetittrain.canalblog.com/archives/2013/02/14/26396733.html

La gare routière, http://monpetittrain.canalblog.com/archives/2013/03/28/26757710.html

La zone de messagerie, http://monpetittrain.canalblog.com/archives/2013/04/09/26883116.html

Ma maison, http://monpetittrain.canalblog.com/archives/2013/01/04/25984042.html

Modules à venir :

L'entrepot carburants, les chambres d'hôtes, l'usine de matériaux.

 

28 janvier 2014

Tout reprendre.

Maintenant que j'ai décidé de la nouvelle configuration de mon réseau il faut tout re-paramétrer mon logiciel de sorte à décrire la nouvelle voie.

En fait cela se passe assez bien sauf pour les aiguillages. De toutes les façons, la gestion des aiguillages est un processus compliqué sur lequel je reviendrai.

Dans ma nouvelle configuration, j'ai des aiguillages qui commandent des sous branches qui elles-mêmes comprennent des aiguillages. La mise à jour de l'état d'alimentation des voies s'en trouve compliquée. Bon, la modif est faite et fonctionne.

fenetreRéseau01

J'ai décidé de ne plus dessiner la voie en petits segments sous forme de "Shape" car la mise à jour de ces segments consommait du temps machine. En effet, dans l'environnement Windows, on peut dérouller du code à tours de bras mais le graphisme, lorsqu'il n'utilise pas les fonctions évoluées des cartes graphiques, le graphisme donc est consommateur de temps parce que les tracés se font pixel par pixel et c'est la cata.

J'ai fait quelques mesures de temps réel dans ma boucle qui tourne toutes les 100ms et le résultat est que le traitement de tous les trains est à peine mesurable (1 à 2 ms, soit 1 à 2% du temps machine) par contre les deux fonctions qui consomment des dizaines de millisecondes sont d'une part l'affichage graphique que je décide de supprimer et d'autre part le lancement des sons que je dois optimiser (je pense mais n'en suis pas encore sûr que c'est le chargement du fichier son qui pénalise).

Donc j'utilise la représentation de ma voie réalisée avec CDM Rail et je place dessus mes cantons et mes aiguillages. Par contre je ne verrai plus mes trains avancer sur la voie, je verrai juste les capteurs s'activer suivant la progression des trains. C'est moins visuel mais bien plus efficace.

PhB

 

 

27 janvier 2014

Sortir la tête de l'eau !

Voila ça bien quatre semaines que mon projet est remis en question.

Il faut toujours écouter les avis compétents, c'est ce que je viens de faire sur deux sujets essentiels.

1) Première règle : les pentes, elles sont abordées dans plein de blogs et tous disent de ne pas dépasser 3%. En effet, c'est incontournable, j'ai fait des essais sur mon anneau expérimental, au-delà de 3%, même si les meilleures machines (en gros toutes mes ROCO) s'en sortent plutôt bien, cela pose des problèmes de démarrage et de patinage pour toutes les autres.

J'ai donc du reprendre complètement mon design car mon plan initial menait, sans que j'y aie même réfléchi, à des pentes allant jusqu'à 9% !

2) Seconde règle : bien réfléchir avant de commencer la réalisation. Cela semble évident mais il sera vraiment trop tard pour corriger lorsque les rails seront fixés pour changer de plan. Aussi j'ai pris mon temps et je pense être arrivé à un projet réaliste et à peu près conforme à mes choix initiaux.

------

Lorsque j'ai commencé cette remise en cause, j'avais quand même des éléments de décor déjà réalisés qui m'apportaient une contrainte, en particulier un quai de 2 mètres autour de gare.

J'ai donc du composer avec ces éléments existants mais aussi avec le fait que mon projet est basé sur une animation qui nécessite de savoir stocker des convois sur le plateau inférieur. J'ai bien été tenté de supprimer ce plateau inférieur mais cela revenait à faire tourner des trains en rond sur un plateau unique et ce n'est pas le but.

La difficulté d'avoir des pentes douces est qu'elles sont longues et donc deviennent apparente alors qu'initialement je pensais les planquer sous un relief. J'ai fait le choix de les réaliser dans la ligne droite la moins visible de mon réseau, dissimulées par des arbres, car elles ne seront pas très réalistes. En effet dans cette partie je vais avoir côte à côte une descente et une montée visibles toutes les deux (en haut de la figure ci dessous).

Réseau01

Sur l'image du réseau, les parties de voies grises sont sur le plateau supérieur, les parties bleues sont les descentes, les parties rouges sont les montées, enfin les parties jaunes sont sur le plateau inférieur.

Avec cette implantation j'obtiens des montées dont la pente ne dépasse pas 3% par contre les descentes peuvent aller jusqu'à 7% mais ce n'est pas très grave, il faudra peut être juste limiter la vitesse dans ces parties là.

Que dire d'autre, avec ce dessin j'ai préservé les éléments essentiels de mon décor et le plateau reste dans des dimensions raisonnables soit : 330 x 150 cm.

réseau01 décor OK

Sur le plateau inférieur j'ai réussi à préserver 6 voies de garage, soit deux de moins que sur le projet initial mais c'est le prix à payer pour un dessin réaliste et réalisable ...

Réseau01 voie inf

Voila, il me reste à tout re-paramètrer dans mon logiciel pour voir si ça marche ...

PhB

 

Publicité
Publicité
19 janvier 2014

Le grand vide !...

J'ai redessiné mon réseau avec un peu de précision, grâce à CMD Rail, et cela m'a obligé à approfondir ma réflexion.

Je croyais pourtant avoir bien mûri mon projet et voila que toutes les questions fondamentales ressurgissent :

Quel type d'alimentation ?

Je venais de terminer mon boîtier d'alimentations comprenant quatre alims séparées (deux pour les voies, deux pour les caténaires) et je me demande quelle sera la fiabilité de mes alimentations par caténaires, quelle sera aussi la difficulté pour poser le réseau de caténaires au niveau inférieur ...

Quel type de rails acheter ?

J'avais un peu basé mon projet sur des aiguillages courbes qui permettent de réaliser des lignes droites d'un longueur maximale (puisque les aiguillages sont dans la courbe qui précède), seul PIKO propose un choix raisonnable de modèles, or je lis pas mal de critiques sur la fiabilité de ces modèles ...

Quelle pente adopter pour passer du niveau supérieur au niveau inférieur ?

C'est bien joli de faire un beau dessin mais lorsque l'on introduit les contraintes réelles, les pentes deviennent rapidement un problème sachant qu'il est partout conseillé de ne pas dépasser 3% et que mon dessin mène à des pentes de 10% dans la zone d'échange entre niveau supérieur et inférieur (entouré en rouge).

 

réseau_

 

Voila je suis en train de galérer à tout redessiner afin d'atténuer les Pentes et je ne sais pas du tout si je vais y arriver en respectant mon projet initial.

pHb

 

 

30 décembre 2013

CDM Rail.

Je découvre aujourd'hui "CDM Rail", un gros logiciel libre de droits qui fait plein de chose. Malheureusement il est basé sur un système d'alimentation digital et je n'ai pas l'intention de m'y mettre, du moins pas pour le moment.

Ensuite je ne pense pas qu'il gère les sons et les annonces en gare, fonction à laquelle je tiens particulièrement. Par contre il permet de faire à peu près tout le reste dans une interface assez intuitive.

CDM Rail

Environ une journée de prise en main sans utiliser beaucoup l'aide (fort bien faite) et j'ai pu redessiner mon réseau. Bien m'en à pris car les bibliothèques de rails et aiguillages incorporées m'ont donné une idée un peu plus réaliste des dimensions de mon réseau.

CDM Rail2

Fonction précieuse, il gère les différents niveaux de réseaux !

En fait lors de mes premières ébauches, je me suis laissé aller, sans trop m'en rendre compte, à des courbes de rayon jusqu'à 40 cm ce qui n'est pas raisonnable. En effet je ne souhaite pas descendre en dessous de 50 cm.

Ouf ! Mon nouveau dessin étant réalisé, je me rend compte que mon plateau ne pourra pas faire moins de 150 cm de large, ceci au lieu des 125 prévus à l'origine. Ce n'est pas dramatique et je vais essayer de gratter encore quelques centimètres mais il était quand même temps que je fasse ce dessin un peu réaliste.

Merci CDM Rail *!

Nous en reparlerons sans doute.

PhB

* téléchargement sur le site, installation sans (mauvaise) surprise ... c'est du sérieux.

 

27 décembre 2013

La protection des convois.

Comme je l'ai expliqué, j'ai deux alimentations par voie, celle de la voie elle même et celle par caténaires. Ainsi je suis capable de faire rouler deux trains de façon distincte sur une même voie. Aussi cela pose le problème de la protection entre trains.

J'ai déjà évoqué le sujet dans la description du réseau, mes trains occupent un ou plusieurs cantons et :

  • Le premier canton libre derrière le train sera déclaré "arrêté" de sorte à ce qu'aucun train ne puisse y venir.
  • Le canton d'encore avant sera déclaré "ralenti" de sorte à ce que les trains n'atteingent pas le canton arrêté ce qui provoquerait un arrêt brutal désagréable.

fenetrePilot

Dans la fenêtre ci contre (agrandir pour voir les détails), on voit que le train 58 qui est stationné voie 1 occupe les cantons 34 et 35 puis que le canton 33 est arrêté (en rouge sombre) et le 32 ralenti (en jaune).

Les autres trains étant sur des tronçons non alimentés du fait des aiguillages, leurs cantons de protection ne sont pas activés sans quoi la voie serait bloquée pour rien.

Lorsqu'un train en suit un autre et atteint le canton ralenti, l'expérience m'a montré que la stratégie de ralentissement développée pour arriver en gare n'est pas assez efficace et fait que le train atteint le canton arrêté, il s'arrête alors brutalement ce qui n'est pas sain.

J'ai donc développé un procédure dérivée de la procédure de ralentissement ou la vitesse décroit de 2 pas toutes les secondes au lieu d'un pas toutes les deux secondes.

Cette stratégie fait que même si le train atteint le canton arrêté il y arrive à vitesse min et peu s'arrêter sans à coup brutal.

J'ai réalisé un script qui produit le cas d'arrêt total, la voie en gare n'étant pas libre pour quelques secondes.

PhB

 

 

 

24 décembre 2013

La gestion de l'état des trains.

Dans mes scripts j'ai imaginé les méthodes suivantes pour animer les trains, méthodes que j'ai appelées "consignes" :

  • Train qui "Stationne" : ce train ne bouge pas il est là pour le décor.
  • Train qui "Tourne" : ce train quitte son stationnement puis tourne indéfiniment.
  • Train qui "Passe" : ce train quitte son stationnement puis tourne jusqu'à l'heure de son arrivée en gare.
  • Train "Dépôt" : Ce train quitte son stationnement, va en gare à l'heure dite puis revient à son stationnement.

Chaque train est géré par une fonction du type automate, régie par une variable qui lui est propre.

Cette variable "trainAutomate" peut prendre les valeurs suivantes :

  • 0 : garage.
  • 1 : Accélère.
  • 2 : En route (vitesse stabilisée).
  • 3 : Ralentit (en vue d'un arrêt en gare).
  • 4 : en gare.
  • 5 : accélère.
  • 6 : en route.
  • 7 : ralentit (en vue d'un arrêt au garage).

Ainsi un train dont la consigne est "Tourne" va passer par les états suivants : 0 > 1 > 2 puis rester en 2.

Un train dont la consigne est "Passe" va passer par les état suivants : 0 > 1 > 2 > 3 > 4 > 1 > 2 puis revenir en 3 et 4 si un nouvel arrêt est prévu.

Un train dont la consigne est "Dépôt" va passer pour tous les états de l'automate : 0 > 1 > 2 > 3 > 4 > 5 > 6 > 7 > 0 puis rester au garage.

script

Dans le script ci dessus on voit que le convoi 23 est utilisé deux fois, une fois sous le numéro de train 2365 et une autre fois sous le numéro 2398. La première fois il est programmé en "Passe", la seconde en "Dépôt" de sorte à le renvoyer au garage. D'une façon générale cela n'a pas de sens de laisser tourner les convois aussi je termine toujours la programmation d'un train par une ligne en mode "Dépôt".

Ceci m'amène à dire qu'en fait je n'envisage pas réellement d'utiliser le mode "Tourne". Cela ne coûte rien de le prévoir quand même.

Traitement de l'accélération.

Afin de réaliser des accélération assez douces, l'accélération est gérée à l’aide d’un pas temporel réglée à 2 secondes (constante ajustable au besoin).

A chaque pas de deux secondes la valeur de commande électrique augmente d’une unité jusqu’à atteindre la vitesse maximum définie dans le script (par défaut la valeur 8). Le train est alors dans l’état « en route » et reste à cette valeur jusqu’à ce qu’il soit nécessaire de le ralentir pour gérer une arrivée.

Traitement de la décélération.

Le même pas temporel de 2 secondes est utilisé cependant la décélération est nettement plus complexe à gérer.

En effet, le ralentissement doit être prévu en fonction de la distance à l’arrivée afin de se produire ni trop tôt ni trop tard. Rien ne serait plus moche qu’un train qui s’arrête brutalement.

Lors de la phase de gestion des arrivées, la procédure gérerArrivée dispose de la distance à l’arrivée qui est calculée par la fonction chercheChemin.

Il est souhaitable d’arriver avec une vitesse de l’ordre de 10 cm/sec (quand cela est possible, cela dépend des machines et de leur capacité à fonctionner au grand ralenti).

En fait on va analyser la table des vitesses et retenir la plus petite vitesse disponible, non nulle, pour effectuer l’arrivée.

Par exemple si la table des vitesses est la suivante :

  • convoisDisponiblesConfig(4, 4) = "12"
  • convoisDisponiblesConfig(4, 5) = "25"
  • convoisDisponiblesConfig(4, 6) = "37"
  • convoisDisponiblesConfig(4, 7) = "50"
  • convoisDisponiblesConfig(4, 8) = "62"
  • convoisDisponiblesConfig(4, 9) = "85"
  • convoisDisponiblesConfig(4, 10) = "100"
  • convoisDisponiblesConfig(4, 11) = "120" 'vitesse max en cm/s

La vitesse de 12 cm/sec convient parfaitement. Elle sera appliquée pendant un temps égal à 2 secondes lors de l'arrivée mais juste avant, la vitesse supérieure sera utilisée pendant le même temps, et ainsi de suite.

Si nous sommes au pas de commande « n » (valeur de la commande au moment de l'évaluation de la distance d'arrêt) nous savons évaluer la distance de freinage.

La distance parcourue sera :

  • 2sec x Vmin (le résultat est en cm)
  • 2sec x Vn-2
  • 2sec x Vn-1
  • 2sec x Vn

Nous aurons quelque chose comme :

    For i = min to n

      Distance = 2secondes * V(i)

    Next

A l’aide de ce résultat, comparé à la distance au point d'arrêt, je sais programmer le début de la décélération.

A partir du moment où il est décidé de ralentir, la commande de vitesse est diminuée d'une unité toute les 2 secondes. Autant pour l'accélération il était possible d'aller jusqu'à la vitesse max sans se poser de question, autant ici il ne faut pas aller jusqu'à la commande V1 sans se poser de question. En effet la plupart des convois n'avancent pas à V1. Il faut donc chercher dans la table du convoi la plus petite commande pour laquelle il avance encore, c'est ce que j'appelle Vmin.

Voila comment faire "bouger" mes trains.

La prochaine fois nous reviendrons sur les dispositions qui permettent de protéger un train d'un autre qui le suit.

PhB

 

23 décembre 2013

Installation des trains.

Nous avons vu la description de la voie, des aiguillages et des capteurs. Reste maintenant à décrire les trains qui sont sur le réseau.

Pour ce faire j'ai réalisé une table qui décrit tous les convois dont je dispose mais qui ne sont pas forcément installés, tout mon matériel en fait.

Les convois sont décrits à l'aide de 14 paramètres.

'Convoi 0

  • convoisDisponiblesConfig(0, 0) = "22" 'numéro
  • convoisDisponiblesConfig(0, 1) = "TER" 'type
  • convoisDisponiblesConfig(0, 2) = "CORAIL" 'nom
  • convoisDisponiblesConfig(0, 3) = "188" 'longueur 188 cm
  • convoisDisponiblesConfig(0, 4) = "0"
  • convoisDisponiblesConfig(0, 5) = "20"
  • convoisDisponiblesConfig(0, 6) = "33"
  • convoisDisponiblesConfig(0, 7) = "46"
  • convoisDisponiblesConfig(0, 8) = "59"
  • convoisDisponiblesConfig(0, 9) = "70"
  • convoisDisponiblesConfig(0, 10) = "79"
  • convoisDisponiblesConfig(0, 11) = "87" 'vitesse max en cm/s
  • convoisDisponiblesConfig(0, 12) = "Voie" 'alimentation
  • convoisDisponiblesConfig(0, 13) = "" 'position initiale

P1100676_

 

Le numéro du train est exprimé sur deux chiffres suivant une convention qui n'a pas d'importance technique, 2x pour les TER, 3x pour les TEE, 5x pour les TGV, 1x pour les convois de marchandise.

Le nom du train est ensuite complété lors de la définition du script par deux chiffres pour l'affichage et les annonces. Cela permet d'utiliser le même convoi pour plusieurs trains tout en ayant des annonces un peu réalistes, par exemple dire : « Le TGV numéro 5456 … ».

La longueur du train exprimée en cm permet le bon placement du train sur la voie, avec une occupation des cantons réaliste (la longueur réelle des cantons est décrite dans la table des cantons).

Les paramètres de vitesse 1 à 8 permettent de connaître la vitesse réelle du train en fonction de la commande de  vitesse appliquée. Ces paramètres ont été individuellement mesurés (voir ICI) pour chaque convoi.

Enfin le paramètre alimentation « Voie » ou « Caténaire » permet de savoir à quelle alimentation le train va réagir.

J'ai actuellement mais cela peut évoluer aisément, 12 convois décrits de cette façon.

La fonction d'installation (voir fenêtre pilote) propose la liste de ces convois. Lorsque l'opérateur valide une position d'installation, la configuration du convoi est recopiée dans une table de variables "convoisConfig", le paramètre 13 est renseigné par la position initiale.

Les trains sont indexés dans leur ordre d'installation et reportés dans la liste visible dans la fenêtre "Pilot".

J'ai avec ceci tout ce qu'il me faut pour piloter les trains !

PhB

 

Publicité
Publicité
1 2 3 4 5 6 7 8 > >>
Publicité