Presentation is loading. Please wait.

Presentation is loading. Please wait.

FESA Overview Leandro Fernandez On behalf of the FESA Team 6/22/2010FESA Overview1.

Similar presentations


Presentation on theme: "FESA Overview Leandro Fernandez On behalf of the FESA Team 6/22/2010FESA Overview1."— Presentation transcript:

1 FESA Overview Leandro Fernandez On behalf of the FESA Team 6/22/2010FESA Overview1

2 CERN Context  Chain of many accelerators linked all together  A large number of Front-end computers (>800)  A huge equipment diversity (>500)  An enormous number of physical devices to control (45000)  Multiplexed accelerators  More than 80 active software developers 6/22/2010FESA Overview2

3 Equipment Software Role Equipment Software On-demand update s Control Room Timing Card Connected to the timing network Accelerator Events CERN Accelerator complex Software Device model > 6/22/2010FESA Overview Hardware access Hardware Interface Module 3

4 FESA Objectives  Homogenize equipment software across all accelerators  Speed-up and simplify the task of developing and maintenance software  To spare the programmer of defining the architecture of each new application  Abstract common layer to hide some accelerator discrepancies  Captures the structure and the program’s flow of control  Defines the application domain’s design pattern: main classes, their relationships and responsibilities 6/22/2010FESA Overview4

5 FESA Equipment Class FESA Framework 6/22/2010FESA Overview  The Framework is the application  Equipment Specialist provides application-specific behaviour by specializing basically: Device, RTAction, ServerAction 5

6 Remote Device Access (RDA) 6/22/2010FESA Overview6  Hide the communication technology  Client/Server model  Device/Property model Device belongs to a Device Class Device Class defines the properties Properties define the Device Class interface Properties data can be complex  Narrow API opposite to Wide API A few well known calls: get, set and subscribe Device and property passed as parameters DeviceHandle bpmDevice = rda.getDeviceHandle(“BPM1”); Data result = bpmDevice.get(“Position”); Data object is a container of self-defining data

7 FESA Overview XML-Centric software Design  Driven by the FESA Design Schema that encodes the meta-model. XML is used as a high level modelling Language  Equipment specialist thinks equipment’s design in terms of: Public interface: properties Device-model: software abstraction of the hardware Server actions Real-time actions Logical events Scheduling: triggering rules 6/22/20107

8 FESA Overview Code Generation  Thanks to the formal language used to design equipment software the framework is refined by automatic code generation rather than hand-coding XSLT  Generated Code: entirely handled by FESA  Custom Code: Action skeletons are generated by FESA FESA Equipment Class FESA Framework 6/22/20108

9 FESA Development Workflow 6/22/2010FESA Overview9

10  FESA version 3.0  Major extensions: Making FESA exportable to other labs. GSI. IDE based on Eclipse : design, instantiate, coding… Relationships : inheritance, association, composition Massive deployment in LHC : lessons learned FESA Ongoing Activities CERN GSI 6/22/2010FESA Overview10

11 FESA Overview Conclusions  In spite of the huge diversity of devices, FESA has successfully standardized a high level language and an object oriented framework  FESA reduces the time spent developing and maintaining equipment software and brings a strong consistency across all equipment software.  The FESA development environment is based on a modelling tool, and keeps model and implementation synchronized  New version of FESA brings an exportable framework and opens the door to external collaboration 6/22/2010 11


Download ppt "FESA Overview Leandro Fernandez On behalf of the FESA Team 6/22/2010FESA Overview1."

Similar presentations


Ads by Google