Annonce

Réduire
Aucune annonce.

X-Pane 10 via un Cockpit 3D HD

Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • X-Pane 10 via un Cockpit 3D HD

    Bonjour à tous,

    Je me présente, je m'appelle Damien et je suis ingénieur aéro à Airbus pour le département Simulation.
    Je travaille actuellement l'élaboration d'un cockpit 3D HD du A380 et A350.

    Je cherche à coupler ces cokpits 3D à X-plane 10. Comme décrit ci-dessous.

    Cliquez sur l'image pour la voir en taille réelle 

Nom : 		aaa.jpg 
Affichages :	1 
Taille :		16,6 Ko 
ID : 			472611

    Ma question est la suivante:
    Savez-vous s'il existe un fichier d'interface X-Plane avec toutes les variables cockpit de listées (Pusbuttons, knob etc)?

    Savez-vous si on peut agir sur la lumière d'un pushbutton (celui de la transmission VHF1 du RAIMP captain par exemple) en remote? c-à-d sans avoir
    à appuyer sur le P/B du cockpit X-plane et en passant directement par un fichier?


    J'ai cherché dans les fichiers sources et j'ai rien trouvé.

    Merci pour vos réponses!
    S'il vous voulez d'autres précisions, n'hésitez pas!

    Bonne journée!

  • #1
    Envoyé par ben15 Voir le message
    ...Je cherche à coupler ces cokpits 3D à X-plane 10. Comme décrit ci-dessous...
    Je me suis fait quelque chose comme ça, pour un cockpit "maison", mais ça revient au même. Fais toi un plug-in qui gère les communications entre X-Plane et ta black-box en utilisant les infos que l'on trouve dans : X-Plane/Resources/plugins/DataRefs.txt tout ce à quoi l'on a accès est là-dedans.

    PhM
    X-Plane 9.70 & 11.5r1 / W10 / AMD Ryzen 7 2700 / 8Go RAM / Sapphire R9 390 Nitro 8Go / Sapphire HD7870 GHz 2Go / Samsung LN40C530 / Oculus DK2 / LeapMotion / Saitek X56 / Thrustmaster Pendular Rudder

    Commentaire


    • #1
      Bonjour Damien,

      On peut coupler X-Plane à tout ce qu'on veut mais pour cela il faut utiliser un module (plugin) pour interfacer les deux cotés. Il existe déjà des plugins pour récupérer ou envoyer des données vers X-Plane comme SCS (Simulator Communication System) disponible ici :
      The universal interface to both X-Plane and Microsoft Flight Simulator

      Autrement on peut toujours créer le sien avec le Plugin SDK :


      Ce serait pour faire quoi, utiliser la partie simulation ? ne l'utiliser que comme visuel sur un simulateur existant ?

      Daniel
      Intel I5 6500 3,2 Ghz, RAM 16 Go, GeForce GTX 960 2 Go, Linux Ubuntu 18.04
      Portable Asus Intel i5 2,8 Ghz, RAM 8 Go, GeForce 840M, Windows 8.1 64bits
      #AMD II X2 245 2,9 Ghz, RAM 8 Go, GeForce GTX 650 1 Go, Linux Ubuntu 14.04
      #AMD 64x2 5200 2,6 Ghz, RAM 4 Go, GeForce 9600 GT 512 Mo, Linux Ubuntu 10.04
      #MacBook Pro 15" 2,4 Ghz, RAM 4 Go, GeForce GT 330 M 256 Mo, Mac OS 10.6

      Commentaire


      • #1
        Tout d'abord merci pour vos réponses!

        En faite, on a développé un cockpit HD pour A380 & 350 afin que les pilotes et les techniciens puissent passer des leçons (c'est de la maintenance au sol donc l'avion ne vol pas ). Ces leçons correspondent à un ATA (23, 28, 34 etc).
        On voudrai faire la même choses mais en vol cette fois si.
        Donc on aurait un cockpit ultra réaliste qu'on couplerai à l'apparence extérieur d'X-plane.
        Si on tire le sidestick vers nous (qui est situé dans le CKP HD), on verra l'avion sous X-plane prendre de l'altitude.

        J'ai tout ce qu'il me faut! a moi de faire le taf.

        Commentaire


        • #1
          A voir aussi quand on s'intéresse aux fonctions des Airbus :


          Daniel
          Intel I5 6500 3,2 Ghz, RAM 16 Go, GeForce GTX 960 2 Go, Linux Ubuntu 18.04
          Portable Asus Intel i5 2,8 Ghz, RAM 8 Go, GeForce 840M, Windows 8.1 64bits
          #AMD II X2 245 2,9 Ghz, RAM 8 Go, GeForce GTX 650 1 Go, Linux Ubuntu 14.04
          #AMD 64x2 5200 2,6 Ghz, RAM 4 Go, GeForce 9600 GT 512 Mo, Linux Ubuntu 10.04
          #MacBook Pro 15" 2,4 Ghz, RAM 4 Go, GeForce GT 330 M 256 Mo, Mac OS 10.6

          Commentaire


          • #1
            Bonjour à toutes et à tous,

            Mon projet touche à sa fin.
            Mon couplage est en cours de validation mais j'ai une dernière question!

            Savez-vous comment on lance un plug-in en disable? c-à-d qu'il est bien présent mais non coché au lancement (j'utilise x-addon-manager pour la gestion des plug-in)!

            Pourquoi cette question?
            J'utilise le protocol UDP pour la gestion des données entre X-plane et un logiciel Airbus.
            Il faut que je lance d'abord X-plane pour lancer l'autre logiciel; mais x-plane attend des données en réception... donc x-plane ne se lance pas... J'ai contourné ce problème mais c'est de la bidouille.
            Du coup j'aimerais lancer mon plugin une fois l'autre logiciel démarré.

            si vous avez des questions au sujet de l'udp avec X-plane, je suis ouvert. Maintenant que ça marche!!!

            Merci pour toutes réponses que vous m'apporterez.

            Commentaire


            • #1
              Ton plug-in est un plug-in maison ?
              Si c'est le cas tu devrais pouvoir gérer la communication, par défaut arrêtée puis lancée soit par le menu soit par un raccourci.

              Daniel


              PS: si tu peux ce serait sympa de mettre une ou deux photos
              Intel I5 6500 3,2 Ghz, RAM 16 Go, GeForce GTX 960 2 Go, Linux Ubuntu 18.04
              Portable Asus Intel i5 2,8 Ghz, RAM 8 Go, GeForce 840M, Windows 8.1 64bits
              #AMD II X2 245 2,9 Ghz, RAM 8 Go, GeForce GTX 650 1 Go, Linux Ubuntu 14.04
              #AMD 64x2 5200 2,6 Ghz, RAM 4 Go, GeForce 9600 GT 512 Mo, Linux Ubuntu 10.04
              #MacBook Pro 15" 2,4 Ghz, RAM 4 Go, GeForce GT 330 M 256 Mo, Mac OS 10.6

              Commentaire


              • #1
                Envoyé par ben15 Voir le message
                ...Savez-vous comment on lance un plug-in en disable? c-à-d qu'il est bien présent mais non coché au lancement ...
                Je fais ça dans mes plug-ins, je suis au boulot donc je t'envoie la réponse ce soir à la maison.

                PhM
                X-Plane 9.70 & 11.5r1 / W10 / AMD Ryzen 7 2700 / 8Go RAM / Sapphire R9 390 Nitro 8Go / Sapphire HD7870 GHz 2Go / Samsung LN40C530 / Oculus DK2 / LeapMotion / Saitek X56 / Thrustmaster Pendular Rudder

                Commentaire


                • #1
                  Merci pour vos réponse, je vous envoie deux vidéos demain pour illustrer mon travaille!
                  J'ai des gros problèmes de latence lorsque mon cockpit 3D envoie des données vers x-plane.

                  Commentaire


                  • #1
                    Envoyé par ben15 Voir le message
                    ...J'ai des gros problèmes de latence lorsque mon cockpit 3D envoie des données vers x-plane.
                    Tu veux dire que ça ralenti X-Plane ?

                    PhM
                    X-Plane 9.70 & 11.5r1 / W10 / AMD Ryzen 7 2700 / 8Go RAM / Sapphire R9 390 Nitro 8Go / Sapphire HD7870 GHz 2Go / Samsung LN40C530 / Oculus DK2 / LeapMotion / Saitek X56 / Thrustmaster Pendular Rudder

                    Commentaire


                    • #1
                      Alors!
                      Voici l'illustration, en vidéo, de la communication d' X-plane vers mon Cockpit 3D.
                      J'extrais la valeur du régime moteur pour l'afficher sur mon cockpit. --> OK ça fonctionne sans latence.
                      Vidéo : http://www.mediafire.com/download.php?4ro7sxv9vl9e4t4

                      Maintenant voici la communication de mon cockpit vers X-Plane.
                      Le but étant de modifier la valeur des throttles (X-plane) via les throttles de mon cockpit.
                      Vous verrez dans la vidéo, il y a une latence que je n'arrive pas à résoudre.
                      Vidéo : http://www.mediafire.com/download.php?btt43ilpbi5o1wh

                      Voici le code X-plane de réception : Prototype_Set_V1.0.txt
                      Voici la S-function d’émission (C embarqué pour simulink): S_Sender.txt

                      Le simple time de mon plugin et de mon modèle sont de 2ms.
                      Mon modèle cockpit est développé en simulink.


                      Si vous avez une idée, n’hésitez pas!!!
                      Dernière modification par ben15, 07 mars 2013, 17h59.

                      Commentaire


                      • #1
                        Envoyé par ben15 Voir le message
                        ...
                        Maintenant voici la communication de mon cockpit vers X-Plane.
                        Le but étant de modifier la valeur des throttles (X-plane) via les throttles de mon cockpit.
                        Vous verrez dans la vidéo, il y a une latence que je n'arrive pas à résoudre.
                        ...
                        Bah ?! C'est même pas un retard, c'est la concierge qui est au chiottes et prend son temps pour en sortir . Je dis la concierge parce qu'un monsieur Ziegler avait dit que sa concierge pouvait piloter ses Airbus.

                        Bon, je regarde les deux fichiers, voir si j'ai une idée.

                        PhM


                        Edit :

                        Pourquoi effacer ce que XPLMGetDatavf a lu avec un memset(Throttle_ini, 0, sizeof(Throttle_ini)); ? Si tu veux seulement écrire pas besoin de le lire. Accessoirement, un memset pour huit floats c'est pas le plus optimal, écris des 0.0f directement dans ton tableau.

                        Utilise des sockets non-blocking :

                        SocketId = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);

                        unsigned long NonBlocking = 1;
                        int Result = ioctlsocket(SocketId,FIONBIO,&NonBlocking);
                        if(Result == SOCKET_ERROR)
                        {
                        // error handling here
                        }

                        Il te faudra ensuite gérer ce que retournent tes recvfrom, soit une erreur, soit un nombre de bytes reçus, soit zéro.
                        Dernière modification par PhM, 08 mars 2013, 02h12.
                        X-Plane 9.70 & 11.5r1 / W10 / AMD Ryzen 7 2700 / 8Go RAM / Sapphire R9 390 Nitro 8Go / Sapphire HD7870 GHz 2Go / Samsung LN40C530 / Oculus DK2 / LeapMotion / Saitek X56 / Thrustmaster Pendular Rudder

                        Commentaire


                        • #1
                          Salut à tous, merci pour ta réponse phm!
                          Tu as raison pour le memset, du coup je l'ai supprimé.

                          Si j'ai bien compris la tâche appelante ne reste donc pas bloquée en attente d'un événement donné. Ok, je ne suis pas chez moi mais je vais tester ça.

                          J'ai effectué le test suivant:
                          J'ai créé un terminal avec Visual simulant X-plane. C-à-d, que le terminal reçoit la valeur des throttles provenant de mon Cockpit.
                          Et là!!!!!!!! ça marche impeccable. Cela voudrait dire que c'est X-plane qui réceptionne mal les données, ou peut-être une synchro mal faite?
                          Bizarre en sachant que la com X-plane vers le Cockpit 3D ce fait parfaitement et ce quelque soit le sample time.

                          Je soupçonne ma S-function...

                          Commentaire


                          • #1
                            Envoyé par ben15 Voir le message
                            ...Si j'ai bien compris la tâche appelante ne reste donc pas bloquée en attente d'un événement donné.
                            Oui, il ne doit y avoir aucun traitement lourd ou attente sur quoi que ce soit dans la flight-loop. Si les sockets ont quelque chose ils te le feront savoir, sinon pas la peine de faire quoi que ce soit, même pas de XPLMSetDatavf puisqu'on a pas de nouvelles données.

                            Envoyé par ben15 Voir le message
                            Cela voudrait dire que c'est X-plane qui réceptionne mal les données,
                            X-Plane ne reçoit rien, ce sont tes sockets à travers les recvfrom qui reçoivent les données.

                            Envoyé par ben15 Voir le message
                            ...Je soupçonne ma S-function...
                            Si c'était le cas le test avec le terminal ne marcherait pas.

                            Si recvfrom ne reçoit rien c'est soit que l'IP n'est pas la bonne, le port n'est pas le bon ou que rien n'a été envoyé. Dans le cas de la vidéo les infos envoyées sont pet-être constantes et donc nulles puisque ça reste à zéro.

                            Je suppose que tu communiques de PC à PC et qu'il n'y a donc pas de problème d'endianness ?

                            Utilise un packet sniffer pour voir ce qui transite sur le réseau.

                            PhM
                            X-Plane 9.70 & 11.5r1 / W10 / AMD Ryzen 7 2700 / 8Go RAM / Sapphire R9 390 Nitro 8Go / Sapphire HD7870 GHz 2Go / Samsung LN40C530 / Oculus DK2 / LeapMotion / Saitek X56 / Thrustmaster Pendular Rudder

                            Commentaire


                            • #1
                              Si c'était le cas le test avec le terminal ne marcherait pas.
                              Encore une fois tu as raison!

                              Je suppose que tu communiques de PC à PC et qu'il n'y a donc pas de problème d'endianness ?
                              Et non! Les tests provenant de la vidéo, ont été fait sur un seul et même PC.
                              Penses-tu que ça peut être une cause?
                              Je dois le tester de PC à PC la semaine prochaine au taf.

                              Demain, je ferai un test ou je simulerai l'envoie des données avec une console vers X-Plane, pour voir si j'ai toujours ce problème de latence.

                              Dernière chose, j'utilise une version 10.02 d'X-Plane.

                              Commentaire

                              Chargement...
                              X