UA-131889480-1
NEWS - GENNEWS – rFactor 2rF2 - Physics

Système de direction, répartition de la force et du couple

Et quelques petits détails

Ce sera le dernier billet du blog, avant que nous commencions enfin à couvrir les pneus. Cette fois, nous allons couvrir le dernier système de direction. Ajoutez à cela les distributions de force et de couple offertes par UltraChassis. Nous allons également formater la pression de freinage pour qu’elle corresponde à celle de nos autres voitures et ajouter quelques autres petits éléments.

steering system

Qu’est-ce que le nouveau système de direction change exactement ? C’est essentiellement une autre façon, plus puissante, de définir les propriétés de la direction.

 

Liberté de géométrie intérieure

Le système de direction offre une liberté totale dans l’utilisation des tringleries de direction intérieures lorsque vous appliquez le verrouillage. Cela ouvre la possibilité de rapports de braquage non linéaires pour les voitures qui en sont équipées. Le C6.R GT2 est un exemple de véhicule à direction non linéaire. Il permet également des géométries de direction plus rares, comme celles utilisées dans les karts à pédales, qui tournent autour d’un point et se déplacent sur 3 dimensions différentes. Les systèmes typiques à crémaillère ne se déplacent généralement que latéralement, de sorte que pour la majorité des voitures, cela ne va pas faire une différence énorme.
Tout cela se fait par le biais des entrées SteeringInnerTable, dont la syntaxe est la suivante :

SteeringInnerTable=(<FL_STEERING_X>,<FL_STEERING_Y>,<FL_STEERING_Z>):(<FR_STEERING_X>,<FR_STEERING_Y>,<FR_STEEERING_Z>)

Chaque entrée entre crochets « () » correspond aux coordonnées X, Y, Z (par rapport au sous-corps correspondant) des joints de direction intérieurs, : indique l’étape suivante de la chaîne, qui alterne des roues gauche à droite. Le nombre d’entrées que vous avez détermine le nombre de points de pilotage que vous avez. Vous avez besoin d’au moins 4 entrées entre crochets (4×3=12 nombres totaux). Les 2 premiers seront toujours au maximum à gauche de la serrure. Les 2 dernières entrées représenteront les emplacements intérieurs des[Contraintes], « FL_STEERING » & « FR_STEERING » au maximum à droite du verrou de direction @ LocalOffsetA. Pour les régler correctement, vous devez connaître ou au moins estimer le déplacement maximal de la crémaillère de direction. L’emplacement central des contraintes peut être obtenu à partir du fichier ultrachassis.ini, si vous utilisez le tableur, celles-ci se font automatiquement si vous fournissez les informations de base.
La position de l’arbre de direction, par rapport à la crémaillère de direction, est maintenant divisée en 2 parties et réglable. La gauche forme évidemment la base de la roue gauche et la droite de la roue droite. La plupart des voitures n’ont qu’un seul arbre de direction, donc elles devraient généralement avoir les mêmes valeurs :

SteeringShaftBaseLeft=(<LeftShaft_X>,<LeftShaft_Y>,<LeftShaft_Z>) // Location of steering shaft relative to steering arm
SteeringShaftBaseRight=(<RightShaft_X>,<RightShaft_Y>,<RightShaft_Z>)

Il y a également une variable d’axe d’arbre de direction, qui est essentiellement l’inclinaison de l’arbre de direction dans la crémaillère de direction.

SteeringShaftAxis=(<AxisX>,<AxisY>,<AxisZ>)

Vous pouvez manipuler la direction à l’aide de commandes spéciales dans le HDV.

La direction personnalisée peut également être utilisée dans des instructions spéciales, au cas où vous auriez besoin de changer également la géométrie intérieure. La syntaxe est presque la même que lorsque vous la mettez dans la section HDV[CONTROLS], sauf que vous ne réutilisez PAS SteeringInnerTable pour ajouter des entrées supplémentaires. Au lieu de cela, vous pouvez concaténer avec la combinaison backslash-plus (i.e. \+). En d’autres termes, les changements de HDV ci-dessus mis dans une instruction spéciale pourraient ressembler à cela:

