P.03Prototype interne
Pitlabs
Chaîne de télémétrie sim-racing et piste : captation des canaux du simulateur, découpage en tours, analyse de freinage, comparaison de trajectoires.
- Période
- Décembre 2025
- Rôle
- Captation, format de stockage, moteur d'analyse, interface.
- Stack
- Python
- pandas
- Tkinter
- matplotlib
- mémoire partagée
- CSV
Repères
44 728
échantillons captés en une session
session du 11 décembre 2025, Red Bull Ring, Lotus Exos 125
≈ 39 Hz
fréquence de relevé
3 203 points relevés sur un tour de 1:22.130
14
tours exploitables
découpage par position normalisée sur la même session
Le problème
Un pilote qui perd trois dixièmes ne sait pas où il les perd. Le simulateur expose l'intégralité de l'état physique de la voiture à chaque image, mais sous forme d'un flux brut sans notion de tour, de secteur ni de comparaison. Toute l'utilité est dans ce qu'on fait après la captation.
Ce qui a été construit
- 01
Un récepteur qui lit la mémoire partagée du simulateur et écrit trois flux distincts : physique, affichage et données de session.
- 02
Un découpage en tours à partir de la position normalisée sur le circuit, ce qui donne un axe en distance et non en temps — deux tours de durées différentes deviennent comparables point à point.
- 03
Une interface d'analyse : carte du circuit, superposition de tours, analyse de freinage, passage en courbe, gestion du carburant, forces g.
- 04
Un export de session pour rejouer une analyse hors ligne.
Architecture
Décisions techniques
Trois fichiers plutôt qu'un
Les canaux physiques changent à chaque image, les données de session ne changent jamais, l'état d'affichage change à un rythme intermédiaire. Les écrire ensemble reviendrait à répéter le nom du circuit quarante-quatre mille fois. Séparés et joints sur l'horodatage, ils restent lisibles à l'œil nu et diffables.
La distance comme axe de référence, pas le temps
Superposer deux tours sur un axe temporel ne dit rien : le tour lent est simplement plus long. En rééchantillonnant sur la position normalisée du circuit, un point du tracé correspond au même endroit de la piste dans les deux tours. C'est la seule façon de voir qu'on freine quinze mètres trop tôt.
Du CSV, délibérément
Un format binaire aurait été plus compact. Le CSV se lit dans un tableur, se coupe avec head, se recharge dans pandas dix ans plus tard sans le logiciel qui l'a produit. Pour de la donnée d'analyse qu'on relit rarement mais longtemps, la longévité prime sur la taille.
Ce que ça démontre
Captation haute fréquence, choix de format de données durable, traitement de séries temporelles, restitution graphique d'un signal.