Imageurs pour applications spatiales - Makers of MATLAB ... · contrôle avec MATLAB ... •Au...
Transcript of Imageurs pour applications spatiales - Makers of MATLAB ... · contrôle avec MATLAB ... •Au...
Imageurs pour applications spatiales : caractérisation et contrôle avec MATLAB
• MATLAB Expo – 2 Octobre 2014• Jean-François BOISSONNEAU
Plan de la présentation
Le groupe e2v
Le projet Baie Imagerie Spatiale
Objectif / état des lieux
Les problématiques
Les solutions
L’application
Conclusion
2
Qui sommes nous ?
• Entreprise est située à Saint-Egrève (Grenoble)
• Créée en 1955 (SESCOSEM)
• Devient Thomson Militaire & Spatiale puis Thomson-CSF Semi-conducteurs
• Achetée 2000 par le groupe Atmel
• Achetée 2006 par le groupe anglais e2v
• Environ 350 employés dont 50% d’ingénieurs et de cadres
• Chiffre d’affaires annuel de 90 millions d’euros environ
• Marchés visés : Aerospatiale, Défense, Médical, Industriel
• e2v est leader de solutions technologiques innovantes pour les systèmes de
haute performance pour des marchés spécialisés
Le
g
ro
up
e e
2v
3
Le
g
ro
up
e e
2v
5
Quelles sont les applications de nos produits?
Spatial
• Exploration scientifique
• Observation de la Terre
• Astronomie, suiveurs d’étoiles
Imagerie scientifique haute performance
• 50000 à 150 000 images
• De 100 à 2 000 résultats
• Durée de test de 20min à 5h
• Prix plusieurs dizaines de milliers d’euros
Quelques chiffres :par pièce
Le Projet Baie d’Imagerie Spatiale
• Objectifs :
• Assurer la caractérisation de composants de haute fiabilité
• Développer des programmes automatiques de test de ces mêmes
composants
• En prenant en compte les contraintes du produit
• Type de produit: matrice, barrette, TDI…
• Fréquence, nombre de sorties, complexité…
• En prenant en compte les besoins du client
• En terme de traitements et de conditions
• Exploiter facilement les résultats
6
Constat de départ / état des lieux
• Baies de mesures devenues obsolètes
• Au niveau des instruments de mesures et de pilotage
• Du matériel informatique (HP9000)
• Logiciel non maintenu et oublié (HP basic / smi-itg)
• Nécessitant de long temps de développement pour chaque
nouveaux projets
• Résultats sous formats papier, de rares fichiers texte difficilement
exploitables, format image inadapté...
Le
p
ro
je
t b
aie
d
’im
ag
erie
sp
atia
le
7
Besoin d’améliorationL
e p
ro
je
t b
aie
d
’im
ag
erie
sp
atia
le
8
• Besoin d’homogénéisation des projets car:
• Des développements et des méthodes différentes
• Des formats de résultats différents
• Améliorer la traçabilité
• Besoin d’un mode « Off line »
• Obligation de travailler sur l’équipement pour préparer
un projet
Problématique matérielleL
es p
ro
blé
matiq
ue
s9
• Différents types de matériels
• Cartes électroniques (interne au PC et externes)
• Instruments de mesures, équipements annexes
• Moteurs
• Caméras
• Différents types de connexions et de protocoles
• DMA, GPIB, USB, TCP-IP, RS232…
• Bibliothèques fournisseurs
• MATLAB, C, aucune…
Problématique logicielle
• Gestion projet
• Plusieurs utilisateurs utilisent la baie pour des projets à différentes étapes
Le
s p
ro
blé
matiq
ue
s
Ingénieurs mesure
Opérateurs
Phase de Production
Industriel
Phase de
Programmation
Maintenance
Suivi hebdomadaire, diagnostique
Phase de
Préparation
Phase de
Caractérisation
10
• Différencier les Interfaces Homme Machine (IHM)
• Interface engineering et maintenance pour offrir un accès complet
• Interface de production la plus légère possible
• Algorithme :
• Interaction entre les instruments et les interfaces
• Algo de « programmation » de l’outil
• Données d’entrées/sorties
• Paramétrer l’application et ces résultats depuis le bureau
Le
s p
ro
blé
matiq
ue
s11
Problématique logicielle
Les solutions
• Pourquoi avoir choisi MATLAB ?
• Calcul matriciel
• Pour avoir un logiciel simple et rester maître de l’application
• Avoir un logiciel unique de pilotage, de calcul, et
d’interfaçage
• L’équipe projet ne souhaitait pas une programmation
graphique
• Conception d’IHM simple
Le
s so
lu
tio
ns
12
Gestion de projet et IHM
• Grâce à la facilité de création nous avons:
Le
s so
lu
tio
ns
~10 IHMs pour piloter nos instruments
~15 IHMs pour paramétrer nos mesures
13
Gestion de projet et IHM
• Grâce à la facilité de création nous avons:
Le
s so
lu
tio
ns Environnement - Production Environnement - Engineering
Une gestion différenciée des interfaces homme machine donc
des différentes étapes d’un projet
14
Instructions de test
Interface operateurInstructions de test
Interface operateur
Algo de pilotage des instruments
• Instrument Control Toolbox
• Les fonctions simples et avancées de
cette toolbox nous permettent de piloter
nos différents appareils
• Image Acquisition Toolbox
• Pilotage d’une caméra embarquée
dans un banc de mesure interfaçable
avec la baie
• Les mexfiles
• Permettent l’utilisation des routines en
C ou C++
Le
s so
lu
tio
ns
15
Algo de traitement et de calculL
es
solu
tio
ns
• Image Processing Toolbox
• Utilisée essentiellement pour la gestion des
entrées sorties (affichage, enregistrement et
lecture)
• La recherche de défauts
• Les calculs
• Relativement simple
• Chaque fonction de traitement est
paramétrable depuis son IHM (Spécificité
client, méthode, unité, grandeur…)
16
AlgorithmeL
es so
lu
tio
ns
• Interaction entre les instruments et les IHMs• L’emploi des « handles » dans les IHMs offrent une souplesse
à l’outil final
function Iris_CreateFcn(hObject,…,handles)
% Création de l’editbox iris
Liste_Handles_Iris (end + 1) = hObject;
function Iris_Callback (hObject,…,handles)
% Saisie du champ iris
err = Gerer_Iris ( hObject );
IHM Mesure 1 X-
IRIS 50
Code identique
IHM Instrument 1 X -
IRIS 50
>> Gerer_Iris( 50 )
Command Window
17
function Err = Gerer_Iris ( varargin )
%% Récupère la valeur
if ishandle( varargin{1} )
Val_Iris = get( hObject , ’Value’) ;
else [… Vérification supplémentaires … ]
Val_Iris = varargin{1};
end
%% Pilotage instrument
Err = Set_Iris( Val_Iris );
%% Mise à jour IHM
set( Liste_handles_Iris ,’Value’, Val_Iris );
L’outil de « programmation »L
es so
lu
tio
ns
• Le séquenceur :• Encore une IHM ! Pour simplifier la vie des utilisateurs
• La « programmation » des variables de paramétrage se fait par
saisie.
• L’exécution des tests est fixe :
• Configuration de la baie
• Paramétrage de la mesure
• Acquisition
• Traitement et calcul
• Sauvegarde
• Statut
18
Données d’entrées sorties
• Nous utilisons Excel car :
• Il est très facile à interfacer avec MATLAB
• Par les fonctions de base
• Ou par l’Active X
• Renseigner l’application, exploiter les résultats, et
les données de sorties depuis son bureau
• Utilisé par la plupart de nos clients
Le
s so
lu
tio
ns
19
Co
nclu
sio
n20
Conclusion / synthèse
Problématiques Solutions
Matériel Non exposée
Logiciel
Gestion projet Grâce aux IHMs
Différenciation des étapes projet Un environnement par utilisateur
Interaction entre les interfaces Réussit grâce aux handles
Avoir un outil de programmation Le séquenceur
Paramétrage « Off line » Grâce couple MATLAB Excel
Conclusion / synthèse
• Les fonctionnalités de MATLAB nous ont permis de créernotre propre outil de caractérisation et de test pour unmilieu industriel
• Homogénéisation des:
• Mesures / Résultats / Pratiques
• Gain de temps sur le développement
• Les ingénieurs mesure se consacrent aux mesures,
plus aux développements
Co
nclu
sio
n21
L’avenir …C
on
clu
sio
n22
• Amélioration continue du programme
• Résultats enregistrés dans une base de donnée commune
• Changement de technologie, passage au CMOS
• Nouvelles configurations matérielles
• Nouvelles mesures
• Nouveaux résultats…
An
nexe
s
global env % Variable d’environnement
env.materiel.baie = Baie1;
env.materiel.instrument1.adresse = 4;
env.materiel.instrument1.maxPower = 15;
…
Récupération du
profil utilisateur
Récupération environnement
projet, matériel
Chargement du projet
global session % Variable de travail
session.config.materiel.TensionAlimMax = [18 18 2 0.5];
session.param.materiel.TensionAppliquee = [15 14.5 1.2 0.3];
…
session.exec.mesure.Photodiode = 3.152;
session.exec.mesure.PhotodiodeUnite = ‘V’;
session.exec.IHM.Liste_Handles_Iris = [0.1255 0.1336];
…
24