Auteur Sujet: Train miniature du futur  (Lu 94887 fois)

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3039
  • 100% Arduino et N
    • Voir le profil
Re : Re : Train miniature du futur
« Réponse #60 le: décembre 20, 2017, 10:43:42 am »
Ah Bravo  ;D ;D ;D J'adore cette discussion sur ce terrain qui correspond exactement au but recherché !

Très agréable, je constate que les discussions vont bon train !
Plein d'idées, certaines très intéressantes.

En effet, pour obtenir un réseau ferroviaire extrêmement simple à mettre en oeuvre, il est impossible de faire autrement : ce sont les éléments à assembler qui sont très sophistiqués pour présenter en final une interface très simples aux modélistes.
On connait bien ce principe qui a conduit à l'explosion de l'informatique personnelle quand Apple a crée le Mac (à l"époque de construisait mes propres ordinateurs et j'ai immédiatement abandonné pour me faire embaucher chez le constructeur californien), puis l'iPhone et les OS extrêmement complexes comme iOS et Android sans oublier les outils de développement nécessaires aux développeurs. Cela a créé un éco-système fécond surtout pour les créateurs.

Mais revenons à notre modélisme ferroviaire qui est infiniment plus simple (on commence à en voir les contours et tous les ingrédients en parcourant le site éditorial et le Forum Locoduino) : les ingrédients sont là et cette discussion aborde maintenant les première hypothèses d'architecture.

Je peux essayer de vous donner mon humble avis d'arduiniste, en gardant l'hypothèse d'un contrôleur à base d'arduino pour chaque canton, qui est certainement la plus modulaire ..?
L'arduinoOTA j'avais déjà commencé à regarder mais c'est un peu chaud.

Je ferai une modification du bootloader Arduino pour flasher via le CAN, c’est nécessaire sur mon réseau.

Merci bricoleau et Jean-Luc d'apporter votre expérience qui montre la faisabilité de réalisation de modules "intelligents"

Le sigle OTA (Over The Air) pourrait être remplacé par OTW (Over The Wires) car seul le bus CAN (ou variante Ethernet) reste à connecter, avec les alimentations de puissance qu'on gardera sagement à part.

Je note aussi l'importance fondamentale de bien définir les identifiants des messages CAN. J'utilise le CAN aussi, c'est ma première réalisation de ce type de réseau, ça marche très bien, je ne me soucie absolument pas de la bonne transmission des messages, toujours impeccable, malgré les évolutions des logiciels. Mais mon schéma d'identifiants est probablement à revoir. Là Jean-Luc a une avance considérable  8)

 
« Modifié: décembre 20, 2017, 10:45:45 am par Dominique »
Cordialement,
Dominique

bricoleau

  • Jr. Member
  • **
  • Messages: 51
    • Voir le profil
Re : Train miniature du futur
« Réponse #61 le: décembre 20, 2017, 07:42:33 pm »
Hehe
Je connais assez bien le sacerdoce d'aider les newbies, avec parfois un petit agacement face au temps perdu à devoir répondre à des personnes qui posent des questions avant même de faire un petit effort personnel de recherche et de documentation.
Aussi j'essaye de vous épargner sur ce point, si si j'vous jure  :P

Effectivement le CAN est au centre de mes réflexions en ce moment.
Je ne pense pas être passé à côté des aspects essentiels de la communication sur bus CAN, ou du moins pas à côté de ceux évoqués plus haut.
C'est juste que j'arrive avec un oeil neuf, donc j'ai envie de prendre le temps de réévaluer les questions fondamentales avant d'emprunter les chemins déjà balisés.
Pas de doute sur le fait qu'au niveau physique la communication est bien assurée sur le bus.
Mais sur l'ensemble de la chaîne de liaison, j'ai évalué que la faiblesse se trouve entre l'arduino et le MCP2515, voire dans le MCP2515 lui-même, trop faiblement bufferisé.
Avec un bus à 500 kbs, j'ai mesuré que deux arduino peuvent échanger jusqu'à 4000 trames de 0 octet par seconde (et 2400 trames de 8 octets).
En réception, ca fait potentiellement un message à traiter toutes les 250 microsecondes, qui doit être consommé rapidement par l'arduino sous peine de perte de messages.

