Subsystems

The major subsystems, including the cover, the imager, its filter wheel, the tracker and mirror, the spectrometer, and the heaters are discussed below.

Cover

The CRISP optics are protected during launch by a one-time deployable cover. The cover is deployed by High Output Paraffin (HOP) actuators. There are two HOP actuators; each actuator has two heaters. Any one of the four heaters should be sufficient to release the cover. Each heater can be commanded on independently (CRS_COV_MODE and CRS_COV_DEPLOY). Each HOP has a photodiode telltale that activates when the HOP is extended. To read these telltales, power must be commanded (CRS_COV_LED) to a pair of Light-Emitting Diodes (LEDs).

Imager

The visible imaging subsystem, from the CCD to the software, operates at a 1 Hz cadence. A simplified timing diagram of the CCD is shown below. The figure shows two seconds elapsing, i.e. two images being exposed. CCD operations are synchronized to a 1 Hz system clock. The internal CRISP 1 Hz clock lags the system-wide clock by ~7 ms. Image exposures vary in length, but always end 20 ms before the next CRISP 1 Hz pulse. Consequently, the maximum image exposure time is 980 ms. The figure shows a normal exposure followed by a minimum length "scrub" exposure. Scrub exposures are used to fill in time whenever no real image is needed. This ensures that the CCD is read out every second. The CCD is a frame-transfer device: at the end of an exposure, the image is rapidly transferred into a buffer within the CCD. Then the buffered image is read out of the CCD while the next image is being exposed. The DPU adds an image header and trailer provided by the DPU software. The read out of the entire image, including the trailer, must be complete before the end of the exposure. The time between the end of exposure and the next CRISP 1 Hz pulse is used by the software to configure the image read out (e.g., load the header data) and setup the next exposure.

Figure 2. CCD Timiing
[Sensor]

Each image collected requires five processing steps. Each step takes one second, but the process can be pipelined such that one image is taken every second. The resulting five-stage pipeline is shown below.

Figure 3. Image Collection and Processing Pipeline
[Sensor]

For purposes of command planning, only the first two image processing stages are relevant. During setup, commands are executed to configure image collection in the following stage. The following figure shows an example image taking sequence. The commands that control the sequence are being issued from macros; macros execute at the beginning of each second. A take image command (CRS_IMG_IMAGE) executed in t will cause the CCD to be exposed in t+1. Similarly, commands to set the exposure time (CRS_IMG_EXP) and select the filter wheel (CRS_FLT_MOVE) that execute in t will take effect in t+1. Filter wheel movements begin at the end of exposure; ensuring that the movement is complete before the next exposure is the responsibility of the macro and thus the macro author.

Figure 4. Example Image Sequence
[Sensor]

The following figure relates the image on the CCD with the instrument's coordinate system. The numbers on the pixels in the figure indicate the order in which they are downlinked. Each pixel is 12 bits.

Figure 5. Visible Image Readout
[Sensor]

CRISP images come in four possible formats shown in the table below. The format is selected by command (CRS_IMG_FORMAT). The formats range from the full size of the CCD (1024x1024) down to smaller and smaller windows into the full image. A command (CRS_IMG_REGION) selects the origin of the window. In all of the formats, each line has an additional four dark calibration pixels and a line of temperatures at the end of the image. Every data item in the image can be compressed from 12 bits to 8 bits if enabled by command (CRS_IMG_COMP_MODE). The compression is done via table lookup in hardware; one of eight tables can be selected by command (CRS_IMG_COMP_ALG). Any of these commands executed at time t affect the image exposed at time t+1.

Table 1. Image Formats
ModesPixels/lineLinesTemperatures
1024 x 1024 4 cal + 1024 pixels 1024 4 cal + 1024 temps
512 x 512 4 cal + 512 pixels 512 4 cal + 512 temps
256 x 256 4 cal + 256 pixels 256 4 cal + 256 temps
128 x 128 4 cal + 128 pixels 128 4 cal + 128 temps

