CONSTRUCTION DE NOTRE PROPRE MOTEUR PHYSIQUE

MOTORSPORT ENGINE EST NOTRE PROPRE MOTEUR PHYSIQUE DÉDIÉ À L’INGÉNIERIE ET À LA SIMULATION AUTOMOBILE.

SON CŒUR PHYSIQUE FONCTIONNE À 2 000 HZ, AVEC DES DONNÉES EXPLOITABLES POUR LA TÉLÉMÉTRIE, L’ANALYSE ET L’ÉTUDE DU COMPORTEMENT DU VÉHICULE.

CET ARTICLE RETRACE LES PRINCIPALES ÉTAPES DE SON DÉVELOPPEMENT ET SERA ENRICHI AU FIL DES ÉVOLUTIONS DU PROJET.

ÉTAPE 1 — CONSTRUIRE LA SOURCE DES DONNÉES

CONSTRUIRE LA SOURCE DES DONNÉES

Pour disposer de données pertinentes, encore faut-il que celles-ci soient produites par un modèle physique cohérent. Le développement de notre moteur physique a donc commencé par les fondamentaux. Avant de simuler une automobile complète, la première étape a consisté à construire un corps rigide capable de se déplacer et de tourner dans l’espace sous l’action de forces et de moments. À partir de cette base ont été ajoutés la géométrie des quatre roues, leur vitesse locale et les grandeurs indispensables à la dynamique pneumatique : angle de dérive et glissement longitudinal.

CONSTRUIRE LE CHÂSSIS

Le développement commence volontairement par le plus simple : appliquer une force à une masse et vérifier que l’accélération, la vitesse et la position obtenues correspondent exactement aux valeurs théoriques. Le simple point matériel laisse ensuite place à un châssis rigide à six degrés de liberté. Le véhicule peut désormais se déplacer suivant trois axes, mais également prendre du roulis, du tangage et du lacet. Une force appliquée hors du centre de gravité peut ainsi produire simultanément une translation et une rotation.

MOTORSPORT ENGINE

Capture version V0.02

Premier châssis rigide et représentation des degrés de liberté

ÉTAPE 2 — DU PNEUMATIQUE AU VEHICLE CORE

DU PNEUMATIQUE AU VEHICLE CORE

Un premier modèle pneumatique basé sur la MAGIC FORMULA / PACEJKA est développé indépendamment, validé puis connecté au châssis. Les pneumatiques produisent désormais des efforts longitudinaux et latéraux qui agissent directement sur le mouvement du véhicule. Une boucle physique complète commence alors à fonctionner :

MOUVEMENT DU VÉHICULE → ÉTAT DES ROUES →

EFFORTS PNEUMATIQUES → NOUVEAU MOUVEMENT DU VÉHICULE

Le transfert de charge et la sensibilité du pneumatique à la charge verticale permettent également de faire apparaître progressivement la notion d’équilibre dynamique. Dès cette phase, des tests automatiques de validation et de non régression accompagnent le développement afin de vérifier chaque nouvelle brique avant de poursuivre.

MOTORSPORT ENGINE

Capture version V0.11

Premier banc de validation du Vehicle Core

ÉTAPE 3 — CONSTRUIRE LA CHAÎNE DE PROPULSION

CONSTRUIRE LA SOURCE DES DONNÉES

Une automobile ne peut cependant pas être simulée en appliquant simplement une force au châssis. Les roues reçoivent leur propre dynamique de rotation et le glissement longitudinal devient une conséquence du couple transmis et du déplacement réel du véhicule.

Le groupe motopropulseur est progressivement construit autour du moteur, de sa courbe de couple, de l’embrayage, de la boîte de vitesses et de la transmission.

Le différentiel évolue ensuite vers un système à glissement limité, tandis que le combined slip permet au pneumatique de partager son potentiel d’adhérence entre accélération, freinage et virage. La chaîne devient alors réellement mécanique :

MOTEUR → TRANSMISSION → ROUES →

PNEUMATIQUES → DÉPLACEMENT DU VÉHICULE

MOTORSPORT ENGINE

Capture version V0.13

Première chaîne moteur → transmission → roues → pneumatiques

ÉTAPE 4 — RENDRE LA VOITURE PILOTABLE

DU PNEUMATIQUE AU VEHICLE CORE

La simulation reçoit ensuite les systèmes nécessaires à une véritable utilisation dynamique :

  • suspension
  • direction
  • commandes pilote.

Le véhicule n’est plus seulement soumis à des scénarios de validation automatisés. Il devient possible de le piloter et d’observer en temps réel les conséquences des commandes sur le comportement du châssis et des quatre roues.

