MATLAB EXPO Développement de logiciels embarqués en Model-Based Design - Réf : DIS/DIF/AV/370/17/ALE - MathWorks
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
MATLAB EXPO
Développement de logiciels
embarqués en Model-Based Design
Réf : DIS/DIF/AV/370/17/ALE Auteurs : A. LERUSTE - V. LORTAL Date : 30/05/2017SOMMAIRE
Présentation de Nexter Systems et SCALIAN Alyotech
Présentation du projet LCCS
RETEX Vs MathWorks
Et après …
Questions / Réponses
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 2NEXTER : UN GROUPE ORGANISÉ EN 3 PÔLES
SYSTÈMES MUNITIONS ÉQUIPEMENTS
Effectifs 1 825 personnes 1 163 personnes 344 personnes
% du CA 2015 57 % 39% 4%
VBCI Munitions 120 mm et 40 mm Episcopes
Leclerc Munitions d’artillerie 155 mm Système de gonflage SYEGON®
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 4Expériences MATLAB chez Nexter
Toolbox Utilisation Client Quand
Définition des algorithmes « FEU » (fonctionnalités critiques
d’un point de vue fonctionnel, cœur de métier de NEXTER) :
MATLAB, Multi-projets
- Algorithme de Poursuite Automatique de Cible (Détection depuis 1990
Simulink NEXTER Systems
et suivi de cible)
- Lois de pointage, Conduite de Tir
Logiciel de contrôle commande du système de différentes
MATLAB Coder, tourelles :
Simulink Coder, Multi-projets
- Génération automatique de code applicatif sécuritaire depuis 2007
Embedded NEXTER Systems
(Alyotech/SCALIAN)
Coder
- Intégration des algorithmes FEU
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 5Présentation SCALIAN
Fournisseur
solutions
international
et
de
d’expertises,
incontournable dans ses spécialités
2020 2017 Scalian
€ 150M / 2200 collaborateurs / 9 pays
du digital et de la performance.
200 2016 Acquisition de Alyotech
CA en M€
2015 LMBO
Le 3 janvier 2017, le Groupe 75% - 25%
EUROGICIEL devient SCALIAN. CA France - International 2009 Développement International
2 pôles métiers :
- Les Systèmes Numériques
2 600 1989 Création d’Eurogiciel
collaborateurs spécialiste en développement logiciels et Systèmes
- La Performance des Opérations Embarqué
Paris
Lannion
Rennes Lyon
Bristol Hambourg Nantes
Bruxelles Bordeaux
Marseille
Montréal Madrid Toulouse Aubagne Toulon
Sophia Antipolis
Rabat
San Diego
Bangalore
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 6Présentation SCALIAN
Partie prenante des projets
innovants ou bâtisseurs et
managers de l’entreprise
Spatial étendue, nous accélérons
8% l’innovation de nos clients.
Défense
Aéronautique
10% Une richesse du portefeuille
30%
clients.
Santé, Admin.,
Services Une capacité à intervenir
10% 2017 dans tous les secteurs clés à
Energie, forts enjeux industriels et et
Industrie technologiques.
10% Transports
Télécoms,
Médias, TIC 20%
12%
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 7La suite MathWorks dans les projets SCALIAN
Toolbox Utilisation Client Quand
SNECMA
Moteur
MATLAB Création d’IHM simple pour des besoins métier 1995 - 2005
PSA
VALEO
LIEBHERR
Simulink, Développement de modèles dynamiques de simulation et de
Aerospace 2013-2014
Stateflow commande de servitude, pour un démonstrateur
Toulouse
SAFRAN
Simulink, Définition des couches applicatives de logiciels embarqués, 2000 –
NEXTER
Stateflow, V&V Analyse de couverture, Traçabilité des exigences aujourd’hui
Systems
Vérification de règles particulières via ModelAdvisor, NEXTER 2010 –
Kit IEC61508 aujourd’hui
Préparation des qualifications outils via les guides fournis Systems
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 8La suite MathWorks dans les projets SCALIAN
Toolbox Utilisation Client Quand
MATLAB Coder,
NEXTER
Simulink Coder, 2007 –
Génération des codes C associés à nos modèles applicatifs Systems
Embedded aujourd’hui
VALEO
Coder
Utilisation dans le développement d’outils métier de
SignalProcessing DGA, CNES
fonctionnalités simples (autocorrélation, variance)
Statistics and
Machine Analyse statistique de données radar DGA
Learning
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 9Concept Cœur Produit
Version X
Equipements + Logiciels
Electronique
Cœur
Version Y produit
Version Z
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 11Méthode pour écrire le CDC logiciel
Spécifications
Fonctionnelles (SF)
Modélisation Analyse des Spécifications
système Fonctionnelles par
architecte vétronique (*)
Revue de
modélisation (*) = électronique embarquée
dans véhicule
NO GO
GO Exigences de spécification
Extraction du modèle Logiciel (contrainte métier)
Architecte Modélisation
Analyse « Sureté de
Fonction système
Fonctionnement » (SdF) Assemblage
Architecture Sureté de
CdC LCCS Vétronique Fonction
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 12Calculateur
Le logiciel LCCS : le cœur du système sécuritaire
Logiciel sécuritaire (SIL 2 selon la norme IEC 61508)
Processus SDF
OS : QNX (certifié SIL 3 selon la norme IEC 61508)
Logiciel embarqué avec contraintes de performance fortes : 10 ms
Gestion de Code fonctionnel généré automatiquement en langage C
configuration
Couches basses logiciel (code manuel) codées en langage C
directement
Gestion de FTs
Entrées/sorties : MILCAN, CANopen Safey, CAN J1939, LNS,
Ethernet, DDS
ALYOTECH groupe SCALIAN est un fournisseur historique de ce
type de logiciel
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 13Raison du choix des outils MathWorks
Etude réalisée pour la Génération Automatique du Code (GAC) à partir du
modèle système Rhapsody de NEXTER via la suite IBM ou la suite Scade
Dans les deux cas, nombreuses contraintes à prendre en compte pour réaliser un code
sécurisé
Réalisation d’un projet antérieur commun, via la suite MathWorks, et ayant
donné satisfaction
Proposition de SCALIAN, s’appuyant sur son expertise issue principalement
de l’aéronautique et intégrant les notions de logiciel sécuritaire et non
sécuritaire
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 14Collaboration NEXTER/SCALIAN
Architecture Préliminaire
Architecture
Système :
Simulink / Stateflow de
Rhapsody de IBM Modélisation MathWorks
Maitrise du processus de
Cœur métier / développement
Clarification
Systémier Compréhension des
besoins
MOE (gestion des
MOA Pilotage compétences et
ressources)
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 15Le développement du LCCS CPT40
Enoncé des Travaux, CDC, Prototypes Simulink (Algorithmes FEU), Messageries, Tests particuliers
SPECIFICATION
DOORS STBL
CONCEPTION PRELIMINAIRE
DOORS DCP
DTUs
CONCEPTION TESTS UNITAIRES
DETAILLEE (Modèle) (Modèle)
DOORS DCDs V&V / kit IEC 61508
CONCEPTION
DETAILLEE (Code Entrants NEXTER
manuel) Unification du code
MODELISATION
DCD Outils
ML / Sk / st / kit IEC 61508
Process MBD
Processus code manuel / hybride
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 16Les outils développés
TU
• Sélection du ou des fichiers à dérouler sur la
fonctionnalité concernée via l’IHM
CR généré identifiant
les incohérences
pour analyse
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 17Le développement du LCCS CPT40
Enoncé des Travaux, CDC, Prototypes Simulink (Algorithmes FEU), Messageries, Tests particuliers
SPECIFICATION
DOORS STBL
DTI
TESTS D’INTEGRATION
CONCEPTION PRELIMINAIRE (Modèle)
DOORS DCP
V&V / kit IEC 61508
DTUs
CONCEPTION TESTS UNITAIRES
DETAILLEE (Modèle) (Modèle)
DOORS DCDs V&V / kit IEC 61508
CONCEPTION
DETAILLEE (Code Entrants NEXTER
manuel) Unification du code
MODELISATION
DCD Outils
ML / Sk / st / kit IEC 61508
Process MBD
Processus code manuel / hybride
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 18Les outils développés
TI
• Lancement de l’outil par ligne de commande MATLAB
CR généré identifiant les
incohérences pour
vérification manuelle
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 19Le développement du LCCS CPT40
Enoncé des Travaux, CDC, Prototypes Simulink (Algorithmes FEU), Messageries, Tests particuliers
DTV TESTS DE VALIDATION
SPECIFICATION
(Modèle)
DOORS STBL
V&V / kit IEC 61508
DTI
TESTS D’INTEGRATION
CONCEPTION PRELIMINAIRE (Modèle)
DOORS DCP
V&V / kit IEC 61508
DTUs
CONCEPTION TESTS UNITAIRES
DETAILLEE (Modèle) (Modèle)
DOORS DCDs V&V / kit IEC 61508
CONCEPTION
DETAILLEE (Code Entrants NEXTER
manuel) Unification du code
MODELISATION
DCD Outils
ML / Sk / st / kit IEC 61508
Process MBD
Processus code manuel / hybride
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 20Les outils développés
TV
• Sélection du ou des fichiers à dérouler sur la
fonctionnalité concernée via l’IHM
CR généré
identifiant les
incohérences
pour analyse
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 21Le développement du LCCS CPT40
Enoncé des Travaux, CDC, Prototypes Simulink (Algorithmes FEU), Messageries, Tests particuliers
DTV TESTS DE VALIDATION
SPECIFICATION GAC
(Modèle)
DOORS STBL
V&V / kit IEC 61508 EC
DTI
TESTS D’INTEGRATION
CONCEPTION PRELIMINAIRE (Modèle)
DOORS DCP
V&V / kit IEC 61508
DTUs
CONCEPTION TESTS UNITAIRES
DETAILLEE (Modèle) (Modèle)
DOORS DCDs V&V / kit IEC 61508
CONCEPTION
DETAILLEE (Code Entrants NEXTER
manuel) Unification du code
MODELISATION
DCD Outils
ML / Sk / st / kit IEC 61508
Process MBD
Processus code manuel / hybride
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 22La Génération Automatique de Code (GAC)
Simulink / Stateflow
Processus : + EC Code C optimisé
storage class
R2014b
I) Définition des différents niveaux II) Paramétrage des modèles (CF, FO)
d’architecture du Code auto
1. Adaptation à la cible
1. Brique unitaire
2. Optimisation pour intégration dans
2. Elément générique
le code manuel
3. Fonction Organe (FO)
4. Chaine fonctionnelle (CF)
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 23La Génération Automatique de Code (GAC)
III) Modèle de GAC (CF) VI) Code généré pour chaque CF
Dossier zippé :
*_rtw «.c» et «.h» principaux
*slprj
*shareutils (fichier partagé)
Get: Entrée Set: Sortie
*Dossier FO ( «.c» et «.h» par FO)
Model CF = FO(s) + interfaçage (storage class)
Lien entre espaces « mémoire partagée » et
entrées/sorties (E/S) du modèle. La storage
class LCCS utilise un package customisé qui
manipule des BUS et BUS de BUS pour les
E/S du modèle.
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 24Le développement du LCCS CPT40
Enoncé des Travaux, CDC, Prototypes Simulink (Algorithmes FEU), Messageries, Tests particuliers
DTV
DTV TESTS DE VALIDATION TESTS DE
SPECIFICATION GAC
(Modèle) VALIDATION CIBLE
DOORS STBL EC
V&V / kit IEC 61508 Cible +
DTI Simulateurs
DTI
TESTS D’INTEGRATION TESTS D’INTEGRATION
CONCEPTION PRELIMINAIRE (Modèle) (Code intégré)
DOORS DCP
V&V / kit IEC 61508 QNX/Momentics
DTUs + Parasoft
CONCEPTION TESTS UNITAIRES
DETAILLEE (Modèle) (Modèle)
DOORS DCDs V&V / kit IEC 61508
DTUs
CONCEPTION TESTS UNITAIRES (Code
DETAILLEE (Code Entrants NEXTER
manuel)
manuel) Unification du code
MODELISATION QNX/Momentics
DCD Outils
ML / Sk / st / kit IEC 61508
Process MBD
CODAGE MANUEL Processus code manuel / hybride
QNX/Momentics
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 25Bilan du projet
Bilan des phases de test du Bilan global
logiciel - Temps d'intégration système et de
mise à disposition pour la validation
- Sur banc de test logiciel (équipements très court :
externes simulés) 7 versions logicielles majeures en 21/2
ans
- Sur banc de test système « éclaté » - Peu d’anomalies fonctionnelles :
- Traitement des « bugs logiciels » en
amont via TU, TI, TV Simulink
- Sur véhicule : en cours
- Écarts fonctionnels = compréhension
divergente ou défaut de spécification
système
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 26RETEX vs MathWorks
RETEX sur Outils MathWorks
Modélisation
++ Simulink/Stateflow : outils intuitifs
Simulation
++ Automatisation des tests par ligne de commande MATLAB
Génération de code
++ Interfaçage des fichiers générés avec le noyau du logiciel aisé
Autres (safety, liens vers les exigence, …)
++ Traçabilité DOORS / Simulink
-- Traçabilité des exigences dans le code généré, à partir de librairie générique
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 28ET APRÈS …
Futures Collaborations NEXTER/SCALIAN
Points positifs à répliquer Prochains projets NEXTER
- Méthodologie de - Trois autres projets sont
développement actuellement réalisés sur le
- Utilisation des outils internes même principe que celui-ci, en
développés notamment pour MBD via la suite MathWorks
les tests
Voies d’amélioration
- Généralisation de la gestion des évènements et mise à jour des
outils pour les prendre en compte
- Intégration des routines de vérification à ModelAdvisor
A. LERUSTE / V. LORTAL MATLAB EXPO 2017 30QUESTIONS /
RÉPONSES
Société NEXTER Systems Société SCALIAN ALYOTECH
11, allée des Marronniers, 2/6 Place du Général de Gaulle
78022 Versailles Cedex 92184 Antony Cedex
www.nexter-group.fr www.scalian.comVous pouvez aussi lire