• 8 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 05/12/2019

Utilisez la démarche d'analyse

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Méthodologie

Introduisons tout d'abord les aspects méthodologiques essentiels liés à ce cas. Les composantes méthodologiques principales utilisées pour développer des systèmes embarqués critiques sont similaires à ce que vous avez vu dans les cours précédents :

Les activités et les étapes du processus sont toutefois structurées et documentées formellement, afin de produire tous les éléments de preuve relatifs à la sûreté de fonctionnement exigée du système.

Processus

Exemple
Processus de développement d'un système embarqué critique

Les processus sont intégrés au sein d'un processus global, adapté au développement matériel et logiciel de notre système. Les résultats de fiabilité et de sécurité complètent les exigences fonctionnelles. Les règlements, normes et standards applicables font également partie intégrante des données d'entrées du développement. Couplés aux exigences de sûreté de fonctionnement, ils définissent les niveaux d'assurance conception applicables aux aspects matériels et logiciels. Ils participent ainsi, en contraignant le processus lui-même, à la performance globale délivrée.

Exigences

Concernant les exigences fonctionnelles, des pratiques de plus en plus courantes consistent à exprimer ces exigences sous la forme de tests auxquels le système doit répondre. C'est une bonne pratique qui permet de clarifier et de quantifier la performance attendue au plus tôt, en caractérisant les limites acceptables.

Les exigences de haut niveau décrivent le système embarqué dans son contexte applicatif et relativement aux analyses préliminaires de sécurité du système. L'évaluation de sécurité au niveau du calculateur et de l'impact sur l'implémentation fournit un ensemble d'exigences dérivées à atteindre.

Itérativité

Exemple sur l'itérativité
Itérativité entre les analyses

Ce processus qui mêle l'analyse réalisée au niveau calculateur et celle réalisée au niveau système est itératif afin de stabiliser un partitionnement et des performances acceptables technologiquement et économiquement, sans déroger sur la sûreté de fonctionnement globale.

D'un point de vue processus, un ensemble d'activités est ainsi réalisé en début de projet pour amener une première valeur stable sur laquelle pourront se baser les futurs développements.

Processus initial

Au niveau de notre calculateur, les activités du processus initial concernent :

  • la stratégie de développement du produit complet et de ses composantes matérielles et logicielles ;

  • une analyse préliminaire de sûreté de fonctionnement ;

  • l'identification d'un ensemble d'exigences applicables ;

  • les contraintes d'implémentation et de partitionnement de niveau calculateur ;

  • une architecture de haut niveau du calculateur avec une identification des principaux composants à implémenter ;

  • un prototypage fonctionnel du calculateur dans un environnement simulé représentatif ;

  • la planification des incréments de valeur à obtenir, à intégrer et à délivrer régulièrement.

Développement continu

Cette base étant posée, le développement simultané des parties matérielles et programmables du système peut être conduit. Cette base facilite la synchronisation des développements en fonction des priorités établies avec le client, l'intégration des composants matériels, logiciels, matériels et logiciels et en relation avec les aspects de sûreté de fonctionnement et la livraison régulière des fonctions de service.

Ces considérations sont à associer à la stratégie de vérification et de validation du système et aux aspects transverses de traçabilité et de gestion de configuration. Il apporte au plus tôt, à toutes les parties, des informations précieuses de performance permettant d'anticiper et d'organiser des actions d'amélioration avant la livraison finale du produit. Il augmente le degré de confiance du produit et participe à obtenir un niveau de maturité et de fiabilité élevés au plus tôt de son cycle de vie.

Analyse préliminaire

Le système de commande de vol étudié dans ce cas est parmi les systèmes embarqués les plus complexes à développer.

Volets d'avion
Volets d'avion - Source Adobestock

Pour manœuvrer un avion en vol, on dispose de surfaces mobiles sur lesquels on peut agir (becs, volets...). En fonction de l'orientation de ces surfaces à l'air (leur braquage), l'avion peut être contrôlé en roulis, tangage et lacet. Ce sont des actionneurs (des servocommandes) qui permettent de modifier l'angle de braquage des gouvernes.

Exemple d'illustration
Interactions du système ADIRS

Les informations de l'environnement extérieur (comme la pression, la température), l'état de l'avion relativement à l'air (comme sa vitesse, son altitude, son inclinaison) et son état relativement au sol (comme sa position, sa trajectoire, son orientation) sont centralisés au sein d'un système spécifique appelé ADIRS (pour Air Data and Inertial Reference System).

Des accéléromètres placés à divers endroits de l'avion et des gyroscopes de type rate_gyro sont également utilisés pour déterminer le comportement de l'avion et les charges qui s'appliquent à lui. Les informations de gestion du vol sont données aux pilotes dans le cockpit à travers un ensemble d'écrans, voyants et signaux audio.

Reprenons un peu de recul et observons l’environnement pouvant agir sur le système et, par ricochet, sur notre calculateur.

Exemple d'illustration
Exemple de mode d'action de phénomènes météorologiques sur l'avion

Les phénomènes météorologiques font partie des éléments pouvant intervenir dans le confort des passagers. Leurs impacts font l’objet d’analyses rigoureuses par les équipes techniques. En effet, une conception inadaptée peut porter de graves préjudices aux personnes. Les impacts peuvent, dans des cas extrêmes, entraîner leur décès.

La conception a pour objectifs de réduire ces risques pour l’avion et limiter les désagréments pour les passagers afin de leur faire vivre une expérience réussie du vol, dans la douceur et la fluidité ressenties des mouvements de l’appareil.

Contraintes sur la structure de l'avion
Contraintes sur la structure d'un avion

Une rafale de vent ou des turbulences vont immédiatement contraindre la structure de l'avion. Ces perturbations vont être matérialisées par des charges qui vont s'appliquer sur les éléments de la structure mécanique. Elles vont provoquer une variation de l'état courant de l’appareil et de sa trajectoire instantanée. Les capteurs vont détecter ces variations physiques et les transmettre en temps réel au système de commande de vol.

En l'absence de gestion spécifique par les systèmes avion, ces perturbations sont perçues par les pilotes qui réagissent en conséquence.

L’impact de ces phénomènes météorologiques sur la trajectoire d’un aéronef est traité par le système de commande du vol de l'appareil. Cherchant à gagner en masse, nous formulons l’exigence que les commandes de nos actionneurs seront électriques. Ce ne sera donc pas une action mécanique qui commandera le déplacement des surfaces mobiles, mais un signal électrique.

Le traitement de ces informations par l'électronique de bord a pour objectif principal de mesurer leurs natures et leurs niveaux puis de réagir pour conserver l'intégrité de l'appareil, des passagers et permettre la réalisation de la mission (à savoir arriver à destination avec les passagers sains et saufs). C'est le système de commande de vol électrique qui va intégrer ces paramètres.

En reprenant les propos du module de sûreté de fonctionnement, nous prévoyons 4 calculateurs de commande de vol pour contrôler les servocommandes des gouvernes de profondeur G/D. Nous avons 2 calculateurs primaires (P1 et P2) et 2 calculateurs secondaires (S1 et S2) :

  • le calculateur primaire P1 pilote la première servocommande de chaque gouverne. La gouverne est alimentée par un circuit hydraulique dédié ;

  • le premier calculateur secondaire, en backup du calculateur primaire, pilote la même servocommande ;

  • en cas de problème sur une servocommande ou sur le circuit hydraulique, un deuxième ensemble "calculateur primaire et secondaire, servocommande, circuit hydraulique" est prévu côté gauche comme côté droit.

Un seul calculateur de commande des servocommandes est actif en permanence au niveau système. Les autres sont en stand-by, c'est-à-dire que leurs sorties de pilotage sont non activées. Les servocommandes non opérantes sont dans un mode amorti. Elles suivent passivement les déplacements de la gouverne à laquelle elles sont raccordées et amortissent les oscillations de la gouverne sur laquelle elles sont attachées.

