cfitsTK
SCExAO_control.c File Reference

misc SCExAO-specific control routines More...

Functions

int_fast8_t SCExAOcontrol_mkSegmentModes_cli ()
 
int_fast8_t SCExAOcontrol_mv_DMstage_cli ()
 
int_fast8_t SCExAOcontrol_PyramidWFS_AutoAlign_TT_cli ()
 
int_fast8_t SCExAOcontrol_PyramidWFS_AutoAlign_cam_cli ()
 
int_fast8_t SCExAOcontrol_PyramidWFS_Pcenter_cli ()
 
int_fast8_t SCExAOcontrol_Pyramid_flattenRefWF_cli ()
 
int_fast8_t SCExAOcontrol_optPSF_cli ()
 
int_fast8_t SCExAOcontrol_SAPHIRA_cam_process_cli ()
 
int_fast8_t SCExAOcontrol_vib_ComputeCentroid_cli ()
 
int_fast8_t SCExAOcontrol_vib_mergeData_cli ()
 
int_fast8_t init_SCExAO_control ()
 
long SCExAOcontrol_mkSegmentModes (const char *IDdmmap_name, const char *IDout_name)
 
int SCExAOcontrol_mv_DMstage (long stepXpos, long stepYpos)
 Move DM stage. More...
 
int SCExAOcontrol_PyramidWFS_AutoAlign_TT_DM (const char *WFScam_name)
 
int SCExAOcontrol_PyramidWFS_AutoAlign_TT (const char *WFScam_name, float XposStart, float YposStart)
 
int SCExAOcontrol_PyramidWFS_AutoAlign_cam (const char *WFScam_name)
 
int SCExAOcontrol_PyramidWFS_Pcenter (const char *IDwfsname, float prad, float poffset)
 
int SCExAOcontrol_Pyramid_flattenRefWF (const char *WFScam_name, long zimaxmax, float ampl0)
 
int SCExAOcontrol_optPSF (const char *WFScam_name, long NBmodesmax, float alpha)
 
int SCExAOcontrol_SAPHIRA_cam_process (const char *IDinname, const char *IDoutname)
 
long SCExAOcontrol_vib_ComputeCentroid (const char *IDin_name, const char *IDdark_name, const char *IDout_name)
 
long SCExAOcontrol_vib_mergeData (const char *IDacc_name, const char *IDttpos_name, const char *IDout_name, int mode)
 

Variables

DATA data
 System includes. More...
 
static float PcamPixScaleAct = 0.7*10000.0
 
static char WFScam_name [200]
 
static long long WFScnt = 0
 
static long pXsize = 120
 
static long pYsize = 120
 
static long SCExAO_DM_STAGE_Xpos = 0
 
static long SCExAO_DM_STAGE_Ypos = 0
 
static long SCExAO_Pcam_Xpos0 = 60000
 
static long SCExAO_Pcam_Ypos0 = 62000
 
static long SCExAO_Pcam_Xpos = 60000
 
static long SCExAO_Pcam_Ypos = 62000
 
static long SCExAO_Pcam_Range = 50000
 
static float SCExAO_PZT_STAGE_Xpos = -5.0
 
static float SCExAO_PZT_STAGE_Xpos_ref = -5.0
 
static float SCExAO_PZT_STAGE_Xpos_min = -7.0
 
static float SCExAO_PZT_STAGE_Xpos_max = -3.0
 
static float SCExAO_PZT_STAGE_Ypos = -5.0
 
static float SCExAO_PZT_STAGE_Ypos_ref = -5.0
 
static float SCExAO_PZT_STAGE_Ypos_min = -7.0
 
static float SCExAO_PZT_STAGE_Ypos_max = -3.0
 

Detailed Description

misc SCExAO-specific control routines

Alignment, some processing etc...

Author
O. Guyon
Date
25 Aug 2017
Bug:
No known bugs.

Function Documentation

int_fast8_t init_SCExAO_control ( )
long SCExAOcontrol_mkSegmentModes ( const char *  IDdmmap_name,
const char *  IDout_name 
)
int_fast8_t SCExAOcontrol_mkSegmentModes_cli ( )
int SCExAOcontrol_mv_DMstage ( long  stepXpos,
long  stepYpos 
)

