UN SIMULATEUR DE BEECHCRAFT B200

UN SIMULATEUR DE BEECHCRAFT B200

Codage du voyant DH et alarme

Voici ma partie de code Sioc pour le codage de l'alarme visuelle et sonore DH (décision altitude)

 

L'altitude de décision est affichée sur l'EADI et elle est paramétrable par un encodeur situé sur la platine  de l'EFIS sur le pédestal

 

Dès qu'on est en descente l'alarme ( son + led orange sur le tableau de bord) se déclenche lorsqu'on est en dessous de l'altitude de décision

 

L'essentiel de l'alarme est assujetti à l'offset $ 31E4 qui est l'altitude radar en mètres et la var decision alt $3428 qui est la hauteur réglée

Une routine alarm_dh est appelée à chaque changement d'altitude par un call

 

Var 0126, name FS_ground_alti, Link FSUIPC_INOUT, Offset $31E4, Length 4                     // Offset  radio altitude sol * 65536


{
     call &ALARM_DH
}

 

var 0140, name decision_hight, Link FSUIPC_INout, Offset $3428, Length 8, value 0     //  var hauteur de décision en mètres


Un encodeur permet de régler cette valeur de décision altitude qui reste en mémoire lorsque le vol est enregistré et qu'on redémarre sur ce vol (enregistrement dans le .xml)

 


Var 4038, name DH_ROT, Link IOCARD_encoder, device 1, input 38, Aceleration 2, Type 2      // réglage de la dh
{
  L0 = &DH_ROT    
  IF L0 > 0     // à droite
  {
    &fs_commande = 66322    
    &fs_commande = DELAY 0 ,10     // raz après 100 msec
  }
  ELSE
  {
    IF L0 < 0     // à gauche
    {
      &fs_commande = 66321
      &fs_commande = DELAY 0 ,10
    }
  }

}
La routine fait en sorte de n'allumer la led et déclencher le son sur le second PC que si l'avion est en l'air, en descente et en dessous de l'altitude de décision programmée sur L'EADI


var 0372, name alarm_DH, link subrutine       // alarme décision altitude
{  
    L0 = &fs_ground_alti / 65536

    if l0 < &decision_hight      // si l'avion est en dessous de la DH
    {
       if &acft_on_gnd = 0    // si l'avion est en l'air
       {
          if &fs_vs < 0      // si on est en descente
          {
             &flag_DH = 1   // on déclenche le son par ce flag, le programme est sur le second PC
          }
       }
       else
       {
          &flag_DH = 0
       }
    }
    else
    {
      &flag_DH = 0
    }

    &dh_led = &flag_DH
 
}

 

Var 0741, name dh_LED, Link IOCARD_OUT,Output 41              // led orange dh

 

var 0985,name flag_DH, value 0   

 

Bonne lecture de ce code et n'hésitez pas si vous avez des questions

 

 

 

 

 

 



14/01/2019
4 Poster un commentaire

A découvrir aussi


Ces blogs de Loisirs créatifs pourraient vous intéresser

Inscrivez-vous au blog

Soyez prévenu par email des prochaines mises à jour

Rejoignez les 121 autres membres