Exemple d'illustration
Éléments du système de commande de vol
Schéma de synthèse
En synthèse...

Une vue simplifiée montre les principaux éléments de la chaîne fonctionnelle de ce système. Les calculateurs de commande de vol vont piloter les actionneurs selon des lois qui lui sont dédiées.

Schéma d'illustration de notre exemple
Chaîne fonctionnelle

Leur sélection dépend du niveau courant applicable de l'enveloppe autorisée de vol (normal, alternatif ou direct, par exemple).

Schéma
Relations entre les constituants du système

Le problème, ainsi posé, nous permet de schématiser les entrées/sorties du système de la façon suivante :

  • consignes en provenance du pilote automatique ou d'un émetteur (manche ou sidestick) ;

  • informations de l'état réel de la gouverne commandée et de sa position ;

  • informations sur l'état de l'actionneur sur lequel on agit ;

  • informations additionnelles sur l'environnement extérieur, sur l'état de l'avion et les conditions applicables de pilotage ;

  • statuts d'intégrité à envoyer au cockpit, aux autres calculateurs de commande et aux actionneurs ;

  • statuts de maintenance à envoyer aux calculateurs de maintenance ;

  • données et paramètres de vol à envoyer aux enregistreurs de bord.

Différents types d'exigences

Les types d'exigences applicables à notre système sont au nombre de quatre :

  • les exigences techniques ;

  • les exigences réglementaires ;

  • les exigences supplémentaires ;

  • les exigences économiques.

L'ensemble de ces exigences cadre l'analyse préliminaire de notre système embarqué sur ce qu'il doit faire.

Exigences techniques

Les exigences techniques sont relatives aux opérations, aux fonctions et aux activités de surveillance. Elles sont liées aux missions demandées au calculateur (ici, de façon simplifiée et réductrice, actionner les gouvernes de profondeur). Elles sont liées aux moyens nécessaires pour réaliser ces missions (activer un relais, envoyer un message, stocker des données...), aux activités de supervision, de contrôle de son intégrité (comparer des signaux, valider une sortie, signaler une défaillance), aux performances et aux comportements attendus.

Les exigences telles que les lois de commande applicables, le comportement temps réel attendu, les exigences d'interface mécanique, électrique, de communication sont des exemples complémentaires de ce qui est attendu à ce niveau.

Temps réel

Le comportement temps réel d'un tel calculateur est essentiel pour l'avion. Ce n'est pas tant la rapidité du temps de traitement qui est en jeu. En effet, le temps de traitement de l'information, de vérification de son intégrité et d'envoi de la nouvelle consigne aux gouvernes à une période de quelques millisecondes est tout à fait acceptable, du fait de l'inertie du système mécanique piloté. C'est le déterminisme des traitements, c'est-à-dire la capacité à délivrer une consigne actualisée dans un temps fini et connu à l'avance, qui est requis et qu'il nous faut garantir.

C'est donc un compromis qui devra être trouvé ici entre les parties avec des enjeux techniques, mais aussi clairement économiques et financiers. La gestion statique et dynamique des échanges des données, leur caractère urgent ou non urgent doit également être balancé.

Outre l'envoi des consignes aux actionneurs que nous allons piloter, l'intégrité des données, les alarmes vers le cockpit, la perte d'intégrité du calculateur sont par exemple des messages à envoyer de façon prioritaire. Il peut être décidé d'envoyer les messages de maintenance dès que possible mais de façon non prioritaire, sans contrainte temps réel, voire moins régulièrement. La nature des informations à traiter, leur unité, leurs plages opérationnelles, les règles d'encodage des données dans les trames doivent être décrites précisément et validées avec les équipes des calculateurs concernés. Il en va de l'interopérabilité du calculateur dans son environnement.

Exigences réglementaires
Schéma
Documents relatifs aux exigences réglementaires 

