CRISP communicates with the C&DH system over a 1553B bus. The DPU acts
as a remote terminal (RT) with the active C&DH system acting as the bus
controller (BC). The traffic on the 1553B bus is periodic, repeating
every one second major frame. The major frame is divided into 25 minor
frames, numbered 0 to 24. Individual messages are distinguished by
their transmit or receive subaddress. In addition to the messages
described in Reference 3, CRISP handles the messages shown in the
following table.
Message | Subaddress | Minor Frame | Size (Words) |
---|---|---|---|
MIMU Angles and Status | R3 | All | 13 |
G & C Delta Quaternion and Commanded Attitude | R22 | 24 | 41 |
CRISP Attitude, Roll, and Closest Approach | T22 | 0 | 41 |
Four times per minor frame, the current MIMU gyro angles are sent to
CRISP. CRISP immediately forwards these to the
TPU.
At the end of the
major frame an attitude correction and the commanded attitude are sent
to CRISP from G&C. These are also forwarded to the TPU. At the
beginning of the major frame CRISP provides its estimate of the current
attitude and time to closest approach. The formats of these messages
are shown in the following tables.
Name | Length (bits) | Value | Description |
---|---|---|---|
Time Tag | 32 |   | MET |
Frame Timer | 16 |   | Frame timer 200 Hz |
Frame Count | 16 |   | Frame counter 1 Hz |
IRU Status | 16 |   | IRU status word |
X | 16 |   | Incremental angle X |
Y | 16 |   | Incremental angle Y |
Z | 16 |   | Incremental angle Z |
X DeltaT | 16 |   | Average X gyro delta temperature |
Y DeltaT | 16 |   | Average Y gyro delta temperature |
Z DeltaT | 16 |   | Average Z gyro delta temperature |
Block T | 16 |   | Average sensor block temperature |
Checksum | 16 |   | Arithmetic checksum |
Name | Length (bits) | Value | Description |
---|---|---|---|
DeltaQ | 4 * 64 | IEEE-754 double | Correction to CRISP attitude |
Qcmd | 4 * 64 | IEEE-754 double | Commanded attitude |
TDT Offset | 64 | IEEE-754 double | Offset from MET to TDT |
Time Tag | 32 | Unsigned integer | MET |
DeltaQ Flag | 16 | 0 = Valid 1 = Invalid | DeltaQ invalid flag |
Qcmd Flag | 16 | 0 = Valid 1 = Invalid | Qcmd invalid flag |
Flag | 16 | 0 = Not relative to CRISP 1 = Relative to CRISP | Attitude correction flag |
Name | Length (bits) | Value | Description |
---|---|---|---|
Time Tag | 32 | Unsigned integer | MET |
CA | 32 | 0 = Now 99998 = Future | Time to closest approach |
MET Offset | 64 | IEEE-754 double | Time offset from MET to attitude estimate |
Qroll | 4 * 64 | IEEE-754 double | Roll correction |
QCRISP | 4 * 64 | IEEE-754 double | CRISP attitude estimate |
Flag | 16 | 0 = All valid 1 = One or more invalid | Message invalid flag |
A collection of environmental data is collected by the DPU. There are analogs including voltages and currents read via one of the DPU's two Inter-Integrated Circuit (I2C) buses. A second I2C bus is used to collect temperatures. The data collected is included in the status subpacket and image headers. Each analog is also monitored when it is read (see below). Collection and monitoring occur once per second.
Alarms report problems found by the DPU software. Each alarm is described by an ID, two values, and a flag. The ID identifies the problem that has occurred and the accompanying values offer additional information. The flag indicates whether the alarm was caused by a transient or a persistent condition. See Appendix 3 for a list of alarms.
The alarms are divided into two groups: one for reporting internal software problems and another for reporting out-of-limit conditions for monitored data. Software problems are all reported as transient alarms. When the problem occurs, the alarm is generated and the software recovers from the problem as best it can.
Values read from the I2C buses are monitored by the DPU The monitoring is event driven: a monitor cycle is performed on each item as it becomes available. For example, each I2C analog is monitored when it is read. The monitoring algorithm is described in more detail in Reference 3.
The monitored data is summarized in the following table. The monitor
class is encoded as S=
shutdown,
N=nop, and R=redo. The reported alarm
Ids are for low and high excursions; similarly there are low and high
response
macro
Ids.
Source | Class | Alarm Ids Low / High | Macro Ids Low / High | ||
---|---|---|---|---|---|
Mirror motor current | N | 128 | 192 | 0 | 18 |
Star camera #1 heater current | N | 129 | 193 | 0 | 2 |
Star camera #2 heater current | N | 130 | 194 | 0 | 2 |
Diaphragm heater current | N | 131 | 195 | 0 | 2 |
Mirror motor heater current | N | 132 | 196 | 0 | 2 |
Bulk heater current | N | 133 | 197 | 0 | 2 |
DPU current | N | 134 | 198 | 1 | 1 |
DPU voltage | N | 135 | 199 | 1 | 1 |
Imager converter current | N | 136 | 200 | 0 | 16 |
HOP actuator #1 heater #1 current | N | 137 | 201 | 0 | 14 |
HOP actuator #1 heater #2 current | N | 138 | 202 | 0 | 14 |
Imager current | N | 139 | 203 | 0 | 16 |
HOP actuator #2 heater #1 current | N | 140 | 204 | 0 | 14 |
Imager voltage | N | 141 | 205 | 0 | 16 |
HOP actuator #2 heater #2 current | N | 142 | 206 | 0 | 14 |
Spectrometer primary current | N | 143 | 207 | 0 | 17 |
Spectrometer converter current | N | 144 | 208 | 0 | 17 |
Cooler converter current | N | 145 | 209 | 0 | 17 |
Cooler current | N | 146 | 210 | 0 | 17 |
Spectrometer current | N | 147 | 211 | 0 | 17 |
Cooler voltage | N | 148 | 212 | 0 | 17 |
Spectrometer voltage | N | 149 | 213 | 0 | 17 |
FW motor primary current | N | 150 | 214 | 0 | 15 |
FW motor current | N | 151 | 215 | 0 | 15 |
FW motor converter current | N | 152 | 216 | 0 | 15 |
FW 15V current | N | 153 | 217 | 0 | 15 |
FW 15V voltage | N | 154 | 218 | 0 | 15 |
Spectrometer housing temperature | N | 155 | 219 | 0 | 13 |
Mirror motor elec. temperature | N | 156 | 220 | 0 | 13 |
Cryo cooler temperature | N | 157 | 221 | 0 | 13 |
Fold mirror temperature | N | 158 | 222 | 0 | 13 |
Housing rear temperature | N | 159 | 223 | 0 | 13 |
M2 temperature | N | 160 | 224 | 0 | 13 |
M1 temperature | N | 161 | 225 | 0 | 13 |
Diaphragm temperature | N | 162 | 226 | 0 | 13 |
Mirror motor temperature | N | 163 | 227 | 0 | 13 |
Star camera #2 temperature | N | 164 | 228 | 0 | 13 |
Star camera #1 temperature | N | 165 | 229 | 0 | 13 |
HOPS actuator #1 temperature | N | 166 | 230 | 0 | 13 |
Housing top temperature | N | 167 | 231 | 0 | 13 |
Radiator temperature | N | 168 | 232 | 0 | 13 |
Deck temperature | N | 169 | 233 | 0 | 13 |
Many of the DPU's hardware control registers contain triple redundancy and voting logic for each bit. The DPU software periodically rewrites these registers to correct single bit errors.
The DPU has a watchdog timer. If the watchdog timer is not tickled from time to time, the processor is reset. The watchdog timeout is 2.95 seconds. The watchdog does not run until it has been enabled; once enabled, it can never by disabled except by processor reset, watchdog or otherwise. The DPU monitors all periodic processes every second. If they are all running, the watchdog is tickled. Some aperiodic processes do not participate.
The DPU will automatically select and run a macro to orchestrate data collection during closest approach. The tracker estimates the time to closest approach, the miss distance between the spacecraft and the comet, and the angle from the spacecraft to the comet. The TPU uses a set of thresholds to categorize the comet angle into either "inbound", "inbound imaging", "closest approach", or "outbound imaging". The TPU also categorizes the miss distance as either "very near", "near", "nominal", "far", "very far", "too far #1", "too far #2", or "too far #3". Once the DPU is commanded to monitor the closest approach data (CRS_CA_START), it watches the angle until "inbound imaging" is detected. Then the DPU starts the closest approach imaging macro. The miss distance category is used to select the macro. The macro chosen depends on whether "good" targeting or "bad" targeting was selected (an argument to CRS_CA_START). In "good" targeting mode, miss distances from "very near" to "very far" cause the corresponding "very near" to "very far" macro to be run; miss distances that are "too far" cause the "very far" macro to be run. In "bad" targeting mode, the "too far" miss distances will cause corresponding "bad targeting" macros to be run. Once one of the imaging macros has been selected, no other closest approach macro will be started. The DPU continues to monitor the comet angle. Once the "closest approach" stage is reached, a closest approach macro will be run.
The DPU will automatically run a post-encounter macro. The macro is started once the comet angle reaches "outbound imaging". The macro will be allowed to run to completion. Then the DPU closest approach monitor enters an idle state; another command (CRS_CA_START) is required before it will start monitoring the comet angle again. The closest approach monitor can be commanded to the idle state at any time (CRS_CA_RESET). The comet angle and miss distance thresholds are all TPU parameters.
Return to CRISP Software User's Guide.
Report problems to John Hayes.