|
|
AUSTRALIAN
NATIONAL UNIVERSITY System Design Note 11.07 Created: 6 September 2001 Last modified: 6 September 2001 |
THE NIFS OFFSET COMMAND
Mark Jarnyk
Research School of Astronomy
and Astrophysics
Institute of Advanced
Studies
Australian National
University
Revision History
|
Revision No. |
Author & Date |
Approval & Date |
Description |
|
Revision 1 |
Mark Jarnyk 15 August 2001 |
Peter Young 20 August 2001 |
Original document. |
|
|
|
|
|
Contents
4.1 Adding the
Command to the Command Set
4.2 Convert the
Offset From User Units to Engineering Units
4.3 Modify the
eng_ss Code to Handle the New Command.
4.4 Convert the
Measured Offset from Engineering Units to User Units
This document describes the Gemini Near-infrared Integral Field Spectrograph (NIFS) offset command that has been added to allow the grating turret and the focal plane mask wheel positions to be incremented or decremented by arbitrary amounts.
|
Document ID |
Source |
Title |
|
|
RSAA |
NIFS Critical Design Review documentation |
The Gemini Near-infrared Integral Field Spectrograph (NIFS) contains a focal plane mask wheel and a grating turret.
Some positions on the focal plane mask wheel contain occulting masks that will be used to block the light from a bright star. It is desirable to be able to offset the focal plane mask wheel from its nominal position in order to accurately position these masks within the field-of-view.
Similarly, the gratings on the grating turret are set to nominal angles defined by particular central wavelengths. It is desirable to be able to offset the grating angle from this nominal position in order to center a different wavelength on the detector.
This note describes how this offset command was implemented in the NIFS software.
Four modifications were required to implement this new command:
The rest of this section describes the details of this implementation.
A new opcode was added to the command set for the new command: opMoveOffset (This opcode needed to be added to the command set in the schematics, hence nifsCcSet.sch and nifsWfsSet.sch were modified).
In the database, a CAD record exists for each command. Adding a new command, requires more than simply adding a CAD: the CAD forms part of an entire hierarchy of records used to handle commands. In NIFS, the change was achieved by adding a new comp1mCadCmd symbol (MoveOff) to handle the offset command. This symbol was added to comp1mCad.sch. As this schematic is used by all components in both the components controller and the wavefront sensor, every component can now be offset from its nominal position (the user is prevented from offsetting the other components by a mechanism described later). The command takes an offset parameter in the specific user units needed for that component.
The engineering display screen comp1m.adl, was modified to handle the new command. It uses the units SIR (described in Section 4.4) and offset SIR to display the actual offset.
The two components that are offset require different units: a mask is offset by arcseconds in the focal plane, whereas a grating requires a new central wavelength to be specified. The conversion is unique for each component. The conversion is performed by the CAD’s snam procedure, and is specified as a label passed through the hierarchy of schematics. Also, the offset is checked to see whether it is within limits: for the focal plane mask wheel the offset must be less than 1.6 arcseconds from the nominal position and for the grating turret it must be less than 2 degrees from the nominal position. Note that the specified offset is relative to the nominal position (i.e., offsets do not accumulate).
Each snam verifies the data type, as usual, and then calls a unique conversion routine. For the focal plane mask wheel the conversion is a simple linear scaling:
(1)
The grating turret uses the grating equation to calculate the new angle:
(2)
where q is the grating angle, lc is the central wavelength, A is the grating groove density, and f is the Ebert angle. Using the values of Table 30 in the NIFS CDR a hard-coded lookup table is used to find the parameters for a particular grating (Table 1 shows the values used: for NIFS, the Ebert angle is 30º). This also means that the routine must know which grating is currently selected. This was achieved by connecting the N input on the CAD to the VAL field of the SelLut record which is activated after a SELECT command. The VAL field of the SelLut record reports the index of the match in the lookup table for the argument passed with SELECT. These component lookup tables are specified in ICD1.9/3.1f. The conversion routine’s hard-coded table follows this specification, and requires that the database’s lookup table does this too.
Table 1: Values Used to Calculate Grating Angle
|
Pass Band |
Nominal Central Wavelength (mm) |
Groove Density at 60 K (g/mm) |
Nominal Grating Angle (deg) |
|
Z |
1.05 |
600.3241 |
19.1 |
|
J |
1.25 |
600.3241 |
22.9 |
|
H |
1.649 |
400.2161 |
20.04 |
|
K |
2.2 |
300.1621 |
20.1 |
|
Ks |
2.16 |
300.1621 |
19.7 |
|
Kl |
2.3 |
300.1621 |
21.0 |
All components have a MoveOff schematic. For the components that are not to be offset (all the components in the OIWFS and the CC’s filter wheel, flip mirror and environmental cover) the snam used, CADNoOff, reports an error when an offset is attempted, doing nothing else.
The state sequence code, takes the offset in engineering units provided by the CAD, and adds it to the current position to get the target position and thereafter it is handled simply as a move command. No extra states were required.
As for the database, a new opcode was added to eng_ss (corresponding to the same numerical value as the opcode used in the database).
In addition, the eng_ss code checks that the previous command was either a SELECT or OFFSET command. If not, it issues an error message, and the command is aborted.
Once the component is offset, it is necessary to display the actual offset achieved – this will differ from the requested offset owing to the discrete nature of component movement. A schematic, comp1mSadOff.sch (Figure 1), was added to the comp1mSadRec schematic to handle the offset status. This new schematic contained two SIRs: one to hold the offset units (μm or arcsecs) and the other to hold the offset value. The conversion is performed by a gensub record, with the conversion routine specified in its SNAM field. This allowed for a component-specific routine to be used. The same equations (1 and 2) were used to convert the measured offset in engineering units to user units. All of the SNAMs associated with the offset command, are in the file compMoveOff.c.

Figure 1: Comp1mSadOff.sch which handles the display of offset information.
An obvious limitation is that an offset is permitted only after a SELECT or OFFSET. It would be possible to issue a MOVE command to the exact position to which a SELECT would move the component, but not then be able to offset the component.
|
Figure 1 |
|
|
|
|