Les possibilités de filtre au niveau du MCP2515 apportent un début de réponse au risque de perte de message utile, dans la mesure ou ceux qui sont hors scope sont éliminés dès le départ.
Mais si on reçoit plusieurs messages utiles en rafale, le risque demeure.
Il faut un arduino dont le programme est structuré en unités d'oeuvres très courtes, capable de s'interrompre pour lire les messages du MCP2515, quitte à les placer temporairement dans un buffer plus gros en RAM. Ce n'est pas toujours évident à obtenir.

Par exemple : j'ai en tête de réaliser une mini console de bus can, avec un affichage direct sur écran LCD, pour y restituer tous types d'infos qui peuvent passer sur le bus.
D'habitude j'utilise des LCD 4x20 à interface I2C, très bon marché et simples à mettre en oeuvre, mais dont le principal inconvénient est la lourdeur de la laison I2C avec un PCF8574 en intermédiaire côté LCD.
Visuellement, on peut se contenter d'un rafraichissement d'écran chaque demi seconde. Le problème reste de ne pas perdre de messages CAN pendant ce rafraichissement, qui peut durer jusqu'à 20 millisecondes. Je suis bien parti pour devoir réécrire une bibliothèque LCD_I2C interruptible.

Autre point : en potassant le datasheet du mcp2515, j'ai aussi vu que les deux filtres/buffers de réception ne sont pas traités de manière égale.
Les messages issus du filtre0 peuvent déborder dans le buffer1 si le buffer0 n'a pas été consommé.
Il y a donc intérêt à mettre la sélection des messages importants dans le filtre0.
A mon sens, c'est encore une rustine qui vise à contourner la faible bufferisation du MCP2515.

Perso, si je devais adresser des besoins extrêmes, je serais assez tenté d'ajouter un arduino intermédiaire, dont la seule fonction serait de gérer la bufferisation du MCP2515 en exploitant toute sa RAM.
Et encore, je reste dans le cas favorable où le bus CAN est à seulement 500 kbs, c'est-à-dire un débit utile plus faible que celui de la liaison SPI entre l'arduino et le MCP2515.
Il n'y a donc pas de risque que l'arduino se fasse déborder par le débit sur le bus, tant qu'il garde un mimimum de dispo régulière pour lire le MCP2515.

Dans ce contexte, il me semble raisonnable de prévoir un système où, par exemple, une centrale émet une consigne de bascule d'aiguillage, puis se met à l'écoute d'un message d'information de changement d'état en provenance de l'aiguillage, pour s'assurer que la commande a bien été traitée et éventuellement réemettre la consigne.
Ca c'est déjà ce que j'appelle un sur-protocole, avec un début d'acquittement.
Je me pose donc la question de normer ce sur-protocole, pour que la plupart des cas d'usage puissent s'inscrire dans un modèle générique.
Et effectivement le risque est d'alourdir les trames de base et donc de réduire le débit utile sur le bus.
Il y a certainement un juste curseur à positionner.

Et dans tous ça, il est clair que les règles de valorisation des identifiants des messages CAN sont essentielles, et pas forcéement évidentes à édicter.
Techniquement, on est libre d'utiliser des identifants courts sur 11 bits ou étendus sur 29 bits.
La valorisation des identifiants est également libre. On peut y mettre la notion de type de message et/ou d'émetteur et/ou de destinataire.
Et encore, la notion d'émetteur / destinataire peut correspondre au MCP2515 ou à un dispositif plus fin, comme une commande d'aiguillage ou un capteur quelconque.
Ajoutez à cela les notions de priorisation des messages selon la valeur de l'identifiant (protocole CAN), ainsi que les possibilités de filtrage offertes par le MCP2515.
Au final je trouve qu'il n'est pas évident de se faire une religion sur le bon usage de la bestiole.

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3039
  • 100% Arduino et N
    • Voir le profil
Re : Train miniature du futur
« Réponse #62 le: décembre 20, 2017, 11:12:52 pm »
Tu as certainement lu mon article « Mise en œuvre du bus CAN » http://www.locoduino.org/spip.php?article148 dans lequel je décris comment réaliser une mémoire tampon circulaire pour ne perdre aucun message. Elle tient évidemment dans le même Arduino qui est connecté au 2515.

J’ai fait pas mal de tests pour verifier qu’aucun message n’est perdu de cette façon, y compris en observant le trafic en parallèle avec un autre Arduino. Il y a beaucoup de chose à dire sur la robustesse du protocole CAN, mais ce serait plutôt à faire sur le fil consacré au bus CAN http://forum.locoduino.org/index.php?topic=51.0 que sur sur le présent fil.

