Mise en drapeau des helices sous Yasim
4 participants
Page 1 sur 1
Mise en drapeau des helices sous Yasim
bonjour à tous,
Après de longues recherches, j' ai trouvé ( - je pense - ) une petite modification du fichier propeller.ccp qui permet une mise en drapeau sous Yasim.
Voici un extrait du fichier propeller.ccp avec en 'bold' ma modification :
........
void Propeller::calc(float density, float v, float omega,
float* thrustOut, float* torqueOut)
{
// For manual pitch, exponentially modulate the J0 value between
// 0.25 and 4. A prop pitch of 0.5 results in no change from the
// base value.
// TODO: integrate with _fine_stop and _coarse_stop variables
if (_manual)
{
_j0 = _baseJ0 * Math::pow(2, 2 - 4*_proppitch);
if ( _proppitch == 0.0 ) v = 0 ;
}
if (_propfeather )
{
v = 0 ;
}
float tipspd = _r*omega;
float V2 = v*v + tipspd*tipspd;
......
Pour les hélices pas variable 'manuel', le contrôle se fait via la ligne di fichier xxxyasim.xml suivante : <control-input axis="/controls/engines/engine[1]/propeller-pitch" control="PROPPITCH" src0="0" src1="1" dst0="0" dst1="0.759835"/> ( soit le simple fait de réduire le pas à 0 )
et pour les hélices pas variable avec RPM constant, via la ligne suivante : <control-input axis="/controls/engines/engine[1]/propeller-feather" control="PROPFEATHER"/> soit la sélection 'drapeau' du moteur.
J' ai testé, ca marche. Reste un problème en sortie de drapeau sur les hélices à RPM contant... la sortie est brutale ...
Si cette modif. est valable, il faudra l’insérer dans la version 2.8 :-) ?
A votre tour de 'compiler.. ' et tester
amicalement
Philippe
Après de longues recherches, j' ai trouvé ( - je pense - ) une petite modification du fichier propeller.ccp qui permet une mise en drapeau sous Yasim.
Voici un extrait du fichier propeller.ccp avec en 'bold' ma modification :
........
void Propeller::calc(float density, float v, float omega,
float* thrustOut, float* torqueOut)
{
// For manual pitch, exponentially modulate the J0 value between
// 0.25 and 4. A prop pitch of 0.5 results in no change from the
// base value.
// TODO: integrate with _fine_stop and _coarse_stop variables
if (_manual)
{
_j0 = _baseJ0 * Math::pow(2, 2 - 4*_proppitch);
if ( _proppitch == 0.0 ) v = 0 ;
}
if (_propfeather )
{
v = 0 ;
}
float tipspd = _r*omega;
float V2 = v*v + tipspd*tipspd;
......
Pour les hélices pas variable 'manuel', le contrôle se fait via la ligne di fichier xxxyasim.xml suivante : <control-input axis="/controls/engines/engine[1]/propeller-pitch" control="PROPPITCH" src0="0" src1="1" dst0="0" dst1="0.759835"/> ( soit le simple fait de réduire le pas à 0 )
et pour les hélices pas variable avec RPM constant, via la ligne suivante : <control-input axis="/controls/engines/engine[1]/propeller-feather" control="PROPFEATHER"/> soit la sélection 'drapeau' du moteur.
J' ai testé, ca marche. Reste un problème en sortie de drapeau sur les hélices à RPM contant... la sortie est brutale ...
Si cette modif. est valable, il faudra l’insérer dans la version 2.8 :-) ?
A votre tour de 'compiler.. ' et tester
amicalement
Philippe
OO ZVY- pilote de vieux coucous
- Messages : 336
Date d'inscription : 02/08/2011
Age : 56
Re: Mise en drapeau des helices sous Yasim
test avec le Pond racer :
ZVY
ZVY
OO ZVY- pilote de vieux coucous
- Messages : 336
Date d'inscription : 02/08/2011
Age : 56
Re: Mise en drapeau des helices sous Yasim
Bonjour à tous,
J' ai retravaillé la mise en drapeau, pour permettre un redémarrage.
Dans le cas de la mise en drapeau d'une hélice à pas variable simple ( sans RPM constant ) , il faut l'aide du démarreur pour relancer le moteur.
Pour les hélices avec RPM constant, la sortie du mode 'feather' active le windmilling et le redémarrage est possible via ce windmilling, sans démarreur.
lien vers nouveaux fichiers propeller.ccp et propeller.hpp à compiler : http://dl.dropbox.com/u/18438878/propellersource.zip
amicalement
Philippe
petite vidéo de la mise en drapeau et redémarrage sur le Pond racer ( sans artifices xml... ) :
( Les RPM diminuent bien, et la MAP retourne à la pression atmosphérique quand le moteur s’arrête puis l'inverse au redémarrage... )
J' ai retravaillé la mise en drapeau, pour permettre un redémarrage.
Dans le cas de la mise en drapeau d'une hélice à pas variable simple ( sans RPM constant ) , il faut l'aide du démarreur pour relancer le moteur.
Pour les hélices avec RPM constant, la sortie du mode 'feather' active le windmilling et le redémarrage est possible via ce windmilling, sans démarreur.
lien vers nouveaux fichiers propeller.ccp et propeller.hpp à compiler : http://dl.dropbox.com/u/18438878/propellersource.zip
amicalement
Philippe
petite vidéo de la mise en drapeau et redémarrage sur le Pond racer ( sans artifices xml... ) :
( Les RPM diminuent bien, et la MAP retourne à la pression atmosphérique quand le moteur s’arrête puis l'inverse au redémarrage... )
OO ZVY- pilote de vieux coucous
- Messages : 336
Date d'inscription : 02/08/2011
Age : 56
Re: Mise en drapeau des helices sous Yasim
Bravo ! Ca vaudrait bien une prise en compte par défaut dans les sources du projet FG.
f-ojac- pilote de vieux coucous
- Messages : 338
Date d'inscription : 23/02/2012
Localisation : En ce bas monde.
Re: Mise en drapeau des helices sous Yasim
bonjour,
panne moteur, mise en drapeau puis redémarrage moteur droit sur DC-3 YASIM. ( tel que sur GIT PAF sans aucunes modifications, avec les fichiers propeller.xxx source ci-dessus ).
amicalement
ZVY
panne moteur, mise en drapeau puis redémarrage moteur droit sur DC-3 YASIM. ( tel que sur GIT PAF sans aucunes modifications, avec les fichiers propeller.xxx source ci-dessus ).
amicalement
ZVY
OO ZVY- pilote de vieux coucous
- Messages : 336
Date d'inscription : 02/08/2011
Age : 56
Re: Mise en drapeau des helices sous Yasim
Engine failure take off ( C421 )
OO ZVY- pilote de vieux coucous
- Messages : 336
Date d'inscription : 02/08/2011
Age : 56
Re: Mise en drapeau des helices sous Yasim
Salut OOZVY,
Sur IRC les dev on commencé à regarder ton travail. Il semble qu'il manque la procédure de mise en drapeau.
Peux-tu donner toutes les étapes que tu fais pour mettre l'hélice en drapeau puis redémarrer s'il te plait ?
Personnellement, j'ai testé la procédure suivante avec le dc-3 :
1) Autostart des 2 moteurs à l'aide du menu du dc-3
2) Décollage
3) Je réduis les gaz du moteur gauche
4) Je réduis le pas d'hélice du moteur gauche
5) J'actionne le gros bouton rouge situé sur la gauche du panneau supérieur
Résultat : l'hélice continue de tourner :/
Est-ce normal ? la procédure que je suis est-elle là bonne ?
Ah aussi, j'ai juste recompiler FG après avoir appliqué ton patch. Faut-il que je recompile aussi SimGear ?
Amicalement,
Clément
Sur IRC les dev on commencé à regarder ton travail. Il semble qu'il manque la procédure de mise en drapeau.
Peux-tu donner toutes les étapes que tu fais pour mettre l'hélice en drapeau puis redémarrer s'il te plait ?
Personnellement, j'ai testé la procédure suivante avec le dc-3 :
1) Autostart des 2 moteurs à l'aide du menu du dc-3
2) Décollage
3) Je réduis les gaz du moteur gauche
4) Je réduis le pas d'hélice du moteur gauche
5) J'actionne le gros bouton rouge situé sur la gauche du panneau supérieur
Résultat : l'hélice continue de tourner :/
Est-ce normal ? la procédure que je suis est-elle là bonne ?
Ah aussi, j'ai juste recompiler FG après avoir appliqué ton patch. Faut-il que je recompile aussi SimGear ?
Amicalement,
Clément
Re: Mise en drapeau des helices sous Yasim
Bonjour Clément,
La mise en drapeau de l’hélice telle que suivant ma modification n’arrête pas forcement le moteur. Elle ne fait que supprimer le vent relatif sur les pales de l'helice.
Suivant ta séquence, tu as réduit la puissance et le pas, puis mise en drapeau de l’hélice. Toutefois, les magnétos et le carburant ( mixture ) sont toujours présent donc le moteur 'tourne' toujours et entraîne encore l’hélice. Essaye en 'fermant' la mixture.
amicalement
Philippe
PS : sur certains avion, la fonction 'feather' n'est pas présente dans le YASIM, il faut donc bien sur l'y ajouter pour que le FDM puisse en tenir compte.
explication de ma modification :
principe de ma modif. :
Lors de la sélection de 'feather' ou en cas de 'manual pitch' si le 'proppitch' = 0 simuler la position drapeau en forçant le vent relatif ( v ) égal à 0.
Afin d'assurer un redémarrage fluide, j'ai ajouté une variable 'arminflightstart' qui passe à 'true' lors de la mise en drapeau. Lors du redémarrage, elle limite -pendant la phase transitoire de demarrage- la valeur de v ( vent relatif ) par rapport au pas et à la vitesse de rotation.
La mise en drapeau de l’hélice telle que suivant ma modification n’arrête pas forcement le moteur. Elle ne fait que supprimer le vent relatif sur les pales de l'helice.
Suivant ta séquence, tu as réduit la puissance et le pas, puis mise en drapeau de l’hélice. Toutefois, les magnétos et le carburant ( mixture ) sont toujours présent donc le moteur 'tourne' toujours et entraîne encore l’hélice. Essaye en 'fermant' la mixture.
amicalement
Philippe
PS : sur certains avion, la fonction 'feather' n'est pas présente dans le YASIM, il faut donc bien sur l'y ajouter pour que le FDM puisse en tenir compte.
explication de ma modification :
principe de ma modif. :
Lors de la sélection de 'feather' ou en cas de 'manual pitch' si le 'proppitch' = 0 simuler la position drapeau en forçant le vent relatif ( v ) égal à 0.
Afin d'assurer un redémarrage fluide, j'ai ajouté une variable 'arminflightstart' qui passe à 'true' lors de la mise en drapeau. Lors du redémarrage, elle limite -pendant la phase transitoire de demarrage- la valeur de v ( vent relatif ) par rapport au pas et à la vitesse de rotation.
- Code:
void Propeller::calc(float density, float v, float omega,
float* thrustOut, float* torqueOut)
{
// For manual pitch, exponentially modulate the J0 value between
// 0.25 and 4. A prop pitch of 0.5 results in no change from the
// base value.
// TODO: integrate with _fine_stop and _coarse_stop variables
if (_manual)
{
_j0 = _baseJ0 * Math::pow(2, 2 - 4*_proppitch);
if ( _proppitch == 0.0 )
{
v = 0 ;
arminflightstart = true ;
}
if ( arminflightstart && ( _proppitch > 0.0 ))
{ if ( (v/omega) > _j0 ) { v = omega * _j0 ; }
else { arminflightstart = false ;
}
}
}
else
{
if (_propfeather )
{
v = 0 ;
arminflightstart = true ;
}
else
if ( arminflightstart )
{ if ( (v/52.3f) > _j0 ) { v = 52.3f *_j0 ; }
else { arminflightstart = false ;
}
}
}
OO ZVY- pilote de vieux coucous
- Messages : 336
Date d'inscription : 02/08/2011
Age : 56
Re: Mise en drapeau des helices sous Yasim
test avec le DC-3 PAF dernière version :
OO ZVY- pilote de vieux coucous
- Messages : 336
Date d'inscription : 02/08/2011
Age : 56
Sujets similaires
» Développement de la Caravelle SE-210
» Yasim - Comment ça fonctionne ?
» Pas variable ( moteur piston ) sur YASIM
» Debat sur Jsbsim avec Yasim
» Des turbopro et des réacteurs améliorés pour YASIM (message à Clément :) )
» Yasim - Comment ça fonctionne ?
» Pas variable ( moteur piston ) sur YASIM
» Debat sur Jsbsim avec Yasim
» Des turbopro et des réacteurs améliorés pour YASIM (message à Clément :) )
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum