16 Advanced Camera Operation Manual
Ratio Imaging: Multi-Frame Ratio
This script performs ratio imaging with the CCD37-10 CCD. Only three small subregions are needed, but to
get a good statistical base for the images, you must take a sequence of 100 identical exposures. The subimage
setup is:
+--------------------------------------------+ s1,p1 s2,p2
| ### | <-- region 3 380,300 440,390
CCD37-10 | ### |
Image Array----> | ##### | <-- region 2 175,26 320,290
| ##### |
| ###### | <-- region 1 300,5 400,25
| ###### |
+--------------------------------------------+<-- origin point: 0,0
storage array
These coordinates are INCLUSIVE. 300,5 to 400,25 is a region of 101 serial columns and 21 parallel rows.
This experiment swings in a filter (relatively slowly), sends a trigger pulse, exposes for 100 milliseconds, reads
out, then repeats.
H/W A: experimental hardware goes to first position, sends trigger pulse,
H/W B: the first position runs for 100 milliseconds,
H/W C: change filters (about 40 milliseconds of delay)
H/W D: the second position runs for 100 milliseconds
H/W E: change filters (about 40 milliseconds of delay), loop back to A
CCD A: prepare for exposure, clear CCD, wait for trigger...
CCD B: expose for 100 milliseconds
CCD C: shift_image_to_storage, readout, clear CCD, wait for trigger...
CCD D: expose for 100 milliseconds
CCD E: shift_image_to_storage, readout, loop back to A
The only problem is that you cannot use a signal to differentiate between CCD B and CCD D. In the future,
camera hardware might be enhanced so that it produces a flash signal in CCD E. Then you would use the
enhancement to trigger step H/W A.
script_begin();
shutter_open();
loop_begin(200); /* SEQUENCE OF 100 IMAGE PAIRS(200 total loops) */
clear_parallel(4); /* CCD A&C: make sure CCD is cleared */
clear_until_trig(); /* clear until the experiment is ready */
expose(100); /* CCD B&D: expose with this filter */
shift_image_to_storage(); /* takes 1.23 msec, shift image under mask */
shift_mode_s(); /* CCD C&E: READOUT... */
shift(37); /* move REGION 1 up to serial register */
pixel_readout(300,101,1, 21,1); /* s1:s2 of 300:400 is 101 total pixels */
pixel_display( 101, 21 ); /* actual size of the region */
pixel_readout(175,146,1,265,1); /* REGION 2 is at the serial reg */
pixel_display( 146, 265 );
shift(9); /* move REGION 3 up to the serial regist*/
pixel_readout(380, 61,1,265,1);
pixel_display( 61, 265 );
loop_end();
shutter_close();
script_end(1); /* leave CCD in continuous clear mode */
NOTE: The CCD37-10 has a 512x512 image array, but a 512x544 storage array. Discard (5+32) rows to move
region 1 to the serial register.