Page 1 sur 2

Garder une valeur lors d'un "Test"

MessagePosté: Lun 11 Aoû 2014 18:30
de arcc
Bonsoir

Je ne sais pas si mon titre est tres comprehensible, mais bon.

Je m'explique. Dans mon cockpit de Twin Otter
Image
J'ai un bouton pour tester l'affichage des niveaux des réservoirs de carburant.
les Offset Fsuipc sont 0B74 et 1244 pour les réservoirs avant et arriere.
Je cherche ,depuis pas mal de temps, à faire :
quand j'appui sur le bouton test, l'aiguille de la gauge vient sur 0, et quand je relache le bouton test, la jauge m'indique la valeur de carburant que j'avais au depart.

Exemple : j'ai mis 50% dans le reservoior Avant et 40% dans le reservoir Arriere, Appui sur le bouton "Test" les aiguilles vont sur "0" , je relache, les aiguilles reviennent sur 50% et sur 40%.
Hors pour l'instant, j'arrive bien à mettre les aiguilles sur 0 (Test) mais elles ne reviennent pas sur les valeurs de chargement.

Et j'ai essayé des tas de possibilités....

Merci pour votre aide.

A+
Christian

Re: Garder une valeur lors d'un "Test"

MessagePosté: Lun 11 Aoû 2014 19:04
de taz83
Pour garder la valeur perso je sais pas mais c'était pour te dire qu'il super sympa ton simu
Bravo quelques photos de plus dans la bonne rubrique me feraient bien plaisir et je pense que ce sera l'avis d'un certain nombre de nous
Merci

Re: Garder une valeur lors d'un "Test"

