ocssw  1.0
/disk01/web/ocssw/build/inc/swfinc/soh.h (r8084/r3)
Go to the documentation of this file.
00001 /*
00002 
00003 $Header: /app/shared/RCS/irix-5.2/seawifsd/src/hdfio/Shared.V4.2/L012_Util/util/osc/soh.h,v 4.10 1995/01/17 19:58:41 seawifsd Exp seawifsd $
00004 $Log: soh.h,v $
00005 Revision 4.10  1995/01/17 19:58:41  seawifsd
00006 Jan. 17, 1994, V4.10
00007 
00008 Revision 4.1  1995/01/17 14:14:54  seawifsd
00009 Jan. 9, 1994, 4.0
00010 
00011 Revision 3.3  1994/11/08 18:46:58  seawifsd
00012 Nov. 8, 1994, 3.3a3
00013 
00014 Revision 3.3  1994/11/08 15:04:55  seawifsd
00015 Nov. 8, 1994, 3.3a2
00016 
00017 Revision 1.2  1994/05/10 18:51:41  seawifst
00018 May 6, 1994 version 1.2
00019 
00020 Revision 1.1  1994/04/19 13:49:08  seawifst
00021 Initial revision
00022 
00023 
00024  */
00025 
00026 
00027 #include    "soh_proto.h"
00028 #include    "ecv.h"
00029 /*
00030    Following macros define the Word_Offset, Bit_Offset,
00031    and Length_in_Bits of the 40 analog fields and 40
00032    discrete fields in the 775 byte of spacecraft 
00033    telemetry. All offsets are reference to 0
00034    Bit_Offset is counted from Least Significant Bit.
00035    For example:                                     
00036      Word_Offset 7 6 5 4 3 2 1 0
00037        0         1 1 1 1 1 1 1 1
00038        1         0 1 0 0 0 0 0 0
00039  */
00040 
00041 #define SOH_WORD_LENGTH             8
00042 #define SOH_WORD_OFFSET             8
00043 #define SOH_WORD_OFFSET_MIN         0
00044 #define SOH_WORD_OFFSET_MAX         774
00045 #define SOH_MAX_ANA_ENTRIES         40
00046 #define SOH_MAX_DIS_ENTRIES         40
00047 
00048 #define SOH_ANA(n)              SOH_ANA##n
00049 #define SOH_DIS(n)              SOH_DIS##n
00050 
00051 #define SOH_DUMMY               0,0,0
00052 #define SOH_DUMMY_ECV               NECT0,0,0
00053 #define SOH_ANALOG_MAX_VALID            19
00054 #define SOH_DISCRETE_MAX_VALID          3
00055 
00056 #define SOH_DIS_ECV             DECT1,0.0,0.0
00057 
00058 #define GET_SOH_ANA_ENG_VALUE(soh,n)    get_soh_eng_value(soh,n,n##_ECV)
00059 #define GET_SOH_DIS_ENG_VALUE(soh,n)    get_soh_eng_value(soh,n,SOH_DIS_ECV)
00060 #define GET_SOH_ANA_RAW_VALUE(soh,n)    get_soh(soh,n)
00061 #define GET_SOH_DIS_RAW_VALUE(soh,n)    get_soh(soh,n)
00062 #define GET_SOH_RAW_VALUE(soh,n)        get_soh(soh,n)
00063 #define GET_SOH_NAME(n)                 get_soh_name(n)
00064 /*----------------------------------------------------------------------------*/
00065 /* define selected byte offset, bit offset, and bit length */
00066 #define ORBIT_X_POSITION            142,0,32
00067 #define ORBIT_X_POSITION_ECV            AECT1,0.003911555,-8400000.0
00068 #define ORBIT_Y_POSITION            146,0,32
00069 #define ORBIT_Y_POSITION_ECV            AECT1,0.003911555,-8400000.0
00070 #define ORBIT_Z_POSITION            150,0,32
00071 #define ORBIT_Z_POSITION_ECV            AECT1,0.003911555,-8400000.0
00072 #define ORBIT_X_VELOCITY            154,0,32
00073 #define ORBIT_X_VELOCITY_ECV            AECT1,3.49246e-06,-7500.0
00074 #define ORBIT_Y_VELOCITY            158,0,32
00075 #define ORBIT_Y_VELOCITY_ECV            AECT1,3.49246e-06,-7500.0
00076 #define ORBIT_Z_VELOCITY            162,0,32
00077 #define ORBIT_Z_VELOCITY_ECV            AECT1,3.49246e-06,-7500.0
00078 #define ATTITUDE_YAW_ANGLE          120,0,16
00079 #define ATTITUDE_YAW_ANGLE_ECV          AECT1,0.005493164,-180.0
00080 #define ATTITUDE_ROLL_ANGLE         122,0,16
00081 #define ATTITUDE_ROLL_ANGLE_ECV         AECT1,0.005493164,-180.0
00082 #define ATTITUDE_PITCH_ANGLE            124,0,16
00083 #define ATTITUDE_PITCH_ANGLE_ECV        AECT1,0.005493164,-180.0
00084 #define SUN_SENSOR_1_ANGLE_1            60,0,16
00085 #define SUN_SENSOR_1_ANGLE_1_ECV        AECT1,0.001953125,-64.0
00086 #define SUN_SENSOR_1_ANGLE_2            62,0,16
00087 #define SUN_SENSOR_1_ANGLE_2_ECV        AECT1,0.001953125,-64.0
00088 #define SUN_SENSOR_2_ANGLE_1            66,0,16
00089 #define SUN_SENSOR_2_ANGLE_1_ECV        AECT1,0.001953125,-64.0
00090 #define SUN_SENSOR_2_ANGLE_2            68,0,16
00091 #define SUN_SENSOR_2_ANGLE_2_ECV        AECT1,0.001953125,-64.0
00092 #define SUN_SENSOR_3_ANGLE_1            72,0,16
00093 #define SUN_SENSOR_3_ANGLE_1_ECV        AECT1,0.001953125,-64.0
00094 #define SUN_SENSOR_3_ANGLE_2            74,0,16
00095 #define SUN_SENSOR_3_ANGLE_2_ECV        AECT1,0.001953125,-64.0
00096 #define EARTH_SCANNER_1_PHASE           78,0,16
00097 #define EARTH_SCANNER_1_PHASE_ECV       AECT1,0.005493164,0.0
00098 #define EARTH_SCANNER_1_WIDTH           80,0,16
00099 #define EARTH_SCANNER_1_WIDTH_ECV       AECT1,0.005493164,0.0
00100 #define EARTH_SCANNER_2_PHASE           84,0,16
00101 #define EARTH_SCANNER_2_PHASE_ECV       AECT1,0.005493164,0.0
00102 #define EARTH_SCANNER_2_WIDTH           86,0,16
00103 #define EARTH_SCANNER_2_WIDTH_ECV       AECT1,0.005493164,0.0
00104 
00105 
00106 /* discrete data */
00107 #define SUN_SENSOR_1_STATUS         59,7,1
00108 #define SUN_SENSOR_1_STATUS_ECV         SOH_DIS_ECV
00109 #define SUN_SENSOR_2_STATUS         65,7,1
00110 #define SUN_SENSOR_2_STATUS_ECV         SOH_DIS_ECV
00111 #define SUN_SENSOR_3_STATUS         71,7,1
00112 #define SUN_SENSOR_3_STATUS_ECV         SOH_DIS_ECV
00113 
00114 
00115 #define SOH_ANA1                ORBIT_X_POSITION
00116 #define SOH_ANA1_ECV                ORBIT_X_POSITION_ECV
00117 #define SOH_ANA2                ORBIT_Y_POSITION
00118 #define SOH_ANA2_ECV                ORBIT_Y_POSITION_ECV
00119 #define SOH_ANA3                ORBIT_Z_POSITION
00120 #define SOH_ANA3_ECV                ORBIT_Z_POSITION_ECV
00121 #define SOH_ANA4                ORBIT_X_VELOCITY
00122 #define SOH_ANA4_ECV                ORBIT_X_VELOCITY_ECV
00123 #define SOH_ANA5                ORBIT_Y_VELOCITY
00124 #define SOH_ANA5_ECV                ORBIT_Y_VELOCITY_ECV
00125 #define SOH_ANA6                ORBIT_Z_VELOCITY
00126 #define SOH_ANA6_ECV                ORBIT_Z_VELOCITY_ECV
00127 #define SOH_ANA7                ATTITUDE_YAW_ANGLE
00128 #define SOH_ANA7_ECV                ATTITUDE_YAW_ANGLE_ECV
00129 #define SOH_ANA8                ATTITUDE_ROLL_ANGLE
00130 #define SOH_ANA8_ECV                ATTITUDE_ROLL_ANGLE_ECV
00131 #define SOH_ANA9                ATTITUDE_PITCH_ANGLE
00132 #define SOH_ANA9_ECV                ATTITUDE_PITCH_ANGLE_ECV
00133 #define SOH_ANA10               SUN_SENSOR_1_ANGLE_1
00134 #define SOH_ANA10_ECV               SUN_SENSOR_1_ANGLE_1_ECV
00135 #define SOH_ANA11               SUN_SENSOR_1_ANGLE_2
00136 #define SOH_ANA11_ECV               SUN_SENSOR_1_ANGLE_2_ECV
00137 #define SOH_ANA12               SUN_SENSOR_2_ANGLE_1
00138 #define SOH_ANA12_ECV               SUN_SENSOR_2_ANGLE_1_ECV
00139 #define SOH_ANA13               SUN_SENSOR_2_ANGLE_2
00140 #define SOH_ANA13_ECV               SUN_SENSOR_2_ANGLE_2_ECV
00141 #define SOH_ANA14               SUN_SENSOR_3_ANGLE_1
00142 #define SOH_ANA14_ECV               SUN_SENSOR_3_ANGLE_1_ECV
00143 #define SOH_ANA15               SUN_SENSOR_3_ANGLE_2
00144 #define SOH_ANA15_ECV               SUN_SENSOR_3_ANGLE_2_ECV
00145 #define SOH_ANA16               EARTH_SCANNER_1_PHASE
00146 #define SOH_ANA16_ECV               EARTH_SCANNER_1_PHASE_ECV
00147 #define SOH_ANA17               EARTH_SCANNER_1_WIDTH
00148 #define SOH_ANA17_ECV               EARTH_SCANNER_1_WIDTH_ECV
00149 #define SOH_ANA18               EARTH_SCANNER_2_PHASE
00150 #define SOH_ANA18_ECV               EARTH_SCANNER_2_PHASE_ECV
00151 #define SOH_ANA19               EARTH_SCANNER_2_WIDTH
00152 #define SOH_ANA19_ECV               EARTH_SCANNER_2_WIDTH_ECV
00153 
00154 #define SOH_DIS1                SUN_SENSOR_1_STATUS
00155 #define SOH_DIS1_ECV                SUN_SENSOR_1_STATUS_ECV
00156 #define SOH_DIS2                SUN_SENSOR_2_STATUS
00157 #define SOH_DIS2_ECV                SUN_SENSOR_2_STATUS_ECV
00158 #define SOH_DIS3                SUN_SENSOR_3_STATUS
00159 #define SOH_DIS3_ECV                SUN_SENSOR_3_STATUS_ECV