Calcul De La Vitesse D Une Roue De V Lo Arduino

Calcul de la vitesse d’une roue de vélo Arduino

Créez un compteur de vitesse précis pour vélo avec Arduino, capteur Hall ou reed switch, et calculez immédiatement la vitesse, le régime de rotation, la distance par impulsion et la fréquence de signal. Cette page réunit un calculateur pratique et un guide expert pour concevoir un système fiable, rapide et exploitable sur route comme sur home trainer.

Calculateur interactif

Astuce : pour une meilleure précision, utilisez la circonférence réelle mesurée au sol si vous l’avez, sinon le diamètre extérieur pneu compris donne déjà une bonne estimation.

Renseignez vos valeurs puis cliquez sur « Calculer la vitesse ».

Guide expert : calcul de la vitesse d’une roue de vélo avec Arduino

Le calcul de la vitesse d’une roue de vélo avec Arduino repose sur une idée simple : mesurer combien de fois la roue tourne pendant un intervalle de temps connu, puis convertir cette rotation en distance parcourue. En pratique, le système le plus courant utilise un aimant fixé sur un rayon et un capteur placé sur la fourche. À chaque passage de l’aimant, l’Arduino détecte une impulsion. Si l’on connaît la circonférence de la roue, chaque impulsion correspond à une fraction précise de distance. Cette méthode est légère, peu coûteuse, fiable et très populaire dans les projets de compteur de vitesse, odomètre, home trainer, télémétrie ou enregistrement de données.

Pour obtenir un résultat pertinent, il faut distinguer trois grandeurs : la distance par tour, le nombre de tours par seconde et la vitesse linéaire. La distance par tour est tout simplement la circonférence de la roue. Le nombre de tours par seconde se déduit du nombre d’impulsions, du nombre d’aimants et du temps de mesure. La vitesse est ensuite la distance parcourue par seconde. Cette logique est universelle, que vous utilisiez un Arduino Uno, Nano, ESP32 ou tout autre microcontrôleur compatible.

La formule de base

La formule mathématique centrale est la suivante :

  • Circonférence = π × diamètre
  • Tours de roue = impulsions ÷ nombre d’aimants
  • Tours par seconde = tours de roue ÷ temps
  • Vitesse en m/s = circonférence (en m) × tours par seconde
  • Vitesse en km/h = vitesse en m/s × 3,6

Exemple concret : si une roue mesure 70 cm de diamètre, sa circonférence vaut environ 2,199 m. Avec 12 impulsions relevées en 5 secondes et 1 aimant, on obtient 12 tours en 5 secondes, soit 2,4 tours par seconde. La vitesse vaut donc 2,199 × 2,4 = 5,278 m/s, soit environ 19,0 km/h. Ce type de calcul est exactement ce que l’Arduino peut effectuer en temps réel pour afficher la vitesse instantanée sur un écran LCD, un écran OLED, un smartphone ou enregistrer les données sur carte SD.

Bon réflexe d’ingénierie : la plus grosse source d’erreur ne vient pas de l’Arduino, mais de la mesure de la roue. Un pneu gonflé différemment, une charge cycliste plus importante ou une bande de roulement usée peuvent légèrement modifier la circonférence réelle.

Pourquoi la circonférence réelle est plus importante que le diamètre théorique

Beaucoup de débutants saisissent simplement une taille nominale de roue comme 26″, 27,5″ ou 700C. C’est un bon point de départ, mais pas toujours suffisant pour une mesure précise. En effet, une roue de vélo ne se résume pas au diamètre de la jante. Le pneu influe fortement sur la dimension finale. Un 700x25C, un 700x32C et un 700x40C partagent la même famille de jante mais n’ont pas la même circonférence roulante. Si votre objectif est un système Arduino très précis, par exemple pour du suivi sportif, du bikepacking longue distance ou du contrôle de vitesse sur banc d’essai, il est préférable de mesurer la circonférence réelle au sol.

  1. Placez le vélo sur une surface plane.
  2. Marquez un point sur le pneu au niveau du sol.
  3. Avancez d’un tour complet de roue avec le cycliste sur le vélo si possible.
  4. Mesurez la distance entre les deux points de contact au sol.
  5. Entrez cette valeur ou ajustez le diamètre dans votre calcul.