MessagePosté: Lun 11 Aoû 2014 19:11
de arcc
Sympa ta reponse.
En fait, j'ai pas osé poster mes images sur ce forum au vu de ce qui ce fais, je sais c'est con (alors que je l'ai ai mis sur un autre forum).

J'y songe. En plus je m'eclate dans les régions orbx (Alaska et autres)

A+
Christian

Re: Garder une valeur lors d'un "Test"

MessagePosté: Lun 11 Aoû 2014 19:26
de Boutondair
Bonjour Christian,

Il est magnifique ton simu, comme dit Taz il faut que tu nous en montres un peu plus

David cligneoeil grandsoleil

Re: Garder une valeur lors d'un "Test"

MessagePosté: Lun 11 Aoû 2014 19:36
de FiX
Il faudrait que tu postes ton code, tu as un soucis quelque part.
Parce que c'est assez simple. Si tu as bien l'offset de la quantité de fuel et qu'il t'affiche la quantité de fuel, tu dis :
"if switch=1 alors fuel affiché =0, else fuel affiché = offset fuel."
Ca veut dire que tant que le switch est relâché ça te lit la valeur de l'offset fuel et ça te l'affiche.

Re: Garder une valeur lors d'un "Test"

MessagePosté: Lun 11 Aoû 2014 20:43
de stevelep
Le problème c'est que si la valeur du fuel bouge même un petit peu ton aiguille va
revenir à la valeur normale, même si tu tiens pressé le bouton.

Le plus efficace c'est d'utiliser une subroutine et d'appeler (CALL) la subroutine
avec le bouton ET la valeur de la gauge. Et mettre les conditions d'affichage
comme l'a décrit Fix dans la subroutine, comme ça si le bouton ou la valeur change
l'affichage sera toujours comme tu le veux.

Une subroutine est une variable (un sous-programme) qui centralise plusieurs conditions
et plusieurs variables au même endroit, c'est parfois obligatoire pour le SIOC car
c'est un programme orienté événement.

Poste nous ton bout de code

Merci

et BIG APPLAUSE pour ton super simu qui donne vraiment envie de l'essayer applaublanc applaublanc applaublanc
Tu n'as vraiment pas a rougir de ta réalisation par rapport aux autres nondoightblanc

BOB

Re: Garder une valeur lors d'un "Test"

MessagePosté: Lun 11 Aoû 2014 21:25
de nonolight
Superbe simulateur !

D'autres photos dans la rubrique présentation seraient bien venues, j'ai hâte de voir ça grandsoleil cligneoeil

Nono

Re: Garder une valeur lors d'un "Test"

MessagePosté: Mar 12 Aoû 2014 14:44
de arcc
Parce que c'est assez simple. Si tu as bien l'offset de la quantité de fuel et qu'il t'affiche la quantité de fuel, tu dis :
"if switch=1 alors fuel affiché =0, else fuel affiché = offset fuel."


En fait je pense que le fait d'appuyer sur le bouton test me met comme voulu la valeur à 0, mais quand je relâche je garde 0 dans le réservoir car je n'ai pas réussi à sauvegarder la valeur initiale.

J'ai fais du genre :
Var 0961, name Fuel_Tank_AV, Link FSUIPC_INOUT, Offset $0B74, Length 4 // Capacity Fuel Tank FWD

Var 0963, Link IOCARD_SW, Input 94 // Poussoir Fuel Tank Test On / Off
{
IF V0963 = 1
{
&Fuel_Tank_AV = 0

}
ELSE
{
&Fuel_Tank_AV = V0961
}
}


En essayant de sauvegarder la valeur du reservoir du genre

Var 0962, name Fuel_Tank_AVT // Capacity Fuel Tank Avant Test
{
&Fuel_Tank_AV = &Fuel_Tank_AVT
}
Var 0963, Link IOCARD_SW, Input 94 // Poussoir Fuel Tank Test On / Off
{
IF V0963 = 1
{
&Fuel_Tank_AV = 0

}
ELSE
{
&Fuel_Tank_AV = &Fuel_Tank_AVT
}
}


Pour ce qui est des Subroutine, bien que je cherche toujours des exemples pour essayer de comprendre tout seul, j'avoue que la ......
J'ai par exemple téléchargé le code complet du B200 de Bernard BAUQUE pour m'en inspirer, j'ai du mal avec ces subroutine.

Promis je posterai des photos quand je serais en vacances .
Et encore merci de vos commentaires.

A+
Christian

Re: Garder une valeur lors d'un "Test"

MessagePosté: Mar 12 Aoû 2014 15:19
de arcc
Re bonjour

apres plusieurs essais et recherche, j'ai trouvé (tout seul comme un grand) un code qui fonctionne.
Je ne sais pas si il est conventionnel, mais ca fonctionne. Je le test pendant un vol tout à l'heure.

Code: Tout sélectionner
Var 0494, name Fuel_Tank_AV, Link FSUIPC_INOUT, Offset $0B74, Length 4    // Capacity Fuel Tank FWD
{
  L0 = &Fuel_Tank_AV
  L1 = &Fuel_Tank_AVT
  L2 = L0 + L1
  &Fuel_Tank_AVT = L2
}


Var 0495, name Fuel_Tank_AR, Link FSUIPC_INOUT, Offset $1244, Length 4    // Capacity Fuel Tank AFT
{
  L0 = &Fuel_Tank_AR
  L1 = &Fuel_Tank_ART
  L2 = L0 + L1
  &Fuel_Tank_ART = L2
}

Var 0496, name Fuel_Tank_AVT  // Capacity Fuel Tank FWD Avant Test
{
  &Fuel_Tank_AVT = &Fuel_Tank_AV
}


Var 0497, name Fuel_Tank_ART  // Capacity Fuel Tank AFT Avant Test
{
  &Fuel_Tank_ART = &Fuel_Tank_AR
}


Var 0498, name Fuel_Tank_SW, Link IOCARD_SW, Input 94 // Poussoir Fuel Tank Test On / Off  ( Param 50 / 51 )
{
     IF &Fuel_Tank_SW = 1
     {
         &Fuel_Tank_AV =  0
         &Fuel_Tank_AR =  0
     }
          ELSE
     {
         &Fuel_Tank_AV =  &Fuel_Tank_AVT
         &Fuel_Tank_AR =  &Fuel_Tank_ART
     }
}


A+
Christian

Re: Garder une valeur lors d'un "Test"

MessagePosté: Mar 12 Aoû 2014 17:43
de FiX
Je suis un peu étonné que ton tout premier code ne fonctionne pas. gratgrat
Bob nous donnera sûrement des explications.
Je suppose que c'est parce qu'il faut attendre que la valeur du fuel tank change pour que la valeur s'affiche à nouveau. Tant que ça ne bouge pas le code n'est pas relu donc la variable conserve le 0 en mémoire?
Pour les subroutine, j'avais posé la question à l'époque du code de mon baron58, Bob avait tout expliqué, il faudrait retrouver mon post.
J'avais du apprendre à les utiliser pour coder le fait que l'avionique fonctionnait ou non selon que l'avion était sous tension ou non.

Mais une subroutine, en soit c'est pas compliqué, c'est juste un morceau de code que tu peux "enregistrer" (link_subroutine) et rappeler rapidement n'importe où dans ton code juste en mettant (call_subroutine)