Move DM stage.

Absolute position

anti-backlash offset - rule: go negative first, and then positive

int_fast8_t SCExAOcontrol_mv_DMstage_cli ( )
int SCExAOcontrol_optPSF ( const char *  WFScam_name,
long  NBmodesmax,
float  alpha 
)
int_fast8_t SCExAOcontrol_optPSF_cli ( )
int SCExAOcontrol_Pyramid_flattenRefWF ( const char *  WFScam_name,
long  zimaxmax,
float  ampl0 
)
int_fast8_t SCExAOcontrol_Pyramid_flattenRefWF_cli ( )
int SCExAOcontrol_PyramidWFS_AutoAlign_cam ( const char *  WFScam_name)

assumes imref has been loaded

read position of stages

compute offset

write stages position

int_fast8_t SCExAOcontrol_PyramidWFS_AutoAlign_cam_cli ( )
int SCExAOcontrol_PyramidWFS_AutoAlign_TT ( const char *  WFScam_name,
float  XposStart,
float  YposStart 
)

1 V step -> sig = 0.2 for modulation = 0.3

int_fast8_t SCExAOcontrol_PyramidWFS_AutoAlign_TT_cli ( )
int SCExAOcontrol_PyramidWFS_AutoAlign_TT_DM ( const char *  WFScam_name)

auto aligns tip-tilt by equalizing fluxes between quadrants

100 steps -> sig = 0.055 for modulation = 1.0

int SCExAOcontrol_PyramidWFS_Pcenter ( const char *  IDwfsname,
float  prad,
float  poffset 
)

pupil centering tool watch pcenter stream

read position of stages

write stages position

int_fast8_t SCExAOcontrol_PyramidWFS_Pcenter_cli ( )
int SCExAOcontrol_SAPHIRA_cam_process ( const char *  IDinname,
const char *  IDoutname 
)

SAPHIRA image: process data cube into single frame

full linear regression, up to saturation level

int_fast8_t SCExAOcontrol_SAPHIRA_cam_process_cli ( )
long SCExAOcontrol_vib_ComputeCentroid ( const char *  IDin_name,
const char *  IDdark_name,
const char *  IDout_name 
)
int_fast8_t SCExAOcontrol_vib_ComputeCentroid_cli ( )
long SCExAOcontrol_vib_mergeData ( const char *  IDacc_name,
const char *  IDttpos_name,
const char *  IDout_name,
int  mode 
)
int_fast8_t SCExAOcontrol_vib_mergeData_cli ( )

Variable Documentation

DATA data

System includes.

SCExAO instrument control

These routines only work on SCExAO computer, and are specific to SCExAO system

All global images and variables.

External libraries

float PcamPixScaleAct = 0.7*10000.0
static
long pXsize = 120
static
long pYsize = 120
static
long SCExAO_DM_STAGE_Xpos = 0
static
long SCExAO_DM_STAGE_Ypos = 0
static
long SCExAO_Pcam_Range = 50000
static
long SCExAO_Pcam_Xpos = 60000
static
long SCExAO_Pcam_Xpos0 = 60000
static
long SCExAO_Pcam_Ypos = 62000
static
long SCExAO_Pcam_Ypos0 = 62000
static
float SCExAO_PZT_STAGE_Xpos = -5.0
static
float SCExAO_PZT_STAGE_Xpos_max = -3.0
static
float SCExAO_PZT_STAGE_Xpos_min = -7.0
static
float SCExAO_PZT_STAGE_Xpos_ref = -5.0
static
float SCExAO_PZT_STAGE_Ypos = -5.0
static
float SCExAO_PZT_STAGE_Ypos_max = -3.0
static
float SCExAO_PZT_STAGE_Ypos_min = -7.0
static
float SCExAO_PZT_STAGE_Ypos_ref = -5.0
static
char WFScam_name[200]
static

CONFIGURATION CONFIGURATION

long long WFScnt = 0
static