The Keck Interferometer Nuller (KIN) will be used to examine nearby stellar systems for the presence of circumstellar exozodiacal emission. A successful pre-ship review was held for the KIN in June 2004, after which the KIN was shipped to the Keck Observatory. The integration of the KIN's many sub-systems on the summit of Mauna Kea, and initial on-sky testing of the system, has occupied the better part of the past year. This paper describes the KIN system-level configuration, from both the hardware and control points of view, as well as the current state of integration of the system and the measurement approach to be used. During the most recent on-sky engineering runs in May and July 2005, all of the sub-systems necessary to measure a narrowband null were installed and operational, and the full nulling measurement cycle was carried out on a star for the first time.
This paper presents a discussion of the evolution of a sequencer from a simple Experimental Physics and Industrial Control System (EPICS) based sequencer into a complex implementation designed utilizing UML (Unified Modeling Language) methodologies and a Computer Aided Software Engineering (CASE) tool approach. The main purpose of the Interferometer Sequencer (called the IF Sequencer) is to provide overall control of the Keck Interferometer to enable science operations to be carried out by a single operator (and/or observer). The interferometer links the two 10m telescopes of the W. M. Keck Observatory at Mauna Kea, Hawaii.
The IF Sequencer is a high-level, multi-threaded, Harel finite state machine software program designed to orchestrate several lower-level hardware and software hard real-time subsystems that must perform their work in a specific and sequential order. The sequencing need not be done in hard real-time. Each state machine thread commands either a high-speed real-time multiple mode embedded controller via CORBA, or slower controllers via EPICS Channel Access interfaces. The overall operation of the system is simplified by the automation.
The UML is discussed and our use of it to implement the sequencer is presented. The decision to use the Rhapsody product as our CASE tool is explained and reflected upon. Most importantly, a section on lessons learned is presented and the difficulty of integrating CASE tool automatically generated C++ code into a large control system consisting of multiple infrastructures is presented.
A key thrust of NASA's Origins program is the development of
astronomical interferometers. Pursuing this goal in a cost-effective and expedient manner from the ground has led NASA to develop the Keck Interferometer, which saw first fringes between the twin 10m Keck telescopes in March of 2001. In order to enhance the imaging potential of this facility, and to add astrometric capabilities for the detection of giant planets about nearby stars, four 1.8 m 'outrigger' telescopes may be added to the interferometer. Robust performance of the multi-aperture instrument will require precise alignment of the large number of optical elements found in the six optical beamtrains spread about the observatory site. The requirement for timely and reliable alignments dictated the development of an automatic alignment system for the Keck Interferometer. The autoaligner consists of swing-arm actuators that insert light-emitting diodes on the optical axis at the location of each optical element, which are viewed by a simple fixed-focus CCD camera at the end of the beamtrain. Sub-pixel centroiding is performed upon the slightly out-of-focus target spots using images provided by a frame grabber, providing steering information to the two-axis actuated optical elements. Resulting mirror-to-mirror alignments are good to within 2 arcseconds, and trimming the alignment of a full beamtrain is designed to take place between observations, within a telescope repointing time. The interactions of the autoaligner with the interferometer delay lines and coude trains are discussed in detail. The overall design of the interferometer's autoaligner system is presented, examining the design philosophy, system sequencing, optical element actuation, and subsystem co-alignment, within the context of satisfying performance requirements and cost constraints.
Testbeds and production systems need lightweight, capable, and rapidly developed applications. We have developed several such scripts for testing and operating the Keck Interferometer. Two stand-alone (Tcl/Tk script) applications implemented to support the Keck Interferometer are discussed. The first is a front end to automatic and manual optical alignment embedded software, developed using the Keck Observatory Keyword API extension. The second is a user interface to the Interferometer Sequencer that communicates with it via both Keywords and Common Orbject Request Broker Architecture (CORBA). We discuss client-side CORBA scripts implemented in Tcl, Perl and Python. These are all technologies that are either currently being used on testbeds at JPL or being evaluated for future use. Finally, a Python example demonstrating implementation of a simple CORBA server is presented.
The Keck Interferometer links the two 10m Keck Telescopes located atop Mauna Kea in Hawaii. It is the first 10m class, fully AO equipped interferometer to enter operation. Further, it is the first large interferometer designed to be handed over from a design and implementation team to a separate operations team, and be used by astronomers who are not interferometer specialists. As such it offers unique challenges in reducing an extremely complex and powerful system to an apparently simple user interface, and providing a well engineered system that can be maintained by people who did not develop it.
This paper gives an overview of the control system that has been implemented for the single baseline operation of the instrument, and indicates how this will be extended to allow control of the future modes of the instrument (nulling, differential phase and astrometry).
The control system has several parts. One is for control of "slow" sub-systems, which is based in the EPICS architecture, already ubiquitous at the Keck Observatory. Another, used to control hard real time sub-systems, is based on a new infrastructure developed at JPL, programmed in C++, Java, and using CORBA for communication. This infrastructure has been developed specifically with the problems of interferometric control in mind and is used in JPL's flight testbeds as well as the Keck Interferometer. Finally, a user interface and high level control layer is in development using a variety of tools including UML based modeling in the Rhapsody tool (using C++ and CORBA), Java, and Tcl/Tk for prototyping.