Experimental Physics and Industrial Control System E P

  • Slides: 27
Download presentation
Experimental Physics and Industrial Control System E P I C S SIS / LD

Experimental Physics and Industrial Control System E P I C S SIS / LD 2 I Webinaire EPICS Pierre MATTEI 1

§ Collaboration internationale : • 1989 : Los Alamos (LANL) & Argonne (ANL) •

§ Collaboration internationale : • 1989 : Los Alamos (LANL) & Argonne (ANL) • adopté par plus de 150 laboratoires • open source North America USA (APS, SNS, JLAB, LCLS …) Canada (Triumf, CLS) Australia (Aus. Sy) Asia China (HIRFL) Japan (KEK, JPARC) Europe Germany (DESY, BESSY) Great-Britain (Diamond) Switzerland (SLS, PSI in future) Italy (Infn) France (Spiral 2, Ifmif/Eveda, ITER, Irfu ). . . SIS / LD 2 I Webinaire EPICS Pierre MATTEI 2

Architecture § Système de contrôle : • basé sur un modèle client/serveur en réseau

Architecture § Système de contrôle : • basé sur un modèle client/serveur en réseau Channel Access : protocole de communication CA Clients LAN CA Serveurs • le serveur distribue ses variables. . . • . . . aux programmes clients qui effectueront les opérations de supervision. SIS / LD 2 I Webinaire EPICS Pierre MATTEI 3

Architecture § Le rôle du serveur (Input/Output Controller) est de rendre accessibles ses données

Architecture § Le rôle du serveur (Input/Output Controller) est de rendre accessibles ses données : les Process Variables. CAC : Channel Access Client Programmes Client CAC § Les programmes clients doivent accéder aux informations des Process Variables. CAS § La Process Variable (PV) représente la donnée élémentaire distribuée par le serveur (l’IOC). SIS / LD 2 I Webinaire EPICS IOC : Process Variables CAS : Channel Access Server Pierre MATTEI 4

Process Variable § Une Process Variable permet d’identifier un composant lié à un équipement

Process Variable § Une Process Variable permet d’identifier un composant lié à un équipement donné de l’installation à décrire : − Par exemple un état, une lecture, une écriture. . . − Quelques exemples de noms de PV et les valeurs associées : • LBE 1: SOL 2_PS: Irdk • SRC: VAC_TP: On. Cmd • LHE 1: BPM 2: Xpos PV Names SIS / LD 2 I 123. 5 OFF -0. 345 Process Variables Webinaire EPICS Pierre MATTEI 5

IOC : Input Output Controller § Un système de contrôle EPICS comprend un ou

IOC : Input Output Controller § Un système de contrôle EPICS comprend un ou plusieurs IOCs (frontaux) LAN Channel Access La DB pilote l’activité de l’IOC Real-time Sequencer Database Composants logiciels de l’ IOC Device Support I/O Hardware SIS / LD 2 I Webinaire EPICS Pierre MATTEI 6

La Base de Données EPICS § la DB Epics est une collection de Records

La Base de Données EPICS § la DB Epics est une collection de Records de différents types § le record est un objet comportant : - un nom unique - un comportement défini par son type - des propriétés - une connexion sur des E/S (optionnel) - des liens vers d’autres records (optionnel) type propriétés Liens vanne capteur SIS / LD 2 I Webinaire EPICS Pierre MATTEI 7

Les Records § Ils sont donc actifs et ce qu’ils font dépend de leur

Les Records § Ils sont donc actifs et ce qu’ils font dépend de leur type § Ils peuvent être activés : - de manière cyclique - sur évènement - par une interruption § Ils peuvent être classés en 4 types principaux : - Input : Analog In (AI), Binary In (BI), String In (SI) … - Algorithme : Calculation (CALC), Subroutine (GENSUB) - Output : Analog Out (AO), Binary Out (BO) , String Out (SO) - Personnalisé : Profileur, Mesures de position (BPM), LLRF … SIS / LD 2 I Webinaire EPICS Pierre MATTEI 8

Quelques types de Records SIS / LD 2 I Webinaire EPICS Pierre MATTEI 9

Quelques types de Records SIS / LD 2 I Webinaire EPICS Pierre MATTEI 9

La DB vue par l’IOC § Il s’agit d’un fichier ASCII chargé dans la

La DB vue par l’IOC § Il s’agit d’un fichier ASCII chargé dans la mémoire de l’IOC au démarrage : § Chaque record est « interprété » par l’ IOC : § Les informations de la DB sont accessibles en lecture et en écriture (pour certaines) à travers un protocole de communication : le Channel Access SIS / LD 2 I Webinaire EPICS Pierre MATTEI 10

Création des DBS § A l’aide d’un éditeur de texte § Avec l’assistant VDCT

Création des DBS § A l’aide d’un éditeur de texte § Avec l’assistant VDCT en mode graphique : SIS / LD 2 I Webinaire EPICS Pierre MATTEI 11

