LOCODUINO

Réalisation d’un wagon de mesure (distance et vitesse)

et transmission Bluetooth

. Par : Serge

Description : Le système est construit autour d’un Arduino Nano dont le rôle est de : mesurer les tensions analogiques de sortie des capteurs linéaires à effet Hall extraire la position angulaire de l’essieu calculer la distance parcourue dériver la distance parcourue pour obtenir la vitesse mettre à l’échelle les valeurs obtenues en (…)

Retourner à l'article

Vous répondez à :

Bonsoir Strelok,
Très bonne idée, l’utilisation d’un encodeur Pololu.
On remplace les capteurs analogiques par des capteurs tout ou rien. On gagne toute la trigo, sans perdre la différenciation de la mesure marche avant ou arrière. Les capteurs sont bien calés en quadrature grace au circuit imprimé.
Le seul bémol : la perte de résolution, il n’y a plus que 12 pas par tour de roue, soit des pas de l’ordre de 2,5 mm pour la position du wagon. Pas bien grave, car le wagon n’est pas un outil de métrologie.
J’aime bien.

Serge

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Lien hypertexte

(Si votre message se réfère à un article publié sur le Web, ou à une page fournissant plus d’informations, vous pouvez indiquer ci-après le titre de la page et son adresse.)

9 Messages

  • Réalisation d’un wagon de mesure (distance et vitesse) 18 janvier 2020 21:22, par bobyAndCo

    Bravo Serge,

     

    Quel boulot ! Beaucoup de sujets abordés ici qui peuvent trouver des applications dans de nombreux autres projets ferroviaires. Même si ce n’est pas le sujet central, j’ai bien aimé le système de captage du courant sur la voie, son traitement et son stockage.

     

    Clairement, voilà ce que l’on appelle de l’électronique embarquée. Cela ouvre des pistes de réflexion. Un tel système peut faire remonter des informations (par Bluetooth ou Wifi) à un gestionnaire : vitesse bien sûr, position… Mais peut aussi recevoir des commandes, allumages de feux dans des rames, décrochage de wagons…

     

    Je suis cependant interrogatif quant au choix de l’Arduino Nano (que j’aime beaucoup). Mais ne serait-il pas (beaucoup) plus judicieux de mettre un ESP32 qui est Bluetooth et Wifi d’origine, qui consomme moins et qui est plus puissant ?

     

    Encore bravo !

     

    Christophe

    Répondre

  • Merci beaucoup pour ce projet,

    J’ai utilisé au lieu de vos 2 capteurs et assemblage d’aimants, un encodeur magnétique pololu pour axe de 2mm ainsi qu’un capteur à effet hall 2 voies.

    Ceci permet de minorer les erreurs de mesure et simplifier la construction.

    //Partie configuration :
    void setup()
    pinMode(HALL_A, INPUT_PULLUP) ;
    pinMode(HALL_B, INPUT_PULLUP) ;

    attachInterrupt(0, callbackA, CHANGE) ; //attache l’interruption externe n°0
    attachInterrupt(1, callbackB, CHANGE) ;
    ...

    //Ainsi dans la callback interruption :
    distance = comptageCapteur * CSTE_HALL ;

    void callbackA()
    stateA = !stateA ;
    if(stateA == HIGH && stateB == LOW && old_stateA == LOW)
    comptageCapteur++ ;

    count_direction = stateA ^ old_stateB ;

    old_stateA = stateA ;

    void callbackB()
    comptageCapteur++ ;
    stateB = !stateB ;

    old_stateB = stateB ;

    Répondre

  • Bonsoir Strelok,
    Très bonne idée, l’utilisation d’un encodeur Pololu.
    On remplace les capteurs analogiques par des capteurs tout ou rien. On gagne toute la trigo, sans perdre la différenciation de la mesure marche avant ou arrière. Les capteurs sont bien calés en quadrature grace au circuit imprimé.
    Le seul bémol : la perte de résolution, il n’y a plus que 12 pas par tour de roue, soit des pas de l’ordre de 2,5 mm pour la position du wagon. Pas bien grave, car le wagon n’est pas un outil de métrologie.
    J’aime bien.

    Serge

    Répondre

  • Bonjour,
    Très intéressant.
    N’auriez-vous pas la possibilité de coller plus d’aimants sur le côté intérieur d’une roue ? (meilleure précision)
    Bonne journée
    Bien cordialement.
    Jpl

    Répondre

    • Les aimants ont un champ magnétique qui va d’une face plane à l’autre. En les collant sur l’axe de l’essieu ils génèrent un champ magnétique radial le plus sinusoïdal possible (un peu en forme de fleur à 2 pétales). La linéarité du capteur à l’intérieur du 1/2 tour d’essieu est entachée des défauts de la forme sinusoïdale du champs radial.
      Je ne pense pas que la disposition des aimants sur la roue puisse permettre d’obtenir un champ radial sinusoïdal. Par contre, cette disposition doit permettre d’obtenir un champ axial de forme à peu près sinusoïdale. Le métal de la roue doit être ferromagnétique pour assurer le retour du champ entre les poles de 2 aimants consécutifs. Il faudrait alors tourner les capteurs d’un quart de tour pour qu’ils soient face à la roue afin de capter ce champs axial.
      Ca pourrait s’essayer pour comparer les linéarités, mais je ne crois pas à une nette amélioration de la précision.

      Répondre

  • Bonjour,

    Je souhaite réaliser ce wagon de mesure, mais j’ai une interrogation concernant le positionnement des capteurs A et B.

    Quand je regarde le dessin, pour moi l’angle entre l’axe des capteurs est de 225° (180 + 45), pas 270°.

    Je n’arrive pas à comprendre où sont les 270°, et comme tous les calculs sont faits avec cet angle, je voudrais bien comprendre.

    Cordialement

    Répondre

    • Bonjour,

      Sur la figure 5, pour aller du capteur A au capteur B il faut parcourir 90° + 45° soit 135°. Comme il y a deux paires d’aimants par tour, l’angle "électrique" sera de 135° x 2 soit 270° ou -90° à un tour près.
      En sens inverse, de B vers A on a -180° - 45° = -225° mécanique et donc -450° électrique soit -360° - 90° soit un tour moins 90°.
      Et donc électriquement parlant, les capteurs sont bien en quadrature.

      Cordialement

      Répondre

  • Réalisation d’un wagon de mesure (distance et vitesse) 13 décembre 2023 15:11, par PARMENTIER Dominique

    Bonjour
    Bravo pour le wagon de mesure.
    Tout fonctionne ainsi que les 2 applications.
    J’ai juste une différence de mesure entre le réel et la distance affichée sur le wagon.
    Pour 100 mm de déplacement réel le wagon affiche 86mm.
    Le wagon a des roues diamètre 11 mm sur axe d’essieu de 2 mm.
    Il y a t’il un réglage à faire ,soit sur les capteurs ou une correction dans le programme.
    Cordialement

    Répondre

Rubrique Projets

Les derniers articles

Les articles les plus lus