Verification (based on the former testAll)
Here is a list of the actions that make up the MOSFIRE testAll
Ping various computer/network hardware to confirm they are alive
kaimama
control1
eds1
mpulizzi1
mpulizzi2
iolan1
Check lastalive keyword on software (Servers)
mosfire
mcsus
mdhs
mds
mfcs
mmdcs
mmf1s
mmf2s
mmgss
mmgts
mmprs
mp1s
mp2s
mpas
mscs
mtcs
Verify PIDs exist for software
write_image
fcstrack
ds9relay
lickserv
Check daemons (only if observing)
watchrot
watchslew
watchfcs
autodisplay
Verify power status
glycol_power = on
CSU_controller_power = on
CSU_drives_power = on
Jade2_power = on
computer_power = on
Lantronix_power = on
guider_focus_power = on
ion_pump_power = on
MAGIQ_guider_power = on
temp_control_power = on
motor_box_power = on
power_supply_power = on
FCS_controller_power = on
dewar_heater_power = on
CCR_1_power = on
CCR_2_power = on
Verify stages
dust cover, mmdcs status is OK
filter wheel 1, mmf1s status is OK
filter wheel 2, mmf2s status is OK
grating turret, mmgts status is OK
grating shim, mmgss status is OK
pupil rotator, mmprs status is OK or TRACKING
CSU, mcsus status is OK
Check Settings
glycol flow (mdhs glysup = Flow)
detector temp (mtcs curtmp1 = 77 +/- 0.1)
bulkhead temp (mtcs curtmp2 = 120 +/- 1)
CCR remote control (mscs chremote = 1)
CCR 1 Speed (mscs dacout1r = 45 +/- 1)
CCR 2 Speed (mscs dacout2r = 45 +/- 1)
window heater voltage (mdhs tmp5 = 17.5 +/- 1.5)
CSU electronics temp (mdhs tmp2 = 0-30)
cabinet temp (mdhs tmp3 = 0-30)
thermocouple pressure (mpas g1str = 0-1e-4)
ion pump 1 pressure (mpas g3str = 0 - 1e-7)
ion pump 2 pressure (mpas g4str = 0 - 1e-7)
cabinet door status (mdhs ebaydoor = Closed)
FCS correcting (mfcs active = 1)
datataking system (mds ready = 1)
current instrument (dcs currinst = mosfire)
Here is the current () testAll
script for MOSFIRE for reference.
Instrument States
For the above checks, we need two states: one for observing and one for daytime (ready? standby? we need a good term for this). We may also want to differentiate between being on the deck and on the telescope.
Can we determine whether MOSFIRE is on deck or on the telescope programmatically?
Determine observing by combination of multiple factors: telescope has been tracking (guiding?) recently, hatch has been open recently, telescope elevation is >0, detector has been exposing recently. These are just ideas.
Mosfire Checkout (Incomplete)
Confirm the physical drive angle. It should not be within 10 degrees of a
multiple of 180 degreesStart the observing software as moseng or the account for the night
Check that the dark filter is selected. If not select it
Check mechanism status: If any of the mechanisms have a big red X on it,
you will need to home mechanisms. Note, if filter wheel is at the home
position, Status will be "OK," position will be "HOME", target will be
"unknown", and there will still be a big red X.Acquire an exposure
Inspect the dark image
If normal checkout:
Open mask
Image and confirm
Initialize CSU: modify -s mosfire csuinitbar=0
Image and confirm
Form 0.7x46 long slit
Image and confirm
If quick checkout
Form an 2.7x46 long slit
Image and confirm
Form an 0.7x46 long slit
Image and confirm
With the hatch closed change the observing mode to J-imaging, verify
mechanisms are okQuick Dark
Message user to verify sidecar logging