-
Notifications
You must be signed in to change notification settings - Fork 0
RTC:Configuring and running the AO loop
The visible pyramid AO loop is controlled from the scexao6
/scexaoRTC
computer, and is running from the directory /home/scexao/AOloop.
The loop name is vispyr2, and loop number is 7 (subject to change - check regularly).
Upon reboot, the loop should already be setup.
To check if the loop is already set up, run (from anywhere on the system):
cacao-loops
If the loop is already set up, you should see this entry:
LOOP 7 using DM 00 ( 50 x 50 ) NAME: vispyr2
rootdir : /home/scexao/AOloop/vispyr2-rootdir
Last access script : /usr/local/milk/bin/cacao-fpsctrl-TUI
Last access time : 2024-02-17 02:37:47.248393258 +0000
If so, then proceed to section 3.
If you do not see this entry, the loop needs to be set up - see section 2.
Check also if ocam2d is not running using the milk-streamCTRL tool.
If ocam2d is not spinning, run:
camstack -s pueo
AO loop conventions:
- ROOTDIR is /home/scexao/AOloop/vispyr2-rootdir
- RUNDIR is /home/scexao/AOloop/vispyr2-rootdir/vispyr2-rundir
Logging:
- logs are written into directory
ROOTDIR/logdir
, which should be set up to by a sym link to the main computer log directory - start cacao-fpsctrl-logtail from ROOTDIR to start logging
- new instances of milk-fpsCTRL should be started from ROOTDIR, with MILK_FPS_LOGFILE="fpsCTRL.log"
Skip this section is the loop is already set up. Initialization should only be needed after a computer reboot.
This step is only required if ROOTDIR is empty or if changes in the source code need to be propagated. This step is NOT required after a computer reboot.
cd AOloop
cacao-loop-deploy scexao-vispyr-bin2
# Equivalent to :
# CACAO_LOOPNUMBER=7 CACAO_DMINDEX="00" CACAO_LOOPNAME="vispyr2" cacao-loop-deploy -c scexao-vispyr-bin2
# cacao-loop-deploy -r scexao-vispyr-bin2
Full instructions are on step 1 of scexao cacao example page.
To (re)start processes, from ROOTDIR, run :
$ cacao-setup vispyr2
From milk-fpsCTRL
you should see a list of processes and tasks. The left PID column should be green (process configuration running), and the right PID column should be blank (0s) as the processes are not yet running.
The loop will be controlled from two separate TUIs:
fpsCTRL TUI:
cd /home/scexao/AOloop/vispyr2-rootdir
cacao-fpsctrl-TUI
Alignment TUI:
cd ~/AOloop/AOloop0
./aolconf -n
# Press ENTER when prompted
# then press A and ENTER
Note that you should not need to interact with the milk-fpsCTRL within the tmux session. You can start your own milk-fpsCTRL instance for manual control.
Loop is controlled from a single VNC screen. The recommended layout is showed below.
Follow the instructions on cacao scexao cacao example page, from steps 3 to step 7 (included). Note, on step 3, that you need to block the optical beam during the WFS dark acquisition.
The cacao-aorun commands should be run from the ROOTDIR directory. Within the VNC control screen, you can use the terminal "cacao scripts" at the lower right to enter the commands, and the "Data inspection" terminal to inspect files as needed.
First, make sure all processes are running. You can check from the milk-fpsCTRL screen. Go to the root (click left until only the list of processes is visible). Each process has 2 numbers: control process PID (left) and run process PID (right). If the PID is active, then it is green. If it has crashed it is in red.
The following processes should be on (both PIDs highlighted in green) for the loop to run :
- acquWFS-X : WFS acquisition
- wfs2cmodeval-X : WFS to mode values
- mfilt-X : modal control
- mvalC2dm-X : mode values to DM
If the configuration process is not running (left PID not green), navigate to it (up down arrows) and type SHIFT+o in milk-fpsCTRL.
If the run process is not running (right PID not green), navigate to it (up down arrows) and type SHIFT+r in milk-fpsCTRL, or, preferably, run the cacao-aorun command to start it, as described in step 8 of the scexao cacao example page.
The loop is controlled from the mfilt-X process in milk-fpsCTRL. First, navigate to it (up down arrow) and then expand it (right arrow) to access the parameters. The main controls are :
- loopON to toggle the loop on and off. Use the space bar to toggle
- LoopZERO to set the control command to zero. Use it after you have turned the loop off to remove the last correction. Use space bar to run.
- loopgain to set the loop integrator gain (enter, type value, enter). Values around 0.2 usually work well.
- loopmult to set the integrator leak (enter, type value, enter). No leak is 1.0. Usually set at 0.98. At every loop iteration, the cumulative command is multiplied by this coefficient.
To apply modal control (applying stronger gain for lower modes) :
$ cacao-aorun-061-setgains 0.8 -f 0.1 -t 1.3
To stop the any of these processes, press ctrl-R
over the process. It is recommended to stop the processes in the reverse order that they were started.
Loop frequency
To change the loop frequency change the pyramid modulation in aolconf > align > pyfr*
.
Calibration speckles are generated using astrogrid
, which dynamically creates tip and tilt patterns which, when applied to the DM, create copies of the central PSF. This is extremely useful for coronagraphic imaging as a means to calibrate the photometry and astrometry of the star behind the focal plane mask. See Sahoo et al. (2020) for more technical details.
Astrogrid commands are run from the visible pyramid loop scexao6:~/AOloop/AOloop-vispyr/vispyr
⚠️ The AO loop must be running for these scripts to take effect.
~/AOloop/AOloop-vispyr/vispyr $ ./scexao-astrogrid-on <amp>
where the <amp>
is modulation amplitude in micron. This uses the default pattern (bin 0 XY grid). To use a different pattern you will have to edit the script manually, or use one of the aliases present in that directory.
To stop the grid
~/AOloop/AOloop-vispyr/vispyr $ ./scexao-astrogrid-off
- Home
- Settings and common commands
- AO3K
- GLINT
- VAMPIRES
- PDI
- RTC
- Software
- Contributor