Cette méthode intègre l’écrasement du pneu, la charge et les conditions réelles d’utilisation. Elle est souvent plus fidèle que le simple calcul géométrique à partir du diamètre.

Tableau comparatif des circonférences typiques de roues de vélo

Taille de roue Circonférence typique Usage courant Vitesse à 120 tr/min
26″ VTT 2,070 m VTT classique, usage loisir 14,9 km/h
27,5″ VTT 2,180 m Trail, all mountain 15,7 km/h
29″ VTT 2,300 m XC, marathon, gravel large 16,6 km/h
700x25C route 2,105 m Route performance 15,2 km/h
700x32C gravel 2,155 m Gravel, ville rapide 15,5 km/h
20″ pliant 1,540 m Vélo pliant urbain 11,1 km/h

Les valeurs ci-dessus sont des valeurs typiques observées sur des montages courants et elles montrent un point fondamental : à cadence de rotation identique, une grande roue produit une vitesse plus élevée qu’une petite roue. C’est pourquoi il est indispensable de calibrer correctement le diamètre ou la circonférence dans un compteur Arduino.

Choisir le bon capteur pour Arduino

Le calcul ne vaut que si le comptage d’impulsions est fiable. Trois grandes familles de capteurs sont souvent utilisées :

  • Reed switch : économique, simple, facile à comprendre, mais plus sensible au rebond mécanique.
  • Capteur Hall : très utilisé pour les compteurs de vélo DIY, robuste, rapide, bonne répétabilité.
  • Capteur optique : précis dans un environnement propre, mais sensible à la poussière, à la lumière parasite et à l’alignement.

Dans la majorité des projets de vitesse de roue pour vélo, le capteur Hall est souvent le meilleur compromis. Il supporte bien les vitesses élevées, ne demande pas de contact mécanique et génère des impulsions nettes. Le reed switch reste intéressant pour des prototypes simples ou éducatifs, mais il nécessite parfois un filtrage logiciel pour éviter les doubles détections.

Fréquence des impulsions : ce que l’Arduino lit réellement

L’Arduino ne mesure pas directement la vitesse en km/h. Il mesure une fréquence d’événements. Par exemple, avec une roue de 700x25C de 2,105 m et un seul aimant :

Vitesse vélo Tours de roue par seconde Fréquence avec 1 aimant Fréquence avec 2 aimants
15 km/h 1,98 tr/s 1,98 Hz 3,96 Hz
25 km/h 3,30 tr/s 3,30 Hz 6,60 Hz
35 km/h 4,62 tr/s 4,62 Hz 9,24 Hz
50 km/h 6,60 tr/s 6,60 Hz 13,20 Hz

Ces fréquences sont faibles pour un Arduino moderne. Même un Arduino Uno peut compter ce type d’impulsions sans difficulté. Le vrai enjeu est surtout la qualité du code : gestion des interruptions, anti-rebond, fenêtre de mesure adaptée et lissage de l’affichage.

Méthode par comptage sur une fenêtre de temps

La méthode utilisée dans ce calculateur consiste à compter le nombre d’impulsions pendant une durée donnée, par exemple 1 seconde, 2 secondes ou 5 secondes. Elle est simple et robuste. Plus la fenêtre est longue, plus la mesure est stable. En revanche, l’affichage est moins réactif. Une fenêtre courte est plus nerveuse, mais aussi plus bruitée.

  • Fenêtre de 0,5 à 1 s : affichage dynamique, utile pour un compteur de vitesse instantanée.
  • Fenêtre de 2 à 3 s : bon compromis entre fluidité et stabilité.
  • Fenêtre de 5 s ou plus : excellente lisibilité pour tests de calibration, moins adaptée à la conduite en temps réel.

