Detailed Design Report Chapter 9 Control System MAX IV Facility
CHAPTER 9.0. CONTROL SYSTEM 1(9) 9. Control System 9.1. Introduction...2 9.1.1. Requirements... 2 9.2. Design...3 9.2.1. Guidelines... 3 9.2.2. Architecture... 4 9.3. Hardware...6 9.4. Connectivity...7 9.4.1. Field Bus... 7 9.4.2. Computer Network... 7 9.5. Software...8 9.5.1. Programming Languages... 8 9.5.2. Software Repository and Deployment... 8 9.5.3. Databases... 8 9.5.4. Operating System... 9
Detailed Design Report Chapter 9 Control System 9.1. Introduction MAX IV Facility
CHAPTER 9.0. CONTROL SYSTEM 2(9) 9.1. Introduction The Machine Control System encompasses the end user interfaces and all that is necessary to control the hardware devices and consequently the physical parameters of the system. The Control system should require little or no in-house development of new, cutting edge, solutions. Instead, most of the hardware and control software has already been implemented at other institutes and the trend in open nature and willingness to share means that solutions can easily be imported without the need to re-implement them. In some instances, little or no adaptation will be needed to arrive at a working solution. The work associated with deployment of the MAX IV Control System will mostly involve adaptation of existing technology. 9.1.1. Requirements The requirements engineering process has to be flexible enough to meet the complexity challenges in a modern control system. During the development process, an open, light weight process needs to be applied due to the prototypical nature of a new light source facility, where requirements partially emerge. Despite the difficulty of foreseeing all the requirements, the success of out-sourcing projects of sub-systems heavily depends on requirements specification quality. The requirements engineering process for the MAX IV Control System shall be oriented on the following issues: ease of use, in particular for persons who are not related to control system development suitability for interdisciplinary communication prioritisation of features and qualities in order to enable enough resources for the projects managers validation to ensure the actual user value of a system, its features etc traceability of requirements over time The capture of the requirements will be different depending on the type of project. The simplest version being a text file with a use case description or in the Control Systems group a professional requirements tool to track all requirements.
Detailed Design Report Chapter 9 Control System 9.2. The Design MAX IV Facility
CHAPTER 9.0. CONTROL SYSTEM 3(9) 9.2. The Design 9.2.1. Guidelines There are a number of design guidelines in the design of the Control System to make it cost and resource efficient, besides avoiding to re-invent the wheel as mentioned in the introduction, Standardisation of hardware and software systems The effort to standardise systems results in a reduced number of system types which need to be developed and maintained by the support staff. This reduces the resources needed for development and maintenance or put in another way, given fixed resources, raises the level of the achievable goals. Develop modular solutions The MAX IV facility has a long lifetime and during these years there will be new advances in technology. Developing modular, independent hardware and software systems will make it easier to upgrade to new technologies by being able to upgrade the system in modular parts. Use open source solutions The building of an accelerator control system will involve connecting many, individual, smaller systems. Using an open source solution facilitates the integration since the source code is available to make adaptations where needed. Open source also reduces cost by avoiding license fees. This also favours collaboration with other institutes which might be less inclined to start a collaboration involving a proprietary product, not chosen by them, which requires an economic investment. Enable users (accelerator staff) to configure and operate the systems themselves With suitable tools, the accelerator staff will be able to perform many tasks themselves which otherwise would have to be performed by the control system staff. Besides relieving the control system staff, this means that the work can be done more efficiently by the application experts.
CHAPTER 9.0. CONTROL SYSTEM 4(9) 9.2.2. Architecture The architecture of the control system is shown in Figure 1. The integration layer for will be TANGO (www.tango-controls.org) used at research facilities such as ESRF, Soleil, ALBA, LMJ and FRM 2. Systems which require fast and/or real time control will be implemented at the electronics level and the integrative layer will connect for configuration or data acquisition (e.g. archiving of process variables). A local node, such as a Linux PC, will be used to connect to these systems instead of connecting directly from the integrative layer. This ensures that a potential network problem does not disturb the dedicated system. This solution with extra shielding should be used for the most critical devices (RF systems, accelerator protection systems). In the TANGO layer, libraries or drivers should be used to connect to hardware. The use of libraries opens up more possibilities to share and collaborate with other facilities even if they do not use TANGO. A number of services such as archiving and alarms will always be connected to the integrative layer. These are already developed within the TANGO community and should be used at MAX IV. At the top layer we find client applications in the form of graphical user interfaces, scripting and macro frameworks and bindings to data processing software. An example of the latter is the connection to Elegant made at Elettra and another the MAT-lab middle layer which makes it possible to use accelerator physics applications such as the Accelerator toolkit.
CHAPTER 9.0. CONTROL SYSTEM 5(9) Figure 1: Architecture of the MAX IV Control System.
Detailed Design Report Chapter 9 Control System 9.3. Hardware MAX IV Facility
CHAPTER 9.0. CONTROL SYSTEM 6(9) 9.3. Hardware The hardware divides into the following categories, each of which is subject to the design guidelines previously mentioned: Computers and Peripherals these are either control end stations with no direct hardware interfaced, or rack mounted machines with electronics connected to the bus. They may include the display and any other peripherals needed to perform the task for which they are intended. Data Acquisition and Control Electronics for controlling motion or digital/analogue I/O devices. Monitoring sensors and Power drivers for amplifying signals, requires the joint expertise of scientists and engineering groups. All electronics and computers should fit in 19'' cabinets. This provides a uniform, cost effective, environment where all equipment is cooled and protected.
Detailed Design Report Chapter 9 Control System 9.4. Connectivity MAX IV Facility
CHAPTER 9.0. CONTROL SYSTEM 7(9) 9.4. Connectivity 9.4.1. Field Bus The will be a number of different field buses in the MAX IV Control System. Each will require a certain amount of development effort and therefore this number should be kept as low as possible. The preferred field bus will be Ethernet and failing that, other bus types can be accepted after discussion with the Control Systems group. All hardware must have a well documented protocol regardless of field bus. 9.4.2. Computer Network The computer network (referred to as network) is the facility wide communication channel for the complete control system and will be designed for robustness and speed. The design will contain a redundant, high speed, backbone running though the MAX IV facility. Besides performance, the network needs to be secure and prevent unauthorised access. It is highly desirable to be able to monitor the performance and status of the network equipment. This will facilitate preemptive maintenance of the system and also help when trouble shooting the control system. Key parameter from the network monitoring will be stored in the TANGO database.
Detailed Design Report Chapter 9 Control System 9.5. Software MAX IV Facility
CHAPTER 9.0. CONTROL SYSTEM 8(9) 9.5. Software 9.5.1. Programming Languages The programming languages used in the control system is governed by the TANGO framework. This includes C/C++, Java and Python and although it is not limited to this it will be enough to solve most of high and low level tasks. In addition, we will provide bindings to other high level applications like Igor Pro and MAT-lab if required by the accelerator staff. 9.5.2. Software Repository and Deployment There will be a central software repository for all source code used in the control system. It will track dependencies between different software and use versioning to track changes. Build routines will be a part of the deployment workflow and there will be a binary repository of stable releases. 9.5.3. Databases All devices within the TANGO layer are stored in a MySQL database. It contains the addresses for the devices and its configuration parameters. The database can be populated manually, but most of the entries of new devices will be done automatically using scripting. There are a number of solutions available to perform this task within the TANGO community. The TANGO archiving system will be used to store all process variables into a separate database. Ideally, this should also include information from the infrastructure like room temperature and compressed air pressure.
CHAPTER 9.0. CONTROL SYSTEM 9(9) 9.5.4. Operating System Our preferred platform will be GNU/Linux in the Control System. This provides a low cost with high availability and good remote management. There are many flavors of GNU/Linux and we will try to minimise the number used at MAX IV. It is not always possible to have only one operating system because some applications require a different platform. This will have to be managed and given no other option this will be accepted in the control system.