Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.eso.org/projects/www.eso.org.projects.ngc/Software/INS_SW_WS_2008_NGCOPT_cumani.pdf
Дата изменения: Wed Oct 29 15:29:43 2008
Дата индексирования: Sun Apr 10 23:47:27 2016
Кодировка:

Поисковые слова: arp 220
THE NEW GENERAL DETECTOR CONTROLLER - NGC/OPT
Claudio Cumani Instrumentation SW Workshop 2008 - 2008, October 7


Differences btw IR and OPT detector controllers: intrinsic
2

"Exposure" handling
Optical Rigid scheme for exposures (wipe - integrate - ["move charges on detector while integrating"] - read ). Active intervention of the control-server during the exposure is ti ti th th required (application of new voltages in each state). "Active" interface to different kinds of shutter controllers (open/close, status check, open/close delays, etc.). Infrared Detector continuously read-out (infinite loop). Starting an exposure = starting transfer and storage of data. Once exposure is started, control server mainly reacts passively on incoming data-frames. No "active" interface to external devices (interfaces through trigger signals, e.g., for nodding).


Differences btw IR and OPT detector controllers: intrinsic
3

Data handling
Infrared Computationally intensive different data pre-processing, read-out mode dependent. Optical Detector read-out just once at the end of an exposure. th The only processing to be done is pixel sorting and offset calibration (centroiding and bias-subtraction on request).


Differences btw IR and OPT detector controllers: historical
4

optical detector controllers are requested to interface/control also devices which are not ­ strictly speaking - part of the detector, like vacuum and temperature control (and write values in FITS file header)


Optical NGC needs its own software
5

Base software common to Infrared and Optical detectors to interface the hardware (thanks Joerg) At higher level: hi NGCIRSW and NGCOSW


NGC Software Environment
6

Instrument Software

Commands/Replies

Data

FITS Files

Configuration Files Setup Files

NGCOSW

Data

RTD

Dictionary

Online database

Log System

Error System


NGCOSW Processes
7

Commands Replies

IWS System Control Image Transfer Client FITS File

Memory (RTD) Exposure Control Image Transfer Server

Shutter

DFE Server LLCU


Operational Modes
8

Normal mode: the NGC detector electronics is the electronics connected. Hardware-Simulation mode: the NGC the NGC detector electronics is simulated.
The FIERA LCU-Simulation mode is equivalent to FIERA Hardware-Simulation. The NGCOSW can either be distributed on both the IWS and the NGC LLCU or run completely on one of the two platforms.


Optical "Exposures Modes"
9