SteerLockSpecial(0,,,"SteeringShaftBaseLeft=(0.0,-0.07571448,-0.616415")
SteerLockSpecial(0,,,"SteeringShaftBaseRight=(0.0,-0.07571448,-0.616415)")
SteerLockSpecial(0,,,"SteeringShaftAxis=(0.0,0.0,1.0)")
SteerLockSpecial(0,,,"SteeringInnerTable=(0.464472,-0.065,-0.616415045):(-0.301488,-0.065,-0.616415)")
SteerLockSpecial(0,,,\+"(0.38298,
-0.065,-0.616415):(-0.38298, -0.065,-0.616415045)")
SteerLockSpecial(0,,,\+"(0.3014879,-0.065,-0.616415045):(-0.464472,-0.065,-0.616415)")

 

Des forces légèrement plus précises au volant

L’ancien système de direction était légèrement simplifié. Le nouveau système ne va pas révolutionner votre véhicule, mais les forces qui s’exercent sur la roue sont plus précises. La différence n’est probablement que de 1 à 2 % pour la plupart des voitures. En fin de compte, les forces de direction sont le résultat direct de la géométrie de la suspension, des propriétés des pneus et des forces qui agissent sur eux. Ils sont un lien direct avec la physique.

Le résultat final est que les anciennes variables de direction :

NominalMaxSteeringTorque=7.3
TurnsLocktoLock=1.8
SteerLockRange=( 10 , 1 , 14 )
SteerLockSetting=13

Sont remplacés par :

NominalMaxSteeringTorque=7.3
TurnsLockToLock=1.8
SteeringShaftBaseLeft=(0,0.265912,-0.378279)
SteeringShaftBaseRight=(0,0.265912,-0.378279)
SteeringShaftAxis=(0.17365,0,0.98481)
SteeringInnerTable=(0.32605,0.26,-0.377236):(-0.39395,0.26,-0.377236)
SteeringInnerTable=(0.39395,0.26,-0.377236):(-0.32605,0.26,-0.377236)
SteerLockCaption="WHEEL RANGE (LOCK)"
SteerLockRange=(22.192,0,9)
SteerLockSpecial=(0,"240 ","(8.2) deg","TurnsLockToLock=0.666667;SteeringFraction=0.37037")
SteerLockSpecial=(1,"270 ","(9.2) deg","TurnsLockToLock=0.75;SteeringFraction=0.416667")
SteerLockSpecial=(2,"310 ","(11) deg","TurnsLockToLock=0.861111;SteeringFraction=0.478395")
SteerLockSpecial=(3,"360 ","(12) deg","TurnsLockToLock=1;SteeringFraction=0.555556")
SteerLockSpecial=(4,"380 ","(13) deg","TurnsLockToLock=1.055556;SteeringFraction=0.58642")
SteerLockSpecial=(5,"450 ","(15) deg","TurnsLockToLock=1.25;SteeringFraction=0.694444")
SteerLockSpecial=(6,"540 ","(18) deg","TurnsLockToLock=1.5;SteeringFraction=0.833333")
SteerLockSpecial=(7,"630 ","(22) deg","TurnsLockToLock=1.75;SteeringFraction=0.972222")
SteerLockSpecial=(8,"648 ","(22) deg","TurnsLockToLock=1.8;SteeringFraction=1")
SteerLockSetting=8

 

Répartition de la force et du couple

Pour cette prochaine partie, vous voudrez probablement des plans. Comme c’est le cas pour le BT44B :

Fig.2, Scribbled on BT44’blueprints’ Original Source : DrawingDatabase.com

