CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL /* EDRDATA.FMT: Galileo/NIMS EDR Data Record Structure, version 0.1 */ /* Version 0.1, 30sep92, Bob Mehlman UCLA/IGPP */ /* Version 0.2, 19oct92, Bob Mehlman, w. changes suggested by Sue Hess */ /* Version 0.3, 18nov92, Bob Mehlman, corrections to AACS rate items */ /* Version 0.4, 21jan93, Bob Mehlman, changed NATIVE_TIME formats */ /* Version 0.5, 25jan93, Sue Hess, changed ERT BIT_COLUMN formats */ /* Version 0.6, 15feb93, Bob Mehlman, changed LRS_ERROR_FLAGS formats */ /* Version 0.7, 19mar93, Bob Mehlman, added RECEIVER_SIGNAL_LEVEL column*/ /* Version 0.8, 23mar93, Bob Mehlman, revised NIMS_SENSOR_DATA col & bit-col */ /* Physical */ /* Record <------------ 512 bytes -------------> */ /* ______________________________________ */ /* 1 | | */ /* | | */ /* | | */ /* | LABEL | */ /* | | Logical */ /* 6 | | Sequence */ /* |____________________________________| */ /* 7 | | 0 */ /* | | */ /* | HEADER_TABLE | 1 */ /* | | */ /* |____________________________________| */ /* 11 | row 1 | 2 */ /* | | */ /* | - - - - - - - - - - - - - - - - - -| */ /* 13 | row 2 | 3 */ /* | | */ /* | - - - - - - - - - - - - - - - - - -| */ /* | | */ /* | DATA_TABLE | */ /* | | */ /* ... . ... . ... */ /* | - - - - - - - - - - - - - - - - - -| */ /* | | 9101 (max) */ /* | | */ /* |____________________________________| */ OBJECT = COLUMN NAME = LOGICAL_SEQUENCE DATA_TYPE = LSB_UNSIGNED_INTEGER START_BYTE = 1 BYTES = 2 DESCRIPTION = "Logical sequence record counter. NIMS EDR logical records contain 1024 bytes and are numbered from 0, not including the PDS label. The valid range of LOGICAL_SEQUENCE in the DATA_TABLE is 2 to 9101.\n \n An EDR will contain 91 logical records (minor frames) per RIM for up to 100 RIMs. It is terminated and another begun whenever (1) the RIM count reaches a multiple of 100, (2) there is a gap in the data stream of more than 2 RIMs, or (3) the data stream switches between realtime and recorded data. Gaps of 2 RIMs or less will be replaced by zero-filler, except at the beginning and end of an EDR." END_OBJECT = COLUMN OBJECT = COLUMN NAME = NATIVE_TIME DATA_TYPE = LSB_BIT_STRING START_BYTE = 3 BYTES = 4 DESCRIPTION = "Spacecraft clock time of the current data record in the file. It is usually displayed in the form rrrrrrrr.mm where rrrrrrrr is the RIM count (major frame) and mm is the MOD91 count (minor frame)." OBJECT = BIT_COLUMN NAME = NATIVE_TIME_MOD91 BIT_DATA_TYPE = UNSIGNED_INTEGER START_BIT = 1 BITS = 8 DESCRIPTION = "Spacecraft Clock MOD91 count of the current data record in the file. The MOD91 count is incremented every 2/3 second, and assumes values 0 to 90 within a RIM count." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = NATIVE_TIME_RIM BIT_DATA_TYPE = UNSIGNED_INTEGER START_BIT = 9 BITS = 24 DESCRIPTION = "Spacecraft Clock Realtime IMage count (RIM) of the current data record in the file. The RIM count is incremented every 60 2/3 seconds. It contains 91 minor frames or MOD91 counts." END_OBJECT = BIT_COLUMN END_OBJECT = COLUMN OBJECT = COLUMN NAME = EARTH_RECEIVED_TIME DATA_TYPE = LSB_BIT_STRING START_BYTE = 7 BYTES = 4 DESCRIPTION = "Earth received time of current record." OBJECT = BIT_COLUMN NAME = EARTH_RECEIVED_TIME_MINUTE BIT_DATA_TYPE = UNSIGNED_INTEGER START_BIT = 1 BITS = 16 DESCRIPTION = "Earth received time minute of day of current record." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = EARTH_RECEIVED_TIME_DAY BIT_DATA_TYPE = UNSIGNED_INTEGER START_BIT = 17 BITS = 9 DESCRIPTION = "Earth received time day of year of current record." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = EARTH_RECEIVED_TIME_YEAR BIT_DATA_TYPE = UNSIGNED_INTEGER START_BIT = 26 BITS = 7 DESCRIPTION = "Earth received time years since 1900 of current record." END_OBJECT = BIT_COLUMN END_OBJECT = COLUMN OBJECT = COLUMN NAME = REALTIME_TELEMETRY_FORMAT_ID DATA_TYPE = UNSIGNED_INTEGER START_BYTE = 11 BYTES = 1 DESCRIPTION = "Realtime telemetry format id for current record. Indicates the rate and format of data being taken in realtime. It is 0 if data is being placed on the tape recorder. See Table 1 and Section 3.9.2.2.1 of GLL-3-280 for id values and further details." END_OBJECT = COLUMN OBJECT = COLUMN NAME = BOOM_OBSCURATION_FLAG DATA_TYPE = UNSIGNED_INTEGER START_BYTE = 12 BYTES = 1 DESCRIPTION = "Status of boom obscuration. 0: not obscured, not validated. 1: obscured, not validated. 2: not obscured, validated. 3: obscured, validated." END_OBJECT = COLUMN OBJECT = COLUMN NAME = SPARE DATA_TYPE = "N/A" START_BYTE = 13 BYTES = 2 DESCRIPTION = "Reserved bytes" END_OBJECT = COLUMN OBJECT = COLUMN NAME = VALID_DATA_MASK DATA_TYPE = UNSIGNED_INTEGER START_BYTE = 15 BYTES = 10 ITEMS = 10 ITEM_BYTES = 1 DESCRIPTION = "Each byte corresponds to one of the 10 High Rate Science packets (RTIs) in the record. Each bit in each byte corresponds to a MOD8 count within the packet, the least significant bit to a MOD8 count of 0, etc. The bit is set to 1 if the data acquired during the corresponding MOD8 count is valid. It is set to 0 if the data is invalid." END_OBJECT = COLUMN OBJECT = COLUMN NAME = MISC_IDENTIFICATION DATA_TYPE = BIT_STRING START_BYTE = 25 BYTES = 1 DESCRIPTION = "INPUT_SOURCE_ID and RECORD_TELEMETRY_FORMAT_ID." OBJECT = BIT_COLUMN NAME = RECORD_TELEMETRY_FORMAT_ID BIT_DATA_TYPE = UNSIGNED_INTEGER START_BIT = 1 BITS = 3 DESCRIPTION = "Record (re-CORD) id of Format Identification (FID) from the LRS header of first record. Indicates the rate and format of data being placed on the tape recorder (Data Memory Subsystem, DMS). It is 0 if no data is being placed on the tape recorder. See Table 1 and Section 3.9.2.2.5 of GLL-3-280 for id values and further details." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = INPUT_SOURCE_ID BIT_DATA_TYPE = UNSIGNED_INTEGER START_BIT = 4 BITS = 5 DESCRIPTION = "Input source of record: 0 SFDU, 1 SDR tapes, 2 IDR replay, 3 SFDU - ground playback, 4 EDRs." END_OBJECT = BIT_COLUMN END_OBJECT = COLUMN OBJECT = COLUMN NAME = DSN_STATION_NUMBER DATA_TYPE = UNSIGNED_INTEGER START_BYTE = 26 BYTES = 1 DESCRIPTION = "DSN station number of the receiving station as in GLL-820-13 / OPS 6-8." END_OBJECT = COLUMN OBJECT = COLUMN NAME = SIGNAL_TO_NOISE_RATIO DATA_TYPE = LSB_UNSIGNED_INTEGER START_BYTE = 27 BYTES = 2 DESCRIPTION = "Symbol Signal-to-Noise Ratio from GCF block of first block in this record as in GLL-820-13 / TLM 3-12." /* scale by 128? END_OBJECT = COLUMN OBJECT = COLUMN NAME = RECEIVER_SIGNAL_LEVEL DATA_TYPE = LSB_UNSIGNED_INTEGER START_BYTE = 29 BYTES = 2 DESCRIPTION = "The value of the GCF Receiver Signal Level for the current spacecraft clock minor frame." /* scale by 128? END_OBJECT = COLUMN OBJECT = COLUMN NAME = LRS_ERROR_FLAGS DATA_TYPE = LSB_BIT_STRING START_BYTE = 31 BYTES = 2 DESCRIPTION = "Low Rate Science error flags. A 1 means the condition described was found. A 0 means it was not." OBJECT = BIT_COLUMN NAME = NIMS_LRS_GOLAY_ERROR_FLAG BIT_DATA_TYPE = BOOLEAN START_BIT = 1 BITS = 1 DESCRIPTION = "NIMS LRS Golay errors possible." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = ENG_LRS_MISSING_FLAG BIT_DATA_TYPE = BOOLEAN START_BIT = 2 BITS = 1 DESCRIPTION = "Engineering LRS packet missing." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = AACS_LRS_MISSING_FLAG_1 BIT_DATA_TYPE = BOOLEAN START_BIT = 3 BITS = 1 DESCRIPTION = "AACS LRS packet bytes 22-23 missing." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = AACS_LRS_MISSING_FLAG_2 BIT_DATA_TYPE = BOOLEAN START_BIT = 4 BITS = 1 DESCRIPTION = "AACS LRS packet bytes 14-21 missing." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = AACS_LRS_MISSING_FLAG_3 BIT_DATA_TYPE = BOOLEAN START_BIT = 5 BITS = 1 DESCRIPTION = "AACS LRS packet bytes 06-13 missing." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = AACS_LRS_MISSING_FLAG_4 BIT_DATA_TYPE = BOOLEAN START_BIT = 6 BITS = 1 DESCRIPTION = "AACS LRS packet bytes 00-05 missing." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = NIMS_LRS_MISSING_FLAG BIT_DATA_TYPE = BOOLEAN START_BIT = 7 BITS = 1 DESCRIPTION = "NIMS LRS packet missing." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = GCF_BLOCK_ERROR_FLAG BIT_DATA_TYPE = BOOLEAN START_BIT = 8 BITS = 1 DESCRIPTION = "Errors detected in GCF blocks." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = SPARE BIT_DATA_TYPE = "N/A" START_BIT = 9 BITS = 5 DESCRIPTION = "Reserved bits" END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = PSEUDO_NOISE_ERROR_FLAG BIT_DATA_TYPE = BOOLEAN START_BIT = 14 BITS = 1 DESCRIPTION = "Pseudo-noise number contained bit errors, spacecraft clock was corrected." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = SPACECRAFT_CLOCK_ERROR_FLAG BIT_DATA_TYPE = BOOLEAN START_BIT = 15 BITS = 1 DESCRIPTION = "Spacecraft clock errors found, spacecraft clock was corrected." END_OBJECT = BIT_COLUMN OBJECT = BIT_COLUMN NAME = AACS_LRS_GOLAY_ERROR_FLAG BIT_DATA_TYPE = BOOLEAN START_BIT = 16 BITS = 1 DESCRIPTION = "AACS LRS Golay errors possible." END_OBJECT = BIT_COLUMN END_OBJECT = COLUMN OBJECT = COLUMN NAME = SPARE DATA_TYPE = "N/A" START_BYTE = 33 BYTES = 3 DESCRIPTION = "Reserved bytes." END_OBJECT = COLUMN OBJECT = COLUMN NAME = NIMS_LRS_HOUSEKEEPING_DATA DATA_TYPE = UNSIGNED_INTEGER START_BYTE = 36 BYTES = 3 ITEMS = 3 ITEM_BYTES = 1 DESCRIPTION = "NIMS Low Rate Science Packet as described in GLL-3-280, Section A2.8.1. Three bytes of subcommutated data are received in each data record. A different selection is made for each MOD91 count (minor frame) of a RIM. The various items are described in Table A2.8.1 and the subcommutation is described in Table A2.8.2." END_OBJECT = COLUMN OBJECT = COLUMN NAME = LRS_ENGINEERING_DATA DATA_TYPE = UNSIGNED_INTEGER START_BYTE = 39 BYTES = 2 ITEMS = 2 ITEM_BYTES = 1 DESCRIPTION = "Low Level Module LLM2A Data Packet of Engineering LRS data as described in GLL-3-280, Section A2.2.4 and Table A2.2.8. Items of interest to NIMS include 6 instrument temperatures provided 7 times per RIM, and 4 other items provided once per RIM:\n _item_ description.................... byte... MOD91 count\n E-1910 focal plane temperature......... 1..... 0 mod 13 (0,13,26,...\n E-1911 radiator shield temperature..... 2\n E-1912 telescope temperature........... 1..... 1 mod 13 (1,14,27,...\n E-1913 grating mechanism temperature... 2\n E-1914 optical chopper temperature..... 1..... 2 mod 13 (2,15,28,...\n E-1915 electronics chassis temperature. 2\n E-1916 flexprint temperature........... 1..... 56\n E-1945 RCT-NIMS temperature - Pt....... 1..... 29\n E-1946 RCT-NIMS temperature - Ni....... 1..... 58\n E-1947 RCT-NIMS reference R............ 1..... 85" END_OBJECT = COLUMN OBJECT = CONTAINER NAME = LRS_AACS_DATA START_BYTE = 41 BYTES = 24 REPETITIONS = 1 DESCRIPTION = "Attitude and Articulation Control System position and rate data as described in GLL-3-280, Section A2.4. Rotor and platform attitudes are provided in the Earth Mean Equator 1950.0 (EME-50) coordinate system." OBJECT = COLUMN NAME = ROTOR_RIGHT_ASCENSION DATA_TYPE = LSB_INTEGER START_BYTE = 1 BYTES = 2 UNIT = DEGREE SCALING_FACTOR = .00549316 /* 360/65536 */ DESCRIPTION = "Rotor attitude right ascension in EME-50 coordinates. The least significant bit represents 1/2**16 revolution." END_OBJECT = COLUMN OBJECT = COLUMN NAME = ROTOR_DECLINATION DATA_TYPE = LSB_INTEGER START_BYTE = 3 BYTES = 2 UNIT = DEGREE SCALING_FACTOR = .00549316 /* 360/65536 */ DESCRIPTION = "Rotor attitude declination in EME-50 coordinates. The least significant bit represents 1/2**16 revolution." END_OBJECT = COLUMN OBJECT = COLUMN NAME = ROTOR_TWIST DATA_TYPE = LSB_INTEGER START_BYTE = 5 BYTES = 2 UNIT = DEGREE SCALING_FACTOR = .00549316 /* 360/65536 */ DESCRIPTION = "Rotor attitude twist in EME-50 coordinates. The least significant bit represents 1/2**16 revolution. Rotor twist represents rotation about the spacecraft Z-axis. The twist angle is the angle from the projection of the Earth's North Pole onto the X-Y plane to the rotor -X axis. Positive rotation about the Z axis provides a positive twist angle." END_OBJECT = COLUMN OBJECT = COLUMN NAME = PLATFORM_RIGHT_ASCENSION DATA_TYPE = LSB_INTEGER START_BYTE = 7 BYTES = 2 UNIT = DEGREE SCALING_FACTOR = .00549316 /* 360/65536 */ DESCRIPTION = "Platform attitude right ascension in EME-50 coordinates. The least significant bit represents 1/2**16 revolution." END_OBJECT = COLUMN OBJECT = COLUMN NAME = PLATFORM_DECLINATION DATA_TYPE = LSB_INTEGER START_BYTE = 9 BYTES = 2 UNIT = DEGREE SCALING_FACTOR = .00549316 /* 360/65536 */ DESCRIPTION = "Platform attitude declination in EME-50 coordinates. The least significant bit represents 1/2**16 revolution." END_OBJECT = COLUMN OBJECT = COLUMN NAME = PLATFORM_TWIST DATA_TYPE = LSB_INTEGER START_BYTE = 11 BYTES = 2 UNIT = DEGREE SCALING_FACTOR = .00549316 /* 360/65536 */ DESCRIPTION = "Platform attitude twist in EME-50 coordinates. The least significant bit represents 1/2**16 revolution. Platform twist represents rotation about the scan platform boresight (L axis). The twist angle is the angle from the projection of the Earth's North Pole onto the M-N plane to the scan platform -M axis. Positive rotation about the L axis provides a positive twist angle." END_OBJECT = COLUMN OBJECT = COLUMN NAME = PLATFORM_CONE_RATE DATA_TYPE = LSB_INTEGER START_BYTE = 13 BYTES = 2 UNIT = "DEGREE PER SECOND" SCALING_FACTOR = .002575 /* (360*1000)/(8.333*2**24) */ DESCRIPTION = "The least significant bit of the platform cone rate represents 1 / 2**24 revolution during an 8 1/3 millisecond interval." END_OBJECT = COLUMN OBJECT = COLUMN NAME = PLATFORM_CLOCK_RATE DATA_TYPE = LSB_INTEGER START_BYTE = 15 BYTES = 2 UNIT = "DEGREE PER SECOND" SCALING_FACTOR = .002575 /* (360*1000)/(8.333*2**24) */ DESCRIPTION = "The least significant bit of the platform clock rate represents 1 / 2**24 revolution during an 8 1/3 millisecond interval." END_OBJECT = COLUMN OBJECT = COLUMN NAME = ROTOR_SPIN_MOTION_DELTA DATA_TYPE = LSB_INTEGER START_BYTE = 17 BYTES = 2 UNIT = "DEGREE PER SECOND" SCALING_FACTOR = .002575 /* (360*1000)/(8.333*2**24) */ DESCRIPTION = "The least significant bit of the rotor spin motion delta represents 1 / 2**24 revolution during an 8 1/3 millisecond interval." END_OBJECT = COLUMN OBJECT = COLUMN NAME = ROTOR_SPIN_POSITION_ANGLE DATA_TYPE = LSB_INTEGER START_BYTE = 19 BYTES = 2 UNIT = DEGREE SCALING_FACTOR = .00549316 /* 360/65536 */ DESCRIPTION = "Rotor spin position angle in Ecliptic 1950.0 (ECL-50) coordinates. The least significant bit of the rotor spin position angle represents 1/2**16 revolution. Spin position angle represents the angle from the projection of the North Ecliptic Pole vector on the X-Y plane to the -X axis. Positive rotation about the Z axis provides a positive spin position angle." END_OBJECT = COLUMN OBJECT = COLUMN NAME = ENCODER_CONE_POSITION DATA_TYPE = LSB_INTEGER START_BYTE = 21 BYTES = 2 UNIT = DEGREE SCALING_FACTOR = .00549316 /* 360/65536 */ DESCRIPTION = "Encoder cone position in spacecraft relative coordinates. The least significant bit of the cone position represents 1/2**16 revolution. Cone position represents the null offset corrected encoder angle between the -Z axis and the scan platform boresight (L axis). An increasing encoder reading represents an increasing +N rotation of the scan platform with respect to the stator." END_OBJECT = COLUMN OBJECT = COLUMN NAME = ENCODER_CLOCK_POSITION DATA_TYPE = LSB_INTEGER START_BYTE = 23 BYTES = 2 UNIT = DEGREE SCALING_FACTOR = .00549316 /* 360/65536 */ DESCRIPTION = "Encoder clock position in spacecraft relative coordinates. The least significant bit of the clock position represents 1/2**16 revolution. Clock position represents the null offset corrected encoder angle between the -Y axis of the rotor and the SAS shaft (-N axis, nominally the -Y axis of the stator). An increasing encoder reading represents an increasing -Z rotation of the rotor with respect to the stator." END_OBJECT = COLUMN END_OBJECT = CONTAINER OBJECT = CONTAINER NAME = HIGH_RATE_SCIENCE_DATA START_BYTE = 65 BYTES = 96 REPETITIONS = 10 DESCRIPTION = "Ten NIMS High Rate Science packets as described in GLL-3-280, Section A2.8.2. A packet is collected every Real Time Interrupt (RTI), i.e. every 1/15 of a second." OBJECT = COLUMN NAME = NIMS_HRS_HOUSEKEEPING_DATA DATA_TYPE = UNSIGNED_INTEGER START_BYTE = 1 BYTES = 6 ITEMS = 6 ITEM_BYTES = 1 DESCRIPTION = "NIMS High Rate Science Housekeeping consists of six bytes of subcommutated digital status and analog engineering collected each RTI. Major items include measured grating position and mirror position, and contents of the current NIMS parameter table (PTAB), provided in the 2nd and 7th of the 10 packets of a minor frame, i.e. every 1/3 second, the time of a NIMS mirror scan. Other items are provided much less frequently (but at least once per RIM) in the other packets, which normally contain spares. Details of the commutation may be found in GLL-3-280 section A2.8.2.2 and in tables A2.8.3 and A2.8.4." END_OBJECT = COLUMN OBJECT = COLUMN NAME = NIMS_BACKGROUND_DATA DATA_TYPE = BIT_STRING START_BYTE = 7 BYTES = 5 DESCRIPTION = "NIMS background data. 10-bit values for 4 of the 17 NIMS detectors are provided in each NIMS HRS packet. Background values for all 17 detectors, plus 3 spares, occur in 5 packets. See GLL-3-280 A2.8.2.3 for details of the commutation." OBJECT = BIT_COLUMN NAME = NIMS_BACKGROUND_DATA_NUMBER BIT_DATA_TYPE = UNSIGNED_INTEGER START_BIT = 1 BITS = 40 ITEMS = 4 ITEM_BITS = 10 DESCRIPTION = "NIMS background data value for a single detector." END_OBJECT = BIT_COLUMN END_OBJECT = COLUMN OBJECT = COLUMN NAME = NIMS_SENSOR_DATA DATA_TYPE = BIT_STRING START_BYTE = 12 BYTES = 85 ITEMS = 17 ITEM_BYTES = 5 DESCRIPTION = "NIMS sensor data. 10-bit values for each of the 17 NIMS detectors over 4 different 1/63 second intervals (4 different mirror positions if the secondary mirror is scanning) are provided in each NIMS HRS packet. Four values are packed into each five bytes. See GLL-3-280 A2.8.2.4 for details of the commutation." OBJECT = BIT_COLUMN NAME = NIMS_SENSOR_DATA_NUMBER BIT_DATA_TYPE = UNSIGNED_INTEGER START_BIT = 1 BITS = 40 ITEMS = 4 ITEM_BITS = 10 DESCRIPTION = "Four 10-bit NIMS sensor data values are packed into five bytes." END_OBJECT = BIT_COLUMN END_OBJECT = COLUMN END_OBJECT = CONTAINER END