The major subsystems, including the cover, the imager, its filter wheel, the tracker and mirror, the spectrometer, and the heaters are discussed below.
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).
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.
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.
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.
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.
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.
Modes | Pixels/line | Lines | Temperatures |
---|---|---|---|
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:
Name | Length (bits) | Value | Description |
---|---|---|---|
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:
Name | Length (bits) | Value | Description |
---|---|---|---|
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.
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.
Filter Number | Spectral Band (nm) |
---|---|
1 | "clear" |
2 | 450 |
3 | 490 |
4 | 530 |
5 | 570 |
6 | 610 |
7 | 650 |
8 | 690 |
9 | 730 |
10 | 770 |
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.
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.
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.
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).
Rate | Exposure 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).
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:
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.
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.
Mode | Pixels/line | Lines |
---|---|---|
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:
Name | Length (bits) | Value | Description |
---|---|---|---|
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 |   |   |
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.
Zone Number | Zone | Sensor |
---|---|---|
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 |
Return to CRISP Software User's Guide. Report problems to John Hayes.