Pour déterminer les mesures, il suffit de compter les pixels d’une mesure connue. J’ai utilisé l’empattement, dans ce cas-ci. Dans ce diagramme, j’ai superposé différents points d’intérêt, en utilisant les paramètres de la voiture. La première chose que vous remarquerez, c’est que le centre aérodynamique de l’aile avant ne fait partie d’aucune dimension physique de la voiture. Ce n’était pas une erreur de l’auteur original (souvenez-vous de mon premier blog, je n’ai pas créé le véhicule original). Il s’agit plutôt d’une astuce mathématique qui permet d’obtenir un centre de pression aérodynamique plus précis, ou équilibre de l’appui vers le bas, en raison des changements de pas. Le reste ne devrait pas avoir l’air trop étrange. L’aérodynamique est au-delà du blog d’aujourd’hui, mais j’y reviendrai, à un moment donné dans le futur.
Le premier « ForceDistrib » est celui du réservoir de carburant. Vous vous souvenez peut-être que celle de la BT44 est assez complexe, « divisée » en 3 parties entourant le conducteur. J’ai fait de mon mieux pour vous donner un aperçu de la situation actuelle :

Fig.3, Approximation de la disposition du réservoir de carburant.

À l’aide d’un programme de peinture, l’outil de sélection de baguette magique affiche la  » zone de pixels « . Les réservoirs latéraux donnent environ 96 977 pixels carrés, tandis que le réservoir central est de 45 249 pixels carrés.
Multiplié par la hauteur verticale de 160 pixels, cela nous donne 96977*160+45249*160=22756160 pixels cubes. La conversion de l’image est d’environ 1,9975 millimètres par pixel. L’œil de l’aigle parmi vous a peut-être remarqué que je n’avais inclus qu’un seul  » réservoir latéral  » dans l’équation. Pourquoi ? Comme ces réservoirs sont en fait de forme triangulaire (vus de l’avant et de l’arrière), ils occupent la moitié du volume d’un cuboïde, donc si vous utilisez toute la hauteur, vous n’avez qu’à en inclure un dans votre calcul. Bien sûr Litres comme une unité, est défini comme décimètres cubes, comme dans un cube de 10cm de longueur.

Le dessin donne donc un volume d’environ :

(96977*160+45249*160)*(1.9975/100)^3 = 181.37 Litres, assez proche de la réalité’ revendique 186L. Le nombre’100′ n’est en réalité qu’une conversion des millimètres en décimètres. D’après ces mesures, le réservoir mesure également environ 1,4 m de long. Cependant, lorsque vous essayez de prendre une moyenne pondérée, en raison de la forme inhabituelle, vous pouvez supposer quelque chose comme 1,1m. Ceci est fait pour réduire les couples de torsion sur les différentes sous-coques. Parce que nous les divisons en 2 sous-corps, vous devez utiliser la moitié de leur longueur comme base (lorsque vous divisez un objet uniforme en 2, leurs CG sont espacés à la moitié de la longueur de l’objet original). Nous divisons effectivement le carburant en 2 parties, le CG de chacune est alors décalé du CG d’origine. Parce que le réservoir de carburant est surtout devant le CG, je vais aller avec environ 55% sur la sous-carrosserie avant. 1,1*0,5*(1-0,55) nous donne un décalage avant de 24,75cm. Pour l’arrière, avec un split de 45%, il serait de 1,1*0,5*(1-0,45), 30,25cm aft

FuelTankForceDistrib=(0.55:front_subbody:(0.0,0.0,-0.2475), 0.45:rear_subbody:(0.0,0.0,0.3025))

Parce que l’aile avant est clairement en avant des roues avant. Il n’est pas nécessaire de procéder à des compensations ou à des subdivisions complexes. 100% de la force doit passer par le sous-corps avant :

[FRONTWING]
FWForceDistrib=(1.0:front_subbody)

Pareil pour l’arrière :

[REARWING]
RWForceDistrib=(1.0:rear_subbody)

Les ‘fenders’ (ailerons) sont utilisés comme points aérodynamique supplémentaires. L’aile ‘Gauche’ placée entre les roues avant. Donc on va tout donner au sous-corps avant.

[LEFTFENDER]
FenderForceDistrib=(1.0:Front_subbody)