Les exigences réglementaires sont liées principalement aux aspects sécurité et sûreté fonctionnelle du calculateur. Ce sont d'un côté des exigences qualitatives et quantitatives, mais aussi des niveaux d'assurance conception applicables aux aspects logiciels et matériels du calculateur.

D'un point de vue sécurité (safety), l'ARP4761 décrit le processus d'évaluation relatif aux aspects "sécurité" du système.

Le niveau de fiabilité minimum requis, exprimé en MTBF (mean time between failure), est d'au moins 10 000 heures. Ce chiffre peut être challengé à 50 000 heures par l’utilisation de solutions technologiques récentes, par une amélioration de la fabrication des composants, et la qualité et une meilleure maîtrise des processus.

Les modes de défaillances internes du calculateur, leurs probabilités d'occurrence, le comportement attendu de ce dernier en cas de panne devront être décrits durant les phases ultérieures de conception et présentés lors de la validation.

Les exigences applicables relatives à la sûreté fonctionnelle, notamment pour sécuriser les échanges de données, peuvent être dérivées, par exemple, de la norme IEC 61513

Exigences supplémentaires

Les exigences environnementales, les standards et procédures applicables sont également analysées à ce niveau. Les gabarits et seuils opérationnels mécaniques, thermiques, fluidiques, électromagnétiques, électriques sont traités. Ils dépendent du programme avion, de la localisation géographique du calculateur et de sa criticité.

Les conditions d'essais à proposer pour la qualification environnementale de notre calculateur doivent être représentatives de son fonctionnement opérationnel. Cela donne des résultats quantifiés, cohérents et complets opposables aux tiers.

Les guides et standards spécifiques de développement applicables, relativement à un programme avion ou à un donneur d'ordre, doivent être identifiés et pris en compte pour le développement. La liste du référentiel technique livrable est identifiée et challengée.

Les exigences supplémentaires sont des contraintes liées généralement à des retours d'expérience à prendre en compte ou désirées afin d'enrichir la connaissance du comportement du système en opération. Ces exigences peuvent être également des marges opérationnelles afin de pouvoir ultérieurement mettre à jour ou faire évoluer les fonctions du calculateur, améliorer sa disponibilité opérationnelle, le rendre plus robuste à des perturbations extérieures ou à des aléas industriels (par exemple : obsolescence, lotissement des composants).

Un objectif complémentaire est exigé : le décollage de l'aéronef doit être possible avec un des calculateurs en panne ou éteint sans impacter la conformité des objectifs de sécurité. Cet objectif a pour enjeu d'améliorer la disponibilité de l'appareil en exploitation. Cela limite les possibles retards techniques suite à une panne détectée et laisse aux équipes de maintenance le temps d'organiser leur dépannage et d'intervenir, en temps masqué, pendant que l'avion n'est pas opéré.

Exigences économiques

Enfin, les exigences économiques font partie de l'analyse. Elles donnent des contraintes sur les délais de développement, de production, de maintenance par exemple et sur les coûts.

À ce titre, les architectures modulaires, reconfigurables, évolutives, réutilisables, les solutions limitant les coûts d'immobilisation, notamment d'outillages spécifiques, les produits dont la masse et le volume ont été améliorés apportent un bénéfice supplémentaire immédiat pour l'avionneur. Ils constituent des éléments différenciants forts sur le marché.

Pour finir, il devra être démontré lors de la validation que les résultats obtenus à l'issue du développement sont compatibles avec les exigences exprimées. L'architecture du calculateur, sa complexité et son coût sont ainsi une conséquence directe de ces exigences.

En résumé

Dans cette partie, nous avons compris pourquoi les systèmes critiques étaient soumis à des exigences fortes de sûreté de fonctionnement, et que celles-ci ont un impact important sur tout le développement d'un système.

Les chapitres suivants précisent certaines activités métiers nécessaires pour réaliser le développement de ces systèmes embarqués, afin de pouvoir mieux répondre aux exigences.

Exemple de certificat de réussite
Exemple de certificat de réussite