Le séquenceur § Il éxécute du code compilé écrit en langage SNL (State Notation

Le séquenceur § Il éxécute du code compilé écrit en langage SNL (State Notation Language) pour décrire des opérations séquentielles. § Il peut permettre : - L’automatisation d’une procédure de démarrage (vide, RF, source …) - La calibration d’un instrument - … SIS / LD 2 I Webinaire EPICS Pierre MATTEI 12

Exemple SNL descente SIS / LD 2 I « Pause » montée Webinaire EPICS

Exemple SNL descente SIS / LD 2 I « Pause » montée Webinaire EPICS Pierre MATTEI 13

Device/Driver Support § Couche logicielle = interface Matériel / DBs Epics • • •

Device/Driver Support § Couche logicielle = interface Matériel / DBs Epics • • • Cartes VME ( DAC, ADC, E/S binaires. . . ) contrôleurs Moteur Oscilloscopes automates. . . § A écrire pour du nouveau matériel § Voir les disponibilités sur le site EPICS. . . SIS / LD 2 I Webinaire EPICS Pierre MATTEI 14

Device/Driver Support § Le Site EPICS est hébergé par le laboratoire d’Argonne : http:

Device/Driver Support § Le Site EPICS est hébergé par le laboratoire d’Argonne : http: //www. aps. anl. gov/epics SIS / LD 2 I Webinaire EPICS Pierre MATTEI 15

IOC : Channel Access Serveur LAN Channel Access La DB pilote l’activité de l’IOC

IOC : Channel Access Serveur LAN Channel Access La DB pilote l’activité de l’IOC Real-time Sequencer Database Composants logiciels de l’ IOC Device Support I/O Hardware SIS / LD 2 I Webinaire EPICS Pierre MATTEI 16

Channel Access : protocole de communication § Permet aux applications clientes de visualiser/modifier les

Channel Access : protocole de communication § Permet aux applications clientes de visualiser/modifier les Process Variables de l’IOC • Put • Get • Monitor § L’IOC est aussi un client, il peut dialoguer avec d’autres serveurs § Un client peut se connecter à plusieurs serveurs § Le serveur peut avoir plusieurs clients Client IOC SIS / LD 2 I Client IOC 1 un client envoie une requête UDP : “qui possède la variable. . . ? ” 3 la connexion s’établit en mode TCP 2 un serveur répond en mode UDP : “je l’ai ” Webinaire EPICS Pierre MATTEI 17

Les applications Clientes § Elles sont appelées Extensions sur le site Epics : SIS

Les applications Clientes § Elles sont appelées Extensions sur le site Epics : SIS / LD 2 I Webinaire EPICS Pierre MATTEI 18

Les applications Clientes § C’est la partie visible : Channel Access Client SIS /

Les applications Clientes § C’est la partie visible : Channel Access Client SIS / LD 2 I Webinaire EPICS Channel Access Client Pierre MATTEI 19

Les plates-formes § Les IOCs : • Contrôleurs VME avec les OS temps réel

Les plates-formes § Les IOCs : • Contrôleurs VME avec les OS temps réel vx. Works ou RTEMS target-IOC • PCs Linux, Windows, Mac OSX Host-based IOC • Station UNIX (Solaris, HP UX) • Aplications Lab. View § Les postes Clients : • PCs Linux, Windows, Mac OSX SIS / LD 2 I Webinaire EPICS Pierre MATTEI 20

Poste de développement § Exemple sur un poste Linux § Les produits Epics sont

Poste de développement § Exemple sur un poste Linux § Les produits Epics sont distribués sous forme d’archives compressées SIS / LD 2 I Webinaire EPICS Pierre MATTEI 21

Poste de développement : base SIS / LD 2 I Webinaire EPICS Pierre MATTEI

Poste de développement : base SIS / LD 2 I Webinaire EPICS Pierre MATTEI 22

Poste de développement : extensions SIS / LD 2 I Webinaire EPICS Pierre MATTEI

Poste de développement : extensions SIS / LD 2 I Webinaire EPICS Pierre MATTEI 23

Poste de développement : support pour l’IOC SIS / LD 2 I Webinaire EPICS

Poste de développement : support pour l’IOC SIS / LD 2 I Webinaire EPICS Pierre MATTEI 24

Poste de développement : une application IOC SIS / LD 2 I Webinaire EPICS

Poste de développement : une application IOC SIS / LD 2 I Webinaire EPICS Pierre MATTEI 25

Poste de développement : une application IOC SIS / LD 2 I Webinaire EPICS

Poste de développement : une application IOC SIS / LD 2 I Webinaire EPICS Pierre MATTEI 26

Conclusion(s) § EPICS : - collaboration - architecture d’un système de contrôle distribué -

Conclusion(s) § EPICS : - collaboration - architecture d’un système de contrôle distribué - collection d’outils logiciels § manip. de labo grands appareils de physique § produit évolutif : il intègre rapidement les nouvelles technologies : java, python, php. . . § forum de discussion (tech-talk) + meeting annuel §. . . SIS / LD 2 I Webinaire EPICS Pierre MATTEI 27