Exposure Modes define the set of Modes set voltages, clock patterns and sequences to be applied to the different "steps" of an exposure (wipe, integrate, read). Same approach of FIERA of FIERA Exposure Modes are defined in the detector Configuration File (different for (dif each instrument)


Temperature/vacuum monitoring
10

3 options under discussion: Vi NGC Via NGC LLCU serial port (Ю la FIERA) serial (Ю la FIERA) Via standard LCU (Ю la IRACE) Via Serial-to-ethernet adapter


NGCOSW code
11

NGCOSW code generated using the wsf (workstation software framework) tool developed by SDD See: Andolfato L., Karban R., "Workstation Software Framework", article for SPIE 2008 "Astronomical Telescopes and Instrumentation" Conference, Marseille, Jun 23-28, 2008


NGCOSW overview
12

ngcocon - The NGC System Coordination module for optical applications. This includes all required scripts for system startup and shutdown. ncgoctr - The NGC Exposure Control module for optical applications. ncgoexp - The NGC Exposure Coordination module for optical applications. ncgoits - The NGC Image Transfer Server module for optical applications. ncgoitc - The NGC Image Transfer Client module for optical applications. ngcoui - Engineering GUI used for direct system interaction and data acquisition. The modules will be part of the VLTSW Releases. All modules contain Test Procedures for TAT (automated testing).


Installation
13

NGCOSW is built on top of the NGCIRSW NGCIRSW Via installation scripts
Install NGCIRSW first (cmm module ngcarch)
cd ; cmmCopy ngcarch; cd ngcarch/src/; make all install

Then install NGCOSW (cmm module ngcoarc) NGCOSW
cd ; cmmCopy ngcoarc; cd ngcoarc/src/; make all install

ngcins software module contains a pkgin installationmodule contains configuration (for both NGC IR and OPT software):
cd ; cmmCopy ngcins; pkginBuild ngcins


Configuration - environment
14

Environment variables bl
NOTE : on the NGC-LLCU the environment variables are defined in the files /etc/pecs/releases/000/etc/locality/apps-all.env /etc/pecs/releases/000/etc/locality/apps-${HOST}.env On the IWS you could define them in the same files or in ~/.pecs/apps-${HOST}.env

RTAPENV defines the name of the local online database environment CCDLENV on the IWS defines the name of the remote online database environment, on the NGC-LLCU it must be set to 0 CCDNAME defines the name of the detector camera


Configuration - system check
15

ngcoDcsOldb preliminary check:
Are the environment variables defined? Is ACC server defined and running? server Are local and remote environments defined on the local computer and in the ACC server? Is scanning properly configured? Is the user which shall run the software defined on the local and the remote computer? ...


Configuration - oldb
16

Create the environment: ngcoDcsOldb (different on IWS and LLCU) th Oldb On the IWS: ngcoDcsOldb -renv $CCDLENV -host IWS
NOTE: only template files DATABASE.db.NGCOSW and USER.db.NGCOSW are generated: use them to edit DATABASE.db and USER.db
Example 1: Instrument controlling one camera, add in DATABASE.db:
#undef #undef #undef #define #define #define CCDNAME ngcdcsINSTANCE NGCROOT CCDNAME ngcdcsINSTANCE ngcdcs_ NGCROOT :Appl_data<:myPATH>:CCDNAME


Configuration - oldb
17

Example 2: Instrument controlling four cameras, add in DATABASE.db: 2: Instrument controlling four
#undef #undef #undef #undef #undef #undef #undef #undef #undef #undef #define #define #define #define #define #define #define #define #define #define DCSNAME CCDNAME ngcdcsINSTANCE CCDNAME2 ngcdcsINSTANCE2 CCDNAME3 ngcdcsINSTANCE3 CCDNAME4 ngcdcsINSTANCE4 NGCROOT DCSNAME CCDNAME ngcdcsINSTANCE ngcdcs_ CCDNAME2 ngcdcsINSTANCE2 ngcdcs_ CCDNAME3 ngcdcsINSTANCE3 ngcdcs_ CCDNAME4 ngcdcsINSTANCE4 ngcdcs_ NGCROOT :Appl_data<:myPATH>:DCSNAME


Configuration - oldb
18

Once the DATABASE.db and USER.db files have been properly edited on the IWS, generate the environment: in $VLTDATA/ENVIRONMENTS/$RTAPENV/dbl run make clean db To initialize and start the environment run: vccEnvInit -e $RTAPENV it vccEnvStart -e $RTAPENV On the LLCU: ngcoDcsOldb -renv -host LLCU


Configuration - oldb
19

The basic structure of the database (on the IWS of a system with just one camera and on the LLCU) is as follows:
--o -|--o |--o |--o |--o |--o |--o |--o |--o |--o exposure ngcdcs ngcocon ngcoctr ngcoexp ngcoitc ngcoits system wcs (exposure state) (device driver) (coordination process) (control process) (exposure handler) (image transfer client) (image transfer server) (NGC system state) (world coordinate system)


Configuration - oldb
20

On the IWS, the structure of the database of a system with more cameras (e.g., 4) is as follows:
--o -|--o |--o |--o |--o |--o |--o |--o |--o |--o (first camera) (second camera) (third camera) (fourth camera) exposure (exposure state) ngcocon (coordination process) ngcoitc (image transfer client) system (NGC system state) wcs (world coordinate system)

where , ..., have the basic structure shown before


Configuration ­ Instrument module
21

Install the instrument module ()
cmmCopy cd /src; make all install The instrument module contains
The voltages, patterns and sequences to drive the detector The detector startup configuration file dcfgCONFIG.cfg and the

configuration set dcfgCAMERA.cfg

Note: naming convention: instrument specific, d=detector, cfg=configuration


Configuration ­ Instrument module
22

Configuration set keywords specific to optical systems
#################################################################### # CHIP description #################################################################### DET.CHIP1.ID DET.CHIP1.NAME DET.CHIP1.DATE DET.CHIP1.NX DET.CHIP1.NY DET.CHIP1.PRSCX DET.CHIP1.PRSCY DET.CHIP1.OVSCX DET.CHIP1.OVSCY DET.CHIP1.PSZX DET.CHIP1.PSZY DET.CHIP1.OUTPUTS DET.CHIP1.X DET.CHIP1.Y DET.CHIP1.XGAP DET.CHIP1.YGAP DET.CHIP1.RGAP DET.CHIP1.INDEX DET.CHIP1.LIVE DET.CHIP1.TYPE DET.CHIP1.PXSPACE "SER-NO=053"; "Marlene"; "2006-11-22"; 2048; 4096; 50; 0; 50; 0; 15.0; 15.0; 2; 1; 1; 0.0; 0.0; 0.0; 1; T; CCD; 1E-6; # # # # # # # # # # # # # # # # # # # # # Detector chip identification Detector chip name Date of installation [YYYY-MM-DD] Physical active pixels in X Physical active pixels in Y Physical prescan pixels in X Physical prescan pixels in Y Physical overscan pixels in X Physical overscan pixels in Y Size of pixel in X (mu) Size of pixel in Y (mu) Number of outputs per chip X location in array Y location in array Gap between chips along x (mu) Gap between chips along Y (mu) Angle of gap between chips Chip index Detector alive The Type of detector chip Pixel-Pixel Spacing


Configuration ­ Instrument module
23

Configuration set keywords specific to optical systems (cont.)
DET.CHIP1.OUT1.NAME DET.CHIP1.OUT1.INDEX DET.CHIP1.OUT1.ID DET.CHIP1.OUT1.X DET.CHIP1.OUT1.Y DET.CHIP1.OUT1.READX DET.CHIP1.OUT1.READY DET.CHIP1.OUT2.NAME DET.CHIP1.OUT2.INDEX DET.CHIP1.OUT2.ID DET.CHIP1.OUT2.X DET.CHIP1.OUT2.Y DET.CHIP1.OUT2.READX DET.CHIP1.OUT2.READY "NO1"; 1; "IdO1"; 1; 1; -1; -1; "NO2"; 2; "IdO2"; 2048; 1; 1; -1; # # # # # # # # # # # # # # Description of output Output index Output ID as from manufacturer X location of output Y location of output Horizontal readout direction Vertical readout direction Description of output Output index Output ID as from manufacturer X location of output Y location of output Horizontal readout direction di ti Vertical readout direction


Configuration ­ Instrument module
24

Configuration set keywords specific to optical systems (cont.)
#################################################################### # MODE description #################################################################### DET.MODE1.NAME DET.MODE1.DESC DET.MODE1.TRIGGER DET.MODE1.GAIN DET.MODE1.BNDWTH DET.MODE1.WREP DET.MODE1.WCLDFIL1 DET.MODE1.WCLKFIL1 DET.MODE1.WPRGFIL1 DET.MODE1.PREP DET.MODE1.PCLDFIL1 DET.MODE1.PCLKFIL1 DET.MODE1.PPRGFIL1 DET.MODE1.DREP DET.MODE1.DCLDFIL1 DET.MODE1.DCLKFIL1 DET.MODE1.DPRGFIL1 DET.MODE1.RREP DET.MODE1.RCLDFIL1 DET.MODE1.RCLKFIL1 DET.MODE1.RPRGFIL1 DET.MODE1.ADCSAMPL "Test1"; "Test mode 1"; F; ""; ""; 1; "wipe1.v"; "wipe1.bclk"; "wipe1.seq"; 1; "preint1.v"; "preint1.bclk"; "preint1.seq"; 0; ""; ""; ""; 1; "read1.v"; "read1.bclk"; "read1.seq"; "-1,1"; # # # # # # # # # # # # # # # # # # # # # # Exposure mode name Exposure mode description Enable trigger Gain used Bandwidth used Wipe sequence repetition number Name of CLDCi FILE for wipe Name of SEQi CLKFILE for wipe Name of SEQi PRGFILE for wipe Preint sequence repetition number Name of CLDCi FILE for preintegration Name of SEQi CLKFILE for preintegration Name of SEQi PRGFILE for preintegration During int sequence repetition number Name of CLDCi FILE during integration Name of SEQi CLKFILE during integration Name of SEQi PRGFILE during integration Readout sequence repetition number Name of CLDCi FILE for readout Name of SEQi CLKFILE for readout Name of SEQi PRGFILE for readout ADC data sampling factors


Configuration ­ Instrument module
25

Configuration set keywords specific to optical systems (cont.)
DET.MODE1.OUTPUTS DET.MODE1.ADC1.ADCS DET.MODE1.OUT1.CHIP DET.MODE1.OUT1.INDEX DET.MODE1.OUT1.XIMA DET.MODE1.OUT1.YIMA DET.MODE1.OUT1.NX DET.MODE1.OUT1.NY DET.MODE1.OUT1.PRSCX DET.MODE1.OUT1.PRSCY DET.MODE1.OUT1.OVSCX DET.MODE1.OUT1.OVSCY DET.MODE1.OUT1.GAIN DET.MODE1.OUT1.CONAD DET.MODE1.OUT1.RON 1 "1"; 1; 1; 1; 1; 2048; 500; 50; 0; 50; 0; 0.3; 3.33; 1.2; # Number of outputs used for readout # Outputs used for readout # # # # # # # # # # # # # Index of chip the output belongs to Output index on the chip Horizontal location of data in image Vertical location of data in image Output data pixels in X Output data pixels in X Output prescan pixels in X Output prescan pixels in Y Output overscan pixels in X Output overscan pixels in Y Conversion from electrons to ADU Conversion from ADUs to electrons Readout noise per output (e-)

#################################################################### # SHUTTER description #################################################################### DET.SHUT1.AVAIL DET.SHUT1.CTRL DET.SHUT1.TYPE DET.SHUT1.ID DET.SHUT1.DEVIDX DET.SHUT1.ROUTE DET.SHUT1.NAME F; "ngc"; "iris"; "eso-01"; 1; "2"; "Shutter-1"; # # # # # # # Shutter available or not Shutter controller Shutter type Shutter unique identifier Device index Route to module Optional module name


Configuration ­ INS_ROOT
26

Populate the INS_ROOT with the files from the instrument module :
ngcoDcsInstall -config


Data format
27

Images are saved in $INS_ROOT/$INS_USER/DETDATA Images are saved as FITS files:
Using the "image extension per chip" format: data are ordered by detector, each detector corresponds to an extension. A primary header sits on the top of the file. However, if the camera has only one detector, no extension is used.

The Bible: Data Interface Control Document, GEN-SPE-ESO-19400-0794 (last issue: 4.0, 08.04.2008)


Operation - Example
28

·

Start NGCOSW from the Instrument Workstation and put it ONLINE NGCOSW
ngcoDcsStart -instance $CCDNAME -env $RTAPENV -lenv $CCDLENV ­kill msgSend $RTAPENV ngcocon_$CCDNAME STANDBY "" msgSend $RTAPENV ngcocon_$CCDNAME ONLINE ""

·

Prepare the exposure (set exposure mode, type, time and binning) and start it
msgSend $RTAPENV ngcocon_$CCDNAME SETUP \ "-function DET.MODE.CURID 1 DET1.EXP.TYPE Normal \ MODE CURID DET1 DET1.WIN1.UIT1 10 DET1.WIN1.BINX 1 DET1.WIN1.BINY 1" msgSend $RTAPENV ngcocon_$CCDNAME START ""

·

Wait Wait until the exposure has been completed and then check status exposure status
msgSend $RTAPENV ngcocon_$CCDNAME WAIT "" dbRead "${CCDNAME}:exposure:control.state"


Operation - Example (cont.)
29

·

Prepare and start loop of 10 biases
msgSend $RTAPENV ngcocon_$CCDNAME SETUP \ "-function DET1.EXP.NREP 10 DET1.EXP.TYPE Dark DET1.WIN1.UIT1 0 " msgSend $RTAPENV ngcocon_$CCDNAME START ""

·

Wait until the exposure has been completed and then check status
msgSend $RTAPENV ngcocon_$CCDNAME WAIT "" dbRead "${CCDNAME}:exposure:control.state" state

·

Exit
ngcoDcsStop -kill


Multiple Instances of DCS
30

The coordination control process ngcocon is the only command interface between ICS and NGCOSW. Even if multiple instances of DCS are used (e.g., for instruments which control more than one NGC-LLCU), the coordination control process is the only command interface between ICS and NGCOSW. is the command


NGCOSW Graphical User Interface
31


Documentation
32

VLT-MAN-ESO-13660-4510 VLT-MAN-ESO-13660-4085 VLT-MAN-ESO-13660-4086 VLT-MAN-ESO-13660-4560 VLT-LIS-ESO-13660-3907 VLT-LIS-ESO-13660-3908

NGC - User Manual NGC Infrared DCS - User Manual NGC Optical DCS - User Manual NGC-LCU Interface SW ­ User Manual NGC Project Glossary NGC Project Acronyms


Feedback
33

For feedback, questions, problem reporting: write to

ngc@eso.org