Top Level Command Processor shaneao
¶
ShaneAO module provides a simple rtc command set at the top level for the operator to use during on-sky operations. ShaneAO runs on the real-time computer. Commands to it are typed on a terminal remotely connected to the real time computer.
Start up the rtc from the home directory on the rtc computer:
shaneao
See also RTC Status Display
Commands to shaneao are typed at the terminal. The
command names are exposed at the top level, so there
is no need to type the leading shaneao.
string.
Python demands however that you type the trailing ()
string on commands, even if there are no arguments.
-
shaneao.
alpha
(al=None)¶ set alpha, the filter time constant. alpha must be between 0 and 1, where 0 means immediate response, i.e. a time constant of one step and 1 means no response, i.e. a time constant of infinity. The filter behavior is: v = alpha*v + (1-alpha)*u
-
shaneao.
bleed
(b=None, w='all')¶ set or request the integrator bleed values bleed(b,’tweeter’) sets the tweeter integrator bleeds to b. b can be a scalar, to set all the bleeds to the same value, or a list. Similarly for bleed(b,’woofer’) and bleed(b,’all’). The default is ‘all’.
Querys are of the form bleed(‘tweeter’), bleed(‘woofer’), bleed(‘all’), or bleed(), which the same as bleed(‘all’)
-
shaneao.
camstart
()¶ Start the camera
-
shaneao.
camstop
()¶ Stop the camera
-
shaneao.
close
()¶ close the AO loop
-
shaneao.
config_query
()¶ List the configuration of the supervisory software
-
shaneao.
crib
(item=None)¶ crib is a quick help listing: crib() lists the whole list of ShaneAO commands or crib(item) to get help on a particular item
-
shaneao.
dark
(z=None)¶ Take a camera dark
dark() averages the wfs camera readings for one second and sets the background to that averabe dark(0) sets the camera background to zero
-
shaneao.
dmesg
()¶ Retrieve the last DPIO2 related message from the kernel message log. If it indicates a kernel memory problem, turn off the mems.
-
shaneao.
estop
()¶ emergency stop stop the control loop, turn off the mems and woofer thread and stop the heartbeat, which cuts power to the mems controller. This is a quick shutdwon procedure that is designed to protect the MEMS in case something goes wrong. Use:
shaneao.heartbeat_up()
- to bring back the heartbeat. Or, restart the wfs camera with::
- camstart()
-
shaneao.
freeze
()¶ freeze the DMs in their present positions
-
shaneao.
gain
(g=None, wg=None)¶ set or request the gain where g is the gain (I recommend this be positive, for stability reasons) NOTE: if the loop is open, g > 0 will close the loop!
-
shaneao.
mems
(power=None)¶ Set or querey the MEMS (tweeter) power state
-
shaneao.
mode
(aMode=None)¶ sets or requests the mode no arg returns the current mode arg = ‘?’ returns the list of valid modes
-
shaneao.
offload
(arg=None, interval=None, threshold=None)¶ begin offloading the excess woofer tip and tilt to the telescope
-
shaneao.
open
()¶ open the AO loop
-
shaneao.
peek
(item=None)¶ Peek(item) Peek at a specific variable in the real-time c-code Peek() prints a list of valid items
-
shaneao.
rate
(r=None)¶ set or get the wavefront sensor frame rate where r = a valid frame rate type rate(0) to see a list of valid rates
-
shaneao.
refcent
(z=None)¶ Take the reference centroids
refcent() averages the present centroids for one second and sets the refcents to that average refcent(0) sets the reference centoids to zero refcent(filename) loads new refcent from a file refcent(data) uses data as the new ref cents
-
shaneao.
reset
(restart=False)¶ do this to reset the camera if it hangs
-
shaneao.
status
()¶ print a brief report of the state of the system
-
shaneao.
test
()¶ initialize the regression tests. After initializing, crib(test) again to get a list of available regression tests
-
shaneao.
ttcamstart
()¶ Start the tt camera
-
shaneao.
ttcamstop
()¶ Stop the camera
-
shaneao.
ttdark
(z=None)¶ Take a camera dark
dark() averages the wfs camera readings for one second and sets the background to that averabe dark(0) sets the camera background to zero
-
shaneao.
ttrate
(r=None)¶ set or get the Tip Tilt sensor frame rate where r = a valid frame rate type rate(0) to see a list of valid rates
-
shaneao.
ttreset
(restart=False)¶ do this to reset the tt camera if it hangs
-
shaneao.
tweeter_poke
(pattern=None, n=None, scale=1.0)¶ will poke a given pattern on the tweeter. This function puts values directly into the rtc2 <rtc2> integrator, (so bleed settings and loop gain matter)
tweeter_poke() lists the available patterns. tweeter_poke(‘mode’,n) pokes a pre-calculated mode. the third argument, scale, must be between -1 and +1, and defaults to +1
-
shaneao.
whereis
(filename)¶ find out where a file is in the sys.path (the path for module imports)
-
shaneao.
woof
(woof_state=None)¶ turn the woofer on or off. This begins (or stops) a background process that regularly sends commands to the woofer.
-
shaneao.
woofer_poke
(pattern=None, n=None, scale=1.0)¶ will poke a given pattern on the woofer. This function puts values directly into the rtc2 <rtc2> integrator, (so bleed settings and loop gain matter)
woofer_poke() lists the available patterns. woofer_poke(‘mode’,n) pokes a pre-calculated mode. the third argument, scale, must be between -1 and +1, and defaults to +1
-
shaneao.
wrate
(woofer_update_rate=None)¶ set the woofer update rate, in Hz. currently, the rate can be no more than 200 Hz
-
shaneao.
zero
()¶ send the tweeter DM to a zero-point shape (defined by a0) The loop is openned