Affichage lettre sur IRS avec Prosim 1.56

fab

PILOTE DE BROUSSE
Messages
5 907
Réactions
972
Points
1 010
Je me penche sur l'affichage de lIRS ... j'ai bien trouvé lemplacement dans Prosim config de la valeur des 2 afficheurs mais rien sur lindication des lettres N/S et E/W ?

J'utilise Prosim 1.56 ... c'est peut être ça ?
 
Les valeurs Nord et Est sont en positif les Sud et Ouest en négatif.

Tu trouveras ICI mon script Arduino pour l'ensemble de lAFT (comprenant lIRS bien sur).
 
Merci pour l'info que j'avais vu quelque part dans un script SIOC mais je ne trouve pas l'endroit ou cette valeur passe en négatif, les displays déclarées dans Prosim sont toujours en positifs ?

Je vais parcourir ton script quand même ...
 
Dernière édition:
Non ils sont signés.
Je n'ai pas utilise la valeur IRS Display dans l'onglet display mais IRS display Left Number et IRS display Right Number dans l'onglet Numerical.

1577035375629.png
 
Ah, moi aussi, mais je passe par IOCP ... je m'en vais tester en FSUIPC 32S :unsure:

Je te dis cela ...
 
Le problème vient du fait que SIOC ne pend les Var quen non signés de base.

Regarde le premier chiffre (le plus a gauche) du code bin'aire dans IOCP console tu verras qu'il est a 1 lorsque tu es dans l’hémisphère Sud et 0 lorsque tu es dans le Nord.
Pour les néophytes qui liront ce post, le bit de poid fort d'un nombre signé est à 1 lorsque le nombre est négatif et a 0 lorsqu'il est positif.
il faut ajouté une fonction pour le transformer en négatif du genre :
Var 1200, name IRS LEFT
If V1200 > 32768
{
L0 = V1200 - 32767
L0 = 0 - L0
}

Et là tu aura en sur L0 la vraie valeur négative
 
