Presentation is loading. Please wait.

Presentation is loading. Please wait.

ICALEPCS’2005 - GenevaACS in ALMA1 Allen Farris National Radio Astronomy Observatory Lead, ALMA Control System.

Similar presentations


Presentation on theme: "ICALEPCS’2005 - GenevaACS in ALMA1 Allen Farris National Radio Astronomy Observatory Lead, ALMA Control System."— Presentation transcript:

1 ICALEPCS’2005 - GenevaACS in ALMA1 Allen Farris National Radio Astronomy Observatory Lead, ALMA Control System

2 ICALEPCS’2005 - GenevaACS in ALMA2 The ALMA Project (Atacama Large Millimeter Array) 64 x 12m antennas, 30-950 GHz Array configurations:150 m-14 Km Near S. Pedro de Atacama, Chile at 5000 m EU and North America as equal partners Japan will add Compact Array: 12 x 7m + 4 x 12m antennas and extra correlator, receivers 2 prototype antennas (in Socorro, NM) Construction phase 2003-2011 Early Science foreseen for 2009

3 ICALEPCS’2005 - GenevaACS in ALMA3 ALMA

4 ICALEPCS’2005 - GenevaACS in ALMA4 ALMA Computer Network In addition to non-real-time computers, ALMA will have over 82 computers that operate in real-time that may be separated by distances of 14 Km. ALMA makes heavy use of CORBA for distributed processing. Many parts of the system are in Java, but critical real-time code is in C++. Python is also used as a high-level scripting language.

5 ICALEPCS’2005 - GenevaACS in ALMA5 Physical Architecture

6 ICALEPCS’2005 - GenevaACS in ALMA6 Software Context

7 ICALEPCS’2005 - GenevaACS in ALMA7 Major Features of ACS Component/Container model Properties of Components Notification Channels Alarms

8 ICALEPCS’2005 - GenevaACS in ALMA8 Component/Container Model Important conceptually and architecturally: This is the major feature that allows us to manage and access objects via CORBA. All major software modules (a collection of classes) are components that run under the control of a container. The ACS Manager controls the deployment of containers throughout the network.

9 ICALEPCS’2005 - GenevaACS in ALMA9 Containers Containers are language specific: either C++, Java or Python. Containers manage the lifecycle of components. When a client requests the services of a component the container loads it (if it isn’t already loaded) and gives the client access to it. Containers provide services to components, such as logging, error handling, and access to other components.

10 ICALEPCS’2005 - GenevaACS in ALMA10 Components A component is a CORBA object with an IDL interface that is available to clients. Crafting a component is fairly easy: An “ordinary” class (in Java for example) is required to: –Implement certain ACS lifecycle methods required of all components and, –Implement the public IDL methods that it makes available to external clients.

11 ICALEPCS’2005 - GenevaACS in ALMA11 Use of Components and Containers in Control The Control system uses all three types of containers: Java, C++, and Python. Every antenna in ALMA has its own computer and its own container on that computer. Each hardware device on the antenna is represented as a component in that antenna’s container. In addition, the antenna itself is a component that is commanded and controlled by the Master Component that controls the entire ALMA array.

12 ICALEPCS’2005 - GenevaACS in ALMA12 Properties of Components Components may define properties. These may be hardware device monitor points such as the value of a voltage, temperature, frequency setting, or a state variable (busy, idle, error, etc.). ACS provides facilities for monitoring properties based on time intervals or other logical criteria (such as when value changes by a certain amount). Values of properties are gathered and stored permanently in the archive. This is a very important part of the Control system.

13 ICALEPCS’2005 - GenevaACS in ALMA13 Notification Channels Notification channels provide asynchronous communication across the ALMA network. Based on the publish/subscribe model: any subsystem may create a notification channel and publish events (defined using IDL structs) and any interested client may subscribe. Control uses two notification channels: an “external” one for communication with other subsystems and an “internal” one that is used to command antennas and other real-time components.

14 ICALEPCS’2005 - GenevaACS in ALMA14 Alarms ACS will release a new version of alarms in its 5.0 version. Control will make heavy use of alarms. This is very important for managing error situations. Example: If the temperature in an antenna back-end rises beyond some limit, the back- end devices will be shut down and the power supply turned off.

15 ICALEPCS’2005 - GenevaACS in ALMA15 Why have ACS? ACS stands for ALMA Common Software. It functions as a kind of architectural cement that unifies the system into a coherent structure. ACS is very important as an insulating layer between our software and CORBA. –We want our software to be as independent of CORBA as is reasonable. –We want to depend on CORBA concepts and be relatively independent of specific CORBA implementations.


Download ppt "ICALEPCS’2005 - GenevaACS in ALMA1 Allen Farris National Radio Astronomy Observatory Lead, ALMA Control System."

Similar presentations


Ads by Google