TDI (Time Delay Integration) Panorama
This script is written for use with a Kodak 1400 CCD (serial size 1317,parallel size 1035). The camera is attached to a telescope pointing straight up. The camera's external trigger port is connected to a synchronized time source that provides a pulse every few seconds. The pulse timing is closely coordinated with the image size, so the rotation of the earth moves the image on the CCD by exactly one parallel row width (6.8 microns) for each pulse. Therefore, for every pulse, one row is readout, and the other rows are shifted over, following the moving image. This script uses the setup to collect a single panoramic image 10,000 rows wide (reading 1 row at a time, 8965 times, and finishing with a final clean up readout of 1035 rows).
The CCD reaches a steady state exposure duration during the middle of the panorama, but the beginning and ending few lines are exposed for less time. (Exposure time is progressively less for the first and last 1035 rows of the panorama.) The result is that the front and back ends of the panorama gradually ramp up and down in brightness.
script_begin(); |
|
|
shift_mode_is(); | /* redundant, since script_begin sets this anyway*/ |
|
shutter_open(); | /* light is now falling on the CCD | */ |
clear_parallel(5); | /* make sure this CCD is cleared out | */ |
clear_until_trig(); | /* clear until acquire regular pulses | */ |
loop_begin(8965); | /* 10,000 (full panorama) - 1035 | */ |
expose_until_trig(); | /* readout each time trigger pulse received | */ |
pixel_readout(0,1317,1,1,1); | /* read exactly 1 row, shift the rest over | */ |
loop_end(); |
|
|
pixel_readout(0,1317,1,1035,1);/*clean up: read the entire CCD | */ | |
pixel_display(1317,10000); | /* display this as one huge panoramic image | */ |
shutter_close(); |
|
|
script_end(0); |
|
|
14Advanced Camera Operation Manual