Sous « [RIGHTFENDER] », on voit qu’il est placé loin derrière l’essieu avant, approximativement à l’arrière. Le paramètre qui le montre est FenderCenter=(0,0,2.3876).

[RIGHTFENDER]
FenderForceDistrib=(1.0:Rear_subbody)

On va mettre 55 % de l’aérodynamique sur le corps avant.

BodyAeroForceDistrib=(0.55:front_subbody:(0,0,-0.45),0.45:rear_subbody:(0,0,0.55))

 

[DIFFUSEUR]

Techniquement, cette voiture n’avait pas de diffuseur et les effets de sol n’étaient pas une nécessité aérodynamique exploitée en course. Cependant, ce n’est pas parce qu’ils n’ont pas compris son potentiel qu’il n’existait pas. La voiture avait un fond plat, et elle a roulé avec un râteau. Inévitablement, il allait produire *un certain* effet de sol. La voiture était également considérée comme un précurseur de l’effet de sol complet. Nous ne parlons pas ici de chiffres énormes, évidemment, mais nous devrions réfléchir à l’endroit où placer les décalages de sous-corps. Dans le diagramme précédent, j’avais également adopté une approche de type « best guess » pour le diffuseur. En gardant à l’esprit qu’une certaine sensibilité en hauteur avait déjà été attribuée à l’aile avant. Pour simplifier, nous allons supposer que la distribution de pression du diffuseur est uniforme. La longueur que j’ai utilisée est de 1,928 m, divisée par deux, ce qui nous donne un écart de 0,964 m entre les sous-coques. Si je distribue 60% de la force vers l’avant, cela nécessite un décalage vers l’avant de 0,964*(1-0,6)=0,3856m.

DiffuserForceDistrib=(0.6:front_subbody:(0,0,-0.3856),0.4:rear_subbody:(0,0,0.5784))

[DRIVELINE]

Le moteur, l’embrayage, la boîte de vitesses et les couples différentiels peuvent maintenant également être répartis entre les corps. Comme il s’agit d’un moteur central et d’un composant structurel, il aura une influence directe sur l’arrière de la voiture, et ce, de façon écrasante. Il est difficile de savoir quoi utiliser sans faire d’analyse structurelle, mais l’utiliser à sa position dans l’empattement est probablement un bon point de départ. Les chiffres que j’ai trouvés sont les suivants :

EngineTorqueDistrib=(0.182:front_subbody,0.818:rear_subbody)
ClutchTorqueDistrib=(0.07:front_subbody,0.93:rear_subbody)
GearboxTorqueDistrib=(1.0:rear_subbody)
DifferentialTorqueDistrib=(1.0:rear_subbody)

 

Quelques derniers petits bits HDV

Raccordements par poussoir

Encore une fois, l’amélioration ici vise la flexibilité et la précision. En réalité, la géométrie est celle d’une disposition de la tige de traction à l’avant. Et nous ne pouvons pas tout simuler. En plaçant les poussoirs le plus droit possible, autour de l’axe du pivot d’attelage, nous assurons un changement minimal dans les rapports de mouvement ou les vitesses de rotation des roues.

[FRONTLEFT]

Ancien :

PushrodSpindle=(0.006497906,-0.375634207131652,-0.0322502269795518)
PushrodBody=(0.006497906,0.42436579286835,-0.0322502269795518)

Nouveau :

PushrodOutboard=(1:FL_SPINDLE:(0.111927,-0.11675,-0.01))
PushrodInboard=(1:Front_Subbody:(0.665,0.47,-0.4872))

1 : se réfère à la force distribuée à ce sous-corps. FL_SPINDLE est le sous-corps auquel cette force est appliquée. (0.111927,-0.11675,-0.01) est le décalage de position par rapport au centre de ce sous-corps. En d’autres termes, la syntaxe est :

<ForceDistribution>:<Body>:(<OffsetX>,<OffsetY>,<OffsetZ>)

 

[RARLEFT]

Nous remplaçons l’ancien format pushroad de :

PushrodSpindle=(-0.01,-0.2,0)
PushrodBody=(-0.01,0.3,0)