J’ai cru aussi au début qu’il fallait être capable de tenir des débits importants, mais ce n’est pas si vrai que ça et ça se calcule bien. Je pense que dans notre cas, on est loin des limites si on est en DCC (les commandes des locos passent par les rails, le reste par le CAN). C’est peut-être plus dense en traction PWM, avec la synchronisation expliquée par Jean-Luc puisque tout passe par le CAN.

Ta remarque concernant un contrôle de flux au niveau application (utiliser des accusés de réception) est tout à fait pertinente et je le pratique mais pas systématiquement. Par contre, pour commander des aiguilles j’evite que toutes les aiguilles changent en même temps et je fais respecter des délais pour éviter les pointes de courant trop importantes. Dans notre cas il y aura très peu d’aiguilles par canton (0 à 3 par exemple) et ce sera la commande des aiguilles par l’Arduino qui temporisera plutôt que le bus CAN.

En passant, j’ai déjà réalisé une console de surveillance du bus CAN, avec un écran LCD 4x20 et je te garantis que l’ecran est trop petit pour afficher tous les messages. Tu peux tout juste compter les principaux types de messages. Faire un data-logger sur carte SD avec lecture différée est possible.

Mais continuons cette discussion sur le fil du Can et revenons sur ce fil pour confirmer que le choix du CAN est valide.
« Modifié: décembre 20, 2017, 11:22:59 pm par Dominique »
Cordialement,
Dominique

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3039
  • 100% Arduino et N
    • Voir le profil
Re : Train miniature du futur
« Réponse #63 le: décembre 20, 2017, 11:37:09 pm »
Juste pour dire que d’introduire un équivalent de l’adresse MAC dans les 2515 n’est plus possible et ne me parait pas indispensable, dans le cas de nos réseaux, la nécessité d’unicité n’étant pas si forte que sur Ethernet.

Par contre un système d’identification des types de modules avec reconnaissance automatique des capacités des modules connectés, comme le préconise la norme LCC (layer control command), en plus simple de preference, me semble une bonne chose.
Cordialement,
Dominique

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3039
  • 100% Arduino et N
    • Voir le profil
Re : Train miniature du futur
« Réponse #64 le: décembre 21, 2017, 12:58:28 pm »
Et la preuve que c’est possible : je viens de tester les commandes de mes trains par l’ecran tactile du gestionnaire, via le bus CAN : no de train, vitesse, direction, fonctions. Les messages CAN sont reçus par mon module de traction en cours de description ici : http://forum.locoduino.org/index.php?topic=290.30

Et ça marche nickel  ;D
Cordialement,
Dominique

dbe8f

  • Newbie
  • *
  • Messages: 14
    • Voir le profil
Re : Train miniature du futur
« Réponse #65 le: décembre 22, 2017, 05:10:25 pm »
Bonsoir tout le monde,

Merci pour les réponses à ma question de "citer", j'ai maintenant compris.

Je n’en pense que du bien ! Je suis d’ailleurs en train de travailler sur quelque chose de tout à fait similaire à ce que tu décris avec un Arduino par canton et :

Je vous joins une image de ce que j'avais commencé et posté il y a 3 ans. Je pense que cela peut vous intéresser. Je n'avais pas encore regarder la problématique du bus CAN, mais il y a des possibilités.

Je n'avais pas, par manque de temps, toujours celui-là, fait le programme mais l'idée était celle-là un programme identique pour tous les blocs avec quelques paramètres de configuration en entrée.

Bonne soirée.
Dario

chris_bzg

  • Sr. Member
  • ****
  • Messages: 319
    • Voir le profil
Re : Train miniature du futur
« Réponse #66 le: décembre 23, 2017, 07:20:40 pm »
Trains volants

Les modèles proposés par les industriels ces dernières années étaient plutôt du matériel contemporain, peut-être parce que c'est plus facile d'y loger les décodeurs ou bien parce que, pour attirer la jeune génération, il faut lui proposer ce qu'elle connaît du chemin de fer. Par exemple, combien de TGV modèles réduits ont été vendus à la mise en ligne de ce nouveau train ?

On peut parier que dans l'avenir, les trains modèles réduits continueront à suivre l'actualité des trains réels et si on se projette dans le futur, on peut imaginer qu'un jour, il sortira une reproduction de train à lévitation magnétique, connus sous le nom de MagLev (Magnetic Levitation). Le modèle réduit flottera alors au-dessus d'un rail constitué d'aimants ou d'électroaimants et il n'y aura plus aucune friction (sauf celle de l'air) à combattre.