Un premier affichage 3D est également introduit. Il reste volontairement très technique, mais établit une liaison directe entre les calculs du Vehicle Core et le comportement visible de la voiture.

MOTORSPORT ENGINE

Capture version V0.25

Premier véhicule affiché en temps réel sur notre moteur physique

ÉTAPE 5 — FAIRE INTERAGIR LES SYSTÈMES

CRÉER UNE CHAINE PHYSIQUE

À partir de cette étape, le développement ne consiste plus seulement à ajouter des sous-systèmes indépendants. Ils commencent à agir les uns sur les autres. L’aérodynamique génère par exemple de la traînée et de l’appui. Cet appui modifie les charges verticales appliquées aux pneumatiques et comprime les suspensions. La modification de hauteur de caisse peut à son tour influencer le comportement aérodynamique. Freinage, électronique, pneumatiques, suspension, transmission et aérodynamique commencent progressivement à constituer un seul ensemble dynamique. La chaîne physique devient alors :

ROUTE → SUSPENSION →

GÉOMÉTRIE DES ROUES → PNEUMATIQUES →

TRANSMISSION → CHÂSSIS →AÉRODYNAMIQUE →

RETOUR VERS SUSPENSION ET PNEUMATIQUES

MOTORSPORT ENGINE

Capture version V0.31

Les principaux systèmes physiques commencent à fonctionner comme un ensemble couplé

ÉTAPE 6 — FAIRE ENTRER LA PISTE DANS LA PHYSIQUE

CRÉATION DU SOL

Le circuit doit lui aussi devenir une donnée physique et ne plus être seulement un décor. Les différentes surfaces peuvent progressivement posséder leurs propres caractéristiques de grip, de résistance au roulement et de rugosité. Notre moteur physique reçoit ensuite un véritable mesh 3D de piste. Chaque roue peut ainsi déterminer indépendamment sa position par rapport à la chaussée, son point de contact, la hauteur locale, la pente et la normale de la surface. Le comportement du véhicule peut désormais être influencé directement par la géométrie réelle du circuit.

MOTORSPORT ENGINE

Capture version V0.45

Premier véritable mesh 3D de piste avec contact indépendant des quatre roues

ÉTAPE 7 — CONSOLIDER LE VEHICLE CORE

LE VEHICLE CORE

Après l’intégration progressive du moteur, de la transmission, des pneumatiques, des suspensions, de la direction, des freins, de l’aérodynamique, de l’électronique et du circuit, notre moteur physique atteint un premier jalon important. Cette version ne cherche volontairement plus à introduire un nouveau système. Elle sert à figer et valider une première base cohérente du Vehicle Core. Le projet n’est alors plus constitué d’une succession de modèles indépendants : les principaux éléments nécessaires au fonctionnement d’une automobile simulée appartiennent désormais au même cœur physique.

MOTORSPORT ENGINE

Capture version V0.50

Premier jalon consolidé du Vehicle Core

ÉTAPE 8 — SÉPARER LE MOTEUR PHYSIQUE DE L’AFFICHAGE

DU PNEUMATIQUE AU VEHICLE CORE

Une fois le Vehicle Core suffisamment avancé, une nouvelle question apparaît : comment représenter efficacement tout ce que calcule le moteur sans transformer notre moteur physique en projet de développement graphique ? Une première phase permet de tester un véritable rendu GPU avec Direct3D 12. Elle valide surtout une idée fondamentale : le calcul physique et le rendu graphique peuvent fonctionner comme deux couches indépendantes. Le Vehicle Core reste responsable de la dynamique automobile et des données. La couche graphique ne fait que représenter son état.

MOTORSPORT ENGINE

Capture version V0.55

Première véritable scène 3D rendue par le pipeline Direct3D 12

ÉTAPE 9 — PASSER À GODOT SANS REMPLACER LE VEHICLE CORE

BIENVENUE DANS GODOT

Le développement complet d’un moteur graphique propriétaire aurait progressivement éloigné notre moteur physique de son objectif principal. Le choix est donc fait d’utiliser GODOT comme environnement 3D, tout en conservant le Vehicle Core comme moteur physique indépendant. Godot prend en charge la représentation du véhicule, du circuit, des matériaux, de l’éclairage, des caméras et progressivement des interfaces techniques. Notre moteur physique continue de son côté à calculer la dynamique du véhicule à haute fréquence et à fournir les états physiques nécessaires à la représentation et à la télémétrie. Cette séparation constitue une évolution majeure de l’architecture :

