Journées Informatiques IN2P T. Le Flour L.A.P.P 1 OPERA Brick Manipulation Management
Journées Informatiques IN2P T. Le Flour L.A.P.P 2 Sommaire Le Contexte expérimentalLe Contexte expérimental L’environnement de développementL’environnement de développement Les fonctionnalitésLes fonctionnalités L’architectureL’architecture La communicationLa communication Exemples de mise en oeuvre
Journées Informatiques IN2P T. Le Flour L.A.P.P 3 Le dtecteur Le détecteur plomb/emulsion (~ briques) Son système de manipulation de briques Insertions Insertions Extractions Extractions OPERA Observation directe de l’oscillation neutrino CERN OPERA Pb 1 mm emulsion layers (50 mm thick) plastic base 200 m thick Le Contexte expérimental
Journées Informatiques IN2P T. Le Flour L.A.P.P 4 Le contexte experimental 2x cellules2x celluleset 2 manipulateurs2 manipulateurs 31 murs 64 lignes
Journées Informatiques IN2P T. Le Flour L.A.P.P 5 Le contexte experimental Verrin pousseur Panier de chargement Station de chargement
Journées Informatiques IN2P T. Le Flour L.A.P.P 6 L’environnement de développement Au L.A.P.PAu L.A.P.P Projet BMS (Brick Manipulator System) : ObjectifObjectif Système de manipulation des briques du détecteur Installation des briques en un an Domaine de compétence, Expertise Domaine de compétence, Expertise Mécanique Automatisme/Informatique
Journées Informatiques IN2P T. Le Flour L.A.P.P 7 Au L.A.P.PAu L.A.P.P Le projet BMM(Brick Manipulation Management) Objectif :Objectif : Assurer le suivi de la manipulation des éléments du détecteur(briques) pendant toute leur durée de vie. Assurer le suivi de la manipulation des éléments du détecteur(briques) pendant toute leur durée de vie. ExpertiseExpertise Développement logiciel, Communication, Base de données. Développement logiciel, Communication, Base de données. L’ équipeL’ équipe D. Duchesneau, T. Le Flour, S. Lieunard D. Duchesneau, T. Le Flour, S. Lieunard Eleves-Ingénieurs Eleves-Ingénieurs L’environnement de développement
Journées Informatiques IN2P T. Le Flour L.A.P.P 8 Le cycle de vie d’une brique Panier de chargement Les murs cibles BMS Loading station Remplissage des murs Place Physique résultats Mouvement physique action négatif Banc Cosmique positif Analyse Feuille inter-changeable Labo. Developpement Labo. De Scanning Résultats Scanning Analyse des émulsions Labo. De developpement Labo. De scanning Transport CS Envoi briques vers les stations de chargement Déchargement des briques Chargement /Déchargement des briques pour analyse Extraction des briques pour analyse Re-insertion de nouvelles briques Séparation CS Briques en attente Ré-insertion brique dans le stock Ajout nouvelle CS Zone blindée Transport Briques Zone d’analyse BAM
Journées Informatiques IN2P T. Le Flour L.A.P.P 9 Les principales fonctionnalités(1) Assurer le suivi du chargement des super- modulesAssurer le suivi du chargement des super- modules 6 mois / SM Maintenir la carte du détecteur Localisation des briques/Feuilles inter-changeables Pendant les phases d’acquisitionPendant les phases d’acquisition Réceptionner du DAQ et communiquer les listes de briques au système de manipulation extraction : ~ / jourextraction : ~ / jour Suivre la brique a l’ extérieur du détecteur
Journées Informatiques IN2P T. Le Flour L.A.P.P 10 Les principales fonctionnalités(2) A tout momentA tout moment Accès a l’histoire des éléments OPERA Localisation, opérations en cours, …Localisation, opérations en cours, … Vue instantanée des super-modules Contrôles: En ligne des opérations en coursEn ligne des opérations en cours A distanceA distance Monitoring, consultation Monitoring, consultation En différé des opérations réalisées.En différé des opérations réalisées.
Journées Informatiques IN2P T. Le Flour L.A.P.P 11 L’ environnement > Supervisor/ Brick Manipulator > Cosmic Bench > DAQ Manager > Development lab > OPERA Scanning System ManagerInterface ScanningInterface > Brick Manipulation Manager(BMM) ManipulatorInterface BAM cosmicInterface
Journées Informatiques IN2P T. Le Flour L.A.P.P 12 Le développement logiciel Découpage de l’analyse en 2 grandes phasesDécoupage de l’analyse en 2 grandes phases Le remplissage initial(2 x 6 mois) extraction quotidienne et la phase d’exploitation USDPUSDP Définition des cas d’utilisation Les scenarii (Diagrammes de séquences de haut et de bas niveau) Le/Les schémas de classes Les diagrammes de composants logiciel Développement de la logique métierDéveloppement de la logique métier Les interfaces utilisateurs
Journées Informatiques IN2P T. Le Flour L.A.P.P 13 Le BMM et la communication Communiquer avec le BMS(Manipulateur) pour distribuer toutes les commandes de manipulationCommuniquer avec le BMS(Manipulateur) pour distribuer toutes les commandes de manipulation Opérateurs, DAQ, … Envoi d’informations aux systèmes externesEnvoi d’informations aux systèmes externes Le banc cosmique, le développement des CS Réception de données des systèmes externes pour la mise a jour de la BD du BMMRéception de données des systèmes externes pour la mise a jour de la BD du BMM MAJ des informations des briques, Gestions des événements de manipulations, … Réagir a la réception de données
Journées Informatiques IN2P T. Le Flour L.A.P.P 14 Le BMM : Une architecture 3 Tiers Système distribué, réactif, suffisamment sécuriséSystème distribué, réactif, suffisamment sécurisé Tiers Métier Tiers Données Tiers Client APIAPI BMM BMM StationOpérateur Data Monitoring StockageCentral Oracle APIAPI DAQ Manager StockageLocal Oracle APIAPI OCCIOCCIBMMServer Client BMS Server
Journées Informatiques IN2P T. Le Flour L.A.P.P 15 Le BMM et la communication S’appuie sur une organisation 3 TiersS’appuie sur une organisation 3 Tiers Seul le BMM manipule sa base de données(MAJ)Seul le BMM manipule sa base de données(MAJ) Les composants extérieurs accéderont les données a travers la réalisation de serviceLes composants extérieurs accéderont les données a travers la réalisation de service Basée sur le standard CORBABasée sur le standard CORBA Inter-operabilite(Soft et Hard.) Implementation utilisée : OMNIORB4.X
Journées Informatiques IN2P T. Le Flour L.A.P.P 16 Le BMM, CORBA et Le Service d’ événement La réalisation d’un service CORBA est synchroneLa réalisation d’un service CORBA est synchrone Inconvénients : Pas de résultats ou d’informations intermédiairesPas de résultats ou d’informations intermédiaires Aucune idée de l’ état d’avancement du serviceAucune idée de l’ état d’avancement du service Gênant surtout si le temps de réalisation du service est long Intérêt du service d’événementIntérêt du service d’événement Un serveur CORBA émet des messages vers le service événements pendant la réalisation d’un service Chaque client, intéressé par un message, s’enregistre auprès du service d’événement A chaque réception d’un message, le service d’événement re-émet ce message vers tous les clients intéressés
Journées Informatiques IN2P T. Le Flour L.A.P.P 17 La propagation des événements( MODE Push )La propagation des événements( MODE Push ) Canal Evenement Push Emetteur Push Consommateur Propagation des evenements Push Consommateur Usine a Canal Evenement Le BMM, CORBA et Le Service d’ événement
Journées Informatiques IN2P T. Le Flour L.A.P.P 18 Le BMM & Le Service d’événement PLC Window Naming Service Client JAVA LINUX Push Consumer Push Provider Push Consumer BMS Registration BMM Registration BMS Services CORBA BMM BMM Resolution Push Provider BMS Resolution BMM BMS Event Service Reference Canal Evenement Creation & Enregistrement Canal Evenement Log Book Manager
Journées Informatiques IN2P T. Le Flour L.A.P.P 19 Exemple de communication Chargement initialChargement initial Service CORBA : Load_Bricks(SM1, left)(~20 ‘)Load_Bricks(SM1, left)(~20 ‘) Insert_Bricks(SM1, Wall, Row)(~ 20’)Insert_Bricks(SM1, Wall, Row)(~ 20’) Les événements sur le service d’ événements Envoi de chaque code-barre de briqueEnvoi de chaque code-barre de brique Démarrage de la phase de remplissageDémarrage de la phase de remplissage LocalRepository BMSBMM BMM Corba Server Oracle APIBMS Event service For data output
Journées Informatiques IN2P T. Le Flour L.A.P.P 20 Les outils Le SoftwareLe Software Les langages C++ pour le BMMC++ pour le BMM Java pour les interfaces utilisateurs.Java pour les interfaces utilisateurs. Les communications : OmniORB4.x Gestion du multi-thread intégréeGestion du multi-thread intégrée Naming Service, Event Service, …Naming Service, Event Service, … Le stockage ORACLE 9i (Version ) actuellement au CC.ORACLE 9i (Version ) actuellement au CC. L’ accès au données Oracle C++ Call Interface(OCCI) : JDBC-likeOracle C++ Call Interface(OCCI) : JDBC-like JDBCJDBC SQL2Java & SQL2C++SQL2Java & SQL2C++ Les systèmes d’exploitationLes systèmes d’exploitation LINUX (RH 7.3) W2000
Journées Informatiques IN2P T. Le Flour L.A.P.P 21 La situation actuelle et les objectifs Etude et réalisation des composants en cours …Etude et réalisation des composants en cours … Configuration Manager: Gestion des configurations et de l’environnementGestion des configurations et de l’environnement Localisation des services, Configuration des systèmes extérieurs Setup Manager Phase d’ initialisation du BMM en fonction de la configurationPhase d’ initialisation du BMM en fonction de la configuration LogBook Manager Système de gestion des messages issus des systèmes extérieursSystème de gestion des messages issus des systèmes extérieurs Fin Juin 2004Fin Juin 2004 Test d’un prototype destiné a valider la chaîne complete de manipulation(Insertion dans le détecteur) Fin 2004Fin 2004 Version opérationnelle du chargement initial Prototype de l’extraction Etude de la base de données centrale d’OPERAEtude de la base de données centrale d’OPERA