Le rôle du pôle online est de concevoir, developper et déployer les différents systèmes de contrôle-commande et d’acquisition de données en temps réel, pour l’ensemble des matériels des expériences de physique des hautes énergies. Pour réaliser ces systèmes, nous utilisons différents types de langages et de technologies à la frontière des domaines de l’électronique, de l’instrumentation et de l’informatique.
Afin de mener à bien ces tâches, nous développons un framework nommé Pyrame qui fournit toutes les fonctionnalités de bases d’un système de contrôle-commande et d’acquisition de données et qui, grâce à sa forme totalement générique, peut être facilement décliné sur l’ensemble de nos projets.
Les contrôle-commandes que nous développons sont très diversifiés et correspondent à tous les équipement que l’on peut retrouver dans nos détecteurs ou sur les bancs de test. Cela inclut, pour les matériels industriels : des alimentations haute et basse tension, des générateurs de pulsations, des oscilloscopes, des équipements réseau et des motion-controllers. Naturellement, la plupart de notre activité consiste à écrire des contrôle-commandes pour les cartes qui sont développée au sein même du laboratoire, inscrivant notre démarche en collaboration étroite avec ce service.
Nous travaillons pour toutes les expériences du laboratoire ayant besoin de contrôle-commande pour leur bancs de test, pour leur système d’acquisition.
En particulier, nous pourrions citer :
- ILC : Nous sommes responsables de la mise en place d’une structure d’acquisition de données et de contrôle-commande pour le calorimètre Silicium-Tungtene du détecteur du futur collisionneur linéaire (SiW-Ecal/ILD). Nous avons développé une suite logicielle, nommée Calicoes, qui implémente les contrôle-commandes de toutes les cartes et de tous les périphériques, ainsi qu’un pilotage de haut niveau pour assurer une facilité d’usage aux expérimentateurs physiciens.Technologies employées : C/C++, Python, Pyrame, Wxwidgets.
- CMS : Le laboratoire étant responsable de la conception des 2 cartes de triggers de premier niveau, le service online a développé des superviseurs, des interfaces homme-machine ainsi que des infrastructures de tests. Nous participons aujourd’hui à la mise à jour du système pendant le long stop 1. Dans ce cadre, le système est migré sur un nouvel OS, sa structure est rationalisée et de nouvelles fonctionnalités sont ajoutées. Technologies employées : C++, Xdaq, Root.
- CTA : Nous participons aux études préalables au montage de CTA. Dans ce cadre, nous avons écris un contrôle-commande sur Arduino pour piloter des périphériques de la caméra. Technologies employées : Python, Pyrame, Arduino.
- CNAO : Nous avons développé un banc de calibration de détecteurs utilisés pour l’hadronthérapie. Technologies employées : C/C++, Python, Firewire.
- HARPO : Nous travaillons en collaboration avec les services d’Electronique et de Mécanique pour fournir un système d’acquisition d’un détecteur de mesures de polarimétrie. Nous intervenons sur des domaines d’enregistrements rapides depuis un lien Ethernet et vers des disques durs, et d’intéractions en "temp réel" sur les données acquises.Technologies employées : C/C++, Python.
- T2K : Pour une expérience situé au Japon, nous sommes responsables du logiciel de pilotage des différentes alimentations du détecteur de neutrinos. Pour cette expérience, les projets et logiciels développés, nous utilisons les technologies suivantes : C/C++, Python, Midas.