/* SPA FRAME STRUCTURE */ OBJECT = COLUMN NAME = "PACKET_ID" DESCRIPTION = "Telemetry packet identifier." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 1 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "PACKET_SEQUENCE_CONTROL" DESCRIPTION = "Telemetry packet sequence counter." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 3 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "PACKET_LENGTH" DESCRIPTION = "Telemetry packet length." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 5 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "PACKET_OBT_SECONDS" DESCRIPTION = "S/C clock count at packet generation." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 7 BYTES = 4 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "PACKET_OBT_FRACTION" DESCRIPTION = "Fractional part of S/C clock count." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 11 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "PACKET_PUS_AND_CRC" DESCRIPTION = "Telemetry packet PUS-Versiion and CRC flag." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 13 BYTES = 1 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "PACKET_TYPE" DESCRIPTION = "Telemetry packet type." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 14 BYTES = 1 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "PACKET_SUBTYPE" DESCRIPTION = "Telemetry packet sub-type." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 15 BYTES = 1 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "PACKET_PAD_FIELD" DESCRIPTION = "Telemetry packet padding field." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 16 BYTES = 1 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "STRUCTURE_ID" DESCRIPTION = "Telemetry packet structure identifier." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 17 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "SOFTWARE_VERSION" DESCRIPTION = "On-board software version." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 19 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "LINEAR_POS" DESCRIPTION = "Linear stage position sensor readout." DATA_TYPE = MSB_INTEGER START_BYTE = 21 BYTES = 2 OFFSET = 1.52590E-004 SCALING_FACTOR = 3.05180E-004 UNIT = VOLT END_OBJECT = COLUMN OBJECT = COLUMN NAME = "WHEEL_POS" DESCRIPTION = "Current wheel position (segment number)." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 23 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "TIP_NUMBER" DESCRIPTION = "Number of selected tip." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 25 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "X_ORIGIN" DESCRIPTION = "Scan origin in X direction (DAC units)." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 27 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "Y_ORIGIN" DESCRIPTION = "Scan origin in Y direction (DAC units)." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 29 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "STEP_SIZE" DESCRIPTION = "Line scan step size (DAC units)." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 31 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "NUM_STEPS" DESCRIPTION = "Number of line scan steps (pixels)." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 33 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "SCAN_MODE" DESCRIPTION = "Scanning mode for image acquisition): Bit 0-7: 0=DYN[amic], 1=CON[tact], 2=MAG[netic], Bit 8: line scan direction (0=std.,1=reverse), Bit 12: main scan direction (0=X,1=Y)" DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 35 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "MAIN_SCAN_CNT" DESCRIPTION = "Current main scan counter." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 37 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "NUM_SAMPLES" DESCRIPTION = "Total number of measurements." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 39 BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "SPARE" DESCRIPTION = "Currently not used." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 41 BYTES = 6 ITEMS = 3 ITEM_BYTES = 2 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "AC_SAMPLES" DESCRIPTION = "Cantilever AC signal samples." DATA_TYPE = MSB_INTEGER START_BYTE = 47 BYTES = 2042 ITEMS = 256 ITEM_BYTES = 2 ITEM_OFFSET = 8 SCALING_FACTOR = 3.0518E-04 OFFSET = 0.0 UNIT = VOLT DERIVED_MINIMUM = 0.0 DERIVED_MAXIMUM = 10.0 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "DC_SAMPLES" DESCRIPTION = "Cantilever DC signal samples." DATA_TYPE = MSB_INTEGER START_BYTE = 49 BYTES = 2042 ITEMS = 256 ITEM_BYTES = 2 ITEM_OFFSET = 8 SCALING_FACTOR = 3.0518E-04 OFFSET = 0.0 UNIT = VOLT DERIVED_MINIMUM = -10.0 DERIVED_MAXIMUM = +10.0 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "PHASE_SAMPLES" DESCRIPTION = "Cantilever phase signal samples." DATA_TYPE = MSB_INTEGER START_BYTE = 51 BYTES = 2042 ITEMS = 256 ITEM_BYTES = 2 ITEM_OFFSET = 8 SCALING_FACTOR = 5.4932E-03 OFFSET = 0.0 UNIT = DEGREE DERIVED_MINIMUM = -180.0 DERIVED_MAXIMUM = +180.0 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "Z_POS_SAMPLES" DESCRIPTION = "Z piezo position monitor (strain gauge)." DATA_TYPE = MSB_INTEGER START_BYTE = 53 BYTES = 2042 ITEMS = 256 ITEM_BYTES = 2 ITEM_OFFSET = 8 SCALING_FACTOR = 3.0518E-04 OFFSET = 0.0 UNIT = VOLT DERIVED_MINIMUM = -10.0 DERIVED_MAXIMUM = +10.0 END_OBJECT = COLUMN OBJECT = COLUMN NAME = "CRC16_CHECKSUM" DESCRIPTION = "Telemetry packet checksum (CRC 16)." DATA_TYPE = MSB_UNSIGNED_INTEGER START_BYTE = 2095 BYTES = 2 END_OBJECT = COLUMN