Lycée Gustave EIFFEL Année 1999/2000
PROJET DE DEUXIÈME ANNÉE DE T.S. INFORMATIQUE INDUSTRIELLE
Simulateur de Vol pour l’Armée de l’Air (CIRPA).
Voir quelques exemples de fenêtres Windows & Le Vol d'essai
Informations au 12/12/2001, puis au 27/09/2008.
Le projet s'est concrétisé par la mise en place d'un cockpit aimablement fournit par un constructeur d'avion de la région Dijonnaise. Le projet de BTS a donc été repris pour l'année scolaire 2000 / 2001, avec les vraies commandes de l'avion.
Ce cockpit a été intégré au stand de présentation de l'Armée de l'air lors de la Foire Commerciale du Creusot 2001.
Le club aéronautique de Longvic est intéressé par la version mobile du simulateur.
Une troisième année de projet est ammorcée, avec la réalisation du cockpit mû par les vérins qui assurent les mouvements de Roulis et de Tangage. Cela s'est déroulé au cours de l'année scolaire 2001 / 2002.
Cahier des charges
1. Présentation du projet
1.1. Objectifs
Permettre à un jeune de découvrir les actions correspondantes aux commandes de vol d’un avion.
En utilisant une cabine d’avion de tourisme ou d’ULM mono ou biplace, il s’agit d’utiliser les vraies commandes d’un avion pour piloter le logiciel Flight Simulator, de projeter sur un écran géant le paysage et d’accompagner les actions et réactions de l’appareil par des mouvements de la cabine à l’aide de vérins.
Dans un premier temps, pour se dissocier des impératifs matériels liés à la disponibilité d’une cabine d’avion et à la réalisation de la plate-forme animée, nous allons procéder à la mise en œuvre d’un prototype constitué d’un modèle réduit d’avion mû par deux servo-moteurs électriques miniatures. Le principe de fonctionnement étant identique.
1.2. Contexte retour à la page d'accueil
Cadre : projet commandé par l’Armée de l’Air.
Délais de réalisation : de la semaine 1 à la semaine 20 de 2000
Investissement : 20 000F, à la charge de Sponsors tels que le Crédit Agricole, … ( Toutefois une participation financière significative, à l’achat de composants demeure réalisable )
Equipe de développement : 4 étudiants par groupes de 2 au plus
Professeurs responsables : Mme Romain et M. Domagala
1.3. Champs technologiques couverts
Informatique "Temps réel", communication, automatismes, micro-contrôleurs & multimédia.
2. Expression du besoin retour
Cette présentation restitue la chronologie de l’avant projet, des réunions d’information et une visite destinée à démontrer la faisabilité ont eu lieu en Octobre et Novembre 1999. L’enthousiasme et l’implication sont de rigueur.
2.1. Configuration matérielle, évolution du projet
Plan général du simulateur de vol aérien, première ébauche.
a) dispositions provisoires envisagées :
La barrière optique de protection est constituée de 4 capteurs à infrarouge et une protection supplémentaire à l’aide d’un grillage empêche tout contact avec les vérins.
Un bouton d’arrêt d’urgence assure une sécurité de fonctionnement minimale.
Les mouvements sont générés par des vérins (asservissement de position).
Le vérin placé longitudinalement assure le mouvement de tangage.
Le vérin placé transversalement assure le mouvement de roulis.
Le PC est placé à l’arrière de la cabine et ses cartes vidéo permettent une sortie vers le projecteur RVB et aussi vers un écran VGA dans la cabine.
Une carte " EPIC " permet l’acquisition des commandes de vol Analogiques ou TOR ainsi que les sorties Analogiques ou TOR.
Le dispositif mécanique destiné à assurer les mouvements supporte la cabine à deux places.
Des boutons accessibles au co-pilote permettent la configuration du Vol.
b) Description du mécanisme retenu pour le simulateur retour à la page d'accueil
Ce simulateur de Vol doit restituer les mouvements d'un avion fidèlement, comme ils se présentent sur un logiciel de simulation du commerce avec toutefois une limitation dans l'amplitude de ces derniers. Dans un premier temps, l'élévation ou la perte d'altitude ne sont pas envisagés (Looping et autres acrobaties ne sont pas non plus envisagés). Il reste tout de même le Roulis et le Tangage que nous expliquerons plus loin dans l'exposé (+/- 45 degrés dans ces inclinaisons). Pour permettre de restituer ces mouvements il faut placer au centre de gravité de l'appareil ( ou pas très loin ) une liaison sphérique qui supportera ce dernier et réaliser les rotations de Roulis et de Tangage grâce à deux vérins placés respectivement dans les sens transversal et longitudinal. |
c) Mise en évidence des mouvements de Vol
Ces trois schémas résument assez bien les effets des trois principaux dispositifs de commande directionnelle sur un avion. 1) La profondeur ou montée/descente est assurée par le fait que le pilote pousse le manche en avant ou qu'il le tire vers lui. Ceci est une Cde progressive qui doit se traduire par une acquisition analogique sur un simulateur de Vol (c'est le Tangage). 2) Le virage est assuré par le fait que le pilote penche vers la gauche ou la droite le manche qui est toujours placé devant lui. Ceci est une Cde progressive qui doit se traduire par une acquisition analogique sur un simulateur de Vol. 3) La gouverne a deux utilisations : · Guidage de l'appareil au sol, |
2.2. Missions du système (dans le cas du prototype mû par deux servo-moteurs) retour
Le système doit remplir les missions suivantes :
Affichage sur écran géant du paysage et du tableau de bord sur écran VGA,
Acquisition des commandes de vol,
Génération des mouvements de tangage et de roulis,
Synchronisation des événements " Flight Simulator 95 " et des mouvements cabine,
Détachement du logiciel de simulation d’avec les actionneurs pour des besoins de mise au point ou de présentation par un instructeur,
Raccourcis clavier pour la configuration du Vol.
Lien
vers la page éditée par M. Adam Szofran
... Autre lien
2.3. Sous-systèmes retour à la page d'accueil
Le système peut être décomposé en 4 sous-systèmes :
PC multimédia pour le jeu,
Système de projection sur écran géant,
Module supplémentaire pour l’obtention des grandeurs physiques du vol (DLL),
Module d’acquisition des commandes du manche et des Palonniers et élaboration des ordres aux servomoteurs.
Les échanges entre les sous-systèmes sont les suivants :
Actionneurs retour
2.4. Le prototype et ses instruments
2.4.1 Représentation à main levée du dispositif matériel
Un avion modèle réduit d’un mètre d’envergure environ fixé par une liaison sphérique en son centre de gravité est mû par deux servo-moteurs. Le projecteur et son écran affichent le paysage, alors qu’un écran VGA placé dans le cockpit de la vraie cabine affiche le tableau de bord de Flight Simulator et les grandeurs du Vol aérien.
2.4.2 Liste du matériel nécessaire à cette réalisation
Une rotule sphérique,
Un avion modèle réduit,
Deux servo-moteurs miniatures,
Un projecteur RVB + écran,
Une carte vidéo AGP 1 pour l’écran géant,
Une carte vidéo 2 pour l’écran VGA du poste de pilotage ( tableau de bord ),
Un PC Pentium III ou plus ( peut-être bi-processeur ), équipé de plus de 64 Mo de SDRAM, d’un DD de 10 Go, …
Un système d’exploitation NT ou Windows 98,
Une plate-forme de développement BORLAND C/C++ 3.11 au minimum,
Un exécutif "Temps Réel" ou des Threads,
Le Software Developpement Kit FS 95 de MICROSOFT et sa documentation,
Le jeu Flight Simulator FS 95 et sa documentation,
Une carte EPIC avec ses modules d’acquisition ( entrées TOR et Analogiques ) et ses modules de commandes des actionneurs ( sorties TOR et Analogiques ),
Une rampe d’interrupteurs ou de Boutons Poussoirs (10 environ ),
Un Joystick simple ou a retour de force pour FS 95 ( 2 potentiomètres pour le roulis et le tangage + deux potentiomètres pour les palonniers Droit et Gauche + un bouton poussoir de Cde des freins comme le " ; " du clavier pour FS 95 ),
Des câbles et des connecteurs ainsi que de la filerie,
Des matériaux d’assemblage et de la visserie,
Une documentation technique sur les bases de l’apprentissage du Vol aérien,
.
2.4.3 Réalisation de la Maquette du simulateur retour
Une fois que l’approvisionnement en matériel sera complet, nous procéderons à l’assemblage et aux réglages de la partie opérative. Ce travail ne fait pas partie du thème de BTS et il sera assuré par des intervenants extérieurs ou des étudiants en dehors des heures d’enseignement.
Les tests des parties opératives seront réalisés avant le 1er Janvier 2000, voici le planning prévisionnel
2.4.4 Approche systémique et Schéma Fonctionnel Associé à la Fonction d’Usage
Le simulateur calcule en permanence les mouvements de l’appareil virtuel et affiche le paysage constamment remis à jour ainsi que les instruments de bord en "temps réel",
Le simulateur commande les actionneurs de tangage et de roulis qui agissent sur la cabine où sont installés les deux passagers,
Le simulateur émet un bruitage correspondant aux différentes phases du Vol (régime moteur, envol, …),
Le pilote actionne les commandes de Vol qui sont acquises par le système, il perçoit les informations de Vol et suit les consignes verbales de l’instructeur,
L’instructeur est un second pilote qui peut aussi agir sur des commandes annexes destinées à placer le pilote dans des configurations prédéfinies ( Atterrissage, décollage, … ),
Le public placé autour du stand d’exposition voit le paysage défiler sur l’écran géant et entend le bruitage réalisé par le simulateur, il voit aussi le poste de pilotage animé de mouvements et les deux personnes à son bord.
Schéma fonctionnel associé à la fonction d’usage : retour à la page d'accueil
Les Fonctions principales :
F.P. 1 : Par l’intermédiaire du PC et de son lecteur de CDROM, le jeu se déroule en répondant aux commandes fournies par les quatre potentiomètres du Joystick ( ou de l’appareil ) et les boutons poussoirs du Joystick ( ou de la cabine ). La mise en route du jeu est classique et fait appel aux périphériques bien connus ( clavier et souris ). Les sorties vidéo " paysage " et " tableau de bord " sont envoyées sur les écrans correspondants.
F.P. 2 : Ce module logiciel "Temps Réel" acquiert les entrées Analogiques de pilotage et aussi les valeurs des variables logicielles d’angle de roulis et de tangage. En fonctionnement " simulateur ", les ordres calculés correspondent aux informations d’angle délivrées par le manche et corroborés par les valeurs des variables correspondantes de FS 95. Si une manœuvre imprévue entraîne l’appareil en vrille par exemple, les angles sont alors à l’extérieur de l’intervalle de +/- 45 Degrés permis mécaniquement et une limitation logicielle est aussitôt calculée.
En fonctionnement " prise en main ou MANUEL ", la commande des servo-moteurs est dissociée de FS 95 et seul les entrées analogiques délivrées par le manche permettent de calculer les ordres donnés aux servo-moteurs.
F.P. 3 : C’est le Software Developpement Kit de FS 95 qui permet de récupérer les valeurs des angles calculés par FS 95 et de les transmettre à la fonction F.P. 2.
2.4.5 Décomposition des Fonctions Principales en Fonctions Secondaires retour
2.5. Fonctions majeures et contraintes d'utilisation
2.5.1. Mise en œuvre et tests des fonctions vidéo et audio, tests des raccourcis clavier et du jeu de FP 1
Réf. |
Fonction |
Description |
Contrainte |
|||
FS 11 FS 12 |
Affichage vidéo |
Mise en service des cartes avec leurs Drivers |
Vitesse d’exécution des programmes suffisante avec une résolution adaptée. |
|||
FS 14 FS 15 |
Périphériques audio et de stockage |
Installation et tests du CDROM et de la carte son, avec tests audio. |
Fiabilité et qualité des sons, avec des équipements de sonorisation HiFi. |
|||
FS 11 |
Projecteur RVB + écran |
Mise en service du projecteur et de l’écran |
Relevés des contraintes d’éclairement ambiant, selon les lieux d’exposition. |
|||
FS 13 |
Le jeu FS 95 |
Installation et tests du jeu avec choix de l’appareil, des options adaptées aux conditions du simulateur. |
Rédaction d’une documentation technique regroupant tous les choix et des procédures de mise en œuvre sur site. |
|||
FP 1 |
Animer en gérant les parties audio, vidéo du simulateur de Vol |
Cœur de l’animation, il calcule toutes les trajectoires de l’avion et réalise les aspects scéniques. |
En continu ou " Temps réel ", Yapluka … |
|||
2.5.2. Développement et tests des Fonctions Secondaires de FP 2 retour
Réf. |
Fonction |
Description |
Contrainte |
FS 31 |
Acquisition des valeurs à l’instant t contenues dans les variables d’angle de roulis et de tangage du simulateur de Vol |
A l’aide du SDK de FS 95, il convient d’intégrer au programme une partie acquisition logicielle pour les angles de roulis et de tangage |
Dépouiller la documentation et extraire les données utiles à cette application, dans les contraintes de temps imposées par le simulateur. |
FS 32 |
Test des valeurs acquises et transmission |
Il convient de vérifier que les valeurs d’angle sont comprises dans une plage admissible par le simulateur et de les passer au calculateur FP 2 |
Contraintes de temps, imposées par le tic de 20 millisecondes environ |
FP 3 |
Transmettre les valeurs représentatives du pilotage de l’appareil virtuel au module de commande Fp 2 |
Interface logiciel entre la boîte noire FS 95 et le module de commande à développer |
Yaka … |
2.5.3. Contrôle et supervision
Réf. |
Fonction |
Description |
Contrainte |
FS 21 |
Acquisition des signaux analogiques issus du Joystick |
Traiter les valeurs de profondeur et de roulis, pour qu’elles puissent être interprétées par le module de calcul FS 24 |
Développement avec les drivers EPIC et leurs librairies Respect de la contrainte TIC |
FS 22 |
Acquisition des signaux Tout Ou Rien issus du Joystick |
Traiter les entrées TOR en affectant les variables de valeurs binaires, pour qu’elles puissent être interprétées par le module de calcul FS 24 |
Développement avec les drivers EPIC et leurs librairies Respect de la contrainte TIC |
FS 23 |
Acquisition des informations SDK |
Affectation de variables d’angle |
Respect de la contrainte TIC |
FP 2 |
Calcul des commandes à envoyer aux servo-moteurs |
Reçoit les ordres et les paramètres pour calculer les consignes de position à délivrer aux servo-moteurs |
Respect de la contrainte TIC |
3. Exigences qualité retour
3.1. Exigences qualité du logiciel
Le logiciel de simulation avec commande des servo-moteurs doit être :
• maniable, c'est-à-dire facile d'emploi pour l'opérateur, avec une interface homme machine sous la forme de fenêtres d'affichage et de boîtes de dialogue;
• robuste, en conservant un fonctionnement conforme aux besoins lors d'une reprise après arrêt normal ou d'urgence, et en assurant le contrôle de la validité des données;
• sécurisé par la disponibilité et la continuité des traitements;
• maintenable, en offrant une grande facilité de localisation et de correction des erreurs résiduelles, ainsi que d'ajout ou de retrait de fonctionnalités.
Tous les logiciels relatifs à l'application doivent être livrables sur supports de stockage autonomes.
3.2. Exigences qualité du développement retour à la page d'accueil
En ce qui concerne les exigences qualité du développement :
• la modélisation du logiciel de simulation avec commande des servo-moteurs doit être réalisée avec la méthode SA-RT pour la spécification, et assurer un passage traçable à la conception;
• la modélisation SA-RT doit être réalisée avec AGL;
• l'architecture du logiciel de commande des servo-moteurs doit être multitâche "temps réel" ou Threads;
• le codage doit respecter le standard de codage C/C++ en cours dans la section;
• la chaîne de production des exécutables doit être réalisée avec BORLAND;
• la réalisation de toute interface matérielle additionnelle doit respecter les normes de représentation en vigueur.
3.3. Exigences sur la documentation retour
Les exigences qualité à respecter, relativement aux documents, sont :
• sur leur forme : respect de normes et de standards de représentation, maniabilité, homogénéité, lisibilité, maintenabilité;
• sur leur fond : complétude, cohérence, précision .
3.4. Exigences sur la livraison
Les produits livrables du projet sont :
• la documentation;
• les codes sources et exécutables de l'application, ainsi que les fichiers de type makefile.
La documentation livrable du projet doit être composée :
• d'un dossier technique n'excédant pas 50 pages de texte;
• d'annexes techniques séparées concernant les documents constructeurs et les références fournisseurs des parties opératives, de la cible d'implémentation, les sources et les fichiers makefile;
• d'un manuel d'installation et de mise en œuvre n'excédant pas 15 pages;
• d'un manuel d'utilisation n'excédant pas 15 pages.
Le dossier technique comporte :
• les dossiers de spécification, de conception préliminaire, de conception détaillée;
• les dossiers de tests;
• les manuels d'installation et de mise en œuvre, d'utilisation.
Les codes sources et exécutables de l'application, ainsi que les fichiers de type makefile, doivent être livrés sur supports autonomes (disquettes, bande magnétique).
A des fins d'évaluation lors de la soutenance du projet, chaque étudiant doit indiquer explicitement les parties qu'il a personnellement réalisées dans les différents documents. Il convient d’y ajouter un Planning des différents travaux réalisés aussi bien pour le groupe qu’individuellement.
3.5. Exigences sur l'environnement d'exploitation
En ce qui concerne l'exploitation :
• Le PC de gestion logicielle du simulateur sera placé prés de la maquette;
• Il faut prévoir une entrée TOR destinée à acquérir l’information " Arrêt d’Urgence " et une autre pour la détection d'une présence humaine dans le périmètre de sécurité des parties opératives qui doivent entraîner l'arrêt de fonctionnement.
Base de documentation aimablement fournie par l’Armée de l’Air lors de la visite :
Subject : EPIC driver for Win95, 48 pages
EPIC95 : Data from FS98 to EPIC, 18 pages
Configuring Microsoft Flight Simulator 98 Controls, 8 pages
FS98 (FS6.1) state data structure, 4 pages
WidevieW Version 98 3.0, 32 pages
Assistance technique pour ce Thème disponible auprés d’un concepteur de simulateurs.
Bibliographie :
Documentation Microsoft Flight Simulator pour Windows 95,
Documentation BORLAND,
Documentation MTR 86,
Nombreux articles d’une revue d’aviation civile,
Cours et Travaux Dirigés portant sur ce Thème,
Accès à Internet sur les postes 2,3 &4 du Lycée Gustave EIFFEL,
…
courrier electronique
Page réalisée le 30 décembre 1999, par Gilles Domagala et Mise à Jour le 10 Décembre 2001.