Comment forcer la batterie en voltage maxi indéfiniment ?

Questions de programmation / Offset FSUIPC et IOCP

Comment forcer la batterie en voltage maxi indéfiniment ?

Messagede frazoc » Sam 25 Avr 2009 09:02

bonjour,

je construit un simu de Falcon 900EX (http://www.ifair.fr), mais j'ai un soucis de valeur sur l'Offset $2860 (voltage battery bus).
PI : J'utilise le modèle du Falcon 50 (de Y Lavigne) comme base.

Voici mon soucis, j'ai écrit le code sioc pour la gestion des bus, lorsque ceux ci sont alimentés par la batterie 1 (et simulé la batterie 2 puisqu'elle n'existe pas dans FSUIPC). Tout fonctionne, mais maintenant que je commence l'ecriture pour simuler l'alimentation par un GPU (équivalent à EXT POWER), je voudrais forcer la valeur de l'Offset $2860 pour qu'il reste à 28Volts en permanence et qu'il ne soit plus dépendant de l'activation des générateurs (qui ne rechargent la batterie que lorsque les moteurs sont ON...).

J'ai bien tenté de le faire mais la valeur ne reste pas, elle reprend quasi immédiatement sa valeur précédente... 045

Je suis bloqué et je ne sais plus trop comment faire, si qqun à un tuyau je suis preneur 041
Dernière édition par frazoc le Sam 25 Avr 2009 15:07, édité 1 fois.
Avatar de l’utilisateur
frazoc
 
Messages: 16
Inscription: 24/04/09
Localisation: Région parisienne

Re: est il possible de forcer la valeur d'un offset ?

Messagede steph737 » Sam 25 Avr 2009 09:42

hum, la batterie se décharge tant que les générateurs ne tournent pas et dès qu'un équipement électrique branché sur les bus 0,1 ou 2 (?) est activé. Ca c'est dans FS et on peut pas y toucher je pense.

BusTypes:0=MainBus,1=AvionicsBus,2=BatteryBus,3=HotBatteryBus,4-7=Generator/AlternatorBus(1-4)

Ton problème est de simuler le GPU et de maintenir la charge de la batterie au niveau de ton pit ( tu peux utiliser sioc pour cela ainsi que pour afficher des valeurs d'ampérages et voltages pas forcément issues de FS si elles ne te conviennent pas), au niveau de FS tu as seulement besoin de maintenir la batterie en état.

Peut être que la solution se trouve au niveau de l'offset 32F6 , le bit n°6 correspond à "Extend battery life" (option FSUIPC)
Image
Avatar de l’utilisateur
steph737
 
Messages: 1083
Inscription: 27/03/09
Localisation: Antananarivo - Madagascar

Re: est il possible de forcer la valeur d'un offset ?

Messagede frazoc » Sam 25 Avr 2009 10:49

c'est exactement cela, il me faut maintenir la batterie à 24v même si Bat 1 est engagé sans Gen.

pour l'offset $32F6, je ne le trouve pas dans la doc de FSUIPC que j'utilise (V3.65).
j'ai localisé un $32F6 dans FS interrogate, qui s'appel : "FSUIPC tech opts inhibits (if user allows)"

j'ai relevé sa valeur quand l'avion est démarré et cela donne : 0x0000 (dans la colonne 16 bit)

quelle version de FSUIPC utilises tu ?

je vais continuer à chercher en attendant de voir ta réponse, mais quoi qu'il en soit merci de m'avoir déjà éclairé, je vais continuer avec ces premieres infos 052
Avatar de l’utilisateur
frazoc
 
Messages: 16
Inscription: 24/04/09
Localisation: Région parisienne

Re: est il possible de forcer la valeur d'un offset ?

Messagede steph737 » Sam 25 Avr 2009 11:01

Je me sers toujours de cette liste http://www.projectmagenta.com/resources/FSUIPCOffsets.html pas vraiment d'actualité (quoique...pas de nouveaux offsets FS 9 depuis ! )

Dans l'onglet FSUIPC de FS tu as une case à cocher pour la batterie. Il y a des tests à faire avec ça et l'offset en question, il y a une histoire de tempo assez confuse...
Image
Avatar de l’utilisateur
steph737
 
Messages: 1083
Inscription: 27/03/09
Localisation: Antananarivo - Madagascar

Re: est il possible de forcer la valeur d'un offset ?

Messagede frazoc » Sam 25 Avr 2009 12:24

OK, donc j'ai été dans le menu FSUIPC de FS et en basculant la valeur "extend battery life" la valeur passe bien à 0, et dans FS le voltage de la batterie ne bouge plus ! génial 027

je voudrais aller au bout du code en disant grosso modo :

si le switch de selection de la source d'alim est sur "Normal" (càd sur la batterie de l'avion), on reste sur une utilisation normale de la batterie, donc si il n'y a pas de "Gen", elle se décharge. ce qui donne le pamaretre "extend battery life" à 1
OU
si le switch de selection est sur "EXT Power" (càd alim via GPU), on met le parametre "extend battery life" à 0, de cette façon plus de soucis de décharge.

j'ai donc essayé la fonction CHANGEBIT.

j'ai déclaré la variable suivante :
Var 127, name FS_batt_infini, Link FSUIPC_INOUT, Offset $32F6, Length 2 // pour forcer V Bat 1 à 24v inifini

et indiqué deux conditions :
IF &Alim_externe = 1
{
&FS_batt_infini = CHANGEBIT 6 ,0
et
IF &Alim_externe = 0
{
&FS_batt_infini = CHANGEBIT 6 ,1

bon, le résultat n'est pas probant, puisque si le switch d'alim externe = 0, la batterie reste en vie infinie...

si je prends les commentaires de FSUIPC, c'est le bit n°6 qui nous interesse (6 : Extend battery life)
Comment le coder pour que ça fonctionne ? (pas très clair dans tous les tuto que j'ai sous la main)
(je sais je suis chiant avec mes questions 041 )
Avatar de l’utilisateur
frazoc
 
Messages: 16
Inscription: 24/04/09
Localisation: Région parisienne

Re: est il possible de forcer la valeur d'un offset ?

Messagede steph737 » Sam 25 Avr 2009 12:45

??? As -tu enlevé la case à cocher dans FSUIPC avant tes essais ? ça risque de prendre le dessus.

Pourrais-tu éditer ton titre pour quelque chose de plus explicite svp ? ( pour faciliter la recherche ultérieure ). Et pour info, ce topic sera certainement transféré dans "Sioc et logiciels OPENCOCKPITS / Programmation Sioc"
Image
Avatar de l’utilisateur
steph737
 
Messages: 1083
Inscription: 27/03/09
Localisation: Antananarivo - Madagascar

Re: Comment forcer la batterie en voltage maxi indéfiniment ?

Messagede frazoc » Sam 25 Avr 2009 15:35

j'ai bien enlevé la case cochée dans FS, mais ça ne change rien dans l'éxéxution du code, la batterie se vide lorsque je suis en EXT POWER.

NB : la tempo évoquée dans la docs FSUIPS pour l'offset $32F6 signifie que passées 14 secondes de modifications de la valeur du bit, il revient à son état initial, je l'ai constaté. je pense qu'il faudra rajouter un timer toutes les 10 secondes pour le réactiver, tant que je suis sur ext power (enfin quand le pb sera résolu 047 )

j'ai un gros doute entre changebit, changebitN, setbit... et à vrai dire je ne sais lequel choisir. J'ai essayé plusieurs formules, la valeur de l'offset change (16, 32, 64 en fonction du bit à 1 évidement) mais en aucun cas, la batterie passe en "vie infinie" 053

je vais continuer à chercher 045
Avatar de l’utilisateur
frazoc
 
Messages: 16
Inscription: 24/04/09
Localisation: Région parisienne

Re: Comment forcer la batterie en voltage maxi indéfiniment ?

Messagede frazoc » Sam 25 Avr 2009 20:07

Juste pour info, je viens de trouver ce lien il y a quelques éléments à noter (et c'est Pete Dowson en personne qui anime 027 :

http://forums.simflight.com/viewtopic.php?f=54&t=24614

je continue mes recherches 041
Avatar de l’utilisateur
frazoc
 
Messages: 16
Inscription: 24/04/09
Localisation: Région parisienne

Re: Comment forcer la batterie en voltage maxi indéfiniment ?

Messagede steph737 » Dim 26 Avr 2009 07:09

Peter a une sacré disponibilité, depuis le temps et malgré quelques questions pas toujours sympa sur le forum en question...

Donc ça doit marcher avec cet offset normalement.

J'ai regardé dans Pmsystems comment ils font ( pour APU et Ground Power ), en gros ça passe par un offset intermédiaire "BATTDISCHARGE" 563B qui est un offset "réservé" pmsystems et qui donc n'a pas de lien direct avec FS. Ca passe forcément quelquepart par le 32F6, surement en interne dans le programme lui-même car cet offset n'est même pas listé dans le fichier de configuration de pmsystem pour le 737 par exemple, ni dans le fichier de définition de variables (offsets) utilisées.

J'essaierai de mon côté avec FSinterrogate et un programme sioc pour voir...

( si ils avaient pensé à mettre un moteur supplémentaire sans effet de propulsion mais avec un générateur (et qui consomme rien dans le cas du ground power), on en serait pas là ! )
Image
Avatar de l’utilisateur
steph737
 
Messages: 1083
Inscription: 27/03/09
Localisation: Antananarivo - Madagascar

Re: Comment forcer la batterie en voltage maxi indéfiniment ?

Messagede frazoc » Mer 29 Avr 2009 15:50

voici du nouveau. d'après Pete Dowson l'offset 32F6 ne répond pas à ce besoin, il suffirait de changer la valeur de l'offset $2834 041 (donc beaucoup plus simple que prévu). voir la réponse ci-dessous :

"2^6 = 2 x 2 x 2 x 2 x 2 x 2 = 64, but that is completely irrelevant to your needs. Stopping the user setting or clearing an option does nothing to the battery.

If you want to change the battery voltage, to stop it discharging, you need to write to the battery voltage, at 2834.

Regards
Pete"


il ne reste plus qu' tester, je vous dirais si c'est OK 052
Avatar de l’utilisateur
frazoc
 
Messages: 16
Inscription: 24/04/09
Localisation: Région parisienne

Suivante

Retourner vers Programmation Sioc





Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 27 invités