The "Automated Functions" view is designed as a container for a series of functions that mimic the idea of a script. These functions will run automatically without any or very little interaction from the user. It is important to remember that these are NOT tcl scripts running within LOIS. It is more like a LOUI macro.
Dither Function
Introduction
The first function that is implemented within this view is the dither function:
The dithering is composed of three independent actions; TCS offset, filter move, and an exposure. The input is a pattern file:
"TYC 2531-01739-1" 2.0 0.0 30.0 U "first dither (0,30) - U" "TYC 2531-01739-1" 2.0 30.0 0.0 B "second dither (30,0) - B" "TYC 2531-01739-1" 2.0 0.0 -30.0 V "third dither (0,-30) - V" "TYC 2531-01739-1" 2.0 -30.0 0.0 R "fourth dither (-30,0) - R" "TYC 2531-01739-1" 2.0 30.0 30.0 I "fifth dither (30,30) - I" "TYC 2531-01739-1" 2.0 0.0 0.0 OPEN "origin"
Each input line is composed of
- object title - string composed of any valid ASCII character surrounded by double quotation (")
- exposure time - float/double (seconds)
- offset 1 (xi) - float/double (arc-seconds)
- offset 2 (eta) - float/double (arc-seconds)
- filter name - string that has to match the display filter name (no spaces allowed)
- comment - string composed of any valid ASCII character surrounded by double quotation (") - optional
The input is not fixed width and is validated when loaded. The validation checks for correct number of parameters, correct numerical format and correct filter names. The offset command is an absolute TCS offset command in TPLANE mode. Both parameters are in arc-seconds with a maximum allowed value that is set in the configuration file:
<tcs-dither-limit>900.0</tcs-dither-limit>
By default a pattern will run only once and if it needs to be repeated, the loop count can be increased.
Operation
The initial action is to "Load Pattern File" which will present a dialog box for selecting the input file. The default extension is *.txt but the dialog box allows selection of other types even though they are dimmed. The "Execute" button will be enabled after the input has been processed and validated.
Pressing the "Execute" button starts the process and there will be no further interaction with the user unless the user wishes to abort the process. The offset and filter move commands are asynchronous and are issued concurrently. Both commands have to be completed before the exposure command is initiated. The process checks for the TCS in position flag and the AOS settled flag to determine that the offset command is completed. The filter move command completion is based on the responses from the OMS cards. The exposure is initiated via the following LOIS command:
single start {test=false} {sub=0} {oscan=32} {trigger=soft} {etime=2.0} {nexp=1} {title=TYC 2531-01739-1} {comment1=first dither (0,30) - U}
eTime
, title
, and comment1
are from the input line. All other parameters are either set by default or are read from LOIS cache. The default settings are:
{test=false} {sub=0} {oscan=32} {trigger=soft} {nexp=1}
setamp
, sub
, rbin
, cbin
, oscan
, trigger
, etime
, nexp
, and frame
are taken from LOIS cache. To make sure that the exposure command is correct, it is important to take a test image so that the cache values are updated to the desired ones. After the exposure is complete and readout has started, the action will proceed to the next row and the appropriate row in the table is highlighted. There will be a message in place of the iteration number when the pattern is complete.
The process can only be aborted by pressing the abort button within the view. Using other abort buttons or stop series buttons will have unforeseen results. The abort stops the loop but it may not stop the last exposure. Depending on where LOIS is in the exposure process, LOIS may decide to finish the exposure but the file will not be written to disk.
Notes
Dither function may be used without any dithering. For instance, it can be used for taking exposures at different filters on the same object while guiding. If ALL the offset values in the pattern file are zero, the code will not send any offset command to the TCS. In this special case, the guide state will not change. By default guiding will turn off when an offset command is received by the TCS and there is no offset guiding is available at this time.
Another special case is when exposure time is set to 0. In this case the command will not be sent to LOIS. This can be used for resetting the system back to an initial state by issuing 0 offsets and moving the filter wheels without any exposure.
The filter moves are synchronous and the secondary filter wheel will always be homed.
On rare occasions, a filter move fails and the system gets into an unknown state. The code has no way to recover or even acknowledge this failure. It is imperative to monitor the progress and use the Abort button if necessary.
After a pattern file has run, the execute button will not be re-enabled. If for some reason the user needs to run the same pattern file, it will have to be loaded again.