Question

Mon ordinateur de vélo peut me montrer différentes figures telles que la distance parcourue, le temps écoulé, la vitesse maximale, la vitesse moyenne, la vitesse actuelle, etc. J'ai l'habitude de choisir d'afficher les vitesses actuelles et moyennes.

Vous pouvez réinitialiser la distance et le temps (deux à la fois) en un point quelconque; les vitesses max et moyennes sont calculées depuis la dernière remise à zéro. La distance est prise du capteur de roue (vous devez calibrer d'abord pour lui dire la circonférence de votre roue) et le temps est de sa propre horloge en temps réel.

Maintenant, assez souvent pendant que je suis à vélo le long, je vais aller bien au-dessus de la vitesse moyenne affichée mais la vitesse moyenne montré descendrai. A titre d'exemple concret, ce soir, je faisais du vélo à la maison et ma vitesse actuelle Tenait stable à 19,5 mph; ma moyenne montrait 12,6 mph et comme je l'ai regardé, il a cliqué vers le bas à 12,5.

Ce que je suis en train de travailler est ce genre d'algorithme de calcul de la moyenne bizarre qu'il utilise qui peut donner cet effet. Je ne peux pas croire qu'il fait tout genre de choses fantaisie autre que la distance totale / temps total. Je suppose que ce doit être une sorte de condition d'arrondi / limite, mais je ne peux pas travailler ce. Toutes les suggestions?

[Je lui ai demandé ce dans le bureau au travail, mais personne n'a eu des idées autres que je devrais arrêter de se soucier de ce genre de détails! Hé, je dois penser à quelque chose quand je suis à vélo, il est 9 miles par trajet ...]

Était-ce utile?

La solution

Il est pas une moyenne en cours d'exécution, il est censé être la moyenne pour tout le voyage, non? Au moins, c'est ce que je toujours le mien supposais faisait.

Je l'ai remarqué cet effet aussi. Ma théorie est que les deux l'horloge et le compteur de distance, il utilise pour la moyenne ont une résolution assez faible, donc parfois le compteur d'horloge tiques pendant que le compteur de distance reste stable, et vous obtenez la trempette. Par exemple:

dist time   spd
8.5 40.1   12.72
8.5 40.2   12.69

S'ils utilisent un processeur entier et point fixe, troncation faire apparaître la baisse encore plus

Autres conseils

Je vais deviner qu'il a une histoire d'un certain nombre de points de données et affiche la moyenne sur eux. Au fil du temps sur les points plus âgés sont poussés hors route.

Si vous allez plus vite au point arrière assez loin pour être la fin de l'histoire poussant un point fera baisser votre moyenne.

Il est vraiment une technique de motivation.

Il utilise probablement quelque chose de similaire à la estimation du temps restant algorithme .

Il de temps entre les rotations de la roue, mais il peut facilement passer à côté d'un passage de l'aimant sur le capteur à cause d'une bosse sur la route ou du bruit.
Donc, vous mesurez une vitesse la moitié de la valeur correcte pour qu'un point de données, il fait alors une moyenne mobile de sorte que mauvais point souille la vitesse pour les prochaines révolutions.

Le système a besoin de goûter à un certain taux (probablement constant).

Pour calculer une moyenne mobile ne stocke elle au plus N points de données.

Ainsi, afin de mettre à jour la moyenne, il doit abandonner l'un de ses points stockés pour obtenir un nouveau moyen, et si le point abandonné était plus rapide que votre vitesse actuelle, la déplacement moyenne chuterait

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top