3 La motorisation dans FB - De l`Histoire à la Simulation

Transcription

3 La motorisation dans FB - De l`Histoire à la Simulation
1
Remarque préliminaire
Ce document concerne la mise en œuvre d’outils permettant d'étudier, d’éditer et de modifier
les MDV des appareils utilisés dans IL2/FB. Ce n’est pas un mod en lui même, mais la
démarche qui a été choisie pour créer des mod se rapportant aux MDV.
Ces développements sont réalisés dans le cadre du site De l'Histoire à la Simulation et sont
mis en place pour servir aux campagnes AOC.
2
Récupération et modifications des données du soft
2.1 Liste des fichiers fournis dans le package
✔
Flight Model 1 et 2: c'est de la documentation. Il s'agit uniquement des MDV de
IL2/FB, tels qu'on pouvait les récupérer dans une version antérieure (avant qu'ils ne
soient cryptés...). Ces fichiers s'ouvrent avec un éditeur de texte.
✔
✔
1 concerne les données relatives à l'avion (extension fmd),
2 concerne les données relatives au moteur (extension emd).
Si vous êtes curieux, en prenant par exemple le fichiers le fichier
Bf-109G-6Early.fmd, vous allez trouver les lignes suivantes:
[Engine]
Engine0Family DB-600_Series
Engine0SubModel DB605D
La première ligne signifie que vous allez faire appel au moteur de la famille DB-600.
Vous allez alors retrouver dans Flight Model 2, un fichier qui se nomme
DB-600_Series.emd. Si vous l'ouvrez, vous aller trouver une partie [generic] qui est
relative à tous les moteurs de cette famille et quelques lignes plus bas la une partie
[DB605D] qui traite du sous modèle de cette famille. Lorsque le fichier *.fmd se
charge, lorsque il arrive sur ces lignes, il charge à partir du fichier *.emd alors les
parties considérées. Bien que dans la version actuelle, il ne soit plus possible d'accéder
directement à ces fichiers, le fonctionnement est le même et, d'après ce que j'ai pu en
vérifier, les données sont les mêmes. Ces fichiers peuvent vous aider, c'est la raison
pour laquelle ils sont inclus.
✔
Sources Java: contient tous les fichiers sources de IL2/FB. Ces fichiers ont été
extraits de IL2/FB à l'aide de différents outils. C'est en modifiant certains d'entres eux
qu'il est possible de créer des mods. C'est encore de la documentation.
✔
Tableur:
✔ new_mdv.ods: c'est un fichier correspondant au tableur d'Open Office
(gratuit). Il vous permettra de faire varier les paramètres en d'en voir leurs
conséquences (c'est expliqué plus bas).
✔ new_mdv.xls: c'est le même fichier que celui du dessus, mais je l'ai exporté au
format Excel (payant). Toute la partie calcul doit fonctionner, la partie
graphique peut avoir quelques problèmes de compatibilité mais elle n'est pas
essentielle.
✔
Les 8 fichiers qui vont permettre de faire faire papa/maman à IL2/FB (enfin presque).
L'installation est expliquée plus loin. Ces fichiers correspondent aux classes java qu'il
a été nécessaire de modifier.
✔
Exemple: c'est encore de la documentation, en fait des fichiers d'exemple. Deux points
sont à noter:
✔ le fichier Bf-109G-6Early.txt est l'équivallent des deux fichiers fmd et emd
cités plus haut. Il en regroupe les éléments plus d'autres informations. Vous
obtiendrez ce fichier lorsque vous passerez la première fois dans IL2/FB en
suivant la méthode décrite plus loin.
✔ Le fichier
Bf-109G-6Early_mod.txt est le fichier qui vous permettra de
modifier des valeurs de paramètres par la méthode exposée plus loin.
2.2 Pré requis
Il faut partir d’une installation propre, en version 4.08 ou 4.09 de IL2/FB avec le mod
son. En outre, il est nécessaire d’avoir un tableur Excel ou Open Office (ce dernier est
gratuit et vous pouvez récupérer la suite sur le net).
L’application a été développée sous Open Office, mais les deux fichiers Excel et Open
Office sont fournis. Ils sont compatibles, mais je ne garanti pas que les graphiques
sous Excel ne présentent pas quelques problèmes de mise en page. En fait, comme
tous les résultats sont également sous forme de tableau, si vous utilisez XLS, vous
pourrez passer outre ces petits désagréments…
2.3 Installation
C’est très simple et cela se fait en deux opérations.
La première consiste à copier coller les 8 fichiers du dessus dans le même répertoire
que ceux que vous avez pour le mod son.
Si le programme vous demande d’écraser un fichier qui existe déjà, c’est que votre
config n’est pas aussi propre que ce que vous pensez. Le fait d’écraser les fichiers
vous fera perdre d’autres mods qui sont déjà en place. Donc, méfiance avant de faire
une opération irréversible...
La deuxième manip consiste à créer à la racine de IL2/FB un répertoire qu’il faudra
appeler FM_mod.
Voilà, c’est terminé pour l’installation.
2.4 Comment ça marche
C’est très simple, la solution la plus rapide est d’utiliser l’éditeur de mission rapide.
Dans un premier temps, il faut récupérer le MDV de l’avion considéré. J’ai utilisé pour
la suite de cet exemple le 109G6.
Donc, vous prenez l’éditeur de mission de rapide, vous choisissez l’avion et vous
lancez le jeu. Dès que vous vous retrouvez dans le cockpit et vol, vous sortez. En fait,
les paramètres sont chargés au moment où vous voyez apparaitre sur l’écran «loading
aircraft». Donc, pas la peine de configurer le joystick, le track IR, la nationalité de
l’avion, les skins, etc… C’est très rapide.
Nota: si vous voulez récupérer plusieurs autres MDV, il suffit de rajouter, dans les
slots IA les autres avions qui vous intéressent. Attention, un seul avion différent par
slot.
Ne vous étonnez pas si le chargement des avions est plus lent que d’habitude, il faut
bien que le programme calcule pleins de machins…
Une fois ressorti de IL2/FB, vous allez dans le répertoire FM_mod et là, surprise, un
fichier texte à été crée. Si vous avez pris le 109G6, le fichier Bf-109G-6Early.txt va
être généré.
En ouvrant ce fichier, vous allez avoir tous les paramètres de vol pris en compte par le
soft. En gros, cela vous donnera (début du fichier):
Il apparait dans ce fichier tous les renseignements concernant le MDV. Les noms entre
crochets correspondent à des chapitres, c’est juste une information. Ensuite, pour
chaque paramètre, 3 éléments sont indiqués :
•
•
•
une référence: 100, 105, 110, …
le nom du paramètre: Wingspan, Length, Type, …
la valeur du paramètre: 9.918, 8.851, …..
Si vous continuez à jeter un coup d’œil sur le fichiers, d’autres éléments sont indiqués,
sous forme de tableau, comme les coefficients aérodynamiques utilisés (polaire), les
performances en virage, ainsi que les vitesses maxi en palier horizontal.
Les paramètres moteurs sont également indiqués sous forme de deux séries de
données : les données génériques de la famille du moteur utilisé ainsi que les données
spécifiques au moteur utilisé. Dans le cas de multimoteurs, ces deux séries de données
sont répétées autant de fois qu’il y a de moteurs.
2.5 Mise en place d’un mod
A ce stade, vous n’avez fait que récupérer les paramètres nominaux. Il faut maintenant
trouver l’astuce pour les changer. C’est très simple. Pour cela il suffit de créer dans le
répertoire FM_mod, un fichier texte portant le même nom que le fichier que vous avez
récupéré suivi par _mod. Dans notre cas, le fichier s’appellera:
Bf-109G-6Early_mod.txt.
Il est de la forme:
Le 03 correspond à un suffixe du nouveau fichier texte avec les nouveau paramètres
que vous allez créer. Cela permet de les différencier les uns des autres….
«test» est une ligne de commentaires que vous pouvez rajouter. Cela permet, quelques
mois après, de ne pas se demander ce que l’on a fait et donc de garder une trace…
Écrivez quelque chose, car je ne suis pas sur que si vous mettez rien, le programme ne
plantera pas (pas eu le temps de tout vérifier…
«3» correspond à une des options possibles que je détaillerais plus bas.
En dessous, laisser une ligne blanche (important, sinon, là encore le programme risque
de planter…
Enfin, les valeurs modifiées doivent être entourées par les balises [deb] et [fin]. Pour
modifier une valeur, il suffit de mettre son numéro de référence et la nouvelle valeur…
Là, dans l’exemple, j’en ai modifié (au pif) 6. Un point important, le signe décimal est
le point, si vous mettez une virgule, ça plantera. Je n’y peux rien, c’est la convention
du java pour les nombre décimaux….
Vous relancez l’éditeur rapide (vous pouvez aussi bien vous créer une mission avec
l’éditeur, ça marche aussi) , vous choisissez le même avion et vous pouvez voler avec
les paramètres modifiés…. C’est tout.
Si vous ressortez de IL2/FB et que vous alliez jeter un coup d’œil dans le répertoire
FM_mod, un nouveau fichier à été crée: Bf-109G-6Early_03.txt. Si vous l’ouvrez (là
encore que les premières lignes), vous obtenez:
Voilà, c’est fait: vous avez créer votre premier mod….
Deux points à noter pour les modifications d’un paramètres. Vous pouvez indiquer
plusieurs fois le même paramètres avec des valeurs différentes. Néanmoins, j’ai écrit
le programme de telle façon que ce n’est que la valeur de la première occurrence qui
sera prise en compte. En outre, vous n’êtes pas obligé de mettre les référence des
paramètres dans l’ordre chronologique.
Si vous procédez de la façon indiquée ci dessus, il y a de fortes chances que l’avion ait
un comportement bizarre. En effet, beaucoup de paramètres liés aux polaire ou à
l’aérodynamique du bousin sont liés. En changer un sans changer les autres entrainera
5 fois sur 10 des incohérences, d’où des options possibles (et nécessaires)…
Option 0: cette option ne modifiera pas les caractéristiques aérodynamiques de
l’avion même si vous avez modifié des paramètres qui ont une influence dessus. Vous
pouvez changer par exemple la surface des ailes, mais (par exemple) la portance, ou la
trainée ne changeront pas. En gros, cela veut dire que le recalcul n'est pas fait.
Option 1: cette option recalculera les caractéristiques aérodynamiques, mais elle ne
seront pas appliquées dans le programme. Il faut savoir que IL2/FB possède des
fonctions permettant de recalculer ces caractéristiques. Elles ne sont pas utilisées
nominalement dans le programme car elles ont du permettre à Oleg de définir les
caractéristiques de chaque avion lorsqu'il était dans la phase débugging. En fait, la
méthode d’optimisation est assez bizarre, elle existe, je n’ai fais que la réutiliser…
Option 2: les caractéristiques sont recalculées et elles sont prises en comptes à 100%
dans le mod pour l’avion considéré avec la méthode d'optimisation olégienne.
Option 3: les caractéristiques sont recalculées, mais elles ne sont pas prioritaires par
rapport à celles que vous avez vous même définies. Les paramètres concernés vont de
1480 à 1555. Si vous avez entré, par exemple le paramètre 1490 à 3.14, ce sera lui qui
sera pris en compte et non pas celui recalculé le programme. Cela permet en fait
d’atténuer certains effets dévastateur de l’optimisation olégienne…
Option 4: c’est l’option qui correspond au tuning manuel des paramètres du vol
(de1480 à 1555). En fait, dans cette option, le fichier que vous allez récupérer contient
pleins d’éléments qui vont vous permettre de définir vos propres paramètres à l’aide
d'un tableur. Lorsque vous allez ouvrir le fichier, vous allez voir apparaitre 4 zones (A,
B, C et D) avec pleins de chiffres. Ces zones sont à copier/coller dans le tableur dans
l’onglet correspondant.
Pour copier un fichier texte (txt) dans le tableur, ce dernier va demander quel est le
caractère séparateur à utiliser pour que les chiffres arrivent dans les bonnes cellules.
Dans notre cas, il faudra utiliser la parenthèse ouvrante «(«.
Un autre point à noter est lié au signe décimal. Java utilise le point décimal «.» alors
que le tableur utilise la virgule «,». J’ai programmé le tableur pour que ce changement
se fasse automatiquement. Donc, en principe, vous n’aurez pas à vous en soucier, mais
je préfère le dire.
Enfin, pour terminer, le tableur comporte de nombreuses cellules avec des formules.
Pour éviter toutes fausses manip, j’ai protégé le tableur par un mot de passe et laissé
libre uniquement les cellules dans lesquelles vous aurez à rentrer des valeurs. S’il
s’agit de valeurs décimales, utilisez la virgule plutôt que le point… Toutefois, si vous
voulez déprotéger les cellules (à vos risques et périls), le mot de passe à utiliser est
«lutz».
2.6 Fonctionnement du tableur
Le tableur a été programmé pour reprendre à l’identique toutes les formules et
fonctions utilisées dans IL2/FB. En fait, il se comporte comme un «émulateur» de
IL2/FB et permet de mettre au point les modèles de vols, en respectant la cohérence
des paramètres. Une fois les nouveaux paramètres déterminés, il suffit des les
introduire dans IL2/FB par la méthode exposée au dessus.
Le fait d'utiliser un tableur, plutôt qu'un programme en java ou en VB impose quelques
limitations:
●
●
la vitesse varie par step de 5 km/h ce qui veut dire que les vitesses calculées
sont précises à +/- 2,5 km/h
les altitudes varient par step de 500 mètres ce qui donne une précision de +/-
250 m. Toutefois, le plafond est calculé à partir d'une interpolation si bien que
la précision de sa détermination est plutôt de l'ordre de +/- 125 m.
Avant d’utiliser le tableur et pour s’y retrouver, quelques infos sur la façon dont les
différents paramètres sont définis dans IL2/FB.
Les coefficients aérodynamiques Cx (trainée) et Cy (portance) sont définis d'une façon
bizarre pour des incidences allant de -180° à 180° !!!! C'est la première fois que je vois
ça. Pas bien grave, car la seule partie intéressante est celle qui se passe avant le
décrochage. Comme il arrive également à un avion de chasse de voler sur le dos, il
faut considérer le décrochage également en vol inversé...
Si vous regardez les coefficients des MDV, paragraphe [paramètres] et [polaires],
certaines conventions prise par Oleg vont nous aider. Les coefficients intéressants se
terminent par H_0 ou H_1 et L_0 ou L_1.
●
●
●
●
H veut dire que l'on se trouve en vol à plat normal,
L veut dire que l'on se trouve sur le dos,
_0 veut dire que les volets sont rentrés,
_1 veut dire que les volets sont sortis à 100%...
En fonction de ces conventions et en ne s'intéressant qu'à la partie du vol à plat et
volets rentrés, les définitions utilisées dans IL2/FB pour les coefficients de portance
Cy (courbe bleu) et de trainée Cx (courbe rouge) sont les suivante (en fonction de
l'incidence).
Sans trop entrer dans les détails et en simplifiant, le coefficient de portance Cy est une
droite de pente [1480] et d'abscisse à l'origine [1490] se raccordant sur deux paraboles
de coefficients parabCyCoeffH (incidence positive) et parabCyCoeffL (incidence
négative = vol sur le dos).
Il existe d'autres coefficients (decline, parabangle, maxdistang,...) qui ne présentent
aucun intérêt ici car ils se rapportent à la partie après décrochage...
Le coefficient de trainé Cx est schématisé par une parabole de coefficient [1515]
positionné par deux valeurs [1490] et [1485]. Cette parabole est remplacée par droites
fonctions (droite ou partie de sinusoïde) au delà de deux valeurs AOAparabH et
AOAparabL (symétriques par rapport au sommet de la parabole AOAMinCx. Il est à
noter que ces deux valeurs sont inscrites en dur dans le programme et égale à +6 et -6°
quelque soit l'avion choisi. De même, deux autres valeurs utilisées dans le programme
sont inscrites en dur, il s'agit de:
●
●
AOACritL_0 = -16° qui est l'incidence de décrochage, volets rentrés en vol sur
le dos,
AOA_land = 12° qui est l'incidence maxi de décrochage pour l'atterrissage.
Si la nécessité l'exige, une simple modification à faire sur les classe java de IL2/FB
rendra possible la personnalisation (ainsi que d'autres bien sur) de ces paramètres pour
chaque avion.
Avec le schéma simplifié du dessus, même sans être tombé dans les mathématiques en
étant petit, il est évident que beaucoup de coefficients sont liés et qu'en changer un
sans changer les autres peut conduire à des discontinuités et donc à des trucs bizarres
en vol.... C'est reflété sur la figure où les noms précédés par des [xxxxxxx sont en
général des paramètres indépendants, ceux où il n'y a pas de crochets sont forcément
des paramètres calculés ...
Le tableur a été organisé de telle façon que les paramètres calculés sont fonctions de
tout ou partie des valeurs modifiées se trouvant dans les lignes au dessus.
Ont été également rajouté les mêmes tests de cohérences que ceux faits dans le
programme (on ne sait jamais ce qui peut arriver). Si vous voyez OK partout, c'est que
c'est bon...
Enfin le dernier point concerne la motorisation. Du fait de l'utilisation du tableur, les
fonctions utilisées dans le soft concernant la motorisation n'ont pu être reproduites car
trop lourdes à programmer (prise en compte du pas d'hélice, du wep, du type de
moteur, des réducteurs, du diamètre d'hélice, etc...
L'option 4 permet de contourner cette limitation. En effet, c'est IL2/FB qui calcule les
valeurs nécessaires et les inscrits dans le fichier texte qui est crée. Il suffit ensuite de
copier/coller pour les reporter dans le tableur. Ainsi, si vous voulez connaitre l'impact
d'une utilisation d'une hélice plus grande, il suffit d'utiliser l'option 4, changer le
diamètre d'hélice et ensuite exporter les valeurs calculées dans le tableur.
Dans une prochaine version, de nouveaux paramètres seront crées dans le soft et dans
le tableur et permettront d'agir directement sur les courbe hp/altitude et hp/vitesse.
L'option 4 permet d'entrer 4 types de données nécessaires au tableur à travers 4 onglets
prévus à cet effet:
●
●
●
●
zone A Puissance Var
zone B Puissance Nom
zone C Puissance Max
zone D Paramètres
2.6.1 zone A Puissance Var
La puissance (en hp) et la vitesse sont liées par une relation assez compliquée. Un
paramètre utilisé par le soft et la vitesse maxi à l'altitude 0 [1300 Vmax]. Si l'on veut
faire varier cette vitesse, il est nécessaire de connaitre comment varie la puissance en
hp (ou la traction de l'hélice en Newton) pour toujours assurer la cohérence. C'est le
but de cet onglet.
Ces valeurs sont à récupérer dans le fichier texte généré par l'option 4 en copiant la
partie en bleu et en la collant dans la cellule A1 du tableur (ne pas oublier que c'est la
parenthèse ouvrante ( qui servira de séparateur entre les cellules, c'est Open Office ou
Excel qui demandera d'indiquer le caractère séparateur à utiliser). Dans des colonnes
cachées de la feuille, le tableur remplacera le point décimal utilisé par java par la
virgule qu'il utilise...
C'est terminé pour la zone A. Le résultat du collage doit ressembler à ça:
2.6.2 zone B Puissance Nom
La zone B correspond au calcul de la puissance du moteur à 100% en fonction de
l'altitude et de la vitesse. Dans le fichier texte, vous allez trouver des lignes ci dessous
et pour lesquelles il faudra encore recopier la partie en bleu pour la coller dans la
cellule A1 du tableur:
pour obtenir:
2.6.3 zone C Puissance Max
La zone C est identique à la zone B mais il s'agit de la puissance d'urgence (110% +
wep quand il existe):
qui devient alors dans le tableur:
2.6.4 zone D Paramètres
Ce sont les paramètres que vous aller pouvoir modifier (ou recalculer). Il faut
toutefois, au préalable, récupérer ceux du soft. Toujours même procédure:
qui une fois passés dans le tableur deviennent:
Là encore, la transformation entre point et virgule sera prise en charge
automatiquement par le soft...
C'est terminé pour la partie récupération des données du soft. L'onglet suivant
«Mod» permet de modifier les paramètres et de voir leur influence... Dans cet
onglet, une première zone concerne la modification des paramètres. Elle se
décompose en 5 parties:
●
la partie 1 concerne des paramètres qui sont inscrits en dur dans le programme
(et qui sont, pour l'instant non modifiables),
●
la partie 2 correspond au données que vous avez récupérées essentiellement
dans la zone D auxquelles se rajoutent des calculs pour déterminer des
paramètres liés. Cette partie là n'est pas modifiable. A ce stade, il est nécessaire
de donner une petite explication sur chacun des paramètres rencontrés:
○
○
○
○
○
○
○
○
410 - TakeOff: c'est la masse au décollage utilisée comme référence pour
déterminer l'enveloppe de vol. Il faut savoir que cette masse est
probablement différente de celle que vous pouvez avoir en mission, car
cette dernière est fonction d'une masse à vide, d'une masse de carburant,
d'une masse d'huile, du poids du pilotes, du poids des armements et des
munitions emportées, etc...
440 - Wing: surface des ailes de l'avion. Ce paramètre sert aussi pour le
calcul des coefficients aérodynamiques.
1310 - Vmin: vitesse minimum correspondant au décrochage à l'altitude
1505 – CyCritH_0: coefficient Cy de portance maximum (correspond au
décrochage) pour l'altitude 0, en vol à plat et volets rentrés. A cette valeur,
l'incidence est maximum et la vitesse est égale à Vmin.
1300 – Vmax: c'est la vitesse maximum que peut atteindre l'avion, à
l'altitude 0 en utilisant la puissance d'urgence. A cette vitesse, correspond
nécessairement une puissance du moteur (hp), donc une traction sur l'arbre
de l'hélice (en Newton) qui est donnée par les caractéristiques (donc les
paramètres liés au moteur). J'ai prévu la possibilité de faire varier cette
vitesse de + ou – 20% et la nouvelle traction sur l'hélice sera recalculée à
partir des données de la zone A. La nouvelle traction recalculée au
paramètre P_Vmax. J'ai approximé cette fonction par une courbe du second
degré qui donne des valeurs exactes pour les valeurs à -20%, + 0% et -20%
de la vitesse. Pour les autres vitesses, il peut y avoir une erreur inférieure à
1% (à mon avis sans influence). Si nécessaire, je pourrais resserrer encore
la fonction d'interpolation.
1485 – AOAMinCx_Shift: ce paramètre sert à positionner le coefficient de
trainé (aller jeter un coup d'oeil sur la figure du dessus). En fait, il permet
de mettre en place le point le coefficient de trainé Cx minimum par rapport
au point de coefficient de portance Cy nul.
1515 – ParabCxCoeff_0: c'est le coefficient de la parabole servant à
simuler la courbe du coefficient de trainée Cx (volets rentrés).
1520 – CxMin_0: c'est le coefficient de trainé minimum Cx volets rentrés
(et qui correspond au sommet de la parabole liée au coefficient 1515 –
ParabCxCoeff_0. Ce coefficient se calcule à partir de: P_Vmax, 1300 –
Vmax, 440 – Wing, 1515 – ParabCxCoeff_0, 1485 – AOAMinCx_Shift et
aussi à partir de la position de la courbe de portance Cy.
○
1425 – K_Max: c'est la finesse maximum (rapport Cy/Cx). En fait, cette
valeur dans la colonne «lue» n'est qu'une borne et n'est pas le reflet de la
véritable valeur. Cette borne sert à vérifier que la valeur exacte de la finesse
est comprise entre entre 0,6.K_Max et 1,3.K_Max. Dans la colonne
«calcul», c'est effectivement la valeur réelle de la finesse qui est inscrite.
○
1325 – VminFlaps: vitesse minimum possible avec les volets sortis. En
dessous de cette vitesse, c'est le décrochage assuré.
1525 – Cy0_1: idem 1490 – Cy0_0 mais avec les volets sortis à 100%. Ce
paramètre se calcule à partir de 410 – TakeOff, 440 – Wing, 1325 –
VminFlaps, 1480 – lineCyCoeff et AOA_Land (inscrit en dur dans le
○
○
○
○
○
○
○
○
○
○
programme et égal à 12° quelque soit l'avion choisi)
1435 – FlapsMult: c'est un multiplicateur destiné à calculer le coefficient
de la parabole représentant la trainée.
1555 – ParabCxCoeff_1: idem 1515 – ParabCxCoeff_0, mais avec les
volets sortis. Ce coefficient se calcule très simplement: [1555] = [1515] x
[1435]
1320 – VmaxFLAPS: à l'altitude 0, vitesse maximum possible avec les
volets sortis à 100%.
1550 – CxMin_1: idem 1520 – CxMin_0 mais pour les volets sortis à
100%. Se calcule d'une façon analogue mais en prenant les paramètres
relatifs aux volets déployés (_1).
1530 – AOACritH_1: incidence maxi correspondant au décrochage avec
les volets sortis.
1540 – CyCritH_1: idem 1505 – CyCritH_0 mais avec les volets sortis. Ce
paramètre est calculé à partir de 1525 – Cy0_1, 1530 – AOACritH_1 et
1480 – lineCyCoeff.
1440 – FlapsAngSh: voir ligne suivante.
1535 – AOACritL_1: idem à 1495 – AOACritH_0, mais en vol dos avec
volets sortis. Ce coefficient est calculé à partir de AOACritL_0 (valeur en
dur dans le programme et égale à -16°) et de 1440 – FlapsAngSh. La
formule utilisée est très simple: [1535] = [AOACritL_0] – [1440].
1545 – CyCritL_1: idem que 1510 – CyCritL_0, mais avec les volets sortis.
Le calcul correspond à un choix entre deux valeurs dont on prend la plus
petite. En fonction du choix qui est fait, 1535 – AOACritL_1peut
intervenir, dans le cas contraire, c'est une valeur à 0,7 qui sera prise.
➢
Nota: toutes les formules utilisées correspondent à celles qui se
trouvent dans le programme (même si certaines sont surprenantes).
Toutefois, dans les paramètres du programme (colonnes rouges), il
existe des incohérences. En fait, après calculs, certains paramètres ont
été modifiés à la main... ce qui peut parfois expliquer des
comportements étranges de certains appareils....
●
la partie 3, en vert correspond aux données que vous pouvez modifier
en entrant une nouvelle valeur pour le paramètre,
●
la partie 4 correspond à des paramètres liés (et donc calculés) à partir
des éléments des parties 1 et 3,
●
la partie 5 correspond à des tests. Ces mêmes tests étant faits par le
IL2/FB, je les ai rajouté dans le tableur...
Toujours sur cette feuille, lorsque vous faites bouger un paramètre, vous
voyez quelques résultats. Tout d'abord, les caractéristiques générales de
l'avion:
ainsi que quelques courbes telles que le domaine de vol (aussi bien à 100%
qu'en puissance d'urgence) et une autre correspondant à différentes
puissance en hp:
●
●
la courbe verte correspond à la puissance mini nécessaire au horizontal
à l'altitude donnée. Cette courbe est calculée à partir des coefficients
que vous pouvez modifier dans cette page,
les courbes bleu et rouges correspondent aux puissances à 100% et
d'urgence maxi que peut développer le moteur aux
considérées, il s'agit donc de la puissance utilisable à
considérée. Ces courbes qui dans une version ultérieure
pourront être directement modifiables sans aller trifouiller
paramètres moteurs... Elles proviennent des zones B et C.
altitudes
l'altitude
du mod
dans les
Ceci dit, on voit bien au passage, l'influence du compresseur jusqu'aux
environs de 7000 m puisque la puissance en hp reste à peu prêt constante
avant de s'écrouler...
C'est tout pour cet onglet, mais il y a de quoi faire. S'il y a certains paramètres
qui vous semblent étranges, posez des questions....
Le prochain onglet «Polaire» donne sous forme graphique, les
caractéristiques aérodynamiques... Il servira peut être. Il permet quand même
de vérifier d'un simple coup d'oeil que les choix faits au niveau des paramètres
conduisent à des courbes logiques. Pour aider, la courbe originale (IL2/FB) est
indiquée et l'on vient y superposer la courbe modifiée. On rencontre plusieurs
courbes dont les polaires:
L'onglet suivant «Domaine de vol» est plus intéressant car il donne, altitude
par altitude, les principales caractéristiques du coucou...
L'onglet suivant «Domaine de vol» est plus intéressant car il donne, altitude
par altitude, les principales caractéristiques du coucou...
Enfin, le dernier onglet correspond à la motorisation (en fait c'est elle qui
détermine le domaine de vol) à différentes altitudes. Les courbes se
présentent de la façon suivante:
La courbe bleu représente la puissance nécessaire (en hp) à un vol horizontal.
Quelques points sont indiquer tels que la puissance mini ou le point de finesse
max. On peut y voir aussi, qu'à cette altitude, la vitesse mini est de l'ordre de
190 km/h. A ce point, l'avion est l'incidence max tout prêt du décrochage.
La courbe rouge (mais la verte ferait aussi bien l'affaire) représente la
puissance (toujours en hp) que peut donner le moteur à cette altitude en
fonction de la vitesse. Si l'on veut par exemple voler à 500 km/h (en vol
horizontal), il faudra que l'on ajuste les RPM de façon à ce que le moteur
délivre une puissance 800 hp...
Il est aussi facile de voir qu'à cette altitude, en régime d'urgence, la vitesse
max que l'on pourra atteindre est de l'ordre de 560 km/h.
En fait, la différence entre la courbe bleu et la courbe rouge donne la
possibilités d'accélération (augmentation de la vitesse), ou la capacités de
monter. Dans les deux cas, c'est une augmentation du niveau d'énergie de
l'appareil. Ainsi, plus cette différence est grande, plus c'est bon... J'ai indiqué
cette différence par les courbes en pointillé...
Il ne reste plus qu'à essayer et à tester...
3
La motorisation dans FB
De nombreux paramètres interviennent dans la modélisation de la
motorisation dans FB et rendent difficile l'utilisation d'un tableur compte tenu
des relations mises en jeu. Une première solution a consisté à modifier FB de
façon à ce que les variables liées à la motorisation soient enregistrées au
cours d'un vol. Cette méthode à vite montré ces limites pour plusieurs raisons:
●
●
●
le nombre de variables à traiter,
l'évolution de ces variables dans le temps avec des phases transitoires
associées,
la difficulté à maintenir constant certains paramètres de vol (cas du vol
horizontal stabilisé par exemple) afin de déterminer le comportement et
l'évolution de ces variables sous certaines conditions.
Compte tenu de ces contraintes, un « simulateur de MDV » a été écrit. Ce
simulateur reprend:
●
●
●
toutes les variables utilisées dans FB,
toutes les fonctions utilisées dans FB,
la même logique d'enchainement des différentes fonctions que celles
utilisées dans FB.
Basé sur ces principes, ce simulateur permet alors:
●
●
●
●
d'évaluer les MDV de FB (... et ceux des mods proposés),
de vérifier les conséquences d'une modification de paramètres du MDV,
de tester les modifications ou la création de nouvelles fonctions du soft,
enfin, de sortir les résultats sous une forme facilement exploitable
(tableaux, courbes, etc...)
L'enregistrement des données lors d'un vol dans FB ainsi que leur
comparaison avec celles calculées directement dans le simulateur ont permis
de montrer qu'il était totalement représentatif de FB (moins de 1% d'écart, cet
écart étant principalement causé par les imperfections du pilotage).
3.1 Comment est simulée la motorisation dans FB
La motorisation consiste à transformer une énergie fournie par le moteur en
une autre qui est une énergie de traction. Cette transformation se fait par
l'intermédiaire d'une hélice.
Le soft considère tout d'abord le moteur tout seul et calcule le couple moteur
qu'il peut délivrer. Pour donner une image, il suffit de considérer un moteur sur
un bâti de test, au sol (altitude 0) et, en bout d'arbre, non pas une hélice mais
un dispositif permettant de mesurer la vitesse de rotation et le couple délivré
par le moteur pour différentes pressions d'admission. Dans le cas de FB, il
s'agira plus prosaïquement de différentes positions de la manette des gaz...
On peut donc voir ce type de mesure comme les données constructeur du
motoriste.
Ce moteur étant destiné à un avion et donc utilisé en altitude, ce couple
moteur va être altéré par les capacités du compresseur qui lui sera destiné. Le
but du compresseur étant de fournir au moteur de l'air en débit suffisant
nécessaire à son fonctionnement. Il existe donc dans le soft, en fonction du
type de compresseur utilisé, un coefficient venant altérer le couple moteur
déterminé sur le banc de test. C'est à ce niveau que sont effectués les calculs
de consommation (avions humains uniquement, la consommation des IAs est
plus rustique).
Une fois ces calculs effectués, le couple moteur est encore soumis à un
coefficient qui traduisant l'état d'usure du moteur (cette usure pouvant
occasionner, dans certaines conditions l'arrêt définitif...). Sauf cas particulier,
dans le simuleur de MDV ce coefficient est pris égal à 1.
Le prochain coefficient à intervenir concerne l'état des magnétos de l'avion.
Dans le simulateur de MDV, ce coefficient est pris, sauf cas particulier égal à
1, mais dans FB:
●
●
●
2 magnétos en fonctionnement: coef = 1
1 seule magnéto en fonctionnement: coef = 0.87
aucune magnéto: coef = 0
Ensuite, un autre coefficient intervient qui traduit lui l'état de « bonne santé »
du carburateur, donc le mélange air/carburant. Là encore, sauf cas particulier,
ce coefficient sera pris égal à 1 dans le simulateur de MDV, le but n'étant pas,
à ce stade d'évaluer le modèle de panne...
A ce niveau, un autre coefficient entre en jeu. Ce coefficient traduit le fait qu'un
dispositif aussi complexe qu'un moteur d'avion est réglé autour d'un point de
fonctionnement et que lorsqu'il commence à s'en éloigner, son fonctionnement
est désoptimisé et il peut se mettre à « ratatouiller ». C'est ce que traduit ce
coefficient.
Enfin, un couple de frottement est rajouté, mais ce couple n'intervient que
lorsque le moteur subit des avaries. Bien qu'il existe dans le simulateur de
MDV, il est prit égal à l'unité pour n'avoir aucune influence.
A ce point, la partie « moteur » est terminée et nous nous retrouvons avec un
moteur délivrant en bout d'arbre, un couple moteur et une certaine vitesse de
rotation. C'est ensuite à l'hélice qui transformera ce couple moteur en traction.
Toutefois, une partie de l'énergie délivrée par le moteur sera utilisé pour
vaincre le couple résistant de l'hélice, l'énergie disponible restante étant
transformée en traction. C'est cette traction qui sera appliquée à l'avion.
3.2 Le simulateur de MDV
Le simulateur de MDV est une copie conforme de ce qui se passe dans FB. A
ce stade, seule la partie motorisation a été développée et il reste à lui
adjoindre la partie liée à la mécanique du vol de l'avion. En prenant le cas très
simple du vol horizontal stabilisé à une altitude donnée, on peut schématiser
les choses de la façon suivante:
●
●
●
●
le throttle est une commande destiner à régler le moteur autour d'un
point de fonctionnement,
le moteur délivre un couple moteur associé à un certains nombre de
RPM. Toutefois, pour fonctionner, il utilise des éléments externes
comme par exemple la vitesse de l'avion qui est un paramètre d'entrée
pour la pression d'admission,
l'hélice, quant à elle, transforme l'énergie en une force de traction.
Toutefois, dans le fonctionnement de l'hélice il faut tenir compte de la
vitesse de l'avion,
la force de traction appliquée aux équations de la mécanique du vol,
dans le cas d'un vol horizontal stabilisé permettra, au travers de
nombreux paramètres, le calcul de la vitesse de l'avion.
Pour l'instant, le simulateur de MDV se résume au throttle et à la motorisation,
la partie mécanique du vol sera disponible dans peu de temps. Néanmoins, à
ce stade, pour tester cette partie motorisation, il est nécessaire d'entrée une
vitesse « cohérente » avec la position du throttle.
La solution a consisté à effectuer dans FB différents vols à des altitudes
différentes et à des positions de throttle différentes et de relever ces deux
paramètres (entre autres) et de les injecter ensuite dans le simulateur de
MDV, partie motorisation.
Pour reprendre l'analogie avec un banc de test, cette méthode revient à dire
que l'on teste le moteur et son hélice, dans une soufflerie et que l'on relève les
différents paramètres qu'il délivre. On peut d'ailleurs remarquer que c'est une
étape obligatoire pour beaucoup de moteurs d'avion...
Enfin, pour terminer, dans FB, il existe beaucoup d'avions utilisant de
nombreux types de moteurs. Nous utilisons plus particulièrement dans nos
campagnes AOC actuelles le 109G6. C'est donc c'est avion qui a été pris
comme référence. L'adaptation pour les autres types de moteurs et d'avion se
fera très facilement car seules quelques fonctions seront à modifier, mais dans
le sens de la simplification...
3.3 Relation ATA <-> RPM
Dans ces paramètres de bases, lors du chargement de l'avion dans FB, une
relation entre ATA et RPM est rentrée. Cette relation est définie à travers des
paramètres:
●
●
●
●
●
●
●
●
2765 – CompressorRPM0 400.0
2770 – CompressorATA0 0.6
2775 – CompressorRPM1 1200.0
2780 – CompressorATA1 0.75
...
...
2745 – CompresssorRPMMax 2800.0
2740 -CompressorMaxATARPM 1.42
(comme dans la première partie, les chiffres représentent des référence
utilisées pour la modification éventuelles des valeurs...) et qui donnent
finalement la courbe suivante:
ATA / RPM
1 ,60
1,4 0
1 ,20
ATA
1 ,00
0 ,80
0 ,60
0,4 0
0 ,20
0 ,00
0
500
1 00 0
15 0 0
20 0 0
250 0
3000
35 00
RPM
Le soft possède les fonctions capables de calculer un nombre ATA à partir d'un
nombre de RPM, ... mais pas le contraire. Dans le 109G6, de la façon dont le
soft est programmé, la position du throttle est pratiquement proportionnelle au
RPM. La pente de cette courbe montre, que pour les RPM > 2000, une petite
variation de RPM entrainera une variation importante du nombre d'ATA.
3.4 Caractéristiques du moteur au niveau de la mer
Comme dit plus haut, cela correspond à un moteur fixé sur un support et sur
lequel on mesure le couple délivré et les RPM en fonction de la position du
throttle. En fonction des RPM, il est aussi possible de calculer la pression ATA.
Il faut bien comprendre que ces caractéristiques correspondent aux
caractéristiques maximum du moteur puisque, par la suite, il ne leur sera plus
appliqués que des coefficients inférieurs à 1. Dans ce calcul, les paramètres
suivant interviennent:
●
●
●
2555 – HorsePowers 1400.0
2540 – RPMMax 2800.0
2535 – RPMNom 2800.0
Très peu de paramètres interviennent dans ce calcul. Les deux premiers
servent à calculer un couple maximum pour le moteur de la façon suivante:
engineMomentMax = (horsePowers * 746F * 1.2F) / wMax
A partir de cette formule, on voit très facilement que:
●
●
les calculs du soft se font systématiquement dans le système
international, le coefficient 746 est uniquement destiné à transformer
des hp en Watt,
si l'on en croit cette formule, la puissance max est égale à 1,2 fois la
puissance indiquée dans le paramètre 2555, soit pour un 109G6: 1680
hp.
Le paramètre 2535 à pour effet de modifier la forme de la courbe de
puissance. Par contre, si sa valeur est différente de celle du paramètre 2540,
cela entrainera une diminution de puissance pour les throttle / RPM ou ATA
élevés.
En utilisant le simulateur de MDV (mais aussi en récupérant les valeurs dans
FB pour vérification...):
●
●
●
la puissance du paramètre 2555 (1400 hp) est obtenue pour une
position du throttle à 75%. Ce résultat est applicable à tous les avions
du jeu.
la puissance max calculée plus haut (1680 hp) est atteinte pour une
position du throttle, non pas à 110% , mais à 103%. C'est une surprise.
lorsque le throttle est à 110%, la puissance développée est égale à
1848 hp, soient un coefficient de 1,32 (et non pas 1,2) par rapport au
1400 hp du paramètre 2555.
Les variables engineMomentMax et RPMMax étant appelées à maintes
reprises dans plusieurs sections de FB, il en résulte une incohérence dans le
soft. En effet ces variables sont adossées à un coefficient de 1,2 fois une
puissance alors que le soft, dans certaines de ses fonctions calcule avec un
coef de 1,32. C'est une erreur générique qui s'applique à tous les avions du
jeu et pas seulement au 109G6. Cela veut tout simplement dire que tous les
MDV sont erronés si bien qu'en relatif, rien ne se voit...
Néanmoins, pour le 109G6, le simulateur de MDV permet de tracer des
courbes et de voir comment elles évoluent lors d'une variation de paramètres.
Les 4 premiers graphiques sont obtenus à partir des valeurs nominales du
109G6 de FB. La dernière montre l'influence du paramètre 2535 RPMNom.
Hp / Throttle
Hp / RPM
2 00 0
2 00 0
1 80 0
1 80 0
1 60 0
1 60 0
1 4 00
1 4 00
1 20 0
1 20 0
1 00 0
1 00 0
80 0
80 0
60 0
60 0
4 00
4 00
20 0
20 0
0
0,3
0 ,4
0,5
0,6
0 ,7
0,8
0,9
1 ,0
0
1 80 0
1 ,1
2 00 0
T hr ot t le
2 20 0
24 00
26 0 0
28 0 0
RPM
Hp / ATA
RPM / Throttle
2 00 0
2 90 0
1 80 0
2 70 0
1 60 0
1 4 00
2 50 0
1 20 0
2 300
1 00 0
80 0
2 10 0
60 0
1 90 0
4 00
1 70 0
20 0
0
1 50 0
0 ,9
1
1,1
1,2
1 ,3
1,4
1,5
0 ,3
0,4
0,5
AT A
0 ,6
0,7
0,8
0,9
1
T r ot t le
Influence de RPMNom sur la puissance
200 0
180 0
160 0
1 4 00
120 0
RPMNom = 2 2 00
RPMNom = 2 8 00
RPMNom = 34 00
100 0
80 0
60 0
4 00
1 80 0
190 0
200 0
21 0 0
22 0 0
2 300
RPM
24 00
2 50 0
2 60 0
2 70 0
2 80 0
1,1
La courbe RPM / Throttle met bien en évidence la relation de proportionnalité
entre la position du throttle et les RPM alors que la puissance développée
devrait plutôt être proportionnelle au nombre d'ATA.
La dernière montre que la puissance maximum est obtenue pour une valeur
de RPMNom égale à RPMMax
3.5 Le compresseur
Pour effectuer les calculs relatifs au compresseur, FB utilise les paramètres
suivants:
●
●
●
●
●
●
2725 – CompressorMultiplier0 0.86
2750 – CompressorSpeedManifold 0.5
2720 – CompressorAltitude0 6200.0
2740 – CompressorMaxATARPM 1.42
2755 – compressorPAt0 0.3
2540 – RPMMax 2800.0
Le paramètre 2720 représente l'altitude critique du compresseur. Au dessus
de cette dernière, il perd de son efficacité. Pour le 109G6, cette altitude est
unique, mais il peut exister des cas où plusieurs altitudes critiques sont
présentes et indiquent alors que le compresseur perd graduellement son
efficacité. Dans ce cas là, il existe aussi plusieurs paramètres 2725
CompressorMultiplier. Dans le calcul entre également la vitesse de l'avion,
mais, elle a une influence minime (de l'ordre de 1%). Par contre, l'influence du
nombre de tour est significative, mais cela semble évident. Pour le 109G6, ce
qui est modélisé est un compresseur à deux étages qui amènent chacun un
taux de compression de l'air ambiant par des formules plus ou moins
sophistiquées.
En utilisant les paramètres nominaux du 109G6, le coefficient de compression
est le suivant en fonction de l'altitude et pour trois valeurs du throttle (qui a vrai
dire ont une influence assez faible, au moins jusqu'à l'altitude critique:
Compresse ur
1
Throttle: 0.8
Throttle: 1.0
Throttle: 1.1
P/P0
0 ,8
0 ,6
0 ,4
0 ,2
0
0
200 0
4 0 00
Alt it ud e
60 0 0
80 0 0
1 00 00
Le paramètre 2720 correspond à l'altitude critique du compresseur et le seul
examen de la figure ci dessus fait comprendre sa signification. En utilisant le
simulateur, il est très facile de déterminer l'influence des autres paramètres.
Influence paramètre [2725]
1
0 ,8
0 .7
0 .8 6
1 ,0
0 ,6
0 ,4
0 ,2
0
0
20 0 0
4 00 0
60 0 0
80 00
100 0 0
Alt it ude
Le premier paramètre choisi est le 2725 – CompressorMultiplier0 qui, par
défaut pour le 109G6, est égal à 0.86. En utilisant 2 autres valeurs (0.7 et 1.0),
le résultat est le suivant et son utilité s'en déduit...
Le deuxième paramètre retenu est le 2755 – compressorPAt0. Sa valeur par
défaut, toujours pour le 109G6 est 0.3. Le comportement du compresseur a
été simulé avec une valeur de 0.6. On note peu d'influence jusqu'à l'altitude
critique:
Influence paramètre [2755]
1 ,1
0.3
0.6
1
0 ,9
0 ,8
0 ,7
0 ,6
0 ,5
0 ,4
0
200 0
4 00 0
600 0
800 0
100 0 0
Alt it ude
Enfin, pour terminer, le fonctionnement du compresseur dans FB est
représenté sur la figure suivante:
Sur ce schéma, deux cas de fonctionnement ont été représentés:
●
●
●
un fonctionnement à 3000 m (en vert)
un fonctionnement à 9000 m (en rouge)
les valeurs en bleu représente des paramètres du MDV ou des données du
vol.
La position du throttle permet le calcul de la pression seuil au collecteur du
compresseur (compressorManifoldThreshold).
La pression externe représente la pression à l'entrée du compresseur. Cette
pression est égale à la pression statique à l'altitude considérée à laquelle se rajoute
la pression dynamique fois le coefficient compressorSpeedManifold. Ce coefficient
indique tout simplement qu'une partie simplement de la pression dynamique est
utilisable pour le compresseur (perte de charge dans les entrées d'air, mauvais
rendement, ...).
Le schéma montre cette pression externe est transformée par les deux étages du
compresseur pour finalement aboutir un un coefficient de compression. Ce
coefficient de compression qui viendra diminuer la puissance du moteur, car
toujours inférieur à 1.
3.6 L'usure du moteur
Une variable interne au programme traduit l'état de « fatigue » du moteur. En début
de vol, cette variable est positionnée à 1 et diminue ensuite en fonction de l'état
d'usure du moteur. Elle agit alors comme un coefficient multiplicateur (< = 1) qui
affecte le couple moteur. Cette variable a été incluse dans le simulateur de MDV et
son évolution est dépendante de l'état de surchauffe du moteur ainsi que des
régimes de survitesse auxquels il peut être soumis. Par contre, ne sont pas pris en
compte tous les cas d'usure prématurée consécutifs aux combats.
3.7 Les magnétos
Une autre variable interne au programme est relative aux magnétos. Elle agit
également comme un coefficient multiplicateur (<= 1) s'appliquant au couple
moteur.
Elle figure dans le simulateur de MDV avec une valeur égale à 1 dans le cas d'une
évolution future et garder la cohérence avec FB. A noter que dans FB cette variable
est égale:
●
●
●
à 1 lorsque les deux magnétos sont en fonctionnement,
à 0.85 lorsqu'une seule magnéto est en fonctionnement
à 0 lorsque aucune magnéto ne fonctionne.
L'évolution de cette variable est provoquée:
● soit par une action volontaire du pilote
● soit comme résultat d'un dommage provoqué au cours d'un combat.
3.8 Le mélange dans le carburateur
Là encore, il existe une variable qui indique la qualité du mélange air/carburant.
Cette qualité intervient comme un coefficient multiplicateur (<= 1) sur le couple
moteur.
Dans le cas du 109G6, le mélange étant automatique, la variable a été positionnée
à 1. Pour les autres avions équipés avec des dispositifs différents, les lignes de
code seront à récupérer de FB pour les inclure dans le simulateur.
3.9 Les phases de vol
Du point de vue du soft, il existe plusieurs phase de vol:
●
●
●
●
●
●
●
●
●
STAGE_NULL
STAGE_WAKE_UP
STAGE_STARTER_ROLL
STAGE_CATCH_UP
STAGE_CATCH_ROLL
STAGE_CATCH_FIRE
STAGE_NOMINAL
STAGE_DEAD
STAGE_STUCK
qui correspondent chacune à une certaine valeur d'un coefficient multiplicateur
venant affecter le couple moteur. Il se trouve que pour la phase qui nous intéresse
(STAGE_NOMINAL), ce coefficient est égal à 1. Néanmoins, ce coefficient a été
introduit dans le simulateur, même si pour l'instant il est égal à 1, dans le cadre
d'une possible évolution future.
3.10 Le point de fonctionnement du moteur
Un coefficient est présent dans FB pour tracer le fait que le moteur a été réglé
autour d'un point de fonctionnement optimum. Lorsqu'il s'éloigne de ce point, il
tourne un peu moins «rond» et cela se traduit par une variation du couple moteur.
Les paramètres entrant en jeu pour ce coefficient sont les suivants:
●
●
●
●
2800 DisP0x 2400
2805 DisP0y 0.0
2810 DisP1x 0.0
2820 DisP1y 12.0
A partir de ces paramètres, une amplitude de variation du couple moteur est
calculée. Un coefficient est ensuite calculée à partir de cette amplitude par
multiplication avec une nombre aléatoire compris entre -1 et 0.1. Cette fonction
étant appelée plusieurs fois par seconde ne donnera jamais le même résultats mais
variera autour d'une valeur moyenne.
● le paramètre 2800 fixe la position du maximum de la courbe correspondant
au coefficient moyen (ici maximum obtenu pour 2400 tr/mn)
● les autres paramètres fixent la concavité de la courbe (en l'écrasant plus ou
moins) et la déplacent vers le haut ou vers le bas.
● attention toutefois, si le paramètre 2805 est supérieur à 2820, la concavité du
coefficient moyen deviendra négative et le maximum se transformera en
minimum.
Le coefficient a été tracé pour sa valeur moyenne ainsi que pour les valeurs mini et
maxi qu'il peut atteindre.
Coef Fonctionnement moteur
1 ,0 5
1 ,0 0
Coe f
0 ,9 5
Co e f mo yen
Co e f mini
Co e f ma xi
0 ,9 0
0 ,8 5
0 ,8 0
0
5 00
1 00 0
1 50 0
20 0 0
25 0 0
30 00
RPM
Pour être complet sur le sujet, dans FB une autre paramètre se rajoute dans le
calcul de ce coefficient: il s'agit du ratio entre le nombre de cylindres total et le
nombre de cylindre encore en état de fonctionner. Ce ratio a été pris en compte
dans le simulateur, mais sa valeur a été fixée à 1 si bien que son influence est nulle.
3.9 Les frottements
Un coefficient de frottement intervient aussi dans le calcul final du couple moteur.
Ce coefficient de frottement conduit à un calcul d'un couple de frottement qui vient
se retrancher au couple moteur. Ce coefficient de frottement est «activé» en
fonction des dégâts subis par le moteur. Pour l'instant, bien que pris en compte
avec une valeur 0, il ne présente pas d'intérêt pratique pour le simulateur.
3.10 L'hélice
L'aspect hélice a été assez maltraitée dans FB. En laissant de coté pour l'instant le
dispositifs de contrôle de vitesse constante, on trouve comme paramètres:
●
●
●
2650 Reductor 0.72
2655 PropDiameter 3.12
2160 PropMass 150
Le réducteur est placé entre le moteur et l'hélice et abaisse le nombre de tour. Il n'y
a aucune notion de rendement mécanique prise en compte dans FB pour ce
réducteur...
Le diamètre est la masse sont facile à comprendre. FB utilise comme norme, pour
calculer les différents éléments de l 'hélice, un point situé à 0.75 fois le rayon, ce qui
est un chose que l'on retrouve très souvent dans la littérature.
A partir du diamètre, une surface «équivalente» de l'hélice est calculée. C'est cette
surface qui servira dans me calcul de la traction de l'hélice ou de son couple
résistant. Cette surface est déterminée à partir de la surface du disque ayant 0.75
fois le rayon multipliée par un coefficient d'occultation traduisant le fait que la
surface totale des pales n'occupe pas le disque en entier. Dans le programme, ce
coefficient d'occultation a été pris à 8.3%. Le deuxième point qui apparait ainsi est
que FB ne fait aucune différence entre les hélices à 2 pales, 3 pales, 4 pales etc...
puisque le coefficient d'occultation est le même pour toutes les hélices. Le nombre
de pales est pourtant un élément important entrant dans la performance de
l'hélice...
Il n'a pas été prévu dans FB un moyen permettant de différencier des hélices. Des
valeurs par défaut sont chargées pour permettre le calcul des coefficients Cx et Cz
de l'hélice. En conclusion, quelle soit la nationalité, l'avion et le moteur l'équipant,
c'est toujours la même hélice (avec le même nombre de pale) qui sera utilisée pour
donner des performances identiques (bien sur, au diamètre prêt).
Un des points qui pénalise les hélices est le fait que la combinaison de la vitesse
d'avancement et du nombre de tours de l'hélice peut conduire à des vitesses
soniques en extrémités de pales. Ces vitesses soniques sont génératrices de
vibrations, de bruit, mais aussi d'une perte d'efficacité de l'hélice.
Cette perte d'efficacité a été traduite dans FB par une augmentation de la trainée de
l'hélice dès que la vitesse dépasse un seuil de 300 m/s. Le seul problème est que la
vitesse du son varie avec l'altitude et ce point a été oublié dans FB.
Enfin, comme pour les moteurs, une hélice est « taillée » pour une vitesse mini. En
dessous de cette dernière, elle fonctionnera dans des conditions dégradées. C'est
le paramètre
●
2760 Voptimal 325.0
qui est utilisé.
Ci dessous, ont été représentés les coefficients de traction et de trainée des pales
tels qu'utilisés dans le soft (même si certaines formes semblent un peu bizarres).
Hélice: coefs Cx et Cy
Cx
Cy
2
1 ,5
1
Cx : Cy
0 ,5
0
-0 ,5
-1
-1 ,5
-20
-10
0
10
20
Incid ence
30
40
50
A partir de ces courbes, la finesse max (21.86) de la pale est obtenue à une
incidence de 3.6°.
En définissant un coefficient sans dimension J = V / (n.D) où V représente la vitesse
d'avancement de l'hélice, n le nombre de tour par seconde qu'elle effectue et D son
diamètre, il est possible de calculer son rendement pour plusieurs angles de calage.
Avec ces unités le coefficient J est compris (en pratique) entre 0.3 et 1.5.
Tous calculs faits, avec les données de FB, les hélices ont les rendements suivants
(sans tenir compte des dégradations causées par une vitesse sonique ou l'effet du
paramètre 2760):
Rendement Hélice en fonction du calage
1 00
90
80
Rendement (x10 0 )
70
60
50
40
30
20
10
20
30
40
50
60
10
0
0 ,00 0,25
0,5 0
0 ,7 5
1,0 0
1 ,2 5
1,50
1,7 5
2,00
2,2 5
2 ,5 0
2,7 5
3,00
3,2 5
3,5 0
3,75
4 ,0 0
J = V / (n . D)
A noter, que pour chaque calage, le rendement maximum est atteint au point de
finesse max.
L'enveloppe des rendements max est donnée par:
Rendement optimum hélice (x 100)
100
90
80
70
60
0 ,0 0
0 ,5 0
1 ,0 0
1 ,5 0
2 ,0 0
J = V / ( n . D)
2 ,5 0
3,0 0
3,5 0
4 ,0 0
Les principales caractéristiques de l'hélice ayant été établies, il est maintenant
possible de parler de son dispositif de réglage du calage. Pour ce dispositif, les
paramètres suivants sont utilisés:
●
●
●
●
●
●
●
2665 PropAnglerType 7
2670 PropAnglerSpeed 0.08
2675 PropAnglerMinParam 1650.0
2680 PropAnglerMaxParam 2800.0
2690 PropPhiMin 16.0
2695 PropPhiMAx 55.0
2700 PropAOA0 11.0
Le paramètre 2665 correspond au type de dispositif d'hélice qui est monté sur
l'avion (ici le 109G6). Les types utilisables sont les suivants:
●
●
●
●
●
●
●
●
●
PROP_FIXED = 0
PROP_RETAIN_RPM_1 = 1;
PROP_RETAIN_RPM_2 = 2
PROP_RETAIN_AOA_1 = 3
PROP_RETAIN_AOA_2 = 4;
PROP_FRICTION = 5
PROP_MANUALDRIVEN = 6
PROP_WM_KOMANDGERAT = 7
PROP_FW_KOMANDGERAT = 8
Il est facile de voir qu'il existe une différence, suivant le soft, entre le Bf et le Fw.
Le paramètre 2670 correspond à la vitesse de changement de calage des pales
(pour les moteurs qui en sont équipés) exprimée en rad/s. Dans le cas du 109G6,
cette vitesse est égale à 0.08 rad/s soient 4.6 °/s. C'est cette vitesse qui sera
utilisée dans le cas d'un dispositif de calage automatique.
Les paramètres 2675 et 2680 indiquent la plage de tours par minute (RPM) dans
lequel le dispositif automatique opère.
Les paramètres 2690 et 2695 indiquent les angles minis et maxi de calage que
l'hélice peut atteindre.
Enfin, dans le cas du 109G6, plus exactement des hélices de type 7, le paramètre
2700 n'est pas utilisé.
En utilisant le simulateur, il est alors possible de vérifier le comportement du moteur
équipé de son hélice et de son dispositif automatique de calage.
Il est nécessaire d'avoir une référence, pour cela, les éléments suivants ont été
récupérés au cours d'un vol dans FB:
●
●
●
●
●
●
●
●
altitude = 5000 m
throttle = 0.924
vitesse = 468 km/h
RPM = 2639 tr/mn
Calage hélice = 31.88°
Incidence hélice = 1.88°
Traction hélice = 5024 N
Couple hélice = 3782 m^N
●
Couple moteur = 3800 m^N
L'altitude, le throttle et la vitesse seront les valeurs qui seront entrées dans le
simulateur. Au départ, et afin de voir l'évolution dans le temps, le nombre de tour
sera pris égal à 2300 tr/mn et le calage de l'hélice à 35.5°
Lorsque l'équilibre a été atteint, le simulateur donne les résultats suivants:
●
●
●
●
●
●
RPM = 2616 tr/mn soit un écart inférieur à 1%
Calage hélice = 31,24° soit un écart de l'ordre de 2%
Incidence hélice = 1.88° soit un écart inférieur à 1%
Traction hélice = 5156 N soit un écart de l'ordre de 2,7%
Couple hélice = 3793 m^N soit un écart inférieur à 1%
Couple moteur = 3786 m^N soit un écart inférieur à 1%
Les écarts s'explique par l'imperfection du vol virtuel, mais néanmoins, ils ne sont
pas significatifs.
Il est clair que le calage de l'hélice n'est pas optimum, car l'incidence ne correspond
pas à la finesse max de l'hélice et donc à son rendement maximum.
Enfin, le simulateur permet d'obtenir en fonction du temps la loi de variation des
différents paramètres:
Le simulateur permet de mesurer directement les effets d'un changement de
configuration.
Ci dessous figure les évolutions de ces variables pour un avion volant à 300 km/h, à
5000 m d'altitude, throttle = 0.8.
Au temps t = 100, les éléments suivants sont provoqués
●
●
passage à throttle = 1.1 en 3 secondes
montée à vitesse constante (300 km/h) avec une vitesse verticale de 20 m/s
pendant 50 secondes ( t = 150s) de façon à passer de 5000 m à 6000 m.
L'augmentation du throttle à un effet immédiat sur la vitesse de rotation du moteur
qui atteint (et même dépasse) son régime nominal en 10 secondes environs et qui
en fait se stabilise totalement au bout de 50 secondes lorsque la montée est
terminée.
Le calage hélice varie très rapidement dans un premier temps pour contrer l'effet de
l'augmentation de la vitesse du moteur. Lorsque le moteur est pratiquement
stabilisé il évolue encore le temps de la montée pour ensuite se stabiliser.
Enfin, on eut remarquer que les courbes d'incidence, de traction et de couple ont
des formes similaires.
Ceci dit, il ne s'agit que d'un cas d'école, dans la mesure où la vitesse de l'avion
ainsi que la vitesse de montée ont été fixées arbitrairement. Lorsque la dernière
partie du simulateur aura été intégrée, ces vitesses seront récupérées à partir des
calculs faits en utilisant les données du modèle de vol de l'avion. Le fait d'intégrer
cette dernière partie devrait changer plus ou moins la phase transitoire que l'on
observe sur toutes les courbes (avec très peu d'influence sur celle relative au
nombre de tours de moteur).
Les éléments suivants décrivent le fonctionnement du moteur avec son hélice dans
le cas d'une augmentation du throttle:
●
●
●
un couple délivré par le moteur: Cm
un couple résistif de l'hélice qui correspond aux forces de trainée qui
s'exercent sur elles: Ch
enfin, une force de traction crée par l 'hélice et qui fera avancer l'avion: T
Si le couple délivrée par le moteur Cm est supérieur au couple opposé par l'hélice
Ch, le nombre de tour du moteur va augmenter, ce qui à puissance égale, aura pour
effet de faire diminuer Cm. Dans le même temps, la vitesse de rotation de l'hélice
augmentant, les forces de trainée vont augmenter et donc faire augmenter le couple
Ch. Il va donc y avoir à un moment donnée équilibre entre les couples moteurs Cm
et de l'hélice Ch.
Dans Fb, cette accélération affectant le nombre de tours est calculée à partir de la
différence entre Cm et Ch. Ce fait également intervenir l'inertie de l'hélice qui est
déterminée à partir éléments géométrique et massique de cette dernière ainsi que
de l'inertie du moteur qui est un paramètre du MDV:
●
2290 EngineI 1.0
Un autre coefficient intervient dans le calcul de l'accélération du moteur:
●
2295 EngineAcceleration 4.0
Il s'agit d'un coefficient de modélisation qui n'a rien à voir avec la physique. Lorsque
l'accélération calculée avec la méthode vue quelques lignes plus haut est positive,
cette dernière est multipliée par ce coefficient. Lorsqu'il s'agit d'une décélération, ce
coefficient n'intervient pas. En conclusion, les moteurs prennent plus rapidement les
tours que ce qu'ils peuvent en perdre.
3.11 Calcul de la consommation
Le calcul de la consommation se fait à partir d'une courbe de conso spécifique.
Cette courbe peut être incluse dans les paramètres moteur comme elle peut être
directement utilisée avec des valeurs par défaut attribuées par FB. Une recherche
rapide montre que des avions comme le 109, le Fw, le Spit ou le Hurricane utilisent
cette même courbe de consommation spécifique...
Les paramètres utilisés sont les suivants:
●
FuelConsumptionP0 0.4
●
●
●
FuelConsumptionP05 0.24
FuelConsumptionP1 0.28
FuelConsumptionPMax 0.30
Conso spécifique
0,4 0
0,38
0,36
0 ,34
0,32
0,30
0 ,2 8
0 ,2 6
0,2 4
0 ,2 2
0 ,2 0
Fue lCo ns umpt io nP05
Fue lCo ns umpt io nPM AX
Fue lCo nsumpt io nP0
Fue lCo nsumpt io nP1
Le paramètre d'entrée dans cette courbe est la puissance du moteur ramenée à sa
puissance maximum. Ce rapport permet donc de se situer entre
FuelConsumptionP0 et FuelConsumptionPMax. La courbe fournit alors directement
la consommation horaire par hp. Il suffit ensuite de multiplier cette valeur par la
puissance au moment considéré pour obtenir la consommation. A ce stade du
développement du simulateur, il n'est pas encore possible de calculer les
caractéristiques des différentes consommation de l'avion car il manque encore à
intégrer la partie «planeur» dans ce dernier. C'est en conjonction avec elle, qu'il
sera possible de déterminer les altitudes et vitesses économiques,...
3.12 Les températures
Les paramètres qui interviennent dans les calculs de températures sont les
suivants:
●
●
●
●
●
●
●
●
●
●
2820 TESPEED 0.01
2825 TWATERMAXRPM 95.0
2840 TOILINMAXRPM 70.0
2845 TOILOUTMAXRPM 107.0
2850 MAXRPMTIME 300.0
2855 MINRPMTIME 999.0
2860 TWATERMAX 115.0
2865 TWATERMIN 60.0
2870 TOILMAX 125.0
2875 TOILMIN 40.0
De la façon dont elles sont codées dans FB, les variations de températures suivent
une loi exponentielle. Le paramètre 2820 est une valeur entrant dans la constante
de temps de cette fonction. De toutes façons, pas la peine de se prendre la tête:
●
●
augmenter de paramètre augmentera la vitesse de variation,
le diminuer, diminuera cette vitesse.
A mon avis, il y a également un abus de langage avec les coefficients TWATERxxxx
qui sont probablement les températures des liquides de refroidissement qui ne sont
pas nécessairement de l'eau. Pour éviter de se faire des noeuds au cerveau, c'est
le terme « eau » qui sera utilisé.
Pour donner une image pratique au codage de FB, il suffit de considérer deux
éléments: un bloc moteur et un radiateur d'eau. Ces deux éléments ont leurs
températures qui varient instantanément en fonction:
●
●
●
●
de la puissance appliquée au moteur,
du nombre de tour du moteur,
de l 'état du radiateur,
de la vitesse et de l'altitude.
C'est à ce niveau qu'interviennent les paramètres 2825 et 2845 qui correspondent à
une température limite de fonctionnement lorsque la manette des gaz est
positionnée à 100%. C'est ce coefficient qui intervient dans la formule, mais les
autres paramètres (puissance moteur, radiateur, etc...) viennent modifier les
températures des réservoirs d'eau et d'huile.
Ces températures de réservoirs ayant été calculées, 3 températures sont
déterminées:
une température pour l'eau dans le radiateur
une température d'huile en entrée et en sortie moteur.
L'état de surchauffe moteur est vérifiée par comparaisons de la températures d'eau
et de sortie d'huile avec les paramètres 2860 et 2870.
Si une des deux températures dépasse ces limites:
● un compteur commence à s'incrémenter
○ si ce compteur dépasse la valeur du paramètre 2850 (qui représente des
secondes), alors:
■ l'usure du moteur augmente ce qui a pour effet de diminuer la
puissance qu'il délivre (voir explication plus haut). Si cette usure
dépasse un certain seuil (0.32), le moteur s'arrête. Il est bon pour la
casse.
■ le paramètre 2870 voit sa valeur diminuer.
Si, à la suite d'une action, les températures d'eau et d'huile repassent en dessous
des valeurs définies par les paramètres 2860 et 2870, le compteur repasse à 0 si
bien qu'il suffit, dans le cas du 109G6, d'être en régime de surchauffe pendant des
durées ininterrompues de 299 secondes maximum (MAXRPMTIME – 1s) pour qu'il
ne se passe rien de fâcheux pour le moteur...
Le paramètres suivants ne sont pas (ou plus) utilisés dans la version actuelle de
FB:
●
2855 MINRPMTIME 999.0
Dans le cas du SPIT9, SPIT8 et SPIT8Clp, les paramètres suivants sont utilisés
●
●
2865 TWATERMIN 60.0
2875 TOILMIN 40.0
pour le calcul de l'ouverture (ou fermeture) du radiateur.
Lorsqu'un avion
●
●
démarre au sol, sa température est aux alentours de 22°
démarre en l'air, sa température pour l'eau et l'huile est la moyenne des
paramètres:
○
2840 et 2875 pour la température d'huile en entrée,
○ 2845 et 2875 pour la température d'huile en sortie,
○ 2825 et 2865 pour la température de l'eau.
Bien que ne faisant pas partie du moteur, le radiateur est un élément indispensable
à son fonctionnement. L'ouverture du radiateur provoque un supplément de trainée
qui influe donc sur les performances de l'avion. Le type de radiateur est donné par
la valeur du paramètre:
●
2665 PropAnglerType 7
Dans le cas du 109G6, la modification de la position du radiateur est effectuée
lorsque la température de l'huile en sortie dépasse la valeur du paramètre 2845.
Dans le cas où la température en sortie est en dessous de la valeur du paramètre
2845, l'ouverture du radiateur est fonction de la vitesse:
●
●
●
= 1 (ouvert) lorsque la vitesse est nulle
= 0 lorsque le rapport entre la vitesse et le paramètre
○ 1305 VmaxH 643.0
est supérieur ou égal à 1
et évolue linéairement entre les deux valeurs pour les vitesse comprises
entre 0 et VmaxH.
La première simulation consiste à voir comment évoluent les différentes
températures au démarrage au sol. Cette connaissance peut être intéressante dans
le cas d'un mod fixant des contraintes de températures au démarrage. Donc, la
vitesse a été fixée à 0 et la manette des gaz au minimum.
Cette évolution est résumée à travers les courbes suivantes où l'on voit, en utilisant
les paramètres de base, qu'il faut aux environs de 6 minutes pour que les
températures minis soient atteintes.
Températures au démarrage
65
60
55
Huile entrée
Huile so rtie
Eau
Min huile
Min eau
50
45
40
35
30
25
20
0
50
10 0
15 0
2 00
250
30 0
350
4 00
Enfin, la courbe suivante montre l'évolution des températures dans le cas suivant:
●
●
●
●
la puissance est réglée à 75%
l'altitude choisie est 1000 m
la vitesse est de 510 km/h
à l'instant t = 50 s, le puissance passe à 110%
Dès que la puissance passe à 110%:
●
●
●
●
●
●
●
une élévation des températures de l'huile en entrée et sortie ainsi que de la
température de l'eau se produit.
Lorsque la température d'huile en sortie dépasse tOilMaxRPM, le radiateur
s'ouvre. Toutefois son ouverture, même à 100%, n'est pas suffisante pour
compenser l'élévation de température de l'huile.
Lorsque la température de l'huile en sortie dépasse tOilCritMax, le compteur
commence à s'incrémenter.
Quant le compteur arrive à la valeur MAXRPMTIME ( = 300 s), le coefficient
d'usure du moteur diminue (si bien que le couple moteur diminue). Dans le
même temps, la valeur de tOilCritMax diminue.
La diminution du couple moteur entraine une diminution des températures (le
moteur fournit moins de puissance).
Lorsque la température de sortie d'huile passe en dessous de tOilCritMax, le
compteur passe à 0 et le coef d'usure du moteur cesse d'évoluer.
Enfin, lorsque l'huile repasse en dessous de tOilMaxRPM, le radiateur
repasse à la position qu'il avait avant la surchauffe du moteur et tout est
redevenue comme avant.
Ce n'est pas tout à fait vrai, la puissance affichée par la manette des gaz est
toujours de 110%, alors que le coefficient d'usure à fait que le moteur ne délivre
plus qu'aux alentours de 40% de la puissance qu'il devrait délivrer dans cette
position.
4
Simulation de l'avion complet
A venir, fera l'objet de la prochaine mise à jour

Documents pareils