Command | Parameters | Exception | Return | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1a. Observation related commands -- miscellaneous | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
selftest | (unspecified) | ^C aborts and returns prompt as soon as possible, or after current action is done if it can't be aborted. | PASS if all test ok, FAIL if any failed. | Performs tests at various levels and provides system status
about
| ||||||||||||||||||||||||||||||||||||||||||||||||||||
1b. Observation related commands -- pre-exposure setup | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
raster |
Xcenter Ycenter Xsize Ysize [Xbin [Ybin [SUBSAMPLE]]] in addition to using pixel coordinate values, Xcenter Ycenter can be "CENTER", Xc Yc Xs Ys can all be "FULL", and Xbin Ybin can be "BIN2" or "BIN4" Finally, if binning, the keyword SUBSAMPLE can be added to select subsampling instead of adding. (Refer to parsing code in MA skeleton.) | Command only stores newly requested raster in VxWorks. Should always be instant. | PASS if parameters valid, FAIL if not. | Defines a subraster and binning factor for all (80) amplifiers. Every amplifier (per 1K by 4.5K region if using 2 amplifiers per CCD) must use the same values for a given exposure. The xy-coordinate system for each region will be defined in terms of the corner from which the individual amplifier is read out, so regions may not all have the same orientation on the final mosaic. Subrastering will be used for focus mode (and lab development.) Any prescan/overscan regions that are adjacent to the current raster should automatically be included. Overscan cannot be defined by the user. | ||||||||||||||||||||||||||||||||||||||||||||||||||||
filter | INDEX|NAME
Except for the case of two filter move commands in a row, return
should be immediate.
| PASS if filter INDEX/NAME is valid, FAIL if not.
| Begins moving filter (selected either by number or name) into the beam.
If another filter request is in progress, preferred behavior is to
abort that request and start the new one. If this is difficult to
implement, an interruptible "filter wait" should be executed (see below)
before the new request is initiated (and before the prompt returns.)
| wait
| ^C aborts the action and returns the prompt, if possible.
Otherwise ^C should result in a message warning the user
that they must wait.
| PASS after selected filter made it into the beam, FAIL if not or aborted.
| Waits for the last requested filter to be in the beam. The "go"
command should do an automatic "filter wait" before openning the shutter.
Progress messages should be printed approximately once per second.
| etime
| min:sec or sec where sec can be a floating point number.
(Refer to parsion code in MA skeleton.)
| Command only stores data in VxWorks. Should always be instant.
| PASS if time within limits, FAIL if not.
| Sets the exposure (integration) time for the next frame
(non-bias) frame.
While taking a bias, the agent should still remember, and allow changes to
the exposure time. In the skeleton, the resolution of the parameter is configurable
by a compile-time constant, but we decided this resolution would be 0.1 seconds.
| etype
| Either a single letter code, or the full name
of one of the following exposure types:
|
Command only stores data in VxWorks. Should always be instant.
| PASS if valid parameter, FAIL if not.
| Sets the exposure type for the next frame. This will
control things like whether the shutter opens or not, etc.
| defaults
|
| Command only stores data in VxWorks. Should always be instant.
| Should always return PASS.
| Set raster to FULL, ccdlist to ALL, etype to OBJECT and etime to 1.0 second.
| 1c. Observation related commands -- exposure/readout |
| preexp
| (none)
| Not interruptible, unless long timeouts are needed.
| PASS if all parameters successfully set.
| raster, ccdlist, etime, and etype
only select parameters. This command should do any neccessary configuration
to the camera, and also make a call to "filter wait" and
"shutter wait" to make sure everything is ready for the
shutter to be opened, or for integration to begin.
| expose
| (none)
| Not interruptible. Returns immediately.
| PASS if shutter was successfully opened
and integration has started.
| expose assumes preexp has already been called
and begins integration (opens the shutter if object exposure.)
If exposure already in progress... should FAIL for now (maybe
useful as a way to download a new etime in the future?)
| wait
| ^C aborts an expose wait, | ^Z also stops an expose wait, but if called from a go, the readout will still take place. PASS after current exposure completes
and shutter is successfully closed.
| expose wait waits for the previous exposure to be
completed, or returns PASS immediately if there was no exposure
in progress.
Progress messages including percent done and time remaining should be printed approximately once per second.
| readout
| (none)
| Not interruptible. Returns immediately.
| PASS if pixel transfer successfully initiated.
| readout always executes an automatic expose wait
because it doesn't make sense to begin reading out if integration
is in progress. (During this period, signal handling of the
expose wait command applies. Next, readout is initiated
and prompt returns. Should FAIL if readout already in progress. | wait
| ^C aborts if possible. This
is not essential if it is difficult to implement.
| PASS when readout complete and all pixels successfully transfered
to NEO.
| readout wait waits for any readout in progress to finish,
or returns PASS immediately if none in progress.
Progress messages including percent done should be printed approximately once per second.
| go
| Iterations
| ^C aborts sequence and returns to prompt as soon as possible. | ^Z stops integration and jumps to readout phase immediately. ^\ only applies if Iterations > 1. Stops after next readout. PASS if exposures completed, FAIL if ^C or problem with an exposure.
| This command sequences (1) preexp, (2) expose,
and (3) readout (which waits for expose to finish).
It may also do a (4) readout wait if it is not desirable to
begin moving filters or other things under MA's control during
the readout. This is the most commonly used command. The individual
commands are available for engineering purposes, or when it is
necessary to synchronize other actions during an exposure/readout.
| |
ccdlist | "ALL" or ??? (undecided) | Command only stores data in VxWorks. Should always be instant. | Selects a list of CCDs which should be included in the next readout. Could include a map of the mosaic with the amplifiers. |