ça marche pô :(

Pour éliminer SIOC, je passe par la console de FSUIPC directement et j'ai toujours du positif :unsure:

Tu utilises quelle version de prosim ?
 
la 1.56.

En Nord/Est (sur LSGG) :
1577055631496.png


En Sud/Ouest (sur SBRJ) :
1577055530838.png


Les 2 valeurs sont bien négatives en Sud/Ouest
Sur ce Test, je n'ai aucun script qui tourne sur SIOC, je ne m'en sers quen serveur IOCP.
J'ai assigné la variable 1000 a lIRS gauche, et la 1001 a lIRS droit

Mon petit script SIOC ne fonctionne pas, SIOC est codé en 32bits signés.
Donc de -2147483648 à 2147483647 et non de -32768 à 32767.

Je ne sais que te dires de plus.
 
Dernière édition:
Alors là ... ?

Je vais chercher maintenant que je sais que cela fonctionne !

Merci en tout cas pour ces confirmations !

Ah encore une question : tu saisies les valeurs au clavier de lIRS ou tu places l'avion ?
 
Je viens de tester, en plaçant l'avion dans l'aéroport, j'ai bien les valeurs négatives ! :)
Pour tester mes afficheurs, je saisissais la position au clavier, et dans ce cas, pas de valeur négative :cry:

Question au Boss : je ne vois pas comment mettre de balise [résolu] ?
 
Alors là ... ?

Je vais chercher maintenant que je sais que cela fonctionne !

Merci en tout cas pour ces confirmations !

Ah encore une question : tu saisies les valeurs au clavier de lIRS ou tu places l'avion ?
Je ne saisi rien au clavier de lIRS, j'utilise le CDU pour linitialisation.
Mais je peux le faire, mon clavier est fonctionnel mais je n'ai pas réellement essayé.
Je me sers du clavier de lIRS pour changer les vues, j'utilise linter non utilisé BOOM/MASK de lASP OBS pour passer du mode clavier IRS au mode changement de vue.
 
OK, merci en tout cas, et bonne idée le changement de vue pas ce biais !

Je ne sais pas d'ailleurs, en réel, à quelle(s) condition(s) faut-il utiliser le clavier ?
 
Pour info j'ai testé l'entrée via la clavier de lIRS ce matin et cela fonctionne.
Par contre ca prend un peu de temps entre lenvoi et l'affichage chez moi, peut etre cela vient il de mon script, de FSUIPC ou de larduino, je testerai prochainement via IOCP maintenant que je sais envoyé des données via un arduino, un ESP ou un STM32 .
 
Voilà le résultat avec un panel Sismo, une IO32 USB modifiée pour l'occasion et option digit :



Le script associé :
Code:
// EFDE 26/12/2019
// Author Fabien Deheegher

// var 700 : IRS_Rconv : conversion IRS right
// var 714 : IRS_Lconv : conversion IRS left

// declarer ci-dessous l'afficheur de droite
Var 0702, name IRS_R_1, static, Link IOCARD_DISPLAY, Device 0, Digit 6, Numbers 6     // IRSs RIGHT DISPLAY DIGITS
Var 0712, name IRS_EW, static, Link IOCARD_DISPLAY, Device 0, Digit 12, Numbers 1     // IRSs EAST&WEST DIGIT

// declarer ci-dessous l'afficheur de gauche
Var 0716, name IRS_L_1, static, Link IOCARD_DISPLAY, Device 0, Digit 0, Numbers 5     // IRSs LEFT DISPLAY DIGITS
Var 0724, name IRS_NS, static, Link IOCARD_DISPLAY, Device 0, Digit 5, Numbers 1     // IRSs NORTH&SOUTH DIGIT

// Nord et Est positif
// Sud et ouest négatif

Var 0700, name IRS_Rconv, static, Link SUBRUTINE
{
  IF &IRS_TEST_I = 1
  {
    &IRS_EW = 8         // E/W-E/O OFF
    &IRS_R_1 = 888888   
  }
  ELSE
  {
    IF &IRS_TEST_I = 0
    {
      IF &IRS_Rconv = -1
      {
        &IRS_EW = -999999         // OFF
        &IRS_R_1 = -999999         // OFF
      }
      ELSE
      {
        IF &IRS_Rconv < -1
        {
          &IRS_EW = -999996         // Ouest
          &IRS_R_1 = ABS &IRS_Rconv     // LONGITUDE
        }
        ELSE
        {
          IF &IRS_Rconv >= 0
          {
            &IRS_EW = -999997         // EAST
            &IRS_R_1 = ABS &IRS_Rconv     // LONGITUDE
          }
        }
      }
    }
  }
}



Var 0714, name IRS_Lconv, static, Link SUBRUTINE
{
  IF &IRS_TEST_I = 1
  {
    &IRS_NS = 8         // NORTH OFF
    &IRS_L_1 = 88888   
  }
  ELSE
  {
    IF &IRS_TEST_I = 0
    {
      IF &IRS_Lconv = -1
      {
        &IRS_NS = -999999         // OFF
        &IRS_L_1 = -999999         // OFF
      }
      ELSE
      {
        IF &IRS_Lconv < -1
        {
          &IRS_NS = 5         // SOUTH
          &IRS_L_1 = ABS &IRS_Lconv     // LATITUDE
        }
        ELSE
        {
          IF &IRS_Lconv >= 0
          {
            &IRS_NS = -999995         // NORTH
            &IRS_L_1 = ABS &IRS_Lconv     // LATITUDE
          }
        }
      }
    }
  }
}


// Var 0794, name IRS_DOT1R, static, Link IOCARD_OUT, Device 0, Output 43     // RIGHT HALF DISPLAY: RIGHT DOT

// Var 0796, name IRS_DOT2R, static, Link IOCARD_OUT, Device 0, Output 44     // RIGHT HALF DISPLAY: CENTER DOT

// Var 0798, name IRS_DOT3R, static, Link IOCARD_OUT, Device 0, Output 45     // RIGHT HALF DISPLAY: LEFT DOT

// Var 0800, name IRS_DOT1L, static, Link IOCARD_OUT, Device 0, Output 46     // LEFT HALF DISPLAY: RIGHT DOT

// Var 0802, name IRS_DOT2L, static, Link IOCARD_OUT, Device 0, Output 47     // LEFT HALF DISPLAY: CENTER DOT

// Var 0804, name IRS_DOT3L, static, Link IOCARD_OUT, Device 0, Output 48     // LEFT HALF DISPLAY: LEFT DOT

// Var 0806, name IRS_GPS_O, static, Link IOCARD_OUT, Device 0, Output 95     // IRS GPS INDICATOR

Var 0872, name IRS_TEST_I, static, Link IOCARD_SW, Device 0, Input 0     // IRS TEST ROTARY SWITCH
   {
   CALL &IRS_Lconv
   CALL &IRS_Rconv
   }

// Var 0874, name IRS_TKGS_I, static, Link IOCARD_SW, Device 0, Input 49     // IRS TK/GS ROTARY SWITCH

// Var 0876, name IRS_PPOS_I, static, Link IOCARD_SW, Device 0, Input 50     // IRS PPOS ROTARY SWITCH

// Var 0878, name IRS_WIND_I, static, Link IOCARD_SW, Device 0, Input 51     // IRS WIND ROTARY SWITCH

// Var 0880, name IRS_HDGSTS_I, static, Link IOCARD_SW, Device 0, Input 52     // IRS HDG/STS ROTARY SWITCH

// Var 0882, name IRS_SYSL_I, static, Link IOCARD_SW, Device 0, Input 53     // IRS SYS DISPLAY LEFT ROTARY SWITCH

// Var 0884, name IRS_KEY1_I, static, Link IOCARD_SW, Device 0, Input 36     // IRS KEY 1 MOMENTARY SWITCH

// Var 0886, name IRS_KEY2_I, static, Link IOCARD_SW, Device 0, Input 44     // IRS KEY 2N MOMENTARY SWITCH

// Var 0888, name IRS_KEY3_I, static, Link IOCARD_SW, Device 0, Input 42     // IRS KEY 3 MOMENTARY SWITCH

// Var 0890, name IRS_KEY4_I, static, Link IOCARD_SW, Device 0, Input 38     // IRS KEY 4W MOMENTARY SWITCH

// Var 0892, name IRS_KEY5_I, static, Link IOCARD_SW, Device 0, Input 40     // IRS KEY 5H MOMENTARY SWITCH

// Var 0894, name IRS_KEY6_I, static, Link IOCARD_SW, Device 0, Input 46     // IRS KEY 6E MOMENTARY SWITCH

// Var 0896, name IRS_KEY7_I, static, Link IOCARD_SW, Device 0, Input 43     // IRS KEY 7 MOMENTARY SWITCH

// Var 0898, name IRS_KEY8_I, static, Link IOCARD_SW, Device 0, Input 37     // IRS KEY 8S MOMENTARY SWITCH

// Var 0900, name IRS_KEY9_I, static, Link IOCARD_SW, Device 0, Input 45     // IRS KEY 9 MOMENTARY SWITCH

// Var 0902, name IRS_KEYENT_I, static, Link IOCARD_SW, Device 0, Input 47     // IRS KEY ENT MOMENTARY SWITCH

// Var 0904, name IRS_KEY0_I, static, Link IOCARD_SW, Device 0, Input 39     // IRS KEY 0 MOMENTARY SWITCH

// Var 0906, name IRS_KEYCLR_I, static, Link IOCARD_SW, Device 0, Input 41     // IRS KEY CLR MOMENTARY SWITCH

Lorsque je saisie sur le panel virtuel, je n'ai pas les lettres qui s'affichent, mais comme je n'ai pas le clavier physique, je laisse comme cela, encore merci pour ces infos !
 
L'afficheur IRS "EFDE" est terminé, assemblé et testé.

irs_ef10.jpg


Avant sa mise en boutique, il faut que je finisse le script pour Prosim, que je fasse une doc et enfin une vidéo de paramétrage avec Prosim.

Je le proposerai, seul, assemblé et testé, avec son câble pour IO32 et option digit et une version avec sa face avec filtre teinté (fumé, rouge, vert ou orange)

La suite la semaine prochaine ;)