Une autre méthode consiste à mesurer le temps entre deux impulsions successives. Elle donne de très bons résultats à basse vitesse, car on n’attend pas qu’une fenêtre entière se termine. Beaucoup de projets avancés combinent les deux approches : mesure par période à faible vitesse, puis mesure par fréquence à vitesse plus élevée.

Exemple de logique Arduino recommandée

Dans un système réel, le capteur est souvent relié à une entrée d’interruption. À chaque front détecté, une variable de comptage s’incrémente. Toutes les x millisecondes, le programme principal lit ce compteur, calcule la vitesse, met à jour l’afficheur puis remet le compteur à zéro. Cette architecture limite les pertes d’événements et améliore la fiabilité.

  1. Déclarer un compteur d’impulsions.
  2. Configurer une interruption sur front montant ou descendant.
  3. Incrémenter le compteur dans la routine d’interruption.
  4. À intervalle fixe, calculer les tours, la vitesse et éventuellement la distance totale.
  5. Appliquer un lissage logiciel si nécessaire.

Sources d’erreurs fréquentes

Quand une mesure semble fausse, la cause est rarement mystérieuse. Voici les problèmes les plus courants rencontrés sur les montages vélo Arduino :

  • diamètre mal estimé ou unité incorrecte ;
  • oubli du nombre d’aimants dans le calcul ;
  • double comptage dû au rebond d’un reed switch ;
  • aimant mal aligné avec le capteur ;
  • temps de mesure incohérent ou variable ;
  • bruit électrique sur le câblage ;
  • lecture trop rapide ou absence de filtrage logiciel.

Si la vitesse affichée est exactement deux fois trop grande ou deux fois trop faible, vérifiez d’abord le nombre d’aimants. Si elle est légèrement décalée sur toute la plage, le problème vient presque toujours de la circonférence saisie. Si elle saute brutalement, regardez du côté du capteur, du câblage ou de l’anti-rebond.

Applications pratiques

Le calcul de vitesse d’une roue avec Arduino ne sert pas uniquement à afficher des km/h. Il permet aussi de :

  • calculer la distance totale parcourue ;
  • déclencher des enregistrements GPS ou télémétriques ;
  • piloter un système d’assistance ou d’éclairage intelligent ;
  • analyser la cadence de roue sur home trainer ;
  • détecter des glissements ou patinages dans des projets expérimentaux.

Dans un projet plus avancé, vous pouvez croiser cette mesure avec un GPS, un accéléromètre ou un capteur IMU. Le GPS donne une vitesse absolue sur le terrain, tandis que la roue donne une mesure très réactive localement. Ensemble, ces données permettent de corriger les erreurs, détecter les pertes d’adhérence ou produire une analyse plus fine de la trajectoire et de l’effort.

Bonnes pratiques de calibration

Pour obtenir une mesure premium, adoptez une procédure de calibration simple mais rigoureuse :

  1. Mesurez la circonférence réelle sur sol plat.
  2. Vérifiez l’alignement aimant-capteur sur plusieurs tours.
  3. Testez à vitesse lente puis moyenne.
  4. Comparez la vitesse calculée à un GPS sur une portion régulière.
  5. Ajustez la circonférence jusqu’à réduire l’écart moyen.

Cette approche suffit généralement à atteindre une précision très satisfaisante pour un usage amateur avancé, éducatif ou semi-professionnel.

Références utiles

En résumé

Le calcul de la vitesse d’une roue de vélo avec Arduino est l’un des projets les plus accessibles et les plus utiles en électronique embarquée. La clé du succès tient en quatre points : un capteur fiable, une mesure correcte de la roue, un comptage propre des impulsions et une conversion mathématique rigoureuse. Avec ces bases, vous pouvez créer un compteur performant, évolutif et parfaitement adapté à votre vélo. Le calculateur ci-dessus vous permet de valider vos paramètres avant même d’écrire votre code, puis de vérifier rapidement la cohérence de votre montage sur le terrain.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top