Images are downlinked with a header describing the state of the instrument at the time the image was taken. The header starts with the time at which the image was collected. The header includes a snapshot of the current DPU status. The header also includes the mirror position and velocity profile that was followed during this image's exposure. The header format is shown below:

Table 2. Image Header
NameLength (bits) ValueDescription
Time Tag 32 Unsigned integer Spacecraft MET of exposure
Analog 42 * 16 See Table 13 Analog status
Digital 16 * 16 See Table 14 Digital status
Software 88 * 8 See Table 15 Software status
Spare 16 * 8    
Mirror Pos. 100 * 32   Mirror goal positions
Mirror Vel. 100 * 32   Mirror goal velocities

Images are also downlinked with a trailer that contains the actual mirror motor command and status words over the exposure. (This data is in a trailer instead of the header because not all of the data is available when the header is built.) The trailer format is shown below:

Table 3. Image Trailer
NameLength (bits) ValueDescription
Mirror Status 100 * 32   Mirror motor status
Mirror Command 100 * 32   Mirror motor command
Spare 224 * 8    

The DPU software monitors the Focal Plane Unit's (FPU) latch-up indicator. If latch-up is detected, the DPU suspends FPU operations. The length of the suspension is set by an uploadable parameter.

Filter Wheel

The filter wheel is controlled by a stepping motor. The motor phases are controlled directly by the DPU software to move the filter wheel. The phase pattern can be adjusted by software to move the filter wheel forwards or backwards. A resolver provides an absolute position reading of the wheel.

The filter move command (CRS_FLT_MOVE) uses the commanded filter number to look up an absolute goal position from a table, reads the current position from the resolver, and computes the number of steps and travel direction needed to arrive at the goal in the least amount of time. The motor is then stepped to the desired goal. The power to the resolver can be commanded on or off (CRS_FLT_PWR). Alternatively, the filter step command (CRS_FLT_STEP) will move the filter wheel the commanded number of resolver counts forward or backward. If the power to the resolver is turned off, further move commands will be dead-reckoned from the last resolver reading. The filter wheel is characterized by several uploadable parameters including the motor power level, the scale factor between resolver counts and motor steps, the filter wheel positions, etc. The filters are listed in the following table.

Table 4. Tables
Filter NumberSpectral Band (nm)
1 "clear"
2 450
3 490
4 530
5 570
6 610
7 650
8 690
9 730
10 770

Tracking Processor Unit (TPU)

The Tracking Processor Unit (TPU) is a computer attached to the DPU as a peripheral. The TPU controls a mirror. Four independent modes determine how the mirror is controlled. Configurations range from completely manual control via ground command to fully automatic modes that keep the comet in the center of the field of view during an encounter. The different modes are discussed below.

Tracking

The TPU can track either fixed or moving targets. An alpha-beta tracker is used for fixed targets such as stars used as calibration sources. A Kalman filter is used to track moving targets such as a comet. Which tracking algorithm to use is selected by command (CRS_TPU_TRK_ALG). Each tracking algorithm can be run open-loop or closed-loop. Images are selectively forwarded to the TPU at a commandable rate (CRS_IMG_TRACK); if closed-loop tracking is enabled, TPU software finds the comet in the image and incorporates this information into the tracking calculation. If closed-loop tracking is disabled or there is no image to process, the last solution is propagated. Closed-loop tracking can be enabled or disabled by command (CRS_TPU_TRK_LOOP).

The raw 1024x1024 image is reduced to a 128x128 format for image processing. The origin or a window in the raw image and the number of pixels to rebin can be commanded (CRS_TPU_IMG_REGION and CRS_TPU_IMG_ZOOM). The image processing algorithm used to find the comet is also selected by command (CRS_TPU_AIM_ALG).

The tracker tries to place the target at a commandable location on the CCD (CRS_TPU_TRK_GOAL). The tracker also produces a target angle, angular rate, and a roll; the roll is sent to the G&C system and the angle and rate can be used to compute a mirror scan profile to follow the comet. The tracker also produces an estimate of the time to closest approach (CA) and the miss distance between the spacecraft and the comet.