Fabien
 
L'afficheur IRS et ces accessoires sont dans ma boutique, saisir "IRS" dans la zone de recherche
https://efde.fr/index.php

En testant le script SIOC avec Prosim, il s'avère que celui-ci et trop "simpliste".

L'affichage ne correspond pas à ce qu'affiche Prosim ...

J'ai donc légèrement modifié le script pour avoir quelque chose de plus approchant ...

Résultat en Vidéo :



Et le script qui va bien :

IMPORTANT : Il faut déclarer plusieurs format d'affichage, et donc il y a plusieurs ligne de déclaration pour un même afficheur, avec des t'ailles différentes et des premiers digits différents, j'ai indiqué par des étoiles dans la remarque en fin de ligne quel sont les digits à déclarer ...

Code:
// EFDE 15/01/2020
// Author Fabien Deheegher

// declarer ci-dessous l'afficheur de droite
Var 0702, name IRS_R_1, static, Link IOCARD_DISPLAY, Device 0, Digit 1, Numbers 6     // IRS's RIGHT DISPLAY DIGITS -******
Var 0704, name IRS_R_1_R3, static, Link IOCARD_DISPLAY, Device 0, Digit 1, Numbers 3     // IRS's RIGHT DISPLAY DIGITS ----***
Var 0706, name IRS_R_1_L4, static, Link IOCARD_DISPLAY, Device 0, Digit 4, Numbers 4     // IRS's RIGHT DISPLAY DIGITS ****---
Var 0712, name IRS_EW, static, Link IOCARD_DISPLAY, Device 0, Digit 7, Numbers 1     // IRS's EAST&WEST DIGIT *------

