Laboratorio per dottorandi 2017 Particle Accelerators Control System M. Bellaveglia, S. Pioli INFN - LNF
Introduction Aim of a control system Remotely control all the devices in a system Local interface with devices using low level drivers Provide a simple Graphic User Interface (GUI) Automatically generate a log of the system status
Control system architecture In modern accelerator control system the architecture is multilayer Typically there are three main layers: Presentation layer All the end-user program that constitutes the operator interface in the control room Application layer Database, data (and command) server, machine protection system (MPS), system applications Resource layer Device controllers Layer are embedded in a high speed network
Control system architecture High Speed Network Control system architecture Presentation Layer Control Room Applications Automated Measurements Application Layer Data Server & Log Database MPS System applications Resource Layer Device Controller #1 Device Controller #2 Device Controller #N Accelerator Devices and Equipment
Resource Layer Low level driver are used to connect single devices to the controllers Local buses can be used to connect the devices (canOpen, serial, ethernet, USB, …) Controllers share on the network the data about every single device
Resource layer – Virtual objects Typically each device (or group of devices) is represented in the control system as a virtual object with attributes: Static (initialized at the startup), read-only IP address, channels in I/O cards, location,… Dynamic (continuous refresh) Read-only Vacuum level, RF amp/phase monitor, motor abs. encoder Read & write (can be set by a command) ON/OFF status, camera gain, RF feedback set points Virtual objects are accessible at any layer. Their attributes are shared on the network
Application Layer Data server & log: Database Can be used to share the virtual objects on the network continuously reading their attributes from controllers Stores the important attributes at definite time intervals (dta logging) Stores the beam measurement data Database stores all the static information (how the machine is constituted in terms of virtual objects)
Application Layer MPS (Machine Protection System) System applications: Acquire all the necessary data from the virtual objects and generates real-time interlocks Vacuum level, radiation level, sub-system malfunctioning trigger RF (beam) shut down System applications: Applications that run in a dedicated server Beam measurement data elaboration Virtual machines for controller startup
Presentation Layer All the panels that operators need to make the accelerator work This layer uses the virtual object structure, but it is transparent to the operator The operator doesn’t need to know how the devices are controlled or even which device is controlled He is trained to use the GUIs that have to be simple and reliable
Examples – SPARC vacuum ion pumps Pump and controller
Examples – SPARC vacuum ion pumps Virtual object
Examples – SPARC vacuum ion pumps Presentation layer panel
Example – EPICS Experimental Physics and Industrial Control System Input/Output controllers (IOC) With EPICS, the device attributes (Process Variables) are accessed directly knowing their names Channel Access (CA) applications
Example – EPICS Experimental Physics and Industrial Control System Once IOCs are set up, the PV (process variables) are available on the network CA applications can be written using some simple libraries provided by EPICS developers. Also many programming languages have CA libraries available(Matlab, Python, LabVIEW,…) The presentation layer applications can be then programmed using many visual languages capable to display the information
Example – EPICS Experimental Physics and Industrial Control System SPARC control room application to control the C band RF chain
Example – EPICS Experimental Physics and Industrial Control System CA get
Example – EPICS Experimental Physics and Industrial Control System CA put
Thank you