• No se han encontrado resultados

Del comercio mayorista

In document Obras y Servicios Públicos (página 31-33)

As part of theJouFLUintegration, it was decided to make the beam combiner compliant with theCHARAsoftware environment. CHARATechnical Report No. 70 (ten Brummelaar 1998) describes the standard for coding practices for the Array. All programs are to be written in ANSI C, C++, orBourne shell scripting language, functions must be prototyped, and compiled withgccusing the-Wall flag. There are standard libraries provided to facilitate uniform code.

The software changes forJouFLUoccurred in two stages:

1. The originalFLUORalgorithms (Coudé du Foresto et al. 1997) were ported to a modern C compiler. At this stage, nothing aboutFLUORhad changed apart from the environment in which the software was running. The hardware was tested without additional change.

2. The camera readout was converted from serial (RS-232) readout to ethernet readout via Category 5 (cat 5) cable and socket communications. This greatly improved the data bandwidth, enabling higher camera read rates and more data channels for spectral dispersion mode.

Beyond this were numerous additions to the server software, including the ability to

subsystems. For ease of use, an efficient Graphical User Interface was added to control the server. Finally,JouFLUwas incorporated into theCHARAobservation sequencer, “Cosmic Debris”, that controls the numerous steps that are required, from moving to a target to finding fringes and recording data.

4.10.1 The Move to C

The previous Command/Control system forFLUORconsisted of software originally written for use whileFLUORwas atIOTA. The software was written in an early version of LabView and operated parallel to the normal functions ofCHARA. As such it was unable to take advantage of some of the features present at theCHARAArray due to the integrated software

environment. To remedy this, theFLUORsoftware system was rewritten as theJouFLU server and Graphical User Interface (GUI). This required an extensive ground-up conversion, by Theo ten Brummelaar, of the proprietary LabView code to C code modeled on existing CHARAbeam combiner functions. After this conversion, new features were added, by Nicholas Scott and Theo ten Brummelaar, to the code to provide for the new hardware capabilities ofJouFLU. With the new softwareJouFLUcan be integrated with otherCHARA systems such as the fringe tracker,CHAMP. The major software changes occurred over a two year period, from mid-2011 until mid-2013, with improvements and development continuing indefinitely.

There are several major advantages to the new software system. TheJouFLUserver runs on a modern rack-mounted PC running the CentOS distribution of the Linux operating system.

Operations from anyCHARAremote facility are now possible. JouFLUwill be kept up to date with any system software updates to theCHARAoperating environment. TheJouFLUData Reduction Software (DRS) began as a modified version of the very well understood CLASSIC CHARA DRS. Now, theJouFLU DRSis implementing the newest data reduction strategies and the two combiners can share a commonDRS. Theo ten Brummelaar, with the assistance of Paul Nuñez, has spent months creating this highly sophisticatedDRS.

4.10.2 New Camera Code

TheNICMOScamera is controlled by single computer running MS-DOS that is on an isolated ethernet network with theJouFLUcomputer. Updates have been made to the software that runsNICMOSto enable the replacement of the RS-232 serial port readout to an ethernet network-based readout. This increased the available bandwidth and allows up to 20 pixels total (5 per channel) to be read-out at 500 Hz.

4.10.3 TheJouFLUServer

The software at theCHARAarray has been developed by Theo ten Brummelaar (ten Brummelaar 1998) and relies on socket-based communication. There is a server, typically running some aspect of hardware, and a client. The client is typically a Graphical User

Interface (GUI). One and only one instance of a server is allowed to run. Servers are typically run on a specific computer and can connect to multiple instances of a client. The server has one or more sockets that are bound to specific ports. It listens for connection to a port from a

client. Once the connection is made, the client can communicate instructions to the hardware through the server. This is the interface between the user and the instrument hardware. A full description of theJouFLUserver is located insection A.1.

Figure 4.30: TheJouFLUserver gives information on theXPSstage positions, the NICMOS camera readout mode and rate, and offers direct control over allJouFLUsystems.

4.10.4 The Graphical User Interface

AGUIis presented to the observer that provides identical functionality as the server but in a more intuitive format. TheJouFLU GUIhas tabs for the data collection setup, the camera setup, theXPSstage positions and control, viewing the H-band pupil camera, the alignment process and Zaber control, movie or camera frame readout mode and camera alignment, photometry monitoring, data collection, andCHARAconfiguration. More detailed information for each tab and all functions of theGUIare given insection A.2.

Figure 4.31: The original FLUOR GUI from IOTA, operating under LabView. (image credit: Vincent Coudé du Foresto)

Figure 4.32: TheJouFLU GUI(bottom) shown while recording white light lab fringes. Clock- wise from top left: the server, the fringes, photometry per channel, fringe power spectrum, a waterfall plot of the fringes, and a waterfall plot of the power spectrum.

In document Obras y Servicios Públicos (página 31-33)

Documento similar