// declarer ci-dessous l'afficheur de gauche
Var 0716, name IRS_L_1, static, Link IOCARD_DISPLAY, Device 0, Digit 9, Numbers 5     // IRS's LEFT DISPLAY DIGITS -*****
Var 0718, name IRS_L_1_R4, static, Link IOCARD_DISPLAY, Device 0, Digit 9, Numbers 4     // IRS's LEFT DISPLAY DIGITS --****
Var 0720, name IRS_L_1_L2, static, Link IOCARD_DISPLAY, Device 0, Digit 13, Numbers 2     // IRS's LEFT DISPLAY DIGITS **----
Var 0724, name IRS_NS, static, Link IOCARD_DISPLAY, Device 0, Digit 14, Numbers 1     // IRS's NORTH&SOUTH DIGIT *-----

// declarer ci-dessous les sorties pour les points
Var 0794, name IRS_DOT1R, static, Link IOCARD_OUT, Device 0, Output 11     // RIGHT HALF DISPLAY: RIGHT DOT
Var 0796, name IRS_DOT2R, static, Link IOCARD_OUT, Device 0, Output 12     // RIGHT HALF DISPLAY: CENTER DOT
Var 0798, name IRS_DOT3R, static, Link IOCARD_OUT, Device 0, Output 13     // RIGHT HALF DISPLAY: LEFT DOT
Var 0800, name IRS_DOT1L, static, Link IOCARD_OUT, Device 0, Output 14     // LEFT HALF DISPLAY: RIGHT DOT
Var 0802, name IRS_DOT2L, static, Link IOCARD_OUT, Device 0, Output 15     // LEFT HALF DISPLAY: CENTER DOT
Var 0804, name IRS_DOT3L, static, Link IOCARD_OUT, Device 0, Output 16     // LEFT HALF DISPLAY: LEFT DOT