VEHICLE CORE → PHYSIQUE + DONNÉES

GODOT →

VISUALISATION + ENVIRONNEMENT + INTERFACE

Vidéo version V0.78

Intégration de notre moteur physique dans GODOT avec circuit procédural et télémétrie en temps réel

ÉTAPE 10 — CONNECTER LE PILOTE À LA PHYSIQUE

VOLANT, PÉDALES ET FORCE FEEDBACK

Jusqu’ici, le développement pouvait être piloté principalement à la manette ou au clavier. Une nouvelle étape consiste à intégrer les périphériques utilisés sur un véritable simulateur automobile.

Le moteur reçoit alors un système de configuration et de calibration pour volant, accélérateur, frein, palettes et frein à main. En mode volant, la direction devient directement liée au braquage demandé, sans correction artificielle liée à la vitesse.

Le Force Feedback est également calculé directement dans le Vehicle Core. Il exploite notamment les efforts pneumatiques, le moment d’auto-alignement, la chasse, le scrub radius et la géométrie de l’axe de pivot, auxquels viennent s’ajouter les effets de damping, de friction et d’inertie.

Cette évolution permet de rapprocher davantage ce que calcule le moteur physique de ce que ressent le pilote.

VEHICLE CORE → PHYSIQUE + DONNÉES

GODOT →

VISUALISATION + ENVIRONNEMENT + INTERFACE

MOTORSPORT ENGINE

Capture version V0.86

Première intégration complète des commandes volant/pédales et du Force Feedback

ÉTAPE 11 — CONSTRUIRE LE DATA ENGINEERING

DE LA TÉLÉMÉTRIE À LA GESTION DES SESSIONS

Produire de nombreuses données n’est réellement utile que si elles peuvent être organisées, retrouvées et comparées. Le moteur commence donc à structurer chaque session d’essai : pilote, setup et run sont identifiés, tandis qu’un instantané complet des fichiers de configuration utilisés est automatiquement conservé.

Des index globaux de sessions et de tours sont créés afin de constituer progressivement une véritable base de données d’essais. Le meilleur tour valide peut devenir automatiquement une référence, permettant de calculer en temps réel le delta avec le tour actuellement parcouru au même point du circuit.

À ce stade, la télémétrie n’est plus seulement affichée : elle commence à devenir un véritable pipeline de Data Engineering. On suit désormais 176 canaux, avec une télémétrie jusqu’à 1000 Hz et un Vehicle Core à 2000 Hz.

MOTORSPORT ENGINE

Capture version V0.87

Analyse du châssis, des suspensions et de la géométrie dynamique

ÉTAPE 12 — PASSER DE LA TÉLÉMÉTRIE À L’ANALYSE ET À LA VALIDATION

DE LA DONNÉE BRUTE À L’OUTIL D’INGÉNIERIE

Des outils spécialisés sont progressivement ajoutés pour analyser les pneumatiques, les suspensions et l’aérodynamique. Les données de température, pression, charge verticale, glissement, utilisation du pneumatique, débattement de suspension, vitesse d’amortisseur, hauteur de caisse, équilibre aérodynamique ou encore forces générées peuvent être visualisées pendant le roulage puis enregistrées automatiquement dans des fichiers dédiés.

Pendant les sessions, les données sont enregistrées en CSV afin de relire les données après le roulage.

Notre moteur physique évolue ainsi progressivement d’un moteur physique capable de générer de la télémétrie vers une plateforme permettant de mesurer, enregistrer, comparer et valider le comportement dynamique d’un véhicule simulé.

Vidéo version V0.99.52

Analyse et validation du Vehicle Core à partir des données de télémétrie

CONCLUSION

NOTRE MOTEUR PHYSIQUE A ÉVOLUÉ D’UN SIMPLE CALCUL APPLIQUÉ À UNE MASSE VERS UN VEHICLE CORE INTÉGRÉ EN 3D,

AVEC ACQUISITION ET ANALYSE DE DONNÉES POUR ÉTUDIER ET VALIDER LE COMPORTEMENT DU VÉHICULE.

POUR LA SUITE SERA D’AMÉLIORER L’ENVIRONNEMENT 3D, CRÉER DES CIRCUITS D’ESSAIS,

CALIBRER LA PHYSIQUE ET DÉVELOPPER LES OUTILS D’ANALYSE DE PERFORMANCE.

J3DMODDING : entreprise française spécialisée en modélisation 3D et ingénierie de la performance automobile. Modélisation de circuits automobiles • Modélisation de véhicules • Photogrammétrie et LiDAR • Télémétrie de course