The TPU computes an estimate of the spacecraft attitude; the attitude when the image was taken is used by the Kalman filter. The G&C system sends the current MIMU gyroscope angles to the TPU 100 times per second. The TPU integrates the angles into its current attitude estimate. At the start of every second, the TPU sends its idea of the current attitude along with the roll correction and the time to closest approach back to the G&C system. At the end of the second, the G&C sends a correction to CRISPÕs attitude estimate and the spacecraftÕs commanded attitude. All of these exchanges go through the DPU and over the 1553 bus.

Mirror Control

The mirror controller can be commanded (CRS_TPU_MIR_MODE) into several modes. Every second, the TPU computes a table of 100 mirror positions and rates. The table will be used over the following second to update the mirror motor every 10 ms. When the mirror mode is off, the mirror motor is not driven. In hold mode, the mirror is held at the current position. In slew mode, the mirror is held at a commanded angle (CRS_TPU_MIR_ANGLE). In scan mode, the mirror follows the angle and angular rate computed by the tracker; the table is computed such that the mirror follows the comet motion, but uses a constant rate during image exposure. There is also a command to control which side of the mirror to use (CRS_TPU_MIR_SIDE). The selected side is incorporated into the table computed for slew or scan modes. Finally, there is a command to initialize the mirror (CRS_TPU_MIR_HOME).

There is an additional mode that allows the mirror to be offset by a commanded angle (CRS_TPU_OFF_ANGLE). This angle is added to any angle computed by the tracker or commanded to the slew mode mirror (CRS_TPU_MIR_ANGLE). The offset angle can also be automatically adjusted (CRS_TPU_OFF_MODE) at a commandable rate (CRS_TPU_OFF_RATE). If automatic adjustment is enabled, the offset angle is modified every second. The adjustment proceeds continuously until it is disabled; re-enabling adjustment causes the offset to pick up where it left off. Alternatively, the adjustment can be stopped by setting a zero rate. Or, setting a negative rate will send the offset moving in the opposite direction.

The commands that set mirror angles, e.g. CRS_TPU_MIR_ANGLE, identify the angle from the S/C +Z axis (and usually the velocity vector) to the target (see following figure). An angle of 0 degrees indicates a target dead ahead, an angle of 90 degrees indicates a target perpendicularly to the right of the spacecraft, etc. Valid line-of-sight target angles range from -180 degrees to 180 degrees; the mirror will be positioned appropriately even if the spacecraft blocks the view. The actual mirror shaft angle will be computed from the target angle and the currently commanded mirror side. In the figure the shaft angle shown at 135 degrees uses mirror side A to direct a target at 0 degrees into the telescope. Mirror shaft angles are constrained to keep side A of the mirror out of the dust as the spacecraft flies by the comet. The extent of the dust keep-out zone is defined by uploadable parameters.

Figure 6. Mirror Angles
[Sensor]

Spectrometer

The imaging spectrometer subsystem operates at a commandable rate. The rate can be commanded (CRS_SPC_RATE) to be 1, 2, 3, 4, or 5 Hz. The exposure time is dictated by the rate; see the following table. Unlike the imager CCD, the spectrometer detector is not a frame-transfer device. The detector is exposed continuously and readouts must be done while exposing. The software implication of this is that changing the spectrometer rate will cause the exposure time of one image to vary through the image; in other words, some pixels of the image will be exposed for the old exposure time and some will be exposed for the new exposure time. The spectrometer is read at the commanded rate, even if no spectra are being collected, thus continually scrubbing the detector. Spectra can be read for a commanded number of seconds (CRS_SPC_SPECTRA).

Table 5. Spectrometer Exposure Times
RateExposure Time
1 Hz 999.1 ms
2 Hz 499.1 ms
3 Hz 332.4 ms
4 Hz 249.1 ms
5 Hz 199.1 ms