// declarer ci-dessous l'entrée TEST du selecteur IRS DISP SEL
Var 0872, name IRS_TEST_I, static, Link IOCARD_SW, Device 0, Input 0     // IRS TEST ROTARY SWITCH
    {
    CALL &IRS_Lconv
    CALL &IRS_Rconv
    }

// declarer ci-dessous les entrées du selecteur IRS DISP SEL
Var 0874, name IRS_TKGS_I, static, Link IOCARD_SW, Device 0, Input 1     // IRS TK/GS ROTARY SWITCH
    {
    CALL &IRS_Lconv
    CALL &IRS_Rconv
    }
Var 0876, name IRS_PPOS_I, static, Link IOCARD_SW, Device 0, Input 2     // IRS PPOS ROTARY SWITCH
    {
    CALL &IRS_Lconv
    CALL &IRS_Rconv
    }
Var 0878, name IRS_WIND_I, static, Link IOCARD_SW, Device 0, Input 3     // IRS WIND ROTARY SWITCH
    {
    CALL &IRS_Lconv
    CALL &IRS_Rconv
    }
Var 0880, name IRS_HDGSTS_I, static, Link IOCARD_SW, Device 0, Input 4     // IRS HDG/STS ROTARY SWITCH
    {
    CALL &IRS_Lconv
    CALL &IRS_Rconv
    }


// var 700 : IRS_Rconv : conversion IRS right
// var 714 : IRS_Lconv : conversion IRS left
// Nord et Est positif
// Sud et ouest négatif

Var 0700, name IRS_Rconv, static, Link SUBRUTINE
{
  IF &IRS_TEST_I = 1
  {
    &IRS_EW = 8         // E/W-E/O OFF
    &IRS_R_1 = 888888
    &IRS_R_1_L4 = 8888
    &IRS_R_1_R3 = 888    
  }
  ELSE
  {
    IF &IRS_TEST_I = 0
    {
      IF &IRS_Rconv = -1
      {
        &IRS_EW = -999999         // OFF
        &IRS_R_1 = -999999         // OFF
    &IRS_R_1_L4 = -999999
    &IRS_R_1_R3 = -999999
      }
      ELSE
      {
    IF &IRS_WIND_I = 1 
    {
      &IRS_Rconv = &IRS_Rconv / 10
    }
        IF &IRS_Rconv < -1
        {
            IF &IRS_DOT1R = 0
            {
              &IRS_EW = -999999         // OFF
            }
            ELSE
            {
              &IRS_EW = -999996         // Ouest
            } 
            L0 = &IRS_TKGS_I OR &IRS_WIND_I
            IF L0 = 1
            {
          &IRS_R_1 = -999999
              &IRS_R_1_L4 = -999999
          &IRS_R_1_R3 = ABS &IRS_Rconv
            }
        ELSE
            {    
              &IRS_R_1 = ABS &IRS_Rconv     // LONGITUDE
        }
        }
        ELSE
        {
          IF &IRS_Rconv >= 0
          {
            IF &IRS_DOT1R = 0
            {
              &IRS_EW = -999999         // OFF
            }
            ELSE
            {
          &IRS_EW = -999997         // EAST
            }             
            L0 = &IRS_TKGS_I OR &IRS_WIND_I
            IF L0 = 1
            {
              &IRS_R_1 = -999999
              &IRS_R_1_L4 = -999999
          &IRS_R_1_R3 = ABS &IRS_Rconv
            }
        ELSE
            {    
              &IRS_R_1 = ABS &IRS_Rconv     // LONGITUDE
        }            
          }
        }
      }
    }
  }
}