Avec le nouveau :

PushrodOutboard=(1:RL_SPINDLE:(-0.002793,-0.158054,-0.1))
PushrodInboard=(1:Rear_Subbody:(0.55,0.485,0.2104))

Encore une fois, les nouveaux paramètres vous permettent de spécifier à quel corps rigide les’tiges de poussée’ s’attachent. Alors qu’auparavant il forçait une extrémité à la broche et l’autre au corps.

[CONTROLES]

Par souci de cohérence avec les autres véhicules, la rubrique « BRAKE PRESSURE » sera remplacée par « MAX PEDAL FORCE« . Essentiellement, il est affiché de cette manière pour donner à l’utilisateur une idée de la force nécessaire à la pédale de frein pour ce véhicule particulier. Ceci est utile si vous avez un capteur à jauges de contrainte réglable. Les nouvelles valeurs sont équivalentes à l’ancien comportement de cette voiture.

Nouveau :

BrakePressureCaption="MAX PEDAL FORCE"
BrakePressureRange=(0.555556,0.011111,41)
BrakePressureSpecial=(0,50," kgf (56%)",)
BrakePressureSpecial=(1,51," kgf (57%)",)
BrakePressureSpecial=(2,52," kgf (58%)",)
BrakePressureSpecial=(3,53," kgf (59%)",)
BrakePressureSpecial=(4,54," kgf (60%)",)
BrakePressureSpecial=(5,55," kgf (61%)",)
BrakePressureSpecial=(6,56," kgf (62%)",)
BrakePressureSpecial=(7,57," kgf (63%)",)
BrakePressureSpecial=(8,58," kgf (64%)",)
BrakePressureSpecial=(9,59," kgf (66%)",)
BrakePressureSpecial=(10,60," kgf (67%)",)
BrakePressureSpecial=(11,61," kgf (68%)",)
BrakePressureSpecial=(12,62," kgf (69%)",)
BrakePressureSpecial=(13,63," kgf (70%)",)
BrakePressureSpecial=(14,64," kgf (71%)",)
BrakePressureSpecial=(15,65," kgf (72%)",)
BrakePressureSpecial=(16,66," kgf (73%)",)
BrakePressureSpecial=(17,67," kgf (74%)",)
BrakePressureSpecial=(18,68," kgf (76%)",)
BrakePressureSpecial=(19,69," kgf (77%)",)
BrakePressureSpecial=(20,70," kgf (78%)",)
BrakePressureSpecial=(21,71," kgf (79%)",)
BrakePressureSpecial=(22,72," kgf (80%)",)
BrakePressureSpecial=(23,73," kgf (81%)",)
BrakePressureSpecial=(24,74," kgf (82%)",)
BrakePressureSpecial=(25,75," kgf (83%)",)
BrakePressureSpecial=(26,76," kgf (84%)",)
BrakePressureSpecial=(27,77," kgf (86%)",)
BrakePressureSpecial=(28,78," kgf (87%)",)
BrakePressureSpecial=(29,79," kgf (88%)",)
BrakePressureSpecial=(30,80," kgf (89%)",)
BrakePressureSpecial=(31,81," kgf (90%)",)
BrakePressureSpecial=(32,82," kgf (91%)",)
BrakePressureSpecial=(33,83," kgf (92%)",)
BrakePressureSpecial=(34,84," kgf (93%)",)
BrakePressureSpecial=(35,85," kgf (94%)",)
BrakePressureSpecial=(36,86," kgf (96%)",)
BrakePressureSpecial=(37,87," kgf (97%)",)
BrakePressureSpecial=(38,88," kgf (98%)",)
BrakePressureSpecial=(39,89," kgf (99%)",)
BrakePressureSpecial=(40,90," kgf (100%)",)
BrakePressureSetting=31
Via
RFACTOR 2 SUR STEAM ICI
Source
L´ARTICLE ORIGINAL EN ANGLAIS ICI
Bouton retour en haut de la page
EnglishFrenchGermanSpanish
Fermer