A simplified timing diagram of the last two frames at the highest spectrometer rate (i.e. 5 Hz) is shown below. The spectrometer rate clock is synchronized to a 1 Hz system clock. The internal CRISP 1 Hz clock lags the system-wide clock by ~7 ms. The DPU generates frames pulses at the commanded rate. A frame pulse triggers image readout. The DPU adds an image header provided by the DPU software. The read out of the entire image, including the header, must be complete before the next frame pulse. The time between the end of the read out and the next frame pulse is used by the software to configure the next image read out (e.g., load the header data).

Figure 7. Spectrometer Timing
[Sensor]

Two infra-red (IR) lamps are available for testing the spectrometer. Each lamp can be commanded off or on independently (CRS_SPC_CAL_PWR) and commanded to 256 brightness levels (CRS_SPC_CAL_LEVEL). The lamps are only partially redundant in that a single lamp does not illuminate the entire detector. Due to self-heating, there are some constraints in how the lamps can be used. The software implements the following safety rules:

(Note: the times are all uploadable parameters.)

To operate properly, the IR detector must be cooled. There is a Stirling cooler that can be commanded (CRS_SPC_COOL) off or to two different low temperature setpoints. The IR detector does not operate until it is powered (CRS_SPC_PWR). The software will not apply the power until the cooler has been on for a time set by an uploadable parameter.

There are several temperature sensors in the spectrometerÕs FPU. Reading these temperatures can be enabled or disabled by command (CRS_SPC_TMP). It my be necessary to disable them in the event that reading these temperatures introduces noise into the spectra.

The IR detector is divided into four quadrants. The four quadrants are read out concurrently and merged. Consequently, the image is not downlinked in a typical rasterized pattern. Instead pixels from each quadrant are interspersed as shown in the following figure. The numbers on the pixels in the figure indicate the order in which they are downlinked. Note that the spectral dimension is read first. Each raw pixel is 14 bits; a command (CRS_SPC_RANGE) selects a range of bits within the pixel to telemeter; the resulting pixel is 12 bits. The DPU adds an offset of 64 to each 14-bit pixel; this will have to be removed in ground processing. The value to subtract will be 64, 32, or 16 depending on the commanded range.

Figure 8. Spectrometer Image Readout
[Sensor]

CRISP spectra come in four possible formats shown in the table below. The format is selected by command (CRS_SPC_FORMAT). The formats range from the full size of the detector (256x256) down to smaller and smaller windows into the full image. Only the spatial dimension is reduced; the full spectral dimension is always sent. A command (CRS_SPC_REGION) selects the origin of the window.

Table 6. Spectrometer Image Formats
ModePixels/lineLines
256 x 256 256 pixels 256
128 x 256 256 pixels 128
64 x 256 256 pixels 64
32 x 256 256 pixels 32

Spectrometer images are downlinked with a header describing the state of the instrument at the time the image was taken. The header starts with a subheader that includes the time at which the image was collected. The header also includes a snapshot of the current DPU status. The header format is shown below:

Table 7. Spectrometer Image Header
NameLength (bits) ValueDescription
Time Tag 32 Unsigned integer Spacecraft MET of exposure
Analog 42 * 16 See Table 13 Analog status
Digital 16 * 16 See Table 14 Digital status
Software 88 * 8 See Table 15 Software status
Spare 48 * 8    

Heaters

The CRISP DPU controls the temperature of five zones of the instrument. The heater in each zone may be commanded off, on, or controlled by software (CRS_HTR_MODE). If a heater is being controlled by software, it uses the setpoint and hysteresis commanded for that zone (CRS_HTR_TMP). Every second the zone's temperature is compared against its limits. If the temperature is too low, the heater will be turned on. If the temperature is too high, the heater will be turned off. The five zones and the temperature sensors used to control them are listed in the table below.

Table 8. Heatersormats
Zone NumberZoneSensor
0 Star camera 1 Star camera 1 temperature
1 Star camera 2 Star camera 2 temperature
2 Diaphragm Diaphragm temperature
3 Mirror motor Mirror motor temperature
4 Bulk (upper housing) Radiator temperature


home Return to CRISP Software User's Guide. Report problems to John Hayes. mail