Var 0714, name IRS_Lconv, static, Link SUBRUTINE
{
  IF &IRS_TEST_I = 1
  {
    &IRS_NS = 8         // NORTH OFF
    &IRS_L_1 = 88888 
    &IRS_L_1_L2 = 88
    &IRS_L_1_R4 = 88888   
  }
  ELSE
  {
    IF &IRS_TEST_I = 0
    {
      IF &IRS_Lconv = -1
      {
        &IRS_NS = -999999         // OFF
        &IRS_L_1 = -999999         // OFF
    &IRS_L_1_L2 = -999999
        &IRS_L_1_R4 = -999999
      }
      ELSE    
      {
        IF &IRS_Lconv < -1
        {
          IF &IRS_DOT1L = 0
          {
            &IRS_NS = -999999         // OFF
          }
          ELSE
          {
            &IRS_NS = 5         // SOUTH
          }          
          L0 = &IRS_TKGS_I OR &IRS_HDGSTS_I
      L0 = L0 OR &IRS_WIND_I           
          IF L0 = 1
          {
            &IRS_L_1 = -999999
            &IRS_L_1_L2 = -999999
        &IRS_L_1_R4 = ABS &IRS_Lconv
          }
      ELSE
          {    
            &IRS_L_1 = ABS &IRS_Lconv     // LATITUDE
      }
        }
        ELSE
        {
          IF &IRS_Lconv >= 0
          {
            IF &IRS_DOT1L = 0
            {
              &IRS_NS = -999999         // OFF
            }
            ELSE
            {
              &IRS_NS = -999995         // NORTH
            }             
            L0 = &IRS_TKGS_I OR &IRS_HDGSTS_I 
            L0 = L0 OR &IRS_WIND_I 
            IF L0 = 1
            {
              &IRS_L_1 = -999999
          &IRS_L_1_L2 = -999999
          &IRS_L_1_R4 = ABS &IRS_Lconv
            }
        ELSE
            {    
              &IRS_L_1 = ABS &IRS_Lconv     // LATITUDE
        }
          }
        }
      }
    }
  }
}




// Var 0806, name IRS_GPS_O, static, Link IOCARD_OUT, Device 0, Output 17     // IRS GPS INDICATOR

// Var 0882, name IRS_SYSL_I, static, Link IOCARD_SW, Device 0, Input 53     // IRS SYS DISPLAY LEFT ROTARY SWITCH

// Var 0884, name IRS_KEY1_I, static, Link IOCARD_SW, Device 0, Input 36     // IRS KEY 1 MOMENTARY SWITCH

// Var 0886, name IRS_KEY2_I, static, Link IOCARD_SW, Device 0, Input 44     // IRS KEY 2N MOMENTARY SWITCH

// Var 0888, name IRS_KEY3_I, static, Link IOCARD_SW, Device 0, Input 42     // IRS KEY 3 MOMENTARY SWITCH

// Var 0890, name IRS_KEY4_I, static, Link IOCARD_SW, Device 0, Input 38     // IRS KEY 4W MOMENTARY SWITCH

// Var 0892, name IRS_KEY5_I, static, Link IOCARD_SW, Device 0, Input 40     // IRS KEY 5H MOMENTARY SWITCH

// Var 0894, name IRS_KEY6_I, static, Link IOCARD_SW, Device 0, Input 46     // IRS KEY 6E MOMENTARY SWITCH

// Var 0896, name IRS_KEY7_I, static, Link IOCARD_SW, Device 0, Input 43     // IRS KEY 7 MOMENTARY SWITCH

// Var 0898, name IRS_KEY8_I, static, Link IOCARD_SW, Device 0, Input 37     // IRS KEY 8S MOMENTARY SWITCH

// Var 0900, name IRS_KEY9_I, static, Link IOCARD_SW, Device 0, Input 45     // IRS KEY 9 MOMENTARY SWITCH

// Var 0902, name IRS_KEYENT_I, static, Link IOCARD_SW, Device 0, Input 47     // IRS KEY ENT MOMENTARY SWITCH

// Var 0904, name IRS_KEY0_I, static, Link IOCARD_SW, Device 0, Input 39     // IRS KEY 0 MOMENTARY SWITCH

// Var 0906, name IRS_KEYCLR_I, static, Link IOCARD_SW, Device 0, Input 41     // IRS KEY CLR MOMENTARY SWITCH
 
Retour
Haut