Bien entendu, la commande de ces trains sera bien différente de ce que nous connaissons en analogique ou numérique car il ne s'agit plus d'apporter du courant mais il faut commander au bon moment les différents électroaimants afin d'une part de faire léviter le train mais d'autre part le faire se déplacer. Cette nouvelle technique peut plaire par son côté novateur à bon nombre de bricoleurs qui essaieront peut-être de la reproduire grâce à des microcontrôleurs embarqués. Et comme il n'y aura aucun contact rail-machine, il faudra une fois de plus trouver d'autres solutions pour apporter l'énergie. Je ne dis pas que ce sera facile, mais c'est tout-à-fait réalisable et voici un bon sujet d'expérimentation pour ceux qui veulent innover. Peut-être faut-il le voir que comme une curiosité car je n'imagine pas qu'on va remplacer l'ensemble du réseau ferré existant par de nouveaux rails pour MagLev, mais ce sera sans doute un des moyens de transport rapide du futur ou des vitesses de 1000 km/h sont déjà annoncées. Heureusement pour nos modèles réduits, il existe actuellement des MagLev bien plus lents...   :)

Rob1

  • Jr. Member
  • **
  • Messages: 62
    • Voir le profil
    • Mon projet réseau
Re : Train miniature du futur
« Réponse #67 le: décembre 24, 2017, 11:31:23 am »
Dans l'état actuel de nos connaissances à produire de l'énergie je ne suis pas sûr qu'il existe un modèle économique pour la lévitation magnétique. La puissance nécessaire à la sustentation est sans commune mesure avec celle nécessaire au roulage actuel. Même dans les descentes il faut dépenser de l’énergie.
Un autre souci c’est le cuivre, ressource de plus en plus rare et chère, et là il en faudra beaucoup.
Mais ça c’est aujourd’hui. L’avenir me démentira sans doute, tant mieux (j'espère que se ne sera pas la téléportation, se serait la fin des trains).

chris_bzg

  • Sr. Member
  • ****
  • Messages: 319
    • Voir le profil
Re : Re : Train miniature du futur
« Réponse #68 le: décembre 24, 2017, 12:11:33 pm »
Dans l'état actuel de nos connaissances à produire de l'énergie je ne suis pas sûr qu'il existe un modèle économique pour la lévitation magnétique. La puissance nécessaire à la sustentation est sans commune mesure avec celle nécessaire au roulage actuel. Même dans les descentes il faut dépenser de l’énergie.

Je pense que tu parles ici des MagLev réels qui sont effectivement très voraces en énergie et qui font appel à des aimants supraconducteurs refroidis à 4 K par de l'hélium liquide.
Pour ce qui concerne des trains modèles, je pense que la masse à faire léviter peut se contenter d'aimants normaux. Il existe d'ailleurs certains jouets (découverte scientifique) où on fait léviter des objets relativement simples, comme un petit globe terrestre. Encore une fois, l'arrivée de tels trains miniatures dans la hotte du Père Noël relève de la science fiction, mais n'est pourtant pas à exclure puisque toute technique de pointe finit par devenir technique courante.

Cela me rappelle un salon de la maquette à la Porte de Versailles où on nous avait présenté un microréacteur sur un banc d'essai. Son principe de fonctionnement était inspiré des vrais réacteurs d'avion mais il fallait tout un banc pour le mettre en oeuvre, ce qui fit dire à certains qu'en dehors de cette configuration, il ne réussirait jamais à voler car trop lourd pour trop peu de poussée. Moins de deux ans plus tard, une maquette d'Airbus A340, munie de quatre microréacteurs était présentée au salon et volait en représentation extérieure (pas au salon car il n'y avait pas la place tout de même !). Comme quoi les idées les plus folles finissent toujours par se réaliser...  ;)

Et vous ? C'est quoi vos idées les plus folles ?

Rob1

  • Jr. Member
  • **
  • Messages: 62
    • Voir le profil
    • Mon projet réseau
Re : Train miniature du futur
« Réponse #69 le: décembre 24, 2017, 12:31:19 pm »
Tout à fait d'accord avec toi. On avait dit cela aussi pour le cœur artificiel.
Mon idée la plus folle c'est que lorsque qu'ils en auront fini avec le "cœur muscle de l'homme" il s'attaque au "cœur  de l'être" mais là je suis hors rubrique.
C'est sans doute parce-que nous sommes la vielle de Noël que je m'épanche ....   Bon Noël à tous.

chris_bzg

  • Sr. Member
  • ****
  • Messages: 319
    • Voir le profil
Re : Train miniature du futur
« Réponse #70 le: janvier 31, 2018, 03:49:07 pm »
Le train miniature du futur sera certainement une reproduction des trains qui existeront en vrai dans le futur.
Des universités très sérieuses se penchent actuellement sur la lévitation magnétique comme le montre la vidéo ci-dessous.

Bon, d'accord, tout le monde ne pourra pas manier facilement l'azote liquide, mais des recherches très sérieuses sont faites pour trouver des corps supraconducteurs à des températures moins basses. Je vous l'accorde, cela restera de la science fiction pour encore un peu de temps. Mais de simples expériences avec des aimants démontrent que l'on peut soulever des masses plus faibles (modélisme) sans recourir à la supraconductivité. Resterait donc à imaginer un moyen de commander le champ magnétique pour mouvoir le modèle réduit le long de la voie. Avec Arduino peut-être ?

Et peut-être que certains trains miniatures du futur arriveront avant que cela n'existe en réalité. Le projet Hyperloop d'Elon Musk devrait permettre de propulser une capsule à plus de 1000 km/h et ainsi relier San Francisco à Los Angeles en moins de trente minutes. A quel prix ? C'est sans doute ce qui peut faire douter de ce projet très futuriste. Pourtant, sa réalisation en modélisme est parfaitement envisageable comme le montre la vidéo ci-après.


Comme vous le voyez, le train miniature du futur sera peut-être très différent du train miniature actuel. En attendant, j'ai reçu le matériel que j'attendais pour le train miniature à énergie embarquée. Quelques essais devraient me permettre de voir si le concept est réalisable, avec quelles contraintes, etc. On sait que c'est faisable avec des véhicules routiers (système Car Faller), il reste à voir si on arrivera à tracter des trains. Sinon, ce sera draisine ou autorail ! Mon copain Hubert a déjà pris un peu d'avance et on vous tiendra au courant.  ;)

bobyAndCo

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1081
  • HO avec DCC++
    • Voir le profil
Re : Train miniature du futur
« Réponse #71 le: janvier 31, 2018, 04:40:11 pm »
Merci Christian, c'est trop top le train en bois qui marche à l'azote liquide !!! A n'en pas douter ça va être le jouet de l'année pour les 1 à 4 ans pour Noël prochain. Yoé, Yoé, modélistes ferroviaire, ne vous lamentez plus, voilà qui va relancer l'intérêt des jeunes pour notre hobby. MDR

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3039
  • 100% Arduino et N
    • Voir le profil
Re : Train miniature du futur
« Réponse #72 le: janvier 31, 2018, 05:48:18 pm »
Oui parce que la régulation de vitesse dans le solénoïde, c’est pas gagné  :o
Cordialement,
Dominique

chris_bzg

  • Sr. Member
  • ****
  • Messages: 319
    • Voir le profil
Re : Train miniature du futur
« Réponse #73 le: janvier 31, 2018, 06:01:16 pm »
Exactement mon cher Christophe ! D'autant plus que j'ai entendu dire qu'il serait produit par Fisher Price en partenariat avec Air Liquide ! MDR

Si j'avais prédit dans les années 50 que tout le monde aurait son ordinateur en 2018, tu m'aurais rétorqué qu'on aurait tous de très grands appartements réfrigérés ?
Et tu verras, Christophe, avec les progrès de la technologie, on pourra peut-être même rigoler de tout cela TOI et MOI dans ... 50 ans ! (C'est moins drôle pour nos épouses qui nous supportent...)

Allez, sans rancune, mais c'est toi qui paiera l'apéro quand j'aurais produit mon premier MagLev modèle réduit.  ;)

Evidemment, au moment où j'allais publier, Dominique qui s'en mêle ! Vous vous liguez contre moi ma parole ? Non mais... la régulation dans le solénoïde sera faite avec un contre-champ magnétique extérieur bien évidemment ! LOL



Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1714
    • Voir le profil
Re : Train miniature du futur
« Réponse #74 le: janvier 31, 2018, 06:17:47 pm »
Y’a aussi des gars qui avaient prédit que les voitures voleraient en l’an 2000  ;D
Cordialement